/* Dedicated host stages. The board background is copied from the current page. */
body:has(.host-play-screen){overflow:hidden}
#modal.host-play-screen{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;gap:16px;width:100%;height:100dvh;max-height:none;padding:20px;box-sizing:border-box;background-color:#09182f;background-size:cover;background-position:center;background-repeat:no-repeat;backdrop-filter:none;overflow:hidden;color:#f0f5ff}
.host-play-screen *{box-sizing:border-box}
.host-play-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex:none;background:rgba(9,24,47,.88);border:1px solid #426494;border-radius:16px;padding:14px 20px}
.host-play-header h2{margin:3px 0 0;font-size:clamp(20px,2vw,30px);color:#fff}
.host-play-header .row{flex-wrap:wrap;justify-content:flex-end}
.host-play-status{color:#a6f3ec;font-size:14px;padding:7px 10px;border-radius:8px;background:#163b49}
.host-play-layout{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) clamp(310px,26vw,410px);gap:16px}
#modal.host-play-screen .question{width:100%;max-width:none;max-height:none;min-width:0;min-height:0;margin:0;padding:24px;background:rgba(9,24,47,.76);border:1px solid rgba(144,184,230,.35);border-radius:16px;overflow:auto;text-align:left;box-shadow:0 12px 40px #0003}
.host-play-main>.text{font-size:clamp(24px,2.2vw,40px);line-height:1.35;text-align:left;margin:20px 0;white-space:pre-wrap}
.host-play-main .question-header{gap:16px;flex-wrap:wrap}
.host-play-main .question-timer-controls{justify-content:flex-start;flex-wrap:wrap}
.host-play-side{min-height:0;overflow:auto;background:rgba(9,24,47,.90);border:1px solid rgba(144,184,230,.35);border-radius:16px;padding:16px}
.host-play-side .buzzer-panel{margin-top:0}
.host-play-side .question-teams{margin-top:18px}
.host-play-side .question-team{display:flex;flex-wrap:wrap;gap:8px;padding:12px;margin:8px 0;border:1px solid #426494;border-radius:10px;background:#16345c}
.host-play-side .question-team>span{min-width:0;flex:1}
.host-play-side .question-team small{display:block}
.host-play-side .question-team .row{gap:6px}
.host-play-screen button{min-height:40px}
.host-play-screen button:focus-visible{outline:3px solid #5fe6d3;outline-offset:3px}
.host-play-screen .small,.host-play-screen .muted{color:#c4d4e9}
.host-play-main .video{max-height:40vh;object-fit:contain}
.host-play-main .host-solution{background:rgba(16,40,71,.80);border-radius:12px;padding:18px;margin-top:20px}
.host-play-main .solution-image{max-height:35vh;object-fit:contain}
.host-screenshots{margin:20px 0;padding:16px;background:rgba(16,40,71,.75);border:1px solid #426494;border-radius:12px}
.host-screenshots h3{margin:0 0 6px}
.host-shot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.host-shot{min-width:0;display:flex;flex-direction:column;gap:10px;padding:10px;border:1px solid #526987;border-radius:10px;background:#0b1d35}
.host-shot.is-visible{border:2px solid #5fe6b3;background:#123b3a}
.host-shot img{width:100%;height:clamp(130px,20vh,230px);object-fit:contain;border-radius:6px;background:#091525}
.host-shot-label{display:flex;flex-direction:column;gap:4px}.host-shot-label span{font-size:13px;color:#c4d4e9}
.host-shot button{width:100%;margin-top:auto}
#modal.host-scavenger-screen .scavenger-riddle-layout{flex:1;min-height:0;width:100%;max-width:none;margin:0;display:grid;grid-template-columns:minmax(0,1fr) clamp(250px,22vw,350px);gap:16px;align-items:stretch}
#modal.host-scavenger-screen .scavenger-modal-scoreboard{position:static;width:auto;max-height:none;min-height:0;overflow:auto;margin:0;background:rgba(9,24,47,.90);border-radius:16px;padding:16px}
.host-scavenger-screen .scavenger-riddle-text{font-size:clamp(24px,2.1vw,38px);line-height:1.4}
.host-scavenger-screen .geo-map-shell{height:clamp(300px,48vh,650px)}
.host-scavenger-screen .scavenger-host-answers{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.host-scavenger-screen .scavenger-host-answers>h3,.host-scavenger-screen .qol-team-status{grid-column:1/-1}
@media(max-width:900px){#modal.host-play-screen{padding:10px;gap:10px}.host-play-header{padding:12px;align-items:flex-start;flex-wrap:wrap}.host-play-header .row{justify-content:flex-start}.host-play-layout,#modal.host-scavenger-screen .scavenger-riddle-layout{display:flex;flex-direction:column;overflow:auto}.host-play-side,#modal.host-play-screen .question,#modal.host-scavenger-screen .scavenger-modal-scoreboard{overflow:visible;flex:none}.host-play-side{order:-1}.host-play-side .question-teams{display:flex;flex-wrap:wrap;gap:8px}.host-play-side .question-teams h3,.host-play-side #qol-question-history{width:100%}.host-play-side .question-team{flex:1 1 220px}.host-shot-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}
#modal.host-play-screen{align-items:stretch;justify-content:flex-start}
body:has(.host-play-screen) #qol-connection{z-index:1001}
