@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#101110;--panel:#181a17;--line:#ffffff12;--muted:#90958c;--text:#f3f4ee;--lime:#b797ff;--rail:86px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',Arial,sans-serif;font-size:14px}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,label:has(input:focus-visible){outline:2px solid var(--lime);outline-offset:5px}button{border:0}svg{width:22px;height:22px;display:block;flex-shrink:0}button{transition:background .2s,color .2s,transform .2s}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}.rail{position:fixed;inset:0 auto 0 0;width:var(--rail);background:#111310;border-right:1px solid var(--line);z-index:10;display:flex;align-items:center;flex-direction:column}.symbol{margin:26px 0 56px;color:var(--lime)}.symbol svg{width:35px;height:35px}.rail-links{display:flex;align-items:center;gap:16px;flex-direction:column}.rail-btn,.icon-btn{display:grid;place-items:center;background:transparent;color:#94998f;width:44px;height:44px;border-radius:12px}.rail-btn:hover,.icon-btn:hover{background:#ffffff0a;color:var(--text)}.rail-btn.active{background:#a978ef15;color:var(--lime)}.rail-line{width:24px;height:1px;background:var(--line);margin:8px 0}.rail-settings{margin-top:auto;margin-bottom:24px}.app-shell{margin-left:var(--rail)}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 52px;border-bottom:1px solid var(--line);gap:20px;background:#101110}.wordmark{font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:27px;letter-spacing:-1.4px;white-space:nowrap}.wordmark>span:not(.preview-label){font-weight:400;color:var(--lime)}.preview-label{font-family:'DM Sans',Arial,sans-serif;font-size:8px;letter-spacing:1.6px;vertical-align:middle;color:#8c9483;border:1px solid #ffffff1a;padding:4px 6px;border-radius:4px;margin-left:12px}.topnav{display:flex;align-items:center;gap:32px;height:100%}.topnav button{background:none;height:100%;padding:0;font-size:13px;color:#999d95;border-bottom:2px solid transparent}.topnav button:hover,.topnav button.active{color:#f1f4ea}.topnav button.active{border-color:var(--lime)}.top-actions{display:flex;align-items:center;gap:19px}.top-divider{height:24px;width:1px;background:var(--line)}.avatar{background:#2b3225;color:var(--lime);border:1px solid #a978ef25;border-radius:50%;height:35px;width:35px;font-size:11px;font-weight:700}.hero{height:570px;position:relative;overflow:hidden;background:#192327}.hero-img{width:100%;height:100%;object-fit:cover;object-position:center 45%;position:absolute;filter:saturate(.65) brightness(.72)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#101110ed 0%,#101110a0 40%,#1011100a 80%),linear-gradient(0deg,#101110 0%,#10111000 45%)}.hero-grain{position:absolute;inset:0;background:linear-gradient(180deg,#10111020,transparent);pointer-events:none}.hero-content{position:relative;z-index:1;padding:66px 62px;max-width:800px}.eyebrow{display:flex;gap:10px;align-items:center;color:var(--lime);font-size:10px;letter-spacing:3px;font-weight:700}.mini-play{font-size:10px}h1{font-family:Manrope,Arial,sans-serif;font-size:76px;letter-spacing:-4px;line-height:1.03;margin:23px 0 24px;font-weight:800}h1 em{font-weight:500;font-style:normal}.hero-meta{display:flex;gap:12px;align-items:center;font-size:11px;color:#c3c7bf}.rating{background:#4b9d58;color:white;border-radius:3px;font-size:10px;padding:2px 5px}.meta-dot{height:3px;width:3px;border-radius:50%;background:#9ca495}.quality{font-size:9px;line-height:14px;border:1px solid #ffffff50;padding:0 4px;border-radius:2px}.hero-content>p{font-size:13px;color:#b7bdb3;line-height:1.9;margin:17px 0 25px}.hero-actions{display:flex;gap:12px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:14px 23px;border-radius:7px;min-height:47px;font-size:12px;font-weight:700}.btn svg{width:17px;height:17px}.primary{background:var(--lime);color:#20102d}.primary:hover{background:#b889ff;transform:translateY(-1px)}.secondary{background:#ffffff0d;border:1px solid #ffffff24;backdrop-filter:blur(10px);color:#eff1e8}.secondary:hover{background:#ffffff18}.hero-foot{display:flex;align-items:center;gap:25px;margin-top:37px}.hero-index{font-size:12px}.hero-index>span{color:#71796c;font-size:10px;margin-left:5px}.slide-indicators{display:flex;gap:6px}.slide-indicators button{width:22px;height:3px;border-radius:2px;background:#ffffff32;padding:0}.slide-indicators button.selected{width:40px;background:var(--lime)}.demo-pill{margin-left:10px;font-size:8px;letter-spacing:1.4px;color:#9ca792;display:flex;align-items:center;gap:7px}.demo-pill>span{width:4px;height:4px;border-radius:50%;background:var(--lime)}.vertical-caption{position:absolute;right:27px;top:42%;writing-mode:vertical-rl;font-size:9px;letter-spacing:4px;color:#d0d6cc7d}.catalog-shell{padding:0 52px;position:relative}.connection-strip{margin-top:8px;margin-bottom:43px;display:flex;align-items:center;gap:15px;padding:18px 21px;background:#181b15;border:1px solid #a978ef13;border-radius:9px}.connection-icon{height:38px;width:38px;display:grid;place-items:center;border:1px solid #a978ef21;border-radius:9px;color:var(--lime)}.connection-icon svg{width:18px}.connection-strip strong{font-size:12px;font-weight:500}.connection-strip p{font-size:11px;color:#8d9687;margin:5px 0 0}.text-link{display:flex;align-items:center;gap:8px;font-size:11px;background:none;color:var(--lime);padding:7px 0}.text-link:hover{color:#d6c2ff}.text-link svg{width:15px;height:15px}.connection-strip>.text-link{margin-left:auto}.section{margin:0 0 42px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.section-kicker{display:flex;align-items:center;gap:7px;font-size:8px;letter-spacing:2px;color:#939a8b;font-weight:600}.live-dot{height:5px;width:5px;background:var(--lime);border-radius:50%}h2{font-family:Manrope,Arial,sans-serif;font-size:23px;font-weight:600;letter-spacing:-.6px;margin:8px 0 0}.demo-tag{font-family:'DM Sans',Arial,sans-serif;color:#919889;font-size:8px;letter-spacing:1px;display:inline-block;vertical-align:middle;margin-left:12px;font-weight:400;border:1px solid #ffffff1a;border-radius:4px;padding:3px 5px}.channel-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px}.channel-card{background:#1b1e19;position:relative;border:1px solid var(--line);text-align:left;border-radius:9px;padding:0;overflow:hidden;min-width:0}.channel-card:hover{border-color:#a978ef80;transform:translateY(-3px)}.channel-brand{height:90px;display:flex;align-items:center;justify-content:center;position:relative;background:radial-gradient(ellipse at top,#ffffff08,transparent)}.channel-logo{font-family:Manrope,Arial,sans-serif;font-size:18px;font-weight:800;letter-spacing:-.7px;text-align:center;line-height:1}.channel-logo small{font-size:8px;letter-spacing:3px;display:block;line-height:1.8}.channel-meta{padding:13px;border-top:1px solid var(--line)}.channel-meta strong{font-size:10px;font-weight:500;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-meta p{font-size:9px;color:#8b9384;margin:6px 0 0}.channel-live{position:absolute;top:9px;left:9px;background:#080b0870;border-radius:3px;padding:3px 5px;font-size:6px;letter-spacing:.8px;color:#afbba3}.channel-live:before{content:'●';color:var(--lime);margin-right:3px}.filter-chips{display:flex;gap:7px}.filter-chips button,.category-filters button{background:none;border:1px solid #ffffff14;border-radius:6px;padding:7px 12px;font-size:10px;color:#969d90}.filter-chips button.selected,.category-filters button.selected{background:#a978ef10;color:var(--lime);border-color:#a978ef40}.poster-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.poster-card{position:relative;min-width:0}.poster-art{display:block;position:relative;width:100%;aspect-ratio:1.64;border-radius:9px;overflow:hidden;background:#21271e;padding:0;text-align:left}.poster-art img{width:100%;height:100%;object-fit:cover;transition:transform .4s;filter:brightness(.8)}.poster-art:hover img{transform:scale(1.06)}.poster-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#040904b0,transparent 75%)}.art-title{position:absolute;z-index:1;bottom:19px;left:20px;right:20px;color:#fff;font-family:Manrope,Arial,sans-serif;font-size:24px;font-weight:800;letter-spacing:-1px;line-height:1.1}.art-title small{display:block;font-size:8px;font-weight:400;letter-spacing:3px;margin-bottom:6px}.poster-chip{position:absolute;top:10px;left:10px;z-index:1;font-size:7px;letter-spacing:1px;padding:4px 6px;border:1px solid #ffffff26;border-radius:3px;background:#10111055}.play-hover{position:absolute;z-index:2;inset:0;display:grid;place-items:center;opacity:0;transition:opacity .2s}.play-hover>span{border-radius:50%;background:#a978efdc;width:44px;height:44px;display:grid;place-items:center;color:#14200b}.poster-art:hover .play-hover{opacity:1}.poster-meta{padding:12px 1px;display:flex;justify-content:space-between;align-items:start;gap:8px}.poster-meta strong{font-weight:500;font-size:12px}.poster-meta p{font-size:10px;color:#8d9585;margin:5px 0 0}.save-btn{width:28px;height:28px;color:#939a8b;background:none;display:grid;place-items:center;border-radius:50%}.save-btn svg{width:16px;height:16px}.save-btn:hover,.save-btn.saved{color:var(--lime);background:#a978ef10}.progress-bar{position:absolute;bottom:0;left:0;height:3px;background:var(--lime);z-index:3}.category-filters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:24px}.result-count{font-size:11px;color:var(--muted)}.search-box{display:flex;align-items:center;gap:12px;background:#1a1d17;border:1px solid #a978ef38;padding:8px 12px;border-radius:9px;margin-bottom:30px}.search-box label{color:var(--lime)}.search-box input{flex:1;border:0;outline:none;background:none;color:var(--text);width:100%;font-size:14px}.empty-state{text-align:center;padding:60px 20px;background:#ffffff02;border:1px dashed #ffffff15;border-radius:10px;color:#929a89}.empty-state>span{display:inline-block}.empty-state h3{color:var(--text);font-weight:500}.empty-state p{font-size:12px;margin-bottom:24px}footer{padding:27px 0 30px;margin-top:20px;border-top:1px solid var(--line);display:flex;align-items:center;gap:20px}footer .wordmark{font-size:20px}footer p{font-size:10px;color:#767e6f}footer>span{margin-left:auto;font-size:9px;color:#767e6f}dialog{border:1px solid #ffffff18;background:#151812;color:var(--text);border-radius:16px;padding:30px;box-shadow:0 40px 120px #0008}dialog::backdrop{background:#070a07c9;backdrop-filter:blur(8px)}.settings-dialog{width:min(500px,calc(100% - 28px));max-height:90dvh;overflow:auto}.dialog-heading,.player-header{display:flex;align-items:start;justify-content:space-between;gap:15px}.dialog-heading h2{font-size:23px}.dialog-heading>.icon-btn{margin:-8px -10px 0 0}.dialog-intro{color:#969e8f;font-size:12px;line-height:1.8;margin:20px 0 24px}form label{font-size:11px;display:block;margin:0 0 9px}.input-wrap{display:flex;align-items:center;gap:10px;border:1px solid #ffffff20;border-radius:7px;padding:13px;background:#0f120c}.input-wrap>span{color:#78846e}.input-wrap svg{width:17px;height:17px}.input-wrap input{border:0;outline:0;background:none;color:var(--text);width:100%;font-size:12px}.full{width:100%;margin-top:12px}.field-help{color:#7f8a76;font-size:10px;line-height:1.7}.or-line{display:flex;align-items:center;gap:12px;margin:25px 0;color:#78846e;font-size:10px}.or-line:before,.or-line:after{content:'';height:1px;background:var(--line);flex:1}.file-drop{display:flex;align-items:center;flex-direction:column;gap:10px;border:1px dashed #ffffff25;padding:23px;border-radius:8px;cursor:pointer;background:#ffffff02}.file-drop:hover{border-color:var(--lime)}.file-drop>span:first-child{color:var(--lime)}.file-drop strong{font-size:12px;font-weight:500}.file-drop>span:last-of-type{font-size:10px;color:#8b9780}.file-drop input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.mac-note{display:flex;gap:12px;margin-top:24px;padding:16px;border:1px solid #ffffff10;border-radius:8px;background:#ffffff03}.mac-note>span{color:#9cae8e}.mac-note svg{width:19px}.mac-note strong{font-size:11px;font-weight:500}.mac-note p{font-size:10px;color:#8c9881;line-height:1.8;margin:6px 0 0}.source-status{font-size:11px;line-height:1.6;color:#efb184;min-height:0}.reset-demo{margin:16px auto 0;font-size:10px}.player-dialog{width:min(1050px,calc(100% - 24px));padding:22px;background:#0c100a;max-height:94dvh;overflow:auto}.player-header{align-items:center;padding-bottom:18px}.player-header h2{font-size:19px}.video-wrap{position:relative;aspect-ratio:16/9;background:#000;border-radius:9px;overflow:hidden}video{width:100%;height:100%;display:block}.video-status{position:absolute;left:16px;right:16px;bottom:50px;background:#1d241bef;border:1px solid #ffffff20;color:#e0e8d8;padding:14px;border-radius:7px;font-size:12px;line-height:1.7;pointer-events:none}.player-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:12px}.player-footer p{color:#8c9980;font-size:10px;line-height:1.7}.player-footer>div{display:flex}.toast{position:fixed;z-index:100;bottom:28px;left:50%;transform:translateX(-50%);background:var(--lime);color:#14210c;border:1px solid #e5ffc5;border-radius:9px;padding:13px 20px;font-size:12px;box-shadow:0 10px 60px #0007;max-width:90vw;width:max-content}
@media(min-width:1600px){.hero{height:650px}.hero-content{padding-top:95px}h1{font-size:90px}.catalog-shell{padding-left:64px;padding-right:64px}.topbar{padding:0 64px}.channel-brand{height:115px}}
@media(max-width:1150px){.topnav{gap:22px}.topbar{padding:0 32px}.catalog-shell{padding:0 32px}.hero-content{padding-left:40px}.channel-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.channel-brand{height:80px}.poster-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.art-title{font-size:21px}.preview-label{display:none}.channel-card:nth-child(n+4){display:none}#browse-grid .channel-card{display:block}.top-actions{gap:10px}}
@media(max-width:760px){:root{--rail:0px}.rail{width:100%;height:64px;top:auto;bottom:0;flex-direction:row;justify-content:center;border-top:1px solid var(--line);background:#141710f5;backdrop-filter:blur(20px)}.symbol,.rail-line,.rail-settings{display:none}.rail-links{flex-direction:row;justify-content:space-around;gap:0;width:100%}.rail-btn{height:42px;width:50px}.rail-btn.active{border-radius:10px}.topbar{height:72px;padding:0 22px}.topnav{display:none}.wordmark{font-size:26px}.preview-label{display:inline;font-size:7px}.hero{height:540px}.hero-img{object-position:58% center;filter:brightness(.68)}.hero-shade{background:linear-gradient(90deg,#101110b5,#10111010),linear-gradient(0deg,#101110,transparent 85%)}.hero-content{padding:65px 26px 30px}.eyebrow{font-size:8px;letter-spacing:2.5px}h1{font-size:61px;letter-spacing:-3px;margin-top:25px}.hero-content>p{font-size:12px;max-width:315px}.hero-meta{font-size:10px;gap:10px}.hero-actions{gap:9px}.btn{font-size:11px;padding:13px 17px}.hero-foot{gap:20px;margin-top:36px}.demo-pill{font-size:6px;letter-spacing:1px;margin-left:0}.vertical-caption{display:none}.catalog-shell{padding:0 22px}.connection-strip{margin-top:0;padding:15px;gap:11px;margin-bottom:34px;flex-wrap:wrap}.connection-icon{height:34px;width:34px}.connection-strip>.text-link{margin-left:45px;font-size:10px}.connection-strip p{font-size:10px}.connection-strip strong{font-size:11px}.section-heading{align-items:start;gap:15px;flex-wrap:wrap;margin-bottom:18px}h2{font-size:20px}.section-heading>.text-link{font-size:10px}.section-kicker{font-size:7px;letter-spacing:1.5px}.channel-grid{gap:9px}.channel-brand{height:75px}.channel-logo{font-size:15px}.channel-logo small{font-size:6px}.channel-meta{padding:11px 8px}.channel-meta strong{font-size:9px}.channel-meta p{font-size:8px}.channel-live{font-size:5px;top:6px;left:6px}.poster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.poster-art{aspect-ratio:.85}.art-title{font-size:25px;left:14px;bottom:19px;right:12px}.art-title small{font-size:7px}.poster-meta strong{font-size:11px}.poster-meta p{font-size:9px}.poster-chip{font-size:6px}.filter-chips button{font-size:9px;padding:6px 10px}.section{margin-bottom:32px}footer{gap:10px;flex-wrap:wrap;padding-bottom:90px}footer p{font-size:9px}footer>span{margin-left:0;width:100%;font-size:8px}.settings-dialog{padding:23px}.player-dialog{padding:14px}.player-footer{gap:6px}.player-footer p{font-size:9px}.video-status{font-size:10px;bottom:35px;padding:9px}.desktop-br{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.activation-badge{display:flex;align-items:center;gap:8px;color:#d9c49a;font-size:10px;padding:11px 13px;border:1px solid #d9c49a20;background:#d9c49a08;border-radius:7px;margin-bottom:20px}.activation-badge>span{height:5px;width:5px;background:#d9c49a;border-radius:50%}.device-card{padding:18px;background:#0f120c;border:1px solid #a978ef30;border-radius:9px}.device-card label{font-size:10px;color:#a3ae98}.device-code-row{display:flex;align-items:center;gap:10px;margin-top:13px}.device-code-row input{min-width:0;flex:1;font-family:monospace;font-size:20px;letter-spacing:.5px;border:0;background:transparent;color:var(--lime);width:100%;padding:8px 0}.device-code-row .btn{padding:10px 14px;min-height:38px;font-size:10px}.device-card p{font-size:9px;line-height:1.7;color:#8b9880;margin:10px 0 0}.activation-steps{list-style:none;padding:0;margin:24px 0;display:grid;gap:18px}.activation-steps li{display:flex;gap:14px;align-items:start}.activation-steps li>span{font-family:monospace;font-size:11px;color:#8c9a7f;padding:4px 6px;border:1px solid #ffffff12;border-radius:5px}.activation-steps strong{font-size:11px;font-weight:500}.activation-steps p{font-size:10px;color:#88977b;margin:5px 0 0;line-height:1.6}.activation-status{font-size:10px;color:#a7ab9d;line-height:1.8;margin-top:12px}.device-note{border-top:1px solid #ffffff10;display:flex;gap:12px;align-items:start;padding-top:17px;margin-top:18px;color:#849376}.device-note svg{width:18px;height:18px}.device-note p{font-size:9px;line-height:1.8;margin:0}.btn:disabled:hover{transform:none}.btn:disabled{cursor:not-allowed}.device-code-row input::selection{background:#a978ef;color:#111}
@media(max-width:400px){.device-code-row input{font-size:16px;letter-spacing:0}.device-card{padding:14px}.device-code-row .btn{padding:9px}}

.password-label{margin-top:20px}.password-toggle{background:none;color:var(--lime);font-size:10px;padding:4px;white-space:nowrap}.login-provider{display:flex;align-items:center;gap:9px;border-top:1px solid #ffffff12;padding-top:18px;margin-top:22px;color:#87967a;font-size:10px}.login-provider svg{width:15px;height:15px}.login-provider strong{font-weight:500;color:#b3bda9}.demo-access{margin:20px auto 0;font-size:10px}.account-info{padding:22px;border:1px solid #a978ef20;border-radius:9px;background:#a978ef06}.account-badge{font-size:9px;letter-spacing:1.5px;color:var(--lime)}.account-info h3{font-size:23px;letter-spacing:-.5px;margin:15px 0 8px}.account-info p{font-size:11px;color:#95a287}.login-dialog .input-wrap{min-height:48px}.login-dialog .dialog-intro{margin-bottom:25px}

/* Nova Play brand assets: original artwork, placed without redrawing. */
.brand-link{display:inline-flex;align-items:center;gap:12px;line-height:1;letter-spacing:0}.brand-logo{display:block;width:186px;height:auto;flex-shrink:0}.brand-link .preview-label{margin-left:0}.symbol img{display:block;width:36px;height:36px}.avatar{background:#21172f;border-color:#b797ff30}.avatar img{display:block;margin:auto}.login-logo{display:block;width:270px;max-width:100%;height:auto;margin:0 0 27px}.login-dialog .dialog-heading>div{min-width:0;flex:1}.player-brand-heading{display:flex;align-items:center;gap:13px}.player-brand-heading>img{flex-shrink:0}.primary{background:#9150df;color:#fff}.primary:hover{background:#a566ee}.rail-btn.active{background:#a978ef18}.connection-strip{background:#19151f;border-color:#b797ff22}.connection-strip p{color:#9b91a8}.connection-icon{border-color:#b797ff30}.input-wrap{background:#110e17}.settings-dialog{background:#18131f}.account-info{background:#b797ff07;border-color:#b797ff25}.section-kicker{color:#a097ac}.toast{background:#c8aff9;color:#20102d;border-color:#ddcdff}footer .brand-logo{width:140px}footer .brand-link{flex-shrink:0}
@media(max-width:1150px){.brand-logo{width:172px}.brand-link .preview-label{display:none}}
@media(max-width:760px){.brand-logo{width:165px}.login-logo{width:250px}.brand-link .preview-label{display:none}footer .brand-logo{width:132px}.player-brand-heading>img{width:28px;height:28px}}

.stream-settings{border-top:1px solid #b797ff25;padding-top:22px;margin-top:24px}.stream-settings h3{font-size:16px;margin:9px 0 20px}.stream-settings label{display:block;font-size:11px;color:#c1b7ce;margin-bottom:9px}.stream-settings p{font-size:11px;line-height:1.7;color:#a69aaf;margin:12px 0 0}.stream-settings select,.player-stream-controls select{background:#110e17;color:#f5efff;border:1px solid #b797ff40;border-radius:7px;padding:12px;font:inherit;font-size:12px}.stream-settings select{width:100%}.player-stream-controls{display:flex;align-items:center;gap:12px;margin:0 0 12px;flex-wrap:wrap}.player-stream-controls label{font-size:11px;color:#c1b7ce}.player-stream-controls .btn{padding:10px 14px;font-size:11px}.player-diagnostic{font-size:11px;color:#b7a5cc;line-height:1.7;margin:0 0 12px}.video-status{pointer-events:none}.stream-settings[hidden],.player-stream-controls[hidden]{display:none}

/* Catalog navigation remains at the top on every screen. */
:root{--rail:0px}.app-shell{margin-left:0}.topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto minmax(0,1fr) auto;height:auto;min-height:88px;background:#14101df5;backdrop-filter:blur(18px)}.topnav{display:flex;justify-content:center;gap:25px;min-width:0;min-height:70px;overflow-x:auto;white-space:nowrap;scrollbar-width:thin}.topnav button{flex:0 0 auto;height:70px;font-size:13px}.account-trigger{display:flex;align-items:center;gap:10px;padding:8px 11px;border:1px solid #b797ff25;border-radius:10px;background:#21172f;color:#d8c9eb;min-height:43px}.account-trigger img{flex-shrink:0;object-fit:contain}.account-trigger span{font-size:11px;white-space:nowrap}.account-actions{display:grid;gap:10px;margin:18px 0 10px}.account-actions a{display:flex;justify-content:center}.account-info #account-refresh-status{font-size:10px;line-height:1.6;min-height:1.6em}.catalog-shell{padding-top:28px}footer{padding-bottom:30px}.topnav button:focus-visible,select:focus-visible{outline:2px solid var(--lime);outline-offset:-3px}
@media(max-width:1050px){.topbar{grid-template-columns:1fr auto;padding:15px 28px 0;gap:0 16px}.brand-link{grid-column:1;grid-row:1}.top-actions{grid-column:2;grid-row:1}.topnav{grid-column:1/-1;grid-row:2;justify-content:flex-start;min-height:54px;gap:28px;margin-top:8px}.topnav button{height:54px}.brand-logo{width:174px}.preview-label{display:none}}
@media(max-width:760px){.topbar{padding:13px 18px 0}.topnav{display:flex;gap:23px;min-height:50px;margin-top:7px}.topnav button{height:50px;font-size:12px}.brand-logo{width:155px}.account-trigger span{display:none}.account-trigger{padding:7px;min-width:42px;justify-content:center}.top-divider{display:none}.top-actions{gap:5px}.catalog-shell{padding-top:24px}.connection-strip{margin-top:0}.login-logo{width:250px}footer{padding-bottom:28px}.brand-link .preview-label{display:none}}

/* Compact navigation, inline search and uncropped catalog artwork. */
.catalog-controls{display:flex;align-items:center;justify-content:center;gap:20px;min-width:0}.catalog-controls .topnav{gap:20px;overflow:visible}.topnav button{display:inline-flex;align-items:center;justify-content:center;gap:7px}.topnav button svg{width:17px;height:17px}.header-search{display:flex;align-items:center;gap:3px;flex:0 1 205px;min-width:145px;max-width:240px;height:39px;background:#21192d;border:1px solid #b797ff30;border-radius:9px;padding:0 5px}.header-search .icon-btn{width:30px;height:32px;flex-shrink:0}.header-search svg{width:17px;height:17px}.header-search input{width:100%;min-width:0;border:0;outline:0;background:none;color:#eee6f7;font-size:12px;padding:8px 0}.header-search input::placeholder{color:#a394b2}.header-search input::-webkit-search-cancel-button{display:none}.header-search:focus-within{border-color:var(--lime);box-shadow:0 0 0 2px #b797ff15}.poster-grid{grid-template-columns:repeat(auto-fill,minmax(130px,156px));gap:20px 16px;justify-content:start}.poster-card{max-width:156px}.poster-art{aspect-ratio:2/3;background:#110d18;border-radius:7px}.poster-art img{object-fit:contain;filter:none}.poster-art:hover img{transform:none}.catalog-poster .poster-art:after{display:none}.poster-placeholder{display:grid;place-items:center;height:100%;color:#82728f}.poster-placeholder svg{width:36px;height:36px}.poster-meta{padding:9px 0;gap:4px}.poster-meta>div{min-width:0}.poster-meta strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;line-height:1.5;font-size:11px}.poster-meta p{font-size:9px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0}.poster-meta .save-btn{width:25px;height:27px;flex-shrink:0}.poster-meta .save-btn svg{width:16px;height:16px}.art-title{font-size:17px;left:10px;right:10px;bottom:12px}.art-title small{font-size:6px;letter-spacing:1px}
@media(max-width:1350px){.topbar{grid-template-columns:1fr auto;padding:15px 28px 0;gap:0 16px}.topbar>.brand-link{grid-column:1;grid-row:1}.top-actions{grid-column:2;grid-row:1}.catalog-controls{grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:24px}.catalog-controls .topnav{grid-column:auto;grid-row:auto;min-height:54px;margin-top:0}.catalog-controls .topnav button{height:54px}.header-search{margin-left:0;flex:0 1 230px}}
@media(max-width:760px){.topbar{padding:12px 18px 10px}.catalog-controls{flex-wrap:wrap;gap:0 12px}.catalog-controls .topnav{width:100%;justify-content:space-between;gap:12px;overflow-x:auto;min-height:50px}.topnav button{gap:5px;font-size:11px}.topnav button svg{width:15px;height:15px}.header-search{flex:1 1 100%;max-width:none;min-width:0;margin-top:3px;height:38px}.poster-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:16px 12px}.poster-card{max-width:156px}.poster-art{aspect-ratio:2/3}.poster-meta strong{font-size:10px}.poster-meta p{font-size:8px}.art-title{font-size:16px}}

/* Space around page scrolling and the sticky purple header boundary. */
html{scrollbar-gutter:stable;scroll-padding-top:190px}.app-shell{margin-right:12px}.topbar{padding-bottom:18px;border-bottom:1px solid #b797ff25;box-shadow:0 8px 0 var(--bg)}.catalog-shell{padding-top:38px}.catalog-controls .topnav{padding-bottom:2px}.category-filters{padding-bottom:10px}.player-surface{position:relative;background:#000;border-radius:9px;overflow:hidden}.video-wrap{display:flex;align-items:center;justify-content:center}.video-wrap video{max-width:100%;max-height:100%;object-fit:contain;flex:none}.display-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px;background:#16101e;color:#c7b9d8}.display-controls label{font-size:11px}.display-controls select{min-width:135px;max-width:100%;background:#251a32;color:#f1eaf9;border:1px solid #b797ff35;border-radius:6px;padding:9px;font:inherit;font-size:11px}.display-controls>span{font-size:10px;color:#a89ab6}.display-controls .fullscreen-btn{margin-left:auto;padding:9px 13px;min-height:36px;font-size:11px}.fullscreen-btn>span:first-child svg{height:16px;width:16px}.player-surface:fullscreen,.player-surface.expanded{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;border-radius:0;background:#000;z-index:1000}.player-surface:fullscreen .video-wrap,.player-surface.expanded .video-wrap{width:100%;height:100%;aspect-ratio:auto;border-radius:0}.player-surface:fullscreen .display-controls,.player-surface.expanded .display-controls{position:absolute;top:16px;right:16px;left:auto;max-width:calc(100% - 32px);border:1px solid #b797ff25;border-radius:9px;background:#16101ee8;opacity:.2;transition:opacity .2s}.player-surface:fullscreen:hover .display-controls,.player-surface:fullscreen:focus-within .display-controls,.player-surface.expanded:hover .display-controls,.player-surface.expanded:focus-within .display-controls{opacity:1}
@media(max-width:760px){.app-shell{margin-right:9px}.topbar{padding-bottom:18px}.catalog-shell{padding-top:32px}.display-controls{gap:8px;padding:10px}.display-controls>span{width:100%;order:3}.display-controls .fullscreen-btn{padding:9px 11px}.player-surface:fullscreen .display-controls,.player-surface.expanded .display-controls{top:9px;right:9px;max-width:calc(100% - 18px);opacity:.8}.player-surface:fullscreen .display-controls>span,.player-surface.expanded .display-controls>span{display:none}}

.live-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px;background:#16101e;border-bottom:1px solid #b797ff20}.live-indicator{font-size:10px;letter-spacing:1px;color:#d9c4f5;display:flex;align-items:center;gap:6px}.live-indicator>span{height:6px;width:6px;border-radius:50%;background:#b797ff}.live-controls .btn{padding:8px 12px;min-height:34px;font-size:11px}.live-volume{display:flex;align-items:center;gap:8px;color:#baabcb;font-size:10px}.live-volume input{width:100px;accent-color:#b797ff}.live-buffer-status{font-size:10px;color:#ae9bbb;margin-left:auto}.player-surface:fullscreen .live-controls,.player-surface.expanded .live-controls{position:absolute;bottom:16px;left:16px;right:16px;border:1px solid #b797ff25;border-radius:9px;background:#16101ee8}.player-surface:fullscreen .video-status,.player-surface.expanded .video-status{bottom:88px}@media(max-width:760px){.live-controls{gap:9px;padding:10px}.live-buffer-status{width:100%;margin-left:0}.live-volume input{width:75px}.player-surface:fullscreen .live-controls,.player-surface.expanded .live-controls{left:9px;right:9px;bottom:9px}.player-surface:fullscreen .video-status,.player-surface.expanded .video-status{bottom:120px}}

.catalog-loading{display:flex;align-items:center;gap:12px;min-height:100px;padding:22px;border:1px solid #b797ff20;border-radius:9px;background:#b797ff05;color:#b9a7ca;font-size:12px;margin-bottom:22px}.catalog-loading>span{height:18px;width:18px;flex-shrink:0;border:2px solid #b797ff25;border-top-color:#b797ff;border-radius:50%;animation:catalog-spin .9s linear infinite}.catalog-error{border:1px solid #d8a2a230;background:#40202b22;border-radius:9px;padding:22px;margin-bottom:22px}.catalog-error p{font-size:12px;line-height:1.7;color:#dcc0cb;margin:0 0 16px}@keyframes catalog-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.catalog-loading>span{animation:none}}

/* Full-page sign-in: the catalogue is mounted only behind the authenticated gate. */
.auth-wallpaper{display:none;position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(6,4,14,.38),rgba(6,4,14,.22) 50%,rgba(6,4,14,.38)),linear-gradient(0deg,rgba(6,4,14,.8),transparent 45%,rgba(6,4,14,.28)),url('/assets/login-wallpaper.png') center/cover no-repeat;background-color:#090610}
body.auth-screen{min-height:100dvh;background:#090610}
.auth-screen .auth-wallpaper{display:block}
.auth-screen .app-shell{display:none}
.auth-screen #settings-dialog{width:min(430px,calc(100% - 40px));max-height:calc(100dvh - 40px);margin:auto;padding:40px 36px 32px;border:1px solid #d1bfff35;border-radius:22px;background:rgba(13,9,23,.91);box-shadow:0 24px 90px #0009,0 0 60px #6336a41a;backdrop-filter:blur(14px);color:#f7f4ff}
.auth-screen #settings-dialog::backdrop{background:rgba(5,3,12,.15);backdrop-filter:none}
.auth-screen .dialog-heading{display:block;text-align:center}
.auth-screen .dialog-heading>div{width:100%}
.auth-screen .login-logo{display:block;width:min(250px,100%);height:auto;margin:0 auto 32px}
.auth-screen .dialog-heading .section-kicker{display:none}
.auth-screen #settings-title{margin:0;font-size:25px;font-weight:650;letter-spacing:-.5px}
.auth-screen .dialog-intro{text-align:center;margin:12px 0 30px;color:#bcb2cb;font-size:13px;line-height:1.6}
.auth-screen #login-form>label{display:block;margin:0 0 9px;font-size:12px;color:#e3dceb;font-weight:500}
.auth-screen #login-form>.password-label{margin-top:20px}
.auth-screen .input-wrap{height:54px;border:1px solid #cdc0e02e;border-radius:10px;background:#ffffff07;transition:border-color .15s,box-shadow .15s}
.auth-screen .input-wrap:focus-within{border-color:#b797ff;box-shadow:0 0 0 3px #b797ff20}
.auth-screen .input-wrap input{font-size:16px;color:#faf7ff;min-width:0}
.auth-screen .input-wrap input::placeholder{color:#82788f}
.auth-screen .password-toggle{font-size:11px;color:#c7adef;padding:10px}
.auth-screen #login-submit{min-height:52px;margin-top:27px;border-radius:10px;background:#b797ff;color:#1b102d;font-size:14px;font-weight:700;justify-content:center;gap:12px;box-shadow:0 6px 24px #9d6ff126}
.auth-screen #login-submit:hover{background:#c5acff}
.auth-screen #login-submit:focus-visible{outline:2px solid #fff;outline-offset:4px}
.auth-screen .activation-status{font-size:12px;line-height:1.6;margin:18px 0 0;text-align:center}
.auth-screen .activation-status:empty{display:none}
.javascript-required{position:relative;margin:25vh auto;padding:24px;max-width:420px;background:#100b1de8;color:white;text-align:center;border-radius:16px}
@media(max-width:480px){.auth-screen #settings-dialog{width:calc(100% - 32px);padding:32px 24px 28px;border-radius:18px;max-height:calc(100dvh - 32px)}.auth-screen .login-logo{width:220px;margin-bottom:28px}.auth-screen .dialog-intro{margin-bottom:25px}.auth-wallpaper{background-position:center,center,43% center}}
@media(max-height:600px){.auth-screen #settings-dialog{padding-top:24px;padding-bottom:24px}.auth-screen .login-logo{width:180px;margin-bottom:16px}.auth-screen .dialog-intro{margin:8px 0 20px}.auth-screen #login-form>.password-label{margin-top:14px}.auth-screen #login-submit{margin-top:20px}}
