.battleStage{position:relative;min-height:360px}.battleOverlay{position:absolute;inset:-8px;z-index:20;display:grid;place-items:center;border-radius:24px;background:rgba(5,10,18,.88);backdrop-filter:blur(8px)}.overlayCard{display:grid;justify-items:center;gap:10px;width:min(520px,calc(100% - 32px));padding:34px 26px;border:1px solid #3a5272;border-radius:24px;background:linear-gradient(145deg,rgba(22,38,61,.98),rgba(8,20,35,.98));box-shadow:0 30px 90px rgba(0,0,0,.45);text-align:center}.overlayCard>strong{font-size:clamp(28px,5vw,46px)}.overlayCard>small{color:var(--muted);font-weight:700}.matchupNames{margin:0;color:#dbe7ff;font-size:clamp(18px,3vw,28px);font-weight:950;letter-spacing:.04em}.matchupCount{display:grid;place-items:center;width:126px;height:126px;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(103,232,249,.28),rgba(138,164,255,.15));border:2px solid rgba(138,164,255,.65);color:#fff;font-size:76px!important;line-height:1;box-shadow:0 0 55px rgba(103,232,249,.16);animation:countPulse .75s ease-in-out infinite alternate}.pauseOverlay .overlayCard{border-color:rgba(251,191,36,.38);background:linear-gradient(145deg,rgba(54,42,18,.96),rgba(15,20,31,.98))}.answerReveal{display:grid;gap:6px;max-width:650px;margin:0 auto 14px;padding:14px 18px;border:1px solid rgba(103,232,249,.35);border-radius:15px;background:linear-gradient(145deg,rgba(103,232,249,.11),rgba(138,164,255,.08));animation:revealPop .22s ease}.answerReveal span{color:#b9cbe3;font-size:13px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.answerReveal strong{color:#eefcff;font-size:clamp(26px,4vw,38px)}.teacherControls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.autoplayControl{display:flex;align-items:center;gap:8px;margin-left:auto;color:#dce6f6;font-size:13px;font-weight:900}.autoplayControl select{width:auto;min-width:94px;border:1px solid #344968;border-radius:11px;background:#091525;color:#f8fafc;padding:10px 12px}.participantRow.reconnecting,.matchCard.reconnecting{border-color:rgba(251,191,36,.45)!important;background:rgba(251,191,36,.06)!important}.participantName .connectionTag{display:block;margin-top:2px;color:#fcd34d;font-size:11px;font-weight:800}.matchCard.reconnecting small{color:#fcd34d}.teacherControls #pauseSession{min-width:120px}.mistakeRecap,.studentStandingsPanel,.finalStandingsPanel{margin-top:22px;padding:18px;border:1px solid #314763;border-radius:18px;background:rgba(7,18,32,.62);text-align:left}.recapHead{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px}.recapHead h3,.studentStandingsPanel h3,.finalStandingsPanel h3{margin:3px 0 0}.recapHead>strong{color:#b9cbe3;font-size:13px;white-space:nowrap}.mistakeRecapList{display:grid;gap:10px}.mistakeItem{display:grid;gap:10px;padding:14px;border:1px solid #2b405d;border-radius:14px;background:rgba(8,21,38,.82)}.mistakeItem>div:first-child{display:grid;gap:4px}.mistakeItem small{color:#8298b6;font-size:10px;font-weight:900;letter-spacing:.09em}.mistakeAnswers{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mistakeAnswers span{display:grid;gap:3px;padding:9px 10px;border-radius:10px;background:rgba(255,255,255,.035);font-weight:850}.mistakeAnswers .correctAnswer{background:rgba(52,211,153,.08);color:#d9fff0}.recapPerfect{display:grid;gap:4px;padding:15px;border:1px solid rgba(52,211,153,.3);border-radius:14px;background:rgba(52,211,153,.07)}.recapPerfect span{color:#aebed3;font-size:13px}.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px;margin:18px 0}.podiumPlace{display:grid;justify-items:center;gap:5px;min-height:118px;padding:14px 10px;border:1px solid #304765;border-radius:16px;background:linear-gradient(180deg,rgba(31,48,73,.8),rgba(9,21,37,.8));text-align:center}.podiumPlace.place1{min-height:145px;border-color:rgba(251,191,36,.48);background:linear-gradient(180deg,rgba(91,66,15,.34),rgba(9,21,37,.86))}.podiumPlace.place2{min-height:130px}.podiumMedal{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#172842;color:#f6fbff;font-weight:950}.place1 .podiumMedal{background:#6c5417;color:#fff3b0}.podiumPlace strong{max-width:100%;overflow:hidden;text-overflow:ellipsis}.podiumPlace small{color:#aebed3}.standingsList{display:grid;gap:7px}.standingRow{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid #293f5b;border-radius:12px;background:rgba(8,20,36,.7)}.standingRow.you{border-color:rgba(103,232,249,.48);background:rgba(103,232,249,.08)}.standingRow>strong small{color:#7dd3fc;font-weight:850}.standingRow>span:nth-last-child(-n+2){color:#aebed3;font-size:12px;font-weight:800}.standingRank{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#14253d;font-weight:950}.standingSeparator{text-align:center;color:#6f86a5;font-weight:900}.studentStandingsPanel{width:100%;box-sizing:border-box;margin-bottom:16px}.finalStandingsPanel{margin:16px 0}.finalStandingsPanel .sectionHead{margin-bottom:4px}.tournamentPanel,.studentTournamentPanel{margin-top:18px;padding:18px;border:1px solid #314763;border-radius:18px;background:rgba(7,18,32,.66);text-align:left}.studentTournamentPanel{width:100%;box-sizing:border-box;margin-bottom:16px}.tournamentBracket{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;align-items:start}.tournamentBracket.compact{grid-template-columns:1fr}.bracketRound{display:grid;gap:10px;padding:13px;border:1px solid #2b405d;border-radius:15px;background:rgba(8,21,38,.82)}.bracketRound.current{border-color:rgba(103,232,249,.48);box-shadow:inset 0 0 0 1px rgba(103,232,249,.08)}.bracketRound.complete{opacity:.88}.bracketRound>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.bracketRound>header strong{font-size:14px}.bracketRound>header small{color:#8298b6;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.bracketPairs{display:grid;gap:8px}.bracketPair{position:relative;display:grid;gap:4px;padding:8px;border-radius:11px;background:rgba(255,255,255,.035)}.bracketPair>span{padding:6px 8px;border-radius:8px;color:#bfd0e6;font-weight:800}.bracketPair>span.winner{background:rgba(52,211,153,.09);color:#ddfff1}.bracketPair>span b{float:right;color:#6ee7b7}.bracketPair>small{padding:0 8px 3px;color:#6f86a5;font-size:10px;font-weight:800}.byeGroup{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px;border:1px dashed rgba(251,191,36,.3);border-radius:11px;background:rgba(251,191,36,.04)}.byeGroup>small{width:100%;color:#d6b454;font-size:9px;font-weight:950;letter-spacing:.1em}.byeGroup>span{padding:5px 8px;border-radius:999px;background:rgba(251,191,36,.1);color:#fde9a9;font-size:12px;font-weight:850}.championBadge{padding:8px 11px;border:1px solid rgba(251,191,36,.45);border-radius:999px;background:rgba(251,191,36,.1);color:#fff0ad;font-size:12px}.tournamentEmpty{display:grid;gap:5px;padding:16px;border:1px dashed #314763;border-radius:14px;color:#aebed3}.tournamentEmpty strong{color:#e8f2ff}.grammarTip{display:grid;gap:5px;margin-top:14px;padding:14px;border:1px solid rgba(138,164,255,.34);border-radius:14px;background:linear-gradient(145deg,rgba(138,164,255,.1),rgba(103,232,249,.05))}.grammarTip small{color:#91a8c5;font-size:9px;font-weight:950;letter-spacing:.1em}.grammarTip strong{color:#e7f2ff;font-size:14px;line-height:1.45}.nameField select{width:100%;box-sizing:border-box;border:1px solid #344968;border-radius:11px;background:#091525;color:#f8fafc;padding:11px 12px;font:inherit}@keyframes countPulse{from{transform:scale(.94);box-shadow:0 0 20px rgba(103,232,249,.1)}to{transform:scale(1.02);box-shadow:0 0 60px rgba(103,232,249,.22)}}@keyframes revealPop{from{opacity:.2;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media(max-width:700px){.teacherControls{align-items:stretch}.teacherControls>*{flex:1}.autoplayControl{margin-left:0;justify-content:space-between;min-width:100%}.autoplayControl select{flex:0 0 110px}.battleOverlay{position:fixed;inset:0;border-radius:0;padding:18px}.matchupCount{width:108px;height:108px;font-size:64px!important}.recapHead{align-items:flex-start;flex-direction:column;gap:6px}.mistakeAnswers{grid-template-columns:1fr}.podium{grid-template-columns:1fr;align-items:stretch}.podiumPlace,.podiumPlace.place1,.podiumPlace.place2{min-height:0}.standingRow{grid-template-columns:34px minmax(0,1fr) auto}.standingRow>span:last-child{display:none}.tournamentBracket{grid-template-columns:1fr}.tournamentPanel,.studentTournamentPanel{padding:14px}.championBadge{max-width:48%;white-space:normal;text-align:center}}@media(prefers-reduced-motion:reduce){.matchupCount,.answerReveal{animation:none!important}}