/* Compact classroom console. Keep the question board as the primary surface. */
:root{--radius:12px}
body{background:radial-gradient(ellipse at 50% 0%,#163f6d44,transparent 65%),#081b2d}
.topbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;min-height:68px;padding:8px 3%;background:#0a2035;border-bottom:1px solid #45678144;box-shadow:none}
.brand{border-radius:9px;box-shadow:none}.brand-logo{width:190px;height:50px}
.show-controls{position:static;max-width:none;width:auto;margin:0;justify-self:end;padding:0;gap:5px;justify-content:flex-end;min-width:0}
.show-controls>.button-row{gap:8px}.show-toggle{padding:7px 10px;min-height:36px;font-size:.7rem;border-radius:8px;box-shadow:none}
.header-volume{font-size:.68rem}.header-volume input{width:64px}
.sound-status{max-width:420px;font-size:.7rem;text-align:right}
.top-actions{gap:7px}.top-actions .quiet{padding:9px 12px;min-height:38px;font-size:.75rem}.top-actions .icon-btn{width:36px;height:38px;font-size:1.1rem}
main{max-width:1680px;padding:20px 3% 24px;min-height:calc(100vh - 125px)}
.game-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;min-height:0}
.game-header .eyebrow{font-size:.6rem;letter-spacing:.14em;margin-bottom:5px}
.game-header h1{font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.15;margin:0 0 5px}
.game-header p{font-size:.77rem;line-height:1.35}
.game-header>.button-row{max-width:none;flex-wrap:nowrap;gap:8px;justify-content:flex-end}
.game-header .outline{padding:8px 12px;min-height:38px;font-size:.75rem;border-radius:8px;box-shadow:none}
.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;align-items:start;gap:20px}
.game-primary{min-width:0}.game-side{position:sticky;top:16px;min-width:0}
.turn-banner{min-height:38px;margin:0 0 10px;padding:9px 12px;gap:9px;border-radius:8px;background:#12334b;border-color:#c5a65255;font-size:.81rem;box-shadow:inset 2px 0 0 #f4b517}
.turn-banner small{font-size:.62rem}.turn-dot{width:6px;height:6px;box-shadow:none}
.scorebar{gap:10px;margin-bottom:16px}.score{min-height:64px;padding:10px 14px;border-radius:9px;border-top-width:2px;background:#123047;box-shadow:none;display:flex;align-items:center;justify-content:space-between}
.score span{font-size:.76rem;letter-spacing:0}.score strong{margin:0;font-size:1.6rem;text-shadow:none}.score:after{display:none}
.score.active-team{box-shadow:inset 0 0 0 1px #f4b51722}.score.active-team span:after{font-size:.5rem;letter-spacing:.09em;margin-top:4px}
.game-board{padding:15px 12px;background:#0b243b;border:1px solid #8093a359;box-shadow:0 0 0 2px #061525;border-radius:12px;gap:8px}
.game-board:before,.game-board:after{left:18px;right:18px;height:4px;background-size:25px 4px;opacity:.5;animation:none}.game-board:before{top:5px}.game-board:after{bottom:5px}
.category{grid-template-rows:minmax(56px,auto) repeat(5,clamp(57px,4.3vw,74px));gap:7px}
.category-head{min-height:56px;padding:8px 5px;border-bottom:1px solid #c4a45488;border-radius:5px 5px 0 0;background:#0d2941;font-size:.67rem;letter-spacing:.035em;line-height:1.4}
.tile{border-radius:5px;font-size:clamp(1.7rem,2.25vw,2.3rem);text-shadow:0 2px 0 #8b6d2d;box-shadow:0 2px 0 #04121f;background:linear-gradient(145deg,#1f5b83,#17415f);border-color:#709ab566}
.tile:before{background:linear-gradient(125deg,transparent 26%,#c0e6ff05 26.2%,#c0e6ff02 58%,transparent 58.2%)}
.tile:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 0 0 1px #ffe39a,0 2px 0 #04121f}
.board-bottom{margin-top:13px;font-size:.74rem;gap:10px}.board-bottom .outline,.board-bottom .primary{min-height:38px;padding:9px 13px;font-size:.76rem;border-radius:8px;box-shadow:none}
.progress-rail{width:70px;height:4px;margin-right:7px}
.fixed-track{width:240px;padding:9px;background:#0a2136;border-radius:9px;border-color:#4e6f8644}
.fixed-track-heading{font-size:.53rem;letter-spacing:.06em;margin-bottom:7px}.fixed-track-player,.fixed-track-player iframe{height:200px;min-height:200px;min-width:200px}
.game-side .fixed-track{margin:0;width:100%}
footer{padding:14px 3%;font-size:.65rem;border-color:#36566d33;background:#081b2d}
.intro-row{min-height:0;padding:27px 30px;margin-bottom:18px;gap:30px;border-radius:14px;box-shadow:none;grid-template-columns:minmax(0,1fr) 270px}
.intro-row h1{font-size:clamp(2.4rem,4vw,3.7rem);margin-bottom:12px}.intro-row .eyebrow{margin-bottom:12px;font-size:.55rem}.intro-row p{font-size:.81rem}
.hero-showpiece{max-width:250px}.showpiece-caption{font-size:.49rem;margin-bottom:10px}.mini-board{padding:9px;gap:5px;box-shadow:4px 5px 0 #061421,0 12px 20px #0003}.mini-board span{padding:7px 5px;font-size:.95rem}.showpiece-base{margin:15px auto 9px}.hero-stats b{font-size:.95rem}.hero-stats small{font-size:.5rem}
.setup-layout{grid-template-columns:minmax(0,1fr) 320px;gap:18px}.panel{padding:20px;border-radius:12px;box-shadow:none}.section-heading{margin-bottom:14px;font-size:.84rem}.tracks{gap:10px}
.track{min-height:102px;padding:15px;gap:12px;border-radius:9px}.track-icon{width:34px;height:34px;border-radius:8px;font-size:1rem}.track strong{font-size:.85rem}.track small{font-size:.73rem;line-height:1.45}
.support-note{margin-top:14px;font-size:.75rem}.board-peek{margin-top:14px;padding:12px 15px;font-size:.74rem}.level-row{margin:14px 0}.level{padding:11px 6px}.level strong{font-size:.77rem}.level small{font-size:.63rem}.field{margin:12px 0}.console-divider{margin:15px 0}
.resume-banner{padding:11px 14px;margin-bottom:16px;border-radius:9px;font-size:.8rem}
dialog{border-radius:14px}.modal-head{padding:17px 22px}.modal-body{padding:22px}.question-stage .modal-head{padding:17px 22px}.question-stage .modal-body{padding:22px}.question-stage .clue-question{padding:10px 0 18px;font-size:clamp(1.4rem,2.4vw,1.9rem);line-height:1.45}.clue-meta{margin-bottom:15px}.choices{margin:16px 0;gap:8px}.question-stage .choice{min-height:48px;padding:11px 13px}.clue-actions{margin-top:15px}.question-sound{padding:10px 0;margin:6px 0 12px;gap:10px}.question-stage .modal-body>.fixed-track{width:240px;margin:0}.answer-box{padding:16px;margin:16px 0}.award{padding-top:15px}
@media(min-width:900px){dialog.has-game-music{max-width:980px!important}.has-game-music .modal-body{grid-template-columns:minmax(0,1fr) 240px;column-gap:22px}}
@media(max-width:1100px){.topbar{gap:12px}.brand-logo{width:170px;height:46px}.show-controls>.button-row{gap:5px}.show-toggle{font-size:.65rem;padding:7px 8px}.header-volume{font-size:.62rem;gap:5px}.header-volume input{width:48px}.game-layout{gap:14px;grid-template-columns:minmax(0,1fr) 230px}.fixed-track{width:230px}.category-head{font-size:.6rem}.turn-banner small{display:none}.score{padding:10px}.score strong{font-size:1.45rem}.category{grid-template-rows:minmax(64px,auto) repeat(5,58px)}.category-head{min-height:64px}.setup-layout{grid-template-columns:minmax(0,1fr) 300px}}
@media(max-width:899px){.topbar{grid-template-columns:auto minmax(0,1fr);padding:8px 20px;gap:8px 12px}.show-controls{grid-column:1/-1;grid-row:2;justify-self:stretch;justify-content:flex-end;border-top:1px solid #45678122;padding-top:6px}.top-actions{justify-self:end}.show-controls>.button-row{width:auto;gap:8px}.show-toggle{font-size:.7rem}.header-volume{font-size:.68rem}.header-volume input{width:62px}.game-layout{grid-template-columns:minmax(0,1fr)}.game-side{position:static;justify-self:end}.game-side .fixed-track{width:240px}.game-header{flex-direction:row;align-items:center}.game-header>.button-row{flex-wrap:wrap}.scorebar{grid-template-columns:repeat(3,minmax(0,1fr))}.category{grid-template-rows:minmax(58px,auto) repeat(5,62px)}.category-head{min-height:58px;font-size:.66rem}.setup-layout{grid-template-columns:1fr}.intro-row{grid-template-columns:minmax(0,1fr) 220px;gap:20px}.hero-showpiece{max-width:220px}.question-stage .modal-body>.fixed-track{margin:16px auto 0;width:260px}}
@media(max-width:580px){.topbar{padding:8px 14px;gap:7px 8px}.brand-logo{width:155px;height:44px}.top-actions .quiet{padding:8px 9px;font-size:.68rem}.top-actions .icon-btn{width:30px;height:34px}.top-actions{gap:5px}.show-controls{padding-top:6px}.show-controls>.button-row{gap:7px}.show-toggle{font-size:.67rem;min-height:32px;padding:6px 9px}.sound-status{text-align:left;max-width:none;font-size:.67rem}main{padding:15px 14px 22px}.game-header{gap:12px;align-items:start;flex-wrap:wrap;margin-bottom:12px}.game-header h1{font-size:1.55rem}.game-header .eyebrow{font-size:.52rem}.game-header p{font-size:.72rem}.game-header>.button-row{justify-content:flex-start;flex-wrap:nowrap}.game-header .outline{padding:7px 10px;min-height:35px;font-size:.69rem}.turn-banner{padding:9px 11px;font-size:.76rem}.turn-banner small{display:none}.scorebar{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:13px}.score{min-height:58px;padding:9px 11px}.score span{font-size:.71rem}.score strong{font-size:1.35rem}.mobile-categories{margin:10px 0}.mobile-categories>span{font-size:.74rem}.game-board{padding:14px 10px}.category{grid-template-rows:45px repeat(5,57px);gap:7px}.category-head{min-height:45px;font-size:.82rem}.tile{font-size:1.7rem;padding-left:18px}.tile:not(.used):after{font-size:.72rem}.board-bottom{margin-top:12px}.game-side{justify-self:center}.intro-row{display:block;padding:25px 20px;margin-bottom:14px}.intro-row h1{font-size:2.55rem}.intro-row .eyebrow{font-size:.49rem}.panel{padding:16px}.track{display:block;min-height:130px;padding:13px 11px}.track-icon{margin-bottom:9px;width:30px;height:30px}.track strong{font-size:.79rem}.track small{font-size:.7rem}.section-heading{font-size:.79rem}.support-note{font-size:.72rem}.modal-head,.question-stage .modal-head{padding:15px 17px}.modal-body,.question-stage .modal-body{padding:17px}.question-stage .clue-question{font-size:1.3rem}.question-stage .modal-body>.fixed-track{width:240px}.question-sound{gap:8px}footer{padding:13px 14px;gap:5px}}
@media print{.game-side{display:none!important}.game-layout{display:block}.topbar{display:none!important}}

/* Questions use a separate panel; the board's one music player stays in place. */
body.question-open{overflow:hidden}
.question-open .game-primary,.question-open .game-header{visibility:hidden}
.question-open .game-side{position:fixed;top:100px;right:3%;width:240px;z-index:101}
#modal.question-stage{position:fixed;inset:88px auto 20px 3%;margin:0;width:calc(94% - 260px);max-width:none!important;height:auto;max-height:calc(100dvh - 108px);z-index:100;overflow:auto;box-sizing:border-box}
#modal.question-stage .modal-body{display:block}
#modal.question-stage .modal-head{position:sticky;top:0;z-index:1;background:#0c263e}
#modal.question-stage .clue-question{margin:0;padding:12px 0 18px}
#modal.question-stage .choice{font-size:1rem;min-height:54px}
.auto-score-note{font-size:.8rem;color:#bdd7eb;flex:1}
@media(max-width:899px){
 #modal.question-stage{inset:125px 12px 245px;width:calc(100% - 24px);max-height:calc(100dvh - 370px)}
 .question-open .game-side{top:auto;bottom:8px;right:calc(50% - 120px)}
 #modal.question-stage .modal-head h2{font-size:1.1rem}
 #modal.question-stage .modal-body{padding:15px}
}
@media(max-height:600px) and (min-width:600px){
 #modal.question-stage{inset:12px auto 12px 12px;width:calc(100% - 276px);max-height:calc(100dvh - 24px)}
 .question-open .game-side{top:12px;bottom:auto;right:12px}
}

.round-feedback{margin:0 0 12px;padding:11px 14px;border:1px solid #54738c;border-radius:8px;background:#102d46;font-size:.8rem;color:#d6e8f6}
.round-feedback.correct{border-color:#4b927a;background:#11382f}
.round-feedback summary{cursor:pointer;line-height:1.6;overflow-wrap:anywhere}
.round-feedback summary strong{color:#ffe39a}.round-feedback summary small{margin-left:12px;color:#b9d4e7}
.round-feedback p{margin:10px 0 0;line-height:1.6}.round-feedback p:first-of-type{font-weight:650}
footer a{color:#bdd9ee}
