:root{--bg: #0b0b16;--bg-raised: #14142a;--bg-card: #191933;--border: #2c2c54;--text: #e8e8f5;--text-dim: #9a9ac0;--green: #39ff88;--pink: #ff2e88;--cyan: #2ee6ff;--yellow: #ffd93d;--font-display: "Press Start 2P", monospace;--font-body: "VT323", ui-monospace, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:20px;line-height:1.5;background-image:radial-gradient(circle at 15% 10%,rgba(57,255,136,.06),transparent 40%),radial-gradient(circle at 85% 30%,rgba(255,46,136,.06),transparent 40%)}a{color:var(--cyan);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,.pixel{font-family:var(--font-display);line-height:1.6;letter-spacing:.5px}.container{max-width:1080px;margin:0 auto;padding:0 20px}.crt-overlay{pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:repeating-linear-gradient(to bottom,#0000,#0000 2px,#0000000f 3px);mix-blend-mode:overlay;opacity:.5}.navbar{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:2px solid var(--border);background:var(--bg-raised);position:sticky;top:0;z-index:40}.navbar .brand{font-family:var(--font-display);font-size:14px;color:var(--green);text-shadow:2px 2px 0 var(--pink)}.navbar nav{display:flex;gap:20px;font-size:20px}.navbar nav a{color:var(--text)}.navbar nav a.active,.navbar nav a:hover{color:var(--green)}.hero{padding:72px 0 48px;text-align:center}.hero h1{font-size:32px;color:var(--green);text-shadow:3px 3px 0 var(--pink);margin-bottom:20px}.hero p{font-size:24px;color:var(--text-dim);max-width:640px;margin:0 auto}.btn{display:inline-block;font-family:var(--font-display);font-size:12px;padding:12px 18px;border:2px solid var(--green);color:var(--green);background:transparent;cursor:pointer;transition:transform .1s ease}.btn:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--green);text-decoration:none}.btn.pink{border-color:var(--pink);color:var(--pink)}.btn.pink:hover{box-shadow:4px 4px 0 var(--pink)}.section{padding:48px 0}.section h2{font-size:20px;color:var(--cyan);margin-bottom:24px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.card{background:var(--bg-card);border:2px solid var(--border);padding:16px;transition:border-color .15s ease,transform .1s ease}.card:hover{border-color:var(--green);transform:translateY(-2px)}.card .cover{width:100%;aspect-ratio:4 / 3;background:var(--bg-raised);border:1px solid var(--border);margin-bottom:12px;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-size:14px;overflow:hidden}.card .cover img{width:100%;height:100%;object-fit:cover}.card h3{font-size:15px;color:var(--text);margin:0 0 8px}.card .tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.tag{font-size:12px;padding:2px 8px;border:1px solid var(--border);color:var(--text-dim)}.badge-featured{display:inline-block;font-size:11px;color:var(--yellow);border:1px solid var(--yellow);padding:2px 6px;margin-bottom:8px}.player-frame{width:100%;aspect-ratio:16 / 9;background:#000;border:2px solid var(--border)}.player-frame iframe{width:100%;height:100%;border:0}.footer{border-top:2px solid var(--border);padding:32px 0;text-align:center;color:var(--text-dim);font-size:18px}.comment{border-top:1px solid var(--border);padding:14px 0}.comment .meta{color:var(--text-dim);font-size:16px;margin-bottom:4px}input,textarea,select{font-family:var(--font-body);font-size:18px;background:var(--bg-raised);border:1px solid var(--border);color:var(--text);padding:8px;width:100%}label{display:block;margin-bottom:4px;color:var(--text-dim);font-size:16px}.field{margin-bottom:14px}.admin-tabs{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap}.prose{font-size:20px;line-height:1.7}.prose h1,.prose h2,.prose h3{color:var(--cyan)}.prose pre{background:var(--bg-raised);border:1px solid var(--border);padding:12px;overflow-x:auto}.prose code{color:var(--green)}.nes-scene{position:relative;height:min(78vh,560px);min-height:400px;overflow:hidden;background:linear-gradient(#5c94fc,#8fb8ff 70%,#a9c9ff);border-bottom:6px solid #7a2e07}.nes-hud{position:relative;z-index:10;display:flex;gap:28px;flex-wrap:wrap;padding:14px 20px;font-family:var(--font-display);font-size:11px;color:#fff;text-shadow:2px 2px 0 #00000080;background:linear-gradient(to bottom,rgba(0,0,0,.35),transparent)}.nes-layer{position:absolute;left:0;width:100%;pointer-events:none}.nes-clouds{top:0;height:55%}.nes-hills{bottom:56px;height:230px}.nes-ground{bottom:0;height:56px}.nes-runner{position:absolute;bottom:56px;z-index:5;filter:drop-shadow(2px 2px 0 rgba(0,0,0,.25));will-change:transform,left}.nes-hint{position:absolute;top:-34px;left:50%;transform:translate(-50%);white-space:nowrap;font-family:var(--font-display);font-size:9px;color:#fff;text-shadow:1px 1px 0 #00000080;text-align:center;line-height:1.6;pointer-events:none;animation:nes-hint-pulse 1.6s ease-in-out infinite}@keyframes nes-hint-pulse{0%,to{opacity:.6}50%{opacity:1}}.nes-obstacle{position:absolute;bottom:56px;z-index:4;filter:drop-shadow(2px 2px 0 rgba(0,0,0,.2));will-change:left}.nes-title-row{position:relative;z-index:10;text-align:center;padding-top:1.5%}.nes-title-row h1{font-size:36px;color:#fff;text-shadow:3px 3px 0 #7a2e07,6px 6px 0 rgba(0,0,0,.25);margin:0}.nes-bio-panel{position:relative;z-index:10;max-width:520px;max-height:96px;overflow:hidden;margin:14px auto 0;padding:10px 18px;text-align:center;background:#0b0b1673;border:2px solid rgba(255,255,255,.35)}.nes-bio-panel p{margin:0;font-size:17px;line-height:1.4;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,.4)}.nes-blocks-row{position:absolute;z-index:10;left:50%;bottom:166px;transform:translate(-50%);text-align:center}.nes-blocks{display:flex;gap:28px}.nes-block{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#fbb03b;border:3px solid #7a2e07;box-shadow:inset -3px -3px #c8781e,inset 3px 3px #ffd98a;font-family:var(--font-display);font-size:18px;color:#7a2e07;text-decoration:none;cursor:pointer;padding:0;flex-shrink:0;animation:nes-idle-bounce 2.2s ease-in-out infinite}.nes-block:hover{animation:nes-hit-bounce .3s ease-out;text-decoration:none}.nes-block.bumped{animation:nes-hit-bounce .26s ease-out;background:#ffe9b8}.nes-brick{width:48px;height:48px;flex-shrink:0;background:#c84c0c;border:3px solid #7a2e07;box-shadow:inset -3px -3px #7a2e07,inset 3px 3px #e06a2c;background-image:linear-gradient(#7a2e07 2px,transparent 2px),linear-gradient(90deg,#7a2e07 2px,transparent 2px);background-size:24px 16px}.nes-brick.broken{animation:nes-brick-break .3s ease-out forwards}@keyframes nes-idle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes nes-hit-bounce{0%{transform:translateY(0)}40%{transform:translateY(-14px)}to{transform:translateY(0)}}@keyframes nes-brick-break{0%{opacity:1;transform:scale(1) rotate(0)}40%{opacity:1;transform:scale(1.15) rotate(-6deg)}to{opacity:0;transform:scale(.5) rotate(10deg)}}.nes-cta-labels{display:flex;gap:28px;margin-top:10px;font-size:16px;color:#fff;text-shadow:2px 2px 0 #00000080}.nes-cta-labels span{width:48px;flex-shrink:0;text-align:center}.nes-dialogue{position:relative;max-width:640px;margin:0 auto;background:var(--bg-card);border:3px solid #fff;box-shadow:0 0 0 3px #000;padding:18px 22px}.nes-dialogue-name{font-family:var(--font-display);font-size:11px;color:var(--green);margin-bottom:10px}.nes-dialogue p{margin:0;font-size:21px;line-height:1.5}.nes-dialogue-arrow{position:absolute;right:16px;bottom:10px;color:var(--text-dim);animation:nes-hint-pulse 1.2s ease-in-out infinite}
