:root{--bg: #05060d;--panel: #0c1020;--line: #1e2742;--text: #e8f4ff;--muted: #8a9bbd;--pink: #ff4f8a;--cyan: #6ff7ff;--green: #46e07a;--gold: #ffd27a;--red: #ff6a6a;--pixel: "Press Start 2P", "Courier New", monospace;--sans: Inter, system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:15px/1.55 var(--sans)}body{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(180deg,transparent 0 55%,rgba(255,47,122,.06) 100%),repeating-linear-gradient(90deg,rgba(42,108,255,.05) 0 1px,transparent 1px 48px),var(--bg)}a{color:var(--cyan)}main{flex:1;width:100%;max-width:980px;margin:0 auto;padding:24px 16px 48px}footer{text-align:center;color:#4a5576;font-size:12px;padding:20px 16px}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 20px;border-bottom:1px solid var(--line)}.brand{font:14px var(--pixel);text-decoration:none;letter-spacing:1px}.brand .b1{color:var(--pink);text-shadow:0 0 10px rgba(255,47,122,.6)}.brand .b2{color:var(--cyan);text-shadow:0 0 10px rgba(111,247,255,.5)}nav{display:flex;gap:14px;align-items:center;font-size:14px}nav a{text-decoration:none}nav .who{color:var(--muted)}h1,h2,h3{font-family:var(--pixel);font-weight:400;line-height:1.5}h1{font-size:20px;color:var(--cyan);margin:8px 0 18px}h2{font-size:13px;color:var(--pink);margin:28px 0 12px}h3{font-size:12px;margin:0 0 10px}.muted{color:var(--muted)}.lede{color:var(--muted);max-width:60ch;margin-top:-6px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px}.game-card{display:flex;flex-direction:column;gap:10px;border-color:#2a3560;transition:border-color .15s,transform .15s}.game-card:hover{border-color:var(--pink);transform:translateY(-2px)}.game-card h3{color:var(--gold)}.game-card .art{height:130px;border-radius:6px;background:radial-gradient(circle at 50% 120%,#0f3b22 0 45%,transparent 46%),linear-gradient(#060818,#1a1040);position:relative;overflow:hidden}.game-card .art span{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);font:18px var(--pixel);color:var(--pink);text-shadow:0 0 12px rgba(255,47,122,.8);white-space:nowrap}.tags{display:flex;gap:6px;flex-wrap:wrap}.tag{font-size:11px;padding:2px 8px;border-radius:99px;border:1px solid var(--line);color:var(--muted)}.tag.mp{border-color:var(--pink);color:var(--pink)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:11px var(--pixel);padding:12px 18px;border-radius:6px;border:2px solid var(--pink);background:#ff2f7a26;color:#fff;cursor:pointer;text-decoration:none}.btn:hover{background:#ff2f7a59}.btn:disabled{opacity:.5;cursor:wait}.btn.alt{border-color:#2a6cff;background:#2a6cff26}.btn.alt:hover{background:#2a6cff59}.btn.danger{border-color:var(--red);background:#ff4a4a1f}.linkbtn{background:none;border:0;color:var(--cyan);cursor:pointer;font:inherit;padding:0;text-decoration:underline}form.auth{max-width:420px;display:flex;flex-direction:column;gap:14px}label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}input{font:15px var(--sans);color:var(--text);background:#070a16;border:1px solid #2a3560;border-radius:6px;padding:10px 12px}input:focus{outline:2px solid var(--cyan);outline-offset:1px;border-color:transparent}.hp{position:absolute;left:-9999px}.msg{padding:10px 14px;border-radius:6px;font-size:14px}.msg.err{background:#ff4a4a1f;border:1px solid rgba(255,74,74,.5);color:#ffb3b3}.msg.ok{background:#46e07a1a;border:1px solid rgba(70,224,122,.45);color:#b8f5cb}.msg.warn{background:#ffd27a1a;border:1px solid rgba(255,210,122,.45);color:var(--gold)}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:7px 8px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:600;font-size:12px}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.recent{list-style:none;padding:0;margin:0;font-size:13px;color:var(--muted)}.recent li{padding:5px 0;border-bottom:1px dashed var(--line)}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media (max-width: 720px){.two{grid-template-columns:1fr}h1{font-size:16px}}
