:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0503;--bg-panel:#2b0d05;--bg-panel-alt:#4a1409;--ink:#ffe4b5;--ink-dim:#d4896e;--accent:#ff4e1a;--accent-green:#a8c850;--accent-red:#ff2d1f;--accent-blue:#ffb347;--border:#ffe4b5;--shadow:#000;font-family:VT323,Courier New,monospace;font-size:18px;line-height:1.5}body{background-color:var(--bg);min-height:100vh;color:var(--ink);image-rendering:pixelated;image-rendering:crisp-edges;margin:0;position:relative;overflow-x:hidden}html{overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:9998;background-image:repeating-linear-gradient(0deg,#0000 0 3px,#00000038 3px 4px);animation:6s linear infinite scanlineDrift;position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:9997;background:linear-gradient(#0000 0% 47%,#ff4e1a0f 50%,#0000 53% 100%);animation:9s linear infinite vsyncRoll;position:fixed;inset:0}@keyframes scanlineDrift{0%{background-position-y:0}to{background-position-y:8px}}@keyframes vsyncRoll{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}*{box-sizing:border-box}h1,h2,h3,h4{letter-spacing:0;text-shadow:3px 3px 0 var(--shadow), 0 0 6px #ff4e1af2, 0 0 14px #ff4e1ab3, 0 0 28px #ff8c4266;font-family:"Press Start 2P",Courier New,monospace;line-height:1.25}h1{animation:7s linear infinite titleFlicker}@keyframes titleFlicker{0%,89%,to{opacity:1}90%,90.5%{opacity:.55}91%,91.4%{opacity:1}91.5%,91.9%{opacity:.7}92%{opacity:1}}button{font-family:"Press Start 2P",Courier New,monospace}input{font-family:VT323,Courier New,monospace;font-size:1.1rem}.app{z-index:1;max-width:960px;margin:0 auto;padding:1.5rem 1.25rem 3rem;position:relative}.synthwave-grid{pointer-events:none;z-index:0;perspective:320px;perspective-origin:50% 0;height:55vh;position:fixed;bottom:0;left:0;right:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 8%,#000 70%);mask-image:linear-gradient(#0000 8%,#000 70%)}.synthwave-grid-floor{transform-origin:50% 0;filter:drop-shadow(0 0 6px #ff4e1a59);background-image:linear-gradient(90deg,#ff4e1abf 1.5px,#0000 1.5px),linear-gradient(#ff4e1abf 1.5px,#0000 1.5px);background-position:0 0;background-size:56px 56px;width:200%;height:220%;animation:1.6s linear infinite gridScroll;position:absolute;top:0;left:-50%;transform:rotateX(72deg)}@keyframes gridScroll{0%{background-position-y:0}to{background-position-y:56px}}.crt-vignette{pointer-events:none;z-index:9996;background:radial-gradient(#0000 0% 55%,#00000059 85%,#000000b3 100%);position:fixed;inset:0}.app-header{background:var(--bg-panel);border:3px solid var(--border);box-shadow:4px 4px 0 var(--shadow);flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:.75rem 1rem;display:flex;position:relative}.app-header-name{color:var(--accent);text-shadow:2px 2px 0 var(--shadow);letter-spacing:0;margin-left:auto;font-family:"Press Start 2P",monospace;font-size:.7rem}.app-header-title{color:var(--accent);text-shadow:2px 2px 0 var(--shadow), 0 0 8px #ff4e1ab3;letter-spacing:0;white-space:nowrap;font-family:"Press Start 2P",monospace;font-size:.95rem}.app-header-name{text-overflow:ellipsis;white-space:nowrap;max-width:50vw;overflow:hidden}@media (width<=640px){.app-header{gap:.6rem;padding:.6rem .75rem}.app-header-title{display:none}.app-header-name{max-width:38vw;font-size:.6rem}.back-btn{font-size:.6rem}.marquee-text{font-size:.85rem}}.home{text-align:center}.home h1{color:var(--accent);margin:0 0 .5rem;font-size:1.9rem}.home-logo{width:100%;max-width:960px;height:auto;margin:0 auto 2rem;animation:3.5s ease-in-out infinite logoPulse;display:block}@keyframes logoPulse{0%,to{filter:drop-shadow(0 0 6px #ff4e1a80)drop-shadow(0 0 12px #ff4e1a40);transform:scale(1)}50%{filter:drop-shadow(0 0 14px #ff4e1af2)drop-shadow(0 0 32px #ff4e1a80);transform:scale(1.015)}}.mode-grid{flex-wrap:wrap;justify-content:center;gap:1.25rem;margin-top:1.5rem;display:flex}.mode-card{flex:260px;max-width:320px}.marquee{border-top:3px solid var(--border);border-bottom:3px solid var(--border);background:var(--bg-panel);width:100vw;margin-bottom:1.5rem;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:.85rem 0;overflow:hidden}.marquee-track{will-change:transform;width:fit-content;animation:60s linear infinite marqueeScroll;display:flex}.marquee-text{color:var(--accent);text-shadow:2px 2px 0 var(--shadow), 0 0 10px #ff4e1ab3;white-space:nowrap;letter-spacing:.04em;flex-shrink:0;font-family:"Press Start 2P",monospace;font-size:1rem}@keyframes marqueeScroll{0%{transform:translate(0,0)}to{transform:translate(-50%)}}.mode-card{border:4px solid var(--border);background:var(--bg-panel);color:var(--ink);cursor:pointer;text-align:center;box-shadow:5px 5px 0 var(--shadow);min-height:140px;font:inherit;flex-direction:column;justify-content:center;align-items:center;gap:.85rem;padding:1.6rem 1.4rem;transition:none;display:flex}.mode-card:hover{background:var(--bg-panel-alt);color:var(--accent)}.mode-card:active{box-shadow:0 0 0 var(--shadow);transform:translate(5px,5px)}.mode-card-title{text-shadow:2px 2px 0 var(--shadow);font-family:"Press Start 2P",monospace;font-size:1.05rem;line-height:1.2}.mode-card-desc{color:var(--ink-dim);font-family:VT323,monospace;font-size:1.15rem;line-height:1.3}.daily,.picker{text-align:center}.daily h1{color:var(--accent);margin:0 0 .35rem;font-size:1.9rem}.daily-teams{border:3px solid var(--border);background:var(--bg-panel);box-shadow:4px 4px 0 var(--shadow);margin:1.25rem 0 1.5rem;padding:1.1rem}.daily-teams-label{color:var(--ink-dim);letter-spacing:0;text-transform:uppercase;margin:0 0 .75rem;font-family:"Press Start 2P",monospace;font-size:.65rem}.daily-teams-row{flex-wrap:wrap;gap:1.5rem;display:flex}.daily-team{align-items:center;gap:.65rem;display:flex}.daily-team-logo{object-fit:contain;width:44px;height:44px;image-rendering:pixelated}.daily-team-name{font-family:VT323,monospace;font-size:1.2rem}.daily-entry{flex-direction:column;align-items:center;gap:.9rem;margin:1.25rem 0 2rem;display:flex}.daily-result{border:3px solid var(--border);background:var(--bg-panel);box-shadow:4px 4px 0 var(--shadow);text-align:center;margin:1.25rem 0 2rem;padding:1.25rem}.daily-result-label{color:var(--ink-dim);text-transform:uppercase;margin:0 0 .75rem;font-family:"Press Start 2P",monospace;font-size:.6rem}.daily-result-score{color:var(--accent);text-shadow:3px 3px 0 var(--shadow), 0 0 12px #ff4e1ab3;margin:0 0 .5rem;font-family:"Press Start 2P",monospace;font-size:2.4rem}.daily-result-note{color:var(--ink-dim);margin:0;font-family:VT323,monospace;font-size:1.1rem}.leaderboard{margin-top:2rem}.leaderboard-heading{color:var(--accent);margin:0 0 1rem;font-size:1rem}.leaderboard-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.leaderboard-row{border:3px solid var(--border);background:var(--bg-panel);box-shadow:3px 3px 0 var(--shadow);grid-template-columns:2.5rem 1fr auto auto;align-items:center;gap:.75rem;padding:.65rem .9rem;font-family:VT323,monospace;font-size:1.15rem;display:grid}.leaderboard-row--me{border-color:var(--accent);color:var(--accent);background:var(--bg-panel-alt)}.leaderboard-rank{color:var(--ink-dim);font-family:"Press Start 2P",monospace;font-size:.8rem}.leaderboard-row--me .leaderboard-rank{color:var(--accent)}.leaderboard-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.leaderboard-score{color:var(--ink);font-family:"Press Start 2P",monospace;font-size:.85rem}.leaderboard-row--me .leaderboard-score{color:var(--accent)}.leaderboard-time{color:var(--ink-dim);letter-spacing:0;font-family:"Press Start 2P",monospace;font-size:.65rem}.lb-tabs{gap:.5rem;margin:1.5rem 0;display:flex}.lb-tab{background:var(--bg-panel);border:3px solid var(--border);color:var(--ink);cursor:pointer;box-shadow:4px 4px 0 var(--shadow);text-shadow:2px 2px 0 var(--shadow);letter-spacing:0;flex:1;padding:.85rem .5rem;font-family:"Press Start 2P",monospace;font-size:.7rem;transition:none}.lb-tab:hover{color:var(--accent)}.lb-tab--on{background:var(--accent);color:var(--bg);text-shadow:none;box-shadow:0 0 0 var(--shadow);transform:translate(4px,4px)}.lb-group-switcher{flex-wrap:wrap;gap:.4rem;margin:0 0 1rem;display:flex}.lb-group-pill{background:var(--bg-panel);border:2px solid var(--ink-dim);color:var(--ink);cursor:pointer;padding:.5rem .8rem;font-family:VT323,monospace;font-size:1.1rem}.lb-group-pill:hover{border-color:var(--ink)}.lb-group-pill--on{border-color:var(--accent);color:var(--accent);background:var(--bg-panel-alt)}.multi-picker{border:3px solid var(--border);background:var(--bg-panel);max-height:440px;box-shadow:4px 4px 0 var(--shadow);padding:1rem;overflow-y:auto}.multi-picker-count{color:var(--accent);text-transform:uppercase;margin:0 0 .75rem;font-family:"Press Start 2P",monospace;font-size:.65rem}.multi-picker-section{margin-bottom:1rem}.multi-picker-league{color:var(--accent);text-shadow:2px 2px 0 var(--shadow);letter-spacing:0;margin:0 0 .5rem;font-family:"Press Start 2P",monospace;font-size:.75rem}.multi-picker-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.4rem;display:grid}.mp-team{border:2px solid var(--ink-dim);background:var(--bg);color:var(--ink);cursor:pointer;text-align:left;align-items:center;gap:.5rem;padding:.45rem .55rem;font-family:VT323,monospace;font-size:1rem;display:flex}.mp-team:hover{border-color:var(--ink)}.mp-team--on{border-color:var(--accent);background:var(--bg-panel-alt);color:var(--accent)}.mp-team-logo{object-fit:contain;flex-shrink:0;width:24px;height:24px}.mp-team-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.picker h1{color:var(--accent);margin:0 0 .75rem;font-size:1.9rem}.sub{color:var(--ink-dim);margin:0 0 1.75rem;font-size:1.25rem}.league-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-top:.5rem;display:grid}.league-card{border:4px solid var(--border);background:var(--bg-panel);color:var(--ink);cursor:pointer;text-align:left;box-shadow:5px 5px 0 var(--shadow);flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 1.25rem;transition:none;display:flex}.league-card-text{flex-direction:column;gap:.6rem;min-width:0;display:flex}.league-card-logo{object-fit:contain;width:96px;height:96px;image-rendering:pixelated;image-rendering:crisp-edges;flex-shrink:0}.league-card-logo--nfl,.league-card-logo--mlb{width:128px}.league-card-logo--nba{width:68px}.league-card:hover{background:var(--bg-panel-alt);color:var(--accent)}.league-card:active{box-shadow:0 0 0 var(--shadow);transform:translate(5px,5px)}.league-card-name{text-shadow:2px 2px 0 var(--shadow);font-family:"Press Start 2P",monospace;font-size:1.1rem}.league-card-count{color:var(--ink-dim);letter-spacing:.05em;font-family:"Press Start 2P",monospace;font-size:.6rem}.back-btn{color:var(--accent-blue);cursor:pointer;letter-spacing:0;background:0 0;border:none;padding:.5rem 0 1rem;font-family:"Press Start 2P",monospace;font-size:.7rem}.back-btn:hover{color:var(--accent)}.league-group{margin-bottom:2.5rem}.league-heading{color:var(--accent);border-bottom:3px dashed var(--ink-dim);text-transform:uppercase;align-items:baseline;gap:.75rem;margin:0 0 1rem;padding-bottom:.6rem;font-size:.9rem;display:flex}.league-count{color:var(--ink-dim);text-shadow:none;font-family:"Press Start 2P",monospace;font-size:.55rem}.team-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;display:grid}.team-card{border:3px solid var(--border);background:var(--bg-panel);color:var(--ink);cursor:pointer;text-align:left;box-shadow:4px 4px 0 var(--shadow);flex-direction:row;align-items:center;gap:.75rem;padding:.7rem .9rem;font-family:VT323,monospace;transition:none;display:flex}.team-card-logo{object-fit:contain;flex-shrink:0;width:36px;height:36px}.team-card:hover{background:var(--bg-panel-alt);color:var(--accent)}.team-card:active{box-shadow:0 0 0 var(--shadow);transform:translate(4px,4px)}.team-name{font-size:1.2rem;line-height:1.15}.team-competition{color:var(--ink-dim);text-transform:uppercase;font-family:"Press Start 2P",monospace;font-size:.55rem}.quiz .progress{color:var(--ink-dim);justify-content:space-between;margin-bottom:1rem;font-family:"Press Start 2P",monospace;font-size:.7rem;display:flex}.question-context{border:3px solid var(--border);background:var(--bg-panel);box-shadow:3px 3px 0 var(--shadow);align-items:center;gap:.6rem;margin:0 0 .85rem;padding:.55rem .75rem;display:flex}.ctx-league-logo{object-fit:contain;width:36px;height:28px;image-rendering:pixelated;flex-shrink:0}.ctx-league-logo--nfl,.ctx-league-logo--mlb{width:44px}.ctx-league-logo--nba{width:22px}.ctx-team-logo{object-fit:contain;flex-shrink:0;width:28px;height:28px}.ctx-team-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:VT323,monospace;font-size:1.1rem;overflow:hidden}.timer{border:3px solid var(--border);background:var(--bg-panel);box-shadow:4px 4px 0 var(--shadow);margin:0 0 1.25rem;padding:.7rem .9rem}.timer-row{justify-content:space-between;align-items:baseline;margin-bottom:.45rem;display:flex}.timer-label{color:var(--ink-dim);letter-spacing:0;font-family:"Press Start 2P",monospace;font-size:.65rem}.timer-value{color:var(--accent);text-shadow:2px 2px 0 var(--shadow), 0 0 10px #ff4e1abf;letter-spacing:0;font-family:"Press Start 2P",monospace;font-size:1.4rem}.timer-bar{background:var(--bg);border:2px solid var(--border);height:10px;overflow:hidden}.timer-bar-fill{background:var(--accent);height:100%;transition:width .9s linear}.timer--warn .timer-value,.timer--warn .timer-bar-fill{color:#ffb347}.timer--warn .timer-bar-fill{background:#ffb347}.timer--danger .timer-value{color:var(--accent-red);text-shadow:2px 2px 0 var(--shadow), 0 0 12px #ff2d1fe6;animation:.6s ease-in-out infinite alternate timerPulse}.timer--danger .timer-bar-fill{background:var(--accent-red)}@keyframes timerPulse{0%{transform:translateY(0)}to{transform:translateY(-2px)}}.timer-flash{pointer-events:none;font-family:"Press Start 2P",monospace;font-size:1.4rem;animation:1.2s ease-out forwards timerFlash;position:absolute;right:1.5rem}.timer-flash--plus{color:var(--accent-green);text-shadow:2px 2px 0 var(--shadow), 0 0 12px #a8c850e6}.timer-flash--minus{color:var(--accent-red);text-shadow:2px 2px 0 var(--shadow), 0 0 12px #ff2d1fe6}@keyframes timerFlash{0%{opacity:0;transform:translateY(0)scale(.85)}20%{opacity:1;transform:translateY(-8px)scale(1)}to{opacity:0;transform:translateY(-44px)scale(1)}}.prompt{background:var(--bg-panel);border:3px solid var(--border);box-shadow:5px 5px 0 var(--shadow);white-space:pre-wrap;color:var(--ink);text-shadow:none;margin:0 0 1.75rem;padding:1.25rem;font-family:VT323,monospace;font-size:1.7rem;line-height:1.25;animation:none}.choices{gap:.75rem;display:grid}.choice{border:3px solid var(--border);background:var(--bg-panel);color:var(--ink);text-align:left;cursor:pointer;box-shadow:4px 4px 0 var(--shadow);padding:.95rem 1rem;font-family:VT323,monospace;font-size:1.2rem;transition:none}.choice:hover:not(:disabled){background:var(--bg-panel-alt);border-color:var(--accent);color:var(--accent);transition:border-color 50ms,color 50ms}.choice:active:not(:disabled){box-shadow:0 0 0 var(--shadow);transform:translate(4px,4px)}.choice:disabled{cursor:default}.choice.correct{background:var(--accent-green);border-color:var(--ink);color:var(--bg)}.choice.wrong{background:var(--accent-red);border-color:var(--ink);color:var(--ink)}.verdict-overlay{background:var(--bg);z-index:100;background-image:repeating-linear-gradient(0deg,#0000 0 3px,#00000040 3px 4px);flex-direction:column;justify-content:center;align-items:center;gap:2rem;padding:2rem 1rem;animation:.22s ease-out verdictPop;display:flex;position:fixed;inset:0}.verdict-text{letter-spacing:.02em;margin:0;font-family:"Press Start 2P",monospace;font-size:clamp(2.5rem,9vw,5rem)}.verdict-skip{color:var(--ink);text-shadow:5px 5px 0 var(--shadow), 0 0 14px #d4896eb3, 0 0 28px #d4896e66}.btn-skip{background:var(--bg-panel);border:3px solid var(--ink-dim);color:var(--ink-dim);cursor:pointer;box-shadow:4px 4px 0 var(--shadow);letter-spacing:0;margin:1rem auto 0;padding:.7rem 1.4rem;font-family:"Press Start 2P",monospace;font-size:.7rem;display:block}.btn-skip:hover{border-color:var(--accent);color:var(--accent)}.btn-skip:active{box-shadow:0 0 0 var(--shadow);transform:translate(4px,4px)}.verdict-correct{color:var(--accent-green);text-shadow:5px 5px 0 var(--shadow), 0 0 14px #a8c850e6, 0 0 28px #a8c85080}.verdict-wrong{color:var(--accent-red);text-shadow:5px 5px 0 var(--shadow), 0 0 14px #ff2d1fe6, 0 0 28px #ff2d1f80}.player-photo{object-fit:cover;object-position:center top;border:5px solid var(--ink);background:var(--bg-panel);width:clamp(260px,48vw,420px);height:clamp(260px,48vw,420px);box-shadow:0 0 0 5px var(--accent), 0 0 0 10px var(--ink), 12px 12px 0 var(--shadow);image-rendering:pixelated;image-rendering:crisp-edges}.player-reveal-name{color:var(--accent);text-align:center;text-shadow:3px 3px 0 var(--shadow), 0 0 10px #ff4e1acc;letter-spacing:0;margin:0;font-family:"Press Start 2P",monospace;font-size:clamp(.85rem,2.2vw,1.2rem)}.verdict-answer{color:var(--ink);text-align:center;text-shadow:2px 2px 0 var(--shadow);margin:0;font-family:"Press Start 2P",monospace;font-size:clamp(.7rem,1.7vw,.95rem)}@keyframes verdictPop{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.verdict-overlay--wrong{animation:.7s ease-out wrongVerdict}@keyframes wrongVerdict{0%{opacity:0;transform:scale(.94)translate(0)}18%{opacity:1;transform:scale(1)translate(0)}28%{transform:scale(1)translate(-12px)}38%{transform:scale(1)translate(12px)}48%{transform:scale(1)translate(-9px)}58%{transform:scale(1)translate(9px)}70%{transform:scale(1)translate(-5px)}82%{transform:scale(1)translate(3px)}to{transform:scale(1)translate(0)}}.streak-indicator{border:3px solid var(--accent);background:var(--bg-panel);color:var(--accent);text-shadow:2px 2px 0 var(--shadow), 0 0 10px #ff4e1ad9;box-shadow:4px 4px 0 var(--shadow);z-index:150;letter-spacing:0;padding:.55rem .8rem;font-family:"Press Start 2P",monospace;font-size:.85rem;animation:1s ease-in-out infinite alternate streakPulse;position:fixed;top:18px;right:18px}@keyframes streakPulse{0%{transform:scale(1)}to{transform:scale(1.06)}}.streak-burst{z-index:250;pointer-events:none;color:var(--accent);text-shadow:3px 3px 0 var(--shadow), 0 0 14px #ff4e1af2, 0 0 28px #ff8c4299;letter-spacing:.04em;justify-content:center;font-family:"Press Start 2P",monospace;font-size:clamp(1.4rem,4vw,2.4rem);animation:1s ease-out forwards streakBurst;display:flex;position:fixed;top:22vh;left:0;right:0}@keyframes streakBurst{0%{opacity:0;transform:scale(.4)rotate(-6deg)}18%{opacity:1;transform:scale(1.25)rotate(2deg)}60%{opacity:1;transform:scale(1)rotate(0)}to{opacity:0;transform:scale(1.5)rotate(0)}}.score{text-align:center;padding:2rem 1rem 1rem}.score-team{letter-spacing:0;color:var(--accent-blue);text-transform:uppercase;margin:0 0 1rem;font-family:"Press Start 2P",monospace;font-size:.75rem}.score-number{justify-content:center;align-items:baseline;gap:.5rem;margin:1rem 0;display:flex}.score-value{color:var(--accent);text-shadow:5px 5px 0 var(--shadow);font-family:"Press Start 2P",monospace;font-size:4rem}.score-total{color:var(--ink-dim);font-family:"Press Start 2P",monospace;font-size:1.5rem}.score-pct{color:var(--ink-dim);letter-spacing:0;margin:0 0 1rem;font-family:"Press Start 2P",monospace;font-size:.8rem}.score-message{color:var(--ink);margin:0 0 2rem;font-family:VT323,monospace;font-size:1.4rem}.score-actions{flex-direction:column;gap:1rem;max-width:380px;margin:0 auto;display:flex}.btn-primary,.btn-secondary{cursor:pointer;border:4px solid var(--border);box-shadow:5px 5px 0 var(--shadow);text-shadow:2px 2px 0 var(--shadow);letter-spacing:0;padding:.85rem 1.2rem;font-family:"Press Start 2P",monospace;font-size:.85rem;transition:none}.btn-primary{background:var(--accent);color:var(--bg);text-shadow:none;isolation:isolate;position:relative;overflow:hidden}.btn-primary:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000 30%,#ffffff8c 50%,#0000 70%);width:50%;animation:4s ease-in-out infinite coinShimmer;position:absolute;top:0;bottom:0;left:0;transform:translate(-220%)}@keyframes coinShimmer{0%{transform:translate(-220%)}20%{transform:translate(420%)}to{transform:translate(420%)}}.btn-primary:hover:not(:disabled){background:#ffe47a}.btn-primary:active:not(:disabled){box-shadow:0 0 0 var(--shadow);transform:translate(5px,5px)}.btn-primary:disabled{background:var(--bg-panel-alt);color:var(--ink-dim);cursor:not-allowed;text-shadow:none}.btn-secondary{background:var(--bg-panel);color:var(--ink)}.btn-secondary:hover{background:var(--bg-panel-alt);color:var(--accent)}.btn-secondary:active{box-shadow:0 0 0 var(--shadow);transform:translate(5px,5px)}.loader{text-align:center;color:var(--accent);text-shadow:3px 3px 0 var(--shadow);padding:3rem;font-family:"Press Start 2P",monospace;font-size:.8rem}.loader:before{content:"";width:32px;height:32px;box-shadow:3px 3px 0 var(--shadow), 0 0 16px #f57c1ebf;background-color:#f57c1e;background-image:linear-gradient(90deg,#0000 calc(50% - 1px),#1a0c33 calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px)),linear-gradient(#0000 calc(50% - 1px),#1a0c33 calc(50% - 1px) calc(50% + 1px),#0000 calc(50% + 1px));border-radius:50%;margin:0 auto 1.75rem;animation:.95s cubic-bezier(.5,0,.5,1) infinite ballBounce,1.4s linear infinite ballSpin;display:block;translate:0}@keyframes ballBounce{0%,to{translate:0;scale:1.1 .8}10%{translate:0 -8px;scale:1}50%{translate:0 -54px;scale:.92 1.12}90%{translate:0 -8px;scale:1}}@keyframes ballSpin{0%{rotate:0deg}to{rotate:360deg}}.placeholder{border:3px dashed var(--ink-dim);text-align:center;background:var(--bg-panel);padding:2rem}.placeholder button{border:3px solid var(--border);background:var(--accent);color:var(--bg);cursor:pointer;box-shadow:4px 4px 0 var(--shadow);margin-top:1rem;padding:.6rem 1.2rem;font-family:"Press Start 2P",monospace;font-size:.75rem}.auth{text-align:center;background:var(--bg-panel);border:4px solid var(--border);max-width:420px;box-shadow:6px 6px 0 var(--shadow);margin:2rem auto 0;padding:2rem 1.5rem}.auth-logo{width:100%;max-width:420px;height:auto;margin:0 auto 1.5rem;animation:3.5s ease-in-out infinite logoPulse;display:block}.auth-title{color:var(--accent);margin:0 0 .75rem;font-size:1.5rem}.auth-tagline{color:var(--ink-dim);margin:0 0 1.75rem;font-family:VT323,monospace;font-size:1.25rem}.auth-form{text-align:left;flex-direction:column;gap:1.1rem;display:flex}.auth-field{flex-direction:column;gap:.5rem;display:flex}.auth-field span{color:var(--ink-dim);letter-spacing:0;text-transform:uppercase;font-family:"Press Start 2P",monospace;font-size:.65rem}.auth-field input{border:3px solid var(--border);background:var(--bg);color:var(--ink);box-shadow:inset 3px 3px 0 var(--shadow);padding:.85rem 1rem;font-family:VT323,monospace;font-size:1.25rem}.auth-field input:focus{border-color:var(--accent);outline:none}.auth-error{border:3px solid var(--accent-red);color:var(--accent-red);background:#ff2d1f26;margin:0;padding:.75rem 1rem;font-family:VT323,monospace;font-size:1.1rem}.auth-fineprint{color:var(--ink-dim);text-align:center;margin:.75rem 0 0;font-family:VT323,monospace;font-size:1.05rem}.auth-tabs{gap:.5rem;margin:0 0 1.25rem;display:flex}.auth-tab{background:var(--bg-panel);border:3px solid var(--border);color:var(--ink);cursor:pointer;box-shadow:4px 4px 0 var(--shadow);text-shadow:2px 2px 0 var(--shadow);letter-spacing:0;flex:1;padding:.7rem .5rem;font-family:"Press Start 2P",monospace;font-size:.7rem;transition:none}.auth-tab:hover{color:var(--accent)}.auth-tab--on{background:var(--accent);color:var(--bg);text-shadow:none;box-shadow:0 0 0 var(--shadow);transform:translate(4px,4px)}.auth-otp-link{text-align:center;margin-top:.5rem}
