@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;450;500&family=Inter:wght@400;500;600&display=swap');
:root{--paper:#0d1113;--white:#121719;--ink:#d8dedc;--muted:#84918e;--line:#53635b26;--orange:#c88b70;--green:#9fc9b7;--soft:#18221f;--sidebar:#101517;--mono:'IBM Plex Mono',monospace;--glass:rgba(13,18,20,.82)}
body{background:#0d1113;font-family:Inter,sans-serif;font-size:12px;color:var(--ink)}button{transition:background .18s,color .18s,border-color .18s}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #a6c8bb;outline-offset:3px}#geo-stage{position:fixed;inset:0;z-index:0;background:#101516}#maplibre-canvas{position:absolute;inset:0}.map-ready #schematic-fallback{display:none}#schematic-fallback .map-wrap{height:100vh;width:100vw;background:#101516}#schematic-fallback .map-svg{filter:invert(.92) hue-rotate(125deg) saturate(.24) brightness(.5)}#schematic-fallback .map-ui,#schematic-fallback .map-zoom,#schematic-fallback .map-note,#schematic-fallback .map-compass{display:none}#geo-stage:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#080d1030,transparent 35%,transparent 65%,#080d1020)}.maplibregl-ctrl-attrib{font:9px var(--mono)!important;background:#101719c9!important;color:#83928c!important;margin:0!important}.maplibregl-ctrl-attrib a{color:#9ca9a3!important}.maplibregl-ctrl-bottom-right{bottom:0;right:0;z-index:3}.shell{display:block;position:relative;pointer-events:none;min-height:100vh}.shell button,.shell a,.shell input,.shell textarea,.shell select,.panel,.sidebar,.topbar{pointer-events:auto}.sidebar{position:fixed;top:47px;bottom:0;left:0;width:58px;height:auto;padding:18px 8px;background:rgba(12,17,19,.84);backdrop-filter:blur(16px);border-right:1px solid #66756d1a;z-index:20}.brand,.brand-sub,.nav-label,.mission,.profile{display:none}.nav{gap:9px}.nav button{padding:12px;justify-content:center;border-radius:3px;color:#758680}.nav button span:not(.icon){display:none}.nav button.active{background:#abc2b00e;color:#cbdcd3;box-shadow:inset 2px 0 #b3cabc}.nav button.active .icon{color:#b3cabc}.nav button:hover{background:#a6bcad0d;color:#d1ded7}.sidebar-bottom{padding-bottom:12px}.main{margin-left:58px;padding-top:47px}.topbar{position:fixed;z-index:25;top:0;left:0;right:0;height:47px;background:rgba(10,15,17,.88);backdrop-filter:blur(18px);border-bottom:1px solid #60736b26;padding:0 20px}.breadcrumb{font:9px var(--mono);letter-spacing:1px;gap:17px;color:#778780}.breadcrumb strong{font:9px var(--mono);color:#a8b9ae}.status-brand{font:600 13px Inter,sans-serif;letter-spacing:3px;color:#d0ddd6}.status-divider{color:#4b5b54}.top-right{font:9px var(--mono);gap:22px;color:#a0b0a8}#coordinates{letter-spacing:.4px;color:#8c9e94}.replay-pill{font:8px var(--mono);border:1px solid #c89b5e26;background:#c89b5e08;color:#c6ab83;letter-spacing:1.5px;border-radius:2px}.dot{height:4px;width:4px;background:#9ab9a3}.page{padding:25px;max-width:none}.page-head{padding:0;margin-bottom:22px}.page-head h1{font:500 18px Inter,sans-serif;letter-spacing:0}.subtitle{color:#899b90;font-size:11px}.panel,.stat,.integration{background:var(--glass);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid #59696129;border-radius:4px;box-shadow:0 8px 35px #0000000d}.panel-head{border-bottom:1px solid #6372681c;padding:14px 16px}.panel-head h2{font:500 10px var(--mono);letter-spacing:1px;text-transform:uppercase;color:#b8c7be}.panel-head p{font:9px var(--mono);color:#72877a;line-height:1.7;letter-spacing:.3px}h2,h3{font-family:Inter,sans-serif;font-weight:500}.btn{background:#96af9c08;border:1px solid #8da59329;color:#b3c5b8;border-radius:3px;font:10px var(--mono);padding:9px 12px}.btn.primary{background:#b8cbbb0d;border:1px solid #acc3b838;color:#c6dacd}.btn.orange{background:#b98a640d;border-color:#b98a6430;color:#d4ae8c}.btn:hover{background:#a8c0b019;filter:none}.btn .icon{width:14px;height:14px}.badge{font:8px var(--mono);letter-spacing:.6px;background:#87b2950b;color:#a4beaa;border:1px solid #8fa7961a;border-radius:2px}.badge.orange,.badge.red{color:#cba083;background:#d6a66b07;border-color:#d6a66b1a}.incident-body{padding:16px}.eyebrow{font:8px var(--mono);letter-spacing:1.4px;color:#7a8a80}.incident-title{margin-top:18px}.incident-title h2{font-size:18px;font-weight:400;letter-spacing:-.3px}.fire-icon{background:#cc8a5a0c;color:#d9a07c;border-radius:3px}.incident-sub{font:9px var(--mono);color:#788a7c}.info-grid{gap:17px;margin:22px 0}.info-grid span{font:8px var(--mono);letter-spacing:.6px;color:#798a7e}.info-grid strong{font:10px var(--mono);color:#bac9bd}.signal{background:#9bbca405;border:0;border-left:1px solid #839d7530;border-radius:0;padding:0 0 0 10px;font:10px/1.8 var(--mono);color:#8b9f8d}.signal b{color:#b1c0a7;font-weight:400}.route-item{border-bottom:1px solid #71857012;padding:14px 16px}.route-item:hover,.route-item.selected{background:#9bb69d06}.route-icon,.route-item.blocked .route-icon{background:transparent;width:23px;color:#88b59d}.route-item.blocked .route-icon{color:#b58970}.route-name{font:11px Inter,sans-serif;font-weight:400;color:#b6c7bb}.route-sub{font:9px var(--mono);color:#778a7a}.evidence-row{padding:12px 16px;grid-template-columns:23px 1fr auto;border-bottom:1px solid #6b7c6a12}.evidence-row:hover{background:#9aae9706}.evidence-icon{height:23px;width:23px;background:transparent;color:#819b84}.evidence-icon .icon{width:15px}.evidence-row strong{font:10px Inter,sans-serif;color:#b2c4b4}.evidence-row p,.evidence-row time{font:8px/1.7 var(--mono);color:#7c8f7a}.draft-body{padding:14px 16px}.draft-body p{font:10px/1.9 var(--mono);color:#8c9e87}.link-btn{font:9px var(--mono);color:#9db697}.link-btn .icon{width:12px}.footer{font:8px var(--mono);color:#82927b}.callout{background:#81997c08;border:1px solid #8ca4841a;color:#a3b39b;font:11px/1.9 var(--mono);border-radius:3px}.grid-3{gap:14px}.integration h3{color:#c5d1c1}.integration p{font:11px/1.9 var(--mono);color:#96a78d}.integration a{color:#b4c7a8}.activity-row{font:10px/1.8 var(--mono);border-bottom:1px solid #83967a13}.activity-row span{color:#adbea3}.activity-row time{color:#7e9470}.form-row{font:10px var(--mono);color:#91a783}.form-row input,.form-row textarea,.form-row select{background:#090f11a3;border:1px solid #6e846434;color:#c2d3b8;border-radius:3px;font:11px/1.8 var(--mono)}.form-row textarea{min-height:200px}.check{color:#a3b695;font:10px/1.9 var(--mono)}.sources{font:9px/1.9 var(--mono);color:#7f9672}.status-box{background:#8eaf7710;color:#b4c8a2;font:10px/1.8 var(--mono)}dialog{background:#101719ed;backdrop-filter:blur(25px);color:#d0ddc5;border:1px solid #849b7230;border-radius:4px;box-shadow:0 20px 90px #0006}dialog::backdrop{background:#050b0e70;backdrop-filter:blur(3px)}.dialog-head{border-bottom:1px solid #82947125}.dialog-content p{font:11px/1.9 var(--mono);color:#9daf8d}.empty{color:#93a882;font:11px/1.9 var(--mono)}.empty h2{color:#c4d1b6}#toast{background:#17211cee;color:#c8d9b8;border:1px solid #71846036;border-radius:3px;font:11px var(--mono);backdrop-filter:blur(15px)}
/* Map-first operations view: every control floats independently over the canvas. */
body[data-view="Overview"]{overflow:hidden}body[data-view="Overview"] .page{padding:0}body[data-view="Overview"] .page-head{position:fixed;left:83px;top:67px;z-index:5;display:block;margin:0}body[data-view="Overview"] .page-head>div:first-child{display:none}body[data-view="Overview"] .page-head .actions{gap:7px}body[data-view="Overview"] .page-head .btn{background:var(--glass);backdrop-filter:blur(16px)}body[data-view="Overview"] .workspace{display:block}body[data-view="Overview"] .workspace>section.panel{position:fixed;left:83px;top:122px;width:295px;background:none;backdrop-filter:none;border:0;overflow:visible;box-shadow:none;pointer-events:none}body[data-view="Overview"] .workspace>section.panel>.panel-head{border:0;background:var(--glass);backdrop-filter:blur(18px);border-radius:3px;padding:14px;pointer-events:auto}body[data-view="Overview"] .workspace>section.panel>.panel-head .badge{display:none}.map-tools{position:fixed;left:83px;bottom:184px;display:flex;gap:10px;pointer-events:auto}.layer-switch,.zoom-switch{display:flex;background:var(--glass);backdrop-filter:blur(16px);border:1px solid #85977928;border-radius:3px;padding:3px}.layer-switch button{padding:8px 10px;font:8px var(--mono);letter-spacing:1px;color:#839676}.layer-switch button.on{color:#c0d0b1;background:#a6bd910c}.zoom-switch button{width:29px;color:#adbf9b;font:15px var(--mono)}body[data-view="Overview"] .map-legend{position:fixed;left:85px;bottom:157px;padding:0;gap:13px;color:#9bac8e;font:8px var(--mono);pointer-events:none}body[data-view="Overview"] .timeline{position:fixed;bottom:82px;left:83px;right:355px;padding:13px 16px;background:var(--glass);border:1px solid #71875e25;border-radius:3px;backdrop-filter:blur(16px);pointer-events:auto}.timeline label,.timeline time{font:9px var(--mono);color:#a0b08e}.timeline input{accent-color:#a9bc93}.play{background:#8b9e7010;color:#bbce9d;width:24px;height:24px;font-size:10px}.right-stack{display:grid;gap:12px}body[data-view="Overview"] .workspace>.right-stack{position:fixed;top:67px;right:24px;width:305px;bottom:265px;overflow:auto;scrollbar-width:thin;scrollbar-color:#52644833 transparent}body[data-view="Overview"] .bottom-grid{display:contents}body[data-view="Overview"] .bottom-grid>section:first-child{position:fixed;left:83px;top:213px;width:295px}body[data-view="Overview"] .bottom-grid>section:last-child{position:fixed;right:24px;bottom:82px;width:305px}body[data-view="Overview"] .stats{position:fixed;left:83px;right:355px;bottom:28px;display:flex;gap:0;margin:0;height:40px;background:var(--glass);border:1px solid #71875e19;border-radius:3px;backdrop-filter:blur(18px)}body[data-view="Overview"] .stat{padding:0 13px;display:flex;align-items:center;gap:13px;border:0;background:none;backdrop-filter:none;box-shadow:none;flex:1;white-space:nowrap}body[data-view="Overview"] .stat-top{font:8px var(--mono);color:#8e9e7e}body[data-view="Overview"] .stat-top .icon,body[data-view="Overview"] .stat-foot,body[data-view="Overview"] .stat-value span{display:none}body[data-view="Overview"] .stat-value{font:11px var(--mono)!important;line-height:1.4!important;margin:0;color:#c1cfac}body[data-view="Overview"] .stat:last-child{display:none}body[data-view="Overview"] .footer{position:fixed;bottom:6px;left:83px;margin:0;font:8px var(--mono);gap:30px;color:#879476}body[data-view="Overview"] .footer>span:first-child:after{content:' / SIMULATED FIRE · REAL BASEMAP'}body:not([data-view="Overview"]) .page{position:relative;max-width:1250px;min-height:calc(100vh - 47px)}body:not([data-view="Overview"]) .page-head{background:var(--glass);padding:18px;backdrop-filter:blur(16px);border-radius:3px}body:not([data-view="Overview"]) .footer{background:var(--glass);padding:10px}body:not([data-view="Overview"]) .workspace{grid-template-columns:minmax(0,1.6fr) minmax(270px,1fr)}.map-unavailable .footer>span:first-child:after{content:' / OFFLINE SCHEMATIC'!important}
@media(min-width:1500px){body[data-view="Overview"] .workspace>.right-stack,body[data-view="Overview"] .bottom-grid>section:last-child{width:330px;right:30px}body[data-view="Overview"] .timeline,body[data-view="Overview"] .stats{right:390px}}
@media(max-width:1100px){#coordinates{display:none}body[data-view="Overview"] .workspace>section.panel,body[data-view="Overview"] .bottom-grid>section:first-child{width:255px}body[data-view="Overview"] .workspace>.right-stack,body[data-view="Overview"] .bottom-grid>section:last-child{width:275px;right:16px}body[data-view="Overview"] .timeline,body[data-view="Overview"] .stats{right:307px}.stat-top{font-size:7px!important}body[data-view="Overview"] .stat{padding:0 9px;gap:8px}.evidence-row{padding:12px}.evidence-row time{font-size:7px}}
@media(max-width:800px),(max-height:700px){body[data-view="Overview"]{overflow:auto}body[data-view="Overview"] .page{padding:0 16px 20px}body[data-view="Overview"] .page-head{position:relative;left:auto;top:auto;margin:20px 0}body[data-view="Overview"] .workspace>section.panel{position:relative;left:auto;top:auto;width:100%;height:340px}body[data-view="Overview"] .workspace>section.panel>.panel-head{width:max-content;max-width:100%}.map-tools{position:absolute;bottom:85px;left:0}body[data-view="Overview"] .map-legend{position:absolute;bottom:60px;left:0}body[data-view="Overview"] .timeline{position:absolute;bottom:0;left:0;right:0}body[data-view="Overview"] .workspace>.right-stack{position:relative;top:auto;right:auto;bottom:auto;width:auto;margin-top:14px;grid-template-columns:1fr 1fr;overflow:visible}body[data-view="Overview"] .bottom-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:14px;gap:12px}body[data-view="Overview"] .bottom-grid>section:first-child,body[data-view="Overview"] .bottom-grid>section:last-child{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:auto}body[data-view="Overview"] .stats{display:none}body[data-view="Overview"] .footer{position:relative;left:auto;bottom:auto;margin:18px 0 25px;flex-wrap:wrap;gap:8px}body[data-view="Overview"] .workspace>.right-stack>section{align-self:start}.top-right{gap:8px}.connection-label{display:none}}
@media(max-width:600px){.sidebar{width:45px;padding:15px 4px}.main{margin-left:45px}.nav{display:grid;margin:0;overflow:visible}.nav button{padding:10px 8px}.nav button span:not(.icon){display:none}.sidebar-bottom{display:block}.topbar{padding:0 12px}.breadcrumb{gap:8px;font-size:8px}.breadcrumb strong,.breadcrumb .status-divider:last-of-type{display:none}.status-brand{font-size:11px;letter-spacing:2px}.top-right>button{display:none}.replay-pill{font-size:7px}.page{padding:16px 12px}body[data-view="Overview"] .page{padding:0 12px 15px}body[data-view="Overview"] .workspace>.right-stack,body[data-view="Overview"] .bottom-grid,body:not([data-view="Overview"]) .workspace{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr}.map-legend{gap:7px!important;font-size:7px!important}.page-head .actions{margin-top:0;justify-content:flex-start}.topbar .icon{height:14px;width:14px}}
/* --- Communications console --- */
body[data-view="Console"] .page{max-width:1500px}
.console{display:grid;grid-template-columns:260px minmax(0,1fr) 300px;gap:14px;align-items:stretch;height:calc(100vh - 172px);min-height:460px}
.console .panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.btn.small{padding:6px 9px;font-size:9px}
.rail-actions{display:flex;gap:7px;padding:10px 12px;border-bottom:1px solid #6372681c}
.rail-scroll,.thread-scroll{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#52644833 transparent}
.rail-group{font:8px var(--mono);letter-spacing:1.4px;color:#7a8a80;padding:13px 14px 6px}
.area-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid #71857012;padding:11px 14px;color:#b6c7bb;cursor:pointer}
.area-row:hover{background:#9aae9706}.area-row.selected{background:#9bb69d0f}
.area-check{width:16px;height:16px;display:flex;align-items:center;justify-content:center;color:#b3cabc;flex:none}.area-check .icon{width:14px;height:14px}
.area-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.area-name{font:11px Inter,sans-serif;color:#c0d1c3}
.area-sub{font:8px var(--mono);color:#7d9079;letter-spacing:.3px}
.compose-body{padding:15px 16px;display:flex;flex-direction:column;gap:14px;overflow:auto}
.lang-bar{display:flex;flex-direction:column;gap:8px}
.lang-label{font:8px var(--mono);letter-spacing:.8px;color:#8a9c82;text-transform:uppercase}
.lang-pills{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.lang-pill{background:#96af9c0a;border:1px solid #8da59329;color:#aec2b3;border-radius:14px;font:10px var(--mono);padding:5px 11px;cursor:pointer}
.lang-pill.on{background:#b8cbbb1f;border-color:#acc3b85c;color:#d7e8db}
.lang-pill .rev{color:#d7b088}
.lang-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.alert-preview{background:#090f11a3;border:1px solid #6e846434;border-left:2px solid #acc3b8;border-radius:3px;padding:14px 15px;font:12px/1.9 var(--mono);color:#cedec6;white-space:pre-wrap}
.alert-preview[dir="rtl"]{text-align:right;border-left:0;border-right:2px solid #acc3b8}
.rev-note{font:9px var(--mono);color:#c8aa8a;margin:0}
.compose-foot{display:flex;flex-direction:column;gap:12px;margin-top:2px}
.disclaimer{font:8px/1.7 var(--mono);color:#8a9c82;margin:0}
.thread-item{border-bottom:1px solid #71857012;padding:12px 14px;display:flex;flex-direction:column;gap:4px}
.thread-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.thread-top time{font:8px var(--mono);color:#7e9470}
.badge.ok{color:#a7c7a0;background:#7fae7a0f;border-color:#7fae7a2e}
.thread-areas{font:10px Inter,sans-serif;color:#c0d1c3}
.thread-langs{font:9px var(--mono);color:#8ba6b2}
.thread-by{font:8px var(--mono);color:#7a8a80}
@media(max-width:1100px){.console{grid-template-columns:210px minmax(0,1fr) 240px}}
@media(max-width:900px){.console{grid-template-columns:1fr;height:auto}.console .panel{height:auto;max-height:430px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.replay-assessment h3{font:13px var(--mono);color:#c6d4bb;margin:0 0 12px}.replay-assessment .subtitle{font:10px/1.8 var(--mono)}.replay-steps{display:grid;gap:6px;margin-top:16px}.replay-steps button{display:flex;gap:10px;text-align:left;padding:9px 7px;color:#93a28c;border-left:2px solid transparent;font:9px var(--mono)}.replay-steps button[aria-pressed=true]{background:#a9bd9610;color:#d0debf;border-left-color:#b6cb9c}.replay-steps b{color:#c9a783}.replay-assessment .route-item{padding:11px 14px}body[data-view=Overview][data-map-mode=replay] .workspace>.right-stack{bottom:82px}body[data-view=Overview][data-map-mode=replay] .workspace>.right-stack>section:first-child{display:none}body[data-view=Overview][data-map-mode=replay] .bottom-grid>section:last-child{display:none}body[data-map-mode=replay] .map-legend{display:none}body[data-map-mode=replay] .map-tools{bottom:157px}body[data-map-mode=replay] .stats{pointer-events:none}@media(max-width:800px),(max-height:700px){body[data-map-mode=replay] .map-tools{bottom:70px}body[data-view=Overview][data-map-mode=replay] .workspace>.right-stack{bottom:auto}}
