/* VESPER / edge-cut frames, open icons, a continuous timeline. */
@font-face{font-family:'Vesper Display';src:url('/assets/vesper-display.otf') format('opentype');font-weight:500;font-display:swap}
.brand>span,.footer-brand,.viewer-brand,.eyebrow,.screening-label,.ribbon-heading{font-family:'Vesper Display','DM Sans',sans-serif;font-weight:500;letter-spacing:1.4px}
.brand>span{font-size:25px;letter-spacing:3px}.viewer-brand{font-size:10px;letter-spacing:1.2px}
.intro h1,.panel-heading h2{font-family:'Vesper Display','DM Sans',sans-serif;text-transform:uppercase;letter-spacing:-.5px;font-weight:500}.intro h1{font-size:clamp(31px,4.1vw,57px);line-height:1.15}.panel-heading h2{font-size:20px;line-height:1.25}
#vesper-player .vesper-player{border-radius:24px 9px 24px 9px;border-color:#9bcddd3d}
#vesper-player .film-shell{border-radius:23px 8px 0 0}
#vesper-player .control-desk{display:flex;flex-direction:column;gap:2px;inset:auto 14px 14px;padding:7px 12px 9px;border-radius:22px 8px 22px 8px;border:1px solid var(--rail-edge);background:var(--rail-fallback);box-shadow:inset 0 1px 0 #ecfaff18,0 12px 35px #020d164d;isolation:isolate}
@supports(backdrop-filter:blur(1px)){#vesper-player .control-desk{background:linear-gradient(130deg,#071b2c38,#102d3b2e),var(--rail-surface);backdrop-filter:blur(18px) saturate(120%)}}
#vesper-player .rail-timeline{order:0;display:flex;align-items:center;gap:12px;width:100%;height:30px;min-width:0}
#vesper-player .control-desk .time-readout{display:flex;min-width:34px;margin:0;padding:0;background:none;color:var(--rail-text);font-size:11px;font-weight:500;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:.3px}
#vesper-player .duration-time{justify-content:flex-end}
#vesper-player .control-desk .time-slider{display:flex;align-items:center;flex:1;width:auto;height:30px;min-height:30px;min-width:30px;margin:0;background:none}
#vesper-player .rail-timeline .slider-track{height:3px;border-radius:3px;background:#deedf333}
#vesper-player .rail-timeline .slider-thumb{width:9px;height:9px;border:0;box-shadow:0 0 0 3px #bbddff16}
#vesper-player .rail-timeline .timeline-ticks{background:none;opacity:.35}
#vesper-player .rail-timeline .range-band{top:8px;height:14px}
#vesper-player .workspace:is([data-dock=bottom],[data-dock=top]) .range-band[data-compact=true]:before{content:'A–B';left:50%;width:30px;translate:-50% 0}
#vesper-player .workspace:is([data-dock=bottom],[data-dock=top]) .range-band[data-compact=true]:after{display:none}
#vesper-player .transport{order:1;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0;width:100%;min-width:0;height:auto;flex:none}
#vesper-player .rail-primary,#vesper-player .rail-actions{display:flex;align-items:center;gap:3px;flex:none}
#vesper-player .rail-actions{margin-left:auto;gap:2px}
#vesper-player :is(.control-desk,.playback-tools) .control-button{--button-tint:193 211 227;position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;min-width:44px;height:44px;margin:0;padding:0;border:0;border-radius:12px;background:transparent;box-shadow:none;color:color-mix(in srgb,rgb(var(--button-tint)),white 12%);transition:background .16s,color .16s,box-shadow .16s,translate .12s}
#vesper-player :is(.control-desk,.playback-tools) .control-button:is(:hover,:focus-visible){background:rgb(var(--button-tint)/.17);box-shadow:inset 0 0 0 1px rgb(var(--button-tint)/.24);color:color-mix(in srgb,rgb(var(--button-tint)),white 35%)}
#vesper-player :is(.control-desk,.playback-tools) .control-button:active:not(.dock-handle){translate:0 1px;background:rgb(var(--button-tint)/.25)}
#vesper-player .control-desk .control-button .icon{width:23px;height:23px;filter:drop-shadow(0 1px 1px #06182480)}
#vesper-player .control-desk .primary-play{width:48px;min-width:48px;height:48px;margin-inline:2px 5px;border-radius:50%;background:var(--accent);color:var(--ink);box-shadow:inset 0 1px 0 #fff5,0 3px 14px #99caff1c}
#vesper-player .control-desk .primary-play:is(:hover,:focus-visible){background:color-mix(in srgb,var(--accent),white 14%);color:var(--ink);box-shadow:0 0 0 5px #9bcbff14}
#vesper-player .control-desk .primary-play .icon{width:24px;height:24px}
#vesper-player .control-desk media-mute-button{--button-tint:137 220 206}
#vesper-player .control-desk .transcript-shortcut{--button-tint:198 177 241}
#vesper-player :is(.control-desk,.playback-tools) [data-action=bookmark]{--button-tint:237 167 178}
#vesper-player .control-desk .repeat-shortcut{--button-tint:158 220 185}
#vesper-player :is(.control-desk,.playback-tools) :is(.captions-button,.extra-captions){--button-tint:161 192 231}
#vesper-player .control-desk .pip-button{--button-tint:155 207 218}
#vesper-player .control-desk .pin-button{--button-tint:229 190 133}
#vesper-player .control-desk [data-action=tools]{--button-tint:184 203 223}
#vesper-player .control-desk .fullscreen-button{--button-tint:209 224 236}
#vesper-player .control-desk .dock-handle{--button-tint:161 185 199;width:32px;min-width:32px;margin-right:3px}
#vesper-player .control-desk .dock-handle .icon{width:18px;opacity:.65}
#vesper-player .control-desk .pin-button[aria-pressed=true]{background:#d7af7826;color:#f4ce97;box-shadow:inset 0 0 0 1px #d7af7859}
#vesper-player .control-desk .pin-button[aria-pressed=true]:after{background:#edc78b;bottom:3px;width:3px;height:3px}
#vesper-player .workspace[data-loop-enabled=true] .repeat-shortcut{background:#a5c6ae24;color:#b9ecd0;box-shadow:inset 0 0 0 1px #a5c6ae59}
#vesper-player .volume-controls{display:flex;align-items:center;gap:3px;margin:0}
#vesper-player .volume-slider{display:block;width:54px;margin:0 7px 0 0;height:32px}
#vesper-player .volume-slider .slider-track{height:3px;background:#dfedf32b}
#vesper-player .rail-options{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:16px;flex:none;margin:0;padding:0 0 0 17px;border:0;border-left:1px solid #def2ff24}
#vesper-player .rail-select{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;min-height:44px;min-width:68px;margin:0;padding:3px 0;border:0;border-radius:6px;background:transparent;color:#f3f8fb}
#vesper-player .rail-select>span{font-family:'Vesper Display','DM Sans',sans-serif;text-transform:uppercase;display:block;color:#e1edf5;font-size:10px;line-height:1.4;letter-spacing:1px}
#vesper-player .rail-select select{display:block;appearance:auto;width:100%;max-width:80px;min-width:58px;min-height:25px;margin:0;padding:0 2px 0 0;background:transparent;border:0;border-radius:3px;color:#f4f8fc;font-size:12px;font-weight:500;line-height:1.4;letter-spacing:.2px;cursor:pointer}
#vesper-player .rail-select:hover{background:#def0ff0b}
#vesper-player .rail-select:focus-within{outline:2px solid #b9d9ff;outline-offset:4px}
#vesper-player .rail-select option{background:#18313f;color:#f4f8fc}
#vesper-player .quality-status{position:absolute;inset:auto 10px calc(100% + 8px) auto;max-width:220px;margin:0;padding:9px 13px;background:#122a38f2;border:1px solid #c5e7f62b;border-radius:12px 4px 12px 4px;color:#ecf6ff;font-size:11px}
#vesper-player .rail-chapter{display:none}
#vesper-player .workspace[data-dock=top] .control-desk{inset:14px 14px auto}
#vesper-player .workspace[data-dock=top] .film-top{top:126px}
#vesper-player .workspace[data-dock=top] .playback-tools{top:130px}
#vesper-player .playback-tools{border-radius:20px 7px 20px 7px;border-color:#accddb45;box-shadow:0 18px 55px #0006;padding:14px 18px}
#vesper-player .playback-tools .rate-button{width:auto;padding-inline:12px}
#vesper-player .playback-tools .tools-heading{padding-bottom:8px;border-color:#c7e1ee1f}
#vesper-player .playback-tools .current-chapter{font-family:'Vesper Display','DM Sans',sans-serif;font-size:10px;letter-spacing:1px;color:#b9cedc}
#vesper-player .playback-tools :is(.range-button,.repeat-toggle){border-radius:11px 4px 11px 4px;border-color:#bbd5c933;background:#d5eee009}
#vesper-player :is(.control-desk,.playback-tools) :focus-visible{outline:2px solid #b9d9ff;outline-offset:4px}
#vesper-player .workspace[data-feature-transcript=false] .transcript-shortcut,#vesper-player .workspace[data-feature-loop=false] .repeat-shortcut,#vesper-player .workspace[data-feature-speed=false] .speed-control{display:none}
@container film (max-width:1100px){#vesper-player .volume-slider{display:none}#vesper-player .control-desk .pip-button{display:none}#vesper-player .transport{gap:10px}}
@container film (max-width:880px){#vesper-player .control-desk .captions-button{display:none}#vesper-player .rail-options{gap:12px;padding-left:12px}#vesper-player .rail-select{min-width:61px}}
@container film (min-width:641px){#vesper-player .workspace:is([data-dock=bottom],[data-dock=top]) .rail-shortcut{display:inline-flex}}
@container film (max-width:640px){
 #vesper-player .control-desk{inset:auto 6px 8px;padding:5px 5px 7px;border-radius:18px 6px 18px 6px;gap:2px}
 #vesper-player .workspace[data-dock=top] .control-desk{inset:8px 6px auto}
 #vesper-player .rail-timeline{height:36px;gap:8px}
 #vesper-player .control-desk .time-slider{height:36px;min-height:36px}
 #vesper-player .control-desk .time-readout{font-size:10px;min-width:28px}
 #vesper-player .rail-timeline .range-band{top:11px}
 #vesper-player .transport{display:grid;grid-template-columns:repeat(6,minmax(44px,1fr));grid-template-rows:48px 44px;gap:0;justify-items:center;align-items:center}
 #vesper-player .rail-primary,#vesper-player .rail-actions{display:contents}
 #vesper-player .control-desk .rail-shortcut,#vesper-player .control-desk .captions-button,#vesper-player .control-desk .pip-button{display:none}
 #vesper-player .control-desk .dock-handle{grid-column:1;grid-row:1;width:44px;min-width:44px;margin:0}
 #vesper-player .control-desk .primary-play{grid-column:2;grid-row:1;width:44px;min-width:44px;height:44px;margin:0}
 #vesper-player .volume-controls{grid-column:3;grid-row:1}
 #vesper-player .pin-button{grid-column:4;grid-row:1}
 #vesper-player [data-action=tools]{grid-column:5;grid-row:1}
 #vesper-player .fullscreen-button{grid-column:6;grid-row:1}
 #vesper-player .rail-options{grid-column:1/7;grid-row:2;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:28px;width:100%;height:44px;padding:0;border:0;margin:0}
 #vesper-player .rail-select{flex-direction:row;align-items:center;gap:8px;min-height:44px;min-width:0;padding:0}
 #vesper-player .rail-select>span{font-size:9px}
 #vesper-player .rail-select select{min-height:44px;min-width:52px;width:58px;font-size:11px}
 #vesper-player .workspace[data-dock=top] .film-top{top:158px}
 #vesper-player .workspace[data-dock=top] .playback-tools{top:162px}
}
@container film (max-width:300px){#vesper-player .control-desk{left:2px;right:2px;padding-inline:0}#vesper-player .rail-timeline{padding-inline:6px}}
/* In side docking, the same groups become a compact vertical instrument. */
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .control-desk{inset:12px auto 12px 12px;width:70px;padding:7px 10px;gap:4px;display:flex;flex-direction:column;border-radius:20px 7px 20px 7px}
#vesper-player .workspace[data-dock=right] .control-desk{inset:12px 12px 12px auto}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .film-shell{min-height:520px}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .transport{display:contents}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .rail-primary{order:0;display:flex;flex-direction:column;gap:3px}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .rail-primary .dock-handle{width:44px;min-width:44px;margin:0}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .primary-play{width:44px;min-width:44px;height:44px;margin:0}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .rail-timeline{order:1;display:flex;flex:1;flex-direction:column;gap:6px;height:auto;min-height:70px}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .rail-timeline .time-slider{flex:1;justify-content:center;width:44px;height:auto;min-height:50px;min-width:0;margin:0}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .time-slider .slider-track{height:100%;width:3px}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .rail-actions{order:2;display:flex;flex-direction:column;gap:2px;margin:0}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) :is(.rail-shortcut,.duration-time,.volume-slider,.captions-button,.pip-button){display:none}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .rail-options{order:3;display:flex;flex-direction:column;gap:0;width:44px;height:auto;padding:3px 0 0;margin:0;border:0;border-top:1px solid #d9ebf426}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .rail-select{display:flex;flex-direction:column;gap:0;justify-content:center;width:44px;min-width:0;min-height:44px;padding:0}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .rail-select>span{display:none}
#vesper-player .workspace:is([data-dock=left],[data-dock=right]) .rail-select select{display:block;appearance:none;min-width:0;width:44px;min-height:44px;font-size:11px;text-align:center;padding:0}
#vesper-player .workspace[data-dock=left] .film-top{left:96px;top:14px}#vesper-player .workspace[data-dock=right] .film-top{right:96px;top:14px}
#vesper-player .workspace[data-dock=left] .playback-tools{left:92px;width:min(470px,calc(100% - 104px));top:14px}#vesper-player .workspace[data-dock=right] .playback-tools{right:92px;left:auto;width:min(470px,calc(100% - 104px));top:14px}
#vesper-player .workspace.tv-mode .control-desk .control-button{width:56px;min-width:56px;height:56px}
#vesper-player .workspace.tv-mode:is([data-dock=left],[data-dock=right]) .control-desk{width:82px}
#vesper-player .workspace.tv-mode:is([data-dock=left],[data-dock=right]) .film-shell{min-height:670px}
@container film (max-width:1000px){#vesper-player .workspace.tv-mode .rail-shortcut{display:none}}
@container film (max-width:640px){#vesper-player .workspace.tv-mode .control-desk .control-button{width:44px;min-width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){#vesper-player .control-button{transition:none}}
#vesper-player .workspace.calm .control-button{transition:none}
#vesper-player .workspace.higher-contrast .control-desk{background:#102937;backdrop-filter:none;border-color:#d3e9f4}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){#vesper-player .control-desk{background:#102937;backdrop-filter:none;border-color:#d3e9f4}}
@media(forced-colors:active){#vesper-player .control-desk{background:Canvas;color:CanvasText;backdrop-filter:none;border-color:CanvasText}#vesper-player :is(.control-desk,.playback-tools) .control-button{color:ButtonText;background:ButtonFace;box-shadow:none}#vesper-player .control-desk .pin-button[aria-pressed=true],#vesper-player .control-desk .primary-play{background:Highlight;color:HighlightText}#vesper-player .rail-select{color:CanvasText}#vesper-player .rail-select select{color:CanvasText;background:Canvas}#vesper-player .rail-timeline .slider-thumb,#vesper-player .rail-timeline media-slider-fill{background:Highlight}}
