/* Film player (public/interactions/film-player.js). */
.chapter-film .chapter-film-stage{background:#0a2b35}
.chapter-film video{cursor:pointer}

/* Play button in the lower-left corner of the poster; the whole poster is clickable. */
.film-play{position:absolute;inset:0;display:flex;flex-direction:row;align-items:flex-end;justify-content:flex-start;gap:14px;width:100%;border:0;padding:0 0 26px 28px;background:linear-gradient(180deg,transparent 55%,rgba(6,24,30,.55) 100%);color:#faf2e9;cursor:pointer;font:600 14px/1 var(--font-ui);letter-spacing:.02em}
.film-play[hidden]{display:none}
.film-play-disc{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:#f0529c;color:#fff;box-shadow:0 12px 34px -10px rgba(10,43,53,.7),0 0 0 8px rgba(240,82,156,.18);transition:transform .2s ease,box-shadow .2s ease}
.film-play-disc svg{width:32px;height:32px;margin-left:4px}
.film-play-text{align-self:flex-end;margin-bottom:24px;font:700 16px/1.2 var(--font-ui);text-shadow:0 1px 8px rgba(0,0,0,.45)}
.film-play:hover .film-play-disc,.film-play:focus-visible .film-play-disc{transform:scale(1.07);box-shadow:0 14px 38px -10px rgba(10,43,53,.75),0 0 0 12px rgba(240,82,156,.22)}
.film-play:focus-visible{outline:3px solid #f0529c;outline-offset:-3px}

/* Control bar: shown while paused, on pointer movement or focus. */
.film-bar{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:10px;padding:28px 14px 12px;background:linear-gradient(transparent,rgba(6,24,30,.78));color:#faf2e9;font:600 12.5px/1 var(--font-ui);opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s;pointer-events:none}
.film-bar[hidden]{display:none}
.chapter-film.is-active .film-bar,.chapter-film[data-state="paused"] .film-bar{opacity:1;transform:none;pointer-events:auto}
.film-btn{display:grid;place-items:center;flex:none;width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer;transition:background .15s}
.film-btn:hover{background:rgba(250,242,233,.14)}
.film-btn:focus-visible{outline:2px solid #f0529c;outline-offset:1px}
.film-btn svg{width:20px;height:20px}
.film-time{flex:none;display:flex;gap:5px;font-variant-numeric:tabular-nums lining-nums;opacity:.92}
.film-time-sep{opacity:.5}
.film-seek{--p:0%;flex:1;min-width:60px;height:18px;margin:0 4px;background:transparent;-webkit-appearance:none;appearance:none;cursor:pointer}
.film-seek::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:linear-gradient(90deg,#f0529c var(--p),rgba(250,242,233,.3) var(--p))}
.film-seek::-moz-range-track{height:4px;border-radius:2px;background:rgba(250,242,233,.3)}
.film-seek::-moz-range-progress{height:4px;border-radius:2px;background:#f0529c}
.film-seek::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:50%;background:#fff;border:0;box-shadow:0 1px 4px rgba(0,0,0,.4)}
.film-seek::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#fff;border:0}
.film-seek:focus-visible{outline:2px solid #f0529c;outline-offset:2px}
.chapter-film:fullscreen .chapter-film-stage{background:#000}
@media(max-width:700px){
 .film-play{padding:0 0 14px 14px}
 .film-play-disc{width:56px;height:56px}
 .film-play-text{margin-bottom:17px;font-size:14px}
 .film-play-disc svg{width:28px;height:28px}
 .film-bar{gap:4px;padding:22px 8px 8px}
 .film-time{font-size:11.5px}
}
@media(prefers-reduced-motion:reduce){.film-play-disc,.film-bar{transition:none}}
/* Full screen: the whole frame, letterboxed, never cropped (2026-11-02). */
.chapter-film:fullscreen{padding:0!important;background:#000}
.chapter-film:fullscreen .chapter-film-stage{background:#000}
.chapter-film:fullscreen video{object-fit:contain!important;width:100%;height:100%}
.chapter-film:fullscreen .chapter-film-footer{display:none}
.chapter-film:-webkit-full-screen video{object-fit:contain!important}
