:root{--surface:#fcfcfb;--surface-2:#f2f1ed;--ink:#0b0b0b;--ink-2:#52514e;--muted:#6f6e69;--line:#e1e0d9;--accent:#2a78d6;--s0:#2a78d6;--s1:#eb6834;--warn-bg:#fdf0e8;--warn-ink:#8a3a12;--focus:#2a78d6;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--surface:#1a1a19;--surface-2:#232321;--ink:#f0efec;--ink-2:#c3c2b7;--muted:#9c9b94;--line:#383835;--accent:#3987e5;--s0:#3987e5;--s1:#d95926;--warn-bg:#3a2417;--warn-ink:#f6c7a8;--focus:#6fa8ee}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--surface);color:var(--ink);font-size:14px;line-height:1.45}a{color:var(--accent)}button,select,input{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--surface-2);color:var(--ink);border-radius:6px;padding:4px 10px}button:disabled{opacity:.5;cursor:default}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.muted{color:var(--muted)}.small{font-size:12px}.error{color:var(--warn-ink)}.num{text-align:right;font-variant-numeric:tabular-nums}.app{grid-template-rows:auto auto 1fr auto;height:100%;display:grid}.topbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:8px 24px;padding:10px 16px;display:flex}.topbar h1{margin:0;font-size:18px}.subtitle{color:var(--muted);font-size:13px;font-weight:400}.topbar nav{flex-wrap:wrap;gap:4px 14px;display:flex}.topbar nav a{color:var(--ink-2);border-bottom:2px solid #0000;padding:2px 0;text-decoration:none}.topbar nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--accent)}.banner{background:var(--surface-2);border-bottom:1px solid var(--line);padding:6px 16px}.banner.warn{background:var(--warn-bg);color:var(--warn-ink)}.layout{grid-template-columns:1fr minmax(340px,440px);min-height:0;display:grid}.globe-area{min-height:0;position:relative}.globe,.globe-canvas{position:absolute;inset:0}.globe-loading,.globe-status{background:var(--surface);border-radius:6px;padding:4px 10px;position:absolute;top:12px;left:12px}.panel{border-left:1px solid var(--line);padding:12px 16px 24px;overflow-y:auto}.view h2{margin:4px 0 6px;font-size:17px}.view h3{margin:16px 0 6px;font-size:15px}.view h4{margin:14px 0 4px;font-size:13px}.prose p,.prose li{max-width:60ch}.controls{flex-wrap:wrap;align-items:center;gap:8px 14px;margin:8px 0 12px;display:flex}.controls.stack{flex-direction:column;align-items:stretch}.controls.stack label{flex-direction:column;gap:2px;display:flex}.table{border-collapse:collapse;width:100%}.table th{text-align:left;color:var(--ink-2);border-bottom:1px solid var(--line);padding:4px 6px;font-size:12px;font-weight:600}.table td{border-bottom:1px solid var(--line);vertical-align:top;padding:6px}.table tr.active td{background:var(--surface-2)}.table.compact td{padding:3px 6px}.row-button{text-align:left;color:var(--accent);background:0 0;border:0;padding:0}.row-button:hover{text-decoration:underline}.pager{justify-content:space-between;align-items:center;margin:8px 0;display:flex}.results{margin:6px 0;padding:0;list-style:none}.results li{padding:3px 0}.risk{font-variant-numeric:tabular-nums;align-items:center;gap:6px;display:inline-flex}.risk .bar{background:var(--line);border-radius:3px;width:48px;height:6px;display:inline-block;overflow:hidden}.risk .bar span{background:var(--muted);border-radius:3px;height:100%;display:block}.risk.elevated .bar span{background:var(--s1)}.tag{border:1px solid var(--s1);color:var(--ink);border-radius:4px;padding:0 4px;font-size:11px}.tag.provisional{border-style:dashed;border-color:var(--muted);color:var(--ink-2)}.th-note{font-weight:400}.detail{border-top:1px solid var(--line);margin-top:14px;padding-top:10px}.facts{grid-template-columns:max-content 1fr;gap:4px 12px;margin:6px 0;display:grid}.facts dt{color:var(--muted)}.facts dd{margin:0}.fact-pair{display:contents}.note{background:var(--surface-2);border-radius:6px;padding:8px 10px}.reasons{padding-left:18px}.label-strong{font-weight:600}.limits{margin:6px 0 10px}.limits summary{cursor:pointer;color:var(--ink-2)}.chart{width:100%;height:auto}.chart .grid{stroke:var(--line);stroke-width:1px}.chart .tick{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:10px}.chart .series{fill:none;stroke-width:2px;stroke-linejoin:round}.chart .series.s0{stroke:var(--s0)}.chart .series.s1{stroke:var(--s1)}.chart .crosshair{stroke:var(--muted);stroke-dasharray:3 3}.chart-legend{color:var(--ink-2);flex-wrap:wrap;gap:4px 16px;font-size:12px;display:flex}.chart-legend .line{vertical-align:middle;width:18px;height:2px;margin-right:4px;display:inline-block}.chart-legend .line.s0{background:var(--s0)}.chart-legend .line.s1{background:var(--s1)}.readout{color:var(--ink-2);min-height:1.5em;font-size:12px}.timebar,.legend{color:#eceae4;-webkit-backdrop-filter:blur(8px);background:#0a0e16b8;border:1px solid #ffffff14;box-shadow:0 6px 24px #00000059}.timebar .muted,.legend .muted{color:#a9a69d}.timebar select,.legend select,.timebar button{color:#f3f1ec;background:#ffffff0f;border:1px solid #ffffff24;border-radius:6px}.timebar option,.legend option{color:#0b0b0b}.timebar{--past:#6fb2ff99;--future:#ffc44dd9;--future-rough:#ffc44d47;--thumb:#3fd99a;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:8px 12px;display:flex;position:absolute;bottom:30px;left:12px;right:12px}.timebar[data-mode=forecast]{--thumb:#ffc44d}.timebar[data-mode=stale]{--thumb:#ff6352}.timebar .track{flex:1;align-items:center;min-width:140px;display:flex;position:relative}.timebar .track input[type=range]{--bg:linear-gradient(to right, var(--past) 0, var(--past) calc(var(--now) * 100%), var(--future) calc(var(--now) * 100%), var(--future) calc(var(--rough) * 100%), var(--future-rough) calc(var(--rough) * 100%), var(--future-rough) 100%);appearance:none;cursor:pointer;touch-action:none;background:0 0;width:100%;height:22px;margin:0}.timebar .track input[type=range]::-webkit-slider-runnable-track{background:var(--bg);border-radius:3px;height:6px}.timebar .track input[type=range]::-moz-range-track{background:var(--bg);border-radius:3px;height:6px}.timebar .track input[type=range]::-webkit-slider-thumb{appearance:none;border:3px solid var(--thumb);width:16px;height:16px;box-shadow:0 0 10px var(--thumb);background:#fff;border-radius:50%;margin-top:-5px}.timebar .track input[type=range]::-moz-range-thumb{border:3px solid var(--thumb);width:10px;height:10px;box-shadow:0 0 10px var(--thumb);background:#fff;border-radius:50%}.timebar .track input[type=range]:focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #9fd0ff}.timebar .now-mark{top:2px;bottom:2px;left:calc(8px + (100% - 16px) * var(--now));pointer-events:none;background:#3fd99a;width:2px;margin-left:-1px;position:absolute;box-shadow:0 0 6px #3fd99a}.timebar .now-mark span{letter-spacing:.05em;color:#9df0c8;font-size:10px;font-weight:700;position:absolute;top:-13px;left:50%;transform:translate(-50%)}.timebar .key{vertical-align:middle;border-radius:2px;width:14px;height:4px;display:inline-block}.timebar .key.past{background:var(--past)}.timebar .key.future{background:var(--future)}.timebar .rough-note{color:#ffd98a;flex-basis:100%}.timebar .time{font-variant-numeric:tabular-nums}.timebar .data-age{flex-basis:100%}.timebar .back-live{color:#c8f7e3;border-color:#3fd99a}.mode-badge{letter-spacing:.06em;white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-flex}.mode-badge.live{color:#9df0c8;background:#3fd99a29;border:1px solid #3fd99a8c}.mode-badge.live .dot{background:#3fd99a;border-radius:50%;width:7px;height:7px;animation:2s ease-in-out infinite live-pulse;box-shadow:0 0 8px #3fd99a}.mode-badge.forecast{color:#ffd98a;background:#ffc44d24;border:1px solid #ffc44d8c}.mode-badge.stale{color:#ffb3a8;background:#ff635229;border:1px solid #ff635299}@keyframes live-pulse{50%{opacity:.35}}.legend{max-width:250px;max-height:calc(100% - var(--timebar-h,110px) - 54px);border-radius:10px;padding:10px 12px;position:absolute;top:12px;left:12px;overflow:hidden auto}.legend ul{margin:6px 0;padding:0;list-style:none}.legend .swatch{border-radius:50%;width:10px;height:10px;margin:0 6px 0 4px;display:inline-block;box-shadow:0 0 6px}.legend .ramp{color:#fff;background:linear-gradient(90deg,#c8e8ff,#4068d6);border-radius:3px;justify-content:space-between;height:14px;margin:6px 0;padding:0 4px;font-size:11px;display:flex}.legend .ramp span:first-child{color:#0b0b0b}.alt-filter{margin-top:6px;display:block}.fullscreen-button{right:12px;bottom:calc(var(--timebar-h,80px) + 42px);color:#f3f1ec;cursor:pointer;-webkit-backdrop-filter:blur(8px);background:#0a0e16b8;border:1px solid #ffffff24;border-radius:8px;place-items:center;width:38px;height:38px;padding:0;display:grid;position:absolute;box-shadow:0 6px 24px #00000059}.fullscreen-button:hover{background:#1e283ad9}.fullscreen-button:focus-visible{outline-offset:2px;outline:2px solid #9fd0ff}.globe:fullscreen{background:#000}.sim-label{background:var(--warn-bg);color:var(--warn-ink);border-radius:6px;padding:6px 10px;font-weight:600;position:absolute;top:12px;right:12px}.footer{border-top:1px solid var(--line);color:var(--ink-2);flex-wrap:wrap;gap:4px 16px;padding:6px 16px;font-size:12px;display:flex}.cesium-viewer-bottom{opacity:.75;font-size:10px;bottom:4px!important;left:12px!important;right:auto!important}.cesium-credit-logoContainer{display:none!important}.cesium-credit-textContainer,.cesium-credit-expand-link{color:#c9c6bd;font-size:10px}@media (width<=700px){.layout{grid-template-rows:55vh auto;grid-template-columns:1fr}.panel{border-left:0;border-top:1px solid var(--line)}.legend{max-width:180px;font-size:12px}}@media (prefers-reduced-motion:reduce){.mode-badge.live .dot{animation:none}*{transition:none!important;animation:none!important}}
