:root { color-scheme: dark;
  --bg:#070b18; --panel:rgba(15,23,48,.86); --panel-solid:#0f1730; --panel-hover:rgba(20,31,63,.96);
  --border:rgba(139,118,255,.23); --border-hover:rgba(80,221,255,.72); --line:rgba(139,118,255,.16);
  --text:#f4f7ff; --muted:#9ca9c4; --violet:#9174ff; --cyan:#4de0ff; --green:#64e7b5; --amber:#ffc46b;
  --cell:#0b1226; --cell-line:rgba(139,118,255,.22); }
* { box-sizing: border-box; }
html, body { margin:0; background:var(--bg); color:var(--text); }
body { font:14px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; min-height:100%; position:relative; }
body:before { content:""; position:fixed; inset:0; background:radial-gradient(900px 500px at 12% -10%, rgba(145,116,255,.22), transparent 60%), radial-gradient(700px 400px at 95% 0%, rgba(77,224,255,.14), transparent 60%); pointer-events:none; }
.wrap { position:relative; max-width:1440px; margin:0 auto; padding:28px 24px 64px; display:grid; gap:20px; }
.topbar { position:sticky; top:0; z-index:50; display:flex; justify-content:space-between; align-items:center; gap:16px; margin:-28px -24px 0; padding:10px 24px; background:rgba(9,14,30,.82); backdrop-filter:blur(10px); border-bottom:1px solid var(--line); }
.topbar-link { color:var(--cyan); text-decoration:none; font-weight:600; font-size:13px; }
.topbar-link:hover { text-decoration:underline; }
.demo-switch { display:inline-flex; align-items:center; gap:9px; cursor:pointer; user-select:none; font-size:13px; color:var(--muted); }
.demo-switch input { position:absolute; opacity:0; width:0; height:0; }
.demo-switch .track { width:38px; height:22px; border-radius:999px; background:rgba(156,169,196,.25); border:1px solid var(--line); position:relative; transition:background .16s; }
.demo-switch .thumb { position:absolute; top:2px; left:2px; width:16px; height:16px; border-radius:50%; background:#dfe6ff; transition:transform .16s; }
.demo-switch input:checked + .track { background:var(--violet); }
.demo-switch input:checked + .track .thumb { transform:translateX(16px); }
.demo-switch input:focus-visible + .track { outline:2px solid var(--cyan); outline-offset:2px; }
body.demo-on .demo-switch .lbl { color:var(--violet); font-weight:600; }
.top { display:flex; justify-content:space-between; align-items:flex-end; gap:16px; flex-wrap:wrap; }
.eyebrow { color:var(--violet); font-size:11px; letter-spacing:.16em; text-transform:uppercase; font-weight:600; }
h1 { margin:6px 0 6px; font-size:30px; font-weight:700; letter-spacing:-.01em; }
.sub { margin:0; color:var(--muted); max-width:66ch; }
.who { color:var(--muted); font-size:13px; }
.mono { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-variant-numeric:tabular-nums; }
.summary { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:12px; }
.stat { background:var(--panel); border:1px solid var(--border); border-radius:14px; padding:14px 16px; }
.stat b { display:block; font-size:26px; font-weight:700; letter-spacing:-.02em; font-variant-numeric:tabular-nums; }
.stat.good b { color:var(--green); } .stat.warn b { color:var(--amber); } .stat.info b { color:var(--cyan); }
.stat span { color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.panel { background:var(--panel); border:1px solid var(--border); border-radius:16px; padding:16px 18px; display:grid; gap:14px; }
.row { display:flex; flex-wrap:wrap; gap:10px 14px; align-items:center; }
.row .label { color:var(--muted); font-size:12px; text-transform:uppercase; letter-spacing:.08em; min-width:82px; }
.chips { display:flex; flex-wrap:wrap; gap:6px; }
.chip { border:1px solid var(--border); background:#0d1428; color:var(--muted); border-radius:999px; padding:5px 12px; font:inherit; font-size:13px; cursor:pointer; transition:border-color .15s, color .15s, background .15s; }
.chip:hover { border-color:var(--border-hover); color:var(--text); }
.chip.on { background:rgba(145,116,255,.18); border-color:var(--violet); color:var(--text); }
.chip.on.default { border-color:var(--cyan); }
.chip:focus-visible, input:focus-visible, select:focus-visible, .cell button:focus-visible { outline:2px solid var(--cyan); outline-offset:2px; }
.chip .n { color:var(--muted); font-size:11px; margin-left:6px; font-variant-numeric:tabular-nums; }
.chip.on .n { color:var(--cyan); }
.controls { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.controls input, .controls select { font:inherit; font-size:13px; color:var(--text); background:#0d1428; border:1px solid var(--border); border-radius:10px; padding:8px 11px; }
.controls input[type=search] { min-width:230px; }
.controls input[type=number] { width:74px; }
.controls .range { display:flex; gap:6px; align-items:center; color:var(--muted); font-size:12px; }
.ghost { font:inherit; font-size:13px; color:var(--muted); background:transparent; border:1px solid var(--border); border-radius:10px; padding:8px 12px; cursor:pointer; }
.ghost:hover { border-color:var(--border-hover); color:var(--text); }
.legend { margin-left:auto; display:flex; gap:14px; color:var(--muted); font-size:12px; }
.sw { display:inline-block; width:12px; height:12px; border-radius:4px; margin-right:6px; vertical-align:-1px; border:1px solid var(--cell-line); background:var(--cell); }
.sw.live { background:var(--green); border-color:var(--green); } .sw.wip { background:var(--amber); border-color:var(--amber); }
.scroll { overflow-x:auto; background:var(--panel); border:1px solid var(--border); border-radius:16px; }
table { border-collapse:separate; border-spacing:0; min-width:100%; }
th, td { border-bottom:1px solid var(--line); padding:0; }
thead th { position:sticky; top:0; z-index:2; background:var(--panel-solid); font-weight:600; font-size:12px; color:var(--muted); text-transform:uppercase; letter-spacing:.06em; }
th.plat { text-align:center; padding:14px 8px 10px; min-width:112px; }
th.plat .name { display:block; color:var(--text); text-transform:none; letter-spacing:0; font-size:13px; }
th.plat .count { display:block; margin-top:3px; font-weight:500; font-variant-numeric:tabular-nums; }
th.dom, td.dom { position:sticky; left:0; z-index:3; min-width:280px; padding:0 16px; text-align:left; }
th.dom { background:var(--panel-solid); z-index:4; }
td.dom { background:var(--panel-solid); }
td.dom .name { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:13px; color:var(--text); }
td.dom .meta { display:block; font-size:11px; color:var(--muted); margin-top:2px; }
th.total, td.total { text-align:center; min-width:96px; padding:0 12px; }
td.total { font-variant-numeric:tabular-nums; }
td.total .bar { display:block; height:4px; border-radius:2px; background:rgba(139,118,255,.15); margin-top:6px; overflow:hidden; }
td.total .bar i { display:block; height:100%; background:linear-gradient(90deg, var(--violet), var(--cyan)); }
td.cell { text-align:center; padding:0; }
.cell button { width:100%; height:44px; border:0; background:transparent; cursor:pointer; font-size:0; color:transparent; display:grid; place-items:center; }
.cell button:before { content:""; width:20px; height:20px; border-radius:6px; background:var(--cell); border:1px solid var(--cell-line); transition:transform .12s, border-color .12s; }
.cell.live button:before { background:var(--green); border-color:var(--green); box-shadow:0 0 0 3px rgba(100,231,181,.14); }
.cell.wip button:before { background:var(--amber); border-color:var(--amber); box-shadow:0 0 0 3px rgba(255,196,107,.14); }
.cell.live button { cursor:default; }
.cell:not(.live) button:hover:before { border-color:var(--border-hover); transform:scale(1.12); }
tfoot th { position:static; background:var(--panel-solid); color:var(--muted); font-size:12px; padding:10px 8px; text-align:center; font-variant-numeric:tabular-nums; }
tfoot th.dom { text-align:left; text-transform:uppercase; letter-spacing:.06em; }
tbody tr:hover td { background:rgba(20,31,63,.5); }
tbody tr:hover td.dom { background:var(--panel-hover); }
.note { color:var(--muted); font-size:12px; margin:0; }
.empty { padding:28px; text-align:center; color:var(--muted); }
.signin { background:var(--panel); border:1px solid var(--border); border-radius:16px; padding:28px; text-align:center; }
.signin a { color:var(--cyan); font-weight:600; }
.toast { position:fixed; right:20px; bottom:20px; background:#131b33; border:1px solid var(--border); border-radius:12px; padding:11px 15px; font-size:13px; opacity:0; transform:translateY(6px); transition:opacity .2s, transform .2s; pointer-events:none; }
.toast.show { opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce) { .chip, .cell button:before, .toast { transition:none; } }
@media (max-width:700px) { .wrap { padding:20px 16px 48px; } th.dom, td.dom { min-width:190px; } h1 { font-size:24px; } .legend { margin-left:0; } }

/* Prominent domain filter row (moved to top of filters) */
.domains-row { background:rgba(77,224,255,.07); border:1px solid rgba(77,224,255,.26); border-radius:12px; padding:11px 13px; }
.domains-row .label { color:var(--cyan); font-weight:600; letter-spacing:.06em; }
.chip.tld-all { border-color:rgba(77,224,255,.5); color:var(--text); font-weight:600; }
.chip.tld-all.on { background:rgba(77,224,255,.2); border-color:var(--cyan); }
.chip.tld-all.on .n { color:var(--cyan); }
