:root{--bg: #0b0e14;--bg2:#0f1420;--text: rgba(255,255,255,.92);--muted: rgba(255,255,255,.62);--muted2: rgba(255,255,255,.42);--border: rgba(255,255,255,.12);--border2: rgba(255,255,255,.18);--card: rgba(255,255,255,.03);--card2: rgba(255,255,255,.05);--accent: #7c5cff;--accent2:#2fe4c3;--danger:#ff4d5e;--ok:#32d583;--radius: 16px;--radius2: 12px;--maxw: 1040px;--pad: 20px;--mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--sans: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji"}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--sans);color:var(--text);background:radial-gradient(1200px 800px at 20% 0%,rgba(124,92,255,.18),transparent 55%),radial-gradient(1000px 600px at 90% 20%,rgba(47,228,195,.12),transparent 55%),linear-gradient(180deg,var(--bg),var(--bg2))}.shell{min-height:100%}.container{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad)}.stack{display:grid;gap:16px}.row{display:flex;gap:12px;align-items:center}.space-between{justify-content:space-between}.wrap{flex-wrap:wrap}.mt-0{margin-top:0}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.topbar{position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#080a0f9e;border-bottom:1px solid var(--border)}.topbar-inner{height:68px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:baseline;gap:10px}.brand a{color:var(--text);text-decoration:none;font-weight:900;letter-spacing:.2px}.brand small{color:var(--muted);font-weight:600}.nav{display:flex;gap:6px;align-items:center}.nav a{color:var(--muted);text-decoration:none;font-weight:800;padding:8px 10px;border-radius:10px}.nav a:hover{color:var(--text);background:#ffffff0d}h1,h2{letter-spacing:-.02em}h1{font-size:40px;line-height:1.05;margin:0 0 10px}h2{font-size:12px;margin:0;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.18em}p{color:var(--muted);line-height:1.6;font-size:15px;margin:10px 0 0}.mono{font-family:var(--mono)}.subtle{color:var(--muted);font-size:13px;line-height:1.55}.card{border:1px solid var(--border);background:var(--card);border-radius:var(--radius);box-shadow:none}.card-pad{padding:18px}.card-hover{transition:transform .1s ease,border-color .12s ease,background .12s ease}.card-hover:hover{transform:translateY(-1px);border-color:var(--border2);background:var(--card2)}.divider{border-top:1px solid var(--border)}.hero{padding:22px;background:radial-gradient(900px 520px at 10% 0%,rgba(124,92,255,.2),transparent 60%),radial-gradient(900px 520px at 90% 0%,rgba(47,228,195,.14),transparent 60%),var(--card);border-color:#ffffff29}.btn{appearance:none;border:1px solid var(--border);background:#ffffff0f;color:var(--text);border-radius:14px;padding:12px 14px;font-weight:800;cursor:pointer;transition:transform .08s ease,border-color .12s ease,background .12s ease,box-shadow .12s ease;box-shadow:none}.btn:hover{border-color:var(--border2);background:#ffffff14}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{border-color:#7c5cff73;background:linear-gradient(180deg,#7c5cff42,#7c5cff24)}.btn-primary:hover{border-color:#7c5cffb8;box-shadow:0 0 0 4px #7c5cff1f}.btn-success{border-color:#32d58373;background:linear-gradient(180deg,#32d58338,#32d5831f)}.btn-success:hover{border-color:#32d583b8;box-shadow:0 0 0 4px #32d5831a}.btn-ghost{background:transparent}.input,select{width:100%;border:1px solid var(--border);background:#0000002e;color:var(--text);border-radius:14px;padding:14px 16px;outline:none;transition:border-color .12s ease,box-shadow .12s ease,background .12s ease}.input::placeholder{color:#ffffff61}.input:focus,select:focus{border-color:#2fe4c39e;box-shadow:0 0 0 4px #2fe4c31f;background:#00000038}.search-row .input{font-size:16px}.search-row .btn{padding:14px 16px}.badge{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:#ffffff0a;border-radius:999px;padding:6px 10px;font-size:12px;color:var(--muted);font-weight:800}.badge-dot{width:8px;height:8px;border-radius:999px;background:var(--accent2);box-shadow:0 0 0 3px #2fe4c31f}a{color:#7c5cfff2}a:hover{color:#7c5cff}.kv{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px}.kv strong{color:var(--text);font-weight:900}.bg-grid{position:relative}.bg-grid:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.14;background:linear-gradient(to right,rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.06) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(900px 500px at 30% 0%,black 18%,transparent 72%);mask-image:radial-gradient(900px 500px at 30% 0%,black 18%,transparent 72%)}.pills{display:flex;gap:10px;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.02em}.pill strong{color:var(--text);font-weight:900}.pill .chip{width:8px;height:8px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 3px #7c5cff1f}.pill.alt .chip{background:var(--accent2);box-shadow:0 0 0 3px #2fe4c31f}.pill.mono{font-family:var(--mono)}.pills.compact .pill{padding:6px 9px;font-size:11px;opacity:.92}.pos{display:inline-flex;align-items:center;justify-content:center;min-width:44px;padding:6px 10px;border-radius:12px;border:1px solid var(--border);background:#ffffff0a;color:var(--muted);font-weight:900;font-family:var(--mono)}.pos.p1{border-color:#2fe4c38c;background:#2fe4c324;color:#fffffff2}.pos.p2{border-color:#7c5cff99;background:#7c5cff2e;color:#fffffff2}.pos.p3{border-color:#ffffff38;background:#ffffff14;color:#ffffffeb}.hint{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:13px;align-items:center}.hint a{text-decoration:none;font-weight:900}@media(max-width:720px){:root{--pad: 16px}h1{font-size:30px}.topbar-inner{height:64px}.row{gap:10px}.btn{width:100%;justify-content:center}.search-row{flex-direction:column;align-items:stretch}}
