:root{color-scheme:dark;--bg:#090b10;--surface:#141923;--border:#ffffff18;--muted:#9aa4b5;--accent:#ef3340;--teal:#a2e5d8;--radius:12px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;background:var(--bg);color:#f6f7fa}
*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:inherit;text-decoration:none}img{max-width:100%}[hidden]{display:none!important}button{color:inherit;border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--teal);outline-offset:4px}input,select{background:#10151f;border:1px solid #313b4b;border-radius:8px;padding:13px 14px;min-width:0;color:#fff}input::placeholder{color:#758093}label{display:flex;flex-direction:column;gap:9px;color:#c9d1df;font-size:.88rem}label small{font-size:.8rem;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2.3rem,4vw,4.4rem);letter-spacing:-.045em;line-height:1.07}h2{font-size:1.5rem;letter-spacing:-.02em}p{line-height:1.6}.muted{color:var(--muted)}.eyebrow{font-size:.72rem;letter-spacing:.19em;font-weight:750;color:var(--teal);text-transform:uppercase;margin-bottom:16px}.wordmark{font-size:1.35rem;font-weight:850;letter-spacing:-.055em;white-space:nowrap}.wordmark b{color:var(--accent)}.primary,.secondary{padding:13px 23px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:650;min-height:45px;transition:background .18s,transform .18s}.primary{background:#f4f6f8;color:#11141a}.primary:hover{background:#dbe4ea;transform:translateY(-1px)}.secondary{background:#ffffff10;border:1px solid #ffffff20;backdrop-filter:blur(12px)}.secondary:hover{background:#ffffff20}.full{width:100%}.round{width:40px;height:40px;border-radius:50%;background:#ffffff14;font-size:1.4rem;display:grid;place-items:center}.round:hover{background:#ffffff30}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.error{color:#ffb1b6}.status-pill{font-size:.76rem;background:#143b32;color:#b1ebd3;border:1px solid #276c58;padding:5px 10px;border-radius:4px}.avatar{height:34px;width:34px;display:grid;place-items:center;border-radius:7px;background:#b82734;font-weight:800}.avatar.large{width:76px;height:76px;font-size:2rem;border-radius:15px}.boot{position:fixed;inset:0;background:var(--bg);z-index:20;display:flex;flex-direction:column;gap:24px;align-items:center;justify-content:center}.boot .wordmark{font-size:2.4rem}.boot p{color:var(--muted)}
.login-view{min-height:100vh;display:grid;grid-template-columns:1.2fr 1fr}.login-art{padding:48px 8%;background:linear-gradient(90deg,#06091477,#090b10c9),linear-gradient(0deg,#090b10,transparent 70%),url('login-bg.png') center/cover;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh}.login-art h1{font-size:clamp(3rem,5vw,5.7rem)}.login-art p:not(.eyebrow){font-size:1.2rem;color:#bac4d0}.login-foot{color:#7e8b9f;letter-spacing:.2em;font-size:.63rem}.login-panel{padding:60px 12%;display:flex;align-items:center;background:radial-gradient(ellipse at top right,#20253666,transparent 70%)}.login-panel form{width:100%;max-width:390px;margin:auto}.login-panel h2{font-size:2.2rem;margin-bottom:12px}.login-panel label{margin-top:22px}.login-panel .primary{margin-top:10px;background:var(--accent);color:#fff}.login-panel .secondary{margin-top:12px}.login-note{font-size:.8rem;text-align:center;margin-top:26px;color:var(--muted)}.password-field{display:flex;border:1px solid #313b4b;border-radius:8px;overflow:hidden;background:#10151f}.password-field input{flex:1;border:0;width:100%;background:none}.password-field button{background:none;padding:0 15px;color:var(--teal);font-size:.8rem}
.topbar{height:82px;padding:0 4%;display:flex;align-items:center;gap:38px;position:absolute;inset:0 0 auto;z-index:4;background:linear-gradient(#090b10ee,#090b1077,transparent)}.topbar nav{display:flex;gap:25px;align-items:center;flex:1;font-size:.86rem;color:#aeb8c9}.topbar nav a{padding:14px 0;white-space:nowrap;border-bottom:2px solid transparent}.topbar nav a.active{color:#fff;border-bottom-color:var(--accent)}.topbar nav a:hover{color:#fff}.account-link{display:flex;align-items:center;gap:9px;font-size:.8rem;white-space:nowrap}#clock{font-size:.75rem;color:#aeb8c9;white-space:nowrap}.app-footer{padding:45px 4% 25px;display:flex;justify-content:space-between;color:#667389;font-size:.75rem;border-top:1px solid #ffffff08}.hero{height:670px;min-height:550px;position:relative;background:#111925;overflow:hidden}.hero-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.8;transition:opacity .5s}.hero-gradient{position:absolute;inset:0;background:linear-gradient(90deg,#090b10 0%,#090b10cf 24%,#090b1044 62%,#090b1033),linear-gradient(0deg,#090b10 0%,transparent 42%)}.hero-copy{position:relative;z-index:1;padding:160px 4% 100px;width:min(780px,65%)}.hero-copy h1{font-size:clamp(2.6rem,4.8vw,5rem);line-height:1.06;max-height:170px;overflow:hidden;margin-bottom:18px;text-wrap:balance}.hero-copy .eyebrow{margin-bottom:17px}.hero-meta{color:#c8cfdb;font-weight:600;font-size:.84rem;min-height:20px;margin-bottom:16px}.hero-plot{color:#b8c0ce;font-size:.95rem;line-height:1.65;max-width:540px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:55px}.hero-pagination{display:flex;align-items:center;gap:16px;margin-top:30px}.hero-pagination .round{height:30px;width:30px;font-size:1.3rem}.hero-pagination span{font-size:.68rem;color:#aab6c6;letter-spacing:.15em}.home-lower{padding:0 4%;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:30px;position:relative;margin-top:-60px;z-index:2;margin-bottom:38px}.home-lower:has(.home-discover:only-child){grid-template-columns:1fr}.home-discover{min-width:0}.section-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.section-title h2{font-size:1.15rem;margin:0}.section-title a{font-size:.72rem;color:#a1acbd;white-space:nowrap}.poster-rail{display:flex;gap:17px;overflow-x:auto;scroll-snap-type:x proximity;padding:5px 3px 18px;scrollbar-width:thin;scrollbar-color:#ffffff26 transparent}.poster-rail .media-card{flex:0 0 174px;scroll-snap-align:start}.poster-rail .compact{flex-basis:156px}.shelf{padding:0 4%;margin:40px 0}.media-card{background:transparent;text-align:left;padding:0;border-radius:8px;min-width:0;position:relative;display:block}.card-picture{position:relative;display:block;aspect-ratio:2/3;border-radius:8px;overflow:hidden;background:#18202b;border:1px solid #ffffff0c}.card-picture img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.card-play{position:absolute;left:calc(50% - 24px);top:calc(50% - 24px);height:48px;width:48px;border-radius:50%;background:#ffffffee;color:#0b0d11;display:grid;place-items:center;opacity:0;transform:scale(.8);transition:all .2s;box-shadow:0 8px 25px #0009}.media-card:hover .card-play,.media-card:focus .card-play{opacity:1;transform:scale(1)}.media-card:hover img{transform:scale(1.045)}.card-title{display:block;font-size:.85rem;font-weight:650;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;margin-top:11px}.card-meta{font-size:.65rem;color:#8c9aaf;display:block;margin-top:6px;text-transform:uppercase;letter-spacing:.04em}.media-card progress{height:3px;width:100%;accent-color:var(--accent);display:block;margin-top:9px}.agenda{border:1px solid #ffffff18;border-radius:10px;padding:20px;background:#111822e6;max-height:320px;display:flex;flex-direction:column;min-width:0}.agenda>.eyebrow{font-size:.68rem;margin-bottom:12px}.agenda #agenda-items{overflow:auto;scrollbar-width:thin;scrollbar-color:#304253 transparent;font-size:.8rem;color:var(--muted)}.match{padding:12px 0;border-bottom:1px solid #ffffff0c}.league{font-size:.7rem;color:#8b9bb0;display:block;margin-bottom:12px}.match>div{display:flex;gap:9px;align-items:center;margin:9px 0;color:#e4e9f0}.match img{width:22px;height:22px;object-fit:contain}.match span:not(.league){flex:1}.match b{color:var(--teal);font-size:1rem}.match small{display:block;color:#a0adbf;margin-top:10px;font-size:.64rem}.match small.in-play{color:#86dfb7}
.catalog-backdrop{position:fixed;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.47}.catalog-shade{position:fixed;inset:0;background:linear-gradient(90deg,#090b10f5,#090b1055),linear-gradient(0deg,#090b10 20%,#090b1033);z-index:0}.catalog-shell{position:relative;display:grid;grid-template-columns:270px minmax(0,1fr);gap:34px;padding:116px 4% 30px;min-height:85vh}.folders{padding:24px 20px;background:#111722e8;border:1px solid #ffffff14;border-radius:11px;height:calc(100vh - 145px);position:sticky;top:25px;display:flex;flex-direction:column}.back-home{font-size:.76rem;color:#aab7c9;margin-bottom:27px}.folders h1{font-size:1.9rem;margin-bottom:25px}.folders .eyebrow{font-size:.65rem;margin-bottom:9px}.folders input{font-size:.78rem;padding:10px;flex-shrink:0}.folders #folder-list{overflow:auto;margin-top:17px;scrollbar-width:thin;scrollbar-color:#2b3646 transparent}.folder{display:block;background:none;text-align:left;padding:13px 12px;border-radius:6px;font-size:.83rem;color:#a5b0c0;width:100%;margin:2px 0;line-height:1.3}.folder:hover{background:#ffffff0c}.folder.selected{background:#f2f4f7;color:#10141b;font-weight:700}.catalog-intro{height:195px;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:30px}.catalog-intro h2{font-size:2.4rem;text-shadow:0 3px 12px #000;max-width:85%;margin:0}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:10px 0 23px}.catalog-toolbar h3{font-size:.9rem;color:#d5dce6;margin:0}.catalog-toolbar input{max-width:260px;font-size:.8rem;padding:11px;background:#090e18b0}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px 19px}.catalog-grid .card-picture{aspect-ratio:16/9}.catalog-grid .card-picture img{object-fit:cover}.catalog-grid .media-card .card-title{font-size:.87rem}.live-grid .card-picture{aspect-ratio:16/8;background:#141c29}.live-grid img{object-fit:contain!important;padding:25px}.live-badge{position:absolute;top:10px;left:10px;background:#bd2934e6;color:white;font-size:.52rem;font-weight:800;letter-spacing:.08em;border-radius:3px;padding:4px 6px}.load-more{display:flex;margin:30px auto}.catalog-grid>.empty{grid-column:1/-1}.catalog-body{min-width:0}.page-shell{padding:145px 6% 65px;min-height:85vh}.page-shell h1{font-size:2.8rem}.page-shell>.catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.search-form{display:flex;gap:12px;max-width:950px;margin:32px 0 45px}.search-form input{flex:1;font-size:1.1rem}.search-form select{max-width:160px}.empty{padding:55px 20px;text-align:center;color:#9daabe;width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px}.empty p{margin:0;max-width:480px}.empty-symbol{font-size:3rem;color:#65768d}.retry-view{display:flex;margin:20px auto 50px}.spinner{border:2px solid #ffffff20;border-top-color:var(--teal);border-radius:50%;height:26px;width:26px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
dialog{color:#f6f7fa;border:1px solid #ffffff1c;padding:0;border-radius:14px;background:#111722;box-shadow:0 24px 80px #000a}dialog::backdrop{background:#03060bbf;backdrop-filter:blur(8px)}.detail-dialog{width:min(880px,94vw);max-height:91vh;overflow:auto}.close-dialog{position:absolute;right:18px;top:18px;z-index:2;width:38px;height:38px;border-radius:50%;background:#10151fe8;font-size:1.5rem}.detail-art{height:340px;position:relative;background:#1a2332}.detail-art img{width:100%;height:100%;object-fit:cover;opacity:.85}.detail-art>div{position:absolute;inset:0;background:linear-gradient(0deg,#111722,transparent 90%)}.detail-copy{position:relative;padding:0 42px 36px;margin-top:-40px}.detail-copy h1{font-size:2.8rem}.plot{font-size:.95rem;line-height:1.8;color:#d1d8e3}.season-heading{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:24px;margin-top:25px}.season-heading h2{margin:0}.episode{display:flex;gap:17px;width:100%;align-items:center;text-align:left;padding:20px 8px;background:none;border-bottom:1px solid var(--border)}.episode:hover{background:#ffffff08}.episode>span{color:#8fa1b9;min-width:25px;text-align:center}.episode div{flex:1}.episode p{color:#8999af;font-size:.8rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:8px 0 0}.player-dialog{width:96vw;max-width:1500px;max-height:96vh;overflow:auto;background:#05080d}.player-heading{display:flex;gap:15px;align-items:center;padding:18px 25px}.player-heading>div{flex:1;min-width:0}.player-heading h2{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:3px 0}.player-heading .eyebrow{font-size:.6rem;letter-spacing:.12em}.player-heading>.secondary{font-size:.72rem;padding:8px 13px;min-height:35px}.video-wrap{position:relative;background:#000;display:flex;align-items:center;justify-content:center;min-height:240px}.video-wrap video{width:100%;display:block;max-height:67vh;aspect-ratio:16/9;object-fit:contain}.player-status{position:absolute;top:30px;left:50%;transform:translateX(-50%);max-width:85%;padding:12px 20px;background:#141b28ec;border-radius:7px;font-size:.8rem;text-align:center;pointer-events:none}.play-gate{position:absolute;inset:0;background:#0006;display:grid;place-items:center}.player-tools{display:flex;gap:15px;padding:16px 25px;align-items:flex-end;flex-wrap:wrap}.player-tools label{font-size:.65rem;gap:6px;max-width:200px}.player-tools select{padding:9px 11px;font-size:.75rem}.player-tools button{min-height:36px;padding:9px 12px;font-size:.73rem}.player-help{font-size:.77rem;color:#a8b6c8;margin:0 25px 20px}.compat-seek{padding:0 25px 12px;display:flex;gap:15px;align-items:center;font-size:.75rem}.compat-seek label{font-size:.7rem}.compat-seek input{flex:1;padding:0;accent-color:var(--accent)}.player-dialog:fullscreen{border:0;border-radius:0;width:100vw;height:100vh;max-width:none;max-height:none}.player-dialog:fullscreen video{max-height:78vh}.channel-overlay{position:absolute;left:0;top:0;bottom:0;width:440px;max-width:90%;background:#0c121ce8;backdrop-filter:blur(8px);z-index:5;padding:25px;display:flex;flex-direction:column;box-shadow:20px 0 45px #0008}.overlay-top{display:flex;justify-content:space-between;align-items:center}.overlay-top h3{margin:0}.channel-overlay>input,.channel-overlay>select{margin-top:14px;font-size:.8rem}.channel-overlay #overlay-channels{overflow:auto;margin-top:18px;scrollbar-width:thin}.overlay-channel{display:flex;align-items:center;gap:17px;text-align:left;width:100%;padding:13px 10px;border-bottom:1px solid #ffffff0d;background:transparent;font-size:.85rem}.overlay-channel:hover,.overlay-channel:focus{background:#ffffff1a}.overlay-channel img{width:45px;height:35px;object-fit:contain}.account-summary{display:flex;align-items:center;gap:28px;background:#141b27;border:1px solid var(--border);padding:30px;border-radius:12px;max-width:650px;margin:34px 0 45px}.account-summary h2{margin-bottom:5px}.account-summary p{margin:5px 0 15px}.saved-accounts{display:flex;flex-wrap:wrap;gap:15px}.service-card{display:flex;flex-direction:column;gap:9px;background:#141a25;border:1px solid #ffffff15;border-radius:10px;padding:25px;text-align:left;min-width:240px}.service-card span{font-size:.85rem;color:#a8b5c7}.service-card small{font-size:.72rem;color:var(--teal);margin-top:12px}.service-card.selected{border-color:#649e99;background:#15242a}#toast{position:fixed;z-index:30;bottom:30px;left:50%;transform:translateX(-50%);padding:16px 25px;border:1px solid #ffffff2b;border-radius:9px;background:#202b3af5;box-shadow:0 10px 35px #0007;max-width:92vw;text-align:center;font-size:.88rem}
.setup-page{display:grid;place-items:center;padding:45px 20px;background:radial-gradient(ellipse at top,#1b263d,transparent 65%)}.setup-card{width:min(460px,100%);background:#121925;border:1px solid #ffffff1a;padding:38px;border-radius:15px}.setup-card>.wordmark{display:block;margin-bottom:30px}.setup-card h1{font-size:2.6rem}.setup-card label{margin:20px 0}.setup-card>p{font-size:.88rem}.setup-card button{width:100%}.admin-header{padding:30px 6%;display:flex;justify-content:space-between;border-bottom:1px solid var(--border)}.admin-header>a:last-child{font-size:.8rem;color:var(--muted)}.admin-main{max-width:1050px;padding:50px 35px 80px;margin:auto}.admin-main h1{font-size:2.7rem}.settings-card{background:#131a25;border:1px solid var(--border);border-radius:12px;padding:30px;margin:24px 0}.settings-card>p{font-size:.87rem;color:var(--muted);max-width:750px}.settings-card label{margin:17px 0}.settings-card .check{flex-direction:row;align-items:center}.provider-row{display:flex;gap:15px;align-items:flex-end;border-top:1px solid var(--border);padding:15px 0}.provider-row label{flex:1;margin:0}.provider-row button{padding:13px}.admin-main #admin-status{color:var(--teal)}
@media(min-width:1650px){.hero{height:760px}.hero-copy{padding-top:195px}.poster-rail .media-card{flex-basis:210px}.home-lower{grid-template-columns:minmax(0,1fr) 360px}.agenda{max-height:380px}}
@media(max-width:1150px){.topbar{gap:20px}.topbar nav{gap:16px}.account-label,#clock{display:none}.home-lower{grid-template-columns:minmax(0,1fr) 290px;gap:20px}.catalog-shell{grid-template-columns:220px minmax(0,1fr);gap:22px}.folders{padding:20px 15px}.hero-copy{width:75%}.page-shell>.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.topbar{height:auto;min-height:95px;flex-wrap:wrap;padding:16px 5% 5px;gap:13px;position:relative;background:#090b10}.topbar .wordmark{flex:1}.topbar nav{order:3;width:100%;overflow:auto;flex:auto;gap:24px;font-size:.8rem;scrollbar-width:none}.topbar nav a{padding:12px 0}.hero{height:550px;min-height:0}.hero-copy{padding:70px 5% 90px;width:90%}.hero-copy h1{font-size:2.8rem}.hero-gradient{background:linear-gradient(90deg,#090b10e6,#090b1044),linear-gradient(0deg,#090b10,transparent)}.home-lower{margin-top:-20px;grid-template-columns:1fr;padding:0 5%}.agenda{max-height:270px}.agenda #agenda-items{display:flex;gap:25px;overflow-x:auto;overflow-y:hidden}.match{min-width:235px;max-width:270px;flex-shrink:0;border-bottom:0;border-right:1px solid #ffffff15;padding:10px 20px 10px 0}.shelf{padding:0 5%}.poster-rail .media-card{flex-basis:144px}.poster-rail .compact{flex-basis:134px}.section-title h2{font-size:1rem}.section-title a{font-size:.65rem}.catalog-shell{padding:20px 4%;grid-template-columns:180px minmax(0,1fr);gap:18px}.folders{height:calc(100vh - 155px);top:20px}.folders h1{font-size:1.55rem}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.catalog-intro{height:160px}.catalog-intro h2{font-size:1.8rem;max-width:100%}.catalog-toolbar{align-items:stretch;flex-direction:column}.catalog-toolbar input{max-width:none}.page-shell{padding:40px 5%}.page-shell h1{font-size:2.2rem}.page-shell>.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.search-form{flex-wrap:wrap}.search-form input{min-width:100%}.search-form select{flex:1;max-width:none}.detail-copy{padding:0 25px 30px}.detail-copy h1{font-size:2.1rem}.player-heading{padding:14px}.player-heading>.secondary{font-size:0;width:36px;padding:0}.player-heading>#channel-list-button:before{content:'☷';font-size:22px}.player-heading>#fullscreen-button:before{content:'⛶';font-size:22px}.player-tools{padding:15px;gap:10px}.player-help{margin:0 15px 15px}.player-tools select{max-width:145px}.compat-seek{padding:0 15px 15px;flex-wrap:wrap}.compat-seek label{width:100%}.login-view{grid-template-columns:1fr}.login-art{min-height:300px;padding:30px 8%}.login-art h1{font-size:2.5rem;margin:30px 0 15px}.login-art div>.eyebrow,.login-foot{display:none}.login-art div>p:last-child{font-size:.9rem}.login-panel{padding:35px 8% 55px}.provider-row{flex-wrap:wrap}.provider-row label{min-width:160px}.admin-main{padding:35px 20px}}
@media(max-width:540px){.catalog-shell{display:block}.folders{height:auto;position:static;padding:16px;margin-bottom:18px}.folders h1{font-size:1.5rem;margin:0 0 12px}.folders .eyebrow,.back-home,.folders input{display:none}.folders #folder-list{display:flex;gap:6px;overflow-x:auto;margin:0}.folder{white-space:nowrap;width:auto;padding:10px}.catalog-intro{height:110px;padding-bottom:14px}.catalog-intro h2{font-size:1.6rem}.catalog-intro .eyebrow{font-size:.6rem;margin:10px 0}.catalog-toolbar{flex-direction:row;align-items:center}.catalog-toolbar h3{max-width:37%;font-size:.75rem}.catalog-toolbar input{width:60%}.catalog-grid,.page-shell>.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-title{font-size:.76rem!important}.hero-copy{padding-top:60px}.hero-copy h1{font-size:2.35rem}.hero-plot{font-size:.84rem}.hero .actions .primary,.hero .actions .secondary{font-size:.78rem;padding:12px 15px}.hero-pagination{margin-top:20px}.hero{height:525px}.home-lower{margin-top:-10px}.section-title>a{max-width:100px;text-align:right}.app-footer{font-size:.63rem}.detail-art{height:240px}.detail-copy{padding:0 20px 25px}.detail-copy h1{font-size:1.8rem}.detail-copy .actions button{font-size:.78rem;padding:11px 15px}.season-heading select{padding:9px;max-width:145px}.player-dialog{width:100vw;max-width:100vw;border-radius:0}.player-heading h2{font-size:.83rem}.video-wrap{min-height:210px}.player-tools{gap:8px}.player-tools label{max-width:46%;flex:1 1 40%}.player-tools label select{max-width:none;width:100%}.player-tools button{font-size:.66rem;flex:1 1 40%}.player-help{font-size:.7rem}.account-summary{padding:20px;gap:17px}.account-summary h2{font-size:1.2rem}.service-card{width:100%;min-width:0}.settings-card{padding:20px}.setup-card{padding:27px}.admin-header{padding:25px 20px}.admin-main h1{font-size:2rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}.spinner{animation:none}}
.language-panel{position:absolute;z-index:12;inset:5% 5% auto;margin:auto;max-width:760px;max-height:90%;overflow:auto;background:#101722f7;border:1px solid #ffffff38;border-radius:14px;padding:30px;box-shadow:0 20px 80px #000b;backdrop-filter:blur(20px)}.language-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.language-heading .eyebrow{margin-bottom:8px}.language-heading h2{margin-bottom:15px}.language-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.language-columns h3{font-size:.9rem;color:#aab7c9;margin:15px 0}.language-choice{display:block;width:100%;text-align:left;padding:15px;margin:7px 0;border:1px solid #ffffff20;border-radius:8px;background:#ffffff08;font-size:.88rem;line-height:1.5}.language-choice[aria-pressed=true]{border-color:var(--teal);background:#4c9e9626}.language-choice[aria-pressed=true]:before{content:'✓ ';color:var(--teal)}.language-choice:focus{outline:3px solid var(--teal);outline-offset:2px;background:#ffffff22}.language-choice:disabled{cursor:default}.language-hint{font-size:.75rem;margin:23px 0 0}#language-status{color:#b8d9d5;font-size:.84rem}.language-columns .muted{font-size:.85rem}@media(max-width:540px){.language-panel{inset:2% 3% auto;padding:18px;max-height:95%}.language-columns{gap:12px}.language-choice{font-size:.76rem;padding:12px}.language-heading h2{font-size:1.25rem}}

.login-art{position:relative;isolation:isolate;overflow:hidden}
.login-banner{position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover;opacity:0;transition:opacity .65s ease}
.login-banner.active{opacity:1}
.login-art-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#06091488,#090b1088),linear-gradient(0deg,#090b10df,transparent 75%);pointer-events:none}
.login-art>.wordmark,.login-art>.login-foot,.login-art-copy{position:relative}
.login-brand-slot{width:min(210px,55%);height:110px;display:grid;place-items:center;margin:0 0 22px;background:#080c14a6;border:1px solid #ffffff20;border-radius:10px;padding:12px}
.login-brand-slot[hidden]{display:none}.login-brand-slot img{max-width:100%;max-height:100%;object-fit:contain}
.login-demo-info{text-align:center;font-size:.75rem;color:#a9bacf;margin:14px 0 0}
.demo-config{border-top:1px solid var(--border);padding:18px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:12px}
.demo-config h3{grid-column:1/-1;margin:0}.demo-config label{margin:0}.demo-config .check{align-self:center}.demo-config button{min-height:43px}
.asset-upload{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin:20px 0}.asset-upload label{flex:1;min-width:200px;margin:0}.asset-upload input{width:100%;font-size:.8rem}
#logo-preview img{width:210px;max-height:110px;object-fit:contain;background:#090b10;padding:8px;border-radius:8px}
.banner-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;margin-top:16px}
.banner-tile img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:5px}.banner-tile button{font-size:.75rem;width:100%;margin-top:6px}
@media(max-width:800px){.demo-config{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.demo-config{grid-template-columns:1fr}.login-brand-slot{height:85px;width:145px;margin-bottom:10px}}

/* Autodemo: form stays visible even before service data arrives. */
.demo-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin-top:20px;padding:22px;border:1px solid #ffffff20;border-radius:10px;background:#0c121c}
.demo-editor label{margin:0}.demo-editor .check,.demo-editor .actions,.demo-editor #demo-config-status{grid-column:1/-1}
.demo-editor .actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.demo-editor #demo-config-status{margin:0;font-size:.85rem}
@media(max-width:650px){.demo-editor{grid-template-columns:1fr;padding:16px}.demo-editor .actions button{width:100%}}

.login-brand-header{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.login-brand-header .login-brand-slot{margin:0}
#logo-status,#banner-status{margin:8px 0 0;font-size:.84rem;color:#b6c7d8}

/* Clear login branding and automatic artwork. */
.login-brand-header{gap:12px}
.login-brand-slot{width:auto;height:auto;max-width:230px;max-height:175px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.login-brand-slot img{display:block;width:auto;height:auto;max-width:230px;max-height:175px;object-fit:contain;filter:drop-shadow(0 8px 18px #0007)}
.login-art-copy h1{font-size:clamp(2.7rem,4.2vw,4.8rem);line-height:1.1;max-height:none;margin-bottom:20px}
.login-art .login-art-copy p{font-size:clamp(1.12rem,1.55vw,1.38rem);line-height:1.55;color:#e3e7ee;text-shadow:0 2px 12px #0009}
.login-credit{font-size:.76rem;color:#a6b3c5;text-align:center;margin:8px 0 0}.login-credit strong{color:#e8edf4}
.demo-dialog{width:min(540px,92vw);max-height:85vh;overflow:auto;padding:28px}.demo-dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.demo-dialog-head h2{margin:3px 0 18px}.demo-dialog-head .eyebrow{margin-bottom:5px}.demo-dialog>.muted{font-size:.86rem}
#demo-services{display:grid;gap:10px;margin-top:20px}.demo-service{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;padding:18px;text-align:left;border:1px solid #ffffff27;border-radius:9px;background:#1a2432}.demo-service:hover,.demo-service:focus-visible{border-color:var(--teal);background:#253443}.demo-service strong{font-size:.95rem}.demo-service span{font-size:.8rem;color:var(--teal);white-space:nowrap}#demo-error{min-height:20px;margin:15px 0 0}
@media(max-width:800px){.login-art{min-height:430px}.login-brand-slot img{max-width:190px;max-height:135px}.login-art-copy h1{font-size:clamp(2.25rem,6vw,3.1rem)}.login-art .login-art-copy p{font-size:1.1rem}}
@media(max-width:540px){.login-brand-slot{max-width:170px;max-height:115px}.login-brand-slot img{max-width:170px;max-height:115px}.demo-service{padding:15px;align-items:flex-start;flex-direction:column;gap:6px}}
@media(min-width:801px){.login-panel{padding:36px 11%}.login-panel label{margin-top:18px}.login-note{margin-top:18px}}

/* Login logo next to the form heading, with no frame behind the artwork. */
.login-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.login-panel-heading>div:first-child{min-width:0}
.login-panel-heading .eyebrow{margin-bottom:16px}
.login-panel-heading h2{margin-bottom:12px}
.login-panel-heading .login-brand-slot{flex:0 1 112px;min-width:0;width:auto;height:auto;max-width:112px;max-height:96px;margin:0;padding:0;border:0;background:none;box-shadow:none}
.login-panel-heading .login-brand-slot img{display:block;width:100%;height:auto;max-width:112px;max-height:96px;object-fit:contain}
.login-credit a{color:#e8edf4;text-decoration:underline;text-underline-offset:3px}
.login-credit a:hover{color:var(--teal)}
@media(max-width:540px){.login-panel-heading h2{font-size:clamp(1.65rem,7vw,2.2rem)}.login-panel-heading .login-brand-slot{flex-basis:92px;max-width:92px;max-height:78px}.login-panel-heading .login-brand-slot img{max-width:92px;max-height:78px}}

/* One visible management row per configured Autodemo. */
.demo-managed{margin-top:28px}
.demo-managed-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.demo-managed-heading h3{font-size:1.15rem;margin:0}
#demo-managed-count{font-size:.8rem;color:var(--teal);white-space:nowrap}
.demo-managed>p{font-size:.84rem;margin:9px 0 18px}
.demo-managed-list{display:grid;gap:10px}
.demo-managed-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 18px;background:#0c121c;border:1px solid #ffffff20;border-radius:9px}
.demo-managed-details{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;min-width:0}
.demo-managed-details strong{font-size:.93rem;overflow-wrap:anywhere}
.demo-managed-details>span:not(.demo-managed-state){font-size:.8rem;color:#c4cfdd}
.demo-managed-state{font-size:.73rem;color:#b9c2d0;border:1px solid #ffffff27;border-radius:5px;padding:5px 8px}
.demo-managed-state.enabled{color:var(--teal);border-color:#a2e5d855;background:#a2e5d80e}
.demo-managed-actions{display:flex;gap:8px;flex-shrink:0}
.demo-managed-actions button{min-height:38px;padding:8px 13px;font-size:.8rem}
.demo-managed-actions .demo-delete{color:#ffc5c8}
.demo-managed-empty{border:1px dashed #ffffff27;border-radius:9px;padding:18px;margin:0;font-size:.85rem}
@media(max-width:650px){.demo-managed-row{align-items:stretch;flex-direction:column;gap:15px}.demo-managed-actions button{flex:1}}

/* Metadata travels with each automatic login banner. */
.login-feature{width:min(100%,590px);margin-top:27px;padding:16px 20px 16px 19px;border-left:3px solid var(--accent);background:linear-gradient(90deg,#070b13d1,#070b1380 72%,transparent);text-shadow:0 2px 12px #000b}
.login-feature-kind{display:block;color:var(--teal);font-size:.68rem;font-weight:800;letter-spacing:.18em;margin-bottom:7px}
.login-art .login-feature h2{font-size:clamp(1.28rem,2vw,1.9rem);line-height:1.14;letter-spacing:-.025em;margin:0 0 8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.login-art .login-feature p{font-size:.95rem;line-height:1.5;color:#e0e6ed;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
@media(max-width:800px){.login-art{min-height:490px}.login-feature{margin-top:19px;padding:13px 16px}.login-art .login-feature h2{font-size:1.3rem}.login-art .login-feature p{font-size:.9rem}}
@media(max-width:540px){.login-art{min-height:470px}.login-art-copy h1{margin:24px 0 12px}.login-feature{margin-top:15px}.login-art .login-feature p{-webkit-line-clamp:3}}

/* 1.4.0: brand at twice its previous size, without a frame. */
.login-panel-heading{gap:16px;display:grid;grid-template-columns:minmax(0,1fr) auto}
.login-panel-heading h2{overflow-wrap:break-word}
.login-panel-heading .login-brand-slot{width:224px;max-width:224px;max-height:192px}
.login-panel-heading .login-brand-slot img{width:224px;max-width:224px;max-height:192px}
.agenda{overflow:hidden;display:flex;flex-direction:column}
.agenda-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-shrink:0}
.agenda-heading .eyebrow{margin:0}
.agenda-motion{border:1px solid #ffffff25;background:transparent;color:var(--teal);border-radius:6px;min-width:30px;height:30px;cursor:pointer}
.agenda #agenda-items{display:block;overflow-y:auto;overflow-x:hidden;max-height:255px;scroll-behavior:auto;scrollbar-width:thin;margin-top:14px;overscroll-behavior:contain}
.agenda .match{min-width:0;max-width:none;width:100%;border-right:0;border-bottom:1px solid #ffffff15}
.agenda-cycle{display:flow-root}
.agenda-cycle[aria-hidden=true]{pointer-events:none}
@media(max-width:800px){.agenda{max-height:340px}.agenda #agenda-items{max-height:255px}}
@media(max-width:540px){.login-panel-heading{gap:10px}.login-panel-heading .login-brand-slot{width:184px;max-width:184px;max-height:156px}.login-panel-heading .login-brand-slot img{width:184px;max-width:184px;max-height:156px}}
@media(max-width:360px){.login-panel-heading{grid-template-columns:1fr}.login-panel-heading .login-brand-slot{justify-self:end}}

.video-wrap video[hidden],#software-player[hidden]{display:none!important}
#software-player{width:100%;background:#000}
#software-picture{width:100%;height:min(54vw,63vh);min-height:200px;position:relative;overflow:hidden}
#software-picture>canvas,#software-picture>video{width:100%;height:100%;object-fit:contain;display:block}
.software-controls{display:flex;align-items:center;gap:12px;padding:12px 18px;background:#0c111b;min-height:54px}
.software-controls button{background:#202b3c;border:0;border-radius:7px;color:#fff;width:38px;min-height:34px}
.software-controls output{font-size:.76rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.software-controls input[type=range]{padding:0;accent-color:var(--accent);height:24px}
#software-seek{flex:1;min-width:50px}
.software-controls label{display:flex;align-items:center;gap:8px;margin:0;font-size:.75rem}
#software-volume{width:88px}
@media(max-width:540px){.software-controls{gap:8px;padding:10px;flex-wrap:wrap}.software-controls label{margin-left:auto}#software-seek{order:4;flex-basis:100%}}
