/* V91: member-listening cinema, connected to V90's existing Dreamland Radio. */
.dl-video-cinema{width:min(1150px,100%);margin:44px auto 0;position:relative;z-index:1}
.dl-video-frame{position:relative;isolation:isolate;overflow:hidden;width:100%;aspect-ratio:16/9;min-height:385px;max-height:680px;border-radius:32px;border:1px solid #ffffff2b;background:radial-gradient(ellipse at 45% 39%,#3f3c67,#171e3a 70%);box-shadow:0 25px 85px #07071b5c}
.dl-video-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:brightness(.85) saturate(.88)}
.dl-video-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#0c132a99 0%,transparent 32%,#0d143a1e 48%,#081029dd 100%)}
.dl-video-canvas{position:absolute;z-index:2;inset:0;width:100%;height:100%;pointer-events:none}
.dl-video-top,.dl-video-bottom{position:absolute;z-index:3;left:30px;right:30px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.dl-video-top{top:25px}.dl-video-bottom{bottom:26px;align-items:flex-end}
.dl-video-caption{font-size:10px;letter-spacing:.19em;text-transform:uppercase;color:#fff7ef;font-weight:700;text-shadow:0 2px 10px #0c102f;display:flex;align-items:center;gap:9px}
.dl-video-dot{width:7px;height:7px;background:#e3c6dd;border-radius:50%;box-shadow:0 0 14px #e3c6dd}
.dl-video-track{max-width:58%;min-width:0;text-shadow:0 3px 15px #0b102c}
.dl-video-track .dl-video-mode{display:block;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#efe0e8;font-weight:700;margin-bottom:8px}
.dl-video-track strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:'Fraunces',Georgia,serif;font-size:clamp(27px,3.6vw,46px);font-weight:500;line-height:1.14;color:#fff6f0}
.dl-video-track small{display:block;color:#e9ddec;font-size:12px;margin-top:7px}
.dl-video-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.dl-video-action,.dl-video-fullscreen{appearance:none;display:grid;place-items:center;flex-shrink:0;border:1px solid #ffffff69;border-radius:50%;width:45px;height:45px;background:#1523407d;color:white;font-size:22px;backdrop-filter:blur(12px);transition:background .2s}
.dl-video-action:hover,.dl-video-fullscreen:hover{background:#fff2}
.dl-video-primary{width:62px;height:62px;border:0;background:linear-gradient(125deg,#f8e2c5,#d7b9e3);color:#302848;border-radius:50%;display:grid;place-items:center;font-size:24px;box-shadow:0 10px 38px #03051b55}
.dl-video-primary:hover{filter:brightness(1.08)}
.dl-video-frame:fullscreen,.dl-video-frame.is-video-fullscreen{height:100dvh;max-height:none;width:100vw;aspect-ratio:auto;border-radius:0;border:0;background:#080b1b}
.dl-video-frame.is-video-fullscreen{position:fixed;inset:0;z-index:500}
body.dl-video-fullscreen-lock{overflow:hidden!important}
.dl-video-frame:fullscreen .dl-video-top,.dl-video-frame.is-video-fullscreen .dl-video-top{top:max(26px,env(safe-area-inset-top))}
.dl-video-frame:fullscreen .dl-video-bottom,.dl-video-frame.is-video-fullscreen .dl-video-bottom{bottom:max(38px,env(safe-area-inset-bottom))}
@media(max-width:780px){.dl-video-cinema{margin-top:32px}.dl-video-frame{min-height:420px;aspect-ratio:4/5;border-radius:25px}.dl-video-frame video{object-position:53% center}.dl-video-top,.dl-video-bottom{left:18px;right:18px}.dl-video-top{top:19px}.dl-video-bottom{bottom:23px}.dl-video-track{max-width:52%}.dl-video-track strong{font-size:clamp(25px,6vw,34px)}.dl-video-track small{font-size:11px}.dl-video-action,.dl-video-fullscreen{width:39px;height:39px;font-size:20px}.dl-video-primary{width:50px;height:50px;font-size:22px}.dl-video-actions{gap:7px}.dl-video-caption{font-size:9px;letter-spacing:.09em}}
@media(max-width:390px){.dl-video-frame{min-height:400px}.dl-video-track{max-width:47%}.dl-video-track strong{font-size:24px}.dl-video-track small{font-size:10px}.dl-video-action,.dl-video-fullscreen{width:34px;height:34px;font-size:17px}.dl-video-primary{width:45px;height:45px}.dl-video-actions{gap:5px}}
@media(prefers-reduced-motion:reduce){.dl-video-frame video{display:none}.dl-video-frame{background:#1e2446 url('../assets/backgrounds/goodnight-end.webp') center/cover no-repeat}}

/* GB-DREAMSCAPE-CINEMA-08: visual world moods use the same original cinematic video. */
.dreamscape-section .dl-video-cinema{margin:28px auto 26px;width:min(1200px,100%)}
.dreamscape-section .dl-video-cinema[hidden]{display:none!important}
.dreamscape-section .dl-video-frame{transition:background .65s ease,border-color .65s ease;outline-offset:4px}
.dreamscape-section .dl-video-frame .dl-dreamscape-tint{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.46;mix-blend-mode:screen;transition:background .7s ease,opacity .7s ease}
.dreamscape-section .dl-video-frame[data-dreamscape="cloud"] .dl-dreamscape-tint{background:linear-gradient(125deg,rgba(171,152,228,.47),rgba(104,129,186,.15))}
.dreamscape-section .dl-video-frame[data-dreamscape="ocean"] .dl-dreamscape-tint{background:linear-gradient(130deg,rgba(18,106,178,.5),rgba(23,60,123,.38))}
.dreamscape-section .dl-video-frame[data-dreamscape="meadow"] .dl-dreamscape-tint{background:linear-gradient(145deg,rgba(95,129,125,.42),rgba(116,97,177,.3))}
.dreamscape-section .dl-video-frame[data-dreamscape="woods"] .dl-dreamscape-tint{background:linear-gradient(150deg,rgba(23,91,82,.52),rgba(22,57,69,.32))}
.dreamscape-section .dl-video-frame[data-dreamscape="ocean"] video{filter:brightness(.75) saturate(.87) hue-rotate(15deg)}
.dreamscape-section .dl-video-frame[data-dreamscape="meadow"] video{filter:brightness(.86) saturate(.88) hue-rotate(-8deg)}
.dreamscape-section .dl-video-frame[data-dreamscape="woods"] video{filter:brightness(.73) saturate(.75) hue-rotate(31deg)}
.dreamscape-section .dl-video-frame[data-dreamscape="cloud"] video{filter:brightness(.88) saturate(.83)}
.dreamscape-section .dl-video-frame:fullscreen,.dreamscape-section .dl-video-frame.is-video-fullscreen{max-height:none}
@media(max-width:780px){.dreamscape-section .dl-video-cinema{margin-top:24px}}

/* GB-DREAMSCAPE-CINEMA-08: cinema sits above the cards as a permanent part of Dreamscapes. */
.dreamscape-section .dreamscape-intro + .dl-video-cinema{display:block}
@media(max-width:780px){.dreamscape-section .dl-video-cinema{margin:22px auto 18px}}


/* V95.3 — Dreamscape fullscreen chrome fades away after a pause. */
.dl-video-frame:fullscreen .dl-video-top,
.dl-video-frame:fullscreen .dl-video-bottom,
.dl-video-frame.is-video-fullscreen .dl-video-top,
.dl-video-frame.is-video-fullscreen .dl-video-bottom{transition:opacity .35s ease,transform .35s ease}
.dl-video-frame:fullscreen.is-ui-hidden .dl-video-top,
.dl-video-frame:fullscreen.is-ui-hidden .dl-video-bottom,
.dl-video-frame.is-video-fullscreen.is-ui-hidden .dl-video-top,
.dl-video-frame.is-video-fullscreen.is-ui-hidden .dl-video-bottom{opacity:0;pointer-events:none}
.dl-video-frame:fullscreen.is-ui-hidden .dl-video-top,
.dl-video-frame.is-video-fullscreen.is-ui-hidden .dl-video-top{transform:translateY(-10px)}
.dl-video-frame:fullscreen.is-ui-hidden .dl-video-bottom,
.dl-video-frame.is-video-fullscreen.is-ui-hidden .dl-video-bottom{transform:translateY(10px)}
