:root{color-scheme:dark;font:15px Arial,Helvetica,sans-serif;background:#101010;color:#f7f7f7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:white;border:0}button:disabled{opacity:.45;cursor:default}a{color:inherit;text-decoration:none}nav{height:80px;display:flex;align-items:center;gap:36px;padding:0 5%;background:linear-gradient(#080808,#0b0b0be8);position:relative;z-index:3;border-bottom:1px solid #ffffff08}.brand{color:#ed252d;font-size:27px;font-weight:950;letter-spacing:-1.5px}.browse-link{font-size:12px;color:#ccc}.nav-right{margin-left:auto;letter-spacing:2px;font-size:9px;color:#888}#refresh{background:#ffffff12;border:1px solid #ffffff15;border-radius:50%;width:35px;height:35px;font-size:24px}#hero{height:570px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 75% 40%,#28343d,#101010 70%)}#hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101010 2%,#101010dc 27%,#10101028 75%),linear-gradient(0deg,#101010,transparent 35%);pointer-events:none}.hero-poster{position:absolute!important;right:0;width:65%;height:100%!important;border-radius:0!important;background:radial-gradient(ellipse,#34454d,#0e171d)!important}.hero-poster .cover{object-fit:contain;padding:55px;opacity:.8}.hero-poster .crest{width:180px;height:180px;font-size:50px}.hero-poster .poster-teams{gap:45px;transform:rotate(-5deg)}.hero-poster .poster-team span{font-size:19px;max-width:200px}.hero-poster .versus{font-size:28px}.hero-poster .league-logo{width:55%;height:65%;max-width:none}.hero-content{position:relative;z-index:2;width:min(650px,55%);padding:90px 0 65px;margin-left:5%}.hero-meta{display:flex;align-items:center;gap:15px;font-size:10px;letter-spacing:1.6px;text-transform:uppercase;color:#c5c5c5}.badge{font-size:9px;letter-spacing:1px;font-weight:bold;display:inline-block;padding:6px 9px;background:#373737;color:#eee;border-radius:3px;white-space:nowrap}.badge.live{background:#e52330;color:white}.badge.upcoming{background:#f4f4f4;color:#191919}h1{font-size:clamp(32px,4vw,60px);letter-spacing:-2px;line-height:1.08;margin:24px 0 20px;font-weight:850;max-width:650px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.hero-time{font-size:14px;font-weight:600;color:#dedede}.hero-description{font-size:14px;line-height:1.6;color:#bcbcbc;max-width:380px}.watch{background:#f5f5f5;color:#111;border-radius:4px;padding:14px 25px;font-size:14px;font-weight:bold;margin-top:12px}.watch:hover{background:#d8d8d8}.hero-controls{position:absolute;z-index:2;right:5%;bottom:65px;display:flex;align-items:center;gap:17px}.arrow{background:#ffffff0b;border:1px solid #ffffff40;width:40px;height:40px;border-radius:50%;font-size:27px}.counter{font-size:11px;letter-spacing:2px;color:#bbb}.dots{display:flex;gap:6px;position:absolute;z-index:2;bottom:30px;left:5%}.dots button{width:24px;height:3px;padding:0;background:#ffffff40}.dots .active{background:#e52330;width:42px}.browse{padding:0 5% 25px;scroll-margin-top:20px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:12px 0 25px}.eyebrow{font-size:9px;letter-spacing:2px;color:#aaa}.toolbar h2{font-size:26px;letter-spacing:-.7px;margin:8px 0}.toolbar input{width:310px;background:#1a1a1a;border:1px solid #383838;padding:12px 15px;color:#eee;border-radius:4px;font-size:12px}.filters{display:flex;gap:9px}.filters button{padding:9px 17px;border-radius:25px;background:#222;color:#bbb;font-size:11px}.filters button.selected{background:#f2f2f2;color:#151515;font-weight:bold}.feed{display:flex;justify-content:space-between;color:#777;font-size:10px;margin-top:22px}.feed a{color:#aaa}#status{font-size:10px;line-height:1.6;color:#777}.sport-section{margin:33px 0 42px}.row-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.row-head h2{font-size:22px;letter-spacing:-.5px;margin:0}.count{font-size:10px;font-weight:normal;color:#777;letter-spacing:0;margin-left:13px}.row-arrows{display:flex;gap:7px}.row-arrows button{width:30px;height:30px;border-radius:4px;background:#242424;font-size:22px}.event-row{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 0 17px;scrollbar-width:thin;scrollbar-color:#444 transparent}.event-card{flex:0 0 292px;scroll-snap-align:start;min-width:0;background:#181818;border:1px solid #ffffff08;border-radius:7px;overflow:hidden;transition:transform .2s,border-color .2s}.event-card:hover{transform:translateY(-4px);border-color:#ffffff50}.poster-button{display:block;width:100%;padding:0;background:none;text-align:inherit}.poster{height:168px;position:relative;overflow:hidden;background:radial-gradient(ellipse at center,#2b3c4a,#172029 80%);display:flex;align-items:center;justify-content:center}.poster:after{content:'';position:absolute;inset:0;box-shadow:inset 0 -30px 40px #0004;pointer-events:none}.cover{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:12px;background:#17202b}.poster>.badge{position:absolute;top:11px;left:11px;z-index:1;font-size:8px;padding:5px 7px}.poster-teams{display:flex;justify-content:center;align-items:center;gap:17px;padding:25px 14px 8px;width:100%}.poster-team{display:grid;justify-items:center;gap:8px;width:38%;min-width:0}.crest{position:relative;display:grid;place-items:center;width:66px;height:66px;color:#aaa;font-size:22px;font-weight:900}.crest img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#23323b}.poster-team span{font-size:9px;text-align:center;max-width:105px;line-height:1.3;color:#e4e7e9}.versus{font-size:11px;color:#92a2ae}.league-logo{max-width:55%;height:65%;object-fit:contain}.generated{text-transform:uppercase;font-size:23px;letter-spacing:-1px;font-weight:900;text-align:center;padding:30px}.play-icon{position:absolute;inset:0;display:grid;place-items:center;background:#0006;font-size:32px;opacity:0;transition:opacity .2s}.poster-button:hover .play-icon,.poster-button:focus-visible .play-icon{opacity:1}.card-info{padding:17px}.league{color:#969696;font-size:9px;letter-spacing:1.3px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-info h3{font-size:14px;line-height:1.4;margin:9px 0;min-height:40px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.time{font-size:10px;color:#999}.channel-button{background:none;color:#d4d4d4;font-size:10px;padding:14px 0 0}.channel-button:hover{color:#ff3843}.empty,.hero-empty,.loading{padding:65px 5%;color:#aaa}footer{margin:0 5%;border-top:1px solid #282828;padding:25px 0 35px;font-weight:900;color:#ed252d;font-size:16px;display:flex;justify-content:space-between;gap:20px}footer span{color:#777;font-size:10px;font-weight:normal}dialog{width:min(1100px,95vw);padding:0;background:#141414;border:1px solid #333;border-radius:9px;color:#fff}dialog::backdrop{background:#000d}.player-head{padding:20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.player-head h2{font-size:18px;margin:8px 0 0}.player-head button{background:#333;border-radius:50%;width:35px;height:35px;flex-shrink:0}#channels{display:flex;flex-wrap:wrap;gap:8px;padding:0 20px 18px}#channels button{background:#292929;border-radius:4px;padding:10px 14px;font-size:12px}#channels button.selected{background:#e52330}iframe{display:block;width:100%;height:min(62vh,590px);border:0;background:black}.player-foot{padding:16px 20px;display:flex;justify-content:space-between;gap:15px;font-size:10px;color:#999}.player-foot a{color:#eee;white-space:nowrap}button:focus-visible,a:focus-visible,input:focus-visible,#hero:focus-visible{outline:2px solid #f44;outline-offset:4px}@media(min-width:1600px){.event-card{flex-basis:330px}.poster{height:186px}}@media(max-width:700px){nav{height:65px;gap:18px}.brand{font-size:21px}.browse-link{font-size:10px}.nav-right{display:none}#refresh{margin-left:auto}#hero{height:560px}.hero-poster{width:100%;height:68%!important;opacity:.65}.hero-poster .crest{width:105px;height:105px}.hero-poster .poster-teams{gap:22px}.hero-poster .poster-team span{font-size:12px}.hero-poster .cover{padding:25px}#hero:after{background:linear-gradient(0deg,#101010 2%,#101010e6 30%,transparent 95%)}.hero-content{margin:0 6%;padding-top:265px;width:88%}h1{font-size:32px;margin:17px 0 12px;letter-spacing:-1px;-webkit-line-clamp:2}.hero-meta{font-size:8px;gap:10px}.hero-description{display:none}.hero-time{font-size:12px}.watch{padding:12px 19px;font-size:12px;margin-top:3px}.hero-controls{bottom:27px;right:6%;gap:10px}.arrow{width:32px;height:32px;font-size:24px}.counter{font-size:9px}.dots{bottom:38px;left:6%;gap:4px;max-width:42%}.dots button{width:12px}.dots .active{width:22px}.toolbar{flex-direction:column;align-items:stretch;margin-top:27px;gap:15px}.toolbar h2{font-size:23px}.toolbar input{width:100%}.filters{gap:5px;justify-content:space-between}.filters button{font-size:10px;padding:9px 12px}.event-card{flex-basis:260px}.poster{height:150px}.row-head h2{font-size:20px}.count{font-size:9px}.feed{font-size:9px;gap:12px}.sport-section{margin-top:29px}footer{display:grid}.player-foot{flex-direction:column}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Cards retain their stacking level; only their position and shadow animate. */
.event-row{padding-top:16px;margin-top:-12px;padding-bottom:24px}
.event-card{position:relative;z-index:1;transform:translate3d(0,0,0);box-shadow:0 0 0 transparent;backface-visibility:hidden;transition:transform 340ms cubic-bezier(.22,1,.36,1),box-shadow 340ms cubic-bezier(.22,1,.36,1),border-color 260ms ease}
.event-card:hover,.event-card:focus-within{transform:translate3d(0,-7px,0);box-shadow:0 12px 24px #0007;border-color:#ffffff45}
.play-icon{transition:opacity 260ms ease,background-color 260ms ease}
.event-card:hover .play-icon{opacity:1;background:#0003}
.auto-toggle{font-size:14px}
.hero-poster{animation:hero-fade 500ms ease-out}.hero-content{animation:hero-fade 400ms ease-out}
@keyframes hero-fade{from{opacity:.3}to{opacity:1}}
@media(hover:none){.event-card:hover{transform:translate3d(0,0,0);box-shadow:none}}
@media(prefers-reduced-motion:reduce){.hero-poster,.hero-content{animation:none}}

/* Broadcast artwork for event rows only; featured carousel stays unchanged. */
.event-card{border-radius:9px;background:#18191c;border-color:#ffffff0c}
.event-card .broadcast-poster{height:190px;isolation:isolate;background:radial-gradient(ellipse at 15% 40%,color-mix(in srgb,var(--home-color) 60%,transparent),transparent 63%),radial-gradient(ellipse at 90% 65%,color-mix(in srgb,var(--away-color) 50%,transparent),transparent 65%),linear-gradient(135deg,#111b2a,#0e1119)}
.event-card .broadcast-poster:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(113deg,transparent 47%,#ffffff07 47.3%,#ffffff07 47.7%,transparent 48%),repeating-linear-gradient(0deg,transparent 0 3px,#ffffff02 3px 4px),radial-gradient(ellipse at 50% 110%,#ffffff12,transparent 65%);pointer-events:none}
.event-card .broadcast-poster:after{box-shadow:inset 0 -25px 35px #0004,inset 0 1px 0 #ffffff15}
.broadcast-stripe{position:absolute;height:2px;left:0;right:0;bottom:0;background:linear-gradient(90deg,var(--home-color),#fff8 50%,var(--away-color));z-index:2}
.broadcast-overline{position:absolute;top:14px;left:15px;right:15px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:8px;font-weight:800;letter-spacing:1.1px;color:#d1d9e5;text-transform:uppercase;z-index:1}
.broadcast-overline>span:first-child{max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.broadcast-mark{font-size:6px;color:#a8b7c6;letter-spacing:1.4px;border-left:1px solid #ffffff30;padding-left:9px}
.broadcast-foot{position:absolute;left:15px;right:15px;bottom:12px;display:flex;justify-content:space-between;align-items:center;font-size:7px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#aabaca;z-index:1}
.event-card .poster-teams{padding:30px 17px 24px;gap:13px;position:relative;z-index:1;align-items:center}
.event-card .poster-team{gap:10px;width:40%}.event-card .crest{width:76px;height:76px;font-size:25px;color:#e5ecf3;text-shadow:0 3px 12px #0007}.event-card .crest img{background:transparent;filter:drop-shadow(0 7px 9px #0008);object-fit:contain;padding:0}
.event-card .poster-team span{font-size:9px;font-weight:750;letter-spacing:.1px;line-height:1.25;color:#f2f4f8;text-shadow:0 2px 5px #0008;max-width:112px}
.event-card .versus{font-size:8px;font-weight:800;letter-spacing:1px;color:#d1d9e4;display:grid;place-items:center;width:27px;height:27px;border:1px solid #ffffff25;border-radius:50%;background:#10162170;flex-shrink:0}
.event-card .poster>.badge{top:auto;left:50%;bottom:9px;translate:-50% 0;font-size:6px;padding:4px 6px;letter-spacing:1px;border-radius:2px;z-index:3}
.event-card .poster>.badge.finished{color:#b4bec8;background:#1a2431}.event-card .poster>.badge.upcoming{background:#ffffffdf;color:#18232b}.event-card .play-icon{z-index:4;font-size:26px;background:#0000}.event-card .play-icon:before{content:'';position:absolute;width:52px;height:52px;border:1px solid #ffffff60;border-radius:50%;background:#0003;z-index:-1;backdrop-filter:blur(4px)}
.event-card .cover{inset:30px 22px;width:calc(100% - 44px);height:calc(100% - 60px);padding:15px;object-fit:contain;background:transparent;filter:drop-shadow(0 7px 14px #0006);z-index:0}
.event-card .league-logo{height:52%;max-width:48%;filter:drop-shadow(0 7px 14px #0008)}.event-card .generated{font-size:26px;font-weight:950;letter-spacing:-1px;line-height:1.1;max-width:85%;text-shadow:0 5px 15px #0006}
.event-card [data-sport=motor]{background:linear-gradient(150deg,#391d23,#14151b 65%)}.event-card [data-sport=motor]:before{background:repeating-linear-gradient(130deg,transparent 0 22px,#ffffff06 22px 23px),linear-gradient(90deg,#d9192425,transparent)}
.event-card [data-sport=basketball]:before{background:radial-gradient(circle at 50% 50%,transparent 0 60px,#ffffff09 61px 62px,transparent 63px),linear-gradient(90deg,transparent 49.7%,#ffffff08 49.8% 50.2%,transparent 50.3%)}
.event-card .card-info{padding:16px 17px 17px}.event-card .card-info h3{font-size:14px;font-weight:750;letter-spacing:-.15px;margin:9px 0 12px}.event-card .league{font-size:8px;letter-spacing:1.1px;color:#8d98a6}.event-card .time{font-size:10px;color:#a1a9b5}.event-card .channel-button{display:block;width:100%;text-align:left;border-top:1px solid #ffffff0a;margin-top:13px;padding-top:12px;font-size:10px;color:#d1d6df}
@media(max-width:700px){.event-card .broadcast-poster{height:176px}.event-card .crest{width:66px;height:66px}.broadcast-overline{font-size:7px}.broadcast-mark{font-size:5px}.event-card .poster-team span{font-size:8px}}

