:root{
  --bg:#02050a;--ink:#eaf6fb;--mut:#8aa0ad;--line:rgba(150,220,255,.13);
  --ice:#7fe9ff;--teal:#2ee6c5;--gold:#ffd89a;--sun:#fff4dc;
  --bad:#ff5a76;--warn:#ffbe55;--good:#3ff0b0;
  --glass:rgba(8,16,26,.58);--r:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;overflow-x:hidden}
a{color:var(--ice);text-decoration:none}a:hover{text-decoration:underline}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.small{font-size:13px}.muted{color:var(--mut)}
.serif{font-family:Cinzel,serif;font-weight:600;letter-spacing:.02em}
#stars{position:fixed;inset:0;z-index:0;pointer-events:none}

/* ---------- header ---------- */
.top{position:fixed;top:0;left:0;right:0;z-index:20;transition:background .3s,backdrop-filter .3s,border-color .3s;border-bottom:1px solid transparent;display:flex;justify-content:space-between;align-items:center;padding:16px clamp(16px,4vw,40px);
  background:linear-gradient(to bottom,rgba(2,5,10,.75),rgba(2,5,10,0));backdrop-filter:blur(2px)}
.brand{display:flex;gap:11px;align-items:center;color:var(--ink);font:700 18px Cinzel,serif;letter-spacing:.18em}
.brand:hover{text-decoration:none}.brand img{filter:drop-shadow(0 0 12px rgba(127,233,255,.45))}
nav{display:flex;align-items:center;gap:10px}
.net{display:flex;align-items:center;gap:7px;font-size:12px;color:#cdeefa;border:1px solid var(--line);border-radius:999px;padding:6px 12px;background:rgba(8,16,26,.4);backdrop-filter:blur(8px)}
.net i{width:7px;height:7px;border-radius:50%;background:var(--good);box-shadow:0 0 10px var(--good)}
@media(max-width:560px){.net{display:none}}

button{font:inherit;cursor:pointer;border:0;border-radius:14px;padding:13px 22px;font-weight:700;transition:transform .15s,box-shadow .25s,border-color .2s}
button:active{transform:scale(.97)}button:disabled{opacity:.45;cursor:not-allowed}
.btn{color:#021016;background:linear-gradient(120deg,var(--ice),var(--teal) 55%,var(--gold));box-shadow:0 0 0 1px rgba(255,255,255,.15) inset,0 8px 30px rgba(46,230,197,.35)}
.btn:hover{box-shadow:0 0 0 1px rgba(255,255,255,.3) inset,0 10px 44px rgba(127,233,255,.55)}
.ghost{background:rgba(8,16,26,.45);color:var(--ink);border:1px solid var(--line);backdrop-filter:blur(8px)}.ghost:hover{border-color:rgba(127,233,255,.45)}
.sm{padding:9px 15px;font-size:13px}

/* ---------- hero scene ---------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-start;justify-content:center;overflow:hidden;z-index:1;padding:clamp(110px,16vh,170px) 18px 220px}
.scene{position:absolute;inset:0;pointer-events:none}
.layer{position:absolute;inset:0;will-change:transform}
.nebula{position:absolute;inset:-20%;background:
  radial-gradient(40% 30% at 20% 22%,rgba(66,92,255,.20),transparent 70%),
  radial-gradient(35% 28% at 82% 18%,rgba(46,230,197,.16),transparent 70%),
  radial-gradient(30% 25% at 60% 40%,rgba(160,90,255,.10),transparent 70%);filter:blur(20px);animation:breathe 18s ease-in-out infinite alternate}
@keyframes breathe{to{transform:scale(1.08) translateY(-2%);opacity:.8}}
.planet{position:absolute;left:50%;top:73%;width:max(260vw,1700px);aspect-ratio:1;transform:translateX(-50%);border-radius:50%;
  background:radial-gradient(circle at 50% 0%,#1d5f78 0%,#0b2d3f 7%,#061723 20%,#02070c 45%);
  box-shadow:0 -2px 0 rgba(200,250,255,.55),0 -10px 40px rgba(127,233,255,.55),0 -40px 120px rgba(80,200,255,.35),0 -120px 240px rgba(60,140,255,.18),inset 0 30px 60px rgba(150,240,255,.35)}
.sun{position:absolute;left:74%;top:calc(73% + 26px);width:520px;height:520px;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle,var(--sun) 0%,rgba(255,236,190,.95) 4%,rgba(255,216,154,.55) 11%,rgba(255,200,120,.18) 26%,transparent 60%);mix-blend-mode:screen;animation:flare 7s ease-in-out infinite alternate}
.sun::after{content:"";position:absolute;left:50%;top:50%;width:1400px;height:3px;transform:translate(-50%,-50%);background:linear-gradient(90deg,transparent,rgba(255,240,210,.75),transparent);filter:blur(1px)}
.sun::before{content:"";position:absolute;left:50%;top:50%;width:900px;height:60px;transform:translate(-50%,-50%);background:radial-gradient(closest-side,rgba(255,226,170,.35),transparent);filter:blur(6px)}
@keyframes flare{to{opacity:.82;transform:translate(-50%,-50%) scale(1.06)}}
.clouds{position:absolute;left:0;right:0;bottom:-2%;background-repeat:repeat-x;animation:drift linear infinite}
.c1{height:44%;opacity:.55;background-size:1400px 100%;animation-duration:160s;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='1400' height='420'><filter id='f' x='0' y='0' width='100%25' height='100%25'><feTurbulence type='fractalNoise' baseFrequency='.0035 .012' numOctaves='5' seed='7' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .78  0 0 0 0 .88  0 0 0 0 .97  2.9 0 0 0 -1.2'/></filter><rect width='100%25' height='100%25' filter='url(%23f)'/></svg>");
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 45%);mask-image:linear-gradient(to bottom,transparent 0%,#000 45%)}
.c2{height:34%;opacity:.95;background-size:1800px 100%;animation-duration:110s;filter:drop-shadow(0 -6px 18px rgba(255,220,170,.10));
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='1800' height='380'><filter id='f' x='0' y='0' width='100%25' height='100%25'><feTurbulence type='fractalNoise' baseFrequency='.004 .016' numOctaves='6' seed='21' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .70  0 0 0 0 .80  0 0 0 0 .90  3.2 0 0 0 -1.25'/></filter><rect width='100%25' height='100%25' filter='url(%23f)'/></svg>");
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 38%);mask-image:linear-gradient(to bottom,transparent 0%,#000 38%)}
@keyframes drift{to{background-position-x:-1800px}}
.c1{animation-name:drift1}@keyframes drift1{to{background-position-x:-1400px}}
.fade{position:absolute;left:0;right:0;bottom:0;height:30%;background:linear-gradient(to bottom,transparent,var(--bg) 92%)}

.hero-inner{position:relative;z-index:2;text-align:center;max-width:860px;width:100%}
.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.32em;font-size:11.5px;color:#bfe7f5;padding:7px 14px;border:1px solid var(--line);border-radius:999px;background:rgba(8,16,26,.35);backdrop-filter:blur(8px)}
.eyebrow.left{margin-bottom:6px}
h1{font:600 clamp(44px,8.5vw,104px)/1.02 Cinzel,serif;margin:22px 0 18px;letter-spacing:.01em;
  background:linear-gradient(180deg,#ffffff 20%,#cfeefa 60%,#8fd9ef);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 6px 40px rgba(127,233,255,.25))}
h1 .glow{background:linear-gradient(100deg,var(--gold),#fff1d6 45%,var(--ice));-webkit-background-clip:text;background-clip:text;color:transparent}
.sub{max-width:600px;margin:0 auto 30px;color:#c6dbe4;font-size:16.5px;text-shadow:0 2px 20px rgba(0,0,0,.6)}
.glass{background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);
  box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 20px 60px rgba(0,0,0,.45)}
.search{display:flex;align-items:center;gap:10px;max-width:720px;margin:0 auto;border-radius:20px;padding:8px 8px 8px 16px;transition:border-color .25s,box-shadow .25s}
.search:focus-within{border-color:rgba(127,233,255,.55);box-shadow:0 0 0 6px rgba(127,233,255,.08),0 20px 60px rgba(0,0,0,.45),0 0 60px rgba(127,233,255,.18)}
.sicon{width:20px;height:20px;fill:none;stroke:#9fd8ea;stroke-width:2;stroke-linecap:round;flex:none}
.search input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--ink);font:15px ui-monospace,monospace;padding:12px 4px}
.search input::placeholder{color:#6f8794}
.trend{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:22px}
.trend>span{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#93b3c1}
.chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.chip{background:rgba(8,16,26,.5);border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:13px;color:var(--ink);font-weight:600;backdrop-filter:blur(8px)}
.btnchip:hover{border-color:rgba(255,216,154,.6);box-shadow:0 0 20px rgba(255,216,154,.2)}.chip small{color:var(--mut);font-weight:500;margin-left:4px}
.scrollhint{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:2;width:24px;height:38px;border:1.5px solid rgba(200,240,255,.4);border-radius:14px}
.scrollhint span{position:absolute;left:50%;top:8px;width:3px;height:7px;margin-left:-1.5px;border-radius:2px;background:var(--ice);animation:wheel 1.8s infinite}
@keyframes wheel{to{transform:translateY(12px);opacity:0}}

/* ---------- content ---------- */
main{position:relative;z-index:2;max-width:1140px;margin:0 auto;padding:0 clamp(14px,3vw,24px) 40px}
.card{border-radius:var(--r);padding:22px;margin-top:20px}
.card h3{margin:0 0 14px;font:600 13px Cinzel,serif;text-transform:uppercase;letter-spacing:.2em;color:#a9c9d6}
.card h3 small{font-family:Inter,sans-serif;text-transform:none;letter-spacing:0;font-weight:500;margin-left:6px;color:var(--mut)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid>.card{margin-top:20px}
@media(max-width:860px){.grid{grid-template-columns:1fr}.head{flex-direction:column;text-align:center}.actions,.meta{justify-content:center}}

.loading{display:flex;flex-direction:column;align-items:center;gap:18px;padding:40px;text-align:center}
.radar{position:relative;width:150px;height:150px;border-radius:50%;border:1px solid rgba(127,233,255,.35);
  background:radial-gradient(circle,transparent 32%,rgba(127,233,255,.12) 33%,transparent 34%,transparent 64%,rgba(127,233,255,.12) 65%,transparent 66%),radial-gradient(circle,rgba(46,230,197,.08),transparent 70%);overflow:hidden;box-shadow:0 0 50px rgba(127,233,255,.18)}
.radar::before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,rgba(127,233,255,.55),rgba(127,233,255,0) 70deg,transparent 360deg);animation:sweep 1.6s linear infinite}
.radar::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;margin:-4px;border-radius:50%;background:var(--ice);box-shadow:0 0 14px var(--ice)}
.radar i{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px var(--gold);animation:ping 1.6s infinite}
.radar i:nth-child(1){left:28%;top:34%}.radar i:nth-child(2){left:66%;top:62%;animation-delay:.6s}.radar i:nth-child(3){left:58%;top:22%;animation-delay:1.1s}
@keyframes sweep{to{transform:rotate(360deg)}}@keyframes ping{0%,100%{opacity:0}40%{opacity:1}}
#step{font-family:Cinzel,serif;letter-spacing:.12em;color:#cfeefa}

.head{display:flex;gap:30px;align-items:center;position:relative;overflow:hidden}
.head::before{content:"";position:absolute;right:-120px;top:-160px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(127,233,255,.12),transparent 65%);pointer-events:none}
.gauge{width:160px;height:160px;flex:none;filter:drop-shadow(0 0 22px rgba(127,233,255,.25))}
.gauge circle{fill:none;stroke-width:11}.gauge .track{stroke:rgba(150,220,255,.12)}
.gauge .bar{stroke-linecap:round;transform:rotate(-90deg);transform-origin:70px 70px;transition:stroke-dashoffset 1.2s cubic-bezier(.2,.8,.2,1)}
.gauge .num{fill:var(--ink);font:700 40px Cinzel,serif;text-anchor:middle;dominant-baseline:middle}.gauge .lbl{fill:var(--mut);font-size:12px;text-anchor:middle}
.v-SAFE .bar{stroke:var(--good)}.v-CAUTION .bar{stroke:var(--warn)}.v-DANGER .bar,.v-HONEYPOT .bar{stroke:var(--bad)}
.gauge.v-SAFE{filter:drop-shadow(0 0 24px rgba(63,240,176,.35))}.gauge.v-CAUTION{filter:drop-shadow(0 0 24px rgba(255,190,85,.3))}.gauge.v-DANGER,.gauge.v-HONEYPOT{filter:drop-shadow(0 0 24px rgba(255,90,118,.35))}
.verdict{display:inline-block;font:700 12px Cinzel,serif;letter-spacing:.24em;padding:6px 12px;border-radius:9px}
.verdict.v-SAFE{background:rgba(63,240,176,.12);color:var(--good);box-shadow:0 0 0 1px rgba(63,240,176,.3) inset}
.verdict.v-CAUTION{background:rgba(255,190,85,.12);color:var(--warn);box-shadow:0 0 0 1px rgba(255,190,85,.3) inset}
.verdict.v-DANGER,.verdict.v-HONEYPOT{background:rgba(255,90,118,.12);color:var(--bad);box-shadow:0 0 0 1px rgba(255,90,118,.3) inset}
.verdict.mini{font-size:10px;padding:3px 8px;letter-spacing:.14em}
.tinfo{flex:1;min-width:0;position:relative}.tinfo h2{margin:10px 0 4px;font:600 30px Cinzel,serif}.tinfo .mono{word-break:break-all}
.meta{display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--mut);font-size:13px;margin:10px 0}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 8px}

.sims{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.sim{background:rgba(255,255,255,.025);border:1px solid var(--line);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:2px}
.sim span{color:var(--mut);font-size:11px;text-transform:uppercase;letter-spacing:.16em}.sim b{font:700 26px Cinzel,serif}.sim small{color:var(--mut);font-size:12px;word-break:break-word}
.sim.good b{color:var(--good);text-shadow:0 0 18px rgba(63,240,176,.4)}.sim.warn b{color:var(--warn)}.sim.bad b{color:var(--bad);text-shadow:0 0 18px rgba(255,90,118,.45)}.sim.bad{border-color:rgba(255,90,118,.4)}

.flags,.passed,.feed{list-style:none;margin:0;padding:0}
.flag{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:11px 0;border-bottom:1px solid var(--line)}
.flag:last-child{border:0}.flag small{display:block;color:var(--mut);font-size:12px;word-break:break-word}.flag .pts{color:var(--mut);font:12px ui-monospace,monospace}
.sev{font-size:10px;text-transform:uppercase;letter-spacing:.12em;padding:3px 8px;border-radius:7px;font-weight:800;margin-top:2px}
.s-critical .sev{background:rgba(255,90,118,.18);color:var(--bad)}.s-high .sev{background:rgba(255,130,95,.15);color:#ff9473}
.s-medium .sev{background:rgba(255,190,85,.14);color:var(--warn)}.s-low .sev{background:rgba(138,160,173,.15);color:var(--mut)}
.passed li{padding:7px 0;color:#bff3dd;font-size:14px;border-bottom:1px solid rgba(150,220,255,.06)}
.row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line);font-size:14px}.row:last-child{border:0}
.row.col{flex-direction:column}.t-bad{color:var(--bad)}
.hrow{position:relative;display:grid;grid-template-columns:1fr auto 70px;gap:10px;align-items:center;padding:8px 10px;border-radius:10px;font-size:14px;overflow:hidden}
.hbar{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,rgba(127,233,255,.14),rgba(127,233,255,.04));z-index:0}.hrow>*:not(.hbar){position:relative;z-index:1}.hrow b{text-align:right}
.tag{font-size:11px;font-style:normal;border:1px solid var(--line);border-radius:6px;padding:2px 7px;color:var(--mut)}
.tag.warn{color:var(--warn);border-color:rgba(255,190,85,.35)}.k-v2,.k-v3,.k-pool,.k-venue{color:var(--ice)}.k-burn,.k-locker{color:var(--good)}

.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:70px}
@media(max-width:960px){.pillars{grid-template-columns:1fr 1fr}}@media(max-width:560px){.pillars{grid-template-columns:1fr}}
.pillar{border-radius:var(--r);padding:22px;transition:transform .3s,border-color .3s}
.pillar:hover{transform:translateY(-4px);border-color:rgba(127,233,255,.35)}
.pic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:22px;color:var(--gold);background:radial-gradient(circle at 30% 30%,rgba(255,216,154,.2),rgba(127,233,255,.06));border:1px solid rgba(255,216,154,.25);box-shadow:0 0 24px rgba(255,216,154,.12)}
.pillar h4{font:600 17px Cinzel,serif;margin:14px 0 6px;letter-spacing:.04em}.pillar p{margin:0;color:#a8bec8;font-size:14px}

.registry{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center;margin-top:28px;padding:30px;position:relative;overflow:hidden}
.registry::before{content:"";position:absolute;left:-200px;bottom:-260px;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(255,216,154,.12),transparent 60%)}
@media(max-width:860px){.registry{grid-template-columns:1fr}}
.registry h2{font-size:clamp(24px,3.4vw,34px);margin:8px 0 10px}
.stat{display:flex;align-items:baseline;gap:10px;margin:18px 0 6px}.stat b{font:700 46px Cinzel,serif;background:linear-gradient(120deg,var(--gold),var(--ice));-webkit-background-clip:text;background-clip:text;color:transparent}.stat span{color:var(--mut)}
.feed li{display:grid;grid-template-columns:1fr auto 40px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}.feed b{text-align:right;font-family:Cinzel,serif}

footer{position:relative;z-index:2;text-align:center;color:var(--mut);font-size:13px;padding:60px 20px 40px}
footer p{margin:6px 0}
.toast{position:fixed;z-index:50;left:50%;bottom:24px;transform:translateX(-50%) translateY(30px);opacity:0;background:rgba(8,16,26,.85);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:14px;padding:12px 18px;transition:.25s;pointer-events:none;max-width:90vw}
.toast.show{opacity:1;transform:translateX(-50%)}.toast.err{border-color:var(--bad);color:#ffc7d1}
#result{scroll-margin-top:80px}
@media(prefers-reduced-motion:reduce){*{animation:none!important}}

@media(max-width:700px){.planet{top:78%}.sun{left:80%;top:calc(78% + 10px);width:380px;height:380px}.hero{padding-top:120px}}

.top.scrolled{background:rgba(2,6,12,.78);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-bottom-color:var(--line)}
