:root{--bg:#0b0d12;--p:#141823;--b:#232a3a;--t:#e7eaf2;--m:#8a93a8;--a:#7c5cff;--a2:#22d3ee}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--t);font:16px/1.5 system-ui,-apple-system,Segoe UI,Inter,sans-serif}
a{color:var(--a2);text-decoration:none}.nav{display:flex;justify-content:space-between;align-items:center;padding:18px 5vw;border-bottom:1px solid var(--b)}
.nav nav a{color:var(--m);margin-left:22px}.logo{font-weight:800;font-size:22px;color:var(--t)}.logo span,.grad{background:linear-gradient(90deg,var(--a),var(--a2));-webkit-background-clip:text;color:transparent}
.hero{text-align:center;padding:70px 5vw 40px}.hero h1{font-size:clamp(32px,5vw,56px);margin:0 0 14px;line-height:1.1}.hero p{color:var(--m);max-width:640px;margin:0 auto 28px}
#q{width:min(620px,100%);padding:15px 18px;border-radius:14px;border:1px solid var(--b);background:var(--p);color:var(--t);font-size:16px}
main{padding:0 5vw 40px;max-width:1300px;margin:auto}h2{margin:48px 0 18px}h2 small{color:var(--m);font-weight:400;font-size:14px;margin-left:8px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:18px}.cat{background:var(--p);border:1px solid var(--b);border-radius:16px;padding:18px}
.cat h3{margin:0 0 12px}.kit{display:flex;gap:12px;align-items:center;padding:10px;border-radius:10px;cursor:pointer;border:1px solid transparent}.kit:hover{border-color:var(--a);background:#1a1f2e}
.rank{font-weight:800;color:var(--m);width:22px}.kn{font-weight:600}.kt{color:var(--m);font-size:13px}.sc{margin-left:auto;font-weight:800;background:linear-gradient(135deg,var(--a),var(--a2));color:#fff;border-radius:8px;padding:4px 8px;font-size:14px}
.feed{list-style:none;padding:0;display:grid;gap:10px}.feed li{background:var(--p);border:1px solid var(--b);border-radius:12px;padding:14px 16px;display:flex;gap:14px;align-items:baseline}
.d{color:var(--m);font-size:13px;min-width:86px}.tag,.pill{font-size:11px;border:1px solid var(--b);border-radius:99px;padding:2px 8px;color:var(--a2)}.muted{color:var(--m);font-size:13px}
.news{background:linear-gradient(135deg,#1a1440,#0e2a33);border:1px solid var(--b);border-radius:18px;padding:10px 28px 22px;margin-top:48px}
form{display:flex;gap:10px;flex-wrap:wrap}form input{flex:1;min-width:220px;padding:12px;border-radius:10px;border:1px solid var(--b);background:#0b0d12;color:var(--t)}
button{background:var(--a);color:#fff;border:0;border-radius:10px;padding:12px 18px;font-weight:600;cursor:pointer}footer{color:var(--m);text-align:center;padding:30px;font-size:13px;border-top:1px solid var(--b)}
.modal{position:fixed;inset:0;background:#000a;display:flex;align-items:center;justify-content:center;padding:20px}.modal[hidden]{display:none}
.modal .card{background:var(--p);border:1px solid var(--b);border-radius:18px;max-width:680px;width:100%;max-height:90vh;overflow:auto;padding:28px;position:relative}
.x{position:absolute;right:14px;top:10px;background:none;font-size:26px;color:var(--m)}.bars div{display:flex;align-items:center;gap:10px;margin:6px 0}.bars span{width:70px;color:var(--m);font-size:14px}
.bar{flex:1;height:8px;background:#0b0d12;border-radius:9px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--a),var(--a2))}
.meta{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0}.meta b{background:#0b0d12;border:1px solid var(--b);border-radius:8px;padding:4px 10px;font-weight:500;font-size:14px}
.empty{color:var(--m)}
.nav nav{display:flex;flex-wrap:wrap;gap:4px 18px}.nav nav a{margin-left:0}
.rss{font-size:12px;font-weight:600;border:1px solid #f9731655;color:#fb923c;border-radius:99px;padding:3px 10px;vertical-align:middle;margin-left:8px}
.src{font-size:11px;border-radius:99px;padding:2px 8px;background:#1e2433;color:var(--t);margin-left:4px}
.wkh{list-style:none;color:var(--m);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:6px 2px 0!important;background:none!important;border:0!important}
.prompt{background:#0b0d12;border:1px solid var(--b);border-radius:12px;padding:14px;white-space:pre-wrap;font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;color:#cfd5e4;max-height:220px;overflow:auto;margin:0}
.ph{display:flex;justify-content:space-between;align-items:center}.copy{padding:8px 14px;font-size:14px}.copy.ok{background:#16a34a}
.sf{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sf textarea,.sf button{grid-column:1/-1}.sf input,.sf select,.sf textarea{min-width:0;padding:12px;border-radius:10px;border:1px solid var(--b);background:#0b0d12;color:var(--t);font:inherit}
.btn{display:inline-block;background:var(--a);color:#fff;border-radius:10px;padding:12px 20px;font-weight:600}.rules{color:var(--m)}.rules li{margin:6px 0}
footer a{color:var(--m);text-decoration:underline}
@media(max-width:640px){.nav{flex-direction:column;gap:10px}.grid{grid-template-columns:1fr}.sf{grid-template-columns:1fr}.feed li{flex-direction:column;gap:4px}.hero{padding:44px 5vw 28px}.modal .card{padding:20px}}
.slots{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
/* ===== v2 rebrand: neon tech ===== */
:root{--bg:#07080d;--p:rgba(20,24,38,.55);--b:rgba(148,163,255,.14);--t:#eef1f8;--m:#9aa3b8;--a:#8b6cff;--a2:#22d3ee;--a3:#f472b6;--mono:ui-monospace,SFMono-Regular,"JetBrains Mono",Menlo,Consolas,monospace}
body{background:var(--bg);overflow-x:hidden}
.bg{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(600px 400px at 15% -5%,#7c5cff33,transparent 70%),radial-gradient(500px 380px at 90% 10%,#22d3ee26,transparent 70%),radial-gradient(700px 500px at 50% 110%,#f472b61a,transparent 70%)}
.bg::before{content:"";position:absolute;inset:-60px;background-image:linear-gradient(rgba(139,108,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(139,108,255,.07) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(ellipse at 50% 0%,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 50% 0%,#000 30%,transparent 75%);animation:grid 18s linear infinite}
@keyframes grid{to{transform:translate(44px,44px)}}
.nav{position:sticky;top:0;z-index:5;background:rgba(7,8,13,.7);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.nav nav a{font:13px var(--mono);letter-spacing:.02em}.nav nav a:hover{color:var(--t)}
.logo{display:flex;align-items:center;gap:9px;letter-spacing:-.02em}.logo i{font:500 13px var(--mono);color:var(--m);font-style:normal;margin-left:-6px;align-self:flex-end;padding-bottom:3px}
.logo span,.grad{background:linear-gradient(90deg,#a78bfa,var(--a2) 60%,var(--a3));-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{font:13px var(--mono)!important;color:var(--a2)!important;letter-spacing:.06em;margin:0 0 14px!important}
.hero h1{letter-spacing:-.03em;text-shadow:0 0 40px #7c5cff22}
#q{background:rgba(12,14,22,.8);border-color:var(--b);box-shadow:0 0 0 1px #7c5cff22,0 10px 40px -10px #7c5cff55;transition:box-shadow .2s}#q:focus{outline:none;box-shadow:0 0 0 2px var(--a),0 10px 40px -8px #22d3ee66}
h2{letter-spacing:-.02em}h2 small{font-family:var(--mono);font-size:12px}
.cat,.feed li,.modal .card{background:var(--p);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:var(--b);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.cat{transition:border-color .2s,transform .2s}.cat:hover{border-color:rgba(139,108,255,.4)}
.kit:hover{background:rgba(124,92,255,.08)}.rank,.d,.tag,.pill,.src,.sc,.rss,.meta b{font-family:var(--mono)}
.sc{box-shadow:0 0 18px -4px #7c5cffaa}.tag,.pill{border-color:#22d3ee44}
.news{background:linear-gradient(135deg,rgba(124,92,255,.16),rgba(34,211,238,.08));backdrop-filter:blur(10px);border-color:var(--b)}
button,.btn{background:linear-gradient(135deg,#7c5cff,#5b8cff);box-shadow:0 6px 24px -8px #7c5cffcc;transition:transform .15s,box-shadow .15s}button:hover,.btn:hover{transform:translateY(-1px);box-shadow:0 10px 30px -8px #22d3eeaa}
.x{background:none!important;box-shadow:none!important}
:focus-visible{outline:2px solid var(--a2);outline-offset:2px}
/* ribbon */
.ribbon{max-width:1300px;margin:0 auto 8px;padding:0 5vw}
.rib-label{display:flex;justify-content:space-between;font:12px var(--mono);color:var(--m);margin-bottom:8px}.rib-label a{color:var(--a2)}
.rib-view{overflow:hidden;border:1px solid var(--b);border-radius:16px;background:rgba(12,14,22,.6);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.rib-track{display:flex;width:max-content;animation:marquee 40s linear infinite}.rib-dup{display:flex}
.rib-view:hover .rib-track,.rib-view:focus-within .rib-track{animation-play-state:paused}
@keyframes marquee{to{transform:translateX(-50%)}}
.slot{display:flex;align-items:center;gap:12px;padding:14px 22px;margin:8px 6px;border-radius:12px;border:1px dashed rgba(148,163,255,.25);color:var(--t);min-width:270px;transition:border-color .2s,background .2s}
.slot:hover{border-color:var(--a2);background:rgba(34,211,238,.06)}.slot b{display:block;font-size:15px}.slot small{display:block;color:var(--m);font-size:12.5px}.slot img{border-radius:8px}
.ph-logo{width:36px;height:36px;flex:none;border-radius:9px;border:1px dashed #8b6cff88;display:grid;place-items:center;font:700 8px var(--mono);color:#a78bfa;background:repeating-linear-gradient(45deg,#8b6cff14 0 4px,transparent 4px 8px)}
.slot em{margin-left:auto;font:normal 10px var(--mono);color:var(--a3);border:1px solid #f472b655;border-radius:99px;padding:2px 8px;white-space:nowrap}
.anat{margin-top:22px}.anat .slot{display:inline-flex;margin:4px 0 8px}code{font:12.5px var(--mono);color:var(--a2);background:rgba(34,211,238,.08);padding:1px 6px;border-radius:5px}
@media(prefers-reduced-motion:reduce){.rib-track,.bg::before{animation:none}.rib-view{overflow-x:auto}.rib-dup{display:none}*{transition:none!important}}
@media(max-width:640px){.slot{min-width:230px;padding:12px 16px}.nav nav a{font-size:12px}}
.wm{font-weight:800}
