/* 
   MOBILE MENU FORCE FIX - VERSÍON NUCLEAR
   Este archivo es GLOBAL y NO tiene scoping de Blazor.
*/

/* 1. RESET Y ESTADO INICIAL */
#mobile-menu-toggle {
    display: none !important;
}

/* 2. OVERLAY Y SIDEBAR (SÓLO MÓVIL) */
@media (max-width: 1023px) {

    /* Estado ABIERTO (Gana por especificidad de ID) */
    #mobile-menu-toggle:checked~.mobile-force-overlay {
        display: block !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        visibility: visible !important;
    }

    #mobile-menu-toggle:checked~.mobile-force-sidebar {
        left: 0 !important;
        display: flex !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    .mobile-force-overlay {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        background-color: rgba(0, 0, 0, 0.7) !important;
        z-index: 200000 !important;
        display: none !important;
        opacity: 0;
        transition: opacity 0.3s ease;
        pointer-events: none !important;
        visibility: hidden !important;
    }

    .mobile-force-sidebar {
        position: fixed !important;
        top: 0 !important;
        bottom: 0 !important;
        left: -320px !important;
        width: 280px !important;
        max-width: 85vw !important;
        background: #1e1b4b !important;
        color: white !important;
        z-index: 200001 !important;
        transition: left 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
        box-shadow: 5px 0 25px rgba(0, 0, 0, 0.5) !important;
        display: flex !important;
        flex-direction: column !important;
        overflow: hidden !important;
        pointer-events: none !important;
        visibility: hidden !important;
    }

    .mobile-force-toggle {
        position: fixed !important;
        top: 15px !important;
        left: 15px !important;
        z-index: 200002 !important;
        background: #4f46e5 !important;
        color: white !important;
        width: 50px !important;
        height: 50px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border-radius: 12px !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3) !important;
        cursor: pointer !important;
        pointer-events: auto !important;
        visibility: visible !important;
    }
}

/* 3. SIDEBAR DESKTOP */
@media (min-width: 1024px) {
    .mobile-force-sidebar {
        position: static !important;
        display: flex !important;
        visibility: visible !important;
        background: #1e1b4b !important;
        color: white !important;
        z-index: 1 !important;
        height: 100vh !important;
        pointer-events: auto !important;
        left: 0 !important;
    }

    .mobile-force-toggle,
    .mobile-force-overlay,
    .mobile-force-close,
    #mobile-menu-toggle {
        display: none !important;
        pointer-events: none !important;
        visibility: hidden !important;
    }
}

/* Soporte para el colapso C# en desktop */
.md-w-20 {
    width: 80px !important;
}

.md-w-72 {
    width: 288px !important;
}
}

/* 5. OTROS AJUSTES */
.mobile-force-close {
    padding: 12px !important;
    background: rgba(255, 255, 255, 0.1) !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    display: inline-flex !important;
}

.mobile-force-sidebar * {
    color: white !important;
}