/* ==========================================================================
   1. ESTILOS GENERALES Y TIPOGRAFÍA
   ========================================================================== */

/* Fuente principal para títulos (le da el toque moderno a la página) */
h1, h2, h3, h4, h5, .font-poppins {
    font-family: 'Poppins', sans-serif;
}

/* ==========================================================================
   2. ANIMACIONES DEL REPRODUCTOR DE RADIO
   ========================================================================== */

/* Animación de las barras del ecualizador */
.equalizer-bar {
    width: 4px;
    background-color: #10b981; /* Color verde esmeralda para indicar señal activa */
    border-radius: 2px;
    animation: equalize 1s infinite;
}

/* Tiempos y alturas distintas para simular el sonido real */
.equalizer-bar:nth-child(1) { animation-delay: -0.4s; height: 12px; }
.equalizer-bar:nth-child(2) { animation-delay: -0.2s; height: 24px; }
.equalizer-bar:nth-child(3) { animation-delay: 0s; height: 32px; }
.equalizer-bar:nth-child(4) { animation-delay: -0.6s; height: 16px; }
.equalizer-bar:nth-child(5) { animation-delay: -0.8s; height: 20px; }

@keyframes equalize {
    0%, 100% { transform: scaleY(0.3); }
    50% { transform: scaleY(1); }
}

/* Efecto de pulso (ondas) para el botón de Play/Pause */
/* Está configurado con el RGB del rojo institucional (214, 40, 40) */
.playing-pulse {
    animation: pulse-ring 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pulse-ring {
    0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(214, 40, 40, 0.7); }
    70% { transform: scale(1); box-shadow: 0 0 0 10px rgba(214, 40, 40, 0); }
    100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(214, 40, 40, 0); }
}

/* ==========================================================================
   3. ESTILOS DE LA GALERÍA DE FOTOS (LIGHTBOX EN NOTICIAS)
   ========================================================================== */

/* Fondo oscuro desenfocado cuando se amplía una foto */
.modal {
    display: none; 
    position: fixed; 
    z-index: 1000; 
    padding-top: 50px;
    left: 0; 
    top: 0; 
    width: 100%; 
    height: 100%; 
    overflow: auto;
    background-color: rgba(15, 23, 42, 0.95); /* Tono azul/gris muy oscuro */
    cursor: zoom-out; 
    backdrop-filter: blur(5px); /* Efecto cristal moderno */
}

/* Contenedor de la imagen ampliada */
.modal-content {
    margin: auto; 
    display: block; 
    max-width: 90%; 
    max-height: 85vh;
    border-radius: 12px; 
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
    transition: transform 0.3s ease; 
    object-fit: contain;
}

/* Animación de entrada para la foto */
.modal-content:hover {
    transform: scale(1.02);
}

/* Botón flotante para cerrar la imagen (X) */
.close-modal {
    position: absolute; 
    top: 20px; 
    right: 35px; 
    color: #f8fafc;
    font-size: 50px; 
    font-weight: bold; 
    cursor: pointer; 
    z-index: 1001; 
    transition: 0.3s;
}

.close-modal:hover { 
    color: #d62828; /* Se pone rojo al pasar el ratón */
}