.layout-menu{
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    margin-right: 0 !important;
    margin-left: 0 !important;
    z-index: 1000;
}
.bg-menu {
    background: #2E2D2D;
    color: #433c50;
    height: 100%;
    width: fit-content !important;
}
.layout-wrapper, .layout-container {
    width: 100%;
    display: inline-block;
    /*
    display: flex;
    flex: 1 1 auto;
    align-items: stretch;
    */
}
.layout-container {
    min-height: 100vh;
}
.app-brand {
    height: auto;
    padding-right: 1.2rem;
    padding-left: 1.575rem;
    width:auto;
    transition:padding .3s ease-in-out;
    line-height: 1;
    min-height: 1px;
    display: flex;
    justify-content: center;
}
.app-brand-link {
    display: flex;
    align-items: center;
    justify-self: center;
}
.app-brand-text {
    font-size: 1.25rem;
}
.app-brand-text {
    text-transform: uppercase;
    flex-shrink: 0;
    opacity: 1;
    transition: opacity .1s ease-in-out;
}
.menu-inner {
    flex-direction: column;
    flex: 1 1 auto;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    margin: 0;
    padding: 0;
    height: 100%;
}
.ps {
    position: relative;
    overflow: hidden !important;
    overflow-anchor: none;
    -ms-overflow-style: none;
    touch-action: auto;
    -ms-touch-action: auto;
}
.py-1 {
    padding-top: .25rem !important;
    padding-bottom: .25rem !important;
}

.menu-vertical:first-of-type, .menu-vertical .menu-block:first-of-type, .menu-vertical .menu-inner>.menu-item:first-of-type {
    margin-top: 0;
}
.menu-vertical .menu-inner .menu-item {
    margin: .375rem 0 0;
    padding: 12px 0px;
}
.menu-vertical .menu-item.active>.menu-toggle{
    color:transparent;
}
.menu-vertical .menu-item .menu-link {
    font-size: .9375rem;
    letter-spacing: .15px;
}
.menu-vertical .menu-item .menu-link{
    padding: .5rem 1.45rem;
    margin-block: 0;
    margin-inline: 1.125rem;
    border-radius: 0 50rem 50rem 0;
    margin-left: 0;
    color:transparent;
}
.bg-menu-theme .menu-link{
    color: #433c50;
}
.menu-link {
    position: relative;
    display: flex;
    align-items: center;
    flex: 0 1 auto;
    margin: 0;
}
.menu-icon {
    flex-grow: 0;
    flex-shrink: 0;
    margin-right: .5rem;
    line-height: 1;
    font-size: 40px;
    color:#9F9F9F;
}
.menu-vertical, .menu-vertical .menu-inner>.menu-item {
    width: 33.33rem;
}

@media (min-width:1025px) and (max-width:1200px){
    .menu-vertical, .menu-vertical .menu-inner>.menu-item {
        width: 25.33rem;
    }
    .menu-vertical .menu-item .title{
        font-size: 17px !important;
    }
    .menu-vertical .menu-item i{
        font-size: 20px !important;
    }

    .layout-page{
        padding-left:25rem !important;
    }
  }

  @media (min-width:769px) and (max-width:1024px){
    .menu-vertical, .menu-vertical .menu-inner>.menu-item {
        width: 22.33rem;
    }
    .menu-vertical .menu-item .title{
        font-size: 15px !important;
    }
    .menu-vertical .menu-item i{
        font-size: 18px !important;
    }

    .layout-page{
        padding-left:23rem !important;
    }
  }

  @media (min-width:320px) and (max-width:991px){
    .layout-menu{
        width:100%;
        height:100%;
    }
    .sidebar-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background: rgba(0, 0, 0, 0.5); /* Semi-transparent black */
        z-index: 999; /* Behind the sidebar */
        display: none; /* Initially hidden */
        transition: opacity 0.3s ease-in-out; /* Smooth fade effect */
    }    
    .main-sidebar {
        width: 100%;
        display: flex !important; /* Default flex layout */
        justify-content: end !important;
        align-items: center !important;
        /* background: #000000b5; */
        position: fixed;
        top: 0;
        right: 0;
        height: 100vh;
        transform: translateX(100%); /* Start hidden by moving off-screen */
        transition: transform 0.3s ease-in-out;
        visibility: hidden; /* Keep it hidden initially */
    }
    .main-sidebar.show {
        transform: translateX(0); /* Slide it in */
        visibility: visible; /* Make it visible */
    }
    .layout-page{
        padding-left:0rem !important;
    }
    .app-brand {
        display: none !important;
    }
    .bg-menu{
        margin-top: 17rem;
    }
  }

.menu-vertical .menu-item .title{
    font-family: Montserrat;
    font-size: 20px;
    font-weight: 500;
    line-height: 24.38px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    color: #9F9F9F;
    padding-left: 10px;
}
.sidebar-menu li.menu-item.active{
    background: #E14734;
    color:#fff;
}
.menu-vertical .menu-item.active a{
    color:#fff;
}
.menu-vertical .menu-item.active .title{
    color:#fff;font-weight:600;
}
.menu-vertical .menu-item.active .menu-icon{color:#fff;font-weight:600;}
.layout-page{
    padding-left:33.33rem;
    display: flex;
    flex: 1 1 auto;
    align-items: stretch;
    background-color:#000000;
    color:#fff;
    min-height: 100vh;
}


.sidebar-menu li.menu-item:hover {
    background: #E14734;
    color: #fff;
}
.menu-vertical .menu-item:hover .menu-icon {
    color: #fff;
    font-weight: 600;
}
.menu-vertical .menu-item:hover .title {
    color: #fff;
    font-weight: 600;
}
@media (min-width: 320px) and (max-width: 991px) {
  .main-sidebar.show {
    transform: translateX(0);
    visibility: visible;
    display:flex !important;
  }
}