/* NoticiasAlVivo — hoja de estilos principal */
:root{
  --bg:#0d1321;
  --surface:#161f33;
  --surface-2:#1e2a44;
  --border:#2a3a5c;
  --text:#f2f5fa;
  --muted:#96a3bb;
  --accent:#e63946;
  --accent-dark:#b52833;
  --live:#ff4d5a;
  --radius:12px;
  --maxw:1100px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg);color:var(--text);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.65;font-size:16px;
}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}

/* ---------- Header ---------- */
header.site{
  position:sticky;top:0;z-index:50;
  background:rgba(13,19,33,.92);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--border);
}
header.site .wrap{display:flex;align-items:center;gap:24px;height:60px}
.logo{display:flex;align-items:center;gap:9px;font-weight:800;font-size:1.25rem;letter-spacing:-.02em}
.logo .dot{width:12px;height:12px;border-radius:50%;background:var(--live);animation:pulse 1.6s ease-out infinite}
.logo em{font-style:normal;color:var(--accent)}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,77,90,.6)}70%{box-shadow:0 0 0 9px rgba(255,77,90,0)}100%{box-shadow:0 0 0 0 rgba(255,77,90,0)}}
nav.main{margin-left:auto;display:flex;gap:18px;font-size:.92rem;color:var(--muted)}
nav.main a:hover{color:var(--text)}

/* ---------- Hero ---------- */
.hero{padding:44px 0 28px;text-align:center}
.hero h1{font-size:clamp(1.6rem,4vw,2.5rem);font-weight:800;letter-spacing:-.02em}
.hero p{color:var(--muted);max-width:640px;margin:10px auto 0}
.chip-live{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(230,57,70,.14);color:var(--live);
  border:1px solid rgba(230,57,70,.35);
  font-size:.72rem;font-weight:700;letter-spacing:.08em;
  padding:3px 10px;border-radius:99px;text-transform:uppercase;
}
.chip-live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--live);animation:pulse 1.6s infinite}

/* ---------- Grilla de canales ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;padding:22px 0 10px}
.card{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);
  overflow:hidden;transition:transform .15s ease,border-color .15s ease;display:block;
}
.card:hover{transform:translateY(-3px);border-color:var(--accent)}
.card .thumb{
  aspect-ratio:16/9;display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:1.5rem;letter-spacing:-.01em;color:#fff;text-align:center;padding:0 12px;
}
.card .meta{padding:13px 15px}
.card .meta h3{font-size:1rem;margin-bottom:2px}
.card .meta p{font-size:.82rem;color:var(--muted)}
/* fondos por canal */
.t-f24{background:linear-gradient(135deg,#0f4c81,#1b74c5)}
.t-dw{background:linear-gradient(135deg,#00405e,#0077b3)}
.t-eu{background:linear-gradient(135deg,#1c2e5e,#3854a5)}
.t-rtve{background:linear-gradient(135deg,#7a1e1e,#c53030)}
.t-ntn{background:linear-gradient(135deg,#7a3b0e,#d9822b)}
.t-mil{background:linear-gradient(135deg,#12503c,#1f8a63)}
.t-tn{background:linear-gradient(135deg,#5b1741,#a3286f)}

/* ---------- Player ---------- */
.player-box{margin:26px 0}
.player{
  position:relative;aspect-ratio:16/9;background:#000;border-radius:var(--radius);
  overflow:hidden;border:1px solid var(--border);
}
.player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.player .facade{
  position:absolute;inset:0;display:flex;flex-direction:column;gap:14px;
  align-items:center;justify-content:center;cursor:pointer;
  background:radial-gradient(ellipse at center,#1e2a44 0%,#0d1321 100%);
}
.player .facade:hover .btn-play{transform:scale(1.06);background:var(--accent)}
.btn-play{
  display:flex;align-items:center;gap:10px;background:var(--accent-dark);color:#fff;
  border:0;font-size:1.05rem;font-weight:700;padding:14px 26px;border-radius:99px;
  cursor:pointer;transition:all .15s ease;
}
.btn-play::before{content:"▶";font-size:.9rem}
.facade small{color:var(--muted);font-size:.8rem}
.player-note{font-size:.8rem;color:var(--muted);margin-top:8px}
.player-note a{color:var(--accent);text-decoration:underline}

/* ---------- Contenido ---------- */
article.channel,main.page{padding:10px 0 40px}
.crumbs{font-size:.82rem;color:var(--muted);padding:18px 0 4px}
.crumbs a:hover{color:var(--text)}
article h1{font-size:clamp(1.4rem,3vw,2rem);margin:8px 0 4px;letter-spacing:-.02em}
.sub{color:var(--muted);font-size:.95rem}
.prose{max-width:760px;margin-top:18px}
.prose p{margin-bottom:14px}
.prose h2{font-size:1.25rem;margin:26px 0 10px}
.prose ul{margin:0 0 14px 22px}
.prose a{color:var(--accent);text-decoration:underline}

/* ---------- Relacionados ---------- */
.related{margin-top:34px}
.related h2{font-size:1.1rem;margin-bottom:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.85rem}

/* ---------- Ver en vivo (enlace al canal oficial) ---------- */
.watch-box{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);
  padding:26px 22px;margin:24px 0;text-align:center;
}
.watch-box .thumb-lg{
  aspect-ratio:16/6;border-radius:10px;display:flex;align-items:center;justify-content:center;
  font-weight:800;font-size:clamp(1.3rem,4vw,2rem);color:#fff;margin-bottom:20px;letter-spacing:-.01em;
}
.btn-watch{
  display:inline-flex;align-items:center;gap:11px;
  background:var(--accent);color:#fff;border-radius:99px;
  padding:15px 32px;font-weight:800;font-size:1.02rem;letter-spacing:.01em;
  transition:transform .12s ease,filter .12s ease;
}
.btn-watch:hover{transform:translateY(-2px);filter:brightness(1.1)}
.btn-watch::before{
  content:"";width:0;height:0;border-style:solid;
  border-width:8px 0 8px 13px;border-color:transparent transparent transparent #fff;
}
.watch-note{font-size:.85rem;color:var(--muted);margin-top:14px;max-width:440px;margin-left:auto;margin-right:auto}

/* ---------- Última hora (RSS) ---------- */
.rss-cabecera{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:34px 0 4px}
.rss-cabecera h2{font-size:1.3rem;letter-spacing:-.01em}
.rss-cabecera a{font-size:.85rem;color:var(--accent)}
.rss-cabecera a:hover{text-decoration:underline}
.rss-lista{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:2px}
.rss-item{
  padding:15px 16px;border:1px solid var(--border);border-radius:10px;
  background:var(--surface);transition:border-color .15s ease;
}
.rss-item:hover{border-color:var(--accent)}
.rss-titulo{display:block;font-weight:700;font-size:1.02rem;line-height:1.4;color:var(--text)}
.rss-titulo:hover{color:var(--accent)}
.rss-resumen{font-size:.9rem;color:var(--muted);margin-top:5px;line-height:1.55}
.rss-meta{display:flex;align-items:center;gap:10px;margin-top:9px;font-size:.76rem;color:var(--muted)}
.rss-fuente{
  display:inline-block;padding:2px 9px;border-radius:99px;color:#fff;
  font-weight:700;letter-spacing:.03em;font-size:.7rem;
}
.t-bbc{background:linear-gradient(135deg,#5c1010,#a12222)}
.t-pais{background:linear-gradient(135deg,#333,#666)}
.rss-vacio{color:var(--muted);padding:18px;border:1px dashed var(--border);border-radius:10px;text-align:center}
@media (min-width:760px){ .rss-lista{grid-template-columns:1fr 1fr;gap:12px} }

/* ---------- Slots de publicidad ---------- */
.ad-slot{
  margin:26px auto;min-height:100px;max-width:var(--maxw);
  display:flex;align-items:center;justify-content:center;
  background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);
  color:#5b6b8a;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;
}
.ad-slot.leader{min-height:90px}
.ad-slot.rect{min-height:250px;max-width:336px}

/* ---------- Footer ---------- */
footer.site{border-top:1px solid var(--border);margin-top:30px;padding:26px 0 34px;color:var(--muted);font-size:.85rem}
footer.site .wrap{display:flex;flex-wrap:wrap;gap:10px 26px;align-items:center}
footer.site a:hover{color:var(--text)}
footer.site .copy{margin-left:auto}

@media (max-width:640px){
  nav.main{display:none}
  .hero{padding:30px 0 18px}
}
