/* ================= ENTERPRISE SIDEBAR ================= */

:root{
--sidebar-bg:#ffffff;
--sidebar-border:#e5e7eb;
--sidebar-text:#334155;
--sidebar-muted:#64748b;
--sidebar-hover:#f1f5f9;
--sidebar-active:#0d6efd;
--sidebar-active-soft:#e8f1ff;
--submenu-line:#dbe4ef;
--sidebar-shadow:0 8px 24px rgba(15,23,42,.06);
}

body {
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
}
/* Sidebar shell */
.sidebar {
    position: fixed;
    top: 0;
    left: 0;
    width: 250px;
    height: 100vh;
    background: var(--sidebar-bg);
    border-right: 1px solid var(--sidebar-border);
    overflow-y: auto;
    overflow-x: hidden;
    box-shadow: var(--sidebar-shadow);
}

/* Slim scrollbar */
.sidebar::-webkit-scrollbar{
    width:8px;
}
.sidebar::-webkit-scrollbar-thumb{
    background:#d6dde6;
    border-radius:20px;
}
.sidebar::-webkit-scrollbar-track{
    background:transparent;
}

/* Menu list */
.sidebar ul{
    list-style:none;
    padding:0;
    margin:0;
    font-size:14px;
}

/* Space between top-level items */
.sidebar > ul > li{
    margin-bottom:6px;
}

.sidebar li{
    position:relative;
}

/* Base link */
.sidebar a{
    display:flex;
    align-items:center;
    gap:10px;
    padding:12px 14px;
    border-radius:12px;
    color:var(--sidebar-text);
    text-decoration:none;
    font-weight:600;
    transition:all .18s ease;
}

/* Hover */
.sidebar a:hover{
    background:var(--sidebar-hover);
    transform:translateX(3px);
}

/* Active link */
.sidebar a.active{
    background:var(--sidebar-active-soft);
    color:var(--sidebar-active);
    font-weight:700;
    box-shadow:inset 3px 0 0 var(--sidebar-active);
}

/* Icons */
.sidebar i{
    width:22px;
    text-align:center;
    font-size:15px;
    color:var(--sidebar-muted);
    transition:.18s;
}

.sidebar a.active i,
.sidebar a:hover i{
    color:var(--sidebar-active);
}

/* Arrow */
.menu-toggle{
    position:relative;
}

.menu-toggle::after{
    content:"";
    margin-left:auto;
    width:8px;
    height:8px;
    border-right:2px solid #94a3b8;
    border-bottom:2px solid #94a3b8;
    transform:rotate(-45deg);
    transition:.2s;
}

.menu-toggle.active::after{
    transform:rotate(45deg);
}

/* ================= SUBMENU (NO INDENT) ================= */

.submenu{
    display:none;
    margin-top:6px;
    padding-left:0;      /* removed indentation */
    margin-left:0;       /* removed indentation */
    border-left:none;    /* removed vertical line */
}

/* Submenu items */
.sidebar ul li .submenu li{
    margin:4px 0;
}

/* Submenu links */
.sidebar ul li .submenu li a{
    padding:10px 14px;   /* same alignment as parent */
    font-size:13px;
    font-weight:600;
    color:#475569;
}

/* REMOVE dot markers */
.sidebar ul li .submenu li::before{
    display:none;
}

/* Submenu active */
.sidebar ul li .submenu li a.active{
    background:#eef5ff;
    color:var(--sidebar-active);
    box-shadow:inset 3px 0 0 var(--sidebar-active);
}

/* Parent active */
.menu-toggle.active{
    background:#f8fbff;
    color:var(--sidebar-active);
}

/* Section label */
.sidebar .menu-section{
    padding:14px 14px 8px;
    font-size:11px;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:#94a3b8;
    font-weight:700;
}

/* ================= CONTENT OFFSET ================= */

.main-content{
    margin-left:250px;
    margin-top:70px;
    padding:24px;
}

/* ================= MOBILE ================= */

@media(max-width:991px){

.sidebar{
    transform:translateX(-100%);
    transition:.25s ease;
}

.sidebar.open{
    transform:translateX(0);
}

.main-content{
    margin-left:0;
    padding:16px;
}

}