/* Etherscreenly — premium dark theme. One accent (brand emerald), glass surfaces, Inter + JetBrains Mono. */
:root{
  --bg:#050807;--bg2:#08100d;--ink:#e8efeb;--ink2:#b9c6bf;--muted:#76857d;--faint:#4a5751;
  --line:rgba(255,255,255,.07);--line2:rgba(255,255,255,.12);
  --glass:rgba(255,255,255,.028);--glass2:rgba(255,255,255,.05);
  --accent:#00e676;--accent2:#5cf2a6;--accent-d:rgba(0,230,118,.14);
  --red:#ff5c6c;--amber:#ffb547;--hot:#ff8a3d;--blue:#6cb6ff;--pend:#a596ff;
  --green:var(--accent);
  --r:14px;--rs:9px;
  --sans:'Inter',ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
a{color:var(--accent2);text-decoration:none}a:hover{color:#fff}
::selection{background:rgba(0,230,118,.3)}
.hidden{display:none!important}
.muted{color:var(--muted)}.small{font-size:11.5px}
button{font:inherit;color:inherit}

/* ---------- background: fine grid, two soft glows, film grain */
.bgfx{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(1200px 600px at 50% -10%,#0b1a13 0%,transparent 60%),var(--bg)}
.grid-bg{position:absolute;inset:-1px;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse 90% 70% at 50% 0%,#000 30%,transparent 80%)}
.glow{position:absolute;border-radius:50%;filter:blur(90px);opacity:.55}
.glow.g1{width:620px;height:620px;left:50%;top:-260px;transform:translateX(-50%);background:radial-gradient(circle,rgba(0,230,118,.32),transparent 65%);animation:breathe 9s ease-in-out infinite}
.glow.g2{width:520px;height:520px;right:-180px;top:900px;background:radial-gradient(circle,rgba(0,180,140,.16),transparent 65%)}
.noise{position:absolute;inset:0;opacity:.06;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
@keyframes breathe{50%{opacity:.8;transform:translateX(-50%) scale(1.06)}}
.glass{background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));border:1px solid var(--line);border-radius:var(--r);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);box-shadow:0 1px 0 rgba(255,255,255,.04) inset,0 20px 50px -30px rgba(0,0,0,.8)}

/* ---------- top nav */
.topnav{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:22px;padding:12px clamp(16px,4vw,40px);background:rgba(5,8,7,.55);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}
.topnav.scrolled{border-bottom-color:var(--line);background:rgba(5,8,7,.82)}
.navbrand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:600;letter-spacing:-.01em;font-size:16px}
.navbrand img{border-radius:8px;box-shadow:0 0 0 1px var(--line2),0 0 24px -4px rgba(0,230,118,.45)}
.navbrand b{color:var(--accent);font-weight:700}
.navlinks{display:flex;gap:22px;margin-left:auto}
.navlinks a{color:var(--ink2);font-size:13.5px}.navlinks a:hover{color:#fff}
.navlive{display:flex;align-items:center;gap:8px;font:500 11.5px var(--mono);color:var(--muted);padding:5px 11px;border:1px solid var(--line);border-radius:99px;background:var(--glass)}
.pulse{width:7px;height:7px;border-radius:50%;background:var(--faint);position:relative}
.pulse.ok{background:var(--accent)}.pulse.ok::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1px solid var(--accent);animation:ping 1.8s cubic-bezier(0,0,.2,1) infinite}
@keyframes ping{75%,100%{transform:scale(2.1);opacity:0}}

/* ---------- hero */
.hero{position:relative;padding:clamp(56px,10vh,120px) clamp(16px,4vw,40px) 34px;text-align:center}
.hero-inner{max-width:1080px;margin:0 auto}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font:500 12px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent2);padding:7px 14px;border-radius:99px;border:1px solid rgba(0,230,118,.25);background:rgba(0,230,118,.06)}
.dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent);display:inline-block;animation:blink 2s ease-in-out infinite}
@keyframes blink{50%{opacity:.35}}
.hero h1{font-size:clamp(38px,6.6vw,84px);line-height:1.02;letter-spacing:-.045em;font-weight:700;margin:26px 0 20px;background:linear-gradient(180deg,#fff 30%,#b9c9c0);-webkit-background-clip:text;background-clip:text;color:transparent}
.accent-text{background:linear-gradient(92deg,#00e676 0%,#7dffc0 45%,#00c3a0 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 30px rgba(0,230,118,.25))}
.lead{max-width:700px;margin:0 auto;color:var(--ink2);font-size:clamp(15px,1.6vw,18.5px);line-height:1.6;font-weight:400}
.ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:34px 0 46px}
.btn{display:inline-flex;align-items:center;gap:9px;padding:13px 22px;border-radius:12px;font-weight:600;font-size:15px;letter-spacing:-.01em;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s}
.btn-primary{background:linear-gradient(180deg,#22f08c,#00c766);color:#03140b;box-shadow:0 0 0 1px rgba(0,230,118,.6),0 10px 40px -10px rgba(0,230,118,.7),inset 0 1px 0 rgba(255,255,255,.4)}
.btn-primary:hover{color:#03140b;transform:translateY(-1px);box-shadow:0 0 0 1px rgba(0,230,118,.8),0 16px 50px -10px rgba(0,230,118,.85),inset 0 1px 0 rgba(255,255,255,.5)}
.btn-ghost{color:var(--ink);border:1px solid var(--line2);background:var(--glass)}
.btn-ghost:hover{color:#fff;border-color:rgba(255,255,255,.25);background:var(--glass2);transform:translateY(-1px)}
.herostats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-width:900px;margin:0 auto}
.hs{padding:18px 16px;text-align:left}
.hv{font:600 clamp(24px,3vw,34px)/1.1 var(--mono);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.hv small{font-size:.55em;color:var(--muted);margin-left:2px}
.hv.red{color:var(--red)}.hv.accent{color:var(--accent)}
.hk{color:var(--muted);font-size:12.5px;margin-top:6px}

/* live ticker */
.ticker{display:flex;align-items:center;gap:0;max-width:1240px;margin:46px auto 0;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.02);overflow:hidden}
.ticker-label{display:flex;align-items:center;gap:8px;font:600 11px var(--mono);letter-spacing:.1em;color:var(--accent2);padding:0 16px;border-right:1px solid var(--line);align-self:stretch;background:rgba(0,230,118,.05);white-space:nowrap}
.ticker-viewport{overflow:hidden;flex:1;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.ticker-track{display:flex;gap:10px;padding:10px 0;width:max-content;animation:marquee 60s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}}
.tk{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 6px;border:1px solid var(--line);border-radius:99px;background:rgba(255,255,255,.025);font-size:12.5px;white-space:nowrap;cursor:pointer;transition:border-color .2s}
.tk:hover{border-color:var(--line2)}
.tk img{width:20px;height:20px;border-radius:50%;object-fit:cover;background:#111}
.tk b{font-weight:600}.tk .age{font:11px var(--mono);color:var(--muted)}

/* features */
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1240px;margin:70px auto 80px;padding:0 clamp(16px,4vw,40px)}
.fcard{padding:26px 24px 24px;position:relative;overflow:hidden;transition:transform .35s,border-color .35s}
.fcard::before{content:"";position:absolute;inset:-1px;border-radius:inherit;background:radial-gradient(400px 160px at 0% 0%,rgba(0,230,118,.12),transparent 60%);pointer-events:none}
.fcard:hover{transform:translateY(-3px);border-color:rgba(0,230,118,.22)}
.ficon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:rgba(0,230,118,.1);border:1px solid rgba(0,230,118,.25);box-shadow:0 0 24px -6px rgba(0,230,118,.5)}
.ficon svg{width:20px;height:20px;fill:var(--accent)}
.fcard h3{margin:18px 0 8px;font-size:18px;letter-spacing:-.02em;font-weight:600;color:#fff;border:0;padding:0}
.fcard p{margin:0;color:var(--ink2);font-size:14px;line-height:1.6}

/* animations */
.fade{opacity:0;transform:translateY(14px);animation:fadeup .9s cubic-bezier(.2,.7,.2,1) forwards}
.d1{animation-delay:.08s}.d2{animation-delay:.16s}.d3{animation-delay:.24s}.d4{animation-delay:.32s}.d5{animation-delay:.42s}
@keyframes fadeup{to{opacity:1;transform:none}}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.fade,.reveal{opacity:1;transform:none}}

/* ---------- app */
.app{max-width:1920px;margin:0 auto;padding:10px clamp(10px,2vw,28px) 30px;scroll-margin-top:60px}
.brandblock{display:grid;grid-template-columns:auto 1fr auto;gap:28px;padding:22px 24px;position:relative;overflow:hidden;border-color:rgba(0,230,118,.18);background:linear-gradient(120deg,rgba(0,230,118,.10),rgba(0,230,118,.02) 40%,rgba(255,255,255,.015))}
.brandblock::after{content:"";position:absolute;right:-120px;top:-160px;width:420px;height:420px;background:radial-gradient(circle,rgba(0,230,118,.16),transparent 60%);pointer-events:none}
.bb-left{display:flex;gap:16px;align-items:center}
.bb-mark img{border-radius:16px;display:block;box-shadow:0 0 0 1px rgba(0,230,118,.35),0 0 40px -6px rgba(0,230,118,.55)}
.bb-name{font:700 28px/1 var(--sans);letter-spacing:-.03em;margin:8px 0 4px;color:#fff}
.bb-sub{font:12px var(--mono);color:var(--muted)}
.bb-mid{min-width:0}
.bb-desc{margin:0 0 12px;color:var(--ink2);font-size:13.5px;max-width:720px}
.bb-desc b{color:#fff;font-weight:600}
.bag{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bag label{font:600 11px var(--mono);letter-spacing:.08em;color:var(--accent2)}
.bag input{flex:1;min-width:220px;max-width:420px;background:rgba(0,0,0,.35);border:1px solid var(--line2);border-radius:9px;color:var(--ink);padding:8px 12px;font:13px var(--mono);outline:none;transition:border-color .2s,box-shadow .2s}
.bag input:focus,#q:focus{border-color:rgba(0,230,118,.55);box-shadow:0 0 0 3px rgba(0,230,118,.12)}
.btn-s{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border-radius:9px;border:1px solid rgba(0,230,118,.5);background:rgba(0,230,118,.12);color:var(--accent2);font-weight:600;font-size:12.5px;cursor:pointer;transition:background .2s,border-color .2s}
.btn-s:hover{background:rgba(0,230,118,.2);color:#fff}
.btn-s.ghost{border-color:var(--line2);background:var(--glass);color:var(--ink2)}
.btn-s.ghost:hover{border-color:rgba(255,255,255,.25);color:#fff}
.bagout{margin-top:10px;border:1px solid var(--line);border-radius:10px;background:rgba(0,0,0,.3);padding:10px 12px;max-height:260px;overflow:auto;font-size:12.5px}
.bagrow{display:flex;align-items:center;gap:10px;padding:6px 4px;border-bottom:1px solid var(--line);cursor:pointer}
.bagrow:last-child{border-bottom:0}.bagrow:hover{background:rgba(255,255,255,.03)}
.bagrow img{width:22px;height:22px;border-radius:50%;object-fit:cover;background:#111}
.bagrow .grow{flex:1;min-width:0}.bagrow .val{font-family:var(--mono);text-align:right}
.bb-links{display:flex;gap:18px;margin-top:12px;font-size:12.5px;flex-wrap:wrap}
.bb-links a{color:var(--ink2)}.bb-links a:hover{color:#fff}
.bb-right{display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-size:12px}
.updline{font:11.5px var(--mono);color:var(--muted);text-align:right}
.evtbar{min-height:0;margin:8px 4px 0;font:12px var(--mono)}
.evt{color:var(--accent2)}
.ago{color:var(--muted)}

.live{display:inline-flex;align-items:center;gap:6px;font:600 10.5px var(--mono);letter-spacing:.08em;padding:3px 9px;border-radius:99px;border:1px solid var(--line2);background:rgba(0,0,0,.25)}
.live i{width:6px;height:6px;border-radius:50%;background:var(--muted)}
.live.ok{color:var(--accent);border-color:rgba(0,230,118,.35)}.live.ok i{background:var(--accent);box-shadow:0 0 8px var(--accent);animation:blink 1.6s infinite}
.live.warn{color:var(--amber)}.live.warn i{background:var(--amber)}
.live.down{color:var(--red)}.live.down i{background:var(--red)}

/* header tools */
.hdrtools{display:flex;align-items:center;gap:8px}
.clock{font:600 13px var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.02em;color:#fff;padding:5px 11px;border:1px solid var(--line2);border-radius:9px;background:rgba(0,0,0,.3)}
.seg{display:inline-flex;border:1px solid var(--line2);border-radius:9px;overflow:hidden;background:rgba(0,0,0,.3)}
.seg button{background:none;border:0;color:var(--muted);padding:5px 10px;font:600 11px var(--mono);cursor:pointer;letter-spacing:.04em}
.seg button.on{background:var(--accent-d);color:var(--accent2)}
.sndwrap{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.sndbtn{font:600 11.5px var(--mono);padding:6px 12px;border-radius:9px;border:1px solid var(--line2);background:rgba(0,0,0,.3);color:var(--ink2);cursor:pointer;transition:all .2s}
.sndbtn.on{color:var(--accent);border-color:rgba(0,230,118,.5);box-shadow:0 0 20px -6px rgba(0,230,118,.6)}
.sndopts{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:11.5px;flex-wrap:wrap;justify-content:flex-end}
.sndopts.disabled{opacity:.45}
.sndopts .vol{display:flex;align-items:center;gap:6px;font:10.5px var(--mono)}
.chk{display:inline-flex;align-items:center;gap:5px;cursor:pointer;color:var(--ink2)}
input[type=checkbox]{accent-color:var(--accent)}
input[type=range]{accent-color:var(--accent);width:84px}
.mini{font:10.5px var(--mono);padding:3px 8px;border-radius:6px;border:1px solid var(--line2);background:none;color:var(--muted);cursor:pointer}

/* pair tabs */
.tabsrow{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 2px 12px;flex-wrap:wrap}
.tabs{display:flex;gap:4px;flex-wrap:wrap;padding:4px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.02)}
.tabs button{border:0;background:none;color:var(--muted);padding:6px 12px;border-radius:8px;font:600 12px var(--mono);cursor:pointer;letter-spacing:.02em;transition:all .2s}
.tabs button i{font-style:normal;color:var(--faint);margin-left:6px;font-weight:500}
.tabs button:hover{color:var(--ink)}
.tabs button.on{background:var(--glass2);color:#fff;box-shadow:0 0 0 1px var(--line2) inset}
.tabs button.on i{color:var(--accent2)}
.tabs-note{font:11px var(--mono);color:var(--faint)}

/* stat cards */
.statgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}
.stat{padding:14px 16px 13px;min-width:0}
.stat .k{font:600 10.5px var(--mono);letter-spacing:.1em;color:var(--muted)}
.stat .v{font:600 30px/1.15 var(--mono);letter-spacing:-.03em;margin-top:6px;font-variant-numeric:tabular-nums;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stat .s{font-size:11.5px;color:var(--faint);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stat.red .v{color:var(--red)}.stat.amber .v{color:var(--amber)}.stat.hotc .v{color:var(--hot)}.stat.nf .v{color:var(--accent2)}

/* charts */
.chartrow{display:grid;grid-template-columns:2.2fr 1fr;gap:10px;margin-top:10px}
.chartcard,.splitcard{padding:14px 16px}
.cardhead{display:flex;justify-content:space-between;font:600 10.5px var(--mono);letter-spacing:.1em;color:var(--muted);margin-bottom:8px}
.areachart{height:110px;position:relative}
.areachart svg{width:100%;height:100%;display:block;overflow:visible}
.areachart .hit{fill:transparent;cursor:crosshair}
.areachart .hit:hover{fill:rgba(255,255,255,.04)}
.chartaxis{display:flex;justify-content:space-between;color:var(--faint);font:10.5px var(--mono);margin-top:4px}
.charttip{position:absolute;pointer-events:none;background:rgba(5,8,7,.92);border:1px solid var(--line2);border-radius:8px;padding:5px 9px;font:11px var(--mono);white-space:nowrap;transform:translate(-50%,-115%);z-index:3}
.split{display:flex;height:36px;border-radius:9px;overflow:hidden;margin:16px 0 14px;box-shadow:0 0 0 1px var(--line) inset}
.split div{transition:flex-grow .8s cubic-bezier(.2,.7,.2,1);min-width:2px}
.split .sr{background:linear-gradient(180deg,#ff6b7a,#e04556)}.split .sa{background:linear-gradient(180deg,#ffc35e,#e89a2a)}
.split .sn{background:linear-gradient(180deg,#d9e3de,#a9b8b0)}.split .sp{background:linear-gradient(180deg,#b3a6ff,#8574f0)}
.splitleg{display:flex;flex-wrap:wrap;gap:6px 16px;font:11.5px var(--mono);color:var(--ink2)}
.splitleg span{display:inline-flex;align-items:center;gap:6px}.splitleg i{width:9px;height:9px;border-radius:3px;display:inline-block}

/* list bar */
.listbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:18px 2px 10px}
.ltabs{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.02)}
.ltabs button{border:0;background:none;color:var(--muted);padding:6px 12px;border-radius:8px;font-weight:600;font-size:12.5px;cursor:pointer;transition:all .2s;white-space:nowrap}
.ltabs button:hover{color:var(--ink)}
.ltabs button.on{background:#fff;color:#06100b}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chips button{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line2);background:var(--glass);color:var(--ink2);padding:5px 11px;border-radius:99px;font:600 11.5px var(--mono);cursor:pointer;transition:all .2s;letter-spacing:.02em}
.chips button i{font-style:normal;font-weight:500;color:var(--muted)}
.chips button.on{border-color:rgba(0,230,118,.6);color:#fff;background:var(--accent-d)}
.chips .c-red.on{border-color:rgba(255,92,108,.6);background:rgba(255,92,108,.12)}
.chips .c-amber.on{border-color:rgba(255,181,71,.6);background:rgba(255,181,71,.12)}
.chips .c-pend.on{border-color:rgba(165,150,255,.6);background:rgba(165,150,255,.12)}
.toggles{display:flex;gap:6px;flex-wrap:wrap}
.pill{display:inline-flex;align-items:center;cursor:pointer;user-select:none}
.pill input{position:absolute;opacity:0;pointer-events:none}
.pill span{padding:5px 11px;border-radius:99px;border:1px dashed var(--line2);color:var(--muted);font-size:12px;transition:all .2s}
.pill input:checked+span{border-style:solid;border-color:rgba(0,230,118,.55);color:var(--accent2);background:var(--accent-d)}
.pill.hotchk input:checked+span{border-color:rgba(255,138,61,.6);color:#ffb27a;background:rgba(255,138,61,.12)}
.pill input:focus-visible+span{outline:2px solid var(--accent)}
.searchwrap{position:relative;flex:1;min-width:220px;display:flex;align-items:center}
#q{width:100%;background:rgba(0,0,0,.3);border:1px solid var(--line2);color:var(--ink);border-radius:10px;padding:8px 12px;font:13px var(--sans);outline:none;transition:border-color .2s,box-shadow .2s}
.shown{position:absolute;right:12px;font:11px var(--mono);color:var(--faint);pointer-events:none}

/* how to read */
.how{margin:0 0 12px;padding:16px 20px}
.how .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}
.how h4{margin:4px 0 8px;font:600 11px var(--mono);letter-spacing:.1em;color:var(--accent2)}
.how p{margin:6px 0;color:var(--ink2);font-size:13px;line-height:1.55}

/* workspace: table + sticky detail panel */
.workspace{display:grid;grid-template-columns:minmax(0,1fr) 480px;gap:12px;align-items:start}
.tablewrap{overflow:auto;max-height:calc(100vh - 90px);padding:0;border-radius:var(--r)}
table{width:100%;border-collapse:separate;border-spacing:0}
#tbl{font:12px/1.4 var(--mono)}
#tbl th{position:sticky;top:0;z-index:2;background:rgba(10,15,13,.96);backdrop-filter:blur(8px);text-align:left;color:var(--muted);font:600 10px var(--mono);letter-spacing:.08em;padding:10px 9px;border-bottom:1px solid var(--line2);cursor:pointer;white-space:nowrap}
#tbl th:hover{color:var(--ink)}
th.nosort{cursor:default}th.sorted{color:var(--accent2)!important}th.sorted::after{content:" ↓"}th.sorted.asc::after{content:" ↑"}
.thsub{font-size:9px;color:var(--faint);font-weight:500;letter-spacing:0}
#tbl td{padding:8px 9px;border-bottom:1px solid rgba(255,255,255,.045);vertical-align:middle;white-space:nowrap}
#tbl tbody tr{cursor:pointer;transition:background .15s}
#tbl tbody tr:hover{background:rgba(255,255,255,.035)}
#tbl tbody tr.sel{background:rgba(0,230,118,.07);box-shadow:inset 3px 0 0 var(--accent)}
.tok{display:flex;gap:9px;align-items:center;min-width:150px}
.tok img{width:26px;height:26px;border-radius:50%;object-fit:cover;background:#101614;box-shadow:0 0 0 1px var(--line2)}
.tok .n{font:600 12.5px var(--sans);color:#fff;display:flex;align-items:center;gap:5px;white-space:nowrap;max-width:260px}
.tok .n .nm{overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:150px}
.tok .n .sym{color:var(--muted);font:500 11px var(--mono);overflow:hidden;text-overflow:ellipsis;max-width:90px}
.tok .s .ca{font-family:var(--mono);color:#7d8a85}
.copybtn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:5px;flex:none;width:20px;height:20px;padding:0;border:1px solid transparent;border-radius:6px;background:transparent;color:#7d8a85;cursor:pointer;transition:color .15s,background .15s,border-color .15s}
.copybtn:hover{color:var(--accent2);background:var(--accent-d);border-color:rgba(0,230,118,.25)}
.copybtn.copied{color:var(--accent2);border-color:rgba(0,230,118,.45);background:var(--accent-d)}
.copybtn.copyfail{color:var(--red,#ff5c6c)}
.copybtn[data-tip]::after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translateX(-50%);padding:3px 7px;border-radius:6px;background:#0b1210;border:1px solid rgba(0,230,118,.35);color:var(--accent2);font:600 10px var(--mono);letter-spacing:.04em;white-space:nowrap;pointer-events:none;z-index:30;animation:tipin .15s ease-out}
@keyframes tipin{from{opacity:0;transform:translate(-50%,3px)}to{opacity:1;transform:translate(-50%,0)}}
.copybtn.wide{width:auto;height:26px;padding:0 10px;border-color:var(--line2);background:rgba(0,0,0,.3);font:600 10.5px var(--mono);letter-spacing:.06em;color:#cfd8d4}
.copybtn.wide:hover,.copybtn.wide.copied{color:var(--accent2);border-color:rgba(0,230,118,.45)}
.carow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px;padding:7px 9px;border:1px solid var(--line2);border-radius:10px;background:rgba(0,0,0,.25)}
.carow .k{font:600 10px var(--mono);color:var(--muted);letter-spacing:.08em}
.carow .cafull{font:500 11.5px var(--mono);color:#dfe7e3;word-break:break-all;flex:1 1 220px;min-width:0}
.carow .cafull:hover{color:var(--accent2)}
.tok .s{color:var(--muted);font-size:10.5px}
.badge{display:inline-block;padding:2px 8px;border-radius:6px;font:700 10px var(--mono);letter-spacing:.06em;white-space:nowrap}
.badge.RED{background:rgba(255,92,108,.13);color:#ff8794;box-shadow:0 0 0 1px rgba(255,92,108,.4) inset}
.badge.AMBER{background:rgba(255,181,71,.12);color:var(--amber);box-shadow:0 0 0 1px rgba(255,181,71,.4) inset}
.badge.NOFLAG{background:rgba(232,239,235,.07);color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.22) inset}
.badge.PENDING{background:rgba(165,150,255,.12);color:var(--pend);box-shadow:0 0 0 1px rgba(165,150,255,.4) inset}
.why{max-width:300px;font:11.5px var(--sans);color:var(--ink2)}
.why .r{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.why .r.RED{color:#ff9aa5}.why .r.AMBER{color:#ffd08a}
.why .more{color:var(--faint);font:10.5px var(--mono)}
.why .note{display:block;color:var(--accent2);font-size:10.5px;overflow:hidden;text-overflow:ellipsis}
.soc span{display:inline-block;width:20px;text-align:center;border-radius:4px;margin-right:2px;font-size:9.5px;font-weight:700;padding:1px 0}
.soc .y{background:rgba(108,182,255,.16);color:var(--blue)}.soc .n{background:rgba(255,255,255,.03);color:var(--faint)}
.num{text-align:right;white-space:nowrap}
.prog{width:56px;height:5px;background:rgba(255,255,255,.07);border-radius:3px;overflow:hidden;display:inline-block;vertical-align:middle;margin-right:6px}
.prog i{display:block;height:100%;background:linear-gradient(90deg,#00b35c,var(--accent));box-shadow:0 0 8px rgba(0,230,118,.6)}
.grad{color:var(--accent);font-weight:700}
.pos{color:var(--accent)}.neg{color:var(--red)}
.score{font-weight:700;color:#fff}
td.m{font-size:11.5px}
.empty{padding:40px;text-align:center;color:var(--muted)}
tr.hot{background:rgba(255,138,61,.05)}tr.hot td:first-child{box-shadow:inset 3px 0 0 var(--hot)}
.hotb,.hotbadge{display:inline-block;background:linear-gradient(90deg,#ff6a2a,#ffb547);color:#1a0800;font:800 9px var(--mono);padding:2px 6px;border-radius:5px;letter-spacing:.06em;margin-left:6px;vertical-align:1px;box-shadow:0 0 14px -2px rgba(255,138,61,.7)}
tr.flash{animation:flash 1.8s ease-in-out 2}tr.flash td:first-child{box-shadow:inset 3px 0 0 var(--accent)}
@keyframes flash{50%{background:rgba(0,230,118,.12)}}
tr.hotflash{animation:hotflash 1.6s ease-in-out 2}
@keyframes hotflash{50%{background:rgba(255,138,61,.2)}}
.pend{color:var(--pend);font-size:9.5px;font-weight:700;white-space:nowrap}
.pend .spinner{width:8px;height:8px;border-width:1.5px}
.spinner{display:inline-block;width:10px;height:10px;border:2px solid rgba(255,255,255,.2);border-top-color:var(--accent);border-radius:50%;animation:sp .9s linear infinite;margin-right:6px;vertical-align:-1px}
@keyframes sp{to{transform:rotate(360deg)}}
.risk{display:inline-block;font:800 9px var(--mono);padding:1px 5px;border-radius:4px;margin-right:5px;letter-spacing:.05em}
.risk.mixer{background:rgba(255,92,108,.18);color:var(--red);box-shadow:0 0 0 1px rgba(255,92,108,.5) inset}
.risk.nokyc{background:rgba(255,181,71,.15);color:var(--amber);box-shadow:0 0 0 1px rgba(255,181,71,.5) inset}
.risk.cex{background:rgba(108,182,255,.12);color:#a8cdf5}.risk.bridge{background:rgba(0,200,180,.12);color:#8fe3d6}

/* detail panel (sticky on desktop) */
.panel{position:sticky;top:70px;max-height:calc(100vh - 86px);overflow:auto;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.panel.hidden{display:block!important}
.panel.hidden #dbody,.panel.hidden .dhead{display:none}
.panel:not(.hidden) .dempty{display:none}
.dempty{padding:60px 30px;text-align:center;color:var(--muted);font-size:13px}
.dempty img{border-radius:10px;opacity:.85;box-shadow:0 0 30px -6px rgba(0,230,118,.5)}
.dhead{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line);background:rgba(8,12,10,.92);backdrop-filter:blur(10px)}
.dhint{font:10.5px var(--mono);color:var(--faint)}
#dbody{padding:16px 18px 30px;font-size:13px}
.dtitle{display:flex;gap:14px;align-items:center}.dtitle img{width:54px;height:54px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px var(--line2)}
.dtitle h2{margin:0;font-size:19px;letter-spacing:-.02em;font-weight:650;color:#fff}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:14px 0}
.cell{background:rgba(255,255,255,.025);border:1px solid var(--line);border-radius:10px;padding:9px 11px}
.cell .k{color:var(--muted);font:600 9.5px var(--mono);letter-spacing:.08em}.cell .v{font:600 15px var(--mono);margin-top:3px;word-break:break-word;color:#fff}
#dbody h3{font:600 10.5px var(--mono);letter-spacing:.12em;color:var(--accent2);margin:22px 0 8px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.reasons{padding-left:18px}.reasons li{margin:4px 0}.reasons .RED{color:#ff9aa5}.reasons .AMBER{color:#ffd08a}
.links a{margin-right:14px;display:inline-block;font-size:12.5px}
table.mini{font:11.5px var(--mono)}table.mini th{font:600 9.5px var(--mono);color:var(--muted);text-align:left;padding:5px 6px;border-bottom:1px solid var(--line);letter-spacing:.06em}
table.mini td{padding:6px;border-bottom:1px solid rgba(255,255,255,.04)}
#scanout{overflow-x:auto}
.newb{color:var(--amber);font-weight:700}.svc{color:var(--muted)}
.grp{display:inline-block;min-width:22px;text-align:center;border-radius:5px;font-weight:800;font-size:11px;padding:1px 4px}
.g1{background:#5b2a86;color:#e9d5ff}.g2{background:#1e5a7a;color:#cdeeff}.g3{background:#7a4b1e;color:#ffe6c7}.g4{background:#2a6b3d;color:#d2ffe0}.g5{background:#7a1e3a;color:#ffd0dd}
.groupbox{background:rgba(255,255,255,.025);border:1px solid var(--line);border-radius:10px;padding:9px 11px;margin:6px 0}
.devtag{color:var(--red);font-weight:700}
button.primary{background:linear-gradient(180deg,#22f08c,#00c766);color:#03140b;border:0;border-radius:9px;padding:8px 14px;font-weight:700;cursor:pointer;box-shadow:0 8px 24px -10px rgba(0,230,118,.8)}
button:disabled{opacity:.5;cursor:wait}
.momchart{display:flex;align-items:center;gap:1px;height:80px;margin:6px 0 2px}
.momchart .c{flex:1;display:flex;flex-direction:column;justify-content:center;height:100%}
.momchart .b{background:var(--accent);min-height:0;border-radius:1px}.momchart .s{background:var(--red);min-height:0;border-radius:1px}
.warnbox{border:1px solid rgba(255,181,71,.5);background:rgba(255,181,71,.1);color:#ffd08a;padding:9px 12px;border-radius:9px}

/* footer */
.foot{max-width:1920px;margin:20px auto 0;padding:26px clamp(16px,3vw,30px) 40px;border-top:1px solid var(--line);color:var(--muted);font-size:12.5px}
.foot-brand{display:flex;align-items:center;gap:8px;color:#fff;font-weight:600;margin-bottom:8px}.foot-brand img{border-radius:5px}
.foot p{margin:6px 0;max-width:1100px}

/* ---------- responsive */
@media (max-width:1700px){
  .workspace{grid-template-columns:minmax(0,1fr) 430px}
  #tbl th:nth-child(13),#tbl td:nth-child(13){display:none}            /* W/X/TG */
}
@media (max-width:1500px){
  .statgrid{grid-template-columns:repeat(4,1fr)}
  #tbl th:nth-child(10),#tbl td:nth-child(10){display:none}            /* PRIOR */
  #tbl th:nth-child(12),#tbl td:nth-child(12){display:none}            /* DEV FUNDING */
}
@media (max-width:1240px){
  .workspace{grid-template-columns:1fr}
  .panel{position:fixed;inset:auto 0 0 0;top:auto;height:88vh;max-height:none;z-index:50;border-radius:18px 18px 0 0;background:rgba(8,12,10,.97);transform:translateY(0);transition:transform .35s cubic-bezier(.2,.7,.2,1);box-shadow:0 -30px 60px rgba(0,0,0,.6)}
  .panel.hidden{display:block!important;transform:translateY(105%)}
  .panel.hidden .dempty{display:none}
  .brandblock{grid-template-columns:1fr}
  .bb-right{align-items:flex-start}.sndwrap{align-items:flex-start}.sndopts{justify-content:flex-start}.updline{text-align:left}
  .chartrow{grid-template-columns:1fr}
  .features{grid-template-columns:1fr;max-width:640px}
}
@media (max-width:760px){
  .navlinks{display:none}.navlive{margin-left:auto}
  .herostats{grid-template-columns:repeat(2,1fr)}
  .statgrid{grid-template-columns:repeat(2,1fr)}
  .stat .v{font-size:24px}
  .ctas{margin:26px 0 34px}.btn{padding:12px 18px}
  .bb-name{font-size:22px}.bb-mark img{width:56px;height:56px}
  .listbar{gap:8px}.ltabs{overflow-x:auto;max-width:100%}
  .tablewrap{max-height:none}
  #tbl th:nth-child(4),#tbl td:nth-child(4),#tbl th:nth-child(6),#tbl td:nth-child(6),#tbl th:nth-child(11),#tbl td:nth-child(11),#tbl th:nth-child(15),#tbl td:nth-child(15){display:none}
  .ticker-label{display:none}
}

/* FRESH wallet + Relay bridge badges */
.risk.fresh{background:rgba(255,214,102,.13);color:#ffd666;box-shadow:0 0 0 1px rgba(255,214,102,.45) inset}
.risk.bridge.relay{box-shadow:0 0 0 1px rgba(0,200,180,.45) inset}
/* help tooltip (column headers) */
th[data-help]{cursor:help;text-decoration:underline dotted rgba(255,255,255,.25);text-underline-offset:3px}
.helptip{position:fixed;z-index:200;max-width:330px;padding:10px 12px;border-radius:12px;background:rgba(10,16,14,.97);border:1px solid rgba(0,230,118,.28);
  box-shadow:0 12px 40px rgba(0,0,0,.55),0 0 0 1px rgba(0,0,0,.4);color:#d7dfdb;font:400 12px/1.5 var(--sans);letter-spacing:0;text-transform:none;
  pointer-events:none;opacity:0;transform:translateY(3px);transition:opacity .12s,transform .12s;left:-999px;top:-999px}
.helptip.on{opacity:1;transform:none}
.helptip b{color:#fff}.helptip .hk{color:var(--accent2);font:600 11px var(--mono)}

/* row sparkline */
.sprow{display:flex;align-items:center;gap:6px;margin-top:4px;height:22px}
.spark{width:112px;height:22px;flex:none;overflow:visible}
.spark .l{fill:none;stroke-width:1.4;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.spark .a{stroke:none}
.spark.up .l{stroke:#00e676}.spark.up .a{fill:rgba(0,230,118,.13)}
.spark.dn .l{stroke:#ff5c6c}.spark.dn .a{fill:rgba(255,92,108,.12)}
.spark.flat .l{stroke:#7d8a85}.spark.flat .a{fill:rgba(125,138,133,.08)}
.spark.none .l{stroke:rgba(125,138,133,.35);stroke-dasharray:3 3}
.chg{font:600 10px var(--mono);white-space:nowrap}
.chg.up{color:#00e676}.chg.dn{color:#ff5c6c}.chg.flat{color:#7d8a85}
tr.hot .spark.up .a{fill:rgba(0,230,118,.2)}
/* detail candle chart */
.dchart{margin:12px 0 6px;border:1px solid var(--line2);border-radius:14px;background:linear-gradient(180deg,rgba(0,230,118,.035),rgba(0,0,0,.25));overflow:hidden}
.dch-head{display:flex;align-items:center;gap:9px;padding:9px 12px;border-bottom:1px solid rgba(255,255,255,.05)}
.dch-head .k{font:600 10px var(--mono);color:var(--muted);letter-spacing:.08em}
.dch-head b{font:600 14px var(--mono);color:#fff}
.dch-head .chg{font-size:10.5px}
.dch-sp{flex:1}
.dch-body{height:230px;position:relative}
.dch-msg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted);font:500 11.5px var(--sans);padding:0 20px;text-align:center}
.dch-foot{padding:6px 12px 8px;color:#6f7b76;font:500 10px var(--mono);border-top:1px solid rgba(255,255,255,.04)}
@media (max-width:760px){.spark{width:84px}.dch-body{height:200px}}
