.sidebar{
    position:fixed;
    top:0;
    left:0;
    width:70px;
    height:100vh;
    background:#eef5f5;
    transition:width .25s;
    z-index:20;
    overflow-y:scroll;;
    overflow-x:hidden;
    scrollbar-width: none;
}

/* sidebar expandido */
.sidebar.expand{
    width:240px;
}

/* hover expande cuando no está bloqueado */
.sidebar:not(.pinned):hover{
    width:240px;
}

/* contenido */

.main-content{
    margin-left:70px;
    transition:margin-left .25s;
}

.sidebar.expand ~ .main-content{
    margin-left:240px;
}

.sidebar:not(.pinned):hover ~ .main-content{
    margin-left:240px;
}

/* menu */

.sidebar ul{
    list-style:none;
    padding:10px;
    margin:0;
}

.sidebar li{
    position:relative;
    border-radius: 10px;
    margin-bottom: 8px;
}

.sidebar a{
    display:flex;
    align-items:center;
    gap:12px;
    padding:13px 16px;
    color:#001524;
    text-decoration:none;
    border-radius: 10px;
}

.sidebar i{
    width:21px;
    text-align:center;
    font-size:20px;
    color: #16223a;
}
[data-bs-theme="dark"] .sidebar i {
    color: #fff;
}

/* texto */
.sidebar .text{
    opacity:0;
    transition:.2s;
    white-space:nowrap;
    font-size: 15px;
}

.sidebar.expand .text,
.sidebar:not(.pinned):hover .text{
    opacity:1;
}

.sidebar li.active > a > i {
    color: #fff;
}
.sidebar li.active > a > span {
    color: #fff;
}


.has-sub a.open {
    background-color: #d5e8e8;
    border-bottom-left-radius: 0px;
    border-bottom-right-radius: 0px;
}


/* flecha submenu */
.arrow{
    margin-left:auto;
    font-size:12px;
    opacity:0;
}

.sidebar.expand .arrow,
.sidebar:not(.pinned):hover .arrow{
    opacity:1;
    font-size: 13px;
}

/* submenu */
.submenu{
    display:none;
    background:#D5E8E8;
    border-radius: 0px 0px 10px 10px
}

.submenu li{
    padding: 0px;
}


.submenu a{
    padding: 5px 10px;
    font-size: 14px;
    gap: 5px;
}

.submenu a:hover{
    background: #fff;
    padding: 5px 10px;
}

.submenu a:before{
    content: "";
    /*background: #08233a;*/
    border: 1px solid #08233a;
    width: 7px;
    height: 7px;
    border-radius: 50px;
}
.submenu li.active a:before{
    border: 1px solid #fff;
}
/* item activo */
.sidebar li.active > a{
    background:#084f5e;
}

.submenu li.active a{
    background:#063b45;
    color: #fff;
}


/* MOBILE */
.sidebar-overlay{
    display:none;
}

.topbarlinks {
    background-color: transparent;
    border: 1px solid #020617;
    border-radius: 5px;
    padding: 0px 8px;
    color: #0c7286;
    font-size: 22px;
}

[data-bs-theme="dark"] .topbarlinks {
    background-color: transparent;
    color: #fff;
    border: 1px solid #2d394c;
}
[data-bs-theme="dark"] .topbarlinks:hover {
    background-color: #1D293D;
}
@media(max-width:992px){
    
    .sidebar{
        left:-240px;
        width:240px;
    }

    .sidebar.expand{
        left:0;
    }

    .main-content{
        margin-left:0;
    }

    .sidebar-overlay{
        position:fixed;
        inset:0;
        background:rgba(0,0,0,.5);
        z-index:10;
    }

    .sidebar-overlay.show{
        display:block;
    }

    .sidebar.expand ~ .main-content{
        margin-left:0px;
    }

    .sidebar:not(.pinned):hover ~ .main-content{
        margin-left:0px;
    }

    .topbarlinks{
        font-size: 20px;
    }
    .btn-sm-2 {
        padding: 1px 8px;
    }
}

