/* Live analytics page. Tokens and shared components from base.css; page classes prefixed live-. */
.live-head{padding-bottom:var(--s5)}
.live-head h1{max-width:22ch;font-size:var(--fs-2xl);line-height:var(--lh-tight)}
.live-head .lede{margin-bottom:var(--s5)}

/* status bar */
.live-status{margin:0}
.live-status-body{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s4);color:var(--text)}
.live-date{color:var(--text-strong);font-variant-numeric:tabular-nums}
.live-state{display:inline-flex;align-items:center;gap:.6em;padding:.4em .65em;border:1px solid var(--hairline-strong);border-radius:var(--radius-ctl);
  font:500 var(--fs-xs)/1 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-strong)}
.live-state::before{content:"";flex:none;width:6px;height:6px;background:var(--text-strong)}
.live-state[hidden]{display:none}
.live-state[data-state="CLOSED"]{color:var(--text-dim)}
.live-state[data-state="CLOSED"]::before{background:var(--gray-500)}
.live-state[data-state="STALE"]{color:var(--yellow);border-color:var(--yellow)}
.live-state[data-state="STALE"]::before{background:var(--yellow)}
.live-msg{color:var(--text-dim)}
.live-status .badge-sample{background:transparent}
.live-status .terminal-bar > :first-child{flex:1}

/* dashboard grid */
.live-dash{padding-bottom:var(--s7)}
.live-grid{display:grid;gap:var(--s4);align-items:stretch}
@media(min-width:900px){
  .live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .live-wide{grid-column:1/-1}
}
.live-block{display:flex;flex-direction:column;min-width:0;padding:var(--s5)}
.live-kicker{display:flex;align-items:center;gap:var(--s3);margin:0 0 var(--s4);font:500 var(--fs-xs)/1.3 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.live-idx{color:var(--text-strong);font-variant-numeric:tabular-nums}
.live-body{flex:1;min-width:0}
.live-empty{padding:var(--s5)}
.live-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.live-sub{margin:0;font:400 var(--fs-xs)/1.4 var(--font-mono);color:var(--text-dim)}

/* zones */
.live-zones{display:grid;gap:var(--s3)}
@media(min-width:640px){.live-zones{grid-template-columns:repeat(2,minmax(0,1fr))}}
.live-zone{position:relative;margin:0;padding:var(--s4) var(--s4) var(--s4) var(--s5);background:var(--bg);border:1px solid var(--hairline);border-radius:var(--radius-card);overflow:hidden}
.live-zone::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--zone)}
.live-zone-res{--zone:var(--red)}
.live-zone-sup{--zone:var(--green)}
.live-zone dt{margin:0 0 var(--s2);font:500 var(--fs-xs)/1.3 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.live-zone dd{margin:0}
.live-range{font:500 clamp(1.5rem,1.2rem + 1.4vw,2.25rem)/1.1 var(--font-mono);letter-spacing:-.03em;color:var(--text-strong);font-variant-numeric:tabular-nums}
.live-legend{display:flex;flex-wrap:wrap;gap:var(--s1) var(--s4);margin:var(--s2) 0 0;font:500 var(--fs-xs)/1.3 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.live-legend span{display:inline-flex;align-items:center;gap:.6em}
.live-legend .live-key-res::before,.live-legend .live-key-sup::before{content:"";width:8px;height:8px;border:1px solid}
.live-legend .live-key-res{color:var(--red)} .live-legend .live-key-sup{color:var(--green)}
.live-strip{display:block;width:100%;height:auto;margin-top:var(--s4);overflow:visible}
.live-strip-axis{stroke:var(--hairline-strong);stroke-width:1}
.live-band{stroke-width:1}
.live-band-res{fill:rgba(255,90,95,.14);stroke:var(--red)}
.live-band-sup{fill:rgba(61,214,140,.12);stroke:var(--green)}
@media(prefers-reduced-motion:no-preference){
  .live-band{transform-box:fill-box;transform-origin:left center;animation:live-draw 700ms var(--ease) 1 both}
  @keyframes live-draw{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}
}

/* option-interest walls: leaderboard style */
.live-table{width:100%;border-collapse:collapse}
.live-table th,.live-table td{padding:var(--s3) var(--s2);border-bottom:1px solid var(--hairline);vertical-align:middle}
.live-table tr:last-child td{border-bottom:0}
.live-table th:first-child,.live-table td:first-child{padding-left:0;width:1.75rem;color:var(--text-dim)}
.live-table th:last-child,.live-table td:last-child{padding-right:0}
.live-table .r{text-align:right}
.live-table tbody tr{height:48px}
.live-table tbody tr:hover{background:var(--surface-2)}
.live-table td.live-num{color:var(--text-strong);font-weight:500}
.live-table .live-what{color:var(--text)}

/* regime */
.live-regime{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s4) var(--s5)}
.live-regime-label{margin:0;font:600 clamp(1.5rem,1.2rem + 1.4vw,2.25rem)/1.1 var(--font-sans);letter-spacing:-.04em;color:var(--text-strong)}
.live-meter{display:inline-flex;gap:var(--s2);align-items:center}
.live-meter i{display:block;width:16px;height:16px;border:1px solid var(--hairline-strong);background:transparent}
.live-meter i.on{background:var(--text-strong);border-color:var(--text-strong)}
.live-meter-cap{margin:var(--s2) 0 0}

/* context */
.live-ctx{list-style:none;margin:0;padding:0;display:grid;gap:var(--s3);grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:900px){.live-ctx{grid-template-columns:repeat(4,minmax(0,1fr))}}
.live-ctx li{margin:0;padding:var(--s4);background:var(--bg);border:1px solid var(--hairline);border-radius:var(--radius-card)}
.live-ctx .k{display:block;margin:0 0 var(--s2);font:500 var(--fs-xs)/1.3 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.live-ctx .v{display:block;font:500 clamp(1.25rem,1.1rem + .8vw,1.625rem)/1.2 var(--font-mono);letter-spacing:-.02em;color:var(--text-strong);font-variant-numeric:tabular-nums}
.live-ctx .s{display:block;margin-top:var(--s1);font:400 var(--fs-xs)/1.4 var(--font-mono);color:var(--text-dim)}
.live-events{list-style:none;margin:var(--s4) 0 0;padding:0;border-top:1px solid var(--hairline)}
.live-events li{display:grid;grid-template-columns:5.5rem 1fr;gap:var(--s3);margin:0;padding:var(--s3) 0;border-bottom:1px solid var(--hairline);font-size:var(--fs-sm);color:var(--text)}
.live-events li > :first-child{font:500 var(--fs-xs)/1.7 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}

/* 4 PM check */
.live-check{list-style:none;margin:0;padding:0}
.live-check li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s2) var(--s4);margin:0;padding:var(--s3) 0;border-bottom:1px solid var(--hairline)}
.live-check li:first-child{padding-top:0}
.live-check .z{display:flex;flex-direction:column;gap:2px}
.live-check .z b{font:500 var(--fs-xs)/1.3 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.live-check .z span{font:500 var(--fs-lg)/1.2 var(--font-mono);color:var(--text-strong);font-variant-numeric:tabular-nums}
.live-close{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s3);margin:var(--s4) 0 0}
.live-close div{display:flex;flex-direction:column-reverse;gap:2px}
.live-close dt{font:500 .6875rem/1.3 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.live-close dd{margin:0;font:500 var(--fs-md)/1.2 var(--font-mono);color:var(--text-strong);font-variant-numeric:tabular-nums}

/* track record */
.live-rate{margin:0 0 var(--s1);font:500 clamp(2.25rem,1.8rem + 2vw,3rem)/1 var(--font-mono);letter-spacing:-.04em;color:var(--text-strong);font-variant-numeric:tabular-nums}
.live-rate small{font:400 var(--fs-sm)/1 var(--font-mono);letter-spacing:0;color:var(--text-dim);margin-left:.4em}
.live-counts{display:grid;grid-template-columns:repeat(3,1fr);margin:var(--s4) 0;border:1px solid var(--hairline);border-radius:var(--radius-ctl)}
.live-counts div{display:flex;flex-direction:column-reverse;gap:2px;padding:var(--s3)}
.live-counts div + div{border-left:1px solid var(--hairline)}
.live-counts dt{font:500 .6875rem/1.3 var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim)}
.live-counts dd{margin:0;font:500 var(--fs-lg)/1 var(--font-mono);font-variant-numeric:tabular-nums}
.live-more{margin:var(--s3) 0 0;padding-top:var(--s3)}
.live-block .live-more:first-child{margin-top:0;padding-top:0}

.live-foot{padding:0 0 var(--s9)}
.live-note{margin:0 0 var(--s2);font-size:var(--fs-sm);color:var(--text-dim)}

/* ---------- v4: sub-nav, straddle, GEX, FII/DII mini ---------- */
.subnav{border-block:1px solid var(--hairline);background:var(--surface)}
.subnav-row{display:flex;gap:var(--s5);overflow-x:auto;padding-block:var(--s2)}
.subnav a{flex:none;display:inline-flex;align-items:center;min-height:40px;font:500 var(--fs-xs)/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--text-dim)}
.subnav a:hover{color:var(--amber)}
.live-fd{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s5);margin-top:var(--s4);padding-top:var(--s4);border-top:1px solid var(--hairline)}
.live-fd[hidden]{display:none}
.fd-pair{display:inline-flex;align-items:baseline;gap:var(--s2)}
.fd-k{font:500 var(--fs-xs)/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}
.fd-v{font:500 var(--fs-md)/1 var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-strong)}
.fd-v.fd-up,.strip-list dd.fd-up{color:var(--green)} .fd-v.fd-down,.strip-list dd.fd-down{color:var(--red)}
.st-empty{margin-bottom:var(--s4)}
.st-empty[hidden]{display:none}
.st-empty strong{display:block}
.st-card{padding:var(--s4)}
.st-vals{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--s3) var(--s4);margin:0 0 var(--s4);padding-bottom:var(--s4);border-bottom:1px solid var(--hairline)}
.st-vals div{min-width:0}
.st-vals dt{font:500 .6875rem/1.3 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin-bottom:var(--s1)}
.st-vals dd{margin:0;font:500 1.125rem/1.2 var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-strong);overflow-wrap:anywhere}
.st-vals dd.is-res{color:var(--red)} .st-vals dd.is-sup{color:var(--green)}
.st-main dd:first-of-type{font-size:1.625rem;color:var(--amber)}
.st-legs{margin-top:var(--s1)!important;font:400 var(--fs-xs)/1.3 var(--font-mono)!important;color:var(--text-dim)!important}
.st-grid{display:grid;gap:var(--s4);align-items:start}
@media(min-width:1000px){.st-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}
.st-chartbox{margin:0;min-width:0}
.st-ctl{display:flex;flex-wrap:wrap;gap:var(--s3) var(--s5);margin-bottom:var(--s3)}
.st-fs{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);align-items:center}
.st-fs legend{float:left;margin-right:var(--s3);padding:0;font:500 .6875rem/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}
.st-chk{display:inline-flex;align-items:center;gap:var(--s2);margin:0;min-height:32px;font:400 var(--fs-sm)/1 var(--font-sans);color:var(--text);cursor:pointer}
.st-chk input{width:16px;height:16px;margin:0;accent-color:var(--amber);flex:none}
.st-stage{position:relative;background:var(--bg);border:1px solid var(--hairline);border-radius:var(--radius-ctl);overflow:hidden;min-width:0;min-height:280px}
.st-stage svg{display:block;width:100%;max-width:none;height:auto}
.st-badge{position:absolute;top:var(--s2);right:var(--s2);z-index:1;font-size:.625rem;padding:.3em .5em}
.st-badge[hidden]{display:none}
.st-cap{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);margin-top:var(--s3);font:400 var(--fs-xs)/1.4 var(--font-mono);color:var(--text-dim)}
.st-key::before{content:"";display:inline-block;width:14px;height:0;margin-right:var(--s2);vertical-align:middle;border-top:2px solid var(--text)}
.st-key-avg::before{border-top:2px dashed var(--text-dim)}
.st-key-shift::before{width:7px;height:7px;border:1.5px solid var(--amber);background:transparent}
.st-hline{stroke:var(--hairline);stroke-width:1}
.st-vgrid{stroke:var(--hairline);stroke-width:1;opacity:.6}
.st-axis{fill:var(--text-dim);font:400 10px/1 var(--font-mono)}
.st-axis-vix{fill:var(--amber)}
.st-tag{fill:var(--text-dim);font:500 10px/1 var(--font-mono);letter-spacing:.06em}
.st-l-price{fill:none;stroke:var(--text);stroke-width:1.75;stroke-linejoin:round}
.st-l-avg{stroke:var(--text-dim);stroke-width:1.25;stroke-dasharray:6 5}
.st-l-vwap{fill:none;stroke:var(--amber);stroke-width:1.5}
.st-l-spot{fill:none;stroke:var(--text-dim);stroke-width:1.25;stroke-dasharray:2 3}
.st-l-syn{fill:none;stroke:var(--text-dim);stroke-width:1.25;stroke-dasharray:7 3 2 3}
.st-l-vix{fill:none;stroke:var(--amber);stroke-width:1.25;stroke-dasharray:2 3}
.st-shift{stroke:var(--hairline-strong);stroke-width:1;stroke-dasharray:2 4}
.st-shift-dot{fill:var(--bg);stroke:var(--amber);stroke-width:1.5}
.st-last{fill:var(--amber)}
.st-c-up line,.st-c-up rect{stroke:var(--green);fill:var(--green)} .st-c-dn line,.st-c-dn rect{stroke:var(--red);fill:var(--red)}
.st-tablebox{min-width:0;border:1px solid var(--hairline);border-radius:var(--radius-card);background:var(--surface-2)}
.st-tablehead{display:flex;justify-content:space-between;align-items:center;gap:var(--s2);padding:var(--s3) var(--s4);border-bottom:1px solid var(--hairline)}
.st-tablewrap{overflow-x:auto}
.st-table{min-width:460px;font:400 var(--fs-xs)/1.3 var(--font-mono)}
.st-table th,.st-table td{padding:var(--s2) var(--s3);text-align:right;white-space:nowrap}
.st-table tbody th{font:500 var(--fs-xs)/1.3 var(--font-mono);color:var(--text-strong);text-transform:none;letter-spacing:0}
.st-table tr.is-atm{background:rgba(224,169,59,.14)}
.st-table tr.is-atm th,.st-table tr.is-atm td{color:var(--amber);border-bottom-color:var(--amber)}
.gex-card{padding:var(--s4)}
.gex-chip{display:inline-block;padding:.3em .55em;border:1px solid var(--hairline-strong);border-radius:var(--radius-ctl);font:500 var(--fs-xs)/1 var(--font-mono);letter-spacing:.08em;color:var(--text-dim)}
.gex-chip.is-damp{color:var(--green);border-color:var(--green)} .gex-chip.is-amp{color:var(--red);border-color:var(--red)}
.gex-stage{min-height:240px}
.gex-stage:focus-visible,.st-stage:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
.gex-sel{margin:var(--s3) 0 0;font:400 var(--fs-sm)/1.5 var(--font-mono);color:var(--text);max-width:none;min-height:3em}
.gex-help{margin:var(--s2) 0 0;font-size:var(--fs-xs);color:var(--text-dim);max-width:none}
.gx-zero{stroke:var(--hairline-strong);stroke-width:1}
.gx-pos{fill:var(--green)} .gx-neg{fill:var(--red)}
.gx-col{opacity:.6;cursor:pointer} .gx-col.is-on{opacity:1}
.gx-axis{fill:var(--text-dim);font:400 10px/1 var(--font-mono)}
.gx-flip,.gx-spot{stroke-width:1;stroke-dasharray:4 4} .gx-flip{stroke:var(--amber)} .gx-spot{stroke:var(--text)}
.gx-flip-t{fill:var(--amber);font:500 10px/1 var(--font-mono);letter-spacing:.06em} .gx-spot-t{fill:var(--text);font:500 10px/1 var(--font-mono);letter-spacing:.06em}
.gx-dot{fill:var(--amber)}
.st-statusrow{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3);margin-bottom:var(--s3)}
.fd-hint{margin:var(--s2) 0 0;font:400 var(--fs-xs)/1.5 var(--font-mono);color:var(--text-dim);max-width:none;min-height:2.6em}
.st-cursor{stroke:var(--text);stroke-width:1}
