/* ===== CORRECCIONES PARA EL REPRODUCTOR Y HEADER ===== */
/* Este archivo debe cargarse DESPUÉS de los estilos generales */

/* Restaurar banner del municipio */
.municipio-banner {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto 20px !important;
    padding: 0 !important;
    position: relative !important;
    z-index: 10 !important;
    background: transparent !important;
    border: none !important;
}

/* Corregir posición del reproductor */
.video-player-container {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 10px auto 20px !important;
    padding: 0 !important;
    z-index: 5 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
}

/* Asegurar que el video ocupe todo el ancho */
#hls-stream {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16/9 !important;
    display: block !important;
    background: #000 !important;
    object-fit: contain !important;
}

/* Correcciones para móviles */
@media (max-width: 768px) {
    /* Asegurar que el header esté en la parte superior */
    .header {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 1000 !important;
        background: var(--bg-primary) !important;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1) !important;
    }

    /* Ajustar el contenido principal para que no quede detrás del header */
    .main-content {
        margin-top: 70px !important;
        padding-top: 15px !important;
    }

    /* Ajustar el banner del municipio */
    .municipio-banner {
        margin-top: 0 !important;
        margin-bottom: 15px !important;
        border-radius: 0 !important;
    }

    /* Ajustar el reproductor */
    .video-player-container {
        margin: 0 auto 15px !important;
        border-radius: 0 !important;
    }

    /* Asegurar que el reproductor no tenga márgenes laterales */
    .video-stream-container {
        margin: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Ajustar el título de la sección */
    .section-header {
        margin: 15px 0 !important;
        padding: 0 10px !important;
    }

    .section-header h2 {
        font-size: 1.4rem !important;
        padding: 10px 20px !important;
    }

    /* Ajustar el menú de categorías */
    .categories-dropdown {
        position: fixed !important;
        top: 70px !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: calc(100vh - 70px) !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 15px !important;
        border-radius: 0 !important;
        background: var(--bg-primary) !important;
        z-index: 999 !important;
        transform: translateY(-100%) !important;
        transition: transform 0.3s ease-in-out !important;
        overflow-y: auto !important;
    }

    .categories-dropdown.active {
        transform: translateY(0) !important;
    }

    /* Ajustar el botón de categorías */
    .category-toggle {
        position: relative !important;
        z-index: 1001 !important;
    }

    /* Asegurar que el contenido no se desborde */
    * {
        box-sizing: border-box !important;
    }

    /* Ajustar el padding del contenedor principal */
    .container {
        padding: 0 10px !important;
    }
}

/* Ajustes para pantallas muy pequeñas */
@media (max-width: 480px) {
    .section-header h2 {
        font-size: 1.2rem !important;
        padding: 8px 15px !important;
    }
    
    .section-header h2 i {
        font-size: 1.4rem !important;
        margin-right: 8px !important;
    }
    
    .section-header h2 span::after {
        font-size: 0.7rem !important;
        padding: 2px 8px !important;
        top: -12px !important;
        right: -40px !important;
    }
}

/* Asegurar que el reproductor esté por encima de otros elementos */
.video-player-container,
#hls-stream,
.video-js {
    position: relative !important;
    z-index: 5 !important;
}

/* Asegurar que los controles del reproductor sean accesibles */
.video-js .vjs-control-bar {
    z-index: 10 !important;
    display: flex !important;
    align-items: center !important;
}

/* Asegurar que el botón de pantalla completa funcione correctamente */
.video-js.vjs-fullscreen {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 9999 !important;
    background: #000 !important;
}

/* Ajustar el z-index del menú desplegable */
.categories-dropdown {
    z-index: 1001 !important;
}

/* Asegurar que el overlay del menú esté por encima del contenido pero debajo del menú */
.menu-overlay {
    z-index: 1000 !important;
}

/* Asegurar que el header esté siempre visible */
.header {
    position: relative !important;
    z-index: 1000 !important;
}

/* Ajustar el margen superior del contenido para que no quede oculto detrás del header */
.main-content {
    position: relative !important;
    z-index: 1 !important;
    margin-top: 0 !important;
    padding-top: 20px !important;
}

/* Asegurar que el banner del municipio sea visible */
.municipio-banner img {
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    display: block !important;
}
