*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f0f0f;--card: #1a1a1a;--border: #2a2a2a;--fire: #ff4d00;--yellow: #ffd600;--teal: #00e5c3;--text: #f5f5f5;--muted: #666}html{height:100%}body{display:flex;flex-direction:column;min-height:100vh;background:var(--bg);color:var(--ink);font-family:Nunito,sans-serif;overflow-x:hidden}.screen{display:none;flex-direction:column;align-items:center;justify-content:flex-start;min-height:100vh;padding:28px 20px;text-align:center;gap:16px}.screen.active{display:flex}.back{position:fixed;top:16px;left:16px;background:var(--card);border:1.5px solid var(--border);border-radius:10px;padding:8px 14px;color:var(--muted);font-size:.85rem;font-weight:700;cursor:pointer;text-decoration:none;z-index:10}.flame{font-size:4rem;animation:flicker 1.2s ease-in-out infinite alternate}@keyframes flicker{0%{transform:scale(1) rotate(-2deg);filter:drop-shadow(0 0 12px #ff4d00)}to{transform:scale(1.08) rotate(2deg);filter:drop-shadow(0 0 28px #ff9500)}}.title-main{font-family:Bebas Neue,sans-serif;font-size:clamp(2.8rem,12vw,5rem);color:var(--yellow);letter-spacing:2px;line-height:.9}.title-sub{font-size:.9rem;color:var(--muted);max-width:300px;line-height:1.5}.btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 28px;border-radius:12px;border:none;font-family:DM Sans,sans-serif;font-size:1rem;font-weight:700;cursor:pointer;transition:all .15s;width:100%;max-width:320px;-webkit-tap-highlight-color:transparent}.btn:active{transform:scale(.95)}.btn-fire{background:var(--fire);color:#fff;box-shadow:0 4px 20px #ff4d0059}.btn-ghost{background:transparent;color:var(--muted);border:1.5px solid var(--border)}.input-field{width:100%;max-width:320px;padding:15px 18px;border-radius:12px;border:1.5px solid var(--border);background:var(--card);color:var(--text);font-family:Bebas Neue,sans-serif;font-size:1.6rem;text-align:center;outline:none;letter-spacing:4px;-webkit-appearance:none}.input-field:focus{border-color:var(--fire)}.code-big{font-family:Bebas Neue,sans-serif;font-size:4rem;color:var(--yellow);letter-spacing:8px}.label{font-size:.65rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}.round-badge{background:var(--border);border-radius:99px;padding:6px 16px;font-size:.72rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}.question-card{background:var(--card);border:1.5px solid var(--border);border-radius:20px;padding:28px 22px;width:100%;max-width:420px;position:relative;overflow:hidden}.question-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--fire),var(--yellow))}.q-text{font-family:Bebas Neue,sans-serif;font-size:clamp(1.4rem,5vw,2rem);line-height:1.2;color:var(--text)}.options-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:420px}.option-btn{background:var(--card);border:1.5px solid var(--border);border-radius:14px;padding:18px 12px;color:var(--text);font-family:DM Sans,sans-serif;font-size:.92rem;font-weight:500;cursor:pointer;transition:all .15s;min-height:70px;display:flex;align-items:center;justify-content:center;text-align:center;-webkit-tap-highlight-color:transparent}.option-btn.selected{background:var(--fire);border-color:var(--fire);color:#fff;transform:scale(1.04)}.option-btn:disabled{opacity:.5;cursor:default}.wait-msg{font-size:.85rem;color:var(--teal);min-height:20px}.reveal-box{background:var(--card);border:1.5px solid var(--border);border-radius:16px;padding:20px;width:100%;max-width:420px}.reveal-label{font-size:.65rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--fire);margin-bottom:6px}.reveal-answer{font-family:Bebas Neue,sans-serif;font-size:1.8rem;color:var(--text)}.score-row{display:flex;gap:12px;width:100%;max-width:440px}.score-card{flex:1;background:var(--card);border:1.5px solid var(--border);border-radius:16px;padding:20px 10px;text-align:center;position:relative;overflow:hidden}.score-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:4px;background:var(--fire);opacity:.2}.score-card-name{font-size:.6rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.score-card-num{font-family:Bebas Neue,sans-serif;font-size:2.6rem;color:var(--text);line-height:1}.score-card-num.pop{color:var(--yellow)}.winner-big{font-family:Bebas Neue,sans-serif;font-size:3.5rem;color:var(--yellow)}.winner-scores{font-family:Bebas Neue,sans-serif;font-size:1.8rem;color:var(--muted)}@keyframes spin{to{transform:rotate(360deg)}}.disconnect-banner{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:#dc2626f2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;padding:14px 24px;border-radius:50px;font-weight:700;box-shadow:0 8px 32px #dc262659;z-index:10000;display:none;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.2);font-size:.9rem;transition:all .3s ease;font-family:inherit}.disconnect-spinner{border:2.5px solid rgba(255,255,255,.3);border-top:2.5px solid white;border-radius:50%;width:16px;height:16px;display:inline-block;animation:disconnect-spin 1s linear infinite}@keyframes disconnect-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-joining=true] .screen{display:none!important}[data-joining=true] #screen-loading{display:flex!important;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:100vh}.joining-spinner{border:3.5px solid rgba(244,99,30,.15);border-top:3.5px solid var(--orange, #f4631e);border-radius:50%;width:44px;height:44px;animation:joining-spin .8s linear infinite;margin-bottom:20px}@keyframes joining-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
