/* Mobile ≤767px */
@media (max-width: 767px) {

    /* El sidebar flota sobre el contenido en mobile */
    #sidebar {
        position: fixed;
        top: 0;
        left: 0;
        height: 100%;
        z-index: 200;
        transform: translateX(-100%);
        transition: transform var(--transition-speed) ease;
        width: var(--sidebar-width);
    }

    /* Clase añadida por JS al abrir en mobile */
    #sidebar.open {
        transform: translateX(0);
    }

    /* El wrapper ocupa todo el ancho disponible */
    #main-wrapper {
        width: 100%;
    }

    #content {
        padding: 16px;
    }
}
