:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0f14;--panel:#121820;--line:#1f2a36;--text:#e6edf3;--muted:#8b98a8;--green:#3ad07a;--amber:#f2b633;--red:#ef5a5a;font-family:Geist,ui-sans-serif,-apple-system,Segoe UI,Inter,Roboto,sans-serif;font-size:15px}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}code{color:var(--muted);font-family:Geist Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.app{max-width:1240px;margin:0 auto;padding:28px 24px 40px}header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px 24px;margin-bottom:18px;display:flex}header>div{flex:520px}h1{letter-spacing:-.01em;margin:0 0 4px;font-size:30px}.tagline{color:var(--muted);max-width:720px;margin:0;line-height:1.4}.tagline b{color:var(--text)}.mode{white-space:nowrap;border:1px solid var(--line);color:var(--muted);border-radius:999px;flex:none;padding:8px 12px;font-size:13px}.mode.live{color:var(--green);border-color:#3ad07a80}.mode .dot{background:var(--green);border-radius:50%;width:8px;height:8px;margin-right:6px;animation:1.2s infinite pulse;display:inline-block}@keyframes pulse{50%{opacity:.3}}.stage{grid-template-columns:1fr 320px;gap:18px;margin-bottom:18px;display:grid}@media (width<=900px){.stage{grid-template-columns:1fr}}.chart-wrap{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:12px 12px 8px}.curve{width:100%;height:auto;display:block}.curve .axis{fill:var(--muted);font-size:12px}.curve .axis.danger{fill:var(--red)}.curve .cursor{transition:transform .9s cubic-bezier(.2,.7,.2,1)}.curve .cursor-label{fill:#fff;font-size:13px;font-weight:600}.curve .band-label{paint-order:stroke;stroke:#0b0f14;stroke-width:4px;font-size:12px;font-weight:600}.caption-row{align-items:center;gap:12px;padding:8px 6px 4px;display:flex}.caption{color:var(--text);align-items:center;min-height:34px;font-size:14px;display:flex}.vessel{flex:0 0 64px;width:64px;height:64px;position:relative}.vessel img{opacity:0;transition:opacity .6s;position:absolute;inset:0}.vessel img.on{opacity:1}aside{flex-direction:column;gap:18px;display:flex}.badge{border:1px solid var(--line);background:var(--panel);border-radius:12px;align-items:center;gap:14px;padding:16px;transition:box-shadow .6s,border-color .6s;display:flex}.badge-hf{font-variant-numeric:tabular-nums;font-size:44px;font-weight:700;line-height:1}.badge-word{text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:600}.badge-sub{color:var(--muted);font-size:12px}.badge.green{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green), 0 0 24px #3ad07a26}.badge.green .badge-hf,.badge.green .badge-word{color:var(--green)}.badge.amber{border-color:var(--amber);box-shadow:inset 0 0 0 1px var(--amber), 0 0 24px #f2b63326}.badge.amber .badge-hf,.badge.amber .badge-word{color:var(--amber)}.badge.red{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red), 0 0 24px #ef5a5a33}.badge.red .badge-hf,.badge.red .badge-word{color:var(--red)}.spread{background:var(--panel);border:1px solid var(--line);border-radius:12px;flex:1;padding:16px}.spread-usd{font-variant-numeric:tabular-nums;color:var(--green);font-size:34px;font-weight:700}.spread-sub{color:var(--muted);margin-bottom:10px;font-size:12px}.fills{font-variant-numeric:tabular-nums;margin:0;padding:0;font-size:12.5px;list-style:none}.fill{border-top:1px solid var(--line);grid-template-columns:auto auto auto 1fr;align-items:baseline;gap:6px;padding:5px 0;display:grid}.fill.new{animation:1.2s flash}@keyframes flash{0%{background:#3ad07a2e}}.fill.none{color:var(--muted);display:block}.fill-arrow{color:var(--muted)}.fill-spread{color:var(--green);text-align:right}.fill-shift{color:var(--muted);grid-column:1/-1;font-size:11px}.bars{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px}.bar-row{grid-template-columns:64px 1fr 300px;align-items:center;gap:14px;padding:8px 0;display:grid}.bar-sym{font-weight:700}.bar-track{background:#0e131a;border-radius:6px;height:22px;position:relative;overflow:hidden}.bar-ghost{opacity:.55;border:1px dashed;border-radius:6px;transition:width .9s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0 auto 0 0}.bar-solid{opacity:.9;border-radius:4px;transition:width .6s cubic-bezier(.2,.7,.2,1);position:absolute;top:4px;bottom:4px;left:0}.bar-target-tick{background:#fff;width:2px;transition:left .9s cubic-bezier(.2,.7,.2,1);position:absolute;top:0;bottom:0}.bar-nums{font-variant-numeric:tabular-nums;align-items:baseline;gap:10px;font-size:13px;display:flex}.bar-actual{min-width:58px;font-weight:700}.bar-vs{color:var(--muted)}.bar-gap.ok{color:var(--green)}.bar-gap.over{color:var(--amber)}.bar-gap.under{color:#6ea8fe}.bars-foot{color:var(--muted);padding-top:6px;font-size:12px}.controls{align-items:center;gap:10px;margin-top:14px;display:flex}.controls button{background:var(--panel);color:var(--text);border:1px solid var(--line);cursor:pointer;border-radius:8px;padding:6px 12px}.controls input[type=range]{flex:1}.controls-pos{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.waiting,.error{color:var(--muted);padding:24px}footer{color:var(--muted);margin-top:22px;font-size:12.5px;line-height:1.5}h2{margin:0 0 6px;font-size:20px}.lede{color:var(--muted);max-width:900px;margin:0 0 14px;line-height:1.5}.source{color:var(--muted);margin:10px 0 0;font-size:12.5px;line-height:1.5}a{color:#9cc4ff}.table-wrap,.questions{background:var(--panel);border:1px solid var(--line);border-radius:12px;margin-top:18px;padding:18px}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}th{text-align:right;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 10px;font-weight:600}th:first-child{text-align:left}td{border-bottom:1px solid var(--line);text-align:right;white-space:nowrap;padding:7px 10px}td:first-child{text-align:left;white-space:normal}tr.indent td:first-child{color:var(--muted);padding-left:28px}td.pos{color:var(--green);font-weight:600}td.neg{color:var(--red);font-weight:600}.questions dl{margin:0}.qa{border-top:1px solid var(--line)}.qa dt button{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;padding:12px 0;font-weight:600}.qa dt button:before{content:"+";width:18px;color:var(--muted);display:inline-block}.qa.open dt button:before{content:"−"}.qa dd{color:var(--text);max-width:900px;margin:0 0 12px 18px;line-height:1.5}.qa dd p{margin:0 0 6px}.qa .test{color:var(--muted);font-size:12px}
