/* SANDIX+ TV : bouton "TV DIRECT" de la navigation du catalogue.
   Tokens du thème uniquement : rouge de marque = éléments liés au direct. Aucun dégradé, aucune animation hors indicateur LIVE. */
.sdx-tv-btn{display:none;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:var(--sandix-red,#ea2119);color:#fff;
  font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;white-space:nowrap;border:1px solid transparent;
  transition:background .15s ease,border-color .15s ease}
.sdx-tv-btn:hover,.sdx-tv-btn:focus-visible{background:var(--sandix-red-hover,#ff3a30);outline:none;border-color:var(--sandix-text-a35,rgba(229,231,235,.35))}
.sdx-tv-btn svg{width:16px;height:16px;flex:none}
.sdx-tv-btn .sdx-tv-live{display:none;align-items:center;gap:5px;padding-left:8px;border-left:1px solid rgba(255,255,255,.45);font-size:10px}
.sdx-tv-btn .sdx-tv-live::before{content:"";width:7px;height:7px;border-radius:50%;background:#fff}
/* Le repère LIVE n'existe QUE lorsqu'une chaîne diffuse réellement (voir sandix-tv-nav.js). */
.sdx-tv-btn.is-live .sdx-tv-live{display:inline-flex}
.sdx-tv-btn.is-live .sdx-tv-live::before{animation:sdxTvPulse 1.6s ease-in-out infinite}
@keyframes sdxTvPulse{0%,100%{opacity:1}50%{opacity:.25}}
@media (prefers-reduced-motion:reduce){.sdx-tv-btn.is-live .sdx-tv-live::before{animation:none}}

/* Visible UNIQUEMENT si SANDIX+ TV est activé (interrupteur dans admin.html), voir sandix-tv-nav.js */
.sdx-tv-btn.is-enabled{display:inline-flex}
@media (max-width:640px){.sdx-tv-btn{padding:6px 10px;font-size:11px}.sdx-tv-btn svg{width:14px;height:14px}}
