:root{--bg-dark: #0f0f1a;--bg-card: #1a1a2e;--bg-card-hover: #222240;--bg-surface: #16213e;--accent: #f5a623;--accent-glow: rgba(245, 166, 35, .3);--green: #00d97e;--green-glow: rgba(0, 217, 126, .25);--red: #ff4757;--red-glow: rgba(255, 71, 87, .25);--text-primary: #ffffff;--text-secondary: #8892b0;--text-dim: #5a6178;--border: rgba(255, 255, 255, .08);--radius: 16px;--radius-sm: 10px;--radius-xs: 6px;--team-primary: #f5a623;--team-secondary: #ff6b35;--team-primary-glow: rgba(245, 166, 35, .3);--team-btn-text: #000}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;overflow:hidden}body{font-family:Outfit,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-dark);color:var(--text-primary);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.screen{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;overflow-y:auto}.football-icon{font-size:48px;margin-bottom:8px;filter:drop-shadow(0 0 20px rgba(245,166,35,.4))}.football-icon.large{font-size:72px;margin-bottom:12px;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.score-bar{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-radius:var(--radius-sm);margin-bottom:4px;flex-shrink:0;gap:12px}.score-bar-team{display:flex;align-items:center;gap:8px;min-width:0}.score-bar-team-name{font-size:13px;font-weight:800;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.score-bar-stats{display:flex;align-items:center;gap:10px;flex-shrink:0}.score-bar-item{display:flex;align-items:baseline;gap:4px}.score-bar-value{font-size:16px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums}.score-bar-points .score-bar-value{font-size:20px}.score-bar-label{font-size:10px;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.5px}.score-bar-divider{width:1px;height:20px;flex-shrink:0}.score-bar-streak .score-bar-value{animation:streakPulse .8s ease-in-out infinite}.loading-screen{gap:16px}.loading-text{color:var(--text-secondary);font-size:18px;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.home-screen{background:linear-gradient(180deg,#0f0f1a,#16213e,#0f0f1a)}.home-content{max-width:420px;width:100%;display:flex;flex-direction:column;align-items:center;gap:28px}.logo-section{text-align:center}.game-title{font-size:48px;font-weight:900;letter-spacing:4px;line-height:1;background:linear-gradient(135deg,var(--accent),#ff6b35,var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none;margin-bottom:4px}.game-subtitle{font-size:16px;color:var(--text-secondary);font-weight:600;letter-spacing:3px;text-transform:uppercase}.home-stats{display:flex;gap:12px;width:100%}.stat-pill{flex:1;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:14px 8px;text-align:center;display:flex;flex-direction:column;gap:4px}.stat-number{font-size:22px;font-weight:800;color:var(--accent)}.stat-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.scoring-info{width:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.scoring-info h3{font-size:14px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:2px;margin-bottom:12px;text-align:center}.scoring-grid{display:flex;gap:8px}.score-tier{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.tier-pts{font-size:16px;font-weight:800;color:var(--accent)}.tier-time{font-size:10px;color:var(--text-dim)}.team-pick-screen{background:linear-gradient(180deg,#0f0f1a,#16213e,#0f0f1a);justify-content:flex-start;padding:20px 16px}.team-pick-content{max-width:520px;width:100%;display:flex;flex-direction:column;align-items:center;gap:16px;height:100%}.team-pick-title{font-size:28px;font-weight:900;letter-spacing:3px;color:var(--text-primary);text-align:center}.team-pick-subtitle{font-size:14px;color:var(--text-secondary);text-align:center;margin-top:-8px}.team-filter-bar{display:flex;gap:6px;background:var(--bg-card);border:1px solid var(--border);border-radius:30px;padding:4px}.team-filter-btn{padding:8px 20px;font-size:13px;font-weight:700;font-family:Outfit,sans-serif;letter-spacing:1px;border:none;border-radius:24px;cursor:pointer;background:transparent;color:var(--text-secondary);transition:all .2s}.team-filter-btn.active{background:var(--accent);color:#000}.team-filter-btn:hover:not(.active){color:var(--text-primary);background:#ffffff0d}.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;width:100%;overflow-y:auto;flex:1;padding:4px 0;-webkit-overflow-scrolling:touch}.team-card{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-card);border:2px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s;text-align:left;font-family:Outfit,sans-serif;position:relative}.team-card:hover{border-color:#ffffff26;background:var(--bg-card-hover)}.team-card.selected{border-color:var(--card-primary);box-shadow:0 0 16px var(--team-primary-glow);background:#ffffff0d}.team-card-swatch{width:36px;height:36px;border-radius:8px;flex-shrink:0}.team-card-info{display:flex;flex-direction:column;gap:1px;min-width:0}.team-card-city{font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;line-height:1}.team-card-name{font-size:15px;font-weight:800;color:var(--text-primary);line-height:1.2}.team-card-check{position:absolute;top:6px;right:8px;font-size:14px;font-weight:900;color:var(--card-primary)}.team-pick-actions{display:flex;flex-direction:column;gap:8px;width:100%;flex-shrink:0;padding-top:8px}.btn-primary{width:100%;max-width:520px;padding:18px 32px;font-size:18px;font-weight:800;font-family:Outfit,sans-serif;letter-spacing:2px;color:var(--team-btn-text);background:linear-gradient(135deg,var(--team-primary),var(--team-secondary));border:none;border-radius:var(--radius);cursor:pointer;transition:all .2s;box-shadow:0 4px 24px var(--team-primary-glow)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 32px var(--team-primary-glow)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{width:100%;max-width:520px;padding:14px 32px;font-size:16px;font-weight:600;font-family:Outfit,sans-serif;color:var(--text-secondary);background:transparent;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all .2s}.btn-secondary:hover{background:var(--bg-card);color:var(--text-primary)}.btn-next{width:100%;padding:16px;font-size:16px;font-weight:700;font-family:Outfit,sans-serif;letter-spacing:1px;color:var(--team-btn-text);background:var(--accent);border:none;border-radius:var(--radius-sm);cursor:pointer;margin-top:8px;transition:all .15s}.btn-next:hover{filter:brightness(1.1)}.play-screen{justify-content:flex-start;padding:12px 16px 16px;gap:10px;max-width:520px;margin:0 auto;width:100%}.timer-container{width:100%;display:flex;align-items:center;gap:12px}.timer-bar{flex:1;height:8px;background:#ffffff0f;border-radius:4px;overflow:hidden}.timer-fill{height:100%;border-radius:4px;transition:width 1s linear,background-color .5s}.timer-number{font-size:24px;font-weight:800;min-width:40px;text-align:right;font-variant-numeric:tabular-nums}.question-card{width:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px 20px;text-align:center}.category-badge{display:inline-block;font-size:11px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:2px;background:#f5a6231a;padding:4px 12px;border-radius:20px;margin-bottom:16px}.question-text{font-size:20px;font-weight:700;line-height:1.4;color:var(--text-primary)}.answers-grid{width:100%;display:flex;flex-direction:column;gap:10px}.answer-btn{width:100%;display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--bg-surface);border:2px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s;text-align:left;font-family:Outfit,sans-serif}.answer-btn:hover:not(:disabled){background:var(--bg-card-hover);border-color:#ffffff26;transform:translate(4px)}.answer-btn:active:not(:disabled){transform:translate(2px)}.answer-letter{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#ffffff0d;font-size:14px;font-weight:800;color:var(--text-secondary);flex-shrink:0}.answer-text{font-size:16px;font-weight:600;color:var(--text-primary);line-height:1.3}.answer-btn.correct{background:#00d97e1f;border-color:var(--green);box-shadow:0 0 20px var(--green-glow)}.answer-btn.correct .answer-letter{background:var(--green);color:#000}.answer-btn.correct .answer-text{color:var(--green)}.answer-btn.wrong{background:#ff47571f;border-color:var(--red);box-shadow:0 0 20px var(--red-glow)}.answer-btn.wrong .answer-letter{background:var(--red);color:#fff}.answer-btn.wrong .answer-text{color:var(--red)}.answer-btn.dimmed{opacity:.35}.result-overlay{width:100%;display:flex;flex-direction:column;gap:8px;animation:slideUp .25s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.result-badge{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px;border-radius:var(--radius-sm);font-size:18px;font-weight:800;text-align:center}.result-badge.correct-result{background:#00d97e1a;color:var(--green)}.result-badge.wrong-result{background:#ff47571a;color:var(--red)}.result-badge.timeout{background:#f5a6231a;color:var(--accent)}.result-label,.correct-answer{font-size:14px;font-weight:600;opacity:.8}@keyframes streakPulse{0%,to{opacity:1}50%{opacity:.7}}.checkpoint-screen{background:linear-gradient(180deg,#0f0f1a,#1a1a2e);justify-content:flex-start;padding:12px 16px 20px;gap:0}.checkpoint-content{max-width:420px;width:100%;display:flex;flex-direction:column;align-items:center;gap:20px;margin-top:16px}.checkpoint-title{font-size:36px;font-weight:900;letter-spacing:4px;color:var(--accent)}.checkpoint-subtitle{font-size:16px;color:var(--text-secondary);margin-top:-12px}.checkpoint-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}.checkpoint-stat{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px;text-align:center;display:flex;flex-direction:column;gap:4px}.cs-value{font-size:24px;font-weight:800;color:var(--text-primary)}.cs-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.checkpoint-breakdown{width:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px}.breakdown-row{display:flex;justify-content:space-between;padding:8px 0;font-size:15px;color:var(--text-secondary)}.breakdown-row+.breakdown-row{border-top:1px solid var(--border)}.breakdown-row .green{color:var(--green);font-weight:700}.checkpoint-actions{display:flex;flex-direction:column;gap:10px;width:100%}.gameover-screen{background:linear-gradient(180deg,#0f0f1a,#16213e,#0f0f1a);justify-content:flex-start;padding:12px 16px 20px;gap:0}.gameover-content{max-width:420px;width:100%;display:flex;flex-direction:column;align-items:center;gap:20px;margin-top:16px}.gameover-title{font-size:36px;font-weight:900;letter-spacing:4px;color:var(--text-primary)}.rank-badge{font-size:24px;font-weight:700;color:var(--accent);background:#f5a6231a;padding:8px 24px;border-radius:30px;border:1px solid rgba(245,166,35,.3)}.final-score{display:flex;flex-direction:column;align-items:center;gap:4px}.final-score-number{font-size:48px;font-weight:900;color:var(--accent)}.final-score-label{font-size:14px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:2px}.gameover-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}.go-stat{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px;text-align:center;display:flex;flex-direction:column;gap:4px}.go-value{font-size:22px;font-weight:800}.go-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.gameover-actions{display:flex;flex-direction:column;gap:10px;width:100%}@media(max-width:380px){.game-title{font-size:36px}.question-text{font-size:17px}.answer-btn{padding:13px 14px}.answer-text{font-size:14px}.stat-pill{padding:10px 6px}.stat-number{font-size:18px}.team-grid{grid-template-columns:1fr}.team-card-name{font-size:14px}.score-bar{padding:8px 12px}.score-bar-team-name{font-size:11px}.score-bar-value{font-size:14px}.score-bar-points .score-bar-value{font-size:17px}}@media(min-width:768px){.play-screen{max-width:560px}.question-text{font-size:22px}.team-grid{grid-template-columns:repeat(3,1fr)}}
