/* Approved film detail and full playback pages. */
.film-detail-page{background:#080911;min-height:calc(100vh - 76px)}
.film-detail-hero{position:relative;height:clamp(430px,42vw,650px);overflow:hidden;background:radial-gradient(circle at 68% 42%,#5c368e,#17162e 58%,#090a15);isolation:isolate}
.film-detail-cover,.film-detail-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.film-detail-cover{object-position:center 38%}
.film-detail-preview{opacity:0;pointer-events:none;transition:opacity .4s ease}
.film-detail-preview.is-playing{opacity:1}
.film-detail-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#080911f5 0%,#080911b8 31%,#08091135 68%,transparent),linear-gradient(0deg,#080911 0%,transparent 32%)}
.film-detail-intro{position:absolute;left:max(4vw,24px);bottom:clamp(38px,5vw,80px);max-width:min(570px,54vw);z-index:2}
.film-detail-intro h1{font:700 clamp(38px,5vw,76px)/1.07 Georgia,serif;letter-spacing:-.025em;margin:0 0 14px;text-wrap:balance}
.film-view-count{color:#c5b8d9;font-size:14px;margin:0 0 16px}
.film-detail-intro .film-sub{display:block;color:#e0d5f5;font-size:15px;margin-bottom:14px}
.film-detail-intro p{font-size:clamp(15px,1.25vw,19px);line-height:1.55;white-space:pre-line;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;margin:0 0 22px;color:#f1eaf8;text-shadow:0 1px 8px #000a}
.film-detail-play{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:11px 25px}
.film-detail-preview-status{position:absolute;right:max(4vw,24px);top:26px;z-index:2;background:#0b0b1bc9;border:1px solid #ffffff50;border-radius:99px;padding:8px 12px;color:#f9f4ff;font-size:12px}
.film-detail-preview-status[hidden],.film-detail-progress[hidden]{display:none}
.film-detail-preview-time{margin-left:8px;font-variant-numeric:tabular-nums}
.film-detail-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:#ffffff30;z-index:3}
.film-detail-progress span{display:block;width:0;height:100%;background:#ba81ff}
.film-detail-body{display:grid;grid-template-columns:minmax(0,2fr) minmax(210px,1fr);gap:24px 60px;padding-top:30px;padding-bottom:80px}
.film-detail-body h2{font-size:22px;margin:0 0 18px;border-left:3px solid #a35dff;padding-left:14px}
.film-detail-about p{color:#d6d0e0;font-size:16px;line-height:1.75;white-space:pre-line;max-width:800px;margin:0}
.film-detail-creator{border-left:1px solid #ffffff28;padding-left:35px}
.film-detail-creator a{display:flex;align-items:center;gap:12px;color:#eee5ff;width:max-content;max-width:100%}
.film-detail-creator a:hover{text-decoration:underline;text-underline-offset:4px}
.film-detail-avatar{display:block;flex:none;width:44px;height:44px;border-radius:50%;overflow:hidden;background:linear-gradient(135deg,#6543a2,#26283e)}
.film-detail-avatar img{width:100%;height:100%;object-fit:cover}
.film-detail-related{grid-column:1/-1;border-top:1px solid #ffffff24;padding-top:30px;margin-top:12px}
.film-detail-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.film-detail-related-grid .film-card{min-width:0}
body.film-playing{overflow:hidden;background:#000}
body.film-playing .header,body.film-playing footer{display:none}
.film-player-page{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;z-index:100;background:#000;color:#fff;overflow:hidden}
.film-player-video{display:block;width:100%;height:100%;object-fit:contain;background:#000;border:0}
.film-player-overlay{position:absolute;inset:0;pointer-events:none;background:linear-gradient(#0009,transparent 21%,transparent 65%,#000b);transition:opacity .22s ease}
.film-player-page.is-idle .film-player-overlay{opacity:0;cursor:none}
.film-player-page.is-idle{cursor:none}
.film-player-top,.film-player-bottom{position:absolute;z-index:2;left:0;right:0;pointer-events:auto}
.film-player-top{top:0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:clamp(18px,3vw,42px) clamp(18px,4vw,64px)}
.film-player-top a{display:inline-flex;align-items:center;gap:12px;padding:10px 15px;border-radius:999px;color:white;background:#10101aaa;backdrop-filter:blur(10px);font-weight:650}
.film-player-top a:hover,.film-player-controls button:hover,.film-player-center:hover{background:#7437ad;color:white}
.film-player-center{position:absolute;z-index:1;top:50%;left:50%;transform:translate(-50%,-50%);width:76px;height:76px;border:1px solid #ffffff88;border-radius:50%;background:#211735a8;color:#fff;font-size:30px;pointer-events:auto;backdrop-filter:blur(12px)}
.film-player-page.is-playing .film-player-center{display:none}
.film-player-bottom{bottom:0;padding:42px clamp(18px,4vw,64px) max(24px,env(safe-area-inset-bottom));background:linear-gradient(transparent,#000c 45%,#000e)}
.film-player-bottom h1{font:700 clamp(19px,2.3vw,30px)/1.2 Inter,ui-sans-serif,system-ui,sans-serif;margin:0 0 18px;text-shadow:0 2px 10px #000}
.film-player-seek{display:block;width:100%;height:6px;margin:0 0 17px;cursor:pointer;appearance:none;border-radius:8px;background:linear-gradient(to right,#ad67ed var(--watched,0%),#ffffff80 var(--watched,0%))}
.film-player-seek::-webkit-slider-thumb{appearance:none;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px #a45adf}
.film-player-seek::-moz-range-thumb{width:15px;height:15px;border:0;border-radius:50%;background:#fff;box-shadow:0 0 0 3px #a45adf}
.film-player-controls{display:flex;align-items:center;gap:clamp(4px,1.2vw,16px)}
.film-player-controls button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:6px 10px;border:0;border-radius:8px;background:transparent;color:#fff;font:inherit;font-size:17px;white-space:nowrap}
.film-player-controls button[data-player-play]{font-size:26px;min-width:46px}
.film-player-controls small{font-size:10px}
.film-player-time{font-variant-numeric:tabular-nums;color:#ddd3e8;font-size:13px;white-space:nowrap}
.film-player-spacer{flex:1}
.film-player-controls button[data-player-next]{font-size:14px;font-weight:700}
.film-player-language-wrap{position:relative}
.film-player-language{position:absolute;right:0;bottom:calc(100% + 14px);width:min(270px,80vw);max-height:55vh;overflow:auto;padding:16px;border:1px solid #ffffff45;border-radius:12px;background:#181323ed;box-shadow:0 20px 55px #0009;backdrop-filter:blur(18px)}
.film-player-language[hidden]{display:none}
.film-player-language strong{display:block;margin:10px 0 4px;color:#d7b6ff;font-size:13px}
.film-player-language strong:first-child{margin-top:0}
.film-player-language span{display:block;color:#cec8d5;font-size:13px;padding:8px 10px}
.film-player-language button{display:flex;width:100%;justify-content:flex-start;font-size:13px;white-space:normal;text-align:left}
.film-player-language button[aria-pressed=true]{background:#7137a8}
.film-player-error{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;padding:16px 20px;border-radius:12px;background:#170f27ee;text-align:center}
.film-player-error[hidden]{display:none}
@media(max-width:700px){.film-player-top{padding:16px}.film-player-top a{padding:7px 10px;font-size:13px}.film-player-bottom{padding:35px 16px max(16px,env(safe-area-inset-bottom))}.film-player-bottom h1{margin-bottom:12px}.film-player-controls{gap:1px}.film-player-controls button{padding:5px;min-height:36px;font-size:15px}.film-player-controls button[data-player-next]{font-size:12px}.film-player-controls button[data-player-language] span{display:none}.film-player-time{font-size:11px}.film-player-center{width:64px;height:64px}}
@media(max-width:420px){.film-player-controls button[data-player-rewind],.film-player-controls button[data-player-forward]{display:none}.film-player-controls button[data-player-next]{max-width:78px;white-space:normal;line-height:1.1}}
@media(max-width:760px){.film-detail-hero{height:560px}.film-detail-intro{max-width:none;left:20px;right:20px;bottom:42px}.film-detail-shade{background:linear-gradient(0deg,#080911 0%,#080911c9 22%,#08091130 75%,transparent)}.film-detail-body{display:block}.film-detail-creator{border-left:0;border-top:1px solid #ffffff28;padding:24px 0 0;margin-top:26px}.film-detail-related{margin-top:30px}.film-detail-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.film-detail-hero{height:525px}.film-detail-intro h1{font-size:40px}.film-detail-intro p{font-size:15px}.film-detail-related-grid{grid-template-columns:1fr}}

.film-player-captions{position:absolute;z-index:3;left:50%;bottom:clamp(35px,6vh,70px);transform:translateX(-50%);max-width:min(88vw,960px);padding:7px 14px;border-radius:5px;background:rgba(0,0,0,.86);color:#fff;font:600 clamp(17px,2.1vw,29px)/1.45 ui-sans-serif,system-ui,sans-serif;text-align:center;text-shadow:0 1px 2px #000;white-space:pre-wrap;pointer-events:none;box-decoration-break:clone}
.film-player-captions[hidden]{display:none}
.film-player-page:not(.is-idle) .film-player-captions{bottom:clamp(130px,19vh,190px)}
@media(max-width:700px){.film-player-captions{max-width:94vw;font-size:clamp(16px,4.3vw,22px);bottom:55px}.film-player-page:not(.is-idle) .film-player-captions{bottom:140px}}

.film-player-report-wrap{position:relative}.film-player-controls button[data-player-more]{font-size:25px;min-width:40px}.film-player-report-menu{position:absolute;bottom:calc(100% + 14px);right:0;z-index:5;width:max-content;max-width:240px;padding:6px;border:1px solid #ffffff35;border-radius:10px;background:#181323f5;box-shadow:0 12px 32px #0008}.film-player-report-menu[hidden]{display:none}.film-player-controls .film-player-report-menu button{font-size:14px;padding:10px 14px;white-space:normal;text-align:left}.film-player-controls [data-player-more]:focus-visible,.film-player-controls [data-player-report]:focus-visible{outline:2px solid #c391ed;outline-offset:2px}

.film-player-controls button[data-player-share]{min-width:38px}
.film-share-dialog{color-scheme:dark;color:#f6f3ff;width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box;padding:24px;border:1px solid #6b4b8a;border-radius:16px;background:#151122;box-shadow:0 20px 80px #000a;font-family:inherit;cursor:default}.film-share-dialog::backdrop{background:#0008}.film-share-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.film-share-heading h2{font-size:23px;margin:0}.film-share-heading button{border:0;color:#e3d5f5;background:transparent;font-size:28px;padding:0 8px;cursor:pointer}.film-share-film{color:#bcb1cd;font-size:14px;margin:10px 0 22px;overflow-wrap:anywhere}.film-share-targets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:22px}.film-share-targets a{display:flex;align-items:center;flex-direction:column;gap:7px;color:#e6dcf3;text-decoration:none;font-size:13px;padding:12px 4px;border:1px solid #3b2d4c;border-radius:10px}.film-share-targets a:hover{border-color:#b57deb;background:#2b1c40}.film-share-targets a span{display:grid;place-items:center;width:36px;height:36px;background:#342245;border-radius:50%;font-size:21px;font-weight:700}.film-share-label{display:block;color:#b8a9cb;font-size:13px;margin-bottom:8px}.film-share-link-row{display:flex;gap:8px}.film-share-link-row input{min-width:0;flex:1;width:100%;padding:11px 10px;border:1px solid #524063;border-radius:8px;background:#0e0c16;color:#cec0e0;font-size:13px}.film-share-link-row button,.film-share-native{padding:11px 14px;border:1px solid #9c64d6;border-radius:8px;background:#6d30ad;color:#fff;cursor:pointer;white-space:nowrap;font:inherit;font-size:14px}.film-share-native{width:100%;margin-top:14px;background:transparent;color:#d0b0f5}.film-share-native[hidden]{display:none}.film-share-status{min-height:20px;font-size:13px;color:#d5b6fa;margin:14px 0 0}.film-share-dialog :focus-visible{outline:2px solid #cc9aff;outline-offset:3px}
@media(max-width:420px){.film-share-dialog{padding:20px 16px}.film-share-link-row{flex-direction:column}.film-share-targets{gap:8px}.film-share-targets a{font-size:12px}}

.film-player-controls button[data-player-previous],.film-player-controls button[data-player-next]{font-size:14px;font-weight:650;flex-shrink:0}
.film-player-controls button[data-player-previous]>span:first-child,.film-player-controls button[data-player-next]>span:first-child{font-size:21px}
@media(max-width:900px){.film-player-episode-label{display:none}.film-player-controls button[data-player-previous],.film-player-controls button[data-player-next]{min-width:34px}}
@media(max-width:420px){.film-player-controls{flex-wrap:wrap;row-gap:4px}.film-player-controls button[data-player-previous],.film-player-controls button[data-player-next]{min-width:32px;white-space:nowrap}.film-player-controls button[data-player-share]{min-width:32px}}

/* Immersive playback states and episode list */
.player-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;pointer-events:none;color:#fff;background:#0003;z-index:3}
.player-spinner{width:24px;height:24px;border:2px solid #ffffff40;border-top-color:#a995ff;border-radius:50%;animation:player-spin 1s linear infinite}
@keyframes player-spin{to{transform:rotate(360deg)}}
.player-end{position:absolute;inset:0;background:#100f18;z-index:4;color:#fff}
.player-end-image{position:absolute;width:100%;height:100%;object-fit:cover;opacity:.7}
.player-end:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#090910ee 0%,#09091099 50%,#09091022),linear-gradient(0deg,#090910bb,transparent 50%);pointer-events:none}
.player-end-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:100%;padding:100px 8% 170px;box-sizing:border-box}
.player-end h2{font-size:clamp(24px,3.5vw,46px);margin:0 0 24px;line-height:1.3}
.player-end p{color:#c8c3d6;margin:0 0 8px}.player-end h3{font-size:clamp(18px,2vw,26px);margin:0 0 28px}
.player-end-actions{display:flex;gap:12px;flex-wrap:wrap}.player-end button,.film-player-error button{font:inherit;color:white;border:1px solid #ffffff66;border-radius:7px;background:#16151dcc;padding:12px 22px;cursor:pointer}
.player-end button:first-child{background:#7755cf;border-color:#7755cf}.player-end a{margin-top:25px;color:#d0cadf;font-size:14px}
.is-ended .film-player-center,.is-ended .film-player-captions{display:none!important}.is-ended .film-player-overlay{z-index:5;opacity:1!important}
.player-episodes{position:absolute;right:32px;bottom:150px;z-index:7;background:#15141eee;border:1px solid #ffffff24;box-shadow:0 16px 48px #0009;border-radius:10px;padding:18px;width:min(340px,calc(100vw - 40px));max-height:55dvh;overflow:auto;color:white}
.player-episodes h2{font-size:16px;margin:0 0 12px}.player-episodes button{display:block;text-align:left;width:100%;background:transparent;border:0;color:#dedbe7;font:inherit;padding:13px;border-radius:6px;cursor:pointer}.player-episodes button:hover,.player-episodes button:focus-visible{background:#ffffff15}.player-episodes button[aria-current]{background:#7755cf55;color:white}
.player-loading[hidden],.player-end[hidden],.player-episodes[hidden],.player-end-image[hidden]{display:none!important}
.film-player-error{z-index:8}.film-player-error button{margin-left:10px;padding:8px 14px}
@media(max-width:700px){.player-end-content{padding:80px 24px 180px}.player-episodes{right:20px;bottom:140px}.player-end h2{margin-bottom:16px}.player-end h3{margin-bottom:20px}.player-end button{padding:11px 16px}}
@media(max-height:450px){.player-end-content{padding:35px 8% 120px}.player-end h2{font-size:24px;margin-bottom:10px}.player-end h3{font-size:18px;margin-bottom:12px}.player-end a{margin-top:10px}.player-episodes{bottom:95px}}
@media(prefers-reduced-motion:reduce){.player-spinner{animation:none}}

.player-membership-link{display:inline-flex;align-items:center;gap:14px;margin-bottom:16px;padding:11px 18px;border:1px solid #ac8eea66;border-radius:7px;background:#32204abf;color:#fff;font-size:14px;text-decoration:none;backdrop-filter:blur(12px)}.player-membership-link:hover{background:#56327bcc}.player-membership-link:focus-visible,.player-membership-return:focus-visible{outline:2px solid #c8aaff;outline-offset:4px}.player-membership-return{display:block;max-width:1100px;margin:0 auto 50px;padding:0 24px;color:#d6c4fa;text-decoration:underline;text-underline-offset:4px}.is-ended .player-membership-link{display:none}@media(max-width:700px){.player-membership-link{font-size:13px;padding:9px 13px;margin-bottom:10px}}

.player-trial-dialog{color-scheme:dark;position:fixed;inset:0;margin:auto;height:fit-content;width:min(440px,calc(100vw - 40px));max-height:calc(100dvh - 48px);overflow:auto;box-sizing:border-box;padding:34px;border:1px solid #ac91e88c;border-radius:16px;background:rgba(18,19,38,.85);color:#f7f1ff;backdrop-filter:blur(18px);text-align:center;box-shadow:0 20px 80px #0008;font-family:Archivo,Arial,sans-serif}
.player-trial-dialog:not([open]){display:none}.player-trial-dialog::backdrop{background:#05060e66}
.player-trial-dialog h2{font-size:30px;line-height:1.35;margin:0 0 14px}.player-trial-dialog p{font-size:16px;line-height:1.7;color:#ddd3ee;margin:0 0 26px}
.player-trial-subscribe{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;border:1px solid #d0b4ff77;border-radius:9px;background:#b99af3;color:#181020!important;text-decoration:none;font-weight:700;font-size:16px;padding:10px 14px;box-sizing:border-box}
.player-trial-return{display:inline-block;margin-top:22px;color:#d2b9fc!important;text-decoration:underline;text-underline-offset:4px;font-size:14px}
.player-trial-preview-note{display:block;font-size:11px;line-height:1.6;color:#a99bbb;margin-top:22px}
.player-trial-dialog a:focus-visible{outline:2px solid #e5d4ff;outline-offset:4px}
.is-trial-ended .film-player-center,.is-trial-ended .film-player-captions,.is-trial-ended .player-end,.is-trial-ended .player-loading,.is-trial-ended .film-player-error{display:none!important}
.player-trial-preview-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.player-trial-preview-brand{position:absolute;left:28px;top:24px;z-index:2}
@media(max-width:700px){.player-trial-dialog{width:calc(100vw - 36px);max-width:400px;padding:28px 22px;max-height:calc(100dvh - 40px)}.player-trial-dialog h2{font-size:26px}.player-trial-dialog p{font-size:15px}.player-trial-subscribe{font-size:15px}.player-trial-preview-brand{left:20px;top:20px}}
@media(max-height:450px){.player-trial-dialog{padding:20px 28px}.player-trial-dialog h2{font-size:23px;margin-bottom:10px}.player-trial-dialog p{margin-bottom:16px;font-size:14px}.player-trial-return{margin-top:14px}.player-trial-preview-note{margin-top:12px}}


.film-cover-fallback{position:absolute;inset:0;display:grid;place-items:center;padding:16px;text-align:center;color:#e4d9ff;background:linear-gradient(140deg,#281e3a,#111522);font-weight:600}.live-cover-art{position:relative}.live-cover-art>img{position:relative;z-index:1}.film-player-video{object-fit:contain}

.embedded-film-player{position:fixed;inset:0;z-index:10000;background:#000;color:#fff;font-family:Arial,sans-serif}.embedded-film-player .film-player-page{height:100dvh}.film-player-page.is-buffering .film-player-center{visibility:hidden;pointer-events:none}
