/* A stable page for each film, with a poster first and playback on request. */
.watch-page{background:var(--bg);color:var(--paper);padding-top:155px;padding-bottom:100px;min-height:78svh}
.watch-back{display:inline-block;margin-bottom:36px;font-size:13px;color:#b9bcb4;line-height:1.6}
.watch-back:hover{color:#e6a1a5}
.watch-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(32px,5vw,86px);align-items:center}
.watch-visual{min-width:0}
.watch-cover{display:block;position:relative;width:100%;border:0;padding:0;aspect-ratio:var(--watch-aspect,16/9);overflow:hidden;background:#151715}
.watch-cover.watch-portrait{max-width:360px;margin-inline:auto}
.watch-cover>img{display:block;width:100%;height:100%;object-fit:contain}
.watch-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 40%,#0005);pointer-events:none}
.watch-play{display:flex;position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);align-items:center;gap:12px;white-space:nowrap;padding:12px 20px 12px 12px;border:1px solid #ffffff85;border-radius:50px;background:#191c19b8;color:white;font-size:15px;backdrop-filter:blur(8px);transition:background .2s}
.watch-play-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:#b44c51;font-size:13px;padding-left:2px}
.watch-cover:hover .watch-play,.watch-cover:focus-visible .watch-play{background:#292d28e6}
.watch-duration{position:absolute;z-index:1;right:15px;bottom:15px;font-size:12px;font-variant-numeric:tabular-nums;background:#171917ba;padding:6px 10px;border-radius:20px}
.watch-copy{min-width:0}
.watch-copy>.eyebrow{margin-bottom:16px;color:#d0888c;font-size:12px;letter-spacing:.12em}
.watch-copy h1{margin:0;font-size:clamp(30px,3.15vw,52px);font-weight:500;line-height:1.35;letter-spacing:-.035em;overflow-wrap:anywhere}
.watch-en{margin:18px 0 0;color:#90988d;font-size:11px;line-height:1.6;letter-spacing:.12em;overflow-wrap:anywhere}
.watch-description{font-size:17px;color:#c0c4b9;line-height:1.9;margin:27px 0 0;max-width:26em}
.watch-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:30px}
.watch-actions>.text-link{font-size:13px}
.share-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid #727570;border-radius:30px;background:#292b28;color:#f3f3ef;font-size:14px;line-height:1.4;white-space:nowrap}
.share-button:hover{background:#393c37;border-color:#b2b6ac}
.player-actions{flex-wrap:wrap}
.contact-actions{flex-wrap:wrap}
.share-status{opacity:0;visibility:hidden;pointer-events:none;position:fixed;z-index:1000;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translateX(-50%);width:max-content;max-width:min(520px,calc(100vw - 32px));margin:0;padding:14px 20px;border:1px solid #a1a89a66;border-radius:14px;background:#242724f2;box-shadow:0 10px 35px #0005;color:#f2f3ec;font-size:14px;line-height:1.7;text-align:center;overflow-wrap:anywhere}
.share-status.is-visible{opacity:1;visibility:visible;pointer-events:auto;user-select:text}
.share-status:empty{display:none}
.wechat-share-dialog{box-sizing:border-box;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:30px 26px 24px;overflow:auto;border:1px solid #666a605c;border-radius:18px;background:#20231f;color:#f3f3ed;text-align:center;box-shadow:0 24px 100px #0009}
.wechat-share-dialog::backdrop{background:#0b100cd9;backdrop-filter:blur(8px)}
.wechat-share-dialog h2{margin:0 32px 10px;font-size:23px;line-height:1.4;font-weight:500;letter-spacing:-.025em}
.wechat-share-close{position:absolute;right:14px;top:12px;display:grid;place-items:center;min-width:40px;min-height:40px;border:0;border-radius:50%;background:transparent;color:#b8bfb1;font:25px/1 system-ui;cursor:pointer}
.wechat-share-close:hover{background:#ffffff0f;color:white}
.wechat-share-title{margin:0 0 19px;font-size:14px;line-height:1.6;color:#b9bfb2;overflow-wrap:anywhere}
.wechat-share-qr{display:block;box-sizing:border-box;width:240px;height:240px;max-width:100%;margin:0 auto 20px;background:white;border-radius:6px;object-fit:contain}
.wechat-share-help{max-width:25em;margin:0 auto 20px;color:#e3e6dc;font-size:14px;line-height:1.8}
.wechat-share-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}
.wechat-share-actions>.share-button{font-size:13px;text-decoration:none;cursor:pointer;min-height:42px}
.wechat-share-actions>.share-button:first-child{border-color:#b44c51;background:#b44c51;color:white}
.wechat-share-feedback{min-height:1.5em;margin:12px 0 0;color:#c6cdbf;font-size:12px;line-height:1.5}
.wechat-share-dialog :focus-visible{outline:2px solid #de9296;outline-offset:4px}
@media(max-width:1000px){.watch-layout{gap:32px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.watch-copy h1{font-size:32px}.watch-description{font-size:16px}}
@media(max-width:760px){.watch-page{padding-top:116px;padding-bottom:62px}.watch-back{margin-bottom:24px;font-size:12px}.watch-layout{grid-template-columns:1fr;gap:30px}.watch-cover.watch-portrait{max-width:300px}.watch-copy h1{font-size:31px}.watch-copy>.eyebrow{font-size:11px;margin-bottom:12px}.watch-en{font-size:10px;margin-top:13px}.watch-description{margin-top:21px;font-size:16px}.watch-actions{margin-top:24px;gap:22px}.watch-play{font-size:14px}.player-actions{gap:10px}.share-button{font-size:13px;padding:9px 16px}.share-status{font-size:13px;padding:12px 16px}}
@media(prefers-reduced-motion:reduce){.watch-play{transition:none}}
