/* ==============================
   ESTADO: EN VIVO (CLASE ACTIVA)
   ============================== */
.jm-en-vivo {
  color: #ffffff !important;
  font-weight: 700;
  animation: jmPulse 1.4s infinite;
}

/* Animación tipo streaming */
@keyframes jmPulse {
  0% { opacity: 1; }
  50% { opacity: .5; }
  100% { opacity: 1; }
}

/* ==============================
   BOTÓN FLOTANTE — BASE
   (PC + MÓVIL + APP)
   ============================== */
html body a#btnClaseVivo.jm-btn-flotante {
  position: fixed !important;
  top: 50% !important;
  right: 16px !important;
  bottom: auto !important;
  left: auto !important;
  transform: translateY(-50%) !important;

  z-index: 999999 !important;

  background: #e53935 !important; /* rojo */
  color: #ffffff !important;

  padding: 14px 22px !important;
  border-radius: 12px !important;

  font-weight: 700 !important;
  font-size: 15px !important;
  line-height: 1 !important;

  text-decoration: none !important;

  /* Estado INACTIVO por defecto */
  opacity: 0.4 !important;
  pointer-events: none !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  box-shadow: 0 6px 18px rgba(0,0,0,.35) !important;

  transition: opacity .25s ease, transform .25s ease !important;
}

/* ==============================
   BOTÓN ACTIVO (EN VIVO)
   ============================== */
html body a#btnClaseVivo.jm-btn-flotante.jm-en-vivo {
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: translateY(-50%) scale(1.04) !important;
  cursor: pointer !important;
}

/* ==============================
   FIX EXTRA — BUDDYBOSS / APP
   ============================== */
html body a#btnClaseVivo {
  visibility: visible !important;
}