:root{--accent:#e8b04b;--poster-ink:#05090d;--poster-blue:#101d2a;--poster-muted:#aab7b7}body{background:#050a0f;color:#f4f6ef}.studio-header{background:rgba(5,10,15,.94);border-bottom-color:#27353b}.header-copy h1{font-family:ui-sans-serif,system-ui,sans-serif;font-weight:700;letter-spacing:-.055em}.eyebrow,.step,.stage-topline,.studio-footer{color:var(--accent)}.button-primary{background:var(--accent);border-color:var(--accent);color:#07100b}.button:hover,.button:focus-visible{border-color:var(--accent)}.studio-layout{max-width:1700px;gap:24px}.builder-panel{background:#0c1720;border-color:#26383f;border-radius:10px}.panel-intro h2{font-weight:700;letter-spacing:-.02em}.step{border-color:rgba(232,176,75,.55)}.field{background:#081118;border-color:#30424a;border-radius:3px}.field:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(232,176,75,.13)}.map-stage{background:linear-gradient(145deg,#111f2d 0%,#05090d 64%);border-color:#26383f;border-radius:10px;box-shadow:0 28px 90px rgba(0,0,0,.34)}.stage-topline{border-bottom-color:rgba(170,183,183,.22)}.poster-heading{display:grid;gap:10px;padding:26px 38px 14px;position:relative}.poster-heading:after{content:"";height:1px;background:rgba(170,183,183,.22);display:block;position:absolute;left:38px;right:38px;bottom:0}.poster-heading span{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--poster-muted);font-weight:700}.poster-heading span:first-child{color:var(--accent)}#headline-metric{font-size:clamp(68px,9vw,142px);line-height:.84;letter-spacing:-.085em;font-weight:300;color:#f5f7f1}.poster-heading #headline-context{font-size:12px;color:var(--poster-muted);letter-spacing:.08em;text-transform:uppercase}.poster-heading+#map-wrap{min-height:520px}.context-country{fill:#39434b;stroke:#69757a;stroke-width:.4}.focus-country{stroke:#071015;stroke-width:1}.map-label{fill:#f3f5ed;font-size:12px;stroke:#071015;stroke-width:3px}.map-title{display:none}.map-subtitle{display:none}.legend-box{fill:rgba(5,9,13,.88);stroke:rgba(232,176,75,.65)}.legend-text{fill:#dce4df}.network-edge{stroke:var(--accent);opacity:.62}.network-node{fill:var(--accent);stroke:#071015}.stage-caption{border-top-color:rgba(170,183,183,.22);background:rgba(4,8,12,.32)}.stage-caption strong{font-size:16px;font-weight:500}.stage-caption span{color:var(--poster-muted)}.studio-footer{color:var(--poster-muted)}.studio-footer span:first-child{color:var(--accent)}.studio-footer a{color:var(--accent)}.button-export{background:#241d10;border-color:#7a6128}.text-button{color:var(--accent)}
@media(max-width:900px){.studio-header{background:#050a0f}.header-copy h1{font-size:27px}.map-stage{border-radius:8px}.poster-heading{padding:20px 18px 12px;gap:8px}.poster-heading:after{left:18px;right:18px}.poster-heading+#map-wrap{min-height:0;height:48dvh}.poster-heading span{font-size:12px}.poster-heading #headline-context{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-caption{background:#081118}.builder-panel{background:#0c1720}}
/* Block 2 foundation: a single editorial instrument language for the map maker. */
:root{--space-1:6px;--space-2:10px;--space-3:14px;--space-4:18px;--space-5:24px;--surface-0:#050a0f;--surface-1:#0c1720;--surface-2:#101d2a;--ink-strong:#f5f7f1;--ink-soft:#aab7b7;--focus-ring:0 0 0 3px rgba(232,176,75,.2)}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.studio-header{min-height:96px;box-shadow:0 1px 0 rgba(232,176,75,.04)}
.header-actions{justify-content:flex-end}
.button{border-radius:3px;letter-spacing:.01em}
.builder-panel,.map-stage{border-radius:10px}
.builder-panel{padding:var(--space-5)}
.panel-intro{margin-bottom:var(--space-2)}
.field-label{margin-top:var(--space-4)}
.builder-divider{margin:var(--space-5) 0}
.field{border-radius:3px}
.field:focus{box-shadow:var(--focus-ring)}
.map-stage{box-shadow:0 24px 70px rgba(0,0,0,.28)}
.stage-topline{min-height:44px;align-items:center}
.poster-heading{min-height:190px}
.poster-heading #headline-metric{font-variant-numeric:tabular-nums lining-nums}
.stage-caption{min-height:76px;align-items:center}
.map-stage[aria-busy="true"] #map-wrap{cursor:progress}.map-stage[aria-busy="true"] #studio-map{opacity:.58;transition:opacity .18s ease}.map-stage[aria-busy="true"] .poster-heading:after{background:var(--accent);animation:studio-load-line 1.1s ease-in-out infinite alternate}@keyframes studio-load-line{from{opacity:.25;transform:scaleX(.35);transform-origin:left}to{opacity:1;transform:scaleX(1);transform-origin:left}}
@media(max-width:900px){.studio-header{min-height:0}.builder-panel{padding:0 16px}.studio-layout.controls-open .builder-panel{padding:18px 16px}.poster-heading{min-height:0}.stage-caption{min-height:0}}
@media(prefers-reduced-motion:reduce){.map-stage[aria-busy="true"] .poster-heading:after{animation:none}.map-stage[aria-busy="true"] #studio-map{transition:none}}
