/* Watchroom interface. Kept separate from playback/provider styles. */
:root{--bg:#101214;--text:#eeeff0;--muted:#9ea3a7;--line:#ffffff12;--accent:#bdc0c3;--surface:#191c1f}
body{font-size:15px;background:radial-gradient(ellipse at 95% 0,#959a9e07,transparent 45%),var(--bg);-webkit-font-smoothing:antialiased}
button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}
input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
main{margin-left:216px;padding:0 40px 12px}#content,.topbar,footer{max-width:1280px}
.sidebar{width:216px;padding:30px 18px 22px;background:#131618;border-color:var(--line)}
.brand{font-size:22px}.side-label{margin:48px 14px 16px;color:#878c91;font-size:10px;letter-spacing:1.8px}
.nav-item{min-height:48px;font-size:14px;color:#a4a8ab;border-radius:10px;margin-bottom:6px}.nav-item.active{background:#bdc0c312;color:#bdc0c3}.nav-item:hover{background:#ffffff09}.nav-item.active:hover{background:#bdc0c31b}
.nav-item small{font-size:11px}.sync-note{font-size:12px;color:#b0b3b6;padding:18px 6px}.sync-note small{font-size:11px;color:#8a9095;line-height:1.5}.profile{padding:20px 3px}.profile>span:nth-child(2){font-size:12px}.profile small{font-size:10px;color:#94999d}.version{color:#7e8489;font-size:9px}.avatar{width:38px;height:38px}
.topbar{height:72px;border-color:var(--line)}.breadcrumb{font-size:12px;color:#8e9398}.breadcrumb b{color:#cfd1d3}.preview-label{font-size:10px;border-color:#ffffff19;color:#a6aaad;padding:5px 10px}
.hero{min-height:0;grid-template-columns:minmax(0,1fr) 235px;gap:24px;margin:26px 0 30px;padding:28px 32px;border:1px solid #bdc0c318;border-radius:20px;background:linear-gradient(115deg,#212325 0%,#1a1c1d 58%,#171b1d);overflow:hidden}
.hero-copy{padding:0}.hero .eyebrow{font-size:10px;letter-spacing:1.6px;color:#a8acaf}.tiny-star{font-size:18px}
.hero h1{font:400 clamp(30px,2.8vw,44px)/1.15 Georgia,serif;letter-spacing:-1.5px;margin:14px 0 10px}.hero h1 em{white-space:nowrap}.hero p{font-size:14px;color:#abafb3;margin:0 0 21px;line-height:1.5}
.search-box{max-width:650px;min-height:52px;border:1px solid #ffffff24;border-radius:11px;padding:6px 6px 6px 15px;background:#111213a6;box-shadow:none;gap:11px}.search-box input{font-size:14px;height:36px}.search-box input::placeholder{color:#9da2a6}.search-box>button{width:40px;height:40px;border-radius:7px}.search-box:focus-within{box-shadow:0 0 0 3px #bdc0c315;border-color:#a5a9ad}.search-hints{font-size:11px;margin-top:10px;gap:8px;color:#9da1a5}.search-hints button{display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:3px 9px;border:1px solid #ffffff12;border-radius:20px;font-size:11px;color:#bbbec1;background:#ffffff04}.search-hints button svg{width:12px;height:12px}.search-hints button:hover{border-color:#9ea2a666;background:#bdc0c310}
.hero-visual{height:220px;opacity:.8;position:relative;right:auto;top:auto;width:auto}.hero-planet{width:104px;height:104px;left:29%;top:25%;box-shadow:inset -16px -18px 26px #0009,0 0 60px #a7abae12}.hero-orbit{width:235px;height:90px;top:49%;border-color:#9b9fa344}.ho2{width:220px;height:104px}.ho3{width:218px;height:190px;border-color:#9b9fa322}.floating-star{font-size:25px;top:8%;left:80%}.visual-number{bottom:0;left:0;right:0;text-align:center;font-size:8px;letter-spacing:2px;color:#a5a9ac}.visual-note{display:none}
.section-heading{margin:26px 0 17px;gap:18px;align-items:center}.section-heading h2{font-size:25px;font-weight:600;letter-spacing:-.7px}.section-heading .eyebrow{font-size:9px;color:#989ca0;letter-spacing:1.8px;margin-bottom:6px}.section-count{display:inline-grid;place-items:center;vertical-align:middle;min-width:28px;height:28px;margin-left:6px;padding:0 7px;border:1px solid #ffffff15;border-radius:8px;font:12px 'Segoe UI',sans-serif;color:#b2b5b8}.text-button{font-size:12px;min-height:40px}.catalog-meta{font-size:12px;color:#979ba0;line-height:1.55;margin:0 0 18px}.filters{background:#1c1d1e;border:1px solid #ffffff12;border-radius:10px;padding:4px;gap:3px}.filters button{min-height:35px;padding:7px 15px;font-size:12px;border-radius:7px;color:#adb1b5}.filters button:not(.selected):hover{background:#ffffff09}.filters button.selected{background:#bdc0c3;color:#1f2122;font-weight:600}
.card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 20px}.show-card{position:relative;min-width:0}.poster-button{border-radius:12px;border-color:#ffffff12;transition:transform .2s,border-color .2s,box-shadow .2s}.poster-button .art{aspect-ratio:2/3}.catalog-poster{object-position:center;transition:transform .3s}.poster-button:hover{transform:translateY(-4px);border-color:#bdc0c35c;box-shadow:0 14px 25px #0004}.poster-button:hover .catalog-poster{transform:scale(1.035)}.poster-hover{background:linear-gradient(transparent,#0008);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px}.poster-hover svg{width:48px;height:48px;padding:14px}.poster-hover>span{font-size:12px;color:#eeefef;font-weight:600}.poster-placeholder{background:radial-gradient(ellipse at 50% 15%,#323436,#1b2024 80%);font-size:16px;color:#cdcfd1;padding:16px}.poster-placeholder small{font-size:11px;color:#a5a9ad}.rating{top:10px;right:10px;font-size:11px;padding:4px 7px;backdrop-filter:blur(12px);background:#0d111dcc;border:1px solid #ffffff20;border-radius:6px}.saved-badge{background:#bdc0c3;width:28px;height:28px}
.card-meta{font-size:11px;color:#9b9fa3;margin:12px 0 7px;align-items:center;gap:6px}.card-meta>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-meta>span:last-child{font-size:9px;letter-spacing:.7px;color:#a4a8ab;flex-shrink:0}.card-title{font-size:16px;font-weight:600;line-height:1.4;letter-spacing:-.2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:0}.card-bottom{font-size:11px;color:#909499;gap:8px;margin-top:4px;min-height:38px}.card-bottom>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-add{width:38px;height:38px;flex-shrink:0;border-color:#ffffff20;background:#1e1f20}.card-add:hover{background:#bdc0c3;color:#262829;border-color:#bdc0c3}.card-add svg{width:16px;height:16px}.availability-badge{font-size:10px;line-height:1.5;margin:5px 0 0;color:#959a9e}.availability-badge.available{display:inline-flex;align-items:center;gap:6px;color:#b7bbbe}.availability-badge.available:before{content:'';width:5px;height:5px;border-radius:50%;background:#acb0b4}.mini-progress{background:#ffffff12;height:3px;margin-top:10px}
.continue-section{margin-bottom:30px}.continue-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.continue-card{padding:12px;border-radius:12px;background:linear-gradient(120deg,#202224,#1a1b1c);border-color:#bdc0c322;gap:12px;transition:border-color .2s,background .2s}.continue-card:hover{border-color:#bdc0c370;background:#252729}.continue-art{width:58px;border-radius:7px}.continue-art .art{aspect-ratio:2/3}.continue-card small{font-size:10px;letter-spacing:0;color:#aaaeb2}.continue-card h3{font-size:14px;font-weight:600;margin:5px 0 4px}.continue-card span{font-size:11px;color:#a0a4a9}.continue-card .round-play{width:32px;height:32px;flex-shrink:0;margin:0;border-color:#bdc0c340}.round-play svg{width:14px;height:14px}
.page-intro{padding:34px 0 12px}.page-intro h1{font:400 42px/1.15 Georgia,serif;margin:12px 0 13px}.page-intro p{font-size:14px;color:#a2a6aa}.empty{padding:46px 24px;border:1px dashed #bdc0c330;border-radius:16px;background:#ffffff02}.empty p{font-size:14px;color:#a1a5aa;line-height:1.7}.empty h3{font-size:22px}.button{border-radius:9px;min-height:44px;font-size:13px}.button.small{min-height:40px;font-size:12px}.button.secondary{background:#222425;border-color:#ffffff24;color:#c3c6c9}.button.secondary:hover{border-color:#bdc0c359;background:#2a2c2d}
.back{margin:18px 0;min-height:40px}.detail-head{grid-template-columns:120px minmax(0,1fr);gap:25px;align-items:start;margin-bottom:28px}.detail-poster .art{aspect-ratio:2/3;border-radius:10px}.art-disclaimer{font-size:9px;line-height:1.5;color:#909499}.detail-copy h1{font-size:32px;line-height:1.2;letter-spacing:-1px;margin:10px 0 6px}.detail-copy .eyebrow{font-size:10px}.original-title{font-size:13px;color:#9ca0a4}.detail-copy p{font-size:13px;line-height:1.75;max-width:800px;margin:12px 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:#acb0b3}.in-library{font-size:12px}.source-summary{font-size:11px;color:#a5a9ac;margin-top:10px}.watch-section{grid-template-columns:minmax(0,1fr) 290px;gap:24px}.watch-main{min-width:0}.watch-main h2{font-size:22px}.video-frame{border-color:#ffffff1a;border-radius:13px;box-shadow:0 12px 30px #0003;background:#080a0c}.player-start{width:68px;height:68px;background:#c5c8caeb;color:#1f2122;border-color:#e5e6e7;box-shadow:0 4px 40px #0008}.player-start svg{width:28px;height:28px}.player-start:focus-visible{outline-color:var(--accent)}.player-caption{gap:12px}.caption-label{font-size:9px}.player-caption p,.player-caption>span{font-size:11px;line-height:1.5}.save-status{font-size:11px;color:#a2a6aa;line-height:1.6}
.episodes{background:#1a1c1d;border-color:#ffffff18;border-radius:13px;padding:18px 0}.episodes-head{border-color:#ffffff12;padding:0 16px 15px;gap:12px}.episodes-head h3{font-size:16px}.episodes-head select{font-size:12px;min-height:40px}.episode-row{border-color:#ffffff0a;min-height:70px;padding:4px 7px}.episode-row.current{background:#bdc0c313;border-left:2px solid #bdc0c3;padding-left:5px}.episode-choice{gap:10px;min-height:58px}.episode-choice b{font-size:12px;line-height:1.45}.episode-choice small{font-size:10px;color:#9a9fa3}.episode-no{font-size:12px}.episode-check{width:36px;height:36px;margin:0 3px;border-color:#ffffff24}.episode-footnote{font-size:11px;line-height:1.65;color:#999da1;padding:14px 16px 0}.episode-scroll{max-height:540px;scrollbar-width:thin;scrollbar-color:#4e5256 transparent}
.stream-panel{border-color:#ffffff12}.stream-panel h2{font-size:22px}.stream-toolbar{font-size:12px;gap:18px}.stream-toolbar label{min-height:40px;cursor:pointer}.stream-toolbar input{width:16px;height:16px}.provider-status{font-size:11px}.stream-row{border-color:#ffffff12}.stream-row b{font-size:14px}.stream-row p,.stream-row small{font-size:12px}.stream-empty,.stream-empty p{font-size:13px}.stats-grid>div{background:#1d1e1f;border-color:#ffffff18;border-radius:13px}.stats-grid span{font-size:12px}.stats-grid small{font-size:11px}.stats-grid strong{font-size:40px}.history-list{border-color:#ffffff18;border-radius:13px}.history-row{border-color:#ffffff12;min-height:80px}.history-row b{font-size:14px}.history-row small,.history-row time{font-size:12px}.prototype-note{font-size:12px;line-height:1.6;background:#1d1e1f;border-color:#bdc0c322}.modal{background:#1f2021;border-color:#ffffff24;border-radius:18px}.modal label{font-size:13px}.modal>p{font-size:14px}.modal input{font-size:16px;min-height:46px}.modal-close,.icon-button{width:40px;height:40px}footer{font-size:11px;color:#93989c;border-color:#ffffff12;margin-top:42px}footer>span:last-child{font-size:10px;letter-spacing:.5px}
@media(min-width:1600px){.card-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:1200px){main{padding:0 28px 12px}.hero{grid-template-columns:minmax(0,1fr) 165px;padding:25px}.hero-visual{height:195px}.hero-orbit{width:195px}.ho3{width:180px;height:170px}.hero-planet{width:85px;height:85px;left:25%;top:28%}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 18px}.continue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.continue-card:last-child:nth-child(3){grid-column:1/-1}.watch-section{grid-template-columns:minmax(0,1fr) 250px;gap:18px}}
@media(max-width:1000px){.sidebar{width:80px;padding:25px 12px}.brand{font-size:0;justify-content:center;gap:0}.brand-mark{font-size:36px;margin:0}.brand-dot,.side-label,.nav-item span,.nav-item small,.sync-note,.profile>span:nth-child(2),.profile>svg,.version{display:none}.sidebar nav{margin-top:45px}.nav-item{padding:13px;justify-content:center}.profile{justify-content:center}main{margin-left:80px}.watch-section{grid-template-columns:1fr}.episodes{margin-top:4px}.episode-scroll{max-height:360px}.detail-copy h1{font-size:30px}#toast{left:calc(50% + 40px)}}
@media(max-width:760px){.hero{grid-template-columns:1fr;padding:25px}.hero-visual{display:none}.hero h1{font-size:36px}.card-grid{gap:24px 15px}.card-title{font-size:15px}.continue-grid{grid-template-columns:1fr}.continue-card:last-child:nth-child(3){grid-column:auto}.section-heading h2{font-size:23px}.card-meta>span:last-child{display:none}.search-hints button{min-height:36px}.detail-head{grid-template-columns:105px minmax(0,1fr);gap:20px}}
@media(max-width:620px){main{margin:0;padding:0 18px calc(90px + env(safe-area-inset-bottom))}.sidebar{inset:auto 0 0;width:100%;height:calc(68px + env(safe-area-inset-bottom));padding:4px 12px calc(4px + env(safe-area-inset-bottom));background:#151616f2;border-top:1px solid #ffffff1a;backdrop-filter:blur(20px)}.sidebar .brand,.side-bottom{display:none}.sidebar nav{margin:0;display:flex;gap:6px}.nav-item{min-height:54px;padding:7px 0;flex-direction:column;gap:3px;font-size:11px;margin:0}.nav-item span{display:block}.nav-item svg{width:20px;height:20px}.nav-item.active{background:#bdc0c312}.topbar{height:62px}.breadcrumb{font-size:11px;gap:8px}.breadcrumb b{max-width:150px}.mobile-profile{display:grid!important}.hero{margin:18px 0 25px;padding:23px 19px;border-radius:16px}.hero .eyebrow{font-size:8px;letter-spacing:1.4px;gap:7px}.hero h1{font-size:34px;letter-spacing:-1.1px;margin:14px 0 10px}.hero p{font-size:13px;max-width:none;margin-bottom:18px}.search-box{min-height:52px;gap:8px;padding-left:11px}.search-box input{font-size:16px;width:100%}.search-box>svg{width:17px}.search-box>button{width:38px}.search-hints{gap:6px;margin-top:10px}.search-hints>span{display:none}.search-hints button{font-size:10px;min-height:36px;padding:3px 9px}.search-hints button svg{width:10px}.section-heading{margin:23px 0 15px;gap:12px;align-items:center}.section-heading h2{font-size:23px}.section-heading .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:5px}.text-button{font-size:12px;min-height:44px}.continue-section .section-heading{align-items:start}.continue-section .section-heading>.text-button{font-size:11px;min-height:30px}.filters{padding:3px}.filters button{font-size:12px;min-height:38px;padding:7px 13px}.catalog-meta{font-size:11px;line-height:1.6;margin-bottom:16px}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 14px}.poster-button{border-radius:10px}.poster-hover{display:none}.poster-button:hover{transform:none}.card-meta{font-size:10px;line-height:1.5;margin-top:10px}.card-title{font-size:14px;line-height:1.45;min-height:0;letter-spacing:0}.card-bottom{font-size:10px;min-height:44px;gap:4px}.card-add{width:44px;height:44px}.card-add svg{width:17px;height:17px}.rating{font-size:10px;top:8px;right:8px;padding:3px 6px}.availability-badge{font-size:10px;margin-top:3px;overflow-wrap:anywhere}.poster-placeholder{font-size:14px;padding:12px}.poster-placeholder small{font-size:10px}.continue-card{padding:12px;gap:12px}.continue-art{width:56px}.continue-card h3{font-size:14px}.continue-card small{font-size:10px}.continue-card span{font-size:11px}.continue-card .round-play{width:36px;height:36px}.detail-head{grid-template-columns:85px minmax(0,1fr);gap:16px;margin-bottom:23px}.detail-copy h1{font-size:24px;letter-spacing:-.6px;line-height:1.2;margin:8px 0 6px}.detail-copy .eyebrow{font-size:9px;letter-spacing:.7px}.original-title{font-size:11px}.detail-copy p{font-size:12px;line-height:1.65;margin:10px 0;-webkit-line-clamp:3}.art-disclaimer{font-size:8px}.source-summary{font-size:10px;line-height:1.5}.in-library{font-size:11px}.detail-actions .button{font-size:12px;min-height:44px}.back{font-size:12px;margin:12px 0;min-height:44px}.watch-main h2{font-size:20px}.watch-section{gap:15px}.video-frame{border-radius:10px}.player-start{width:56px;height:56px}.player-start svg{width:24px;height:24px}.player-caption{flex-wrap:wrap;gap:6px}.player-caption p,.player-caption>span{font-size:11px}.save-status{font-size:11px}.stream-panel h2{font-size:21px}.stream-row .button{min-height:44px}.stream-toolbar{font-size:12px;gap:12px}.episodes-head h3{font-size:16px}.episode-choice b{font-size:13px}.episode-choice small{font-size:11px}.episode-check{width:44px;height:44px}.episode-scroll{max-height:350px}.episode-footnote{font-size:11px}.page-intro{padding:27px 0 8px}.page-intro h1{font-size:34px}.page-intro p{font-size:13px}.stats-grid span{font-size:12px}.stats-grid small{font-size:11px}.stats-grid strong{font-size:32px}.history-row b{font-size:13px}.history-row small,.history-row time{font-size:11px}.history-row>span:nth-child(2){min-width:0}.history-row time{flex-shrink:0}.empty{padding:34px 20px}.empty h3{font-size:21px}.empty p{font-size:13px}.modal{padding:30px 23px}.modal>p{font-size:13px}.modal-close{width:40px;height:40px}.prototype-note{font-size:11px}footer{align-items:flex-start;font-size:10px;gap:15px;line-height:1.6;margin-top:32px}footer>span:last-child{font-size:9px;letter-spacing:0;white-space:nowrap}#toast{left:50%;font-size:12px;bottom:calc(85px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}


.player-recovery{position:absolute;inset:0;z-index:6;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;text-align:center;background:#0b0e14e8}.player-recovery p{margin:0;color:var(--text);font-size:clamp(16px,2.2vw,22px)}.player-recovery .button{min-height:46px}.recovery-spinner{width:25px;height:25px;border:2px solid #ffffff22;border-top-color:var(--accent);border-radius:50%;animation:recovery-spin .8s linear infinite}@keyframes recovery-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.recovery-spinner{animation:none}}
