:root{--bg:#07090d;--bg2:#0c1016;--card:#0f141b;--card2:#131a23;--line:#1d2632;--line2:#283342;--tx:#e8edf3;--tx2:#9aa7b6;--tx3:#6b7787;--acc:#7c9cff;--acc2:#36e0b4;--up:#2fd18b;--dn:#ff6470;--warn:#f5c451;--r:14px;--mono:'JetBrains Mono',ui-monospace,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:15px/1.6 Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:radial-gradient(1200px 500px at 70% -10%,#16204066,transparent),var(--bg);color:var(--tx);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01","tnum"}
a{color:var(--acc)}.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.top{position:sticky;top:0;z-index:10;backdrop-filter:blur(14px);background:#07090dcc;border-bottom:1px solid var(--line)}
.top-in{display:flex;align-items:center;gap:28px;height:62px}
.brand{display:flex;align-items:center;gap:10px;color:var(--tx);text-decoration:none;font-weight:700;font-size:19px;letter-spacing:-.02em}.logo{width:28px;height:28px;flex:none}.brand span{font:500 20px var(--mono);letter-spacing:-.04em;text-transform:lowercase}.logo .orb{animation:glide 4.5s ease-in-out infinite alternate}@keyframes glide{from{transform:translate(0,0)}to{transform:translate(1px,-1px)}}@media(prefers-reduced-motion:reduce){.logo .orb{animation:none}}
nav{display:flex;gap:20px}nav a{color:var(--tx2);text-decoration:none;font-size:14px;font-weight:500}nav a:hover{color:var(--tx)}
.status{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--tx2)}
.status .dot{width:8px;height:8px;border-radius:50%;background:var(--up);box-shadow:0 0 0 3px #2fd18b26}.status .dot.warn{background:var(--warn);box-shadow:0 0 0 3px #f5c45126}
.hero{padding:56px 0 26px}.hero h1{margin:0;font-size:44px;line-height:1.1;letter-spacing:-.035em;font-weight:700;background:linear-gradient(90deg,#fff,#b9c6ff 60%,#7fe9cc);-webkit-background-clip:text;background-clip:text;color:transparent}
.sub{color:var(--tx2);font-size:16.5px;max-width:640px;margin:12px 0 26px}
.ask{background:var(--card);border:1px solid var(--line2);border-radius:18px;padding:10px;box-shadow:0 20px 60px -30px #000}
.ask-row{display:flex;gap:10px}.ask input{font:inherit;color:var(--tx);background:transparent;border:0;outline:0}
#q{flex:1;font-size:17px;padding:12px 14px;min-width:0}
#go{border:0;border-radius:12px;padding:0 28px;font:600 15px Inter,sans-serif;color:#061019;background:linear-gradient(135deg,var(--acc),var(--acc2));cursor:pointer;transition:filter .15s,transform .05s}#go:hover{filter:brightness(1.08)}#go:active{transform:translateY(1px)}#go:disabled{opacity:.55;cursor:wait}
.ask-opts{display:flex;gap:14px;align-items:center;border-top:1px solid var(--line);margin-top:8px;padding:8px 6px 2px}#opts{flex:1;font-size:13.5px;padding:6px 8px;min-width:0}#opts::placeholder,#q::placeholder{color:var(--tx3)}
.switch{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--tx2);cursor:pointer;white-space:nowrap;user-select:none}.switch input{display:none}
.switch i{width:32px;height:18px;border-radius:99px;background:var(--line2);position:relative;transition:.2s}.switch i:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#cfd6df;transition:.2s}
.switch input:checked+i{background:var(--acc)}.switch input:checked+i:after{left:16px;background:#fff}
.examples{display:flex;flex-wrap:wrap;gap:8px;padding:10px 6px 4px}.examples button{font:500 12.5px Inter,sans-serif;color:var(--tx2);background:var(--bg2);border:1px solid var(--line);border-radius:99px;padding:5px 12px;cursor:pointer}.examples button:hover{color:var(--tx);border-color:var(--line2)}
.timing{font-size:12px;color:var(--tx3);margin-top:10px;min-height:18px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-bottom:30px}.span2{grid-column:span 2}.span3{grid-column:1/-1}
.card{background:linear-gradient(180deg,var(--card),var(--bg2));border:1px solid var(--line);border-radius:var(--r);padding:20px 22px 14px;display:flex;flex-direction:column;min-width:0}
.card-h{display:flex;align-items:baseline;gap:10px;margin-bottom:12px;flex-wrap:wrap}.card h2{margin:0;font-size:17px;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:#f3f5f8;line-height:1.25;overflow-wrap:anywhere;min-width:0;border-left:3px solid #ffb000;padding-left:8px}.card-h small{color:var(--tx3);font-size:12.5px}
.body{flex:1}.muted{color:var(--tx3)}#answer{white-space:pre-wrap;font-size:15.5px;line-height:1.7;color:#dbe3ec}
.meta{font-size:12px;color:var(--tx3);margin-top:10px}
.attr{margin-top:16px;padding-top:11px;border-top:1px solid var(--line);font-size:12.5px;color:var(--tx2)}.attr a{color:var(--tx);font-weight:600;text-decoration:none;border-bottom:1px solid var(--line2)}.attr a:hover{border-color:var(--acc)}
.notice{background:#f5c4510f;border:1px solid #f5c45140;color:#f3d48a;padding:9px 12px;border-radius:10px;margin:6px 0;font-size:13.5px}.notice.err{background:#ff64700d;border-color:#ff647040;color:#ffb3b9}
.sk{border-radius:10px;background:linear-gradient(90deg,var(--card2) 0,#1a2330 40%,var(--card2) 80%);background-size:200% 100%;animation:sh 1.3s infinite linear;height:14px;margin:8px 0}@keyframes sh{to{background-position:-200% 0}}
.bar{display:flex;height:30px;border-radius:8px;overflow:hidden;margin:8px 0 6px;background:var(--card2)}.bar div{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;color:#fff}
.pq{margin-bottom:14px}.pq b{font-size:13.5px;font-weight:600}
.legend{font-size:12.5px;color:var(--tx2);line-height:1.8}.legend span{margin-right:14px}.legend i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:6px}
.fchead{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px}.fchead .nm{font-size:18px;font-weight:600;color:var(--tx)}.kpis{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 4px}
.kpi{background:var(--card2);border:1px solid var(--line);border-radius:10px;padding:8px 14px;min-width:120px}.kpi span{display:block;font-size:11px;color:var(--tx3);text-transform:uppercase;letter-spacing:.06em}.kpi b{font:500 16px var(--mono)}
svg text{fill:var(--tx3);font-size:11px;font-family:Inter,sans-serif}#chart h3{font-size:12px;color:var(--tx2);text-transform:uppercase;letter-spacing:.06em;margin:16px 0 4px;font-weight:600}
table{width:100%;border-collapse:collapse;font-size:13.5px}th,td{text-align:left;padding:10px 10px;border-bottom:1px solid var(--line)}th{color:var(--tx3);font-weight:500;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em}
td.n,th.n{text-align:right;font-family:var(--mono);font-size:13px}tr[data-q]{cursor:pointer;transition:background .12s}tr[data-q]:hover{background:#ffffff06}
.tbl{overflow-x:auto;margin:0 -10px}.up{color:var(--up)}.dn{color:var(--dn)}
ul.news{list-style:none;margin:0;padding:0;display:grid;gap:2px}ul.news li{padding:10px 0;border-bottom:1px solid var(--line)}ul.news a{color:var(--tx);text-decoration:none}ul.news a:hover{color:#c5d1ff}.nwho{font-size:12px;color:var(--tx3);margin-top:2px}
.ncol{display:grid;grid-template-columns:1fr 1fr;gap:28px}.ncol h4{margin:6px 0 4px;font-size:13px;color:var(--tx2);font-weight:600}
.tag{font-size:10.5px;font-weight:600;padding:2px 7px;border-radius:5px;margin-right:6px;letter-spacing:.03em;vertical-align:1px}.t-x{background:#7c9cff1f;color:#a9bcff}.t-reddit{background:#ff8a4c1f;color:#ffab7d}.t-web{background:#2fd18b1c;color:#6fe3ad}
.risk{font-size:11.5px;padding:2px 9px;border-radius:99px;font-weight:600;display:inline-flex;align-items:center;gap:5px}.risk:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}
.r-low{background:#2fd18b17;color:var(--up)}.r-medium{background:#f5c45117;color:var(--warn)}.r-high{background:#ff647017;color:var(--dn)}
.pf-top{display:grid;grid-template-columns:auto 1fr;gap:28px;margin-bottom:18px;align-items:start}.pf-donut{display:flex;gap:18px;align-items:center}.pf-sum{font-size:14.5px;color:#d3dbe5}.pf-sum p{margin:6px 0 12px}
.riskbar{display:flex;gap:8px;margin:4px 0 12px;flex-wrap:wrap}.riskbar div{background:var(--card2);border:1px solid var(--line);border-radius:10px;padding:8px 14px;font-size:12.5px;color:var(--tx2)}.riskbar b{font:600 15px var(--mono);margin-right:6px}
.wbar{height:5px;border-radius:9px;background:var(--line);margin-top:5px;width:70px}.wbar i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,var(--acc),var(--acc2))}
.sw{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:7px;vertical-align:middle}.changes{font-size:12.5px;color:var(--tx2);margin-top:6px}.pf td.why{font-size:12.5px;max-width:380px;color:var(--tx2);line-height:1.5}.nowrap{white-space:nowrap}.ar{font:12px var(--mono);margin-right:3px;color:var(--tx2)}
footer{color:var(--tx3);font-size:12.5px;padding:24px;text-align:center;border-top:1px solid var(--line)}
@media (max-width:900px){.grid{grid-template-columns:1fr}.span2,.span3{grid-column:auto}.pf-top{grid-template-columns:1fr}.ncol{grid-template-columns:1fr}}
@media (max-width:640px){.wrap{padding:0 14px}nav{display:none}.hero{padding:30px 0 16px}.hero h1{font-size:32px}.sub{font-size:15px}.ask-row{flex-direction:column}#go{height:46px}.ask-opts{flex-direction:column;align-items:stretch}.card{padding:16px 14px 12px}.status .lbl{display:none}.pf-donut{flex-direction:column;align-items:flex-start}td.why{min-width:220px}}

.tape{border-top:1px solid var(--line);background:#0a0d12cc;overflow:hidden}.tape-in{display:flex;gap:26px;height:34px;align-items:center;overflow-x:auto;scrollbar-width:none;white-space:nowrap;font-size:12.5px}.tape-in::-webkit-scrollbar{display:none}
.tk{display:inline-flex;gap:7px;align-items:baseline}.tk span{color:var(--tx3);font-weight:500}.tk b{font:500 12.5px var(--mono);color:var(--tx)}.tk em{font:500 12px var(--mono);font-style:normal}
.snq{margin-left:auto;background:var(--bg2);border:1px solid var(--line2);border-radius:9px;color:var(--tx);font:13px Inter,sans-serif;padding:7px 11px;width:200px;outline:0}.snq:focus{border-color:var(--acc)}
.sntbl{max-height:560px;overflow:auto;margin:0 -10px;border-top:1px solid var(--line)}.sntbl table th{position:sticky;top:0;background:#0e131a;z-index:1;cursor:pointer;user-select:none;white-space:nowrap}.sntbl th:hover{color:var(--tx)}.sntbl th.on{color:var(--acc)}
.sntbl td{padding:8px 10px}.sntbl td:nth-child(2){max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mx h4{margin:14px 0 6px;font-size:11.5px;color:var(--tx3);font-weight:600;letter-spacing:.07em;text-transform:uppercase}.mx h4:first-child{margin-top:0}
.mrow{display:flex;justify-content:space-between;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--line);font-size:13.5px}.mrow span{color:var(--tx2)}.mrow b{font:500 13px var(--mono)}.mrow em{font:500 12px var(--mono);font-style:normal;margin-left:8px;min-width:54px;display:inline-block;text-align:right}
.mrow small{display:block;color:var(--tx3);font-size:11.5px}.fedbox{background:var(--card2);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:13px;color:var(--tx2)}.fedbox b{color:var(--tx);font:600 18px var(--mono);display:block}
.mnews{list-style:none;margin:0;padding:0}.mnews li{padding:7px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.45}.mnews a{color:var(--tx);text-decoration:none}.mnews a:hover{color:#c5d1ff}.mnews small{display:block;color:var(--tx3);font-size:11.5px}
@media (max-width:640px){.snq{width:100%;margin-left:0}.sntbl{max-height:460px}}
#subnets{position:relative;min-height:560px}#subnets .sntbl{position:absolute;inset:0;max-height:none;margin:0 -10px}
@media (max-width:900px){#subnets{min-height:480px}}
.sntbl td,.sntbl th{padding:8px 7px}.sntbl td.n{font-size:12.5px}.sntbl td:nth-child(2){max-width:150px}
.riskcell{min-width:170px;max-width:220px}.riskcell .risk{white-space:nowrap}.watch{font-size:11.5px;color:var(--tx3);margin-top:6px;line-height:1.45}.watch b{color:var(--warn);font-weight:600}
/* ===== v3: fluid terminal layout ===== */
:root{--glass:rgba(17,23,32,.62);--glow:0 0 0 1px #7c9cff14,0 18px 50px -28px #000}
body{background:radial-gradient(900px 480px at 85% -8%,#2a3b8a33,transparent 60%),radial-gradient(800px 500px at -5% 30%,#0f6b5a22,transparent 60%),linear-gradient(#07090d,#07090d)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse at 50% 0,#000 30%,transparent 75%);z-index:-1}
.wrap{max-width:1840px;padding:0 clamp(14px,2.4vw,40px)}
.dash{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:22px;align-items:start;padding-top:8px}
.col-main{min-width:0}.rail{position:sticky;top:112px;min-width:0}.rail .card{max-height:calc(100vh - 130px);overflow:auto;scrollbar-width:thin}
.lower{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:22px;padding-bottom:30px;align-items:stretch}
.grid{gap:20px;padding-bottom:0}
.hero{padding:34px 0 22px}.hero h1{font-size:clamp(30px,3vw,46px)}
.card{background:var(--glass);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border:1px solid #ffffff10;box-shadow:var(--glow);position:relative;transition:border-color .25s,box-shadow .25s,transform .25s}
.card:before{content:"";position:absolute;inset:0 0 auto 0;height:1px;border-radius:var(--r) var(--r) 0 0;background:linear-gradient(90deg,transparent,#7c9cff55,#36e0b455,transparent);opacity:.6}
.card:hover{border-color:#7c9cff30;box-shadow:0 0 0 1px #7c9cff22,0 24px 60px -30px #000,0 0 40px -20px #7c9cff40}
.card h2:before{content:"";display:inline-block;width:6px;height:6px;border-radius:2px;margin-right:9px;vertical-align:2px;background:linear-gradient(135deg,var(--acc),var(--acc2));box-shadow:0 0 10px #7c9cffaa}
.ask{background:rgba(15,20,28,.7);backdrop-filter:blur(14px);box-shadow:0 0 0 1px #7c9cff1a,0 30px 80px -40px #7c9cff55}.ask:focus-within{box-shadow:0 0 0 1px #7c9cff66,0 30px 80px -30px #7c9cff77}
#go{box-shadow:0 8px 24px -10px #36e0b4aa}.examples button{transition:.15s}.examples button:hover{transform:translateY(-1px)}
tr[data-q]:hover td{background:#7c9cff0d}
#subnets{min-height:640px}
/* tape marquee */
.tape{display:flex;align-items:center;height:36px;border-top:1px solid var(--line);background:#080b10e6}
.mkt{display:flex;align-items:center;gap:7px;padding:0 14px 0 clamp(14px,2.4vw,40px);font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--tx2);white-space:nowrap;border-right:1px solid var(--line);height:100%}
.mkt i{width:7px;height:7px;border-radius:50%;background:var(--tx3)}.mkt.open i{background:var(--up);box-shadow:0 0 0 3px #2fd18b30;animation:pulse 2s infinite}.mkt.pre i,.mkt.after i{background:var(--warn)}
@keyframes pulse{50%{box-shadow:0 0 0 6px #2fd18b00}}
.tape-vp{flex:1;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.tape-track{display:flex;width:max-content;animation:marq var(--dur,60s) linear infinite}.tape-vp:hover .tape-track{animation-play-state:paused}
.tape-track .grp{display:flex;gap:30px;padding-right:30px;align-items:center;font-size:12.5px;white-space:nowrap}
@keyframes marq{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.tape-track{animation:none}.tape-vp{overflow-x:auto}.tape-track .grp+.grp{display:none}.mkt.open i{animation:none}}
.tk b{transition:color .4s}.tk b.fu{color:var(--up);text-shadow:0 0 12px #2fd18b88}.tk b.fd{color:var(--dn);text-shadow:0 0 12px #ff647088}
/* macro rows: consistent 3-col grid */
.mrow{display:grid;grid-template-columns:minmax(0,1fr) auto 64px;column-gap:12px;align-items:baseline;padding:7px 0}
.mrow .ml{color:var(--tx2);min-width:0}.mrow .mv{font:500 13px var(--mono);color:var(--tx);text-align:right;white-space:nowrap}.mrow .mc{text-align:right;white-space:nowrap}.mrow .mc em{margin:0;min-width:0;font:500 12px var(--mono);font-style:normal}
.mrow small{display:block;color:var(--tx3);font-size:11.5px;line-height:1.4;margin-top:1px}
@media (max-width:1760px){.lower{grid-template-columns:1fr}}
@media (max-width:1180px){.dash{grid-template-columns:1fr}.rail{position:static}.rail .card{max-height:none}.lower{grid-column:auto}}
@media (max-width:640px){.mkt span{display:none}.mkt{padding:0 10px}}
.tk i.c{font-style:normal}.tk i.c em{font:500 12px var(--mono);font-style:normal}
/* v4: rail scrolls naturally with the page (no sticky, no nested scroll) */
.rail{position:static;top:auto}.rail .card{max-height:none;overflow:visible}
/* ===== v5: Bloomberg-style terminal rail, newswire, three data tables ===== */
:root{--amb:#ffb000;--amb2:#ff8a00;--tbg:#05070a}
.dash{grid-template-columns:minmax(0,1fr) 460px}
.rail{align-self:stretch;position:static}.rail-in{position:sticky;top:110px;display:flex;flex-direction:column;gap:14px}
.term{background:var(--tbg);border:1px solid #2a2110;border-radius:10px;font-family:var(--mono);box-shadow:0 0 0 1px #ffb00010,0 20px 50px -30px #000,inset 0 1px 0 #ffb00014;overflow:hidden}
.term-h{display:flex;justify-content:space-between;align-items:center;padding:7px 12px;background:linear-gradient(90deg,#1a1203,#0b0805);border-bottom:1px solid #3a2a0a}
.tlogo{font:700 12px var(--mono);letter-spacing:.14em;color:var(--amb)}.tlogo b{color:#fff;margin-left:6px;font-weight:700}.tclock{font:500 11.5px var(--mono);color:#c9a35a}
.ts{border-bottom:1px solid #1b1f26}.tsh{display:flex;align-items:center;gap:8px;padding:5px 12px;background:#0d0a04;color:var(--amb);font:700 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #2a2110}
.fk{background:var(--amb);color:#000;font:800 10px var(--mono);padding:1px 5px;border-radius:2px;letter-spacing:0}.tsh .tx{margin-left:auto;color:#9c7a3a;font-weight:500;letter-spacing:.05em}
.tr{display:grid;grid-template-columns:minmax(0,1fr) 46px 74px 58px;align-items:center;column-gap:8px;padding:3px 12px;font-size:12px;line-height:1.35;border-bottom:1px solid #10141a}
.tr:hover{background:#ffb0000a}.tr .tn{color:#d6dbe2;font-family:Inter,sans-serif;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tr .tn small{display:block;color:#6d7684;font-size:10.5px;font-family:var(--mono)}
.tr b{text-align:right;font:500 12.5px var(--mono);color:#fff}.tr i{text-align:right;font:500 11.5px var(--mono);font-style:normal;color:#8a94a3}.tr i.up,.tr b.up{color:#22e07d}.tr i.dn,.tr b.dn{color:#ff4d5e}
.tsp{display:block}.tdiv{height:1px;background:#2a2110;margin:2px 0}.crv{padding:2px 6px 0}.curve text{fill:#9c7a3a;font:9.5px var(--mono)}
.fed{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:1px;background:#1b1f26}.fed div{background:var(--tbg);padding:7px 10px}.fed small{display:block;color:#7d8694;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.fed b{display:block;color:#fff;font:600 15px var(--mono)}.fed b.up{color:#22e07d}.fed b.dn{color:#ff4d5e}
.tr.cal b{color:var(--amb)}.tnote{padding:6px 12px 8px;color:#6d7684;font-size:10.5px;line-height:1.5}.tnote a{color:#c9a35a}.tsrc{padding:6px 12px;color:#5d6572;font-size:10px;letter-spacing:.04em}
.ftabs{display:flex;border-bottom:1px solid #2a2110;background:#0a0805;overflow-x:auto;scrollbar-width:none}.ftabs button{flex:1;background:none;border:0;border-right:1px solid #1b1f26;color:#9c7a3a;font:700 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:8px 6px;cursor:pointer;white-space:nowrap}
.ftabs button i{font-style:normal;color:#5d6572;margin-left:4px}.ftabs button.on{background:var(--amb);color:#000}.ftabs button.on i{color:#3a2a0a}.ftabs button:hover:not(.on){color:var(--amb);background:#140f05}
ul.wire{list-style:none;margin:0;padding:0}ul.wire li{padding:8px 12px;border-bottom:1px solid #10141a;font:13px/1.45 Inter,sans-serif}ul.wire li:hover{background:#ffb00008}ul.wire a{color:#e3e8ee;text-decoration:none}ul.wire a:hover{color:var(--amb)}
.wm{display:flex;gap:7px;align-items:center;margin-bottom:3px;font:10.5px var(--mono);color:#6d7684}.wm .tag{margin:0}.wp{color:#9c7a3a}.wt{color:var(--amb)}.ww{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tattr{margin:0;padding:8px 12px 10px;border-top:1px solid #2a2110;font-family:Inter,sans-serif;font-size:11.5px}
/* tables row */
.tables{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-bottom:30px}
.tcard{padding:16px 16px 10px}.tcard .card-h{flex-wrap:nowrap}.tcard .card-h small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tcard .snq{width:150px;flex-shrink:0}
.tbody{position:relative;height:620px}.tbody .sntbl{position:absolute;inset:0;max-height:none;margin:0 -6px}
.sntbl table{font-size:12.5px}.sntbl td,.sntbl th{padding:6px 6px}.sntbl td.n{font-size:12px}.sntbl td.nm{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sntbl td.sec{max-width:96px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tx3);font-size:11.5px}.sntbl td.tk2{font:600 12px var(--mono);color:#c5d1ff}
.tcard .attr{margin-top:10px;font-size:11.5px}
@media (max-width:1500px){.tables{grid-template-columns:repeat(2,minmax(0,1fr))}.tables>.tcard:last-child{grid-column:1/-1}}
@media (max-width:1180px){.dash{grid-template-columns:1fr}.rail-in{position:static}.tables{grid-template-columns:1fr}.tables>.tcard:last-child{grid-column:auto}.tbody{height:520px}}
@media (max-width:640px){.tcard .card-h{flex-wrap:wrap}.tcard .snq{width:100%}.tr{grid-template-columns:minmax(0,1fr) 46px 84px 56px;padding:3px 10px}}
.sntbl table{font-size:12px}.sntbl td,.sntbl th{padding:5px 5px}.sntbl th{font-size:10.5px;letter-spacing:.04em}.sntbl td.n{font-size:11.5px}.sntbl td.nm{max-width:118px}.sntbl td.sec{max-width:76px}
.sntbl td.tk2 small{display:block;font:400 10.5px Inter,sans-serif;color:var(--tx3);max-width:110px;overflow:hidden;text-overflow:ellipsis}
/* v6: hero row above both columns, stat cards, gap-free layout, tables that always fit */
.herorow{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:22px;align-items:end;padding:30px 0 6px}
.herorow h1{margin:0;font-size:clamp(30px,3vw,46px);line-height:1.1;letter-spacing:-.035em;font-weight:700;background:linear-gradient(90deg,#fff,#b9c6ff 60%,#7fe9cc);-webkit-background-clip:text;background-clip:text;color:transparent}
.herorow .sub{margin:10px 0 0}.hero{padding:0 0 18px}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.stat{background:var(--tbg);border:1px solid #2a2110;border-radius:9px;padding:8px 11px;font-family:var(--mono);position:relative;overflow:hidden}
.stat small{display:block;color:var(--amb);font:700 10px var(--mono);letter-spacing:.1em;text-transform:uppercase}.stat b{display:block;color:#fff;font:600 17px var(--mono);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat em{font:500 11.5px var(--mono);font-style:normal}
.stat svg{position:absolute;right:8px;bottom:8px;opacity:.85}.stat.mood b{font-size:15px}
.dash{align-items:start}.tables{min-width:0}.tcard,.tbody,.sntbl{min-width:0}
.wire-more{display:block;width:100%;background:#0d0a04;border:0;border-top:1px solid #2a2110;color:var(--amb);font:700 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:8px;cursor:pointer}.wire-more:hover{background:#1a1203}
/* hide lower-priority columns as tables narrow */
@container tbl (max-width:520px){.sntbl .c-vol,.sntbl .c-sec{display:none}}
@container tbl (max-width:430px){.sntbl .c-7d{display:none}}
.sntbl th .tauh{display:none;font-style:normal;cursor:pointer}.sntbl th .tauh.on{color:#7d8cff}.sntbl td .tsub.tau{display:none;color:var(--tx3);font-size:10.5px;font-weight:400}.kusd{display:block;font-style:normal;font-size:11px;font-weight:400;color:var(--tx3);margin-top:1px}
@container tbl (max-width:540px){.sntbl .c-tao{display:none}.sntbl td .tsub.tau{display:block;text-align:right;margin-left:auto}.sntbl th .tauh{display:inline}}
.tcard{container:tbl/inline-size}
@media (max-width:1180px){.herorow{grid-template-columns:1fr}.stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:640px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.stat b.up{color:var(--up)}.stat b.dn{color:var(--dn)}

/* v7: rail = main-column height, newswire fills remaining space */
@media (min-width:1181px){.rail-in{position:static;top:auto;height:100%;min-height:0}.rail-in>#feed{flex:1 1 0;min-height:160px;display:flex;flex-direction:column}#feed #feedBody{flex:1 1 0;min-height:0;overflow:hidden}}
.wire li.wsec{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#ffb000;padding:8px 12px 4px;border-top:1px solid #3a2a0a;background:#120d04}
/* v7: centered hero, stat cards centered beneath */
.herorow{grid-template-columns:1fr;justify-items:center;text-align:center;align-items:center;padding:34px 0 14px;gap:16px}
.herorow .hero-l{max-width:760px}.herorow .sub{margin:10px auto 0}
.herorow .stats{grid-template-columns:repeat(4,minmax(0,1fr));width:min(860px,100%);text-align:left}
@media (max-width:640px){.herorow .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Sources strip (subnets only) */
.srcs{border-top:1px solid var(--line);background:linear-gradient(90deg,#05070a,#0a0e14 50%,#05070a);font:500 11px/1 var(--mono);letter-spacing:.04em}
.srcs:empty{display:none}
.srcs-in{display:flex;align-items:center;gap:14px;min-height:30px;max-width:none}
.srcs-l{color:var(--amb,#ffb000);text-transform:uppercase;display:flex;gap:8px;align-items:center;white-space:nowrap}
.srcs-l em{font-style:normal;color:var(--tx3);text-transform:none}
.srcs-list{display:flex;gap:6px;flex:1;overflow-x:auto;scrollbar-width:none}.srcs-list::-webkit-scrollbar{display:none}
.src{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border:1px solid var(--line2);border-radius:999px;color:var(--tx2);text-decoration:none;white-space:nowrap;background:#0c1118}
.src:hover{color:var(--tx);border-color:var(--acc)}
.src i{width:7px;height:7px;border-radius:50%;background:var(--up);box-shadow:0 0 0 0 #2fd18b88;animation:srcp 2.4s infinite}
.src.off i{background:var(--dn);animation:none;box-shadow:0 0 6px #ff647088}
.src.off{color:var(--dn)}
.srcs-r{color:var(--tx3);white-space:nowrap}
@keyframes srcp{0%{box-shadow:0 0 0 0 #2fd18b88}70%{box-shadow:0 0 0 5px #2fd18b00}100%{box-shadow:0 0 0 0 #2fd18b00}}
@media(max-width:700px){.srcs-r{display:none}.srcs-l em{display:none}.srcs-in{gap:10px}}

.pooltag{font:11px var(--mono);color:var(--tx2);margin-top:5px}.whyl{margin:0;padding-left:16px}.whyl li{margin:0 0 3px}

/* ===== Click-to-chart: affordance + sheet (drawer on desktop, full-screen sheet on mobile) ===== */
.clk{cursor:pointer}.tr.clk:hover{background:#ffb00014;box-shadow:inset 2px 0 0 #ffb000}.tr.clk:focus-visible,.fed.clk:focus-visible{outline:1px solid #ffb000;outline-offset:-1px}
.fed.clk:hover{background:#ffb0000d}.tk.clk:hover span{color:#ffb000}.tk.clk:hover b{text-decoration:underline dotted #ffb00099}
#track:hover{animation-play-state:paused}#track:hover .grp{animation-play-state:paused}
tr[data-a]{cursor:pointer}
body.sheet-open{overflow:hidden}
.sheet{position:fixed;inset:0;z-index:200}.sheet[hidden]{display:none}
.sheet-bg{position:absolute;inset:0;background:#000a;backdrop-filter:blur(3px);animation:shf .18s ease}
.sheet-p{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);max-height:calc(100vh - 40px);border-radius:16px;border:1px solid #ffb00055;width:min(820px,calc(100vw - 32px));background:linear-gradient(180deg,#0b0f15,#07090d);border-left:1px solid #ffb00055;box-shadow:-24px 0 60px #000c;display:flex;flex-direction:column;gap:12px;padding:18px 20px;overflow:auto;animation:shs .22s cubic-bezier(.2,.8,.2,1)}
@keyframes shs{from{transform:translate(-50%,-47%);opacity:0}}@keyframes shf{from{opacity:0}}
.sh-h{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid #ffb00033;padding-bottom:10px}
.sh-n{font:600 22px Inter,sans-serif;color:#fff;letter-spacing:-.01em}.sh-s{font:500 11.5px var(--mono);color:#ffb000;text-transform:uppercase;letter-spacing:.08em;margin-top:2px}
.sh-x{background:none;border:1px solid var(--line2);color:var(--tx2);border-radius:8px;width:34px;height:34px;font-size:15px;cursor:pointer}.sh-x:hover{color:#fff;border-color:#ffb000}
.sh-r{display:flex;gap:6px}.sh-r button{font:600 12px var(--mono);background:#10151c;border:1px solid var(--line2);color:var(--tx2);padding:5px 12px;border-radius:6px;cursor:pointer}.sh-r button.on{background:#ffb000;color:#111;border-color:#ffb000}.sh-r button:hover:not(.on){color:#fff;border-color:#ffb00088}
.sh-k{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.sh-k .kpi{min-width:0}.sh-k .kpi b.up{color:var(--up)}.sh-k .kpi b.dn{color:var(--dn)}
.sh-ctx{grid-column:1/-1;font:13px/1.6 var(--mono);color:var(--tx2);background:var(--card2);border:1px solid var(--line);border-radius:10px;padding:12px}
.sh-c{background:#0a0d12;border:1px solid var(--line);border-radius:10px;padding:8px}.shsvg text{fill:#6d7684;font:10.5px var(--mono)}
.sh-f{display:flex;align-items:center;gap:14px;padding-top:8px;border-top:1px solid var(--line)}.sh-note{flex:1;font-size:12px;color:var(--tx3);line-height:1.5}.sh-note b{color:var(--tx2)}
.sh-ask{font:600 14px Inter,sans-serif;background:linear-gradient(135deg,#ffb000,#ff8a00);color:#111;border:0;border-radius:10px;padding:11px 20px;cursor:pointer;white-space:nowrap;box-shadow:0 6px 24px #ffb00033}.sh-ask:hover{filter:brightness(1.08)}
.sh-src{font:10.5px var(--mono);color:#5d6572}
@media (max-width:700px){.sheet-p{inset:0;transform:none;max-height:none;border-radius:0;border:0;width:100vw;padding:14px 14px calc(14px + env(safe-area-inset-bottom));animation-name:shu;animation-duration:.22s;animation-timing-function:cubic-bezier(.2,.8,.2,1);--x:0;animation:shu .22s cubic-bezier(.2,.8,.2,1)}@keyframes shu{from{transform:translateY(40px);opacity:0}}.sh-f{margin-top:auto}
  .sh-k{grid-template-columns:repeat(2,minmax(0,1fr))}.sh-f{flex-direction:column;align-items:stretch}.sh-ask{width:100%;padding:14px}.sh-n{font-size:19px}}

/* ===== v8 polish pass ===== */
/* numbers: tabular everywhere numbers live */
td,th,.stat,.kpi,.tr,.tk,.fed,.pooltag,.wbar,.sh-k,.az-out,.n{font-variant-numeric:tabular-nums}
/* portfolio: rows become cards so the Why bullets get full width (was crushed to ~10px at <=1440) */
.pf-wrap,.tbl:has(table.pf){overflow:visible;margin:0}
table.pf,table.pf tbody{display:block;width:100%}
table.pf tr{display:grid;grid-template-columns:96px minmax(110px,1fr) minmax(140px,1.1fr) minmax(170px,1.4fr) 76px minmax(170px,1.3fr);column-gap:14px;align-items:start;border-bottom:1px solid var(--line);padding:4px 10px;transition:background .15s}
table.pf tr:first-child{position:static;padding-top:0;padding-bottom:0}
table.pf th,table.pf td{display:block;border:0;padding:10px 0;min-width:0}
table.pf tr:first-child th:last-child{display:none}
table.pf td.why{grid-column:1/-1;max-width:none;padding:0 0 12px;font-size:13px}
table.pf .whyl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 18px;padding:0;list-style:none}
table.pf .whyl li{position:relative;padding-left:12px;margin:0}
table.pf .whyl li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:#22e584;box-shadow:0 0 6px #22e58466}
table.pf tr[data-a]:hover{background:#ffb0000a}
.riskcell{min-width:0;max-width:none}
@media (max-width:900px){table.pf .whyl{grid-template-columns:1fr}}
@media (max-width:760px){
 table.pf tr:first-child{display:none}
 table.pf tr{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:6px 4px}
 table.pf td{padding:6px 0}
 table.pf td:nth-child(5){text-align:left}
}
/* focus + micro-interactions */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid #ffb000;outline-offset:2px;border-radius:6px}
#q:focus-visible,.snq:focus-visible,#opts:focus-visible,.az-addr:focus-visible{outline:none;border-color:#ffb00099;box-shadow:0 0 0 3px #ffb00022}
button,.src,.ex,.az-tab,.sh-r button{transition:color .15s,background-color .15s,border-color .15s,filter .15s,transform .1s}
button:active:not(:disabled){transform:translateY(1px)}
.card:hover{border-color:#ffffff1a}
.stat{transition:border-color .2s,transform .2s}.stat:hover{border-color:#ffb00055}
/* scrollbars: thin, on-theme */
*{scrollbar-color:#2a3342 transparent}
::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#2a3342;border-radius:8px}::-webkit-scrollbar-track{background:transparent}
/* mobile: tap targets, tighter rhythm */
@media (max-width:640px){
 .examples button,.examples a,.ex{min-height:36px}
 .az-tab,.az-btn,.sh-r button{min-height:40px}
 .snq{min-height:40px}
 .herorow{padding:24px 0 10px}
 .stat b{font-size:16px}
}
footer{color:var(--tx3);font-size:12.5px;padding:18px 0 32px;border-top:1px solid var(--line);text-align:center}
/* nav: logo left, links truly centered, status/account right */
.top-in{display:grid;grid-template-columns:1fr auto 1fr;gap:20px}
.top-in>.brand{justify-self:start}.top-in>nav{justify-self:center;margin:0}.top-r{justify-self:end;display:flex;align-items:center;gap:6px;min-width:0}.top-r .status{margin-left:0}
@media (max-width:640px){.top-in{grid-template-columns:1fr auto}}
/* sources strip centered (scrolls on mobile) */
.srcs-in{justify-content:center}.srcs-list{flex:0 1 auto;min-width:0}
@media (max-width:700px){.srcs-in{justify-content:flex-start}.srcs-list{flex:1}}
#ask,#portfolio,#track-record,#analyzer,#markets,section.card{scroll-margin-top:calc(var(--navh,72px) + 8px)}

.upside{margin-top:5px;font-size:11.5px;line-height:1.35;color:var(--tx2);max-width:260px}.upside .upb{display:inline-block;font:600 11px var(--mono);color:#7cc4ff;border:1px solid rgba(124,196,255,.4);border-radius:999px;padding:1px 7px;margin-right:4px}.upside i{opacity:.6;font-size:10.5px}
/* mobile: sources wrap centered, compact chips */
.srcs-list{justify-content:center}
@media(max-width:700px){.srcs-in{flex-direction:column;gap:6px;padding-top:6px;padding-bottom:6px}.srcs-list{flex-wrap:wrap;overflow:visible;gap:4px;justify-content:center;width:100%}.src{padding:3px 7px;font-size:10px;gap:4px}.src i{width:6px;height:6px}}
/* markets tabs (stacked layouts only) */
.mtabs{display:none}
@media (max-width:1180px){
.tables{display:flex;flex-direction:column;gap:0}
.mtabs{display:flex;gap:4px;padding:4px;border:1px solid var(--line2);border-radius:12px;background:#0c1118;margin-bottom:10px}
.mtabs button{flex:1;padding:9px 6px;border:0;border-radius:9px;background:transparent;color:var(--tx2);font:600 13px/1 inherit;cursor:pointer}
.mtabs button.on{background:var(--acc);color:#05070a}
.tables>.tcard{display:none}.tables>.tcard.on{display:block}
}
html,body{overflow-x:hidden}@supports (overflow:clip){html,body{overflow-x:clip}}
.reaxb{font-size:11px;color:var(--mu,#9aa);margin-top:3px;white-space:nowrap}.reaxb span{font-weight:700;color:#8ab4ff;font-size:10px;letter-spacing:.04em}.reaxb i{display:block;height:3px;background:#1a2330;border-radius:2px;margin-top:2px;max-width:120px}.reaxb i b{display:block;height:100%;background:#8ab4ff;border-radius:2px}

/* Ask box: flowing gold border */
@property --ask-ang{syntax:'<angle>';initial-value:0deg;inherits:false}
form.ask{position:relative;isolation:isolate;border-color:transparent;box-shadow:0 0 18px -4px #d4a01755,0 30px 80px -40px #d4a01744}
form.ask::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;pointer-events:none;z-index:1;
background:conic-gradient(from var(--ask-ang),#d4a017,#f5d27a,#fff3c4,#f5d27a,#d4a017,#8a6a12,#d4a017);
-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);
animation:ask-spin 6s linear infinite;opacity:.85;transition:opacity .2s}
form.ask:focus-within{box-shadow:0 0 26px -2px #f5d27a88,0 30px 80px -30px #d4a01777}
form.ask:focus-within::before{opacity:1;padding:2px}
@keyframes ask-spin{to{--ask-ang:360deg}}
@media (prefers-reduced-motion:reduce){form.ask::before{animation:none;background:linear-gradient(135deg,#f5d27a,#d4a017,#fff3c4)}}

/* holding cards on phones: weight+category+name row, Upside | Risk side by side, forecast+signals row */
table.pf td.c-watch{display:none}
@media (max-width:760px){
 table.pf tr[data-a]{grid-template-columns:62px minmax(0,1fr) minmax(0,1fr);grid-template-areas:"w cat nm" "up up rk" "fc fc sig" "wa wa wa" "why why why";column-gap:12px;padding:10px 4px}
 table.pf tr[data-a] td{padding:4px 0}
 table.pf td.c-w{grid-area:w}table.pf td.c-cat{grid-area:cat;align-self:center;font-size:12px;color:var(--tx2);white-space:normal}
 table.pf td.c-name{display:contents}table.pf .c-nm{grid-area:nm;align-self:center;padding:4px 0;text-align:right;overflow-wrap:anywhere}
 table.pf td.c-name .upside{grid-area:up;margin:0;padding:4px 0;max-width:none}
 table.pf td.riskcell{grid-area:rk}table.pf td.riskcell .watch{display:none}
 table.pf td.c-fc{grid-area:fc;white-space:normal}table.pf td.c-sig{grid-area:sig;text-align:right}
 table.pf td.c-watch{display:block;grid-area:wa;padding:0}table.pf td.c-watch .watch{margin-top:0}
 table.pf tr[data-a] td.why{grid-area:why;min-width:0;padding:4px 0 6px}
 table.pf .reaxb{white-space:normal}
 table.pf tr[data-a]:not(:has(.upside)) td.riskcell{grid-column:1/-1}
}

table.pf .cats{display:none}
/* phones: weight | centered name | category; Upside and Risk centered */
@media (max-width:760px){
 table.pf tr[data-a]{grid-template-columns:minmax(0,1.45fr) minmax(0,.8fr) minmax(0,.8fr) minmax(0,1.45fr);column-gap:8px;grid-template-areas:"w nm nm cat" "up up rk rk" "fc fc sig sig" "wa wa wa wa" "why why why why";align-items:center}
 table.pf td.c-w{justify-self:start}
 table.pf .c-nm{text-align:center;justify-self:center}
 table.pf td.c-cat{display:inline-flex;align-items:center;justify-content:flex-end;gap:5px;white-space:nowrap;flex-wrap:nowrap;justify-self:end;align-self:center;max-width:100%;min-width:0;overflow:hidden;font-size:11px;line-height:1.2;text-align:right}
 table.pf td.c-cat .catl{white-space:nowrap}
 table.pf td.c-cat .catf{display:none}table.pf td.c-cat .cats{display:inline}
 table.pf td.c-cat .sw{flex:0 0 auto;margin:0}
 table.pf td.c-w,table.pf .c-nm{align-self:center}
 table.pf td.c-name .upside{align-self:center;text-align:center}
 table.pf td.riskcell{align-self:center;justify-self:stretch;display:flex;flex-direction:column;align-items:center;text-align:center;padding-left:0;padding-right:0;min-width:0}
 table.pf td.riskcell>*{margin-left:0;margin-right:0;padding-left:0;padding-right:0;max-width:100%;text-align:center}
 table.pf td.riskcell .reaxb{display:block;width:max-content;max-width:100%;text-align:center;text-indent:0;white-space:normal}table.pf td.riskcell .reaxb i{margin:2px auto 0;width:100%;max-width:none}
}

/* Track record */
.tr-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}.tr-since{font-size:13.5px;color:var(--tx2)}.tr-since b{color:var(--tx)}
.tr-tabs{display:flex;border:1px solid var(--line2);border-radius:9px;overflow:hidden}.tr-tabs button{background:none;border:0;color:var(--tx2);padding:7px 14px;font:600 13px inherit;cursor:pointer;min-height:36px}.tr-tabs button.on{background:#ffb00022;color:#ffb000}
.tr-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.tr-stats>div{background:#0a0d12;border:1px solid var(--line);border-radius:10px;padding:10px 12px;min-width:0}.tr-stats .k{display:block;font-style:normal;font-size:11.5px;color:var(--tx3);text-transform:uppercase;letter-spacing:.04em}.tr-stats b{display:block;font-size:19px;margin:3px 0 2px;white-space:nowrap}.tr-stats i{font-style:normal;font-size:12px;color:var(--tx3)}
.tr-leg{display:flex;gap:16px;font-size:12.5px;color:var(--tx2);margin-top:8px;flex-wrap:wrap}.tr-leg i{display:inline-block;width:16px;height:3px;vertical-align:middle;margin-right:6px;border-radius:2px}.tr-leg i.dash{background:repeating-linear-gradient(90deg,#6d7684 0 4px,transparent 4px 7px)}
@media (max-width:640px){.tr-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tr-stats b{font-size:16px}.tr-h{flex-direction:column;align-items:stretch}.tr-tabs button{flex:1}}
@media (max-width:640px){.card h2{font-size:16px}}
/* weekly picks: REAX odds this week (portfolio-level, analyzer style) */
.r30sum{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin:8px 0;padding:8px 10px;border:1px solid #1f2a38;border-radius:8px;font-size:12px}.r30sum div{display:flex;align-items:baseline;gap:6px}.r30sum b{font-size:18px}
.az-reaxl{font-weight:700;color:#8ab4ff;font-size:10px;letter-spacing:.04em}
@media (max-width:640px){.r30sum{gap:6px 12px}.r30sum div{flex:1 1 100%}}

/* phones: Risk pill and REAX line side by side under the name, pair centered on the card; then Upside | Pool/Vol */
.pv,.rrx{display:contents}
@media (max-width:760px){
 table.pf tr[data-a]{grid-template-areas:"w nm nm cat" "rp rp rp rp" "up up rk rk" "fc fc sig sig" "wa wa wa wa" "why why why why"}
 table.pf td.riskcell{display:contents}
 table.pf td.riskcell>.rrx{grid-area:rp;display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:nowrap;margin:2px 0}
 table.pf td.riskcell>.rrx>.risk{flex:none;display:inline-flex;justify-content:center;width:max-content;padding:2px 9px;white-space:nowrap;margin:0}
 table.pf td.riskcell>.rrx>.reaxb{min-width:0;text-align:center;padding:0;font-size:11px}
 table.pf td.riskcell>.pv{grid-area:rk;display:flex;flex-direction:column;align-items:center;text-align:center;align-self:center;padding:4px 0}
 table.pf td.riskcell>.watch{display:none}
 table.pf tr[data-a]:not(:has(.upside)) td.riskcell>.pv{grid-column:1/-1}
}

/* phones: symmetric holding card. 14px padding all sides; every row separated by exactly 10px
   (row-gap 0 + margin-top on non-first rows so absent rows such as Watch collapse without doubling gaps);
   Upside | Pool/Vol as two equal halves (cols 1-2 / 3-4, one 12px gutter); forecast and signals each centered on their own row */
@media (max-width:760px){
 table.pf tr[data-a]{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:12px;row-gap:0;padding:14px;align-items:center;
  grid-template-areas:"w nm nm cat" "rp rp rp rp" "up up rk rk" "fc fc fc fc" "sig sig sig sig" "wa wa wa wa" "why why why why"}
 table.pf tr[data-a] td,table.pf tr[data-a] td.c-name .upside,table.pf tr[data-a] .c-nm,table.pf tr[data-a] td.riskcell>.rrx,table.pf tr[data-a] td.riskcell>.pv{padding:0;margin:0;position:static}
 table.pf tr[data-a] td.riskcell>.rrx,table.pf tr[data-a] td.c-name .upside,table.pf tr[data-a] td.riskcell>.pv,table.pf tr[data-a] td.c-fc,table.pf tr[data-a] td.c-sig,table.pf tr[data-a] td.c-watch,table.pf tr[data-a] td.why{margin-top:10px}
 table.pf tr[data-a] td.c-name .upside{grid-area:up;justify-self:stretch;align-self:center;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}
 table.pf tr[data-a] td.c-name .upside .upb{margin:0}
 table.pf tr[data-a] td.riskcell>.pv{grid-area:rk;justify-self:stretch;align-self:center;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}
 table.pf tr[data-a] td.riskcell>.pv .pooltag{margin:0}
 table.pf tr[data-a] td.c-fc{grid-area:fc;text-align:center;justify-self:stretch;white-space:normal}
 table.pf tr[data-a] td.c-sig{grid-area:sig;text-align:center;justify-self:stretch}
 table.pf tr[data-a] td.c-watch{grid-area:wa}table.pf tr[data-a] td.why{grid-area:why}
 table.pf tr[data-a] td.why .whyl{margin:0}
 table.pf tr[data-a]:not(:has(.upside)) td.riskcell>.pv{grid-column:1/-1}
}
/* phones: F/T/N arrows join the Risk | REAX row (rrsig copy inside .rrx); desktop keeps the Signals column */
.rrsig{display:none}
@media (max-width:760px){
 table.pf tr[data-a] td.c-sig{display:none}
 table.pf tr[data-a] td.riskcell>.rrx{gap:10px}
 table.pf tr[data-a] .rrsig{display:inline-flex;flex:none;gap:4px;white-space:nowrap}
 table.pf tr[data-a] .rrsig .ar{margin:0;font-size:11.5px}
}
@media (max-width:380px){
 table.pf tr[data-a] td.riskcell>.rrx{gap:7px}
 table.pf tr[data-a] td.riskcell>.rrx>.risk{padding:2px 7px;font-size:11.5px}
 table.pf tr[data-a] td.riskcell>.rrx>.reaxb{font-size:10.5px}
 table.pf tr[data-a] .rrsig{gap:3px}table.pf tr[data-a] .rrsig .ar{font-size:11px}
}
/* phones: centered Watch / Why section labels; body text and bullets left-aligned on one shared 12px indent */
.secl{display:none}
@media (max-width:760px){
 table.pf tr[data-a] td.c-watch,table.pf tr[data-a] td.why{padding-top:10px;border-top:1px solid rgba(255,255,255,.06);text-align:left}
 table.pf tr[data-a] .secl{display:block;text-align:center;font:600 10.5px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--tx3);margin:0 0 8px}
 table.pf tr[data-a] .secl-w{color:var(--warn)}
 table.pf tr[data-a] td.c-watch .watch{position:relative;margin:0;padding-left:12px;font-size:12.5px;line-height:1.5;color:var(--tx2)}
 table.pf tr[data-a] td.c-watch .watch::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--warn)}
 table.pf tr[data-a] td.why{font-size:12.5px;line-height:1.5}
 table.pf tr[data-a] td.why .whyl{display:grid;grid-template-columns:1fr;gap:6px;padding:0;margin:0}
}
/* F/T/N arrows color-coded: up green, down red, flat muted grey; slightly bolder */
.ar{font-weight:600}.ar.ar-up{color:var(--up)}.ar.ar-dn{color:var(--dn)}.ar.ar-fl{color:#8a8f98}
/* phones: top row order F T N | REAX | Risk */
@media (max-width:760px){
 table.pf tr[data-a] td.riskcell>.rrx>.rrsig{order:1}
 table.pf tr[data-a] td.riskcell>.rrx>.reaxb{order:2}
 table.pf tr[data-a] td.riskcell>.rrx>.risk{order:3}
 table.pf tr[data-a] .rrsig .ar{font-weight:700}
}
.pooltag.pflow b{font-weight:600}
/* phones: top row as 1fr auto 1fr grid - F T N at inner left edge, REAX dead-center on the card, Risk at inner right edge */
@media (max-width:760px){
 table.pf tr[data-a] td.riskcell>.rrx{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:8px;align-items:center;justify-content:stretch}
 table.pf tr[data-a] td.riskcell>.rrx>.rrsig{grid-column:1;justify-self:start}
 table.pf tr[data-a] td.riskcell>.rrx>.reaxb{grid-column:2;justify-self:center}
 table.pf tr[data-a] td.riskcell>.rrx>.risk{grid-column:3;justify-self:end}
}
@media (max-width:760px){
 table.pf tr[data-a] td.riskcell>.rrx>.risk{padding:2px 8px;font-size:12px}
 table.pf tr[data-a] td.riskcell>.rrx>.reaxb{font-size:10.5px;letter-spacing:-.01em}
}
@media (max-width:380px){
 table.pf tr[data-a] td.riskcell>.rrx{column-gap:6px}
 table.pf tr[data-a] td.riskcell>.rrx>.risk{padding:2px 7px;font-size:11px}
 table.pf tr[data-a] td.riskcell>.rrx>.reaxb{font-size:10px}
 table.pf tr[data-a] .rrsig .ar{font-size:11px}table.pf tr[data-a] .rrsig{gap:3px}
}
@media (max-width:760px){table.pf tr[data-a] .reaxb .rxwk{display:none}}
@media (max-width:380px){table.pf tr[data-a] td.riskcell>.rrx>.risk{padding:2px 6px;font-size:10.5px;letter-spacing:-.01em}}
/* phones: no probability bar under REAX (text only) */
@media (max-width:760px){table.pf tr[data-a] td.riskcell>.rrx>.reaxb>i{display:none}}
/* phones: optically align the Risk pill's text with the category text above (pill bleeds right by its own padding) */
@media (max-width:760px){table.pf tr[data-a] td.riskcell>.rrx>.risk{margin-right:-8px}}
@media (max-width:380px){table.pf tr[data-a] td.riskcell>.rrx>.risk{margin-right:-6px}}
@keyframes psfl{from{background:#7c9cff33}to{background:transparent}}.psflash{animation:psfl 1.2s ease-out;border-radius:3px}

/* Track record: vs-benchmark clarity */
.tr-stats i .tr-raw{display:flex;flex-wrap:wrap;gap:2px 10px;font-style:normal;font-size:12px;color:var(--tx3)}
.tr-stats i .tr-vs{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin-top:4px;font-style:normal;font-size:12.5px;color:var(--tx2,#b8c0cc)}
.tr-stats i .tr-vs.up b{color:var(--up)}.tr-stats i .tr-vs.dn b{color:var(--dn)}
.tr-badge{font-style:normal;font-size:10.5px;font-weight:700;letter-spacing:.02em;padding:1px 7px;border-radius:999px;text-transform:uppercase}
.tr-badge.ah{color:var(--up);background:rgba(54,224,140,.12);border:1px solid rgba(54,224,140,.35)}.tr-badge.bh{color:var(--dn);background:rgba(255,90,90,.10);border:1px solid rgba(255,90,90,.35)}
.tr-leg i.shd{background:rgba(54,224,140,.25)}

/* REAX weekly odds: all outcomes */
.rx3{margin-top:8px}.rx3-h{font-size:12px;color:var(--tx3);margin-bottom:4px}
.rx3-bar{display:flex;height:8px;border-radius:5px;overflow:hidden;gap:2px;background:#0a0d12}.rx3-bar i{display:block;min-width:2px}
.rx3-bar i.up{background:var(--up)}.rx3-bar i.fl{background:#8a8f98}.rx3-bar i.dn{background:var(--dn)}
.rx3-l{display:flex;flex-wrap:wrap;gap:2px 12px;margin-top:5px;font-size:12px;color:var(--tx2)}.rx3-l b{font-size:13px;margin-right:2px}
.rx3-l .up b{color:var(--up)}.rx3-l .fl b{color:#a7adb6}.rx3-l .dn b{color:var(--dn)}
.r30sum div.rx3{display:block;flex:1 1 100%;margin-top:2px}.r30sum div.rx3-h{display:block}.r30sum div.rx3-bar{display:flex;gap:2px}.r30sum div.rx3-l{display:flex;flex-wrap:wrap;gap:2px 12px;align-items:baseline}.r30sum .rx3-l b{font-size:14px}
.r30sum div.rx3-bar{align-items:stretch;height:8px}.rx3-bar i{height:8px}
.r30sum div.rx3-bar>i{display:block;height:8px;min-height:8px}
/* Forecast scorecard */
.sc-empty{display:flex;flex-direction:column;gap:4px;background:#0a0d12;border:1px dashed var(--line2);border-radius:10px;padding:12px 14px;margin-bottom:12px}.sc-empty b{font-size:15px;color:#ffb000}.sc-empty span{font-size:13px;color:var(--tx2);line-height:1.45}
.sc-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.sc-stats>div{background:#0a0d12;border:1px solid var(--line);border-radius:10px;padding:10px 12px;min-width:0}.sc-stats .k{display:block;font-style:normal;font-size:11.5px;color:var(--tx3);text-transform:uppercase;letter-spacing:.04em}.sc-stats b{display:block;font-size:19px;margin:3px 0 2px}.sc-stats i{font-style:normal;font-size:12px;color:var(--tx3);line-height:1.35;display:block}
.sc-stats b.up,#scr .up{color:var(--up)}.sc-stats b.dn,#scr .dn{color:var(--dn)}#scr .mid{color:#ffb000}
.sc-sub{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--tx2);margin:4px 0 8px}.sc-sub em{font-style:normal;font-weight:600;text-transform:none;letter-spacing:0;color:var(--tx3);margin-left:6px}
.sc-wk details{border:1px solid var(--line);border-radius:10px;margin-bottom:8px;background:#0a0d12}.sc-wk summary{display:grid;grid-template-columns:1.3fr 1fr 1fr .8fr;gap:8px;padding:10px 12px;cursor:pointer;font-size:13px;list-style:none}.sc-wk summary::-webkit-details-marker{display:none}
.sc-prov{border-top:1px solid var(--line);padding-top:12px;margin-top:4px}.sc-prov p{font-size:12.5px;color:var(--tx3);margin:0 0 8px;line-height:1.45}.sc-pl{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:13px;color:var(--tx2);margin-bottom:8px}
.sc-rows{display:flex;flex-direction:column}.sc-r{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1.3fr) minmax(0,.8fr) minmax(0,.9fr);gap:8px;align-items:center;padding:7px 12px;font-size:13px;border-top:1px solid var(--line)}.sc-n{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tx)}.sc-f{color:var(--tx3);white-space:nowrap}.sc-a{text-align:right;font-weight:600}.sc-m{text-align:right;font-size:12px;color:var(--tx3);white-space:nowrap}
@media (max-width:640px){.sc-stats{grid-template-columns:1fr;gap:8px}.sc-stats>div{display:grid;grid-template-columns:1fr auto;align-items:baseline;column-gap:10px}.sc-stats b{font-size:17px;margin:0;grid-row:1;grid-column:2}.sc-stats .k{grid-row:1}.sc-stats i{grid-column:1/-1;margin-top:3px}.sc-wk summary{grid-template-columns:1fr 1fr;row-gap:4px}.sc-r{grid-template-columns:minmax(0,1fr) auto;row-gap:2px;padding:8px 10px}.sc-f{grid-column:1;font-size:12px}.sc-a{grid-row:1;grid-column:2}.sc-m{grid-column:2;grid-row:2}}

/* mobile section tabs (sticky inside header) */
.stabs{display:none}
@media (max-width:640px){
.top nav.stabs{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;border-top:1px solid #2a2110;background:#0b0805;font-family:var(--mono)}
.stabs::-webkit-scrollbar{display:none}
.stabs a{flex:0 0 auto;padding:9px 13px;color:#9c7a3a;font:700 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;border-bottom:2px solid transparent;white-space:nowrap}
.stabs a.on{color:#ffb000;border-bottom-color:#ffb000;background:#ffb00012}
}
#macro,#feed,#scorecard{scroll-margin-top:calc(var(--navh,72px) + 8px)}
.tr.cal .tn{white-space:normal}.tr.cal .tn small{white-space:normal;line-height:1.3}

/* Mobile page order: general market context first, then Bittensor-specific sections (desktop untouched) */
@media (max-width:640px){
.dash{display:flex;flex-direction:column;align-items:stretch}
.dash>*,.col-main>*,.rail-in>*{align-self:stretch;width:auto;max-width:100%;min-width:0;box-sizing:border-box;grid-column:auto}
.dash>.col-main,.dash>.rail,.rail>.rail-in{display:contents}
.dash>.herorow{order:0}.col-main>*{order:5}
}

/* Personal watchlist */
.wlcard{margin:0 0 18px}.wlcard .card-h{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.wl-c{margin-left:auto;font:500 12px var(--mono);color:var(--tx3)}
#watchlist{scroll-margin-top:calc(var(--navh,72px) + 8px)}
.wl-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:10px}
.wl-i{background:var(--card2);border:1px solid var(--line);border-radius:12px;padding:10px 12px;cursor:pointer;min-width:0;transition:border-color .15s}.wl-i:hover,.wl-i:focus{border-color:#7c9cff66;outline:0}
.wl-t{display:flex;align-items:center;gap:6px;min-width:0}.wl-n{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}
.wl-x{background:none;border:0;color:#ffb000;font-size:16px;line-height:1;cursor:pointer;padding:2px 0 2px 6px;flex:0 0 auto}.wl-x:hover{color:#ff6470}
.wl-s{font:500 11px var(--mono);color:var(--tx3);margin-top:1px}
.wl-p{font:500 15px var(--mono);margin:6px 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wl-p em{font:500 12px var(--mono);font-style:normal;margin-left:4px}
.wl-p .up,.wl-o.up b{color:var(--up)}.wl-p .dn,.wl-o.dn b{color:var(--dn,#ff6470)}
.wl-od{display:flex;gap:6px;flex-wrap:wrap}.wl-o{font-size:11px;color:var(--tx2);background:#ffffff08;border:1px solid var(--line);border-radius:99px;padding:2px 8px;white-space:nowrap}.wl-o b{font:600 11.5px var(--mono)}.wl-o i{font-style:normal;color:var(--tx3)}.wl-o.wait b{color:var(--tx3)}
.wl-a{font-size:10.5px;color:var(--tx3);margin-top:6px}
.wl-empty{font-size:13.5px;color:var(--tx2);line-height:1.55;padding:4px 0}.wl-empty b{color:var(--tx)}
.sh-star{margin-left:auto;margin-right:8px;background:#ffb00010;border:1px solid #ffb00055;color:#ffb000;border-radius:99px;font:600 12.5px Inter,sans-serif;padding:6px 12px;cursor:pointer;white-space:nowrap;align-self:center}.sh-star.on{background:#ffb000;color:#120c02}.sh-star[hidden]{display:none}
@media (max-width:640px){.wl-g{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.wl-i{padding:9px 10px}.wl-p{font-size:14px}.wl-od{gap:4px;flex-wrap:nowrap}.wl-o{padding:2px 6px;font-size:10.5px}.wlcard{margin:0 0 14px}.wlcard .card-h small{flex-basis:100%;order:3}}
@media (max-width:360px){.wl-g{grid-template-columns:1fr}}

/* ===== Real pages: /markets /ask /forecast /portfolio (one shell, sections tagged data-pg) ===== */
body[data-page="markets"] [data-pg]:not([data-pg~="markets"]),body[data-page="ask"] [data-pg]:not([data-pg~="ask"]),
body[data-page="forecast"] [data-pg]:not([data-pg~="forecast"]),body[data-page="portfolio"] [data-pg]:not([data-pg~="portfolio"]){display:none!important}
.stabs[hidden]{display:none!important}
main [id]{scroll-margin-top:calc(var(--navh,76px) + 4px)}
.dash{display:block;padding-top:8px}.dash>*{min-width:0}
.pnav{display:flex;gap:6px;justify-content:center}
.pnav a{padding:7px 14px;border-radius:9px;color:var(--tx2);font-size:14px;font-weight:600}
.pnav a:hover{color:var(--tx);background:#ffffff0a}.pnav a.on{color:#fff;background:#7c9cff26;box-shadow:inset 0 0 0 1px #7c9cff55}
.pghead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:26px 0 14px}
.pghead h1{margin:0;font-size:clamp(28px,3vw,40px);line-height:1.1;letter-spacing:-.03em;font-weight:700;background:linear-gradient(90deg,#fff,#b9c6ff 60%,#7fe9cc);-webkit-background-clip:text;background-clip:text;color:transparent}
.pghead .sub{margin:8px 0 0;max-width:620px}.pghead .stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:min(640px,100%)}
.miniask{display:flex;gap:8px;margin:0 0 16px}
.miniask input{flex:1;min-width:0;background:#0c1118;border:1px solid var(--line2);border-radius:11px;color:var(--tx);font:500 14px Inter,sans-serif;padding:11px 14px;outline:none}
.miniask input:focus{border-color:#7c9cff88}.miniask button{border:0;border-radius:11px;background:var(--acc);color:#05070a;font:700 14px Inter,sans-serif;padding:0 20px;cursor:pointer}
/* terminal runs across the top as columns */
#macro{margin:0 0 18px}#termBody .tsp{width:46px}#termBody .tgrid{display:grid;align-items:stretch}#termBody .tcol{display:flex;flex-direction:column;min-width:0;border-left:1px solid #1b1f26}#termBody .tcol:first-child{border-left:0}
.tr.nsp{grid-template-columns:minmax(0,1fr) 0 auto 58px}.tr.nsp.cal{grid-template-columns:minmax(0,1fr) 0 auto 62px}.tnote.tn1{padding:5px 12px 2px;color:var(--amb);font-size:10px;letter-spacing:.08em;text-transform:uppercase;border-top:1px solid #10141a}
#termBody .tcol>.ts:last-child{flex:1 1 auto;display:flex;flex-direction:column;border-bottom:0}#termBody .tcol>.ts:last-child>.tr{flex:1 1 auto}#termBody .tfoot{margin-top:auto;display:flex;flex-direction:column;justify-content:flex-end;border-top:1px solid #1b1f26;padding:4px 0 2px;box-sizing:border-box}#termBody .tfoot .tnote{padding:3px 12px}
@media (max-width:640px){#termBody .tcol{border-left:0}}
/* markets: Crypto / Stocks / Subnets / Watchlist as tabs at every width */
.tables{display:flex;flex-direction:column;gap:0;padding-bottom:18px}
.mtabs{display:flex;gap:4px;padding:4px;border:1px solid var(--line2);border-radius:12px;background:#0c1118;margin-bottom:10px;max-width:560px}
.mtabs button{flex:1;padding:9px 6px;border:0;border-radius:9px;background:transparent;color:var(--tx2);font:600 13px/1 Inter,sans-serif;cursor:pointer}
.mtabs button.on{background:var(--acc);color:#05070a}
.tables>.tcard{display:none}.tables>.tcard.on{display:block}.tables>.tcard.on.wlcard{margin:0}
.tables>.tcard .tbody{height:560px}
#feed{margin:0 0 14px}#feedBody .wire,#feedBody ul{columns:2 360px;column-gap:28px}#feedBody li{break-inside:avoid}
@media (max-width:640px){#feedBody .wire,#feedBody ul{columns:1}}
.tattr{margin-bottom:20px}
/* page bar (mobile): bottom, safe-area aware. Top nav handles desktop. */
nav.bnav{display:none}
@media (max-width:640px){
nav.bnav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;background:#07090df2;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line2);padding:4px 6px calc(4px + env(safe-area-inset-bottom));gap:2px}
.bnav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;border-radius:10px;color:var(--tx3,#7d8694);font:600 10.5px Inter,sans-serif;text-decoration:none}
.bnav a svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bnav a.on{color:#fff;background:#7c9cff1f}.bnav a.on svg{stroke:#8ea9ff}
body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
.pghead{padding-top:16px}.pghead .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.miniask button{padding:0 16px}
.mtabs{max-width:none}.mtabs button{font-size:12.5px;padding:9px 2px}
.tables>.tcard .tbody{height:480px}
}
@media (max-width:1180px){.pghead .stats{width:100%}}
@media (max-width:640px){nav.pnav{display:none}}
/* ===== Markets desktop: Crypto | Stocks | Subnets | Watchlist side by side, each its own scroller (>=1100px); tabs below ===== */
.tcard .tsub{display:none;font:400 10.5px Inter,sans-serif;color:var(--tx3);font-style:normal;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@container tbl (max-width:400px){.sntbl .c-nm{display:none}.sntbl td.tk2 .tsub{display:block}}
@container tbl (max-width:340px){.sntbl table{font-size:11.5px}.sntbl td.n{font-size:11px}.sntbl td,.sntbl th{padding-left:3px;padding-right:3px}.sntbl th{letter-spacing:0;font-size:10px}.sntbl td.tk2 small,.sntbl td.tk2 .tsub,.sntbl td.nm{max-width:60px}}
@container tbl (max-width:250px){.sntbl .c-mc{display:none}}
@media (min-width:1100px){
.mtabs{display:none}
.tables{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:stretch}
.tables>.tcard,.tables>.tcard.on,.tables>.tcard:last-child{min-width:0;margin:0;grid-column:auto}
.tables>.tcard .tbody{height:clamp(520px,76vh,780px)}
.tables>.tcard,.tables>.tcard.on{display:flex;flex-direction:column}.tables>.tcard .attr{margin-top:auto;padding-top:8px;min-height:3.2em}
.tables>.tcard .card-h{flex-wrap:wrap;row-gap:8px}
.tables>.tcard .sntbl td,.tables>.tcard .sntbl th{padding-left:4px;padding-right:4px}
.tables>.tcard .card-h h2{margin-right:auto}
.tables>.tcard .snq{order:9;flex:1 1 100%;width:100%;margin:0}
.tables>.tcard .attr{font-size:10.5px;line-height:1.4}
.tables>.wlcard #wl{height:clamp(520px,76vh,780px);overflow:auto;overscroll-behavior:contain}
.tables>.wlcard .card-h small{flex:1 1 100%;order:8}
}

/* header stat cards: F&G gauge + subnets total */
.stat .asof{display:block;color:var(--tx3);font:500 10px var(--mono);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stat.fng b em{font-size:11px;margin-left:4px;color:inherit;opacity:.85}
.stat b.dn2{color:#ff9a6b}.stat b.up2{color:#9be37a}
.stat .gauge{position:relative;height:5px;border-radius:3px;margin-top:5px;background:linear-gradient(90deg,#ff5d5d,#ff9a6b 30%,#e8c34a 50%,#9be37a 70%,#2fd27a)}
.stat .gauge i{position:absolute;top:-3px;width:3px;height:11px;border-radius:2px;background:#fff;box-shadow:0 0 0 1px #000a;transform:translateX(-50%)}
.stat.fng.clk{cursor:default}
.pghead .stats,.herorow .stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.pghead .stats{width:min(760px,100%)}
@media (max-width:640px){.pghead .stats,.herorow .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* row stars */
.sntbl th.st,.sntbl td.st{width:26px;min-width:26px;padding:0 0 0 4px!important;text-align:center}
.sntbl .rs{background:none;border:0;color:#6d7684;font-size:15px;line-height:1;width:24px;height:26px;padding:0;cursor:pointer;border-radius:6px}
.sntbl .rs:hover{color:var(--amb);background:#ffb00014}.sntbl .rs.on{color:#ffb000}.sntbl .rs:disabled{opacity:.5}
@media (hover:none),(max-width:640px){.sntbl th.st,.sntbl td.st{width:38px;min-width:38px;padding-left:0!important}.sntbl .rs{width:38px;height:40px;font-size:18px}}
#wl-toast{position:fixed;left:50%;bottom:calc(76px + env(safe-area-inset-bottom));transform:translate(-50%,12px);background:#17120a;border:1px solid #ffb00066;color:#ffd28a;font:600 13px Inter,sans-serif;padding:10px 16px;border-radius:10px;box-shadow:0 8px 30px #000a;opacity:0;pointer-events:none;transition:.2s;z-index:400;max-width:min(92vw,420px);text-align:center}
#wl-toast.on{opacity:1;transform:translate(-50%,0)}
@container tbl (max-width:340px){.sntbl th.st,.sntbl td.st{width:20px;min-width:20px;padding:0!important}.sntbl .rs{width:20px;font-size:14px}.sntbl td,.sntbl th{padding-left:2px;padding-right:2px}}
@media (hover:none),(max-width:640px){@container tbl (max-width:340px){.sntbl th.st,.sntbl td.st{width:38px;min-width:38px}.sntbl .rs{width:38px;font-size:18px}}}
@container tbl (max-width:340px){.tables>.tcard .sntbl td,.tables>.tcard .sntbl th{padding-left:2px;padding-right:2px}.tables>.tcard .sntbl th.st,.tables>.tcard .sntbl td.st{padding:0!important}}
/* ===== Markets header v3: title centered between two groups of three indicator cards ===== */
.pghead[data-pg="markets"]{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,380px) minmax(0,1fr);gap:14px;align-items:stretch;padding:16px 0 12px;text-align:center}
.pghead[data-pg="markets"] .pgt{order:2;display:flex;flex-direction:column;justify-content:center;align-items:center}
.pghead[data-pg="markets"] .pgt h1{font-size:clamp(34px,3.4vw,52px)}
.pghead[data-pg="markets"] .pgt .sub{margin:10px auto 0;max-width:340px}
#stats{display:contents}
#stats .sg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#stats .sgl{order:1}#stats .sgr{order:3}
#stats .stat{display:flex;flex-direction:column;justify-content:space-between;gap:6px;padding:10px 12px;text-align:left;min-height:112px}
#stats .stat small{font-size:10.5px}
#stats .stat b{font:700 clamp(20px,1.75vw,28px) var(--mono);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.1}
#stats .stat b em{font:600 11px var(--mono);margin-left:6px;color:inherit;opacity:.85;vertical-align:middle}
#stats .stat.mood b{font-size:clamp(20px,1.75vw,28px)}
#stats .sr{display:flex;align-items:center;gap:8px;min-height:30px}
#stats .sr.col{flex-direction:column;align-items:stretch;justify-content:flex-end;gap:5px}
#stats .sr>em{font:600 11.5px var(--mono);flex:none}
#stats .ssp{flex:1 1 auto;min-width:0;height:28px;width:100%;position:static;opacity:1}
#stats .sr .asof{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;font:500 10.5px var(--mono);color:var(--tx3)}
#stats .asof .up{color:var(--up)}#stats .asof .dn{color:var(--dn)}
#stats .gauge{margin:0;height:7px}#stats .gauge i{top:-3px;height:13px}
#stats .brd{height:7px;border-radius:4px;background:#ff5d5d66;overflow:hidden}#stats .brd i{display:block;height:100%;background:#2fd27a;border-radius:4px 0 0 4px}
.pghead[data-pg="forecast"],.pghead[data-pg="portfolio"]{justify-content:center;text-align:center}
.pghead[data-pg="forecast"] .sub,.pghead[data-pg="portfolio"] .sub{margin-left:auto;margin-right:auto}
@media (max-width:1099px){
 .pghead[data-pg="markets"]{grid-template-columns:1fr;gap:10px;padding:14px 0 8px}
 .pghead[data-pg="markets"] .pgt{order:0}
 #stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;order:1}
 #stats .sg{display:contents}
}
@media (max-width:640px){
 #stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 #stats .stat{min-height:100px}
}

.tsrc.out{margin:6px 2px 0;padding:0;text-align:right;color:#4f5865;font-size:9.5px;letter-spacing:.03em}

/* mobile QA: tap targets >= 40px (hit areas extended where the visual must stay compact) */
@media (max-width:640px){
 .top-r a,.top-r .status a,.top-r button,.brand{position:relative}
 .top-r a::after,.brand::after{content:"";position:absolute;left:-6px;right:-6px;top:50%;height:44px;transform:translateY(-50%)}
 .stabs a{min-height:40px;display:inline-flex;align-items:center;padding-top:0;padding-bottom:0}
 .mtabs button{min-height:40px}
 .src{position:relative}.src::after{content:"";position:absolute;left:-3px;right:-3px;top:-11px;bottom:-11px}
 .tr.clk{min-height:34px}
 .examples button,.examples a,.ex{min-height:40px}
 #q,#opts,#go,.ask-opts input,.ask-opts select,.ask-opts button{min-height:44px}
}

.wl-o.ne b{color:var(--tx2)}

.stat.subs .tu{font-size:.7em;color:var(--tx2);font-weight:600}.stat.subs .sub2{display:block;margin-top:2px;line-height:1.25}

/* unified list typography: Crypto / Stocks / Subnets / Watchlist share ticker + sub-line + tabular number styles */
.sntbl td.n,.sntbl th.n{font-variant-numeric:tabular-nums}
.sntbl td.tk2,.sntbl td.tk2.nm{font:600 12px var(--mono);color:#c5d1ff}
.sntbl td.tk2 small,.sntbl td.tk2 .tsub{display:block;font:400 10.5px Inter,sans-serif;color:var(--tx3)}
.sntbl td.n,.sntbl td.muted{font:500 12px var(--mono)}.sntbl td.muted{color:var(--tx3)}
.sntbl td{height:49px}.sntbl th{font:600 10.5px Inter,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.wl-n{font:600 12px var(--mono);color:#c5d1ff}.wl-s{font:400 10.5px Inter,sans-serif;color:var(--tx3)}
.wl-p{font-variant-numeric:tabular-nums}
@media (max-width:640px){.sntbl td{height:49px}}

.rxpill{display:inline-block;font-size:11px;color:var(--tx2);background:#ffffff08;border:1px solid var(--line);border-radius:99px;padding:2px 9px;margin:2px 0 6px 6px;vertical-align:middle;white-space:nowrap}.rxpill b{font:600 11.5px var(--mono)}.rxpill.up b{color:var(--up)}.rxpill.dn b{color:var(--dn,#ff6470)}.rxpill.ne b{color:var(--tx2)}
.pq .rxpill{margin-left:0}
.site-foot{max-width:1180px;margin:18px auto 0;padding:6px 24px 24px;display:flex;flex-wrap:wrap;justify-content:center;text-align:center;gap:6px 18px;font-size:12px}.site-foot a{color:var(--tx3);text-decoration:none}.site-foot a:hover{color:var(--tx)}
@media(max-width:760px){.site-foot{padding:0 16px 84px}.site-foot a{padding:10px 0}}

footer.wrap{text-align:center;padding-left:16px;padding-right:16px}

.anslinks{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-top:12px}.anslinks:empty{display:none}.anslinks .lk-h{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tx2);margin-right:2px}.anslinks .lk{display:inline-flex;align-items:center;min-height:30px;padding:4px 11px;border:1px solid var(--line);border-radius:999px;font-size:12.5px;font-weight:600;color:var(--tx);text-decoration:none;background:transparent}.anslinks .lk:hover{border-color:var(--tx2)}.anslinks .lk span{color:var(--tx2);font-weight:400}.anslinks .lk-asof{font-size:11.5px;margin-left:auto}
@media(max-width:600px){.anslinks .lk{min-height:36px;padding:6px 13px}.anslinks .lk-asof{margin-left:0;width:100%}}

.t-video{background:#ff4c4c1f;color:#ff8e8e}.t-release{background:#b07cff1f;color:#c9a8ff}.t-podcast{background:#ffb0001c;color:#ffcf66}
.mh{font:600 9.5px var(--mono);letter-spacing:.04em;color:#e0a458;border:1px solid #5a4217;border-radius:4px;padding:0 5px;white-space:nowrap}
.rhythm{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;padding:7px 12px;border-bottom:1px solid #1b1f26;background:#0a0805;font:10.5px var(--mono);color:#6d7684}.rhythm b{color:#9c7a3a;letter-spacing:.08em;text-transform:uppercase;font-size:10px}.rhythm a{color:#9aa3b0;text-decoration:none}.rhythm a:hover{color:var(--amb)}.rhythm em{font-style:normal;color:var(--amb)}.rhythm small{color:#5d6572}
.vstrip{display:flex;gap:10px;overflow-x:auto;padding:10px 12px;border-bottom:1px solid #1b1f26;scrollbar-width:thin}
.vcard{flex:0 0 190px;font:12px/1.35 Inter,sans-serif}.vcard a{display:block;margin-top:3px;color:#e3e8ee;text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.vcard a:hover{color:var(--amb)}
.vth,.vfr{display:block;width:190px;height:107px;border:0;border-radius:6px;background:#111 center/cover no-repeat;cursor:pointer;position:relative;padding:0}.vplay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px;text-shadow:0 1px 6px #000;background:linear-gradient(#0000,#0006)}.vth:hover .vplay{background:#0005}
.vmeta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:4px;font:10.5px var(--mono);color:#6d7684}
