/* Each game screen is a complete viewport; the stage is fitted, never clipped. */
html:has(body[data-language]){height:100%;overflow:hidden}body[data-language]{height:100dvh;overflow:hidden}body[data-language]>.masthead{height:64px;min-height:0;width:100%;max-width:none;padding:8px 28px;margin:0;font-size:18px}body[data-language]>.masthead nav{gap:16px}body[data-language]>.masthead #welcome-fullscreen{min-height:44px;width:44px;font-size:27px}body[data-language]>footer{position:fixed;bottom:0;left:0;right:0;margin:0;padding:5px 20px;height:28px;font-size:11px;line-height:18px}body[data-language]:not(.projection-playing)>main{position:fixed;max-width:none;margin:0;padding:0 26px;transform-origin:top left;contain:layout}body[data-language] .welcome{grid-template-columns:1.2fr 1fr;min-height:0;padding:16px 0;gap:30px;align-items:center}body[data-language] .welcome-copy{padding:22px}body[data-language] .welcome h1{font-size:62px;line-height:1.05;letter-spacing:-1px;margin-bottom:12px}body[data-language] .welcome .eyebrow{font-size:18px;margin-bottom:12px}body[data-language] .welcome .lead{font-size:30px;line-height:1.25;margin-bottom:12px}body[data-language] .welcome-copy>p:not(.eyebrow):not(.lead):not(.fine){font-size:24px;line-height:1.35}body[data-language] .welcome-art{grid-row:auto;margin:0}body[data-language] .welcome-art img{max-height:none;width:100%}body[data-language] .welcome .settings{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:14px 0}body[data-language] .welcome .settings label{font-size:22px}body[data-language] .welcome select{font-size:24px;padding:8px 4px}body[data-language] .welcome button{font-size:24px;min-height:50px;padding:10px 18px}body[data-language] .welcome .fine{font-size:18px;margin-top:12px}body[data-language] .session-options>label{font-size:22px}body[data-language] .session-options details{font-size:21px}body[data-language] .session-status{font-size:20px}body[data-language] .session-stop-list{grid-template-columns:repeat(3,1fr);max-height:none;overflow:visible;font-size:18px}body[data-language] .welcome:has(.session-options details[open]){grid-template-columns:1.65fr .65fr}body[data-language] .final{padding:16px 0;min-height:0;max-width:none}body[data-language] .final h1{font-size:48px;margin-bottom:12px}body[data-language] .final .video-frame{width:70%;max-height:450px;margin:12px auto;aspect-ratio:16/9}body[data-language] #recap-youtube{display:block;max-width:900px;max-height:460px;margin:12px auto}body[data-language] .preview-banner{margin-top:0;padding:5px 12px;font-size:14px}body[data-language] .message{min-height:0;padding:40px}body[data-language] .projection-dialog{max-height:100dvh;max-width:100vw}body[data-language] .projection-dialog iframe{width:100%;height:76%;border:0}body[data-language].projection-playing>main{transform:none!important;left:0!important;top:0!important;width:100vw!important}
.welcome-title-actions{display:flex;align-items:center;justify-content:space-between;gap:15px}.welcome-title-actions h1{min-width:0}body[data-language] .welcome #game-help-open{flex-shrink:0;font-size:22px;min-height:46px;padding:8px 18px;background:#edf6f5;color:#174f5b;border-color:#9ebfc1}.game-help{width:min(1050px,94vw);max-height:94dvh;border:1px solid #c9dfe2;border-radius:16px;padding:clamp(16px,2vw,30px);background:#f9f7ef;color:#173f47;font:clamp(16px,1.2vw,22px)/1.35 system-ui,sans-serif;overflow:auto}.game-help::backdrop{background:#043b53df}.game-help h2{font:700 1.7em/1.15 system-ui,sans-serif;letter-spacing:0;margin:0 0 .6em}.help-objective{padding:.7em;background:#e4efeb;border-radius:9px;font-weight:650}.game-help ol{padding-left:1.4em;margin:.7em 0}.game-help li{margin:.4em 0}.game-help>p{margin:.7em 0}.game-help>button{font-size:1em;min-height:44px;padding:10px 20px}

.game-help{max-height:none;overflow:visible;position:fixed;inset:auto;margin:0;top:50%;left:50%;transform-origin:center;transform:translate(-50%,-50%)}
.game-timer-settings{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:10px 0}.game-timer-settings label{display:flex;align-items:center;gap:9px;font-size:21px}.game-timer-settings input[type=checkbox]{width:23px;height:23px}.game-timer-settings input[type=number]{width:85px;font:inherit;border:1px solid #a8c6c6;border-radius:5px;padding:5px;color:#174f5b;background:#fff}.game-timer-settings p{flex-basis:100%;font-size:18px;line-height:1.3}.question-timer{font-variant-numeric:tabular-nums;background:#edf6f5;color:#173f47;border-radius:7px;padding:.25em .6em;font-weight:800;white-space:nowrap}.question-timer[data-urgent=true]{background:#fff0d5;color:#8b351e;outline:2px solid #b77f51}

.game-help:not([open]){display:none!important}.game-help[open]{display:block;z-index:2147483647}.game-help::backdrop{background:rgba(4,45,58,.9)}
