/* Original illustrative sports photographs; no attribution to actual matches. */
.intro{height:clamp(350px,32vw,620px);padding:32px 38px;position:relative;overflow:hidden;background:#09090d!important}.cinema-backdrop{position:absolute;inset:-4%;background-size:cover;background-position:center;z-index:-2;will-change:transform}.intro:before{z-index:-1;background:linear-gradient(90deg,#06060ad9,transparent 75%)}.intro:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#101014,transparent 42%);z-index:-1}.intro>small{color:#ddd}.intro h1{font-size:clamp(24px,2.5vw,42px);max-width:62%;min-height:0}.intro p{font-size:15px;max-width:55%}.cinema-caption{position:absolute;bottom:88px;left:38px;max-width:70%;text-shadow:0 3px 20px #000}.cinema-caption small{color:#ff6473;font-size:12px;letter-spacing:.2em}.cinema-caption strong{display:block;font-size:clamp(28px,3.2vw,54px);line-height:1.08;margin-top:10px;max-width:720px}.cinema-nav{display:flex;gap:8px;position:absolute;bottom:26px;left:38px}.cinema-nav button{min-width:44px;min-height:44px;padding:6px 12px;border-radius:50%;background:#151519aa;font-size:16px}.cinema-nav button[aria-pressed=true]{background:#d80723;border-color:#fa7181}.card-art{background-size:cover!important;background-position:70% center!important;filter:none!important}.card-art:after{background:linear-gradient(0deg,#07080dcc,transparent 70%)!important}.card-art.has-duel .cover-duel{top:auto;bottom:12px;left:12px;right:48px;transform:none;justify-content:flex-start;gap:12px}.cover-duel span{font-size:20px!important;text-shadow:0 2px 7px #000}.cover-duel:after{font-size:12px!important}.card-art .card-emblem{opacity:.7;width:34px;height:34px;right:10px;top:10px;left:auto}.guide-view .catalog-row{border:1px solid #ffffff16;border-radius:16px;padding:18px;background:linear-gradient(120deg,#201b28,#101219);margin-bottom:26px}.guide-view .catalog-row>h2{font-size:20px;padding:10px 16px;border-left:3px solid #e50930;background:#ffffff06}.guide-view .event{border-radius:12px;background:#181a23;border-color:#ffffff17}.guide-view .time{color:#ffbac5;font-weight:600;white-space:normal}.event:focus-visible{box-shadow:0 0 0 3px #fff,0 10px 30px #e5091433}
@media(max-width:700px){.intro{height:400px;padding:24px 20px}.intro h1{max-width:100%;font-size:25px}.intro p{max-width:90%;font-size:13px}.cinema-caption{left:20px;bottom:90px;max-width:90%}.cinema-caption strong{font-size:29px}.cinema-nav{left:20px}.cinema-backdrop{background-position:65% center}.guide-view .catalog-row{padding:8px}.intro:before{background:linear-gradient(90deg,#06060acc,#06060a33)}}
@media(prefers-reduced-motion:reduce){.cinema-backdrop{will-change:auto}}

.card-art:has(.card-emblem[src$="/futbol.svg"]){background-image:url("/img/tv-photo-futbol.png")!important}
.card-art:has(.card-emblem[src$="/basquet.svg"]){background-image:url("/img/tv-photo-basquet.png")!important}
.card-art:has(.card-emblem[src$="/beisbol.svg"]){background-image:url("/img/tv-photo-beisbol.png")!important}
.card-art:has(.card-emblem[src$="/tenis.svg"]){background-image:url("/img/tv-photo-tenis.png")!important}
.personal-settings{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:12px;color:#aaa;margin:10px 0}.personal-settings button{font-size:12px;padding:8px 12px;min-height:44px}.recommendation-reason{color:#ffb8c2!important}.event:has(.recommendation-reason){height:auto;min-height:292px}.watch-bar{flex-wrap:wrap;gap:8px}#watch-title{flex:1;min-width:140px}

.cinema-nav{align-items:center;gap:6px}.cinema-nav button{border:0;background:transparent!important;box-shadow:none;min-width:40px;min-height:44px;padding:8px;color:#ddd}.cinema-nav button[aria-label^="Ver intro"]{width:36px;min-width:26px;position:relative;border-radius:5px}.cinema-nav button[aria-label^="Ver intro"]:before{content:'';position:absolute;left:6px;right:6px;top:21px;height:3px;background:#ffffff50;border-radius:8px}.cinema-nav button[aria-pressed=true]:before{background:#fff;box-shadow:0 0 10px #fff6}.cinema-nav button:focus-visible{outline:2px solid #fff;background:#ffffff15!important;border-radius:8px}.cinema-glow{position:absolute;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 80% 25%,#ffffff10,transparent 55%);animation:cinema-light 9s ease-in-out infinite;mix-blend-mode:screen}.intro[data-intro-playing=false] .cinema-glow{animation-play-state:paused}@keyframes cinema-light{50%{opacity:.35;transform:translateX(-4%)}}.cinema-previous{will-change:auto}.cinema-caption strong{font-weight:800;letter-spacing:-.025em}.intro>small,.intro>h1,.intro>p{opacity:.8}
@media(max-width:700px){.cinema-nav{gap:0;left:12px;right:12px}.cinema-nav button{min-width:30px}.cinema-nav button[aria-label^="Ver intro"]{min-width:20px;width:24px}.cinema-caption strong{font-size:28px}}
@media(prefers-reduced-motion:reduce){.cinema-glow{animation:none}}

.card-art:has(.card-emblem[src$="/hipica.svg"]){background-image:url("/img/tv-photo-hipica.png")!important}
.card-art:has(.card-emblem[src$="/cricket.svg"]){background-image:url("/img/tv-photo-cricket.png")!important}
.card-art:has(.card-emblem[src$="/motor.svg"]){background-image:url("/img/tv-photo-motor.png")!important}
.card-art:has(.card-emblem[src$="/esports.svg"]){background-image:url("/img/tv-photo-esports.png")!important}
.broadcast-badge{position:absolute;left:12px;top:12px;background:#e50935;color:#fff;padding:4px 7px;border-radius:4px;font-size:10px;font-weight:800;z-index:3;letter-spacing:.04em}.broadcast-badge[hidden]{display:none}.broadcast-badge.scheduled{background:#252431ed;color:#f4daaa}.broadcast-badge.channel{background:#161820dd}.card-art:has(.broadcast-badge:not([hidden])) .country-flag{top:42px}.cinema-nav{z-index:3}
/* Scene composition changes without moving the remote controls. */
.intro[data-composition="1"] .cinema-caption{left:auto;right:38px;text-align:right;max-width:62%}
.intro[data-composition="1"]:before{background:linear-gradient(270deg,#06060ae6,transparent 95%)}
.intro[data-composition="2"] .cinema-caption{left:15%;right:15%;max-width:70%;text-align:center}
.intro[data-composition="2"] .cinema-caption strong{margin-left:auto;margin-right:auto}
.intro[data-composition="2"]:before{background:linear-gradient(0deg,#06060ae6,transparent)}
@media(max-width:700px){.intro[data-composition] .cinema-caption{left:20px;right:20px;max-width:100%;text-align:left}.intro[data-composition] .cinema-caption strong{font-size:25px}.cinema-caption strong{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}
.intro{scroll-margin-top:110px}.intro>small{display:none}.intro>h1{font-size:clamp(20px,2vw,30px);margin-top:4px}.cinema-caption{bottom:90px}.cinema-caption>small{display:inline-block;background:#b00930;color:#fff;padding:8px 12px;border-radius:6px;letter-spacing:.05em}.cinema-caption strong{font-size:clamp(25px,2.7vw,46px);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cinema-action{margin-top:16px;background:linear-gradient(135deg,#ef1747,#b9082e)!important;color:#fff!important;border:1px solid #ff879f!important;padding:13px 24px!important;min-height:48px}.cinema-backdrop{inset:-8%}.intro:before{inset:0!important}.intro:after{inset:0!important}
@media(max-width:700px){.intro{height:460px}.cinema-caption{bottom:80px}.cinema-caption strong{font-size:25px}.cinema-caption>small{font-size:10px}.intro>p{max-width:100%}}
/* Transition from a neutral backing so the previous sport never sits behind the new label. */
.cinema-previous{visibility:hidden}
.cinema-video{position:absolute;inset:0;width:100%;height:100%;border:0;opacity:0;pointer-events:none;z-index:-2}.cinema-video.ready{opacity:1;z-index:-1}.intro:has(.cinema-video.ready):before{z-index:0;background:linear-gradient(90deg,#050509dc,transparent 90%)}.intro:has(.cinema-video.ready):after{z-index:0}.intro>h1,.intro>p,.cinema-caption{position:relative;z-index:1}.cinema-caption{position:absolute}.cinema-preview-button{margin-left:12px;margin-top:16px;background:#222b!important;border-color:#fff8!important}.cinema-preview-status{display:block;font-size:12px;margin-top:10px;color:#ddd}.cinema-action,.cinema-preview-button{border-radius:999px!important}
@media(max-width:600px){.cinema-preview-button{margin-left:8px;font-size:13px;padding:12px}.cinema-action{font-size:13px}}

/* Capa sobre la vista previa: tocar el video abre el evento (js/tv-cinema.js). */
.cinema-preview-click {
  position: absolute;
  inset: 0;
  z-index: -1;
  border: 0;
  padding: 0;
  background: transparent;
  cursor: pointer;
}
