:root{color-scheme:dark;--bg:#090b10;--panel:#13161d;--panel2:#1b2029;--text:#f5f3ef;--muted:#9ba2ad;--gold:#e8c38b;--line:#ffffff12;--radius:18px;font:16px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);min-height:100dvh;overflow-x:clip}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;border:1px solid #ffffff15;border-radius:10px;background:#ffffff08;color:var(--text);padding:10px 17px;text-decoration:none;cursor:pointer;transition:background .2s,transform .2s}button:hover,.button:hover{background:#ffffff16}button:disabled{opacity:.4;cursor:default}button.primary,.button.primary{background:var(--gold);color:#191714;border-color:var(--gold);font-weight:650}button.primary:hover{background:#f3d6ab}button.danger{background:#703035}button svg,.button svg{width:20px;height:20px;flex:none}button.icon-button{padding:10px;width:46px;flex:none}input:not([type=checkbox]):not([type=range]),select{width:100%;border:1px solid #ffffff1b;border-radius:10px;background:#090c12;color:var(--text);min-height:50px;padding:12px 14px;outline:none}input::placeholder{color:#626c7a}input:focus,select:focus{border-color:var(--gold)}label{display:flex;flex-direction:column;gap:8px;color:#c5cad2;font-size:.875rem}input[type=checkbox]{appearance:none;width:21px;height:21px;border:1px solid #68707b;border-radius:5px;display:inline-grid;place-content:center;flex:none;background:transparent;cursor:pointer}input[type=checkbox]:checked{background:var(--gold);border-color:var(--gold)}input[type=checkbox]:checked:after{content:'✓';color:#191714;font-size:16px}input[type=range]{accent-color:var(--gold);width:100%;min-width:40px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:4px;z-index:2}a{color:inherit}h1,h2,h3,h4,p{margin:0}h1{font-size:clamp(2rem,3.6vw,3.8rem);font-weight:550;letter-spacing:-.045em;line-height:1.12}h2{font-size:1.5rem;letter-spacing:-.025em;font-weight:550}h3{font-size:1rem;font-weight:550}p{color:var(--muted)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;left:16px;top:-100px;z-index:2000;background:var(--gold);color:#111;padding:10px}.skip:focus{top:10px}.brand{display:inline-flex;align-items:center;font-size:31px;font-weight:350;letter-spacing:-1.4px;line-height:1;white-space:nowrap;color:#f4f1ec}.brand>span{font-weight:700}.brand i{width:6px;height:6px;border-radius:50%;background:var(--gold);margin:18px 0 0 5px}.brand-link{text-decoration:none}.eyebrow{font-size:.75rem;letter-spacing:.2em;font-weight:650;color:var(--gold);display:block}.muted,.fine{color:var(--muted)}.fine{font-size:.8rem;line-height:1.6}.full{width:100%}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.text-button{background:none;border:0;padding:0;min-height:40px;color:var(--gold)}.text-button:hover{background:none;color:#f5dfbb}.check{display:flex;flex-direction:row;align-items:center;gap:10px;font-size:.875rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.password-field{position:relative;display:block}.password-field input{padding-right:72px!important}.password-field button{position:absolute;right:6px;top:4px;border:0;background:none;color:var(--muted);font-size:.8rem;min-height:42px;padding:8px}.form-error{color:#f8a0a0;font-size:.875rem;min-height:0}.form-error:empty{display:none}form{display:flex;flex-direction:column;gap:19px}.busy button.primary:before{content:'';width:15px;height:15px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .7s linear infinite}.spinner{width:30px;height:30px;border:2px solid #ffffff20;border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.auth-page{min-height:100dvh;position:relative;isolation:isolate;padding:45px 6vw 28px;background:radial-gradient(ellipse at 20% 35%,#28303888 0,transparent 48%),radial-gradient(ellipse at 5% 80%,#74573532 0,transparent 45%),#090c11}.auth-page:before{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(120deg,transparent 40%,#d6ba8910 40.1%,transparent 40.3%,transparent 60%,#ffffff05 60.1%,transparent 60.3%);pointer-events:none}.auth-wordmark .brand{font-size:35px}.auth-layout{max-width:1280px;margin:65px auto 60px;display:grid;grid-template-columns:1fr 460px;gap:10vw;align-items:center}.auth-story .eyebrow{margin-bottom:28px}.auth-story h1{font-size:clamp(4rem,7.3vw,7rem);line-height:.99;font-weight:450;letter-spacing:-.055em}.auth-story h1 em{font-family:Georgia,serif;font-weight:400;color:var(--gold)}.auth-story p{margin-top:32px;font-size:1.05rem;line-height:1.8;color:#a9adb4}.auth-tags{display:flex;gap:28px;margin-top:48px;font-size:.7rem;letter-spacing:.16em;color:#808895}.auth-tags span+span{position:relative}.auth-tags span+span:before{content:'·';position:absolute;left:-17px;color:var(--gold)}.auth-card{background:linear-gradient(150deg,#1d222be6,#13171dd9);border:1px solid #ffffff10;border-radius:22px;padding:38px 34px;box-shadow:0 28px 100px #0005;backdrop-filter:blur(15px)}.small-mark{display:flex;justify-content:center;align-items:center;width:44px;height:44px;background:#e8c38b14;color:var(--gold);border:1px solid #e8c38b25;border-radius:13px;margin-bottom:24px}.small-mark svg{width:20px;height:20px}.auth-card h2{font-size:1.9rem;line-height:1.2;margin:12px 0}.auth-card>.muted{font-size:.9rem;margin:0 0 27px;max-width:320px}.auth-card .eyebrow{font-size:.7rem}.form-foot{text-align:center;font-size:.82rem;margin-top:18px}.privacy-note{display:flex;align-items:center;justify-content:center;gap:8px;border-top:1px solid var(--line);padding-top:22px;margin-top:20px;color:#838b97;font-size:.75rem}.privacy-note svg{width:15px;height:15px;color:var(--gold)}.auth-footer{display:flex;justify-content:space-between;gap:20px;font-size:.7rem;letter-spacing:.04em;color:#707987}.auth-footer span:first-child{letter-spacing:.13em}.boot{min-height:100dvh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:25px}.setup-error{max-width:700px;margin:15vh auto;padding:30px;text-align:center}
#header{height:91px;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 4vw;background:#090b10e8;backdrop-filter:blur(20px);border-bottom:1px solid #ffffff06}#header nav{display:flex;gap:25px;align-items:center;height:100%}#header nav a{position:relative;display:flex;align-items:center;height:100%;font-size:.82rem;font-weight:600;color:#9199a5;text-decoration:none;white-space:nowrap}#header nav a:hover,#header nav a.active{color:#fff}#header nav a.active:after{content:'';position:absolute;left:0;right:0;bottom:18px;height:2px;background:var(--gold)}.header-right{display:flex;gap:12px;align-items:center}.header-right .icon-button{background:none;border:0;color:#a8afba}.avatar{border-radius:50%;height:39px;width:39px;min-height:39px;padding:0;font-size:.95rem;border:1px solid #ffffff20}.amber{background:linear-gradient(135deg,#bda57e,#6d5638)!important;color:#fff}.blue{background:linear-gradient(135deg,#749cb4,#324b70)!important;color:#fff}.rose{background:linear-gradient(135deg,#b18893,#704656)!important;color:#fff}.mint{background:linear-gradient(135deg,#88b8a8,#39685d)!important;color:#fff}#mobile-nav{display:none}.app-main{padding:24px 4vw 65px;max-width:2000px;margin:auto;min-height:calc(100dvh - 92px)}.home-greeting{display:flex;align-items:center;justify-content:space-between;color:#9da5b0;font-size:.82rem;margin:0 0 19px}.home-greeting button{font-size:.8rem;color:#bbc0c8}.home-greeting svg{width:15px}.hero{position:relative;min-height:460px;height:36vw;max-height:610px;border-radius:22px;overflow:hidden;background:radial-gradient(ellipse at 75% 20%,#38495c,#121823 70%);isolation:isolate}.hero-art{position:absolute;inset:0 0 0 20%;z-index:-2}.hero-art .art{width:100%;height:100%;aspect-ratio:auto;border-radius:0}.hero-art .art>span{font-size:130px;opacity:.12}.hero-art img{object-position:50% 30%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#111721 5%,#111721e0 25%,#11172150 70%,transparent),linear-gradient(0deg,#090c12dd,transparent 70%);z-index:-1}.hero-copy{position:absolute;bottom:60px;left:4.5%;max-width:58%}.hero-copy h1{font-size:clamp(2.3rem,4.8vw,5rem);margin:18px 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.hero-meta{font-size:.8rem;color:#bec4cc;margin-bottom:18px;letter-spacing:.08em}.hero-description{font-size:.95rem;max-width:490px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:24px;color:#c3c6cb}.hero-index{position:absolute;right:30px;bottom:30px;font-size:.65rem;letter-spacing:.16em;color:#b2b7c3}.quick-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:20px 0 42px}.quick-paths a{display:flex;align-items:center;gap:13px;padding:18px 20px;background:linear-gradient(100deg,#171c24,#11151d);border:1px solid var(--line);border-radius:12px;text-decoration:none;font-size:.9rem}.quick-paths svg{width:21px;height:21px;color:var(--gold)}.quick-paths b{font-weight:400;margin-left:auto;color:#707a89}.rail-section{margin-bottom:38px}.section-title{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:17px;gap:20px}.section-title h2{font-size:1.35rem}.section-title>span{color:#707987;font-size:.75rem}.rail{display:flex;gap:18px;overflow-x:auto;overflow-y:hidden;padding:5px 4px 16px;margin:0 -4px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#303641 transparent}.card{width:calc((100% - 90px)/6);min-width:155px;flex:none;scroll-snap-align:start}.card-open{padding:0;border:0;background:none;display:block;width:100%;text-align:left;border-radius:11px;transition:transform .2s}.card-open:hover{background:none;transform:translateY(-4px)}.art{position:relative;aspect-ratio:2/3;overflow:hidden;border-radius:10px;background:linear-gradient(145deg,#253040,#141b28);display:flex;align-items:center;justify-content:center;isolation:isolate}.art>span{font-weight:300;font-size:2.7rem;letter-spacing:-.04em;color:#657183;position:absolute}.art img{width:100%;height:100%;object-fit:cover;z-index:1}.card-caption{padding:13px 2px 4px}.card-caption h3{font-size:.88rem;font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.card-caption p{font-size:.73rem;color:#7f8998;margin-top:4px;min-height:18px}.channel-card .art{aspect-ratio:16/10;background:linear-gradient(140deg,#1b2430,#151921)}.channel-card img{object-fit:contain;padding:25px}.track{width:100%;height:3px;border-radius:5px;overflow:hidden;background:#ffffff1a}.track i{display:block;height:100%;background:var(--gold)}.category-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.category-tiles button{justify-content:start;min-height:68px;text-align:left}.category-tiles svg{color:var(--gold)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:20px 0 35px}.page-heading .eyebrow{margin-bottom:14px}.page-heading h1{font-size:clamp(2rem,3.4vw,3.3rem)}.page-heading>.muted{font-size:.8rem}.category-select{min-width:200px;max-width:300px}.poster-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:28px 18px}.poster-grid .card{width:auto;min-width:0}.pager{display:flex;align-items:center;justify-content:center;gap:22px;margin:35px 0}.pager span{font-size:.8rem;color:var(--muted)}.tabs{display:flex;gap:9px;margin-bottom:28px}.tabs button{border-radius:24px;padding:10px 24px}.tabs .active{background:var(--gold);color:#181818}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:17px;padding:70px 20px;min-height:300px}.empty>svg{width:40px;height:40px;color:#677282;margin-bottom:8px}.empty p{max-width:480px;font-size:.95rem}.empty .button,.empty button{margin-top:8px}.notice{border:1px solid #e8c38b30;border-radius:10px;padding:20px;font-size:.9rem}.skeleton-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.skeleton{height:270px;border-radius:12px;background:linear-gradient(100deg,#171d25 25%,#242b34 40%,#171d25 60%);background-size:300% 100%;animation:shimmer 1.8s infinite}@keyframes shimmer{to{background-position:-150% 0}}
.profiles-page{display:flex;align-items:center;flex-direction:column;justify-content:center;min-height:100dvh;padding:50px 24px;background:radial-gradient(ellipse at 50% 0,#232d38,#090b10 65%)}.profiles-page>.brand{margin-bottom:70px}.profiles-page>h1{margin:15px 0 45px}.profile-grid{display:flex;justify-content:center;flex-wrap:wrap;gap:28px;margin-bottom:50px}.profile-choice{flex-direction:column;padding:0;background:none;border:0;gap:14px;min-width:125px;max-width:170px}.profile-choice:hover{background:none}.profile-face{width:125px;height:125px;border-radius:26px;font-size:3.7rem;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px 0 #fff3;transition:transform .2s}.profile-choice:hover .profile-face{transform:scale(1.04)}.profile-face.add{border:1px solid #ffffff20;color:var(--muted);box-shadow:none}.profile-face svg{width:38px;height:38px}.profile-choice strong{font-weight:500;overflow-wrap:anywhere}.profile-choice small{font-size:.72rem;color:var(--muted)}.connect-page{max-width:550px;margin:35px auto;padding:30px;border:1px solid var(--line);background:var(--panel);border-radius:20px}.dialog-heading{margin-bottom:26px}.dialog-heading h2{font-size:2rem;margin:10px 0}.dialog-heading p{font-size:.9rem}
dialog{border:1px solid #ffffff18;background:#141922;color:var(--text);padding:36px;border-radius:20px;max-width:min(800px,calc(100vw - 32px));width:620px;max-height:88dvh;overflow:auto;box-shadow:0 30px 160px #000b;z-index:1000}dialog::backdrop{background:#03060bcc;backdrop-filter:blur(10px)}dialog>.dialog-close{position:sticky;top:0;float:right;margin:-20px -20px 0 0;z-index:10;border-radius:50%;background:#121820e8}dialog>h2{margin-bottom:20px}dialog>p{margin-bottom:20px}.detail-backdrop{height:230px;margin:-36px -36px 0;position:relative}.detail-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#141922,transparent 85%)}.detail-backdrop .art{height:100%;aspect-ratio:auto;border-radius:0}.detail-backdrop img{object-position:center 30%}.detail-content{position:relative;margin-top:-20px}.detail-content h2{font-size:2.6rem;line-height:1.1;margin:13px 0 15px;overflow-wrap:anywhere}.metadata{font-size:.82rem;color:#b8bfc9}.description{font-size:.95rem;line-height:1.75;margin:20px 0}.cast{font-size:.8rem;margin:24px 0}.cast strong{color:#fff;margin-right:10px}.season-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:25px 0 18px;margin-top:25px}.episode{width:100%;display:flex;gap:17px;padding:15px 0;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;align-items:center}.episode>.art{width:130px;aspect-ratio:16/10;flex:none}.episode>div:nth-child(2){flex:1;min-width:0}.episode h4{font-weight:500}.episode small{font-size:.68rem;color:var(--gold);letter-spacing:.08em}.episode p{font-size:.78rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:5px 0}.episode span{font-size:.75rem;color:var(--muted)}.episode .track{margin-top:10px}.search-box{display:flex;flex-direction:row;align-items:center;gap:17px;max-width:800px;background:#151b25;border:1px solid #ffffff12;border-radius:14px;padding:8px 22px}.search-box svg{width:26px;height:26px;color:var(--gold);flex:none}.search-box input{border:0!important;background:none!important;font-size:1.2rem;padding-left:0!important}.recent-searches{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 35px}.recent-searches button{min-height:38px;font-size:.8rem;border-radius:30px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-card{background:linear-gradient(140deg,#181e28,#121720);border:1px solid var(--line);border-radius:15px;padding:28px}.settings-card h2{font-size:1.2rem;margin-bottom:20px}.settings-card>p{font-size:.85rem;line-height:1.7;margin-bottom:20px}.settings-card>button{margin-right:8px}.settings-row{display:flex;align-items:center;justify-content:space-between;flex-direction:row;gap:16px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--line);font-size:.88rem}.settings-row small{display:block;color:var(--muted);margin-top:4px;font-size:.75rem}.settings-row button{font-size:.8rem;padding:8px 12px;min-height:40px}.settings-row .actions{gap:5px}.about{grid-column:1/-1}.about .brand{font-size:27px}.category-controls{max-height:50vh;overflow:auto;margin-bottom:20px}.category-controls h3{text-transform:capitalize;margin:20px 0 15px}.category-controls label{margin:10px 0}.toggle input{border-radius:20px;width:39px;height:23px}.toggle input:after{content:'';width:15px;height:15px;background:#717b89;border-radius:50%;transform:translateX(-7px)}.toggle input:checked:after{content:'';background:#191714;transform:translateX(7px);font-size:0}
.live-layout{display:grid;grid-template-columns:190px minmax(240px,1fr) minmax(360px,1.8fr);gap:16px;height:calc(100dvh - 240px);min-height:400px}.live-categories{overflow:auto;padding:0 10px 10px 0;scrollbar-width:thin}.live-categories h3{color:#798391;text-transform:uppercase;font-size:.72rem;letter-spacing:.12em;margin:0 0 18px 12px}.live-categories button{display:block;width:100%;text-align:left;background:none;border:0;font-size:.82rem;line-height:1.4;margin-bottom:4px}.live-categories button.selected{background:#e8c38b18;color:var(--gold)}.channel-list-panel{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:#121720;display:flex;flex-direction:column;min-height:0}.channel-list-head{display:flex;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid var(--line);flex:none}.channel-list-head h3{font-size:.85rem}.channel-list-head span{font-size:.75rem;color:var(--muted)}#channel-scroll{overflow:auto;flex:1;min-height:0;scrollbar-width:thin}#channel-spacer{position:relative}#channel-window{position:absolute;top:0;left:0;width:100%}.channel-row{height:94px;display:flex;align-items:center;padding:7px 8px;border-bottom:1px solid #ffffff08;gap:2px}.channel-row>button:first-child{flex:1;min-width:0;background:none;border:0;text-align:left;padding:6px;justify-content:start}.channel-row .art{width:45px;height:45px;aspect-ratio:1;flex:none;border-radius:8px}.channel-row .art>span{font-size:1rem}.channel-row img{object-fit:contain;padding:5px}.channel-row>button>span{min-width:0}.channel-row strong{display:block;font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-row small{display:block;font-size:.65rem;color:var(--gold)}.channel-row em{display:block;font-size:.7rem;font-style:normal;color:#818d9d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-row .icon-button{width:36px;min-height:40px;padding:7px;border:0;background:none;color:#6d798c}.is-favorite{color:var(--gold)!important}.live-placeholder{border-radius:14px;background:#0d1119;border:1px solid var(--line);align-self:start;min-height:350px}.live-placeholder .empty{padding:80px 22px}.live-placeholder h2{font-size:1.3rem}.live-placeholder p{font-size:.82rem}#player-panel{background:#0c1017;border:1px solid #ffffff16;border-radius:15px;overflow:hidden;box-shadow:0 20px 80px #0008;z-index:60}#player-panel.live-player{position:fixed;top:234px;right:4vw;width:calc((92vw - 222px)/2.8*1.8);max-height:calc(100dvh - 254px);overflow:auto}#player-panel.theater{position:fixed;inset:5vh 5vw;z-index:100;background:#07090e;display:flex;flex-direction:column;box-shadow:0 0 0 100vmax #000d}.player-top{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px}.player-top h2{font-size:1rem;margin-top:5px}.player-top .eyebrow{font-size:.6rem}.player-top button{background:none;border:0}.video-stage{position:relative;background:#000;aspect-ratio:16/9;min-height:180px}.theater .video-stage{flex:1;min-height:0;aspect-ratio:auto}.video-stage video{width:100%;height:100%;object-fit:contain;display:block}.player-message{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;background:#080b12e8;text-align:center;gap:18px}.player-message p{font-size:.95rem;max-width:450px;color:#bec4ce}.player-tools{display:flex;align-items:center;gap:2px;padding:10px 12px;flex-wrap:wrap}.player-tools button{border:0;background:none;padding:9px;min-height:44px;width:42px}.player-tools svg{width:19px;height:19px}.player-tools .volume{width:75px;padding:0 10px}.stream-status{font-size:.67rem;color:var(--gold);margin-left:auto;white-space:nowrap}.program-info{padding:0 22px 23px}.program-info:empty{display:none}.program-info h3{margin:9px 0 13px}.program-info p{font-size:.8rem;margin-top:13px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.channel-overlay{position:absolute;bottom:60px;left:20px;right:20px;background:#0c111de8;border:1px solid #ffffff18;border-radius:9px;padding:15px;font-size:.85rem;pointer-events:none}#player-panel:fullscreen{inset:0;width:100%;height:100%;max-height:none;border:0;border-radius:0;display:flex;flex-direction:column}#player-panel:fullscreen .video-stage{flex:1;min-height:0;aspect-ratio:auto}#player-panel:fullscreen .program-info{display:none}
.guide-actions{display:flex;align-items:center;gap:10px;margin-bottom:20px}.guide-actions>span{margin-left:auto;font-size:.85rem;color:var(--muted)}.guide-scroll{overflow:auto;border:1px solid #ffffff12;border-radius:13px;background:#10151d;max-height:70vh}.guide-grid{width:1180px;position:relative}.guide-time{display:flex;height:52px;position:sticky;top:0;background:#19202b;z-index:5;border-bottom:1px solid var(--line)}.guide-time>strong{width:220px;flex:none;padding:17px 20px;font-size:.67rem;letter-spacing:.12em;color:#949fb0;position:sticky;left:0;background:#19202b;z-index:7}.guide-time>div{width:960px;display:flex}.guide-time span{width:160px;flex:none;padding:15px 10px;font-size:.8rem}.guide-row{display:flex;height:90px;border-bottom:1px solid var(--line)}.guide-channel{width:220px;flex:none;position:sticky;left:0;background:#151c27;z-index:4;border:0;border-radius:0;border-right:1px solid #ffffff15;justify-content:start;text-align:left;padding:12px;gap:12px}.guide-channel>.art{height:42px;width:42px;aspect-ratio:1;flex:none}.guide-channel img{object-fit:contain;padding:5px}.guide-channel .art>span{font-size:1rem}.guide-channel>span{font-size:.77rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.guide-channel small{display:block;font-size:.68rem;color:#8492a5}.guide-programs{position:relative;width:960px;background:repeating-linear-gradient(90deg,transparent 0,transparent 159px,#ffffff08 159px,#ffffff08 160px)}.guide-program{position:absolute;top:5px;bottom:5px;border:1px solid #ffffff08;background:#1a222e;border-radius:6px;display:flex;flex-direction:column;align-items:start;justify-content:center;gap:7px;overflow:hidden;text-align:left;padding:10px 13px}.guide-program strong{font-size:.8rem;font-weight:500;max-width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.guide-program span{font-size:.68rem;white-space:nowrap;color:#8693a7}.guide-program.on-air{background:#e8c38b14;border-color:#e8c38b33}.now-line{position:absolute;top:0;bottom:0;width:2px;background:var(--gold);z-index:3;pointer-events:none}.guide-empty{position:absolute;left:25px;top:33px;color:#647085;font-size:.8rem}#toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%,30px);max-width:calc(100vw - 32px);width:max-content;padding:14px 23px;border:1px solid #ffffff20;background:#29313eee;border-radius:12px;color:#fff;z-index:2000;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;font-size:.9rem;box-shadow:0 10px 40px #0006}#toast.show{opacity:1;transform:translate(-50%,0)}#network{position:fixed;bottom:0;left:0;right:0;padding:12px;background:#6b4c28;color:#fff;z-index:2001;text-align:center;font-size:.85rem}.tv-mode{font-size:18px}.tv-mode button,.tv-mode .button{min-height:54px}.reduce-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* ============================================================
   tiviLux GOD MODE — appliance-grade player + Command Center
   ============================================================ */
#player-panel.live-player{top:104px;right:2.2vw;width:min(62vw,1180px);max-height:calc(100dvh - 125px);border-radius:20px;background:#020305;border-color:#ffffff1a;box-shadow:0 30px 120px #000c}
#player-panel.live-player .video-stage{aspect-ratio:16/9;min-height:0}.player-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#0008 0,transparent 24%,transparent 55%,#000d 100%);opacity:0;transition:opacity .25s}.lux-osd{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .2s}.osd-visible .lux-osd,.command-open .lux-osd,.osd-visible .player-vignette{opacity:1}.osd-top{position:absolute;top:0;left:0;right:0;padding:22px 24px;display:flex;align-items:center;gap:10px}.osd-top button{pointer-events:auto;margin-left:auto;border:0;background:#090d14aa;backdrop-filter:blur(15px)}.live-pill{font-size:.62rem;font-weight:800;letter-spacing:.14em;padding:6px 9px;border-radius:5px;background:#e43b45;color:#fff}.osd-quality{font-size:.68rem;color:#d5dbe5;background:#090d14aa;padding:6px 9px;border-radius:5px;backdrop-filter:blur(15px)}.osd-bottom{position:absolute;left:0;right:0;bottom:0;padding:40px 28px 25px}.osd-identity{display:flex;align-items:center;gap:18px;margin-bottom:20px}.osd-number{font-size:2.1rem;font-weight:200;color:var(--gold);min-width:50px}.osd-identity h2{font-size:clamp(1.2rem,2.1vw,2rem);letter-spacing:-.025em}.osd-program{display:flex;gap:12px;align-items:center;margin-top:5px;font-size:.78rem;color:#aab4c3}.osd-program strong{color:#fff;font-weight:500}.osd-actions{display:flex;align-items:center;gap:7px;pointer-events:auto}.osd-actions button{min-height:46px;border:1px solid #ffffff16;background:#101722c7;backdrop-filter:blur(18px);padding:10px 13px}.osd-actions button span{font-size:.7rem}.osd-actions .osd-play{width:52px;background:#f4d39c;color:#17120b}.osd-progress{height:3px;background:#ffffff20;margin-top:16px;border-radius:9px;overflow:hidden}.osd-progress i{display:block;height:100%;background:var(--gold);transition:width 1s linear}.command-center{position:absolute;inset:0;z-index:15;background:linear-gradient(110deg,#090d14f7,#0b111bea);backdrop-filter:blur(24px);padding:28px;overflow:auto}.command-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid #ffffff12;padding-bottom:18px;margin-bottom:22px}.command-head h2{font-size:1.7rem;margin-top:6px}.command-head button{border:0;background:#ffffff0b;width:46px}.command-grid{display:grid;grid-template-columns:1.35fr .85fr .8fr;gap:16px}.command-grid>section{border:1px solid #ffffff12;background:#ffffff07;border-radius:14px;padding:20px;min-height:230px}.command-grid h3{font-size:1.25rem;margin:12px 0}.command-grid p{font-size:.78rem;line-height:1.6;color:#9aa6b6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.command-next{margin-top:18px;border-top:1px solid #ffffff10}.command-next div{display:grid;grid-template-columns:80px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid #ffffff0b;font-size:.74rem}.command-next time{color:var(--gold)}.command-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.command-buttons button{justify-content:start;font-size:.72rem;min-height:50px}.stream-lab dl{margin-top:12px}.stream-lab dl div{display:flex;justify-content:space-between;border-bottom:1px solid #ffffff0d;padding:10px 0;font-size:.75rem}.stream-lab dt{color:#7f8a99}.stream-lab dd{color:#fff}.command-hint{margin-top:18px;color:#6f7b8b;font-size:.68rem;text-align:center;letter-spacing:.04em}.tune-hud{position:absolute;z-index:50;top:50%;left:50%;transform:translate(-50%,-50%);font-size:5rem;font-weight:200;letter-spacing:.08em;padding:20px 32px;border-radius:16px;background:#080c12df;border:1px solid #ffffff24;box-shadow:0 20px 80px #000;backdrop-filter:blur(20px);color:var(--gold)}
#player-panel:fullscreen{background:#000}#player-panel:fullscreen .video-stage{height:100%;aspect-ratio:auto}#player-panel:fullscreen .command-center{position:absolute}.theater .lux-osd{display:block}
@media(max-width:1000px){#player-panel.live-player{top:auto;left:2vw;right:2vw;bottom:78px;width:96vw;max-height:calc(100dvh - 100px)}.command-grid{grid-template-columns:1fr}.command-grid>section{min-height:0}.osd-actions button span{display:none}.osd-bottom{padding:25px 18px 18px}.osd-program span{display:none}}
@media(max-width:620px){.osd-number{font-size:1.3rem;min-width:30px}.osd-identity{gap:8px;margin-bottom:10px}.osd-identity h2{font-size:1rem}.osd-program{font-size:.67rem}.osd-actions{gap:3px}.osd-actions button{padding:7px;width:38px;min-height:38px}.osd-actions .osd-play{width:42px}.command-center{padding:18px}.command-grid{gap:10px}.command-grid>section{padding:15px}.command-hint{display:none}}

/* GOD MODE V5: Guide category navigator */
.guide-heading{align-items:flex-end}.guide-category-control{display:flex;flex-direction:column;gap:7px;min-width:min(360px,100%)}.guide-category-control label{font-size:.62rem;letter-spacing:.14em;color:var(--gold);font-weight:700}.guide-category-control .category-select{min-width:280px}.guide-category-control>.muted{font-size:.72rem}

/* GOD MODE V6 — unmistakable guide category switcher */
.guide-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 20px;padding:16px 20px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:linear-gradient(180deg,rgba(28,35,47,.96),rgba(15,20,28,.96));box-shadow:0 14px 38px rgba(0,0,0,.22)}
.guide-filter-copy{display:flex;flex-direction:column;gap:4px}.guide-filter-copy strong{font-size:18px}.guide-category-control{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.guide-category-control select{min-width:260px;max-width:420px;height:44px;padding:0 42px 0 14px;border-radius:11px;border:1px solid rgba(255,255,255,.15);background:#111722;color:#fff;font:inherit;text-transform:none;letter-spacing:0;cursor:pointer}.guide-category-control select:focus{outline:2px solid #e9c98c;outline-offset:2px}
@media(max-width:700px){.guide-filter-bar{align-items:stretch;flex-direction:column}.guide-category-control{align-items:stretch;flex-direction:column;gap:7px}.guide-category-control select{width:100%;max-width:none;min-width:0}}
\n/* V10 Unified Live Guide */
.guide-scroll{max-height:calc(100dvh - 265px);min-height:420px;overscroll-behavior:contain;scroll-behavior:smooth}.guide-loop-end{height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--muted);background:linear-gradient(180deg,#10151d,#171e28);border-top:1px solid var(--line)}.guide-loop-end strong{color:var(--gold);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase}.guide-loop-end span{font-size:.72rem}.guide-heading h1{margin-bottom:6px}@media(max-width:700px){.guide-scroll{max-height:calc(100dvh - 280px);min-height:360px}.guide-grid{width:1100px}.guide-time>strong,.guide-channel{width:190px}.guide-time>div,.guide-programs{width:910px}.guide-programs{background:repeating-linear-gradient(90deg,transparent 0,transparent 151px,#ffffff08 151px,#ffffff08 152px)}}\n
/* ============================================================
   tiviLux V11 — dense TV-guide theater (V10 guide engine intact)
   ============================================================ */
.live-view .app-main{padding-top:18px}.tivimate-guide-head{display:grid;grid-template-columns:minmax(300px,420px) minmax(320px,1fr) minmax(210px,300px);gap:18px;align-items:stretch;margin:0 0 12px;min-height:218px}.tivimate-preview{position:relative;aspect-ratio:16/9;background:#020305;border:1px solid #ffffff14;overflow:hidden;box-shadow:0 16px 55px #0008}.preview-idle{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#788493;background:radial-gradient(circle at 50% 40%,#18202c,#05070a 68%)}.preview-idle strong{font-size:.88rem;color:#dce2ea}.preview-idle small{font-size:.68rem}.preview-play{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;border:1px solid #d9b97855;color:var(--gold);padding-left:3px}.tivimate-program-info{min-width:0;padding:17px 5px;display:flex;flex-direction:column;justify-content:center}.tivimate-program-info h1{font-size:clamp(1.35rem,2.2vw,2.25rem);margin:8px 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tivimate-program-info p{font-size:.8rem;line-height:1.5;color:#8f9aaa;max-width:760px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.guide-focus-meta{display:flex;gap:10px;align-items:center;margin-top:16px;font-size:.68rem}.guide-focus-meta span{background:#b91f2c;color:white;font-weight:800;letter-spacing:.12em;padding:5px 7px}.guide-focus-meta b{font-weight:500;color:#cbd3df}.tivimate-category{align-self:center}.tivimate-category select{width:100%;min-width:0}.tivimate-category>span{font-size:.62rem;color:var(--gold);letter-spacing:.13em}.tivimate-preview #player-panel.guide-preview-player{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:none!important;min-width:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;z-index:5}.tivimate-preview #player-panel.guide-preview-player .video-stage{width:100%;height:100%;aspect-ratio:auto}.tivimate-preview #player-panel.guide-preview-player .osd-bottom{padding:20px 14px 12px}.tivimate-preview #player-panel.guide-preview-player .osd-identity{margin-bottom:8px;gap:8px}.tivimate-preview #player-panel.guide-preview-player .osd-number{font-size:1rem;min-width:20px}.tivimate-preview #player-panel.guide-preview-player .osd-identity h2{font-size:.82rem}.tivimate-preview #player-panel.guide-preview-player .osd-program{font-size:.6rem}.tivimate-preview #player-panel.guide-preview-player .osd-actions{display:none}.tivimate-preview #player-panel.guide-preview-player .osd-top{padding:8px}.tivimate-preview #player-panel.guide-preview-player .osd-top .icon-button{width:32px;min-height:32px}.tivimate-preview #player-panel.guide-preview-player .command-center{font-size:.75rem;padding:14px}.live-view .guide-actions{height:42px;margin:0;background:#111722;border:1px solid #ffffff10;border-bottom:0;padding:0 10px}.live-view .guide-actions button{min-height:30px;padding:5px 11px;border-radius:4px;background:#1a2230;font-size:.68rem}.live-view .guide-actions>span{font-size:.68rem}.live-view .guide-scroll{border-radius:0;max-height:calc(100dvh - 355px);min-height:390px;background:#0d1219}.live-view .guide-grid{width:1300px}.live-view .guide-time{height:40px;background:#151c26}.live-view .guide-time>strong{width:235px;padding:12px 14px;background:#151c26}.live-view .guide-time>div{width:1065px}.live-view .guide-time span{width:177.5px;padding:11px 9px;font-size:.7rem}.live-view .guide-row{height:68px}.live-view .guide-channel{width:235px;padding:7px 10px;gap:9px;background:#111822}.live-view .guide-channel>.art{width:36px;height:36px}.live-view .guide-channel>span{font-size:.72rem}.live-view .guide-channel small{font-size:.59rem}.live-view .guide-programs{width:1065px;background:repeating-linear-gradient(90deg,transparent 0,transparent 176.5px,#ffffff09 176.5px,#ffffff09 177.5px)}.live-view .guide-program{top:3px;bottom:3px;border-radius:2px;padding:6px 9px;gap:3px;background:#18212d}.live-view .guide-program strong{font-size:.72rem}.live-view .guide-program span{font-size:.59rem}.live-view .guide-program.on-air{background:#5b4828;border-color:#d9b97888}.live-view .guide-empty{top:24px;font-size:.68rem}.live-view .guide-loop-end{height:68px}.live-view .guide-channel:focus,.live-view .guide-program:focus{outline:2px solid var(--gold);outline-offset:-2px;z-index:8}
@media(max-width:900px){.tivimate-guide-head{grid-template-columns:minmax(250px,360px) 1fr;min-height:190px}.tivimate-category{grid-column:1/-1;display:flex;flex-direction:row;align-items:center;gap:12px}.tivimate-category select{max-width:420px}.live-view .guide-scroll{max-height:calc(100dvh - 405px)}}
@media(max-width:700px){.live-view .app-main{padding:8px 10px calc(92px + env(safe-area-inset-bottom))}.tivimate-guide-head{display:flex;flex-direction:column;gap:8px;margin-bottom:8px;min-height:0}.tivimate-preview{width:100%;position:sticky;top:calc(70px + env(safe-area-inset-top));z-index:20;box-shadow:0 8px 30px #000c}.tivimate-program-info{padding:7px 4px 3px}.tivimate-program-info .eyebrow{font-size:.55rem}.tivimate-program-info h1{font-size:1.05rem;margin:4px 0}.tivimate-program-info p{font-size:.68rem;-webkit-line-clamp:1}.guide-focus-meta{display:none}.tivimate-category{display:flex;flex-direction:column;align-items:stretch;gap:4px}.tivimate-category select{height:40px;max-width:none}.live-view .guide-actions{position:sticky;top:0;z-index:12;gap:5px;padding:0 6px}.live-view .guide-actions button{padding:4px 7px}.live-view .guide-actions>span{display:none}.live-view .guide-scroll{max-height:calc(100dvh - 440px);min-height:330px;-webkit-overflow-scrolling:touch}.live-view .guide-grid{width:1050px}.live-view .guide-time>strong,.live-view .guide-channel{width:155px}.live-view .guide-time>div,.live-view .guide-programs{width:895px}.live-view .guide-time span{width:149.16px}.live-view .guide-programs{background:repeating-linear-gradient(90deg,transparent 0,transparent 148.16px,#ffffff09 148.16px,#ffffff09 149.16px)}.live-view .guide-row{height:62px}.live-view .guide-channel{padding:5px 7px}.live-view .guide-channel>.art{width:31px;height:31px}.live-view .guide-channel>span{font-size:.64rem}.live-view .guide-program strong{font-size:.66rem}.live-view .guide-program span{font-size:.55rem}}

/* V11.2: fullscreen is always reachable from the compact guide preview. */
.osd-top-actions{display:flex;align-items:center;gap:6px}.tivimate-preview #player-panel.guide-preview-player .preview-fullscreen{display:grid!important;color:#fff;background:#0009;border:1px solid #ffffff2a}.tivimate-preview #player-panel.guide-preview-player .preview-fullscreen:hover,.tivimate-preview #player-panel.guide-preview-player .preview-fullscreen:focus{color:var(--gold);border-color:var(--gold)}


/* ============================================================
   tiviLux startup sync — visible preload sequence
   ============================================================ */
.startup-page{min-height:100dvh;padding:0!important;background:#080b10;overflow:hidden}.startup-shell{position:relative;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.75fr);grid-template-rows:auto 1fr auto;gap:28px 8vw;align-items:center;padding:clamp(32px,6vw,84px);isolation:isolate}.startup-glow{position:absolute;z-index:-2;inset:-20%;background:radial-gradient(circle at 18% 42%,rgba(225,186,127,.18),transparent 28%),radial-gradient(circle at 78% 28%,rgba(74,116,168,.16),transparent 27%),linear-gradient(135deg,#0c1118,#07090d 72%)}.startup-shell:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(105deg,transparent 0 48%,rgba(255,255,255,.025) 48.1% 48.25%,transparent 48.4% 100%);pointer-events:none}.startup-brand{grid-column:1/-1;align-self:start}.startup-brand .brand{font-size:clamp(34px,4vw,52px)}.startup-copy{align-self:end;max-width:760px}.startup-copy .eyebrow{margin-bottom:18px}.startup-copy h1{font-size:clamp(3.1rem,7vw,7.1rem);max-width:790px;line-height:.93;font-weight:430}.startup-copy p{margin-top:24px;font-size:clamp(1rem,1.5vw,1.3rem);color:#adb5c0}.startup-progress{align-self:end}.startup-progress-track{height:7px;background:#ffffff12;border-radius:999px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff08}.startup-progress-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold),#f1dfbc);box-shadow:0 0 26px #e8c38b6e;transition:width .42s cubic-bezier(.2,.8,.2,1)}.startup-progress-meta{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-top:15px}.startup-progress-meta strong{font-size:1.7rem;font-weight:500;color:#fff}.startup-progress-meta span{font-size:.78rem;letter-spacing:.08em;color:#8e98a5;text-align:right}.startup-steps{align-self:start;display:grid;gap:10px}.startup-step{display:grid;grid-template-columns:50px 1fr 22px;align-items:center;gap:15px;min-height:76px;padding:14px 16px;border:1px solid #ffffff0d;border-radius:16px;background:#10151c99;backdrop-filter:blur(14px);transition:border-color .25s,background .25s,transform .25s}.startup-step>span{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:#ffffff08;color:#75808f}.startup-step>span svg{width:22px;height:22px}.startup-step strong{display:block;font-size:.93rem;font-weight:540}.startup-step small{display:block;margin-top:5px;color:#747f8d;font-size:.76rem}.startup-step>i{width:12px;height:12px;border:2px solid #48515d;border-radius:50%}.startup-step.working{border-color:#e8c38b42;background:#161a20}.startup-step.working>span{color:var(--gold);background:#e8c38b12}.startup-step.working>i{border-color:#e8c38b45;border-top-color:var(--gold);animation:spin .7s linear infinite}.startup-step.done{border-color:#7cdca32b;background:#111a18}.startup-step.done>span{color:#8ee4af;background:#72d89c10}.startup-step.done>i{border:0;background:#77dca0;position:relative}.startup-step.done>i:after{content:'✓';position:absolute;inset:-4px;color:#07110b;font-size:13px;font-style:normal;font-weight:900;text-align:center}.startup-step.warn{border-color:#e9b56d35}.startup-step.warn>i{border-color:#e9b56d}.startup-live-note{grid-column:1/-1;align-self:end;display:flex;align-items:center;gap:8px;color:#687381;font-size:.72rem;letter-spacing:.07em}.startup-live-note b{font-size:.65rem;color:#f1c98f;letter-spacing:.14em}.startup-pulse{width:7px;height:7px;border-radius:50%;background:#f0c98e;box-shadow:0 0 0 0 #f0c98e66;animation:startupPulse 1.8s ease-out infinite}@keyframes startupPulse{70%{box-shadow:0 0 0 9px transparent}100%{box-shadow:0 0 0 0 transparent}}
@media(max-width:800px){.startup-shell{grid-template-columns:1fr;grid-template-rows:auto auto auto auto;padding:34px 22px 28px;gap:28px}.startup-copy{align-self:center}.startup-copy h1{font-size:clamp(2.8rem,15vw,5rem)}.startup-progress{align-self:auto}.startup-steps{gap:8px}.startup-step{min-height:66px;grid-template-columns:44px 1fr 20px;padding:10px 12px}.startup-step>span{width:40px;height:40px}.startup-live-note{grid-column:1}.startup-progress-meta span{max-width:62%;font-size:.7rem}}
@media(max-width:480px){.startup-shell{padding-top:max(28px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}.startup-brand .brand{font-size:31px}.startup-copy .eyebrow{font-size:.66rem}.startup-copy p{font-size:.94rem;margin-top:16px}.startup-step strong{font-size:.86rem}.startup-step small{font-size:.7rem}}
.library-total{display:flex;align-items:baseline;gap:8px;margin:0 0 18px;color:#8e98a5;font-size:.82rem;letter-spacing:.035em}.library-total strong{color:#f5f7fa;font-size:1.05rem;font-weight:650;letter-spacing:0}

/* ============================================================
   V13 — Sports Zone + player-only sign-in notice
   ============================================================ */
.player-only-disclaimer{display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:start;margin:2px 0 0;padding:13px 14px;border:1px solid #e8c38b2b;border-radius:12px;background:#e8c38b0a}.player-only-disclaimer>div{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#e8c38b12;color:var(--gold)}.player-only-disclaimer svg{width:16px;height:16px}.player-only-disclaimer p{margin:0;font-size:.72rem;line-height:1.45;color:#9aa3af}.player-only-disclaimer strong{display:block;margin-bottom:3px;color:#e8c38b;font-size:.62rem;letter-spacing:.14em}.player-only-disclaimer span{display:block}.player-only-ack{align-items:flex-start!important;margin-top:-4px!important;color:#b0b7c1!important;font-size:.7rem!important;line-height:1.45}.player-only-ack input{margin-top:2px}

.sports-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:end;min-height:315px;margin:0 0 15px;padding:44px 46px;border:1px solid #ffffff0b;border-radius:22px;background:radial-gradient(circle at 85% 15%,#d2aa6940,transparent 28%),radial-gradient(circle at 8% 85%,#3e648633,transparent 32%),linear-gradient(135deg,#151b24,#0c1016 66%);isolation:isolate}.sports-hero:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(110deg,transparent 0 67%,#ffffff05 67.1% 67.3%,transparent 67.4%)}.sports-hero h1{font-size:clamp(3rem,6vw,6rem);line-height:.92;font-weight:430;letter-spacing:-.055em;margin:18px 0 20px}.sports-hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--gold)}.sports-hero p{max-width:720px;margin:0;color:#a7afb9;line-height:1.65;font-size:.94rem}.sports-scoreboard{display:grid;grid-template-columns:repeat(3,minmax(105px,1fr));gap:1px;min-width:360px;border:1px solid #ffffff10;border-radius:15px;overflow:hidden;background:#ffffff0b}.sports-scoreboard>div{display:grid;gap:7px;padding:22px 18px;background:#0b1016c9;text-align:center}.sports-scoreboard strong{font-size:2rem;font-weight:550;color:#fff}.sports-scoreboard span{font-size:.57rem;letter-spacing:.13em;color:#7f8997}.sports-source-note{display:flex;align-items:center;gap:9px;margin:0 0 20px;padding:11px 14px;border:1px solid #ffffff0a;border-radius:10px;background:#10151c;color:#8b95a2;font-size:.7rem}.sports-source-note svg{width:15px;height:15px;color:var(--gold)}.sports-source-note b{margin-left:auto;color:#d9b87f;font-size:.58rem;letter-spacing:.12em}.sports-kinds{display:flex;gap:8px;overflow-x:auto;margin:0 0 28px;padding:0 0 5px}.sports-kinds span{flex:none;padding:8px 12px;border:1px solid #ffffff12;border-radius:999px;background:#111720;color:#9ea7b3;font-size:.67rem}.sports-block{margin:0 0 38px}.sports-block .section-title h2{display:flex;align-items:center;gap:10px}.live-dot{width:9px;height:9px;border-radius:50%;background:#ff4b55;box-shadow:0 0 0 0 #ff4b5570;animation:startupPulse 1.7s ease-out infinite}.sports-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.sports-event{min-width:0;padding:18px;border:1px solid #ffffff0d;border-radius:15px;background:linear-gradient(145deg,#151b23,#0f141b);box-shadow:0 14px 35px #0002}.sports-event.live{border-color:#d9ad6752;background:linear-gradient(145deg,#1d1b18,#11161c)}.sports-event-top,.sports-event-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.sports-league{font-size:.59rem;letter-spacing:.13em;color:#d8b77f;text-transform:uppercase}.sports-state{flex:none;font-size:.59rem;letter-spacing:.11em;color:#8a94a0}.sports-state.live{display:flex;align-items:center;gap:6px;color:#ff777d}.sports-state.live i{width:6px;height:6px;border-radius:50%;background:#ff4b55}.sports-state.soon{color:#e7c287}.sports-event h3{font-size:1.08rem;line-height:1.32;margin:16px 0 8px;min-height:2.65em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sports-event>p{margin:0 0 20px;color:#788391;font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sports-event-bottom{padding-top:13px;border-top:1px solid #ffffff09}.sports-event-bottom>span{color:#9ca5b0;font-size:.68rem}.sports-event-bottom button{min-height:36px;padding:7px 11px;font-size:.68rem}.sports-event-bottom svg{width:14px;height:14px}.sports-scanning{min-height:280px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:13px;border:1px solid #ffffff0d;border-radius:16px;background:#10151b}.sports-scanning h2{font-size:1.3rem}.sports-scanning p{max-width:500px;margin:0;color:#7f8996;font-size:.82rem}.sports-disclaimer{margin:50px 0 10px;padding:17px 18px;border-top:1px solid #ffffff0d;color:#697482;font-size:.68rem;line-height:1.55;text-align:center}.sports-disclaimer strong{color:#a58c67;letter-spacing:.12em;margin-right:6px}

@media(max-width:1000px){.sports-hero{grid-template-columns:1fr;align-items:start}.sports-scoreboard{min-width:0;max-width:520px}.sports-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){#mobile-nav a{min-width:48px;font-size:.56rem}.sports-hero{min-height:0;margin:0 -4px 12px;padding:28px 22px;border-radius:17px;gap:27px}.sports-hero h1{font-size:3.25rem}.sports-hero p{font-size:.78rem}.sports-scoreboard{grid-template-columns:repeat(3,1fr);width:100%}.sports-scoreboard>div{padding:14px 7px}.sports-scoreboard strong{font-size:1.45rem}.sports-scoreboard span{font-size:.48rem}.sports-source-note{font-size:.62rem}.sports-source-note b{display:none}.sports-grid{grid-template-columns:1fr}.sports-event{padding:16px}.sports-event h3{font-size:1rem;min-height:0}.sports-event-bottom button{min-height:39px}.player-only-disclaimer{padding:11px 12px;grid-template-columns:30px 1fr}.player-only-disclaimer>div{width:27px;height:27px}.player-only-disclaimer p{font-size:.67rem}.player-only-ack{font-size:.66rem!important}}

/* V14 — focused sports desk */
.sports-v14{position:relative;overflow:hidden;min-height:260px;border:1px solid #343b40;background:radial-gradient(ellipse at 90% 0%,#3c433033,transparent 65%),linear-gradient(115deg,#171e25,#0d1218);border-radius:24px;padding:38px;margin-bottom:22px}
.sports-v14:after{content:'';position:absolute;width:280px;height:280px;border:1px solid #b5cba818;border-radius:50%;right:15%;top:-130px;pointer-events:none;box-shadow:0 0 0 45px #b5cba805,0 0 0 90px #b5cba803}
.sports-v14 h1{font-size:clamp(38px,5vw,66px);line-height:1.04;letter-spacing:-.055em;margin:18px 0}.sports-v14 h1 em{color:#d6e8bd;font-style:normal}.sports-v14 p{font-size:15px;max-width:440px}.sports-date{font-size:12px;color:#9aa7b6}.sports-v14 .sports-scoreboard{z-index:1}.sports-scoreboard strong{font-variant-numeric:tabular-nums}.sports-controls{background:#11171f;border:1px solid #252d36;border-radius:18px;padding:16px;margin-bottom:16px}.sports-tabs{display:flex;gap:7px;overflow-x:auto;margin-bottom:14px;padding-bottom:3px}.sports-tabs button{white-space:nowrap;border-radius:9px;background:transparent;font-size:13px;min-height:40px}.sports-tabs button[aria-pressed=true]{background:#d6e8bd;color:#121a13;border-color:#d6e8bd}.sports-tools{display:flex;gap:10px;align-items:center}.sports-search{flex:1;min-width:120px}.sports-tools input,.sports-tools select{margin:0;width:100%;min-height:44px;background:#0a1016}.sports-tools>label{margin:0}.sports-tools button{white-space:nowrap}.sports-replay-toggle{display:flex;align-items:center;gap:8px;font-size:12px;color:#a3adb8;margin:14px 0 0}.sports-replay-toggle input{width:16px;height:16px;margin:0;accent-color:#d6e8bd}.sports-source-note{font-size:12px;padding:8px 0 18px;color:#91a1ad;min-height:42px}.sports-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px}.sports-event{border-radius:16px;padding:20px;background:linear-gradient(135deg,#151e27,#10161d);border:1px solid #28323c}.sports-event.now{border-top:2px solid #d6e8bd}.sports-event h3{font-size:19px;line-height:1.35;margin:20px 0 10px;display:block;overflow:visible;-webkit-line-clamp:unset;min-height:0}.sports-event p{font-size:13px;margin:0 0 20px}.sports-event-top{gap:8px;align-items:start}.sports-league{color:#d6e8bd;font-size:10px;letter-spacing:.14em}.sports-state{font-size:9px;letter-spacing:.07em;text-align:right;max-width:65%;color:#9eacbb}.sports-state.live{color:#d6e8bd}.sports-event-bottom{gap:8px;padding-top:14px}.sports-event-bottom>span{font-size:12px}.sports-event-bottom button{padding:10px 12px;font-size:12px;min-height:42px}.sports-event-bottom button.primary{background:#d6e8bd;color:#121a13}.sports-alternates{border-top:1px solid #ffffff0b;margin-top:14px;padding-top:12px;font-size:12px;color:#aab9c8}.sports-alternates summary{cursor:pointer;min-height:30px}.sports-alternates button{display:flex;width:100%;justify-content:space-between;font-size:12px;margin-top:6px}.sports-more{display:block;margin:24px auto}.sports-disclaimer{line-height:1.7;margin:30px 0}.sports-disclaimer strong{margin-left:8px}.guide-row{content-visibility:auto;contain-intrinsic-size:auto 78px}
@media(max-width:600px){.sports-v14{padding:24px 20px;min-height:0;margin-top:6px}.sports-v14 h1{font-size:43px}.sports-v14 .sports-scoreboard{width:100%;gap:8px;margin-top:22px;justify-content:space-between}.sports-scoreboard strong{font-size:28px}.sports-scoreboard span{font-size:8px}.sports-tools{flex-wrap:wrap}.sports-search{flex-basis:100%}.sports-tools>label:not(.sports-search){flex:1}.sports-controls{padding:12px}.sports-tabs{gap:4px}.sports-tabs button{padding:9px;font-size:11px}.sports-grid{grid-template-columns:minmax(0,1fr)}.sports-event{padding:18px}.sports-event h3{font-size:19px}.sports-v14 p{font-size:13px}.sports-v14:after{right:-110px}}
@media(prefers-reduced-motion:reduce){.sports-event,.sports-v14{animation:none;transition:none}}
.sports-replay-toggle{flex-direction:row;justify-content:flex-start}.sports-controls .sports-search{display:block}.sports-v14 .sports-scoreboard{align-self:center}.sports-v14 .sports-scoreboard div{min-width:0}.sports-v14 .sports-scoreboard span{white-space:normal}
@media(max-width:600px){.sports-v14{gap:0}.sports-v14 .sports-scoreboard{margin-top:20px}.sports-source-note{border-radius:0;background:none;white-space:normal}.sports-v14 p{margin-bottom:8px}}

.home-ready{padding:clamp(24px,5vw,64px);border:1px solid #29333b;border-radius:24px;background:linear-gradient(120deg,#1b252d,#10151b);margin-bottom:24px}.home-ready h1{font-size:clamp(32px,5vw,60px);line-height:1.1;letter-spacing:-.04em}.home-ready p{color:#aab6c4}.home-ready .actions{flex-wrap:wrap}.home-load-section{margin:28px 0;min-height:120px}.home-load-section>h2{font-size:24px}#home-library-status{color:#aab6c4;font-size:13px}

.startup-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.startup-actions p{width:100%;font-size:13px}.startup-actions button{min-height:44px}.startup-step small{overflow-wrap:anywhere}

/* ============================================================
   tiviLux V15 — WEB + MOBILE OPERATING OVERHAUL
   Performance-first surfaces, progressive libraries, touch UI
   ============================================================ */
html{background:#080a0e;scroll-padding-top:110px}body{overscroll-behavior-y:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}.app-main{width:min(100%,2100px);padding-inline:clamp(22px,3.5vw,70px)}#header{padding-inline:clamp(22px,3.5vw,70px);height:82px;background:linear-gradient(180deg,#090b10f8,#090b10e8);box-shadow:0 12px 40px #0002}#header nav{gap:clamp(14px,1.8vw,30px)}#header nav a{font-size:.79rem}.brand-link .brand{font-size:30px}.card,.rail-section,.home-load-section,.sports-event,.settings-card{content-visibility:auto;contain-intrinsic-size:auto 340px}.art img{transform:translateZ(0)}.card-open{touch-action:manipulation}.poster-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:26px 16px}.poster-grid .card{max-width:260px;width:100%}.rail{scroll-snap-type:x proximity;overscroll-behavior-x:contain}.rail .card{scroll-snap-align:start}.page-heading.catalog-heading{position:sticky;top:82px;z-index:30;margin:0 -10px 24px;padding:18px 10px 14px;background:linear-gradient(180deg,#090b10 65%,#090b10eb 82%,transparent);backdrop-filter:blur(12px)}.catalog-heading .category-select{min-width:min(300px,36vw)}.catalog-total{position:sticky;top:172px;z-index:20;padding:10px 0;background:#090b10e8;backdrop-filter:blur(10px)}.catalog-sentinel{min-height:92px;display:flex;align-items:center;justify-content:center;color:#758191;font-size:.76rem;letter-spacing:.03em}.catalog-sentinel.busy:before{content:'';width:17px;height:17px;border:2px solid #ffffff1a;border-top-color:var(--gold);border-radius:50%;margin-right:10px;animation:spin .7s linear infinite}.catalog-sentinel.done{opacity:.72}.home-ready{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 20%,#31415155,transparent 35%),linear-gradient(125deg,#18222b,#0e1319 72%);box-shadow:0 28px 80px #0004}.home-ready:after{content:'';position:absolute;width:380px;height:380px;border:1px solid #ffffff08;border-radius:50%;right:-150px;top:-180px}.home-load-section{border-top:1px solid #ffffff08;padding-top:20px}.library-total{color:#8995a3}.library-total strong{color:#fff}.guide-load-marker{height:76px;display:flex;align-items:center;justify-content:center;gap:12px;color:#8490a0;font-size:.72rem;border-top:1px solid #ffffff0a}.guide-load-marker .spinner{width:18px;height:18px}.guide-no-channels{padding:55px 20px;text-align:center;color:#788493}.guide-loop-end{display:flex!important;align-items:center;justify-content:center;flex-direction:column;gap:4px;color:#6f7b8b;background:#0d131b}.guide-loop-end[hidden]{display:none!important}.guide-loop-end strong{color:#d4d9df;font-size:.78rem}.guide-loop-end span{font-size:.67rem}.sports-source-picker{border:1px solid #26313c;border-radius:18px;padding:14px 16px;margin:0 0 12px;background:linear-gradient(180deg,#111820,#0d1319)}.sports-source-picker>span{display:block;color:var(--gold);font-size:.61rem;letter-spacing:.16em;font-weight:700;margin-bottom:10px}.sports-source-picker>div{display:flex;gap:8px;overflow:auto;padding-bottom:2px}.sports-source-picker button{white-space:nowrap;min-height:40px;border-radius:999px;padding:8px 15px;font-size:.76rem}.sports-source-picker button[aria-pressed=true]{background:var(--gold);color:#17130d;border-color:var(--gold);font-weight:700}.sports-source-picker button small{opacity:.7;margin-left:4px}.sports-source-picker p{font-size:.72rem;margin-top:10px}.tivimate-preview,.guide-scroll,.sports-controls,.sports-source-picker{box-shadow:0 18px 60px #0003}.guide-program,.guide-channel{touch-action:manipulation}.guide-program{transition:background .12s,border-color .12s}.guide-program:active,.guide-channel:active{filter:brightness(1.16)}#player-panel video{background:#000}.player-message{backdrop-filter:blur(7px)}.lux-osd{touch-action:manipulation}.startup-shell{max-width:1900px;margin:auto}.startup-step{will-change:auto}

@media(max-width:1000px){.app-main{padding-inline:22px}.poster-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}.page-heading.catalog-heading{top:82px}.catalog-total{top:170px}.tivimate-guide-head{grid-template-columns:minmax(280px,38vw) 1fr}.tivimate-category{grid-column:1/-1}.sports-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}}

@media(max-width:700px){html{scroll-padding-top:78px}body{overscroll-behavior-y:auto}#header{height:66px;padding:env(safe-area-inset-top) 15px 0;background:#090b10f7;box-shadow:none}.brand-link .brand,#header .brand{font-size:27px}.header-right .icon-button{display:none}.app-main,.live-view .app-main{padding:12px 14px calc(88px + env(safe-area-inset-bottom))}.page-heading{margin:8px 0 18px}.page-heading.catalog-heading{top:66px;margin:0 -14px 12px;padding:11px 14px 10px;display:grid;grid-template-columns:minmax(0,1fr) 132px;align-items:end;gap:10px;background:#090b10f2}.catalog-heading .eyebrow,.catalog-heading p{display:none}.catalog-heading h1{font-size:1.55rem}.catalog-heading .category-select{min-width:0;width:132px}.catalog-heading select{min-height:43px;padding:8px 10px;font-size:.72rem}.catalog-total{top:126px;font-size:.7rem;padding:8px 0}.poster-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 11px}.poster-grid .card{max-width:none}.poster-grid .card-caption{padding-top:8px}.poster-grid .card-caption h3{font-size:.8rem;line-height:1.25}.poster-grid .card-caption p{font-size:.63rem}.poster-grid .art{border-radius:9px}.catalog-sentinel{min-height:74px}.rail{margin-right:-14px;padding-right:14px;gap:10px}.rail .card{width:136px;min-width:136px}.rail .channel-card{width:170px;min-width:170px}.home-greeting{margin-top:2px}.home-ready{padding:25px 20px;border-radius:18px;margin-bottom:18px}.home-ready h1{font-size:2.25rem;margin-top:6px}.home-ready p{font-size:.8rem;margin-top:8px}.home-ready .actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px;margin-top:18px}.home-ready .actions .button{min-width:0;font-size:.72rem;padding:9px}.home-load-section{margin:22px 0}.category-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.category-tiles button{min-height:58px}.tivimate-guide-head{gap:7px}.tivimate-preview{position:sticky;top:66px;border-radius:10px;z-index:35}.tivimate-program-info{display:grid;grid-template-columns:1fr auto;column-gap:10px;align-items:center;padding:5px 2px}.tivimate-program-info .eyebrow,.tivimate-program-info p,.guide-focus-meta{display:none}.tivimate-program-info h1{font-size:.93rem;margin:2px 0;grid-column:1}.tivimate-category{grid-column:2!important;grid-row:1;width:135px;align-self:center}.tivimate-category>span{display:none}.tivimate-category select{min-height:38px;font-size:.68rem;padding:6px 8px}.live-view .guide-actions{height:auto;min-height:42px;gap:5px;padding:5px 6px;position:sticky;top:calc(66px + 56.25vw);z-index:16}.live-view .guide-actions button{padding:5px 8px}.live-view .guide-actions>span{font-size:.59rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-view .guide-scroll{max-height:calc(100dvh - 66px - 56.25vw - 138px);min-height:330px;border:0}.live-view .guide-grid{width:1075px}.live-view .guide-time>strong,.live-view .guide-channel{width:180px}.live-view .guide-time>div,.live-view .guide-programs{width:895px}.live-view .guide-time span{width:149.16px}.live-view .guide-programs{background:repeating-linear-gradient(90deg,transparent 0,transparent 148.16px,#ffffff09 148.16px,#ffffff09 149.16px)}.live-view .guide-row{height:60px}.live-view .guide-channel>.art{width:30px;height:30px}.guide-load-marker{height:62px}.sports-v14{border-radius:18px}.sports-source-picker{border-radius:14px;padding:12px;margin-bottom:9px}.sports-source-picker button{min-height:38px;padding:7px 13px;font-size:.7rem}.sports-controls{border-radius:14px}.sports-grid{grid-template-columns:1fr}.sports-event{content-visibility:visible}.startup-page{overflow:auto}.startup-shell{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:18px;padding:28px 20px calc(28px + env(safe-area-inset-bottom));min-height:100dvh}.startup-brand{align-self:flex-start}.startup-copy{align-self:auto}.startup-copy h1{font-size:2.65rem}.startup-copy p{font-size:.87rem;margin-top:14px}.startup-progress{width:100%}.startup-steps{width:100%;gap:8px}.startup-step{min-height:66px;grid-template-columns:43px 1fr 18px;padding:10px 12px;border-radius:12px}.startup-step>span{width:40px;height:40px}.startup-actions{display:grid;grid-template-columns:1fr 1fr}.startup-actions p{grid-column:1/-1}.startup-actions button{width:100%;padding:9px 8px;font-size:.72rem}#mobile-nav{height:auto;padding:7px 4px calc(6px + env(safe-area-inset-bottom));gap:0;justify-content:stretch}#mobile-nav a{flex:1;min-width:0;min-height:46px;font-size:.56rem;gap:3px}#mobile-nav svg{width:20px;height:20px}dialog{max-height:calc(100dvh - 14px);max-width:calc(100vw - 14px);width:100%;padding:24px 18px;border-radius:16px}.detail-backdrop{margin:-24px -18px 0;height:195px}.detail-content h2{font-size:1.8rem}.command-center{padding:14px}.command-grid{gap:8px}.command-grid>section{padding:13px}.osd-top{padding:10px}.osd-bottom{padding:18px 12px 12px}.osd-identity{margin-bottom:8px}.osd-actions{overflow-x:auto;max-width:100%;padding-bottom:2px}.osd-actions button{flex:none}}

@media(max-width:380px){.poster-grid{gap:17px 9px}.page-heading.catalog-heading{grid-template-columns:minmax(0,1fr) 116px}.catalog-heading .category-select{width:116px}.home-ready .actions{grid-template-columns:1fr}.live-view .guide-actions>span{display:none}.sports-tools>label:not(.sports-search){min-width:120px}}

@media(min-width:1600px){.poster-grid{grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:30px 20px}.rail .card{width:190px;min-width:190px}.rail .channel-card{width:250px;min-width:250px}.tivimate-guide-head{grid-template-columns:minmax(360px,500px) minmax(420px,1fr) minmax(230px,320px)}}

/* ============================================================
   tiviLux V16.1 — TITLE-BASED SPORTS EVENT HUB
   NFL / MLB / PPV are parsed from provider channel titles.
   ============================================================ */
.sports-title-hero{min-height:285px;background:radial-gradient(circle at 82% 15%,#d6e8bd22,transparent 30%),radial-gradient(circle at 12% 100%,#254d7044,transparent 35%),linear-gradient(135deg,#121a22,#090e14 72%)}
.sports-title-hero h1{font-size:clamp(42px,5.2vw,72px);line-height:.98;margin:15px 0 16px}
.sports-title-hero h1 em{color:#d6e8bd;font-style:normal}
.sports-title-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.sports-title-badges span{padding:7px 10px;border:1px solid #d6e8bd2e;border-radius:999px;background:#d6e8bd0a;color:#c7dba9;font-size:10px;font-weight:700;letter-spacing:.1em}
.sports-title-controls .sports-tabs{margin-bottom:12px}
.sports-title-controls .sports-tools{display:grid;grid-template-columns:minmax(0,1fr) auto}
.sports-title-section{margin:0 0 32px}
.sports-title-section .section-title{align-items:end;margin-bottom:12px}
.sports-title-section .section-title>div{min-width:0}
.sports-title-section .section-title h2{margin:0}
.sports-title-section .section-title p{margin:5px 0 0;color:#75818f;font-size:12px}
.sports-title-card{position:relative;overflow:hidden;min-width:0;padding:19px;border:1px solid #27323d;border-radius:17px;background:linear-gradient(145deg,#151e27,#0d141b);box-shadow:0 16px 38px #0003;content-visibility:auto;contain-intrinsic-size:auto 265px}
.sports-title-card:before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:#d6e8bd;opacity:.85}
.sports-title-card.extra:before{background:#6e8297;opacity:.7}
.sports-title-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.sports-title-league{color:#d6e8bd;font-size:10px;font-weight:800;letter-spacing:.15em}
.sports-title-origin{color:#687687;font-size:9px;font-weight:700;letter-spacing:.11em}
.sports-title-slot{display:inline-flex;margin-top:15px;padding:5px 8px;border-radius:7px;background:#ffffff08;color:#9ca9b7;font-size:10px;letter-spacing:.08em}
.sports-title-card h3{margin:13px 0 15px;font-size:20px;line-height:1.3;letter-spacing:-.018em;min-height:52px}
.sports-title-meta{display:grid;gap:5px;min-height:44px;margin-bottom:17px}
.sports-title-meta strong{color:#dbe3eb;font-size:12px;font-weight:650}
.sports-title-meta span{color:#6f7d8c;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sports-title-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid #ffffff0b}
.sports-title-actions button{min-height:42px;padding:9px 14px;font-size:12px}
.sports-title-actions>span{color:#7f8b98;font-size:11px}
.sports-title-card .sports-alternates{margin-top:12px}
.sports-source-note b{margin-left:4px;color:#d6e8bd}
@media(min-width:1450px){.sports-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.sports-title-hero{padding:24px 20px}.sports-title-hero h1{font-size:39px}.sports-title-badges{margin-top:14px}.sports-title-controls .sports-tools{grid-template-columns:1fr}.sports-title-controls #sports-refresh{width:100%}.sports-title-card{padding:17px;content-visibility:visible}.sports-title-card h3{font-size:18px;min-height:0}.sports-title-section .section-title p{font-size:11px}.sports-source-note{line-height:1.5}}

/* ============================================================
   V17 — Internet-verified Sports Hub
   ============================================================ */
.sports-v17-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,430px);gap:42px;align-items:end;min-height:330px;margin:0 0 14px;padding:46px 48px;border:1px solid #ffffff10;border-radius:24px;background:radial-gradient(circle at 84% 18%,#d6e8bd22,transparent 28%),radial-gradient(circle at 8% 95%,#315e8333,transparent 34%),linear-gradient(135deg,#151d26,#090e14 70%);box-shadow:0 24px 70px #0004;isolation:isolate}.sports-v17-hero:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(112deg,transparent 0 69%,#ffffff05 69.15% 69.3%,transparent 69.45%)}.sports-v17-copy h1{font-size:clamp(3rem,5.5vw,6.2rem);line-height:.93;font-weight:430;letter-spacing:-.058em;margin:16px 0 18px}.sports-v17-copy h1 em{font-family:Georgia,serif;font-style:normal;font-weight:400;color:#d6e8bd}.sports-v17-copy>p{max-width:760px;margin:0;color:#a6b0bb;line-height:1.65;font-size:.94rem}.sports-v17-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.sports-v17-badges span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid #d6e8bd25;border-radius:999px;background:#d6e8bd09;color:#bacb9e;font-size:.59rem;font-weight:750;letter-spacing:.1em}.sports-v17-badges svg{width:13px;height:13px}.sports-v17-scoreboard{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid #ffffff11;border-radius:17px;overflow:hidden;background:#ffffff0c;box-shadow:0 18px 50px #0004}.sports-v17-scoreboard>div{display:grid;place-items:center;gap:8px;min-height:122px;padding:20px 12px;background:#0b1118d9}.sports-v17-scoreboard strong{font-size:2.2rem;font-weight:550;letter-spacing:-.04em}.sports-v17-scoreboard span{font-size:.56rem;letter-spacing:.14em;color:#768493}
.sports-v17-toolbar{position:sticky;top:82px;z-index:28;display:grid;grid-template-columns:auto auto auto minmax(180px,1fr) auto;gap:9px;align-items:center;margin:0 0 10px;padding:10px;border:1px solid #ffffff10;border-radius:15px;background:#0d131be8;backdrop-filter:blur(18px);box-shadow:0 12px 35px #0004}.sports-v17-date{display:grid;gap:2px;padding:0 10px 0 4px;white-space:nowrap}.sports-v17-date span{font-size:.55rem;letter-spacing:.15em;color:#6d7987}.sports-v17-date strong{font-size:.76rem;font-weight:600;color:#cfd7df}.sports-v17-sources,.sports-v17-window{display:flex;gap:5px;padding:4px;border:1px solid #ffffff0b;border-radius:11px;background:#080c11}.sports-v17-sources button,.sports-v17-window button{min-height:36px;padding:7px 11px;border:0;border-radius:8px;background:transparent;color:#8692a0;font-size:.68rem}.sports-v17-sources button[aria-pressed="true"],.sports-v17-window button[aria-pressed="true"]{background:#d6e8bd;color:#10150d;box-shadow:0 6px 18px #0004}.sports-v17-sources button:disabled{opacity:.34}.sports-v17-sources small{margin-left:3px;font-size:.58rem;opacity:.72}.sports-v17-search{display:flex;align-items:center;gap:8px;min-width:0;height:44px;padding:0 12px;border:1px solid #ffffff0e;border-radius:10px;background:#090e14}.sports-v17-search svg{flex:none;width:16px;height:16px;color:#657281}.sports-v17-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#eef2f6;font-size:.75rem}.sports-v17-refresh{min-height:44px;white-space:nowrap;font-size:.7rem}.sports-v17-note{min-height:44px;margin-bottom:25px;border-color:#d6e8bd18;background:#d6e8bd08;color:#9ba89a}.sports-v17-note svg{color:#c7dda6}
.sports-v17-section{margin:0 0 34px}.sports-v17-section .section-title{align-items:end;margin-bottom:13px}.sports-v17-section .section-title .eyebrow{display:block;margin-bottom:6px;color:#d0dfb7}.sports-v17-section .section-title h2{margin:0;color:#8f9aa7;font-size:.76rem;font-weight:450;line-height:1.45}.sports-v17-section .section-title>span{display:grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border:1px solid #ffffff10;border-radius:999px;color:#8c97a4;font-size:.65rem}.sports-v17-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sports-game-card{position:relative;overflow:hidden;min-width:0;padding:18px;border:1px solid #26323d;border-radius:17px;background:linear-gradient(145deg,#151e27,#0d141b);box-shadow:0 12px 34px #0003}.sports-game-card.live{border-color:#e6b86666;background:radial-gradient(circle at 95% 0,#e6b86616,transparent 34%),linear-gradient(145deg,#1b1c1c,#10161d)}.sports-game-card.missing{border-style:dashed;opacity:.82}.sports-game-card:before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:#768797}.sports-game-card.matched:before{background:#d6e8bd}.sports-game-card.live:before{background:#ff6b72}.sports-game-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.sports-league-pill{padding:5px 8px;border-radius:7px;background:#ffffff09;color:#d9e2eb;font-size:.58rem;font-weight:800;letter-spacing:.14em}.sports-verify{display:inline-flex;align-items:center;gap:5px;font-size:.55rem;font-weight:760;letter-spacing:.1em}.sports-verify svg{width:13px;height:13px}.sports-verify.verified{color:#b9d790}.sports-verify.provider{color:#8493a1}.sports-matchup{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);align-items:center;gap:10px;min-height:70px;margin:0 0 13px}.sports-team{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:12px 13px;border:1px solid #ffffff0b;border-radius:11px;background:#ffffff05}.sports-team span{min-width:0;font-size:.93rem;font-weight:610;line-height:1.25}.sports-team strong{flex:none;font-size:1.45rem;font-weight:520}.sports-at{text-align:center;color:#566474;font-size:.75rem;font-weight:700}.sports-provider-title{min-height:70px;display:flex;align-items:center;margin:0 0 13px;font-size:1.05rem;font-weight:620;line-height:1.35}.sports-game-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:27px;margin:0 0 14px;color:#788797;font-size:.68rem}.sports-game-meta>span:not(.sports-game-state){padding-left:8px;border-left:1px solid #ffffff12}.sports-game-state{display:inline-flex;align-items:center;gap:6px;font-weight:700;letter-spacing:.06em;color:#96a2af}.sports-game-state.live{color:#ff7b82}.sports-game-state.live i{width:6px;height:6px;border-radius:50%;background:#ff535c;box-shadow:0 0 0 0 #ff535c6e;animation:startupPulse 1.6s ease-out infinite}.sports-game-state.upcoming{color:#dbc28f}.sports-game-state.final{color:#77828e}.sports-game-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:13px;border-top:1px solid #ffffff0b}.sports-stream-state{font-size:.58rem;font-weight:750;letter-spacing:.11em}.sports-stream-state.found{color:#b8d394}.sports-stream-state.missing{color:#9a7376}.sports-watch{min-height:39px;padding:8px 13px;font-size:.69rem}.sports-watch svg{width:15px;height:15px}.sports-feed-picker{margin-top:12px;border-top:1px solid #ffffff09;padding-top:10px}.sports-feed-picker summary{cursor:pointer;color:#8794a1;font-size:.67rem}.sports-feed-picker>div{display:grid;gap:6px;margin-top:8px}.sports-feed-picker button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:38px;padding:8px 10px;text-align:left;font-size:.65rem}.sports-feed-picker button span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sports-feed-picker button svg{flex:none;width:14px;height:14px}.sports-stream-list{display:grid;gap:7px}.sports-stream-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:13px;padding:12px 13px;border:1px solid #ffffff0d;border-radius:12px;background:#10161d}.sports-stream-card>div{min-width:0}.sports-stream-card span{display:block;margin-bottom:3px;color:#788796;font-size:.55rem;font-weight:750;letter-spacing:.1em}.sports-stream-card strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.76rem;font-weight:570}.sports-stream-card small{display:block;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#657281;font-size:.62rem}.sports-stream-card button{min-height:36px;padding:7px 11px;font-size:.65rem}.sports-stream-card em{color:#687583;font-size:.6rem;font-style:normal}.sports-v17-section+.sports-v17-section{padding-top:4px}
@media(min-width:1550px){.sports-v17-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sports-v17-hero{grid-template-columns:minmax(0,1fr) 470px}.sports-v17-scoreboard>div{min-height:132px}}
@media(max-width:1120px){.sports-v17-hero{grid-template-columns:1fr;gap:28px;align-items:start}.sports-v17-scoreboard{max-width:520px}.sports-v17-toolbar{grid-template-columns:1fr auto auto}.sports-v17-date{grid-column:1}.sports-v17-sources{grid-column:2}.sports-v17-window{grid-column:3}.sports-v17-search{grid-column:1/3}.sports-v17-refresh{grid-column:3}.sports-v17-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.sports-v17-hero{min-height:0;padding:27px 21px;border-radius:18px;margin-top:2px}.sports-v17-copy h1{font-size:2.8rem;margin:13px 0 15px}.sports-v17-copy>p{font-size:.82rem}.sports-v17-badges{margin-top:17px}.sports-v17-badges span{font-size:.51rem}.sports-v17-scoreboard{width:100%;max-width:none}.sports-v17-scoreboard>div{min-height:78px;padding:12px 7px}.sports-v17-scoreboard strong{font-size:1.55rem}.sports-v17-scoreboard span{font-size:.49rem}.sports-v17-toolbar{position:sticky;top:70px;grid-template-columns:1fr;gap:8px;margin-left:-4px;margin-right:-4px;padding:8px;border-radius:13px}.sports-v17-date{display:flex;align-items:center;justify-content:space-between;padding:2px 4px}.sports-v17-sources,.sports-v17-window{overflow-x:auto;width:100%;justify-content:stretch}.sports-v17-sources button,.sports-v17-window button{flex:1;min-width:max-content}.sports-v17-search,.sports-v17-refresh,.sports-v17-date,.sports-v17-sources,.sports-v17-window{grid-column:auto}.sports-v17-refresh{width:100%}.sports-v17-note{margin-top:0;margin-bottom:20px;line-height:1.5}.sports-v17-grid{grid-template-columns:1fr}.sports-game-card{padding:15px;border-radius:14px}.sports-matchup{grid-template-columns:1fr;gap:6px;min-height:0}.sports-at{text-align:left;padding-left:12px;font-size:.61rem}.sports-team{min-height:46px;padding:9px 11px}.sports-team span{font-size:.84rem}.sports-team strong{font-size:1.2rem}.sports-provider-title{min-height:0;font-size:.94rem}.sports-game-head{margin-bottom:12px}.sports-game-meta{font-size:.62rem}.sports-game-foot{gap:8px}.sports-watch{min-height:41px}.sports-stream-card{grid-template-columns:minmax(0,1fr) auto}.sports-stream-card em{display:none}.sports-stream-card strong{font-size:.72rem}.sports-v17-section{margin-bottom:27px}.sports-v17-section .section-title{align-items:center}.sports-v17-section .section-title h2{font-size:.68rem}}


/* ============================================================
   V17.1 — Sports Hub mobile layout + time-safe UI polish
   ============================================================ */
.sports-v17-search{flex-direction:row;align-items:center}
.sports-v17-search input:not([type=checkbox]):not([type=range]){min-height:0;height:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.sports-v17-search input:focus{border:0;box-shadow:none}
.sports-v17-refresh span{display:inline}

@media(max-width:760px){
  .app-main{padding-bottom:calc(126px + env(safe-area-inset-bottom))}
  .sports-v17-hero{padding:22px 18px 20px;margin:0 0 10px;border-radius:16px;gap:18px}
  .sports-v17-copy h1{font-size:2.35rem;margin:10px 0 12px}
  .sports-v17-copy>p{font-size:.76rem;line-height:1.5}
  .sports-v17-badges{gap:6px;margin-top:13px}
  .sports-v17-badges span{padding:5px 7px;font-size:.45rem}
  .sports-v17-scoreboard>div{min-height:70px;padding:9px 5px;gap:4px}
  .sports-v17-scoreboard strong{font-size:1.4rem}

  /* The toolbar must scroll with the page on phones. A five-row sticky block
     consumed too much of the viewport and visually covered game cards. */
  .sports-v17-toolbar{position:relative;top:auto;z-index:10;grid-template-columns:minmax(0,1fr) 44px;gap:7px;margin:0 0 9px;padding:8px;border-radius:14px;box-shadow:0 10px 28px #0003}
  .sports-v17-date,.sports-v17-sources,.sports-v17-window{grid-column:1/-1}
  .sports-v17-date{min-height:27px;padding:0 4px}
  .sports-v17-date span{font-size:.5rem}
  .sports-v17-date strong{font-size:.7rem}
  .sports-v17-sources,.sports-v17-window{overflow:visible;gap:3px;padding:3px;border-radius:10px}
  .sports-v17-sources button,.sports-v17-window button{min-width:0;min-height:37px;padding:6px 5px;font-size:.62rem}
  .sports-v17-search{grid-column:1;min-width:0;width:100%;height:44px;padding:0 11px;gap:8px;border-radius:10px}
  .sports-v17-search svg{width:17px;height:17px}
  .sports-v17-search input:not([type=checkbox]):not([type=range]){font-size:.78rem}
  .sports-v17-refresh{grid-column:2;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border-radius:10px}
  .sports-v17-refresh span{display:none}
  .sports-v17-refresh svg{width:19px;height:19px}

  .sports-v17-note{min-height:0;margin:0 0 18px;padding:10px 11px;border-radius:10px;font-size:.61rem!important;line-height:1.45}
  .sports-v17-note svg{width:14px;height:14px;flex:none}
  .sports-v17-section{margin-bottom:23px}
  .sports-v17-section .section-title{margin-bottom:10px}

  /* Keep a matchup readable without turning one game into a full-screen card. */
  .sports-game-card{padding:13px;border-radius:14px}
  .sports-game-head{margin-bottom:10px}
  .sports-matchup{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr);gap:6px;min-height:0;margin-bottom:10px}
  .sports-at{text-align:center;padding:0;font-size:.58rem}
  .sports-team{min-height:54px;padding:8px 9px;border-radius:10px}
  .sports-team span{font-size:.75rem;line-height:1.2}
  .sports-team strong{font-size:1.05rem}
  .sports-game-meta{min-height:0;margin-bottom:10px;gap:6px;font-size:.58rem}
  .sports-game-meta>span:not(.sports-game-state){padding-left:6px}
  .sports-game-foot{padding-top:10px}
  .sports-stream-state{font-size:.52rem}
  .sports-watch{min-height:38px;padding:7px 11px;font-size:.64rem}
  .sports-provider-title{margin-bottom:10px;font-size:.9rem}
  .sports-feed-picker{margin-top:10px;padding-top:8px}
  .sports-stream-card{padding:10px 11px;gap:9px}
  .sports-disclaimer{margin-bottom:20px}
}

@media(max-width:380px){
  .sports-v17-copy h1{font-size:2.1rem}
  .sports-v17-sources button,.sports-v17-window button{font-size:.58rem}
  .sports-team span{font-size:.7rem}
  .sports-game-card{padding:12px}
}

/* V18: stale/unmatched sports feeds stay out of the main Today grid. */
.sports-quarantine{margin:2px 0 30px;border:1px solid #ffffff0d;border-radius:14px;background:#0d131a;overflow:hidden}.sports-quarantine>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;cursor:pointer;list-style:none;color:#8793a0}.sports-quarantine>summary::-webkit-details-marker{display:none}.sports-quarantine>summary span{display:grid;gap:3px}.sports-quarantine>summary strong{font-size:.7rem;font-weight:650;color:#aab4be}.sports-quarantine>summary small{font-size:.6rem;color:#687583}.sports-quarantine>summary svg{width:16px;height:16px;transition:transform .2s ease}.sports-quarantine[open]>summary svg{transform:rotate(180deg)}.sports-quarantine>.sports-stream-list{padding:0 12px 12px}

/* ============================================================
   TIVILUX 2.0 — INTELLIGENT TELEVISION OS
   Premium shell, personalized home, My TV, SmartTune surfaces
   ============================================================ */
:root{--lux2:#d9b66f;--lux2-soft:#f0d9a6;--lux2-panel:#0d1219;--lux2-line:#ffffff14;--lux2-glow:#d9b66f20}
body{background:radial-gradient(circle at 18% -8%,#2a2318 0,#0a0e13 28%,#080b10 63%);}
#header{backdrop-filter:blur(22px) saturate(1.2);background:linear-gradient(180deg,#090c11ee,#090c11c9);border-bottom:1px solid #ffffff0b}
#header nav a.active{color:#f2dbab;background:#d9b66f12;border-color:#d9b66f2f;box-shadow:inset 0 0 0 1px #d9b66f0b}
.v2-home-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(290px,.65fr);gap:30px;min-height:530px;padding:58px;border:1px solid #ffffff10;border-radius:30px;overflow:hidden;background:linear-gradient(120deg,#111821 0%,#0b1016 48%,#17130d 100%);box-shadow:0 35px 90px #0007,inset 0 1px #ffffff08}
.v2-home-hero:before{content:"";position:absolute;inset:-35% auto auto 43%;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,#d9b66f28,transparent 66%);filter:blur(14px);pointer-events:none}
.v2-home-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 63%,#ffffff04 100%);pointer-events:none}
.v2-hero-copy,.v2-now-panel{position:relative;z-index:1}
.v2-hero-copy{align-self:center;max-width:840px}.v2-hero-copy .eyebrow{color:#d6bd8a}.v2-hero-copy h1{margin:18px 0 20px;font-size:clamp(3.4rem,6.2vw,7rem);line-height:.9;letter-spacing:-.07em;font-weight:640}.v2-hero-copy h1 em{color:#d9b66f;font-style:normal;font-weight:540}.v2-hero-copy>p{max-width:690px;color:#9da7b1;font-size:1.05rem;line-height:1.75}.v2-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.v2-system-strip{display:flex;gap:8px;flex-wrap:wrap;margin-top:37px}.v2-system-strip span{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid #ffffff0d;border-radius:999px;background:#ffffff05;color:#75818e;font-size:.62rem;letter-spacing:.04em}.v2-system-strip b{color:#cfd6dd;font-weight:650}.v2-system-strip i{width:7px;height:7px;border-radius:50%;background:#78d69b;box-shadow:0 0 0 5px #78d69b12}
.v2-now-panel{align-self:center;padding:24px;border:1px solid #d9b66f20;border-radius:23px;background:linear-gradient(155deg,#171a1d,#0b1016);box-shadow:0 22px 60px #0008}.v2-now-panel>strong{display:block;margin:12px 0 8px;font-size:1.65rem;letter-spacing:-.04em}.v2-now-panel>p{color:#7f8a96;font-size:.78rem;line-height:1.55}.v2-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px}.v2-quick-grid a{display:grid;gap:13px;min-height:104px;padding:15px;border:1px solid #ffffff0d;border-radius:14px;background:#ffffff05;color:#cdd4dc;text-decoration:none;transition:.2s ease}.v2-quick-grid a:hover,.v2-quick-grid a:focus-visible{transform:translateY(-2px);border-color:#d9b66f48;background:#d9b66f0d}.v2-quick-grid svg{width:20px;height:20px;color:#d9b66f}.v2-quick-grid span{align-self:end;font-size:.74rem;font-weight:650}
.v2-dashboard{padding-top:34px}.v2-dash-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 18px}.v2-dash-title h2{margin:5px 0 0;font-size:1.45rem}.v2-dash-title>span{color:#7f8b97;font-size:.7rem}.v2-empty-personal,.v2-status-card{margin:0 0 26px;padding:25px;border:1px solid #ffffff10;border-radius:18px;background:linear-gradient(135deg,#10161d,#0b1015)}.v2-empty-personal h2,.v2-status-card strong{display:block;margin:7px 0 8px;font-size:1.2rem}.v2-empty-personal p,.v2-status-card p{max-width:720px;color:#7d8996;font-size:.76rem;line-height:1.6}.v2-category-tiles button{position:relative;min-height:92px;overflow:hidden}.v2-category-tiles button small{display:block;margin-top:4px;color:#687583;font-size:.55rem}.v2-category-tiles button:after{content:"";position:absolute;inset:auto -30px -50px auto;width:100px;height:100px;border-radius:50%;background:#d9b66f10}
.v2-my-tv-heading{margin-bottom:28px}.v2-favorites-section{margin-top:38px;padding-top:28px;border-top:1px solid #ffffff0d}.v2-alt-feeds{display:grid;gap:8px;margin-top:18px}.v2-alt-feeds button{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:14px;text-align:left;align-items:center;padding:14px;border-radius:13px}.v2-alt-feeds button span{font-size:.83rem;font-weight:650}.v2-alt-feeds button small{color:#75818d;font-size:.6rem}.v2-alt-feeds button svg{grid-column:2;grid-row:1/3;width:18px;height:18px}
.stream-health-score{display:flex;align-items:center;gap:10px;margin:10px 0 14px;padding:10px 12px;border:1px solid #d9b66f20;border-radius:12px;background:#d9b66f0a}.stream-health-score strong{font-size:1.65rem;color:#e1c586}.stream-health-score span{font-size:.56rem;font-weight:750;letter-spacing:.11em;color:#8d98a3}
.startup-shell .startup-copy .eyebrow{color:#d9b66f}.startup-progress-track i{background:linear-gradient(90deg,#8f7137,#e2c47f);box-shadow:0 0 24px #d9b66f55}
@media(max-width:980px){.v2-home-hero{grid-template-columns:1fr;min-height:0;padding:38px}.v2-now-panel{max-width:none}.v2-quick-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:700px){.v2-home-hero{padding:26px 19px 22px;border-radius:20px;gap:22px}.v2-hero-copy h1{font-size:3rem}.v2-hero-copy>p{font-size:.82rem}.v2-hero-actions .button{flex:1;min-width:130px}.v2-system-strip{margin-top:24px}.v2-system-strip span{font-size:.54rem}.v2-now-panel{padding:17px;border-radius:17px}.v2-now-panel>strong{font-size:1.3rem}.v2-quick-grid{grid-template-columns:1fr 1fr}.v2-quick-grid a{min-height:82px}.v2-dashboard{padding-top:22px}.v2-dash-title{align-items:start;flex-direction:column}.v2-my-tv-heading{align-items:flex-start}.v2-my-tv-heading>a{width:100%;justify-content:center}}
