﻿/* Sidebar principal */
.sidebar-col {
    width: 210px;
    flex-shrink: 0;
    position: relative;
}

.sidebar {
    background-color: #FF6C52 !important;
    padding: 25px 10px;
    border-right: 1px solid #ddd;
    height: calc(100vh - 70px);
    width: 210px;
    position: fixed;
    top: 70px;
    left: 0;
    bottom: 0;
    z-index: 100;
    overflow-y: auto;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
}

    .sidebar.open {
        transform: translateX(0);
    }

    .sidebar .nav-item {
        margin-bottom: 10px;
    }

    .sidebar .nav-link {
        color: white;
        padding: 8px 15px;
        border-radius: 4px;
        transition: all 0.3s;
    }

        .sidebar .nav-link:hover {
            background-color: #f9f9f9;
            color: black;
            text-decoration: none;
        }

        .sidebar .nav-link i {
            width: 20px;
            text-align: center;
        }

/* Desktop - Mostrar sidebar y contenido normal */
@media (min-width: 992px) {
    .sidebar {
        transform: translateX(0);
        position: fixed;
    }

    .content-col {
        width: calc(100% - 210px);
    }
}

/* Tablet - Mostrar botón hamburguesa y ocultar sidebar */
@media (max-width: 991.98px) {
    .sidebar-col {
        display: none;
    }

    .content-col {
        width: 100%;
        margin-left: 0 !important;
    }

    /* Estilos para los elementos del sidebar en el menú hamburguesa */
    .mobile-sidebar-items {
        display: none;
    }

    .navbar-collapse.show .mobile-sidebar-items {
        display: block;
        padding-left: 20px;
    }

    .mobile-sidebar-items .nav-link {
        color: white !important;
        padding: 8px 15px;
    }

    .mobile-sidebar-items .nav-item {
        margin-bottom: 5px;
    }

    /* Asegurar que el botón hamburguesa sea visible */
    .navbar-toggler {
        display: block !important;
    }

    .navbar-collapse {
        background-color: #FF6C52;
        padding: 10px;
        margin-top: 5px;
        border-radius: 5px;
    }
}

/* Mobile - Ajustes adicionales para pantallas muy pequeñas */
@media (max-width: 575.98px) {
    .mobile-sidebar-items .nav-link {
        padding: 8px 10px;
        font-size: 0.9rem;
    }
}
