/* A manual alternative when a mobile browser keeps the viewport upright. */
#playlist-dialog .video-rotate{display:none}
#playlist-dialog.expanded .video-rotate,#bookfilm-dialog .video-rotate{display:grid;place-items:center;flex:none;box-sizing:border-box;width:44px;height:44px;min-width:44px;min-height:44px;margin:0;padding:0;border:1px solid #ffffff70;border-radius:50%;background:#302b2599;color:#fff;font:400 30px/1 system-ui;cursor:pointer;touch-action:manipulation}
#bookfilm-dialog .video-rotate{position:absolute;z-index:5;top:max(10px,env(safe-area-inset-top));right:64px}
#bookfilm-dialog.film-controls-hidden .video-rotate{opacity:0;visibility:hidden;pointer-events:none}
#playlist-dialog.expanded.video-turned,#bookfilm-dialog.video-turned{position:fixed;inset:auto;left:50%;top:50%;width:100dvh;max-width:none;height:100vw;max-height:none;transform:translate(-50%,-50%) rotate(90deg);transform-origin:center;box-sizing:border-box;margin:0;padding:0}
.video-rotate:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* Quiet, high-contrast surrounds keep each collection recognisable. */
#playlist-dialog.expanded,#playlist-dialog.bookfilm-style.expanded{--film-surround:#181310;container-type:size;background:var(--film-surround)}
#playlist-dialog[data-theme="heavenly"].expanded{--film-surround:#0b1728;background:var(--film-surround)}
#playlist-dialog.expanded::backdrop{background:var(--film-surround,#181310)}
#playlist-dialog.expanded #playlist-player,#playlist-dialog.bookfilm-style.expanded #playlist-player{inset:auto;left:50%;top:50%;transform:translate(-50%,-50%);width:min(100cqw,calc(100cqh * 16 / 9));height:min(100cqh,calc(100cqw * 9 / 16));max-width:none;max-height:none;background:var(--film-surround)}
#bookfilm-dialog,#bookfilm-dialog::backdrop,#bookfilm-dialog video{background:#181310}

/* Explicit viewport sizes also work in older Android embedded browsers. */
#playlist-dialog.expanded,#playlist-dialog.bookfilm-style.expanded{container-type:normal;left:0;top:0;right:auto;bottom:auto;transform:none;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;isolation:isolate;color-scheme:dark}
#playlist-dialog.expanded #playlist-player,#playlist-dialog.bookfilm-style.expanded #playlist-player{display:block;position:absolute;inset:0;transform:none;box-sizing:border-box;width:100%;height:100%;min-height:0;max-width:none;max-height:none;aspect-ratio:auto;border:0;border-radius:0;background:#000}
#playlist-dialog.expanded.video-turned{left:50%;top:50%;width:100vh;width:100dvh;height:100vw;transform:translate(-50%,-50%) rotate(90deg)}
#playlist-dialog #playlist-reveal[hidden]{display:none!important}
#playlist-dialog.expanded #playlist-reveal{appearance:none;-webkit-appearance:none;background:transparent!important;background-image:none!important;box-shadow:none!important;border:0;border-radius:0}
