/* A warmer, everyday streaming interface. */
:root{--serif:'DM Sans',Arial,sans-serif;--muted:#b3b3aa}
body{-webkit-font-smoothing:antialiased}button,input,select{font-family:var(--sans)}
h1,h2,h3{letter-spacing:-.035em;line-height:1.15}p{line-height:1.65}
.detail-text h1{font-weight:600;font-size:34px}.detail-content p{font-size:15px}.film-credits{font-size:13px}.genre-line{font-size:13px;letter-spacing:0}.movie h3{font-weight:600;letter-spacing:-.02em}.brand{letter-spacing:2px}
#player{width:min(1280px,96vw);max-height:96vh;padding:0;border:1px solid #414139;border-radius:16px;background:#141512;box-shadow:0 32px 120px #000b;overflow:auto;color:#f2f0e9}
#player::backdrop{background:#080a09e8;backdrop-filter:blur(14px)}
.cinema-header{display:flex;align-items:center;gap:16px;padding:18px 26px;background:#1b1c18}.cinema-title{min-width:0}.cinema-title span{font-size:12px;color:#b5b7ab}.cinema-title h2{font:600 20px/1.3 var(--sans);letter-spacing:-.4px;margin:3px 0 0}.cinema-year{margin-left:auto;color:#b5b7ab;font-size:13px}
#player .cinema-stage{position:relative;background:#000;display:flex;align-items:center;justify-content:center;min-height:200px}
#player video{width:100%;height:min(61vh,650px);max-height:none;object-fit:contain;background:#000}
#player .player-status{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:1px solid #ffffff20;background:#171914e8;border-radius:12px;padding:17px 24px;font:500 14px/1.5 var(--sans);color:#f2f0e9;text-align:center;max-width:85%;backdrop-filter:blur(14px)}
#player [hidden]{display:none!important}.center-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;background:#e3cca1ed;color:#202119;border:1px solid #fff4;border-radius:50%;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 40px #0008}.center-play svg{width:30px;height:30px;margin-left:4px}
.cinema-controls{padding:16px 28px 20px;background:linear-gradient(#1a1b17,#171814)}.timeline input,#film-volume{padding:0;height:5px;border:0;border-radius:5px;accent-color:#dfc393;cursor:pointer}.timeline input{width:100%;display:block;appearance:none;background:linear-gradient(to right,#dfc393 var(--played,0%),#ffffff26 var(--played,0%))}.timeline input::-webkit-slider-thumb{appearance:none;width:13px;height:13px;border-radius:50%;background:#f0d9ae;box-shadow:0 0 0 3px #dfc39318}.timeline-labels{display:flex;justify-content:space-between;font:12px/1.4 var(--sans);font-variant-numeric:tabular-nums;color:#babcaf;margin-top:10px}.timeline-labels span:first-child{color:#f1eadc}
.control-row{display:flex;align-items:center;gap:13px;margin-top:8px}.cinema-button{border:0;background:transparent;color:#e5e7dc;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;cursor:pointer;flex-shrink:0;padding:8px}.cinema-button:hover,.playback-options summary:hover{background:#ffffff10;color:#f5d49b}.cinema-button svg,.playback-options svg{width:22px;height:22px}.main-play{background:#e0c595;color:#24261d}.main-play:hover{background:#f2d9ae;color:#141512}.skip{position:relative;font-size:30px;line-height:1}.skip small{position:absolute;font:600 9px var(--sans);top:18px;left:15px}.volume-group{display:flex;gap:7px;align-items:center;margin-left:7px}#film-volume{width:80px}.control-spacer{flex:1}.playback-options{position:relative}.playback-options summary{list-style:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;cursor:pointer}.playback-options summary::-webkit-details-marker{display:none}.playback-options>div{position:absolute;bottom:52px;right:0;width:245px;padding:20px;background:#24261f;border:1px solid #535547;border-radius:12px;box-shadow:0 12px 40px #0008;z-index:4}.playback-options label{font-size:14px;font-weight:600}.playback-options select{margin-top:12px;width:100%;font-size:13px}.playback-options p{font-size:12px;color:#bbbeb1;margin:12px 0 0}
#player:fullscreen{width:100%;height:100%;max-height:none;border:0;border-radius:0;display:flex;flex-direction:column}#player:fullscreen .cinema-stage{flex:1;min-height:0}#player:fullscreen video{height:100%;position:absolute}#player:fullscreen .cinema-controls{flex-shrink:0}
@media(max-width:650px){#player{width:100%;max-width:100%;border-radius:0}.cinema-header{padding:14px;gap:8px}.cinema-title h2{font-size:17px}.cinema-controls{padding:16px}.control-row{gap:5px}#film-volume{width:55px}.volume-group{gap:0;margin:0}.cinema-year{display:none}#player video{height:48vh}.detail-text h1{font-size:27px}}
.editorial-head h1{font-weight:600;font-size:clamp(32px,4vw,50px);letter-spacing:-.045em}.section-head h2{font-size:25px;font-weight:600}.eyebrow{letter-spacing:.06em;font-weight:500}.skip svg{width:25px;height:25px}.skip small{top:16px;left:15px}.editorial-head p{font-size:15px}.feature h2{font-weight:600}
.feature,.movie.poster-card .art,.resume-card .art{border-radius:9px}.primary,.secondary{border-radius:7px}.eyebrow{text-transform:none;font-size:12px}.avatar{border-radius:50%}

.timeline input{background:linear-gradient(to right,#dfc393 0%,#dfc393 var(--played,0%),transparent var(--played,0%)),var(--buffered-track,linear-gradient(transparent,transparent)),var(--available-track,linear-gradient(transparent,transparent)),#ffffff26}
.buffer-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;color:#b9bbc0;margin-top:10px}.buffer-legend span:first-child{color:#dfc393}.buffer-legend span:nth-child(2){color:#c4c8ce}.buffer-legend span:nth-child(3){color:#969ba5}
.early-player .timeline{margin:18px 0}.early-player .timeline input{height:7px}.early-player .timeline-labels{gap:12px;flex-wrap:wrap}

.timeline{position:relative}.seek-preview{position:absolute;bottom:40px;transform:translateX(-50%);width:192px;background:#17191d;border:1px solid #bda26a;border-radius:8px;padding:4px;pointer-events:none;box-shadow:0 5px 25px #0009;text-align:center;z-index:10}.seek-preview[hidden]{display:none}.seek-preview img{width:100%;height:108px;object-fit:contain;border-radius:5px}.seek-preview span{display:block;font-size:13px;padding:4px;color:#fff}

/* One optical size and stroke across transport controls, including pop-out. */
.cinema-controls .cinema-button svg,.cinema-controls .playback-options summary svg{width:24px;height:24px;display:block;stroke-width:1.7;overflow:visible}
.cinema-controls .skip svg{width:24px;height:24px}
.cinema-controls .cinema-button,.cinema-controls .playback-options summary{line-height:1;align-items:center;justify-items:center}

/* Keep every control on the same centre line, including native range inputs. */
.cinema-controls .control-row{align-items:center}
.cinema-controls .volume-group{align-items:center;height:40px}
.cinema-controls #film-volume{margin:0;align-self:center}
.cinema-controls .cinema-button,.cinema-controls .playback-options summary{box-sizing:border-box;width:40px;height:40px;padding:8px;display:grid;place-items:center;margin-block:0}
.cinema-controls .skip svg{overflow:hidden}
.cinema-controls .skip svg text{stroke:none;letter-spacing:0}
/* In-player season and episode browser. */
#player .player-episode-panel[hidden]{display:none!important}
#player .player-episode-panel{position:absolute;z-index:35;right:3%;bottom:150px;width:min(760px,94%);max-height:min(70vh,700px);display:flex;flex-direction:column;background:#20211f;color:#f5f4ef;border:1px solid #ffffff24;border-radius:12px;box-shadow:0 20px 70px #000b;overflow:hidden;text-align:left}
#player .player-episode-panel>header{display:flex;align-items:center;gap:14px;padding:15px 18px;border-bottom:1px solid #ffffff18;flex:none}
#player .player-episode-panel header label{flex:1;min-width:0}
#player .player-episode-season-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#player .player-episode-panel select{font-family:inherit;line-height:1.25;font-size:24px;font-weight:600;color:inherit;background:#20211f;border:0;max-width:100%;padding:8px;cursor:pointer}
#player .player-episode-list{overflow:auto;overscroll-behavior:contain;padding:8px;min-height:0}
#player .player-episode{display:grid;grid-template-columns:30px minmax(0,1fr) 110px;gap:16px;align-items:center;width:100%;text-align:left;padding:22px 18px;color:inherit;background:transparent;border:2px solid transparent;border-radius:6px;cursor:pointer}
#player .player-episode:hover{background:#ffffff06}
#player .player-episode:focus-visible{outline:2px solid #e0be7a;outline-offset:-3px}
#player .player-episode.is-current{background:#111210;border-color:#d9c396}
#player .player-episode strong{font-size:18px;line-height:1.4}
#player .player-episode-number{font-size:20px;color:#c5c5bf}
#player .player-episode-progress{height:3px;background:#ffffff35;overflow:hidden;border-radius:4px}
#player .player-episode-progress i{display:block;height:100%;background:#dfbc78}
#player .player-episode-details{display:none;grid-column:1/-1;grid-template-columns:minmax(150px,40%) minmax(0,1fr);gap:22px;align-items:start;padding-top:4px}
#player .player-episode.is-expanded .player-episode-details{display:grid}
#player .player-episode-art{position:relative;display:grid;place-items:center;aspect-ratio:16/9;background:#121411;border-radius:5px;overflow:hidden}
#player .player-episode-art img{position:absolute;width:100%;height:100%;object-fit:cover;filter:brightness(.55)}
#player .player-episode-art>span{position:relative;font-size:16px;font-weight:600;padding:8px;text-align:center;text-shadow:0 2px 8px #000}
#player .player-episode-copy{font-size:16px;line-height:1.5;max-height:220px;overflow:auto}
#player .player-episode-copy>span{display:block}
#player .player-episode-copy small{display:block;margin-top:12px;font-size:13px;color:#b8bab3}
#player .player-episode-no-summary{color:#aaa;font-style:italic}
#player .player-episode[aria-disabled=true]{color:#a3a49e;cursor:default}
#player.episodes-open #up-next{visibility:hidden}
@media(max-width:650px){#player .player-episode-panel{right:10px;width:calc(100% - 20px);bottom:130px;max-height:calc(100dvh - 170px)}#player .player-episode-panel>header{padding:8px;gap:6px}#player .player-episode-panel select{font-size:20px}#player .player-episode{grid-template-columns:22px minmax(0,1fr) 55px;gap:9px;padding:16px 9px}#player .player-episode strong{font-size:15px}#player .player-episode-details{grid-template-columns:1fr;gap:12px}#player .player-episode-art{max-width:280px;width:100%}#player .player-episode-copy{font-size:14px;max-height:none}}
@media(max-height:500px){#player .player-episode-panel{bottom:100px;max-height:calc(100dvh - 120px)}#player .player-episode-details{grid-template-columns:35% minmax(0,1fr)}#player .player-episode-panel>header{padding:4px 12px}}

#player .player-episode{display:block;cursor:default}
#player .player-episode-toggle{display:grid;grid-template-columns:30px minmax(0,1fr) 110px;align-items:center;gap:16px;width:100%;text-align:left;border:0;padding:0;background:none;color:inherit;cursor:pointer}
#player .player-episode-toggle:focus-visible,#player .player-episode-art:focus-visible,#player .player-season:focus-visible{outline:2px solid #dfbc78;outline-offset:5px}
#player .player-episode-details{margin-top:18px}
#player .player-episode-art{border:0;width:100%;color:inherit;cursor:pointer}
#player .player-episode-art:disabled{cursor:default}
#player .player-episode-panel header h2{flex:1;margin:0;font-size:24px;line-height:1.3}
#player .player-season{display:flex;align-items:center;gap:18px;background:none;border:2px solid transparent;border-radius:5px;color:inherit;font-size:22px;font-weight:600;text-align:left;width:100%;padding:22px 18px;cursor:pointer}
#player .player-season>span{width:25px;flex:none}
#player .player-season[aria-current=true]{border-color:#d9c396;background:#111210}
#player .player-season:hover{background:#ffffff08}
@media(max-width:650px){#player .player-episode-toggle{grid-template-columns:22px minmax(0,1fr) 55px;gap:9px}#player .player-episode-panel header h2{font-size:20px}#player .player-season{font-size:18px}}

/* Geometry is anchored to the actual toolbar button by placePanel(). */
#player .player-episode-panel{bottom:76px;max-height:calc(100dvh - 100px)}
#player .player-episode,#player .player-episode-toggle,#player .player-season{box-sizing:border-box;max-width:100%;min-width:0}
#player .player-episode-list{overflow-x:hidden}
#player .player-episode-details>*{min-width:0}
#player .player-episode-copy{overflow-wrap:anywhere}

/* Compact proportions matching the full-player reference. */
#player .player-episode-panel{width:min(600px,31vw);right:1%;border-radius:5px}
#player .player-episode-panel>header{padding:8px 12px;gap:8px}
#player .player-episode-panel header h2{font-size:18px}
#player .player-episode{padding:14px 10px}
#player .player-episode-toggle{grid-template-columns:22px minmax(0,1fr) 70px;gap:10px}
#player .player-episode strong{font-size:14px}
#player .player-episode-number{font-size:15px}
#player .player-episode-details{grid-template-columns:34% minmax(0,1fr);gap:14px;margin-top:12px;padding-top:0}
#player .player-episode-copy{font-size:13px;line-height:1.4;max-height:140px}
#player .player-episode-copy small{font-size:11px;margin-top:7px}
#player .player-episode-art>span{font-size:12px;padding:5px}
#player .player-season{font-size:17px;padding:14px 12px}
@media(max-width:1000px){#player .player-episode-panel{width:min(460px,48vw)}}
@media(max-width:650px){#player .player-episode-panel{width:calc(100% - 20px);right:10px}#player .player-episode-details{grid-template-columns:32% minmax(0,1fr)}#player .player-episode-toggle{grid-template-columns:20px minmax(0,1fr) 50px}}
