:root{--charcoal: #161618;--charcoal-deep: #0c0c0d;--charcoal-raised: #222226;--accent: #8fb3ff;--accent-dim: rgba(143, 179, 255, .2);--text: #ffffff;--text-muted: #b8bcc8;--space-1: 4px;--space-2: 8px;--space-3: 16px;--space-4: 24px;--space-5: 40px;--space-6: 64px;--font-display: "Press Start 2P", monospace;--font-pixel: "VT323", monospace}*{box-sizing:border-box}html,body{margin:0;min-height:100vh}html{background:linear-gradient(var(--charcoal-deep),var(--charcoal)) fixed}body{color:var(--text);font-family:var(--font-pixel);text-align:center;text-transform:lowercase;overflow-x:hidden}a{color:var(--accent);text-decoration:none}a:hover{text-shadow:0 0 8px var(--accent)}#stars{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none}.hidden{display:none!important}#gate{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-3);transition:opacity .6s ease}#gate.fade-out{opacity:0}body:has(#gate){cursor:pointer;-webkit-user-select:none;user-select:none}#enter-text{margin:0;color:var(--accent);font-family:var(--font-display);font-size:14px;text-shadow:0 0 8px var(--accent);animation:pulse 2s ease-in-out infinite}@keyframes pulse{50%{opacity:.45}}.notices{display:flex;flex-direction:column;gap:var(--space-1);max-width:64ch;font-size:18px;line-height:1.25}.notices b{margin-bottom:var(--space-2)}.notices em{color:var(--text-muted)}#main.reveal{animation:reveal 1.2s ease forwards}@keyframes reveal{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur(0)}}#main{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-6) var(--space-3)}#brand-text:hover span{animation:glitch .35s steps(2) 2}@keyframes glitch{0%{text-shadow:2px 0 #ff4d8d,-2px 0 var(--accent);transform:translate(1px)}50%{text-shadow:-2px 0 #ff4d8d,2px 0 var(--accent);transform:translate(-1px)}to{text-shadow:none;transform:none}}.rule{width:min(420px,70vw);height:1px;margin:var(--space-2) 0;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.6}#crt{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10;background:repeating-linear-gradient(to bottom,rgba(0,0,0,.18) 0 1px,transparent 1px 3px),radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.55) 100%)}::selection{background:var(--accent);color:var(--charcoal)}:focus-visible{outline:1px dashed var(--accent);outline-offset:3px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}#brand-line{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}#brand-text{color:var(--accent);font-family:var(--font-display);font-size:11px;display:flex;justify-content:center;align-items:center;gap:var(--space-2)}.brand-icon{width:16px;height:16px;filter:drop-shadow(0 0 4px var(--accent))}#typewriter{display:inline-block;min-height:1.2em;font-size:22px;text-shadow:0 0 1px var(--accent)}#typewriter:after{content:"_";color:var(--accent);animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}#links{font-size:22px;display:flex;justify-content:center;gap:var(--space-3)}#links .chev,#links .sep{color:var(--text)}#now-playing{font-size:18px;color:var(--text-muted)}#now-playing .note{color:var(--accent);margin:0 var(--space-2);vertical-align:sub}#mute-btn{position:fixed;right:var(--space-3);bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-2);background:none;border:none;padding:var(--space-1);color:var(--accent);font-family:var(--font-pixel);font-size:22px;cursor:pointer}#mute-btn:hover{text-shadow:0 0 8px var(--accent)}#mute-btn:hover .eq i{box-shadow:0 0 6px var(--accent)}.eq{display:flex;align-items:flex-end;gap:2px;height:12px}.eq i{width:3px;height:100%;background:var(--accent);transform-origin:bottom;animation:eq .9s steps(4) infinite}.eq i:nth-child(2){animation-delay:-.3s}.eq i:nth-child(3){animation-delay:-.6s}@keyframes eq{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}#mute-btn.muted{opacity:.45}#mute-btn.muted .eq i{animation:none;transform:scaleY(.25)}
