/* FÉNIX / CINEMA — mejora visual progresiva del reproductor HTML5.
   No se modifican eventos del reproductor ni controles de canales lineales. */
#screen-player.player-screen { background: #050915 !important; isolation: isolate; }
#screen-player .player-top-gradient {
  background: linear-gradient(180deg,rgba(3,7,20,.86),rgba(4,10,28,.3) 73%,transparent) !important;
}
#screen-player .player-bottom-gradient {
  background: linear-gradient(0deg,rgba(3,7,20,.95),rgba(4,12,30,.62) 46%,transparent) !important;
}
#screen-player .player-controls {
  backdrop-filter: none !important;
  border: 1px solid rgba(117,173,255,.20) !important;
  background: linear-gradient(115deg,rgba(7,14,32,.96),rgba(9,17,37,.92) 62%,rgba(18,15,42,.96)) !important;
  border-radius: clamp(16px,1.75vw,30px) !important;
  box-shadow: 0 24px 72px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.07), 0 0 25px rgba(75,157,253,.07) !important;
  padding: clamp(16px,1.7vw,32px) clamp(18px,2vw,38px) !important;
  transform: translateY(24px) scale(.985);
  will-change: transform, opacity;
  transition: transform 260ms cubic-bezier(.2,.9,.3,1),opacity 240ms ease !important;
}
#screen-player.controls-visible .player-controls { transform:translateY(0) scale(1) !important; }
#screen-player .player-toolbar { display:flex;align-items:center; gap:12px; margin-bottom:clamp(12px,1.3vh,22px); }
#screen-player #player-device-label {
  color:#6fe2fb!important;font-weight:950!important;letter-spacing:.22em!important;
  text-shadow:0 0 22px rgba(58,206,253,.34);
}
#screen-player .player-head { gap:18px; }
#screen-player .player-title {
  color:#f7faff!important;letter-spacing:-.025em!important;
  font-size:clamp(18px,2vw,36px)!important;line-height:1.2;
  text-shadow:0 4px 22px rgba(0,0,0,.35);
}
#screen-player .player-subtitle {color:#b2c5dc!important;letter-spacing:.035em;}
#screen-player #player-format {
  background:rgba(87,122,255,.13)!important;color:#bce5ff!important;
  border:1px solid rgba(109,163,253,.3)!important;
  border-radius:12px!important;padding:9px 12px!important;letter-spacing:.08em!important;
}
#screen-player #player-live-pill {
  background:linear-gradient(125deg,#f24b80,#ac407f)!important;
  box-shadow:0 0 24px rgba(236,50,111,.22)!important;
  border-radius:11px!important;padding:9px 12px!important;
}
#screen-player .player-bottomline { gap:clamp(6px,.65vw,13px)!important; }
#screen-player .player-control {
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid rgba(121,173,243,.20)!important;
  border-radius:clamp(10px,.8vw,16px)!important;
  color:#f8fbff!important;
  background:linear-gradient(150deg,rgba(40,56,90,.95),rgba(15,25,48,.95))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
  min-width:clamp(44px,3.9vw,78px);height:clamp(45px,5.5vh,75px);
  transform:translateZ(0);
  transition:transform 140ms ease,background 140ms ease,border-color 140ms ease,box-shadow 140ms ease!important;
}
#screen-player #player-toggle-btn {
  background:linear-gradient(125deg,#2c8ec1,#7560c9)!important;
  border-color:#84d6f5!important;min-width:clamp(75px,6.2vw,124px);
}
#screen-player .player-control:focus,#screen-player .player-control.is-focused,
#screen-player .player-control:hover {
  outline:2px solid #86e5ff!important;outline-offset:2px;
  border-color:#82e4ff!important;
  box-shadow:0 0 25px rgba(87,206,249,.3)!important;
  transform:scale(1.055) translateZ(0)!important;
}
#screen-player .timeline {
  position:relative!important;height:clamp(8px,1vh,14px)!important;
  margin:clamp(13px,2vh,28px) 0!important;border-radius:200px!important;
  background:rgba(138,171,218,.22)!important;
  overflow:visible!important;box-shadow:inset 0 1px 5px rgba(0,0,0,.3);
}
#screen-player #timeline-fill {
  height:100%!important;border-radius:200px!important;
  background:linear-gradient(90deg,#38c9f7 0%,#6c99ff 60%,#b785ff 100%)!important;
  box-shadow:0 0 18px rgba(63,191,255,.34)!important;
}
#screen-player #player-seek {cursor:pointer;accent-color:#68e1f7;}
#screen-player #player-time { color:#f2f7ff!important;font-variant-numeric:tabular-nums;letter-spacing:.03em;white-space:nowrap; }
#screen-player #player-quality {color:#95cfff!important;border:1px solid rgba(101,167,250,.2);border-radius:9px;padding:6px 8px;background:rgba(80,150,210,.08);}
#screen-player #player-health { letter-spacing:.035em;font-weight:800; }
#screen-player .program-card,#screen-player .player-info-panel {
  background:linear-gradient(128deg,rgba(6,13,33,.98),rgba(13,23,45,.96))!important;
  border:1px solid rgba(130,174,243,.25)!important;border-radius:20px!important;
  box-shadow:0 20px 60px rgba(0,0,0,.48)!important;
}
#screen-player .player-loading .spinner {
  border-top-color:#56d9fd!important;box-shadow:0 0 25px rgba(86,217,253,.2);
  animation:fenixUltraSpin .8s linear infinite;
}
#screen-player .player-error { background:linear-gradient(135deg,rgba(8,16,35,.96),rgba(32,17,39,.95))!important; border:1px solid rgba(244,100,134,.22)!important; border-radius:22px!important; }
@keyframes fenixUltraSpin {to{transform:rotate(360deg)}}
/* TV: foco grande y detalles legibles a distancia, sin filtros costosos. */
html[data-device-mode='tv'] #screen-player .player-controls,
html[data-device-mode='android-tv'] #screen-player .player-controls {
  left:4vw!important;right:4vw!important;bottom:4vh!important;
}
html[data-device-mode='tv'] #screen-player .player-control,
html[data-device-mode='android-tv'] #screen-player .player-control {font-size:clamp(14px,1.12vw,23px)!important;}
/* Teléfono: controles que caben en landscape sin tapar subtítulos ni la imagen. */
html[data-device-mode='mobile'] #screen-player .player-controls {
  left:2vw!important;right:2vw!important;bottom:2vh!important;
  padding:clamp(11px,1.5vh,19px)!important;
  border-radius:16px!important;
}
html[data-device-mode='mobile'] #screen-player .player-toolbar {margin-bottom:5px;}
html[data-device-mode='mobile'] #screen-player .player-title {font-size:clamp(15px,3.2vw,23px)!important;}
html[data-device-mode='mobile'] #screen-player .player-control {min-width:42px!important;height:42px!important;border-radius:10px!important;padding:0 9px!important;font-size:12px!important;}
html[data-device-mode='mobile'] #screen-player .player-bottomline {flex-wrap:wrap;gap:5px!important;}
html[data-device-mode='mobile'] #screen-player .player-subtitle {font-size:11px!important;}
@media (max-height:450px) {
  html[data-device-mode='mobile'] #screen-player .player-head {margin:0!important;}
  html[data-device-mode='mobile'] #screen-player .timeline {margin:8px 0!important;}
  html[data-device-mode='mobile'] #screen-player .player-control {height:38px!important;}
}
@media (prefers-reduced-motion:reduce) {
  #screen-player .player-controls,#screen-player .player-control {transition:none!important;animation:none!important;}
}
