[hidden]{display:none!important}:root{--bg:#06111F;--side:#091523;--panel:#101C2B;--panel2:#172437;--hover:#1E2D43;--text:#F4F7FB;--muted:#AAB7CA;--border:#22334A;--iborder:#36506F;--accent:#ED1B2F;--accent2:#F52C40;font-family:"Segoe UI",system-ui,sans-serif;color:var(--text);background:var(--bg);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}button,input,select{font:inherit}button{cursor:pointer;color:var(--text)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--iborder);border-radius:8px}.login{min-height:100vh;display:grid;place-items:center}.login form{width:min(430px,92vw);display:grid;gap:14px;padding:34px;background:var(--panel);border:1px solid var(--border);border-radius:18px}.loginBrand{font-size:27px;font-weight:800}.loginBrand span,.muted{color:var(--muted)}input,select{background:var(--panel2);color:var(--text);border:1px solid var(--iborder);border-radius:8px;padding:11px}.primary{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important;font-weight:700}#sidebar{position:fixed;left:0;top:0;bottom:0;width:72px;background:var(--side);border-right:1px solid var(--border);padding:12px 10px;z-index:40;overflow:hidden;transition:width .2s;box-shadow:8px 0 28px #0005}body.menuOpen #sidebar,#sidebar:hover{width:260px}.hamb{width:48px;height:48px;border:0;background:transparent;font-size:22px}.sideBrand{white-space:nowrap;margin:12px 8px 20px;opacity:0;transition:.15s}.sideBrand span{display:block;color:var(--muted);font-size:10px;letter-spacing:2px}.sideSearch,.sideLabel,#genreNav,#sortSelect{opacity:0;pointer-events:none;transition:.15s}body.menuOpen .sideBrand,body.menuOpen .sideSearch,body.menuOpen .sideLabel,body.menuOpen #genreNav,body.menuOpen #sortSelect,#sidebar:hover .sideBrand,#sidebar:hover .sideSearch,#sidebar:hover .sideLabel,#sidebar:hover #genreNav,#sidebar:hover #sortSelect{opacity:1;pointer-events:auto}.sideSearch input,#sortSelect{width:238px;margin-bottom:10px}.nav,.genre{display:flex;width:238px;gap:16px;align-items:center;border:0;background:transparent;color:var(--muted);padding:12px 15px;border-radius:9px;text-align:left;white-space:nowrap}.nav span{opacity:0}body.menuOpen .nav span,#sidebar:hover .nav span{opacity:1}.nav:hover,.nav.active,.genre:hover{background:var(--hover);color:var(--text)}.nav.active{box-shadow:inset 3px 0 var(--accent)}.sideLabel{font-size:10px;color:var(--muted);letter-spacing:1.5px;margin:14px 12px 5px}#genreNav{max-height:180px;overflow:auto}header{height:68px;position:fixed;top:0;left:72px;right:0;z-index:30;display:flex;align-items:center;padding:10px 34px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px)}.brand{font-size:20px;font-weight:800}.spacer{flex:1}.iconBtn,#mobileMenu{border:1px solid var(--border);background:var(--panel);border-radius:9px;padding:8px 11px}#mobileMenu{display:none}.userWrap{position:relative}.userButton{display:flex;align-items:center;gap:9px;border:1px solid var(--border);background:var(--panel);border-radius:10px;padding:6px 10px}.avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--accent);overflow:hidden;font-weight:800}.avatar img{width:100%;height:100%;object-fit:cover}.userMenu{position:absolute;right:0;top:48px;width:170px;padding:7px;background:var(--panel);border:1px solid var(--border);border-radius:10px}.userMenu button{display:block;width:100%;border:0;background:transparent;padding:10px;text-align:left}.userMenu button:hover{background:var(--hover)}main{margin-left:72px;padding:82px 34px 50px}.hero{height:380px;border-radius:18px;overflow:hidden;background-size:cover;background-position:center;border:1px solid var(--border)}.heroShade{height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:48px;background:linear-gradient(90deg,#000d,#0006 60%,transparent)}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:var(--muted)}h1{font-size:46px;margin:7px 0}.hero p,.detailCopy p{max-width:720px;color:#e4e8ef}.heroActions{display:flex;gap:10px;margin-top:18px}.heroActions button,.back{border:1px solid var(--border);background:#101c2bd9;border-radius:8px;padding:10px 17px}.heroStatus,.network{font-size:12px;color:var(--muted);margin-top:14px}.rowSection{margin:30px 0}.sectionHead{display:flex;align-items:center;justify-content:space-between}.sectionHead h2{font-size:22px}.mediaRow,.castRow{display:grid;grid-auto-flow:column;grid-auto-columns:175px;gap:15px;overflow-x:auto;padding:3px 3px 15px}.card{border:0;background:transparent;text-align:left;padding:0;min-width:0}.poster{aspect-ratio:2/3;border-radius:11px;background:var(--panel);overflow:hidden;border:1px solid var(--border);position:relative}.poster img{width:100%;height:100%;object-fit:cover}.card b,.card small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:8px 2px 0}.card small{color:var(--muted);margin-top:3px}.progress,.bar{height:4px;background:#0009}.progress{position:absolute;bottom:0;left:0;right:0}.progress i,.bar i{display:block;height:100%;background:var(--accent)}.surface{position:fixed;inset:0;z-index:60;background:var(--bg);overflow:auto;padding:24px 38px 60px}.back{position:sticky;top:0;z-index:4}.detailHero{min-height:440px;margin-top:10px;border-radius:18px;background-size:cover;background-position:center;display:flex;align-items:end;overflow:hidden}.detailCopy{width:100%;padding:55px;background:linear-gradient(90deg,#000e,#0009 60%,transparent)}.detailCopy h1{margin-bottom:5px}.meta{color:var(--muted)}#episodeSection,#castSection{margin-top:30px}.episodes{display:grid;gap:10px}.episode{display:grid;grid-template-columns:260px 1fr;gap:18px;text-align:left;border:1px solid var(--border);background:var(--panel);border-radius:12px;padding:10px}.episode img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px;background:var(--panel2)}.episode small{display:block;color:var(--muted);margin:4px 0}.episode p{color:var(--muted);margin:6px 0}.castRow{grid-auto-columns:125px}.castCard{border:0;background:transparent;text-align:center}.personFallback{aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:var(--panel2);border:1px solid var(--border);font-size:32px;margin-bottom:8px}.personFallback.huge{width:220px;font-size:72px}.personPage{display:grid;grid-template-columns:240px 1fr;gap:35px;margin-top:50px}.modal{position:fixed;inset:0;z-index:100;background:#000c;display:grid;place-items:center;padding:20px}.modalCard,.trailerCard,.playerCard{position:relative;width:min(900px,95vw);background:var(--panel);border:1px solid var(--border);border-radius:15px;padding:22px}.modalCard{width:min(520px,95vw)}.modalHead{display:flex;justify-content:space-between;align-items:center}.trailerCard,.playerCard{width:min(1200px,96vw);padding:0;overflow:hidden}.trailerCard iframe,.playerCard video{display:block;width:100%;aspect-ratio:16/9;border:0;background:#000}.close{position:absolute;right:12px;top:12px;z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:#000b;font-size:24px}.settingGroup{margin-top:24px}.profileEdit{display:flex;gap:16px;align-items:center;margin-top:12px}.avatar.large{width:74px;height:74px}.profileEdit input{max-width:280px}.profileEdit button{margin-top:8px;background:var(--panel2);border:1px solid var(--border);border-radius:7px;padding:8px}.empty{padding:25px;color:var(--muted);border:1px dashed var(--border);border-radius:10px}
@media(max-width:800px){#sidebar{transform:translateX(-100%);width:260px}body.menuOpen #sidebar{transform:none}#sidebar .sideBrand,#sidebar .sideSearch,#sidebar .sideLabel,#sidebar #genreNav,#sidebar #sortSelect,#sidebar .nav span{opacity:1;pointer-events:auto}header{left:0;padding:10px 16px}#mobileMenu{display:block}.brand{display:none}main{margin-left:0;padding:80px 15px 40px}.hero{height:300px}.heroShade{padding:25px}h1{font-size:34px}.mediaRow{grid-auto-columns:145px}.surface{padding:15px}.detailCopy{padding:28px}.episode{grid-template-columns:130px 1fr}.episode p{display:none}.personPage{grid-template-columns:1fr}.personFallback.huge{width:140px}}
/* v0.1.7 Big Picture parity/responsive pass */
#menuScrim{display:none;position:fixed;inset:0;background:#0008;z-index:35}.subtle{border:1px solid var(--border);background:var(--panel2);border-radius:8px;padding:8px 12px}.playerMessage{padding:18px 22px;background:var(--panel);color:var(--muted);border-top:1px solid var(--border)}
@media(min-width:801px){main{padding-top:74px}.hero{position:sticky;top:78px;z-index:12;box-shadow:0 12px 30px color-mix(in srgb,var(--bg) 75%,transparent)}#content{position:relative;z-index:13;background:linear-gradient(180deg,transparent 0,var(--bg) 34px);padding-top:1px}.card{transition:transform .15s,filter .15s}.card:hover{transform:translateY(-4px);filter:brightness(1.08)}}
@media(max-width:800px){body.menuOpen{overflow:hidden}body.menuOpen #menuScrim{display:block}#sidebar{overflow-y:auto;overscroll-behavior:contain;max-height:100dvh;padding-bottom:30px}#genreNav{max-height:none;overflow:visible}.modal{align-items:start;overflow:hidden;padding:10px}.modalCard{margin-top:3dvh;max-height:94dvh;overflow-y:auto;overscroll-behavior:contain;padding:18px}.profileEdit{align-items:flex-start;flex-direction:column}.profileEdit>div{width:100%}.profileEdit input{display:block;width:100%;max-width:none}.settingGroup{margin-top:18px}.modalCard label{display:grid;gap:8px}.modalCard select{width:100%}}
.hero{position:relative}.heroTrailerHost{position:absolute;inset:0;z-index:0;pointer-events:none}.heroTrailerHost iframe{width:100%;height:100%;border:0}.heroShade{position:relative;z-index:1;pointer-events:none}.heroShade button{pointer-events:auto}
/* v0.1.9 parity corrections */
#collectionNav{opacity:0;pointer-events:none;max-height:150px;overflow:auto}body.menuOpen #collectionNav,#sidebar:hover #collectionNav{opacity:1;pointer-events:auto}
.castPhoto{width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;border:1px solid var(--border);margin-bottom:8px}.castCard small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.personHeroPhoto{width:220px;aspect-ratio:1;object-fit:cover;border-radius:50%;border:1px solid var(--border)}
.dvdOptions{display:flex;gap:10px;flex-wrap:wrap}.dvdOption{display:grid;gap:4px;text-align:left;background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:12px 16px}.dvdOption small{color:var(--muted)}#dvdSection{margin-top:30px}
@media(min-width:801px){main>.hero{position:sticky!important;top:78px!important;z-index:12}.heroTrailerHost{left:auto!important;right:0!important;width:min(58%,900px)!important}.heroTrailerHost:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--bg),transparent 20%);pointer-events:none}.heroTrailerHost iframe{object-fit:cover}.heroShade{width:58%;background:linear-gradient(90deg,#000e,#0009 72%,transparent)!important}.mediaRow{scroll-behavior:auto}}
@media(max-width:800px){#collectionNav{opacity:1;pointer-events:auto;max-height:none;overflow:visible}.personHeroPhoto{width:140px}.heroTrailerHost{display:none}}
/* v0.1.9 parity corrections: the sticky hero owns the foreground plane; rows travel beneath it. */
@media(min-width:801px){main>.hero{z-index:30!important;background-color:var(--bg);isolation:isolate}#content{z-index:10!important;background:var(--bg)!important}.rowSection{position:relative;z-index:1}.hero:after{content:"";position:absolute;left:0;right:0;bottom:-18px;height:18px;background:linear-gradient(var(--bg),transparent);pointer-events:none}}
.episodeTitleLine{display:flex;align-items:center;gap:10px;min-width:0}.episodeTitleLine b{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.episodeBadge{flex:0 0 auto;padding:4px 8px;border:1px solid var(--border);border-radius:6px;background:var(--panel2);font-size:11px;font-weight:700}.creditGrid{display:grid;gap:10px}.creditCard{display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center;padding:8px;border:1px solid var(--border);border-radius:9px;background:var(--panel)}.creditCard img{width:58px;height:82px;object-fit:cover;border-radius:6px}.creditCard small,.creditCard em{display:block;color:var(--muted);margin-top:4px}.creditCard em{color:var(--accent);font-size:10px;font-style:normal;font-weight:800}

/* v0.1.10 UI corrections */
header{z-index:80!important}.userWrap{position:relative;z-index:90}.userMenu{z-index:100!important}.modal{z-index:200!important}.surface{z-index:150!important}.themeRow{display:flex!important;align-items:center;gap:28px!important}.themeRow select{width:auto!important;min-width:180px}.heroShade h1{position:relative;z-index:2}.heroShade #heroText{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;max-width:760px}.creditCard{width:100%;color:var(--text);text-align:left;cursor:pointer}.creditCard:hover{background:var(--hover)}#trailerHost iframe{width:min(1100px,92vw);height:min(620px,70vh);border:0}.detailCopy p{max-height:9.2em;overflow:hidden}
/* v0.1.11 MediaShelf Web Player */
.mediaPlayer{padding:0!important;background:#000!important;display:block!important}.mediaPlayer[hidden]{display:none!important}.playerCard{width:100vw!important;height:100dvh!important;max-width:none!important;border:0!important;border-radius:0!important;background:#000!important;position:relative!important}.playerCard video{width:100%!important;height:100%!important;object-fit:contain!important;aspect-ratio:auto!important}.playerHud{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:24px;background:linear-gradient(#000a,transparent 24%,transparent 65%,#000d);opacity:1;transition:opacity .25s}.playerHud.hiddenHud{opacity:0;cursor:none}.playerTop,.hudRow{display:flex;align-items:center;gap:10px}.playerTop{justify-content:space-between}.playerTop small{display:block;color:#bbc5d2;margin-top:4px}.playerBottom{display:grid;gap:10px}.seekWrap input{width:100%;accent-color:var(--accent)}.hudButton,.trackSelect{border:1px solid #ffffff30;background:#101722dd;color:#fff;border-radius:7px;padding:8px 11px}.trackSelect{max-width:190px}.hudSpacer{flex:1}.hudRow #volumeBar{width:110px}.dvdControls{display:flex;gap:9px;align-items:center;padding-top:4px}.dvdControls>span:first-child{font-weight:800;letter-spacing:1.5px;color:var(--accent)}.seekPreview{position:absolute;z-index:4;bottom:105px;width:200px;transform:translateX(-50%);background:#050505;border:1px solid #ffffff35;border-radius:8px;overflow:hidden;pointer-events:none}.seekPreview img{width:200px;aspect-ratio:16/9;object-fit:cover;display:block}.seekPreview span{display:block;text-align:center;padding:4px;font-size:12px}.playerMessage{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:5;border:1px solid var(--border);border-radius:8px}.playerCard:fullscreen{width:100vw!important;height:100vh!important}@media(max-width:700px){.playerHud{padding:14px}.trackSelect{max-width:120px}.hudRow #volumeBar{display:none}.dvdControls .muted{display:none}.seekPreview{bottom:125px}}

.playerHud{pointer-events:none}.playerHud button,.playerHud input,.playerHud select{pointer-events:auto}.dvdMode .playerHud{background:linear-gradient(#160000d9,transparent 24%,transparent 62%,#160000ef)}.dvdMode .dvdControls{border-top:1px solid #ffffff28;padding-top:10px}.dvdMode .dvdControls>span:first-child{font-size:15px}.dvdMode #playerMode{color:#ffd9b3}

.switchFrame{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;z-index:1;pointer-events:none}
/* v0.1.18 Desktop-player parity: all surfaces inherit the active MediaShelf theme. */
.playerHud{background:linear-gradient(color-mix(in srgb,var(--bg) 82%,transparent),transparent 25%,transparent 62%,color-mix(in srgb,var(--bg) 92%,transparent))!important;color:var(--text)}
.playerTop small,#playerMode{color:var(--muted)!important}.hudButton,.trackSelect{background:color-mix(in srgb,var(--panel) 92%,transparent)!important;border-color:var(--iborder)!important;color:var(--text)!important}.hudButton:hover,.trackSelect:hover{background:var(--hover)!important;border-color:var(--accent)!important}.playerIdentity,.regularTopActions{display:flex;align-items:center;gap:10px}.playerIdentity>div{display:grid}.regularTopActions{margin-left:auto}.backHud{min-width:76px}.dvdMode .playerHud{background:linear-gradient(color-mix(in srgb,var(--accent) 16%,var(--bg) 84%),transparent 26%,transparent 60%,color-mix(in srgb,var(--accent) 18%,var(--bg) 82%))!important}.dvdMode #playerMode{color:var(--accent2)!important}.dvdMode .dvdControls{border-color:var(--iborder)!important}
.upNext{position:absolute;right:26px;bottom:118px;z-index:9;width:min(455px,calc(100vw - 32px));padding:16px;background:var(--panel);border:1px solid var(--iborder);border-radius:12px;box-shadow:0 18px 60px #0008;color:var(--text);animation:upNextIn .22s cubic-bezier(.2,.8,.2,1)}.upNextHead{display:grid;grid-template-columns:72px 1fr;align-items:center}.upNextHead>div:last-child{display:grid;gap:3px}.upNextHead small,.upNextHead span{color:var(--muted)}.upNextHead b{font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.countRing{width:62px;height:62px;border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;display:grid;place-items:center;font-size:20px;font-weight:800;animation:countSpin 1.2s linear infinite}.countRing span{color:var(--text)!important;animation:countSpinReverse 1.2s linear infinite}.upNextActions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:13px}.upNextActions button{height:42px;border:1px solid var(--iborder);border-radius:8px;background:var(--panel2);color:var(--text)}
.episodeBrowse{position:absolute;z-index:8;left:20px;right:20px;bottom:118px;background:color-mix(in srgb,var(--panel) 96%,transparent);border:1px solid var(--iborder);border-radius:12px;padding:14px;box-shadow:0 18px 60px #0008;animation:browseIn .19s ease-out}.episodeBrowseHead{display:flex;align-items:center;gap:12px;margin-bottom:12px}.episodeBrowseHead b{font-size:18px}.episodeBrowseHead select{margin-left:auto;background:var(--panel2);color:var(--text);border:1px solid var(--border);padding:7px;border-radius:7px}.playerEpisodes{display:grid;grid-auto-flow:column;grid-auto-columns:220px;gap:12px;overflow-x:auto;padding-bottom:6px;scroll-behavior:smooth}.playerEpisode{border:1px solid var(--border);border-radius:9px;background:var(--panel2);color:var(--text);text-align:left;padding:8px}.playerEpisode.current{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.playerEpisode img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:6px;background:var(--panel3)}.playerEpisode b,.playerEpisode small{display:block;margin-top:5px}.playerEpisode small{color:var(--muted)}
.episodeInfoOverlay{position:absolute;right:22px;bottom:118px;z-index:8;width:min(535px,calc(100vw - 32px));display:grid;grid-template-columns:190px 1fr;gap:14px;padding:14px;background:color-mix(in srgb,var(--panel) 96%,transparent);border:1px solid var(--iborder);border-radius:12px;box-shadow:0 18px 60px #0008;color:var(--text);animation:browseIn .19s ease-out}.episodeInfoOverlay>.episodeInfoCloseX{position:absolute;right:8px;top:8px;min-width:36px;width:36px;padding:6px;font-size:20px;line-height:1}.episodeInfoOverlay img{width:180px;aspect-ratio:16/9;object-fit:cover;border-radius:8px;background:var(--panel2)}.episodeInfoOverlay>div{display:grid;align-content:start;gap:6px;padding-right:25px}.episodeInfoOverlay small,.episodeInfoOverlay p{color:var(--muted);margin:0}
@keyframes upNextIn{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}@keyframes browseIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes countSpin{to{transform:rotate(360deg)}}@keyframes countSpinReverse{to{transform:rotate(-360deg)}}
@media(max-width:760px){.regularTopActions .trackSelect{display:none}.regularTopActions{gap:5px}.regularTopActions .hudButton{padding:7px}.upNext,.episodeBrowse,.episodeInfoOverlay{bottom:145px}.episodeInfoOverlay{grid-template-columns:1fr}.episodeInfoOverlay img{display:none}.playerEpisodes{grid-auto-columns:170px}#prevEpisode,#nextEpisode{display:none}}

.episodeInfoPlay{justify-self:start;margin-top:8px;padding:9px 14px;border-color:var(--accent)}

/* v0.1.20 Desktop v1.0.27 player HUD parity port. Big Picture/player is authoritative. */
.desktopHudPort{padding:0!important;background:none!important;justify-content:space-between!important;pointer-events:none;transition:none!important}
.desktopHudPort.hiddenHud .playerTopPanel,.desktopHudPort.hiddenHud .playerBottomPanel{opacity:0;visibility:hidden;pointer-events:none}
.playerTopPanel,.playerBottomPanel{pointer-events:auto;opacity:1;visibility:visible;transition:opacity .18s ease,visibility .18s;background:color-mix(in srgb,var(--bg) 94%,transparent);border-color:var(--iborder);color:var(--text)}
.playerTopPanel{min-height:74px;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid color-mix(in srgb,var(--iborder) 65%,transparent)}
.playerTopIdentity{display:flex;align-items:center;min-width:0}.playerTopArt{width:78px;height:44px;border-radius:7px;background:var(--panel2);margin:0 12px;overflow:hidden;background-position:center;background-size:cover}.playerNow{min-width:0;display:flex;flex-direction:column}.playerNow b{font-size:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.playerNow small{font-size:10px;color:var(--muted)!important;margin-top:2px}
.regularTopActions{display:flex;align-items:flex-end;gap:8px}.trackGroup{display:flex;flex-direction:column;gap:2px}.trackGroup>span{font-size:9px;color:var(--muted)}.trackGroup .trackSelect{width:180px;height:36px}.desktopAction{width:142px;height:40px;margin-top:13px}
.playerBottomPanel{padding:12px 24px 16px;border-top:1px solid color-mix(in srgb,var(--iborder) 55%,transparent)}.seekWrap{height:20px;display:flex;align-items:center}.seekWrap input{width:100%;accent-color:var(--accent)}.desktopTransport{display:grid;grid-template-columns:auto 1fr auto;align-items:center;margin-top:8px;min-height:40px}.transportLeft,.transportRight{display:flex;align-items:center}.playPauseButton{width:54px;height:40px;padding:0!important;font-size:18px}.transportLeft #playerClock{margin-left:14px;white-space:nowrap}.transportRight{gap:8px}.volumeLabel{color:var(--muted);margin-right:0}.transportRight #volumeBar{width:130px}.compactHud{height:36px}.compactSelect{height:36px;width:auto!important}.dvdControls{justify-self:center;display:flex;align-items:center;gap:6px}.dvdControls[hidden]{display:none!important}.dvdControls .hudButton{height:36px;min-width:38px;padding:5px 10px}.dvdControls #dvdActivate{min-width:44px}.dvdControls .dvdChapter{margin-left:5px}.episodeTransport{position:absolute;left:92px;bottom:18px;display:flex;gap:6px}.episodeTransport button[hidden]{display:none!important}.dvdMode .episodeTransport{display:none}.dvdMode .playerTopPanel,.dvdMode .playerBottomPanel{background:color-mix(in srgb,var(--bg) 94%,transparent)!important}.dvdMode #regularTopActions{display:none!important}
.seekPreview{bottom:86px;width:232px;padding:6px;background:var(--panel);border-color:var(--accent)}.seekPreview img{width:220px;height:124px;border-radius:6px}.seekPreview span{color:var(--text)}
@media(max-width:900px){.playerTopArt{display:none}.trackGroup .trackSelect{width:135px}.desktopAction{width:auto}.volumeLabel,.compactSelect{display:none}.transportRight #volumeBar{width:90px}.dvdControls .dvdChapter{display:none}}
@media(max-width:650px){.playerTopPanel{padding:10px 12px}.playerBottomPanel{padding:10px 12px 14px}.trackGroup{display:none}.desktopAction{font-size:12px}.transportRight #volumeBar{display:none}.dvdControls{gap:3px}.dvdControls .hudButton{padding:4px 7px}.episodeTransport{display:none}}

/* v0.1.25 player parity corrections */
#subtitleGroup[hidden],#audioGroup[hidden]{display:none!important}
.backHud{position:fixed!important;right:24px;bottom:18px;z-index:2600;margin:0!important}
.playerTopIdentity .backHud{order:99}
/* Native range controls reserve half a thumb at both ends. Keep the visible rail aligned to thumb centers. */
#seekBar,#volumeBar{box-sizing:border-box;margin-left:0;margin-right:0}
#seekBar::-webkit-slider-runnable-track,#volumeBar::-webkit-slider-runnable-track{width:100%}
#seekBar::-moz-range-track,#volumeBar::-moz-range-track{width:100%}
.seekPreview{transform:translateX(-50%)}
.dvdControls .hudButton:focus,.dvdControls .hudButton:active{outline:2px solid var(--accent2);outline-offset:2px;background:var(--hover)}
@media(max-width:650px){.backHud{right:12px;bottom:12px}}


/* v0.1.25 HUD overlay/geometry corrections. HUD overlays the video; it never participates in video sizing. */
.playerCard{overflow:hidden!important}
.playerCard>video,.playerCard>.switchFrame{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important}
.desktopHudPort{position:absolute!important;inset:0!important;z-index:2000!important}
.playerTopPanel{position:absolute!important;left:0;right:0;top:0;z-index:2200}
.playerBottomPanel{position:absolute!important;left:0;right:0;bottom:0;z-index:2200}
.backHud{position:static!important;order:initial!important;right:auto!important;bottom:auto!important;margin:0 12px 0 0!important;min-width:108px}
.playerTopIdentity .backHud{order:initial!important}
#fullscreenButton{margin-left:8px;min-width:112px}
.desktopTransport{grid-template-columns:minmax(0,auto) minmax(0,1fr) minmax(0,auto);column-gap:12px}
.transportLeft{min-width:190px}.transportRight{justify-self:end;min-width:0}.dvdControls{min-width:0;flex-wrap:wrap;justify-content:center}
@media(max-width:1050px){.volumeLabel{display:none}.transportRight #volumeBar{width:100px}.desktopTransport{column-gap:7px}.dvdControls{gap:3px}.dvdControls .hudButton{padding-left:7px;padding-right:7px}}
/* Range thumbs travel from true rail endpoint to endpoint. */
#seekBar,#volumeBar{appearance:none;-webkit-appearance:none;background:transparent;height:18px;padding:0!important}
#seekBar::-webkit-slider-runnable-track,#volumeBar::-webkit-slider-runnable-track{height:5px;border-radius:999px;background:color-mix(in srgb,var(--text) 78%,transparent)}
#seekBar::-webkit-slider-thumb,#volumeBar::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent);margin-top:-4.5px}
#seekBar::-moz-range-track,#volumeBar::-moz-range-track{height:5px;border-radius:999px;background:color-mix(in srgb,var(--text) 78%,transparent)}
#seekBar::-moz-range-thumb,#volumeBar::-moz-range-thumb{width:14px;height:14px;border:0;border-radius:50%;background:var(--accent)}

/* v0.1.25 player runtime corrections */
.seekPreview{z-index:3100!important;bottom:92px!important;min-height:154px!important}
.seekPreview.previewUnavailable img{visibility:hidden}.seekPreview.previewUnavailable:before{content:"Preview unavailable";position:absolute;inset:8px 8px 28px;display:grid;place-items:center;color:var(--muted);background:var(--panel2);border-radius:6px}
.desktopTransport{position:relative!important;grid-template-columns:minmax(210px,auto) minmax(120px,1fr) minmax(330px,auto)!important;gap:14px!important}
.transportLeft{justify-self:start;min-width:210px!important}.transportRight{justify-self:end!important;flex-wrap:nowrap!important}
.episodeTransport{left:50%!important;right:auto!important;bottom:18px!important;transform:translateX(-50%)!important;z-index:2300!important}
#playerClock{display:inline-block;min-width:138px;text-align:left;font-variant-numeric:tabular-nums}
@media(max-width:1100px){.desktopTransport{grid-template-columns:minmax(190px,auto) 1fr minmax(245px,auto)!important}.transportRight #volumeBar{width:82px!important}#playbackRate{display:none!important}}
@media(max-width:820px){.desktopTransport{grid-template-columns:minmax(180px,auto) 1fr minmax(150px,auto)!important}.transportRight #volumeBar,.transportRight .volumeLabel{display:none!important}.episodeTransport{display:none!important}}

/* v0.1.25 player corrections */
.playerTopArt img{width:100%;height:100%;display:block;object-fit:cover}
.desktopTransport{grid-template-columns:minmax(170px,auto) minmax(0,1fr) auto!important;width:100%}
.transportRight{justify-self:end!important;margin-left:auto!important;white-space:nowrap}
#playerClock{min-width:118px;font-variant-numeric:tabular-nums}
.seekWrap{position:relative;z-index:3200}
.seekPreview{position:fixed!important;z-index:5000!important;bottom:104px!important;display:block}
.seekPreview[hidden]{display:none!important}
.seekPreview img{display:block!important;background:var(--panel2)}
.episodeInfoOverlay #closeEpisodeInfo{width:auto;min-width:142px}.episodeInfoActions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.episodeInfoActions #closeEpisodeInfo{margin-right:auto}

/* v0.1.28 Continue Watching management */
.continueCardWrap{display:flex;flex-direction:column;flex:0 0 auto}.continueActions{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:6px}.watchManage{font-size:11px;padding:6px 8px;border-radius:7px}.watchIcon{width:34px;height:30px;padding:5px;display:grid;place-items:center}.watchIcon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.continueCardWrap .card{margin-bottom:0}.sectionHead{display:flex;align-items:center;justify-content:space-between;gap:12px}

/* v0.1.31: keep paired episode-detail actions geometrically identical. */
.episodeInfoActions{align-items:stretch}.episodeInfoActions .hudButton{width:154px!important;min-width:154px!important;height:48px!important;min-height:48px!important;padding:8px 12px!important;display:inline-flex;align-items:center;justify-content:center;text-align:center}.episodeInfoActions #closeEpisodeInfo{margin-right:auto}

/* v0.1.31 cinematic sign-in */
.login{position:relative;overflow:hidden;background:radial-gradient(circle at 70% 20%,#24334a 0,#0b1625 38%,#050b12 100%)}.login:before{content:"";position:absolute;inset:-8%;background:linear-gradient(115deg,#0009,#0002 50%,#000b),url('/mediashelf-logo.png') center/46vmin no-repeat;filter:blur(1px);opacity:.16;transform:rotate(-4deg) scale(1.08)}.login form{position:relative;z-index:1;background:#10151ddd;backdrop-filter:blur(18px);box-shadow:0 24px 80px #000b;border-color:#ffffff24}.loginBrand{display:flex;align-items:center;justify-content:center;gap:12px}.loginBrand img{max-width:180px;max-height:72px;object-fit:contain}.loginBrand span{display:none}

.dvdPicker{display:flex;gap:10px;align-items:center;max-width:560px}.dvdPicker select{flex:1;min-width:240px}.dvdPicker button{height:42px;border:1px solid var(--accent);border-radius:8px;padding:0 16px}

/* v0.1.31 episode detail action-row geometry */
.episodeInfoActions{display:grid!important;grid-template-columns:154px 154px!important;justify-content:end!important;align-items:center!important;gap:8px!important}.episodeInfoActions #closeEpisodeInfo{margin:0!important}.episodeInfoActions .hudButton{margin:0!important;align-self:center!important}
/* Server-synchronized artwork login wall; JS supplies --login-art-* URLs from the public login-art endpoint. */
.login:before{background-image:linear-gradient(115deg,#000b,#0005 50%,#000c),var(--login-art-1,none),var(--login-art-2,none),var(--login-art-3,none);background-size:cover,34% 58%,34% 58%,34% 58%;background-position:center,left 8% center,center center,right 8% center;background-repeat:no-repeat;opacity:.72;filter:saturate(.85) brightness(.65)}

/* v0.1.32: keep the episode action row off the card edge. */
.episodeInfoActions{padding-right:10px!important;box-sizing:border-box!important}
/* v0.1.63 account notifications: all colors inherit the active MediaShelf theme. */
.notifyBtn{position:relative;margin-right:8px}.notifyBadge{position:absolute;right:2px;top:2px;min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:var(--accent);color:white;font-size:10px;line-height:16px;font-weight:700}.notificationTray{position:absolute;right:92px;top:54px;width:min(390px,calc(100vw - 24px));max-height:70vh;overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:0 16px 45px #0008;z-index:1000}.notificationHead{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--panel);border-bottom:1px solid var(--border)}.notificationItem{padding:12px;border-bottom:1px solid var(--border);cursor:pointer}.notificationItem.unread{background:var(--panel2)}.notificationItem b,.notificationItem span{display:block}.notificationItem span{color:var(--muted);font-size:12px;margin-top:4px}.modal textarea{width:100%;box-sizing:border-box;background:var(--panel2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:10px;resize:vertical}.modal label{display:block;margin:12px 0}.modal label input{display:block;width:100%;box-sizing:border-box;margin-top:5px}.modalActions{display:flex;justify-content:flex-end;margin-top:12px}
@media(max-width:700px){.notificationTray{position:fixed;left:8px;right:8px;top:58px;width:auto;max-height:72vh}.notifyBtn{margin-right:2px}.notificationItem{padding:14px;min-height:44px}}

/* v0.1.63 login/menu corrections */
.login:before{background-size:cover,38% 72%,38% 72%,38% 72%;background-position:center,left -2% center,center center,right -2% center;opacity:.82}
.staySignedIn{display:flex!important;align-items:center;gap:8px;margin:8px 0 2px!important;color:#d9e2ef}.staySignedIn input{width:auto!important;margin:0!important}
.userMenu,.notificationTray{max-width:calc(100vw - 16px);box-sizing:border-box}

/* v0.1.70 MediaShelf video-store aisle login: orderly shelf geometry, centered perspective and readable glass login card. */
.login{isolation:isolate;overflow:hidden;background:#07101a}.login:before{content:"";position:absolute;inset:-3%;z-index:-2;background-color:#07101a;background-image:linear-gradient(90deg,#02070de8 0%,#07111d88 26%,#07111d55 50%,#07111d88 74%,#02070de8 100%),var(--login-art-1,none),var(--login-art-2,none),var(--login-art-3,none);background-size:cover,30% 66%,30% 58%,30% 66%;background-position:center,left 4% center,center center,right 4% center;background-repeat:no-repeat;filter:saturate(.82) brightness(.58) blur(.3px);transform:scale(1.02)}.login:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,transparent 0 28%,#02070d55 65%,#02070dcc 100%),linear-gradient(180deg,#06101a33,#02070d88)}.loginCard{backdrop-filter:blur(18px) saturate(1.1);-webkit-backdrop-filter:blur(18px) saturate(1.1);box-shadow:0 24px 70px #000b;border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}
@media(max-width:700px){.login:before{background-size:cover,52% 60%,52% 52%,52% 60%;background-position:center,left -28% center,center center,right -28% center}}


/* v0.1.71 cinematic video-store aisle. Shelf geometry is deterministic; only real
   synchronized title artwork is shuffled. */
.login{perspective:1500px;isolation:isolate;overflow:hidden;background:#030912}
.login:before{display:none!important}.login:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 48%,transparent 0 22%,#01040a38 50%,#01040ab8 100%),linear-gradient(180deg,#02071122,#02071166)}
.loginAisle{position:absolute;inset:0;z-index:-2;overflow:hidden;background:linear-gradient(180deg,#06111d 0 63%,#15171a 63% 100%)}
.loginAisle:before{content:"";position:absolute;left:0;right:0;top:0;height:24%;background:repeating-linear-gradient(90deg,#07101a 0 18%,#0b1621 18% 19%,#07101a 19% 38%);box-shadow:inset 0 -24px 55px #0008}
.loginAisle:after{content:"";position:absolute;left:22%;right:22%;bottom:-10%;height:48%;background:linear-gradient(90deg,#101419,#30363c 48%,#161b20);clip-path:polygon(32% 0,68% 0,100% 100%,0 100%);opacity:.95;box-shadow:0 -30px 80px #f2a33a10 inset;filter:saturate(.8)}
.shelfWall{position:absolute;top:2%;bottom:2%;width:51%;display:flex;flex-direction:column;gap:10px;justify-content:center;transform-style:preserve-3d;filter:saturate(.96) brightness(.92)}
.shelfLeft{left:-3.5%;transform-origin:right center;transform:perspective(1250px) rotateY(31deg)}
.shelfRight{right:-3.5%;transform-origin:left center;transform:perspective(1250px) rotateY(-31deg)}
.mediaShelf{position:relative;height:22%;min-height:110px;display:flex;gap:8px;align-items:flex-end;padding:9px 11px 17px;background:linear-gradient(180deg,#101924 0 7%,#08111b 7% 86%,#1b232c 86% 92%,#070b10 92%);border-bottom:8px solid #1b252f;box-shadow:0 14px 22px #000d,inset 0 -2px #c8873f55}
.mediaShelf:after{content:"";position:absolute;left:0;right:0;bottom:9px;height:3px;background:linear-gradient(90deg,#a25b20,#ffbd61,#a25b20);box-shadow:0 0 10px #ff9c3d88}
.aisleCover{height:90%;flex:1;min-width:0;background:#0c1620 center/cover no-repeat;border:1px solid #61708055;border-radius:2px;box-shadow:0 4px 10px #000e;opacity:.15;transition:opacity .25s ease}
.aisleCover.loaded{opacity:1}.aisleCover.emptyCover{background:linear-gradient(145deg,#101b27,#08111a);opacity:.35}
.aisleEnd{position:absolute;left:39%;right:39%;top:8%;height:58%;display:flex;align-items:flex-start;justify-content:center;gap:14px;padding-top:20px;color:#dce7f288;font-size:11px;font-weight:800;letter-spacing:.09em;background:linear-gradient(180deg,#0b1724,#07101a 65%,#0c1218);box-shadow:0 0 90px #000 inset;transform:scale(.78);z-index:-1}
.login #loginForm{position:relative;z-index:3;backdrop-filter:blur(20px) saturate(1.12);-webkit-backdrop-filter:blur(20px) saturate(1.12);box-shadow:0 28px 80px #000e;border:1px solid color-mix(in srgb,var(--accent) 52%,var(--border));background:color-mix(in srgb,var(--panel) 90%,transparent)}
@media(max-width:760px){.shelfWall{width:64%}.shelfLeft{left:-26%;transform:perspective(950px) rotateY(30deg)}.shelfRight{right:-26%;transform:perspective(950px) rotateY(-30deg)}.mediaShelf{gap:4px;padding-left:5px;padding-right:5px}.aisleEnd{left:28%;right:28%;font-size:9px;gap:6px}.login #loginForm{width:min(88vw,420px)}}
\n\n/* v0.1.72 rental-store refinement: denser physical shelving, warm practical lighting, glossy aisle. */
.genericAvatar{font-size:20px;line-height:1;filter:grayscale(1);color:#eef3f8}.avatar.large .genericAvatar{font-size:42px}
.loginAisle{background:linear-gradient(180deg,#07121e 0 14%,#0a1723 14% 61%,#c7c0ad 61% 100%)}
.loginAisle:before{height:22%;background:repeating-linear-gradient(90deg,#f1e6c622 0 8%,#07101a 8% 17%,#d7a55b22 17% 18%);box-shadow:inset 0 -18px 45px #0008,0 12px 55px #ffc56b18}
.loginAisle:after{left:20%;right:20%;bottom:-12%;height:52%;background:linear-gradient(90deg,#756f63,#d8d0bb 46%,#eee6cf 52%,#777166);opacity:.72;box-shadow:inset 0 22px 50px #fff2,0 -22px 60px #ffc86a18;filter:none}
.shelfWall{top:1%;bottom:1%;gap:5px;filter:saturate(.98) brightness(.98)}
.mediaShelf{height:23.5%;min-height:112px;gap:5px;padding:8px 9px 19px;background:linear-gradient(180deg,#18232d 0 5%,#0b141d 5% 83%,#36414a 83% 89%,#10161b 89%);border-left:7px solid #26333e;border-right:7px solid #26333e;border-bottom:10px solid #303b44;box-shadow:0 13px 18px #000c,inset 0 -2px #f0b45d88,inset 0 2px #9ca8b344}
.mediaShelf:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,#735024,#f0b65f,#735024);box-shadow:0 2px 12px #ffc66a66}
.mediaShelf:after{bottom:10px;height:5px;background:linear-gradient(180deg,#f0b95f,#8e5b25);box-shadow:0 0 12px #ffb34f99}
.aisleCover{height:88%;border:1px solid #8d9aa666;box-shadow:0 4px 8px #000e,2px 0 0 #05080b;flex-basis:0}
.aisleEnd{left:40%;right:40%;top:9%;height:54%;gap:9px;padding-top:16px;background:linear-gradient(180deg,#132334,#09131d 68%,#17191b);border-left:5px solid #283846;border-right:5px solid #283846;box-shadow:0 0 70px #000 inset,0 0 35px #f6b65b18}
.aisleEnd span{background:#172c40;border:1px solid #c5a76c55;padding:5px 7px;border-radius:2px;color:#f0e6d0;box-shadow:0 3px 8px #0008}
