/* hoop live: the front page and each game's page. Dark, phone first, team colours as accents; from 1200 px the full
   screen: the games and the news down the left, the game in the middle, hoop's card, edges and ledger down the right. */
:root{--bg:#0b0f14;--panel:#131a22;--panel2:#18212b;--line:#263646;--ink:#f0f6fc;--soft:#e2ebf5;--muted:#b5c6d8;--good:#39ff88;--bad:#ff5a5a;--warn:#ffb020;--info:#5ab0ff;--away:#5ab0ff;--home:#ffb020;
  --font:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --fs-xs:11px;--fs-sm:12.5px;--fs-md:14px;--fs-lg:16px;--fs-xl:20px;--fs-hero:30px}
*{box-sizing:border-box}
[hidden]{display:none!important} /* a template's empty slot, whatever display its class gives it */
html,body{margin:0;background:var(--bg);color:var(--ink);font:var(--fs-md)/1.45 var(--font);-webkit-text-size-adjust:100%}
a{color:var(--info)}
button{font-family:var(--font)}
.wrap{max-width:760px;margin:0 auto;padding:14px 12px 40px}
.muted{color:var(--muted)}.small{font-size:var(--fs-sm)}.pad{padding:0 14px}.center{text-align:center}
.up{color:var(--good)}.down{color:var(--bad)}.from{color:var(--soft)}
.fine{font-size:var(--fs-sm);color:var(--soft);padding:0 14px;margin:6px 0 10px;line-height:1.45}

/* the front page's head */
.brand{font:700 var(--fs-sm)/1 var(--font);color:var(--good);display:flex;align-items:center;gap:8px}
.brand .dot{width:8px;height:8px;border-radius:50%;background:var(--good);box-shadow:0 0 10px var(--good);display:inline-block}
.brand span{color:var(--muted);font-weight:500}
h1.day{font-size:var(--fs-hero);line-height:1.15;margin:12px 0 6px;font-weight:800;letter-spacing:-.01em}
.lede{color:var(--soft);font-size:var(--fs-md);margin:0 0 16px}

/* a game card */
.game,.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;margin:0 0 16px;overflow:hidden}
.game::before{content:"";display:block;height:5px;background:linear-gradient(90deg,var(--away) 0 50%,var(--home) 50% 100%)}
.matchup{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;padding:14px 12px 6px;color:inherit;text-decoration:none}
.side{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;min-width:0}
.side b{font-size:var(--fs-xl);line-height:1.15;overflow-wrap:anywhere}
.side small{font-size:var(--fs-xs);color:var(--soft);letter-spacing:.08em}
.side.away b,.ta{color:var(--away)}.side.home b,.th{color:var(--home)}
.logo{width:48px;height:48px;object-fit:contain;border-radius:50%;background:#ffffff14;padding:5px}
span.logo{display:grid;place-items:center;font:800 var(--fs-sm)/1 var(--font);color:var(--bg);background:var(--c,var(--info))}
.mid{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:96px}
.score{font-size:var(--fs-hero);font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1}
.score i{font-style:normal;color:var(--muted);padding:0 4px}
.state{font-size:var(--fs-sm);color:var(--soft)}.state.in{color:var(--good);font-weight:700}
.count{font-size:var(--fs-sm);font-weight:800;color:var(--warn)}

/* chances: hoop's against Kalshi's, each a bar split in the two teams' colours — locked to identical height */
.bars{padding:6px 14px 2px}
.bar{display:grid;grid-template-columns:96px 1fr auto;align-items:center;gap:10px;margin:8px 0;min-height:24px;font-size:var(--fs-md)}
.bar[hidden]{display:none}
.bar .who{color:var(--ink);font-weight:800;line-height:1;display:inline-flex;align-items:baseline;gap:5px;white-space:nowrap}
.bar .who small{display:inline;font-weight:600;font-size:var(--fs-xs);color:var(--soft)}
.track{display:flex;height:16px;min-height:16px;max-height:16px;align-self:center;border-radius:8px;overflow:hidden;background:var(--line);gap:2px}
.track .a{height:100%;background:var(--away)}.track .h{height:100%;background:var(--home)}
.bar.kalshi .track{opacity:.82}
.nums{font-variant-numeric:tabular-nums;color:var(--soft);white-space:nowrap;font-size:var(--fs-md)}.nums b{color:var(--ink)}
.proj{padding:0 14px;margin:8px 0;font-size:var(--fs-md);display:flex;flex-wrap:wrap;gap:2px 10px;align-items:baseline}
.chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px;margin:8px 0}
.chip{font:600 var(--fs-sm)/1.25 var(--font);background:var(--panel2);border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:6px 11px}
.chip.warn{color:var(--bg);background:var(--warn);border-color:var(--warn)}
button.chip{cursor:pointer;text-align:left}
button.chip[aria-pressed=true]{background:var(--info);border-color:var(--info);color:var(--bg)}
h2.sec{font-size:var(--fs-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--info);margin:14px 14px 8px;font-weight:800}
h2.sec small{text-transform:none;letter-spacing:0;color:var(--soft);font-weight:600;margin-left:4px;font-size:var(--fs-sm)}
h3{font-size:var(--fs-md);margin:12px 14px 4px}

/* hoop's read: numbered factors, each opening onto its receipt */
.factors{list-style:none;margin:0;padding:0 10px;counter-reset:f}
.factors>li{counter-increment:f;margin:0 0 8px}
.factor{background:var(--panel2);border:1px solid var(--line);border-radius:12px}
.factor summary{list-style:none;cursor:pointer;padding:10px 12px 10px 44px;position:relative}
.factor summary::-webkit-details-marker{display:none}
.factor summary::before{content:counter(f);position:absolute;left:11px;top:11px;width:24px;height:24px;border-radius:50%;background:var(--good);color:var(--bg);font-weight:800;font-size:var(--fs-sm);display:grid;place-items:center}
.factor summary b{display:block;font-size:var(--fs-lg);line-height:1.3;margin-bottom:3px;color:var(--ink)}
.factor summary span{font-size:var(--fs-md);color:var(--soft)}
.factor summary::after{content:"show the numbers";display:block;font-size:var(--fs-sm);font-weight:700;color:var(--info);margin-top:5px}
.factor[open] summary::after{content:"hide the numbers"}
.receipt{margin:0;padding:0 12px 10px 44px;list-style:none}
.receipt li{font-size:var(--fs-md);margin:7px 0;color:var(--soft)}
.receipt b{color:var(--ink)}
.receipt small{display:block;color:var(--muted);font-size:var(--fs-sm)}

/* what-ifs */
.whatifs{list-style:none;margin:0;padding:0 14px}
.whatifs li{font-size:var(--fs-md);padding:9px 0;border-top:1px solid var(--line)}
.whatifs li:first-child{border-top:0}
.whatifs small{display:block;color:var(--soft);font-size:var(--fs-sm);margin-top:2px}
.arrow{font-weight:800}
.wi{background:var(--panel2);border:1px solid var(--line);border-radius:12px;margin:0 10px 8px;padding:10px 12px}
.wi .t{font-weight:800;font-size:var(--fs-lg);line-height:1.25}
.wi .why{font-size:var(--fs-sm);color:var(--soft);margin-top:2px}
.wi .ch{display:flex;align-items:center;gap:8px;margin:6px 0 2px;font-size:var(--fs-md);font-variant-numeric:tabular-nums}
.wi .mini{flex:1;position:relative;height:8px;border-radius:4px;background:var(--line)}
.wi .mini span{position:absolute;top:0;bottom:0;left:0;border-radius:4px}
.wi .mini .b{background:var(--muted);opacity:.5}
.wi .mini .f{background:var(--c,var(--info))}
.wi ul{list-style:none;margin:6px 0 0;padding:0;font-size:var(--fs-sm);color:var(--soft)}
.wi li{margin:2px 0}

.go{display:block;margin:12px 14px 14px;padding:12px;border-radius:12px;background:var(--panel2);border:1px solid var(--line);text-align:center;font-weight:700;text-decoration:none;font-size:var(--fs-md)}
.newer{padding:0 14px;font-size:var(--fs-sm);font-weight:700}
.reclink{font:600 var(--fs-sm) var(--font);color:var(--good);text-decoration:none;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:5px 10px;white-space:nowrap}
header.top .reclink{float:right;margin-top:-18px}
.viewbar #all{margin-left:auto}
.behind{margin-left:auto;font:700 var(--fs-sm) var(--font);color:var(--good);white-space:nowrap;cursor:help}.behind:not([hidden])+#all{margin-left:0}

/* the news */
.feed{list-style:none;margin:0;padding:0 14px}
.feed li{padding:10px 0;border-top:1px solid var(--line)}
.feed li:first-child{border-top:0}
.feed li.fresh{animation:fresh 2.4s ease-out}
@keyframes fresh{from{background:#39ff8822}to{background:transparent}}
.feed .meta{font-size:var(--fs-xs);color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.feed .t{font-weight:700;font-size:var(--fs-lg);margin:4px 0 2px;line-height:1.3}
.feed .x{font-size:var(--fs-md);color:var(--soft);white-space:pre-line;overflow-wrap:anywhere}
.feed .more{font-size:var(--fs-sm);font-weight:700;text-decoration:none}
.tag{font:800 var(--fs-xs)/1 var(--font);padding:3px 6px;border-radius:4px;background:var(--line);color:var(--ink);letter-spacing:.04em}
.st{font:800 var(--fs-xs)/1 var(--font);padding:3px 6px;border-radius:4px;background:var(--muted);color:var(--bg);letter-spacing:.04em;white-space:nowrap}
.st.out{background:var(--bad)}.st.q{background:var(--warn)}.st.ok{background:var(--good)}
.more-btn{margin:8px 14px 0;background:none;border:0;color:var(--info);font-weight:700;font-size:var(--fs-sm);cursor:pointer;padding:0}

/* Ask hoop */
.askf{display:flex;gap:8px;padding:0 14px}
.askf input{flex:1;min-width:0;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:12px;font:var(--fs-lg) var(--font)}
.askf input:focus{outline:2px solid var(--info);outline-offset:-1px}
.askf button{background:var(--good);color:var(--bg);border:0;border-radius:12px;padding:0 18px;font:800 var(--fs-md) var(--font);cursor:pointer}
.askf button:disabled{opacity:.5}
.samples{margin-top:10px}
.answer{margin:10px 14px 4px;padding:12px;border-radius:12px;background:var(--panel2);border:1px solid var(--line)}
.answer[hidden]{display:none}
.answer p{margin:0 0 8px}
.answer .q{font-size:var(--fs-sm);color:var(--muted)}
.answer .a{font-size:var(--fs-lg);line-height:1.45}
.answer.err .a{color:var(--bad)}
.answer .rh{font-size:var(--fs-xs);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--info);margin:6px 0 0}
.answer .receipt{padding:0 0 4px 0}
.answer .fine{padding:0;margin:4px 0 0}
.answer a.more{display:inline-block;margin-top:6px;font-size:var(--fs-sm);font-weight:700;text-decoration:none}
.thinking::after{content:"";display:inline-block;width:1.2em;text-align:left;animation:dots 1.2s steps(4) infinite}
@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}
/* Ask hoop as a game's tab: the conversation, newest first; the way in under the read */
.askgo{display:flex;flex-direction:column;gap:2px;margin:0 0 16px;padding:12px 14px;border-radius:14px;background:var(--panel);border:1px solid var(--line);text-decoration:none;color:var(--ink)}
.askgo[hidden]{display:none}
.askgo b{font-size:var(--fs-lg)}.askgo b::after{content:" →";color:var(--info)}
.askgo span{font-size:var(--fs-sm);color:var(--muted)}
.convo{list-style:none;margin:12px 0 4px;padding:0 10px}
.convo .empty{padding:4px 4px 10px}
.turn{background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin:0 0 8px}
.turn.fresh{animation:fresh 2.4s ease-out}
.turn.pending{border-color:#2c6b48}
.turn .meta{display:flex;align-items:center;gap:8px;font-size:var(--fs-sm);color:var(--muted)}
.turn .meta b{color:var(--ink);font-size:var(--fs-sm);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.turn .meta time{margin-left:auto;white-space:nowrap}
.turn .av{flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font:800 var(--fs-xs)/1 var(--font);color:var(--bg);background:var(--c,var(--info))}
.turn .q{margin:7px 0 5px;font-weight:700;font-size:var(--fs-lg);line-height:1.35;overflow-wrap:anywhere}
.turn .a{margin:0;font-size:var(--fs-md);line-height:1.5;color:var(--soft);overflow-wrap:anywhere}
.turn .a .by{font:800 var(--fs-xs)/1 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--good);margin-right:7px;vertical-align:1px}
.turn.err .a{color:var(--bad)}
.turn .rc summary{cursor:pointer;list-style:none;font-size:var(--fs-sm);font-weight:700;color:var(--info);margin-top:7px}
.turn .rc summary::-webkit-details-marker{display:none}
.turn .rc summary::before{content:"▸ "}.turn .rc[open] summary::before{content:"▾ "}
.turn .rc .receipt{padding:2px 0 0}
.turn .fine{padding:0;margin:6px 0 0}

/* the game page: the canvas on top, as tall as what it paints; the panels below */
body[data-page=game] #board{position:relative}
#c{display:block;width:100%;height:60vh;touch-action:pan-y}
.below{padding-top:0}
.viewbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px 0;max-width:788px;margin:0 auto}
.seg{display:inline-flex;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:3px;gap:2px}
.seg button{background:none;border:0;color:var(--muted);font:700 var(--fs-md) var(--font);padding:6px 12px;border-radius:7px;cursor:pointer}
.seg button[aria-selected=true]{background:var(--panel2);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.seg button[data-view=edges]::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--good);box-shadow:0 0 8px var(--good);margin-right:7px;vertical-align:1px}
#all{font:600 var(--fs-sm) var(--font);color:var(--info);text-decoration:none;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:5px 10px}
body[data-view=edges] #board,body[data-view=edges] #pre{display:none}
body[data-view=ask] #board,body[data-view=ask] #pre,body[data-view=ask] #askgo,body:not([data-view=ask]) #talk{display:none}
body[data-view=ask] #panels{padding-top:10px}
.seg .n{margin-left:6px;font:800 var(--fs-xs)/1 var(--font);padding:2px 6px;border-radius:999px;background:var(--info);color:var(--bg);vertical-align:1px}
.seg .n[hidden]{display:none}
.seg button,#all{white-space:nowrap}
@media (max-width:480px){.viewbar{flex-wrap:wrap;gap:6px;padding:10px 10px 0}.seg button{padding:6px 8px;font-size:var(--fs-sm)}#all{padding:5px 8px}
  .behind{order:9;flex-basis:100%;text-align:right}.behind:not([hidden])+#all{margin-left:auto}}
#edge-space{position:relative;min-height:72vh;margin:10px 0 14px}
#edge-space[hidden]{display:none}
#edge-space:empty::before{content:"Edge space is on its way: every strike hoop has priced, in three dimensions.";display:grid;place-items:center;min-height:72vh;color:var(--muted);font-size:var(--fs-md);text-align:center;padding:0 24px}

/* the frame: one column on phones; clean 2-panel layout (centre | wide tabbed right panel) from 1100 px */
.shell{display:flex;flex-direction:column}
.col{min-width:0}
.right,.left{width:100%;max-width:760px;margin:0 auto;padding:0 12px}
.left{display:none}
#games{display:none!important}
@media (min-width:1100px){
  html,body{height:100%;overflow:hidden}
  body{display:flex;flex-direction:column}
  .top-nav{flex-shrink:0}
  .shell{display:grid;grid-template-columns:minmax(0,1.35fr) clamp(430px,37vw,560px);grid-template-areas:"centre right";height:calc(100vh - 52px);height:calc(100dvh - 52px);flex:1;min-height:0}
  .col{height:100%;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
  .centre{grid-area:centre}
  .right{grid-area:right;max-width:none;margin:0;padding:12px 14px 30px;border-left:1px solid var(--line);background:#0a0e13}
  .rtabs{top:0}
  .centre .wrap,.viewbar{max-width:920px}
  body[data-view=ask] .centre .wrap,body[data-view=ask] .viewbar{max-width:1180px}
  .right .panel{margin-bottom:12px}
  #edge-space,#edge-space:empty::before{min-height:calc(100dvh - 70px)}
}

/* the games down the left */
.glist{list-style:none;margin:0;padding:0 8px 8px}
.glist li{margin:0 0 6px}
.gi{display:grid;grid-template-columns:1fr auto;gap:3px 8px;padding:9px 10px;border-radius:12px;background:var(--panel2);border:1px solid var(--line);color:inherit;text-decoration:none;position:relative;overflow:hidden}
.gi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(var(--away) 0 50%,var(--home) 50% 100%)}
.gi.on{border-color:var(--info);box-shadow:0 0 0 1px var(--info) inset}
.gi:hover{border-color:#36506a}
.gt{display:flex;align-items:center;gap:7px;grid-column:1/-1;font-size:var(--fs-md);min-width:0}
.gt b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gt.away b{color:var(--away)}.gt.home b{color:var(--home)}
.gt .logo{width:26px;height:26px;padding:3px}
.gt .pts{font-weight:800;font-variant-numeric:tabular-nums;color:var(--soft);font-size:var(--fs-md)}
.gs{grid-column:1/-1;font-size:var(--fs-xs);color:var(--muted)}.gs.in{color:var(--good);font-weight:700}
.gs .badge{font-style:normal;font-weight:800;font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:#0b0f14;background:var(--info);border-radius:6px;padding:1px 6px;margin-right:6px}
.gser{grid-column:1/-1;font-size:var(--fs-xs);color:var(--muted)}
.gi.off{cursor:default}.gi.off:hover{border-color:var(--line)}
.gi.earlier{opacity:.7}

/* the right-hand panels */
.rp .sec{margin-top:12px}
.rp-body{padding:0 0 4px}
.tally{margin:0 14px 8px;font-size:var(--fs-sm);color:var(--muted)}.tally b{color:var(--ink)}
.subh{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:var(--fs-sm);letter-spacing:.04em;text-transform:uppercase;color:var(--soft);margin:12px 14px 6px}
.subh small{text-transform:none;letter-spacing:0;color:var(--muted);font-weight:500}
.rows{list-style:none;margin:0;padding:0 10px}
.row,.brow{display:grid;grid-template-columns:40px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:1px 10px;align-items:center;padding:8px 10px 8px 9px;margin:0 0 6px;border-radius:11px;background:var(--panel2);border:1px solid var(--line);border-left:3px solid var(--c,var(--line))}
.row>.u,.brow>.u{grid-row:1/3}
.row .what,.brow .what{font-size:var(--fs-md);line-height:1.25;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.row .sub,.brow .sub{grid-column:2;font-size:var(--fs-sm);color:var(--muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.row.other{opacity:.62}
.res{grid-column:3;justify-self:end;font-size:var(--fs-sm);white-space:nowrap;font-variant-numeric:tabular-nums}.res b{color:var(--ink)}
b.res{font-size:var(--fs-lg);font-weight:800}
.stt{justify-self:end;font:800 var(--fs-xs)/1 var(--font);letter-spacing:.05em;text-transform:uppercase;padding:4px 7px;border-radius:5px;white-space:nowrap}
.stt.ride{background:#5ab0ff22;color:var(--info)}.stt.won{background:#39ff8822;color:var(--good)}.stt.lost{background:#ff5a5a22;color:var(--bad)}.stt.void{background:var(--line);color:var(--muted)}
.sd{font:800 var(--fs-xs)/1 var(--font);padding:2px 5px;border-radius:4px;vertical-align:1px}
.sd.yes{background:#39ff8826;color:var(--good)}.sd.no{background:#ffb02026;color:var(--warn)}
/* the units chip: 1U outlined, 2U filled, 3U gold */
.u{display:inline-grid;place-items:center;min-width:36px;height:26px;padding:0 6px;border-radius:7px;font:900 var(--fs-sm)/1 var(--font);letter-spacing:.02em}
.u0{background:transparent}
.u1{color:var(--good);box-shadow:inset 0 0 0 2px var(--good)}
.u2{color:#06110b;background:var(--good);box-shadow:0 0 10px #39ff8855}
.u3{color:#1a1200;background:linear-gradient(135deg,#ffe27a,#ffb020);box-shadow:0 0 14px #ffb02099}
.note{margin:8px 14px;font-size:var(--fs-sm);color:var(--soft)}
.brow{grid-template-columns:40px minmax(0,1fr) auto}
.brow .edge{grid-row:1/3;grid-column:3;font-size:var(--fs-lg);font-weight:800;font-variant-numeric:tabular-nums;color:var(--muted)}
.brow .edge.up{color:var(--good);font-size:var(--fs-lg)}.brow .edge.neg{color:#5d6b7a}
.brow:not(.hot){background:transparent;border-color:#1a242f;border-left-color:#26323f}
.brow:not(.hot) .what{color:var(--soft)}.brow:not(.hot) .what b{font-weight:600}
.brow.hot{background:linear-gradient(90deg,#39ff881c,var(--panel2) 70%);border-color:#2c6b48;border-left-color:var(--c,var(--good))}
.bookh{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:10px 14px 6px;font-size:var(--fs-md)}
.bookh span{color:var(--soft)}
.bookh small{margin-left:auto;color:var(--muted);font-size:var(--fs-xs)}
.bookh .flag{color:var(--warn);font-weight:700}
.bookh.off{color:var(--muted);border-top:1px dashed var(--line);padding-top:10px}.bookh.off b{color:var(--muted)}.bookh.off span{color:var(--muted)}
.lrow{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;padding:7px 10px;margin:0 0 5px;border-radius:10px;border:1px solid #1a242f;border-left:3px solid var(--c,var(--line));font-size:var(--fs-md)}
.lrow small{color:var(--muted);font-size:var(--fs-xs)}
.lrow .lv{margin-left:auto;color:var(--muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.lrow .lv b{color:var(--soft)}
.tiles{display:flex;flex-direction:column;gap:8px;padding:0 10px}
.tile{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"lab sm" "big tiers";gap:3px 14px;align-items:end;background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.tile .lab{grid-area:lab;font-size:var(--fs-xs);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-self:start}
.tile .big{grid-area:big;font-size:var(--fs-hero);line-height:1;font-weight:900;font-variant-numeric:tabular-nums}
.tile .big.up{color:var(--good)}.tile .big.down{color:var(--bad)}
.tile .sm{grid-area:sm;justify-self:end;text-align:right;font-size:var(--fs-sm);color:var(--soft)}
.tiers{grid-area:tiers;justify-self:end;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px 8px;font-size:var(--fs-sm);color:var(--muted);padding-bottom:3px}
.tc{display:inline-flex;align-items:center;gap:2px;font-variant-numeric:tabular-nums}
.tc .u{min-width:22px;height:17px;font-size:var(--fs-xs);padding:0 3px;border-radius:5px;box-shadow:none}
.tc .u1{box-shadow:inset 0 0 0 1.5px var(--good)}
.pre>summary{list-style:none;cursor:pointer;padding:14px 14px 10px;display:flex;flex-direction:column;gap:2px;border-bottom:1px solid transparent}
.pre>summary::-webkit-details-marker{display:none}
.pre>summary .h{font-weight:800;font-size:var(--fs-lg)}
.pre>summary .h::after{content:" ▾";color:var(--muted);font-size:var(--fs-sm)}
.pre[open]>summary .h::after{content:" ▴"}
.pre>summary .s{font-size:var(--fs-sm);color:var(--muted)}
.pre[open]>summary{border-bottom-color:var(--line)}
.status-strip{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px;margin:8px 0}
.status-strip .who{display:inline-flex;align-items:center;gap:8px;background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:4px 12px 4px 5px;font-size:var(--fs-md)}
.status-strip img{width:34px;height:34px;border-radius:50%;object-fit:cover;background:var(--line)}
.notes{list-style:none;margin:4px 0 0;padding:0 14px;font-size:var(--fs-md);color:var(--soft)}
.notes li{margin:4px 0}.notes small{color:var(--muted);font-size:var(--fs-sm)}
.bigproj{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:8px;padding:4px 14px 2px;text-align:center}
.bigproj b{display:block;font-size:var(--fs-hero);line-height:1;font-weight:800;font-variant-numeric:tabular-nums}
.bigproj span{font-size:var(--fs-sm);color:var(--soft)}
.bigproj .dash{font-size:var(--fs-xl);color:var(--muted);padding-bottom:10px}
.tabs{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px;margin:6px 0 2px}
.grp{padding:0 14px}
.grp h3{margin:12px 0 4px;font-size:var(--fs-sm);letter-spacing:.06em;text-transform:uppercase}
.grp.away h3{color:var(--away)}.grp.home h3{color:var(--home)}
.pl{display:grid;grid-template-columns:88px 1fr;gap:14px;align-items:center;padding:6px 0}
.pl img,.pl .ph{width:88px;height:88px;border-radius:50%;object-fit:cover;object-position:center top;background:var(--panel);border:2px solid rgba(226,235,245,0.18);box-shadow:0 2px 10px rgba(0,0,0,0.35)}
.pl .ph{display:grid;place-items:center;font:800 var(--fs-lg)/1 var(--font);color:var(--soft)}
.pl .nm{font-size:var(--fs-lg);font-weight:700;display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center;line-height:1.25;width:100%}
.pl .nm small{font-weight:700;color:var(--soft);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em}
.pl .pl-bio{margin-left:auto;font:700 var(--fs-xs)/1.2 var(--font);color:var(--soft);background:rgba(255,255,255,0.06);border:1px solid rgba(226,235,245,0.16);border-radius:6px;padding:2px 7px;white-space:nowrap}
.pl .pl-espn{font:700 var(--fs-xs)/1.2 var(--font);color:#8ec8ff;background:rgba(90,176,255,0.12);border:1px solid rgba(90,176,255,0.35);border-radius:6px;padding:2px 6px;text-decoration:none;white-space:nowrap;transition:all .14s ease}
.pl .pl-espn:hover{background:#5ab0ff;color:#081018;border-color:#5ab0ff}
.rng{position:relative;height:12px;background:var(--line);border-radius:6px;margin:6px 0 5px}
.rng .band{position:absolute;top:0;bottom:0;border-radius:6px;opacity:.55}
.rng .mean{position:absolute;top:-3px;bottom:-3px;width:4px;margin-left:-2px;border-radius:2px;background:var(--ink)}
.pl.away .band{background:var(--away)}.pl.home .band{background:var(--home)}
.pl .v{font:500 var(--fs-md)/1.3 var(--font);color:var(--soft);font-variant-numeric:tabular-nums}.pl .v b{color:var(--ink);font-weight:700;font-size:var(--fs-md);margin-right:4px}
/* a page built ahead: the matchup in words where the board will be; the ladder of odds before a market */
.ahead{padding:8px 14px 12px}.ahead[hidden]{display:none}
.ahead h1{font-size:var(--fs-xl);line-height:1.15;margin:6px 0 2px;font-weight:800}.ahead h1 i{font-style:normal;font-weight:500;color:var(--soft);font-size:var(--fs-lg)}
.ahead .away{color:var(--away)}.ahead .home{color:var(--home)}
.ahead .when{margin:0 0 6px;font-size:var(--fs-md);color:var(--soft)}.ahead p{margin:0}
.lads{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;padding:0 10px}
.lad{background:var(--panel2);border:1px solid var(--line);border-left:3px solid var(--c,var(--line));border-radius:11px;padding:8px 10px}
.lad h3{margin:0 0 4px;font-size:var(--fs-lg)}.lad h3 small{margin-left:6px;font-size:var(--fs-xs);font-weight:800;color:var(--c,var(--soft));letter-spacing:.04em}
.lad ol{list-style:none;margin:0;padding:0}
.lad li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 10px;padding:5px 0;border-top:1px solid var(--line);font-size:var(--fs-md);font-variant-numeric:tabular-nums}
.lad li b{font-variant-numeric:tabular-nums}
.lad .buy{grid-column:1/-1;font-size:var(--fs-sm);color:var(--soft);font-variant-numeric:tabular-nums}.lad .buy span{color:var(--ink)}
.legend{font-size:var(--fs-sm);color:var(--soft);padding:0 14px;margin:8px 0 0}
@media (min-width:600px){h1.day{font-size:var(--fs-hero)}.side b{font-size:var(--fs-xl)}}
@media (prefers-reduced-motion:reduce){.feed li.fresh{animation:none}.thinking::after{animation:none;content:"..."}}

/* the books as chips over the edges: Kalshi live, the others named with when they come */
.bkchips{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 10px}
.bk{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;border:1px solid #324252;font-size:var(--fs-sm);font-weight:700;color:var(--soft);white-space:nowrap}
.bk small{font-weight:500;opacity:.9}
.bk.live{border-color:#4ade80;color:#4ade80;background:rgba(74,222,128,.08)}
.bk.live .dot{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade80}
.bk.soon{border-style:dashed}
.bk.off{opacity:.68}
/* the team on an edge row, in its colour */
.brow .tm{display:inline-block;font-size:var(--fs-xs);font-weight:800;letter-spacing:.04em;padding:1px 5px;margin-right:6px;border-radius:4px;vertical-align:1px;
  color:var(--c,#cfe3ff);background:color-mix(in srgb,var(--c,#5ab0ff) 22%,transparent);border:1px solid color-mix(in srgb,var(--c,#5ab0ff) 55%,transparent)}

/* the book chips are buttons: the one shown is lit */
button.bk{cursor:pointer;background:transparent;font-family:inherit}
button.bk:hover{border-color:#5ab0ff;color:#cfe3ff}
button.bk.on{border-color:#5ab0ff;color:#fff;background:rgba(90,176,255,.16);opacity:1}
.sd.over{color:#4ade80}.sd.under{color:#fb8a4b}

/* Calculate card & button for uncalculated games */
.calc-box{padding:16px;background:var(--panel2);border:1px solid var(--line);border-radius:14px;margin:8px 10px 14px}
.calc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.calc-header h2.sec{margin:0}
.calc-header .badge{font-size:var(--fs-xs);font-weight:700;color:var(--good);background:rgba(57,255,136,0.12);border:1px solid rgba(57,255,136,0.28);border-radius:999px;padding:3px 8px}
.calc-act{margin:14px 0 10px}
.btn-calc{display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-md);font-weight:700;padding:10px 18px;border-radius:10px;background:linear-gradient(135deg,#39ff88 0%,#20b060 100%);color:#0b0f14;border:none;cursor:pointer;box-shadow:0 0 16px rgba(57,255,136,0.28);transition:all .15s ease}
.btn-calc:hover{transform:translateY(-1px);box-shadow:0 0 22px rgba(57,255,136,0.45);filter:brightness(1.05)}
.btn-calc:active{transform:translateY(0);filter:brightness(0.95)}
.btn-calc:disabled{opacity:0.65;cursor:not-allowed;transform:none;box-shadow:none}
.btn-calc.loading::after{content:"";display:inline-block;width:12px;height:12px;margin-left:8px;border:2px solid #0b0f14;border-top-color:transparent;border-radius:50%;animation:spin 0.8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.calc-status{margin-top:6px;min-height:1.4em}
.es-btn-calc{display:inline-block;margin-top:10px;font-size:var(--fs-sm);font-weight:700;padding:7px 14px;border-radius:8px;background:linear-gradient(135deg,#39ff88 0%,#20b060 100%);color:#0b0f14;border:none;cursor:pointer;pointer-events:auto;box-shadow:0 0 12px rgba(57,255,136,0.3)}
.es-btn-calc:hover{filter:brightness(1.08)}
.es-btn-calc:disabled{opacity:0.6;cursor:not-allowed}

/* Unified Top Navigation */
.top-nav{position:sticky;top:0;z-index:1000;background:rgba(11,15,20,0.95);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);width:100%}
.top-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;height:52px;padding:0 16px;max-width:1440px;margin:0 auto;box-sizing:border-box}
.top-nav-left{display:flex;align-items:center;gap:12px;flex-shrink:0}
.top-brand{display:inline-flex;align-items:center;gap:7px;text-decoration:none;color:inherit}
.top-brand .brand-ico{width:24px;height:24px;border-radius:6px;display:block;flex-shrink:0;box-shadow:0 0 8px rgba(57,255,136,0.22);border:1px solid rgba(57,255,136,0.28)}
.top-brand .brand-title{font:900 var(--fs-lg)/1 var(--font);color:#fff;letter-spacing:-.02em}
.top-brand .dot{width:8px;height:8px;border-radius:50%;background:var(--good);box-shadow:0 0 10px var(--good);display:inline-block}
.top-brand .brand-badge{font:700 var(--fs-xs)/1 var(--font);text-transform:uppercase;letter-spacing:.05em;color:var(--good);background:rgba(57,255,136,0.12);border:1px solid rgba(57,255,136,0.32);border-radius:999px;padding:3px 7px;white-space:nowrap}
.top-nav-center{display:flex;align-items:center;justify-content:center;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}
.top-nav-center::-webkit-scrollbar{display:none}
.top-nav-right{display:flex;align-items:center;gap:10px;flex-shrink:0}
@media (max-width:640px){.top-brand .brand-badge{display:none}}

/* Nav links & live game enumeration in top header */
.nav-links{display:inline-flex;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:3px;gap:3px;max-width:100%}
.nav-link{font:700 var(--fs-md) var(--font);color:var(--soft);text-decoration:none;padding:5px 11px;border-radius:7px;transition:all .15s ease;white-space:nowrap}
.nav-link:hover{color:var(--ink);background:var(--panel2)}
.nav-link.active{background:var(--panel2);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.nav-link.reclink{color:#82c8ff}
.nav-live-games{display:inline-flex;align-items:center;gap:4px;padding:0 4px;border-left:1px solid var(--line);border-right:1px solid var(--line)}
.nav-live-games:empty{display:none}
.nav-lg-label{font:800 var(--fs-xs)/1 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:0 4px}
.nav-lg-label.is-live{color:var(--good)}
.nav-game-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:6px;background:rgba(255,255,255,0.04);border:1px solid rgba(226,235,245,0.14);color:var(--ink);text-decoration:none;font:700 var(--fs-sm)/1.1 var(--font);white-space:nowrap;transition:all .15s ease}
.nav-game-pill:hover{background:var(--panel2);border-color:var(--info);color:#fff}
.nav-game-pill.active{background:rgba(90,176,255,0.16);border-color:var(--info);color:#fff}
.nav-game-pill.is-live{border-color:rgba(57,255,136,0.45);background:rgba(57,255,136,0.08)}
.nav-gp-dot{width:6px;height:6px;border-radius:50%;background:var(--good);box-shadow:0 0 6px var(--good)}
.nav-gp-st{font:600 var(--fs-xs)/1 var(--font);color:var(--soft)}
@media (max-width:920px){.nav-live-games{display:none}}

/* Account button, avatar & dropdown */
.nav-account{position:relative}
.btn-account{display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 5px;border-radius:999px;background:var(--panel);border:1px solid var(--line);color:var(--ink);cursor:pointer;font-size:var(--fs-md);font-weight:600;transition:border-color .15s ease,background .15s ease}
.btn-account:hover{border-color:var(--info);background:var(--panel2)}
.avatar-circle{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#5ab0ff 0%,#b98cff 100%);color:#0b0f14;font-weight:800;font-size:var(--fs-md);display:grid;place-items:center;line-height:1}
.account-name{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-md);color:var(--soft)}
.hamburger-icon{color:var(--muted);flex-shrink:0;transition:transform .15s ease}
.btn-account[aria-expanded=true] .hamburger-icon{transform:rotate(90deg);color:var(--info)}
@media (max-width:540px){.account-name{display:none}}

.account-dropdown{position:absolute;right:0;top:calc(100% + 8px);width:260px;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 36px rgba(0,0,0,0.6);padding:8px 0;z-index:1001}
.account-dropdown[hidden]{display:none!important}
.dropdown-header{padding:8px 14px 10px}
.dropdown-header .user-info{display:flex;flex-direction:column;gap:5px}
.dropdown-header .user-email{font-size:var(--fs-md);font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dropdown-divider{height:1px;background:var(--line);margin:6px 0}
.dropdown-section-title{font-size:var(--fs-xs);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:4px 14px 2px}
.dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 14px;background:none;border:none;color:var(--soft);font-size:var(--fs-md);font-weight:600;text-align:left;text-decoration:none;cursor:pointer;transition:background .12s ease,color .12s ease;box-sizing:border-box}
.dropdown-item:hover{background:var(--panel2);color:var(--ink)}
.dropdown-item .item-icon{font-size:var(--fs-lg);line-height:1;width:18px;text-align:center}
.dropdown-item.item-logout:hover{background:rgba(255,90,90,0.12);color:var(--bad)}

/* Role badges */
.role-badge{display:inline-block;font:800 var(--fs-xs)/1.2 var(--font);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 8px;width:fit-content}
.role-badge.badge-admin{color:var(--warn);background:rgba(255,176,32,0.14);border:1px solid rgba(255,176,32,0.45)}
.role-badge.badge-user{color:var(--info);background:rgba(90,176,255,0.14);border:1px solid rgba(90,176,255,0.45)}

/* User manager (built by nav.js) */
.user-mgr-modal{border:none;border-radius:16px;background:transparent;padding:0;max-width:600px;width:94vw;box-shadow:0 24px 60px rgba(0,0,0,0.7);color:var(--ink);overflow:visible}
.user-mgr-modal::backdrop{background:rgba(5,8,12,0.8);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.user-mgr-modal .modal-shell{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px;box-sizing:border-box;max-height:88vh;display:flex;flex-direction:column}
.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.modal-title-group{display:flex;flex-direction:column;gap:3px}
.modal-title{font-size:var(--fs-xl);font-weight:800;margin:0;letter-spacing:-.01em;color:var(--ink)}
.modal-subtitle{font-size:var(--fs-sm);color:var(--muted)}
.modal-close{background:none;border:none;color:var(--muted);font-size:26px;line-height:1;cursor:pointer;padding:0 6px;border-radius:6px;transition:color .12s}
.modal-close:hover{color:var(--ink)}
.mgr-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px}
.mgr-tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--muted);font:700 var(--fs-sm) var(--font);padding:8px 12px;margin-bottom:-1px;cursor:pointer}
.mgr-tab:hover{color:var(--ink)}
.mgr-tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--good)}
.mgr-alert{padding:8px 12px;border-radius:8px;font-size:var(--fs-sm);font-weight:600;margin-bottom:12px}
.mgr-alert.ok{background:rgba(57,255,136,0.12);color:var(--good);border:1px solid rgba(57,255,136,0.3)}
.mgr-alert.err{background:rgba(255,90,90,0.12);color:var(--bad);border:1px solid rgba(255,90,90,0.3)}
.mgr-pane{min-height:0;overflow-y:auto}
.form-add-user{margin-bottom:14px;background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:12px}
.form-label{display:block;font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--soft);margin-bottom:8px}
.add-row{display:flex;gap:8px}
.input-email{flex:1;min-width:0;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:9px 12px;font:inherit;font-size:var(--fs-md);color:var(--ink);outline:none;transition:border-color .15s}
.input-email:focus{border-color:var(--info)}
.input-inline{padding:5px 9px;font-size:var(--fs-md);width:100%}
.sel-role{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 8px;font:600 var(--fs-sm) var(--font);color:var(--ink);cursor:pointer}
.sel-role:disabled{opacity:.55;cursor:not-allowed}
.btn-primary{background:var(--good);color:#0b0f14;font:700 var(--fs-md) var(--font);border:none;border-radius:8px;padding:9px 16px;cursor:pointer;transition:all .15s ease;white-space:nowrap}
.btn-primary:hover{filter:brightness(1.08)}
.btn-primary:disabled{opacity:.6;cursor:not-allowed}
.users-list-container{max-height:330px;overflow-y:auto;border:1px solid var(--line);border-radius:10px;background:var(--panel2);padding:6px}
.user-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;background:var(--panel);border:1px solid var(--line);margin-bottom:5px}
.user-row:last-child{margin-bottom:0}
.user-row.is-admin{border-color:rgba(255,176,32,0.4)}
.user-col{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:0}
.role-col,.act-col{flex-direction:row;align-items:center;gap:6px}
.user-line{display:flex;align-items:center;gap:6px;min-width:0}
.user-icon{font-size:var(--fs-md)}
.user-email-text{font-size:var(--fs-md);font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.you{font:800 var(--fs-xs) var(--font);letter-spacing:.05em;text-transform:uppercase;color:var(--info);border:1px solid rgba(90,176,255,0.45);border-radius:999px;padding:1px 6px}
.user-sub{display:flex;flex-wrap:wrap;gap:0 6px;font-size:var(--fs-xs);color:var(--muted)}
.user-sub .sep{opacity:.6}
.user-sub .never{font-style:italic}
.ask-sure{color:var(--bad);font-weight:700}
.btn-row-action{font:600 var(--fs-xs) var(--font);padding:4px 9px;border-radius:6px;border:1px solid var(--line);background:var(--panel2);color:var(--soft);cursor:pointer;transition:all .12s}
.btn-row-action:disabled{opacity:.6;cursor:not-allowed}
.btn-edit:hover{border-color:var(--info);color:var(--info)}
.btn-del:hover{border-color:var(--bad);color:var(--bad);background:rgba(255,90,90,0.08)}
.audit-list{list-style:none;margin:0;padding:6px;border:1px solid var(--line);border-radius:10px;background:var(--panel2);max-height:380px;overflow-y:auto}
.audit-row{display:grid;grid-template-columns:78px minmax(0,1fr);gap:10px;padding:7px 8px;border-bottom:1px solid var(--line);font-size:var(--fs-sm);color:var(--soft)}
.audit-row:last-child{border-bottom:none}
.audit-row b{color:var(--ink)}
.audit-when{color:var(--muted);font-size:var(--fs-xs)}
.audit-denied .audit-text{color:var(--bad)}
.audit-remove .audit-text{color:var(--warn)}
.modal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.modal-footer-note{font-size:var(--fs-xs);color:var(--muted);margin:0}
.btn-secondary{background:var(--panel2);border:1px solid var(--line);color:var(--ink);font:700 var(--fs-md) var(--font);border-radius:8px;padding:8px 18px;cursor:pointer}
.btn-secondary:hover{border-color:var(--soft)}
@media (max-width:520px){.user-row{grid-template-columns:minmax(0,1fr)}.role-col,.act-col{justify-content:flex-start}.add-row{flex-wrap:wrap}.input-email{flex-basis:100%}}

/* Admin User & Visitor Telemetry Tab */
.user-mgr-modal.is-wide{max-width:860px;transition:max-width .18s ease}
.telem-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}
@media (max-width:680px){.telem-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.telem-kpi{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:10px;background:var(--panel2);border:1px solid var(--line);min-width:0}
.telem-kpi-lab{font:800 var(--fs-xs)/1 var(--font);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.telem-kpi-val{font:800 var(--fs-xl)/1.15 var(--font);color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.telem-kpi-val.telem-kpi-focus{font-size:var(--fs-md);color:#ffd15c}
.telem-kpi-val.live{color:var(--good)}
.telem-kpi-sub{font:500 var(--fs-xs)/1.25 var(--font);color:var(--soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.telem-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.telem-seg{display:inline-flex;align-items:center;gap:4px;background:var(--panel2);border:1px solid var(--line);border-radius:9px;padding:3px}
.telem-chip{background:none;border:1px solid transparent;border-radius:6px;padding:5px 10px;font:700 var(--fs-xs)/1.15 var(--font);color:var(--soft);cursor:pointer;transition:all .12s;white-space:nowrap}
.telem-chip:hover{color:var(--ink);background:rgba(255,255,255,0.04)}
.telem-chip.on{background:rgba(57,255,136,0.14);border-color:rgba(57,255,136,0.45);color:var(--good)}
.telem-refresh{padding:5px 11px;font-size:var(--fs-xs)}
.telem-list{max-height:430px;overflow-y:auto;border:1px solid var(--line);border-radius:10px;background:var(--panel2);padding:8px;display:flex;flex-direction:column;gap:7px}
.telem-prof-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;transition:border-color .14s}
.telem-prof-card.is-live{border-color:rgba(57,255,136,0.5);box-shadow:0 0 12px rgba(57,255,136,0.08)}
.telem-prof-card.is-auth{border-left:3px solid var(--info)}
.telem-prof-card.is-live.is-auth{border-left:3px solid var(--good)}
.telem-prof-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.telem-prof-who{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}
.telem-live-dot{width:8px;height:8px;border-radius:50%;background:var(--good);box-shadow:0 0 8px var(--good);flex-shrink:0}
.telem-idle-dot{width:8px;height:8px;border-radius:50%;background:var(--muted);opacity:.45;flex-shrink:0}
.telem-prof-name{font:800 var(--fs-md)/1.2 var(--font);color:var(--ink)}
.telem-role{font:800 10px/1 var(--font);letter-spacing:.05em;text-transform:uppercase;padding:2px 6px;border-radius:999px}
.telem-role.admin{background:rgba(255,176,32,0.16);color:var(--warn);border:1px solid rgba(255,176,32,0.4)}
.telem-role.member{background:rgba(90,176,255,0.15);color:var(--info);border:1px solid rgba(90,176,255,0.4)}
.telem-role.visitor{background:rgba(181,198,216,0.12);color:var(--soft);border:1px solid rgba(181,198,216,0.28)}
.telem-stream-badge{font:700 var(--fs-xs)/1.1 var(--font);color:var(--good);background:rgba(57,255,136,0.12);border:1px solid rgba(57,255,136,0.38);border-radius:999px;padding:2px 8px}
.telem-prof-right{display:flex;align-items:center;gap:8px;margin-left:auto}
.telem-when{font:600 var(--fs-xs)/1 var(--font);color:var(--muted);font-variant-numeric:tabular-nums}
.telem-prof-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font:500 var(--fs-xs)/1.35 var(--font);color:var(--muted);font-variant-numeric:tabular-nums}
.telem-prof-meta b{color:var(--soft);font-weight:700}
.telem-prof-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}
.telem-count-pill{font:700 var(--fs-xs)/1.15 var(--font);padding:2px 7px;border-radius:6px;background:rgba(255,255,255,0.04);border:1px solid var(--line);color:var(--soft);font-variant-numeric:tabular-nums}
.telem-count-pill.hi{background:rgba(57,255,136,0.12);border-color:rgba(57,255,136,0.38);color:var(--good)}
.telem-count-pill.warn{background:rgba(255,176,32,0.14);border-color:rgba(255,176,32,0.4);color:#ffd15c}
.telem-focus-pill{font:600 var(--fs-xs)/1.15 var(--font);padding:2px 7px;border-radius:6px;background:rgba(90,176,255,0.1);border:1px solid rgba(90,176,255,0.3);color:#9fd4ff}
.telem-trail{margin-top:6px;padding-top:6px;border-top:1px dashed var(--line);display:flex;flex-direction:column;gap:4px}
.telem-ev-row{display:grid;grid-template-columns:64px auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:4px 6px;border-radius:6px;background:rgba(11,15,20,0.55);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}
.telem-stream-row{grid-template-columns:64px minmax(110px,155px) auto minmax(0,1fr) auto;padding:6px 8px;border-bottom:1px solid rgba(255,255,255,0.05)}
@media (max-width:640px){.telem-ev-row,.telem-stream-row{grid-template-columns:56px auto minmax(0,1fr)}.telem-ev-dev,.telem-ev-who{display:none}}
.telem-ev-time{color:var(--muted);white-space:nowrap}
.telem-ev-who{font-weight:700;color:var(--soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.telem-ev-who.auth{color:var(--info)}
.telem-act-badge{font:800 10px/1.1 var(--font);letter-spacing:.03em;text-transform:uppercase;padding:2px 6px;border-radius:5px;background:rgba(255,255,255,0.06);color:var(--soft);border:1px solid var(--line);white-space:nowrap}
.telem-act-badge.hi{background:rgba(57,255,136,0.14);color:var(--good);border-color:rgba(57,255,136,0.4)}
.telem-act-badge.warn{background:rgba(255,176,32,0.15);color:#ffd15c;border-color:rgba(255,176,32,0.42)}
.telem-act-badge.bad{background:rgba(255,90,90,0.15);color:var(--bad);border-color:rgba(255,90,90,0.42)}
.telem-ev-target{color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.telem-ev-target b{font-weight:700}
.telem-ev-detail{color:var(--soft)}
.telem-ev-path{color:var(--muted)}
.telem-ev-dev{color:var(--muted);white-space:nowrap;font-size:10px}

/* spinning twinkie scenario theme */
.tab-twinkie{position:relative}
.seg button[data-view=ask][aria-selected=true]{color:var(--ink);box-shadow:inset 0 0 0 1px rgba(142,200,255,0.42);background:var(--panel2)}
.seg button[data-view=ask]:hover{color:var(--ink)}

.askgo.twinkie-go{background:var(--panel2);border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;gap:3px;padding:11px 14px;text-decoration:none;margin:10px 0 14px;transition:border-color .15s}
.askgo.twinkie-go:hover{border-color:rgba(142,200,255,0.5)}
.twinkie-title{font-size:var(--fs-md);font-weight:700;color:var(--ink);display:flex;align-items:center;gap:6px}
.askgo.twinkie-go span{font-size:var(--fs-sm);color:var(--soft)}

section.panel.ask.talk,section.panel.ask.twinkie-panel{border-color:var(--line);background:var(--panel)}
section.panel.ask h2.sec{color:var(--ink)}
section.panel.ask form.askf input:focus{border-color:#8ec8ff;box-shadow:0 0 0 2px rgba(142,200,255,0.16)}
section.panel.ask form.askf button[type=submit]{background:#2563eb;color:#f8fafc;font-weight:700;border:1px solid rgba(147,197,253,0.35)}
section.panel.ask form.askf button[type=submit]:hover{filter:brightness(1.08)}

/* 3D Edge space filter chips */
.es-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:8px 12px;margin-bottom:8px;background:rgba(14,21,33,0.75);border:1px solid rgba(158,189,219,0.18);border-radius:10px;backdrop-filter:blur(8px)}
.es-chip-group{display:inline-flex;align-items:center;gap:4px}
.es-chip-label{font-size:var(--fs-xs);font-weight:700;color:#7f99b8;text-transform:uppercase;letter-spacing:0.5px;margin-right:4px}
.es-chip{background:rgba(22,33,50,0.85);border:1px solid rgba(158,189,219,0.25);color:#a3c2e6;border-radius:14px;padding:3px 10px;font-size:var(--fs-xs);font-weight:600;cursor:pointer;transition:all .15s ease;line-height:1.3}
.es-chip:hover{background:rgba(35,52,78,0.95);border-color:rgba(178,220,255,0.5);color:#fff}
.es-chip-active{background:rgba(57,255,136,0.18)!important;border-color:#39ff88!important;color:#39ff88!important;box-shadow:0 0 8px rgba(57,255,136,0.35)}

/* Public Delayed/History Blurred Gate */
.blur-gate{position:relative;overflow:hidden;border:1px solid rgba(255,209,92,0.28);border-radius:12px;background:rgba(12,18,28,0.88);padding:0;margin:8px 10px}
.blur-content{position:absolute;inset:0;padding:12px;filter:blur(8px);-webkit-filter:blur(8px);user-select:none;-webkit-user-select:none;pointer-events:none;opacity:0.42}
.blur-row{display:flex;justify-content:space-between;gap:8px;padding:7px 8px;border-bottom:1px solid var(--line);font-size:var(--fs-sm);color:var(--soft)}
.blur-cta{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px 14px;background:radial-gradient(circle at center,rgba(11,17,26,0.92) 0%,rgba(11,17,26,0.72) 100%);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);gap:6px}
.blur-cta b{font-size:var(--fs-md);font-weight:800;color:#ffd15c;letter-spacing:-.01em;line-height:1.25}
.blur-cta span,.blur-cta small{font-size:var(--fs-sm);color:var(--soft);max-width:340px;line-height:1.35}
.btn-login-cta{display:inline-flex;align-items:center;justify-content:center;margin-top:4px;padding:7px 16px;border-radius:999px;background:linear-gradient(135deg,#ffd15c 0%,#e5a01a 100%);color:#140e02!important;font:800 var(--fs-sm)/1 var(--font);text-decoration:none;box-shadow:0 0 14px rgba(255,209,92,0.35);transition:transform .12s,filter .12s}
.btn-login-cta:hover{filter:brightness(1.08);transform:translateY(-1px)}

/* AI Line Assessor & Multi-Book Arbitrage Scanner */
.assessor-box{border:1px solid rgba(57,255,136,0.28);border-radius:12px;background:linear-gradient(180deg,rgba(57,255,136,0.06) 0%,var(--panel2) 100%);padding:11px 12px;margin:6px 10px 12px;box-sizing:border-box}
.assessor-head,.assessor-title{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:4px 8px;margin-bottom:8px}
.assessor-head b,.assessor-title b{font-size:var(--fs-md);font-weight:800;color:#39ff88;display:inline-flex;align-items:center;gap:6px}
.assessor-title small{font-size:var(--fs-xs);color:var(--muted)}
.assessor-form{display:flex;flex-direction:column;gap:6px;width:100%;box-sizing:border-box}
.assessor-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(68px,0.75fr) minmax(74px,0.85fr);gap:6px;width:100%;box-sizing:border-box}
.assessor-row.row-2{grid-template-columns:minmax(64px,0.75fr) minmax(92px,1fr) minmax(78px,0.9fr) auto}
.assessor-input,.assessor-in,.assessor-sel{width:100%;min-width:0;box-sizing:border-box;background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:6px 8px;color:var(--ink);font:600 var(--fs-sm) var(--font);outline:none;transition:border-color .15s,box-shadow .15s}
.assessor-input::placeholder,.assessor-in::placeholder{color:var(--muted);opacity:0.75}
.assessor-input:focus,.assessor-in:focus,.assessor-sel:focus{border-color:#39ff88;box-shadow:0 0 0 2px rgba(57,255,136,0.15)}
.btn-assess,.btn-assess-submit{background:linear-gradient(135deg,#39ff88 0%,#1ec768 100%);color:#06150c;border:none;border-radius:7px;padding:6px 11px;font:800 var(--fs-sm) var(--font);cursor:pointer;white-space:nowrap;transition:filter .15s,transform .1s}
.btn-assess:hover,.btn-assess-submit:hover{filter:brightness(1.08)}
.btn-assess:disabled{opacity:0.6;cursor:not-allowed}
@media (max-width:460px){.assessor-row,.assessor-row.row-2{grid-template-columns:1fr 1fr}.assessor-row .player-in,.assessor-row.row-2 .btn-assess{grid-column:1 / -1}}
.assessor-card,.assessor-result{margin-top:8px;padding:10px 11px;border-radius:10px;border:1px solid var(--line);background:var(--panel)}
.assessor-card.verdict-strong-bet,.assessor-card.verdict-lean,.assessor-result.verdict-strong,.assessor-result.verdict-lean{border-color:rgba(57,255,136,0.45)}
.assessor-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
.assessor-verdict,.assessor-badge{font:800 var(--fs-xs)/1 var(--font);padding:3px 7px;border-radius:999px;background:rgba(57,255,136,0.16);color:#39ff88;letter-spacing:.03em}
.assessor-badge.verdict-pass{background:rgba(255,90,90,0.15);color:var(--bad)}
.assessor-badge.verdict-fair{background:rgba(90,176,255,0.15);color:var(--info)}
.assessor-book{font-size:var(--fs-xs);color:var(--muted)}
.assessor-target{font-size:var(--fs-sm);margin-bottom:6px;color:var(--ink)}
.assessor-metrics,.assessor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;font-size:var(--fs-sm);margin:6px 0;padding:7px 9px;border-radius:8px;background:var(--panel2);font-variant-numeric:tabular-nums}
.assessor-metrics div,.assessor-grid div,.assessor-metric{display:flex;justify-content:space-between;align-items:baseline;gap:6px}
.assessor-metrics span,.assessor-grid span,.assessor-metric .lab{color:var(--muted);font-size:var(--fs-xs)}
.assessor-rationale{font-size:var(--fs-sm);line-height:1.4;color:var(--soft);margin:6px 0}
.assessor-twinkie{font-size:var(--fs-sm);line-height:1.4;color:#ffd15c;margin:5px 0;padding:5px 8px;border-radius:7px;background:rgba(255,209,92,0.07);border:1px solid rgba(255,209,92,0.2)}
.assessor-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:8px}
.btn-paper-bet{background:rgba(57,255,136,0.14);border:1px solid rgba(57,255,136,0.45);color:#39ff88;border-radius:7px;padding:5px 10px;font:700 var(--fs-xs) var(--font);cursor:pointer;transition:background .15s}
.btn-paper-bet:hover{background:rgba(57,255,136,0.24)}
.btn-book-link{font:700 var(--fs-xs) var(--font);color:var(--info);text-decoration:none;padding:4px 8px;border-radius:6px;border:1px solid rgba(90,176,255,0.35);background:rgba(90,176,255,0.08)}
.btn-book-link:hover{border-color:var(--info);color:#fff}
.arb-row{border-left:3px solid #ffd15c;padding:7px 10px;margin:0 0 6px;border-radius:10px;background:var(--panel2);border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer}
.arb-top{display:flex;align-items:center;gap:8px;font-size:var(--fs-md)}
.arb-badge{color:#ffd15c!important;font-weight:800;background:rgba(255,209,92,0.14);padding:2px 6px;border-radius:5px;font-size:var(--fs-xs)}
.mb-row:hover{background:rgba(255,255,255,0.03)}

/* Fix edge/pick row clipping when unit chip is empty (.u0) and allow clean stat wrapping */
.brow:has(>.u0){grid-template-columns:minmax(0,1fr) auto}
.brow>.u0{display:none}
.brow:has(>.u0) .what{grid-column:1}
.brow:has(>.u0) .sub{grid-column:1}
.brow:has(>.u0) .edge{grid-column:2}
.brow .what{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.3}
.brow .sub{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.35}
.brow .edge{white-space:nowrap;padding-left:6px;text-align:right}
.bkchips{padding:0 10px}

/* Question-mark (?) explainer adornment & Clean Live Telemetry Pill */
.help-q{display:inline-grid;place-items:center;width:19px;height:19px;border-radius:50%;background:rgba(90,176,255,0.18);border:1px solid rgba(90,176,255,0.55);color:#82c8ff;font:800 var(--fs-xs)/1 var(--font);text-decoration:none;cursor:pointer;transition:all .15s ease;flex-shrink:0;vertical-align:middle}
.help-q:hover{background:#5ab0ff;color:#081018;border-color:#5ab0ff;box-shadow:0 0 10px rgba(90,176,255,0.5);transform:scale(1.06)}

.telemetry-wrap{position:relative;display:inline-flex;align-items:center}
.telemetry-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;background:rgba(16,26,38,0.92);border:1px solid rgba(57,255,136,0.38);color:var(--ink);font:600 var(--fs-sm)/1 var(--font);cursor:pointer;box-shadow:0 0 12px rgba(57,255,136,0.12);transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;white-space:nowrap;font-variant-numeric:tabular-nums}
.telemetry-pill:hover,.telemetry-pill[aria-expanded=true]{border-color:#39ff88;background:rgba(22,36,52,0.98);box-shadow:0 0 16px rgba(57,255,136,0.24)}
.tp-dot{width:7px;height:7px;border-radius:50%;background:#39ff88;box-shadow:0 0 8px #39ff88;flex-shrink:0}
.tp-dot.tp-pulse{animation:tp-flash .7s ease-out}
@keyframes tp-flash{0%{transform:scale(1.5);box-shadow:0 0 14px #39ff88}100%{transform:scale(1);box-shadow:0 0 8px #39ff88}}
.tp-label{color:var(--soft);font-weight:600}
.tp-ms{color:#39ff88;font-weight:800}
.tp-sep{color:var(--muted);opacity:0.7}
.tp-size{color:#9fd4ff;font-weight:700}
@media (max-width:720px){.tp-label{display:none}}

.telemetry-popover{position:absolute;right:0;top:calc(100% + 8px);width:268px;background:var(--panel);border:1px solid rgba(57,255,136,0.38);border-radius:12px;box-shadow:0 16px 38px rgba(0,0,0,0.68);padding:12px 14px;z-index:1002;box-sizing:border-box}
.telemetry-popover[hidden]{display:none!important}
.tp-pop-title{font:800 var(--fs-sm)/1.2 var(--font);color:#39ff88;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.tp-pop-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:4px 0;font-size:var(--fs-sm);color:var(--soft);font-variant-numeric:tabular-nums}
.tp-pop-row b{color:var(--ink);font-weight:700}
.tp-pop-row b.tp-val-good{color:#39ff88;font-weight:800}
.tp-pop-foot{margin-top:8px;padding-top:7px;border-top:1px solid var(--line);font-size:var(--fs-xs);line-height:1.35;color:var(--muted)}

.net-hud{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;white-space:nowrap;gap:8px;margin:4px 10px 8px;padding:5px 10px;border-radius:999px;background:rgba(14,23,35,0.92);border:1px solid rgba(57,255,136,0.32);font:600 var(--fs-xs)/1.2 var(--font);color:#b8d4f0}
.net-hud .net-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#39ff88;box-shadow:0 0 6px #39ff88;margin-right:6px;vertical-align:1px}
.net-hud .net-pill{padding:2px 8px;border-radius:999px;background:rgba(57,255,136,0.14);color:#39ff88;font-weight:800}

/* AI Line Assessor Best-Bet Chips, Custom Form Accordion & Bet Equation/Deep-Link Accordions */
.assessor-chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 8px}
.assessor-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;font:700 var(--fs-xs)/1.25 var(--font);cursor:pointer;text-decoration:none;transition:all .15s ease;max-width:100%;white-space:normal;text-align:left}
.assessor-chip.best-bet-chip{background:rgba(57,255,136,0.13);border:1px solid rgba(57,255,136,0.45);color:#6bffa8}
.assessor-chip.best-bet-chip:hover{background:rgba(57,255,136,0.24);border-color:#39ff88;color:#fff;box-shadow:0 0 10px rgba(57,255,136,0.28)}
.assessor-chip.twinkie-chip{background:rgba(142,200,255,0.1);border:1px solid rgba(142,200,255,0.35);color:#cfe4ff}
.assessor-chip.twinkie-chip:hover{background:rgba(142,200,255,0.2);border-color:#8ec8ff;color:#fff}

.assessor-acc{border:1px solid var(--line);border-radius:9px;background:rgba(12,18,28,0.65);padding:6px 9px;margin-top:4px}
.assessor-acc-sum{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;font:700 var(--fs-xs)/1.3 var(--font);color:var(--soft);list-style:none}
.assessor-acc-sum::-webkit-details-marker{display:none}
.assessor-acc[open] .assessor-acc-sum{margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--line);color:var(--ink)}

.bet-advice-banner{font:800 var(--fs-xs)/1.35 var(--font);padding:6px 9px;border-radius:7px;margin:5px 0}
.bet-advice-banner.buy{background:rgba(57,255,136,0.13);border:1px solid rgba(57,255,136,0.42);color:#5cff9d}
.bet-advice-banner.pass{background:rgba(158,189,219,0.08);border:1px solid var(--line);color:var(--soft)}

.bet-acc{margin-top:6px;border-top:1px dashed rgba(158,189,219,0.2);padding-top:5px}
.brow .bet-acc{grid-column:1 / -1}
.bet-acc-sum{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font:700 var(--fs-xs)/1.3 var(--font);color:#8ec8ff;list-style:none;user-select:none}
.bet-acc-sum:hover{color:#ffd15c}
.bet-acc-sum::-webkit-details-marker{display:none}
.bet-acc-body{margin-top:6px;padding:7px 9px;border-radius:8px;background:rgba(10,16,25,0.85);border:1px solid rgba(158,189,219,0.18);cursor:default}
.bet-eq-box{font:600 var(--fs-xs)/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#d5e6f8;background:rgba(20,31,47,0.85);border-left:2px solid #ffd15c;padding:6px 8px;border-radius:5px;margin:5px 0;word-break:break-word}
.bet-link-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px}
.btn-copy-slip,.btn-assess-mini{background:var(--panel2);border:1px solid var(--line);color:var(--soft);border-radius:6px;padding:4px 8px;font:700 var(--fs-xs) var(--font);cursor:pointer;transition:all .15s}
.btn-copy-slip:hover,.btn-assess-mini:hover{border-color:#ffd15c;color:#ffd15c}

/* Right-Panel Tab Bar & Unified News/Events Stream */
.rtabs{display:flex;align-items:center;gap:4px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:4px;margin-bottom:10px;position:sticky;top:58px;z-index:12}
.rtab{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;background:transparent;border:1px solid transparent;border-radius:7px;padding:7px 8px;font:700 var(--fs-sm)/1.2 var(--font);color:var(--soft);cursor:pointer;transition:all .15s ease;white-space:nowrap}
.rtab:hover{color:var(--ink);background:rgba(255,255,255,0.04)}
.rtab.on{background:var(--panel2);border-color:rgba(255,209,92,0.45);color:#ffd15c;box-shadow:0 2px 8px rgba(0,0,0,0.35)}
.rtab-n{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:16px;padding:0 5px;border-radius:999px;font:800 var(--fs-xs)/1 var(--font);background:rgba(158,189,219,0.16);color:var(--ink)}
.rtab.on .rtab-n{background:rgba(255,209,92,0.22);color:#ffd15c}

.news-filters{display:flex;align-items:center;gap:6px;padding:6px 12px;border-bottom:1px solid var(--line);background:rgba(12,18,28,0.45)}
.nf-chip{background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:3px 10px;font:700 var(--fs-xs)/1.2 var(--font);color:var(--soft);cursor:pointer;transition:all .15s}
.nf-chip:hover{color:var(--ink);border-color:var(--soft)}
.nf-chip.on{background:rgba(93,176,255,0.16);border-color:rgba(93,176,255,0.55);color:#8ec8ff}

.st.ev{background:rgba(57,255,136,0.16);color:#5cff9d;border:1px solid rgba(57,255,136,0.35)}
.ev-item{background:rgba(57,255,136,0.03);border-left:2px solid rgba(57,255,136,0.5)}
#right #news .list{max-height:74vh;overflow-y:auto}

/* Unified Players, Simulated Ranges & Prop Ladders 2-Column Grid */
.pl-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:8px 14px;border-bottom:1px solid var(--line);background:rgba(12,18,28,0.45)}
.pl-toolbar .hint{padding:0}
.players-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px}
@media (max-width:760px){.players-grid{grid-template-columns:1fr}}

.lad.pl-card{display:flex;flex-direction:column;justify-content:space-between;padding:11px 13px;transition:border-color .15s ease,transform .15s ease}
.lad.pl-card:hover{border-color:rgba(158,189,219,0.42)}
.lad.pl-card.out{opacity:0.55}
.pl-card-top{margin-bottom:4px}
.pl-tm{display:inline-flex;align-items:center;padding:2px 6px;border-radius:4px;background:rgba(158,189,219,0.14);color:#9fd4ff;font:800 var(--fs-xs)/1 var(--font);letter-spacing:.03em;margin-right:4px}
.pl-SimRange-wrap{margin:6px 0 6px;padding:6px 8px;border-radius:8px;background:rgba(10,16,25,0.65);border:1px solid rgba(158,189,219,0.12)}
.pl-SimRange-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:var(--fs-xs);color:var(--soft);margin-bottom:4px}
.pl-SimRange-head b{color:var(--ink);font-size:var(--fs-xs)}
.pl-mini-stats{display:flex;flex-wrap:wrap;gap:5px;margin-top:3px;font:600 var(--fs-sm)/1.35 var(--font);color:var(--soft);font-variant-numeric:tabular-nums}
.pl-ms{display:inline-flex;align-items:baseline;gap:3px;padding:2px 7px;border-radius:5px;background:rgba(255,255,255,0.04);border:1px solid rgba(158,189,219,0.12);font-size:var(--fs-xs);color:var(--soft);font-variant-numeric:tabular-nums}
.pl-ms b{color:var(--ink);font-weight:700}
.pl-ms.on{background:rgba(255,209,92,0.12);border-color:rgba(255,209,92,0.38);color:#ffd15c}
.pl-ms.on b{color:#ffd15c}

.pl-more-wrap{padding:4px 12px 12px;text-align:center}
.pl-more-btn{width:100%;padding:8px 14px;border-radius:8px;background:var(--panel2);border:1px dashed rgba(158,189,219,0.32);color:#9fd4ff;font:700 var(--fs-sm) var(--font);cursor:pointer;transition:all .15s}
.pl-more-btn:hover{border-color:#ffd15c;color:#ffd15c;background:rgba(255,209,92,0.08)}

/* 2-Column What-If Grid for Compact Pregame View */
.wi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 12px}
.wi-grid .wi{margin:0}
@media (max-width:760px){.wi-grid{grid-template-columns:1fr}}

/* Hoop Engine Score Prediction Card (10,000 Monte Carlo Runs) */
.score-pred-card{margin:10px 12px;padding:12px 14px;border-radius:14px;background:linear-gradient(180deg,rgba(90,176,255,0.08) 0%,var(--panel2) 100%);border:1px solid rgba(90,176,255,0.32)}
.spc-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 10px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(226,235,245,0.12)}
.spc-title{font:800 var(--fs-sm)/1.2 var(--font);letter-spacing:.04em;text-transform:uppercase;color:#8ec8ff}
.spc-runs{font:700 var(--fs-xs)/1.2 var(--font);color:var(--good);background:rgba(57,255,136,0.12);border:1px solid rgba(57,255,136,0.34);border-radius:999px;padding:3px 9px}
.spc-board{padding:4px 6px 2px}
.spc-team{display:flex;flex-direction:column;align-items:center;gap:2px}
.spc-team .spc-name{font:700 var(--fs-md)/1.2 var(--font);color:var(--ink)}
.spc-team .spc-dec{font:600 var(--fs-sm)/1.2 var(--font);color:var(--soft);font-variant-numeric:tabular-nums}
.spc-meta{margin-top:8px;padding-top:6px;border-top:1px dashed rgba(226,235,245,0.14);font:600 var(--fs-sm)/1.35 var(--font);color:var(--soft);text-align:center}
.score-pred-card .proj{padding:0;margin:4px 0 0;justify-content:center;font-size:var(--fs-lg)}
.score-pred-card .proj b{font-size:var(--fs-xl);font-weight:800}

/* Why Hoop Sees the Upset / Edge Thesis Callout + SOTA AI Model Evidence */
.upset-thesis{margin:10px 12px;padding:12px 14px;border-radius:14px;background:var(--panel2);border:1px solid var(--line)}
.upset-thesis.is-upset{background:linear-gradient(180deg,rgba(255,176,32,0.11) 0%,var(--panel2) 140px);border:1px solid rgba(255,176,32,0.45);box-shadow:0 0 18px rgba(255,176,32,0.08)}
.ut-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 10px;margin-bottom:8px}
.ut-badge{font:800 var(--fs-md)/1.2 var(--font);padding:6px 12px}
.ut-sub{font:700 var(--fs-sm)/1.2 var(--font);color:#ffd15c}
.ut-lead{margin:6px 0 8px;font:600 var(--fs-md)/1.45 var(--font);color:var(--ink)}
.ut-evidence{margin:0 0 10px;padding-left:18px;font-size:var(--fs-md);line-height:1.45;color:var(--soft)}
.ut-evidence li{margin:4px 0}
.ut-ai-head{margin:10px 0 8px;padding-top:8px;border-top:1px solid rgba(226,235,245,0.14);font:800 var(--fs-sm)/1.3 var(--font);letter-spacing:.04em;text-transform:uppercase;color:#8ec8ff;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}
.ut-ai-head small{text-transform:none;letter-spacing:0;font-weight:600;font-size:var(--fs-sm);color:var(--soft)}
.upset-thesis .factors{padding:0}
.upset-thesis .fine{padding:0;margin:6px 0 2px}

/* Subtle secondary simulation tail outcomes line (Overtime / Blowout) */
.sim-tail{margin:8px 14px 6px;padding:6px 10px;border-radius:8px;background:rgba(255,255,255,0.03);border:1px solid rgba(226,235,245,0.1);font:600 var(--fs-sm)/1.35 var(--font);color:var(--soft)}

/* Matchup & Probabilistic Rotation Simulator */
.tw-lab{display:flex;flex-direction:column;gap:10px;padding:10px 12px 14px;border-bottom:1px solid var(--line)}
.tw-qa-wrap{padding-top:6px}
.tw-qa-head{padding:6px 14px 2px;margin:0;color:var(--ink);font-size:var(--fs-md);display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px}
.tw-qa-head small{color:var(--soft);font-size:var(--fs-xs);font-weight:500}
.tw-scheme-group{display:inline-flex;align-items:center;gap:6px;background:rgba(9,14,22,0.75);padding:3px 7px;border-radius:7px;border:1px solid var(--line)}
.tw-scheme-label{font:700 var(--fs-xs)/1 var(--font);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.tw-scheme-sel{background:var(--panel);color:var(--ink);border:1px solid rgba(148,163,184,0.28);border-radius:5px;padding:3px 7px;font:600 var(--fs-xs) var(--font);cursor:pointer;outline:none}
.tw-scheme-sel:focus{border-color:#8ec8ff}
.tw-btn-sim{display:inline-flex;align-items:center;gap:5px;padding:6px 13px;border-radius:7px;border:1px solid rgba(96,165,250,0.45);background:rgba(37,99,235,0.28);color:#e2e8f0;font:700 var(--fs-xs)/1 var(--font);cursor:pointer;transition:background .12s,border-color .12s}
.tw-btn-sim:hover{background:rgba(37,99,235,0.42);border-color:#93c5fd;color:#fff}
.tw-btn-sim.running{background:rgba(16,185,129,0.24);border-color:rgba(52,211,153,0.55);color:#6ee7b7}
.tw-btn-reset{padding:6px 10px;border-radius:7px;border:1px solid var(--line);background:var(--panel2);color:var(--soft);font:600 var(--fs-xs)/1 var(--font);cursor:pointer;transition:all .12s}
.tw-btn-reset:hover{border-color:rgba(148,163,184,0.45);color:var(--ink)}

/* Quick Scenario Preset Bar */
.tw-presets{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.tw-preset-lbl{font:700 var(--fs-xs)/1 var(--font);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-right:2px}
.tw-preset-chip{padding:4px 10px;border-radius:6px;border:1px solid var(--line);background:var(--panel2);color:var(--soft);font:600 var(--fs-xs)/1.2 var(--font);cursor:pointer;transition:all .12s}
.tw-preset-chip:hover{border-color:rgba(148,163,184,0.45);color:var(--ink)}
.tw-preset-chip.active{background:rgba(59,130,246,0.16);border-color:rgba(96,165,250,0.55);color:#e2e8f0}

/* Consolidated Score + Confidence + Controls Header */
.tw-stage-full{display:flex;flex-direction:column;gap:8px;width:100%}
.tw-score-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:8px 12px;border-radius:9px;background:var(--panel2);border:1px solid var(--line);font-variant-numeric:tabular-nums}
.tw-sh-left{display:flex;align-items:center;flex-wrap:wrap;gap:9px}
.tw-sh-main{display:inline-flex;align-items:baseline;gap:7px;font:800 var(--fs-lg)/1.1 var(--font);color:var(--ink)}
.tw-sh-sep{font:600 var(--fs-xs)/1 var(--font);color:var(--muted);text-transform:uppercase}
.tw-sh-win{padding:3px 8px;border-radius:6px;background:rgba(255,255,255,0.04);border:1px solid var(--line);color:var(--ink);font:600 var(--fs-xs)/1.15 var(--font)}
.tw-sh-delta{padding:3px 8px;border-radius:6px;background:transparent;border:1px solid rgba(255,255,255,0.08);color:var(--muted);font:600 var(--fs-xs)/1.15 var(--font)}
.tw-sh-delta.active{background:rgba(16,185,129,0.12);border-color:rgba(52,211,153,0.38);color:#6ee7b7}
.tw-sh-right{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;margin-left:auto}
.tw-ci-cluster{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:6px;background:rgba(9,14,22,0.65);border:1px solid var(--line)}
.tw-th-tube{position:relative;height:7px;border-radius:999px;background:#090f18;border:1px solid rgba(255,255,255,0.12);overflow:hidden}
.tw-th-tube-compact{width:64px}
.tw-th-mercury{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#3b82f6 0%,#34d399 100%);transition:width .05s linear}
.tw-sh-caliper{font:600 var(--fs-xs)/1.1 var(--font);color:var(--soft)}
.tw-th-status{font:700 var(--fs-xs)/1 var(--font);color:var(--muted);font-variant-numeric:tabular-nums}
.tw-th-status.locked{color:#6ee7b7}

/* Proportional Half-Court Card + Double-Click Expand Mode */
.tw-gl-card{position:relative;width:100%;border-radius:10px;background:#070c14;border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column}
.tw-gl-card.expanded{position:fixed;inset:16px;z-index:1200;width:auto;height:auto;border-radius:14px;border-color:rgba(148,163,184,0.45);box-shadow:0 24px 64px rgba(0,0,0,0.88)}
.tw-gl-card.expanded .tw-gl-viewport{flex:1;height:auto;min-height:460px}
body.tw-court-expanded-open{overflow:hidden}
.tw-gl-viewport{position:relative;width:100%;height:390px;background:#060b14;border-top:1px solid rgba(148,163,184,0.14);border-bottom:1px solid rgba(148,163,184,0.14);overflow:hidden;cursor:pointer}
.tw-gl-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.tw-gl-hud-top{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:7px 12px;background:#0a111d}
.tw-gl-hud-left{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.tw-gl-matchup{font:700 var(--fs-xs)/1.1 var(--font);color:var(--ink);letter-spacing:.02em}
.tw-gl-controls{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;pointer-events:auto}
.tw-flip-btn,.tw-expand-btn{padding:4px 9px;border-radius:6px;border:1px solid rgba(148,163,184,0.28);background:rgba(255,255,255,0.04);color:var(--soft);font:600 var(--fs-xs)/1.1 var(--font);cursor:pointer;transition:all .12s;display:inline-flex;align-items:center;gap:4px}
.tw-flip-btn:hover,.tw-expand-btn:hover{background:rgba(255,255,255,0.09);border-color:rgba(148,163,184,0.55);color:var(--ink)}
.tw-gl-legend{display:inline-flex;align-items:center;gap:10px;font:600 var(--fs-xs)/1 var(--font);color:var(--muted)}
.tw-gl-legend i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:4px}
.tw-gl-rings-bar{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px}
.tw-ring-pill{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:6px;font:600 var(--fs-xs)/1.15 var(--font);font-variant-numeric:tabular-nums;background:rgba(255,255,255,0.03);border:1px solid rgba(148,163,184,0.2);color:var(--soft)}
.tw-ring-pill b{color:var(--ink);font-weight:600}
.tw-ring-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#64748b}
.tw-ring-pill.ring-hot{background:rgba(239,68,68,0.14);border-color:rgba(248,113,113,0.45);color:#fca5a5}
.tw-ring-pill.ring-hot .tw-ring-dot{background:#f87171}
.tw-ring-pill.ring-cool{background:rgba(56,189,248,0.12);border-color:rgba(56,189,248,0.4);color:#bae6fd}
.tw-ring-pill.ring-cool .tw-ring-dot{background:#38bdf8}
.tw-gl-nodes{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.tw-gl-tag{position:absolute;transform:translate(-50%,-50%);padding:2px 6px;border-radius:5px;background:rgba(8,13,22,0.90);border:1px solid rgba(148,163,184,0.32);color:var(--ink);font:600 var(--fs-xs)/1.15 var(--font);white-space:nowrap;font-variant-numeric:tabular-nums;box-shadow:0 2px 6px rgba(0,0,0,0.45);transition:border-color .15s}
.tw-gl-tag small{display:block;font:500 var(--fs-xs)/1.05 var(--font);color:var(--soft)}
.tw-gl-hud-bot{position:relative;z-index:2;padding:6px 12px;background:#0a111d;font:500 var(--fs-xs)/1.3 var(--font);color:var(--muted);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}

/* Transient 3-5s Simulation Footer Advisory */
.tw-sim-advisory{font:600 var(--fs-xs)/1.25 var(--font);color:var(--soft);background:var(--panel2);border:0 solid var(--line);border-radius:7px;padding:0 12px;max-height:0;opacity:0;overflow:hidden;pointer-events:none;font-variant-numeric:tabular-nums;transition:opacity .35s ease,max-height .35s ease,padding .35s ease,border-width .35s ease}
.tw-sim-advisory.active{padding:6px 12px;max-height:42px;opacity:1;border-width:1px}

/* Opposing Coach Probabilistic Counter-Rotation Banner */
.tw-coach-banner{padding:9px 12px;border-radius:9px;background:var(--panel2);border:1px solid var(--line);display:flex;flex-direction:column;gap:4px}
.tw-cb-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px;font:700 var(--fs-xs)/1.2 var(--font);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.tw-cb-body{font:500 var(--fs-sm)/1.4 var(--font);color:var(--ink)}
.tw-cb-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.tw-cb-pill{padding:2px 8px;border-radius:5px;background:rgba(8,14,22,0.65);border:1px solid var(--line);font:500 var(--fs-xs)/1.25 var(--font);color:var(--soft);font-variant-numeric:tabular-nums}
.tw-cb-pill b{color:var(--ink)}

/* Interactive Drag-and-Drop / Click-Swap Player Matchup Boxes */
.tw-rosters-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media (max-width:780px){.tw-rosters-grid{grid-template-columns:1fr}}
.tw-team-col{border-radius:12px;background:var(--panel2);border:1px solid var(--line);padding:10px;display:flex;flex-direction:column;gap:8px}
.tw-tc-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.tw-tc-head b{font:800 var(--fs-md)/1.2 var(--font);color:var(--ink)}
.tw-tc-head small{font:600 var(--fs-xs)/1.2 var(--font);color:var(--soft)}
.tw-tier-zone{border-radius:9px;background:rgba(8,13,21,0.55);border:1px dashed rgba(158,189,219,0.22);padding:7px;display:flex;flex-direction:column;gap:6px;transition:border-color .15s,background .15s}
.tw-tier-zone.drag-over{border-color:#ffd15c;background:rgba(255,209,92,0.09)}
.tw-tier-hdr{display:flex;align-items:center;justify-content:space-between;font:700 var(--fs-xs)/1 var(--font);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:0 2px}
.tw-pbox-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:6px}
.tw-pbox{position:relative;display:flex;flex-direction:column;gap:4px;padding:7px 8px;border-radius:8px;background:var(--panel);border:1px solid var(--line);cursor:grab;user-select:none;transition:border-color .12s,transform .12s,box-shadow .12s}
.tw-pbox:hover{border-color:rgba(255,209,92,0.55);transform:translateY(-1px);z-index:8}
.tw-pbox.modified{border-color:#ffd15c;box-shadow:0 0 10px rgba(255,209,92,0.18)}
.tw-pbox.role-sit{opacity:0.58;border-style:dashed}
.tw-pbox-top{display:flex;align-items:center;justify-content:space-between;gap:5px}
.tw-pbox-name{font:700 var(--fs-sm)/1.2 var(--font);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tw-pbox-pos{font:700 var(--fs-xs)/1 var(--font);color:var(--muted);padding:2px 5px;border-radius:4px;background:rgba(255,255,255,0.05)}
.tw-pbox-mid{display:flex;align-items:baseline;justify-content:space-between;gap:4px;font:600 var(--fs-xs)/1.2 var(--font);color:var(--soft);font-variant-numeric:tabular-nums}
.tw-pbox-mid b{color:#ffd15c;font-weight:800}
.tw-pbox-def{font:500 var(--fs-xs)/1.15 var(--font);color:#8ec8ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tw-pbox-btns{display:flex;gap:4px;margin-top:2px}
.tw-role-btn{flex:1;padding:3px 4px;border-radius:5px;border:1px solid var(--line);background:var(--panel2);color:var(--soft);font:700 var(--fs-xs)/1 var(--font);cursor:pointer;transition:all .1s}
.tw-role-btn:hover{border-color:var(--soft);color:var(--ink)}
.tw-role-btn.on-starter{background:rgba(57,255,136,0.15);border-color:#39ff88;color:#39ff88}
.tw-role-btn.on-bench{background:rgba(142,200,255,0.15);border-color:#8ec8ff;color:#8ec8ff}
.tw-role-btn.on-cap{background:rgba(255,209,92,0.18);border-color:#ffd15c;color:#ffd15c}
.tw-role-btn.on-sit{background:rgba(255,92,92,0.18);border-color:var(--bad);color:var(--bad)}

/* Key 2nd-Order Alpha Footer on Select Player Boxes with '?' Causal Popover */
.tw-pbox-alpha{position:relative;display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:3px;padding:3px 6px;border-radius:6px;background:rgba(57,255,136,0.11);border:1px solid rgba(57,255,136,0.38);font:700 var(--fs-xs)/1.15 var(--font);color:#39ff88;font-variant-numeric:tabular-nums}
.tw-pbox-alpha.tone-hot{background:rgba(255,59,71,0.15);border-color:rgba(255,72,88,0.52);color:#ff8a93}
.tw-pbox-alpha.tone-vac{background:rgba(255,209,92,0.13);border-color:rgba(255,209,92,0.44);color:#ffd15c}
.tw-alpha-txt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tw-alpha-q{flex-shrink:0;width:15px;height:15px;border-radius:50%;border:1px solid currentColor;background:rgba(7,12,20,0.85);color:inherit;font:800 10px/1 var(--font);display:inline-flex;align-items:center;justify-content:center;cursor:help;padding:0;transition:transform .12s,background .12s}
.tw-alpha-q:hover{transform:scale(1.12);background:rgba(255,255,255,0.14)}
.tw-alpha-pop{display:none;position:absolute;left:0;right:0;bottom:calc(100% + 5px);z-index:30;padding:7px 9px;border-radius:7px;background:#070d17;border:1px solid rgba(255,209,92,0.55);color:var(--ink);font:600 var(--fs-xs)/1.35 var(--font);white-space:normal;box-shadow:0 6px 18px rgba(0,0,0,0.75);pointer-events:none}
.tw-pbox-alpha:hover .tw-alpha-pop,.tw-alpha-q:focus + .tw-alpha-pop,.tw-alpha-pop.open{display:block}

/* Tabular Matchup & Market Edge Convergence Table */
.tw-table-card{border-radius:12px;background:var(--panel2);border:1px solid var(--line);overflow:hidden}
.tw-table-hdr{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:9px 12px;border-bottom:1px solid var(--line)}
.tw-table-hdr b{font:800 var(--fs-sm)/1.2 var(--font);color:var(--ink);text-transform:uppercase;letter-spacing:.03em}
.tw-table-hdr small{font:600 var(--fs-xs)/1.2 var(--font);color:var(--soft)}
.tw-table-scroll{overflow-x:auto}
.tw-table{width:100%;border-collapse:collapse;font:600 var(--fs-xs)/1.3 var(--font);font-variant-numeric:tabular-nums}
.tw-table th{text-align:left;padding:7px 9px;background:rgba(8,13,21,0.75);color:var(--muted);font:700 var(--fs-xs)/1.1 var(--font);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line);white-space:nowrap}
.tw-table th.num,.tw-table td.num{text-align:right}
.tw-table td{padding:7px 9px;border-bottom:1px solid rgba(226,235,245,0.07);color:var(--soft);white-space:nowrap}
.tw-table tr:last-child td{border-bottom:none}
.tw-table tr:hover td{background:rgba(255,255,255,0.025)}
.tw-table tr.row-modified td{background:rgba(255,209,92,0.05)}
.tw-table tr.row-sit td{opacity:0.48}
.tw-td-player{display:flex;align-items:center;gap:6px;font:700 var(--fs-sm)/1.2 var(--font);color:var(--ink)}
.tw-td-tm{padding:2px 5px;border-radius:4px;background:rgba(158,189,219,0.14);color:#9fd4ff;font:800 var(--fs-xs)/1 var(--font)}
.tw-td-val{font:800 var(--fs-sm)/1.1 var(--font);color:var(--ink)}
.tw-td-delta{margin-left:4px;font:700 var(--fs-xs)/1 var(--font)}
.tw-td-delta.up{color:var(--good)}
.tw-td-delta.down{color:var(--bad)}
.tw-td-band{display:block;font:500 var(--fs-xs)/1.1 var(--font);color:var(--muted)}
.tw-edge-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:999px;font:800 var(--fs-xs)/1.2 var(--font)}
.tw-edge-pill.buy{background:rgba(57,255,136,0.16);color:#39ff88;border:1px solid rgba(57,255,136,0.4)}
.tw-edge-pill.lean{background:rgba(255,209,92,0.15);color:#ffd15c;border:1px solid rgba(255,209,92,0.38)}
.tw-edge-pill.neutral{background:rgba(255,255,255,0.05);color:var(--muted);border:1px solid transparent}
