/* Classroom presentation and focused pupil play. */
.school-login-routes{border:0;padding:0;margin:20px 0;display:flex;flex-wrap:wrap;gap:12px}.school-login-routes legend{font-size:.9rem;font-weight:800}.school-login-routes label{display:flex;align-items:center;gap:10px;border:2px solid #b1cedc;border-radius:12px;padding:12px;margin:0;cursor:pointer}.school-login-routes input[type=radio]{width:20px;min-height:20px;accent-color:#e35e48}.school-dashboard{display:grid;gap:28px}.school-create summary{font-size:1.3rem;font-weight:900;cursor:pointer;min-height:44px}.school-create form{max-width:820px}.school-room-actions{display:flex;gap:22px;flex-wrap:wrap;padding:4px 0 20px;font-size:.9rem;font-weight:800}.school-stage-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:22px}.school-stage-toolbar>span{font-size:.8rem;max-width:410px;color:#355563}.school-stage{padding:28px 40px;background:linear-gradient(125deg,#fff6c9,#e0f3ff 65%,#eee7ff);border:3px solid var(--ink);border-radius:30px;box-shadow:7px 8px 0 var(--ink);min-height:75dvh}.school-stage-top{display:flex;justify-content:space-between;gap:15px;font-weight:800}.school-stage-layout{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.5fr);gap:40px;align-items:center}.school-stage-identity{text-align:center}.school-stage-identity img{width:min(100%,340px);height:auto;aspect-ratio:1;object-fit:contain;border-radius:26px}.school-stage-identity h2{font-size:clamp(2rem,3vw,3.8rem);margin:15px 0}.school-stage-identity p{font-size:1.15rem}.school-stage-action{text-align:center}.school-stage-action>p{font-size:1.3rem;font-weight:800}.school-stage-action .school-button-row{justify-content:center}.school-stage-action .btn{font-size:1.05rem;min-height:52px}#school-stage-clock{display:block;font-size:clamp(4rem,8vw,9rem);font-weight:900;line-height:1.1;color:#ba412d;font-variant-numeric:tabular-nums}#school-stage-code{display:block;font-size:clamp(2rem,4.4vw,5.5rem);letter-spacing:.14em;font-weight:900}#school-stage-invite canvas{display:block;margin:12px auto;width:210px;height:210px;image-rendering:pixelated}#school-stage-leaders{list-style:none;padding:0;display:grid;gap:8px;margin:20px 0}.school-stage-leader{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;text-align:left;background:#fff;border:2px solid #96b6c8;border-radius:14px;padding:10px 16px;font-size:clamp(1rem,1.5vw,1.7rem);overflow-wrap:anywhere}.school-stage-leader:first-child{background:#fff0a3;border-color:var(--ink)}.school-stage-leader b{font-size:.85em}.school-stage .school-podium{margin-top:18px}.school-stage .school-podium p{font-size:clamp(1rem,1.5vw,1.7rem);font-weight:900}.school-stage .school-podium article:first-child{padding-top:26px;box-shadow:0 -6px 0 #f5bf37}.school-presenting .school-header,.school-presenting .school-footer,.school-presenting .school-room-title,.school-presenting .school-room-grid,.school-presenting .school-tournament-card,.school-presenting .school-management-card{display:none}.school-presenting .school-main{max-width:1800px;padding-top:14px}.school-presenting .school-stage-toolbar{margin-bottom:12px}.school-presenting .school-stage-toolbar>span{display:none}.school-presenting .school-stage-toolbar .btn{padding:8px 14px;font-size:.8rem}.school-presenting #school-client-status{display:none}.school-presenting:fullscreen{overflow:auto}.school-live-score{font-size:.9rem;font-weight:900;color:#28576f}.school-player-heading{position:sticky;top:0;z-index:5;background:#edf8ff;border:2px solid #adc8d8;border-radius:18px;padding:10px 16px;margin-bottom:16px;box-shadow:0 3px 8px #1733421a}.school-player-title-row h1{font-size:clamp(1.2rem,2.8vw,2rem);margin:7px 0}.school-player-heading .section-kicker{font-size:.65rem;letter-spacing:.04em}.school-player-title-row img{width:86px;height:86px}.school-how{margin:8px 0 16px;font-size:.85rem}.school-how summary{cursor:pointer;font-weight:800;min-height:30px}.school-how .school-small{margin:5px 0}.school-player-panel #school-pupil-mode{display:block;margin:0 0 8px;font-size:.75rem}.school-player-message{margin-bottom:12px}.school-feedback{font-size:.85rem;margin:18px 0 0;padding:10px 14px;min-height:66px}.school-player-panel #school-answer-review{margin:12px 0 20px;padding:12px;background:#eef6ff;border-radius:12px}.school-player-panel #school-answer-review summary{font-weight:800;cursor:pointer;min-height:28px}.school-pop{animation:school-pop .35s ease-out}@keyframes school-pop{from{transform:scale(.92)}to{transform:scale(1)}}
@media(min-width:1200px){.school-presenting .school-stage-layout{min-height:66dvh}}
@media(max-width:650px){.school-pupil-welcome>.school-card{grid-row:1}.school-pupil-welcome>.school-welcome{grid-row:2}.school-page[data-school-view=pupil-play] .school-header{padding:8px 12px;align-items:center}.school-page[data-school-view=pupil-play] .school-header img{width:44px;height:44px}.school-page[data-school-view=pupil-play] .school-header nav{font-size:.7rem;gap:12px;max-width:none}.school-page[data-school-view=pupil-play] .school-main{padding:0 10px 25px}.school-player-heading{padding:8px 10px;gap:10px;margin-bottom:12px;flex-wrap:wrap}.school-player-heading>div{width:100%}.school-player-title-row{gap:10px}.school-player-title-row img{width:64px;height:64px}.school-player-heading .school-timer{margin-left:auto;font-size:1.7rem}.school-player-heading .section-kicker{font-size:.6rem}.school-player-panel{padding:18px 14px;border-radius:20px;box-shadow:4px 5px 0 var(--ink)}.school-player-panel h2{font-size:1.05rem;margin:8px 0 12px}.school-question-context{padding:12px;font-size:1.1rem}.school-player-message{font-size:.9rem;margin:0 0 10px}.school-page[data-school-phase=running] .school-player-message{display:none}.school-choice-answers{gap:10px}.school-choice{padding:12px;min-height:48px}.school-chosen{padding:12px;margin-bottom:14px}.school-button-row{gap:10px;margin-top:16px}.school-tiles{gap:10px}.school-stage{padding:20px 14px}.school-stage-layout{grid-template-columns:1fr;gap:12px}.school-stage-identity img{width:120px}.school-stage-identity p{font-size:.9rem}.school-stage-leader{grid-template-columns:28px 1fr auto;gap:6px;padding:8px}.school-stage-toolbar .btn{font-size:.85rem}.school-room-actions{gap:14px}.school-stage-top{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){.school-pop{animation:none}.school-stage *{scroll-behavior:auto;transition:none}}
.school-device-help{font-size:.85rem;margin-top:12px}.school-device-help summary{cursor:pointer;min-height:40px;font-weight:800}.school-leave-form>.school-link-button{font-size:.85rem}.school-page[data-school-phase=ended] .school-device-help{display:none}
