/* Morph streaming UI is the only presentation; no classic-mode switch. */html[data-stream-ui]{--stream-bg:#030d1b;--stream-accent:var(--media-accent,#34d9fa);--stream-muted:#b1bfd4;}html[data-stream-ui] body{background:var(--stream-bg)!important;color:var(--iptv-text-1000)!important;font-family:Arial,Tahoma,sans-serif;}html[data-stream-ui] body:before{background:linear-gradient(0deg,var(--iptv-surface-1000) 1%,#030d1b00 70%),url(stream-city-v1.webp) center top/cover no-repeat!important;opacity:.22;}html[data-stream-ui] body.cinema-home:before{opacity:1;}html[data-stream-ui] .glow{display:none!important;}html[data-stream-ui] header{position:relative;z-index:8;height:76px;flex-basis:76px;margin-left:102px;padding:0 35px 0 38px;gap:20px;background:transparent!important;border:0!important;direction:ltr;}html[data-stream-ui] header .brand{font-size:30px;letter-spacing:-1px;font-weight:700;padding-left:48px;flex:0 0 300px;}html[data-stream-ui] header .brand:before{content:"â–¶";background:linear-gradient(140deg,var(--iptv-surface-1000),var(--iptv-surface-1000) 60%,var(--iptv-surface-1000));color:var(--iptv-muted-1000);top:0;left:0;border-radius:9px;width:36px;height:38px;line-height:38px;font-size:28px;box-shadow:none;}html[data-stream-ui] header nav{border:0!important;background:transparent!important;border-radius:0;padding:0;gap:18px;flex:1!important;justify-content:center;}html[data-stream-ui] header nav button{font-size:20px!important;padding:20px 8px 12px!important;border:0!important;border-bottom:3px solid transparent!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--iptv-text-1000)!important;}html[data-stream-ui] header nav button.active,html[data-stream-ui] body.cinema-home header #home-open{background:transparent!important;border-bottom-color:var(--stream-accent)!important;color:var(--iptv-text-1000)!important;}html[data-stream-ui] header #unified-open,html[data-stream-ui] header #settings-open,html[data-stream-ui] header #back,html[data-stream-ui] header #unified-go{display:none!important;}html[data-stream-ui] header .unified-bar{display:none;position:absolute;top:74px;right:30px;width:600px;background:var(--iptv-surface-961);z-index:30;padding:12px;}html[data-stream-ui] header .unified-bar:focus-within{display:flex;}html[data-stream-ui] .media-clock{font-size:22px;white-space:nowrap;margin-left:8px;order:10;}html[data-stream-ui] #stream-profile{width:48px;height:48px;min-width:48px;border-radius:50%;padding:0;border:1px solid var(--iptv-border-1000);background:linear-gradient(135deg,var(--iptv-surface-1000),var(--iptv-surface-1000) 65%,var(--iptv-surface-1000))!important;color:var(--iptv-text-1000);font-size:22px;order:9;}html[data-stream-ui] #stream-sidebar{position:fixed;left:14px;top:0;bottom:0;width:88px;padding:26px 10px;display:flex;flex-direction:column;gap:24px;align-items:center;background:linear-gradient(90deg,var(--iptv-surface-933),var(--iptv-surface-600));z-index:15;box-sizing:border-box;direction:ltr;}html[data-stream-ui] #stream-sidebar button{width:62px;height:60px;min-height:0;display:flex;align-items:center;justify-content:center;padding:15px;border:0;border-radius:10px;background:transparent;color:var(--iptv-text-1000);position:relative;box-sizing:border-box;}html[data-stream-ui] #stream-sidebar svg{width:30px;height:30px;}html[data-stream-ui] #stream-nav-home{background:linear-gradient(90deg,var(--iptv-surface-502),transparent)!important;}html[data-stream-ui] #stream-nav-home:before{content:"";position:absolute;left:-7px;top:8px;bottom:8px;width:3px;border-radius:3px;background:var(--stream-accent);}html[data-stream-ui] #dashboard{position:relative;flex:1;min-height:0;height:auto!important;overflow:auto!important;padding:0 30px 20px 138px!important;direction:ltr;scroll-padding:15px;scrollbar-width:none;}html[data-stream-ui] #dashboard>.portal-grid,html[data-stream-ui] #dashboard>#watch-hero,html[data-stream-ui] #dashboard>#cinematic-hero,html[data-stream-ui] #dashboard>#continue-heading,html[data-stream-ui] #dashboard>.portal-tools{display:none!important;}html[data-stream-ui] #stream-home{width:100%;min-height:100%;position:relative;direction:ltr;}html[data-stream-ui] #stream-hero{height:330px;min-height:280px;display:flex;align-items:center;position:relative;margin-bottom:4px;}html[data-stream-ui] .stream-hero-copy{max-width:650px;position:relative;z-index:2;padding-top:3px;direction:inherit;}html[data-stream-ui] #stream-kicker{font-size:13px;letter-spacing:5px;color:var(--iptv-text-1000);display:block;margin-bottom:9px;}html[data-stream-ui] #stream-title{font-size:58px;line-height:1.05;font-weight:500;letter-spacing:1px;margin:0 0 14px;color:var(--iptv-text-1000);max-height:124px;overflow:hidden;text-wrap:balance;}html[data-stream-ui] #stream-description{font-size:20px;line-height:1.45;color:var(--iptv-text-1000);margin:0 0 10px;max-width:590px;max-height:58px;overflow:hidden;}html[data-stream-ui] #stream-meta{display:block;color:var(--iptv-muted-1000);font-size:16px;margin-bottom:16px;min-height:20px;}html[data-stream-ui] .stream-actions{display:flex;align-items:center;gap:17px;direction:ltr;}html[data-stream-ui] .stream-actions button{font-size:19px;line-height:1.2;min-height:54px;padding:14px 25px;border:1px solid var(--iptv-border-600);border-radius:32px;background:var(--iptv-surface-800);color:var(--iptv-text-1000);white-space:nowrap;box-shadow:none;}html[data-stream-ui] #stream-play{background:var(--iptv-surface-1000)!important;color:var(--iptv-muted-1000)!important;border-color:var(--iptv-border-1000);font-weight:700;min-width:205px;}html[data-stream-ui] #stream-save{padding-left:16px;padding-right:16px;border-color:transparent;background:transparent;}html[data-stream-ui] .stream-shelf{position:relative;margin:0 0 9px;min-width:0;}html[data-stream-ui] .stream-shelf h2{font-size:24px;line-height:30px;letter-spacing:0;font-weight:600;margin:0 0 7px;color:var(--iptv-text-1000);}html[data-stream-ui] .stream-content-rail{display:flex;gap:18px;overflow:auto;scroll-padding:6px;padding:6px 4px 7px;scrollbar-width:none;direction:ltr;}html[data-stream-ui] .stream-content-rail::-webkit-scrollbar,html[data-stream-ui] #dashboard::-webkit-scrollbar{display:none;}html[data-stream-ui] .stream-card{display:block;position:relative;padding:0;margin:0;flex:0 0 calc((100% - 72px)/5);height:174px;min-width:0;overflow:hidden;border:1px solid var(--iptv-border-400);border-radius:11px;background:linear-gradient(135deg,var(--iptv-surface-1000),var(--iptv-surface-1000));color:var(--iptv-text-1000);text-align:start;transition:transform .15s ease-out,box-shadow .15s ease-out;box-sizing:border-box;}html[data-stream-ui] .stream-card img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:var(--iptv-surface-1000);}html[data-stream-ui] .stream-card-copy{position:absolute;left:0;right:0;bottom:0;padding:28px 13px 11px;background:linear-gradient(transparent,var(--iptv-surface-961) 47%);color:var(--iptv-text-1000);direction:inherit;text-align:start;}html[data-stream-ui] .stream-card strong{display:block;font-size:17px;font-weight:500;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}html[data-stream-ui] .stream-card small{display:block;font-size:14px;margin-top:4px;color:var(--iptv-text-1000);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}html[data-stream-ui] .stream-progress{display:block;height:4px;background:var(--iptv-surface-239);border-radius:4px;margin-bottom:8px;overflow:hidden;}html[data-stream-ui] .stream-progress i{display:block;height:100%;background:var(--stream-accent,#4dd8f7);border-radius:4px;}html[data-stream-ui] .stream-poster{flex-basis:calc((100% - 108px)/7);height:238px;border-radius:9px;}html[data-stream-ui] .stream-poster .stream-card-copy{padding:30px 12px 10px;}html[data-stream-ui] .stream-poster strong{font-size:17px;}html[data-stream-ui] .stream-live{height:120px;flex-basis:calc((100% - 72px)/5);}html[data-stream-ui] .stream-live img{object-fit:contain;padding:14px 24px 38px;background:var(--iptv-surface-1000);box-sizing:border-box;}html[data-stream-ui] .stream-live em{position:absolute;left:9px;top:9px;font-size:11px;font-style:normal;font-weight:700;padding:2px 6px;border-radius:4px;background:var(--iptv-surface-1000);color:var(--iptv-text-1000);}html[data-stream-ui] .stream-live .stream-card-copy{padding-top:12px;}html[data-stream-ui] .stream-more{position:absolute;right:4px;top:0;min-height:0;font-size:15px;padding:4px 7px;border:0;background:transparent;color:var(--iptv-accent-1000);}html[data-stream-ui] .stream-empty{padding:40px 0;color:var(--iptv-text-1000);font-size:24px;}html[data-stream-ui] #stream-series{margin-top:6px;}html[data-stream-ui] #stream-series:not(:first-child){display:block;}html[data-stream-ui] #dashboard-status{position:fixed;bottom:18px;left:150px;max-width:70%;z-index:40;background:var(--iptv-surface-925);border-radius:12px;color:var(--iptv-text-1000);font-size:18px;padding:10px 18px;}html[data-stream-ui] #dashboard-status:empty{display:none;}html[data-stream-ui] footer{display:none!important;}html[data-stream-ui] button:focus,html[data-stream-ui] input:focus,html[data-stream-ui] select:focus{outline:2px solid var(--stream-accent)!important;outline-offset:2px;box-shadow:0 0 13px var(--iptv-glow-267)!important;}html[data-stream-ui] .stream-card:focus{transform:scale(1.018);z-index:3;border-color:var(--stream-accent,#49e2fa);box-shadow:0 0 0 2px var(--stream-accent,#28d8fa),0 0 18px var(--iptv-glow-267)!important;outline:0!important;}html[data-stream-ui] main{margin-left:110px;padding:20px 30px 12px 24px;gap:24px;background:var(--iptv-surface-659);}html[data-stream-ui] main>aside{background:var(--iptv-surface-910);border-color:var(--iptv-border-267);border-radius:14px;}html[data-stream-ui] #categories button.active{background:var(--iptv-surface-1000)!important;color:var(--iptv-text-1000)!important;box-shadow:none!important;}html[data-stream-ui] .tile{background:var(--iptv-surface-1000)!important;border-radius:12px;border-color:var(--iptv-border-400);}html[data-stream-ui] .tile img{object-fit:contain!important;object-position:center!important;}html[data-stream-ui] .settings-dialog,html[data-stream-ui] .details-dialog{background:linear-gradient(135deg,var(--iptv-surface-1000),var(--iptv-surface-1000))!important;border-color:var(--iptv-border-1000)!important;}html[data-stream-ui] body.media-effect-motion-off .stream-card,html[data-stream-ui] body.light-mode .stream-card{transition:none!important;}html[data-stream-ui] body.media-effect-glow-off .stream-card:focus{box-shadow:0 0 0 2px var(--iptv-glow-1000)!important;}html[data-stream-ui] .heading{border-color:var(--iptv-border-173);background:transparent;height:auto;flex-basis:auto;min-height:90px;}html[data-stream-ui] .heading h2{font-size:30px;letter-spacing:0;font-weight:600;color:var(--iptv-text-1000);}html[data-stream-ui] .heading .eyebrow{color:var(--iptv-accent-1000);letter-spacing:2px;}html[data-stream-ui] input,html[data-stream-ui] select{background:var(--iptv-surface-1000)!important;border-color:var(--iptv-border-361)!important;color:var(--iptv-text-1000)!important;border-radius:12px;}html[data-stream-ui] main button,html[data-stream-ui] .settings-dialog button,html[data-stream-ui] .details-dialog button{color:var(--iptv-text-1000);background:var(--iptv-surface-1000);border:1px solid var(--iptv-border-439);border-radius:12px;box-shadow:none;}html[data-stream-ui] .search button,html[data-stream-ui] #account-save,html[data-stream-ui] #detail-resume,html[data-stream-ui] #detail-start{color:var(--iptv-muted-1000)!important;background:var(--iptv-surface-1000)!important;border-color:var(--iptv-border-1000)!important;}html[data-stream-ui] #settings-panel,html[data-stream-ui] #details-panel,html[data-stream-ui] #epg-panel{background:var(--iptv-surface-922);}html[data-stream-ui] .settings-heading h2,html[data-stream-ui] .details-dialog h2,html[data-stream-ui] #epg-title{color:var(--iptv-text-1000);font-weight:600;letter-spacing:0;}html[data-stream-ui] .iptv-settings-nav button[aria-current=page]{background:var(--iptv-surface-1000)!important;border-color:var(--iptv-border-1000)!important;color:var(--iptv-text-1000)!important;}html[data-stream-ui] .iptv-settings-page-hint,html[data-stream-ui] #detail-meta,html[data-stream-ui] #detail-cast,html[data-stream-ui] #detail-director,html[data-stream-ui] #detail-position{color:var(--iptv-muted-1000)!important;}html[data-stream-ui] .iptv-settings-page-title{color:var(--iptv-text-1000);}html[data-stream-ui] .iptv-source-card,html[data-stream-ui] .settings-dialog .setting-group{background:var(--iptv-surface-1000)!important;border-color:var(--iptv-border-333)!important;border-radius:15px;}html[data-stream-ui] .details-dialog{box-shadow:0 20px 70px var(--iptv-shadow-467);border-radius:20px;overflow:auto;scroll-padding:20px;}html[data-stream-ui] #detail-poster{object-fit:contain!important;object-position:center;background:var(--iptv-surface-1000);border-radius:14px;}html[data-stream-ui] #detail-plot{color:var(--iptv-text-1000)!important;line-height:1.6;}html[data-stream-ui] #tv-series-episodes{border-color:var(--iptv-border-333);background:transparent;}html[data-stream-ui] .tv-episode-toolbar{border-color:var(--iptv-border-267);}html[data-stream-ui] #tv-episode-list button{border-color:var(--iptv-border-400);background:var(--iptv-surface-1000);color:var(--iptv-text-1000);border-radius:12px;}html[data-stream-ui] #tv-episode-list img{object-fit:contain!important;object-position:center;background:var(--iptv-surface-1000);border-radius:8px;}html[data-stream-ui] #tv-season-panel,html[data-stream-ui] #catalog-sort-panel>section,html[data-stream-ui] .account-keyboard-dialog{background:var(--iptv-surface-1000)!important;border:1px solid var(--iptv-border-1000)!important;border-radius:18px;color:var(--iptv-text-1000);}html[data-stream-ui] #tv-season-panel button[aria-checked=true],html[data-stream-ui] #catalog-sort-options button[aria-pressed=true]{background:var(--iptv-surface-1000)!important;border-color:var(--iptv-border-1000)!important;color:var(--iptv-text-1000)!important;}html[data-stream-ui] #account-keyboard{background:var(--iptv-surface-929);}html[data-stream-ui] .pagination button{min-height:46px;background:var(--iptv-surface-1000);color:var(--iptv-text-1000);border:1px solid var(--iptv-border-400);}html[data-stream-ui] #stream-sidebar button[aria-current=page]{color:var(--iptv-accent-1000);background:var(--iptv-surface-651)!important;}html[data-stream-ui] #stream-hero{height:30vh;min-height:0;}html[data-stream-ui] .stream-card{height:16vh;}html[data-stream-ui] .stream-poster{height:22vh;}html[data-stream-ui] .stream-live{height:11vh;}@media(min-width:901px) and (max-width:1500px){html[data-stream-ui] header{height:64px;flex-basis:64px;margin-left:76px;padding:0 20px;gap:12px;}html[data-stream-ui] header .brand{font-size:23px;flex-basis:230px;padding-left:38px;}html[data-stream-ui] header .brand:before{width:28px;height:31px;line-height:31px;font-size:21px;}html[data-stream-ui] header nav{gap:8px;}html[data-stream-ui] header nav button{font-size:16px!important;padding:15px 5px 10px!important;}html[data-stream-ui] .media-clock{font-size:15px;}html[data-stream-ui] #stream-profile{height:36px;width:36px;min-width:36px;font-size:17px;}html[data-stream-ui] #stream-sidebar{left:7px;width:66px;padding:18px 7px;gap:16px;}html[data-stream-ui] #stream-sidebar button{width:48px;height:48px;padding:12px;}html[data-stream-ui] #dashboard{padding:0 22px 15px 100px!important;}html[data-stream-ui] #stream-title,html[lang=ar][data-stream-ui] #stream-title{font-size:42px;max-height:90px;}html[data-stream-ui] #stream-description{font-size:16px;max-height:45px;max-width:440px;}html[data-stream-ui] .stream-hero-copy{max-width:490px;}html[data-stream-ui] #stream-kicker{font-size:10px;margin-bottom:6px;}html[data-stream-ui] #stream-meta{font-size:12px;margin-bottom:10px;}html[data-stream-ui] .stream-actions button{font-size:15px;min-height:42px;padding:10px 16px;}html[data-stream-ui] #stream-play{min-width:155px;}html[data-stream-ui] .stream-shelf h2{font-size:19px;line-height:23px;margin-bottom:3px;}html[data-stream-ui] .stream-shelf{margin-bottom:5px;}html[data-stream-ui] .stream-content-rail{gap:13px;padding-top:4px;padding-bottom:5px;}html[data-stream-ui] .stream-card{flex-basis:calc((100% - 52px)/5);}html[data-stream-ui] .stream-poster{flex-basis:calc((100% - 78px)/7);}html[data-stream-ui] .stream-card strong{font-size:13px;}html[data-stream-ui] .stream-card small{font-size:11px;}html[data-stream-ui] .stream-card-copy{padding:18px 9px 8px;}html[data-stream-ui] .stream-more{font-size:12px;}html[data-stream-ui] main{margin-left:78px;}}html[lang=ar][data-stream-ui] .stream-hero-copy,html[lang=ar][data-stream-ui] .stream-shelf h2,html[lang=ar][data-stream-ui] .stream-card-copy{direction:rtl;text-align:right;}html[lang=ar][data-stream-ui] #stream-title{font-size:54px;letter-spacing:0;}@media(max-width:900px){html[data-stream-ui] header{height:64px;flex-basis:64px;margin-left:55px;padding:0 10px;gap:8px;flex-wrap:wrap;}html[data-stream-ui] header .brand{font-size:21px;flex-basis:auto;padding-left:30px;}html[data-stream-ui] header .brand:before{width:24px;height:27px;line-height:27px;font-size:18px;}html[data-stream-ui] header nav{order:12;flex-basis:100%!important;gap:10px;overflow:auto;justify-content:flex-start;}html[data-stream-ui] header nav button{font-size:14px!important;padding:7px 3px!important;}html[data-stream-ui] .media-clock{display:none;}html[data-stream-ui] #stream-profile{width:32px;height:32px;min-width:32px;margin-left:auto;}html[data-stream-ui] #stream-sidebar{left:0;width:54px;padding:15px 5px;gap:13px;}html[data-stream-ui] #stream-sidebar button{width:42px;height:43px;padding:11px;}html[data-stream-ui] #dashboard{padding:15px 12px 24px 66px!important;}html[data-stream-ui] #stream-hero{height:290px;min-height:0;}html[data-stream-ui] #stream-title,html[lang=ar][data-stream-ui] #stream-title{font-size:34px;max-height:86px;}html[data-stream-ui] #stream-description{font-size:15px;max-height:66px;}html[data-stream-ui] #stream-kicker{font-size:10px;}html[data-stream-ui] .stream-actions{gap:8px;flex-wrap:wrap;}html[data-stream-ui] .stream-actions button{font-size:13px;min-height:40px;padding:10px 12px;}html[data-stream-ui] #stream-play{min-width:130px;}html[data-stream-ui] #stream-meta{font-size:12px;}html[data-stream-ui] .stream-shelf h2{font-size:18px;}html[data-stream-ui] .stream-card{flex-basis:78%;height:155px;}html[data-stream-ui] .stream-poster{flex-basis:46%;height:210px;}html[data-stream-ui] .stream-live{flex-basis:70%;height:110px;}html[data-stream-ui] .stream-more{font-size:12px;}html[data-stream-ui] .stream-card strong{font-size:14px;}html[data-stream-ui] main{margin-left:54px;}html[data-stream-ui] header .unified-bar{width:calc(100vw - 85px);right:5px;top:80px;}}html[data-stream-ui] #stream-backdrop{position:fixed;inset:0;z-index:0;pointer-events:none;background:linear-gradient(0deg,var(--iptv-surface-1000) 5%,#030d1b00 75%),url(stream-city-v1.webp) center top/cover no-repeat;opacity:.12;}html[data-stream-ui] body.cinema-home #stream-backdrop{opacity:1;}html[data-stream-ui] #dashboard,html[data-stream-ui] main{z-index:1;}html[data-stream-ui][data-tv-library] header{height:7vh!important;min-height:0!important;flex:0 0 7vh!important;}html[data-stream-ui] header nav{min-height:0!important;height:100%;}html[data-stream-ui] header nav button:before{display:none!important;}html[data-stream-ui] header nav button{border-bottom-color:transparent!important;}html[data-stream-ui] header nav button.active,html[data-stream-ui] body.cinema-home header #home-open{border-bottom-color:var(--iptv-border-1000)!important;}html[data-stream-ui] body.cinema-home header nav button.active:not(#home-open){border-bottom-color:transparent!important;}html[data-stream-ui] header .brand:before{background:none!important;color:var(--iptv-accent-1000);box-shadow:none!important;border:0!important;font-size:38px;}html[data-stream-ui] .media-clock{display:none!important;}html[data-stream-ui] #stream-clock{display:block;font-size:22px;white-space:nowrap;order:10;color:var(--iptv-text-1000);margin-left:14px;}html[data-stream-ui] #stream-hero{height:28vh;}html[data-stream-ui] .stream-card{height:15vh;}html[data-stream-ui] .stream-poster{height:20.5vh;}html[data-stream-ui] .stream-live{height:10.5vh;}@media(max-width:1500px){html[data-stream-ui] #stream-clock{font-size:16px;margin-left:5px;}}@media(max-width:900px){html[data-stream-ui] #stream-clock{display:none;}html[data-stream-ui] #stream-hero{height:300px;}html[data-stream-ui] .stream-card{height:155px;}html[data-stream-ui] .stream-poster{height:210px;}html[data-stream-ui] .stream-live{height:110px;}}html[data-stream-ui] #stream-backdrop{background-image:linear-gradient(0deg,var(--iptv-surface-1000) 4%,var(--iptv-surface-961) 28%,var(--iptv-surface-439) 50%,#030d1b00 75%),url(stream-city-v1.webp);}html[data-stream-ui] #stream-title{font-size:52px;line-height:1.02;}html[data-stream-ui] #stream-description{font-size:18px;line-height:1.4;max-height:51px;}html[lang=ar][data-stream-ui] .stream-more{right:auto;left:4px;}html[data-stream-ui] body.stream-search-open header .unified-bar{display:flex!important;}html[data-stream-ui] body:not(.cinema-home) #stream-nav-home:before{display:none;}html[data-stream-ui] #stream-sidebar button[aria-current=page]:before{content:"";position:absolute;left:-7px;top:8px;bottom:8px;width:3px;border-radius:3px;background:var(--iptv-surface-1000);}html[data-stream-ui] #stream-nav-home:not([aria-current=page]){background:transparent!important;}@media(min-width:901px) and (max-width:1500px){html[data-stream-ui] #stream-title{font-size:38px;}html[data-stream-ui] #stream-description{font-size:15px;}}@media(max-width:900px){html[data-stream-ui] #stream-title{font-size:34px;}html[data-stream-ui] #stream-description{font-size:15px;}}html[data-stream-ui][data-tv-library] main{grid-template-columns:290px minmax(0,1fr)!important;gap:24px;}html[data-stream-ui][data-tv-library] main>aside{padding:14px 10px;direction:ltr;}html[lang=ar][data-stream-ui][data-tv-library] main>aside{direction:rtl;}html[data-stream-ui][data-tv-library] #playlist-name{font-size:23px;line-height:1.3;margin:8px 12px;}html[data-stream-ui][data-tv-library] #categories button,html[data-stream-ui][data-tv-library] #library-special button{font-size:18px!important;line-height:1.4!important;min-height:49px!important;padding:11px 13px!important;text-align:start;border:1px solid transparent!important;border-radius:10px!important;background:transparent!important;color:var(--iptv-text-1000)!important;}html[data-stream-ui][data-tv-library] #categories button.active,html[data-stream-ui][data-tv-library] #library-special button.active{background:var(--iptv-surface-1000)!important;border-color:var(--iptv-border-420)!important;color:var(--iptv-text-1000)!important;box-shadow:none!important;}html[data-stream-ui][data-tv-library] #items{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:18px!important;padding:9px!important;max-height:none!important;min-height:0;overflow:auto;scroll-padding:12px;}html[data-stream-ui][data-tv-library] body[data-kind=vod] #items .tile,html[data-stream-ui][data-tv-library] body[data-kind=series] #items .tile{height:316px!important;min-height:0!important;padding:7px!important;border-radius:11px!important;border:1px solid var(--iptv-border-333)!important;background:var(--iptv-surface-1000)!important;}html[data-stream-ui][data-tv-library] body[data-kind=vod] #items .tile img,html[data-stream-ui][data-tv-library] body[data-kind=series] #items .tile img{height:252px!important;width:100%!important;object-fit:contain!important;background:var(--iptv-surface-1000);border-radius:6px!important;}html[data-stream-ui][data-tv-library] #items .tile strong{font-size:17px!important;line-height:1.3!important;margin:7px 3px 0;padding:0;max-height:45px;overflow:hidden;color:var(--iptv-text-1000);}html[data-stream-ui][data-tv-library] #items .resume-tag{font-size:12px!important;color:var(--iptv-accent-1000);}html[data-stream-ui][data-tv-library] body[data-kind=live].channel-grid #items{grid-template-columns:repeat(4,minmax(0,1fr))!important;}html[data-stream-ui][data-tv-library] body[data-kind=live].channel-grid #items .tile{height:172px!important;padding:10px!important;}html[data-stream-ui][data-tv-library] body[data-kind=live].channel-grid #items .tile img{height:112px!important;object-fit:contain!important;padding:10px;}html[data-stream-ui][data-tv-library] .details-dialog{width:calc(100vw - 180px)!important;max-width:1600px!important;height:auto!important;min-height:0!important;max-height:88vh!important;display:grid!important;grid-template-columns:340px minmax(0,1fr)!important;gap:30px!important;padding:32px!important;box-sizing:border-box;align-items:center!important;background:linear-gradient(135deg,var(--iptv-surface-980),var(--iptv-surface-988))!important;border:1px solid var(--iptv-border-1000)!important;direction:ltr;}html[data-stream-ui][data-tv-library] #detail-poster{width:340px!important;height:380px!important;max-height:42vh!important;border-radius:12px!important;object-fit:contain!important;margin:0;background:var(--iptv-surface-1000);}html[data-stream-ui][data-tv-library] .detail-copy{min-width:0;max-width:none!important;align-self:center;padding:4px 8px;direction:ltr;}html[lang=ar][data-stream-ui][data-tv-library] .detail-copy{direction:rtl;}html[data-stream-ui][data-tv-library] .detail-copy h2{font-size:38px!important;line-height:1.25!important;margin:12px 0 20px!important;}html[data-stream-ui][data-tv-library] .detail-copy p{font-size:20px!important;line-height:1.6!important;margin:10px 0!important;}html[data-stream-ui][data-tv-library] #detail-plot{max-height:150px;overflow:auto;}html[data-stream-ui][data-tv-library] .detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;}html[data-stream-ui][data-tv-library] .detail-actions button{min-height:52px!important;font-size:18px!important;padding:13px 20px!important;margin:0!important;}html[data-stream-ui][data-tv-library] #tv-series-episodes{grid-column:1/-1;width:100%;max-height:38vh;min-height:170px;overflow:hidden;align-self:start;border-top:1px solid var(--iptv-border-333);margin-top:8px;padding-top:14px;}html[data-stream-ui][data-tv-library] #tv-episode-list{max-height:28vh;overflow:auto;scroll-padding:8px;}html[data-stream-ui][data-tv-library] #tv-episode-list button{min-height:88px;font-size:18px!important;padding:10px!important;margin:4px 0!important;}html[data-stream-ui][data-tv-library] #tv-episode-list strong{font-size:19px!important;}html[data-stream-ui][data-tv-library] #tv-episode-list p{font-size:15px!important;line-height:1.4!important;}html[data-stream-ui][data-tv-library] #tv-episode-list img{width:140px!important;height:78px!important;object-fit:contain!important;}@media(min-width:901px) and (max-width:1500px){html[data-stream-ui][data-tv-library] main{grid-template-columns:225px minmax(0,1fr)!important;gap:16px;}html[data-stream-ui][data-tv-library] #items{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;}html[data-stream-ui][data-tv-library] body[data-kind=vod] #items .tile,html[data-stream-ui][data-tv-library] body[data-kind=series] #items .tile{height:250px!important;}html[data-stream-ui][data-tv-library] body[data-kind=vod] #items .tile img,html[data-stream-ui][data-tv-library] body[data-kind=series] #items .tile img{height:195px!important;}html[data-stream-ui][data-tv-library] #items .tile strong{font-size:14px!important;}html[data-stream-ui][data-tv-library] .details-dialog{grid-template-columns:250px minmax(0,1fr)!important;gap:22px!important;padding:24px!important;width:calc(100vw - 100px)!important;}html[data-stream-ui][data-tv-library] #detail-poster{width:250px!important;height:290px!important;}html[data-stream-ui][data-tv-library] .detail-copy h2{font-size:30px!important;}html[data-stream-ui][data-tv-library] .detail-copy p{font-size:17px!important;}}html[data-stream-ui] body:not(.cinema-home) #stream-backdrop{opacity:.48;}html[data-stream-ui][data-tv-library] main{background:linear-gradient(110deg,var(--iptv-surface-910),var(--iptv-surface-471))!important;}html[data-stream-ui][data-tv-library] .heading{min-height:130px!important;flex-basis:130px!important;padding:20px 22px!important;border:1px solid var(--iptv-border-271);border-radius:15px;background:linear-gradient(90deg,var(--iptv-surface-922),var(--iptv-surface-400)),url(stream-city-v1.webp) 75% 38%/cover!important;box-sizing:border-box;}html[data-stream-ui][data-tv-library] .heading h2{font-size:32px!important;line-height:1.25;color:var(--iptv-text-1000);}html[data-stream-ui][data-tv-library] #items{align-content:start!important;grid-auto-rows:max-content!important;}html[data-stream-ui][data-tv-library] #items .tile{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,var(--iptv-surface-1000),var(--iptv-surface-1000))!important;box-shadow:inset 0 1px 0 var(--iptv-glow-86);}html[data-stream-ui] .stream-poster:before,html[data-stream-ui][data-tv-library] #items .tile:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(0deg,var(--iptv-surface-1000) 4%,var(--iptv-surface-522) 80%),var(--stream-card-art) center/cover no-repeat;opacity:.48;}html[data-stream-ui] .stream-poster img,html[data-stream-ui][data-tv-library] #items .tile img{background:transparent!important;position:relative;z-index:1;}html[data-stream-ui] .stream-poster .stream-card-copy,html[data-stream-ui][data-tv-library] #items .tile strong,html[data-stream-ui][data-tv-library] #items .tile .resume-tag{position:relative;z-index:2;}html[data-stream-ui] .stream-poster .stream-card-copy{position:absolute;}html[data-stream-ui][data-tv-library] .details-dialog{position:relative;isolation:isolate;overflow:auto;background:linear-gradient(135deg,var(--iptv-surface-1000),var(--iptv-surface-1000))!important;}html[data-stream-ui] .stream-detail-backdrop{position:absolute;inset:0;z-index:0;pointer-events:none;border-radius:inherit;background:linear-gradient(90deg,var(--iptv-surface-980) 4%,var(--iptv-surface-788) 42%,var(--iptv-surface-439) 85%),var(--stream-detail-art,url(stream-city-v1.webp)) right center/cover no-repeat;opacity:.72;}html[data-stream-ui][data-tv-library] .details-dialog>#detail-poster,html[data-stream-ui][data-tv-library] .details-dialog>.detail-copy,html[data-stream-ui][data-tv-library] .details-dialog>#tv-series-episodes{position:relative;z-index:1;}html[data-stream-ui][data-tv-library] #detail-poster{border:1px solid var(--iptv-border-200);box-shadow:0 12px 35px var(--iptv-shadow-600);}html[data-stream-ui][data-tv-library] .settings-dialog{background:linear-gradient(110deg,var(--iptv-surface-961),var(--iptv-surface-910)),url(stream-city-v1.webp) center/cover!important;}html[data-stream-ui] header nav #kind-live.active,html[data-stream-ui] header nav #kind-vod.active,html[data-stream-ui] header nav #kind-series.active{background:transparent!important;box-shadow:none!important;color:var(--iptv-text-1000)!important;border-bottom-color:var(--iptv-border-1000)!important;}@media(min-width:901px) and (max-width:1500px){html[data-stream-ui][data-tv-library] .heading{min-height:108px!important;flex-basis:108px!important;padding:14px 18px!important;}html[data-stream-ui][data-tv-library] .heading h2{font-size:25px!important;}}/* Flex-gap and inset fallbacks for older television Chromium engines. */html[data-stream-ui] #stream-backdrop,html[data-stream-ui] .stream-detail-backdrop,html[data-stream-ui] .stream-poster:before,html[data-stream-ui][data-tv-library] #items .tile:before{top:0;right:0;bottom:0;left:0;}html[data-stream-ui] .stream-content-rail{gap:0!important;}html[data-stream-ui] .stream-content-rail .stream-card{margin-right:18px;}html[data-stream-ui] .stream-content-rail .stream-card:last-child{margin-right:0;}html[data-stream-ui] .stream-actions{gap:0;}html[data-stream-ui] .stream-actions button+button{margin-left:17px;}html[data-stream-ui] #stream-sidebar{gap:0;}html[data-stream-ui] #stream-sidebar button{margin-bottom:24px;flex-shrink:0;}@media(min-width:901px) and (max-width:1500px){html[data-stream-ui] .stream-content-rail .stream-card{margin-right:13px;}html[data-stream-ui] #stream-sidebar button{margin-bottom:16px;}}@media(max-width:900px){html[data-stream-ui] .stream-content-rail .stream-card{margin-right:13px;}html[data-stream-ui] .stream-actions button+button{margin-left:8px;}html[data-stream-ui] #stream-sidebar button{margin-bottom:13px;}}/* Browsing uses the full screen; only a compact catalog toolbar remains. */html[data-stream-ui] body:not(.cinema-home)>header{display:none!important;}html[data-stream-ui] body:not(.cinema-home) main{height:100vh;max-height:100vh;flex:1;margin-top:0;padding-top:12px;box-sizing:border-box;}html[data-stream-ui][data-tv-library] body:not(.cinema-home) .heading{min-height:65px!important;flex-basis:65px!important;padding:8px 16px!important;background:linear-gradient(90deg,var(--iptv-surface-667),var(--iptv-surface-400))!important;border-color:var(--iptv-border-200);}html[data-stream-ui][data-tv-library] body:not(.cinema-home) .heading h2{font-size:24px!important;margin:3px 0!important;}html[data-stream-ui] body:not(.cinema-home).stream-search-open>header{display:flex!important;position:fixed;left:0;right:0;top:0;z-index:35;}@media(max-width:900px){html[data-stream-ui] body:not(.cinema-home) main{padding-top:8px;}html[data-stream-ui] body:not(.cinema-home) .heading{padding-top:0;min-height:48px!important;flex-basis:auto!important;}html[data-stream-ui] body:not(.cinema-home) .heading h2{font-size:18px!important;}}/* Poster-sized cards on phones AND televisions: artwork owns the card width. */html[data-stream-ui] #items.items{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))!important;align-content:start!important;grid-auto-rows:max-content!important;gap:16px!important;}html[data-stream-ui] #items.items .item{min-width:0;}html[data-stream-ui] body[data-kind] #items.items .item .tile{width:100%;height:auto!important;min-height:0!important;padding:0!important;border-radius:10px!important;display:flex;flex-direction:column;overflow:hidden;}html[data-stream-ui] body[data-kind] #items.items .item .tile img{display:block;width:100%!important;max-width:none!important;height:var(--stream-poster-image,225px)!important;max-height:none!important;object-fit:cover!important;object-position:center!important;padding:0!important;margin:0!important;border-radius:0!important;flex-shrink:0;}html[data-stream-ui] body[data-kind] #items.items .item[data-kind=live] .tile img{height:var(--stream-logo-image,110px)!important;object-fit:contain!important;padding:12px!important;box-sizing:border-box;background:var(--iptv-surface-1000)!important;}html[data-stream-ui] #items.items .item .tile strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px!important;line-height:1.35!important;min-height:40px;max-height:40px;margin:9px 10px!important;padding:0!important;overflow:hidden;}html[data-stream-ui] #items.items .resume-tag{padding:0 10px 9px;margin:0;}html[data-stream-ui] .stream-content-rail .stream-card.stream-poster,html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{flex:0 0 164px!important;width:164px!important;height:300px!important;min-height:0;display:block;}html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{height:324px!important;}html[data-stream-ui] .stream-content-rail .stream-poster img,html[data-stream-ui] .stream-content-rail .stream-continue img{width:100%;height:246px!important;object-fit:cover!important;object-position:center;display:block;}html[data-stream-ui] .stream-content-rail .stream-poster .stream-card-copy,html[data-stream-ui] .stream-content-rail .stream-continue .stream-card-copy{position:relative!important;left:auto;right:auto;bottom:auto;padding:9px 10px!important;background:var(--iptv-surface-1000)!important;height:54px;box-sizing:border-box;}html[data-stream-ui] .stream-content-rail .stream-continue .stream-card-copy{height:78px;}html[data-stream-ui] .stream-content-rail .stream-card strong{font-size:14px;line-height:1.3;}html[data-stream-ui] .stream-content-rail .stream-card small{font-size:12px;}html[data-stream-ui] .stream-live img{object-fit:contain!important;padding:10px;box-sizing:border-box;}@media(min-width:1600px){html[data-stream-ui] #items.items{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important;}}@media(max-width:900px){html[data-stream-ui] #items.items{grid-template-columns:repeat(auto-fill,minmax(115px,1fr))!important;gap:12px!important;}html[data-stream-ui] .stream-content-rail .stream-card.stream-poster,html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{flex-basis:132px!important;width:132px!important;height:252px!important;}html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{height:276px!important;}html[data-stream-ui] .stream-content-rail .stream-poster img,html[data-stream-ui] .stream-content-rail .stream-continue img{height:198px!important;}}html[data-stream-ui] body[data-kind] #items.items .item .tile img{flex:0 0 auto!important;}html[data-stream-ui] .stream-rating{position:absolute;left:8px;top:8px;z-index:3;padding:5px 8px;border-radius:7px;background:var(--iptv-surface-910);color:var(--iptv-text-1000);font-size:13px;font-weight:bold;}html[data-stream-ui] .stream-content-rail .stream-card.stream-featured{flex:0 0 228px!important;width:228px!important;height:342px!important;border-radius:20px;}html[data-stream-ui] .stream-content-rail .stream-featured img{width:100%;height:100%!important;object-fit:cover!important;}html[data-stream-ui] .stream-content-rail .stream-featured .stream-card-copy{position:absolute!important;padding:65px 15px 18px!important;background:linear-gradient(transparent,var(--iptv-surface-961))!important;}html[data-stream-ui] .stream-featured strong{font-size:21px;font-weight:700;}html[data-stream-ui] #stream-hero{height:210px;min-height:190px;}@media(max-width:900px){html[data-stream-ui] .stream-content-rail .stream-card.stream-featured{flex-basis:196px!important;width:196px!important;height:294px!important;}html[data-stream-ui] #stream-hero{height:245px;min-height:0;}}/* Detail artwork must stay below content on phones as well as televisions. */html[data-stream-ui] .details-dialog{position:relative;isolation:isolate;overflow:auto;background:var(--iptv-surface-1000)!important;color:var(--iptv-text-1000);}html[data-stream-ui] .details-dialog>#detail-poster,html[data-stream-ui] .details-dialog>.detail-copy,html[data-stream-ui] .details-dialog>#tv-series-episodes{position:relative!important;z-index:1!important;}html[data-stream-ui] .stream-detail-backdrop{z-index:0;opacity:1;background:linear-gradient(90deg,var(--iptv-surface-980),var(--iptv-surface-910) 50%,var(--iptv-surface-733)),var(--stream-detail-art) right center/cover no-repeat;}html[data-stream-ui] .detail-copy h2,html[data-stream-ui] .detail-copy p,html[data-stream-ui] #tv-series-episodes{color:var(--iptv-text-1000)!important;-webkit-text-fill-color:var(--iptv-accent-1000)!important;}html[data-stream-ui] .detail-actions button{background:var(--iptv-surface-1000)!important;color:var(--iptv-text-1000)!important;-webkit-text-fill-color:var(--iptv-accent-1000)!important;border:1px solid var(--iptv-border-600);}html[data-stream-ui] .detail-rating,html[data-stream-ui] .detail-rating-fill,html[data-stream-ui] .detail-rating-value{color:var(--iptv-accent-1000)!important;-webkit-text-fill-color:var(--iptv-accent-1000)!important;}html[data-stream-ui][data-phone-episodes] #details-panel.details-overlay{padding:12px!important;}html[data-stream-ui][data-phone-episodes] #details-panel .details-dialog{width:calc(100vw - 24px)!important;max-width:1100px;max-height:calc(100vh - 24px)!important;min-height:0!important;height:auto!important;padding:20px!important;display:grid!important;grid-template-columns:minmax(120px,24%) minmax(0,1fr);gap:20px!important;box-sizing:border-box;align-items:start;}html[data-stream-ui][data-phone-episodes] #details-panel #detail-poster{width:100%!important;height:auto!important;max-height:45vh!important;object-fit:contain!important;margin:0!important;background:var(--iptv-surface-1000);border-radius:10px;}html[data-stream-ui][data-phone-episodes] #details-panel .detail-copy{padding:0!important;max-height:none!important;overflow:visible;}html[data-stream-ui][data-phone-episodes] #details-panel .detail-copy h2{font-size:24px!important;line-height:1.35!important;margin:8px 0 12px!important;}html[data-stream-ui][data-phone-episodes] #details-panel .detail-copy p{font-size:16px!important;line-height:1.6!important;margin:8px 0!important;}html[data-stream-ui][data-phone-episodes] #details-panel .detail-actions{gap:8px;margin-top:12px;display:flex;flex-wrap:wrap;}html[data-stream-ui][data-phone-episodes] #details-panel .detail-actions button{font-size:15px!important;min-height:44px!important;padding:11px 15px!important;margin:0!important;}html[data-stream-ui][data-phone-episodes] #details-panel #tv-series-episodes{grid-column:1/-1;max-height:none!important;min-height:100px;overflow:visible;}html[data-stream-ui][data-phone-episodes] #details-panel #tv-episode-list{max-height:36vh;overflow:auto;}html[data-stream-ui][data-phone-episodes] #details-panel .tv-episode-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}html[data-stream-ui][data-phone-episodes] #details-panel .tv-episode-toolbar button,html[data-stream-ui][data-phone-episodes] #details-panel .tv-episode-toolbar select{font-size:14px;min-height:42px;padding:8px;color:var(--iptv-text-1000);background:var(--iptv-surface-1000);}@media(max-width:600px){html[data-stream-ui][data-phone-episodes] #details-panel .details-dialog{display:block!important;padding:16px!important;}html[data-stream-ui][data-phone-episodes] #details-panel #detail-poster{width:130px!important;height:195px!important;max-height:none!important;display:block;margin:0 auto 14px!important;}html[data-stream-ui][data-phone-episodes] #details-panel .detail-copy h2{font-size:22px!important;}html[data-stream-ui][data-phone-episodes] #details-panel #tv-series-episodes{margin-top:18px;}}html[data-stream-ui] #details-panel #detail-start,html[data-stream-ui] #details-panel #detail-resume,html[data-stream-ui] #details-panel #detail-episodes{background:var(--iptv-surface-1000)!important;color:var(--iptv-text-1000)!important;-webkit-text-fill-color:var(--iptv-accent-1000)!important;border-color:var(--iptv-border-1000)!important;}html[data-stream-ui] .stream-year{color:var(--iptv-text-1000)!important;font-size:12px!important;margin-top:3px!important;}html[data-stream-ui] #items .catalog-year{position:relative;z-index:2;color:var(--iptv-text-1000);font-size:13px;text-align:start;margin:0 10px 9px;}html[data-stream-ui] .stream-content-rail .stream-continue .stream-card-copy{height:94px;}html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{height:340px!important;}@media(max-width:900px){html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{height:292px!important;}}/* Phone details grow with metadata; percentage rows clipped long cast lists. */html[data-stream-ui][data-phone-episodes] #details-panel .details-dialog.tv-series-detail{grid-template-rows:auto auto!important;overflow-y:auto!important;align-content:start;}html[data-stream-ui][data-phone-episodes] #details-panel .detail-copy{min-height:0;overflow-wrap:anywhere;}html[data-stream-ui][data-phone-episodes] #details-panel #tv-series-episodes{grid-row:2;position:relative;clear:both;margin-top:12px;}html[data-stream-ui][data-phone-episodes] #details-panel .tv-episode{height:auto!important;min-height:80px;box-sizing:border-box;overflow:hidden;}html[data-stream-ui][data-phone-episodes] #details-panel .tv-episode-plot{line-height:1.4;max-height:34px;overflow:hidden;}html[data-stream-ui] #stream-update,html[data-stream-ui] #stream-library-update{min-height:42px;padding:9px 14px;font-size:15px;color:var(--iptv-text-1000);background:var(--iptv-surface-1000);border:1px solid var(--iptv-border-1000);border-radius:12px;white-space:nowrap;flex:none;}html[data-stream-ui] #stream-library-update{margin-inline-start:auto;}html[data-stream-ui] #stream-update:disabled,html[data-stream-ui] #stream-library-update:disabled{opacity:.65;}html[data-stream-ui] #stream-favorite-types{display:flex;gap:10px;flex:none;padding:5px 0 12px;}html[data-stream-ui] #stream-favorite-types[hidden]{display:none!important;}html[data-stream-ui] #stream-favorite-types button{min-height:44px;font-size:16px;padding:9px 18px;}html[data-stream-ui] #stream-favorite-types button[aria-pressed=true]{background:var(--iptv-surface-1000);border-color:var(--iptv-border-1000);color:var(--iptv-text-1000);}html[data-stream-ui] #detail-rating{display:flex;align-items:center;gap:8px;direction:ltr;color:var(--iptv-accent-1000);margin:10px 0;}html[data-stream-ui] .detail-rating-stars{position:static!important;font-size:20px;letter-spacing:0!important;}html[data-stream-ui] .detail-rating-label{margin-inline-start:4px;}html[data-stream-ui] #detail-rating .rating-five{display:inline-block;position:relative;flex:none;color:var(--iptv-muted-1000);font-size:20px;line-height:1.3;letter-spacing:2px;white-space:nowrap;direction:ltr;}html[data-stream-ui] #detail-rating .rating-five-fill{display:block;position:absolute;inset:0 auto 0 0;overflow:hidden;white-space:nowrap;color:var(--iptv-accent-1000);pointer-events:none;letter-spacing:2px;}html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{height:310px!important;}html[data-stream-ui] .stream-content-rail .stream-continue .stream-card-copy{height:66px;padding-top:8px;}html[data-stream-ui] .stream-progress{height:5px!important;overflow:hidden;border-radius:4px;background:var(--iptv-surface-1000)!important;margin:0 0 9px;}html[data-stream-ui] .stream-progress i{display:block;height:100%;background:var(--iptv-surface-1000)!important;border-radius:inherit;}@media(max-width:900px){html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{height:262px!important;}}html[data-stream-ui] header nav #stream-update{background:transparent!important;border:0!important;border-bottom:3px solid transparent!important;border-radius:0!important;box-shadow:none!important;color:var(--iptv-text-1000);padding:12px 8px!important;font-size:inherit;}html[data-stream-ui] header nav #stream-update:focus{color:var(--iptv-text-1000);border-bottom-color:var(--iptv-border-1000)!important;}html[data-stream-ui] body.stream-search-open header #unified-go{display:block!important;flex:none;min-height:44px;font-size:16px;padding:9px 14px;color:var(--iptv-text-1000);background:var(--iptv-surface-1000);border-radius:10px;}html[data-stream-ui] #stream-source-menu{position:fixed;z-index:140;max-width:calc(100vw - 24px);width:330px;max-height:65vh;overflow:auto;padding:12px;box-sizing:border-box;background:var(--iptv-surface-961);border:1px solid var(--iptv-border-1000);border-radius:16px;box-shadow:0 12px 35px var(--iptv-shadow-600);}html[data-stream-ui] #stream-source-menu[hidden]{display:none!important;}html[data-stream-ui] #stream-source-menu button{display:block;width:100%;min-height:44px;margin:5px 0;text-align:start;font-size:16px;padding:10px 12px;border-radius:10px;color:var(--iptv-text-1000);background:var(--iptv-surface-1000);border:1px solid var(--iptv-border-1000);}html[data-stream-ui] #stream-source-menu button[aria-checked=true]{border-color:var(--iptv-border-1000);background:var(--iptv-surface-1000);}/* TV readability and safe scroller geometry: 207. Do not shrink labels to fit. */html[data-stream-ui] #dashboard{padding-top:16px!important;padding-bottom:64px!important;scroll-padding-top:20px;scroll-padding-bottom:44px;}html[data-stream-ui] .stream-content-rail{padding:10px 8px 16px!important;scroll-padding:10px;min-height:0;}html[data-stream-ui] .stream-content-rail .stream-live{flex:0 0 180px!important;width:180px!important;height:182px!important;min-height:182px!important;display:flex;flex-direction:column;background:var(--iptv-surface-1000);overflow:hidden;}html[data-stream-ui] .stream-content-rail .stream-live img{position:relative!important;width:100%!important;height:120px!important;min-height:120px;object-fit:contain!important;object-position:center!important;padding:16px 18px!important;flex:none;}html[data-stream-ui] .stream-content-rail .stream-live .stream-card-copy{position:relative!important;left:auto;right:auto;bottom:auto;width:100%;min-height:60px;padding:8px 10px!important;box-sizing:border-box;background:var(--iptv-surface-1000)!important;}html[data-stream-ui] .stream-content-rail .stream-live strong{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25;font-size:19px;max-height:48px;}html[data-stream-ui] .poster-unavailable{display:flex!important;align-items:center;justify-content:center;color:var(--iptv-text-1000);background:linear-gradient(145deg,var(--iptv-surface-1000),var(--iptv-surface-1000));font-size:30px;letter-spacing:1px;}@media(min-width:901px){html[data-stream-ui][data-tv-library] main{grid-template-columns:340px minmax(0,1fr)!important;}html[data-stream-ui][data-tv-library] #categories button,html[data-stream-ui][data-tv-library] #library-special button{font-size:26px!important;line-height:1.35!important;min-height:72px!important;padding:15px 16px!important;color:var(--iptv-text-1000)!important;white-space:normal;overflow-wrap:break-word;}html[data-stream-ui][data-tv-library] #playlist-name{font-size:29px!important;}html[data-stream-ui] #items.items .item .tile strong{font-size:23px!important;line-height:1.3!important;min-height:60px;max-height:60px;}html[data-stream-ui] .stream-shelf h2{font-size:30px;line-height:1.3;margin-bottom:12px;}html[data-stream-ui] .stream-content-rail .stream-card strong{font-size:21px!important;line-height:1.3;}html[data-stream-ui] .stream-content-rail .stream-card small{font-size:17px!important;}html[data-stream-ui] .stream-content-rail .stream-poster .stream-card-copy{height:78px!important;}html[data-stream-ui] .stream-content-rail .stream-card.stream-poster{height:322px!important;}html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{height:348px!important;}html[data-stream-ui] .stream-content-rail .stream-continue .stream-card-copy{height:102px!important;}}html[data-stream-ui] .stream-content-rail .stream-live{height:auto!important;min-height:190px!important;}html[data-stream-ui] .stream-content-rail .stream-live .stream-card-copy{height:auto!important;min-height:68px;}html[data-stream-ui] .stream-content-rail .stream-live strong{max-height:none!important;}@media(min-width:901px){html[data-stream-ui] .stream-content-rail .stream-card.stream-poster,html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{height:auto!important;min-height:326px;}html[data-stream-ui] .stream-content-rail .stream-poster .stream-card-copy,html[data-stream-ui] .stream-content-rail .stream-continue .stream-card-copy{height:auto!important;min-height:80px;}}/* Artwork already fills its card: avoid decoding/rendering a duplicate backdrop. */html[data-stream-ui] .stream-poster:before,html[data-stream-ui][data-tv-library] #items .tile:before{display:none!important;}/* The hero scrolls away with the shelves so about two rows stay visible. */html[data-stream-ui] #dashboard{overflow:hidden!important;padding-bottom:0!important;min-height:0!important;}html[data-stream-ui] #stream-home{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;}html[data-stream-ui] #stream-hero{flex:0 0 auto;height:270px;min-height:250px;max-height:320px;margin-bottom:0;z-index:2;}html[data-stream-ui] #stream-rows>#stream-hero{margin:0 0 10px;}html[data-stream-ui] #stream-rows{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:12px 8px 48px 0;scroll-padding:16px;scrollbar-width:none;background:linear-gradient(180deg,var(--iptv-surface-251),var(--iptv-surface-867));}html[data-stream-ui] #stream-rows::-webkit-scrollbar{display:none;}@media(min-width:901px) and (max-height:800px){html[data-stream-ui] #stream-hero{height:210px;min-height:210px;}html[data-stream-ui] .stream-content-rail .stream-card.stream-featured{width:170px!important;flex-basis:170px!important;height:255px!important;}html[data-stream-ui] .stream-content-rail .stream-card.stream-poster,html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{min-height:260px!important;}html[data-stream-ui] .stream-content-rail .stream-poster img,html[data-stream-ui] .stream-content-rail .stream-continue img{height:180px!important;}}@media(min-width:901px) and (max-height:650px){html[data-stream-ui] #stream-hero{height:170px;min-height:170px;}html[data-stream-ui] #stream-description,html[data-stream-ui] #stream-kicker{display:none;}html[data-stream-ui] #stream-title{font-size:36px;margin-bottom:8px;}html[data-stream-ui] #stream-meta{margin-bottom:10px;}}@media(max-width:900px){html[data-stream-ui] #stream-hero{height:245px;min-height:245px;max-height:none;}}/* One poster scale across the Home shelves, with fewer readable cards per row. */html[data-stream-ui] #stream-backdrop{background-position:center,right center!important;background-size:cover!important;background-repeat:no-repeat!important;}html[data-stream-ui] .stream-content-rail .stream-card.stream-featured,
html[data-stream-ui] .stream-content-rail .stream-card.stream-poster,
html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{width:220px!important;flex:0 0 220px!important;height:410px!important;min-height:410px!important;}html[data-stream-ui] .stream-content-rail .stream-featured img,
html[data-stream-ui] .stream-content-rail .stream-poster img,
html[data-stream-ui] .stream-content-rail .stream-continue img{height:330px!important;width:100%!important;object-fit:cover!important;}html[data-stream-ui] .stream-card-copy{min-height:80px!important;box-sizing:border-box;}@media(min-width:901px) and (max-height:800px){html[data-stream-ui] .stream-content-rail .stream-card.stream-featured,html[data-stream-ui] .stream-content-rail .stream-card.stream-poster,html[data-stream-ui] .stream-content-rail .stream-card.stream-continue{width:200px!important;flex-basis:200px!important;height:380px!important;min-height:380px!important;}html[data-stream-ui] .stream-content-rail .stream-featured img,html[data-stream-ui] .stream-content-rail .stream-poster img,html[data-stream-ui] .stream-content-rail .stream-continue img{height:300px!important;}}/* Internal catalogues use the top navigation, leaving the full width for content. */html[data-stream-ui] body:not(.cinema-home) #stream-sidebar{display:none!important;}html[data-stream-ui] body:not(.cinema-home) main{margin-left:0!important;}html[data-stream-ui] body:not(.cinema-home) header{margin-left:0!important;}html[data-stream-ui] header nav{min-width:0;overflow-x:auto;scrollbar-width:none;}html[data-stream-ui] header nav button{font-size:30px!important;flex-shrink:0;white-space:nowrap;}html[data-stream-ui] header nav button:focus{outline:3px solid var(--stream-accent)!important;background:var(--iptv-surface-1000)!important;color:var(--iptv-text-1000)!important;}@media(min-width:901px) and (max-width:1500px){html[data-stream-ui] header .brand{flex-basis:190px;font-size:24px;}html[data-stream-ui] header nav button{font-size:24px!important;padding-left:7px!important;padding-right:7px!important;}html[data-stream-ui] header nav{gap:8px;}}@media(max-width:900px){html[data-stream-ui] header nav button{font-size:20px!important;}}html[data-stream-ui] #playlist-name,html[data-stream-ui] #library-source-switch{display:none!important;}html[data-stream-ui] body.cinema-home:before{background:none!important;}html[data-stream-ui] body.cinema-home #stream-backdrop{opacity:1!important;}#tv-season-chips{display:flex;gap:12px;overflow-x:auto;padding:10px 4px;margin:4px 0 10px;flex-shrink:0;}#tv-season-chips button{min-width:130px;padding:12px 18px;font-size:22px;white-space:nowrap;background:var(--iptv-surface-1000);color:var(--iptv-text-1000);border:1px solid var(--iptv-border-1000);border-radius:14px;}#tv-season-chips button[aria-pressed=true]{background:var(--iptv-surface-1000);border-color:var(--iptv-border-1000);}#tv-season-chips button:focus{outline:3px solid var(--media-accent,#77edff);background:var(--iptv-surface-1000);box-shadow:0 0 0 5px var(--iptv-shadow-1000);}html[data-stream-ui] header #kind-live:not([hidden]),html[data-stream-ui] header #kind-vod:not([hidden]),html[data-stream-ui] header #kind-series:not([hidden]){display:block!important;}html[data-stream-ui] body:not(.cinema-home)>header{display:flex!important;}/* Keep the enlarged navigation inside its header and outside catalog hit targets. */html[data-stream-ui] body>header{position:relative!important;z-index:30;height:84px!important;min-height:84px!important;flex:0 0 84px!important;flex-wrap:nowrap!important;overflow:hidden;}html[data-stream-ui] header nav{height:100%!important;display:flex!important;flex-wrap:nowrap!important;align-items:center!important;overflow-y:hidden!important;}html[data-stream-ui] header nav button{height:auto!important;min-height:44px;max-height:76px;line-height:1.2!important;position:relative!important;top:auto!important;transform:none!important;}html[data-stream-ui] body:not(.cinema-home) main{height:calc(100vh - 84px)!important;max-height:calc(100vh - 84px)!important;min-height:0;flex:1 1 0!important;}@media(max-width:900px){html[data-stream-ui] body>header{height:112px!important;min-height:112px!important;flex-basis:112px!important;flex-wrap:wrap!important;align-content:start;}html[data-stream-ui] header nav{height:56px!important;flex:0 0 100%!important;order:12;}html[data-stream-ui] body:not(.cinema-home) main{height:calc(100vh - 112px)!important;max-height:calc(100vh - 112px)!important;}}html[data-stream-ui] header nav{justify-content:flex-start!important;flex:1 1 0!important;min-width:0!important;}html[data-stream-ui] header .brand{flex-shrink:0!important;}@media(max-width:900px){html[data-stream-ui] header .brand{height:48px;line-height:48px;flex:0 0 auto!important;}html[data-stream-ui] header nav{flex:0 0 100%!important;}}/* Search stays outside the horizontally scrollable navigation. */html[data-stream-ui] body>header{overflow:visible!important;}html[data-stream-ui] header nav{font-size:24px;}html[data-stream-ui] header nav button{font-size:24px!important;padding:12px 7px!important;}html[data-stream-ui] #stream-top-search{flex:0 0 50px!important;min-width:50px;height:48px;font-size:30px;color:var(--iptv-text-1000);background:var(--iptv-surface-1000);border:1px solid var(--iptv-border-1000);order:10;}html[data-stream-ui] header .unified-bar{position:fixed!important;top:86px!important;right:20px!important;left:auto!important;width:min(680px,85vw)!important;z-index:100!important;padding:12px;background:var(--iptv-surface-961);border:1px solid var(--iptv-border-1000);border-radius:14px;}html[data-stream-ui] body:not(.cinema-home).stream-search-open>header{position:relative!important;}html[data-stream-ui] main .heading .search{display:flex!important;min-width:0;gap:8px;}html[data-stream-ui] main .heading .search input{width:240px;min-width:80px;font-size:21px;}html[data-stream-ui] main .heading .search button{font-size:20px;padding:9px 12px;}@media(max-width:1500px){html[data-stream-ui] header .brand{flex-basis:160px;font-size:21px;}html[data-stream-ui] header nav button{font-size:20px!important;}}@media(max-width:900px){html[data-stream-ui] header .unified-bar{top:114px!important;}html[data-stream-ui] header nav button{font-size:18px!important;}html[data-stream-ui] main .heading{flex-wrap:wrap;}html[data-stream-ui] main .heading .search{flex:1 0 100%!important;}html[data-stream-ui] main .heading .search input{flex:1;width:auto;}}#stream-loading{position:fixed;inset:0;z-index:200;background:var(--iptv-surface-1000);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--iptv-text-1000);font:26px Tahoma;gap:20px;text-align:center;padding:30px;}#stream-loading strong{font-size:42px;color:var(--iptv-accent-1000);}#stream-loading p{max-width:700px;}#stream-loading button{min-width:200px;color:var(--iptv-text-1000);background:var(--iptv-surface-1000);border:2px solid var(--iptv-border-1000);}html[data-stream-ui] #stream-live .stream-card{flex:0 0 220px!important;width:220px!important;height:410px!important;min-height:410px!important;}html[data-stream-ui] #stream-live .stream-card img{width:100%!important;height:330px!important;object-fit:contain!important;padding:30px!important;box-sizing:border-box;background:linear-gradient(145deg,var(--iptv-surface-1000),var(--iptv-surface-1000));}html[data-stream-ui] #stream-live .stream-card-copy{position:relative!important;min-height:80px!important;padding:12px!important;}@media(min-width:901px) and (max-height:800px){html[data-stream-ui] #stream-live .stream-card{flex-basis:200px!important;width:200px!important;height:380px!important;min-height:380px!important;}html[data-stream-ui] #stream-live .stream-card img{height:300px!important;}}.category-order-overlay{z-index:160!important;}.category-order-overlay .settings-dialog{display:flex;flex-direction:column;width:min(760px,92vw);max-height:90vh;gap:12px;background:var(--iptv-surface-1000)!important;}.category-order-rows{overflow:auto;max-height:55vh;padding:8px;}.category-order-rows button{display:block;width:100%;margin-bottom:10px;text-align:start;color:var(--iptv-text-1000);font-size:24px;}.category-order-rows button:focus{background:var(--iptv-surface-1000);outline:3px solid var(--iptv-accent-1000);}#category-order-open{font-size:18px;padding:8px 12px;flex-shrink:0;}@media(min-width:901px){html[data-stream-ui] #stream-hero{height:23vh!important;min-height:0!important;flex:0 0 23vh!important;}html[data-stream-ui] #stream-title{font-size:40px!important;max-height:50px;}html[data-stream-ui] #stream-description{max-height:42px!important;}html[data-stream-ui] #stream-rows{scroll-snap-type:y mandatory;scroll-padding:0;}html[data-stream-ui] #stream-rows>.stream-shelf{height:var(--home-row-size,330px)!important;min-height:var(--home-row-size,330px)!important;margin:0!important;scroll-snap-align:start;box-sizing:border-box;}html[data-stream-ui] #stream-rows .stream-card,html[data-stream-ui] #stream-live .stream-card{width:var(--home-card-width,180px)!important;flex:0 0 var(--home-card-width,180px)!important;height:var(--home-card-height,300px)!important;min-height:0!important;}html[data-stream-ui] #stream-rows .stream-card img,html[data-stream-ui] #stream-live .stream-card img{height:var(--home-image-height,240px)!important;min-height:0!important;}html[data-stream-ui] #stream-rows .stream-card-copy{min-height:56px!important;height:56px!important;padding:7px 9px!important;}html[data-stream-ui] #stream-rows .stream-card strong{font-size:17px!important;}html[data-stream-ui] #stream-rows .stream-content-rail{padding-top:5px!important;padding-bottom:5px!important;}}html[data-stream-ui] #tv-season-open,html[data-stream-ui] #tv-season-label,html[data-stream-ui] #tv-season{display:none!important;}html[data-stream-ui] #tv-season-chips{height:54px!important;min-height:54px!important;max-height:54px!important;padding:6px 4px!important;margin:0 0 8px!important;align-items:center!important;overflow-y:hidden!important;flex:0 0 54px!important;}html[data-stream-ui] #tv-season-chips button{height:36px!important;min-height:36px!important;max-height:36px!important;min-width:100px!important;width:auto!important;flex:0 0 auto!important;padding:6px 12px!important;font-size:18px!important;line-height:22px!important;border-radius:6px!important;}html[data-stream-ui] #tv-season-chips button[aria-pressed=true]{background:var(--iptv-surface-1000)!important;color:var(--iptv-text-1000)!important;border-color:var(--iptv-border-1000)!important;}html[data-stream-ui] #tv-episode-list{min-height:0;overflow:auto;}html[data-stream-ui] #tv-episode-list .tv-episode{min-height:72px!important;padding:8px 10px!important;border-radius:8px!important;}html[data-stream-ui] #stream-rows{scroll-snap-type:none!important;scroll-behavior:auto!important;}/* Margins also work on Tizen engines that support Grid but not flex gap. */html[data-stream-ui] .stream-content-rail{gap:0!important;padding-left:0!important;padding-right:0!important;scroll-behavior:smooth;}html[data-stream-ui] .stream-content-rail .stream-card{margin-left:0!important;margin-right:18px!important;flex-shrink:0!important;}html[data-stream-ui] .stream-content-rail .stream-card:last-child{margin-right:0!important;}html[data-stream-ui] .stream-row-empty{width:100%;padding:24px;color:var(--iptv-text-1000);font-size:22px;}html[data-stream-ui] #stream-backdrop{animation:stream-wallpaper-drift 18s ease-in-out infinite alternate;transform-origin:center center;}@keyframes stream-wallpaper-drift{from{transform:scale(1);}to{transform:scale(1.035);}}@media(prefers-reduced-motion:reduce){html[data-stream-ui] #stream-backdrop{animation:none;}}html[data-stream-ui][data-tv-library] #details-panel .details-dialog{align-items:start!important;align-content:start!important;overflow:hidden!important;padding:28px!important;}html[data-stream-ui][data-tv-library] #details-panel .detail-copy{align-self:start!important;min-height:0!important;max-height:100%!important;overflow-y:auto!important;padding:0 4px!important;box-sizing:border-box;}html[data-stream-ui][data-tv-library] #details-panel .detail-copy h2{display:block!important;flex:none!important;line-height:1.35!important;font-size:30px!important;min-height:42px!important;max-height:none!important;overflow:visible!important;white-space:normal!important;margin:0 0 12px!important;padding-top:3px!important;transform:none!important;}#stream-wallpaper-fade{position:fixed;inset:0;z-index:0;pointer-events:none;background-size:cover;background-position:center;opacity:0;}.stream-row-note{position:absolute;right:80px;top:8px;color:var(--iptv-accent-1000);font-size:12px;max-width:45%;text-align:end;}@media(min-width:901px){html[data-stream-ui] #stream-rows .stream-card{display:flex!important;flex-direction:column!important;box-sizing:border-box!important;padding:0!important;}html[data-stream-ui] #stream-rows .stream-card img{flex:0 0 var(--home-image-height)!important;box-sizing:border-box!important;}html[data-stream-ui] #stream-rows .stream-card-copy{position:relative!important;inset:auto!important;display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-height:80px!important;height:80px!important;box-sizing:border-box!important;padding:6px 8px!important;overflow:hidden!important;}html[data-stream-ui] #stream-rows .stream-card-copy strong{line-height:20px!important;max-height:40px!important;margin:0!important;}html[data-stream-ui] #stream-rows .stream-card-copy small{font-size:13px!important;line-height:16px!important;margin:0!important;}html[data-stream-ui] #stream-rows .stream-progress{flex:none!important;height:4px!important;margin:0 0 5px!important;}}/* Reference layout: one navigation bar, five landscape cards, bounded visual effects. */html[data-stream-ui] #stream-sidebar{display:none!important;}html[data-stream-ui] #stream-home,html[data-stream-ui] #dashboard,html[data-stream-ui] main{margin-left:0!important;}html[data-stream-ui] #stream-home{padding-left:32px!important;padding-right:32px!important;}html[data-stream-ui] header{left:0!important;padding:16px 28px!important;gap:14px!important;display:flex!important;align-items:center!important;}html[data-stream-ui] header nav{display:flex!important;flex:1 1 auto!important;justify-content:center!important;gap:3px!important;border-radius:40px!important;background:var(--iptv-surface-860)!important;padding:5px!important;min-width:0!important;overflow-x:auto!important;}html[data-stream-ui] header nav button{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:10px 15px!important;border-radius:30px!important;font-size:22px!important;flex:none!important;line-height:1.2!important;}html[data-stream-ui] header nav button.active,html[data-stream-ui] header nav button:focus{background:linear-gradient(120deg,var(--iptv-surface-1000),var(--iptv-surface-1000))!important;color:var(--iptv-text-1000)!important;box-shadow:0 0 12px var(--iptv-glow-400)!important;border-color:var(--iptv-border-1000)!important;}html[data-stream-ui] header svg{width:25px;height:25px;flex:none;}html[data-stream-ui] .stream-nav-icon{display:inline-flex;}html[data-stream-ui] #stream-top-settings{display:inline-flex!important;align-items:center;justify-content:center;border-radius:50%;width:46px;height:46px;flex:none;}html[data-stream-ui] #epg-open,html[data-stream-ui] #refresh{display:none!important;}html[data-stream-ui] #stream-backdrop{animation:none!important;transform:none!important;}html[data-stream-ui] #stream-wallpaper-fade{display:none!important;}html[data-stream-ui] #stream-loading{background:radial-gradient(ellipse at 80% 20%,var(--iptv-surface-1000),transparent 60%),radial-gradient(ellipse at 15% 80%,var(--iptv-surface-1000),transparent 60%),linear-gradient(135deg,var(--iptv-surface-1000),var(--iptv-surface-1000))!important;overflow:hidden;}html[data-stream-ui] #stream-loading:before{content:"";position:absolute;width:55vw;height:55vw;left:-20vw;top:10vh;border:1px solid var(--iptv-border-333);border-radius:45%;animation:stream-loader-orbit 18s linear infinite;pointer-events:none;}@keyframes stream-loader-orbit{to{transform:rotate(360deg);}}@media(prefers-reduced-motion:reduce){html[data-stream-ui] #stream-loading:before{animation:none;}}@media(min-width:901px){html[data-stream-ui] #stream-hero{height:36vh!important;flex-basis:36vh!important;}html[data-stream-ui] #stream-rows .stream-card{position:relative!important;border-radius:16px!important;}html[data-stream-ui] #stream-rows .stream-card img{height:100%!important;width:100%!important;object-fit:cover!important;flex:1 1 auto!important;}html[data-stream-ui] #stream-rows .stream-card-copy{position:absolute!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;height:auto!important;min-height:0!important;padding:30px 12px 10px!important;background:linear-gradient(transparent,var(--iptv-surface-950))!important;}html[data-stream-ui] #stream-live .stream-card img{object-fit:contain!important;padding:12px 15px 45px!important;}html[data-stream-ui] #stream-rows .stream-card:focus{outline:3px solid var(--iptv-accent-1000)!important;box-shadow:0 0 12px var(--iptv-glow-439)!important;transform:none!important;}}@media(max-width:1400px){html[data-stream-ui] header nav button{font-size:17px!important;padding:9px!important;gap:4px!important;}html[data-stream-ui] header .brand{font-size:22px!important;}html[data-stream-ui] header svg{width:19px;height:19px;}}html[data-stream-ui] header{margin-left:0!important;margin-right:0!important;}html[data-stream-ui] #dashboard{padding:0!important;}html[data-stream-ui] #stream-utility{position:fixed;right:32px;top:88px;z-index:9;display:flex;gap:8px;direction:ltr;}html[data-stream-ui] #stream-utility button{font-size:17px;padding:7px 12px;min-height:36px;border:1px solid var(--iptv-border-467);border-radius:20px;background:var(--iptv-surface-867);color:var(--iptv-text-1000);}html[data-stream-ui] #stream-utility button:focus{outline:3px solid var(--stream-accent,#64c4ff);background:var(--iptv-surface-1000);}html[data-stream-ui] header nav{justify-content:space-evenly!important;overflow:visible!important;}html[data-stream-ui] header nav button{font-size:20px!important;gap:8px!important;}@media(max-width:1400px){html[data-stream-ui] header nav button{font-size:16px!important;padding:8px!important;gap:4px!important;}html[data-stream-ui] #stream-clock{font-size:17px!important;}html[data-stream-ui] #stream-utility{top:80px;}}html[data-stream-ui] #stream-utility{z-index:30!important;}@media(max-width:900px){html[data-stream-ui] #stream-utility{top:auto!important;bottom:10px!important;right:12px!important;}}@media(max-width:900px){html[data-stream-ui] header{display:flex!important;flex-wrap:wrap!important;height:130px!important;flex-basis:130px!important;padding:8px!important;gap:6px!important;}html[data-stream-ui] header nav{order:20!important;flex:0 0 100%!important;width:100%!important;overflow-x:auto!important;justify-content:flex-start!important;}html[data-stream-ui] header nav button{font-size:14px!important;padding:8px!important;gap:4px!important;}html[data-stream-ui] header .brand{font-size:20px!important;flex:1!important;min-width:100px!important;}html[data-stream-ui] header svg{width:17px!important;height:17px!important;}html[data-stream-ui] #stream-clock{font-size:14px!important;}html[data-stream-ui] #stream-top-search,html[data-stream-ui] #stream-top-settings{width:32px!important;height:32px!important;min-width:32px!important;padding:4px!important;}}/* Official wordmark matches the launcher header; section tabs remain text only. */html[data-stream-ui] header .brand{padding:0!important;flex:0 0 280px!important;min-width:0!important;height:84px!important;line-height:normal!important;display:flex!important;align-items:center!important;}html[data-stream-ui] header .brand:before,html[data-stream-ui] header .brand:after{display:none!important;content:none!important;}html[data-stream-ui] header .morph-official-wordmark{display:block!important;width:280px!important;height:84px!important;object-fit:contain!important;}html[data-stream-ui] #search-go,html[data-stream-ui] #unified-go{background:var(--iptv-surface-1000)!important;color:var(--iptv-text-1000)!important;border:1px solid var(--iptv-border-1000)!important;-webkit-text-fill-color:var(--iptv-accent-1000)!important;}html[data-stream-ui] #search-go:focus,html[data-stream-ui] #unified-go:focus{background:var(--iptv-surface-1000)!important;color:var(--iptv-text-1000)!important;outline:3px solid var(--stream-accent,#5cd7ff)!important;box-shadow:0 0 10px var(--iptv-glow-400)!important;}@media(max-width:1400px){html[data-stream-ui] header .brand{flex-basis:210px!important;height:64px!important;}html[data-stream-ui] header .morph-official-wordmark{width:210px!important;height:64px!important;}}@media(max-width:900px){html[data-stream-ui] header .brand{flex:1 1 150px!important;height:48px!important;}html[data-stream-ui] header .morph-official-wordmark{width:160px!important;height:48px!important;}}html[data-stream-ui] #stream-meta .stream-meta-kind{color:var(--iptv-accent-1000)!important;font-weight:600;}html[data-stream-ui] #stream-meta .stream-meta-year{color:var(--iptv-accent-1000)!important;font-weight:600;}html[data-stream-ui] #stream-meta .stream-meta-rating{color:var(--iptv-accent-1000)!important;}html[data-stream-ui] header{background:linear-gradient(100deg,var(--iptv-surface-902),var(--iptv-surface-749))!important;border:1px solid var(--iptv-border-141)!important;border-radius:40px!important;margin:12px 24px!important;padding:0 16px!important;min-height:78px!important;}html[data-stream-ui] header nav{background:transparent!important;border:0!important;}html[data-stream-ui] header button:focus{outline:2px solid var(--iptv-accent-1000)!important;outline-offset:3px!important;box-shadow:0 0 0 2px var(--iptv-glow-1000),0 0 14px var(--iptv-glow-400)!important;background:linear-gradient(120deg,var(--iptv-surface-1000),var(--iptv-surface-1000))!important;color:var(--iptv-text-1000)!important;}/* Shared compact navigation geometry and focus surface. ID prevents legacy/theme rules winning. */#morph-header{--header-accent:var(--ui-focus-ring,var(--media-accent,#79bdff));box-sizing:border-box!important;border-radius:40px!important;height:78px!important;min-height:78px!important;max-height:78px!important;padding:0 14px!important;gap:8px!important;background:linear-gradient(100deg,var(--iptv-surface-902),var(--iptv-surface-878))!important;border:1px solid var(--iptv-border-188)!important;}#morph-header nav{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;margin:0!important;background:transparent!important;border:0!important;padding:6px!important;height:68px!important;min-width:0!important;overflow-x:auto!important;overflow-y:hidden!important;}#morph-header nav button{box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;flex:0 0 auto!important;min-height:48px!important;height:48px!important;line-height:26px!important;padding:10px 15px!important;margin:0!important;border:1px solid transparent!important;border-radius:28px!important;font-size:20px!important;color:var(--iptv-text-1000)!important;white-space:nowrap!important;background:transparent!important;box-shadow:none!important;outline:none!important;}#morph-header nav button.active{background:var(--iptv-surface-1000)!important;color:var(--iptv-text-1000)!important;border-color:var(--header-accent)!important;box-shadow:inset 0 -2px var(--header-accent)!important;}#morph-header button:focus,#morph-header nav button:focus{background:linear-gradient(120deg,var(--iptv-surface-1000),var(--iptv-surface-1000))!important;color:var(--iptv-text-1000)!important;border-color:var(--header-accent)!important;outline:2px solid var(--header-accent)!important;outline-offset:2px!important;box-shadow:0 0 0 2px var(--iptv-glow-1000),0 0 14px var(--header-accent)!important;}#morph-header .brand{box-sizing:border-box!important;min-width:280px!important;max-width:280px!important;flex:0 0 280px!important;height:78px!important;margin:0!important;padding:0!important;}#morph-header .brand img[src*="wordmark"]{width:280px!important;height:78px!important;object-fit:contain!important;}html[data-stream-ui][data-tv-library] #morph-header,html[data-stream-ui] #morph-header{width:calc(100% - 80px)!important;margin:24px 40px 0!important;flex:0 0 78px!important;}#morph-header .stream-nav-icon{display:inline-flex!important;align-items:center;flex:none;}#morph-header .stream-nav-icon svg{width:22px!important;height:22px!important;}#morph-header #home-open .stream-nav-icon{color:var(--iptv-accent-1000);}#morph-header #kind-live .stream-nav-icon{color:var(--iptv-accent-1000);}#morph-header #kind-vod .stream-nav-icon{color:var(--iptv-accent-1000);}#morph-header #kind-series .stream-nav-icon{color:var(--iptv-accent-1000);}#morph-header #kidsy-open .stream-nav-icon{color:var(--iptv-accent-1000);}#morph-header #stream-top-favorites .stream-nav-icon{color:var(--iptv-accent-1000);}#morph-header.has-inline-tools nav{flex:0 1 auto!important;}#morph-header.has-inline-tools #stream-utility{position:static!important;display:flex!important;margin-left:auto!important;gap:6px!important;flex:none!important;align-items:center!important;}#morph-header.has-inline-tools #stream-utility button{font-size:15px!important;min-height:38px!important;padding:7px 10px!important;}@media(max-width:1500px){#morph-header nav button{font-size:17px!important;padding:10px 11px!important;gap:6px!important;}#morph-header nav{gap:5px!important;}}@media(max-width:900px){html[data-stream-ui] #morph-header{width:calc(100% - 16px)!important;margin:8px!important;height:130px!important;max-height:130px!important;flex-basis:130px!important;}#morph-header .brand{min-width:150px!important;max-width:none!important;flex:1 1 150px!important;height:48px!important;}#morph-header .brand img[src*="wordmark"]{width:160px!important;height:48px!important;}#morph-header nav{height:52px!important;gap:5px!important;}#morph-header nav button{font-size:14px!important;height:40px!important;min-height:40px!important;padding:6px 9px!important;}#morph-header .stream-nav-icon svg{width:18px!important;height:18px!important;}}/* Whole poster fallback and readable bilingual titles; preserve the five-card rail. */html[data-stream-ui] #stream-rows .stream-card img.stream-portrait-art{object-fit:cover!important;object-position:center top!important;padding:0!important;}html[data-stream-ui] #stream-rows .stream-card-copy strong{font-size:20px!important;line-height:24px!important;max-height:none!important;white-space:normal!important;display:block!important;overflow:visible!important;-webkit-line-clamp:unset!important;}html[data-stream-ui] #stream-rows .stream-card-copy strong>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}html[data-stream-ui] #stream-rows .stream-title-secondary{font-size:17px;line-height:21px;color:var(--iptv-text-1000);}html[data-stream-ui] #stream-rows .stream-card-copy small{font-size:16px!important;line-height:19px!important;}html[data-stream-ui] .stream-rating{display:flex;align-items:center;gap:3px;padding:4px 7px;font-size:14px;}html[data-stream-ui] .stream-rating-stars{position:relative;display:inline-block;color:var(--iptv-muted-1000);white-space:nowrap;line-height:18px;letter-spacing:0;}html[data-stream-ui] .stream-rating-stars i{position:absolute;left:0;top:0;overflow:hidden;font-style:normal;white-space:nowrap;color:var(--iptv-accent-1000);}html[data-stream-ui] #stream-description{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-height:none!important;line-height:1.5!important;overflow:hidden!important;}@media(min-width:901px) and (max-width:1500px){html[data-stream-ui] #stream-rows .stream-card-copy strong{font-size:17px!important;line-height:21px!important;}html[data-stream-ui] #stream-rows .stream-title-secondary{font-size:15px;line-height:18px;}html[data-stream-ui] #stream-rows .stream-card-copy small{font-size:14px!important;line-height:17px!important;}html[data-stream-ui] .stream-rating{font-size:12px;}}html[data-stream-ui] .stream-meta-rating{display:inline-flex;align-items:center;gap:5px;}html[data-stream-ui] .stream-empty-state{padding:30px;border:1px solid var(--iptv-border-400);border-radius:20px;background:linear-gradient(125deg,var(--iptv-surface-867),var(--iptv-surface-867));color:var(--iptv-text-1000);min-height:150px;}html[data-stream-ui] .stream-empty-state h2{font-size:28px;line-height:1.4;margin:0 0 12px;}html[data-stream-ui] .stream-empty-state p{font-size:21px;line-height:1.6;margin:0 0 20px;}html[data-stream-ui] .stream-empty-state button{font-size:20px;margin-inline-end:12px;padding:12px 24px;color:var(--iptv-text-1000);background:var(--iptv-surface-1000);border:1px solid var(--iptv-border-1000);border-radius:24px;}/* Explicit geometry avoids inherited TV text sizing and theme alignment at startup. */html[data-stream-ui] body #stream-loading{box-sizing:border-box!important;position:fixed!important;left:0!important;right:0!important;top:0!important;bottom:0!important;width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;padding:32px!important;transform:none!important;font:24px/1.5 Arial,Tahoma,sans-serif!important;}html[data-stream-ui] body #stream-loading strong{display:block!important;flex:none!important;width:100%!important;text-align:center!important;font:600 36px/1.3 Arial,Tahoma,sans-serif!important;margin:0!important;}html[data-stream-ui] body #stream-loading p{box-sizing:border-box!important;width:100%!important;max-width:680px!important;text-align:center!important;font:22px/1.5 Arial,Tahoma,sans-serif!important;margin:12px auto!important;}/* Keep episode actions visible independently of long provider descriptions. */html[data-stream-ui] #details-panel .detail-copy{display:flex!important;flex-direction:column!important;min-height:0!important;overflow:hidden!important;height:100%!important;}html[data-stream-ui] #details-panel .tv-detail-scroll{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;padding:8px 8px 12px!important;scroll-padding:10px;}html[data-stream-ui] #details-panel .detail-actions{flex:0 0 auto!important;min-height:62px!important;margin:6px 0 0!important;padding:6px 8px 8px!important;overflow:visible!important;align-items:center!important;}html[data-stream-ui] #details-panel .detail-actions button{flex:0 0 auto!important;min-height:48px!important;height:auto!important;line-height:28px!important;padding:10px 18px!important;overflow:visible!important;margin:4px 10px 4px 0!important;}html[data-stream-ui] #details-panel .detail-actions button:before{flex:0 0 28px!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;background-size:contain!important;}html[data-stream-ui] #details-panel #detail-poster{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;justify-self:center!important;align-self:center!important;object-fit:contain!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;}/* Theme controls remain authoritative over streaming presentation. */html[data-stream-ui] body{--stream-accent:var(--media-accent,#80cfff);}html[data-stream-ui] #stream-sources,html[data-stream-ui] #stream-update,html[data-stream-ui] #multiview-open{border-color:var(--media-accent)!important;}html[data-stream-ui] button:focus,html[data-stream-ui] input:focus,html[data-stream-ui] select:focus{outline-color:var(--media-accent)!important;border-color:var(--media-accent)!important;box-shadow:0 0 0 2px var(--media-bg),0 0 14px var(--media-accent)!important;}html[data-stream-ui] #stream-source-menu,html[data-stream-ui] #settings-panel .settings-dialog{background:linear-gradient(135deg,var(--media-card),var(--media-bg))!important;border-color:var(--media-accent)!important;}html[data-stream-ui] #settings-panel .iptv-settings-nav button[aria-current=page],html[data-stream-ui] #settings-panel #account-public,html[data-stream-ui] #tv-season-chips button[aria-pressed=true]{background:linear-gradient(110deg,var(--media-card),var(--media-bg))!important;border-color:var(--media-accent)!important;color:var(--iptv-text-1000)!important;box-shadow:inset 0 -3px var(--media-accent)!important;}html[data-stream-ui] #settings-panel .iptv-source-card{background:linear-gradient(140deg,var(--media-card),var(--media-bg))!important;border-color:var(--media-accent)!important;}/* Live list rows keep the name beside a small logo; grid poster rules must not win. */html[data-stream-ui][data-tv-library] body[data-kind=live]:not(.channel-grid) #items .item .tile{display:flex!important;flex-direction:row!important;align-items:center!important;min-height:64px!important;height:auto!important;overflow:visible!important;}html[data-stream-ui][data-tv-library] body[data-kind=live]:not(.channel-grid) #items .item .tile img,html[data-stream-ui][data-tv-library] body[data-kind=live]:not(.channel-grid) #items .tile .poster-unavailable{width:44px!important;height:44px!important;min-height:44px!important;flex:0 0 44px!important;padding:4px!important;object-fit:contain!important;}html[data-stream-ui][data-tv-library] body[data-kind=live]:not(.channel-grid) #items .tile strong{display:block!important;position:static!important;flex:1 1 auto!important;min-width:0!important;min-height:0!important;height:auto!important;max-height:none!important;white-space:normal!important;overflow:visible!important;font-size:22px!important;line-height:1.4!important;}/* Provider menu has its own visible scroll position, independent of the poster grid. */html[data-stream-ui][data-tv-library] body main>aside{overflow-y:auto!important;overflow-x:hidden!important;min-height:0!important;max-height:100%!important;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--ui-scrollbar-thumb,rgba(225,235,248,.2)) transparent;scroll-padding:12px;}html[data-stream-ui][data-tv-library] body main>aside::-webkit-scrollbar{width:8px;display:block;}html[data-stream-ui][data-tv-library] body main>aside::-webkit-scrollbar-track{background:transparent;}html[data-stream-ui][data-tv-library] body main>aside::-webkit-scrollbar-thumb{background:var(--ui-scrollbar-thumb,rgba(225,235,248,.2));border-radius:6px;}/* Avoid a second full-size artwork layer per catalog tile on constrained TVs. */html[data-stream-ui] body[data-media-low="true"] #items .tile:before{display:none!important;background:none!important;}#search-go svg{display:inline-block;vertical-align:middle;flex-shrink:0;width:20px;height:20px;}/* Physical margins keep icon/text spacing on older Samsung engines, in either language. */#morph-header nav{gap:0!important;}#morph-header nav button{gap:0!important;}#morph-header nav button:not(:last-child){margin-right:6px!important;}#morph-header .stream-nav-icon{margin-left:6px!important;margin-right:6px!important;}/* Single rounded-pill focus for the IPTV top navigation.
   Older TV engines draw `outline` as a rectangle even on rounded buttons,
   which produced a second focus box around the intended pill. The pill glow
   below uses box-shadow, which follows border-radius, so only one rounded
   indicator remains. The html[data-stream-ui] prefix outranks the shared
   nav-system.css focus rule regardless of stylesheet order. Scoped to
   #morph-header nav only. */html[data-stream-ui] body #morph-header nav button:focus,html[data-stream-ui] body #morph-header nav button:focus-visible{outline:none!important;outline-offset:0!important;background:linear-gradient(120deg,var(--iptv-surface-1000),var(--iptv-surface-1000))!important;color:var(--iptv-text-1000)!important;border-color:var(--header-accent)!important;box-shadow:0 0 0 3px var(--iptv-glow-1000),0 0 16px var(--header-accent)!important;}/* Glow-off (performance) mode keeps the same single pill indicator without blur. */html[data-stream-ui] body.media-effect-glow-off #morph-header nav button:focus,html[data-stream-ui] body.ui-effect-glow-off #morph-header nav button:focus{outline:none!important;outline-offset:0!important;box-shadow:0 0 0 3px var(--iptv-glow-1000)!important;}/* Compact landscape shelves and unclipped rounded controls. */@media(min-width:901px){html[data-stream-ui] #stream-rows{padding:8px 8px 12px 0!important;}html[data-stream-ui] #stream-rows>.stream-shelf{height:auto!important;min-height:0!important;margin:0 0 18px!important;padding:0!important;}html[data-stream-ui] #stream-rows .stream-shelf h2{line-height:1.45!important;margin:0 0 6px!important;}html[data-stream-ui] #stream-rows .stream-card{height:var(--home-card-height,170px)!important;}}html[data-stream-ui] #stream-title{line-height:1.45!important;max-height:none!important;padding:0 0 5px!important;white-space:nowrap!important;text-overflow:ellipsis!important;box-sizing:content-box!important;}html[data-stream-ui] body #morph-header nav{overflow:visible!important;padding-top:5px!important;padding-bottom:5px!important;}html[data-stream-ui] body #morph-header nav button{overflow:visible!important;border-bottom:1px solid transparent!important;}html[data-stream-ui] body #morph-header nav button:before,html[data-stream-ui] body #morph-header nav button:after{content:none!important;display:none!important;}html[data-stream-ui] body #morph-header nav button.active{border-bottom:1px solid var(--header-accent,var(--media-accent))!important;}html[data-stream-ui] body #morph-header nav button:focus,html[data-stream-ui] body #morph-header nav #kind-live:focus,html[data-stream-ui] body .stream-actions button:focus{outline:none!important;border-radius:999px!important;border:1px solid var(--media-accent,#80cfff)!important;background:linear-gradient(120deg,var(--media-card,#153b61),var(--media-bg,#172c4a))!important;box-shadow:0 0 0 2px var(--media-accent,#80cfff)!important;}html[data-stream-ui] body .stream-actions button:focus:before,html[data-stream-ui] body .stream-actions button:focus:after{content:none!important;display:none!important;}@media(min-width:901px){html[data-stream-ui] #stream-rows .stream-shelf h2{font-size:24px!important;line-height:34px!important;}html[data-stream-ui] #stream-rows .stream-card-copy strong{line-height:1.45!important;}html[data-stream-ui] #stream-rows .stream-card-copy strong>span{padding-bottom:3px!important;}}/* Hero remains outside the scrolling shelves; no bounded translucent backdrop. */html[data-stream-ui] body #stream-home,html[data-stream-ui] body #stream-rows,html[data-stream-ui] body #stream-hero,html[data-stream-ui] body #dashboard{background:transparent!important;box-shadow:none!important;border:0!important;}html[data-stream-ui] body #stream-home:before,html[data-stream-ui] body #stream-home:after,html[data-stream-ui] body #stream-hero:before,html[data-stream-ui] body #stream-hero:after,html[data-stream-ui] body #stream-rows:before,html[data-stream-ui] body #stream-rows:after{content:none!important;display:none!important;}html[data-stream-ui] body #morph-header nav button:not(:focus),html[data-stream-ui] body #morph-header nav #kind-live:not(:focus){background:transparent!important;border:1px solid transparent!important;border-bottom-color:transparent!important;box-shadow:none!important;outline:none!important;}html[data-stream-ui] body.cinema-home main{background:transparent!important;}html[data-stream-ui] body #morph-header{background:linear-gradient(100deg,var(--media-bg),var(--media-card))!important;border-color:var(--media-accent)!important;}html[data-stream-ui] body{--stream-bg:var(--media-bg)!important;background:var(--media-bg)!important;}html[data-stream-ui] body #morph-header nav button:focus,html[data-stream-ui] body #morph-header nav #kind-live:focus{background:linear-gradient(120deg,var(--media-card),var(--media-bg))!important;box-shadow:0 0 0 2px var(--media-accent)!important;border-color:var(--media-accent)!important;}html[data-stream-ui] body #settings-panel .settings-dialog,html[data-stream-ui] body #details-panel .details-dialog,html[data-stream-ui] body #stream-source-menu,html[data-stream-ui] body #catalog-sort-panel{background:var(--ui-glass-dialog,var(--ui-panel-bg,var(--media-bg)))!important;color:var(--ui-text,#fff)!important;}html[data-stream-ui] body #settings-panel button,html[data-stream-ui] body #settings-panel input,html[data-stream-ui] body #settings-panel select,html[data-stream-ui] body #details-panel button,html[data-stream-ui] body #stream-source-menu button{background:var(--ui-control-bg,var(--media-card))!important;color:var(--ui-control-text,var(--ui-text,#fff))!important;border-color:var(--media-accent)!important;}html[data-stream-ui] body #settings-panel button:focus,html[data-stream-ui] body #settings-panel button[aria-current=page],html[data-stream-ui] body #settings-panel button[aria-pressed=true],html[data-stream-ui] body #details-panel button:focus{background:var(--ui-selected-bg,var(--media-bg))!important;color:var(--ui-selected-text,var(--ui-text,#fff))!important;border-color:var(--media-accent)!important;}html[data-stream-ui] body #morph-header nav button:focus,html[data-stream-ui] body #morph-header nav #kind-live:focus,html[data-stream-ui] body #morph-header button:focus{background:repeating-radial-gradient(ellipse at 120% -20%,transparent 0,transparent 13px,var(--ui-focus-surface-a,rgba(255,255,255,.16)) 14px,transparent 16px),linear-gradient(135deg,var(--ui-selected-bg,var(--media-card,#182334)),var(--ui-bg-raised,var(--media-bg,#101827)))!important;outline:none!important;box-shadow:inset 0 0 0 1px var(--media-accent)!important;}html[data-stream-ui] body #morph-header nav button:focus,html[data-stream-ui] body #morph-header nav #kind-live:focus,html[data-stream-ui] body #morph-header button:focus{background:var(--ui-focused-surface)!important;}/* Detail content has one readable scroller; episodes use the full remaining height. */html[data-stream-ui][data-tv-library] #details-panel .details-dialog{height:88vh!important;max-height:88vh!important;grid-template-rows:minmax(0,1fr)!important;}html[data-stream-ui][data-tv-library] #details-panel .details-dialog.tv-series-detail{grid-template-rows:minmax(180px,36%) minmax(0,1fr)!important;row-gap:16px!important;}html[data-stream-ui] #details-panel .tv-detail-scroll>*{flex:none!important;white-space:normal!important;overflow-wrap:break-word!important;max-height:none!important;overflow:visible!important;}html[data-stream-ui] #details-panel .tv-detail-scroll:focus{outline:1px solid var(--ui-focus-ring,var(--media-accent));outline-offset:-1px;}html[data-stream-ui][data-tv-library] #details-panel #tv-series-episodes{height:100%!important;max-height:none!important;min-height:0!important;margin:0!important;padding-top:10px!important;align-self:stretch!important;box-sizing:border-box!important;}html[data-stream-ui] #tv-episodes-title{display:none!important;}html[data-stream-ui] .tv-episode-toolbar{min-height:46px;flex-shrink:0;gap:12px;}html[data-stream-ui] #tv-season-chips{flex:1 1 auto!important;min-width:0!important;margin:0!important;}html[data-stream-ui] #details-panel #tv-episode-list{flex:1 1 auto!important;max-height:none!important;min-height:0!important;overflow-y:auto!important;padding-bottom:8px!important;box-sizing:border-box!important;}html[data-stream-ui] #details-panel .detail-actions #detail-episodes{background:var(--ui-button-gradient)!important;color:var(--ui-button-text,#fff)!important;}/* Movie details keep actions directly below the readable copy, within one bounded column. */html[data-stream-ui][data-tv-library] #details-panel .details-dialog:not(.tv-series-detail){grid-template-columns:minmax(180px,29%) minmax(0,1fr)!important;align-items:center!important;}html[data-stream-ui][data-tv-library] #details-panel .details-dialog:not(.tv-series-detail)>.detail-copy{grid-column:2!important;grid-row:1!important;height:auto!important;max-height:100%!important;align-self:center!important;overflow:hidden!important;}html[data-stream-ui][data-tv-library] #details-panel .details-dialog:not(.tv-series-detail)>#detail-poster{grid-column:1!important;grid-row:1!important;max-height:100%!important;}html[data-stream-ui][data-tv-library] #details-panel .details-dialog:not(.tv-series-detail) .tv-detail-scroll{flex:0 1 auto!important;max-height:calc(88vh - 190px)!important;}html[data-stream-ui][data-tv-library] #details-panel .details-dialog:not(.tv-series-detail) .detail-actions{flex:0 0 auto!important;flex-wrap:wrap!important;width:100%!important;margin-top:12px!important;min-height:62px!important;}html[data-stream-ui] #details-panel #tv-series-episodes[hidden]{display:none!important;}html[data-stream-ui][data-tv-library] #details-panel .details-dialog.poster-missing:not(.tv-series-detail){grid-template-columns:minmax(0,1fr)!important;}html[data-stream-ui][data-tv-library] #details-panel .details-dialog.poster-missing:not(.tv-series-detail)>.detail-copy{grid-column:1!important;}/* UI surfaces use shared theme tokens; artwork and rating stars retain their content colors. */html[data-stream-ui] body button,html[data-stream-ui] body input,html[data-stream-ui] body select{color:var(--ui-control-text,var(--ui-text,#fff));border-color:var(--ui-card-border,var(--media-accent));}html[data-stream-ui] body main button,html[data-stream-ui] body #tv-season-panel button,html[data-stream-ui] body #catalog-sort-panel button,html[data-stream-ui] body #account-keyboard button,html[data-stream-ui] body #epg-panel button{background:var(--ui-control-bg,var(--media-card))!important;color:var(--ui-control-text,var(--ui-text,#fff))!important;border-color:var(--ui-card-border,var(--media-accent))!important;}html[data-stream-ui] body #tv-season-panel,html[data-stream-ui] body #account-keyboard,html[data-stream-ui] body #epg-panel .epg-dialog,html[data-stream-ui] body #catalog-sort-panel{background:var(--ui-glass-dialog,var(--ui-panel-bg,var(--media-bg)))!important;color:var(--ui-text,#fff)!important;border-color:var(--ui-card-border,var(--media-accent))!important;}html[data-stream-ui] body #details-panel .detail-copy h2,html[data-stream-ui] body #details-panel .detail-copy p,html[data-stream-ui] body #tv-episode-list strong,html[data-stream-ui] body #tv-episode-list small{color:var(--ui-text,#fff)!important;-webkit-text-fill-color:var(--ui-text,#fff)!important;}html[data-stream-ui] body #tv-episode-list .tv-episode{background:var(--ui-control-bg,var(--media-card))!important;color:var(--ui-control-text,var(--ui-text,#fff))!important;border-color:var(--ui-card-border,var(--media-accent))!important;}html[data-stream-ui] body #details-panel .detail-actions #detail-resume,html[data-stream-ui] body #details-panel .detail-actions #detail-start{background:var(--ui-button-gradient)!important;color:var(--ui-button-text,#fff)!important;}html[data-stream-ui] body button:focus,html[data-stream-ui] body main button.active,html[data-stream-ui] body #tv-season-chips button[aria-pressed=true],html[data-stream-ui] body #tv-season-options button[aria-pressed=true]{background:var(--ui-focused-surface,var(--ui-selected-bg,var(--media-card)))!important;color:var(--ui-selected-text,var(--ui-text,#fff))!important;border-color:var(--ui-focus-ring,var(--media-accent))!important;outline:none!important;box-shadow:inset 0 0 0 1px var(--ui-focus-ring,var(--media-accent))!important;}html[data-stream-ui] body #details-panel button:focus,html[data-stream-ui] body #settings-panel button:focus{background:var(--ui-focused-surface,var(--ui-selected-bg,var(--media-card)))!important;color:var(--ui-selected-text,var(--ui-text,#fff))!important;}html[data-stream-ui] body #morph-header .stream-nav-icon,html[data-stream-ui] body .resume-tag{color:var(--ui-focus-ring,var(--media-accent))!important;}html[data-stream-ui] #details-panel .details-dialog #tv-detail-favorite:not([hidden]){display:inline-flex!important;}html[data-stream-ui][data-tv-library] #details-panel .details-dialog:not(.tv-series-detail)>#detail-poster{width:100%!important;height:100%!important;object-fit:contain!important;}/* Focused title artwork is bounded by the hero; shelves keep their existing motion. */html[data-stream-ui] body.cinema-home #stream-backdrop,html[data-stream-ui] #stream-wallpaper-fade{display:none!important;}html[data-stream-ui] body #stream-hero{--hero-art-bleed:72px;isolation:isolate;overflow:visible;background:var(--media-home-bg,var(--media-bg,#050d19))!important;}html[data-stream-ui] .stream-header-art{position:absolute;top:0;right:0;width:88%;height:calc(100% + var(--hero-art-bleed));object-fit:cover;object-position:center 30%;opacity:0;transition:opacity 220ms ease;z-index:-2;pointer-events:none;}html[data-stream-ui] .stream-header-art.portrait{object-fit:contain;object-position:75% center;}html[data-stream-ui] .stream-header-art.shown{opacity:1;}html[data-stream-ui] body #stream-hero:after{content:""!important;display:block!important;position:absolute;top:0;right:0;bottom:calc(0px - var(--hero-art-bleed));left:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,var(--media-home-bg,var(--media-bg,#050d19)) 12%,transparent 70%),linear-gradient(0deg,var(--media-home-bg,var(--media-bg,#050d19)) 2%,transparent 38%);}html[data-stream-ui] .stream-hero-copy{width:49%;max-width:760px;box-sizing:border-box;padding:14px 8px!important;direction:ltr!important;text-align:left!important;}html[data-stream-ui] #stream-title{font-weight:800!important;line-height:1.12!important;white-space:normal!important;overflow-wrap:anywhere;overflow:visible!important;max-height:none!important;margin:0 0 10px!important;letter-spacing:0!important;}html[data-stream-ui] #stream-description{margin-bottom:8px!important;}html[data-stream-ui] .stream-actions{flex-wrap:wrap;gap:8px!important;}html[data-stream-ui] .stream-actions button{margin:0!important;padding:10px 18px!important;min-height:44px!important;}html[data-stream-ui] #stream-kicker{display:none;}html[data-stream-ui] .stream-hero-pager{position:absolute;right:20px;bottom:16px;display:flex;align-items:center;gap:10px;z-index:3;}html[data-stream-ui] .stream-hero-pager i{width:9px;height:9px;border-radius:50%;background:var(--iptv-surface-333);}html[data-stream-ui] .stream-hero-pager i.active{background:var(--iptv-surface-1000);}html[data-stream-ui] .stream-hero-pager button{padding:0!important;min-height:26px;width:26px;border-radius:50%;background:var(--iptv-surface-400)!important;color:var(--iptv-text-1000)!important;font-size:24px;line-height:1;}@media(min-width:901px){html[data-stream-ui] body #stream-hero{height:34vh!important;flex:0 0 34vh!important;max-height:none!important;min-height:0!important;}html[data-stream-ui] #stream-title,html[lang=ar][data-stream-ui] #stream-title{font-size:clamp(30px,3.1vw,60px)!important;}}@media(min-width:901px) and (max-height:760px){html[data-stream-ui] body #stream-hero{height:36vh!important;flex-basis:36vh!important;}html[data-stream-ui] #stream-title,html[lang=ar][data-stream-ui] #stream-title{font-size:34px!important;}html[data-stream-ui] .stream-actions button{font-size:14px!important;padding:8px 12px!important;min-height:36px!important;}}@media(max-width:900px){html[data-stream-ui] .stream-hero-copy{width:70%;}html[data-stream-ui] #stream-title{font-size:30px!important;}}@media(prefers-reduced-motion:reduce){html[data-stream-ui] .stream-header-art{transition:none;}}html[data-stream-ui] body.media-effect-motion-off .stream-header-art,html[data-stream-ui] body.reduce-motion .stream-header-art,html[data-stream-ui] body[data-media-low=true] .stream-header-art{transition:none;}/* A darker shade of the active theme, without dimming artwork or controls. */html[data-stream-ui] body.cinema-home{background:var(--media-home-bg,var(--media-bg))!important;}/* Artwork fades behind the first shelf heading instead of ending at the hero edge. */html[data-stream-ui] body #stream-rows{position:relative;z-index:3;}html[data-stream-ui] body #morph-header{background:linear-gradient(100deg,var(--media-bg),var(--media-card))!important;}@media(max-height:760px){html[data-stream-ui] body #stream-hero{--hero-art-bleed:54px;}}/* Show the complete artwork and carry it to the viewport edge. */html[data-stream-ui] .stream-header-art{right:calc((100% - 100vw)/2);width:calc(88% + (100vw - 100%)/2);object-fit:contain;object-position:right center;}html[data-stream-ui] .stream-header-art.portrait{object-position:right center;}html[data-stream-ui] body #stream-hero:after{right:calc((100% - 100vw)/2);background:linear-gradient(90deg,var(--media-home-bg,var(--media-bg)) 12%,transparent 70%),linear-gradient(0deg,var(--media-home-bg,var(--media-bg)) 2%,transparent 38%),linear-gradient(180deg,var(--media-home-bg,var(--media-bg)),transparent 12%);}html[data-stream-ui] .stream-header-art{width:auto;max-width:88%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 30%),linear-gradient(180deg,transparent,#000 8%,#000 65%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 30%),linear-gradient(180deg,transparent,#000 8%,#000 65%,transparent);mask-composite:intersect;}/* Restore the broad cinematic framing while retaining the soft edge treatment. */html[data-stream-ui] .stream-header-art{width:calc(88% + (100vw - 100%)/2);max-width:none;object-fit:cover;object-position:right 12%;}html[data-stream-ui] .stream-header-art.portrait{object-fit:contain;object-position:right center;}/* Featured artwork fills the hero even when the provider only supplies portrait art. */html[data-stream-ui] .stream-header-art,html[data-stream-ui] .stream-header-art.portrait{width:calc(88% + (100vw - 100%)/2);max-width:none;object-fit:cover;object-position:70% top;}/* Complete high-resolution hero artwork; never crop or upscale a small provider image. */html[data-stream-ui] .stream-header-art,html[data-stream-ui] .stream-header-art.portrait{width:auto;height:auto;right:0;top:0;bottom:0;left:auto;margin:auto 0;object-fit:contain;object-position:right center;-webkit-mask-image:none;mask-image:none;}

/* Favorites remain visible independently of rating badges and text direction. */
html[data-stream-ui] .stream-favorite-badge{position:absolute;top:8px;right:8px;left:auto;z-index:4;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:rgba(15,26,44,.82);color:#ffda72;font-size:21px;line-height:1;pointer-events:none;}
html[data-stream-ui] .stream-favorite-badge[hidden]{display:none;}
/* Floating slideshow controls: no surrounding panel and no blur. */
html[data-stream-ui] .stream-hero-pager{position:absolute;right:18px;bottom:12px;z-index:4;display:flex;align-items:center;background:none;border:0;box-shadow:none;direction:ltr;}
html[data-stream-ui] .stream-hero-pager button{display:flex;align-items:center;justify-content:center;position:relative;min-width:24px;width:24px;height:28px;min-height:28px;padding:0;margin:0 1px;background:transparent!important;border:0!important;border-radius:50%;color:#f4f7ff;font-size:25px;line-height:1;box-shadow:none!important;}
html[data-stream-ui] .stream-hero-pager button[data-slide]{min-width:19px;width:19px;}
html[data-stream-ui] .stream-hero-pager button[data-slide]:before{content:'';width:7px;height:7px;border-radius:50%;background:rgba(239,245,255,.5);}
html[data-stream-ui] .stream-hero-pager button[data-slide].active:before{background:#fff;}
html[data-stream-ui] .stream-hero-pager button:focus{outline:2px solid #fff;outline-offset:1px;}
