body{min-height:100svh;-webkit-user-select:none;user-select:none}#app{min-height:100svh}.player-shell{width:min(100%,560px);min-height:100svh;margin:0 auto;padding:max(2rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(2rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left))}.player-shell header{margin-bottom:1.6rem}.player-shell h1{font-size:clamp(2.35rem,13vw,4.25rem)}.player-shell h2{margin-bottom:1rem}.join-form{display:grid;gap:1.15rem;padding:1.25rem;-webkit-user-select:text;user-select:text}.join-form input,.join-form select{font-size:16px}.join-form .button{min-height:62px;margin-top:.35rem;font-size:1.08rem}.form-error{margin:0;color:var(--danger);font-weight:700}.player-center{min-height:100svh}.player-lobby{display:flex;flex-direction:column}.player-lobby .panel{margin-bottom:1.25rem;padding:1.15rem}.player-lobby .player-list{max-height:42svh;overflow-y:auto}.player-lobby .ready-button{width:100%;min-height:70px;margin-top:auto;font-size:1.2rem}.waiting-copy{margin:1rem 0 0;text-align:center}.joined-as{margin-bottom:0;color:#dbeafe;font-weight:700}.game-starting h1{max-width:480px}.player-question{display:flex;flex-direction:column;animation:question-stage-in .36s ease-out both}.player-question__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem!important;color:var(--muted);font-weight:800}.player-countdown{--countdown-progress: 100%;position:relative;display:grid;width:58px;aspect-ratio:1;place-items:center;border:0;border-radius:50%;color:#fff;background:conic-gradient(var(--accent) var(--countdown-progress),rgba(148,163,184,.18) 0);font-size:1.45rem}.player-countdown:before{position:absolute;border-radius:inherit;background:#11182a;content:"";inset:4px}.player-countdown strong{position:relative;z-index:1}.player-countdown.countdown--urgent{color:#fff1f2;background:conic-gradient(var(--danger) var(--countdown-progress),rgba(251,113,133,.16) 0);animation:urgent-pulse .7s ease-in-out infinite}.player-question>.countdown-track{margin-bottom:1.4rem}.player-question .question-text{margin-bottom:1.5rem;font-size:clamp(1.65rem,7.5vw,2.75rem);line-height:1.13}.answer-options{display:grid;gap:.8rem}.answer-option{display:grid;min-height:76px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.9rem;border:2px solid var(--border);border-radius:18px;padding:.8rem 1rem;color:#f8fafc;text-align:left;background:var(--surface);cursor:pointer;animation:answer-option-in .38s both;animation-delay:calc(var(--item-index, 0) * 55ms);will-change:transform}.answer-option>span{display:grid;width:42px;aspect-ratio:1;place-items:center;border-radius:12px;background:#8b5cf68c;font-weight:900}.answer-option strong{font-size:1.05rem}.answer-option:active:not(:disabled){transform:scale(.98);background:#334155f2}.answer-option:disabled{cursor:default;opacity:.46}.answer-option--selected:disabled{border-color:var(--accent);opacity:1;background:#0891b233}.answer-option--removed:disabled{opacity:.2;text-decoration:line-through}.countdown-track--urgent{background:var(--danger)!important;box-shadow:0 0 18px #fb718573}.joker-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:1rem}.joker-button{display:grid;min-height:66px;place-items:center;gap:.1rem;border:1px solid rgba(34,211,238,.34);border-radius:14px;padding:.5rem;color:#e0f2fe;background:#0891b224;cursor:pointer}.joker-button strong{font-size:1.1rem}.joker-button span{font-size:.7rem;font-weight:700}.joker-button--used,.joker-button:disabled{cursor:default;opacity:.38}.joker-button--pending{opacity:.65}.joker-button--active{border-color:#fcd34d;color:#fef3c7;background:#f59e0b33;opacity:1}.answer-status{min-height:1.7rem;margin:1rem 0 0;color:var(--accent);font-weight:800;text-align:center}.player-reveal{min-height:100svh;animation:reveal-screen-in .42s cubic-bezier(.22,1,.36,1) both}.result-icon{display:grid;width:110px;aspect-ratio:1;place-items:center;margin-bottom:1rem;border-radius:50%;color:#fff;background:var(--danger);font-size:5rem;font-weight:900;animation:result-icon-pop .6s cubic-bezier(.2,1.45,.45,1) both}.player-reveal--correct .result-icon{background:var(--success);box-shadow:0 0 70px #34d39947}.player-reveal--pass .result-icon{background:#f59e0b}.player-reveal--wrong .result-icon,.player-reveal--unanswered .result-icon{box-shadow:0 0 70px #fb718538}.points-earned{margin-bottom:1rem;color:#fde68a;font-size:1.5rem}.correct-answer{color:#dbeafe;font-weight:800}.player-scoreboard{display:flex;flex-direction:column;justify-content:center;text-align:center}.player-scoreboard .ranking-list{margin:1rem 0;text-align:left}.player-scoreboard .ranking-row{grid-template-columns:3rem minmax(0,1fr) auto}.player-game-over .winner-copy{margin-bottom:1rem}.error-screen--room_full .error-icon{border-color:#f59e0b80;color:#fde68a;background:#f59e0b24;font-size:1.5rem}.error-screen--in_progress .error-icon{border-color:#8b5cf68c;color:#ddd6fe;background:#8b5cf629}@keyframes question-stage-in{0%{opacity:0;transform:translateY(10px)}}@keyframes answer-option-in{0%{opacity:0;transform:translateY(14px) scale(.98)}}@keyframes reveal-screen-in{0%{opacity:0;transform:scale(.96)}}@keyframes result-icon-pop{0%{opacity:0;transform:scale(.35) rotate(-14deg)}70%{transform:scale(1.08) rotate(2deg)}}@media(max-height:720px){.player-shell{padding-top:max(1rem,env(safe-area-inset-top));padding-bottom:max(1rem,env(safe-area-inset-bottom))}.player-question .question-text{margin-bottom:1rem;font-size:clamp(1.4rem,6.5vw,2.2rem)}.answer-option{min-height:64px}.joker-button{min-height:56px}}@media(min-width:700px){.player-shell{padding-top:4rem;padding-bottom:4rem}}
