/* ==========================================================================
   SANSAT OTT — Ultra-Fast TV & PC Home Menu (Tema 1: Clásico & Tema 2: Mosaico)
   Optimized for 60 FPS on Android TV ARM SoCs (Zero Heavy Blur Fill-Rate)
   Scaled with rem (120rem x 67.5rem 16:9 Reference Stage)
   ========================================================================== */

:root {
  --red: #dc2431;
  --red2: #ff4a4a;
  --line: #7a1219;
  --muted: #b7a0a6;
}

html.tv-home-mode {
  font-size: calc(100vw / 120);
}
@media (min-aspect-ratio: 16/9) {
  html.tv-home-mode {
    font-size: calc(100vh / 67.5);
  }
}

html.tv-home-mode,
html.tv-home-mode body {
  width: 100%;
  height: 100%;
  overflow: hidden;
  overscroll-behavior: none;
  touch-action: manipulation;
}

body.tv-home-active {
  background: #12070b;
  color: #fff;
  cursor: default;
  font-family: "Barlow Condensed", "Tajawal", "Segoe UI", Roboto, "Arial Narrow", Arial, sans-serif;
  font-weight: 700;
  -webkit-user-select: none;
  user-select: none;
  -webkit-font-smoothing: antialiased;
}

body.tv-home-active.nc,
body.tv-home-active.nc * {
  cursor: none !important;
}

#tv-home-app {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  background: linear-gradient(120deg, #2a0b14 0%, #12070b 75%);
  z-index: 10;
  contain: strict;
}

#tv-home-stage {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 120rem;
  height: 67.5rem;
  margin: -33.75rem 0 0 -60rem;
  contain: layout size;
}

#tv-home-stage > * {
  position: absolute;
}

#tv-home-app svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  display: block;
}

#tv-home-app .sp {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
}

/* ====== CABECERA & ELEMENTOS TEMA 2 (Mosaico) ====== */
#tv-home-app #th2 #logo {
  position: absolute;
  left: 3.6rem;
  top: 1.4rem;
  width: 6.2rem;
  height: 6.2rem;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}

#tv-home-app #th2 #logo b {
  font-size: 3.4rem;
  font-style: italic;
  font-weight: 800;
  text-shadow: 0 .2rem .4rem rgba(0, 0, 0, .45);
}

#tv-home-app #th2 #logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 0;
  filter: drop-shadow(0 .2rem .8rem rgba(0, 0, 0, .45));
}

#tv-home-app #th2 #info {
  position: absolute;
  left: 11.6rem;
  top: .8rem;
  width: 25.5rem;
  height: 6.8rem;
  border-radius: 1.1rem;
  border: .1rem solid rgba(255, 255, 255, .12);
  background: rgba(255, 255, 255, .05);
  padding: .5rem 1.2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-sizing: border-box;
}

#tv-home-app #th2 #info .l {
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#tv-home-app #th2 #loc {
  font-size: 1.25rem;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 15rem;
  color: #fff;
}

#tv-home-app #th2 #dt {
  font-size: 1.05rem;
  color: rgba(255, 255, 255, 0.7);
  font-weight: 600;
  margin-top: .1rem;
}

#tv-home-app #th2 #tm {
  font-size: 1.85rem;
  font-weight: 800;
  line-height: 1.1;
  margin-top: .15rem;
  white-space: nowrap;
  color: #fff;
}

#tv-home-app #th2 #info .w {
  border-left: .1rem solid rgba(255, 255, 255, .14);
  padding-left: 1.1rem;
  text-align: center;
}

#tv-home-app #th2 #info .w svg {
  width: 2.4rem;
  height: 2.4rem;
  color: var(--red2);
  margin: 0 auto .3rem;
}

#tv-home-app #th2 #tp {
  font-size: 1.4rem;
}

#tv-home-app #th2 #exp {
  position: absolute;
  left: 50%;
  top: 1.9rem;
  width: 24rem;
  margin-left: -12rem;
  text-align: center;
}

#tv-home-app #th2 #exp .a {
  font-size: 1.4rem;
  color: var(--muted);
  font-weight: 600;
  padding-bottom: .4rem;
}

#tv-home-app #th2 #exp i {
  display: block;
  height: .1rem;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .35), transparent);
  margin-bottom: .7rem;
}

#tv-home-app #th2 #dl {
  font-size: 2rem;
  font-weight: 800;
}

#tv-home-app #th2 #icons {
  position: absolute;
  right: 3.6rem;
  top: 1.9rem;
  display: flex;
}

#tv-home-app #th2 .ib {
  width: 4.8rem;
  height: 4.8rem;
  margin-left: 1.5rem;
  border-radius: 50%;
  position: relative;
  border: .1rem solid rgba(255, 255, 255, .22);
  background: rgba(255, 255, 255, .05);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .12s cubic-bezier(.2, .8, .2, 1), background-color .12s, border-color .12s;
  cursor: pointer;
  will-change: transform;
}

#tv-home-app #th2 .ib svg {
  width: 2.2rem;
  height: 2.2rem;
}

#tv-home-app #th2 .ib u {
  position: absolute;
  right: .7rem;
  top: .7rem;
  width: .9rem;
  height: .9rem;
  border-radius: 50%;
  background: var(--red2);
  display: none;
}

#tv-home-app #th2 .ib.dot u {
  display: block;
}

#tv-home-app #th2 .ib.f {
  border-color: var(--red2);
  background: rgba(220, 36, 49, .35);
  transform: scale(1.1) translateZ(0);
  box-shadow: 0 0 1.2rem rgba(255, 74, 74, .45);
}

/* ====== CONTENEDOR DE TEMA ACTIVO ====== */
#theme-container {
  position: absolute;
  left: 0;
  top: 0;
  width: 120rem;
  height: 67.5rem;
}

@keyframes thin {
  from { opacity: 0; transform: scale(1.02); }
  to { opacity: 1; transform: none; }
}
#theme-container.ent {
  animation: thin .22s cubic-bezier(.2, .8, .2, 1);
}

/* ==========================================================================
   TEMA 1: NETFLIX CINEMA (Sidebar & Top 5 Accordion)
   ========================================================================== */
#tv-home-app #th1 {
  position: absolute;
  left: 0;
  top: 0;
  width: 120rem;
  height: 67.5rem;
  overflow: hidden;
  --bg: #090c13;
  --mut: rgba(255, 255, 255, .68);
  --glass: rgba(255, 255, 255, .1);
  --line: rgba(255, 255, 255, .16);
  --ac: #e50914; /* Netflix Red */
  --sb: #0d111a;
  background: var(--bg);
  color: #fff;
  font-weight: 600;
  user-select: none;
  font-family: Roboto, "Segoe UI", Arial, sans-serif;
}
html[dir="rtl"] #tv-home-app #th1 {
  font-family: 'Tajawal', "Noto Sans Arabic", "Segoe UI", Tahoma, Arial, sans-serif !important;
}
html[dir="rtl"] #tv-home-app #th1 * {
  letter-spacing: 0 !important;
}

/* Background layers & overlays */
#tv-home-app #th1 .bd {
  position: absolute;
  top: 0;
  right: 0;
  width: 85%;
  height: 100%;
  opacity: 0;
  transition: opacity .5s ease-out;
  pointer-events: none;
}
#tv-home-app #th1 .bd.on {
  opacity: 1;
}
html[dir="rtl"] #tv-home-app #th1 .bd {
  right: auto;
  left: 0;
}
#tv-home-app #th1 #s1,
#tv-home-app #th1 #s2 {
  position: absolute;
  left: 0;
  right: 0;
  pointer-events: none;
}
#tv-home-app #th1 #s1 {
  top: 0;
  bottom: 0;
  background: linear-gradient(90deg, #090c13 0, #090c13 22%, rgba(9, 12, 19, .8) 45%, rgba(9, 12, 19, 0) 80%);
}
html[dir="rtl"] #tv-home-app #th1 #s1 {
  background: linear-gradient(270deg, #090c13 0, #090c13 22%, rgba(9, 12, 19, .8) 45%, rgba(9, 12, 19, 0) 80%);
}
#tv-home-app #th1 #s2 {
  bottom: 0;
  height: 55%;
  background: linear-gradient(0deg, #090c13 12%, rgba(9, 12, 19, .85) 40%, rgba(9, 12, 19, 0) 100%);
}

/* Collapsible Vertical Sidebar */
#tv-home-app #th1 #sb {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 8rem;
  background: var(--sb);
  border-right: .1rem solid var(--line);
  z-index: 5;
}
html[dir="rtl"] #tv-home-app #th1 #sb {
  left: auto;
  right: 0;
  border-right: 0;
  border-left: .1rem solid var(--line);
}
#tv-home-app #th1 #sb.ex {
  width: 26rem;
}
#tv-home-app #th1 #lg {
  position: absolute;
  top: 2.4rem;
  left: 1.2rem;
  right: 1.2rem;
  height: 4.8rem;
  display: flex;
  align-items: center;
  padding: 0 .2rem;
  overflow: hidden;
}
#tv-home-app #th1 #logo {
  flex: none;
  width: 4.4rem;
  height: 4.4rem;
  border-radius: 0;
  background: transparent;
  border: none;
  box-shadow: none;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
#tv-home-app #th1 #logo b {
  font-size: 2.6rem;
  font-weight: 800;
  color: #fff;
}
#tv-home-app #th1 #logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#tv-home-app #th1 #bn {
  display: none;
  margin: 0 1.4rem;
  font-size: 2.0rem;
  font-weight: 800;
  letter-spacing: .12em;
  white-space: nowrap;
  color: #fff;
}
#tv-home-app #th1 #sb.ex #bn {
  display: block;
}
#tv-home-app #th1 #mn {
  position: absolute;
  top: 9.6rem;
  bottom: 2rem;
  left: 0;
  right: 0;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
}
#tv-home-app #th1 #mn::-webkit-scrollbar {
  display: none;
}
#tv-home-app #th1 .mi {
  position: relative;
  height: 4.4rem;
  margin: 0 1.2rem .4rem;
  padding: 0 1.3rem;
  border-radius: 2.2rem;
  display: flex;
  align-items: center;
  overflow: hidden;
  color: var(--mut);
  cursor: pointer;
  transition: background-color .12s, color .12s;
}
#tv-home-app #th1 .mi .ic {
  flex: none;
  width: 2.4rem;
  height: 2.4rem;
}
#tv-home-app #th1 .mi span {
  display: none;
  margin: 0 1.2rem;
  font-size: 1.50rem;
  font-weight: 700;
  white-space: nowrap;
}
#tv-home-app #th1 #sb.ex .mi span {
  display: block;
}
#tv-home-app #th1 .mi.act {
  color: var(--ac);
}
#tv-home-app #th1 .mi.act:before {
  display: none !important;
  content: none !important;
}
html[dir="rtl"] #tv-home-app #th1 .mi.act:before {
  display: none !important;
}
#tv-home-app #th1 .mi i {
  position: absolute;
  top: 1rem;
  right: 1.2rem;
  width: .9rem;
  height: .9rem;
  border-radius: 50%;
  background: #ff3b4a;
  display: none;
}
#tv-home-app #th1 .mi.dot i {
  display: block;
}
#tv-home-app #th1 .mi.f {
  background: #fff;
  color: #0a0e15;
}
#tv-home-app #th1 .mi.f .ic {
  stroke: #0a0e15;
}
#tv-home-app #th1 .mi.f.act:before {
  background: var(--ac);
}

/* Top bar */
#tv-home-app #th1 #tp {
  position: absolute;
  left: 13rem;
  right: 6rem;
  top: 2.4rem;
  height: 4.8rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 4;
}
html[dir="rtl"] #tv-home-app #th1 #tp {
  left: 6rem;
  right: 13rem;
}
#tv-home-app #th1 #tp > div {
  display: flex;
  align-items: center;
  margin: 0 1rem;
  white-space: nowrap;
}
#tv-home-app #th1 #sub {
  height: 3.2rem;
  padding: 0 1.5rem;
  border-radius: 1.6rem;
  background: var(--glass);
  border: .1rem solid var(--line);
  font-size: 1.5rem;
}
#tv-home-app #th1 #sub i {
  width: .9rem;
  height: .9rem;
  border-radius: 50%;
  background: #34d399;
  margin: 0 .8rem;
  display: inline-block;
}
#tv-home-app #th1 #sub.warn i {
  background: #fbbf24;
}
#tv-home-app #th1 #sub.bad i {
  background: #f43f5e;
}
#tv-home-app #th1 #wx {
  font-size: 2rem;
  font-weight: 700;
}
#tv-home-app #th1 #wx svg {
  width: 2.4rem;
  height: 2.4rem;
  margin: 0 .6rem;
  color: #fbbf24;
}
#tv-home-app #th1 #tm {
  font-size: 3rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
#tv-home-app #th1 #dt {
  font-size: 1.5rem;
  color: var(--mut);
  font-weight: 500;
}

/* Hero section */
#tv-home-app #th1 #hero {
  position: absolute;
  left: 13rem;
  right: 6rem;
  top: 8.5rem;
  z-index: 4;
}
html[dir="rtl"] #tv-home-app #th1 #hero {
  left: 6rem;
  right: 13rem;
}
#tv-home-app #th1 #hw {
  max-width: 66rem;
}
#tv-home-app #th1 #hero.rs #hw {
  animation: rise1 .35s ease-out;
}
@keyframes rise1 {
  from { opacity: 0; transform: translateY(1rem); }
  to { opacity: 1; transform: none; }
}
#tv-home-app #th1 #bdg {
  display: inline-flex;
  align-items: center;
  height: 2.8rem;
  padding: 0 1.2rem;
  border-radius: .7rem;
  background: var(--ac);
  font-size: 1.5rem;
  font-weight: 800;
}
#tv-home-app #th1 #bdg b {
  margin: 0 .7rem 0 0;
  font-weight: 900;
}
html[dir="rtl"] #tv-home-app #th1 #bdg b {
  margin: 0 0 0 .7rem;
}
#tv-home-app #th1 #hl {
  margin-top: 1rem;
  font-size: 3.9rem;
  line-height: 4.6rem;
  font-weight: 900;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #fff;
}
#tv-home-app #th1 #hl.ar-title {
  font-family: Tajawal, "Noto Sans Arabic", Tahoma, sans-serif !important;
  font-size: 3.5rem;
  line-height: 4.3rem;
}
#tv-home-app #th1 #mt {
  margin-top: 1rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  color: var(--mut);
}
#tv-home-app #th1 #mt span {
  display: flex;
  align-items: center;
}
#tv-home-app #th1 #mt span + span:before {
  content: "";
  width: .4rem;
  height: .4rem;
  border-radius: 50%;
  background: var(--mut);
  margin: 0 1rem;
}
#tv-home-app #th1 #mt .ic {
  width: 1.9rem;
  height: 1.9rem;
  margin: 0 .5rem;
  color: #ffc933;
}
#tv-home-app #th1 #hs {
  margin-top: 1rem;
  font-size: 1.7rem;
  line-height: 2.5rem;
  height: 5rem;
  overflow: hidden;
  color: var(--mut);
  font-weight: 500;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
#tv-home-app #th1 #hbs {
  display: flex;
  margin-top: 2.4rem;
}
#tv-home-app #th1 .hb {
  height: 5rem;
  padding: 0 2.6rem;
  margin: 0 .8rem 0 0;
  border-radius: 2.5rem;
  display: flex;
  align-items: center;
  font-size: 2rem;
  font-weight: 700;
  background: var(--glass);
  border: .1rem solid var(--line);
  color: #fff;
  cursor: pointer;
  transition: transform .15s ease-out, background-color .15s ease-out, color .15s ease-out;
}
html[dir="rtl"] #tv-home-app #th1 .hb {
  margin: 0 0 0 .8rem;
}
#tv-home-app #th1 .hb.pr {
  background: var(--ac);
  border-color: var(--ac);
}
#tv-home-app #th1 .hb .ic {
  width: 2.4rem;
  height: 2.4rem;
  margin: 0 .5rem;
}
#tv-home-app #th1 .hb span {
  margin: 0 .5rem;
}
#tv-home-app #th1 .hb.f {
  background: #fff;
  color: #0a0e15;
  border-color: #fff;
  transform: scale(1.06);
}
#tv-home-app #th1 .hb.f .ic {
  fill: #0a0e15;
  stroke: #0a0e15;
}

/* Top 5 Section */
#tv-home-app #th1 #l5 {
  position: absolute;
  left: 13rem;
  right: 6rem;
  top: 37.2rem;
  height: 3rem;
  display: flex;
  align-items: center;
  font-size: 2.6rem;
  font-weight: 800;
  color: #fff;
  z-index: 4;
}
html[dir="rtl"] #tv-home-app #th1 #l5 {
  left: 6rem;
  right: 13rem;
}
#tv-home-app #th1 #l5 i {
  width: .6rem;
  height: 2.6rem;
  border-radius: .3rem;
  background: var(--ac);
  margin: 0 1.2rem 0 0;
}
html[dir="rtl"] #tv-home-app #th1 #l5 i {
  margin: 0 0 0 1.2rem;
}

/* Accordion cards with giant numbers */
#tv-home-app #th1 #top {
  position: absolute;
  left: 13rem;
  right: 6rem;
  top: 41rem;
  height: 21.5rem;
  display: flex;
  z-index: 4;
}
html[dir="rtl"] #tv-home-app #th1 #top {
  left: 6rem;
  right: 13rem;
}
#tv-home-app #th1 .pi {
  position: relative;
  flex: none;
  width: 13rem;
  margin: 0 1.6rem 0 0;
  border-radius: 1.4rem;
  overflow: hidden;
  background: #141a26;
  cursor: pointer;
  transition: width .22s ease-out;
}
html[dir="rtl"] #tv-home-app #th1 .pi {
  margin: 0 0 0 1.6rem;
}
#tv-home-app #th1 .pi:last-child {
  margin: 0 !important;
}
#tv-home-app #th1 .pi.f {
  width: 38rem;
  transform: none;
}
#tv-home-app #th1 .art {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
#tv-home-app #th1 .pi:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 100%;
  background: rgba(9, 12, 19, .45);
  z-index: 1;
}
#tv-home-app #th1 .pi.f:before {
  top: auto;
  bottom: 0;
  height: 60%;
  background: linear-gradient(0deg, rgba(0, 0, 0, .6), rgba(0, 0, 0, 0));
}
#tv-home-app #th1 .pi:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  border-radius: 1.4rem;
  border: .3rem solid #fff;
  opacity: 0;
  z-index: 3;
  pointer-events: none;
}
#tv-home-app #th1 .pi.f:after {
  opacity: 1;
}
#tv-home-app #th1 .pt {
  display: none;
}
#tv-home-app #th1 .nm {
  position: absolute;
  top: auto;
  bottom: 1rem;
  left: 0;
  right: 0;
  min-width: 0;
  height: auto;
  padding: 0;
  border-radius: 0;
  background: none;
  display: flex;
  align-items: center;
  justify-content: center;
  font: 900 15rem/1 "Arial Black", Impact, Roboto, sans-serif;
  letter-spacing: -.05em;
  color: transparent;
  -webkit-text-stroke: .25rem rgba(255, 255, 255, .6);
  z-index: 2;
  direction: ltr;
  pointer-events: none;
}
html[dir="rtl"] #tv-home-app #th1 .nm {
  left: 0;
  right: 0;
}
#tv-home-app #th1 .pi.f .nm {
  left: 2.4rem;
  right: auto;
  justify-content: flex-start;
  font-size: 13rem;
  bottom: .2rem;
  color: #fff;
  -webkit-text-stroke: 0;
  background: none;
}
html[dir="rtl"] #tv-home-app #th1 .pi.f .nm {
  left: auto;
  right: 2.4rem;
}

/* Footer */
#tv-home-app #th1 #ft {
  position: absolute;
  left: 13rem;
  right: 6rem;
  top: 64rem;
  height: 2.8rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.3rem;
  color: var(--mut);
  font-weight: 500;
  z-index: 4;
  cursor: pointer;
}
html[dir="rtl"] #tv-home-app #th1 #ft {
  left: 6rem;
  right: 13rem;
}
#tv-home-app #th1 #ft .fg {
  display: flex;
  align-items: center;
}
#tv-home-app #th1 #ft .fg > div {
  display: flex;
  align-items: center;
  margin: 0 1rem;
  white-space: nowrap;
}
#tv-home-app #th1 #ft .fg > div:first-child {
  margin-inline-start: 0;
}
#tv-home-app #th1 #ft em {
  font-style: normal;
  margin: 0 .6rem;
  font-weight: 600;
  color: var(--mut);
}
#tv-home-app #th1 #ft b {
  color: #fff;
  font-weight: 700;
}
#tv-home-app #th1 #ft .vs {
  width: .1rem;
  height: 1.5rem;
  background: var(--line);
}

/* Skeleton placeholder loading for Theme 1 */
#tv-home-app #th1 .pi.skel .art {
  animation: skelShimmer 1.8s infinite linear;
}
#tv-home-app #th1 #hero.skel-hero #hl {
  width: 36rem;
  height: 5.6rem;
  background: rgba(255, 255, 255, .1);
  border-radius: 1rem;
}
#tv-home-app #th1 #hero.skel-hero #hs {
  width: 48rem;
  height: 3.4rem;
  background: rgba(255, 255, 255, .06);
  border-radius: .8rem;
}

/* ====== TEMA 2: PRO (Ambient & Hero) ====== */
#tv-home-app #th-pro {
  position: absolute;
  left: 0;
  top: 0;
  width: 120rem;
  height: 67.5rem;
  background: #05060a;
  overflow: hidden;
  font-family: "SF Pro Display", "Inter", "Segoe UI", Roboto, "Helvetica Neue", "Tajawal", "Noto Sans Arabic", Arial, sans-serif;
}
html[dir=rtl] #tv-home-app #th-pro {
  font-family: 'Tajawal', "Noto Sans Arabic", "Segoe UI", Tahoma, Roboto, Arial, sans-serif !important;
}
html[dir=rtl] #tv-home-app #th-pro * {
  letter-spacing: 0 !important;
}

/* Ambient 2-layer opacity crossfade */
#tv-home-app #th-pro .bg {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  transition: opacity .7s ease;
  pointer-events: none;
}
#tv-home-app #th-pro .bg.on {
  opacity: 1;
}
html[dir=rtl] #tv-home-app #th-pro .bg {
  transform: scaleX(-1);
}
#tv-home-app #th-pro .bg.live {
  background: radial-gradient(90% 75% at 86% -5%, rgba(56, 130, 255, .6), transparent 66%), radial-gradient(70% 60% at 0% 105%, rgba(6, 182, 212, .24), transparent 70%);
}
#tv-home-app #th-pro .bg.movies {
  background: radial-gradient(90% 75% at 86% -5%, rgba(244, 63, 94, .55), transparent 66%), radial-gradient(70% 60% at 0% 105%, rgba(251, 146, 60, .22), transparent 70%);
}
#tv-home-app #th-pro .bg.series {
  background: radial-gradient(90% 75% at 86% -5%, rgba(139, 92, 246, .6), transparent 66%), radial-gradient(70% 60% at 0% 105%, rgba(59, 130, 246, .2), transparent 70%);
}
#tv-home-app #th-pro .bg.kids {
  background: radial-gradient(90% 75% at 86% -5%, rgba(244, 114, 182, .5), transparent 66%), radial-gradient(70% 60% at 0% 105%, rgba(251, 191, 36, .24), transparent 70%);
}
#tv-home-app #th-pro #vg {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 42%;
  background: linear-gradient(to top, rgba(5, 6, 10, .9), rgba(5, 6, 10, 0));
  pointer-events: none;
}

/* Barra Superior Pro */
#tv-home-app #th-pro #tb {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 2.6rem;
  height: 5.2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 5;
}
#tv-home-app #th-pro #brand {
  display: flex;
  align-items: center;
}
#tv-home-app #th-pro #logo {
  position: relative;
  left: auto;
  top: auto;
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 0;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
#tv-home-app #th-pro #logo b {
  font-size: 3rem;
  font-weight: 800;
  color: #fff;
}
#tv-home-app #th-pro #logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#tv-home-app #th-pro #bn {
  display: none !important;
}
#tv-home-app #th-pro #rt {
  display: flex;
  align-items: center;
}
#tv-home-app #th-pro #rt > * {
  margin: 0 1.2rem;
}
#tv-home-app #th-pro #sub {
  display: flex;
  align-items: center;
  height: 4rem;
  padding: 0 1.8rem;
  border-radius: 2rem;
  background: rgba(255, 255, 255, .08);
  border: .1rem solid rgba(255, 255, 255, .14);
  font-size: 1.5rem;
  font-weight: 600;
  white-space: nowrap;
  color: #fff;
}
#tv-home-app #th-pro #sub i {
  width: .9rem;
  height: .9rem;
  border-radius: 50%;
  background: #34d399;
  margin: 0 .9rem;
  display: inline-block;
}
#tv-home-app #th-pro #sub.warn i {
  background: #fbbf24;
}
#tv-home-app #th-pro #sub.bad i {
  background: #f43f5e;
}
#tv-home-app #th-pro #wx {
  display: flex;
  align-items: center;
  font-size: 2.2rem;
  font-weight: 700;
  color: #fff;
}
#tv-home-app #th-pro #wx svg {
  width: 2.6rem;
  height: 2.6rem;
  margin: 0 .7rem;
  color: #fbbf24;
}
#tv-home-app #th-pro #clk {
  text-align: end;
}
html[dir=rtl] #tv-home-app #th-pro #clk {
  text-align: start;
}
#tv-home-app #th-pro #tm {
  display: block;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  color: #fff;
}
#tv-home-app #th-pro #dt {
  display: block;
  font-size: 1.3rem;
  color: rgba(255, 255, 255, .62);
  font-weight: 500;
  margin-top: .5rem;
  white-space: nowrap;
}
#tv-home-app #th-pro #ics {
  display: flex;
  margin: 0 -.6rem 0 1rem;
}
#tv-home-app #th-pro .ib {
  width: 4.8rem;
  height: 4.8rem;
  margin: 0 .6rem;
  border-radius: 50%;
  position: relative;
  background: rgba(255, 255, 255, .08);
  border: .1rem solid rgba(255, 255, 255, .14);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .15s, background-color .15s, color .15s;
  cursor: pointer;
  color: #fff;
}
#tv-home-app #th-pro .ib svg {
  width: 2.2rem;
  height: 2.2rem;
}
#tv-home-app #th-pro .ib u {
  position: absolute;
  right: .9rem;
  top: .9rem;
  width: .9rem;
  height: .9rem;
  border-radius: 50%;
  background: #ff4d5a;
  display: none;
}
html[dir=rtl] #tv-home-app #th-pro .ib u {
  right: auto;
  left: .9rem;
}
#tv-home-app #th-pro .ib.dot u {
  display: block;
}
#tv-home-app #th-pro .lb {
  position: absolute;
  top: calc(100% + 1.1rem);
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  color: #0a0a10;
  font-size: 1.3rem;
  font-weight: 700;
  padding: .4rem 1.1rem;
  border-radius: .8rem;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity .15s;
  z-index: 3;
}

/* Titular Animado Hero */
#tv-home-app #th-pro #hero {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 9.8rem;
  z-index: 4;
}
#tv-home-app #th-pro #hero.rs {
  animation: rise .4s ease-out;
}
#tv-home-app #th-pro #hl {
  font-size: 4.0rem;
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #fff;
}
#tv-home-app #th-pro #hs {
  display: none !important;
}
@keyframes rise {
  from { opacity: 0; transform: translateY(1.4rem); }
  to { opacity: 1; transform: none; }
}

/* 4 Tarjetas Pro */
#tv-home-app #th-pro #tiles {
  position: absolute;
  left: 5.9rem;
  right: 5.9rem;
  top: 17.6rem;
  height: 27rem;
  display: flex;
  z-index: 4;
}
#tv-home-app #th-pro .cd {
  flex: 1;
  position: relative;
  margin: 0 1.1rem;
  border-radius: 12px !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
  will-change: transform;
  transition: transform .2s cubic-bezier(.2, .8, .2, 1);
  cursor: pointer;
}
#tv-home-app #th-pro .cd[data-id=live] { --gc: rgba(56, 189, 248, .75); }
#tv-home-app #th-pro .cd[data-id=movies] { --gc: rgba(244, 63, 94, .75); }
#tv-home-app #th-pro .cd[data-id=series] { --gc: rgba(139, 92, 246, .75); }
#tv-home-app #th-pro .cd[data-id=kids] { --gc: rgba(251, 146, 60, .75); }

#tv-home-app #th-pro .cd:before {
  display: none !important;
}
#tv-home-app #th-pro .cd:after {
  display: none !important;
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  border-radius: 12px !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  pointer-events: none;
}
#tv-home-app #th-pro .cd.f {
  transform: scale(1.07);
  z-index: 2;
}
#tv-home-app #th-pro .cd.f:after {
  display: block !important;
  border: 2px solid #fff !important;
  box-shadow: 0 0 2rem var(--gc), 0 1.2rem 3rem rgba(0, 0, 0, 0.8) !important;
}

#tv-home-app #th-pro .in {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  border-radius: 12px !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  overflow: hidden;
  background: #08090e;
}
#tv-home-app #th-pro .in > * {
  position: absolute;
}
#tv-home-app #th-pro .art,
#tv-home-app #th-pro .sh,
#tv-home-app #th-pro .dm {
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  border-radius: 12px !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}
#tv-home-app #th-pro .art {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #0b0f19;
}
#tv-home-app #th-pro .art svg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
  stroke: none !important;
  stroke-width: 0;
}
#tv-home-app #th-pro .art.img svg {
  display: none;
}
html[dir=rtl] #tv-home-app #th-pro .art svg {
  transform: scaleX(-1);
}
#tv-home-app #th-pro .sh {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(4, 6, 12, .7) 70%, rgba(4, 6, 12, .96) 100%);
}
#tv-home-app #th-pro .dm {
  background: #05060a;
  opacity: .35;
  transition: opacity .2s;
}
#tv-home-app #th-pro .cd.cur .dm {
  opacity: .12;
}
#tv-home-app #th-pro .cd.f .dm {
  opacity: 0;
}
#tv-home-app #th-pro .tp {
  left: 2.2rem;
  right: 2.2rem;
  top: 2.2rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
#tv-home-app #th-pro .ci {
  width: 5.6rem;
  height: 5.6rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, .12);
  backdrop-filter: blur(1.6rem);
  -webkit-backdrop-filter: blur(1.6rem);
  border: .1rem solid rgba(255, 255, 255, .2);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 .4rem 1.6rem rgba(0, 0, 0, .35);
}
#tv-home-app #th-pro .ci svg {
  width: 2.8rem;
  height: 2.8rem;
  stroke-width: 1.8;
  color: #fff;
}
#tv-home-app #th-pro .tg {
  display: flex;
  align-items: center;
  background: rgba(239, 43, 58, .88);
  backdrop-filter: blur(1.2rem);
  -webkit-backdrop-filter: blur(1.2rem);
  border: .1rem solid rgba(255, 255, 255, .3);
  font-size: 1.2rem;
  font-weight: 800;
  padding: .4rem 1.1rem;
  border-radius: .7rem;
  color: #fff;
  box-shadow: 0 .2rem 1rem rgba(239, 43, 58, .4);
}
#tv-home-app #th-pro .tg i {
  width: .7rem;
  height: .7rem;
  border-radius: 50%;
  background: #fff;
  margin: 0 .6rem;
  display: inline-block;
  box-shadow: 0 0 .6rem #fff;
}
#tv-home-app #th-pro .tx {
  left: 2.4rem;
  right: 2.4rem;
  bottom: 2.2rem;
}
#tv-home-app #th-pro .t {
  font-size: 3.0rem;
  font-weight: 800;
  line-height: 1.15;
  color: #fff;
  letter-spacing: -.01em;
}
#tv-home-app #th-pro .s {
  font-size: 1.45rem;
  color: rgba(255, 255, 255, .75);
  margin-top: .6rem;
  font-weight: 600;
  letter-spacing: .02em;
}

/* Accesos Rápidos Pro */
#tv-home-app #th-pro #pls {
  position: absolute;
  left: 6.4rem;
  right: 6.4rem;
  top: 48.0rem;
  height: 4.8rem;
  display: flex;
  align-items: center;
  z-index: 4;
}
#tv-home-app #th-pro .pl {
  margin: 0 .6rem;
  height: 4.8rem;
  padding: 0 1.6rem;
  border-radius: 2.4rem;
  background: rgba(255, 255, 255, .08);
  border: .1rem solid rgba(255, 255, 255, .14);
  display: flex;
  align-items: center;
  font-size: 1.7rem;
  font-weight: 600;
  white-space: nowrap;
  transition: transform .15s, background-color .15s, color .15s;
  color: #fff;
  cursor: pointer;
}
#tv-home-app #th-pro .pl svg {
  width: 2.2rem;
  height: 2.2rem;
  margin: 0 .6rem;
}
#tv-home-app #th-pro .pl span {
  margin: 0 .6rem;
}

/* Foco Pro */
#tv-home-app #th-pro .ib.f {
  background: #fff !important;
  color: #0a0a10 !important;
  border-color: #fff !important;
  transform: scale(1.12);
  z-index: 10;
  box-shadow: 0 0 1.4rem rgba(255, 255, 255, .4);
}
#tv-home-app #th-pro .ib.f svg {
  color: #0a0a10 !important;
  stroke: #0a0a10 !important;
}
#tv-home-app #th-pro .ib.f .lb {
  opacity: 1;
}
#tv-home-app #th-pro .pl.f {
  background: #fff !important;
  color: #0a0a10 !important;
  border-color: #fff !important;
  transform: scale(1.06);
  box-shadow: 0 0 1.4rem rgba(255, 255, 255, .4);
}
#tv-home-app #th-pro .pl.f svg {
  color: #0a0a10 !important;
  stroke: #0a0a10 !important;
}

/* Pie Pro */
#tv-home-app #th-pro #ft {
  position: absolute;
  left: 5.1rem;
  right: 5.1rem;
  top: 57.0rem;
  display: flex;
  align-items: center;
  font-size: 1.35rem;
  color: rgba(255, 255, 255, .62);
  font-weight: 500;
  z-index: 4;
}
#tv-home-app #th-pro #ft div {
  display: flex;
  align-items: center;
  margin: 0 1.2rem;
}
#tv-home-app #th-pro #ft em {
  font-style: normal;
  margin: 0 .7rem;
}
#tv-home-app #th-pro #ft b {
  color: #fff;
  font-weight: 600;
  letter-spacing: .04em;
}
#tv-home-app #th-pro #ft i {
  width: .1rem;
  height: 1.6rem;
  background: rgba(255, 255, 255, .14);
  display: inline-block;
}

/* ====== TEMA 2: Mosaico ====== */
#tv-home-app #th2 {
  position: absolute;
  left: 0;
  top: 0;
  width: 120rem;
  height: 67.5rem;
}
#tv-home-app #th2 .cd {
  position: absolute;
  width: 17.4667rem;
  height: 22.7rem;
  border-radius: 2.4rem;
  border: .2rem solid rgba(255, 255, 255, .12);
  transition: transform .12s cubic-bezier(.2, .8, .2, 1), border-color .12s;
  cursor: pointer;
  will-change: transform;
}
#tv-home-app #th2 .cd:after {
  content: "";
  position: absolute;
  left: -.2rem;
  top: -.2rem;
  right: -.2rem;
  bottom: -.2rem;
  border-radius: 2.4rem;
  box-shadow: 0 0 1.8rem var(--g);
  opacity: 0;
  transition: opacity .12s;
  pointer-events: none;
}
#tv-home-app #th2 .in {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  border-radius: 2.2rem;
  overflow: hidden;
  background: #0c0508;
}
#tv-home-app #th2 .in > * {
  position: absolute;
}
#tv-home-app #th2 .sc,
#tv-home-app #th2 .sh {
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
#tv-home-app #th2 .sh {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, .82) 100%);
}
#tv-home-app #th2 .wm {
  right: -2.6rem;
  top: 5.4rem;
  width: 14rem;
  height: 14rem;
  opacity: .12;
  stroke-width: 1.1;
  transform: rotate(-12deg);
  color: #fff;
}
#tv-home-app #th2 .ic {
  left: 2rem;
  top: 2rem;
  width: 5.2rem;
  height: 5.2rem;
  border-radius: 1.5rem;
  background: rgba(255, 255, 255, .14);
  border: .1rem solid rgba(255, 255, 255, .24);
  display: flex;
  align-items: center;
  justify-content: center;
}
#tv-home-app #th2 .ic svg {
  width: 2.8rem;
  height: 2.8rem;
  stroke-width: 1.8;
}
#tv-home-app #th2 .t {
  left: 2rem;
  right: 1rem;
  bottom: 4.8rem;
  font-size: 1.95rem;
  font-weight: 800;
  line-height: 1.1;
  white-space: nowrap;
  text-shadow: 0 .2rem .6rem rgba(0, 0, 0, .6);
}
#tv-home-app #th2 .s {
  left: 2rem;
  right: 1.2rem;
  bottom: 2rem;
  font-size: 1.25rem;
  color: rgba(255, 255, 255, .75);
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#tv-home-app #th2 .ar {
  right: 2rem;
  top: 2.4rem;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
  background: #fff;
  color: #111;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: translateX(-.8rem);
  transition: opacity .12s, transform .12s;
}
#tv-home-app #th2 .ar svg {
  width: 1.9rem;
  height: 1.9rem;
  stroke-width: 2.6;
}
#tv-home-app #th2 .lv {
  right: 2rem;
  top: 2.4rem;
  padding: .5rem 1.3rem .5rem 1.1rem;
  border-radius: 2rem;
  background: rgba(225, 29, 72, .95);
  font-size: 1.4rem;
  font-weight: 800;
  letter-spacing: .1rem;
  display: flex;
  align-items: center;
}
#tv-home-app #th2 .lv u {
  width: .8rem;
  height: .8rem;
  border-radius: 50%;
  background: #fff;
  margin-right: .7rem;
}
#tv-home-app #th2 #c-live {
  left: 3.6rem;
  top: 10.8rem;
  width: 36.5333rem;
  height: 47rem;
  --g: rgba(225, 29, 72, .6);
}
#tv-home-app #th2 #c-movies {
  left: 41.7333rem;
  top: 10.8rem;
  width: 36.5333rem;
  --g: rgba(168, 85, 247, .55);
}
#tv-home-app #th2 #c-series {
  left: 79.8667rem;
  top: 10.8rem;
  --g: rgba(20, 184, 166, .55);
}
#tv-home-app #th2 #c-kids {
  left: 98.9333rem;
  top: 10.8rem;
  --g: rgba(244, 114, 182, .55);
}
#tv-home-app #th2 #c-sports {
  left: 41.7333rem;
  top: 35.1rem;
  --g: rgba(34, 197, 94, .55);
}
#tv-home-app #th2 #c-playlist {
  left: 60.8rem;
  top: 35.1rem;
  --g: rgba(59, 130, 246, .55);
}
#tv-home-app #th2 #c-search {
  left: 79.8667rem;
  top: 35.1rem;
  --g: rgba(6, 182, 212, .55);
}
#tv-home-app #th2 #c-downloads {
  left: 98.9333rem;
  top: 35.1rem;
  --g: rgba(245, 158, 11, .55);
}
#tv-home-app #th2 .big .ic {
  width: 7rem;
  height: 7rem;
  border-radius: 2rem;
  left: 3rem;
  top: 3rem;
}
#tv-home-app #th2 .big .ic svg {
  width: 3.8rem;
  height: 3.8rem;
}
#tv-home-app #th2 .big .t {
  left: 3rem;
  bottom: 6.6rem;
  font-size: 3.6rem;
}
#tv-home-app #th2 .big .s {
  left: 3rem;
  bottom: 3.4rem;
  font-size: 1.6rem;
}
#tv-home-app #th2 .big .wm {
  width: 34rem;
  height: 34rem;
  right: -6rem;
  top: 9rem;
}
#tv-home-app #th2 .big .ar,
#tv-home-app #th2 .wide .ar {
  top: auto;
  bottom: 2.4rem;
}
#tv-home-app #th2 .big .s,
#tv-home-app #th2 .wide .s {
  right: 8rem;
}
#tv-home-app #th2 .big .ar {
  width: 5rem;
  height: 5rem;
  right: 3rem;
  bottom: 3rem;
}
#tv-home-app #th2 .big .ar svg {
  width: 2.6rem;
  height: 2.6rem;
}
#tv-home-app #th2 .big .lv {
  right: 3rem;
  top: 3.6rem;
  font-size: 1.6rem;
}
#tv-home-app #th2 .wide .t {
  font-size: 3.6rem;
  bottom: 5.6rem;
}
#tv-home-app #th2 .wide .s {
  font-size: 1.6rem;
}
#tv-home-app #th2 .wide .wm {
  width: 20rem;
  height: 20rem;
  right: -1rem;
  top: 1rem;
}
#tv-home-app #th2 .sc.live {
  background: linear-gradient(180deg, #12213a 0%, #152d4c 40%, #103a1c 75%, #0a2812 100%);
}
#tv-home-app #th2 .sc.movies {
  background: linear-gradient(160deg, #2b1245 0%, #180922 60%, #0d0610 100%);
}
#tv-home-app #th2 .sc.series {
  background: linear-gradient(160deg, #10343a 0%, #0c2024 60%, #090c11 100%);
}
#tv-home-app #th2 .sc.kids {
  background: linear-gradient(170deg, #6a3fb0 0%, #c15fb3 55%, #2c1530 100%);
}
#tv-home-app #th2 .sc.sports {
  background: linear-gradient(160deg, #123821 0%, #0d2716 60%, #08110c 100%);
}
#tv-home-app #th2 .sc.playlist {
  background: linear-gradient(160deg, #122854 0%, #0e1c3a 60%, #080b14 100%);
}
#tv-home-app #th2 .sc.search {
  background: linear-gradient(160deg, #103747 0%, #0c232c 60%, #080e12 100%);
}
#tv-home-app #th2 .sc.downloads {
  background: linear-gradient(160deg, #442a0c 0%, #291a09 60%, #120c06 100%);
}

#tv-home-app #th2 .cd.f {
  border-color: #fff;
  transform: scale(1.03) translateZ(0);
  z-index: 3;
}
#tv-home-app #th2 .cd.f:after {
  opacity: 1;
}
#tv-home-app #th2 .cd.f .ar {
  opacity: 1;
  transform: none;
}

/* ====== BARRA INFERIOR (TEMA 2) ====== */
#tv-home-app #th2 #ft {
  position: absolute;
  left: 50%;
  top: 61rem;
  height: 4.2rem;
  padding: 0 1rem;
  margin-left: -52rem;
  width: 104rem;
  max-width: 96vw;
  border-radius: 2rem;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.65rem;
  cursor: pointer;
}
#tv-home-app #th2 #ft:hover,
#tv-home-app #th2 #ft:focus,
#tv-home-app #th2 #ft.f {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
}
#tv-home-app #th2 #ft div {
  display: flex;
  align-items: center;
  white-space: nowrap;
}
#tv-home-app #th2 #ft svg {
  width: 2.3rem;
  height: 2.3rem;
  margin-right: 0.9rem;
  color: #ffffff;
}
#tv-home-app #th2 #ft em {
  font-style: normal;
  color: rgba(255, 255, 255, 0.75);
  margin-right: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1.6rem;
  letter-spacing: 0.04em;
}
#tv-home-app #th2 #ft b {
  font-weight: 800;
  color: #ffffff;
  letter-spacing: 0.04rem;
  font-size: 1.7rem;
}
#tv-home-app #th2 #ft i {
  width: 0.15rem;
  height: 2.2rem;
  background: rgba(255, 255, 255, 0.35);
  margin: 0 1.2rem;
}

/* ====== DIÁLOGO SALIR + TOAST ====== */
#tv-home-app .ov {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, .75);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 20;
}
#tv-home-app .ov.show {
  display: flex;
}
#tv-home-app .mc {
  width: 44rem;
  padding: 3rem 3.4rem;
  border-radius: 2rem;
  border: .25rem solid var(--red);
  text-align: center;
  background: linear-gradient(160deg, #3a0f18, #1b0a10);
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, .8);
}
#tv-home-app .mc h3 {
  font-size: 2.6rem;
  font-weight: 800;
}
#tv-home-app .mc p {
  font-size: 1.6rem;
  color: var(--muted);
  margin-top: .8rem;
  font-weight: 600;
}
#tv-home-app .xr {
  display: flex;
  justify-content: center;
  margin-top: 2.4rem;
}
#tv-home-app .xb {
  width: 15rem;
  padding: 1rem 0;
  margin: 0 .8rem;
  border-radius: 1rem;
  font-size: 1.8rem;
  font-weight: 800;
  background: rgba(255, 255, 255, .12);
  border: .15rem solid rgba(255, 255, 255, .15);
  cursor: pointer;
  transition: transform .12s, background-color .12s, border-color .12s;
}
#tv-home-app .xb.f {
  background: #fff;
  color: #111;
  border-color: #fff;
  transform: scale(1.04);
}

#tv-home-app #toast {
  position: absolute;
  left: 50%;
  bottom: 1rem;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, .88);
  border: .1rem solid var(--line);
  padding: .7rem 2rem;
  border-radius: 1.2rem;
  font-size: 1.5rem;
  opacity: 0;
  transition: opacity .15s;
  pointer-events: none;
  white-space: nowrap;
  z-index: 30;
}
#tv-home-app #toast.show {
  opacity: 1;
}

/* ====== MODAL DE TEMA (5 Opciones) ====== */
#tv-home-app #tho {
  display: flex;
  visibility: hidden;
  opacity: 0;
  transition: opacity .2s, visibility 0s .2s;
}
#tv-home-app #tho.on {
  visibility: visible;
  opacity: 1;
  transition: opacity .2s;
}
#tv-home-app #thc {
  width: 118rem;
  max-width: 97vw;
  padding: 3rem 2.8rem 2.8rem;
  transform: translateY(2rem) scale(.95);
  opacity: 0;
  transition: transform .22s cubic-bezier(.2, .8, .2, 1), opacity .18s;
}
#tv-home-app #tho.on #thc {
  transform: none;
  opacity: 1;
}
#tv-home-app #tho-o {
  display: flex;
  justify-content: center;
  margin-top: 2.2rem;
}
#tv-home-app .to {
  position: relative;
  width: 21rem;
  margin: 0 .5rem;
  padding: 1.4rem 1.4rem 1.6rem;
  border-radius: 1.6rem;
  text-align: start;
  border: .2rem solid rgba(255, 255, 255, .15);
  background: rgba(255, 255, 255, .05);
  transform: translateY(1.4rem);
  opacity: 0;
  transition: transform .24s cubic-bezier(.2, .8, .2, 1), opacity .2s, border-color .12s;
  cursor: pointer;
}
#tv-home-app #tho.on .to {
  transform: none;
  opacity: 1;
}
#tv-home-app #tho.on .to:nth-child(1) { transition-delay: .06s, .06s, 0s; }
#tv-home-app #tho.on .to:nth-child(2) { transition-delay: .12s, .12s, 0s; }
#tv-home-app #tho.on .to:nth-child(3) { transition-delay: .18s, .18s, 0s; }
#tv-home-app #tho.on .to:nth-child(4) { transition-delay: .24s, .24s, 0s; }
#tv-home-app #tho.on .to:nth-child(5) { transition-delay: .30s, .30s, 0s; }
#tv-home-app #tho.on .to.f {
  transform: scale(1.03);
  transition-delay: 0s;
  border-color: #fff;
}
#tv-home-app .to b {
  display: block;
  font-size: 1.95rem;
  margin-top: 1.3rem;
  font-weight: 800;
  padding-right: 3.2rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
html[dir="rtl"] #tv-home-app .to b {
  padding-right: 0;
  padding-left: 3.2rem;
}
#tv-home-app .to small {
  display: none !important;
}
#tv-home-app .to.sel {
  border-color: var(--red);
}
#tv-home-app .to.f {
  border-color: #fff;
}
#tv-home-app .to .ck {
  position: absolute;
  right: 1.8rem;
  bottom: 1.6rem;
  width: 2.8rem;
  height: 2.8rem;
  border-radius: 50%;
  border: .2rem solid rgba(255, 255, 255, .4);
  text-align: center;
  line-height: 2.4rem;
  font-size: 1.7rem;
  font-weight: 800;
}
html[dir="rtl"] #tv-home-app .to .ck {
  right: auto;
  left: 1.8rem;
}
#tv-home-app .to.sel .ck {
  background: var(--red);
  border-color: var(--red);
}
#tv-home-app .to.sel .ck:after {
  content: "\2713";
}
#tv-home-app .pr {
  position: relative;
  height: 12.6rem;
  border-radius: 1rem;
  background: #07080f;
  overflow: hidden;
  border: .1rem solid rgba(255, 255, 255, .1);
}

/* Preview Tema 1 (Netflix) */
#tv-home-app .pr.pr-netflix {
  background: #090c13;
}
#tv-home-app .pr-netflix-sb {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 14%;
  background: #0d111a;
  border-right: .1rem solid rgba(255, 255, 255, .15);
  display: flex;
  flex-direction: column;
  padding: .8rem .4rem;
}
html[dir="rtl"] #tv-home-app .pr-netflix-sb {
  left: auto;
  right: 0;
  border-right: 0;
  border-left: .1rem solid rgba(255, 255, 255, .15);
}
#tv-home-app .pr-netflix-sb i {
  height: .4rem;
  border-radius: .2rem;
  background: rgba(255, 255, 255, .25);
  margin-bottom: .6rem;
}
#tv-home-app .pr-netflix-sb i:nth-child(2) {
  background: #e50914;
}
#tv-home-app .pr-netflix-hero {
  position: absolute;
  left: 20%;
  top: 15%;
  width: 50%;
}
html[dir="rtl"] #tv-home-app .pr-netflix-hero {
  left: auto;
  right: 20%;
}
#tv-home-app .pr-netflix-hero b {
  display: block;
  height: .9rem;
  width: 80%;
  border-radius: .3rem;
  background: #fff;
  margin: 0;
}
#tv-home-app .pr-netflix-hero small {
  display: block;
  height: .5rem;
  width: 50%;
  border-radius: .2rem;
  background: rgba(255, 255, 255, .4);
  margin-top: .4rem;
}
#tv-home-app .pr-netflix-row {
  position: absolute;
  left: 20%;
  right: 4%;
  bottom: 10%;
  height: 40%;
  display: flex;
}
html[dir="rtl"] #tv-home-app .pr-netflix-row {
  left: 4%;
  right: 20%;
}
#tv-home-app .pr-netflix-row span {
  flex: none;
  width: 15%;
  height: 100%;
  border-radius: .4rem;
  background: #141a26;
  margin-right: 3%;
  position: relative;
  overflow: hidden;
  font-size: .8rem;
  font-weight: 900;
  color: rgba(255, 255, 255, .5);
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
html[dir="rtl"] #tv-home-app .pr-netflix-row span {
  margin-right: 0;
  margin-left: 3%;
}
#tv-home-app .pr-netflix-row span.active {
  width: 32%;
  background: linear-gradient(135deg, #e50914, #2a0710);
  outline: .15rem solid #fff;
  color: #fff;
}

/* Preview Tema 2 (Pro) */
#tv-home-app .pr.pr-pro {
  background: #05060a;
}
#tv-home-app .pr-ambient {
  position: absolute;
  right: -10%;
  top: -20%;
  width: 70%;
  height: 90%;
  background: radial-gradient(circle, rgba(56, 189, 248, .35), transparent 70%);
  pointer-events: none;
}
#tv-home-app .pr-top {
  position: absolute;
  left: 6%;
  right: 6%;
  top: 7%;
  height: .8rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#tv-home-app .pr-top i:nth-child(1) { width: 1.2rem; height: .8rem; border-radius: .2rem; background: #e11d48; }
#tv-home-app .pr-top i:nth-child(2) { width: 3rem; height: .6rem; border-radius: .3rem; background: rgba(255,255,255,.2); }
#tv-home-app .pr-top i:nth-child(3) { width: 2.2rem; height: .6rem; border-radius: .3rem; background: rgba(255,255,255,.2); }
#tv-home-app .pr-hero {
  position: absolute;
  left: 6%;
  top: 20%;
  width: 45%;
}
#tv-home-app .pr-hero b {
  display: block;
  width: 70%;
  height: .7rem;
  border-radius: .35rem;
  background: #ffffff;
  margin: 0;
}
#tv-home-app .pr-hero small {
  display: block;
  width: 45%;
  height: .5rem;
  border-radius: .25rem;
  background: rgba(255, 255, 255, .4);
  margin-top: .4rem;
}
#tv-home-app .pr-cards {
  position: absolute;
  left: 6%;
  right: 6%;
  top: 40%;
  height: 4.6rem;
  display: flex;
  gap: 3.5%;
}
#tv-home-app .pr-c {
  flex: 1;
  border-radius: .5rem;
  position: relative;
}
#tv-home-app .pr-c.c-blue {
  background: linear-gradient(145deg, #2563eb, #0a1442);
  outline: .15rem solid #ffffff;
  box-shadow: 0 0 .8rem rgba(56, 189, 248, .5);
}
#tv-home-app .pr-c.c-red {
  background: linear-gradient(145deg, #be123c, #2a0710);
}
#tv-home-app .pr-c.c-purple {
  background: linear-gradient(145deg, #7c3aed, #1b0f4d);
}
#tv-home-app .pr-c.c-pink {
  background: linear-gradient(145deg, #db2777, #f97316);
}
#tv-home-app .pr-pills {
  position: absolute;
  left: 6%;
  right: 6%;
  top: 84%;
  height: .9rem;
  display: flex;
  gap: 2.5%;
}
#tv-home-app .pr-pills i {
  position: relative;
  flex: 1;
  height: 100%;
  border-radius: .4rem;
  background: rgba(255, 255, 255, .15);
  display: block;
}

/* Preview Tema 2 (Mosaico) */
#tv-home-app .pr.pr-mosaico {
  background: #14080c;
}
#tv-home-app .pr.pr-mosaico i {
  position: absolute;
  display: block;
  border-radius: .6rem;
}

/* Preview Tema 3 (Top 5 Prime/Netflix) */
#tv-home-app .pr.pr-top5 {
  background: #090c13;
}
#tv-home-app .pr-top5-bg {
  position: absolute;
  right: 0;
  top: 0;
  width: 82%;
  height: 100%;
  background: radial-gradient(circle at 80% 20%, rgba(26, 140, 255, 0.4), transparent 70%), linear-gradient(90deg, #090c13 0%, rgba(9, 12, 19, 0) 100%);
  pointer-events: none;
}
#tv-home-app .pr-top5-bar {
  position: absolute;
  left: 6%;
  right: 6%;
  top: 8%;
  height: .6rem;
  display: flex;
  justify-content: space-between;
}
#tv-home-app .pr-top5-bar i:nth-child(1) { width: 1.4rem; height: .6rem; border-radius: .2rem; background: #e50914; }
#tv-home-app .pr-top5-bar i:nth-child(2) { width: 3.5rem; height: .5rem; border-radius: .25rem; background: rgba(255, 255, 255, .25); }
#tv-home-app .pr-top5-bar i:nth-child(3) { width: 2.4rem; height: .5rem; border-radius: .25rem; background: rgba(255, 255, 255, .25); }
#tv-home-app .pr-top5-hero {
  position: absolute;
  left: 6%;
  top: 24%;
  width: 55%;
}
#tv-home-app .pr-top5-hero b {
  display: block;
  width: 80%;
  height: .75rem;
  border-radius: .35rem;
  background: #ffffff;
  margin: 0;
}
#tv-home-app .pr-top5-hero small {
  display: block;
  width: 50%;
  height: .5rem;
  border-radius: .25rem;
  background: rgba(255, 255, 255, .4);
  margin-top: .4rem;
}
#tv-home-app .pr-top5-row {
  position: absolute;
  left: 6%;
  right: 6%;
  top: 48%;
  height: 4.8rem;
  display: flex;
  gap: 2%;
}
#tv-home-app .pr-top5-row span {
  flex: 1;
  position: relative;
  display: flex;
  align-items: flex-end;
  font: 900 2.8rem/1 "Arial Black", Impact, sans-serif;
  color: #090c13;
  -webkit-text-stroke: .08rem rgba(255, 255, 255, .5);
}
#tv-home-app .pr-top5-row span i {
  position: absolute;
  left: 35%;
  top: 0;
  right: 0;
  bottom: 0;
  border-radius: .4rem;
  background: #141a26;
  border: .08rem solid rgba(255, 255, 255, .2);
}
#tv-home-app .pr-top5-row span:nth-child(1) i {
  background: linear-gradient(135deg, #2563eb, #141a26);
  border-color: #fff;
}

/* Preview Tema 4 (Sport) */
#tv-home-app .pr.pr-sport {
  background: #050d0a;
  position: relative;
}
#tv-home-app .pr-sport-pitch {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(circle at 50% 50%, rgba(34, 197, 94, .35), transparent 75%);
}
#tv-home-app .pr-sport-pitch:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 3.2rem;
  height: 3.2rem;
  margin: -1.6rem 0 0 -1.6rem;
  border-radius: 50%;
  border: .1rem solid rgba(255, 255, 255, .2);
}
#tv-home-app .pr-sport-row {
  position: absolute;
  left: 6%;
  right: 6%;
  top: 48%;
  height: 4.8rem;
  display: flex;
  gap: 4%;
}
#tv-home-app .pr-sport-row span {
  flex: 1;
  position: relative;
  background: rgba(255, 255, 255, .1);
  border-radius: .4rem;
  border-left: .25rem solid #c6ff3d;
  display: flex;
  align-items: center;
  justify-content: center;
}
#tv-home-app .pr-sport-row span:nth-child(1) {
  border-left-color: #c6ff3d;
}
#tv-home-app .pr-sport-row span:nth-child(2) {
  border-left-color: #ff3b30;
}
#tv-home-app .pr-sport-row span i {
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 50%;
  background: #c6ff3d;
  opacity: .8;
}

/* ====== RTL (Árabe) ====== */
html[lang^="ar"] body.tv-home-active,
html[dir="rtl"] body.tv-home-active,
html[lang^="ar"] #tv-home-app,
html[dir="rtl"] #tv-home-app,
html[lang^="ar"] #tv-home-app *,
html[dir="rtl"] #tv-home-app * {
  font-family: "Tajawal", "Noto Sans Arabic", "Segoe UI", Tahoma, Arial, sans-serif !important;
}
html[lang^="ar"] #tv-home-app #th2 .t,
html[dir="rtl"] #tv-home-app #th2 .t {
  font-family: "Tajawal", "Noto Sans Arabic", "Segoe UI", Tahoma, Arial, sans-serif !important;
  font-weight: 800;
}
html[dir="rtl"] #tv-home-app #th2 .t {
  font-size: 2.0rem;
  bottom: 4.6rem;
}
html[dir="rtl"] #tv-home-app #th2 .s {
  font-size: 1.25rem;
  bottom: 2.0rem;
}
html[dir="rtl"] #tv-home-app #th2 .big .t {
  font-size: 3.2rem;
  bottom: 6.2rem;
}
html[dir="rtl"] #tv-home-app #th2 .big .s {
  font-size: 1.5rem;
  bottom: 3.2rem;
}
html[lang^="ar"] #tv-home-app #th2 .lv,
html[dir="rtl"] #tv-home-app #th2 .lv,
html[lang^="ar"] #tv-home-app #th2 #ft b,
html[dir="rtl"] #tv-home-app #th2 #ft b {
  letter-spacing: 0;
}
html[dir=rtl] #tv-home-app .fl {
  transform: scaleX(-1);
}
/* Play buttons must NEVER be mirrored - play icon always points right regardless of text direction */
html[dir=rtl] #tv-home-app #th1 .hb .fl,
html[dir=rtl] #tv-home-app #th3 .hb .fl {
  transform: none;
}
html[dir=rtl] #tv-home-app #th2 #logo {
  left: auto;
  right: 3.6rem;
}
html[dir=rtl] #tv-home-app #th2 #info {
  left: auto;
  right: 11.6rem;
  width: 25rem;
  height: 7.6rem;
  padding: .5rem 1.2rem;
  box-sizing: border-box;
}
html[dir="rtl"] #tv-home-app #th2 #tm {
  font-size: 1.7rem;
  line-height: 1.1;
  margin-top: .1rem;
  white-space: nowrap;
}
html[dir="rtl"] #tv-home-app #th2 #dt {
  font-size: 1.05rem;
  line-height: 1.2;
}
html[dir="rtl"] #tv-home-app #th2 #loc {
  font-size: 1.2rem;
  line-height: 1.2;
}
html[dir=rtl] #tv-home-app #th2 #info .w {
  border-left: 0;
  border-right: .1rem solid rgba(255, 255, 255, .14);
  padding-left: 0;
  padding-right: 1.1rem;
}
html[dir=rtl] #tv-home-app #th2 #icons {
  right: auto;
  left: 3.6rem;
}
html[dir=rtl] #tv-home-app #th2 .ib {
  margin-left: 0;
  margin-right: 1.5rem;
}
html[dir=rtl] #tv-home-app #th2 .ib u {
  right: auto;
  left: .7rem;
}
html[dir=rtl] #tv-home-app #th2 #ft svg {
  margin: 0 0 0 0.9rem;
}
html[dir=rtl] #tv-home-app #th2 #ft em {
  margin: 0 0 0 0.7rem;
}
html[dir=rtl] #tv-home-app #th2 #ft b {
  direction: ltr;
  unicode-bidi: isolate;
}
html[dir=rtl] #tv-home-app .to .ck {
  right: auto;
  left: 1.8rem;
}
html[dir=rtl] #tv-home-app #th-themes .pr,
html[dir=rtl] #tv-home-app .to .pr {
  transform: scaleX(-1);
}
/* Hero buttons must NEVER be mirrored horizontally in RTL */
html[dir=rtl] #tv-home-app .hb,
html[dir=rtl] #tv-home-app .hb.pr {
  transform: none !important;
}
html[dir=rtl] #tv-home-app #th1 .hb.f,
html[dir=rtl] #tv-home-app #th3 .hb.f {
  transform: scale(1.06) !important;
}
html[dir=rtl] #tv-home-app #th2 #c-live {
  left: 79.8667rem;
}
html[dir=rtl] #tv-home-app #th2 #c-series,
html[dir=rtl] #tv-home-app #th2 #c-search {
  left: 22.6667rem;
}
html[dir=rtl] #tv-home-app #th2 #c-kids,
html[dir=rtl] #tv-home-app #th2 #c-downloads {
  left: 3.6rem;
}
html[dir=rtl] #tv-home-app #th2 #c-sports {
  left: 60.8rem;
}
html[dir=rtl] #tv-home-app #th2 #c-playlist {
  left: 41.7333rem;
}
html[dir=rtl] #tv-home-app #th2 .wm {
  right: auto;
  left: -2.6rem;
  transform: rotate(12deg);
}
html[dir=rtl] #tv-home-app #th2 .ic {
  left: auto;
  right: 2rem;
}
html[dir=rtl] #tv-home-app #th2 .t {
  left: 1rem;
  right: 2rem;
  font-size: 1.8rem;
}
html[dir=rtl] #tv-home-app #th2 .s {
  left: 1.2rem;
  right: 2rem;
  font-size: 1.15rem;
}
html[dir=rtl] #tv-home-app #th2 .ar {
  right: auto;
  left: 2rem;
  transform: translateX(.8rem);
}
html[dir=rtl] #tv-home-app #th2 .lv {
  right: auto;
  left: 2rem;
  padding: .5rem 1.1rem .5rem 1.3rem;
}
html[dir=rtl] #tv-home-app #th2 .lv u {
  margin: 0 0 0 .7rem;
}
html[dir=rtl] #tv-home-app #th2 .big .ic {
  left: auto;
  right: 3rem;
}
html[dir=rtl] #tv-home-app #th2 .big .t {
  left: 1rem;
  right: 3rem;
  font-size: 2.7rem;
}
html[dir=rtl] #tv-home-app #th2 .big .s {
  left: 8rem;
  right: 3rem;
  font-size: 1.25rem;
}
html[dir=rtl] #tv-home-app #th2 .wide .s {
  left: 8rem;
  right: 2rem;
}
html[dir=rtl] #tv-home-app #th2 .big .wm {
  right: auto;
  left: -6rem;
}
html[dir=rtl] #tv-home-app #th2 .wide .wm {
  right: auto;
  left: -1rem;
}
html[dir=rtl] #tv-home-app #th2 .big .ar {
  right: auto;
  left: 3rem;
}
html[dir=rtl] #tv-home-app #th2 .big .lv {
  right: auto;
  left: 3rem;
}

/* RTL Typography & Sizing optimizations for Theme 1, 3 and 5 (Tajawal) */
html[dir="rtl"] #tv-home-app #th1 #sb.ex {
  width: 28rem;
}
html[dir="rtl"] #tv-home-app #th1 .mi span {
  font-size: 1.48rem;
  margin: 0 1.0rem;
  font-weight: 700;
  letter-spacing: 0;
}
html[dir="rtl"] #tv-home-app #th1 #bn {
  font-size: 2.0rem;
  margin: 0 1.2rem;
}
html[dir="rtl"] #tv-home-app #th1 #l5 {
  font-size: 1.65rem;
}
html[dir="rtl"] #tv-home-app #th1 #bdg span {
  font-size: 1.45rem;
}
html[dir="rtl"] #tv-home-app #th1 .hb {
  font-size: 1.75rem;
  padding: 0 2.2rem;
}

html[dir="rtl"] #tv-home-app #th3 #tbs3 .tab {
  font-size: 1.75rem;
  padding: 0 1.6rem;
  font-weight: 700;
}
html[dir="rtl"] #tv-home-app #th3 .hb {
  font-size: 1.75rem;
  padding: 0 2rem;
}
html[dir="rtl"] #tv-home-app #th3 #l5-3 {
  font-size: 1.65rem;
}
html[dir="rtl"] #tv-home-app #th3 .pl span {
  font-size: 1.45rem;
}

html[dir="rtl"] #tv-home-app #th4 .t {
  font-size: 1.8rem;
}
html[dir="rtl"] #tv-home-app #th4 .s {
  font-size: 1.2rem;
}
html[dir="rtl"] #tv-home-app #th4 .hb {
  font-size: 1.75rem;
}
html[dir="rtl"] #tv-home-app #th4 .pl span {
  font-size: 1.45rem;
}


/* ==========================================================================
   TEMA 3: TOP 5 (Estilo Prime Video / Netflix con Banner Dinámico)
   - Sin sombras blur, sin filtros pesados, sin fuentes web externas.
   - Pura opacidad y transform 60 FPS.
   - D-Pad espacial 4 filas: 0 Tabs/Iconos · 1 Botones Hero · 2 Top 5 · 3 Accesos Rápidos
   - Auto-inversión RTL para Árabe.
   - Detección de bajo rendimiento (.lite).
   ========================================================================== */

#tv-home-app.th3-active,
#tv-home-app:has(#th3) {
  background: #090c13 !important;
}

#tv-home-app #th3 {
  --bg: #090c13;
  --mut: rgba(255, 255, 255, .68);
  --glass: rgba(255, 255, 255, .12);
  --line: rgba(255, 255, 255, .18);
  --ac: #e50914;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #090c13;
}

/* Fondo: 2 capas que se funden (solo opacity) + 3 degradados fijos */
#tv-home-app #th3 .bd {
  position: absolute;
  top: 0;
  right: 0;
  width: 82%;
  height: 100%;
  opacity: 0;
  transition: opacity .5s ease-out;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  pointer-events: none;
}
#tv-home-app #th3 .bd.on {
  opacity: 1;
}
html[dir=rtl] #tv-home-app #th3 .bd {
  right: auto;
  left: 0;
}
#tv-home-app #th3 #s1-3,
#tv-home-app #th3 #s2-3,
#tv-home-app #th3 #s3-3 {
  position: absolute;
  left: 0;
  right: 0;
  pointer-events: none;
}
#tv-home-app #th3 #s1-3 {
  top: 0;
  bottom: 0;
  background: linear-gradient(90deg, #090c13 0, #090c13 18%, rgba(9, 12, 19, .8) 42%, rgba(9, 12, 19, 0) 78%);
}
html[dir=rtl] #tv-home-app #th3 #s1-3 {
  background: linear-gradient(270deg, #090c13 0, #090c13 18%, rgba(9, 12, 19, .8) 42%, rgba(9, 12, 19, 0) 78%);
}
#tv-home-app #th3 #s2-3 {
  bottom: 0;
  height: 58%;
  background: linear-gradient(0deg, #090c13 10%, rgba(9, 12, 19, .88) 36%, rgba(9, 12, 19, 0) 100%);
}
#tv-home-app #th3 #s3-3 {
  top: 0;
  height: 20%;
  background: linear-gradient(180deg, rgba(9, 12, 19, .75), rgba(9, 12, 19, 0));
}

/* Barra superior: logo + pestañas + iconos */
#tv-home-app #th3 #tb3 {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 2.2rem;
  height: 4.8rem;
  display: flex;
  align-items: center;
  z-index: 5;
}
#tv-home-app #th3 #brand3 {
  display: flex;
  align-items: center;
  margin: 0 3.2rem 0 0;
}
html[dir=rtl] #tv-home-app #th3 #brand3 {
  margin: 0 0 0 3.2rem;
}
#tv-home-app #th3 #logo3 {
  width: 4.6rem;
  height: 4.6rem;
  border-radius: 0;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}
#tv-home-app #th3 #logo3 b {
  font-size: 2.6rem;
  font-weight: 800;
  color: #fff;
}
#tv-home-app #th3 #logo3 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 .2rem .6rem rgba(0, 0, 0, .45));
}
#tv-home-app #th3 #bn3 {
  display: none !important;
}
#tv-home-app #th3 #tabs3 {
  display: flex;
  flex: 1;
  align-items: center;
}
#tv-home-app #th3 .tab {
  position: relative;
  height: 4.4rem;
  padding: 0 2.2rem;
  margin: 0 .3rem;
  border-radius: 2.2rem;
  display: flex;
  align-items: center;
  font-size: 2rem;
  color: var(--mut);
  white-space: nowrap;
  transition: transform .15s, background-color .15s, color .15s;
  cursor: pointer;
}
#tv-home-app #th3 .tab i {
  width: .8rem;
  height: .8rem;
  border-radius: 50%;
  background: #ff3b4a;
  margin: 0 .8rem;
}
#tv-home-app #th3 #ics3 {
  display: flex;
  align-items: center;
}
#tv-home-app #th3 .ib {
  width: 4.4rem;
  height: 4.4rem;
  margin: 0 .5rem;
  border-radius: 50%;
  position: relative;
  background: var(--glass);
  border: .1rem solid var(--line);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .15s, background-color .15s, color .15s;
  cursor: pointer;
  color: #fff;
}
#tv-home-app #th3 .ib .ic {
  width: 2.1rem;
  height: 2.1rem;
}
#tv-home-app #th3 .ib u {
  position: absolute;
  right: .8rem;
  top: .8rem;
  width: .9rem;
  height: .9rem;
  border-radius: 50%;
  background: #ff3b4a;
  display: none;
}
html[dir=rtl] #tv-home-app #th3 .ib u {
  right: auto;
  left: .8rem;
}
#tv-home-app #th3 .ib.dot u {
  display: block;
}
#tv-home-app #th3 .lb {
  position: absolute;
  top: calc(100% + 1rem);
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  color: #0a0e15;
  font-size: 1.3rem;
  font-weight: 700;
  padding: .4rem 1.1rem;
  border-radius: .8rem;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  z-index: 6;
}
#tv-home-app #th3 .ib.f > .lb {
  opacity: 1;
}

/* Hero */
#tv-home-app #th3 #hero3 {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 9rem;
  z-index: 4;
}
#tv-home-app #th3 #hw3 {
  max-width: 68rem;
}
#tv-home-app #th3 #hero3.rs #hw3 {
  animation: rise3 .35s ease-out;
}
@keyframes rise3 {
  from { opacity: 0; transform: translateY(1rem); }
  to { opacity: 1; transform: none; }
}
#tv-home-app #th3 #bdg3 {
  display: inline-flex;
  align-items: center;
  height: 2.8rem;
  padding: 0 1.2rem;
  border-radius: .7rem;
  background: var(--ac);
  font-size: 1.5rem;
  font-weight: 800;
  color: #fff;
}
#tv-home-app #th3 #bdg3 b {
  margin: 0 .7rem 0 0;
  font-weight: 900;
}
html[dir=rtl] #tv-home-app #th3 #bdg3 b {
  margin: 0 0 0 .7rem;
}
#tv-home-app #th3 #hl3 {
  margin-top: 1rem;
  font-size: 5.4rem;
  line-height: 6.2rem;
  font-weight: 900;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #fff;
}
#tv-home-app #th3 #hl3.ar-title {
  font-family: 'Tajawal', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 3.8rem !important;
  line-height: 4.8rem !important;
  font-weight: 800;
}
#tv-home-app #th3 #mt3 {
  margin-top: 1rem;
  height: 2.4rem;
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  color: var(--mut);
  font-weight: 600;
}
#tv-home-app #th3 #mt3 span {
  display: flex;
  align-items: center;
}
#tv-home-app #th3 #mt3 span + span:before {
  content: "";
  width: .4rem;
  height: .4rem;
  border-radius: 50%;
  background: var(--mut);
  margin: 0 1rem;
}
#tv-home-app #th3 #mt3 .ic {
  width: 1.9rem;
  height: 1.9rem;
  margin: 0 .5rem;
  color: #ffc933;
}
#tv-home-app #th3 #hs3 {
  margin-top: 1rem;
  font-size: 1.65rem;
  line-height: 2.4rem;
  height: 4.8rem;
  overflow: hidden;
  color: var(--mut);
  font-weight: 500;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
#tv-home-app #th3 #hbs3 {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 29.3rem;
  display: flex;
  z-index: 5;
}
#tv-home-app #th3 .hb {
  height: 5rem;
  padding: 0 2.6rem;
  margin: 0 .8rem 0 0;
  border-radius: 2.5rem;
  display: flex;
  align-items: center;
  font-size: 2rem;
  font-weight: 700;
  background: var(--glass);
  border: .1rem solid var(--line);
  color: #fff;
  transition: transform .15s, background-color .15s, color .15s;
  cursor: pointer;
}
html[dir=rtl] #tv-home-app #th3 .hb {
  margin: 0 0 0 .8rem;
}
#tv-home-app #th3 .hb.pr {
  background: var(--ac);
  border-color: var(--ac);
  color: #fff;
}
#tv-home-app #th3 .hb .ic {
  width: 2.4rem;
  height: 2.4rem;
  margin: 0 .6rem 0 0;
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
}
html[dir=rtl] #tv-home-app #th3 .hb .ic {
  margin: 0 0 0 .6rem;
}
#tv-home-app #th3 .hb span {
  margin: 0 .5rem;
}

/* Top 5 con números enormes */
#tv-home-app #th3 #l5-3 {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 36.4rem;
  height: 3rem;
  display: flex;
  align-items: center;
  font-size: 2.6rem;
  font-weight: 800;
  color: #fff;
  z-index: 5;
}
#tv-home-app #th3 #l5-3 i {
  width: .6rem;
  height: 2.6rem;
  border-radius: .3rem;
  background: var(--ac);
  margin: 0 1.2rem 0 0;
}
html[dir=rtl] #tv-home-app #th3 #l5-3 i {
  margin: 0 0 0 1.2rem;
}
#tv-home-app #th3 #top3 {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 40.4rem;
  height: 16.2rem;
  display: flex;
  z-index: 5;
}
#tv-home-app #th3 .pi {
  flex: 1;
  position: relative;
  display: flex;
  align-items: flex-end;
  height: 16.2rem;
  cursor: pointer;
}
#tv-home-app #th3 .nm {
  width: 11rem;
  height: 16.2rem;
  margin: 0 -2rem 0 0;
  text-align: center;
  direction: ltr;
  unicode-bidi: isolate;
  font: 900 20rem/16.2rem "Arial Black", Impact, Roboto, sans-serif;
  letter-spacing: -.06em;
  color: var(--bg);
  -webkit-text-stroke: .3rem rgba(255, 255, 255, .5);
  transition: color .15s, -webkit-text-stroke-color .15s;
  pointer-events: none;
}
html[dir=rtl] #tv-home-app #th3 .nm {
  margin: 0 0 0 -2rem;
}
#tv-home-app #th3 .po {
  position: relative;
  z-index: 1;
  width: 10.8rem;
  height: 16.2rem;
  border-radius: 1.2rem;
  overflow: hidden;
  background: #141a26;
  transition: transform .15s;
}
#tv-home-app #th3 .po .art {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
#tv-home-app #th3 .po:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 60%;
  background: linear-gradient(0deg, rgba(0, 0, 0, .7), rgba(0, 0, 0, 0));
  z-index: 1;
}
#tv-home-app #th3 .pi.hi .po:before,
#tv-home-app #th3 .pi.hi .pt {
  display: none;
}
#tv-home-app #th3 .pt {
  position: absolute;
  left: 1rem;
  right: 1rem;
  bottom: 1.1rem;
  z-index: 2;
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: 800;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #fff;
}
#tv-home-app #th3 .po:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  border-radius: 1.2rem;
  border: .3rem solid #fff;
  opacity: 0;
  z-index: 3;
  transition: opacity .15s;
}
#tv-home-app #th3 .pi.f .po {
  transform: scale(1.07);
}
#tv-home-app #th3 .pi.f .po:after {
  opacity: 1;
}
#tv-home-app #th3 .pi.f .nm {
  color: #fff;
  -webkit-text-stroke-color: #fff;
}
#tv-home-app #th3 .pi.active-hero:not(.f) .po:after {
  opacity: .55;
  border-color: var(--ac);
}
#tv-home-app #th3 .pi.active-hero:not(.f) .nm {
  color: #fff;
  -webkit-text-stroke-color: var(--ac);
}

/* Accesos rápidos */
#tv-home-app #th3 #pls3 {
  position: absolute;
  left: 6.4rem;
  right: 6.4rem;
  top: 58.4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  z-index: 5;
}
#tv-home-app #th3 .pl {
  margin: 0 .6rem;
  height: 4rem;
  padding: 0 1.4rem;
  border-radius: 2rem;
  background: var(--glass);
  border: .1rem solid var(--line);
  color: #fff;
  display: flex;
  align-items: center;
  font-size: 1.6rem;
  white-space: nowrap;
  transition: transform .15s, background-color .15s, color .15s;
  cursor: pointer;
}
#tv-home-app #th3 .pl .ic {
  width: 2rem;
  height: 2rem;
  margin: 0 .5rem;
}
#tv-home-app #th3 .pl span {
  margin: 0 .5rem;
}

/* Foco: blanco */
#tv-home-app #th3 .tab.f,
#tv-home-app #th3 .ib.f,
#tv-home-app #th3 .hb.f,
#tv-home-app #th3 .pl.f {
  background: #fff !important;
  color: #0a0e15 !important;
  border-color: #fff !important;
}
#tv-home-app #th3 .tab.f { transform: scale(1.05); }
#tv-home-app #th3 .ib.f { transform: scale(1.12); }
#tv-home-app #th3 .hb.f { transform: scale(1.06); }
#tv-home-app #th3 .pl.f { transform: scale(1.06); }

/* Pie */
#tv-home-app #th3 #ft3 {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 63.8rem;
  height: 3rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.3rem;
  color: var(--mut);
  font-weight: 500;
  z-index: 5;
  cursor: pointer;
}
#tv-home-app #th3 #ft3 .fg {
  display: flex;
  align-items: center;
}
#tv-home-app #th3 #ft3 .fg > div {
  display: flex;
  align-items: center;
  margin: 0 1rem;
  white-space: nowrap;
}
#tv-home-app #th3 #ft3 em {
  font-style: normal;
  margin: 0 .6rem;
  font-weight: 600;
  color: var(--mut);
}
#tv-home-app #th3 #ft3 b {
  color: #fff;
  font-weight: 700;
}
#tv-home-app #th3 #ft3 .vs {
  width: .1rem;
  height: 1.5rem;
  background: var(--line);
}
#tv-home-app #th3 #sub {
  height: 2.8rem;
  padding: 0 1.3rem;
  border-radius: 1.4rem;
  background: var(--glass);
  border: .1rem solid var(--line);
  display: flex;
  align-items: center;
}
#tv-home-app #th3 #sub i {
  width: .8rem;
  height: .8rem;
  border-radius: 50%;
  background: #34d399;
  margin: 0 .7rem;
}
#tv-home-app #th3 #sub.warn i { background: #fbbf24; }
#tv-home-app #th3 #sub.bad i { background: #f43f5e; }
#tv-home-app #th3 #wx {
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  display: flex;
  align-items: center;
}
#tv-home-app #th3 #wx svg {
  width: 2.2rem;
  height: 2.2rem;
  margin: 0 .5rem;
  color: #fbbf24;
}
#tv-home-app #th3 #tm {
  font-size: 2.4rem;
  font-weight: 700;
  color: #fff;
  font-variant-numeric: tabular-nums;
}
#tv-home-app #th3 #dt {
  margin: 0 1rem;
}

/* Modo ligero (Lite) */
html.lite #tv-home-app #th3 *,
#tv-home-app.lite #th3 * {
  transition: none !important;
  animation: none !important;
}

/* Skeleton Loading para Top 5 y Hero */
#tv-home-app #th3 .pi.skel .po {
  background: #141a26;
  position: relative;
}
#tv-home-app #th3 .pi.skel .po .art {
  background: linear-gradient(90deg, #131a26 0%, #1e293b 50%, #131a26 100%) !important;
  background-size: 200% 100% !important;
  animation: skelShimmer 1.5s infinite linear;
}
#tv-home-app #th3 .pi.skel .pt {
  display: none !important;
}
#tv-home-app #th3 #hero3.skel-hero #hl3 {
  width: 48rem;
  max-width: 80%;
  height: 5.2rem;
  border-radius: 1rem;
  background: linear-gradient(90deg, rgba(255,255,255,.08) 0%, rgba(255,255,255,.18) 50%, rgba(255,255,255,.08) 100%);
  background-size: 200% 100%;
  animation: skelShimmer 1.5s infinite linear;
}
#tv-home-app #th3 #hero3.skel-hero #mt3 {
  width: 24rem;
  height: 2.2rem;
  margin-top: 1.2rem;
  border-radius: .6rem;
  background: linear-gradient(90deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.14) 50%, rgba(255,255,255,.06) 100%);
  background-size: 200% 100%;
  animation: skelShimmer 1.5s infinite linear;
}
#tv-home-app #th3 #hero3.skel-hero #hs3 {
  width: 40rem;
  max-width: 70%;
  height: 3.6rem;
  margin-top: 1.2rem;
  border-radius: .8rem;
  background: linear-gradient(90deg, rgba(255,255,255,.05) 0%, rgba(255,255,255,.12) 50%, rgba(255,255,255,.05) 100%);
  background-size: 200% 100%;
  animation: skelShimmer 1.5s infinite linear;
}
@keyframes skelShimmer {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* =========================================================================
   TEMA 4: SPORT HOME (Estilo Deportivo, Campo de Césped, Marcadores y Lima)
   ========================================================================= */
#tv-home-app #th4 {
  --mut: rgba(255, 255, 255, .68);
  --glass: rgba(255, 255, 255, .12);
  --line: rgba(255, 255, 255, .18);
  --lime: #c6ff3d;
  --red: #ff3b30;
  --ink: #06110d;
  --p1: polygon(2.4rem 0, 100% 0, calc(100% - 2.4rem) 100%, 0 100%);
  --p2: polygon(1rem 0, 100% 0, calc(100% - 1rem) 100%, 0 100%);
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  background: #050d0a;
}
html[dir=rtl] #tv-home-app #th4 {
  --p1: polygon(0 0, calc(100% - 2.4rem) 0, 100% 100%, 2.4rem 100%);
  --p2: polygon(0 0, calc(100% - 1rem) 0, 100% 100%, 1rem 100%);
}
#tv-home-app #th4 .cn {
  font-family: "Arial Narrow", "Roboto Condensed", Impact, "Arial Black", Roboto, sans-serif;
  font-style: italic;
  font-weight: 900;
}
html[dir=rtl] #tv-home-app #th4 .cn {
  font-style: normal;
  font-family: 'Tajawal', 'Noto Sans Arabic', -apple-system, sans-serif !important;
  font-weight: 800;
}
#tv-home-app #th4 #stage {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 120rem;
  height: 67.5rem;
  margin: -33.75rem 0 0 -60rem;
}
#tv-home-app #th4 #pitch {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
html[dir=rtl] #tv-home-app #th4 #pitch {
  transform: scaleX(-1);
}
#tv-home-app #th4 .bg {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  transition: opacity .6s;
}
#tv-home-app #th4 .bg.on { opacity: 1; }
html[dir=rtl] #tv-home-app #th4 .bg { transform: scaleX(-1); }
#tv-home-app #th4 .bg.live {
  background: radial-gradient(85% 70% at 85% -5%, rgba(34, 197, 94, .5), transparent 66%), radial-gradient(60% 55% at 0 105%, rgba(198, 255, 61, .16), transparent 70%);
}
#tv-home-app #th4 .bg.movies {
  background: radial-gradient(85% 70% at 85% -5%, rgba(244, 63, 94, .5), transparent 66%), radial-gradient(60% 55% at 0 105%, rgba(251, 146, 60, .2), transparent 70%);
}
#tv-home-app #th4 .bg.series {
  background: radial-gradient(85% 70% at 85% -5%, rgba(139, 92, 246, .55), transparent 66%), radial-gradient(60% 55% at 0 105%, rgba(59, 130, 246, .18), transparent 70%);
}
#tv-home-app #th4 .bg.kids {
  background: radial-gradient(85% 70% at 85% -5%, rgba(251, 191, 36, .5), transparent 66%), radial-gradient(60% 55% at 0 105%, rgba(244, 114, 182, .2), transparent 70%);
}

/* Barra superior */
#tv-home-app #th4 #tb {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 2.2rem;
  height: 4.8rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#tv-home-app #th4 #brand {
  display: flex;
  align-items: center;
}
#tv-home-app #th4 #logo {
  width: 4.8rem;
  height: 4.8rem;
  border-radius: 0;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
}
#tv-home-app #th4 #logo b {
  font-size: 2.6rem;
  font-weight: 800;
  color: #fff;
}
#tv-home-app #th4 #logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 .2rem .6rem rgba(0, 0, 0, .45));
}
#tv-home-app #th4 #bn {
  display: none !important;
}
#tv-home-app #th4 #rt {
  display: flex;
  align-items: center;
}
#tv-home-app #th4 #sb {
  display: flex;
  align-items: center;
  height: 4.6rem;
  padding: 0 2.6rem;
  background: rgba(255, 255, 255, .1);
  -webkit-clip-path: var(--p2);
  clip-path: var(--p2);
}
#tv-home-app #th4 #sb > * {
  margin: 0 1rem;
}
#tv-home-app #th4 #sub {
  display: flex;
  align-items: center;
  font-size: 1.5rem;
  white-space: nowrap;
}
#tv-home-app #th4 #sub i {
  width: .9rem;
  height: .9rem;
  border-radius: 50%;
  background: #34d399;
  margin: 0 .8rem;
}
#tv-home-app #th4 #sub.warn i { background: #fbbf24; }
#tv-home-app #th4 #sub.bad i { background: var(--red); }
#tv-home-app #th4 #wx {
  display: flex;
  align-items: center;
  font-size: 2rem;
}
#tv-home-app #th4 #wx svg {
  width: 2.4rem;
  height: 2.4rem;
  margin: 0 .6rem;
  color: #fbbf24;
}
#tv-home-app #th4 #clk {
  text-align: end;
}
#tv-home-app #th4 #tm {
  display: block;
  font-size: 2.8rem;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
#tv-home-app #th4 #dt {
  display: block;
  font-size: 1.2rem;
  color: var(--mut);
  font-weight: 500;
  margin-top: .3rem;
  white-space: nowrap;
}
#tv-home-app #th4 #ics {
  display: flex;
  margin: 0 -.5rem 0 1.4rem;
}
#tv-home-app #th4 .ib {
  width: 4.4rem;
  height: 4.4rem;
  margin: 0 .5rem;
  border-radius: .9rem;
  position: relative;
  background: var(--glass);
  border: .1rem solid var(--line);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .15s, background-color .15s, color .15s;
  cursor: pointer;
}
#tv-home-app #th4 .ib .ic {
  width: 2.1rem;
  height: 2.1rem;
}
#tv-home-app #th4 .ib u {
  position: absolute;
  right: .7rem;
  top: .7rem;
  width: .9rem;
  height: .9rem;
  border-radius: 50%;
  background: var(--red);
  display: none;
}
html[dir=rtl] #tv-home-app #th4 .ib u {
  right: auto;
  left: .7rem;
}
#tv-home-app #th4 .ib.dot u {
  display: block;
}
#tv-home-app #th4 .lb {
  position: absolute;
  top: calc(100% + 1rem);
  left: 50%;
  transform: translateX(-50%);
  background: var(--lime);
  color: var(--ink);
  font-size: 1.3rem;
  font-weight: 800;
  padding: .4rem 1.1rem;
  border-radius: .6rem;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  z-index: 3;
}
#tv-home-app #th4 .ib.f > .lb {
  opacity: 1;
}

/* Titular Hero */
#tv-home-app #th4 #hero {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 9rem;
}
#tv-home-app #th4 #hero.rs {
  animation: sportRise .35s ease-out;
}
@keyframes sportRise {
  from { opacity: 0; transform: translateY(1rem); }
  to { opacity: 1; transform: none; }
}
#tv-home-app #th4 #hl {
  font-size: 5rem;
  line-height: 5.6rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #fff;
}
#tv-home-app #th4 #hs {
  margin-top: 1rem;
  font-size: 2rem;
  height: 2.4rem;
  color: var(--mut);
  font-weight: 500;
}

/* Categorias */
#tv-home-app #th4 #tiles {
  position: absolute;
  left: 6.1rem;
  right: 6.1rem;
  top: 19rem;
  height: 15.4rem;
  display: flex;
}
#tv-home-app #th4 .cd {
  flex: 1;
  margin: 0 .6rem;
  position: relative;
  padding: .3rem;
  -webkit-clip-path: var(--p1);
  clip-path: var(--p1);
  transition: transform .15s, background-color .15s;
  cursor: pointer;
}
#tv-home-app #th4 .cd.f {
  background: var(--lime);
  transform: scale(1.05);
  z-index: 2;
}
#tv-home-app #th4 .in {
  position: absolute;
  left: .3rem;
  top: .3rem;
  right: .3rem;
  bottom: .3rem;
  overflow: hidden;
  background: #0b140f;
  -webkit-clip-path: var(--p1);
  clip-path: var(--p1);
}
#tv-home-app #th4 .in > * {
  position: absolute;
}
#tv-home-app #th4 .art,
#tv-home-app #th4 .sh,
#tv-home-app #th4 .dm {
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
#tv-home-app #th4 .art {
  background-size: cover;
  background-position: center;
}
#tv-home-app #th4 .a-live {
  background: repeating-linear-gradient(100deg, rgba(255,255,255,.07) 0 2.6rem, rgba(255,255,255,0) 2.6rem 5.2rem), linear-gradient(135deg, #16a34a, #052e16);
}
#tv-home-app #th4 .a-movies {
  background: repeating-linear-gradient(100deg, rgba(255,255,255,.06) 0 2.6rem, rgba(255,255,255,0) 2.6rem 5.2rem), linear-gradient(135deg, #e11d48, #3b0614);
}
#tv-home-app #th4 .a-series {
  background: repeating-linear-gradient(100deg, rgba(255,255,255,.06) 0 2.6rem, rgba(255,255,255,0) 2.6rem 5.2rem), linear-gradient(135deg, #7c3aed, #1b0f4d);
}
#tv-home-app #th4 .a-kids {
  background: repeating-linear-gradient(100deg, rgba(255,255,255,.08) 0 2.6rem, rgba(255,255,255,0) 2.6rem 5.2rem), linear-gradient(150deg, #f59e0b, #be185d);
}
#tv-home-app #th4 .sh {
  background: linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(0,0,0,.72) 100%);
}
#tv-home-app #th4 .dm {
  background: var(--bg);
  opacity: .5;
  transition: opacity .15s;
}
#tv-home-app #th4 .cd.f .dm {
  opacity: 0;
}
#tv-home-app #th4 .tp {
  left: 3.4rem;
  right: 3.4rem;
  top: 1.8rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
#tv-home-app #th4 .ci {
  width: 5.4rem;
  height: 5.4rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, .18);
  border: .15rem solid rgba(255, 255, 255, .3);
  display: flex;
  align-items: center;
  justify-content: center;
}
#tv-home-app #th4 .ci .ic {
  width: 2.8rem;
  height: 2.8rem;
}
#tv-home-app #th4 .tg {
  display: flex;
  align-items: center;
  background: var(--red);
  font-size: 1.3rem;
  font-weight: 900;
  padding: .4rem 1rem;
  border-radius: .5rem;
}
#tv-home-app #th4 .tg i {
  width: .7rem;
  height: .7rem;
  border-radius: 50%;
  background: #fff;
  margin: 0 .6rem;
}
#tv-home-app #th4 .tx {
  left: 3.4rem;
  right: 3.4rem;
  bottom: 2rem;
}
#tv-home-app #th4 .t {
  font-size: 2.2rem;
  line-height: 1.15;
  font-weight: 800;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#tv-home-app #th4 .s {
  display: none !important;
}

/* Partidos del dia */
#tv-home-app #th4 #l5 {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 36.2rem;
  height: 3rem;
  display: flex;
  align-items: center;
  font-size: 2.6rem;
}
#tv-home-app #th4 #l5 i {
  width: 1rem;
  height: 2.6rem;
  margin: 0 1.2rem 0 0;
  background: var(--lime);
  transform: skewX(-18deg);
}
html[dir=rtl] #tv-home-app #th4 #l5 i {
  margin: 0 0 0 1.2rem;
  transform: skewX(18deg);
}
#tv-home-app #th4 #mts {
  position: absolute;
  left: 6.1rem;
  right: 6.1rem;
  top: 39.8rem;
  height: 15.8rem;
  display: flex;
}
#tv-home-app #th4 .mt {
  flex: 1;
  margin: 0 .6rem;
  position: relative;
  padding: .3rem;
  background: rgba(255, 255, 255, .16);
  -webkit-clip-path: var(--p1);
  clip-path: var(--p1);
  transition: transform .15s, background-color .15s;
  cursor: pointer;
}
#tv-home-app #th4 .mt.f {
  background: var(--lime);
  transform: scale(1.03);
  z-index: 2;
}
#tv-home-app #th4 .mi {
  position: absolute;
  left: .3rem;
  top: .3rem;
  right: .3rem;
  bottom: .3rem;
  overflow: hidden;
  background: #0b140f;
  -webkit-clip-path: var(--p1);
  clip-path: var(--p1);
}
#tv-home-app #th4 .mi > * {
  position: absolute;
}
#tv-home-app #th4 .gw {
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  opacity: .45;
}
#tv-home-app #th4 .mh {
  left: 3.4rem;
  right: 3.4rem;
  top: 1.3rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1.5rem;
  color: var(--mut);
  font-weight: 600;
}
#tv-home-app #th4 .mh > span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#tv-home-app #th4 .st {
  display: flex;
  align-items: center;
  flex: none;
  margin: 0 0 0 1rem;
  color: #fff;
  font-weight: 800;
}
html[dir=rtl] #tv-home-app #th4 .st {
  margin: 0 1rem 0 0;
}
#tv-home-app #th4 .st i {
  width: .9rem;
  height: .9rem;
  border-radius: 50%;
  background: var(--red);
  margin: 0 .6rem;
  display: none;
}
#tv-home-app #th4 .st.lv i {
  display: block;
  animation: pulseLiveSport 1.2s infinite ease-in-out;
}
#tv-home-app #th4 .st.pp {
  color: #fbbf24;
}
#tv-home-app #th4 .st.pp i {
  display: block;
  background: #f59e0b;
  box-shadow: 0 0 0.6rem #f59e0b;
}
#tv-home-app #th4 .st.lv {
  color: var(--red);
}
@keyframes pulseLiveSport {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: .4; transform: scale(1.2); }
}
#tv-home-app #th4 .mb {
  left: 3.4rem;
  right: 3.4rem;
  top: 4.2rem;
  height: 6.8rem;
  display: flex;
  align-items: center;
}
#tv-home-app #th4 .tm {
  flex: 1;
  display: flex;
  align-items: center;
  min-width: 0;
}
#tv-home-app #th4 .tm.aw {
  flex-direction: row-reverse;
  text-align: end;
}
#tv-home-app #th4 .cr {
  width: 6.2rem;
  height: 6.2rem;
  border-radius: 50%;
  flex: none;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  font-weight: 900;
  border: .3rem solid rgba(255, 255, 255, .85);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: #1c2420;
}
#tv-home-app #th4 .nz {
  margin: 0 1.4rem;
  font-size: 2.4rem;
  line-height: 1.15;
  font-weight: 800;
  min-width: 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
#tv-home-app #th4 .sc {
  flex: none;
  width: 14rem;
  text-align: center;
  direction: ltr;
  font-size: 6.4rem;
  line-height: 6.8rem;
  white-space: nowrap;
}
#tv-home-app #th4 .sc s {
  text-decoration: none;
  color: var(--lime);
  margin: 0 1rem;
}
#tv-home-app #th4 .sc.vs {
  font-size: 4.6rem;
  color: var(--lime);
}
#tv-home-app #th4 .bc {
  left: 0;
  right: 0;
  bottom: 0;
  height: 3.6rem;
  background: var(--lime);
  color: var(--ink);
  display: flex;
  align-items: center;
  padding: 0 3.6rem;
  font-weight: 800;
}
#tv-home-app #th4 .bc .ic {
  width: 2.2rem;
  height: 2.2rem;
  margin: 0 .6rem;
}
#tv-home-app #th4 .bc em {
  font-style: normal;
  font-size: 1.4rem;
  opacity: .65;
  margin: 0 .6rem;
}
#tv-home-app #th4 .bn2 {
  flex: 1;
  margin: 0 .6rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-weight: 900;
  font-size: 2rem;
}
#tv-home-app #th4 .bc u {
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 50%;
  background: var(--ink);
  color: var(--lime);
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}
#tv-home-app #th4 .bc u .ic {
  width: 1.4rem;
  height: 1.4rem;
  margin: 0;
  fill: currentColor;
}

/* Accesos rapidos */
#tv-home-app #th4 #pls {
  position: absolute;
  left: 6.4rem;
  right: 6.4rem;
  top: 57.2rem;
  height: 4.4rem;
  display: flex;
  align-items: center;
}
#tv-home-app #th4 .pl {
  margin: 0 .6rem;
  height: 4.4rem;
  padding: 0 2.2rem;
  background: var(--glass);
  -webkit-clip-path: var(--p2);
  clip-path: var(--p2);
  display: flex;
  align-items: center;
  font-size: 1.7rem;
  white-space: nowrap;
  transition: transform .15s, background-color .15s, color .15s;
  cursor: pointer;
}
#tv-home-app #th4 .pl .ic {
  width: 2.2rem;
  height: 2.2rem;
  margin: 0 .6rem;
}
#tv-home-app #th4 .pl span {
  margin: 0 .6rem;
}

/* Foco */
#tv-home-app #th4 .ib.f,
#tv-home-app #th4 .pl.f {
  background: var(--lime);
  color: var(--ink);
  border-color: var(--lime);
}
#tv-home-app #th4 .ib.f { transform: scale(1.12); }
#tv-home-app #th4 .pl.f { transform: scale(1.06); }

/* Pie */
#tv-home-app #th4 #ft {
  position: absolute;
  left: 7rem;
  right: 7rem;
  top: 64rem;
  display: flex;
  align-items: center;
  font-size: 1.35rem;
  color: var(--mut);
  font-weight: 500;
}
#tv-home-app #th4 #ft div {
  display: flex;
  align-items: center;
  margin: 0 1.2rem;
}
#tv-home-app #th4 #ft em {
  font-style: normal;
  margin: 0 .7rem;
}
#tv-home-app #th4 #ft b {
  color: #fff;
  font-weight: 600;
}
#tv-home-app #th4 #ft i {
  width: .1rem;
  height: 1.6rem;
  background: var(--line);
}

/* In-App PiP TV Remote Focus Navigation */
#inapp-pip-container.pip-active-focus {
  border: 3px solid #ff3b4a !important;
}

#inapp-pip-container .inapp-pip-btn.f,
#inapp-pip-container .inapp-pip-btn.nav-focused {
  background: #ff3b4a !important;
  border: 2px solid #ffffff !important;
  color: #ffffff !important;
  transform: scale(1.15) !important;
  outline: none !important;
}

