/* Evangelion screen grammar: black field, saturated data layers, Mincho interruptions. */
@font-face{font-family:'EVA Mincho';src:url('assets/eva-mincho.woff2') format('woff2');font-style:normal;font-weight:900;font-display:swap}
@font-face{font-family:'EVA Display';src:url('assets/eva-display.woff2') format('woff2');font-style:normal;font-weight:400 900;font-display:swap}
:root{--bg:#030403;--panel:#030403;--amber:#ff8a19;--text:#f3dcc0;--muted:#bb9a77;--line:#975018;--green:#77ffae;--red:#f52727;--blue:#83c4ec;--serif:'EVA Mincho','Hiragino Mincho ProN','Yu Mincho',serif;--unit:#9b65bf;--unit-ink:#091005;--display:'EVA Display',Impact,'Arial Narrow','Helvetica Neue',sans-serif}
body{background:#030403}
body[data-unit="00"]{--unit:#e5a221}
body[data-unit="02"]{--unit:#f43d27}
.app-shell{max-width:1720px;grid-template-columns:50px minmax(0,1fr);grid-template-rows:49px auto}
.topbar{padding:0 24px 0 16px;gap:30px;border-bottom:2px solid var(--amber)}
.wordmark{font:900 23px/.85 var(--display);letter-spacing:-1px;transform:scaleY(1.12);color:var(--red)}
.wordmark span{margin:0 4px}
.top-ident{font-size:9px;letter-spacing:1.4px;color:var(--amber)}
.top-ident b{font-family:var(--serif);font-weight:900;font-size:13px}
.top-status{font-size:9px;font-weight:700;letter-spacing:.4px;color:var(--green)}
.live-dot{width:6px;height:6px;box-shadow:none}
.research-link{height:47px;font-size:12px;border-color:var(--amber);padding-left:22px}
.rail{border-color:#683713;padding-top:24px;gap:22px;background:#070603}
.rail-cross{color:var(--red);font-size:29px}
.rail-active{background:var(--red);font:bold 19px var(--display);width:29px;height:37px;color:#000}
.vertical{font-size:9px;letter-spacing:2px;color:var(--amber)}
.rail-bottom{font:900 29px var(--serif);color:var(--red)}
main{padding:23px 25px 0}
.page-heading{align-items:flex-end;margin-bottom:19px;gap:24px;min-height:167px}
.title-block{min-width:0;flex:1}
.page-heading .eyebrow{color:var(--text);font:800 12px var(--sans);letter-spacing:3px;margin:0 0 4px}
.page-heading .eyebrow span{color:var(--muted);font:9px var(--mono);letter-spacing:1px}
h1{color:var(--red);font:900 clamp(62px,7.5vw,112px)/1.12 var(--serif);letter-spacing:-7px;display:flex;align-items:flex-end;gap:23px;white-space:nowrap}
h1 span{font:11px/1.8 var(--sans);letter-spacing:1px;color:var(--text);padding-bottom:12px;white-space:normal;max-width:100px}
.title-caption{display:flex;gap:20px;align-items:center;color:var(--amber);font:900 18px/.95 var(--display);letter-spacing:3px;border-top:1px solid var(--line);padding-top:7px;margin-top:7px;max-width:665px}
.title-caption span{font:900 15px var(--serif);letter-spacing:2px;margin-left:auto}
.heading-meta{gap:8px;color:var(--green);font:11px var(--mono);align-self:stretch;justify-content:end}
.unit-plaque{width:218px;border-left:10px solid var(--green);background:var(--unit);padding:9px 15px 8px;color:#0c0811;display:flex;flex-direction:column;justify-content:space-between;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%)}
.unit-plaque>span{font:900 12px var(--serif);letter-spacing:3px}
.unit-plaque b{font:900 47px/.93 var(--display);color:inherit;display:flex;align-items:center;justify-content:space-between;letter-spacing:-1px}
.unit-plaque b span{font-size:73px;letter-spacing:-3px}
.unit-plaque small{font:bold 8px var(--mono);letter-spacing:.6px;margin-top:4px}
.control-strip{min-height:54px;gap:18px;margin-bottom:15px;border-top:3px solid var(--amber);border-bottom:1px solid var(--amber);background:#100902;padding:8px 12px}
.unit-picker{gap:12px;padding-right:18px;border-color:var(--line)}
.micro{color:var(--amber);font-size:9px;letter-spacing:.6px}
.segmented{gap:3px}
.segmented button{height:29px;width:32px;color:var(--amber);font-weight:700;border-color:#683712}
.segmented button[aria-pressed=true]{background:var(--unit);border-color:var(--unit);color:#030403}
.scenario-buttons button{font-size:11px;color:#cea17a;padding:0 10px;height:31px;border-color:#412b18;gap:7px}
.scenario-buttons button[aria-pressed=true]{background:var(--amber);border-color:var(--amber);color:#070403;font-weight:800}
body[data-phase=critical] .scenario-buttons button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#000}
.icon-button{color:#efbd86;font-size:11px}
.primary-grid{grid-template-columns:minmax(0,1.35fr) minmax(360px,1fr);gap:14px}
.panel{border:1px solid var(--amber);background:#030403}
.panel-header{height:33px;min-height:33px;background:var(--amber);border-bottom:0;color:#070403;padding:0 10px}
.panel-header h2{font:800 14px var(--display);letter-spacing:1.4px;color:#050403}
.panel-header>.micro{font-weight:700;font-size:9px;color:#050403}
.section-number{color:#050403;font:bold 11px var(--mono);padding-right:8px;margin-right:9px;border-right:1px solid #050403}
.tactical-map{background:#020302;min-height:380px}
.tactical-map:after{box-shadow:none;background:repeating-linear-gradient(transparent 0 3px,#00000014 3px 4px)}
#city-map{min-height:390px;max-height:490px}
.map-corner{top:15px}
.top-left{left:15px;gap:3px}
.top-left strong{font:900 44px/1.25 var(--serif);color:var(--amber);letter-spacing:-2px}
.top-left>span:last-child{color:#d9ae7e;font-size:10px}
.top-right{right:14px;font-size:10px;color:var(--amber);gap:3px}
.top-right>span:last-child{color:#cf9d68;font-size:6px}
.map-bottom{bottom:13px;left:15px;right:15px;font-size:10px}
.map-bottom>div>span{color:#d9ae7e}
#grid path{stroke:#793709;stroke-width:.6}
#smallgrid path{stroke:#4f2c0d;stroke-width:.3}
.terrain{stroke:#8d4b22}
.city-blocks{stroke:#d76c20;fill:#150b03}
#map-target{color:var(--green)}
#map-target text{font-weight:bold}
#sweep stop:first-child{stop-color:#f99615;stop-opacity:.28}
#sweep stop:last-child{stop-color:#ef7510}
.threat-control{min-height:65px;padding:10px 14px;gap:15px;border-top:2px solid var(--amber);background:#0d0903}
.threat-control label{font-weight:700;color:var(--amber);font-size:10px;letter-spacing:.2px}
.threat-control .micro{color:var(--text);font-size:10px}
#threat-value{color:var(--green);font:bold 32px var(--mono);letter-spacing:-2px}
#threat-value span{font:13px var(--mono)}
.magi-heading{padding:13px 14px 0;font:bold 9px var(--mono);letter-spacing:.8px;color:var(--amber)}
.magi-diagram{min-height:0;padding:10px 8px 5px;flex:1}
.magi-diagram svg{max-width:470px;max-height:290px;width:100%}
.magi-connector{stroke:var(--amber);stroke-width:3}
.magi-node path{fill:var(--blue);stroke:#beddfb;stroke-width:1.6;transition:fill .25s,stroke .25s}
.magi-node text{fill:#02080f;font-family:var(--mono);font-weight:700}
.node-number{font-size:11px;letter-spacing:2px}
.node-name{font:900 27px var(--display)!important;letter-spacing:-.4px}
.node-state{font-size:12px;font-weight:700;letter-spacing:.5px}
.magi-center{fill:var(--amber);font:900 19px var(--display);letter-spacing:.5px}
.magi-node[data-state=approved] path{fill:#7cffb1;stroke:#adffd3}
.magi-node[data-state=approved] text{fill:#03201b}
.magi-node[data-state=rejected] path{fill:#f12724;stroke:#ff5c42}
.magi-node[data-state=rejected] text{fill:#030303}
.magi-node[data-state=analyzing] path{fill:#ffb128;stroke:#ffdd68}
.magi-node[data-state=analyzing] text{fill:#1b0c00}
.consensus{margin:0 14px;padding:8px 0;border-top:3px solid var(--amber);border-bottom:1px solid var(--amber)}
.consensus>div{gap:2px}
.consensus .micro{font-size:8px;letter-spacing:2px}
.consensus strong{font:900 32px/1.3 var(--serif);letter-spacing:0;color:var(--amber)}
.consensus>b{font:700 39px var(--display);color:var(--amber)}
.consensus>b span{font:15px var(--mono)}
.magi-explanation{margin:9px 14px;font-size:11px;line-height:1.65;min-height:36px;color:#e2bd93}
.primary-button,.secondary-button{margin:0 14px 7px;min-height:38px;font-size:12px;border:1px solid var(--amber);font-weight:800}
.primary-button{background:var(--amber);color:#080300;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}
.primary-button:disabled{background:#503418;color:#d9ae7e;border-color:#8a511e}
.secondary-button{color:var(--green);border-color:var(--green);background:#071c11}
.secondary-button:disabled{color:#b08c6c;border-color:#704b28;background:#0c0905;opacity:.72}
.magi-footer{font-size:8px;color:var(--amber);margin:0 14px 10px}
.secondary-grid{grid-template-columns:1.05fr 1.07fr 1fr;gap:14px;margin-top:14px}
.secondary-grid .panel-header{background:#080603;border-bottom:1px solid var(--amber)}
.secondary-grid .panel-header h2,.secondary-grid .panel-header>.micro,.secondary-grid .section-number{color:var(--amber)}
.secondary-grid .section-number{border-color:var(--amber)}
.metric-line{padding:13px 14px 0;gap:10px}
.metric-line strong{font:700 65px/.95 var(--display);color:var(--green);letter-spacing:-2px}
.metric-unit{font-size:10px;color:var(--green)}
.metric-status{font:bold 10px var(--mono);color:var(--green)}
.wave-plot{margin:8px 14px 9px}
.wave-caption{color:var(--amber);font-size:8px}
.wave-plot svg{height:68px;margin-top:5px}
.wave-grid{stroke:#88511e;stroke-width:.5}
#wave-primary{stroke:#fa8c23;stroke-width:2}
#wave-secondary{stroke:#68fcae;stroke-width:1.3}
.wave-axis{color:#b49778;font-size:8px}
.power-panel .metric-line{padding:12px 14px 0;gap:6px}
.power-panel .metric-line>div{display:flex;align-items:flex-end;min-width:0;gap:7px}
#power-segments{display:flex;gap:3px;height:62px;max-width:100%;color:var(--green)}
.segment-digit{width:32px;height:62px;display:block}
.segment-colon{width:11px;height:62px;display:block}
.segment-digit .on{fill:currentColor}
.segment-digit .off{fill:#103621;opacity:.58}
.power-symbol{font-size:48px;color:var(--amber)}
.power-limit-label{display:flex;align-items:flex-end;justify-content:space-between;margin:9px 14px 0;font:900 29px/1.3 var(--serif);color:var(--amber);letter-spacing:-1px}
.power-limit-label span{font:8px var(--mono);letter-spacing:.4px;margin-bottom:7px;color:#e6b883}
.power-bars{height:13px;gap:3px;margin:9px 14px 8px}
.power-bars i{background:var(--green);opacity:1}
.power-bars i.empty{background:#173121;opacity:.65}
.power-caption{margin:0 14px 12px;font-size:9px;color:#c4a582}
.power-caption span:last-child{color:var(--green)}
#event-log{margin:3px 12px 8px;max-height:177px}
#event-log li{padding:10px 0;font-size:11px;grid-template-columns:43px 1fr;border-color:#4f2e0e}
#event-log time{font-size:9px;color:var(--green)}
#event-log .log-new{color:var(--amber)}
.page-footer{border-color:var(--amber);margin-top:17px;min-height:42px;color:#b49370;font-size:8px}
.footer-mark{font:900 15px var(--serif);color:var(--red)}
.alert-overlay{top:47%;transform:translateY(-40%) rotate(-2deg);width:103%;left:-1.5%;right:auto;padding:0 20px 9px;background:#f12422;color:#050403;border:0;box-shadow:0 8px 0 #050403,0 -8px 0 #050403}
.alert-overlay .alert-english{display:block;font:900 35px/.9 var(--display)!important;letter-spacing:6px!important;margin:11px 0 0}
.alert-overlay strong{font:900 clamp(56px,6.5vw,104px)/1.2 var(--serif);letter-spacing:-5px;color:#030303;white-space:nowrap;margin:1px 0 7px}
.alert-overlay>span:not(.alert-stripe):not(.alert-english){font:900 23px var(--serif);letter-spacing:1px}
.alert-overlay b{font:bold 12px var(--sans);letter-spacing:0;color:#030303}
.alert-overlay p{font-size:11px;font-weight:700;color:#050403;margin:9px 0 11px}
.alert-stripe{height:12px;margin:0 -20px;background:repeating-linear-gradient(-55deg,#050403 0 13px,transparent 13px 26px)}
.alert-stripe:last-child{margin:0 -20px -9px}
.critical .tactical-panel{border-color:var(--red)}
.critical .tactical-panel .panel-header{background:var(--red)}
.critical .threat-control{border-color:var(--red)}
.critical .metric-status{color:#ff633a}
.critical #threat-value{color:#ff643a}
.critical .consensus strong{color:var(--red)}
dialog{background:#050403;border:2px solid var(--amber);box-shadow:10px 10px 0 #441b07;padding:29px}
dialog h2{font:900 39px/1.3 var(--serif);color:var(--red)}
dialog::backdrop{background:#020302eb;backdrop-filter:blur(2px)}
.research-card h3{color:var(--amber)}
.research-card p{color:#e3c9ab}
.research-rules p,.research-rights{color:#bb9a77}
@media(min-width:1500px){main{padding:27px 32px 0}.page-heading{min-height:183px}.unit-plaque{width:250px}.unit-plaque b{font-size:56px}.unit-plaque b span{font-size:82px}.tactical-map{min-height:430px}.magi-diagram{padding:12px 10px 8px}.magi-diagram svg{max-height:315px}.magi-explanation{margin:10px 14px}.magi-footer{margin-bottom:12px}}
@media(max-width:1180px){main{padding:20px 19px 0}.page-heading{min-height:155px}.page-heading .eyebrow{font-size:10px;letter-spacing:2px}h1{font-size:82px;letter-spacing:-5px;gap:15px}h1 span{font-size:10px;max-width:82px}.title-caption{font-size:15px;letter-spacing:2px}.unit-plaque{width:175px;padding:9px 10px;border-left-width:7px}.unit-plaque>span{font-size:9px;letter-spacing:2px}.unit-plaque b{font-size:35px}.unit-plaque b span{font-size:66px}.unit-plaque small{font-size:6px}.primary-grid{grid-template-columns:minmax(0,1.25fr) minmax(310px,1fr)}.control-strip{gap:12px}.scenario-buttons button{font-size:10px;padding:0 8px}.magi-diagram svg{max-height:275px}.node-name{font-size:26px!important}.secondary-grid{grid-template-columns:1fr 1fr}.log-panel{grid-column:1/-1}.log-panel #event-log{max-height:108px}.map-corner .micro{font-size:8px}.top-left strong{font-size:37px}.consensus strong{font-size:29px}.power-limit-label{font-size:32px}.metric-line strong{font-size:67px}}
@media(max-width:900px){.app-shell{grid-template-columns:39px minmax(0,1fr)}.topbar{padding:0 17px;gap:20px}.wordmark{font-size:21px}.research-link{height:47px;padding-left:16px}.top-status{font-size:8px}.rail-cross{font-size:24px}.rail-active{width:27px;height:34px}.page-heading{min-height:143px;gap:16px}h1{font-size:70px;letter-spacing:-5px}h1 span{display:none}.page-heading .eyebrow span{display:none}.title-caption{font-size:13px;letter-spacing:1.7px}.title-caption span{font-size:12px;letter-spacing:1px}.unit-plaque{width:159px}.unit-plaque b{font-size:32px}.unit-plaque b span{font-size:58px}.heading-meta{font-size:10px}.primary-grid{grid-template-columns:1fr}.control-strip{padding:10px;gap:10px}.scenario-picker{margin-left:auto}.tactical-map{min-height:380px}#city-map{max-height:475px;min-height:360px}.magi-panel{display:grid;grid-template-columns:1.12fr 1fr;grid-template-rows:33px 30px auto auto 43px 46px 27px;column-gap:12px}.magi-panel>.panel-header{grid-column:1/-1}.magi-heading{grid-column:1/-1;padding:11px 13px 0}.magi-diagram{grid-row:3/8;grid-column:1;min-height:0;padding:0 0 8px 8px}.magi-diagram svg{max-height:285px;max-width:none}.consensus{grid-column:2;grid-row:3;margin-left:0}.consensus strong{font-size:28px}.magi-explanation{grid-column:2;grid-row:4;margin-left:0;font-size:10px}.primary-button{grid-column:2;grid-row:5;margin:0 14px 4px 0;min-height:36px}.secondary-button{grid-column:2;grid-row:6;margin:4px 14px 4px 0;min-height:36px}.magi-footer{grid-column:2;grid-row:7;margin:3px 14px 8px 0;font-size:7px}.alert-overlay strong{font-size:85px}.page-footer{flex-direction:column;align-items:flex-start;gap:6px;padding:11px 0}.log-panel #event-log{max-height:130px}}
@media(max-width:600px){.app-shell{display:block}.topbar{height:47px;padding:0 13px;gap:12px}.wordmark{font-size:21px}.research-link{height:45px;font-size:11px;padding-left:15px}.top-status{display:none}main{padding:21px 12px 0}.page-heading{min-height:140px;position:relative;align-items:flex-start;gap:10px;margin-bottom:17px}.page-heading .eyebrow{font-size:7px;letter-spacing:1.3px;white-space:nowrap;margin-bottom:10px}h1{font-size:clamp(45px,12.5vw,70px);letter-spacing:-4px;display:block;line-height:1.2}h1 span{display:block;max-width:none;font-size:9px;letter-spacing:.2px;margin:8px 0 0;padding:0}.title-caption{font-size:10px;letter-spacing:.7px;margin-top:9px;padding-top:6px;gap:4px}.title-caption span{font-size:9px;letter-spacing:0}.heading-meta{gap:8px;padding-top:20px;font-size:7px;flex-shrink:0}.unit-plaque{width:90px;padding:6px;border-left-width:5px;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%)}.unit-plaque>span{font-size:6px;letter-spacing:.2px}.unit-plaque b{font-size:18px;display:flex;flex-direction:column;align-items:flex-start;line-height:1;margin-top:6px}.unit-plaque b span{font-size:53px;align-self:flex-end;letter-spacing:-2px}.unit-plaque small{font-size:4px;letter-spacing:0}.control-strip{padding:9px 8px;gap:8px;min-height:0;margin-bottom:13px;border-top-width:2px}.unit-picker{order:1;gap:8px;padding-right:0}.segmented button{width:28px;height:28px;font-size:13px}.scenario-picker{order:4;width:100%;border-top:1px solid #67350c;padding-top:8px;gap:7px;margin-left:0}.scenario-picker>.micro{display:block;font-size:7px}.scenario-buttons{gap:3px;margin-left:auto}.scenario-buttons button{font-size:10px;height:29px;padding:0 6px;gap:4px}.icon-button#pause{order:2;margin-left:auto;font-size:10px}.control-strip .reset{order:3;margin-left:6px;padding-left:8px}.primary-grid{gap:13px}.panel-header{height:31px;min-height:31px;padding:0 9px}.panel-header h2{font-size:13px;letter-spacing:1px}.panel-header>.micro{font-size:7px}.section-number{font-size:9px;margin-right:7px;padding-right:6px}.tactical-map{min-height:342px}#city-map{min-height:310px;max-height:none;width:133%;max-width:none;transform:translateX(-11%)}.map-corner{top:15px}.top-left{left:12px}.top-left strong{font-size:33px;letter-spacing:-1px}.top-left>span:last-child{font-size:8px}.top-right{right:10px;font-size:8px}.top-right .micro{font-size:7px}.map-bottom{bottom:12px;left:12px;right:12px;gap:15px;font-size:9px}.map-bottom>div>span{font-size:8px}.threat-control{padding:10px 11px;gap:10px;min-height:65px}.threat-control label{font-size:8px;letter-spacing:0}.threat-control .micro{font-size:9px}#threat-value{font-size:28px;min-width:54px}.magi-panel{display:flex}.magi-heading{padding:13px 13px 0;font-size:8px}.magi-diagram{padding:12px 6px 8px}.magi-diagram svg{max-height:none;max-width:390px}.consensus{margin:0 13px;padding:9px 0}.consensus strong{font-size:32px}.consensus>b{font-size:38px}.magi-explanation{margin:11px 13px;font-size:11px;min-height:37px}.primary-button,.secondary-button{margin:0 13px 8px;min-height:42px}.magi-footer{margin:0 13px 12px;font-size:8px}.secondary-grid{grid-template-columns:1fr;margin-top:13px;gap:13px}.log-panel{grid-column:auto}.metric-line{padding:14px 14px 0}.metric-line strong{font-size:68px}.wave-plot{margin-top:11px;margin-bottom:11px}.wave-plot svg{height:76px}.power-panel .metric-line{padding-top:16px}#power-segments{height:72px;gap:5px}.segment-digit{width:37px;height:72px}.segment-colon{width:12px;height:72px}.power-symbol{font-size:52px}.power-limit-label{margin-top:12px;font-size:34px}.power-limit-label span{font-size:8px}.power-bars{height:15px;margin-top:9px;margin-bottom:10px}.power-caption{margin-bottom:14px}.alert-overlay{top:47%;padding:0 14px 8px;transform:translateY(-40%) rotate(-3deg);width:106%;left:-3%}.alert-overlay .alert-english{font-size:25px!important;letter-spacing:4px!important;margin-top:10px}.alert-overlay strong{font-size:clamp(53px,14vw,78px);letter-spacing:-4px;margin:5px 0 9px}.alert-overlay>span:not(.alert-stripe):not(.alert-english){font-size:18px}.alert-overlay b{font-size:10px;margin-left:6px}.alert-overlay p{font-size:9px;line-height:1.7;margin:10px 8px}.alert-stripe{height:10px;margin:0 -14px}.alert-stripe:last-child{margin:0 -14px -8px}.page-footer{margin-top:14px;font-size:6px}.page-footer>span:last-child{font-size:8px}.footer-mark{font-size:13px}dialog{padding:19px;width:calc(100% - 24px)}dialog h2{font-size:31px}.research-card h3{font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
