/* The controller floats below the screen; the architecture remains the cinema. */
.interior-cinema-host{position:absolute;z-index:7;left:50%;bottom:calc(22px + env(safe-area-inset-bottom,0px));width:min(790px,calc(100% - 44px));transform:translateX(-50%);pointer-events:none}
.interior-shell.has-cinema .interior-dock,.interior-shell.has-cinema .interior-hint,.interior-shell.has-cinema .interior-labels{visibility:hidden;pointer-events:none}
.interior-cinema{position:relative;pointer-events:auto;padding:12px 16px 9px;background:rgba(17,36,41,.95);border:1px solid rgba(218,227,210,.37);border-radius:10px;color:#f7f5e9;box-shadow:0 14px 60px rgba(0,15,18,.4);font-family:Geist,Arial,sans-serif}
.interior-cinema [hidden]{display:none!important}
.interior-cinema :is(button,input,select,summary,a){touch-action:manipulation}
.interior-cinema :is(button,input,select,summary,a):focus-visible{outline:3px solid #e5c88c!important;outline-offset:3px}
.interior-cinema :is(button,select,summary,a){min-height:44px;font:inherit}
.interior-cinema button{color:inherit;border-radius:5px;cursor:pointer}
.interior-cinema-bar{display:flex;align-items:center;gap:10px;min-width:0}
.interior-cinema-bar>button{flex:0 0 auto;padding:9px 12px;font-size:12px!important;border:1px solid #748b87;background:#25464a;line-height:1.4}
.interior-cinema-bar>button:hover{background:#375b5c}
.interior-cinema-bar>button[aria-pressed=true]{background:#dbd8b6;color:#15383c;border-color:#dbd8b6}
.interior-cinema-bar>.interior-cinema-play{background:#e2d7b5;border-color:#e2d7b5;color:#193b3d;min-width:80px}
.interior-cinema-bar>.interior-cinema-play:hover{background:#f1e7ca}
.interior-cinema-title{font-weight:500;line-height:1.3;font-size:13px;letter-spacing:-.015em;margin-right:auto;min-width:0}
.interior-cinema-timeline{display:flex;align-items:center;gap:14px;padding-top:3px}
.interior-cinema-time{font-size:11px;font-variant-numeric:tabular-nums;color:#c3d1c9;flex:0 0 auto;min-width:74px}
.interior-cinema-timeline input,.interior-cinema-field input[type=range]{accent-color:#dac08a;min-width:0;width:100%;height:30px;padding:0;margin:0;cursor:pointer}
.interior-cinema-programme{position:relative;flex:0 0 auto}
.interior-cinema-programme>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;font-size:11px;padding:9px 10px;border:1px solid #677e79;border-radius:5px;white-space:nowrap}
.interior-cinema-programme>summary::-webkit-details-marker{display:none}
.interior-cinema-programme>summary:after{content:'+';font-size:18px;font-weight:400}
.interior-cinema-programme[open]>summary:after{content:'−'}
.interior-cinema-settings{position:absolute;right:0;bottom:calc(100% + 23px);width:min(390px,calc(100vw - 48px));padding:19px;display:grid;gap:15px;background:#f1f0e5;border:1px solid #e0dfce;border-radius:9px;box-shadow:0 14px 45px rgba(0,19,24,.38);color:#173b41;max-height:65dvh;overflow:auto;overscroll-behavior:contain}
.interior-cinema-field{display:grid;gap:7px}
.interior-cinema-field>label{font-size:12px;line-height:1.5;color:#355958}
.interior-cinema-field select{width:100%;min-width:0;max-width:100%;border:1px solid #9aada1;background:#fafbf4;color:#173c40;padding:10px 27px 10px 10px;border-radius:4px;font-size:16px;line-height:1.4}
.interior-cinema-field input[type=range]{height:36px;accent-color:#315a50}
.interior-cinema-settings .interior-cinema-native-toggle{font-size:12px;line-height:1.4;color:#234b4b;text-align:left;background:transparent;border:1px solid #9daf9f;border-radius:4px;padding:9px 12px}
.interior-cinema-settings .interior-cinema-native-toggle[aria-pressed=true]{background:#d7e1d5;border-color:#597967}
.interior-cinema .interior-cinema-edition-note{color:#4d6661;font-size:11px;line-height:1.5;margin:0}
.interior-cinema .interior-cinema-status{font-size:12px;color:#e5d7a7;line-height:1.5;margin:5px 0 0}
.interior-cinema-fallback{display:inline-flex;align-items:center;color:#f5e8b9;text-decoration:underline;text-underline-offset:4px;font-size:12px;line-height:1.5}
.interior-cinema-caption{position:absolute;bottom:calc(100% + 20px);left:50%;transform:translateX(-50%);padding:8px 15px;max-width:min(650px,90vw);width:max-content;background:rgba(3,15,18,.83);border-radius:4px;font-size:clamp(15px,1.45vw,21px);line-height:1.42;color:#fff;text-align:center;white-space:pre-line;text-shadow:0 1px 2px #071b20;pointer-events:none}
.interior-cinema:has(.interior-cinema-programme[open]) .interior-cinema-caption{visibility:hidden}
/* Keep the source in the render tree: display:none can suspend iOS video decoding. */
.interior-cinema-native{position:absolute;width:1px;height:1px;left:0;top:0;overflow:hidden;opacity:.001;pointer-events:none}
.interior-cinema-video{display:block;width:100%;height:100%;background:#061a1f;object-fit:contain;max-width:none}
.interior-cinema.is-native .interior-cinema-native{position:relative;width:100%;height:auto;left:auto;top:auto;opacity:1;pointer-events:auto;margin:0 0 12px;overflow:visible}
.interior-cinema.is-native .interior-cinema-video{height:auto;max-height:50dvh;min-height:100px;width:100%}
.interior-cinema.is-native .interior-cinema-settings{bottom:calc(100% + 20px)}
@media(max-width:760px){
 .interior-cinema-host{bottom:calc(12px + env(safe-area-inset-bottom,0px));width:calc(100% - 24px)}
 .interior-cinema{padding:11px 12px 7px}
 .interior-cinema-bar{display:grid;grid-template-columns:1fr auto auto;gap:7px}
 .interior-cinema-title{grid-column:1/3;grid-row:1;font-size:13px;padding-bottom:2px}
 .interior-cinema-play{grid-column:1;grid-row:2;justify-self:start;min-width:89px!important}
 .interior-cinema-mute{grid-column:2;grid-row:2}
 .interior-cinema-cc{grid-column:3;grid-row:2}
 .interior-cinema-programme{grid-column:3;grid-row:1;justify-self:end}
 .interior-cinema-programme>summary{font-size:10px;padding:5px 8px;min-height:44px!important;white-space:normal;max-width:122px;line-height:1.3}
 .interior-cinema-bar>button{font-size:12px!important;min-height:44px;padding:8px 12px}
 .interior-cinema-settings{width:min(340px,calc(100vw - 48px));bottom:calc(100% + 18px);padding:16px;gap:12px;max-height:58dvh}
 .interior-cinema-timeline{gap:9px;padding-top:5px}
 .interior-cinema-timeline input{height:36px}
 .interior-cinema-caption{bottom:calc(100% + 16px);max-width:calc(100vw - 32px);font-size:15px;padding:7px 12px}
 .interior-cinema.is-native .interior-cinema-video{max-height:41dvh}
}
@media(max-height:540px){.interior-cinema-host{bottom:8px}.interior-cinema-caption{bottom:calc(100% + 9px)}.interior-cinema-settings{max-height:calc(100dvh - 130px)}.interior-cinema.is-native .interior-cinema-video{max-height:36dvh}}
@media(prefers-reduced-motion:reduce){.interior-cinema *{animation:none!important;transition:none!important}}
