/* Whodl live report pages (/report/:id). Same cyberpunk HUD language as the landing page (home.css):
   ink-violet night, neon lime brand, pink for linked wallets, cyan for data in motion, amber for bundles and warnings.
   System fonts only: the Worker CSP allows no external font hosts. */
:root{
  --bg:#07060d;--bg-2:#0d0b18;--panel:#110f1f;--panel-2:#17142a;--line:#262141;--line-2:#3a3360;
  --text:#f1eefc;--muted:#a49fbd;--faint:#6f6990;
  --green:#c4ee87;--green-hot:#d9ff9e;--green-ink:#11180a;
  --pink:#ff3ea5;--cyan:#38e8ff;--amber:#ffc65c;--red:#ff6b8a;
  --display:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono",SFMono-Regular,"JetBrains Mono",Menlo,Consolas,monospace;
  --glow-green:0 0 24px #c4ee8766,0 0 2px #c4ee87;
  color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font:15px/1.6 var(--display);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(900px 520px at 85% -10%,#ff3ea51f,transparent 70%),radial-gradient(800px 480px at 0% 10%,#38e8ff14,transparent 70%),linear-gradient(transparent 0 0)}
a{color:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:6px}
h1,h2,h3{margin:0;text-wrap:balance}
p{margin:0;text-wrap:pretty}
code{font-family:var(--mono)}
button,input,select{font:inherit;color:inherit}
.hidden{display:none!important}
.muted,small{color:var(--muted)}
small{display:block;font-size:12px}
.green,.pos{color:var(--green)}.red,.neg{color:var(--red)}.amber{color:var(--amber)}.cyan{color:var(--cyan)}.pink{color:var(--pink)}
.wrap{max-width:1200px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px));position:relative}

/* Header, logo and buttons match the landing page */
.top{position:sticky;top:0;z-index:20;background:#07060dd9;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:64px}
.brand{display:flex;align-items:center;gap:10px;font:800 22px/1 var(--display);letter-spacing:-.05em;text-decoration:none}
.logo{width:30px;height:30px;flex:none;filter:drop-shadow(0 0 10px #c4ee8766)}
.logo-bg{fill:var(--green)}
.logo-w{fill:none;stroke:var(--green-ink);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.logo-n{fill:var(--green-ink)}
.logo-hot{fill:var(--pink);stroke:var(--green-ink);stroke-width:1.2}
.nav{display:flex;align-items:center;gap:26px;font:500 14px var(--display);color:var(--muted)}
.nav a:not(.btn){text-decoration:none;transition:color .2s}
.nav a:not(.btn):hover{color:var(--text)}
.btn,button,select{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 14px;border-radius:10px;font:600 13px/1.1 var(--display);text-decoration:none;border:1px solid var(--line-2);color:var(--text);background:var(--panel);white-space:nowrap;cursor:pointer;transition:border-color .2s,box-shadow .2s,background .2s,transform .2s}
.btn:hover,button:hover,select:hover{border-color:var(--cyan);box-shadow:0 0 20px -8px var(--cyan)}
.btn.neon{background:var(--green);border-color:var(--green);color:var(--green-ink);font-weight:700;box-shadow:0 0 0 1px #c4ee8733,0 10px 30px -8px #c4ee8780}
.btn.neon:hover{background:var(--green-hot);transform:translateY(-1px)}

.kicker{display:inline-flex;align-items:center;gap:10px;font:600 11px/1.4 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--green)}
.kicker::before{content:"//";color:var(--faint);letter-spacing:0}
.kicker:has(.blink)::before{display:none}
.kicker.pink{color:var(--pink)}.kicker.amber{color:var(--amber)}.kicker.cyan{color:var(--cyan)}
.blink{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:var(--glow-green);animation:blink 1.6s steps(2) infinite;flex:none}
@keyframes blink{50%{opacity:.25}}
.loading{display:flex;align-items:center;gap:12px;justify-content:center;min-height:60vh;font:13px var(--mono);color:var(--muted);letter-spacing:.08em}

/* Hero */
.hero{padding:56px 0 40px;position:relative}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,var(--line-2),transparent)}
.titleline{display:flex;align-items:center;flex-wrap:wrap;gap:12px 22px;margin:18px 0 10px}
h1{font:900 clamp(48px,8vw,104px)/.95 var(--display);letter-spacing:-.045em;background:linear-gradient(95deg,var(--text) 10%,var(--green) 60%,var(--cyan));-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 60px #c4ee8726;overflow-wrap:anywhere}
.pill{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;font:700 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--amber);color:var(--amber);box-shadow:0 0 18px -6px var(--amber)}
.pill::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}
.pill[data-tone=accumulation_in_sample]{color:var(--green);border-color:var(--green);box-shadow:0 0 18px -6px var(--green)}
.pill[data-tone=distribution_in_sample]{color:var(--pink);border-color:var(--pink);box-shadow:0 0 18px -6px var(--pink)}
.pill[data-tone=insufficient_evidence]{color:var(--muted);border-color:var(--line-2);box-shadow:none}
.subtitle{font-size:clamp(17px,2vw,21px);color:var(--muted);max-width:720px}
.contract{display:flex;align-items:center;flex-wrap:wrap;gap:10px 14px;margin:22px 0 30px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:#ffffff05;width:fit-content;max-width:100%;font:11px var(--mono);color:var(--faint);letter-spacing:.12em}
.contract code{color:var(--text);font-size:12.5px;letter-spacing:0;overflow-wrap:anywhere}
.contract a{color:var(--cyan);text-decoration:none;letter-spacing:.04em}
.takeaway{position:relative;padding:28px 30px;border-radius:16px;background:linear-gradient(180deg,#151229ee,#0c0a17f2);border:1px solid var(--line-2);box-shadow:0 0 0 1px #38e8ff14,0 40px 120px -50px #ff3ea54d,0 0 80px -40px #38e8ff55}
.takeaway::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,var(--green),transparent 35%,transparent 65%,var(--pink));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.claims p{margin:10px 0 4px}
.claims.big p{font-size:clamp(18px,2.1vw,22px);line-height:1.45;font-weight:600;letter-spacing:-.01em;max-width:900px}
.claimlinks{display:flex;flex-wrap:wrap;gap:4px 12px}
.claimlinks a{font:11px var(--mono);color:var(--faint);text-decoration:none}
.claimlinks a:hover{color:var(--cyan)}
.scope{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.ai-provenance{margin-top:6px;font:11px var(--mono);color:var(--faint)}

/* Key numbers */
.band{padding:44px 0 12px}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 22px}
.stat{--c:var(--green);position:relative;padding:18px 18px 16px;border-radius:14px;background:linear-gradient(180deg,var(--panel-2),var(--panel));border:1px solid var(--line);overflow:hidden;min-width:0}
.stat::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--c);box-shadow:0 0 14px var(--c)}
.stat span{font:600 10.5px/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.stat strong{display:block;margin:8px 0 4px;font:700 clamp(24px,2.6vw,32px)/1.1 var(--mono);letter-spacing:-.03em;color:var(--c);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.stat small{font-size:12px;color:var(--muted)}
.stat.pink{--c:var(--pink)}.stat.amber{--c:var(--amber)}.stat.cyan{--c:var(--cyan)}.stat.red{--c:var(--red)}.stat.muted{--c:var(--line-2)}.stat.muted strong{color:var(--text)}
.signals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sig{padding:18px 20px;border-radius:14px;border:1px solid var(--line);background:var(--panel)}
.sig.good{border-color:#c4ee8740}.sig.bad{border-color:#ff3ea540}.sig.watch{border-color:#38e8ff40}
.sig p{font-size:14.5px}
.warning{margin-top:14px;padding:12px 16px;border-radius:10px;border:1px solid #ffc65c40;background:#ffc65c0d;color:#f3dca8;font-size:13px}

/* Panels */
.panel-wrap{padding:14px 0}
.panel{padding:30px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(180deg,#110f1fcc,#0b0915e6);position:relative}
.panel h2{font:800 clamp(24px,3vw,34px)/1.15 var(--display);letter-spacing:-.03em;margin:10px 0 8px}
.panel h3{font-size:17px;margin:18px 0 6px}
.panel>.muted{max-width:820px;font-size:14px;margin-bottom:18px}
.switch{display:inline-flex;padding:3px;border-radius:10px;background:var(--bg-2);border:1px solid var(--line);margin-bottom:12px}
.switch button{border:0;background:none;padding:7px 14px;font:600 12px var(--mono);color:var(--muted);box-shadow:none}
.switch .selected{background:var(--green);color:var(--green-ink)}
.controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:14px}
.controls .switch{margin:0}
.controls input{flex:1;min-width:200px;padding:10px 14px;border-radius:10px;border:1px solid var(--line-2);background:var(--bg-2)}
select{background:var(--bg-2);appearance:none;padding-right:14px}

/* Tables */
.data-table{overflow:auto;border:1px solid var(--line);border-radius:12px}
table{border-collapse:collapse;width:100%;min-width:640px;font-size:13px}
th{position:sticky;top:0;background:var(--bg-2);text-align:left;font:600 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);padding:12px 14px;border-bottom:1px solid var(--line)}
td{padding:12px 14px;border-bottom:1px solid #1c1833;vertical-align:top;font-variant-numeric:tabular-nums}
tbody tr:hover{background:#ffffff05}
td a{color:var(--cyan);text-decoration:none;font-family:var(--mono)}
td small{font-size:11px;color:var(--faint)}

/* Bubble map */
.linkmetrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}
.linkmetrics>div{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg-2)}
.linkmetrics span{font:600 10.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.linkmetrics strong{display:block;font:700 26px/1.2 var(--mono);color:var(--pink);margin:6px 0 2px}
.linkmetrics strong.amber{color:var(--amber)}.linkmetrics strong.cyan{color:var(--cyan)}
.bubblemap{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:radial-gradient(circle at 50% 50%,#1a1533,#07060d 75%);box-shadow:inset 0 0 80px #000}
.bubblemap svg{display:block;width:100%;height:auto}
.bubblemap circle{stroke:#07060d;stroke-width:1.5;cursor:pointer;transition:filter .2s}
.bubblemap a:hover circle{filter:drop-shadow(0 0 10px currentColor) brightness(1.15)}
.bubblemap line{stroke:#5b5291;stroke-width:1.4}
.bubblemap line.bundle{stroke:var(--amber);stroke-dasharray:5 4}
.bubblemap text{fill:#07060d;font:700 10px var(--mono);pointer-events:none}
.bubblemap text.light{fill:var(--muted)}
.clusters{display:grid;gap:10px;margin-top:14px}
.cluster{border:1px solid var(--line);border-left:3px solid var(--c);border-radius:12px;padding:14px 18px;background:var(--bg-2)}
.cluster h3{margin:0 0 4px;font-size:15px}
.cluster ul{margin:8px 0;padding-left:18px;font-size:13px}
.cluster li a,.sellerbody a,.rotation a{color:var(--cyan);text-decoration:none}
.bubbleframe{width:100%;height:560px;border:1px solid var(--line);border-radius:14px;margin-top:16px;background:#fff}

/* Sellers, rotations, facts */
.seller{border:1px solid var(--line);border-radius:12px;margin:10px 0;background:var(--bg-2);overflow:hidden}
.seller summary{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 20px;gap:12px;align-items:center;padding:14px 18px;cursor:pointer;list-style:none}
.seller summary::-webkit-details-marker{display:none}
.seller summary::after{content:"+";color:var(--amber);font:20px var(--mono)}
.seller[open] summary::after{content:"−"}
.seller summary strong{font:600 14px var(--mono)}
.seller summary small{font:10px var(--mono);letter-spacing:.1em;color:var(--faint)}
.sellerbody{padding:4px 18px 18px;border-top:1px solid var(--line);font-size:13.5px}
.sellerbody p{margin:12px 0}
.rotations{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.rotationcard{padding:18px;border:1px solid #38e8ff33;border-radius:12px;background:var(--bg-2)}
.rotationcard h3{font:700 17px var(--mono);margin:8px 0}
.rotationcard h3 a{color:var(--cyan);text-decoration:none}
.rotationcard p{font-size:13px;color:var(--muted)}
.eyebrow{font:600 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
.receiptlinks{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.receiptlinks a{font:11px var(--mono);padding:3px 8px;border-radius:6px;border:1px solid var(--line);color:var(--green);text-decoration:none}
.receiptlinks a:hover{border-color:var(--green)}
.facts{display:grid;gap:10px;margin-top:20px}
.fact{min-width:0;overflow-wrap:anywhere;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg-2);font-size:14px}
.fact p{margin:6px 0}
.fact small{font:11px/1.6 var(--mono);color:var(--faint);overflow-wrap:anywhere}
.fact:target{border-color:var(--cyan);box-shadow:0 0 24px -10px var(--cyan)}
.method{margin-top:18px;padding:14px 18px;border:1px solid var(--line);border-radius:12px;font-size:13.5px;color:var(--muted)}
.method summary{cursor:pointer;color:var(--text);font-weight:600}
.method p,.method ul{margin:10px 0}
.resource{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.foot{padding:40px 0 50px;color:var(--faint);font:12px var(--mono);letter-spacing:.08em}
.foot .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:24px}
.foot a{color:var(--green);text-decoration:none}

@media (max-width:1000px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.signals{grid-template-columns:1fr}}
@media (max-width:700px){
 .hide-sm{display:none}.nav{gap:12px}
 .hero{padding:34px 0 28px}.takeaway,.panel{padding:20px 16px;border-radius:14px}
 .stats{gap:8px}.stat{padding:14px 12px}
 .linkmetrics{grid-template-columns:1fr}
 .seller summary{grid-template-columns:1.25fr 1fr 16px;padding:12px}
 .seller summary>div:nth-child(2),.seller summary>div:nth-child(3){display:none}
 .bubbleframe{height:420px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}

/* A report URL works from the first snapshot through the final immutable report. */
.progress-shell{padding:60px 0 110px;min-height:75vh}
.progress-card{max-width:840px;margin:0 auto;padding:clamp(24px,5vw,48px);border:1px solid var(--line-2);border-radius:18px;background:linear-gradient(165deg,#17142ae8,#0d0b18);box-shadow:0 32px 90px -50px #38e8ff88}
.progress-card h1{margin:18px 0 16px;font-size:clamp(37px,7vw,68px)}
.progress-title{font-size:.65em;color:var(--text);-webkit-text-fill-color:var(--text)}
.progress-sub{font-size:17px;color:var(--text)}
.account-progress{display:flex;flex-direction:column;gap:10px;margin:20px 0;padding:17px 20px;border:1px solid var(--line-2);border-radius:12px;background:#ffffff05}
.account-progress strong{font:700 clamp(17px,2.6vw,22px) var(--display);color:var(--green)}
.account-progress progress{display:block;width:100%;height:12px;overflow:hidden;border:0;border-radius:10px;background:#302b43;accent-color:var(--green)}
.account-progress progress::-webkit-progress-bar{border-radius:10px;background:#302b43}
.account-progress progress::-webkit-progress-value{border-radius:10px;background:var(--green)}
.account-progress progress::-moz-progress-bar{border-radius:10px;background:var(--green)}
.account-progress small{line-height:1.5;color:var(--muted)}
.progress-eta{display:flex;flex-direction:column;gap:3px;margin:24px 0;padding:17px 20px;border:1px solid #38e8ff60;border-radius:12px;background:#38e8ff0b}
.progress-eta strong{font:700 clamp(18px,3vw,25px) var(--display);color:var(--cyan)}
.progress-eta small{line-height:1.5}
.progress-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0 34px;padding:0;list-style:none}
.progress-steps li{display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:9px;padding:14px 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel);color:var(--muted)}
.progress-steps li.active{border-color:var(--green);color:var(--text)}
.progress-steps li.complete{border-color:#c4ee8740}
.progress-steps strong{grid-column:2;font:600 11px var(--mono);color:var(--faint)}
.progress-steps .active strong{color:var(--green)}
.progress-dot{width:9px;height:9px;border-radius:50%;background:var(--faint)}
.progress-steps .active .progress-dot{background:var(--green);box-shadow:var(--glow-green)}
.progress-steps .complete .progress-dot{background:var(--green)}
.progress-facts{padding:22px;border:1px solid var(--line);border-radius:12px;background:#ffffff05}
.progress-facts h2{font-size:20px;margin-bottom:10px}
.progress-facts ul{padding-left:22px;margin:0 0 12px}
.progress-facts li{margin:6px 0;overflow-wrap:anywhere}
.progress-facts .muted{font-size:13px}
.progress-contract{margin:22px 0 9px;font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.progress-contract code{color:var(--text)}
.progress-refresh{font-size:13px;color:var(--cyan)}
@media(max-width:640px){.progress-shell{padding-top:25px}.progress-steps{grid-template-columns:1fr}.progress-steps li{grid-template-columns:auto 1fr auto}.progress-steps strong{grid-column:3}}

.progress-pulse{margin-bottom:18px;border-color:#ffc65c55}.progress-pulse b{color:var(--amber)}.progress-pulse small{line-height:1.5}
.x-narrative{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.x-narrative h3{margin:0 0 12px}.x-narrative h4{margin:20px 0 9px;font-size:15px}
.x-narrative ul{margin:0;padding-left:20px}.x-narrative li{margin:8px 0;overflow-wrap:anywhere}
.x-narrative-sides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.x-narrative-sides li{padding:12px;border:1px solid var(--line);border-radius:9px;list-style:none;background:#ffffff05}
.x-narrative-sides ul{padding:0}.x-narrative-sides li p{margin:8px 0}
@media(max-width:640px){.x-narrative-sides{grid-template-columns:1fr}}

.briefing-body{overflow-wrap:anywhere}.briefing-body p{line-height:1.75;margin-bottom:1.3em}
.room-reason-panel{border-color:#ffc65c55;background:linear-gradient(150deg,#211c24,#11111c)}
.room-reason-panel h2{color:var(--amber);font-size:clamp(28px,4vw,40px);margin:12px 0}
.room-reason-panel #room-reason-text{max-width:850px;font-size:clamp(17px,2.4vw,21px);line-height:1.65}
.report-card-image{display:block;width:min(100%,520px);height:auto;border:1px solid #3b5c42;border-radius:18px;margin:20px auto 0;background:#0b1510}

/* Answer first: the one-line answer and the early/late gauge lead the page. */
.answer{position:relative;margin-top:4px;padding:24px 26px;border-radius:18px;background:linear-gradient(180deg,#151229ee,#0c0a17f2);border:1px solid var(--line-2);box-shadow:0 0 0 1px #38e8ff14,0 40px 120px -50px #ff3ea54d,0 0 80px -40px #38e8ff55}
.answer::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,var(--green),transparent 35%,transparent 65%,var(--pink));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.answer-text{margin:12px 0 4px;font:700 clamp(20px,2.6vw,28px)/1.35 var(--display);letter-spacing:-.015em;max-width:920px}
.gauge-block{margin-top:20px}
.gauge-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.gauge-head span{font:600 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.gauge-head strong{font:700 clamp(18px,2.4vw,24px) var(--mono);color:var(--amber)}
.gauge{position:relative;height:12px;border-radius:99px;background:linear-gradient(90deg,var(--green),var(--cyan) 35%,var(--amber) 65%,var(--pink))}
.gauge.room-gauge{background:linear-gradient(90deg,var(--pink),var(--amber) 40%,var(--amber) 60%,var(--green))}
.gauge.hype-gauge{background:linear-gradient(90deg,var(--green),var(--cyan) 45%,var(--cyan) 55%,var(--pink))}
.hype-words{margin:12px 0 4px;font-weight:600;color:var(--text)}
.gauge i{position:absolute;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:var(--bg);border:3px solid var(--text);box-shadow:0 0 14px #fff8}
.gauge-scale{display:flex;justify-content:space-between;margin-top:8px;font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.gauge-parts{margin:10px 0 14px;font:12px var(--mono);color:var(--muted)}
.reasons{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px}
.reasons li{display:flex;gap:10px;align-items:baseline;font-size:15px}
.src{flex:none;min-width:62px;text-align:center;padding:2px 7px;border-radius:6px;font:700 10px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--green);color:var(--green)}
.src.x{border-color:var(--cyan);color:var(--cyan)}
.hero .takeaway{margin-top:4px}

/* Am I late? / If they sell */
.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.quick-grid:has(.quick-card.hidden){grid-template-columns:1fr}
.quick-card{position:relative;padding:22px 22px 18px;border-radius:16px;border:1px solid #38e8ff40;background:linear-gradient(180deg,var(--panel-2),var(--panel));min-width:0}
.quick-card.sell{border-color:#ff3ea540}
.quick-big{margin:10px 0 0;font:800 clamp(40px,6vw,56px)/1 var(--mono);letter-spacing:-.04em;color:var(--cyan)}
.quick-big i{font-style:normal;color:var(--faint)}
.sell .quick-big{color:var(--pink)}
.quick-sub{margin:6px 0 14px;color:var(--muted);font-size:14px}
.quick-rows{margin:0 0 12px;display:grid;gap:0}
.quick-rows div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line);font-size:14px}
.quick-rows dt{color:var(--muted)}.quick-rows dd{margin:0;text-align:right;font-family:var(--mono);font-size:13px}
.scenarios{list-style:none;margin:0 0 12px;padding:0}
.scenarios li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-top:1px solid var(--line);font-size:14px}
.scenarios b{font:700 18px var(--mono);color:var(--pink)}
.quick-card>div>small{line-height:1.5}

/* Who's holding */
.toplist{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px}
.toplist li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--bg-2)}
.rank{font:700 13px var(--mono);color:var(--faint);text-align:center}
.who{min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.who a{color:var(--cyan);text-decoration:none;font:600 14px var(--mono);overflow-wrap:anywhere}
.tags{display:flex;flex-wrap:wrap;gap:5px}
.tag{padding:2px 8px;border-radius:99px;font:700 10px/1.6 var(--mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line-2);color:var(--muted);cursor:help}
.tag-smart{color:var(--green);border-color:#c4ee8766;background:#c4ee8712}
.tag-dev{color:var(--pink);border-color:#ff3ea566;background:#ff3ea512}
.tag-sniper{color:var(--red);border-color:#ff6b8a66;background:#ff6b8a12}
.tag-fresh{color:var(--cyan);border-color:#38e8ff66;background:#38e8ff12}
.tag-linked{color:#ff8fd0;border-color:#ff8fd066;background:#ff8fd012}
.tag-all-in{color:var(--amber);border-color:#ffc65c66;background:#ffc65c12}
.share{text-align:right}
.share b{font:700 17px var(--mono);color:var(--text)}
.share small{font:11px var(--mono);white-space:nowrap}

/* Money flow */
.flowbars{display:grid;gap:10px;margin:8px 0 14px}
.flowrow{display:grid;grid-template-columns:40px minmax(0,1fr) auto;grid-template-areas:"k bar v" "k bar w";align-items:center;column-gap:12px}
.flowrow>span{grid-area:k;font:700 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.flowbar{grid-area:bar;height:14px;border-radius:99px;background:var(--bg-2);border:1px solid var(--line);overflow:hidden}
.flowbar i{display:block;height:100%;border-radius:99px;background:var(--green);box-shadow:0 0 14px #c4ee8766}
.flowrow.out .flowbar i{background:var(--pink);box-shadow:0 0 14px #ff3ea566}
.flowrow b{grid-area:v;font:700 18px var(--mono);text-align:right}
.flowrow small{grid-area:w;text-align:right;font-size:11px}
.flow-net{font:700 clamp(18px,2.4vw,22px) var(--mono);margin:4px 0 10px}
.flow-notes{margin:0 0 12px;padding-left:20px;font-size:14px}.flow-notes li{margin:6px 0}

/* Lower-priority sections fold away but keep their anchors. */
.fold>summary{list-style:none;cursor:pointer;position:relative;padding-right:40px}
.fold>summary::-webkit-details-marker{display:none}
.fold>summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line-2);border-radius:8px;font:18px/1 var(--mono);color:var(--muted)}
.fold[open]>summary::after{content:"−"}
.fold>summary h2{margin-bottom:0}
.fold[open]>summary{margin-bottom:16px}
.fold:not([open]){padding-top:22px;padding-bottom:22px}
.fold .takeaway{margin-bottom:12px}
#evidence>.wrap>.resource{margin-top:16px}

@media (max-width:700px){
 .wrap{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
 h1{font-size:clamp(40px,13vw,64px)}
 .answer{padding:18px 16px;border-radius:14px}
 .reasons li{font-size:14px}
 .quick-grid{grid-template-columns:1fr}
 .quick-card{padding:18px 16px}
 .toplist li{grid-template-columns:22px minmax(0,1fr);padding:10px 12px}
 .toplist .share{grid-column:2;text-align:left;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
 .share b{font-size:15px}
 .fold:not([open]){padding-top:16px;padding-bottom:16px}
 .fold>summary h2{font-size:21px}
 .contract{width:100%}
 /* The wallet table becomes one card per account on phones. */
 .data-table{border:0;overflow:visible}.data-table table{min-width:0}.data-table thead{display:none}
 .data-table tr{display:block;border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin:0 0 10px;background:var(--bg-2)}
 .data-table td{display:flex;justify-content:space-between;gap:12px;border:0;padding:6px 0;text-align:right;overflow-wrap:anywhere}
 .data-table td::before{content:attr(data-label);color:var(--faint);font:600 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;text-align:left}
 .data-table td:first-child{display:block;text-align:left;border-bottom:1px solid var(--line);padding-bottom:10px;margin-bottom:4px}
 .data-table td:first-child::before{display:none}
 .data-table td>div{max-width:65%}.data-table td:first-child>div{max-width:100%}
}
.example-note{margin:0 0 16px;padding:8px 12px;border:1px dashed var(--line-2);border-radius:10px;font:12px var(--mono);color:var(--muted);width:fit-content;max-width:100%}
.example-note a{color:var(--green);text-decoration:none}
[hidden]{display:none!important}
#room-reason-source{margin-top:12px;font-size:13px}
.showall{margin-top:12px;width:100%}
@media (min-width:1000px){.toplist{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.stat strong{font-size:20px;overflow-wrap:break-word}.contract code{font-size:11px}}
