
:root{
  --bg:#070b14;
  --panel:rgba(255,255,255,.05);
  --stroke:rgba(255,255,255,.10);
  --text:rgba(255,255,255,.92);
  --muted:rgba(255,255,255,.70);
  --ok:#2bffb4;
  --warn:#ffb020;
  --bad:#ff3355;
  --r:22px;
  --shadow: 0 24px 80px rgba(0,0,0,.55);
  --glass: linear-gradient(180deg, rgba(10,16,32,.88) 0%, rgba(7,11,20,.78) 100%);
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;color:var(--text);
  background:
    radial-gradient(900px 420px at 20% 10%, rgba(43,211,255,.14), transparent 60%),
    radial-gradient(800px 420px at 85% 20%, rgba(36,255,154,.12), transparent 60%),
    linear-gradient(180deg,#070b14 0%,#050810 100%);
  padding-bottom:92px;
}
a{color:inherit}
.wrap{max-width:1280px;margin:0 auto;padding:0 18px}
.muted{color:var(--muted)}
.tiny{font-size:11px;font-weight:900;letter-spacing:.06em}

.topbar{
  position:sticky;top:0;z-index:50;
  backdrop-filter:blur(14px);
  background:rgba(7,11,20,.82);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.topbar__inner{display:flex;align-items:center;gap:16px;padding:14px 0}
.brand{display:flex;align-items:center;gap:12px;min-width:320px;text-decoration:none}
.brand__logo{
  width:86px;height:44px;border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:
    radial-gradient(120% 120% at 30% 30%, rgba(43,211,255,.45), rgba(36,255,154,.14)),
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(0,0,0,.12));
  box-shadow:0 14px 40px rgba(0,0,0,.35);
}
.brand__title{font-weight:900;letter-spacing:.06em;font-size:13px}
.brand__tag{color:var(--muted);font-size:12px;margin-top:2px}

.nav{display:flex;gap:10px;flex:1;justify-content:center;align-items:center;padding:8px 10px;border-radius:22px;background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.06), 0 12px 34px rgba(0,0,0,.22)}
.nav__link{
  position:relative;display:inline-flex;align-items:center;gap:10px;
  color:rgba(255,255,255,.80);
  text-decoration:none;
  font-weight:800;
  font-size:13px;
  padding:11px 14px;
  border-radius:14px;
  border:1px solid transparent;
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));
  cursor:pointer;
  transition:transform .18s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease, color .22s ease;
}
.nav__link::after{content:'';position:absolute;left:14px;right:14px;bottom:6px;height:2px;border-radius:999px;background:linear-gradient(90deg, rgba(43,211,255,0), rgba(43,211,255,.95), rgba(127,255,212,.95), rgba(43,211,255,0));transform:scaleX(.18);opacity:0;transition:transform .22s ease, opacity .22s ease}
.nav__link:hover{background:linear-gradient(180deg, rgba(43,211,255,.12), rgba(127,255,212,.06));border-color:rgba(127,255,212,.16);box-shadow:0 12px 26px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.08);color:var(--text);transform:translateY(-1px)}
.nav__link:hover::after,.nav__link.is-active::after{transform:scaleX(1);opacity:1}
.nav__link.is-active{background:linear-gradient(180deg, rgba(43,211,255,.14), rgba(127,255,212,.07));border-color:rgba(127,255,212,.20);box-shadow:0 14px 28px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08);color:var(--text)}
.nav__link--btn{appearance:none}
.nav__ico{position:relative;flex:0 0 auto;width:20px;height:20px;border-radius:8px;background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.nav__ico::before,.nav__ico::after{content:'';position:absolute;display:block}
.nav__ico--home::before{left:4px;right:4px;bottom:4px;height:7px;border-radius:3px;background:rgba(223,247,255,.92)}
.nav__ico--home::after{left:5px;top:3px;width:8px;height:8px;border-top:2px solid #7fffd4;border-left:2px solid #7fffd4;transform:rotate(45deg)}
.nav__ico--radio::before{left:8px;top:3px;width:2px;height:13px;border-radius:999px;background:#7fffd4;box-shadow:0 0 10px rgba(127,255,212,.45)}
.nav__ico--radio::after{left:4px;right:4px;bottom:4px;height:4px;border-radius:999px;background:rgba(223,247,255,.9)}
.nav__ico--calendar::before{left:4px;right:4px;top:5px;bottom:4px;border-radius:6px;background:rgba(223,247,255,.9)}
.nav__ico--calendar::after{left:5px;right:5px;top:4px;height:4px;border-radius:999px;background:#7fffd4;box-shadow:0 8px 0 rgba(11,16,32,.22)}
.nav__ico--grid::before{left:4px;top:4px;width:4px;height:4px;border-radius:2px;background:#dff7ff;box-shadow:8px 0 0 #7fffd4,0 8px 0 #7fffd4,8px 8px 0 #dff7ff}
.nav__ico--panel::before{left:4px;right:4px;top:4px;height:4px;border-radius:999px;background:#7fffd4}
.nav__ico--panel::after{left:4px;right:4px;bottom:4px;top:10px;border-radius:5px;background:rgba(223,247,255,.9)}
.nav__item{position:relative}
.chev{opacity:.7;margin-left:2px;font-weight:900;transition:transform .18s ease}
.nav__item:hover .chev{transform:translateY(1px)}

/* Dropdown PRO */
.dropdown{
  position:absolute;top:calc(100% + 12px);left:0;
  min-width:260px;padding:10px 0;
  background:var(--glass);
  backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  box-shadow:0 20px 60px rgba(0,0,0,.65), 0 0 0 1px rgba(0,190,255,.08), inset 0 1px 0 rgba(255,255,255,.06);
  opacity:0;transform:translateY(10px) scale(.98);
  pointer-events:none;
  transition:opacity .18s ease, transform .22s ease;
  z-index:9999;
}
.dropdown a{
  display:flex;align-items:center;gap:10px;
  padding:12px 18px;
  color:rgba(255,255,255,.72);
  font-size:14px;font-weight:700;
  text-decoration:none;
  transition:background .18s ease, color .18s ease, transform .18s ease;
}
.dropdown a + a{border-top:1px solid rgba(255,255,255,.05)}
.dropdown a:hover{
  color:rgba(255,255,255,.95);
  background:linear-gradient(90deg, rgba(0,190,255,.16) 0%, rgba(36,255,154,.10) 70%, rgba(255,176,32,.06) 100%);
  transform:translateX(6px);
  text-shadow:0 0 10px rgba(0,190,255,.25);
}
.nav__item:hover .dropdown{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}

/* Right */
.topbar__right{display:flex;justify-content:flex-end;min-width:180px}
.live__pill{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 14px;border-radius:999px;
  background:rgba(255,51,85,.12);
  border:1px solid rgba(255,51,85,.35);
  font-weight:950;font-size:12px;letter-spacing:.06em;
}
.live__dot{width:8px;height:8px;border-radius:999px;background:var(--bad);box-shadow:0 0 0 6px rgba(255,51,85,.12)}

/* strip */
.strip{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 0 14px}
.strip__left{display:flex;gap:12px;align-items:center;flex:1;min-width:0}
.strip__right{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.chip{
  display:inline-flex;align-items:center;
  padding:10px 14px;border-radius:999px;
  background:linear-gradient(180deg, rgba(255,51,85,.95), rgba(255,51,85,.55));
  border:1px solid rgba(255,255,255,.10);
  font-weight:950;font-size:11px;letter-spacing:.10em;
}
.pill{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 12px;border-radius:999px;
  font-size:12px;font-weight:900;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  color:rgba(255,255,255,.80);
}
.pill .dot{width:8px;height:8px;border-radius:999px;background:var(--warn);box-shadow:0 0 0 6px rgba(255,176,32,.12)}
#pillApi[data-state="ok"] .dot{background:var(--ok);box-shadow:0 0 0 6px rgba(43,255,180,.12)}
#pillApi[data-state="bad"] .dot{background:var(--bad);box-shadow:0 0 0 6px rgba(255,51,85,.12)}
#pillApi[data-state="warn"] .dot{background:var(--warn);box-shadow:0 0 0 6px rgba(255,176,32,.12)}

.ticker{position:relative;flex:1;min-width:0;height:40px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);overflow:hidden}
.ticker__fade{position:absolute;inset:0;background:linear-gradient(90deg, rgba(7,11,20,1) 0%, rgba(7,11,20,0) 14%, rgba(7,11,20,0) 86%, rgba(7,11,20,1) 100%);pointer-events:none}
.ticker__track{display:inline-flex;gap:14px;align-items:center;padding:0 20px;height:40px;white-space:nowrap;animation:ticker 28s linear infinite;will-change:transform}
.sep{opacity:.35}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* preprod bar */
.noticebar{margin:8px 0 14px}
.noticebar__inner{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:12px 14px;border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
}
.noticebar .warn{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:10px;background:rgba(255,176,32,.16);border:1px solid rgba(255,176,32,.28)}
.ghost{background:transparent;border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.78);padding:8px 10px;border-radius:12px;font-weight:800;cursor:pointer}
.ghost:hover{background:rgba(255,255,255,.06);color:#fff}

main{padding-bottom:28px}

.card, .panel{
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--r);
  background:rgba(255,255,255,.04);
  box-shadow:var(--shadow);
}
.hero{
  margin-top:18px;
  overflow:hidden;
}
.hero__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;padding:22px}
.badges{display:flex;gap:10px;flex-wrap:wrap}
.badge{font-size:11px;font-weight:900;padding:8px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06)}
.badge--ghost{background:rgba(0,0,0,.18);color:var(--muted)}
.h1{font-size:44px;line-height:1.04;margin:14px 0 10px}
.lead{color:var(--muted);max-width:62ch;line-height:1.6;margin:0 0 16px}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.btn{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:var(--text);padding:11px 14px;border-radius:14px;font-weight:950;font-size:13px;cursor:pointer}
.btn--primary{border-color:rgba(43,211,255,.24);background:radial-gradient(120% 120% at 30% 30%, rgba(43,211,255,.24), rgba(36,255,154,.10))}
.btn:hover{background:rgba(255,255,255,.08)}
.minirow{display:flex;gap:10px;flex-wrap:wrap}
.mini{border:1px solid rgba(255,255,255,.10);background:rgba(0,0,0,.18);border-radius:16px;padding:10px 12px;min-width:160px}
.mini__k{font-size:11px;color:rgba(255,255,255,.60);font-weight:900;letter-spacing:.06em}
.mini__v{margin-top:6px;font-weight:950}
.defcon{display:inline-flex;gap:6px;align-items:center}
.defcon span{width:22px;height:22px;display:grid;place-items:center;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);font-weight:950;color:rgba(255,255,255,.78);font-size:12px}
.defcon--small span{width:20px;height:20px;border-radius:7px;font-size:11px}
.defcon span.is-active{border-color:rgba(255,176,32,.38);background:rgba(255,176,32,.18);color:rgba(255,255,255,.92)}

/* DEFCON colors (NRE operativo) */
.defcon[data-level="1"] span.is-active{border-color:rgba(255,255,255,.45);background:rgba(255,255,255,.16);color:#fff}
.defcon[data-level="2"] span.is-active{border-color:rgba(255,0,64,.45);background:rgba(255,0,64,.18);color:#fff}
.defcon[data-level="3"] span.is-active{border-color:rgba(255,210,64,.45);background:rgba(255,210,64,.20);color:#fff}
.defcon[data-level="4"] span.is-active{border-color:rgba(52,211,153,.45);background:rgba(52,211,153,.18);color:#fff}
.defcon[data-level="5"] span.is-active{border-color:rgba(77,163,255,.45);background:rgba(77,163,255,.18);color:#fff}


.side{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(10,16,32,.55);
  border-radius:var(--r);
  padding:16px;
}
.pillStatus{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 12px;border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  font-size:12px;font-weight:950;
}
.pillStatus .dot{width:8px;height:8px;border-radius:999px;background:var(--warn);box-shadow:0 0 0 6px rgba(255,176,32,.12)}
.pillStatus[data-state="ok"] .dot{background:var(--ok);box-shadow:0 0 0 6px rgba(43,255,180,.12)}
.pillStatus[data-state="bad"] .dot{background:var(--bad);box-shadow:0 0 0 6px rgba(255,51,85,.12)}
.now{display:grid;grid-template-columns:156px 1fr;gap:14px;align-items:center;margin-top:12px}
.now img{width:156px;height:156px;border-radius:22px;border:1px solid rgba(255,255,255,.14);object-fit:cover;background:rgba(255,255,255,.05)}

.now > div{min-width:0;padding-left:6px}
.title{font-weight:950;font-size:18px;margin-top:6px;line-height:1.15;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.artist{color:rgba(255,255,255,.78);font-weight:800;margin-top:4px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sub{color:rgba(255,255,255,.60);font-weight:700;margin-top:8px;font-size:12px}
.hr{height:1px;background:rgba(255,255,255,.08);margin:14px 0}
pre{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,'Liberation Mono','Courier New',monospace;font-size:12px;white-space:pre-wrap;line-height:1.55;color:rgba(255,255,255,.75)}

.grid2{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.box{border:1px solid rgba(255,255,255,.08);border-radius:var(--r);background:rgba(255,255,255,.04);padding:16px}
.box__t{font-weight:950;margin-bottom:6px}
.box__b{color:rgba(255,255,255,.74);line-height:1.6}
.box__hint{margin-top:10px;color:rgba(255,255,255,.55);font-size:12px}

/* Schedule page */
.pageTitle{margin:22px 0 6px;font-size:44px;line-height:1.04;font-weight:950}
.pageSub{margin:0 0 14px;color:rgba(255,255,255,.70)}
.scheduleWrap{padding:18px}
.scheduleTop{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:12px}
.liveLine{
  display:flex;align-items:center;gap:10px;
  padding:10px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.78);font-weight:900
}
.liveLine .dot{width:10px;height:10px;border-radius:999px;background:var(--ok);box-shadow:0 0 0 8px rgba(43,255,180,.10)}
.tableShell{
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(0,0,0,.22);
  overflow:hidden;
}
.tableScroll{
  max-height:540px;
  overflow:auto;
}
.tableScroll::-webkit-scrollbar{width:10px}
.tableScroll::-webkit-scrollbar-track{background:rgba(255,255,255,.04)}
.tableScroll::-webkit-scrollbar-thumb{background:rgba(255,255,255,.14);border-radius:999px}
.tableScroll::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.22)}

table{width:100%;border-collapse:separate;border-spacing:0}
th,td{padding:14px 14px;vertical-align:top;border-bottom:1px solid rgba(255,255,255,.06)}
thead th{
  position:sticky;top:0;z-index:3;
  background:rgba(7,11,20,.92);
  backdrop-filter:blur(12px);
  font-size:14px;font-weight:950;color:rgba(255,255,255,.90);
}
th:first-child, td:first-child{
  position:sticky;left:0;z-index:2;
  background:rgba(7,11,20,.92);
  backdrop-filter:blur(12px);
  font-weight:950;
}
thead th:first-child{z-index:4}
.slot{
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  border-radius:16px;
  padding:12px 12px;
  min-height:84px;
}
.slot__t{font-weight:950}
.slot__s{color:rgba(255,255,255,.70);margin-top:6px}
.slot--live{border-color:rgba(43,255,180,.22);box-shadow:0 0 0 1px rgba(43,255,180,.10), 0 14px 50px rgba(0,0,0,.35)}
.slot--next{border-color:rgba(0,190,255,.22)}
.badgeMini{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(0,0,0,.20);font-weight:950;font-size:11px;color:rgba(255,255,255,.80)}
.badgeMini .dot{width:8px;height:8px;border-radius:999px;background:var(--ok);box-shadow:0 0 0 6px rgba(43,255,180,.10)}
.scheduleFoot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;color:rgba(255,255,255,.60)}

/* Dock */
.dock{ position:sticky; left:0; right:0; bottom:0; z-index:60;
  border-top:1px solid rgba(255,255,255,.10);
  background:linear-gradient(to top, rgba(7,11,20,.96), rgba(7,11,20,.88)), url('../assets/dock/dock_eq_bg.png') center bottom / cover no-repeat;
  backdrop-filter:blur(14px);
}
.dock__inner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0}
.dock__left{display:flex;align-items:center;gap:12px;min-width:320px}
.dock__left img{width:44px;height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.12);object-fit:cover}
.dock__line{font-weight:950}
.dock__sub{color:rgba(255,255,255,.62);font-size:12px;font-weight:700}
.dock__center{display:flex;align-items:center;gap:12px;flex:1;justify-content:center}
.iconbtn{width:44px;height:44px;border-radius:16px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:var(--text);font-weight:950;cursor:pointer}
.vu{display:flex;align-items:center;gap:8px;min-width:240px}
.bar{width:84px;height:10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.22);overflow:hidden}
.fill{height:100%;width:0%;background:linear-gradient(90deg, rgba(43,211,255,.75), rgba(36,255,154,.70), rgba(255,176,32,.70), rgba(255,51,85,.75));transition:width .1s linear}
.peak{font-size:11px;font-weight:950;color:rgba(255,255,255,.70);padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);opacity:.55}
.vol{display:flex;align-items:center;gap:10px}
.dock__right{display:flex;align-items:center;gap:10px}
select{border-radius:14px;padding:10px 12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:rgba(255,255,255,.88);font-weight:900;font-size:12px}

.footer{
  margin-top:22px;
  padding:34px 0;
  border-top:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(900px 200px at 20% 0%, rgba(0,190,255,.10), transparent 60%),
    radial-gradient(900px 200px at 80% 0%, rgba(36,255,154,.08), transparent 60%),
    linear-gradient(180deg, rgba(7,11,20,.65) 0%, rgba(7,11,20,.92) 100%);
  backdrop-filter: blur(10px);
}
.footer__grid{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:36px;align-items:start}
.footer__title{margin:0 0 10px;font-size:14px;font-weight:900;letter-spacing:.04em;color:rgba(255,255,255,.92)}
.footer p{margin:0 0 10px;line-height:1.7;color:rgba(255,255,255,.70);max-width:60ch}
.footer__links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}
.footer a{color:rgba(255,255,255,.72);text-decoration:none;font-weight:800;display:inline-flex;align-items:center;gap:10px;padding:6px 0;transition:color .18s ease, transform .18s ease, text-shadow .18s ease}
.footer a:hover{color:#fff;transform:translateX(4px);text-shadow:0 0 10px rgba(0,190,255,.20)}

@media (max-width: 980px){
  .nav{display:none}
  .hero__grid{grid-template-columns:1fr}
  .grid2{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr;gap:18px}
  .dock__inner{flex-direction:column;align-items:stretch}
  .dock__center{justify-content:space-between}
}

/* ===== Programa en emisión (banner debajo del hero) ===== */
.showBanner{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  margin-top:14px;
  border-radius: var(--r);
  background:
    linear-gradient(180deg, rgba(4,8,18,.72) 0%, rgba(4,8,18,.82) 100%),
    radial-gradient(700px 220px at 20% 30%, rgba(0,190,255,.12), transparent 60%),
    radial-gradient(700px 220px at 80% 40%, rgba(36,255,154,.10), transparent 60%),
    rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
  box-shadow: var(--shadow);
}
.showBanner__inner{
  display:flex;
  gap:16px;
  align-items:center;
  padding:16px;
}
.showBanner__artWrap{
  position:relative;
  width:140px;
  height:160px;
  flex:0 0 140px;
  padding-bottom:20px;
  overflow:visible;
}
.showBanner__artWrap img{
  width:140px;height:140px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.14);
  object-fit:cover;
  background:rgba(0,0,0,.22);
}
.showBanner__tag{
  position:absolute;
  left:50%;
  bottom:-6px;
  transform:translateX(-50%);
  max-width:120px;
  padding:6px 10px;
  border-radius:14px;
  font-size:10px;
  font-weight:800;
  text-align:center;
  line-height:1.1;
  background:#33e0a1;
  color:#041018;
  box-shadow:0 6px 16px rgba(0,0,0,.35);
}
.showBanner__meta{flex:1;min-width:0}
.showBanner__kicker{
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  color:rgba(255,255,255,.62);
  text-transform:uppercase;
}
.showBanner__title{
  margin-top:8px;
  font-size:22px;
  font-weight:950;
  line-height:1.15;
}
.showBanner__sub{
  margin-top:6px;
  color:rgba(255,255,255,.72);
  font-weight:700;
  line-height:1.55;
  max-width: 80ch;
}
.showBanner__row{
  display:flex; gap:10px; flex-wrap:wrap;
  margin-top:12px;
}
.pill--mini{
  padding:9px 12px;
  font-size:12px;
}
.pill--link{
  text-decoration:none;
  border-color:rgba(0,190,255,.18);
  background:rgba(0,190,255,.08);
}
.pill--link:hover{background:rgba(0,190,255,.12); color:#fff}

@media (max-width: 980px){
  .showBanner__inner{flex-direction:column;align-items:flex-start}
  .showBanner__artWrap{
  position:relative;
  width:140px;
  height:160px;
  flex:0 0 140px;
  padding-bottom:20px;
  overflow:visible;
}
  .showBanner__artWrap img{width:120px;height:120px}
}

/* ===== Noticias + Actualidad Musical (6 + 6) ===== */
.newsModules{
  margin-top:18px;
  padding:18px 0 6px;
}
.modsHead{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin-bottom:14px;
}
.modsKicker{
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  color:rgba(255,255,255,.62);
  text-transform:uppercase;
}
.modsTitle{
  margin:8px 0 6px;
  font-size:28px;
  font-weight:950;
}
.modsSub{
  margin:0;
  color:rgba(255,255,255,.72);
  line-height:1.6;
  max-width: 78ch;
}
.modsActions{display:flex;gap:10px;flex-wrap:wrap}

.modsGrid2{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.modsPanel{
  border:1px solid rgba(255,255,255,.08);
  border-radius:var(--r);
  background:rgba(255,255,255,.04);
  box-shadow: var(--shadow);
  padding:14px;
  overflow:hidden;
}
.modsPanel__head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.modsPanel__title{font-weight:950}
.modsPanel__meta{color:rgba(255,255,255,.55);font-size:12px}

.cards6{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
}
.cardNews{
  position:relative;
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  background:rgba(0,0,0,.20);
  overflow:hidden;
  min-height: 186px;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.cardNews:hover{
  transform: translateY(-2px);
  border-color: rgba(0,190,255,.22);
  box-shadow: 0 18px 60px rgba(0,0,0,.40), 0 0 0 1px rgba(0,190,255,.10);
}
.cardNews__img{
  width:100%;
  height:104px;
  object-fit:cover;
  display:block;
  background:rgba(255,255,255,.06);
}
.cardNews__body{padding:12px 12px 12px}
.cardNews__title{
  font-weight:950;
  line-height:1.25;
  font-size:13px;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.cardNews__meta{
  margin-top:8px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  color:rgba(255,255,255,.62);
  font-size:11px;
  font-weight:800;
}
.pillTag{
  display:inline-flex;align-items:center;gap:8px;
  padding:6px 10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.05);
}
.pillTag .dot{width:7px;height:7px;border-radius:999px;background:rgba(0,190,255,.9);box-shadow:0 0 0 6px rgba(0,190,255,.10)}

.cardNews.is-skeleton{
  background:linear-gradient(90deg, rgba(255,255,255,.04), rgba(255,255,255,.08), rgba(255,255,255,.04));
  background-size: 200% 100%;
  animation: shimmer 1.2s linear infinite;
  border-color: rgba(255,255,255,.08);
}
@keyframes shimmer{from{background-position:200% 0}to{background-position:-200% 0}}

@media (max-width: 1100px){
  .cards6{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width: 980px){
  .modsGrid2{grid-template-columns:1fr}
  .cards6{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width: 560px){
  .cards6{grid-template-columns:1fr}
}


/* ===== FIX: ticker centrado (vertical y óptico) ===== */
.ticker{
  display:flex;
  align-items:center;
}
.ticker__track{
  display:flex;              /* no inline-flex para evitar baseline raro */
  align-items:center;
  height:40px;
  line-height:40px;          /* centra el texto en cápsula */
  transform: translateZ(0);  /* suaviza */
}
.ticker__track span{
  line-height:40px;
}
.strip__left{
  align-items:center;
}
/* Compensación óptica por font-weight y blur (muy leve) */
.ticker__track{
  padding-top: 0px;
}


/* ===== FIX: módulos noticias verticales y centrados ===== */

/* contenedor principal */
.newsModules{
  display:flex;
  flex-direction:column;
  align-items:center;
}

/* header centrado */
.modsHead{
  width:100%;
  max-width:1100px;
  margin:0 auto 18px auto;
  text-align:center;
  justify-content:center;
}

/* grid pasa a columna */
.modsGrid2{
  display:flex;
  flex-direction:column;
  gap:18px;
  width:100%;
  max-width:1100px;
  margin:0 auto;
}

/* panel centrado */
.modsPanel{
  width:100%;
}

/* cabecera panel centrada */
.modsPanel__head{
  justify-content:center;
  text-align:center;
  flex-direction:column;
  gap:4px;
}

/* cards centradas */
.cards6{
  justify-content:center;
}

/* limitar ancho para que no quede gigante */
@media (min-width:1200px){
  .modsGrid2{
    max-width:1100px;
  }
}


/* ===== FIX DEFINITIVO TICKER CENTRADO ===== */

.strip{
  display:flex;
  align-items:center;
}

.strip__left{
  display:flex;
  align-items:center;
  width:100%;
}

.ticker{
  display:flex;
  align-items:center;
  justify-content:center;
  height:40px;
  overflow:hidden;
}

.ticker__track{
  display:flex;
  align-items:center;
  height:40px;
  line-height:40px;
  white-space:nowrap;
}

.ticker__track span{
  display:inline-flex;
  align-items:center;
  height:40px;
  line-height:40px;
}

/* ajuste fino visual */
.ticker__track{
  transform: translateY(1px);
}


/* ===== PREPRODUCCION (EN OBRAS) CENTRADO — SOLO ESTE BLOQUE ===== */
.noticebar__inner{
  justify-content:center;   /* centra el texto */
  text-align:center;
  position:relative;
}
.noticebar__inner > span{
  text-align:center;
}
.noticebar__inner .ghost{
  position:absolute;
  right:12px;
}
@media (max-width: 720px){
  .noticebar__inner{
    padding-right:76px; /* deja espacio al botón sin desplazar texto */
  }
}

/* ===== Reloj en topbar (junto a EN DIRECTO) ===== */
.pill--clock{
  padding:10px 14px;
  font-weight:950;
  letter-spacing:.04em;
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.12);
}
.pill--clock #clockText{
  white-space:nowrap;
}
.pillLed{
  width:8px;height:8px;border-radius:999px;
  background:rgba(0,190,255,.95);
  box-shadow:0 0 0 6px rgba(0,190,255,.10);
}
.topbar__right{
  display:flex;
  align-items:center;
  gap:10px;
  justify-content:flex-end;
}


/* ===== PREPRODUCCION: CENTRADO REAL (NO SE MUEVE NADA MAS) =====
   Hace el texto absolutamente centrado aunque haya icono a la izquierda y botón a la derecha.
*/
.noticebar__inner{
  justify-content:center !important;
  text-align:center !important;
  position:relative;
  padding-left:54px;   /* hueco icono */
  padding-right:96px;  /* hueco botón */
}
.noticebar__inner .warn{
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
}
.noticebar__inner > span:not(.warn){
  display:block;
  margin:0 auto;
  text-align:center;
}
.noticebar__inner .ghost{
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);
}
@media (max-width: 720px){
  .noticebar__inner{
    padding-left:48px;
    padding-right:78px;
  }
}

/* PREPROD CENTER FINAL */
.noticebar__inner{position:relative;display:flex;align-items:center;height:44px;}
.noticebar__inner .warn{position:absolute;left:12px;top:50%;transform:translateY(-50%);} 
.noticebar__inner .ghost{position:absolute;right:12px;top:50%;transform:translateY(-50%);} 
.noticebar__text{position:absolute;left:50%;transform:translateX(-50%);text-align:center;width:70%;}


/* ===== CENTRAR CONTENEDOR PREPRODUCCION ===== */

/* contenedor externo */
.noticebar{
  display:flex;
  justify-content:center; /* centra todo el bloque */
}

/* ancho controlado tipo layout */
.noticebar__inner{
  width:100%;
  max-width:1200px;
  margin:0 auto;
}


/* ===== AJUSTE TIPOGRAFIA PREPRODUCCION ===== */

/* fuente más estilizada */
.noticebar__text{
  font-family: 'Inter', 'Segoe UI', 'Roboto', sans-serif;
  font-size:13px;
  font-weight:500;
  letter-spacing:0.02em;
  line-height:1.4;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* en pantallas pequeñas baja aún más */
@media (max-width: 900px){
  .noticebar__text{
    font-size:12px;
  }
}

/* ===== HERO LOGO GRANDE ===== */
.hero{
  position:relative;
  overflow:hidden;
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:url('../assets/nre_logo_big.png') center/contain no-repeat;
  opacity:0.08; /* suave */
  pointer-events:none;
}

/* versión más visible si quieres */
.hero.logo-strong::before{
  opacity:0.18;
}

/* ===== LOGO HEADER ===== */
.logoHeader{
  height:42px;
  width:auto;
  object-fit:contain;
  filter:drop-shadow(0 0 6px rgba(0,190,255,.4));
}

/* en móvil más pequeño */
@media (max-width:768px){
  .logoHeader{
    height:34px;
  }
}

/* ===== LOGO EN CAJA HEADER ===== */

.brandBox{
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.logoBox{
  width:100%;
  height:100%;
  object-fit:contain;
  transform:scale(1.1);
}

/* quitar padding interno si lo hubiera */
.brandBox img{
  max-width:100%;
  max-height:100%;
}


/* ===== Fondo programa en emisión (NRE NON STOP) ===== */
.showBanner{
  position:relative;
  overflow:hidden;
}

.showBanner::before{
  content:none !important;
  background:none !important;
}
.showBanner::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg, rgba(3,8,18,.70) 0%, rgba(3,8,18,.45) 38%, rgba(3,8,18,.20) 100%);
  pointer-events:none;
}

.showBanner__inner{
  position:relative;
  z-index:1;
}


/* ===== HERO RIGHT ANTENNA BG ===== */
.heroRight{
  position:relative;
  overflow:hidden;
}

.heroRight > *{
  position:relative;
  z-index:1;
}



.infoPanel{
  position:relative;
  overflow:hidden;
}

.infoPanel::before{
  content:"";
  position:absolute;
  inset:0;
  background:url('../assets/antenna_panel.png') right center / contain no-repeat;
  opacity:0.18;
  pointer-events:none;
  filter:drop-shadow(0 0 25px rgba(0,180,255,.35));
}

/* contenido por encima */
.infoPanel > *{
  position:relative;
  z-index:1;
}



.heroRight{
  position:relative;
  overflow:hidden;
}



.heroRight > *{
  position:relative;
  z-index:1;
}


@keyframes antennaPulse{
  0%{ opacity:.18; transform:translateX(0) translateY(0) scale(1); filter:drop-shadow(0 0 22px rgba(0,180,255,.35)); }
  45%{ opacity:.30; transform:translateX(-6px) translateY(-1px) scale(1.01); filter:drop-shadow(0 0 34px rgba(0,200,255,.55)); }
  100%{ opacity:.18; transform:translateX(0) translateY(0) scale(1); filter:drop-shadow(0 0 22px rgba(0,180,255,.35)); }
}

@keyframes waveSweep{
  0%{ opacity:0; transform:translateX(18px) scale(.98); }
  30%{ opacity:.22; }
  70%{ opacity:.10; }
  100%{ opacity:0; transform:translateX(-18px) scale(1.02); }
}

.heroRight{
  position:relative;
  overflow:hidden;
}

/* antena */


/* ondas (capa extra, transparente) */


.heroRight > *{
  position:relative;
  z-index:1;
}


/* ===== ANIMACION ANTENA (HERO DERECHA - SOLO ANTENA) ===== */
@keyframes antennaPulse{
  0%{ opacity:.18; transform:translateX(0) translateY(0) scale(1); filter:drop-shadow(0 0 22px rgba(0,180,255,.35)); }
  45%{ opacity:.30; transform:translateX(-6px) translateY(-1px) scale(1.01); filter:drop-shadow(0 0 34px rgba(0,200,255,.55)); }
  100%{ opacity:.18; transform:translateX(0) translateY(0) scale(1); filter:drop-shadow(0 0 22px rgba(0,180,255,.35)); }
}

@keyframes waveSweep{
  0%{ opacity:0; transform:translateX(18px) scale(.98); }
  30%{ opacity:.22; }
  70%{ opacity:.10; }
  100%{ opacity:0; transform:translateX(-18px) scale(1.02); }
}

.heroRight{
  position:relative;
  overflow:hidden;
}

/* antena SOLO */


/* ondas */


.heroRight > *{ position:relative; z-index:1; }


/* ===== ANTENA HERO ARRIBA DERECHA (POSICION CORRECTA) ===== */
.heroRight{
  position:relative;
  overflow:hidden;
}

/* antena fija arriba derecha */
.heroRight::after{
  content:"";
  position:absolute;
  top:10px;
  right:10px;
  width:260px;
  height:260px;
  background:url('../assets/antenna_hero.png') center/contain no-repeat;
  pointer-events:none;
  opacity:.28;
  animation: antennaPulse 3.2s ease-in-out infinite;
}

/* ondas desde antena */
.heroRight::before{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:400px;
  height:400px;
  background:
    radial-gradient(circle at 85% 15%, rgba(0,200,255,.18) 0 2px, transparent 3px 40px),
    radial-gradient(circle at 85% 15%, rgba(0,200,255,.10) 0 1px, transparent 2px 60px),
    radial-gradient(circle at 85% 15%, rgba(255,180,60,.08) 0 1px, transparent 2px 80px);
  pointer-events:none;
  mix-blend-mode: screen;
  animation: waveSweep 2.8s ease-in-out infinite;
}

.heroRight > *{
  position:relative;
  z-index:1;
}


/* ===== PROGRAMA EN EMISIÓN: MÁS ALTO + FONDO NRE NON-STOP ===== */
.showBanner{
  min-height: 220px;
  padding: 22px 22px;
}
@media (min-width: 1100px){
  .showBanner{ min-height: 250px; padding: 26px 26px; }
}

/* Fondo propio del programa */

.showBanner::before{
  content:none !important;
  background:none !important;
}
.showBanner::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg, rgba(3,8,18,.70) 0%, rgba(3,8,18,.45) 38%, rgba(3,8,18,.20) 100%);
  pointer-events:none;
}



/* ===== PROGRAMA EN EMISIÓN MÁS ALTO (AJUSTE EXTRA) ===== */
.showBanner{
  min-height: 280px;
  padding: 28px 28px;
}
@media (min-width: 1100px){
  .showBanner{
    min-height: 320px;
    padding: 32px 32px;
  }
}

/* ===== Programa en emisión: horario + anterior/siguiente ===== */
.showTimeline{
  margin-top:10px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  font-size:13px;
  color:rgba(255,255,255,.80);
}
.showTimeline__time{
  padding:6px 10px;
  border-radius:999px;
  background:rgba(0,190,255,.10);
  border:1px solid rgba(0,190,255,.22);
  font-weight:800;
  letter-spacing:.02em;
}
.showTimeline__sep{
  opacity:.45;
}
.showTimeline__prev, .showTimeline__next{
  padding:6px 10px;
  border-radius:999px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
}
.showTimeline strong{
  color:#fff;
  font-weight:850;
}
@media (max-width: 820px){
  .showTimeline{ font-size:12px; }
}

/* ===== NRE: Cambios visibles EXACTOS (sin tocar otras secciones) ===== */
@keyframes nreBlink{
  0%,55%{opacity:1}
  56%,100%{opacity:.20}
}

/* ÚLTIMAS NOTICIAS: solo el badge exacto */
.nreBreakingBadge{
  background: rgba(255,0,0,.92) !important;
  border-color: rgba(255,0,0,.92) !important;
  color:#fff !important;
  box-shadow: 0 0 0 1px rgba(255,0,0,.35), 0 14px 44px rgba(255,0,0,.18);
}
.nreBreakingBadge *{
  color:#fff !important;
  animation: nreBlink 1.1s steps(1,end) infinite;
}

/* EN DIRECTO: solo el punto del pill exacto */
.nreLivePill .brand{
  display:flex;
  align-items:center;
  gap:12px;
}
.brand__logo{
  width:54px;
  height:54px;
  border-radius:14px;
  background: rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
  background-image: url('/assets/nre_logo_big.png');
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  box-shadow: 0 0 0 1px rgba(0,190,255,.10), 0 18px 40px rgba(0,0,0,.28);
}
@media (max-width: 768px){
  .brand__logo{ width:44px; height:44px; border-radius:12px; }
}


/* ===== LOGO HEADER GRANDE SIN CAJA ===== */
.brand{
  display:flex;
  align-items:center;
  gap:12px;
}

/* quitamos la caja visual */
.brand__logo{
  width:160px;          /* tamaño grande */
  height:60px;
  background:none !important;
  border:none !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:0 !important;

  background-image:url('/assets/nre_logo_big.png');
  background-repeat:no-repeat;
  background-position:left center;
  background-size:contain;
}

/* ajuste en móvil */
@media (max-width:768px){
  .brand__logo{
    width:120px;
    height:48px;
  }
}


/* ===== LOGO PREMIUM + ANIMACION SUAVE ===== */
@keyframes nreLogoGlow{
  0%{ filter: drop-shadow(0 0 10px rgba(0,190,255,.18)) drop-shadow(0 0 28px rgba(0,190,255,.08)); opacity: .92; }
  50%{ filter: drop-shadow(0 0 16px rgba(0,210,255,.35)) drop-shadow(0 0 46px rgba(0,210,255,.14)); opacity: 1; }
  100%{ filter: drop-shadow(0 0 10px rgba(0,190,255,.18)) drop-shadow(0 0 28px rgba(0,190,255,.08)); opacity: .92; }
}

.brand__logo{
  width: 190px;
  height: 64px;
  background-position:left center;
  background-size:contain;
  animation: nreLogoGlow 3.6s ease-in-out infinite;
}

/* en pantallas grandes, un pelín más */
@media (min-width: 1300px){
  .brand__logo{ width: 210px; height: 68px; }
}

/* móvil */
@media (max-width:768px){
  .brand__logo{ width: 135px; height: 50px; }
}


/* ===== FIX LOGO: asegurar que la imagen SIEMPRE se vea ===== */
.brand__logo{
  width: 200px;
  height: 66px;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background: url('/assets/nre_logo_big.png') left center / contain no-repeat !important;
}
@media (min-width: 1300px){
  .brand__logo{ width: 220px; height: 70px; }
}
@media (max-width: 768px){
  .brand__logo{ width: 140px; height: 52px; }
}


/* ===== FIX SEGURO LOGO (NO ROMPE LAYOUT) ===== */
/* SOLO tocamos tamaño, no tocamos contenedores */
.brand__logo{
  width: 220px !important;
  height: 68px !important;
  background: url('/assets/nre_logo_big.png') left center / contain no-repeat !important;
}

/* responsive */
@media (max-width:768px){
  .brand__logo{
    width:140px !important;
    height:52px !important;
  }
}


/* ===== LOGO UN POCO MÁS GRANDE (SIN ROMPER) ===== */
.brand__logo{
  width: 235px !important;
  height: 72px !important;
}

@media (max-width:768px){
  .brand__logo{
    width:150px !important;
    height:56px !important;
  }
}


/* ===== AJUSTE FINO: logo un poco más grande + texto a la izquierda ===== */

/* un pelín más de logo sin romper */
.brand__logo{
  width: 245px !important;
  height: 74px !important;
}

/* acerca el texto al logo (sin tocar layout global) */
.brand{
  gap: 8px; /* antes más grande */
}

/* si hay título/subtítulo dentro de brand, lo acercamos un poco */
.brand__title,
.brand__text,
.brand h1,
.brand .title{
  margin-left: -2px;
}

/* responsive */
@media (max-width:768px){
  .brand__logo{
    width:155px !important;
    height:58px !important;
  }
  .brand{ gap:6px; }
}


/* ===== TEXTO MÁS A LA IZQUIERDA (AJUSTE FINO FINAL) ===== */

/* reducimos más el espacio entre logo y texto */
.brand{
  gap: 4px !important;
}

/* empujamos el texto un poco más a la izquierda */
.brand__title,
.brand__text,
.brand h1,
.brand .title{
  margin-left: -6px !important;
}

/* móvil */
@media (max-width:768px){
  .brand{
    gap:3px !important;
  }
  .brand__title,
  .brand__text{
    margin-left:-4px !important;
  }
}


/* ===== TEXTO MUCHO MÁS A LA IZQUIERDA (AJUSTE FUERTE) ===== */

.brand{
  gap: 0px !important;
}

.brand__title,
.brand__text,
.brand h1,
.brand .title{
  margin-left: -12px !important;
}

/* móvil */
@media (max-width:768px){
  .brand{
    gap:0 !important;
  }
  .brand__title,
  .brand__text{
    margin-left:-8px !important;
  }
}


/* ===== TEXTO EXTREMO IZQUIERDA ===== */

.brand{
  gap: 0 !important;
}

.brand__title,
.brand__text,
.brand h1,
.brand .title{
  margin-left: -20px !important;
}

/* móvil */
@media (max-width:768px){
  .brand__title,
  .brand__text{
    margin-left:-12px !important;
  }
}

/* ===== BLOQUE PROGRAMA EN EMISION ===== */
.showTimeBlock{
  margin-top:12px;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.showNow{
  font-size:18px;
  font-weight:700;
  color:#fff;
}
.showRange{
  font-size:14px;
  color:#00d0ff;
  font-weight:600;
}
.showEnd{
  font-size:12px;
  color:#aaa;
}

/* ===== BLOQUE PROGRAMA A LA DERECHA ===== */
.showBanner__inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.showTimeBlock{
  margin-top:0;
  margin-left:auto;
  text-align:right;
  align-items:flex-end;
}

/* ===== DIAS DE EMISION ===== */
.showDays{
  font-size:12px;
  color:#00d0ff;
  opacity:.9;
  font-weight:600;
}

/* ===== BLOQUE PROGRAMA ULTRA ===== */
.showNext{
  font-size:12px;
  color:#fff;
  opacity:.8;
}
.showCountdown{
  font-size:14px;
  font-weight:700;
  color:#00ffcc;
}
.showProgress{
  width:140px;
  height:6px;
  background:rgba(255,255,255,.1);
  border-radius:6px;
  overflow:hidden;
  margin-top:6px;
}
.showProgress .bar{
  height:100%;
  width:0%;
  background:linear-gradient(90deg,#00d0ff,#00ffcc);
  transition:width .5s linear;
}


/* ===== SWAP IZQUIERDA / DERECHA PROGRAMA ===== */

/* contenedor principal */
.showBanner__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
}

/* bloque principal (info programa) a la derecha */
.showBanner__left,
.showInfo,
.showContent{
  order:2;
  margin-left:auto;
  text-align:right;
}

/* bloque tiempo / ultra a la izquierda */
.showTimeBlock{
  order:1;
  margin-left:0;
  margin-right:auto;
  text-align:left;
  align-items:flex-start;
}

/* ajuste responsive */
@media (max-width:768px){
  .showBanner__inner{
    flex-direction:column;
    align-items:flex-start;
  }
  .showTimeBlock,
  .showBanner__left{
    order:initial;
    width:100%;
    text-align:left;
  }
}

/* ===== PROGRESS ABAJO ===== */
.showProgress{
  order: 99;
  width:100%;
  margin-top:10px;
}

/* asegurar stack vertical dentro bloque */
.showTimeBlock{
  display:flex;
  flex-direction:column;
}

/* PROGRAMA ANTERIOR */
.showPrev{
  font-size:12px;
  color:#aaa;
  opacity:.8;
}

/* ===== CABECERA NOTICIAS NRE ===== */
.newsTitle{
  font-size:22px;
  font-weight:800;
  color:#fff;
  margin-bottom:14px;
  letter-spacing:.5px;
  text-transform:uppercase;
}

/* ===== SUBTITULO NOTICIAS ===== */
.newsSubtitle{
  font-size:14px;
  color:#00d0ff;
  margin-top:6px;
  margin-bottom:8px;
  letter-spacing:.4px;
  font-weight:600;
}

/* ===== NOTICIAS: FUENTE (sustituye Endpoint) ===== */
.modsPanel__meta{
  text-align:right;
}
.modsPanel__meta .srcLabel{ opacity:.85; }
.modsPanel__meta .srcSub{
  margin-top:2px;
  font-size:11px;
  color:#00d0ff;
  opacity:.85;
  font-weight:600;
}
.box__hint--src{
  text-align:right;
}
.box__hint--src .srcSub{
  margin-top:2px;
  font-size:11px;
  color:#00d0ff;
  opacity:.85;
  font-weight:600;
}


/* ===== FIX: 'Fuente' pegada a la derecha del todo ===== */
/* Si la fila es flex, esto la empuja al final */
.newsMeta{
  margin-left:auto !important;
  text-align:right !important;
  display:block !important;
  max-width: 360px;
}

/* Forzamos que el contenedor inmediato sea una fila que permita empuje a la derecha.
   (sin depender del nombre exacto: si existe un wrapper típico de cabecera, lo hacemos flex) */
.newsHeader,
.newsHeaderRow,
.newsSectionHeader,
.newsBlockHeader,
.newsTop,
.newsHeading{
  display:flex;
  align-items:flex-end;
  gap:14px;
}

/* Si el meta está dentro de un <small> o similar, mantenemos el alineado */
.newsMetaSub{
  display:block;
  text-align:right;
}

/* ===== TOP ART BIGGER (carátula superior) ===== */
@media (max-width: 820px){
  .now{grid-template-columns:112px 1fr;}
  .now img{width:112px;height:112px;border-radius:20px;}
}

/* ===== RAW DEBUG (plegable) ===== */
.rawBox{
  margin-top:10px;
  width:100%;
  max-width:520px;
  background:rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  padding:10px 12px;
  backdrop-filter: blur(10px);
}
.rawBox summary{
  cursor:pointer;
  font-weight:800;
  letter-spacing:.04em;
  color:rgba(255,255,255,.88);
  list-style:none;
}
.rawBox summary::-webkit-details-marker{ display:none; }
.rawBox summary::after{
  content:"▼";
  float:right;
  opacity:.65;
}
.rawBox[open] summary::after{ content:"▲"; }
.rawBox pre{
  margin:10px 0 0 0;
  white-space:pre-wrap;
  word-break:break-word;
  font-size:11px;
  line-height:1.35;
  color:rgba(255,255,255,.82);
  max-height:220px;
  overflow:auto;
}

/* ===== LOCUTOR ART RING ===== */
.showBanner__artWrap img#showArt{
  box-shadow: 0 0 0 2px rgba(0,208,255,.18), 0 18px 46px rgba(0,0,0,.35);
}


/* ===== FOOTER REFINADO (más compacto) ===== */
.footer, footer{
  padding: 18px 20px !important;
  border-top: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(180deg, rgba(10,14,24,.8), rgba(8,12,20,.95));
}

.footer__inner{
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr;
  gap: 18px;
}

.footer h3, .footer h4{
  font-size: 14px !important;
  letter-spacing: .4px;
  margin-bottom: 6px;
  color: #fff;
}

.footer p, .footer a, .footer li{
  font-size: 12px !important;
  line-height: 1.45;
  color: rgba(255,255,255,.7);
}

.footer a:hover{
  color:#00d0ff;
}

.footer__col{
  display:flex;
  flex-direction:column;
  gap:6px;
}

.footer .brandMini{
  font-size: 13px;
  font-weight:700;
  color:#fff;
}

.footer__bottom{
  margin-top: 10px;
  padding-top: 8px;
  border-top: 1px dashed rgba(255,255,255,.08);
  font-size: 11px;
  color: rgba(255,255,255,.5);
  text-align:center;
}

@media (max-width: 820px){
  .footer__inner{
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .footer{
    padding:14px 14px !important;
  }
}

/* FOOTER LOGO */
.footerLogoWrap{
  display:flex;
  justify-content:center;
  margin-bottom:10px;
}
.footerLogoNRE{
  max-width:180px;
  opacity:.9;
  filter: drop-shadow(0 0 8px rgba(0,180,255,.4));
  animation: glowPulse 3s ease-in-out infinite;
}
@keyframes glowPulse{
  0%,100%{ filter: drop-shadow(0 0 6px rgba(0,180,255,.3));}
  50%{ filter: drop-shadow(0 0 18px rgba(0,180,255,.7));}
}

/* AUDIO WAVE */
.footerWave{
  display:flex;
  justify-content:center;
  align-items:flex-end;
  gap:3px;
  height:20px;
  margin-top:6px;
}
.footerWave span{
  width:3px;
  height:6px;
  background:#00d0ff;
  display:block;
  border-radius:2px;
  animation: wave 1s infinite ease-in-out;
}
.footerWave span:nth-child(2){animation-delay:.1s}
.footerWave span:nth-child(3){animation-delay:.2s}
.footerWave span:nth-child(4){animation-delay:.3s}
.footerWave span:nth-child(5){animation-delay:.4s}
.footerWave span:nth-child(6){animation-delay:.5s}

@keyframes wave{
  0%,100%{height:4px;opacity:.6}
  50%{height:18px;opacity:1}
}

/* ON AIR */
.footerOnAir{
  text-align:center;
  font-size:11px;
  margin-top:6px;
  color:#9adfff;
  letter-spacing:.6px;
}
.footerOnAir::before{
  content:'●';
  color:#00ff6a;
  margin-right:6px;
  animation:blink 1.2s infinite;
}
@keyframes blink{
  0%,100%{opacity:1}
  50%{opacity:.2}
}


/* ===== PREPRODUCCIÓN / EN OBRAS CENTRADO (CONTENEDOR + TEXTO) ===== */
.preprod, .preprodBanner, .preprodNotice, .siteNotice, .devNotice, .noticeDev, .noticePreprod{
  display:flex !important;
  justify-content:center !important;
}

.preprod *, .preprodBanner *, .preprodNotice *, .siteNotice *, .devNotice *, .noticeDev *, .noticePreprod *{
  text-align:center !important;
}

/* Si la barra es full-width, centramos el contenido interno */
.preprod__inner, .preprodBanner__inner, .notice__inner, .siteNotice__inner, .devNotice__inner{
  margin: 0 auto !important;
  width: 100% !important;
  max-width: 1200px !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap: 10px !important;
}

/* Por si el bloque tiene botón "Ocultar" a la derecha: lo dejamos pero sin romper centrado */
.preprod button, .preprodBanner button, .preprodNotice button, .siteNotice button, .devNotice button{
  margin-left: 12px !important;
}

/* ===== PREPRODUCCIÓN: CENTRADO REAL (el botón no desplaza) ===== */
#preprodBar{
  display:flex;
  justify-content:center;
}
#preprodBar .noticebar__inner{
  position:relative;
  width:100%;
  max-width:1200px;
  margin:0 auto;
  display:flex;
  justify-content:center;
  align-items:center;
  padding-right:140px; /* reserva para el botón */
}
#preprodBar .noticebar__text{
  text-align:center;
}
#preprodBar #hidePreprod{
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
}

/* ===== PREPROD HARD CENTER (override any other) ===== */
#preprodBar.wrap{max-width:1280px;margin:0 auto;}
#preprodBar.noticebar{width:100%;}
#preprodBar .noticebar__inner{margin:0 auto !important;}



/* ===== LED DIRECTO (solo en el botón EN DIRECTO) ===== */
.live__dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#ff2a2a;
  display:inline-block;
  margin-right:8px;
  box-shadow:0 0 10px rgba(255,0,0,.75);
  animation: liveBlink 1s infinite;
}


/* Reloj sin parpadeo */
.clock__dot{ animation:none !important; }

/* CLOCK ICON */
.clockIcon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-right:8px;
  opacity:.9;
}
.clockIcon svg{
  color:#9adfff;
  filter: drop-shadow(0 0 6px rgba(0,180,255,.35));
}

/* WEATHER ICON */
.weatherIcon{
  display:inline-flex;
  align-items:center;
  margin-right:6px;
  color:#00d0ff;
  filter: drop-shadow(0 0 6px rgba(0,180,255,.4));
}

/* TRAFFIC ICON */
.trafficIcon{
  display:inline-flex;
  align-items:center;
  margin-right:6px;
  color:#ffaa33;
  filter: drop-shadow(0 0 6px rgba(255,170,50,.4));
}


/* ===== EN DIRECTO DOT (SOLO ESTE PARPADEA) ===== */
.live__dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#ff2a2a;
  display:inline-block;
  margin-right:10px;
  box-shadow:
    0 0 0 0 rgba(255,0,0,.7),
    0 0 10px rgba(255,0,0,.8);
  animation: livePulse 1.2s infinite;
}

/* pulso broadcast */
@keyframes livePulse{
  0%{
    transform:scale(1);
    box-shadow:
      0 0 0 0 rgba(255,0,0,.7),
      0 0 8px rgba(255,0,0,.8);
  }
  70%{
    transform:scale(1);
    box-shadow:
      0 0 0 8px rgba(255,0,0,0),
      0 0 14px rgba(255,0,0,.6);
  }
  100%{
    transform:scale(1);
    box-shadow:
      0 0 0 0 rgba(255,0,0,0),
      0 0 8px rgba(255,0,0,.8);
  }
}

/* EN DIRECTO EN UNA LINEA */
.live, .live__pill, .enDirecto{
  display:inline-flex !important;
  align-items:center;
  white-space:nowrap;
}

/* ART MAS GRANDE */
.showBanner__artWrap img,
#showArt{
  width:120px !important;
  height:120px !important;
  object-fit:cover;
}

/* TAGLINE (la radio de la gente positiva) en una línea */
.brandTagline, .siteTagline, .headerTagline, .brand__tagline, .logoText small{
  white-space: nowrap;
  display:block;
  max-width: 520px;
  overflow:hidden;
  text-overflow: ellipsis;
}

/* Si el contenedor del logo es estrecho, baja un pelín la letra */
.brandTagline, .siteTagline, .headerTagline, .brand__tagline, .logoText small{
  font-size: 12px;
}

/* ART MÁS GRANDE (hero/right + programa) */
.now img{
  width:152px !important;
  height:152px !important;
  border-radius:24px !important;
}
.showBanner__artWrap img,
#showArt{
  width:140px !important;
  height:140px !important;
  border-radius:26px !important;
}
@media (max-width:820px){
  .now img{width:128px !important;height:128px !important;}
  .showBanner__artWrap img,#showArt{width:120px !important;height:120px !important;}
}

/* ===== TAGLINE SIN MONTAJE ===== */
.brand, .headerBrand, .logoText{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
}

.brandTagline, .siteTagline, .headerTagline, .brand__tagline, .logoText small{
  white-space:nowrap;
  line-height:1.2;
  font-size:12px;
  opacity:.9;
}

/* evitar solapamiento con el logo */
.logoText{
  max-width: 320px;
}

/* en pantallas pequeñas permitir salto limpio */
@media (max-width: 900px){
  .brandTagline, .siteTagline, .headerTagline, .brand__tagline, .logoText small{
    white-space:normal;
  }
}


/* ===== HERO RIGHT PANEL MAQUETADO (como referencia) ===== */
.heroRightCard{
  position:relative;
  padding:18px 18px 16px;
  border-radius:22px;
  background: linear-gradient(180deg, rgba(12,18,32,.72), rgba(10,14,24,.82));
  border:1px solid rgba(255,255,255,.08);
  box-shadow: 0 30px 80px rgba(0,0,0,.35);
  overflow:hidden;
}
.heroRightCard::after{
  content:'';
  position:absolute;
  inset:-40px -40px auto auto;
  width:280px;
  height:280px;
  background: radial-gradient(circle at 30% 30%, rgba(0,208,255,.18), rgba(0,0,0,0) 60%);
  pointer-events:none;
  transform: rotate(12deg);
  opacity:.9;
}
.heroRightCard .statusPill,
.heroRightCard .status{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:8px 12px;
  border-radius:999px;
  background: rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(10px);
}
.heroRightCard .statusPill .dot,
.heroRightCard .status .dot{
  width:10px;height:10px;border-radius:50%;
  background:#ff2a2a;
  box-shadow:0 0 10px rgba(255,0,0,.75);
}
.heroRightCard .topRow{
  display:grid;
  grid-template-columns: 86px 1fr;
  gap:14px;
  align-items:center;
  margin-top:14px;
}
.heroRightCard .topRow img,
.heroRightCard img#heroArt,
.heroRightCard img#showArt{
  width:86px;height:86px;
  border-radius:18px;
  object-fit:cover;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.05);
}
.heroRightCard .station{
  font-size:22px;
  font-weight:800;
  letter-spacing:.2px;
  margin:0;
}
.heroRightCard .subline{
  margin-top:6px;
  color: rgba(255,255,255,.65);
  font-size:14px;
  font-weight:600;
}
.heroRightCard .connecting{
  margin-top:10px;
  color: rgba(255,255,255,.55);
  font-size:13px;
}
.heroRightCard .divider{
  margin:14px 0 12px;
  height:1px;
  background: rgba(255,255,255,.08);
}
.diagPanel h3{
  font-size:18px;
  margin:0 0 10px 0;
  letter-spacing:.2px;
}
.diagPanel .diagList{
  display:grid;
  gap:10px;
}
.diagPanel .diagItem{
  display:grid;
  grid-template-columns: 12px 1fr;
  gap:10px;
  align-items:center;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size:13px;
  color: rgba(255,255,255,.78);
}
.diagPanel .diagDot{
  width:10px;height:10px;border-radius:50%;
  background:#ff2a2a;
  box-shadow:0 0 10px rgba(255,0,0,.45);
}
.diagPanel .diagDot.ok{ background:#00ff6a; box-shadow:0 0 10px rgba(0,255,106,.45); }
.diagPanel .diagDot.warn{ background:#ffaa33; box-shadow:0 0 10px rgba(255,170,51,.45); }
.diagPanel .diagLine{
  display:flex;
  justify-content:space-between;
  gap:10px;
  white-space:nowrap;
}
.diagPanel .diagLeft{ opacity:.9; }
.diagPanel .diagRight{ opacity:.8; }
.diagPanel .diagRight code{ color: rgba(255,255,255,.8); }
.diagPanel details.rawBox{
  margin-top:12px;
  border-top:1px dashed rgba(255,255,255,.10);
  padding-top:10px;
}
.diagPanel details.rawBox > summary{
  cursor:pointer;
  list-style:none;
  color: rgba(255,255,255,.72);
  font-size:12px;
  letter-spacing:.25px;
}
.diagPanel details.rawBox > summary::-webkit-details-marker{ display:none; }
.diagPanel pre.raw{
  margin-top:10px;
  max-height:220px;
  overflow:auto;
  background: rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  padding:10px 12px;
  font-size:12px;
  color: rgba(255,255,255,.78);
}


/* ===== NRE patch: nowplaying stats + better fit ===== */
.now .title{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  line-height:1.12;
  max-width:100%;
}
.now .artist{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  line-height:1.15;
}
.npStats{
  margin-top:10px;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  color:rgba(255,255,255,.84);
  font-weight:800;
  font-size:12.5px;
}
.npStat{display:inline-flex;align-items:center;gap:8px}
.npStat .i{opacity:.9}
.npStat .k{opacity:.72;font-weight:700}
.npStat .v{font-variant-numeric:tabular-nums;font-weight:950}
.npStats .sep{opacity:.35}

.mini__v #qualityMode{font-weight:800;color:rgba(255,255,255,.9)}


/* Pills icons */
.pill{display:inline-flex;align-items:center;gap:8px}
.pill__ic{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;opacity:.9}
.pill__ic svg{width:18px;height:18px;fill:currentColor;opacity:.95}
.pill__tx{display:inline-block}


.showBanner__inner{ position:relative; z-index:1; }


/* === Ajustes de maquetación marzo === */
.hero,.showBanner,.box,.modsPanel,.side,.dock{position:relative;overflow:hidden}
.hero::before,.box::before,.modsPanel::before,.side::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.012));
  pointer-events:none;
}
.now{margin-top:18px;padding:14px;border-radius:20px;background:rgba(5,10,20,.46);border:1px solid rgba(255,255,255,.08)}
.now > div{padding-left:12px}
.title{font-size:20px}
.artist{font-size:16px}
.npStats{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px;color:rgba(255,255,255,.68);font-size:12px;font-weight:800}
.npStat{display:inline-flex;align-items:center;gap:6px}
.npStat .k{opacity:.78}
.listenPlatforms{margin-top:16px;padding:14px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg, rgba(4,10,20,.62), rgba(4,10,20,.78)), url('../assets/faq/help_agregadores.jpg') center/cover no-repeat;box-shadow:0 14px 34px rgba(0,0,0,.18)}
.listenPlatforms__title{text-align:center;font-size:11px;font-weight:900;letter-spacing:.14em;color:rgba(255,255,255,.66);margin-bottom:10px;text-transform:uppercase}
.listenPlatforms__list{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 14px}
.listenPlatform{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);text-decoration:none;font-size:12px;font-weight:800;color:rgba(255,255,255,.86)}
.listenPlatform__icon{width:10px;height:10px;border-radius:50%;display:inline-block;box-shadow:0 0 0 5px rgba(255,255,255,.06)}
.listenPlatform.tunein .listenPlatform__icon{background:#14d8cc;box-shadow:0 0 10px rgba(20,216,204,.75)}
.listenPlatform.alexa .listenPlatform__icon{background:#00caff;box-shadow:0 0 10px rgba(0,202,255,.75)}
.listenPlatform.google .listenPlatform__icon{background:#ea4335;box-shadow:0 0 10px rgba(234,67,53,.75)}
.listenPlatform.android .listenPlatform__icon{background:#3ddc84;box-shadow:0 0 10px rgba(61,220,132,.75)}
.showBanner{margin-top:16px;padding:20px 22px;background:rgba(255,255,255,.04)}

.showBanner::before{
  content:none !important;
  background:none !important;
}
.showBanner::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg, rgba(3,8,18,.70) 0%, rgba(3,8,18,.45) 38%, rgba(3,8,18,.20) 100%);
  pointer-events:none;
}

.showBanner__inner{position:relative;z-index:1;display:grid;grid-template-columns:140px minmax(0,1fr) 280px;gap:18px;align-items:center}
.showBanner__artWrap{
  position:relative;
  width:140px;
  height:160px;
  flex:0 0 140px;
  padding-bottom:20px;
  overflow:visible;
}
.showBanner__artWrap img{width:140px;height:140px;object-fit:cover}
.showBanner__tag{
  position:absolute;
  left:50%;
  bottom:-6px;
  transform:translateX(-50%);
  max-width:120px;
  padding:6px 10px;
  border-radius:14px;
  font-size:10px;
  font-weight:800;
  text-align:center;
  line-height:1.1;
  background:#33e0a1;
  color:#041018;
  box-shadow:0 6px 16px rgba(0,0,0,.35);
}
.showBanner__kicker{font-size:11px;font-weight:900;letter-spacing:.18em;color:rgba(255,255,255,.72);text-transform:uppercase;margin-bottom:8px}
.showBanner__title{font-size:28px;line-height:1.02;font-weight:900;margin-bottom:8px}
.showBanner__sub{font-size:16px;color:rgba(255,255,255,.78);max-width:50ch}
.showBanner__row{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.showTimeBlock{padding:16px 18px;border-radius:20px;border:1px solid rgba(255,255,255,.10);background:rgba(5,10,20,.56)}
.showRange{font-size:28px;font-weight:900;line-height:1}
.showMetaLine,.showEnd,.showDays,.showPrev,.showNext{margin-top:8px;color:rgba(255,255,255,.78);font-weight:700;font-size:13px}
.showCountdown{margin-top:12px;color:#27ffc5;font-weight:900;font-size:22px}
.showProgress{height:8px;border-radius:999px;background:rgba(255,255,255,.10);overflow:hidden;margin-top:12px}
.showProgress .bar{height:100%;width:0;background:linear-gradient(90deg,#1fdfff,#26ffb6);border-radius:999px}
.modsEyebrow{font-size:11px;font-weight:900;letter-spacing:.16em;color:rgba(255,255,255,.6);text-transform:uppercase;margin-bottom:8px}
.dock{margin-top:18px;background:linear-gradient(to top, rgba(7,11,20,.96), rgba(7,11,20,.88)), url('../assets/dock/dock_eq_bg.png') center bottom / cover no-repeat;border:1px solid rgba(255,255,255,.08);border-radius:26px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.dock__inner{padding:12px 14px}
.dock__left,.dock__center,.dock__right{padding:8px 12px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(5,10,20,.42)}
.dock__left{min-width:0;flex:1 1 42%}
.dock__np{min-width:0}
.dock__line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dock__sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dock__center{flex:0 1 34%;justify-content:center}
.dock__right{flex:0 1 24%;justify-content:flex-end;margin-left:8px}
.dock__right select{width:100%;max-width:240px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:14px;padding:10px 12px;font-weight:800}
@media (max-width: 960px){
  .hero__grid{grid-template-columns:1fr}
  .showBanner__inner{grid-template-columns:1fr;align-items:flex-start}
  .showTimeBlock{width:100%}
}


/* Peticiones AzuraCast preparadas */
.requestSection{margin-top:16px;padding:20px 22px;position:relative;overflow:hidden;
background:
linear-gradient(90deg, rgba(7,11,20,.92) 0%, rgba(7,11,20,.82) 38%, rgba(7,11,20,.74) 62%, rgba(7,11,20,.86) 100%),
url('../assets/sections/request_bg.svg') right center / cover no-repeat;
border:1px solid rgba(255,255,255,.08)}
.requestSection__inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px;align-items:start}
.requestSection__title{margin:4px 0 8px;font-size:30px;line-height:1.05;font-weight:950}
.requestSection__text{margin:0;color:rgba(255,255,255,.72);line-height:1.6;max-width:58ch}
.requestSection__meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.requestBadge{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);font-size:12px;font-weight:900;color:rgba(255,255,255,.86)}
.requestBadge .dot{width:8px;height:8px;border-radius:999px;background:var(--ok);box-shadow:0 0 0 5px rgba(43,255,180,.12)}
.requestBadge--soft{color:rgba(255,255,255,.68)}
.requestForm{border:1px solid rgba(255,255,255,.08);border-radius:20px;background:rgba(5,10,20,.44);padding:16px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.requestGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.requestField{display:flex;flex-direction:column;gap:8px}
.requestField span{font-size:12px;font-weight:900;letter-spacing:.06em;color:rgba(255,255,255,.74)}
.requestField input,.requestField textarea{width:100%;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);border-radius:14px;padding:12px 14px;color:#fff;outline:none;font:inherit}
.requestField input::placeholder,.requestField textarea::placeholder{color:rgba(255,255,255,.42)}
.requestField input:focus,.requestField textarea:focus{border-color:rgba(43,211,255,.35);box-shadow:0 0 0 4px rgba(43,211,255,.08)}
.requestField--wide{grid-column:1/-1}
.requestActions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:14px;flex-wrap:wrap}
.requestHint{font-size:12px;color:rgba(255,255,255,.6)}

@media (max-width: 900px){
  .requestSection__inner{grid-template-columns:1fr}
  .requestSection__title{font-size:24px}
}
@media (max-width: 640px){
  .requestGrid{grid-template-columns:1fr}
}

/* ===== PATCH 2026-03-13 · fondos recuperados + dock sticky ===== */
:root{
  --panel-bg-strong: linear-gradient(180deg, rgba(7,12,24,.92), rgba(5,9,18,.82));
  --panel-bg-soft: linear-gradient(180deg, rgba(10,16,32,.82), rgba(6,10,20,.72));
}

.hero,
.showBanner,
.box,
.modsPanel,
.side,
.requestSection,
.listenPlatforms{
  background: var(--panel-bg-soft);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 14px 34px rgba(0,0,0,.28);
  backdrop-filter: blur(8px);
}

.hero{
  background:
    radial-gradient(70% 120% at 18% 18%, rgba(35,164,255,.10), transparent 55%),
    linear-gradient(180deg, rgba(9,16,30,.92), rgba(6,10,18,.84));
}
.hero::before{
  opacity:.12;
  background:
    linear-gradient(90deg, rgba(4,8,16,.34), rgba(4,8,16,.08)),
    url('../assets/nre_logo_big.png') center/contain no-repeat;
}

.side{
  background:
    radial-gradient(80% 140% at 100% 0%, rgba(55,146,255,.10), transparent 48%),
    linear-gradient(180deg, rgba(9,15,28,.88), rgba(5,9,18,.80));
}

.now{
  margin-top:20px;
  padding:16px;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(8,14,28,.86), rgba(5,10,20,.74));
  border:1px solid rgba(255,255,255,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.box,
.modsPanel,
.requestSection{
  background:
    linear-gradient(180deg, rgba(8,14,28,.88), rgba(5,10,20,.78));
}

.box::before,
.modsPanel::before,
.side::before,
.requestSection::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.012));
}

.showBanner{
  background:linear-gradient(180deg, rgba(8,14,28,.82), rgba(4,8,16,.70));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 18px 40px rgba(0,0,0,.30);
}

.showBanner::before{
  content:none !important;
  background:none !important;
}
.showBanner::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(90deg, rgba(3,8,18,.70) 0%, rgba(3,8,18,.45) 38%, rgba(3,8,18,.20) 100%);
  pointer-events:none;
}

.showTimeBlock{
  background:linear-gradient(180deg, rgba(7,12,24,.82), rgba(4,8,16,.70));
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.listenPlatforms,
.requestForm{
  background:linear-gradient(180deg, rgba(8,14,28,.84), rgba(5,10,20,.74));
}

.dock{
  position:sticky;
  bottom:10px;
  z-index:46;
  margin:18px auto 0;
  width:min(1280px, calc(100vw - 22px));
  background:linear-gradient(to top, rgba(7,11,20,.96), rgba(7,11,20,.88)), url('../assets/dock/dock_eq_bg.png') center bottom / cover no-repeat;
  border:1px solid rgba(255,255,255,.09);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.05),
    0 18px 44px rgba(0,0,0,.36);
}
.dock::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.01));
}
.dock__inner{
  gap:12px;
  padding:12px 14px;
}
.dock__left,
.dock__center,
.dock__right{
  min-height:78px;
  background:linear-gradient(180deg, rgba(7,12,24,.84), rgba(4,8,16,.72));
  border:1px solid rgba(255,255,255,.09);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.dock__left{padding:10px 14px;}
.dock__center{padding:10px 12px;}
.dock__right{padding:10px 12px; margin-left:0;}
.dock__right select{
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}

body{
  padding-bottom:120px;
}

@media (max-width: 960px){
  .dock{
    position:static;
    width:100%;
    margin-top:16px;
  }
  body{padding-bottom:48px;}
}


/* ===== PATCH FINAL NRE 2026-03-13d ===== */
.side{
  background:
    linear-gradient(180deg, rgba(6,10,18,.34) 0%, rgba(6,10,18,.76) 100%),
    radial-gradient(circle at top right, rgba(82,146,255,.22) 0%, rgba(82,146,255,0) 38%),
    url('../assets/antenna_panel.png') center/cover no-repeat,
    linear-gradient(180deg, rgba(9,15,28,.88), rgba(5,9,18,.80));
  background-blend-mode:normal,screen,normal,normal;
}

.pill__ic{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px}
.pill__ic svg{width:16px;height:16px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.npTextWrap,.dock__lineWrap{overflow:hidden;min-width:0;position:relative}
.npText{display:block;white-space:nowrap;will-change:transform}
.npText.is-marquee{display:inline-block;padding-left:100%;animation:marqueeRTL var(--mq,12s) linear infinite}
@keyframes marqueeRTL{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}

#art{margin-right:4px}
.now{gap:18px}

.dock{
  border-radius:24px;
  background:linear-gradient(to top, rgba(7,11,20,.96), rgba(7,11,20,.88)), url('../assets/dock/dock_eq_bg.png') center bottom / cover no-repeat;
  overflow:hidden;
}
.dock__left,.dock__center,.dock__right{
  position:relative;
  background:
    radial-gradient(circle at 12px 12px, rgba(172,182,196,.44) 0 1.2px, rgba(46,52,61,.96) 1.3px 4.4px, transparent 4.6px),
    radial-gradient(circle at calc(100% - 12px) 12px, rgba(172,182,196,.44) 0 1.2px, rgba(46,52,61,.96) 1.3px 4.4px, transparent 4.6px),
    radial-gradient(circle at 12px calc(100% - 12px), rgba(172,182,196,.44) 0 1.2px, rgba(46,52,61,.96) 1.3px 4.4px, transparent 4.6px),
    radial-gradient(circle at calc(100% - 12px) calc(100% - 12px), rgba(172,182,196,.44) 0 1.2px, rgba(46,52,61,.96) 1.3px 4.4px, transparent 4.6px),
    linear-gradient(180deg, rgba(20,27,39,.96), rgba(8,12,18,.90));
}
.dock__left{gap:14px;min-height:84px}
.dock__left img{width:54px;height:54px;border-radius:16px;box-shadow:0 0 0 1px rgba(255,255,255,.06),0 8px 18px rgba(0,0,0,.28)}
.dock__eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.58);font-weight:900;margin-bottom:5px}
.dock__line{font-size:15px;font-weight:900;letter-spacing:.01em}
.dock__sub{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.56)}
.dock__center{gap:14px;align-items:center}
.iconbtn{position:relative;width:48px;height:48px;border-radius:14px;background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.04));box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 10px 20px rgba(0,0,0,.22)}
.playLed{position:absolute;top:7px;right:7px;width:9px;height:9px;border-radius:999px;background:#6b1010;box-shadow:0 0 0 1px rgba(255,255,255,.06),0 0 10px rgba(255,46,46,.24)}
.playLed.is-on{background:#40ff8b;box-shadow:0 0 0 1px rgba(255,255,255,.06),0 0 12px rgba(64,255,139,.56)}
.playLed.is-off{background:#ff4646;box-shadow:0 0 0 1px rgba(255,255,255,.06),0 0 12px rgba(255,70,70,.42)}
.vuPanel{display:grid;gap:8px;min-width:220px}
.vuRow{display:grid;grid-template-columns:16px 1fr;align-items:center;gap:8px}
.vuLabel{font-size:12px;font-weight:900;letter-spacing:.12em;color:rgba(255,255,255,.72)}
.ledMeter{display:grid;grid-template-columns:repeat(18, minmax(0, 1fr));gap:4px;align-items:center}
.ledSeg{height:10px;border-radius:3px;background:#14202b;box-shadow:inset 0 1px 0 rgba(255,255,255,.04), inset 0 -1px 0 rgba(0,0,0,.45);transition:background .08s linear, box-shadow .08s linear, transform .08s linear}
.ledSeg.is-on{transform:translateY(-.4px)}
.ledSeg.zone-low.is-on{background:#2fffb4;box-shadow:0 0 10px rgba(47,255,180,.36)}
.ledSeg.zone-mid.is-on{background:#ffe06c;box-shadow:0 0 10px rgba(255,224,108,.34)}
.ledSeg.zone-high.is-on{background:#ff5f5f;box-shadow:0 0 10px rgba(255,95,95,.38)}
.peakWrap{display:flex;align-items:center;gap:7px;padding:0 4px}
.peakLed{width:10px;height:10px;border-radius:999px;background:#5a1010;box-shadow:0 0 0 1px rgba(255,255,255,.05),0 0 10px rgba(255,70,70,.18);transition:background .08s linear, box-shadow .08s linear}
.peakLed.is-hot{background:#ff4242;box-shadow:0 0 0 1px rgba(255,255,255,.06),0 0 14px rgba(255,66,66,.55)}
.peakText{font-size:11px;font-weight:900;letter-spacing:.12em;color:rgba(255,255,255,.58)}
.vol{gap:8px}
.vol input{accent-color:#66e0ff;width:108px}
.dock__right{display:grid;gap:8px;justify-items:stretch;min-width:200px}
.dock__sourceLabel{font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.56)}
.dock__right select{padding:10px 12px;border-radius:12px;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.box__t,.modsPanel__title,.showBanner__kicker,.requestSection__title{position:relative}
.box__t::before,.modsPanel__title::before,.showBanner__kicker::before{content:'';display:inline-block;vertical-align:-2px;width:14px;height:14px;margin-right:8px;border-radius:4px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(180deg, rgba(87,206,255,.28), rgba(87,206,255,.08))}
.showBanner__kicker::before{border-radius:999px;width:10px;height:10px;vertical-align:1px}
.requestSection__title::before{content:'';display:inline-block;width:18px;height:18px;margin-right:10px;vertical-align:-3px;border-radius:6px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg, rgba(43,255,180,.28), rgba(43,255,180,.08))}


/* === HERO RIGHT ANTENNA NIGHT BG === */
.side{
position:relative;
overflow:hidden;
background:
linear-gradient(90deg, rgba(6,10,18,.94) 0%, rgba(6,10,18,.75) 40%, rgba(6,10,18,.2) 70%),
url('../assets/hero/hero_night_antenna_madrid.png') right center / cover no-repeat,
rgba(10,16,32,.55);
}


/* ===== DOCK BACKGROUND FINAL FIX ===== */
.dock{
background:
linear-gradient(to top, rgba(7,11,20,.96), rgba(7,11,20,.88)),
url('../assets/dock/dock_eq_bg.png') center bottom / cover no-repeat !important;
}


/* ===== DOCK BACKGROUND VISIBLE FINAL ===== */
.dock{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(to top, rgba(7,11,20,.58), rgba(7,11,20,.34)),
    url('../assets/dock/dock_eq_bg.png') center bottom / cover no-repeat !important;
}

.dock::before{
  content:"";
  position:absolute;
  inset:0;
  background:url('../assets/dock/dock_eq_bg.png') center bottom / cover no-repeat;
  opacity:.34;
  mix-blend-mode:screen;
  pointer-events:none;
  z-index:0;
}

.dock::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,0) 18%),
    linear-gradient(to top, rgba(5,8,14,.18), rgba(5,8,14,.02));
  pointer-events:none;
  z-index:0;
}

.dock > *{
  position:relative;
  z-index:1;
}


/* ===== DOCK BACKGROUND SCALE FIX ===== */
.dock{
  background-position:center 85% !important;
  background-size:75% !important;
}


/* ===== DOCK BACKGROUND SCALE FINAL ===== */
.dock{
  background-position:center 85% !important;
  background-size:72% !important;
}


/* ===== AGREGADORES ICONOS VISIBLES ===== */
.listenPlatform__icon{
  width:18px;
  height:18px;
  border-radius:0;
  box-shadow:none;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  flex:0 0 18px;
}
.listenPlatform.tunein .listenPlatform__icon{background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%0A%3Crect%20x%3D%273%27%20y%3D%274%27%20width%3D%2718%27%20height%3D%2716%27%20rx%3D%274%27%20fill%3D%27%2314d8cc%27/%3E%0A%3Crect%20x%3D%277%27%20y%3D%278%27%20width%3D%274%27%20height%3D%278%27%20rx%3D%271.2%27%20fill%3D%27%2306222a%27/%3E%0A%3Crect%20x%3D%2713%27%20y%3D%278%27%20width%3D%274%27%20height%3D%278%27%20rx%3D%271.2%27%20fill%3D%27%2306222a%27/%3E%0A%3C/svg%3E") !important;}
.listenPlatform.alexa .listenPlatform__icon{background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%0A%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%2710%27%20fill%3D%27%2300caff%27/%3E%0A%3Cpath%20d%3D%27M7%2013c1.5%203%208.5%203%2010%200%27%20fill%3D%27none%27%20stroke%3D%27%23052033%27%20stroke-width%3D%272%27%20stroke-linecap%3D%27round%27/%3E%0A%3Ccircle%20cx%3D%2710%27%20cy%3D%2710%27%20r%3D%271%27%20fill%3D%27%23052033%27/%3E%3Ccircle%20cx%3D%2714%27%20cy%3D%2710%27%20r%3D%271%27%20fill%3D%27%23052033%27/%3E%0A%3C/svg%3E") !important;}
.listenPlatform.google .listenPlatform__icon{background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%0A%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%2710%27%20fill%3D%27white%27/%3E%0A%3Cpath%20d%3D%27M12%204a8%208%200%20108%208h-8z%27%20fill%3D%27%234285F4%27/%3E%0A%3Cpath%20d%3D%27M12%204a8%208%200%2000-5.66%202.34l2.83%202.83A4%204%200%200112%208z%27%20fill%3D%27%23EA4335%27/%3E%0A%3Cpath%20d%3D%27M6.34%206.34A8%208%200%20004%2012h4a4%204%200%20011.17-2.83z%27%20fill%3D%27%23FBBC05%27/%3E%0A%3Cpath%20d%3D%27M8%2016a4%204%200%20005.66%201.17l2.83%202.83A8%208%200%20018%2016z%27%20fill%3D%27%2334A853%27/%3E%0A%3C/svg%3E") !important;}
.listenPlatform.android .listenPlatform__icon{background-image:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A//www.w3.org/2000/svg%27%20viewBox%3D%270%200%2024%2024%27%3E%0A%3Crect%20x%3D%274%27%20y%3D%277%27%20width%3D%2716%27%20height%3D%2710%27%20rx%3D%275%27%20fill%3D%27%233ddc84%27/%3E%0A%3Ccircle%20cx%3D%279%27%20cy%3D%2712%27%20r%3D%271.2%27%20fill%3D%27%2308331b%27/%3E%3Ccircle%20cx%3D%2715%27%20cy%3D%2712%27%20r%3D%271.2%27%20fill%3D%27%2308331b%27/%3E%0A%3Cpath%20d%3D%27M8%205l-1.5-2M16%205l1.5-2%27%20stroke%3D%27%233ddc84%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27/%3E%0A%3C/svg%3E") !important;}

/* un poco más de aire visual */
.listenPlatforms__list{gap:12px 16px;}
.listenPlatform{padding:9px 12px;}


/* ===== Datos en tiempo real: tiempo + tráfico ===== */
.rtStack{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top:10px;
}
.rtItem{
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:rgba(255,255,255,.04);
  padding:14px 14px 12px;
}
.rtItem__head{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(255,255,255,.7);
  margin-bottom:8px;
}
.rtItem__icon{
  width:18px;
  text-align:center;
  display:inline-block;
}
.rtItem__value{
  font-size:15px;
  font-weight:800;
  color:rgba(255,255,255,.9);
  line-height:1.45;
}
.rtItem__meta{
  margin-top:6px;
  font-size:12px;
  color:rgba(255,255,255,.6);
  line-height:1.45;
}


/* ===== Centro de ayuda NRE ===== */
.faqItem{
  margin-bottom:14px;
  color:rgba(255,255,255,.8);
  line-height:1.55;
  font-size:14px;
}
.faqItem b{
  display:block;
  margin-bottom:4px;
  color:#fff;
}
.supportBlock{
  margin-top:14px;
  padding:14px;
  border-radius:14px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
}
.supportBlock b{
  display:block;
  margin-bottom:6px;
}
.supportMail{
  margin:10px 0 0;
}
.supportMail a{
  color:#38e1ff;
  font-weight:800;
  text-decoration:none;
}

/* ===== Marquee limpio nowplaying hero ===== */
.now .npTextWrap{
  overflow:hidden;
  min-width:0;
  position:relative;
}
.now .npText{
  display:block;
  white-space:nowrap;
  will-change:transform;
}
.now .title.npText{
  font-weight:950;
  font-size:18px;
  margin-top:6px;
  line-height:1.15;
  display:block;
  white-space:nowrap;
  overflow:visible;
  -webkit-line-clamp:unset;
  -webkit-box-orient:initial;
}
.now .artist.npText{
  color:rgba(255,255,255,.78);
  font-weight:800;
  margin-top:4px;
  line-height:1.2;
  white-space:nowrap;
  overflow:visible;
  text-overflow:clip;
}
.now .npText.is-marquee{
  display:inline-block;
  padding-left:100%;
  animation:marqueeRTL var(--mq,12s) linear infinite;
}


/* proveedores fix tamaño logos */
.providers{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:16px;
margin-top:12px;
align-items:center;
}

.provider{
text-align:center;
padding:12px;
background:rgba(255,255,255,.03);
border:1px solid rgba(255,255,255,.06);
border-radius:12px;
overflow:hidden;
}

.provider img{
max-height:32px;
max-width:120px;
width:auto;
height:auto;
object-fit:contain;
display:block;
margin:0 auto 6px auto;
filter:grayscale(100%) brightness(1.2) opacity(.8);
}

.provider h4{
font-size:13px;
margin:4px 0 2px 0;
font-weight:800;
}

.provider p{
font-size:11px;
opacity:.7;
margin:0;
}


/* spacing providers vertical */
.rtProviders{
margin-top:20px;
margin-bottom:10px;
}

/* allow wrapping for 6 providers */
.providers{
grid-template-columns:repeat(3,1fr);
row-gap:22px;
}


/* providers six fix */
.rtProviders{margin-top:20px;margin-bottom:8px}
.providers{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin:16px 0 8px;
  align-items:stretch;
}
.provider{
  text-align:center;
  padding:12px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
  border-radius:12px;
  overflow:hidden;
}
.provider img{
  max-height:32px;
  max-width:120px;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
  margin:0 auto 8px;
  filter:grayscale(100%) brightness(1.2) opacity(.8);
}
.provider h4{
  font-size:13px;
  margin:4px 0 2px;
  font-weight:800;
}
.provider p{
  font-size:11px;
  line-height:1.35;
  opacity:.75;
  margin:0;
}


/* hide duplicated provider cards only inside showTimeBlock */
.showTimeBlock > .provider{
  display:none !important;
}




/* FAQ soporte con operadora NRE como fondo integrado */
.faq-support-box{
  position:relative;
  overflow:hidden;
  min-height:420px;
  padding-right:0;
  background:
    linear-gradient(90deg, rgba(4,8,18,.96) 0%, rgba(4,8,18,.92) 28%, rgba(4,8,18,.76) 48%, rgba(4,8,18,.42) 68%, rgba(4,8,18,.18) 100%),
    url('../assets/faq/help_center_bg.png') right center / cover no-repeat,
    rgba(255,255,255,.04);
}

.faq-support-box::before,
.faq-support-box::after{
  content:none !important;
  display:none !important;
}

.faq-support-box > *{
  position:relative;
  z-index:1;
}

.faq-support-box .faqItem,
.faq-support-box .supportBlock{
  max-width:56%;
}

.faq-support-box .supportBlock{
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(3px);
}

@media (max-width: 980px){
  .faq-support-box{
    min-height:unset;
    padding-bottom:260px;
    background:
      linear-gradient(180deg, rgba(4,8,18,.94) 0%, rgba(4,8,18,.86) 48%, rgba(4,8,18,.40) 100%),
      url('../assets/faq/help_center_bg.png') right bottom / 520px auto no-repeat,
      rgba(255,255,255,.04);
  }
  .faq-support-box .faqItem,
  .faq-support-box .supportBlock{
    max-width:100%;
  }
}


/* FAQ mejorado NRE */

.faq-grid{
display:grid;
gap:14px;
margin-top:15px;
margin-bottom:25px;
}

.faq-item{
background:rgba(255,255,255,.04);
border-radius:10px;
overflow:hidden;
}

.faq-q{
width:100%;
text-align:left;
padding:16px;
background:none;
border:none;
color:white;
font-weight:600;
cursor:pointer;
}

.faq-a{
padding:16px;
opacity:.85;
border-top:1px solid rgba(255,255,255,.08);
}

.faq-contact{
margin-top:20px;
padding:18px;
border-radius:10px;
background:rgba(0,255,200,.05);
}

.faq-mail{
font-size:18px;
font-weight:600;
color:#00e0c0;
}

.faq-note{
font-size:14px;
opacity:.7;
}




/* NEXI solo en peticiones */
.requestMascotLeft{
  margin-top:20px;
}
.requestMascotLeft img{
  width:360px;
  max-width:20vw;
  min-width:260px;
  height:auto;
  display:block;
  filter:drop-shadow(0 10px 25px rgba(0,0,0,.45));
}
@media (max-width: 980px){
  .requestMascotLeft img{
    width:180px;
    max-width:48vw;
    min-width:120px;
  }
}


/* NEXI fondo del formulario */
.requestFormWrap{
position:relative;
}


.requestFormBg{
position:absolute;
right:-80px;
bottom:-20px;
opacity:.22;
pointer-events:none;
z-index:0;
}



.requestFormBg img{
width:420px;
max-width:38vw;
filter:drop-shadow(0 20px 40px rgba(0,0,0,.6));
}



.requestForm{
position:relative;
z-index:2;
}


/* ===== Footer refinado NRE ===== */
.footer{
  margin-top:24px;
  padding:26px 0 20px;
  border-top:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(900px 220px at 50% -10%, rgba(0,190,255,.10), transparent 60%),
    linear-gradient(180deg, rgba(7,11,20,.70) 0%, rgba(7,11,20,.94) 100%);
  backdrop-filter: blur(10px);
}
.footerTopBrand{
  display:flex;
  justify-content:center;
  align-items:center;
  margin-bottom:18px;
}
.footerLogoNRE{
  width:150px;
  max-width:42vw;
  height:auto;
  opacity:.96;
  filter:drop-shadow(0 0 12px rgba(0,180,255,.32));
}
.footerGridRefined{
  display:grid;
  grid-template-columns:1.1fr .8fr 1fr;
  gap:34px;
  align-items:start;
}
.footer__col{
  min-width:0;
}
.footer__title{
  margin:0 0 10px;
  font-size:14px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.02em;
  color:rgba(255,255,255,.94);
}
.footer p{
  margin:0 0 10px;
  max-width:none;
  font-size:12px !important;
  line-height:1.55;
  color:rgba(255,255,255,.72);
}
.footer .muted{
  color:rgba(255,255,255,.66);
}
.footer__links{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.footer__links li{
  margin:0;
}
.footer a{
  color:rgba(255,255,255,.76);
  text-decoration:none;
  font-weight:800;
  padding:4px 0;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.footer a:hover{
  color:#fff;
  transform:none;
  text-shadow:0 0 10px rgba(0,190,255,.16);
}
.footerBottomBrand{
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.06);
}
.footerWave{
  display:flex;
  justify-content:center;
  align-items:flex-end;
  gap:4px;
  height:22px;
  margin-top:0;
}
.footerWave span{
  width:4px;
  height:6px;
  background:#00d0ff;
  display:block;
  border-radius:3px;
  animation:wave 1s infinite ease-in-out;
}
.footerOnAir{
  text-align:center;
  font-size:12px;
  margin-top:8px;
  color:#9adfff;
  letter-spacing:.08em;
  font-weight:800;
}
@media (max-width: 980px){
  .footer{
    padding:22px 0 18px;
  }
  .footerGridRefined{
    grid-template-columns:1fr;
    gap:18px;
  }
  .footerTopBrand{
    margin-bottom:14px;
  }
  .footerLogoNRE{
    width:132px;
  }
}





/* ===== RGPD COOKIE BANNER REAL ===== */
body{
  padding-bottom: 94px;
}
.cookieBanner{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  background: rgba(8,12,22,.96);
  border-top: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 -8px 24px rgba(0,0,0,.28);
  backdrop-filter: blur(10px);
  display: block;
}
.cookieInner{
  max-width: 1200px;
  margin: 0 auto;
  padding: 14px 20px;
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
}
.cookieText{
  font-size: 13px;
  line-height: 1.5;
  color: rgba(255,255,255,.82);
}
.cookieText a{
  color: #00d0ff;
  text-decoration: none;
  font-weight: 800;
}
.cookieActions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.cookieBtn{
  border:none;
  padding: 9px 14px;
  border-radius: 10px;
  font-weight: 900;
  cursor: pointer;
}
.cookieBtn.accept{
  background:#00d0ff;
  color:#001018;
}
.cookieBtn.reject{
  background:rgba(255,255,255,.12);
  color:#fff;
}
.dock{
  position: sticky !important;
  bottom: 0;
  z-index: 60;
}
@media (max-width:700px){
  .cookieInner{
    flex-direction: column;
    align-items: flex-start;
  }
  .cookieActions{
    width:100%;
  }
}


/* ===== Weather icon grande en módulo ===== */
.rtItem--weather .rtItem__head{
  margin-bottom:10px;
}
.weatherModule{
  display:flex;
  align-items:center;
  gap:14px;
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
  backdrop-filter:none !important;
}
.weatherModule__icon{
  width:52px;
  height:52px;
}
.weatherModule__icon svg{
  width:38px;
  height:38px;
  display:block;
  opacity:.95;
}
.weatherModule__info{
  min-width:0;
}


/* ===== Weather módulo refinado derecha + AEMET ===== */
.weatherModule--rightIcon{
  justify-content:space-between;
  align-items:center;
}
.weatherModule--rightIcon .weatherModule__info{
  flex:1 1 auto;
  min-width:0;
}
.weatherModule__icon--big{
  width:90px;
  height:90px;
  flex:0 0 90px;
  margin-left:10px;
  display:grid;
  place-items:center;
  border-radius:22px;
  background:rgba(10,15,30,.28);
  border:1px solid rgba(120,150,255,.16);
  box-shadow:0 0 20px rgba(0,180,255,.10);
}
.weatherModule__icon--big svg{
  width:54px;
  height:54px;
  display:block;
  opacity:.98;
}
.weatherModule__source{
  margin-top:8px;
  font-size:11px;
  line-height:1.35;
  color:rgba(255,255,255,.54);
  font-weight:700;
  letter-spacing:.02em;
}
@media (max-width: 700px){
  .weatherModule--rightIcon{
    gap:12px;
  }
  .weatherModule__icon--big{
    width:72px;
    height:72px;
    flex-basis:72px;
  }
  .weatherModule__icon--big svg{
    width:42px;
    height:42px;
  }
}


/* ===== Icono definitivo tiempo en módulo ===== */
.weatherEmoji{
  font-size:46px;
  line-height:1;
  display:block;
  filter: drop-shadow(0 0 10px rgba(0,190,255,.18));
}


/* ===== Iconos del tiempo animados ===== */
.weatherAnim{
  position:relative;
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  line-height:1;
}
.weatherAnim--sun .weatherAnim__sun{
  font-size:44px;
  display:block;
  animation:nreSunSpin 12s linear infinite;
  filter:drop-shadow(0 0 10px rgba(255,210,90,.25));
}
.weatherAnim--cloud .weatherAnim__cloud,
.weatherAnim--rain .weatherAnim__cloud,
.weatherAnim--storm .weatherAnim__cloud,
.weatherAnim--snow .weatherAnim__cloud{
  font-size:44px;
  display:block;
  animation:nreCloudFloat 3.2s ease-in-out infinite;
  filter:drop-shadow(0 0 10px rgba(127,216,255,.12));
}
.weatherAnim--rain .weatherAnim__rain{
  position:absolute;
  right:6px;
  bottom:1px;
  font-size:16px;
  animation:nreRainDrop 1.1s ease-in-out infinite;
}
.weatherAnim--storm .weatherAnim__storm{
  position:absolute;
  right:5px;
  bottom:0px;
  font-size:18px;
  animation:nreStormFlash 1s ease-in-out infinite;
}
.weatherAnim--snow .weatherAnim__snow{
  position:absolute;
  right:6px;
  bottom:2px;
  font-size:16px;
  animation:nreSnowFall 1.8s linear infinite;
}
.weatherAnim--fog .weatherAnim__fog{
  font-size:30px;
  letter-spacing:-3px;
  display:block;
  animation:nreFogMove 2.6s ease-in-out infinite;
  color:#bfe7ff;
}
@keyframes nreSunSpin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}
@keyframes nreCloudFloat{
  0%,100%{transform:translateX(0) translateY(0)}
  50%{transform:translateX(3px) translateY(-2px)}
}
@keyframes nreRainDrop{
  0%{transform:translateY(-3px);opacity:.2}
  50%{transform:translateY(2px);opacity:1}
  100%{transform:translateY(6px);opacity:.2}
}
@keyframes nreStormFlash{
  0%,100%{opacity:.35;transform:scale(1)}
  45%{opacity:1;transform:scale(1.08)}
  60%{opacity:.45;transform:scale(.98)}
}
@keyframes nreSnowFall{
  0%{transform:translateY(-4px) rotate(0deg);opacity:.3}
  50%{transform:translateY(2px) rotate(90deg);opacity:1}
  100%{transform:translateY(6px) rotate(180deg);opacity:.35}
}
@keyframes nreFogMove{
  0%,100%{transform:translateX(-2px);opacity:.6}
  50%{transform:translateX(3px);opacity:1}
}

.traffic-detail{color:var(--muted);font-weight:600}


/* ===== Tráfico con fondo editorial ===== */
.rtItem--traffic{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg, rgba(6,10,20,.68) 0%, rgba(6,10,20,.80) 100%),
    linear-gradient(90deg, rgba(0,210,255,.08) 0%, rgba(36,255,154,.04) 100%),
    url("../assets/sections/traffic_bg.png") center/cover no-repeat;
  border:1px solid rgba(255,255,255,.10);
  min-height:148px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.rtItem--traffic::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(6,10,20,.78) 0%, rgba(6,10,20,.58) 42%, rgba(6,10,20,.72) 100%);
  pointer-events:none;
}
.rtItem--traffic > *{
  position:relative;
  z-index:1;
}
.rtItem--traffic .rtItem__head{
  color:rgba(255,255,255,.84);
  text-shadow:0 1px 8px rgba(0,0,0,.35);
}
.rtItem--traffic .rtItem__value{
  max-width:min(72%, 620px);
  font-size:17px;
  font-weight:900;
  line-height:1.3;
  color:#fff;
  text-shadow:0 2px 14px rgba(0,0,0,.45);
}
.rtItem--traffic .traffic-detail{
  display:block;
  margin-top:8px;
  max-width:min(74%, 640px);
  font-size:14px;
  font-weight:700;
  line-height:1.45;
  color:rgba(255,255,255,.88);
  text-shadow:0 2px 12px rgba(0,0,0,.42);
}
.rtItem--traffic .rtItem__meta{
  margin-top:10px;
  color:rgba(255,255,255,.78);
  text-shadow:0 1px 10px rgba(0,0,0,.38);
}
@media (max-width: 900px){
  .rtItem--traffic{min-height:160px;}
  .rtItem--traffic::before{background:linear-gradient(180deg, rgba(6,10,20,.72) 0%, rgba(6,10,20,.84) 100%);}
  .rtItem--traffic .rtItem__value,
  .rtItem--traffic .traffic-detail{max-width:100%;}
}



/* ===== Weather container background fix v3 ===== */
.rtItem--weather{
  min-height:120px;
  padding:12px 14px;
  position:relative;
  overflow:hidden;
  border-radius:18px;
}
.rtItem--weather::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(
    90deg,
    rgba(5,10,20,.52) 0%,
    rgba(5,10,20,.24) 38%,
    rgba(5,10,20,.08) 68%,
    rgba(5,10,20,.02) 100%
  );
}
.rtItem--weather .rtItem__head,
.rtItem--weather .weatherModule,
.rtItem--weather .weatherModule__icon,
.rtItem--weather .weatherModule__info,
.rtItem--weather .weatherModule__source,
.rtItem--weather .rtItem__value,
.rtItem--weather .rtItem__meta,
.rtItem--weather .weatherModule__moon{
  position:relative;
  z-index:1;
}
.rtItem--weather .weatherModule{
  min-height:auto;
  padding-top:4px;
}
.rtItem--weather .weatherModule__icon{
  background:rgba(20,24,36,.24) !important;
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(4px);
}
.rtItem--weather .weatherModule__source{
  color:rgba(255,255,255,.78);
}
.rtItem--weather.weather-card--sunny{
  background:
    linear-gradient(180deg, rgba(11,55,104,.30) 0%, rgba(12,24,44,.78) 100%),
    radial-gradient(520px 220px at 82% 24%, rgba(255,205,96,.28), transparent 54%),
    url("/assets/backgrounds/weather/sunny.jpg") center/cover no-repeat,
    linear-gradient(180deg, rgba(11,55,104,.40) 0%, rgba(12,24,44,.84) 100%);
}
.rtItem--weather.weather-card--cloudy{
  background:
    linear-gradient(180deg, rgba(28,39,54,.42) 0%, rgba(12,20,35,.82) 100%),
    radial-gradient(560px 240px at 75% 18%, rgba(170,188,210,.14), transparent 56%),
    url("/assets/backgrounds/weather/cloudy.jpg") center/cover no-repeat,
    linear-gradient(180deg, rgba(28,39,54,.54) 0%, rgba(12,20,35,.88) 100%);
}
.rtItem--weather.weather-card--rain{
  background:
    linear-gradient(180deg, rgba(8,18,34,.56) 0%, rgba(6,10,20,.88) 100%),
    radial-gradient(580px 240px at 80% 18%, rgba(69,127,214,.12), transparent 58%),
    url("/assets/backgrounds/weather/rain.jpg") center/cover no-repeat,
    linear-gradient(180deg, rgba(8,18,34,.68) 0%, rgba(6,10,20,.90) 100%);
}
.rtItem--weather.weather-card--night{
  background:
    linear-gradient(180deg, rgba(5,9,22,.55) 0%, rgba(3,7,18,.92) 100%),
    url("/assets/backgrounds/weather/night.jpg") center/cover no-repeat;
  border-color:rgba(120,150,255,.2);
  box-shadow:
    0 10px 40px rgba(0,0,0,.6),
    inset 0 0 80px rgba(40,60,120,.18);
}
.rtItem--weather.weather-card--fog{
  background:
    linear-gradient(180deg, rgba(40,52,66,.46) 0%, rgba(12,20,35,.82) 100%),
    radial-gradient(560px 240px at 78% 22%, rgba(218,229,240,.14), transparent 56%),
    url("/assets/backgrounds/weather/fog.jpg") center/cover no-repeat,
    linear-gradient(180deg, rgba(40,52,66,.58) 0%, rgba(12,20,35,.88) 100%);
}
.rtItem--weather.weather-card--storm{
  background:
    linear-gradient(180deg, rgba(4,10,24,.66) 0%, rgba(3,7,18,.92) 100%),
    radial-gradient(540px 240px at 78% 18%, rgba(122,162,255,.16), transparent 56%),
    url("/assets/backgrounds/weather/storm.jpg") center/cover no-repeat,
    linear-gradient(180deg, rgba(4,10,24,.82) 0%, rgba(3,7,18,.94) 100%);
}
.rtItem--weather.weather-card--snow{
  background:
    linear-gradient(180deg, rgba(68,88,116,.34) 0%, rgba(14,22,37,.84) 100%),
    radial-gradient(520px 220px at 78% 18%, rgba(246,251,255,.14), transparent 56%),
    url("/assets/backgrounds/weather/snow.jpg") center/cover no-repeat,
    linear-gradient(180deg, rgba(68,88,116,.44) 0%, rgba(14,22,37,.88) 100%);
}
.rtItem--weather.weather-card--sunny::before{
  background:linear-gradient(90deg, rgba(6,14,28,.40) 0%, rgba(8,18,34,.20) 42%, rgba(9,20,36,.06) 68%, rgba(7,16,30,.12) 100%);
}
.rtItem--weather.weather-card--cloudy::before,
.rtItem--weather.weather-card--fog::before{
  background:linear-gradient(90deg, rgba(8,14,26,.48) 0%, rgba(10,18,34,.22) 42%, rgba(12,20,36,.08) 68%, rgba(8,15,28,.16) 100%);
}
.rtItem--weather.weather-card--rain::before,
.rtItem--weather.weather-card--storm::before,
.rtItem--weather.weather-card--night::before{
  background:linear-gradient(90deg, rgba(4,8,16,.42) 0%, rgba(4,8,16,.18) 45%, rgba(4,8,16,.06) 72%, rgba(4,8,16,.14) 100%);
}
.rtItem--weather.weather-card--snow::before{
  background:linear-gradient(90deg, rgba(8,16,28,.36) 0%, rgba(10,18,32,.16) 45%, rgba(12,20,34,.05) 72%, rgba(8,16,28,.12) 100%);
}
@media (max-width:900px){
  .rtItem--weather{
    min-height:160px;
  }
  .rtItem--weather::before{
    background:linear-gradient(180deg, rgba(5,10,20,.54) 0%, rgba(5,10,20,.32) 50%, rgba(5,10,20,.56) 100%);
  }
}

/* ===== Extra bloques música ===== */
.modsGrid2--musicExtra{
  margin-top:14px;
}
@media (max-width:1100px){
  .modsGrid2--musicExtra .cards6{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
}
@media (max-width:980px){
  .modsGrid2--musicExtra{
    grid-template-columns:1fr;
  }
}



/* ===== Schedule functional polish ===== */
.slot--live{
  border-color: rgba(43,255,180,.30) !important;
  background: linear-gradient(180deg, rgba(18,36,28,.88) 0%, rgba(10,22,18,.92) 100%) !important;
}
.slot--next{
  border-color: rgba(0,190,255,.28) !important;
  background: linear-gradient(180deg, rgba(10,24,34,.86) 0%, rgba(8,18,28,.90) 100%) !important;
}
.scheduleTop .liveLine span:last-child{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  display:block;
  max-width:100%;
}

.showBanner__art{border-radius:16px;overflow:hidden;}


/* ===== Programación semanal protagonista ===== */
.scheduleHero{
  position:relative;
  overflow:hidden;
  margin-top:14px;
  border-radius:var(--r);
  background:
    linear-gradient(120deg, rgba(5,10,20,.92) 0%, rgba(5,10,20,.72) 38%, rgba(5,10,20,.58) 100%),
    url('../assets/hero/hero_night_antenna_madrid.png') center/cover no-repeat;
}
.scheduleHero__inner{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);
  gap:18px;
  align-items:end;
  min-height:280px;
  padding:28px;
}
.pageTitle--hero{
  font-size:40px;
  line-height:1.05;
  margin:8px 0 0;
}
.pageSub--hero{
  max-width:74ch;
  color:rgba(255,255,255,.78);
  margin-top:10px;
}
.scheduleHero__chips{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:16px;
}
.scheduleMiniCard{
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.06);
  box-shadow:0 18px 40px rgba(0,0,0,.24);
  backdrop-filter:blur(12px);
}
.scheduleMiniCard__k{
  font-size:12px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:rgba(255,255,255,.62);
}
.scheduleMiniCard__t{
  margin-top:8px;
  font-size:22px;
  line-height:1.15;
  font-weight:950;
}
.scheduleMiniCard__s{
  margin-top:8px;
  color:rgba(255,255,255,.72);
  font-weight:700;
}
.scheduleTop--page{
  margin-bottom:14px;
}
.scheduleLegend{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:16px;
}
.legendChip{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  border:1px solid rgba(255,255,255,.10);
}
.legendChip--morning{background:rgba(255,196,62,.16); color:#ffe9a6;}
.legendChip--midday{background:rgba(56,210,255,.16); color:#b9f2ff;}
.legendChip--special{background:rgba(180,119,255,.16); color:#e6d0ff;}
.legendChip--afternoon{background:rgba(255,132,82,.16); color:#ffd1be;}
.legendChip--prime{background:rgba(255,76,132,.16); color:#ffc2d8;}
.legendChip--night{background:rgba(91,126,255,.16); color:#c9d6ff;}

.slot--morning{background:linear-gradient(180deg, rgba(70,46,10,.58) 0%, rgba(43,25,8,.68) 100%); border-color:rgba(255,196,62,.22);}
.slot--midday{background:linear-gradient(180deg, rgba(6,38,52,.58) 0%, rgba(8,26,36,.72) 100%); border-color:rgba(56,210,255,.22);}
.slot--special{background:linear-gradient(180deg, rgba(40,18,58,.58) 0%, rgba(26,14,40,.74) 100%); border-color:rgba(180,119,255,.24);}
.slot--afternoon{background:linear-gradient(180deg, rgba(58,24,16,.58) 0%, rgba(38,18,12,.74) 100%); border-color:rgba(255,132,82,.24);}
.slot--prime{background:linear-gradient(180deg, rgba(58,14,32,.60) 0%, rgba(36,10,22,.76) 100%); border-color:rgba(255,76,132,.24);}
.slot--night{background:linear-gradient(180deg, rgba(14,20,48,.60) 0%, rgba(10,14,30,.78) 100%); border-color:rgba(91,126,255,.26);}

.quickAccessGrid{
  margin-top:18px;
}
.quickAccessCard{
  position:relative;
  overflow:hidden;
  min-height:220px;
}
.quickAccessCard h3{
  font-size:28px;
  line-height:1.12;
  margin:8px 0 10px;
}
.quickAccessCard p{
  color:rgba(255,255,255,.76);
  max-width:52ch;
}
.quickAccessCard .btn{
  margin-top:14px;
}
.quickAccessCard--locutores{
  background:
    linear-gradient(120deg, rgba(5,10,20,.90) 0%, rgba(5,10,20,.72) 100%),
    url('../../assets/locutores/clara_jose_miguel.png') right bottom / contain no-repeat;
}
.quickAccessCard--programas{
  background:
    linear-gradient(120deg, rgba(5,10,20,.90) 0%, rgba(5,10,20,.72) 100%),
    url('../../assets/programas/automix_16x9.jpg') center/cover no-repeat;
}

@media (max-width:980px){
  .scheduleHero__inner{grid-template-columns:1fr; min-height:auto; padding:22px;}
  .pageTitle--hero{font-size:32px;}
}


/* ===== PROGRAMA EN EMISION: DESCRIPCION LARGA + MAQUETACION NRE ===== */
.showBanner__long{
  margin-top:12px;
  max-width:62ch;
  font-size:14px;
  line-height:1.6;
  color:rgba(255,255,255,.88);
  font-weight:500;
  text-wrap:pretty;
}

.showBanner__meta{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.showBanner__sub{
  font-size:15px;
  color:rgba(255,255,255,.82);
  max-width:56ch;
}

.showBanner__title{
  font-size:30px;
  line-height:1.02;
  font-weight:900;
  margin-bottom:8px;
}

@media (max-width: 900px){
  .showBanner__long{
    max-width:100%;
    font-size:13px;
    line-height:1.55;
  }
}


.listener-location-inline{display:inline-flex;align-items:center;margin-left:12px;padding-left:12px;border-left:1px solid rgba(255,255,255,.12);font-size:12px;font-weight:600;color:#9fdcff;text-shadow:0 0 8px rgba(0,200,255,.22);opacity:.95}
.weatherModule__moon{margin-top:6px;font-size:12px;font-weight:700;color:#dbeafe;opacity:.92}
.weather-card--sunny{background:linear-gradient(135deg, rgba(27,63,115,.28), rgba(79,163,255,.18), rgba(255,211,107,.14));}
.weather-card--cloudy{background:linear-gradient(135deg, rgba(51,65,85,.34), rgba(100,116,139,.20));}
.weather-card--rain{background:linear-gradient(135deg, rgba(15,23,42,.55), rgba(30,41,59,.35));}
.weather-card--night{background:linear-gradient(135deg, rgba(2,6,23,.62), rgba(15,23,42,.45), rgba(30,58,138,.18));}
.moonPillIcon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:15px;line-height:1}
.weatherAnim--moon .weatherAnim__moon{font-size:42px;line-height:1;filter:drop-shadow(0 0 12px rgba(191,219,254,.35));animation:moonGlow 3.2s ease-in-out infinite}
@keyframes moonGlow{0%,100%{transform:scale(1);opacity:.92}50%{transform:scale(1.06);opacity:1}}
@media (max-width: 700px){.listener-location-inline{display:block;margin:8px 0 0;padding:0;border:0;width:100%}}


/* ===== FOOTER HOMENAJE RADIO@INTERNET (FIX LIMPIO) ===== */
.footerBottomBrand{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  flex-wrap:wrap;
  text-align:center;
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.06);
}

.footerBottomBrand img,
.footerTributeLogo{
  width:120px;
  max-width:32vw;
  height:auto;
  display:block;
  object-fit:contain;
  opacity:.95;
  filter: drop-shadow(0 0 10px rgba(0,190,255,.18));
}

.footerBrandText,
.footerTributeText{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}

.footerBrandText .origen,
.footerTributeTitle{
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  color:#9adfff;
}

.footerBrandText .frase,
.footerTributeSubtitle{
  font-size:11px;
  color:rgba(255,255,255,.76);
  line-height:1.35;
}

.footerBrandText .firma,
.footerTributeMeta{
  font-size:10px;
  color:rgba(255,255,255,.48);
  letter-spacing:.06em;
}

@media (max-width:768px){
  .footerBottomBrand{
    gap:10px;
    padding-top:12px;
  }

  .footerBottomBrand img,
  .footerTributeLogo{
    width:96px;
    max-width:42vw;
  }

  .footerBrandText .origen,
  .footerTributeTitle{
    font-size:11px;
  }

  .footerBrandText .frase,
  .footerTributeSubtitle{
    font-size:10px;
  }

  .footerBrandText .firma,
  .footerTributeMeta{
    font-size:9px;
  }
}


/* ===== NRE THEMES DYNAMIC OVERRIDES ===== */
:root{
  --page-program-image:none;
  --page-program-overlay:
    linear-gradient(180deg, rgba(6,10,18,.18) 0%, rgba(6,10,18,.32) 100%);
  --page-program-focus:
    radial-gradient(900px 420px at 20% 10%, rgba(43,211,255,.12), transparent 60%),
    radial-gradient(800px 420px at 85% 20%, rgba(36,255,154,.10), transparent 60%);
  --show-overlay:
    linear-gradient(180deg, rgba(10,16,32,.26) 0%, rgba(7,11,20,.40) 100%);
  --weather-card-bg:
    linear-gradient(135deg, rgba(23,39,69,.40), rgba(11,19,34,.26));
}

body{
  background-image:
    var(--page-program-overlay),
    var(--page-program-image),
    var(--page-program-focus),
    linear-gradient(180deg,#070b14 0%,#050810 100%) !important;
  background-size:cover, cover, auto, auto;
  background-position:center center, center center, center center, center center;
  background-repeat:no-repeat, no-repeat, no-repeat, no-repeat;
  background-attachment:fixed, fixed, scroll, scroll;
  transition:background-image .65s ease, background-color .35s ease;
}

.hero,
.side,
.panel,
.box,
.modsPanel,
.footer,
.dock{
  backdrop-filter: blur(14px);
}

.showBanner{
  background-image:
    var(--show-overlay),
    radial-gradient(700px 220px at 20% 30%, rgba(0,190,255,.10), transparent 60%),
    radial-gradient(700px 220px at 80% 40%, rgba(36,255,154,.08), transparent 60%),
    rgba(255,255,255,.04);
  background-size:cover;
  background-position:center;
  transition:background-image .65s ease, box-shadow .35s ease, border-color .35s ease;
}

.statusInline{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  row-gap:8px;
}

.statusInline #statusText{
  white-space:nowrap;
}

.listener-location-inline{
  display:inline-flex;
  align-items:center;
  margin-left:12px;
  padding-left:12px;
  border-left:1px solid rgba(255,255,255,.12);
  font-size:12px;
  font-weight:700;
  color:#9fdcff;
  text-shadow:0 0 8px rgba(0,200,255,.22);
  opacity:.95;
}

.footerBottomBrand--tribute{
  margin-top:18px;
}

.footerBottomBrand--tribute img{
  width:112px;
  max-width:28vw;
}

.weatherModule{
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
  backdrop-filter:none !important;
}

.weatherModule.weather-card--sunny{
  box-shadow: 0 18px 44px rgba(255,170,70,.10), inset 0 1px 0 rgba(255,255,255,.04);
}

.weatherModule.weather-card--cloudy{
  box-shadow: 0 18px 44px rgba(120,150,180,.10), inset 0 1px 0 rgba(255,255,255,.04);
}

.weatherModule.weather-card--rain{
  box-shadow: 0 18px 44px rgba(60,110,190,.12), inset 0 1px 0 rgba(255,255,255,.04);
}

.weatherModule.weather-card--night{
  box-shadow: 0 18px 44px rgba(35,65,140,.12), inset 0 1px 0 rgba(255,255,255,.04);
}

@media (max-width:700px){
  .listener-location-inline{
    display:block;
    width:100%;
    margin:8px 0 0;
    padding:0;
    border-left:0;
  }
}

/* === NRE remodel 20260321 === */
#pillTraffic[data-state="ok"] .pill__ic{color:#7fffd4}
#pillTraffic[data-state="warn"] .pill__ic{color:#ffd166}
.weatherModule__moon{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);font-size:12px;font-weight:800;text-transform:capitalize}

.broadcastHub{margin-top:22px;padding:22px;position:relative;overflow:hidden;background:
  radial-gradient(1200px 360px at 10% -20%, rgba(30,190,255,.18), transparent 55%),
  radial-gradient(900px 300px at 100% 10%, rgba(43,255,180,.12), transparent 50%),
  linear-gradient(180deg, rgba(9,14,28,.96), rgba(7,11,20,.96));
}
.broadcastHub::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg, rgba(255,255,255,.04), transparent 35%, rgba(255,255,255,.03) 75%, transparent);pointer-events:none}
.broadcastHub__head{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:18px;position:relative;z-index:1}
.broadcastHub__badge{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);font-size:11px;font-weight:900;letter-spacing:.16em;color:rgba(255,255,255,.7);white-space:nowrap}
.broadcastHub__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;position:relative;z-index:1}
.hubPanel{position:relative;border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:18px;background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));box-shadow:0 20px 45px rgba(0,0,0,.24)}
.hubPanel--services{margin-top:16px}
.hubPanel__head{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.hubPanel__head h3{margin:0;font-size:24px;line-height:1.05}
.hubPanel__eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55);font-weight:900;margin-bottom:4px}
.hubPanel__copy{margin:0 0 16px;color:rgba(255,255,255,.72);line-height:1.6;max-width:62ch}
.hubIcon{position:relative;width:54px;height:54px;border-radius:18px;background:linear-gradient(180deg, rgba(43,211,255,.22), rgba(43,255,180,.08));border:1px solid rgba(255,255,255,.12);overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 10px 24px rgba(0,0,0,.22)}
.hubIcon span{position:absolute;display:block}
.hubIcon--podcast span:nth-child(1){left:13px;top:14px;width:8px;height:26px;border-radius:999px;background:#dff7ff}
.hubIcon--podcast span:nth-child(2){left:23px;top:8px;width:8px;height:38px;border-radius:999px;background:#7fe0ff;animation:nrePulse 1.8s ease-in-out infinite}
.hubIcon--podcast span:nth-child(3){left:33px;top:14px;width:8px;height:26px;border-radius:999px;background:#7fffd4;animation:nrePulse 2.2s ease-in-out infinite .2s}
.hubIcon--events span:nth-child(1){inset:11px 11px auto; height:11px;border-radius:10px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.16)}
.hubIcon--events span:nth-child(2){inset:20px 11px 11px;background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));border-radius:12px;border:1px solid rgba(255,255,255,.12)}
.hubIcon--events::after{content:'';position:absolute;left:16px;top:28px;width:22px;height:10px;border-radius:999px;background:linear-gradient(90deg, rgba(127,255,212,.8), rgba(43,211,255,.25));animation:nreSlide 2.6s linear infinite}
.hubIcon--services span{width:12px;height:12px;border-radius:5px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.12)}
.hubIcon--services span:nth-child(1){left:12px;top:12px;animation:nreBlink 2.6s ease-in-out infinite}
.hubIcon--services span:nth-child(2){right:12px;top:12px;animation:nreBlink 2.6s ease-in-out infinite .3s}
.hubIcon--services span:nth-child(3){left:12px;bottom:12px;animation:nreBlink 2.6s ease-in-out infinite .6s}
.hubIcon--services span:nth-child(4){right:12px;bottom:12px;animation:nreBlink 2.6s ease-in-out infinite .9s}
@keyframes nrePulse{0%,100%{transform:scaleY(.72);opacity:.8}50%{transform:scaleY(1.05);opacity:1}}
@keyframes nreSlide{0%{transform:translateX(-2px);opacity:.6}50%{transform:translateX(8px);opacity:1}100%{transform:translateX(-2px);opacity:.6}}
@keyframes nreBlink{0%,100%{opacity:.45;transform:scale(.96)}50%{opacity:1;transform:scale(1.06)}}

.podcastPlayer{display:grid;gap:10px;padding:14px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(5,10,20,.42);margin-bottom:14px}
.podcastPlayer__label{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55);font-weight:900}
.podcastPlayer__title{font-size:16px;font-weight:900}
.podcastPlayer audio{width:100%;filter:drop-shadow(0 10px 18px rgba(0,0,0,.2))}
.podcastList{display:grid;gap:10px}
.podcastItem{display:grid;gap:5px;text-align:left;padding:14px 15px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.8);cursor:pointer;transition:transform .18s ease, border-color .18s ease, background .18s ease}
.podcastItem:hover,.podcastItem.is-active{transform:translateY(-2px);border-color:rgba(43,211,255,.38);background:linear-gradient(180deg, rgba(43,211,255,.14), rgba(255,255,255,.05))}
.podcastItem strong{font-size:15px;color:#fff}
.podcastItem span:last-child{font-size:13px;line-height:1.55;color:rgba(255,255,255,.68)}
.podcastItem__meta{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(127,255,212,.78);font-weight:900}

.eventList{display:grid;gap:12px}
.eventItem{display:grid;grid-template-columns:74px 1fr;gap:12px;padding:14px;border-radius:18px;background:rgba(5,10,20,.44);border:1px solid rgba(255,255,255,.08)}
.eventItem__day{display:grid;place-items:center;align-self:start;padding:10px 8px;border-radius:16px;background:linear-gradient(180deg, rgba(43,211,255,.22), rgba(43,255,180,.08));border:1px solid rgba(255,255,255,.12);font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:12px}
.eventItem__body{display:grid;gap:4px}
.eventItem__body strong{font-size:16px}
.eventItem__meta{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:rgba(255,255,255,.52);font-weight:900}
.eventItem__body p{margin:2px 0 0;color:rgba(255,255,255,.72);line-height:1.55;font-size:14px}

.serviceGrid{display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:12px}
.serviceCard{display:grid;grid-template-columns:56px 1fr;gap:12px;padding:16px;border-radius:20px;background:rgba(5,10,20,.42);border:1px solid rgba(255,255,255,.08)}
.serviceCard strong{display:block;font-size:15px;margin-bottom:4px}
.serviceCard p{margin:0;color:rgba(255,255,255,.68);line-height:1.55;font-size:13px}
.serviceCard__icon{position:relative;width:56px;height:56px;border-radius:18px;background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.12)}
.serviceCard--radio .serviceCard__icon::before{content:'';position:absolute;left:16px;right:16px;bottom:15px;height:10px;border-radius:999px;background:rgba(255,255,255,.85)}
.serviceCard--radio .serviceCard__icon::after{content:'';position:absolute;left:26px;top:10px;width:4px;height:22px;border-radius:999px;background:#7fffd4;box-shadow:0 0 0 6px rgba(127,255,212,.12)}
.serviceCard--podcast .serviceCard__icon::before,.serviceCard--apps .serviceCard__icon::before,.serviceCard--support .serviceCard__icon::before,.serviceCard--support .serviceCard__icon::after{content:'';position:absolute}
.serviceCard--podcast .serviceCard__icon::before{left:17px;top:12px;width:22px;height:28px;border:3px solid #dff7ff;border-bottom-width:5px;border-radius:14px}
.serviceCard--apps .serviceCard__icon::before{left:16px;top:10px;width:24px;height:36px;border-radius:9px;border:2px solid #dff7ff}
.serviceCard--support .serviceCard__icon::before{left:15px;top:16px;width:26px;height:18px;border-radius:999px;border:3px solid #dff7ff;border-bottom-color:transparent}
.serviceCard--support .serviceCard__icon::after{left:22px;top:30px;width:12px;height:10px;border-radius:0 0 8px 8px;background:#7fffd4}

.dock{background:
 radial-gradient(900px 180px at 10% 10%, rgba(43,211,255,.12), transparent 55%),
 linear-gradient(to top, rgba(4,8,16,.98), rgba(8,12,24,.94)), url('../assets/dock/dock_eq_bg.png') center bottom / cover no-repeat !important;
 border-radius:28px;box-shadow:0 18px 60px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.05)}
.dock__left,.dock__center,.dock__right{backdrop-filter:blur(8px);background:linear-gradient(180deg, rgba(6,10,20,.72), rgba(4,8,16,.58))}
.dockStats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.dockStat{display:grid;gap:4px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.dockStat__k{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.5);font-weight:900}
.dockStat__v{font-size:13px;font-weight:900;color:#fff}

@media (max-width: 1100px){
  .broadcastHub__grid{grid-template-columns:1fr}
  .serviceGrid{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width: 760px){
  .broadcastHub{padding:18px}
  .broadcastHub__head{flex-direction:column;align-items:start}
  .serviceGrid{grid-template-columns:1fr}
  .eventItem{grid-template-columns:1fr}
  .dockStats{grid-template-columns:1fr}
}


/* === coherence patch 20260321b === */
.wrap.newsModules,.wrap.broadcastHub{max-width:1280px;margin-left:auto;margin-right:auto}
.newsModules{margin-top:22px;padding:0 18px 6px}
.broadcastHub{margin-top:22px;padding:22px 22px 24px}
.broadcastHub__head,.modsHead{margin-bottom:18px}
.broadcastHub__grid,.modsGrid2{align-items:stretch}
.hubPanel,.modsPanel{min-height:100%}
.hubPanel--podcast,.hubPanel--events{display:flex;flex-direction:column}
.podcastPlayer,.podcastList,.eventList{flex:0 0 auto}
.hubPanel--services{margin-top:14px}
.serviceCard{min-height:112px;align-items:start}
@media (max-width:760px){
  .newsModules{padding:0 18px 6px}
  .broadcastHub{padding:18px}
}

/* === DOCK REMASTER 20260321c === */
.dock--remastered{
  position:sticky;
  bottom:0;
  overflow:hidden;
  border-radius:30px;
  border:1px solid rgba(160,220,255,.12);
  background:
    radial-gradient(1200px 260px at 0% 0%, rgba(53,210,255,.18), transparent 58%),
    radial-gradient(900px 220px at 100% 100%, rgba(100,255,214,.12), transparent 52%),
    linear-gradient(180deg, rgba(4,8,16,.98), rgba(6,10,20,.95) 48%, rgba(3,7,16,.98)),
    url('../assets/dock/dock_eq_bg.png') center center / cover no-repeat !important;
  box-shadow:
    0 24px 64px rgba(0,0,0,.52),
    inset 0 1px 0 rgba(255,255,255,.06),
    inset 0 -1px 0 rgba(255,255,255,.03);
}
.dock--remastered .dock__bgfx,
.dock--remastered .dock__bgfx span{position:absolute;inset:0;pointer-events:none}
.dock--remastered .dock__grid{
  background:
    linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size:36px 36px;
  opacity:.12;
  mask-image:linear-gradient(180deg, transparent, #000 18%, #000 82%, transparent);
}
.dock--remastered .dock__glow--a{
  inset:auto auto -90px -80px;
  width:380px;height:380px;border-radius:50%;
  background:radial-gradient(circle, rgba(44,211,255,.22) 0%, rgba(44,211,255,.10) 34%, transparent 70%);
  animation:dockGlowFloatA 10s ease-in-out infinite;
}
.dock--remastered .dock__glow--b{
  inset:-130px -60px auto auto;
  width:320px;height:320px;border-radius:50%;
  background:radial-gradient(circle, rgba(127,255,212,.16) 0%, rgba(127,255,212,.06) 38%, transparent 72%);
  animation:dockGlowFloatB 12s ease-in-out infinite;
}
.dock--remastered .dock__scan{
  background:linear-gradient(180deg, transparent 0%, rgba(127,255,212,.06) 48%, transparent 100%);
  transform:translateY(-110%);
  animation:dockScan 8.5s linear infinite;
  opacity:.55;
}
.dock--remastered .dock__inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1.2fr) minmax(280px,.9fr);
  gap:16px;
  align-items:stretch;
  padding:16px;
}
.dockPanel{
  position:relative;
  min-width:0;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.08);
  background:
    linear-gradient(180deg, rgba(10,16,30,.82), rgba(4,9,18,.72)),
    linear-gradient(135deg, rgba(255,255,255,.05), transparent 55%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 14px 34px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
}
.dock--remastered .dock__left,
.dock--remastered .dock__center,
.dock--remastered .dock__right{
  padding:16px 18px;
  margin:0;
}
.dock--remastered .dock__left{display:flex;align-items:center;gap:16px}
.dockMediaFrame{
  position:relative;
  flex:0 0 92px;
  width:92px;height:92px;
  padding:4px;
  border-radius:24px;
  background:linear-gradient(135deg, rgba(43,211,255,.28), rgba(255,255,255,.04), rgba(127,255,212,.18));
  box-shadow:0 12px 24px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,255,255,.08);
}
.dock--remastered .dock__left img{
  width:100%;height:100%;border-radius:20px;object-fit:cover;
  box-shadow:0 8px 18px rgba(0,0,0,.28), inset 0 0 0 1px rgba(255,255,255,.06);
}
.dockMediaFrame__live{
  position:absolute;left:10px;bottom:10px;
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 10px;border-radius:999px;
  font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;
  color:#fff;background:rgba(6,10,20,.72);border:1px solid rgba(255,255,255,.12);
}
.dockMediaFrame__live::before{
  content:'';width:8px;height:8px;border-radius:50%;background:#7fffd4;box-shadow:0 0 12px rgba(127,255,212,.85);animation:nrePulse 1.8s ease-in-out infinite;
}
.dock--remastered .dock__np{display:grid;gap:7px;min-width:0}
.dock--remastered .dock__eyebrow{margin:0;color:rgba(214,234,255,.7)}
.dock--remastered .dock__line{font-size:17px;font-weight:950;letter-spacing:.01em}
.dock--remastered .dock__sub{font-size:12px;letter-spacing:.08em;color:rgba(255,255,255,.64)}
.dockBadges{display:flex;flex-wrap:wrap;gap:8px}
.dockBadge{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#dff7ff;
}
.dockBadge::before{content:'';width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.95}
.dockBadge--live{color:#7fffd4}
.dockBadge--signal{color:#8ad8ff}
.dock--remastered .dock__center{display:grid;gap:14px;align-content:start}
.dockDisplay{
  display:grid;gap:10px;padding:14px 16px;border-radius:20px;
  background:linear-gradient(180deg, rgba(5,12,24,.84), rgba(3,8,16,.82));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.dockDisplay__header{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}
.dockDisplay__label,.dockDisplay__source{font-size:11px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.dockDisplay__label{color:rgba(255,255,255,.52)}
.dockDisplay__source{color:#7fffd4}
.dockDisplay__screen{
  position:relative;display:grid;gap:2px;padding:14px 16px;border-radius:18px;
  background:
    linear-gradient(180deg, rgba(127,255,212,.10), rgba(43,211,255,.04)),
    repeating-linear-gradient(180deg, rgba(255,255,255,.03) 0 1px, transparent 1px 4px),
    linear-gradient(180deg, rgba(7,18,14,.9), rgba(4,10,12,.95));
  border:1px solid rgba(127,255,212,.18);
  overflow:hidden;
}
.dockDisplay__screen::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
  transform:translateX(-120%);animation:dockSweep 5.4s linear infinite;
}
.dockDisplay__big{font-size:24px;letter-spacing:.18em;font-weight:950;color:#dff7ff;text-transform:uppercase;text-shadow:0 0 18px rgba(127,255,212,.18)}
.dockDisplay__small{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:rgba(214,255,248,.64)}
.dockTransport{display:grid;grid-template-columns:72px minmax(260px,1.45fr) 92px minmax(156px,1fr);gap:14px;align-items:stretch}
.iconbtn--pro{
  width:72px;height:72px;border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 10px 24px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08);
}
.iconbtn--pro #playIcon{font-size:22px}
.vuPanel--pro{padding:14px 16px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);min-width:0}
.vuPanel--pro .vuRow + .vuRow{margin-top:10px}
.peakWrap--pro,.vol--pro{
  align-self:stretch;display:grid;place-items:center;gap:8px;padding:12px 10px;border-radius:20px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)
}
.peakWrap--pro{grid-template-rows:auto auto;min-width:92px}
.peakWrap--pro .peakLed{margin:0 auto}
.peakWrap--pro .peakText{letter-spacing:.14em;font-size:11px;font-weight:900;text-transform:uppercase;color:rgba(255,255,255,.62)}
.vol--pro{align-content:center;justify-items:stretch;padding-inline:16px}
.vol--pro input{width:100%}
.dock--remastered .dock__right{display:grid;gap:12px;align-content:start}
.dockControlHead{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.dockControlHead__status{
  padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#8ad8ff
}
.dock--remastered .dock__sourceLabel{margin:0;font-size:11px;letter-spacing:.16em;color:rgba(255,255,255,.56)}
.dock--remastered .dock__right select{
  width:100%;padding:13px 14px;border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.12);color:#fff;font-weight:900;letter-spacing:.08em;text-transform:uppercase;
}
.dockStats--pro{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.dockStats--pro .dockStat{
  min-height:86px;align-content:start;padding:12px 13px;border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.08);
}
.dockStats--pro .dockStat--status{background:linear-gradient(180deg, rgba(127,255,212,.14), rgba(255,255,255,.03))}
.dockStats--pro .dockStat__k{font-size:10px}
.dockStats--pro .dockStat__v{font-size:15px;line-height:1.15}
.dock--remastered .footerWave,
.dock--remastered .footerOnAir{position:relative;z-index:1}
.dock--remastered .footerWave{margin-top:2px}
.dock--remastered .footerOnAir{padding-bottom:10px;opacity:.95}

@keyframes dockGlowFloatA{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(16px,-10px,0)}}
@keyframes dockGlowFloatB{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-16px,10px,0)}}
@keyframes dockScan{0%{transform:translateY(-120%)}100%{transform:translateY(120%)}}
@keyframes dockSweep{0%{transform:translateX(-120%)}100%{transform:translateX(130%)}}

@media (max-width: 1180px){
  .dock--remastered .dock__inner{grid-template-columns:1fr;}
  .dockTransport{grid-template-columns:auto minmax(180px,1fr) auto minmax(150px,.95fr)}
}
@media (max-width: 760px){
  .dock--remastered .dock__inner{padding:12px}
  .dock--remastered .dock__left,
  .dock--remastered .dock__center,
  .dock--remastered .dock__right{padding:14px}
  .dock--remastered .dock__left{flex-direction:column;align-items:flex-start}
  .dockMediaFrame{width:86px;height:86px}
  .dockTransport{grid-template-columns:1fr;}
  .dockStats--pro{grid-template-columns:1fr}
}


/* ===== PATCH 2026-03-21 · docking track split + marquee ===== */
.dockTrack{display:grid;gap:4px;min-width:0}
.dockTrack__line{display:block;min-width:0;white-space:nowrap;will-change:transform}
.dockTrack__artist{font-size:13px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:rgba(214,234,255,.72)}
.dockTrack__titleWrap{max-width:100%}
.dockTrack__title{font-size:18px;font-weight:950;letter-spacing:.015em;color:#fff}
.dock--remastered .dock__sub{font-size:11px;letter-spacing:.12em;color:rgba(255,255,255,.5)}
.dock--remastered .dock__lineWrap,.dock--remastered .dockTrack__titleWrap{overflow:hidden;min-width:0;position:relative}
.dock--remastered .npText{display:block;white-space:nowrap;will-change:transform}
.dock--remastered .npText.is-marquee{display:inline-block;padding-left:100%;animation:marqueeRTL var(--mq,12s) linear infinite}


/* === AJUSTE MAQUETACIÓN NRE CONTIGO + WEATHER PILLS === */
.statusInline{
  width:100%;
  display:flex;
  align-items:center;
  gap:10px 12px;
  padding:12px 14px;
}

.statusInline__main{
  flex:1 1 280px;
  min-width:220px;
}

.listener-location-inline{
  margin-left:auto;
  padding:7px 10px 7px 12px;
  border-left:0;
  border:1px solid rgba(87,192,255,.22);
  border-radius:999px;
  background:linear-gradient(180deg, rgba(8,20,38,.72), rgba(4,12,24,.56));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 8px 20px rgba(0,0,0,.18);
  gap:8px;
}

.listener-location-inline__label{
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(191,233,255,.74);
}

.listener-location-inline__value{
  display:inline-flex;
  align-items:center;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(0,190,255,.14);
  border:1px solid rgba(0,190,255,.26);
  color:#fff;
  font-size:12px;
  font-weight:900;
}

.rtItem__value#weatherBox{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  line-height:1.2;
}

.weatherHero__city{
  font-size:18px;
  font-weight:950;
  color:#fff;
  letter-spacing:.01em;
}

.weatherBadge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  font-size:12px;
  font-weight:900;
  color:#f8fbff;
}

.weatherBadge--temp{
  background:linear-gradient(180deg, rgba(0,190,255,.22), rgba(0,190,255,.12));
  border-color:rgba(0,190,255,.24);
  color:#dff8ff;
}

.weatherBadge--desc{
  background:linear-gradient(180deg, rgba(137,92,255,.20), rgba(137,92,255,.10));
  border-color:rgba(167,126,255,.24);
  color:#f4eeff;
  text-transform:capitalize;
}

.rtItem__meta#weatherMeta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.weatherBadge--soft{
  min-height:30px;
  padding:6px 12px;
  background:rgba(255,255,255,.06);
  border-color:rgba(255,255,255,.08);
  color:rgba(238,245,255,.92);
  font-size:11px;
  font-weight:800;
}

.weatherModule__moon{
  width:fit-content;
}

@media (max-width: 900px){
  .listener-location-inline{
    width:100%;
    margin-left:0;
    justify-content:space-between;
  }
}

@media (max-width: 640px){
  .rtItem__value#weatherBox{
    gap:8px;
  }
  .weatherHero__city{
    width:100%;
    font-size:17px;
  }
  .listener-location-inline{
    padding:8px 10px;
  }
}


/* === AJUSTE FINO 20260321d === */
/* Quitar efecto píldora dentro de píldora en NRE contigo */
.statusInline{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) auto;
  align-items:center;
  gap:10px 12px;
}
.statusInline__main{
  min-width:0;
}
.listener-location-inline{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-left:0;
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  min-width:0;
}
.listener-location-inline__label{
  font-size:10px;
  letter-spacing:.08em;
  color:rgba(191,233,255,.66);
}
.listener-location-inline__value{
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  color:#fff;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}

/* Dock más equilibrado: más aire al bloque izquierdo, menos peso centro/derecha */
.dock--remastered .dock__inner{
  grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr) minmax(220px,.72fr);
  gap:12px;
}
.dock--remastered .dock__left,
.dock--remastered .dock__center,
.dock--remastered .dock__right{
  padding:14px 15px;
}
.dockMediaFrame{
  flex:0 0 78px;
  width:78px;
  height:78px;
  border-radius:20px;
}
.dock--remastered .dock__left img{border-radius:16px}
.dockMediaFrame__live{
  left:8px;
  bottom:8px;
  padding:5px 8px;
  font-size:9px;
  letter-spacing:.12em;
}
.dock--remastered .dock__np{gap:5px}
.dock--remastered .dock__eyebrow{font-size:11px}
.dockTrack__artist{font-size:11px;letter-spacing:.11em;color:rgba(214,234,255,.76)}
.dockTrack__title{font-size:15px;letter-spacing:.005em}
.dock--remastered .dock__sub{font-size:11px;letter-spacing:.06em}
.dockBadges{gap:6px}
.dockBadge{
  padding:6px 9px;
  font-size:10px;
  letter-spacing:.1em;
}

.dock--remastered .dock__center{gap:10px}
.dockDisplay{gap:8px;padding:11px 12px;border-radius:18px}
.dockDisplay__label,.dockDisplay__source{font-size:10px;letter-spacing:.12em}
.dockDisplay__screen{padding:11px 12px;border-radius:15px}
.dockDisplay__big{font-size:18px;letter-spacing:.15em}
.dockDisplay__small{font-size:9px;letter-spacing:.08em}
.dockTransport{grid-template-columns:56px minmax(180px,1.18fr) 70px minmax(112px,.82fr);gap:10px}
.iconbtn--pro{width:56px;height:56px;border-radius:18px}
.iconbtn--pro #playIcon{font-size:18px}
.vuPanel--pro{padding:10px 11px;border-radius:16px}
.vuPanel--pro .vuRow + .vuRow{margin-top:8px}
.vuLabel{font-size:10px}
.ledMeter{height:12px;gap:3px}
.ledSeg{min-width:6px}
.peakWrap--pro,.vol--pro{padding:9px 8px;border-radius:16px;gap:6px}
.peakWrap--pro{min-width:70px}
.peakWrap--pro .peakText{font-size:10px;letter-spacing:.1em}
.vol--pro{padding-inline:10px}
.vol--pro .tiny{font-size:9px}

.dock--remastered .dock__right{gap:9px}
.dockControlHead__status{padding:5px 8px;font-size:9px;letter-spacing:.11em}
.dock--remastered .dock__sourceLabel{font-size:10px;letter-spacing:.12em}
.dock--remastered .dock__right select{padding:10px 11px;border-radius:14px;font-size:11px;letter-spacing:.04em}
.dockStats--pro{gap:8px}
.dockStats--pro .dockStat{min-height:72px;padding:9px 10px;border-radius:14px}
.dockStats--pro .dockStat__k{font-size:9px;letter-spacing:.1em}
.dockStats--pro .dockStat__v{font-size:15px}

@media (max-width: 1180px){
  .dock--remastered .dock__inner{
    grid-template-columns:minmax(0,1.4fr) minmax(280px,.95fr) minmax(210px,.7fr);
  }
}
@media (max-width: 900px){
  .statusInline{grid-template-columns:1fr}
  .listener-location-inline{justify-content:flex-start}
  .dock--remastered .dock__inner{grid-template-columns:1fr}
}


/* === AJUSTE FINO 20260321e === */
.statusMetaRow{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.statusMetaRow .statusInline{
  flex:1 1 320px;
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
}
.statusMetaRow .listener-location-inline{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(111,255,230,.20);
  background:linear-gradient(180deg, rgba(12,26,40,.78), rgba(9,20,30,.66));
  box-shadow:0 12px 28px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.04);
}
.statusMetaRow .listener-location-inline__label{
  font-size:10px;
  letter-spacing:.08em;
  color:rgba(191,233,255,.68);
}
.statusMetaRow .listener-location-inline__value{
  font-size:13px;
  font-weight:900;
  color:#fff;
}

.dock--remastered .dock__inner{
  grid-template-columns:minmax(0,1.9fr) minmax(250px,.82fr) minmax(180px,.56fr);
  gap:10px;
}
.dock--remastered .dock__left,
.dock--remastered .dock__center,
.dock--remastered .dock__right{
  padding:12px 13px;
}
.dockMediaFrame{
  flex:0 0 88px;
  width:88px;
  height:88px;
  border-radius:22px;
}
.dock--remastered .dock__left img{
  border-radius:18px;
}
.dock--remastered .dock__np{
  gap:6px;
}
.dock--remastered .dock__eyebrow{
  font-size:11px;
  letter-spacing:.07em;
}
.dockTrack__artist{
  font-size:13px;
  line-height:1.15;
  letter-spacing:.08em;
  color:#8ee7ff;
  text-shadow:0 0 12px rgba(74,194,255,.10);
}
.dockTrack__title{
  font-size:17px;
  line-height:1.15;
  letter-spacing:.01em;
  color:#fff4d6;
  text-shadow:0 0 16px rgba(255,213,124,.08);
}
.dock--remastered .dock__sub{
  font-size:10px;
  letter-spacing:.08em;
}
.dockBadge{
  padding:5px 8px;
  font-size:9px;
}

.dock--remastered .dock__center{
  gap:8px;
}
.dockDisplay{
  gap:6px;
  padding:9px 10px;
  border-radius:16px;
}
.dockDisplay__label,.dockDisplay__source{
  font-size:9px;
  letter-spacing:.10em;
}
.dockDisplay__screen{
  padding:9px 10px;
  border-radius:13px;
}
.dockDisplay__big{
  font-size:15px;
  letter-spacing:.13em;
}
.dockDisplay__small{
  font-size:8px;
  letter-spacing:.06em;
}
.dockTransport{
  grid-template-columns:48px minmax(150px,1.06fr) 58px minmax(92px,.7fr);
  gap:8px;
}
.iconbtn--pro{
  width:48px;
  height:48px;
  border-radius:16px;
}
.iconbtn--pro #playIcon{
  font-size:16px;
}
.vuPanel--pro{
  padding:8px 9px;
  border-radius:14px;
}
.vuPanel--pro .vuRow + .vuRow{
  margin-top:6px;
}
.vuLabel{
  font-size:9px;
}
.ledMeter{
  height:10px;
  gap:2px;
}
.ledSeg{
  min-width:5px;
}
.peakWrap--pro,.vol--pro{
  padding:8px 7px;
  border-radius:14px;
  gap:5px;
}
.peakWrap--pro{
  min-width:58px;
}
.peakWrap--pro .peakText{
  font-size:9px;
  letter-spacing:.08em;
}
.vol--pro{
  padding-inline:8px;
}
.vol--pro .tiny{
  font-size:8px;
}

.dock--remastered .dock__right{
  gap:8px;
}
.dockControlHead__status{
  padding:4px 7px;
  font-size:8px;
  letter-spacing:.09em;
}
.dock--remastered .dock__sourceLabel{
  font-size:9px;
  letter-spacing:.10em;
}
.dock--remastered .dock__right select{
  padding:8px 9px;
  border-radius:12px;
  font-size:10px;
  letter-spacing:.03em;
}
.dockStats--pro{
  gap:7px;
}
.dockStats--pro .dockStat{
  min-height:60px;
  padding:8px 9px;
  border-radius:12px;
}
.dockStats--pro .dockStat__k{
  font-size:8px;
  letter-spacing:.09em;
}
.dockStats--pro .dockStat__v{
  font-size:13px;
}

@media (max-width: 1180px){
  .dock--remastered .dock__inner{
    grid-template-columns:minmax(0,1.7fr) minmax(235px,.8fr) minmax(170px,.55fr);
  }
}


/* === AJUSTE FINO 20260321f · pills limpias + dock alineado === */
.statusMetaRow{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.statusMetaRow .statusInline{
  flex:1 1 340px;
  min-width:0;
}
.statusMetaRow .listener-location-inline{
  margin-left:0;
  border-left:0;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(111,255,230,.22);
  background:linear-gradient(180deg, rgba(12,26,40,.66), rgba(9,20,30,.52));
  box-shadow:0 10px 24px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.04);
}
.statusMetaRow .listener-location-inline__label{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(191,233,255,.68);
}
.statusMetaRow .listener-location-inline__value{
  font-size:13px;
  font-weight:900;
  color:#fff;
}

/* dock */
.dock--remastered .dock__inner{
  grid-template-columns:minmax(0,2.25fr) minmax(290px,.9fr) minmax(210px,.72fr);
  gap:10px;
  align-items:stretch;
}
.dock--remastered .dock__left,
.dock--remastered .dock__center,
.dock--remastered .dock__right{
  padding:12px;
  min-width:0;
}
.dock--remastered .dock__left{
  display:grid;
  grid-template-columns:104px minmax(0,1fr);
  gap:14px;
  align-items:center;
}
.dockMediaCol{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
}
.dockMediaFrame{
  flex:0 0 96px;
  width:96px;
  height:96px;
  border-radius:24px;
}
.dock--remastered .dock__left img{
  border-radius:20px;
}
.dockMediaFrame__live{display:none !important;}
.dockMediaPill{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 11px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(6,10,20,.78);
  color:#fff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  white-space:nowrap;
}
.dockMediaPill::before{
  content:'';
  width:8px;
  height:8px;
  border-radius:50%;
  background:#7fffd4;
  box-shadow:0 0 12px rgba(127,255,212,.85);
  animation:nrePulse 1.8s ease-in-out infinite;
}
.dock--remastered .dock__np{
  display:grid;
  gap:8px;
  min-width:0;
}
.dock--remastered .dock__eyebrow{
  font-size:11px;
  letter-spacing:.06em;
  color:rgba(214,234,255,.78);
}
.dockTrack{
  gap:6px;
}
.dockTrack__artist{
  font-size:15px;
  font-weight:900;
  letter-spacing:.03em;
  color:#7fe3ff;
}
.dockTrack__title{
  font-size:17px;
  font-weight:950;
  line-height:1.05;
  color:#fff4d6;
  text-shadow:0 0 14px rgba(255,213,124,.06);
}
.dock--remastered .dock__sub{display:none !important;}
.dockBadges{
  gap:8px;
  margin-top:2px;
}
.dockBadge{
  padding:6px 10px;
  font-size:10px;
  letter-spacing:.08em;
}

/* central smaller and contained */
.dock--remastered .dock__center{
  gap:8px;
}
.dockDisplay{
  gap:6px;
  padding:9px 10px;
  border-radius:16px;
}
.dockDisplay__header{
  gap:8px;
}
.dockDisplay__label,.dockDisplay__source{
  font-size:9px;
  letter-spacing:.08em;
}
.dockDisplay__screen{
  padding:8px 10px;
  border-radius:14px;
}
.dockDisplay__big{
  font-size:15px;
  letter-spacing:.12em;
}
.dockDisplay__small{
  font-size:8px;
  letter-spacing:.05em;
}
.dockTransport{
  grid-template-columns:50px minmax(150px,1fr) 62px minmax(82px,.7fr);
  gap:8px;
}
.iconbtn--pro{
  width:50px;
  height:50px;
  border-radius:16px;
}
.iconbtn--pro #playIcon{
  font-size:17px;
}
.vuPanel--pro{
  padding:9px 10px;
  border-radius:15px;
}
.vuPanel--pro .vuRow + .vuRow{
  margin-top:7px;
}
.vuLabel{
  font-size:10px;
}
.ledMeter{
  height:10px;
  gap:2px;
}
.ledSeg{
  min-width:5px;
}
.peakWrap--pro,.vol--pro{
  padding:8px 7px;
  border-radius:15px;
  gap:5px;
}
.peakWrap--pro{
  min-width:62px;
}
.peakWrap--pro .peakText{
  font-size:10px;
  letter-spacing:.08em;
}
.vol--pro .tiny{
  font-size:9px;
}
.vol--pro input[type="range"]{
  width:100%;
  min-width:0;
}

/* right smaller */
.dock--remastered .dock__right{
  gap:8px;
}
.dockControlHead{
  gap:6px;
}
.dockControlHead__status{
  padding:4px 7px;
  font-size:8px;
  letter-spacing:.08em;
}
.dock--remastered .dock__sourceLabel{
  font-size:9px;
  letter-spacing:.08em;
}
.dock--remastered .dock__right select{
  padding:8px 10px;
  border-radius:12px;
  font-size:11px;
}
.dockStats--pro{
  gap:7px;
}
.dockStats--pro .dockStat{
  min-height:60px;
  padding:8px 9px;
  border-radius:13px;
}
.dockStats--pro .dockStat__k{
  font-size:8px;
  letter-spacing:.09em;
}
.dockStats--pro .dockStat__v{
  font-size:12px;
  line-height:1.05;
}

@media (max-width: 1180px){
  .dock--remastered .dock__inner{
    grid-template-columns:minmax(0,1.75fr) minmax(255px,.9fr) minmax(190px,.68fr);
  }
  .dock--remastered .dock__left{
    grid-template-columns:96px minmax(0,1fr);
  }
}
@media (max-width: 980px){
  .dock--remastered .dock__inner{
    grid-template-columns:1fr;
  }
}


/* === FINAL DOCK BALANCE TUNING === */
.dock--remastered .dock__inner{
  grid-template-columns:minmax(0,1.62fr) minmax(320px,1fr) minmax(230px,.9fr);
  gap:12px;
  align-items:stretch;
}
.dock--remastered .dock__left,
.dock--remastered .dock__center,
.dock--remastered .dock__right{
  min-height:136px;
}
.dock--remastered .dock__left{
  grid-template-columns:88px minmax(0,1fr);
  gap:12px;
  padding:12px 12px 12px 14px;
}
.dockMediaCol{
  gap:7px;
}
.dockMediaFrame{
  flex:0 0 82px;
  width:82px;
  height:82px;
  border-radius:20px;
}
.dock--remastered .dock__left img{
  width:82px;
  height:82px;
  border-radius:18px;
}
.dockMediaPill{
  padding:6px 10px;
  font-size:10px;
  letter-spacing:.11em;
}
.dock--remastered .dock__np{
  gap:7px;
  align-content:center;
}
.dock--remastered .dock__eyebrow{
  font-size:10px;
  letter-spacing:.05em;
}
.dockTrack{
  gap:5px;
}
.dockTrack__artist{
  font-size:14px;
}
.dockTrack__title{
  font-size:16px;
  line-height:1.04;
}
.dockBadges{
  gap:7px;
}
.dockBadge{
  padding:6px 9px;
  font-size:10px;
}

.dock--remastered .dock__center{
  padding:11px 11px 10px;
  gap:8px;
}
.dockDisplay{
  gap:5px;
  padding:8px 9px;
}
.dockDisplay__label,.dockDisplay__source{
  font-size:8px;
  letter-spacing:.07em;
}
.dockDisplay__screen{
  padding:7px 9px;
}
.dockDisplay__big{
  font-size:14px;
  letter-spacing:.1em;
}
.dockDisplay__small{
  font-size:8px;
}
.dockTransport{
  grid-template-columns:44px minmax(135px,1fr) 56px minmax(70px,.62fr);
  gap:7px;
  align-items:stretch;
}
.iconbtn--pro{
  width:44px;
  height:44px;
  border-radius:14px;
}
.iconbtn--pro #playIcon{
  font-size:15px;
}
.vuPanel--pro{
  padding:8px 9px;
  border-radius:14px;
}
.vuLabel{
  font-size:9px;
}
.ledMeter{
  height:9px;
  gap:2px;
}
.ledSeg{
  min-width:4px;
}
.peakWrap--pro,.vol--pro{
  padding:7px 6px;
  border-radius:14px;
}
.peakWrap--pro{
  min-width:56px;
}
.peakWrap--pro .peakText{
  font-size:9px;
}
.vol--pro .tiny{
  font-size:8px;
}

.dock--remastered .dock__right{
  padding:10px 10px 10px 11px;
  gap:7px;
}
.dockControlHead{
  gap:5px;
}
.dock__sourceLabel{
  font-size:8px;
  letter-spacing:.07em;
}
.dockControlHead__status{
  padding:4px 7px;
  font-size:7px;
}
.dock--remastered .dock__right select{
  padding:8px 10px;
  min-height:40px;
  font-size:10px;
}
.dockStats--pro{
  gap:6px;
}
.dockStats--pro .dockStat{
  min-height:56px;
  padding:7px 8px;
}
.dockStats--pro .dockStat__k{
  font-size:7px;
}
.dockStats--pro .dockStat__v{
  font-size:11px;
  line-height:1.02;
}

@media (max-width: 1280px){
  .dock--remastered .dock__inner{
    grid-template-columns:minmax(0,1.5fr) minmax(290px,.95fr) minmax(220px,.85fr);
  }
}
@media (max-width: 1180px){
  .dock--remastered .dock__inner{
    grid-template-columns:minmax(0,1.3fr) minmax(270px,.95fr) minmax(210px,.82fr);
  }
  .dock--remastered .dock__left{
    grid-template-columns:80px minmax(0,1fr);
  }
  .dockMediaFrame,
  .dock--remastered .dock__left img{
    width:76px;
    height:76px;
  }
}


/* === ANTENA RADIAL + ICONOS ANIMADOS 20260321g === */
.dock--remastered .dock__left{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.dock--remastered .dock__left::before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:22px;
  background:
    linear-gradient(90deg, rgba(5,10,20,.9) 0%, rgba(5,10,20,.62) 28%, rgba(5,10,20,.36) 54%, rgba(5,10,20,.72) 100%),
    url('../assets/sections/antenna_radial_emit.gif') center/cover no-repeat;
  opacity:.42;
  z-index:-1;
  filter:saturate(1.05) contrast(1.06);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.04);
}
.dock--remastered .dock__left::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 22% 50%, rgba(70,220,255,.12), transparent 36%);
  pointer-events:none;
  z-index:-1;
}
.dockMediaFrame{
  box-shadow:0 0 0 1px rgba(255,255,255,.08), 0 14px 28px rgba(0,0,0,.28);
}

.rtMotionIcon,
.sectionMotionIcon{
  position:relative;
  display:inline-flex;
  width:48px;
  height:48px;
  border-radius:16px;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg, rgba(43,211,255,.22), rgba(43,255,180,.08));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 10px 24px rgba(0,0,0,.18);
  overflow:hidden;
}
.rtMotionIcon span,
.sectionMotionIcon span{position:absolute;display:block;}

.rtItem__head{gap:12px;}
.rtItem__icon{display:none !important;}

.rtMotionIcon--weather span:nth-child(1){
  width:16px;height:16px;border-radius:50%;left:12px;top:11px;
  background:rgba(255,236,158,.95);box-shadow:0 0 16px rgba(255,218,110,.6);
  animation:nrePulse 3s ease-in-out infinite;
}
.rtMotionIcon--weather span:nth-child(2){
  width:25px;height:11px;border-radius:999px;left:15px;top:24px;
  background:rgba(223,247,255,.9);box-shadow:0 4px 12px rgba(0,0,0,.18);
}
.rtMotionIcon--weather span:nth-child(3){
  width:18px;height:4px;left:16px;bottom:10px;border-radius:999px;
  background:linear-gradient(90deg, rgba(127,255,212,.2), rgba(127,255,212,.95), rgba(43,211,255,.2));
  animation:nreSlide 2.4s linear infinite;
}

.rtMotionIcon--traffic span:nth-child(1){
  inset:10px 17px 10px auto;width:4px;border-radius:999px;background:rgba(255,255,255,.08);
}
.rtMotionIcon--traffic span:nth-child(2){
  width:18px;height:28px;border-radius:10px;left:14px;top:10px;background:linear-gradient(180deg, rgba(214,234,255,.9), rgba(127,227,255,.65));
  clip-path:polygon(22% 0, 78% 0, 100% 38%, 100% 80%, 82% 100%, 18% 100%, 0 80%, 0 38%);
  animation:nreBob 2.8s ease-in-out infinite;
}
.rtMotionIcon--traffic span:nth-child(3){
  left:34px;top:12px;width:4px;height:24px;border-radius:999px;background:linear-gradient(180deg, rgba(127,255,212,.15), rgba(127,255,212,.95), rgba(127,255,212,.15));
  animation:nreSlide 1.8s linear infinite;
}

.modsActions{display:flex;align-items:center;justify-content:flex-end;min-width:64px;}
.sectionMotionIcon--news{
  width:56px;height:56px;border-radius:18px;
}
.sectionMotionIcon--news span:nth-child(1){
  inset:12px 14px auto;width:auto;height:10px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.12);
}
.sectionMotionIcon--news span:nth-child(2){
  left:14px;right:14px;top:26px;height:3px;border-radius:999px;background:rgba(223,247,255,.86);box-shadow:0 8px 0 rgba(223,247,255,.72), 0 16px 0 rgba(127,255,212,.72);
}
.sectionMotionIcon--news span:nth-child(3){
  width:14px;height:14px;border-radius:50%;right:12px;bottom:10px;background:rgba(127,255,212,.95);box-shadow:0 0 14px rgba(127,255,212,.55);animation:nrePulse 1.9s ease-in-out infinite;
}

@keyframes nreBob{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(2px)}
}


/* === FIX7 · ICONOS ANIMADOS Y TÍTULOS MEJOR MAQUETADOS === */
.sectionHeadInline{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px;min-width:0}
.sectionHeadInline .box__t,.sectionHeadInline .requestSection__title{margin:0}
.sectionHeadInline--request{align-items:flex-start}

.faq-support-box .box__t{font-size:30px;line-height:1.05;font-weight:950;letter-spacing:-.02em;margin-bottom:0;max-width:none}
.requestSection__title{font-size:30px;line-height:1.05;max-width:none}

.sectionMotionIcon--help{width:56px;height:56px;border-radius:18px}
.sectionMotionIcon--help span:nth-child(1){left:13px;top:14px;width:14px;height:14px;border-radius:50%;background:rgba(127,255,212,.95);box-shadow:0 0 16px rgba(127,255,212,.45);animation:nrePulse 2.2s ease-in-out infinite}
.sectionMotionIcon--help span:nth-child(2){left:28px;right:12px;top:16px;height:4px;border-radius:999px;background:rgba(223,247,255,.82);box-shadow:0 9px 0 rgba(223,247,255,.62),0 18px 0 rgba(127,255,212,.62)}
.sectionMotionIcon--help span:nth-child(3){right:10px;bottom:10px;width:16px;height:16px;border-radius:6px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg, rgba(87,206,255,.32), rgba(87,206,255,.08));animation:nreBob 2.6s ease-in-out infinite}

.sectionMotionIcon--request{width:56px;height:56px;border-radius:18px}
.sectionMotionIcon--request span:nth-child(1){left:12px;top:17px;width:18px;height:22px;border-radius:10px 10px 12px 12px;background:linear-gradient(180deg, rgba(223,247,255,.92), rgba(127,227,255,.7));box-shadow:0 8px 20px rgba(0,0,0,.2)}
.sectionMotionIcon--request span:nth-child(2){left:30px;top:13px;width:14px;height:30px;border-radius:999px;background:linear-gradient(180deg, rgba(127,255,212,.18), rgba(127,255,212,.95), rgba(127,255,212,.18));animation:nreSlide 2s linear infinite}
.sectionMotionIcon--request span:nth-child(3){left:12px;right:12px;bottom:11px;height:4px;border-radius:999px;background:rgba(255,255,255,.14);box-shadow:0 0 0 1px rgba(255,255,255,.08) inset}

.modsPanel__head{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:start;margin-bottom:14px}
.modsPanel__title{display:flex;align-items:center;gap:10px;font-size:20px;line-height:1.05;font-weight:950;letter-spacing:-.01em;margin:0}
.modsPanel__title::before{flex:0 0 auto;width:16px;height:16px;border-radius:5px;box-shadow:0 0 0 1px rgba(255,255,255,.10) inset, 0 8px 20px rgba(0,0,0,.14)}
.modsPanel__meta{display:grid;gap:4px;padding-left:26px}
.srcLabel{opacity:.72}
.srcSub{line-height:1.35;color:rgba(255,255,255,.58)}

@media (max-width: 900px){
  .sectionHeadInline{align-items:flex-start}
  .faq-support-box .box__t,.requestSection__title{font-size:24px}
  .sectionMotionIcon--help,.sectionMotionIcon--request{width:50px;height:50px;border-radius:16px}
}


/* MENU PRO NRE */
.dropdown::before{content:'';position:absolute;left:16px;right:16px;top:0;height:1px;background:linear-gradient(90deg, rgba(43,211,255,0), rgba(43,211,255,.55), rgba(127,255,212,.55), rgba(43,211,255,0))}
.dropdown a{position:relative;padding-left:18px}
.dropdown a::before{content:'';width:7px;height:7px;border-radius:999px;background:linear-gradient(180deg, rgba(127,255,212,.95), rgba(43,211,255,.55));box-shadow:0 0 12px rgba(127,255,212,.35)}
.dropdown a:hover::before{transform:scale(1.15)}
@media (max-width:1100px){.nav{justify-content:flex-start;overflow:auto;padding:8px}.nav::-webkit-scrollbar{display:none}.brand{min-width:auto}.topbar__inner{flex-wrap:wrap}.topbar__right{min-width:auto;margin-left:auto}}


/* TITULOS DE SECCION CON ICONO A LA IZQUIERDA */
.modsTitle--withIcon{display:flex;align-items:center;gap:14px}
.modsTitle--withIcon .sectionMotionIcon{width:52px;height:52px;border-radius:17px;flex:0 0 auto}
.miniSectionIcon{position:relative;display:inline-flex;flex:0 0 auto;width:18px;height:18px;border-radius:6px;background:linear-gradient(180deg, rgba(43,211,255,.24), rgba(127,255,212,.08));border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 8px 18px rgba(0,0,0,.15)}
.miniSectionIcon::before,.miniSectionIcon::after{content:'';position:absolute;display:block}
.miniSectionIcon--news::before{left:4px;right:4px;top:4px;height:3px;border-radius:999px;background:rgba(223,247,255,.88);box-shadow:0 4px 0 rgba(223,247,255,.66), 0 8px 0 rgba(127,255,212,.8)}
.miniSectionIcon--news::after{right:3px;bottom:3px;width:4px;height:4px;border-radius:999px;background:#7fffd4;box-shadow:0 0 10px rgba(127,255,212,.45);animation:nrePulse 1.9s ease-in-out infinite}
.miniSectionIcon--music::before{left:6px;top:4px;width:3px;height:8px;border-radius:999px;background:#dff7ff;box-shadow:5px 2px 0 #7fffd4}
.miniSectionIcon--music::after{left:5px;bottom:3px;width:5px;height:5px;border-radius:999px;background:#dff7ff;box-shadow:6px 0 0 #7fffd4;animation:nreBob 2.2s ease-in-out infinite}



/* === 2026-03-21 · MENU + DOCK BALANCE FINAL === */
.topbar__inner{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
}
.brand{
  min-width:250px;
  max-width:250px;
}
.nav{
  min-width:0;
  width:min(100%, 920px);
  max-width:920px;
  margin:0 auto;
  gap:8px;
  padding:7px 8px;
  border-radius:20px;
}
.nav__link{
  gap:8px;
  padding:10px 12px;
  font-size:12px;
  white-space:nowrap;
}
.nav__link::after{
  left:12px;
  right:12px;
  bottom:5px;
}
.nav__ico{
  width:18px;
  height:18px;
  border-radius:7px;
}
.chev{
  margin-left:1px;
}
.topbar__right{
  min-width:max-content;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:nowrap;
}
.pill--clock{
  padding:9px 12px;
}
.live__pill{
  padding:9px 13px;
  font-size:11px;
}

.dock--remastered .dock__inner{
  grid-template-columns:minmax(0,1.22fr) minmax(400px,1.28fr) minmax(205px,.76fr);
  gap:13px;
  align-items:stretch;
}
.dock--remastered .dock__left,
.dock--remastered .dock__center,
.dock--remastered .dock__right{
  min-height:128px;
}
.dock--remastered .dock__left{
  grid-template-columns:74px minmax(0,1fr);
  gap:10px;
  padding:11px 11px 11px 12px;
}
.dockMediaCol{
  gap:6px;
}
.dockMediaFrame{
  flex:0 0 70px;
  width:70px;
  height:70px;
  border-radius:18px;
}
.dock--remastered .dock__left img{
  width:70px;
  height:70px;
  border-radius:16px;
}
.dockMediaPill{
  padding:6px 9px;
  font-size:10px;
}
.dock--remastered .dock__np{
  gap:6px;
}
.dock--remastered .dock__eyebrow{
  font-size:10px;
  letter-spacing:.04em;
}
.dockTrack{
  gap:4px;
}
.dockTrack__artist{
  font-size:15px;
  font-weight:900;
  color:#67d8ff;
}
.dockTrack__title{
  font-size:17px;
  line-height:1.03;
  color:#fff0cf;
}
.dockBadges{
  gap:6px;
  flex-wrap:wrap;
}
.dockBadge{
  padding:6px 8px;
  font-size:10px;
}

.dock--remastered .dock__center{
  padding:12px 13px 11px;
  gap:9px;
}
.dockDisplay{
  gap:5px;
  padding:8px 10px;
}
.dockDisplay__screen{
  padding:8px 10px;
}
.dockDisplay__big{
  font-size:15px;
  letter-spacing:.1em;
}
.dockDisplay__small{
  font-size:9px;
}
.dockTransport{
  grid-template-columns:42px minmax(168px,1fr) 58px minmax(78px,.7fr);
  gap:8px;
}
.iconbtn--pro{
  width:42px;
  height:42px;
  border-radius:14px;
}
.iconbtn--pro #playIcon{
  font-size:14px;
}
.vuPanel--pro{
  padding:8px 10px;
}
.ledMeter{
  height:9px;
}
.peakWrap--pro,.vol--pro{
  padding:7px 7px;
}
.vol--pro .tiny{
  font-size:8px;
}

.dock--remastered .dock__right{
  padding:10px 10px 10px 10px;
  gap:7px;
}
.dock__sourceLabel{
  font-size:8px;
  letter-spacing:.06em;
}
.dockControlHead__status{
  padding:4px 7px;
  font-size:7px;
}
.dock--remastered .dock__right select{
  padding:8px 10px;
  min-height:40px;
  font-size:10px;
}
.dockStats--pro{
  gap:6px;
}
.dockStats--pro .dockStat{
  min-height:54px;
  padding:7px 8px;
}
.dockStats--pro .dockStat__k{
  font-size:7px;
}
.dockStats--pro .dockStat__v{
  font-size:11px;
  line-height:1.02;
}

@media (max-width: 1450px){
  .brand{min-width:224px;max-width:224px}
  .nav{max-width:860px}
  .nav__link{padding:9px 11px}
  .dock--remastered .dock__inner{
    grid-template-columns:minmax(0,1.16fr) minmax(360px,1.24fr) minmax(195px,.74fr);
  }
}
@media (max-width: 1280px){
  .topbar__inner{
    grid-template-columns:auto minmax(0,1fr);
    grid-template-areas:
      "brand right"
      "nav nav";
    row-gap:12px;
  }
  .brand{grid-area:brand}
  .nav{grid-area:nav; width:100%; max-width:none}
  .topbar__right{grid-area:right}
}

/* === AJUSTE FINO DOCK 20260321h · art mayor + badges desplazadas === */
.dock--remastered .dock__inner{
  grid-template-columns:minmax(0,1.48fr) minmax(350px,1.08fr) minmax(220px,.82fr);
  gap:10px;
}
.dock--remastered .dock__left{
  grid-template-columns:96px minmax(0,1fr);
  gap:14px;
  padding:12px 12px 12px 14px;
}
.dockMediaFrame{
  flex:0 0 90px;
  width:90px;
  height:90px;
}
.dock--remastered .dock__left img{
  width:90px;
  height:90px;
  border-radius:18px;
}
.dockMediaCol{
  gap:8px;
}
.dockMediaPill{
  align-self:flex-start;
  margin-left:6px;
}
.dockTrack__artist{
  font-size:15px;
}
.dockTrack__title{
  font-size:17px;
}
.dockBadges{
  gap:8px;
  padding-left:12px;
}
.dockBadge{
  padding:6px 10px;
}
.dock--remastered .dock__center{
  padding:11px 10px 10px;
}
.dockTransport{
  grid-template-columns:42px minmax(150px,1fr) 54px minmax(64px,.56fr);
}
.dock--remastered .dock__right{
  padding:10px 9px 10px 10px;
}
@media (max-width: 1280px){
  .dock--remastered .dock__inner{
    grid-template-columns:minmax(0,1.42fr) minmax(320px,1.02fr) minmax(210px,.8fr);
  }
  .dock--remastered .dock__left{
    grid-template-columns:90px minmax(0,1fr);
  }
  .dockMediaFrame,
  .dock--remastered .dock__left img{
    width:84px;
    height:84px;
  }
}


/* === FINAL FIX 20260321i · on air rojo + art 76 + no wave === */
.dockDisplay__big{
  color:#ff3b3b !important;
  text-shadow:0 0 10px rgba(255,60,60,.7);
}
.dock--remastered .dock__left img{
  width:76px !important;
  height:76px !important;
}
.dockMediaFrame{
  flex:0 0 76px !important;
  width:76px !important;
  height:76px !important;
}

/* === FINAL FIX 20260321j · ON AIR con fondo rojo + art grande === */
.dockDisplay__big{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 12px;
  border-radius:999px;
  background:linear-gradient(180deg,#ff4b4b,#cf1f1f) !important;
  color:#fff !important;
  text-shadow:none !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.08), 0 8px 20px rgba(207,31,31,.32);
}
.dockMediaFrame,
.dock--remastered .dock__left img{
  width:96px !important;
  height:96px !important;
}
.dockMediaFrame{
  flex:0 0 96px !important;
}


/* ===== NRE FIX 2026-03-21 · ON AIR ROJO + PARPADEO INTELIGENTE ===== */
.live__pill,
.dockMediaPill{
  background: linear-gradient(180deg, #ff3b3b 0%, #b80000 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  box-shadow: 0 0 0 1px rgba(255,0,0,.35), 0 14px 34px rgba(255,0,0,.22) !important;
}

.live__pill span,
.dockMediaPill{
  color:#fff !important;
}

.live__pill .live__dot{
  animation:none !important;
}

.live__pill.is-live,
.dockMediaPill.is-live{
  animation:nreOnAirBlink 1.05s steps(1,end) infinite;
}

.live__pill.is-live .live__dot{
  animation:none !important;
}

@keyframes nreOnAirBlink{
  0%, 100%{ opacity:1; filter:brightness(1); }
  50%{ opacity:.55; filter:brightness(1.15); }
}

/* Artwork del docking un pelín más protagonista sin romper caja */
.dock--remastered #dockArt{
  width: 100px !important;
  height: 100px !important;
  border-radius: 18px !important;
}
.dock--remastered .dockMediaFrame{
  width: 100px !important;
  height: 100px !important;
}

.logo-main{height:76px;display:block;}
.logo-footer{height:65px;display:block;margin:20px auto;}


.weatherBadge--temp .weatherBadge__icon{
  display:inline-flex;
  width:18px;
  height:18px;
  margin-right:8px;
  vertical-align:middle;
}
.weatherBadge--temp .weatherBadge__icon svg,
.pill__ic svg,
.pill__icon svg,
.statusPill__icon svg,
.iconWrap svg{
  width:18px;
  height:18px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  animation:weatherIconFloat 3.2s ease-in-out infinite;
  filter:drop-shadow(0 0 10px rgba(255,255,255,.18));
}
.weatherAnim--moon .weatherAnim__moon,
.moonPillIcon{
  display:inline-flex;
  animation:weatherIconFloat 3.2s ease-in-out infinite;
}
@keyframes weatherIconFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-3px)}
}


#pillWeather .pill__ic,
#pillWeather .pill__icon,
#pillWeather .statusPill__icon,
#pillWeather .iconWrap{
  align-items:center;
  justify-content:center;
}
#pillWeather .pill__ic svg,
#pillWeather .pill__icon svg,
#pillWeather .statusPill__icon svg,
#pillWeather .iconWrap svg,
#pillWeatherText .weatherBadge__icon svg{
  width:18px;
  height:18px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
  animation:weatherIconFloat 3.2s ease-in-out infinite;
}
.weatherAnim--moon .weatherAnim__moon{
  display:inline-block;
  animation:weatherIconFloat 3.2s ease-in-out infinite;
}


/* Weather image backgrounds expected:
   /assets/backgrounds/weather/sunny.jpg
   /assets/backgrounds/weather/cloudy.jpg
   /assets/backgrounds/weather/rain.jpg
   /assets/backgrounds/weather/night.jpg
   /assets/backgrounds/weather/fog.jpg
   /assets/backgrounds/weather/storm.jpg
   /assets/backgrounds/weather/snow.jpg
   If any image is missing, the gradient fallback below still keeps the module usable.
*/


/* 🌙 NIGHT MODE PRO FINAL */

.rtItem--weather.weather-card--night{
  border-color:rgba(120,150,255,.2);
  box-shadow:
    0 10px 40px rgba(0,0,0,.6),
    inset 0 0 80px rgba(40,60,120,.18);
  background:
    linear-gradient(180deg, rgba(5,9,22,.55) 0%, rgba(3,7,18,.92) 100%),
    url("/assets/backgrounds/weather/night.jpg") center/cover no-repeat;
}

.rtItem--weather.weather-card--night::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:
    radial-gradient(2px 2px at 20% 30%, rgba(255,255,255,.6), transparent),
    radial-gradient(1.5px 1.5px at 60% 70%, rgba(255,255,255,.5), transparent),
    radial-gradient(1.8px 1.8px at 80% 40%, rgba(255,255,255,.4), transparent),
    radial-gradient(1.2px 1.2px at 30% 80%, rgba(255,255,255,.4), transparent);
  opacity:.4;
  animation:starsMove 20s linear infinite;
}

@keyframes starsMove{
  from{transform:translateY(0)}
  to{transform:translateY(-20px)}
}

.weatherAnim--moon .weatherAnim__moon{
  filter:
    drop-shadow(0 0 8px rgba(180,200,255,.4))
    drop-shadow(0 0 18px rgba(120,150,255,.35));
}

.rtItem--weather.weather-card--night .weatherModule__icon{
  background:rgba(10,15,30,.4) !important;
  border-color:rgba(120,150,255,.2);
}

.nre-night-mode{
  --accent-color:#7aa2ff;
}

/* 🌙 EXTRA DATA LAYOUT */
#weatherMeta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:6px;
}
.weatherBadge--soft{
  font-size:11px;
  padding:4px 8px;
  border-radius:10px;
  background:rgba(255,255,255,.08);
}
#weatherMoon{
  margin-top:6px;
  display:flex;
  align-items:center;
  gap:6px;
  font-size:12px;
  opacity:.9;
}
.moonPillIcon{
  font-size:14px;
}


/* WEATHER EXTRAS FORCE */
.weatherExtrasNRE{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.weatherBadge--moon{
  background:linear-gradient(180deg, rgba(120,150,255,.18), rgba(120,150,255,.10));
  border:1px solid rgba(120,150,255,.20);
  color:#dfe7ff;
}



/* KEEP FULL WEATHER EXTRAS, HIDE SHORT ORIGINAL ROW */
#weatherMeta{
  display:none !important;
}
#weatherMoon{
  display:none !important;
}
.weatherExtrasNRE{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:10px;
}
.weatherBadge--moon{
  background:linear-gradient(180deg, rgba(120,150,255,.18), rgba(120,150,255,.10));
  border:1px solid rgba(120,150,255,.20);
  color:#dfe7ff;
}


/* WEATHER MODULE · EXTENDED INFO V3 */
#weatherBox{
  width:100%;
}
#weatherBox .weatherHero__city{
  width:100%;
}
#weatherBox .weatherExtrasNRE{
  width:100%;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:8px;
}
#weatherModule .weatherModule__source{
  display:block;
  margin-top:10px;
}


/* ===== FINAL SAFE OVERRIDES 20260323 ===== */
.brand__logo{width:225px !important;height:68px !important;}
@media (max-width:768px){.brand__logo{width:148px !important;height:55px !important;}}
.dock--remastered #dockArt,.dock--remastered .dockMediaFrame{width:94px !important;height:94px !important;}
.dock--remastered .dockMediaFrame{min-width:94px !important;min-height:94px !important;}
.dock__left,.dock__center,.dock__right{align-items:center;}
.brand{gap:8px !important;}


/* 20260323 stable final tweaks */
.topbar__inner{align-items:center}
.brand{min-width:auto}
.logo-main{max-width:100%;height:76px}
.dock--remastered{align-items:center}


/* ===== merged traffic + news 20260324 ===== */

/* Dock artwork */
.dock__left img{
  width:76px !important;
  height:76px !important;
  border-radius:18px !important;
  border:1px solid rgba(255,255,255,.16) !important;
  object-fit:cover;
}

/* DGT pill */
.pill--traffic{gap:8px;}
.pill__ic--dgt{
  width:20px;
  height:20px;
  padding:2px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  box-shadow:0 4px 14px rgba(0,0,0,.18);
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.pill__ic--dgt img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}

/* DGT module */
.traffic-bulletin{
  margin-top:12px;
  padding:14px;
  border-radius:18px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02)),
    radial-gradient(120% 140% at 10% 0%, rgba(43,211,255,.10), transparent 55%),
    rgba(10,16,32,.24);
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 10px 30px rgba(0,0,0,.20);
}
.traffic-bulletin__kicker{
  display:inline-flex;
  width:max-content;
  margin-bottom:8px;
  padding:6px 10px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  color:#06111b;
  background:linear-gradient(180deg, rgba(127,255,212,.95), rgba(43,211,255,.82));
}
.traffic-bulletin__title{
  font-weight:900;
  font-size:13px;
  line-height:1.35;
  color:rgba(255,255,255,.94);
  margin-bottom:10px;
}
.traffic-bulletin__playerShell{
  padding:8px 10px;
  border-radius:14px;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.06);
}
.traffic-bulletin audio{
  width:100%;
  height:32px;
  display:block;
}
.traffic-bulletin__foot{
  margin-top:8px;
  display:flex;
  justify-content:flex-end;
}
.traffic-bulletin__link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:10px;
  font-weight:800;
  text-decoration:none;
  color:rgba(255,255,255,.72);
}
.traffic-bulletin__link:hover{color:#fff;}

/* News 8 cards with excerpt */
.cards6{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.cards6 .cardNews{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:238px;
  height:100%;
  border-radius:22px;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(0,0,0,.25));
  border:1px solid rgba(255,255,255,.10);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.cards6 .cardNews:first-child{
  grid-column:span 2;
  grid-row:span 2;
  min-height:380px;
}
.cards6 .cardNews:first-child .cardNews__img{height:220px;}
.cards6 .cardNews:first-child .cardNews__title{
  font-size:18px;
  -webkit-line-clamp:3;
}
.cards6 .cardNews:first-child .cardNews__excerpt{
  -webkit-line-clamp:4;
  font-size:13px;
}
.cards6 .cardNews:hover{
  transform:translateY(-4px);
  border-color:rgba(0,190,255,.24);
  box-shadow:0 20px 60px rgba(0,0,0,.45), 0 0 0 1px rgba(0,190,255,.10);
}
.cardNews__img{
  width:100%;
  height:104px;
  object-fit:cover;
  display:block;
  background:rgba(255,255,255,.06);
  transition:transform .35s ease;
}
.cardNews:hover .cardNews__img{transform:scale(1.04);}
.cardNews__body{
  padding:15px;
  display:flex;
  flex-direction:column;
  gap:8px;
  min-height:104px;
}
.cardNews__title{
  font-size:14px;
  font-weight:900;
  line-height:1.32;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.cardNews__excerpt{
  color:rgba(255,255,255,.72);
  font-size:12px;
  line-height:1.45;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  min-height:50px;
}
.cardNews__meta{
  margin-top:auto;
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  color:rgba(255,255,255,.62);
  font-size:11px;
  font-weight:800;
  opacity:.82;
}

/* Footer gold anniversary */
.footerBottomBrand--tribute{
  width:min(100%, 980px);
  margin:20px auto 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:18px 22px;
  border-radius:20px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02)),
    radial-gradient(120% 140% at 10% 0%, rgba(255,191,71,.10), transparent 50%),
    radial-gradient(120% 140% at 100% 100%, rgba(255,226,132,.08), transparent 55%),
    rgba(10,16,32,.18);
  border:1px solid rgba(255,255,255,.08);
}
.footerBottomBrand--tribute .footerBrandText{
  flex:1 1 auto;
  align-items:flex-start;
  text-align:left;
}
.footerBrandTitle{
  font-size:18px;
  font-weight:900;
  color:#fff;
}
.footerBrandSubtitle{
  font-size:12px;
  opacity:.78;
  margin-top:4px;
  line-height:1.4;
  color:rgba(255,255,255,.82);
}
.footerTributeLogo{
  flex:0 0 auto;
  width:235px;
  max-width:40vw;
  height:auto;
  object-fit:contain;
}
.footerTributeLogo--gold{
  filter:
    sepia(1)
    saturate(1.7)
    hue-rotate(350deg)
    brightness(1.08)
    contrast(1.06)
    drop-shadow(0 0 8px rgba(255,196,92,.22))
    drop-shadow(0 0 18px rgba(255,196,92,.18));
  opacity:.98;
}

@media (max-width:1180px){
  .cards6{grid-template-columns:repeat(3, minmax(0,1fr));}
  .cards6 .cardNews:first-child{
    grid-column:span 2;
    grid-row:span 1;
    min-height:300px;
  }
  .cards6 .cardNews:first-child .cardNews__img{height:180px;}
}
@media (max-width:980px){
  .cards6{grid-template-columns:repeat(2, minmax(0,1fr));}
  .cards6 .cardNews:first-child{
    grid-column:span 2;
    min-height:280px;
  }
}
@media (max-width:640px){
  .cards6{grid-template-columns:1fr;}
  .cards6 .cardNews:first-child{
    grid-column:auto;
    min-height:250px;
  }
  .cards6 .cardNews:first-child .cardNews__img{height:160px;}
  .footerBottomBrand--tribute{
    flex-direction:column;
    text-align:center;
  }
  .footerBottomBrand--tribute .footerBrandText{
    align-items:center;
    text-align:center;
  }
  .footerTributeLogo{
    width:210px;
    max-width:58vw;
  }
}

/* ===== 20260324 fixed news9 + videos ===== */
.wrap{max-width:1360px;}
.cards6{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:16px !important;
  align-items:stretch;
}
.cardNews{
  position:relative !important;
  display:block !important;
  min-height:300px !important;
  height:300px !important;
  border-radius:24px !important;
  overflow:hidden !important;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.cardNews:hover{
  transform:translateY(-4px);
  border-color:rgba(0,190,255,.24);
  box-shadow:0 24px 70px rgba(0,0,0,.42),0 0 0 1px rgba(0,190,255,.10);
}
.cardNews__img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block;
  background:rgba(255,255,255,.06);
  transition:transform .4s ease;
}
.cardNews:hover .cardNews__img{transform:scale(1.05);}
.cardNews__body{display:none !important;}
.cardNews__overlay{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:8px;
  padding:16px;
  background:linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(0,0,0,.18) 40%, rgba(0,0,0,.78) 100%);
}
.cardNews__tag{
  width:max-content;
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,51,85,.96), rgba(255,51,85,.70));
  border:1px solid rgba(255,255,255,.10);
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#fff;
}
.cardNews__title{
  font-size:18px !important;
  font-weight:950 !important;
  line-height:1.22 !important;
  color:#fff;
  text-shadow:0 2px 12px rgba(0,0,0,.35);
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.cardNews__excerpt{
  color:rgba(255,255,255,.84);
  font-size:12px;
  line-height:1.45;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  max-width:90%;
}
.cardNews__meta{
  color:rgba(255,255,255,.72);
  font-size:11px;
  font-weight:800;
  letter-spacing:.02em;
}
.cardsVideos{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.cardVideo{
  position:relative;
  display:block;
  min-height:260px;
  height:260px;
  border-radius:24px;
  overflow:hidden;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
  transition:transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}
.cardVideo:hover{
  transform:translateY(-4px);
  border-color:rgba(255,0,64,.22);
  box-shadow:0 24px 70px rgba(0,0,0,.42),0 0 0 1px rgba(255,0,64,.10);
}
.cardVideo__img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  background:rgba(255,255,255,.06);
  transition:transform .4s ease;
}
.cardVideo:hover .cardVideo__img{transform:scale(1.05);}
.cardVideo__overlay{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:8px;
  padding:16px;
  background:linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(0,0,0,.18) 40%, rgba(0,0,0,.78) 100%);
}
.cardVideo__play{
  position:absolute; top:14px; right:14px;
  width:42px; height:42px; border-radius:999px;
  display:grid; place-items:center;
  font-size:16px; font-weight:900; color:#fff;
  background:rgba(255,51,85,.86);
  border:1px solid rgba(255,255,255,.14);
}
.cardVideo__title{
  font-size:18px;
  font-weight:950;
  line-height:1.22;
  color:#fff;
  text-shadow:0 2px 12px rgba(0,0,0,.35);
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.cardVideo__meta{color:rgba(255,255,255,.72);font-size:11px;font-weight:800;}
.traffic-bulletin{
  margin-top:14px;
  padding:15px;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02)), radial-gradient(120% 140% at 10% 0%, rgba(43,211,255,.10), transparent 55%), rgba(10,16,32,.24);
  border:1px solid rgba(255,255,255,.08);
}
.traffic-bulletin__playerShell{
  padding:8px 10px;border-radius:14px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.06);
}
.traffic-bulletin audio{width:100%;height:32px;display:block;}
.footerTributeLogo--hero{width:290px !important;max-width:46vw !important;}
@media (max-width:980px){
  .modsGrid2{grid-template-columns:1fr;}
  .cards6,.cardsVideos{grid-template-columns:1fr 1fr !important;}
}
@media (max-width:640px){
  .cards6,.cardsVideos{grid-template-columns:1fr !important;}
  .cardNews,.cardVideo{min-height:260px !important;height:260px !important;}
  .cardNews__title,.cardVideo__title{font-size:16px !important;}
}


/* ===== 20260324 final home polish ===== */
.newsModules--final{margin-top:26px !important;}
.modsHead--editorial{display:flex;align-items:stretch;justify-content:space-between;gap:24px;padding:22px 24px;border:1px solid rgba(255,255,255,.08);border-radius:28px;background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02)), radial-gradient(120% 150% at 0% 0%, rgba(0,190,255,.12), transparent 55%), radial-gradient(120% 150% at 100% 100%, rgba(255,0,64,.08), transparent 55%), rgba(8,14,28,.36);box-shadow:0 24px 70px rgba(0,0,0,.28);margin-bottom:18px;}
.modsHead__copy{min-width:0;flex:1 1 auto;}
.modsTitle--editorial{margin:10px 0 8px;font-size:34px;line-height:1.05;}
.newsSubtitle{margin:0 0 8px;font-size:15px;font-weight:800;color:rgba(255,255,255,.82);letter-spacing:.02em;}
.modsHead__badgeWrap{display:flex;align-items:flex-start;justify-content:flex-end;}
.modsHead__badge{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg, rgba(255,51,85,.20), rgba(255,51,85,.10));font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;}
.modsHead__badge--video{background:linear-gradient(180deg, rgba(255,183,77,.22), rgba(255,183,77,.10));}
.modsGrid2--stack{display:grid;grid-template-columns:1fr;gap:18px;}
.modsPanel--newsMain,.modsPanel--musicMain,.modsPanel--videos{padding:18px 18px 20px;}
.modsPanel__head--refined{align-items:flex-start;padding-bottom:14px;margin-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08);}
.modsPanel__meta--stacked{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-weight:900;font-size:13px;color:rgba(255,255,255,.90);}
.modsPanel__meta--stacked .srcLabel{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.52);}
.cards6{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:18px !important;}
.cardNews{min-height:320px !important;height:320px !important;border-radius:26px !important;}
.cardNews__overlay{padding:18px !important;gap:10px !important;background:linear-gradient(180deg, rgba(0,0,0,.02) 0%, rgba(0,0,0,.12) 28%, rgba(0,0,0,.82) 100%) !important;}
.cardNews__title{font-size:19px !important;-webkit-line-clamp:3;}
.cardNews__excerpt{max-width:100%;font-size:12px;}
.cardNews__meta{display:none !important;}
.cardNews__stamp{position:absolute;right:14px;bottom:14px;z-index:3;display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:rgba(8,12,22,.78);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);font-size:10px;font-weight:900;letter-spacing:.06em;color:rgba(255,255,255,.94);box-shadow:0 8px 24px rgba(0,0,0,.28);}
.cardNews__source{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;color:rgba(255,255,255,.76);}
.cardNews__source::before{content:"";width:7px;height:7px;border-radius:999px;background:rgba(255,183,77,.95);box-shadow:0 0 0 6px rgba(255,183,77,.10);}
.musicVideosBlock{margin-top:18px !important;margin-bottom:0 !important;padding-bottom:8px !important;}
.cardsVideos{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:18px !important;}
.cardVideo{min-height:290px;height:290px;border-radius:26px;}
.cardVideo__overlay{padding:18px !important;}
.footer{margin-top:24px;}
.footerBottomBrand--tribute{width:min(100%, 1120px);padding:22px 28px;gap:32px;}
.footerTributeLogo{width:320px;max-width:48vw;}
.footerTributeLogo--gold{filter:sepia(1) saturate(2.4) hue-rotate(352deg) brightness(1.12) contrast(1.08) drop-shadow(0 0 10px rgba(255,196,92,.26)) drop-shadow(0 0 24px rgba(255,196,92,.22));}
@media (max-width:1100px){.modsHead--editorial{padding:20px;}.modsTitle--editorial{font-size:30px;}.footerTributeLogo{width:280px;max-width:52vw;}}
@media (max-width:980px){.modsHead--editorial{flex-direction:column;}.modsHead__badgeWrap{justify-content:flex-start;}.cards6,.cardsVideos{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}.cardNews,.cardVideo{min-height:280px !important;height:280px !important;}.modsPanel__meta--stacked{align-items:flex-start;}}
@media (max-width:640px){.modsTitle--editorial{font-size:26px;}.cards6,.cardsVideos{grid-template-columns:1fr !important;}.cardNews,.cardVideo{min-height:250px !important;height:250px !important;}.cardNews__stamp{right:12px;bottom:12px;}}


/* ===== 20260324 final nre home closing pass ===== */
.newsModules--final,
.musicVideosBlock{position:relative;isolation:isolate;}
.newsModules--final::before,
.musicVideosBlock::before{content:"";position:absolute;inset:auto 18px -6px 18px;height:1px;background:linear-gradient(90deg, transparent, rgba(255,255,255,.16), transparent);pointer-events:none;}
.modsHead--newsHero{position:relative;overflow:hidden;padding:26px 28px;border-radius:30px;background:
  linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02)),
  radial-gradient(110% 150% at 0% 0%, rgba(0,190,255,.18), transparent 52%),
  radial-gradient(95% 120% at 100% 0%, rgba(255,183,77,.16), transparent 42%),
  radial-gradient(140% 180% at 50% 100%, rgba(255,0,98,.10), transparent 58%),
  rgba(8,14,28,.58);}
.modsHead--newsHero::after{content:"";position:absolute;right:-40px;top:-40px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle, rgba(255,255,255,.14), transparent 65%);filter:blur(4px);opacity:.55;pointer-events:none;}
.modsHead__badgeWrap--stacked{display:flex;flex-direction:column;align-items:flex-end;gap:10px;}
.modsHead__badge--ghost{background:linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.04));color:rgba(255,255,255,.92);}
.modsHeroStats{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px;}
.modsHeroStat{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:16px;border:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));box-shadow:0 12px 34px rgba(0,0,0,.16);}
.modsHeroStat strong{font-size:14px;line-height:1;font-weight:900;letter-spacing:.08em;color:#fff;}
.modsHeroStat small{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.72);}
.modsPanel{position:relative;overflow:hidden;}
.modsPanel--newsMain::before,.modsPanel--musicMain::before,.modsPanel--videos::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg, transparent, rgba(255,255,255,.12), transparent);pointer-events:none;}
.modsPanel__title{font-size:24px;line-height:1.08;letter-spacing:-.02em;}
.modsPanel__title--news span:last-child,.modsPanel__title--music span:last-child{display:inline-block;transform:translateY(1px);}
.srcSub{font-size:13px;font-weight:700;letter-spacing:.02em;color:rgba(255,255,255,.70);margin-top:6px;}
.cardNews,.cardVideo{transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, filter .22s ease !important;}
.cardNews:hover,.cardVideo:hover{transform:translateY(-5px) scale(1.01);box-shadow:0 22px 42px rgba(0,0,0,.34);border-color:rgba(255,255,255,.18) !important;filter:saturate(1.04);}
.cardNews::after,.cardVideo::after{content:"";position:absolute;inset:0;border-radius:inherit;border:1px solid rgba(255,255,255,.08);pointer-events:none;}
.cardNews__img,.cardVideo__img{transform:scale(1.001);transition:transform .6s ease;}
.cardNews:hover .cardNews__img,.cardVideo:hover .cardVideo__img{transform:scale(1.045);}
.cardNews__tag{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border-radius:999px;background:rgba(8,12,22,.70);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.cardNews__tag::before{content:"";width:7px;height:7px;border-radius:50%;background:linear-gradient(180deg,#ffcc76,#ff934f);box-shadow:0 0 0 5px rgba(255,183,77,.10);}
.cardNews__title{max-width:90%;text-wrap:balance;}
.cardNews__excerpt{line-height:1.45;color:rgba(255,255,255,.72) !important;}
.cardNews__stamp{bottom:16px;right:16px;padding:8px 11px;font-size:10px;letter-spacing:.08em;background:rgba(7,11,21,.82);box-shadow:0 10px 28px rgba(0,0,0,.30);}
.cardVideo__overlay{background:linear-gradient(180deg, rgba(0,0,0,.06) 0%, rgba(0,0,0,.16) 36%, rgba(0,0,0,.82) 100%) !important;}
.cardVideo__play{box-shadow:0 8px 20px rgba(0,0,0,.26);}
.cardVideo__title{text-wrap:balance;}
.musicVideosBlock .modsHead--videos{border-color:rgba(255,183,77,.16);background:
  linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02)),
  radial-gradient(130% 120% at 0% 0%, rgba(255,183,77,.16), transparent 54%),
  radial-gradient(120% 140% at 100% 100%, rgba(0,190,255,.10), transparent 54%),
  rgba(8,14,28,.42);}
.footerTopBrand{min-height:12px;}
.footerBottomBrand--tribute{margin-top:26px;padding:24px 34px;border:1px solid rgba(255,255,255,.10);background:
 linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02)),
 radial-gradient(125% 130% at 0% 0%, rgba(255,196,92,.16), transparent 48%),
 radial-gradient(120% 140% at 100% 100%, rgba(255,255,255,.08), transparent 42%),
 rgba(8,12,22,.68);box-shadow:0 24px 64px rgba(0,0,0,.30);}
.footerBrandTitle{font-size:24px;line-height:1.02;letter-spacing:-.02em;}
.footerBrandSubtitle{font-size:14px;line-height:1.4;}
.footerTributeLogo{width:380px !important;max-width:52vw !important;transform:translateY(2px);}
.footerTributeLogo--gold{filter:sepia(1) saturate(2.9) hue-rotate(348deg) brightness(1.18) contrast(1.08) drop-shadow(0 0 12px rgba(255,196,92,.28)) drop-shadow(0 0 32px rgba(255,196,92,.24));}
@media (max-width:1180px){.footerTributeLogo{width:330px !important;max-width:56vw !important;}}
@media (max-width:980px){.modsHead__badgeWrap--stacked{align-items:flex-start;}.modsHeroStats{gap:10px;}.modsHeroStat{padding:9px 12px;}.footerBottomBrand--tribute{padding:22px 22px;gap:22px;}.footerTributeLogo{width:280px !important;max-width:72vw !important;}}
@media (max-width:640px){.modsHead--newsHero{padding:22px 18px;}.modsTitle--editorial{font-size:24px !important;}.newsSubtitle{font-size:13px;}.modsHeroStats{display:grid;grid-template-columns:1fr;}.modsHeroStat{justify-content:space-between;}.modsPanel__title{font-size:21px;}.footerBrandTitle{font-size:20px;}.footerBrandSubtitle{font-size:13px;}.footerTributeLogo{width:240px !important;max-width:78vw !important;}}

/* ===== HOTFIX FINAL 20260324 · NEWS GRID 3+3+3 IGUALES ===== */
.newsModules #newsGrid,
.newsModules #musicGrid,
.cards6{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}

.newsModules #newsGrid .cardNews,
.newsModules #musicGrid .cardNews,
.cards6 .cardNews{
  grid-column:auto !important;
  grid-row:auto !important;
  min-height:0 !important;
  height:420px !important;
  display:block !important;
  position:relative !important;
  border-radius:28px !important;
  overflow:hidden !important;
}

.newsModules #newsGrid .cardNews:first-child,
.newsModules #musicGrid .cardNews:first-child,
.cards6 .cardNews:first-child{
  grid-column:auto !important;
  grid-row:auto !important;
  min-height:0 !important;
  height:420px !important;
}

.newsModules #newsGrid .cardNews .cardNews__img,
.newsModules #musicGrid .cardNews .cardNews__img,
.cards6 .cardNews .cardNews__img,
.cards6 .cardNews:first-child .cardNews__img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  object-fit:cover !important;
}

.newsModules #newsGrid .cardNews .cardNews__overlay,
.newsModules #musicGrid .cardNews .cardNews__overlay,
.cards6 .cardNews .cardNews__overlay{
  position:absolute !important;
  inset:auto 0 0 0 !important;
  padding:24px 22px 22px !important;
  background:linear-gradient(180deg, rgba(5,10,24,0) 0%, rgba(5,10,24,.18) 18%, rgba(5,10,24,.74) 56%, rgba(5,10,24,.96) 100%) !important;
  min-height:58% !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-end !important;
}

.newsModules #newsGrid .cardNews .cardNews__tag,
.newsModules #musicGrid .cardNews .cardNews__tag,
.cards6 .cardNews .cardNews__tag{
  align-self:flex-start !important;
  margin:0 0 16px !important;
}

.newsModules #newsGrid .cardNews .cardNews__title,
.newsModules #musicGrid .cardNews .cardNews__title,
.cards6 .cardNews .cardNews__title,
.cards6 .cardNews:first-child .cardNews__title{
  font-size:21px !important;
  line-height:1.12 !important;
  min-height:auto !important;
  -webkit-line-clamp:4 !important;
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  margin:0 0 12px !important;
}

.newsModules #newsGrid .cardNews .cardNews__excerpt,
.newsModules #musicGrid .cardNews .cardNews__excerpt,
.cards6 .cardNews .cardNews__excerpt,
.cards6 .cardNews:first-child .cardNews__excerpt{
  font-size:15px !important;
  line-height:1.45 !important;
  color:rgba(255,255,255,.84) !important;
  -webkit-line-clamp:3 !important;
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
  margin:0 0 14px !important;
}

.newsModules #newsGrid .cardNews .cardNews__source,
.newsModules #musicGrid .cardNews .cardNews__source,
.cards6 .cardNews .cardNews__source{
  font-size:14px !important;
  margin-top:auto !important;
  padding-right:132px !important;
}

.newsModules #newsGrid .cardNews .cardNews__stamp,
.newsModules #musicGrid .cardNews .cardNews__stamp,
.cards6 .cardNews .cardNews__stamp{
  position:absolute !important;
  right:18px !important;
  bottom:18px !important;
  z-index:3 !important;
}

@media (max-width: 1180px){
  .newsModules #newsGrid,
  .newsModules #musicGrid,
  .cards6{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width: 760px){
  .newsModules #newsGrid,
  .newsModules #musicGrid,
  .cards6{
    grid-template-columns:1fr !important;
  }

  .newsModules #newsGrid .cardNews,
  .newsModules #musicGrid .cardNews,
  .cards6 .cardNews,
  .newsModules #newsGrid .cardNews:first-child,
  .newsModules #musicGrid .cardNews:first-child,
  .cards6 .cardNews:first-child{
    height:390px !important;
  }

  .newsModules #newsGrid .cardNews .cardNews__title,
  .newsModules #musicGrid .cardNews .cardNews__title,
  .cards6 .cardNews .cardNews__title{
    font-size:19px !important;
  }
}

/* === Hero recent tracks panel + modal === */
.recentHeroPanel{
  margin:12px 0 14px;
  width:100%;
  max-width:100%;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:linear-gradient(180deg, rgba(10,15,27,.86), rgba(8,12,22,.90));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  padding:12px 12px 10px;
}
.recentHeroPanel__head{ display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:8px; }
.recentHeroPanel__eyebrow{ font-size:10px; text-transform:uppercase; letter-spacing:.16em; color:rgba(255,255,255,.48); margin-bottom:3px; font-weight:900; }
.recentHeroPanel__title{ font-size:13px; line-height:1.15; font-weight:820; color:#eef4ff; }
.recentHeroPanel__more{
  border:1px solid rgba(212,175,55,.28);
  background:linear-gradient(180deg, rgba(212,175,55,.16), rgba(212,175,55,.06));
  color:#efd78a;
  font-size:11px;
  font-weight:800;
  border-radius:999px;
  padding:7px 11px;
  white-space:nowrap;
}
.recentHeroPanel__viewport{
  position:relative;
  height:104px;
  overflow:hidden;
  border-radius:12px;
  background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.05);
}
.recentHeroPanel__viewport::before,
.recentHeroPanel__viewport::after{
  content:"";
  position:absolute;
  left:0; right:0;
  height:18px;
  z-index:2;
  pointer-events:none;
}
.recentHeroPanel__viewport::before{ top:0; background:linear-gradient(180deg, rgba(9,13,24,.98), rgba(9,13,24,0)); }
.recentHeroPanel__viewport::after{ bottom:0; background:linear-gradient(0deg, rgba(9,13,24,.98), rgba(9,13,24,0)); }
.recentHeroPanel__list{ display:flex; flex-direction:column; gap:0; padding:6px 0; will-change:transform; }
.recentHeroPanel.is-animated .recentHeroPanel__list{ animation:nreRecentTracksScroll 20s linear infinite; }
.recentHeroPanel:hover .recentHeroPanel__list,
.recentHeroPanel:focus-within .recentHeroPanel__list{ animation-play-state:paused; }
@keyframes nreRecentTracksScroll{
  0%,10%{ transform:translateY(0); }
  100%{ transform:translateY(calc(-50% + 58px)); }
}
.recentTrack{
  display:grid;
  grid-template-columns:54px 1fr;
  align-items:center;
  gap:10px;
  min-height:30px;
  padding:6px 10px;
  border-radius:0;
  background:transparent;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.recentTrack:last-child{ border-bottom:0; }
.recentTrack__meta{ font-size:10px; text-transform:uppercase; letter-spacing:.12em; color:rgba(255,255,255,.46); font-weight:800; }
.recentTrack__line{ font-size:13px; line-height:1.25; color:rgba(255,255,255,.88); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.recentTrack__line b{ color:#fff; font-weight:800; }
.recentTrack--placeholder{ min-height:74px; align-content:center; }

.nreModal{
  position:fixed;
  inset:0;
  display:none;
  z-index:1200;
}
.nreModal.is-open{ display:block; }
.nreModal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(4,7,15,.72);
  backdrop-filter:blur(6px);
}
.nreModal__dialog{
  position:relative;
  z-index:1;
  width:min(760px, calc(100vw - 28px));
  max-height:min(84vh, 920px);
  overflow:auto;
  margin:5vh auto;
  border-radius:24px;
  padding:26px 24px 22px;
  background:linear-gradient(180deg, rgba(11,16,32,.98), rgba(7,11,23,.98));
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 30px 70px rgba(0,0,0,.42);
}
.nreModal__close{
  position:absolute;
  top:16px;
  right:16px;
  width:40px;
  height:40px;
  border:none;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:24px;
  line-height:1;
}
.nreModal__eyebrow{ font-size:11px; text-transform:uppercase; letter-spacing:.18em; color:rgba(255,255,255,.5); font-weight:900; margin-bottom:8px; }
.nreModal__title{ margin:0 0 8px; font-size:30px; line-height:1.05; color:#fff; }
.nreModal__lead{ margin:0 0 18px; color:rgba(255,255,255,.7); }
.nreModal__body{ display:grid; gap:0; border:1px solid rgba(255,255,255,.07); border-radius:16px; overflow:hidden; }
.recentTrack--modal{ min-height:42px; padding:11px 14px; background:rgba(255,255,255,.02); }
.recentTrack--modal .recentTrack__line{ font-size:14px; }

body.nre-modal-open{ overflow:hidden; }

@media (max-width: 860px){
  .recentHeroPanel__head{ flex-direction:column; align-items:stretch; }
  .recentHeroPanel__more{ width:100%; }
  .recentHeroPanel__viewport{ height:146px; }
  .nreModal__dialog{ margin:3vh auto; padding:22px 18px 18px; }
  .nreModal__title{ font-size:24px; }
  .recentTrack{ grid-template-columns:52px 1fr; }
}

/* === HERO PULSE · info directa del streaming === */
.heroPulse{margin-top:16px;padding:16px 16px 14px;border-radius:20px;border:1px solid rgba(255,255,255,.10);background:radial-gradient(120% 140% at 0% 0%, rgba(255,195,88,.10), transparent 45%),radial-gradient(140% 120% at 100% 0%, rgba(76,172,255,.12), transparent 48%),linear-gradient(180deg, rgba(12,20,36,.82), rgba(8,14,24,.72));box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 18px 44px rgba(0,0,0,.18)}
.heroPulse__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.heroPulse__eyebrow{font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.62);margin-bottom:5px}
.heroPulse__title{margin:0;font-size:18px;line-height:1.15;font-weight:900;color:#fff6e3}
.heroPulse__badge{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;border:1px solid rgba(255,210,110,.22);background:linear-gradient(180deg, rgba(58,38,6,.34), rgba(30,22,8,.20));font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#ffd98c;white-space:nowrap}
.heroPulse__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.heroPulse__grid--compact{grid-template-columns:minmax(0,1.25fr) minmax(0,.8fr) minmax(0,1.15fr)}
.heroPulseCard{position:relative;padding:14px 14px 13px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));overflow:hidden;min-width:0}
.heroPulseCard:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:1px;background:linear-gradient(90deg, rgba(255,255,255,.16), transparent)}
.heroPulseCard__k{font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.58);margin-bottom:8px}
.heroPulseCard__v{font-size:24px;line-height:1;font-weight:950;color:#fff;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.heroPulseCard__v--dj{font-size:18px;line-height:1.12;white-space:normal}
.heroPulseCard__v--song{font-size:16px;line-height:1.18;white-space:normal}
.heroPulseCard__s{font-size:12px;line-height:1.45;color:rgba(255,255,255,.70)}
.heroPulse.is-live .heroPulse__badge{border-color:rgba(43,255,180,.28);background:linear-gradient(180deg, rgba(13,56,38,.38), rgba(9,28,22,.24));color:#a8ffd7}
.heroPulse.is-live .heroPulseCard:first-child .heroPulseCard__v{color:#9dffd5}
@media (max-width: 1080px){.heroPulse__grid,.heroPulse__grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.heroPulseCard--wide{grid-column:span 2}}
@media (max-width: 640px){.heroPulse{padding:14px}.heroPulse__badge{font-size:10px}.heroPulse__grid,.heroPulse__grid--compact{grid-template-columns:1fr}.heroPulseCard--wide{grid-column:span 1}.heroPulseCard__v{font-size:22px}.heroPulseCard__v--dj,.heroPulseCard__v--song{font-size:17px}}


/* stream links in aggregators */
.listenPlatform--stream{min-width:auto;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(180deg, rgba(212,175,55,.18), rgba(212,175,55,.07));border:1px solid rgba(212,175,55,.30);color:#f4de9d;box-shadow:inset 0 1px 0 rgba(255,255,255,.05);}
.listenPlatform--stream:hover{transform:translateY(-1px);background:linear-gradient(180deg, rgba(212,175,55,.28), rgba(212,175,55,.10));color:#fff4cf;}
.listenPlatform--stream .listenPlatform__icon{display:none;}
.listenPlatform--streamAlert{border-color:rgba(255,99,99,.28);background:linear-gradient(180deg, rgba(120,20,20,.34), rgba(80,10,10,.18));color:#ffb4b4;}
.listenPlatform--streamAlert:hover{background:linear-gradient(180deg, rgba(150,24,24,.42), rgba(96,12,12,.22));color:#ffd7d7;}

.cardVideo__badge{position:absolute;left:14px;top:14px;display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:rgba(255,51,85,.92);border:1px solid rgba(255,255,255,.14);color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em;z-index:2;}


.modsGrid2--single{grid-template-columns:1fr;}


.modsPanel--musicUpcoming{margin-top:0}


/* ===== Mejoras centro de ayuda NRE ===== */
.faqLead{margin:8px 0 0;color:rgba(255,255,255,.72);line-height:1.6;max-width:62ch;font-size:14px}
.faq-grid--rich{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;max-width:62%}
.faq-card{padding:14px 14px 12px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.faq-card .faq-q{font-size:14px;font-weight:900;color:#fff;margin-bottom:6px;line-height:1.25}
.faq-card .faq-a{font-size:13px;line-height:1.6;color:rgba(255,255,255,.76)}
.supportStrip{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap;margin-top:16px;max-width:62%}
.supportBadge{display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;background:rgba(255,176,32,.12);border:1px solid rgba(255,176,32,.26);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.supportList{display:flex;flex-wrap:wrap;gap:8px}
.supportList span{display:inline-flex;align-items:center;padding:8px 10px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);font-size:12px;font-weight:800;color:rgba(255,255,255,.84)}
.supportBlock--pro{margin-top:16px;max-width:62%}
.supportChecklist{margin:10px 0 0 18px;padding:0;color:rgba(255,255,255,.78);line-height:1.65;font-size:13px}
.supportChecklist li{margin:4px 0}
@media (max-width: 980px){
  .faq-grid--rich{grid-template-columns:1fr;max-width:100%}
  .supportStrip,.supportBlock--pro{max-width:100%}
}


/* ===== Help compact fix urgente ===== */
.grid2{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
.faq-support-box{
  min-height:unset !important;
  padding:18px !important;
  background:
    linear-gradient(180deg, rgba(4,8,18,.94) 0%, rgba(4,8,18,.88) 100%),
    radial-gradient(520px 180px at 92% 12%, rgba(0,190,255,.12), transparent 60%),
    url('../assets/faq/help_center_bg.png') right 18px top 18px / 240px auto no-repeat,
    rgba(255,255,255,.04) !important;
}
.faq-support-box .sectionHeadInline{align-items:flex-start;gap:14px;margin-bottom:10px}
.faq-support-box .sectionHeadInline .box__t{font-size:18px;line-height:1.12;margin:0}
.faqLead{max-width:100% !important;font-size:13px;line-height:1.5;margin-top:6px}
.faq-grid--rich{
  max-width:100% !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
  margin-top:14px !important;
}
.faq-card{
  min-height:unset !important;
  padding:14px 14px 12px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)) !important;
}
.faq-card .faq-q{font-size:14px !important;line-height:1.2 !important;margin-bottom:6px !important}
.faq-card .faq-a{font-size:13px !important;line-height:1.5 !important;padding:0 !important;border-top:none !important}
.supportStrip,.supportBlock--pro{max-width:100% !important}
.supportStrip{margin-top:14px !important;gap:10px !important}
.supportList{gap:8px !important}
.supportList span{font-size:11px !important;padding:7px 10px !important}
.supportBlock--pro{
  margin-top:14px !important;
  padding:16px !important;
  border-radius:16px !important;
  background:linear-gradient(180deg, rgba(5,18,34,.92), rgba(3,12,24,.86)) !important;
  border:1px solid rgba(0,190,255,.14) !important;
}
.supportBlock--pro b{display:block;font-size:15px;margin-bottom:8px}
.supportBlock--pro p{margin:0 0 10px;line-height:1.55}
.supportChecklist{margin:8px 0 0 18px !important;font-size:12px !important;line-height:1.55 !important}
.supportMail{margin-top:12px !important}
.supportMail a{display:inline-flex;align-items:center;padding:10px 14px;border-radius:999px;background:rgba(0,212,255,.14);border:1px solid rgba(0,212,255,.22)}
@media (max-width: 1200px){
  .faq-support-box{background:
    linear-gradient(180deg, rgba(4,8,18,.94) 0%, rgba(4,8,18,.88) 100%),
    radial-gradient(420px 160px at 92% 10%, rgba(0,190,255,.10), transparent 60%),
    url('../assets/faq/help_center_bg.png') right 14px top 16px / 180px auto no-repeat,
    rgba(255,255,255,.04) !important;}
}
@media (max-width: 980px){
  .grid2{grid-template-columns:1fr}
  .faq-support-box{padding:16px !important;background:
    linear-gradient(180deg, rgba(4,8,18,.96) 0%, rgba(4,8,18,.90) 100%),
    radial-gradient(320px 140px at 90% 8%, rgba(0,190,255,.10), transparent 60%),
    url('../assets/faq/help_center_bg.png') right 12px top 12px / 140px auto no-repeat,
    rgba(255,255,255,.04) !important;}
  .faq-grid--rich{grid-template-columns:1fr !important}
}


/* ===== Help section refined with themed backgrounds + modal ===== */
.faq-support-box{padding:18px !important;overflow:hidden;position:relative}
.faq-grid--themed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;max-width:100% !important}
.faq-card--action{position:relative;border:1px solid rgba(255,255,255,.08);border-radius:18px;overflow:hidden;min-height:172px;padding:0;background:linear-gradient(180deg, rgba(7,11,20,.72), rgba(7,11,20,.9));text-align:left;cursor:pointer;box-shadow:0 18px 44px rgba(0,0,0,.24);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.faq-card--action:hover{transform:translateY(-2px);border-color:rgba(0,190,255,.22);box-shadow:0 22px 56px rgba(0,0,0,.34)}
.faq-card__bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:saturate(.95);opacity:.42}
.faq-card__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(4,8,18,.12) 0%, rgba(4,8,18,.82) 74%, rgba(4,8,18,.94) 100%)}
.faq-card__content{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;min-height:172px;padding:16px}
.faq-card--action .faq-q{font-size:15px !important;line-height:1.2;margin-bottom:7px !important}
.faq-card--action .faq-a{font-size:12px !important;line-height:1.48 !important;color:rgba(255,255,255,.78) !important}
.faq-open{margin-top:10px;display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border-radius:999px;background:rgba(0,190,255,.16);border:1px solid rgba(0,190,255,.22);font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#dff7ff;width:max-content}
.faq-card__bg--audio{background-image:url('../assets/faq/help_audio.jpg'), radial-gradient(circle at 20% 20%, rgba(0,190,255,.35), transparent 55%)}
.faq-card__bg--cuts{background-image:url('../assets/faq/help_buffering.jpg'), radial-gradient(circle at 70% 20%, rgba(255,176,32,.35), transparent 55%)}
.faq-card__bg--meta{background-image:url('../assets/faq/help_metadata.jpg'), radial-gradient(circle at 80% 20%, rgba(127,255,212,.28), transparent 55%)}
.faq-card__bg--aggregators{background-image:url('../assets/faq/help_alexa.jpg'), radial-gradient(circle at 70% 20%, rgba(0,190,255,.35), transparent 55%)}
.faq-card__bg--videos{background-image:url('../assets/faq/help_videos.jpg'), radial-gradient(circle at 60% 20%, rgba(255,51,85,.28), transparent 55%)}
.faq-card__bg--app{background-image:url('../assets/faq/help_mobile.jpg'), radial-gradient(circle at 60% 20%, rgba(36,255,154,.26), transparent 55%)}
.supportStrip--compact{margin-top:16px !important}
.helpFaqModal .nreModal__dialog{max-width:760px;width:min(760px, calc(100vw - 24px))}
.helpFaqModal__dialog{padding:22px;border-radius:22px;background:linear-gradient(180deg, rgba(7,11,20,.98), rgba(5,8,16,.96));border:1px solid rgba(255,255,255,.10)}
.helpFaqModal__eyebrow{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.56)}
.helpFaqModal__title{margin:8px 0 12px;font-size:24px;line-height:1.1}
.helpFaqModal__body{display:grid;gap:12px;color:rgba(255,255,255,.82);line-height:1.6}
.helpFaqModal__body .helpStep{padding:14px 15px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04)}
.helpFaqModal__body .helpStep b{display:block;margin-bottom:6px;color:#fff}
@media (max-width: 980px){.faq-grid--themed{grid-template-columns:1fr !important}.faq-card--action,.faq-card__content{min-height:160px}}


/* ===== Support actions + soporte visual ===== */
.supportList--actions{display:flex;flex-wrap:wrap;gap:8px}
.supportChip{appearance:none;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.05);color:rgba(255,255,255,.88);padding:8px 11px;border-radius:999px;font-size:12px;font-weight:800;cursor:pointer;transition:transform .18s ease, background .18s ease, border-color .18s ease}
.supportChip:hover{transform:translateY(-1px);background:rgba(0,190,255,.14);border-color:rgba(0,190,255,.24);color:#fff}
.supportBlock--girl{position:relative;overflow:hidden;background:linear-gradient(180deg, rgba(5,18,34,.92), rgba(3,12,24,.90)) !important}
.supportBlock--girl::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg, rgba(4,10,20,.92) 0%, rgba(4,10,20,.78) 42%, rgba(4,10,20,.36) 70%, rgba(4,10,20,.18) 100%), url('../assets/faq/help_girl_support.jpg') right center/cover no-repeat;opacity:.95;pointer-events:none}
.supportBlock--girl > *{position:relative;z-index:1;max-width:64%}
.supportBlock--girl .supportMail a{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.16);color:#fff}
@media (max-width: 980px){.supportBlock--girl > *{max-width:100%}.supportBlock--girl::before{background:linear-gradient(180deg, rgba(4,10,20,.90) 0%, rgba(4,10,20,.78) 55%, rgba(4,10,20,.72) 100%), url('../assets/faq/help_girl_support.jpg') center/cover no-repeat}}

/* ===== Reclamo comercial ===== */
.promoSalesBlock{margin-top:18px;padding:18px;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg, rgba(4,10,20,.78), rgba(4,10,20,.68) 55%, rgba(4,10,20,.54)), url('../assets/faq/help_ads_radio.jpg') center/cover no-repeat;box-shadow:0 16px 44px rgba(0,0,0,.18)}
.promoSalesBlock__eyebrow{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.60)}
.promoSalesBlock__title{margin:8px 0 8px;font-size:24px;line-height:1.05}
.promoSalesBlock__text{margin:0;color:rgba(255,255,255,.76);line-height:1.6;max-width:70ch}
.promoSalesBlock__mail{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:11px 15px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);font-weight:900;text-decoration:none}
.promoSalesBlock__mail:hover{background:rgba(255,255,255,.12);color:#fff}


/* ===== Fondos editoriales añadidos (publicidad / agregadores) ===== */
.listenPlatforms::before,
.promoSalesBlock::before{content:none !important}
.listenPlatforms .listenPlatforms__title,
.listenPlatforms .listenPlatform,
.promoSalesBlock__content{position:relative;z-index:1}
.promoSalesBlock__content{max-width:72%}
@media (max-width: 980px){
  .promoSalesBlock__content{max-width:100%}
  .listenPlatforms{background:linear-gradient(180deg, rgba(4,10,20,.74), rgba(4,10,20,.82)), url('../assets/faq/help_agregadores.jpg') center/cover no-repeat}
  .promoSalesBlock{background:linear-gradient(180deg, rgba(4,10,20,.78), rgba(4,10,20,.86)), url('../assets/faq/help_ads_radio.jpg') center/cover no-repeat}
}
