*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#000;color:#fff;font:16px/1.5 system-ui,sans-serif}#screen{position:relative;display:grid;place-items:center;width:100%;height:100%;background:#000;overflow:hidden}
/* One scene preserves the theatre artwork's original 2048 × 1147 proportions. */
.theatre-scene{position:relative;flex:none;width:min(100vw,178.5527463vh);aspect-ratio:2048/1147;overflow:hidden;background:#000}.theatre-art{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}
/* Screen opening measured on the supplied image; black covers the original lit panel. */
.cinema-screen{position:absolute;left:31.884765625%;top:17.175239756%;width:34.912109375%;height:38.971229294%;overflow:hidden;background:#000;container-type:size;box-shadow:0 0 2px 2px #0009}
#audience-video{display:block;width:100%;height:100%;object-fit:contain;background:#000}
#welcome{position:absolute;inset:0;background:#03070d;color:#fff;text-align:center;overflow:hidden}#welcome[hidden]{display:none}.waiting-logo{position:absolute;left:10%;top:3%;width:80%;height:auto;pointer-events:none}.welcome-actions{position:absolute;left:5%;right:5%;bottom:4%}.welcome-actions p{margin:4px 0;color:#d1e2ed;font-size:clamp(9px,2.2cqw,16px);line-height:1.35}.welcome-actions .hint{font-size:clamp(8px,1.8cqw,12px);margin-top:8px;color:#a7becb}
button{border:1px solid #ffd1bf;border-radius:7px;padding:clamp(5px,1.2cqw,10px) clamp(7px,2cqw,20px);background:#ffd1bf;color:#123b48;font:700 clamp(10px,2.5cqw,17px)/1.25 system-ui;cursor:pointer}button:disabled{opacity:.35;cursor:default}button:focus-visible{outline:3px solid white;outline-offset:3px}
#fullscreen{position:absolute;right:18px;top:18px;border:1px solid #ffffff35;background:#0008;color:#fff;padding:5px 12px;font-size:24px;opacity:0;transition:opacity .3s}#screen.controls-visible #fullscreen,#fullscreen:focus-visible{opacity:1}#screen.blanked #audience-video{visibility:hidden}#screen.blanked #welcome{display:none}
#screen:fullscreen{width:100%;height:100%;background:#000;cursor:none}#screen:fullscreen.controls-visible{cursor:default}#screen:-webkit-full-screen{width:100%;height:100%;background:#000}
@supports(height:100dvh){.theatre-scene{width:min(100vw,178.5527463dvh)}}
@container(max-width:300px){.welcome-actions .hint{display:none}.welcome-actions{bottom:5%}.welcome-actions p{font-size:9px}.waiting-logo{top:0;left:15%;width:70%}}
@container(max-width:200px){.welcome-actions #audience-message{display:none}.waiting-logo{left:17.5%;width:65%}}

#screen.holding #audience-video{visibility:hidden}#screen.holding #welcome{display:block}#screen.holding #welcome[hidden]{display:none}#screen.holding .welcome-actions{display:none}#screen.holding .waiting-logo{top:50%;transform:translateY(-25.0000%);left:10%;width:80%}

/* Presentation surface: artwork and video only, including before activation. */
.welcome-actions,#fullscreen{display:none!important}.waiting-logo,#screen.holding .waiting-logo{top:50%;left:10%;width:80%;transform:translateY(-25%)}#screen,#screen:fullscreen,#screen:-webkit-full-screen{cursor:none}
