:root{--ocean:#0A1829;--land:#15283E;--border:#2B4664;--ink:#E7EFF8;--muted:#8FA7C0;--panel:rgba(10,24,41,.84);--line:rgba(143,167,192,.22);--hot:#FFB547;--cool:#3E6BD6;--font:"Avenir Next","Segoe UI Variable Text","Segoe UI","Helvetica Neue",Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;background:#01040a;color:var(--ink);font-family:var(--font);overflow:hidden}#hud{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}#loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;display:grid;place-items:center;color:var(--muted);font-size:14px;pointer-events:none;transition:opacity .6s,visibility .6s}body.ready #loading{opacity:0;visibility:hidden}#map{z-index:0}#hud{z-index:1}.panel{z-index:4}#tip{z-index:6}.sample[hidden],.freshness[hidden],body[data-live="1"] .sample{display:none!important}#legend label{display:flex;align-items:center;gap:8px;margin-top:8px;cursor:pointer}#map{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;cursor:grab;touch-action:none;display:block;transform:translateZ(0);will-change:transform}#map:active{cursor:grabbing}.panel{position:fixed;background:var(--panel);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--line)}button,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--hot);outline-offset:2px}#brand{top:18px;left:18px;padding:14px 18px;border-radius:14px;width:300px}#brand h1{margin:0;font-size:26px;line-height:1.1;font-weight:600;letter-spacing:-.01em}#brand p{margin:6px 0 0;font-size:13px;color:var(--muted);line-height:1.45}.sample{display:inline-block;margin-top:10px;padding:3px 9px;border-radius:999px;font-size:12px;color:#1a1204;background:var(--hot);font-weight:600}#board{top:180px;left:18px;width:300px;border-radius:14px;padding:14px 0 8px;max-height:calc(100vh - 290px);display:flex;flex-direction:column}.tiers{flex:none;display:flex;gap:0;margin:0 14px 6px;border:1px solid var(--line);border-radius:999px;overflow:hidden}.tier{flex:1;text-align:center;font-size:12px;padding:6px 0;color:var(--muted);transition:background .25s,color .25s;cursor:pointer;-webkit-user-select:none;user-select:none}.tier.on{background:#ffb54729;color:var(--ink);font-weight:600}#hint{flex:none;margin:4px 16px 10px;font-size:12px;color:var(--muted)}#boardTitle{flex:none;margin:0 16px 6px;font-size:15px;font-weight:600}#list{list-style:none;margin:0;padding:0 6px;overflow:auto}#list li{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:8px;padding:7px 10px;border-radius:8px;cursor:pointer;font-size:13.5px}#list li:hover,#list li:focus-visible{background:#8fa7c01f}#list .rk{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}#list .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#list .nm small{display:block;color:var(--muted);font-size:11.5px}#list .vl{font-variant-numeric:tabular-nums;font-weight:600}#list .bar{grid-column:2/4;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--cool),var(--hot));margin-top:-3px;opacity:.8}#searchWrap{top:18px;right:18px;border-radius:999px;padding:4px 6px 4px 16px;display:flex;align-items:center;gap:6px;width:300px}#search{flex:1;background:none;border:0;padding:8px 0;font-size:14px;outline:none}#search::placeholder{color:var(--muted)}#zoomBtns{right:18px;top:74px;border-radius:12px;display:flex;flex-direction:column;overflow:hidden}#zoomBtns button{background:none;border:0;width:40px;height:40px;font-size:20px;cursor:pointer}#zoomBtns button+button{border-top:1px solid var(--line)}#zoomBtns button:hover{background:#8fa7c01f}#detail{right:18px;top:206px;width:300px;border-radius:14px;padding:16px 18px}#detail[hidden]{display:none}#detail h2{margin:0;font-size:20px;font-weight:600;line-height:1.2;padding-right:28px}#detail .kind{color:var(--muted);font-size:12.5px;margin-top:3px}#detail .big{font-size:34px;font-weight:600;margin:14px 0 2px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}#detail .big span{font-size:15px;color:var(--muted);font-weight:500;margin-left:4px}#detail .sub{font-size:13px;color:var(--muted)}#detail svg{display:block;margin:14px 0 6px;width:100%;height:70px}#detail dl{display:grid;grid-template-columns:1fr auto;gap:5px 10px;margin:10px 0 14px;font-size:13px}#detail dt{color:var(--muted)}#detail dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}#close{position:absolute;right:10px;top:10px;background:none;border:0;font-size:20px;cursor:pointer;color:var(--muted);width:30px;height:30px;border-radius:50%}#close:hover{background:#8fa7c01f;color:var(--ink)}.ghost{background:none;border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:13px;cursor:pointer}.ghost:hover{border-color:var(--muted)}#timebar{left:50%;transform:translate(-50%);bottom:18px;border-radius:999px;padding:8px 10px 8px 8px;display:flex;align-items:center;gap:12px;width:min(640px,calc(100vw - 36px))}#play{width:38px;height:38px;border-radius:50%;border:0;background:var(--hot);color:#1a1204;cursor:pointer;font-size:14px;flex:none}#slider{flex:1;accent-color:var(--hot)}#clock{font-variant-numeric:tabular-nums;font-size:13.5px;min-width:112px;text-align:right}#live{border:1px solid var(--line);background:none;border-radius:999px;padding:6px 12px;font-size:12.5px;cursor:pointer;display:flex;align-items:center;gap:6px;flex:none}#live .dot{width:7px;height:7px;border-radius:50%;background:var(--muted)}#live.on .dot{background:#ff5c5c;box-shadow:0 0 #ff5c5c99;animation:beat 1.6s infinite}@keyframes beat{70%{box-shadow:0 0 0 7px #ff5c5c00}to{box-shadow:0 0 #ff5c5c00}}#legend{right:18px;bottom:18px;border-radius:12px;padding:10px 14px;font-size:12px;width:200px}#legend .ramp{height:8px;border-radius:4px;margin:6px 0 4px;background:linear-gradient(90deg,#1e3a78,#5a3fa2,#c3408d,#f07a3f,#ffd66b,#fff7da)}#legend .ends{display:flex;justify-content:space-between;color:var(--muted)}#legend .night{display:flex;align-items:center;gap:7px;margin-top:8px;color:var(--muted)}#legend .night i{width:14px;height:10px;border-radius:2px;background:#00040c99;border:1px solid var(--line)}#metrics{top:18px;left:50%;transform:translate(-50%);border-radius:999px;padding:4px;display:flex;gap:2px}#metrics button{background:none;border:0;border-radius:999px;padding:8px 14px;font-size:13px;color:var(--muted);cursor:pointer;white-space:nowrap}#metrics button:hover{color:var(--ink)}#metrics button[aria-pressed=true]{background:var(--hot);color:#1a1204;font-weight:600}#detail .cap{font-size:12px;color:var(--muted);margin-top:12px}#detail dl .sep{grid-column:1/3;height:1px;background:var(--line);margin:4px 0}#tip{position:fixed;pointer-events:none;background:#f4f8fc;color:#0a1829;padding:8px 11px;border-radius:9px;font-size:13px;box-shadow:0 8px 24px #00000059;display:none;max-width:240px;line-height:1.35}#tip b{display:block;font-size:13.5px}#tip span{color:#4a6280}@media(max-width:1180px)and (min-width:761px){#metrics{top:74px;left:auto;right:76px;transform:none}#detail{top:130px}}@media(max-width:760px){#brand{width:auto;right:18px;padding:10px 14px}#brand h1{font-size:20px}#brand p{display:none}.sample{margin-top:6px}#searchWrap{top:auto;bottom:80px;left:18px;right:18px;width:auto}#zoomBtns{top:auto;bottom:140px}#board{top:auto;bottom:140px;left:18px;width:calc(100vw - 96px);max-height:26vh;padding-top:10px}#legend{display:none}#metrics{top:88px;left:18px;right:18px;transform:none;flex-wrap:wrap;justify-content:center;row-gap:4px;max-height:none;overflow:visible}#detail{left:18px;right:18px;width:auto;top:auto;bottom:80px;max-height:55vh;overflow:auto;z-index:5}#clock{min-width:0;font-size:12px}}@media(prefers-reduced-motion:reduce){#live.on .dot{animation:none}.tier{transition:none}}.freshness{display:inline-block;margin-top:10px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:600}.freshness.live{color:#1a1204;background:var(--hot)}.freshness.delayed{color:var(--ink);background:#8fa7c033}.estimated{display:inline-block;font-size:11px;padding:1px 7px;border-radius:999px;border:1px solid var(--line);color:var(--muted);margin-left:6px;vertical-align:middle}#metrics button:disabled{opacity:.45;cursor:not-allowed}#legend .sources{margin-top:10px;font-size:12px;color:var(--muted)}#legend .sources a{color:inherit;text-decoration:underline;text-underline-offset:2px}#legend .sources a:hover{color:var(--ink)}
