*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0d0a1f;--bg-card:#120e2a;--gold:gold;--gold-dk:#8b6000;--orange:#c40;--purple:#c0f;--muted:#4b3a6e;--dim:#2a1f5a;--white:#fff;--font:"Press Start 2P",monospace}body,html{background:var(--bg);color:var(--white);font-family:var(--font);min-height:100vh}body:after{content:"";position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.08) 0,rgba(0,0,0,.08) 4px);pointer-events:none;z-index:9999}.retro-card{background:var(--bg-card);border:2px solid var(--dim);border-top-color:var(--gold);padding:16px;position:relative;margin-bottom:12px}.retro-button{display:block;width:100%;background:var(--bg-card);color:var(--gold);font-family:var(--font);font-size:11px;padding:13px;border:2px solid var(--gold);cursor:pointer;letter-spacing:2px;text-align:center;box-shadow:4px 4px 0 var(--gold-dk);transition:transform .08s,box-shadow .08s;margin-bottom:8px}.retro-button:hover{transform:translate(1px,1px);box-shadow:3px 3px 0 var(--gold-dk)}.retro-button:active{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--gold-dk)}.retro-button:disabled{opacity:.35;cursor:not-allowed;transform:none;box-shadow:4px 4px 0 var(--gold-dk)}.retro-button.secondary{color:var(--muted);border-color:var(--dim);box-shadow:4px 4px 0 #111}.retro-button.danger{color:var(--orange);border-color:var(--orange);box-shadow:4px 4px 0 #610}.retro-input{display:block;width:100%;background:#000;color:var(--gold);font-family:var(--font);font-size:20px;padding:12px;border:2px solid var(--gold);text-align:center;letter-spacing:6px;margin-bottom:10px;outline:none}.retro-input:focus{border-color:var(--white)}.retro-input::-moz-placeholder{color:var(--dim);letter-spacing:4px}.retro-input::placeholder{color:var(--dim);letter-spacing:4px}.retro-input[type=number]::-webkit-inner-spin-button,.retro-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.retro-input[type=number]{-moz-appearance:textfield}.round-badge{display:inline-block;background:var(--gold);color:#0d0a1f;font-family:var(--font);font-size:7px;padding:5px 10px;letter-spacing:1px}.round-badge.r2{background:var(--orange);color:var(--white)}.hint-box{background:#000;border:2px solid var(--orange);padding:12px;font-size:8px;color:var(--gold);text-align:center;letter-spacing:1px;line-height:2.2;margin-bottom:12px}.player-list-item{display:flex;align-items:center;gap:10px;padding:8px 10px;margin-bottom:6px;border-left:3px solid var(--dim);background:hsla(0,0%,100%,.02);font-size:8px}.player-list-item.winner{border-left-color:var(--gold);background:rgba(255,215,0,.06)}.player-list-item.runner-up{border-left-color:#888;background:hsla(0,0%,53%,.04)}.locked-in{font-size:16px;color:var(--gold);letter-spacing:3px;animation:lockedPulse 1.2s step-end infinite}@keyframes lockedPulse{0%,to{opacity:1}50%{opacity:.4}}.strikethrough{text-decoration:line-through;color:var(--dim);font-size:8px;letter-spacing:2px}.glitch-logo{font-family:var(--font);color:var(--gold);text-shadow:3px 3px 0 var(--gold-dk)}.score-reveal{font-size:42px;color:var(--gold);text-align:center;padding:8px 0 4px;text-shadow:4px 4px 0 var(--gold-dk);letter-spacing:4px}.ticker-wrap{overflow:hidden;background:#000;border-top:2px solid var(--gold);border-bottom:1px solid var(--dim);padding:6px 0}.ticker-inner{display:flex;animation:tickerScroll 18s linear infinite;white-space:nowrap}.ticker-text{font-size:7px;color:var(--gold);padding:0 24px;flex-shrink:0;letter-spacing:2px}@keyframes tickerScroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes spriteBob{0%{transform:translateY(0)}to{transform:translateY(-6px)}}@keyframes scoreCountUp{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width:480px){.retro-card{padding:16px;margin-bottom:10px}.retro-button{font-size:10px;padding:16px;min-height:52px}.retro-input{font-size:24px;padding:16px;min-height:56px}}