:root{--bg:#060b16;--surface:#0b1524;--surface-2:#0e1b2e;--line:#16283f;--ping:#2be4d2;--ping-dim:#1a9c90;--text:#d9e6f2;--muted:#5c7692;--amber:#f5b14c;--font-display:"Chakra Petch",sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,monospace}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg)}body{background:radial-gradient(1200px 600px at 50% -200px,#0b1a30 0,var(--bg) 60%),var(--bg);color:var(--text);font-family:var(--font-mono);font-size:13px;line-height:1.5;min-height:100vh}a{color:inherit;text-decoration:none}.wrap{max-width:1440px;margin:0 auto;padding:0 20px 80px}header{display:flex;align-items:center;gap:18px;padding:26px 0 20px;border-bottom:1px solid var(--line)}.wordmark{font-family:var(--font-display);font-weight:700;font-size:26px;letter-spacing:.06em}.wordmark .x1{color:var(--muted)}.wordmark .sonar{color:var(--ping)}.tagline{color:var(--muted);font-size:12px;margin-left:auto;text-align:right}.radar{width:52px;height:52px;flex:none;position:relative}.radar svg{width:100%;height:100%;display:block}.sweep{transform-origin:50% 50%;animation:sweep 4s linear infinite}@keyframes sweep{to{transform:rotate(1turn)}}.blip{fill:var(--ping);animation:blip 4s ease-out infinite}@keyframes blip{0%,8%{opacity:1}60%,to{opacity:.15}}@media (prefers-reduced-motion:reduce){.blip,.sweep{animation:none}.blip{opacity:.7}}.readouts{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-top:none;background:var(--surface)}.readout{padding:12px 16px;border-right:1px solid var(--line)}.readout:last-child{border-right:none}.readout .label{color:var(--muted);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.readout .value{font-size:22px;font-weight:600;color:var(--ping);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.readout .value.plain{color:var(--text)}.statusline{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;padding:14px 2px 10px}.dot{width:7px;height:7px;border-radius:50%;background:var(--ping);animation:pulse 2s ease-in-out infinite}@keyframes pulse{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.dot{animation:none}}.board{border:1px solid var(--line);background:var(--surface);overflow-x:auto}table{width:100%;border-collapse:collapse}thead th{font-family:var(--font-display);font-weight:600;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:right;padding:10px 11px;border-bottom:1px solid var(--line);white-space:nowrap;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}thead th:hover{color:var(--text)}thead th.on{color:var(--ping)}thead th.left{text-align:left}thead th .arrow{font-size:9px}tbody td{padding:9px 11px;border-bottom:1px solid var(--line);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}tbody td.left{text-align:left}tbody tr:last-child td{border-bottom:none}tbody tr{animation:reveal .5s ease both}tbody tr:hover td{background:var(--surface-2)}@keyframes reveal{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){tbody tr{animation:none}}.rank{color:var(--muted);width:44px}tr:first-child .rank,tr:nth-child(2) .rank,tr:nth-child(3) .rank{color:var(--ping)}.pid{display:inline-flex;align-items:center;gap:8px}.pid a{color:var(--text)}.pid a:hover{color:var(--ping)}.copy{background:none;border:1px solid var(--line);color:var(--muted);font-family:var(--font-mono);font-size:10px;padding:1px 6px;cursor:pointer;border-radius:3px}.copy:hover{color:var(--ping);border-color:var(--ping-dim)}.scorecell{display:inline-flex;align-items:center;gap:8px;justify-content:flex-end}.scorebar{width:54px;height:4px;background:var(--line);border-radius:2px;overflow:hidden}.scorebar i{display:block;height:100%;background:linear-gradient(90deg,var(--ping-dim),var(--ping))}.score{color:var(--ping);font-weight:600}.badge-new{display:inline-block;font-size:9px;letter-spacing:.12em;color:var(--bg);background:var(--ping);border-radius:3px;padding:1px 6px;margin-left:8px;font-weight:600}.ok{color:var(--ping)}.warn{color:var(--amber)}.dim,.empty,.error{color:var(--muted)}.empty,.error{padding:40px;text-align:center}.error{color:var(--amber)}footer{color:var(--muted);font-size:11px;padding-top:18px;display:flex;gap:16px;flex-wrap:wrap}footer a:hover{color:var(--ping)}@media (max-width:768px){.readouts{grid-template-columns:repeat(2,1fr)}.readout:nth-child(2){border-right:none}.readout:first-child,.readout:nth-child(2){border-bottom:1px solid var(--line)}.board{border:none;background:none;overflow:visible}table,tbody,td,tr{display:block}thead{display:none}tbody tr{border:1px solid var(--line);background:var(--surface);margin-bottom:10px;padding:10px 12px}tbody td{border:none;padding:2px 0;text-align:left;white-space:normal}tbody td:before{content:attr(data-l);display:inline-block;min-width:92px;color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.rank{width:auto}}.pills{display:flex;gap:6px;flex-wrap:wrap;padding-bottom:10px}.pill{background:var(--surface);border:1px solid var(--line);color:var(--muted);font-family:var(--font-mono);font-size:11px;padding:3px 10px;border-radius:3px;cursor:pointer}.pill:hover{color:var(--text)}.pill.on{color:var(--bg);background:var(--ping);border-color:var(--ping);font-weight:600}.cat{display:inline-block;font-size:10px;letter-spacing:.08em;border:1px solid var(--line);border-radius:3px;padding:1px 7px;color:var(--muted)}.cat-token{color:#7fd1f5;border-color:#1c4056}.cat-nft{color:#c9a2f5;border-color:#3a2a56}.cat-oracle{color:var(--ping);border-color:var(--ping-dim)}.cat-marketplace{color:#f5c07f;border-color:#564018}.cat-game{color:#92f5a2;border-color:#1e5630}.cat-staking{color:#f59bb4;border-color:#56202f}.cat-bridge{color:#f5ef8e;border-color:#565318}.cat-dex{color:#8ef5dc;border-color:#185648}.cat-unknown,.cat-utility{color:var(--muted)}.spark{display:inline-block;vertical-align:middle;opacity:.9}.pill.toggle{margin-left:auto}.up{display:inline-block;font-size:10px;letter-spacing:.08em;border-radius:3px;padding:1px 7px;border:1px solid transparent}.up-locked{color:var(--ping);border-color:var(--ping-dim)}.up-open{color:var(--amber);border-color:#56400f}.up-system{color:var(--muted);border-color:var(--line)}