/* Shared typography and visual language across public pages and editor. */
:root{--site-font:'Inter','M PLUS 2','Yu Gothic','Meiryo',sans-serif;--bg-color:#131313;--text-color:#f4f4f4;--text-muted:#a9a9a9;--border-color:#373737;--accent-color:#ffffff;--bg-dark:#131313;--bg-panel:#1d1d1d;--bg-hover:#2d2d2d;--text-main:#f4f4f4;--border:#373737;--accent:#ffffff;--accent-hover:#ffffff}
html,body,body.portfolio{font-family:var(--site-font)}button,input,select,textarea{font-family:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}*:focus-visible{outline:2px solid #ffffff;outline-offset:4px}
.inner-page .promo-hero .eyebrow{font-size:11px;color:#ffffff;margin-bottom:25px;letter-spacing:.16em}.editor-page .sidebar-header h1{color:#ffffff;font-size:19px;margin-bottom:16px}
body{background:var(--bg-color);color:var(--text-color)}
.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:700;letter-spacing:.06em}.brand img{width:32px;height:32px;object-fit:contain}
.inner-page main{padding-top:0!important}.inner-page .container{max-width:1296px;padding:0 5%}.inner-page .section{padding:64px 0}.inner-page .section-title{font-size:clamp(27px,3.5vw,44px);letter-spacing:-.03em;text-transform:none}.inner-page .section-desc{font-size:13px;color:#b4b4b4}.inner-page .request-intro{text-align:left;max-width:none;font-size:14px;line-height:2;margin-bottom:35px}.inner-page .request-intro span{color:#cfcfcf!important;font-size:12px!important}.inner-page .simulator-section,.inner-page .estimation-card,.inner-page .example-item{background:#1d1d1d;border-radius:5px;border-color:#373737;box-shadow:none}.inner-page .simulator-section h3{border-left-color:#ffffff;font-size:16px}.inner-page .option-item{border-radius:4px}.inner-page .option-item.selected{border-color:#ffffff;background:#ffffff09}.inner-page .option-item input{accent-color:#ffffff;flex-shrink:0}.inner-page .option-name{font-size:13px}.inner-page .option-price{font-size:14px;white-space:nowrap}.inner-page .option-title-row{gap:12px;flex-wrap:wrap}.inner-page .total-price{color:#ffffff}.inner-page .contact-scroll-btn{background:#ffffff;color:#111111}.inner-page .request-status-container{border-radius:5px;box-shadow:none}.inner-page .legal-table{font-size:14px;line-height:1.9}.inner-page .legal-table th{background:#1d1d1d;color:#ffffff}.inner-page .back-btn{border-radius:3px}.inner-page .workflow-step{border-radius:4px}.inner-page .promo-hero{padding:64px 0 28px;text-align:left;background:none}.inner-page .promo-hero h1{font-size:clamp(30px,4vw,50px);line-height:1.5;letter-spacing:-.04em;margin-bottom:24px}.inner-page .promo-hero p{margin:0;max-width:780px;font-size:14px;line-height:2}.inner-page .story-container{max-width:none;margin:35px 0 64px;padding:0;gap:56px}.inner-page .story-card{gap:48px}.inner-page .story-image-wrapper{border-radius:4px;box-shadow:none}.inner-page .story-content-wrapper h2{font-size:25px;margin:12px 0 20px;line-height:1.5}.inner-page .story-content-wrapper p{font-size:14px;line-height:2}.inner-page .story-content-wrapper .scope{font-size:12px;color:#ffffff;margin-top:20px}.inner-page .promo-cta-section{text-align:left;padding:48px 0;margin-bottom:0;background:#1d1d1d}.inner-page .promo-cta-card{padding:0;border:0;box-shadow:none;background:none;max-width:none}.inner-page .promo-cta-card h2{font-size:28px;margin-bottom:18px}.inner-page .promo-cta-card p{font-size:14px;color:#a9a9a9;margin-bottom:25px}.inner-page .promo-cta-btn{background:#ffffff;color:#111111;box-shadow:none;padding:15px 22px;border-radius:3px;font-size:14px}
.editor-page .sidebar-header h2{color:#ffffff;font-size:19px}.editor-page .btn.primary{color:#111111}.editor-page .btn{border-radius:4px}.editor-page .form-control{border-radius:4px}.editor-page .editor-empty{padding:36px;text-align:center;line-height:2}.editor-page .sidebar{flex-shrink:0}.editor-page .main-content{min-width:0}.editor-page .form-header{flex-wrap:wrap;gap:16px}.editor-page .sidebar-header a{display:inline-block;color:#a9a9a9;font-size:12px;margin-bottom:22px}.editor-page .section-box{border-radius:5px}.editor-page .help-text{line-height:1.8}
@media(max-width:768px){.inner-page .simulator-container{grid-template-columns:1fr;gap:16px}.inner-page .simulator-right{position:static}.inner-page .estimation-card{position:static}.inner-page .story-card,.inner-page .story-card:nth-child(even){grid-template-columns:1fr;gap:24px}.inner-page .story-card:nth-child(even) .story-image-wrapper{order:0}.inner-page .story-card:nth-child(even) .story-content-wrapper{order:0}.inner-page .legal-table th,.inner-page .legal-table td{display:block;width:100%;padding:16px}.inner-page .legal-table td{overflow-wrap:anywhere}.editor-page{height:auto;min-height:100vh;overflow:auto}.editor-page #app{flex-direction:column;min-height:100vh}.editor-page .sidebar{width:100%;max-height:none;border-right:0;border-bottom:1px solid #373737}.editor-page .sidebar-list{max-height:220px}.editor-page .main-content{overflow:visible;min-height:300px}.editor-page .editor-form{padding:20px}.editor-page .form-header>div{flex-wrap:wrap}.editor-page .list-item{flex-wrap:wrap}}
@media(max-width:640px){.inner-page .section{padding:42px 0}.inner-page .container{padding:0 6%}.inner-page .simulator-section{padding:20px 16px}.inner-page .option-item{padding:14px 12px;gap:10px}.inner-page .promo-hero{padding:42px 0 20px}.inner-page .story-content-wrapper h2{font-size:23px}.inner-page .promo-cta-card{margin:0}.inner-page .promo-cta-card h2{font-size:25px}.brand{font-size:18px}.brand img{width:28px;height:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Monochrome emphasis: white labels and black text replace colored accents. */
.portfolio .eyebrow,.portfolio .service-number,.portfolio .intro-visual figcaption span,
.inner-page .promo-hero .eyebrow,
.editor-page .sidebar-header h1{display:inline-block;width:fit-content;max-width:100%;background:#fff;color:#111;padding:5px 9px;line-height:1.6;border-radius:0;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.portfolio .intro h1 span{background:#fff;color:#111;padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.inner-page .total-price{color:#fff}.inner-page .legal-table th{background:#fff;color:#111}
.inner-page .status-dot.active{background:#00ffaa;box-shadow:0 0 10px #00ffaa}
.inner-page .status-dot.inactive{background:#ff5555;box-shadow:0 0 10px #ff5555}
.inner-page .status-pulse{display:none}.inner-page .status-label.active{color:#00ffaa}.inner-page .status-label.inactive{color:#ff5555}
.inner-page .option-item.selected{background:#ffffff0d;border-color:#fff}
.inner-page .request-intro span{color:#ffaa00!important;background:transparent;padding:0}
.inner-page .contact-scroll-btn:hover,.inner-page .promo-cta-btn:hover{background:#ddd;color:#111}
.portfolio .work-tag{color:#ccc;border-color:#444}.portfolio .featured-notes span{color:#bbb}
.portfolio a:hover{color:#fff}.portfolio .primary:hover{color:#111}
.editor-page .btn.danger{color:#ff7777;border:1px solid #b94a4a;background:#ff55550d}.editor-page .btn.danger:hover{background:#ff555526}
#request-status[data-status="accepting"]{color:#00ffaa}
#request-status[data-status="suspended"]{color:#ff7777}
#request-status[data-status="unknown"]{color:#ffaa00}
