:root{--ocean:#0c1a24;--land:#22333c;--land-nb:#18262d;--prov-line:#2f4550;--text:#e4ecef;--muted:#93a7af;--faint:#5f747d;--panel:#0e1c25ed;--panel-solid:#0f1f29;--line:#24404b;--hover:#163039;--accent:#3cc2b4;--accent-ink:#06211e;--track:#5b9bff;--mean:#fff;--w34:#f2c14e;--w50:#f08a3e;--w64:#e0475b;--ok:#3cc2b4;--warn:#f0a03e;--bad:#ef6b7b;--st-monitoring:#7f9cf5;--st-readiness:#f0a03e;--st-activation:#ef6b7b;--landfall:#ffd166;--s1:#3987e5;--s2:#d95926;--s5:#d55181;--label:#b9c8ce;--label-halo:#0c1a24;--font:"Public Sans", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--ocean:#cfdfe6;--land:#eef2f2;--land-nb:#e2e8e9;--prov-line:#b9c7cc;--text:#13232b;--muted:#4f6670;--faint:#7d9199;--panel:#fffffff2;--panel-solid:#fff;--line:#d3dee2;--hover:#eef4f5;--accent:#138a7e;--accent-ink:#fff;--track:#2f6fe0;--mean:#13232b;--ok:#138a7e;--warn:#b86a00;--bad:#b2325a;--st-monitoring:#3a56c4;--st-readiness:#b86a00;--st-activation:#b2325a;--landfall:#b8860b;--s1:#2a78d6;--s2:#eb6834;--label:#3a5059;--label-halo:#eef2f2;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root[data-theme=light]{--ocean:#cfdfe6;--land:#eef2f2;--land-nb:#e2e8e9;--prov-line:#b9c7cc;--text:#13232b;--muted:#4f6670;--faint:#7d9199;--panel:#fffffff2;--panel-solid:#fff;--line:#d3dee2;--hover:#eef4f5;--accent:#138a7e;--accent-ink:#fff;--track:#2f6fe0;--mean:#13232b;--ok:#138a7e;--warn:#b86a00;--bad:#b2325a;--st-monitoring:#3a56c4;--st-readiness:#b86a00;--st-activation:#b2325a;--landfall:#b8860b;--s1:#2a78d6;--s2:#eb6834;--label:#3a5059;--label-halo:#eef2f2;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--ocean);color:var(--text);font-family:var(--font);font-variant-numeric:tabular-nums;font-size:14px;line-height:1.4;overflow:hidden}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.map{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:fixed;inset:0}.map.dragging{cursor:grabbing}.prov{fill:var(--land);stroke:var(--prov-line);stroke-width:.6px;vector-effect:non-scaling-stroke;cursor:pointer}.prov:hover{stroke:var(--text);stroke-width:1.4px}.prov.sel{stroke:var(--accent);stroke-width:2.2px}.nb{fill:var(--land-nb);stroke:none}.noBounds .prov{stroke:#0000}.noBounds .prov.sel{stroke:var(--accent)}.trk{fill:none;stroke:var(--track);stroke-width:1px;stroke-opacity:.38;vector-effect:non-scaling-stroke}.mean{fill:none;stroke:var(--mean);stroke-width:2.4px;vector-effect:non-scaling-stroke}.mean.wide{stroke-dasharray:3 5;stroke-width:1.8px;opacity:.62}.mdot{fill:var(--track);fill-opacity:.85}.par{fill:none;stroke:var(--faint);stroke-width:1px;stroke-dasharray:6 5;vector-effect:non-scaling-stroke}.other{fill:none;stroke:var(--muted);stroke-width:1.6px;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.lfpt{fill:none;stroke:var(--landfall);stroke-width:1.4px;vector-effect:non-scaling-stroke}.wland{fill:var(--land);stroke:var(--prov-line);stroke-width:.5px;vector-effect:non-scaling-stroke}.wsys{cursor:pointer}.wcone{opacity:.16}.wcone circle{fill:var(--mean)}.wsys.prov .wcone{opacity:.09}.wsys.prov .wcone circle{fill:var(--track)}.wtrk{fill:none;stroke:var(--mean);stroke-width:2px;vector-effect:non-scaling-stroke}.wsys.prov .wtrk{stroke:var(--track);stroke-dasharray:5 4;stroke-width:1.6px}.wring{fill:none;stroke:var(--track);stroke-width:1.4px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.wdot{fill:var(--mean)}.wsys.prov .wdot{fill:var(--track)}.wlabel{font-family:var(--font);fill:var(--label);paint-order:stroke;stroke:var(--label-halo);stroke-linejoin:round}.wsys:hover .wtrk{stroke:var(--accent);stroke-width:3px}.wsys.sel .wtrk,.wsys.sel .wring,.wsys.sel.members .wcone{display:none}.picking .wsys:not(.sel){opacity:.35}.wsys.sel .wcone{opacity:.26}.wsys.sel .wlabel{fill:var(--text);font-weight:700}.city text{font-family:var(--font);fill:var(--label);paint-order:stroke;stroke:var(--label-halo);stroke-linejoin:round}.city circle{fill:var(--label)}.sea{font-family:var(--font);fill:var(--faint);letter-spacing:.06em;font-style:italic}.bar{padding:calc(10px + env(safe-area-inset-top,0px)) 16px 10px;z-index:5;background:linear-gradient(to bottom, color-mix(in srgb,var(--ocean) 92%,transparent), color-mix(in srgb,var(--ocean) 0%,transparent));pointer-events:none;align-items:center;gap:14px;display:flex;position:fixed;top:0;left:0;right:0}.bar>*{pointer-events:auto}.brand{letter-spacing:.02em;white-space:nowrap;align-items:center;gap:10px;font-size:16px;font-weight:700;display:flex}.brand svg{flex:none;width:26px;height:26px}.brand small{color:var(--muted);letter-spacing:0;font-size:14px;font-weight:500}.chip{border:1px solid var(--line);background:var(--panel);color:var(--muted);white-space:nowrap;border-radius:999px;padding:5px 12px;font-size:13px}.chip b{color:var(--text);font-weight:600}.chip.warn{border-color:color-mix(in srgb,var(--warn) 55%,transparent);color:var(--warn)}.chip.state{letter-spacing:.04em;font-size:12px;font-weight:700}.chip.state-idle{color:var(--muted)}.chip.state-monitoring{color:var(--st-monitoring);border-color:color-mix(in srgb,var(--st-monitoring) 55%,transparent)}.chip.state-readiness{color:var(--st-readiness);border-color:color-mix(in srgb,var(--st-readiness) 55%,transparent)}.chip.state-activation{color:#fff;background:var(--st-activation);border-color:var(--st-activation)}.bar .sp{flex:1}.btn{border:1px solid var(--line);background:var(--panel);cursor:pointer;white-space:nowrap;border-radius:8px;padding:6px 12px;font-size:13px}.btn:hover{background:var(--hover)}.panel{z-index:4;background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);border-radius:12px;position:fixed;box-shadow:0 8px 30px #00000047}#left{top:calc(62px + env(safe-area-inset-top,0px));width:286px;max-height:calc(100% - 62px - 28px - max(var(--legend-h,0px), 72px) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:6px 0 10px;left:16px;overflow:auto}#right{top:calc(62px + env(safe-area-inset-top,0px));width:372px;max-height:calc(100% - 140px);right:16px;overflow:auto}.ph{justify-content:space-between;align-items:center;padding:10px 16px 6px;display:flex}.ph h2{margin:0;font-size:15px;font-weight:700}.collapse{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:6px;padding:4px 6px}.collapse:hover{background:var(--hover)}.grp{border-top:1px solid var(--line);padding:8px 16px 6px}.grp:first-of-type{border-top:0}.grp h3{color:var(--muted);margin:4px 0 6px;font-size:13px;font-weight:600}.row{align-items:center;gap:10px;min-height:34px;padding:6px 0;display:flex}.row .lbl{flex:1}.row .lbl small{color:var(--faint);font-size:12px;display:block}.row.off{opacity:.45}.row.off .lbl small{font-style:italic}.sw{border-radius:3px;flex:none;width:14px;height:14px}.tog{background:color-mix(in srgb,var(--muted) 35%,transparent);cursor:pointer;border:0;border-radius:999px;flex:none;width:36px;height:20px;transition:background .15s;position:relative}.tog:after{content:"";background:var(--text);border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:3px;left:3px}.tog[aria-checked=true]{background:var(--accent)}.tog[aria-checked=true]:after{background:var(--accent-ink);transform:translate(16px)}.tog:disabled{cursor:not-allowed}.seg{border:1px solid var(--line);border-radius:8px;margin:2px 0 6px;display:flex;overflow:hidden}.seg button{cursor:pointer;color:var(--muted);background:0 0;border:0;flex:1;padding:6px;font-size:12.5px}.seg button+button{border-left:1px solid var(--line)}.seg button[aria-pressed=true]{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--text);font-weight:600}.note{color:var(--faint);margin:4px 0 0;font-size:12px}select{background:var(--panel-solid);width:100%;color:var(--text);border:1px solid var(--line);font:inherit;border-radius:8px;padding:7px 8px;font-size:13px}.m-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:8px;padding:14px 18px 10px;display:flex}.m-head h2{margin:0;font-size:15px}.m-head p{color:var(--muted);margin:2px 0 0;font-size:12.5px}.kpis{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.kpi{padding:14px 18px}.kpi+.kpi{border-left:1px solid var(--line)}.kpi .k-l{color:var(--muted);min-height:34px;font-size:12.5px}.kpi .k-v{letter-spacing:-.01em;margin-top:4px;font-size:30px;font-weight:700;line-height:1.1}.kpi .k-r{color:var(--muted);margin-top:4px;font-size:12px}.kpi.dmg .k-v{color:#f08aa0}:root[data-theme=light] .kpi.dmg .k-v{color:#b2325a}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .kpi.dmg .k-v{color:#b2325a}}.sect{border-bottom:1px solid var(--line);padding:12px 18px}.sect:last-child{border-bottom:0}.sect h3{margin:0 0 8px;font-size:13px;font-weight:600}.sect h3 span{color:var(--faint);font-weight:400}.trig{grid-template-columns:1fr auto;gap:2px 10px;padding:6px 0;display:grid}.trig .t-l{font-size:13px}.t-s{white-space:nowrap;border-radius:999px;align-self:center;padding:1px 8px;font-size:12px;font-weight:600}.t-s.met{background:color-mix(in srgb,var(--ok) 22%,transparent);color:var(--ok)}.t-s.not{background:color-mix(in srgb,var(--muted) 18%,transparent);color:var(--muted)}.t-s.mon{background:color-mix(in srgb,var(--st-monitoring) 20%,transparent);color:var(--st-monitoring)}.pbar{background:color-mix(in srgb,var(--muted) 18%,transparent);border-radius:4px;grid-column:1/-1;height:8px;margin-top:4px;position:relative}.pbar i{background:#c071c9;border-radius:4px;position:absolute;top:0;bottom:0;left:0}.pbar u{background:var(--text);width:2px;position:absolute;top:-3px;bottom:-3px}.trig small{color:var(--faint);grid-column:1/-1;font-size:12px}.verdict{background:color-mix(in srgb,var(--muted) 12%,transparent);border:1px solid var(--line);border-radius:8px;margin-top:8px;padding:8px 10px;font-size:13px}.verdict.on{background:color-mix(in srgb,var(--st-activation) 16%,transparent);border-color:color-mix(in srgb,var(--st-activation) 50%,transparent)}.verdict.ready{background:color-mix(in srgb,var(--st-readiness) 14%,transparent);border-color:color-mix(in srgb,var(--st-readiness) 45%,transparent)}.lanes{margin-top:10px;font-size:12.5px}.lanes summary{cursor:pointer;color:var(--muted)}.lane{border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent);grid-template-columns:1fr auto;gap:1px 10px;padding:7px 0;display:grid}.lane:last-child{border-bottom:0}.lane small{color:var(--faint);grid-column:1/-1}.tag{color:var(--faint);border:1px solid var(--line);border-radius:4px;margin-left:4px;padding:0 5px;font-size:11px;display:inline-block}.kv{grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:13px;display:grid}.kv dt{color:var(--muted)}.kv dd{text-align:right;margin:0}table{border-collapse:collapse;width:100%;font-size:12.5px}th{color:var(--muted);text-align:right;border-bottom:1px solid var(--line);padding:4px 0;font-weight:500}th:first-child,td:first-child{text-align:left}td{text-align:right;border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent);padding:6px 0}td .mem{color:var(--muted);font-size:11px;line-height:1.3;display:block}.warnbox{border:1px solid color-mix(in srgb,var(--warn) 45%,transparent);background:color-mix(in srgb,var(--warn) 12%,transparent);border-radius:8px;margin:12px 18px 0;padding:8px 10px;font-size:12.5px}.warnbox summary{cursor:pointer;color:var(--warn);font-weight:600}.warnbox p{color:var(--muted);margin:6px 0 0}.empty{color:var(--muted);padding:18px}.empty b{color:var(--text);margin-bottom:4px;font-size:15px;display:block}.ci{color:var(--faint);margin-left:2px;font-weight:400}.why{margin:4px 0 2px;font-size:12px}.why summary{cursor:pointer;color:var(--faint)}.why.ceil{margin:6px 0 2px}.why.ceil summary{color:var(--muted)}.why p{color:var(--muted);white-space:pre-line;margin:4px 0 0;line-height:1.45}.lane .why{grid-column:1/-1}.sect h4{margin:10px 0 2px;font-size:12.5px;font-weight:600}.others{border-top:1px solid var(--line);margin-top:8px;padding-top:4px}.verdict.ok{background:color-mix(in srgb,var(--ok) 14%,transparent);border-color:color-mix(in srgb,var(--ok) 40%,transparent)}.verdict+.verdict{margin-top:6px}.t-s.fire{background:color-mix(in srgb,var(--st-activation) 22%,transparent);color:var(--st-activation)}.arms{flex-direction:column;gap:6px;margin-top:8px;display:flex}.arm{text-align:left;border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;width:100%;padding:7px 9px;display:block}.arm:hover:not(:disabled){background:var(--hover)}.arm:disabled{cursor:default}.arm.cur{border-color:var(--accent)}.arm-h{align-items:center;gap:6px;font-size:13px;display:flex}.arm-h .t-s{margin-left:auto}.arm small{color:var(--faint);margin-top:2px;font-size:12px;display:block}.observed{border:1px solid color-mix(in srgb,var(--ok) 40%,transparent);border-radius:8px;margin-top:10px;padding:8px 10px}.observed h4{margin-top:0}td.barcell{width:60px;padding-left:8px}td.barcell i{background:var(--s5);border-radius:2px 4px 4px 2px;height:8px;display:block}tr.total td{border-bottom:0;font-weight:600}.wrow{text-align:left;border:0;border-top:1px solid var(--line);width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;grid-template-columns:1fr auto;gap:0 10px;padding:7px 2px;font-size:13px;display:grid}.wrow span{color:var(--muted);font-size:12px}.wrow .wfig{color:var(--text);grid-area:1/2}.wnote{border-bottom:1px solid var(--line);margin:0;padding:10px 16px}.wrow:hover{background:var(--hover)}.wrow.sel{background:var(--hover);box-shadow:inset 3px 0 var(--accent)}.linkish{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;text-decoration:underline}.kv.small{gap:3px 10px;font-size:12px}.seg button:disabled{opacity:.4;cursor:not-allowed}.chg{color:var(--muted);margin:0;padding-left:16px;font-size:13px}.chg li{margin:2px 0}.hist .legend{color:var(--muted);gap:14px;margin:-2px 0 4px;font-size:12px;display:flex}.key{vertical-align:middle;border-radius:1px;width:12px;height:2px;margin-right:5px;display:inline-block}.key.s1,.ln.s1{background:var(--s1);stroke:var(--s1)}.key.s2,.ln.s2{background:var(--s2);stroke:var(--s2)}.key.s5,.ln.s5{background:var(--s5);stroke:var(--s5)}.charts{cursor:crosshair;position:relative}.charts svg{display:block;overflow:visible}.ax{font-family:var(--font);fill:var(--faint);font-size:10px}.grid{stroke:var(--line);stroke-width:1px}.ref{stroke:var(--muted);stroke-width:1px}.ln{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.mk{stroke:var(--panel-solid);stroke-width:2px}.mk.s1{fill:var(--s1)}.mk.s2{fill:var(--s2)}.mk.s5{fill:var(--s5)}.band.s5{fill:var(--s5);fill-opacity:.12;stroke:none}.xhair{stroke:var(--muted);stroke-width:1px}.sub-title{color:var(--muted);margin:6px 0 2px;font-size:12px}.tip{background:var(--panel-solid);border:1px solid var(--line);width:170px;color:var(--muted);pointer-events:none;border-radius:8px;padding:8px 10px;font-size:12px;position:absolute;top:4px;box-shadow:0 6px 18px #00000040}.tip b{color:var(--text)}.tip>div{margin-top:2px}.tip .hint{color:var(--faint);font-style:italic}#time{left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:4;width:min(620px,100% - 32px);padding:10px 16px 12px;position:fixed;transform:translate(-50%)}.t-top{align-items:center;gap:12px;display:flex}.play{border:1px solid var(--line);background:var(--panel-solid);cursor:pointer;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;display:grid}.play:hover{background:var(--hover)}.t-mid{flex:1;min-width:0}.t-now{justify-content:space-between;gap:8px;font-size:14px;font-weight:600;display:flex}.t-now span{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:400;overflow:hidden}input[type=range]{width:100%;accent-color:var(--accent);margin:6px 0 0}.t-meta{color:var(--faint);justify-content:space-between;margin-top:2px;font-size:12px;display:flex}#legend{left:64px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:3;width:250px;padding:10px 14px;font-size:12px;position:fixed}#legend .lg{color:var(--muted);margin:4px 0 8px}#legend .lg:last-child{margin-bottom:0}#legend .key{border:1.5px solid var(--landfall);vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:4px;display:inline-block}.zoom{left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:3;flex-direction:column;display:flex;position:fixed}.zoom button{background:var(--panel);border:1px solid var(--line);cursor:pointer;width:36px;height:36px;font-size:18px}.zoom button:first-child{border-radius:8px 8px 0 0}.zoom button:last-child{border-top:0;border-radius:0 0 8px 8px}.src{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));color:var(--faint);z-index:3;text-align:right;max-width:300px;font-size:11px;position:fixed}#pop{z-index:6;width:270px;padding:12px 14px;position:fixed}#pop h4{margin:0 0 2px;font-size:15px}#pop .rg{color:var(--muted);margin-bottom:8px;font-size:12px}#pop .x{position:absolute;top:6px;right:6px}.collapsed .pbody,.show-left,.show-right{display:none}.bar .show-left.on,.bar .show-right.on{display:inline-block}@media (width<=1100px){#legend,.src{display:none}}@media (width<=860px){.bar{gap:8px}.brand small,.bar .chip:not(.state),.bar .btn.wide{display:none}.show-left,.show-right{display:inline-block}#left{width:calc(100% - 32px);max-height:50%}#right{top:auto;bottom:calc(132px + env(safe-area-inset-bottom,0px));width:auto;max-height:38%;left:16px;right:16px}#left.collapsed,#right.collapsed,.zoom{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.arm.off{opacity:.55;cursor:not-allowed}.arm.off .t-s{opacity:.8}.seg button.off{opacity:.55;cursor:not-allowed}.cue{cursor:help;border-bottom:1px dotted}
