.avatar-violet{background:#7164ad}.avatar-blue{background:#326eb2}.avatar-green{background:#388966}.avatar-orange{background:#ad6738}.avatar-pink{background:#a54e7f}.avatar-teal{background:#287e86}
#personal{width:min(820px,94vw)}.profile-grid{display:flex;justify-content:center;flex-wrap:wrap;gap:25px;padding:20px 0 35px}.profile-tile{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:100px}.profile-tile .avatar{width:90px;height:90px;font-size:34px;border-radius:15px;transition:transform .2s}.profile-tile:hover .avatar{transform:translateY(-4px);outline:2px solid white;outline-offset:4px}.profile-tile.chosen .avatar{outline:2px solid var(--gold);outline-offset:4px}.profile-tile strong{font-size:15px}.profile-tile small{font-size:11px;color:#a5a7af}.personal-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.personal-actions button{font-size:13px}.personal-form{display:grid;gap:20px;max-width:500px;margin:auto}.personal-form p,.panel-note{font-size:12px;line-height:1.6;color:#a7aab4}.personal-form .primary{justify-self:start}.personal-form .field{font-size:14px}.personal-form .check{font-size:14px}.personal-form input[type=checkbox]{accent-color:var(--gold);width:18px;height:18px}
.title-feedback{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.title-feedback button{font-size:12px;padding:9px 13px}.title-feedback .selected{background:#dfbc78;color:#17181c}.detail-extra{padding:10px 32px 30px}.detail-extra h2{font-size:22px}.detail-extra .hub-rail>.movie{flex-basis:155px}.detail-extra select{width:140px;padding:8px}.episode-row{display:flex;width:100%;gap:18px;align-items:center;text-align:left;padding:17px 0;border-bottom:1px solid #ffffff16}.episode-row:hover{background:#ffffff07}.episode-number{font-size:21px;color:#9b9eaa;min-width:25px}.episode-row .art{width:150px;aspect-ratio:16/9;flex-shrink:0;display:grid;place-items:center;border-radius:6px}.episode-row .art svg{background:#0009;border-radius:50%;width:34px;height:34px;padding:9px}.episode-row strong{font-size:14px}.episode-row small{display:block;margin-top:8px;color:#a7aab4;font-size:12px}.history-list article{display:flex;gap:20px;padding:18px 0;border-bottom:1px solid #ffffff12}.history-list .art{width:140px;aspect-ratio:16/9;flex-shrink:0;border-radius:5px}.history-list strong{font-size:15px}.history-list p{font-size:12px;color:#aaa}.history-list button{margin-right:16px}.browse-filters{display:flex;gap:18px;margin:0 0 25px}.browse-filters label{display:flex;align-items:center;gap:10px;color:#bcbec7;font-size:13px}.browse-filters select{width:auto;padding:8px 12px;border-color:#ffffff22;background:#202228}
.playback-options>div{width:300px;max-height:65vh;overflow:auto}.playback-options label{display:block;margin-top:15px;font-size:12px;color:#c5c8d0}.playback-options label:first-child{margin-top:0}#player .playback-options select{width:100%;margin-top:7px;font-size:13px;padding:9px}#player .playback-options p{font-size:11px}video::cue{background:#000b;color:#fff;font-family:'DM Sans',Arial,sans-serif;text-shadow:0 1px 3px #000}video.subtitles-small::cue{font-size:16px}video.subtitles-medium::cue{font-size:24px}video.subtitles-large::cue{font-size:32px}#up-next{position:absolute;right:4%;bottom:180px;width:min(380px,85vw);z-index:8;padding:25px;background:#1a1d24ed;border:1px solid #ffffff22;border-radius:12px;box-shadow:0 15px 60px #0008}#up-next>span{color:var(--gold);font-size:12px}#up-next h3{font-size:23px;margin:12px 0}#up-next p{font-size:13px;color:#c2c5cd}#up-next button{margin:8px 6px 0 0;font-size:13px}#next-episode{font-size:27px}
@media(max-width:650px){.profile-grid{gap:20px}.profile-tile .avatar{width:70px;height:70px}.profile-tile{min-width:80px}.personal-actions button{flex:1;min-width:40%}.detail-extra{padding:10px 20px 25px}.episode-row{gap:10px}.episode-row .art{width:90px}.history-list .art{width:90px}.browse-filters{gap:10px}.browse-filters label{display:grid;gap:7px;flex:1;min-width:0}.browse-filters select{width:100%}.history-list{font-size:12px}.playback-options>div{right:-45px;width:270px}}

#skip-intro{position:absolute;right:4%;bottom:165px;z-index:4;background:#15171ce8;border:1px solid #fff9;font-size:16px;padding:12px 24px}#picture-in-picture{font-size:28px}

video.subtitles-small::cue{font-size:clamp(16px,1.5vw,26px)}video.subtitles-medium::cue{font-size:clamp(22px,2vw,36px)}video.subtitles-large::cue{font-size:clamp(28px,2.6vw,46px)}video.subtitles-extra-large::cue{font-size:clamp(34px,3.2vw,58px)}

/* Keep season changes local; avoid painting every offscreen episode. */
#detail .episode-row{content-visibility:auto;contain-intrinsic-size:auto 110px}
#detail::backdrop{backdrop-filter:none;background:#050605df}
.episode-season-picker{position:relative;flex:0 0 auto;font-size:14px}
.episode-season-picker summary{list-style:none;cursor:pointer;padding:10px 14px;background:#25272a;border:1px solid #ffffff25;border-radius:7px;min-width:125px}
.episode-season-picker summary::after{content:'⌄';margin-left:22px}
.episode-season-options{position:absolute;right:0;top:calc(100% + 5px);min-width:160px;max-height:260px;overflow:auto;background:#25272a;border:1px solid #ffffff25;border-radius:8px;box-shadow:0 8px 25px #0008;z-index:5;padding:5px}
.episode-season-options button{display:block;width:100%;text-align:left;padding:10px;border-radius:4px}
.episode-season-options button:hover,.episode-season-options button[aria-pressed=true]{background:#ffffff12;color:var(--gold)}
/* Catalogue-only episodes use the normal season list, inside its existing tab. */
#detail .episode-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;min-width:0;border-bottom:1px solid #ffffff16}
#detail .episode-item>.episode-row{border-bottom:0;min-width:0}
#detail .episode-item>.episode-row:last-child{grid-column:1/-1}
#detail .episode-item .episode-copy{min-width:0;flex:1;overflow-wrap:anywhere}
#detail .episode-unavailable{color:#a2a4aa;cursor:default}
#detail .episode-unavailable:hover{background:transparent}
#detail .episode-unavailable .episode-number,#detail .episode-unavailable strong{color:#979aa2}
#detail .episode-unavailable .episode-placeholder{background:linear-gradient(135deg,#292c30,#1c1e21);border:1px solid #ffffff08;opacity:.65}
#detail .episode-check-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 0;align-self:center}
#detail .episode-check-actions>button{font-size:12px;padding:8px 12px;max-width:100%;white-space:normal}
#detail .episode-item .episode-language-note{color:#d5bb7a}
#detail .episode-catalogue-note{font-size:12px;line-height:1.5;color:#a7aab4;margin:0 0 10px}
#detail .episode-season-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-left:auto;max-width:100%}
#detail .episode-season-tools>.episode-download-season{font-size:12px;padding:10px 14px;white-space:nowrap}
#detail .episode-season-tools>.episode-download-season[hidden]{display:none}
#detail .episode-section>.row-heading{align-items:center;gap:12px;flex-wrap:wrap}
@media(max-width:700px){#detail .episode-item{display:block}#detail .episode-item>.episode-row{display:grid;grid-template-columns:20px 84px minmax(0,1fr);gap:8px}#detail .episode-item>.episode-row .art{width:84px}#detail .episode-check-actions{justify-content:flex-start;margin-left:120px;padding:0 0 12px}#detail .episode-check-actions>button{font-size:11px;padding:8px 10px}#detail .episode-season-tools{gap:8px}#detail .episode-season-tools>.episode-download-season{padding:10px;font-size:11px}}

#detail .episode-synopsis{font-size:13px;line-height:1.5;color:#b7babf;margin:9px 0 0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
