@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#090909;--surface:#121213;--raised:#1b1b1d;--line:#2b2b2e;--muted:#919195;--white:#f7f7f8;--yellow:#ffd600;--font:'Manrope',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--white);font-family:var(--font);font-size:13px;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,select{cursor:pointer}button{color:inherit;border:0;background:none}button:disabled{cursor:default;opacity:.4}a{color:inherit;text-decoration:none}button,input,select,a,[tabindex]{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}button:focus:not(:focus-visible){outline:none}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:-100px;left:16px;background:var(--yellow);color:#000;padding:12px;z-index:100}.skip:focus{top:12px}svg.icon{width:19px;height:19px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;flex:none}
.header{height:80px;max-width:1632px;padding:0 36px;display:flex;align-items:center;gap:28px;margin:auto}.brand{display:flex;align-items:center;gap:11px;font-size:29px;font-weight:800;letter-spacing:-1.5px}.brand-dot{color:var(--yellow)}.brand-note{color:#77777c;font-size:11px;border-left:1px solid var(--line);padding-left:24px}.header-right{margin-left:auto;display:flex;align-items:center;gap:20px}.preview-badge{display:flex;gap:7px;align-items:center;color:var(--muted);font-size:10px;letter-spacing:.03em}.preview-badge i{width:5px;height:5px;border-radius:50%;background:var(--yellow)}.language select{background:transparent;border:none;font-size:11px;font-weight:800;color:#eaeaea;padding:8px 1px}.language option{background:#171717}.quiet-btn{display:flex;gap:7px;align-items:center;font-size:11px;color:#b5b5ba}.quiet-btn:hover{color:var(--white)}.quiet-btn svg{width:16px}.avatar{border:1px solid #37373a;width:33px;height:33px;border-radius:50%;background:#202023;font-weight:800;font-size:12px}.page{max-width:1632px;margin:auto;padding:0 36px}.nav-shell{display:flex;align-items:stretch;border-top:1px solid #252527;border-bottom:1px solid #252527;padding:10px 0;margin-bottom:24px;position:relative;gap:6px}.top-nav{display:flex;gap:6px;min-width:0;flex:1}.nav-item{display:flex;gap:9px;align-items:center;justify-content:center;height:42px;padding:0 17px;white-space:nowrap;color:#ababaf;font-size:12px;font-weight:700;border-radius:7px;transition:background .16s,color .16s}.nav-item:hover{color:#fff;background:#1b1b1d}.nav-item.active{background:var(--yellow);color:#111}.nav-item .icon{width:18px;height:18px}.nav-league{font-size:11px;font-weight:900;min-width:23px;color:#e0e0e2;letter-spacing:-.8px}.active .nav-league{color:#111}.more-wrap{margin-left:auto;position:relative}.more-dots{letter-spacing:2px}.more-menu{position:absolute;top:51px;right:0;width:270px;background:#171719;border:1px solid #333338;padding:9px;border-radius:10px;z-index:25;box-shadow:0 20px 50px #0009}.more-menu .nav-item{justify-content:flex-start;width:100%;height:43px}.menu-section{padding:10px 10px 6px;font-size:9px;color:#747479;text-transform:uppercase;letter-spacing:1.3px}
.workspace{display:grid;grid-template-columns:324px minmax(0,1fr);gap:22px;align-items:start}.sidebar{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;height:calc(100vh - 193px);min-height:520px;max-height:1100px;position:sticky;top:20px}.side-top{padding:22px 19px 17px;display:flex;align-items:center;gap:12px}.eyebrow{display:block;color:var(--muted);font-size:9px;letter-spacing:1.8px;font-weight:800;text-transform:uppercase}.side-top .eyebrow{margin-bottom:7px}.side-top h1{font-size:20px;line-height:1.2;margin:0;letter-spacing:-.6px}.count{font-size:10px;color:#aaaab0;border:1px solid #343438;border-radius:5px;padding:4px 7px;margin-left:auto}.search-wrap{display:flex;align-items:center;gap:9px;background:#1b1b1e;border:1px solid #2b2b30;margin:0 17px 14px;border-radius:7px;padding:0 10px;height:40px;color:#79797f}.search-wrap svg{width:16px;height:16px;display:block}.search-wrap input{width:100%;min-width:0;border:0;background:transparent;outline:none;color:#e9e9ec;font-size:11px}.search-wrap input::placeholder{color:#84848b}.search-wrap input:focus-visible{outline:none}.search-wrap:focus-within{border-color:var(--yellow)}kbd{font:10px var(--font);border:1px solid #39393d;border-radius:3px;padding:1px 5px}.quick-filters{display:flex;margin:0 17px 14px;background:#0d0d0e;border-radius:6px;padding:3px;gap:2px}.quick-filters button{flex:1;padding:7px 3px;border-radius:4px;color:#909095;font-size:10px;white-space:nowrap}.quick-filters button.active{background:#303034;color:white}.quick-filters .icon{width:12px;height:12px;vertical-align:-2px;margin-right:3px}.country-row{padding:0 18px 14px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line)}.country-row select{background:none;color:#e0e0e4;border:0;outline:none;font-size:11px;font-weight:700;width:100%;padding:4px 0}.country-row select option{background:#202024}.country-row .icon{color:var(--yellow);width:15px}.side-body{display:flex;min-height:0;flex:1}.results{overflow:auto;scrollbar-width:thin;scrollbar-color:#38383e transparent;flex:1;padding:8px;outline:none;min-width:0}.channel-row{display:flex;align-items:center;gap:11px;min-height:61px;border:1px solid transparent;border-radius:7px;padding:8px 10px;position:relative;margin-bottom:3px}.channel-row:hover{background:#1d1d20}.channel-row.selected{background:#252316;border-color:#736323}.channel-select{position:absolute;inset:0;width:100%;z-index:1;border-radius:7px}.channel-select:focus-visible{outline-offset:-2px}.channel-logo{width:36px;height:36px;background:#f4f4f4;border-radius:6px;padding:4px;display:flex;align-items:center;justify-content:center;flex:none;overflow:hidden}.channel-logo img{width:100%;height:100%;object-fit:contain}.channel-logo .fallback{font-size:9px;font-weight:900;letter-spacing:-.7px;text-align:center;color:#131313}.channel-details{min-width:0;flex:1;pointer-events:none}.channel-name{font-size:11px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel-country{font-size:9px;color:#929297;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-row.selected .channel-name{color:#ffe450}.channel-row .row-star{z-index:2;position:relative;width:28px;height:34px;color:#67676e;padding:5px}.row-star.active{color:var(--yellow)}.row-star svg{width:15px;height:15px}.row-star.active svg{fill:var(--yellow)}.selected-indicator{display:inline-flex;gap:2px;align-items:flex-end;width:16px;height:14px;margin-left:1px}.selected-indicator i{display:block;background:var(--yellow);width:3px;height:6px}.selected-indicator i:nth-child(2){height:12px}.selected-indicator i:nth-child(3){height:9px}.side-foot{border-top:1px solid var(--line);padding:13px 18px;display:flex;align-items:center;gap:9px;font-size:9px;color:#717178}.tiny-key{width:19px;height:21px;border:1px solid #505057;border-bottom:3px solid #505057;border-radius:3px;display:grid;place-items:center;color:#a8a8ad;font-weight:900}.side-foot-arrow{margin-left:auto;color:#888}.empty{padding:40px 14px;text-align:center;color:#9898a1;font-size:12px;line-height:1.8}.empty strong{display:block;color:#eee;font-size:14px;margin-bottom:8px}.load-more{border:1px solid var(--line);padding:11px;width:100%;border-radius:6px;margin-top:8px;font-size:11px;color:#bcbcc3}.load-more:hover{border-color:#777}.league-rail{width:49px;flex:none;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:9px;padding:12px 6px;overflow:auto}.league-rail button{border-radius:6px;padding:9px 1px;min-height:37px;color:#898990;font-weight:800;font-size:9px;letter-spacing:-.3px}.league-rail button.active{background:#36301c;color:var(--yellow)}.league-rail button:hover{background:#262629}.league-name{padding:0 18px 14px;border-bottom:1px solid var(--line)}.league-name select{width:100%;font-size:11px;border:0;background:transparent;color:#e9e9ed;padding:5px 0}.league-name option{background:#19191b}.day-heading{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#85858d;padding:12px 6px;display:flex;align-items:center;gap:9px}.day-heading:after{content:'';height:1px;background:var(--line);flex:1}.event-card{width:100%;border:1px solid #2c2c31;border-radius:7px;margin-bottom:8px;padding:12px 11px;text-align:left;display:block;background:#171719}.event-card:hover{border-color:#616169;background:#1c1c1f}.event-card.selected{border-color:#aa9125;background:#252215}.event-top{display:flex;align-items:center;gap:8px;margin-bottom:11px;font-size:9px;color:#919199}.event-time{font-variant-numeric:tabular-nums;color:#d4d4d9;font-weight:800}.event-live{color:var(--yellow);font-size:8px;font-weight:800;display:flex;align-items:center;gap:4px;margin-left:auto}.event-live:before{content:'';width:4px;height:4px;background:var(--yellow);border-radius:50%}.team-row{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:11px;font-weight:700}.team-row .team-score{margin-left:auto;font-variant-numeric:tabular-nums}.team-mark{width:21px;height:21px;flex:none;border-radius:50%;background:#343439;display:grid;place-items:center;font-size:7px;font-weight:900;letter-spacing:-.6px;color:#fff;border:1px solid #ffffff19}.team-mark.alt{background:#ececef;color:#141416}.event-sources{color:#77777f;margin-top:12px;font-size:8px;display:flex;align-items:center;gap:5px}.event-sources svg{width:10px;height:10px}.sample-label{padding:0 17px 12px;font-size:9px;color:#77777e;display:flex;gap:5px;align-items:center}
.watch-column{min-width:0}.watch-context{display:flex;align-items:center;justify-content:space-between;margin:1px 0 17px;min-height:40px;gap:12px}.watch-context .eyebrow{margin-bottom:6px}.watch-context h2{font-size:18px;letter-spacing:-.4px;margin:0;font-weight:800}.context-label{font-size:9px;color:#68686f}.player-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}.source-toolbar{min-height:66px;display:flex;align-items:center;gap:13px;padding:11px 15px;background:#141416;border-bottom:1px solid #252529}.source-title{display:flex;align-items:center;gap:7px;font-size:9px;color:#929299;flex:none}.source-title svg{width:15px;height:15px}.source-list{display:flex;gap:7px;overflow:auto;scrollbar-width:none;min-width:0;flex:1}.source-chip{border:1px solid #38383e;border-radius:6px;display:flex;align-items:center;gap:9px;padding:8px 11px;text-align:left;flex:none;min-height:42px}.source-chip.selected{background:#302a13;border-color:#8d7625}.source-chip:hover{border-color:#b5a352}.source-chip strong{display:block;font-size:10px;font-weight:800;white-space:nowrap}.source-chip small{display:block;font-size:8px;color:#8f8f97;margin-top:3px}.source-chip.selected strong{color:#ffe454}.source-chip .icon{width:13px;height:13px;color:var(--yellow)}.source-empty{color:#797981;font-size:10px;padding:8px}.icon-btn{display:grid;place-items:center;min-width:34px;min-height:34px;border-radius:6px;color:#96969e;border:1px solid transparent;font-size:17px;flex:none}.icon-btn:hover{background:#242427;color:#fff}.help-btn{font-size:12px;border:1px solid #39393e;width:24px;min-width:24px;height:24px;min-height:24px;border-radius:50%}.player-stage{aspect-ratio:16/9;position:relative;background:#080909;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:280px}.arena{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 65% 40%,#3a3d231f,transparent 65%),linear-gradient(120deg,#14151255,#060707);overflow:hidden}.arena:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#050606bb,transparent 40%,#08090966)}.pitch{position:absolute;width:85%;height:74%;border:1px solid #c9d58d14;top:22%;left:24%;transform:perspective(600px) rotateX(40deg) rotateZ(-24deg);box-shadow:0 0 0 28px #abb17603,0 0 0 60px #c7cb8203,0 0 0 65px #cedea609,0 0 0 95px #ccd48703,0 0 0 100px #d2db9507,0 0 0 130px #c3d89703,0 0 0 135px #c3d89707;background:repeating-linear-gradient(90deg,#a3b66503 0,#a3b66503 12.5%,transparent 12.5%,transparent 25%)}.pitch-middle{position:absolute;left:50%;height:100%;width:1px;background:#cad69014}.pitch-circle{position:absolute;width:22%;aspect-ratio:1;border:1px solid #cad69018;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.goal{position:absolute;width:16%;height:50%;border:1px solid #cad69014;top:25%}.goal-left{left:-1px}.goal-right{right:-1px}.arena-wordmark{position:absolute;right:-4%;top:34%;font-size:clamp(70px,10vw,180px);font-weight:800;letter-spacing:-9px;transform:rotate(-24deg);color:#c3d18b04}.arena-orbit{position:absolute;border:1px solid #dddd9910;border-radius:50%;width:130%;height:90%;left:10%;transform:rotate(-24deg)}.orbit-one{top:20%}.orbit-two{top:15%;width:140%;height:100%}.stage-top{position:absolute;top:22px;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between}.stage-label{display:flex;gap:6px;align-items:center;font-size:8px;color:#9c9c91;letter-spacing:1.4px;text-transform:uppercase}.signal-dot{background:var(--yellow);width:5px;height:5px;border-radius:50%}.stage-key{font-size:25px;font-weight:900;font-style:italic;color:#ffffff14}.player-center{text-align:center;position:relative;padding:35px 24px;max-width:650px}.play-button{width:63px;height:63px;border:1px solid #777147;border-radius:50%;background:#d0bd4010;display:grid;place-items:center;margin:0 auto 25px;color:var(--yellow);transition:transform .18s,background .18s}.play-button:hover{transform:scale(1.07);background:#fff31d1c}.play-button svg{width:21px;height:21px;fill:var(--yellow);stroke-width:1px;margin-left:3px}.player-center .eyebrow{color:#b4aa74;font-size:8px;letter-spacing:2px}.player-center h2{font-size:clamp(22px,2.7vw,42px);line-height:1.18;letter-spacing:-1.2px;margin:12px 0 13px;font-weight:800}.player-center p{font-size:11px;line-height:1.7;color:#92928d;margin:0 auto;max-width:360px}.yellow-btn{background:var(--yellow);color:#151300;padding:12px 19px;border-radius:6px;font-weight:800;font-size:11px;min-height:42px}.yellow-btn:hover{background:#ffe23d}.player-center .yellow-btn{margin-top:23px}.stage-bottom{position:absolute;bottom:20px;left:24px;right:18px;display:flex;gap:8px;align-items:center;color:#6e706b;font-size:9px}.stage-bottom .icon-btn{margin-left:auto;color:#8b8d87}.sound-lines{display:flex;align-items:center;gap:2px;height:10px}.sound-lines i{height:5px;width:2px;background:#777c6d}.sound-lines i:nth-child(2){height:10px}.sound-lines i:nth-child(3){height:8px}.playing-info{display:flex;align-items:center;gap:13px;padding:19px 22px;border-top:1px solid #28282b;min-height:96px}.channel-tile{width:44px;height:44px;background:#fff;color:#161616;display:flex;align-items:center;justify-content:center;border-radius:8px;font-weight:900;letter-spacing:-1px;font-size:12px;flex:none;padding:5px;text-align:center;overflow:hidden}.channel-tile img{width:100%;height:100%;object-fit:contain}.playing-text{min-width:0}.playing-text .eyebrow{font-size:8px;letter-spacing:1.1px}.playing-text h3{font-size:15px;font-weight:800;margin:5px 0 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.muted{font-size:10px;color:#818189}.favorite-current{margin-left:auto;border:1px solid #37373c}.favorite-current[aria-pressed=true]{color:var(--yellow);border-color:#716024}.favorite-current[aria-pressed=true] svg{fill:var(--yellow)}.below-player{margin-top:26px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:16px}.section-heading h2{margin:6px 0 0;font-size:17px;letter-spacing:-.5px}.section-heading .eyebrow{color:#74747c;font-size:8px}.demo-note{font-size:9px;color:#727279}.hot-events{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.hot-card{padding:15px;border:1px solid #2c2c30;border-radius:8px;background:#141416;text-align:left;min-width:0;transition:border-color .18s,transform .18s}.hot-card:hover{border-color:#73672b;transform:translateY(-2px)}.hot-card .event-top{font-size:8px;margin-bottom:10px;white-space:nowrap;overflow:hidden}.hot-card .team-row{font-size:10px}.hot-card .team-mark{width:20px;height:20px;font-size:6px}.hot-card .card-foot{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #29292d;margin-top:13px;padding-top:11px;color:#8b8b93;font-size:8px}.hot-card .card-foot span:last-child{color:var(--yellow);font-size:13px}.footer{margin:25px 0 18px;padding-top:16px;border-top:1px solid #202023;display:flex;align-items:center;gap:16px;color:#5c5c64;font-size:8px}.footer>span:nth-child(2){margin-left:auto}.text-btn{color:#87878e;font-size:9px;padding:6px 0}.text-btn:hover{color:var(--yellow)}.mobile-picker,.sheet-close{display:none}.outline-btn{border:1px solid #4c4421;color:var(--yellow);border-radius:6px;padding:9px 12px;font-size:10px}.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);background:#f3f2e9;color:#111;padding:13px 20px;border-radius:9px;box-shadow:0 6px 35px #0009;z-index:80;font-size:12px;max-width:calc(100% - 32px);width:max-content}.info-dialog{max-width:430px;width:calc(100% - 32px);background:#181819;border:1px solid #404044;border-radius:16px;color:#f5f5f5;padding:35px;box-shadow:0 30px 100px #0009}.info-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.info-dialog img{margin-bottom:22px}.info-dialog h2{font-size:25px;letter-spacing:-.8px;line-height:1.25;margin:12px 0}.info-dialog p{font-size:12px;line-height:1.8;color:#a8a8b0;margin:0 0 24px}.dialog-close{position:absolute;right:13px;top:13px}.info-dialog .yellow-btn{width:100%}
@media(min-width:1550px){.workspace{grid-template-columns:348px minmax(0,1fr);gap:26px}.channel-row{min-height:65px}.channel-name{font-size:12px}.side-top{padding-top:25px}.player-center h2{font-size:44px}.hot-card{padding:19px}.header{height:87px}.sidebar{height:calc(100vh - 202px)}}
@media(max-width:1250px){.header,.page{padding-left:24px;padding-right:24px}.workspace{grid-template-columns:294px minmax(0,1fr);gap:18px}.nav-item{padding:0 12px;gap:7px}.brand-note{display:none}.header-right{gap:16px}.source-title{display:none}.channel-row{gap:8px;padding:8px}.side-top{padding-left:17px}.hot-events{gap:8px}.hot-card{padding:12px}.hot-card .team-row{font-size:9px}.player-stage{min-height:280px}.player-center{padding:45px 20px}.player-center p{font-size:10px}.context-label{display:none}.stage-bottom{bottom:12px}.stage-top{top:16px}}
@media(max-width:980px){.header,.page{padding-left:20px;padding-right:20px}.workspace{grid-template-columns:266px minmax(0,1fr);gap:15px}.nav-item{padding:0 12px;font-size:11px}.preview-badge{display:none}.hot-events{grid-template-columns:repeat(2,minmax(0,1fr))}.channel-name{font-size:10px}.channel-logo{width:31px;height:31px}.channel-row{min-height:59px}.watch-context h2{font-size:16px}.source-toolbar{padding:9px;gap:8px}.source-chip{padding:7px 9px}.playing-info{padding:17px}.player-center h2{font-size:28px}.player-center .yellow-btn{margin-top:16px}.player-center p{max-width:260px}.play-button{width:51px;height:51px;margin-bottom:17px}.footer>span:nth-child(2){display:none}}
@media(max-width:760px){.header{height:68px;padding:0 16px}.brand{font-size:26px;gap:8px}.brand img{width:31px;height:34px}.header-right{gap:12px}.admin-open>span:nth-child(2){display:none}.admin-open{min-width:30px;min-height:38px;justify-content:center}.avatar{width:29px;height:29px}.page{padding:0 14px}.nav-shell{margin-bottom:18px;padding:8px 0;gap:3px}.nav-item{height:39px;font-size:10px;gap:6px;padding:0 10px}.nav-item .icon{width:16px;height:16px}.top-nav{gap:3px}.more-wrap>.nav-item{padding:0 9px}.workspace{display:block}.watch-context{margin:0 0 13px;min-height:37px}.watch-context h2{font-size:16px}.watch-context .eyebrow{font-size:8px;letter-spacing:1.3px}.mobile-picker{display:flex;align-items:center;gap:6px}.mobile-picker svg{width:13px;height:13px}.player-card{border-radius:10px}.source-toolbar{min-height:58px;padding:9px 10px}.source-chip{min-height:37px;padding:6px 9px}.source-chip strong{font-size:9px}.source-chip small{font-size:7px}.help-btn{display:none}.player-stage{min-height:270px;aspect-ratio:1.45}.stage-top{left:18px;right:18px;top:16px}.stage-label{font-size:7px}.player-center{padding:43px 21px}.player-center .eyebrow{font-size:7px}.player-center h2{font-size:25px;letter-spacing:-.7px;margin:10px 0}.player-center p{font-size:10px;max-width:260px}.play-button{width:48px;height:48px;margin-bottom:18px}.play-button svg{width:16px;height:16px}.player-center .yellow-btn{margin-top:17px;padding:10px 15px;min-height:37px;font-size:10px}.stage-bottom{left:17px;right:12px;bottom:10px;font-size:8px}.playing-info{padding:15px;min-height:82px;gap:10px}.playing-text h3{font-size:13px;max-width:240px}.playing-text .eyebrow{font-size:7px}.muted{font-size:9px}.channel-tile{width:37px;height:37px;font-size:10px;border-radius:6px}.favorite-current{min-width:32px;min-height:32px}.below-player{margin-top:24px}.section-heading{margin-bottom:13px}.section-heading h2{font-size:17px}.demo-note{font-size:8px;max-width:95px;text-align:right}.hot-events{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.hot-card{padding:12px 10px}.hot-card .team-row{font-size:9px;gap:5px}.hot-card .event-top{font-size:7px}.hot-card .team-mark{width:18px;height:18px}.footer{margin-top:24px;font-size:8px}.footer .text-btn{margin-left:auto;font-size:8px}.sidebar{display:none;position:fixed;inset:70px 0 0;z-index:40;width:100%;height:calc(100dvh - 70px);min-height:0;max-height:none;border-radius:17px 17px 0 0;border-color:#414146}.sidebar.sheet-open{display:flex;animation:slide-up .2s ease-out}.sheet-close{display:grid;margin-left:0;border:1px solid #393940}.side-top{padding:19px 20px 16px}.side-top h1{font-size:22px}.side-top .count{margin-left:auto}.sheet-backdrop{position:fixed;inset:0;z-index:39;background:#000a;backdrop-filter:blur(4px)}body.sheet-active{overflow:hidden}.channel-row{min-height:67px;padding:10px 14px}.channel-name{font-size:13px}.channel-country{font-size:10px}.channel-logo{width:38px;height:38px}.row-star{min-width:44px!important;min-height:44px}.event-card{padding:15px}.event-top{font-size:10px}.team-row{font-size:13px}.team-mark{width:24px;height:24px}.event-sources{font-size:9px}.quick-filters button{font-size:11px;min-height:35px}.search-wrap{height:43px}.search-wrap input{font-size:12px}.country-row select{font-size:12px;min-height:30px}.league-rail{width:58px}.league-rail button{min-height:44px}.more-menu{width:260px;max-height:70dvh;overflow:auto}.more-menu .nav-item{font-size:12px;min-height:45px}.league-name select{min-height:32px;font-size:12px}.toast{bottom:18px;font-size:11px}.info-dialog{padding:29px}.source-list{overscroll-behavior-x:contain}}
@media(max-width:359px){.header-right{gap:6px}.brand{font-size:23px}.nav-item{padding:0 8px}.playing-text h3{max-width:180px}.hot-events{grid-template-columns:1fr}.player-stage{min-height:290px}.hot-card .team-row{font-size:12px}}
.player-stage{width:100%;min-width:0}.player-center{width:100%;min-width:0;overflow-wrap:anywhere}
.brand{gap:10px}.brand img{width:47px;height:47px;object-fit:contain}.footer-keycap{object-fit:contain}.header-right{gap:14px}.country-row{padding:0 17px 16px}.country-control{position:relative;display:block;width:100%;height:60px;border:1px solid #625727;background:linear-gradient(110deg,#27251b,#202020);border-radius:8px;cursor:pointer;transition:border-color .16s,background .16s,box-shadow .16s}.country-control:hover{border-color:#c4a92f;background:#2b281b}.country-control:focus-within{border-color:var(--yellow);box-shadow:0 0 0 2px #ffd60026}.country-control-icon{position:absolute;left:13px;top:22px;pointer-events:none;color:var(--yellow)}.country-control-icon svg{width:18px!important;height:18px}.country-control-label{position:absolute;left:41px;top:10px;font-size:8px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#aaa896;pointer-events:none}.country-control select{position:relative;margin:0;width:100%;height:100%;padding:24px 44px 10px 41px;font-size:12px;line-height:1.3;appearance:none;-webkit-appearance:none;cursor:pointer;outline:none}.country-control select:focus-visible{outline:none}.country-chevron{position:absolute;right:10px;top:17px;width:26px;height:26px;display:grid;place-items:center;border-radius:5px;background:#ffd60017;color:var(--yellow);font:22px/1 Arial;pointer-events:none;padding-bottom:5px}.sports-badge{position:relative;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.sports-logo-img{width:100%;height:100%;object-fit:contain;display:block}.logo-fallback{display:block;text-align:center}.league-crest{width:29px;height:29px;padding:3px;border-radius:5px;background:#f1f2f4;color:#333;vertical-align:middle}.league-crest .logo-fallback{font-size:7px;letter-spacing:-.5px;line-height:1.1;overflow-wrap:anywhere}.league-rail{width:53px;padding-left:5px;padding-right:5px;gap:6px}.league-rail button{min-height:42px;display:flex;align-items:center;justify-content:center;padding:5px 0}.team-mark.has-sports-logo{background:transparent;border:0;border-radius:0}.team-mark{width:24px;height:24px}.team-mark .logo-fallback{font-size:7px}.nav-crest{width:22px;height:23px;border-radius:4px;padding:2px;background:#f1f2f4;color:#242424}.nav-crest .logo-fallback{font-size:8px}.hot-league-crest{width:15px;height:17px;padding:1px;border-radius:2px;background:#f4f4f4;color:#222}.hot-league-crest .logo-fallback{font-size:5px}.hot-card .event-top{gap:6px}.hot-card .team-mark{width:22px;height:22px}.fixture-disclosure{color:#7f7f85;font-size:9px}.footer .text-btn{margin-left:0}.stage-label{color:#81817b}.info-dialog img{object-fit:contain}.player-center p:empty{display:none}@media(max-width:760px){.brand img{width:40px;height:40px}.brand{gap:8px}.country-control{height:64px}.country-control select{font-size:13px;padding-top:25px}.country-control-label{font-size:9px}.country-control-icon{top:24px}.country-chevron{top:19px}.league-rail{width:59px}.league-crest{width:31px;height:31px}.league-rail button{min-height:46px}.footer>.fixture-disclosure{display:block!important;margin-left:auto;max-width:110px;text-align:right;font-size:8px}.footer{gap:10px}.footer .text-btn{margin-left:0;min-height:36px}.hot-card .event-top{white-space:normal}.hot-card .team-mark{width:21px;height:21px}}
.league-rail{overflow-x:hidden;scrollbar-width:none}.league-rail::-webkit-scrollbar{display:none}.league-rail button{width:100%;min-width:0;flex:none}.results::-webkit-scrollbar{width:4px}.results::-webkit-scrollbar-thumb{background:#38383e;border-radius:4px}
@media(max-width:760px){.nav-item{min-height:44px}.source-chip{min-height:44px}.source-chip strong{font-size:10px}.favorite-current{min-width:44px;min-height:44px}.language select{min-height:44px}.mobile-picker{min-height:44px}.load-more{min-height:44px}}
@media(min-width:761px) and (max-height:850px){.header{height:64px}.nav-shell{margin-bottom:18px}.watch-context{min-height:34px;margin-bottom:12px}.source-toolbar{min-height:58px}.player-stage{max-height:calc(100vh - 325px);min-height:275px}.playing-info{min-height:76px;padding-top:13px;padding-bottom:13px}.sidebar{height:calc(100vh - 167px);min-height:480px}}
@keyframes slide-up{from{transform:translateY(35px);opacity:.6}to{transform:translateY(0);opacity:1}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.player-stage:fullscreen{width:100vw;height:100vh;aspect-ratio:auto;max-height:none}.player-stage:fullscreen .player-center h2{font-size:56px}
[data-sports-logo="league"][data-logo-id="ucl"]{background:#17191e;color:#f5f5f5;border:1px solid #35383e}

/* A compact curated module stays inside the catalogue's own scroll area. */
.hub-page .side-top h1.channel-catalogue-title{font-size:12px;letter-spacing:1.3px;line-height:1.4;margin:0;text-transform:uppercase;color:#eeeeef}
.popular-channels{margin:2px 0 12px;border:1px solid #b29a32;border-radius:9px;background:#201e12;overflow:hidden}
.popular-heading{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#ffe05b;color:#181608}
.popular-heading .icon{width:15px;height:15px;flex:none}
.popular-heading h2{font-size:11px;line-height:1.4;letter-spacing:.3px;margin:0;flex:1}
.popular-heading>span{font-size:10px;font-weight:700;font-variant-numeric:tabular-nums}
.popular-list{padding:3px 5px}
.popular-list .channel-row{margin:0;min-height:57px;padding:8px 7px;border:1px solid transparent;border-radius:6px}
.popular-list .channel-row+.channel-row{border-top-color:#ffffff0d}
.popular-list .channel-name{color:#f9f5dd}
.popular-list .channel-country{color:#ada88a}
.popular-list .row-star{color:#b7ae7e}
.popular-list .row-star.active{color:var(--yellow)}
.popular-list .channel-row:hover{background:#2a2716}
.popular-list .channel-row.selected{background:#393018;border-color:#b09a34}
.popular-list .channel-row.selected .channel-name{color:#ffe05b}
.popular-list .channel-select:focus-visible{outline:2px solid #ffe05b;outline-offset:-3px;border-radius:6px}
.watch-context.channels-context>div{display:none}
@media(min-width:761px){.hub-page .watch-context.channels-context{display:none}}
@media(max-width:760px){.watch-context.channels-context{justify-content:flex-end}.popular-list .channel-row{min-height:60px}.hub-page .side-top h1.channel-catalogue-title{font-size:13px}}

/* Selected navigation stays readable during hover, press and keyboard focus. */
.nav-shell .nav-item.active,.nav-shell .nav-item[aria-pressed="true"],.nav-shell .nav-item.active:hover,.nav-shell .nav-item.active:focus-visible{background:#ffd600;color:#111;-webkit-text-fill-color:#111}
.nav-shell .nav-item.active>span:not(.sports-badge),.nav-shell .nav-item[aria-pressed="true"]>span:not(.sports-badge),.nav-shell .nav-item.active>svg{color:#111;-webkit-text-fill-color:#111}
.nav-shell .nav-item.active>svg{stroke:#111}.country-chevron{right:15px;top:50%;transform:translateY(-50%);width:16px;height:16px;padding:0;background:none;border-radius:0;color:#d5d3c6;font:inherit;display:block}.country-chevron svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.country-control:hover .country-chevron,.country-control:focus-within .country-chevron{color:#ffd600}
.channel-logo.has-channel-logo{background:#fff}.channel-logo-img{display:block;width:100%;height:100%;object-fit:contain}.source-channel-logo{width:30px;height:27px;border-radius:4px;padding:3px}.current-channel-logo{width:100%;height:100%;padding:0;border-radius:3px}.pinned-channels{padding:0 12px 12px;border-bottom:1px solid var(--line);flex:none}.pinned-heading{display:flex;justify-content:space-between;align-items:center;padding:11px 5px 8px;gap:8px;font-size:9px;font-weight:700;color:#929299}.pinned-heading>span:last-child{font-variant-numeric:tabular-nums;color:#66666e}.pinned-list{display:flex;flex-direction:column;gap:5px;max-height:191px;overflow:auto;scrollbar-width:thin;scrollbar-color:#37373e transparent}.pinned-channel{display:flex;align-items:center;gap:9px;min-height:56px;flex:none;width:100%;padding:8px;border:1px solid #333337;border-radius:7px;text-align:left;background:#19191b;color:#ececf0}.pinned-channel:hover{background:#21211f;border-color:#716326}.pinned-channel.selected{background:#282413;border-color:#a58b22}.pinned-channel .channel-logo{width:32px;height:32px;border-radius:5px;padding:3px}.pinned-details{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.pinned-details strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pinned-details small{font-size:8px;color:#86868e}.pinned-action{display:flex;align-items:center;gap:5px;flex:none;font-size:8px;font-weight:700;color:#bbb793}.pinned-action .icon{width:12px;height:12px}.pinned-action>span{font-size:13px;color:#cabb79}.pinned-channel.selected .pinned-action,.pinned-channel.selected strong{color:#ffe452}.pinned-channel:focus-visible{outline-offset:-3px}.pinned-channels+.side-body{min-height:110px}@media(max-width:760px){.pinned-channels{padding:0 12px 10px}.pinned-list{max-height:180px}.pinned-channel{min-height:58px}.pinned-details strong{font-size:12px}.pinned-action{font-size:9px}.country-chevron{top:50%;right:15px}.header-right{gap:0}}
[data-sports-logo="league"][data-logo-id="atp"]{background:#17191e;color:#f5f5f5;border:1px solid #35383e}

/* Live hub: account actions and programme guide. */
.header-link{color:#a3a3a3;font-size:12px;text-decoration:none}.header-link:hover{color:#fff}.header-right{gap:12px}.account-button,.premium-button{font-size:12px;padding:9px 12px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header .brand-note{margin-right:auto}.playback-status{padding:0 18px 10px;color:#a3a3a3;font-size:11px}.playback-status:empty{display:none}.epg-section{margin-top:18px;padding:18px;background:#111;border:1px solid #272727;border-radius:12px}.epg-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.epg-program{padding:10px 0;border-bottom:1px solid #242424}.epg-program span{font-size:11px;color:#909090;display:block;margin-bottom:7px}.epg-program strong{font-size:13px}.epg-program p{font-size:12px;color:#999;margin:8px 0}.epg-section progress{width:100%;height:3px;accent-color:#ffdc00}.epg-section .section-heading span{font-size:11px;color:#999}.hot-events .empty{grid-column:1/-1;padding:20px}.footer a{color:#aaa;text-decoration:none}.header .yellow-btn,.nav-shell .nav-item.active{color:#090909;-webkit-text-fill-color:#090909}.brand{flex-shrink:0}
@media(max-width:1100px){.header .brand-note{display:none}.header-right{margin-left:auto}}
@media(max-width:760px){.header-link{display:none}.header-right{gap:6px}.account-button,.premium-button{padding:8px;max-width:90px}.header .brand{gap:4px;font-size:23px}.header .brand img{width:36px;height:36px}.epg-grid{grid-template-columns:1fr}.epg-section{margin:12px}.header{padding:10px 12px}.header .language-trigger{padding:8px 5px;gap:4px}.header .language-trigger img{width:18px}.header .language-trigger svg{width:11px}}
@media(max-width:360px){.premium-button{display:none}.header .brand{font-size:22px}}

.hub-playback-stage.player-stage{min-height:0;aspect-ratio:16/9}.hub-playback-stage .hub-playback-fallback{min-height:0}@media(max-width:760px){.hub-playback-stage.player-stage{aspect-ratio:16/10;min-height:240px}}

/* A large competition catalogue keeps a named selector and a scrollable logo rail. */
.league-name label{display:flex;align-items:center;justify-content:space-between;color:#99999f;font-size:9px;font-weight:700;padding:0 0 6px}
.league-name label span{font-variant-numeric:tabular-nums;color:#737379}
.league-name select{min-height:36px;padding:7px 26px 7px 9px;border:1px solid #333338;border-radius:6px;background:#1b1b1d;font-size:11px}
.league-rail{width:62px;scrollbar-width:thin;scrollbar-color:#53534e transparent;overscroll-behavior:contain;padding:8px 5px;gap:5px}
.league-rail::-webkit-scrollbar{display:block;width:3px}.league-rail::-webkit-scrollbar-thumb{background:#53534e;border-radius:3px}
.league-rail button{flex-direction:column;gap:4px;min-height:57px;padding:6px 2px}
.league-rail button:first-child{min-height:38px}.league-rail button:focus-visible{outline-offset:-2px}
.league-rail-label{font-size:8px;line-height:1.2;color:#a0a0a6;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.league-rail .active .league-rail-label{color:#ffdf3a}.event-league-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.event-top .event-time{flex:none}.event-live{flex:none}.event-sources.sources-pending{color:#ada792}
.event-overview{position:absolute;inset:0;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 60% 20%,#2e2b1644,transparent 70%),#0b0b0c;text-align:center;z-index:3}
.event-overview-content{max-width:600px;min-width:0}.event-overview .eyebrow{color:#ffe348;margin-bottom:14px;letter-spacing:1.6px}
.event-overview-league{display:flex;justify-content:center;align-items:center;gap:9px;color:#aaa9a4;font-size:11px}
.event-overview h2{font-size:clamp(22px,2.2vw,35px);line-height:1.25;letter-spacing:-.8px;margin:17px 0;overflow-wrap:anywhere}
.event-overview time{display:block;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;color:#e8e6df}
.event-overview time span{display:block;font-size:10px;font-weight:400;color:#82827e;margin-top:6px}
.event-overview-note{font-size:12px;line-height:1.65;color:#a1a098;max-width:410px;margin:24px auto 0}
.has-event-overview .hub-playback-fallback{visibility:hidden}.source-empty.sources-pending{color:#b6b094;white-space:normal}
.schedule-warning{color:#c4b976;font-size:11px;line-height:1.5;padding:10px 7px}.schedule-warning button{color:#ffe348;text-decoration:underline;padding:6px 0;display:block}
@media(max-width:980px) and (min-width:761px){.event-overview{padding:15px}.event-overview-note{font-size:10px;margin-top:16px}.event-overview h2{font-size:23px}.league-rail{width:57px}}
@media(max-width:760px){.league-rail{width:65px}.league-rail button{min-height:62px}.league-rail-label{font-size:9px}.league-name select{min-height:44px;font-size:12px}.event-overview{padding:18px}.event-overview h2{font-size:23px;margin:13px 0}.event-overview .eyebrow{font-size:9px;margin-bottom:9px}.event-overview time{font-size:12px}.event-overview-note{font-size:10px;margin-top:18px}.event-overview-league{font-size:10px}}

/* The viewing hub uses the desktop viewport height. Other pages share these
 * design tokens but keep their own natural document height. */
.hub-page{--hub-gutter:clamp(18px,1.4vw,36px)}
.hub-page .header,.hub-page .page{max-width:none;width:100%;padding-left:var(--hub-gutter);padding-right:var(--hub-gutter)}
.hub-page .top-nav{overflow:hidden;min-width:0;flex:1;gap:6px}
.hub-page .top-nav>.nav-item,.hub-page .nav-measure>.nav-item{flex:0 0 auto}
.hub-page .more-wrap,.hub-page .nav-measure .more-wrap{flex:0 0 auto}
.hub-page .nav-measure{position:absolute;top:0;left:-100000px;display:flex;flex-direction:row;gap:6px;inline-size:max-content;max-width:none;overflow:visible;visibility:hidden;pointer-events:none}
.hub-page .more-menu{max-height:min(620px,calc(100dvh - 155px));max-width:calc(100vw - 2*var(--hub-gutter));overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#53534e transparent}
.hub-page .source-toolbar{flex:none}
.hub-page .playing-info{flex:none}
.hub-page .below-player{margin-top:14px;min-width:0}
.hub-page .below-player .section-heading{align-items:center;margin:0 0 8px}
.hub-page .below-player .section-heading>div{display:flex;align-items:center;gap:12px}
.hub-page .below-player .section-heading h2{font-size:14px;margin:0;white-space:nowrap}
.hub-page .below-player .section-heading .eyebrow{font-size:8px}
.hub-page .hot-events{display:flex;gap:10px;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#474740 transparent;overscroll-behavior-x:contain;padding:2px 0 4px;scroll-snap-type:x proximity}
.hub-page .hot-card{flex:1 0 190px;min-width:0;padding:8px 12px;scroll-snap-align:start}
.hub-page .hot-card .event-top{margin-bottom:4px;font-size:9px;gap:5px}
.hub-page .hot-card .team-row{margin-top:3px;font-size:11px;gap:7px;line-height:1.35}
.hub-page .hot-card .team-row>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hub-page .hot-card .team-mark{width:20px;height:20px}
.hub-page .hot-card .card-foot{margin-top:5px;padding-top:5px;font-size:9px;line-height:1.2}
.hub-page .hot-card:hover{transform:none;background:#1b1b1c}
.hub-page .hot-events>.empty{flex:1;min-width:0;padding:16px 12px;font-size:11px;line-height:1.5}
.hub-page .hot-events>.empty strong{font-size:12px;margin-bottom:3px}
.hub-page .hot-events>.load-more{flex:0 0 170px;align-self:center;width:auto;margin:0}
/* Plyr and the legacy player theme also size this tree. Keep every media box
 * inside the flex stage, and let the video preserve its own intrinsic ratio.
 * The wrapper ratio is !important because Plyr sets it inline on metadata. */
.hub-page .hub-playback-stage .hub-playback-media{position:absolute;inset:0;margin:0}
.hub-page .hub-playback-stage .hub-playback-media,
.hub-page .hub-playback-stage .hub-playback-media .plyr,
.hub-page .hub-playback-stage .hub-playback-media .plyr__video-wrapper{width:100%;height:100%!important;min-width:0;min-height:0;max-width:100%;max-height:100%;aspect-ratio:auto!important;background:#050505}
.hub-page .hub-playback-stage .hub-playback-media .plyr__video-wrapper{margin:0;padding:0!important}
.hub-page .hub-playback-stage .hub-playback-media video{display:block;width:100%;height:100%!important;min-width:0;min-height:0;max-width:100%;max-height:100%;aspect-ratio:auto;object-fit:contain;object-position:center;background:#050505}
.hub-page .hub-playback-stage .hub-playback-media .plyr__poster{background-size:contain;background-position:center}
.hub-page .hub-playback-stage .hub-playback-media .plyr:fullscreen,
.hub-page .hub-playback-stage .hub-playback-media .plyr.plyr--fullscreen-fallback{width:100vw;max-width:none;height:100dvh!important;max-height:none;min-height:0;aspect-ratio:auto!important}
.hub-page .hub-playback-stage .hub-playback-media .plyr.plyr--fullscreen-fallback{position:fixed!important;inset:0;margin:0;z-index:2147483647}
/* The CSS fullscreen fallback must escape the normal isolated player layers. */
.hub-page .hub-playback-stage:has(.plyr--fullscreen-fallback),
.hub-page .hub-playback-stage .hub-playback-media:has(.plyr--fullscreen-fallback){isolation:auto}
.hub-page .hub-playback-stage.player-stage:fullscreen{width:100vw;height:100dvh;min-height:0;max-height:none;aspect-ratio:auto;flex:none}
.hub-page .hub-playback-stage .hub-playback-media video:fullscreen{max-width:none;max-height:none;object-fit:contain}
.hub-page .epg-section{flex:none;margin:10px 0 0;padding:0;background:#111;border-color:#29292d;border-radius:9px;min-width:0}
.hub-page .epg-summary{display:flex;align-items:center;gap:10px;min-height:35px;padding:8px 12px;margin:0;cursor:pointer;list-style:none;color:#a4a4ab}
.hub-page .epg-summary::-webkit-details-marker{display:none}
.hub-page .epg-summary::marker{content:''}
.hub-page .epg-summary h2{margin:0;font-size:11px;letter-spacing:0;color:#d1d1d5}
.hub-page .epg-summary>span{margin-left:auto;font-size:9px}
.hub-page .epg-summary>svg{width:14px;height:14px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .16s}
.hub-page .epg-section[open] .epg-summary>svg{transform:rotate(180deg)}
.hub-page .epg-section[open] .epg-summary{border-bottom:1px solid #27272b}
.hub-page .epg-grid{gap:18px;padding:0 12px 9px;max-height:136px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#414146 transparent}
.hub-page .epg-program{padding:8px 0}
.hub-page .epg-program span{font-size:9px;margin-bottom:4px}
.hub-page .epg-program strong{font-size:11px}
.hub-page .epg-program p{font-size:10px;line-height:1.5;margin:5px 0}
.hub-page .epg-grid>.empty{padding:14px 0;font-size:11px}
.hub-page .hub-playback-fallback{justify-content:safe center}
.hub-footer{flex:none;border-top:1px solid #262628;background:#0d0d0e;color:#86868c}
.hub-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:50px;width:100%;padding:8px var(--hub-gutter)}
.hub-footer-brand{display:flex;align-items:center;gap:18px;min-width:0}
.hub-footer .brand{font-size:20px;letter-spacing:-.9px;gap:5px;color:#f7f7f8}
.hub-footer .brand img{width:27px;height:27px}
.hub-copyright{font-size:10px;line-height:1.5;color:#727278}
.hub-footer-nav{display:flex;align-items:center;gap:22px;flex:none}
.hub-footer-nav a,.hub-footer-nav button{display:inline-flex;align-items:center;min-height:30px;padding:3px 0;font-size:11px;color:#a2a2a8;white-space:nowrap}
.hub-footer-nav a:hover,.hub-footer-nav button:hover{color:var(--yellow)}
.hub-footer-nav button{color:#e3cb5b}

@media(min-width:761px){
  .hub-page>.header,.hub-page>.page,.hub-page .hub-footer-inner{width:min(2000px,max(1300px,80%));max-width:calc(100% - 2*var(--hub-gutter));margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}
}

@media(min-width:761px) and (min-height:620px){
  body.hub-page{height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}
  .hub-page>.header{height:58px;min-height:58px;flex:none;gap:20px}
  .hub-page>.header .brand{font-size:26px;gap:7px}
  .hub-page>.header .brand img{width:40px;height:40px}
  .hub-page>.page{display:flex;flex-direction:column;flex:1;min-height:0;padding-bottom:12px}
  .hub-page .nav-shell{flex:none;padding:6px 0;margin-bottom:12px;min-height:56px}
  .hub-page .nav-item{height:42px;padding:0 13px}
  .hub-page .workspace{flex:1;min-height:0;grid-template-columns:clamp(290px,20vw,360px) minmax(0,1fr);gap:18px;align-items:stretch}
  .hub-page .sidebar{position:relative;top:auto;height:100%;min-height:0;max-height:none}
  .hub-page .side-top{flex:none;padding:15px 17px 13px}
  .hub-page .side-top h1{font-size:19px}
  .hub-page .search-wrap{flex:none;height:37px;margin:0 15px 11px}
  .hub-page .quick-filters{margin:0 15px 11px}
  .hub-page .country-row{padding:0 15px 12px}
  .hub-page .country-control{height:54px}
  .hub-page .country-control-label{top:8px}
  .hub-page .country-control select{padding-top:22px;padding-bottom:8px}
  .hub-page .country-control-icon{top:19px}
  .hub-page .side-body,.hub-page .pinned-channels+.side-body{flex:1;min-height:0;overflow:hidden}
  .hub-page .results,.hub-page .league-rail{min-height:0;overscroll-behavior:contain}
  .hub-page .side-foot{flex:none;padding:10px 15px;font-size:9px}
  .hub-page .pinned-list{max-height:124px}
  .hub-page .watch-column{display:flex;flex-direction:column;min-height:0}
  .hub-page .watch-context{min-height:31px;flex:none;margin:0 0 9px}
  .hub-page .watch-context .eyebrow{display:none}
  .hub-page .watch-context h2{font-size:17px}
  .hub-page .player-card{display:flex;flex-direction:column;flex:1;min-height:0}
  .hub-page .source-toolbar{min-height:48px;padding:6px 12px}
  .hub-page .source-chip{min-height:34px;padding:6px 9px}
  .hub-page .source-chip small{font-size:8px}
  .hub-page .player-stage,.hub-page .hub-playback-stage.player-stage{flex:1;height:auto;min-height:0;max-height:none;aspect-ratio:auto}
  .hub-page .playing-info{min-height:58px;padding:10px 15px;gap:10px}
  .hub-page .channel-tile{width:36px;height:36px;border-radius:6px}
  .hub-page .playing-text h3{font-size:13px;margin:3px 0 1px}
  .hub-page .playing-text .eyebrow{font-size:7px}
  .hub-page .playing-text .muted{font-size:9px}
  .hub-page .playback-status{flex:none;padding:0 14px 5px;font-size:10px;line-height:1.3}
  .hub-page .below-player{flex:none;margin-top:12px}
  .hub-page .hub-footer-inner{min-height:48px}
  .hub-page .player-stage:fullscreen{flex:none;width:100vw;height:100dvh;aspect-ratio:auto;max-height:none}
  .hub-page .player-stage:fullscreen .hub-playback-media{height:100%}
}

@media(min-width:761px) and (max-height:760px){
  .hub-page>.header{height:50px;min-height:50px}
  .hub-page .nav-shell{padding-top:4px;padding-bottom:4px;min-height:52px;margin-bottom:10px}
  .hub-page .watch-context{min-height:25px;margin-bottom:7px}
  .hub-page .watch-context h2{font-size:15px}
  .hub-page .source-toolbar{min-height:44px;padding-top:4px;padding-bottom:4px}
  .hub-page .playing-info{min-height:48px;padding-top:6px;padding-bottom:6px}
  .hub-page .channel-tile{width:32px;height:32px}
  .hub-page .playing-text .eyebrow{display:none}
  .hub-page .below-player{margin-top:9px}
  .hub-page .below-player .section-heading{margin-bottom:5px}
  .hub-page .hot-card{padding:7px 10px}
  .hub-page .hot-card .team-row{font-size:10px;line-height:1.2}
  .hub-page .hot-card .team-mark{width:18px;height:18px}
  .hub-page .hot-card .card-foot{padding-top:4px;margin-top:5px}
  .hub-page .epg-grid{max-height:100px}
  .hub-page .epg-summary{min-height:31px;padding-top:6px;padding-bottom:6px}
  .hub-page .hub-footer-inner{min-height:42px;padding-top:6px;padding-bottom:6px}
}

@media(min-width:761px) and (max-width:1000px){
  .hub-page .workspace{grid-template-columns:260px minmax(0,1fr);gap:14px}
  .hub-page .brand-note{display:none}
  .hub-page .hub-footer-brand{gap:10px}
  .hub-page .hub-copyright{max-width:240px;font-size:9px}
  .hub-page .hub-footer-nav{gap:15px}
}

@media(max-width:760px){
  .hub-page{--hub-gutter:12px;min-height:100dvh;overflow-x:hidden}
  .hub-page>.header{gap:8px;min-width:0}
  .hub-page>.header>.brand{gap:4px;font-size:22px;letter-spacing:-1px;min-height:44px}
  .hub-page>.header>.brand img{width:32px;height:32px}
  .hub-page>.header .header-right{flex:1;min-width:0;gap:4px;justify-content:flex-end}
  .hub-page>.header .account-button,.hub-page>.header .premium-button{flex:0 1 auto;min-width:0;min-height:44px;max-width:90px;padding:8px 7px;font-size:11px}
  .hub-page>.header .premium-button{max-width:74px}
  .hub-page>.header .language-trigger{min-height:44px;padding:8px 4px;gap:3px}
  .hub-page>.header .language-menu{position:fixed;top:60px;right:12px;min-width:min(190px,calc(100vw - 24px));max-width:calc(100vw - 24px)}
  .hub-page .top-nav{gap:3px}
  .hub-page .nav-measure{gap:3px}
  .hub-page .nav-shell{margin-bottom:14px}
  .hub-page .more-menu{max-height:calc(100dvh - 140px);max-width:calc(100vw - 24px)}
  .hub-page .player-stage,.hub-page .hub-playback-stage.player-stage{min-height:240px;aspect-ratio:16/10}
  .hub-page .below-player{margin-top:20px}
  .hub-page .below-player .section-heading>div{flex-wrap:wrap;gap:5px 12px}
  .hub-page .hot-events{gap:9px}
  .hub-page .hot-card{flex:0 0 min(265px,78vw);padding:12px;min-height:110px}
  .hub-page .hot-card .event-top{font-size:9px}
  .hub-page .hot-card .team-row{font-size:12px}
  .hub-page .epg-section{margin:12px 0 0}
  .hub-page .epg-summary{min-height:44px}
  .hub-page .epg-grid{max-height:230px}
  .hub-page .epg-program strong{font-size:12px}
  .hub-page .epg-program p{font-size:11px}
  .hub-page .hub-footer{margin-top:24px}
  .hub-page .hub-footer-inner{align-items:flex-start;flex-direction:column;gap:10px;padding:14px 12px}
  .hub-page .hub-footer-brand{gap:11px;flex-wrap:wrap}
  .hub-page .hub-footer .brand{font-size:20px}
  .hub-page .hub-copyright{font-size:9px}
  .hub-page .hub-footer-nav{width:100%;gap:22px;flex-wrap:wrap}
  .hub-page .hub-footer-nav a,.hub-page .hub-footer-nav button{min-height:44px;font-size:12px}
}

@media(prefers-reduced-motion:reduce){.hub-page .epg-summary>svg{transition:none}}

/* Header v2 (hub + schedule): one control height and one ghost style.
   Icons are CSS masks so the auth and i18n scripts can keep writing plain
   text into these buttons. */
:is(.hub-page,.schedule-page)>.header{gap:14px}
:is(.hub-page,.schedule-page)>.header .brand-note{margin:0;padding-left:16px;line-height:1.35;white-space:nowrap;color:#8a8a90}
:is(.hub-page,.schedule-page)>.header .header-right{margin-left:auto;gap:8px;align-items:center}
:is(.hub-page,.schedule-page)>.header :is(.header-link,.account-button,.premium-button),
:is(.hub-page,.schedule-page)>.header :is(.language-trigger,.timezone-trigger){box-sizing:border-box;height:40px;min-height:40px;max-width:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;border-radius:10px;font:700 12px/1 var(--font);letter-spacing:-.1px;white-space:nowrap;text-decoration:none;transition:background .15s,border-color .15s,color .15s,box-shadow .2s,transform .2s}
:is(.hub-page,.schedule-page)>.header :is(.header-link,.account-button,.language-trigger,.timezone-trigger){border:1px solid #2c2c31;background:#141416;color:#e9e9ec;-webkit-text-fill-color:currentColor}
:is(.hub-page,.schedule-page)>.header :is(.header-link,.account-button,.language-trigger,.timezone-trigger):hover,
:is(.hub-page,.schedule-page)>.header :is(.language-trigger,.timezone-trigger)[aria-expanded=true]{background:#1d1d21;border-color:#3e3e45;color:#fff}
:is(.hub-page,.schedule-page)>.header :is(.header-link,.account-button,.premium-button)::before{content:'';flex:none;width:17px;height:17px;background:currentColor;-webkit-mask:var(--icon) center/contain no-repeat;mask:var(--icon) center/contain no-repeat}
:is(.hub-page,.schedule-page)>.header .header-link{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'%3E%3Crect x='3' y='4.5' width='14' height='12.5' rx='2.5'/%3E%3Cpath d='M3 8.6h14M7 2.6v3.8M13 2.6v3.8'/%3E%3C/svg%3E");color:#cfcfd4}
:is(.hub-page,.schedule-page)>.header .account-button{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'%3E%3Ccircle cx='10' cy='7' r='3.2'/%3E%3Cpath d='M3.8 16.6c1.2-3 3.5-4.4 6.2-4.4s5 1.4 6.2 4.4'/%3E%3C/svg%3E");overflow:hidden;text-overflow:ellipsis;max-width:190px}
:is(.hub-page,.schedule-page)>.header .account-button.is-profile{border-color:#4b4220;background:#1a1810;color:#ffe46b}
:is(.hub-page,.schedule-page)>.header .account-button.is-profile:hover{border-color:#6d5f25;background:#211e12;color:#ffe46b}
:is(.hub-page,.schedule-page)>.header .premium-button{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='black'%3E%3Cpath d='M2.8 6.6l3.8 3.1L10 4l3.4 5.7 3.8-3.1-1.5 8.2H4.3z'/%3E%3Crect x='4.3' y='15.6' width='11.4' height='1.9' rx='.95'/%3E%3C/svg%3E");border:1px solid #ffd600;background:linear-gradient(180deg,#ffe34d,#ffd600);color:#111;-webkit-text-fill-color:#111;box-shadow:0 1px 0 #fff6 inset}
:is(.hub-page,.schedule-page)>.header .premium-button:hover{background:linear-gradient(180deg,#ffe866,#ffdb1a);box-shadow:0 1px 0 #fff6 inset,0 8px 24px #ffd60033;transform:translateY(-1px)}
:is(.hub-page,.schedule-page)>.header .language-trigger{padding:0 11px}
:is(.hub-page,.schedule-page)>.header .language-trigger img{width:20px;height:14px}
@media(prefers-reduced-motion:reduce){:is(.hub-page,.schedule-page)>.header .premium-button:hover{transform:none}}
@media(max-width:1100px){:is(.hub-page,.schedule-page)>.header .header-link{width:40px;padding:0;font-size:0;gap:0}:is(.hub-page,.schedule-page)>.header .timezone-city{display:none}}
@media(max-width:760px){
  :is(.hub-page,.schedule-page)>.header{gap:8px}
  :is(.hub-page,.schedule-page)>.header .timezone-picker,:is(.hub-page,.schedule-page)>.header .header-link{display:none}
  :is(.hub-page,.schedule-page)>.header .header-right{gap:6px}
  :is(.hub-page,.schedule-page)>.header :is(.account-button,.premium-button,.language-trigger){height:42px;min-height:42px;padding:0 10px;font-size:11px;gap:6px}
  :is(.hub-page,.schedule-page)>.header .account-button{max-width:112px;min-width:0}
  :is(.hub-page,.schedule-page)>.header :is(.account-button,.premium-button)::before{width:15px;height:15px}
}
@media(max-width:400px){:is(.hub-page,.schedule-page)>.header .premium-button{width:42px;padding:0;font-size:0;gap:0}:is(.hub-page,.schedule-page)>.header .account-button{max-width:96px}}

/* Footer: legal links and support contact (shown to payment reviewers too). */
.hub-footer-contact{display:inline-flex;align-items:center;gap:8px;flex:none;min-height:32px;padding:4px 13px 4px 11px;border:1px solid #2c2c31;border-radius:999px;background:#141416;color:#a2a2a8;font-size:11px;white-space:nowrap;transition:border-color .15s,color .15s}
.hub-footer-contact::before{content:'';flex:none;width:15px;height:15px;background:var(--yellow);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'%3E%3Crect x='2.5' y='4.5' width='15' height='11' rx='2'/%3E%3Cpath d='m3 5.5 7 5.5 7-5.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'%3E%3Crect x='2.5' y='4.5' width='15' height='11' rx='2'/%3E%3Cpath d='m3 5.5 7 5.5 7-5.5'/%3E%3C/svg%3E") center/contain no-repeat}
.hub-footer-contact strong{color:#f1f1f3;font-weight:700}
.hub-footer-contact:hover{border-color:#5b5124;color:#fff}
.hub-page .hub-footer-nav{margin-left:auto}
@media(min-width:761px) and (max-width:1560px){.hub-page .hub-copyright{display:none}}
@media(min-width:761px) and (max-width:1240px){.hub-page .hub-footer-contact span{display:none}.hub-page .hub-footer-nav{gap:12px}}
@media(max-width:760px){.hub-page .hub-footer-nav{margin-left:0;row-gap:0;column-gap:20px}.hub-page .hub-footer-contact{min-height:44px;white-space:normal;flex-wrap:wrap}}
/* Boot screen: covers the first paint until channels, menu and events are ready (hub.js), 8 s at most. */
.boot-splash{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse 58% 44% at 50% 46%,#2a240b 0,#141209 44%,var(--bg) 80%);transition:opacity .5s ease,visibility 0s linear .5s}html[data-boot=done] .boot-splash{opacity:0;visibility:hidden;pointer-events:none}.boot-mark{display:grid;justify-items:center;text-align:center}.boot-key{display:block;width:104px;height:104px;filter:drop-shadow(0 22px 30px #000c) drop-shadow(0 0 46px #ffd6002b);animation:boot-key 2.8s ease-in-out infinite}.boot-word{margin-top:16px;font:800 42px/1 var(--font);letter-spacing:-2px;color:var(--white)}.boot-word span{color:var(--yellow)}.boot-tagline{margin:12px 0 0;color:#a3a3aa;font-size:13px;font-weight:600;letter-spacing:.1px}.boot-tagline span{display:none}html[lang=ru] .boot-tagline [lang=ru],html[lang=en] .boot-tagline [lang=en],html[lang=es] .boot-tagline [lang=es]{display:inline}.boot-bar{position:relative;width:172px;height:3px;margin-top:28px;border-radius:3px;background:#ffffff12;overflow:hidden}.boot-bar i{position:absolute;top:0;bottom:0;left:0;width:42%;border-radius:inherit;background:linear-gradient(90deg,transparent,var(--yellow),transparent);animation:boot-bar 1.2s ease-in-out infinite}@keyframes boot-key{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-7px) rotate(-3deg)}}@keyframes boot-bar{from{transform:translateX(-100%)}to{transform:translateX(240%)}}@media(prefers-reduced-motion:reduce){.boot-key,.boot-bar i{animation:none}.boot-splash{transition:none}}@media(max-width:760px){.boot-key{width:84px;height:84px}.boot-word{font-size:36px}}
/* Colour sport art (assets/sport-icons, Fluent Emoji): nav, single-entity event rows and schedule tabs. */
.sport-art{display:block;flex:none;width:20px;height:20px;object-fit:contain}.nav-item .sport-art{width:21px;height:21px}.team-row .sport-art{width:18px;height:18px}@media(max-width:760px){.nav-item .sport-art{width:19px;height:19px}}
