/* Sidebar styles adapted from the installed Makombe ERP. */

    .erp-sidebar{
        background:
            radial-gradient(circle at 18% 4%,rgba(56,189,248,.13),transparent 25%),
            linear-gradient(180deg,#20384d 0%,#17293a 52%,#0f1c29 100%);
        color:#fff;
        min-height:calc(100vh - 34px);
        display:flex;
        flex-direction:column;
        border-right:1px solid rgba(255,255,255,.18);
        box-shadow:8px 0 26px rgba(15,28,41,.13);
    }

    .erp-brand{
        padding:18px 16px;
        display:flex;
        align-items:center;
        gap:12px;
        border-bottom:1px solid rgba(255,255,255,.12);
        background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(14,165,233,.06));
        text-decoration:none!important;
        color:#fff!important;
        cursor:pointer;
        transition:background .18s ease,box-shadow .18s ease,transform .18s ease;
    }

    .erp-brand:hover,
    .erp-brand:focus{
        background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(14,165,233,.12));
        box-shadow:inset 3px 0 #38bdf8;
        outline:none;
    }

    .erp-brand-logo{
        width:52px;
        height:52px;
        object-fit:contain;
        border-radius:14px;
        background:#fff;
        padding:6px;
        box-shadow:0 6px 18px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.55);
    }

    .erp-brand-mark{
        width:46px;
        height:46px;
        border-radius:14px;
        background:linear-gradient(135deg,#eab308,#f97316);
        display:flex;
        align-items:center;
        justify-content:center;
        font-weight:900;
        font-size:24px;
        color:#111827;
    }

    .erp-brand-name{
        font-size:19px;
        font-weight:950;
        line-height:1.12;
        letter-spacing:.1px;
        color:#fff;
        text-decoration:none!important;
        text-shadow:0 2px 12px rgba(0,0,0,.65);
    }

    .erp-brand-tagline{
        font-size:11px;
        font-weight:650;
        color:#bae6fd;
        margin-top:5px;
        letter-spacing:.15px;
        text-decoration:none!important;
        text-shadow:0 1px 7px rgba(0,0,0,.65);
    }

    .erp-dashboard-link{
        margin:12px;
        padding:12px;
        border-radius:16px;
        text-decoration:none;
        color:#fff;
        display:flex;
        align-items:center;
        gap:12px;
        background:linear-gradient(135deg,rgba(14,165,233,.35),rgba(59,130,246,.18));
        border:1px solid rgba(125,211,252,.35);
        box-shadow:0 8px 22px rgba(0,0,0,.14),inset 0 1px rgba(255,255,255,.13);
        transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease;
    }

    .erp-dashboard-link:hover,
    .erp-dashboard-link.active{
        background:linear-gradient(135deg,rgba(250,204,21,.42),rgba(249,115,22,.24));
        border-color:rgba(253,224,71,.7);
        transform:translateY(-1px);
        box-shadow:0 11px 25px rgba(0,0,0,.19),inset 3px 0 #fde047;
    }

    .erp-dashboard-icon{
        width:42px;
        height:42px;
        display:flex;
        align-items:center;
        justify-content:center;
        border-radius:14px;
        background:rgba(255,255,255,.16);
        font-size:23px;
    }

    .erp-dashboard-link strong{
        display:block;
        font-size:15px;
    }

    .erp-dashboard-link small{
        display:block;
        color:rgba(255,255,255,.72);
        margin-top:2px;
        font-size:11px;
    }

    .erp-menu-scroll{
        flex:1;
        overflow-y:auto;
        padding:0 10px 12px;
    }

    .erp-menu-scroll::-webkit-scrollbar{
        width:8px;
    }

    .erp-menu-scroll::-webkit-scrollbar-track{
        background:rgba(255,255,255,.04);
    }

    .erp-menu-scroll::-webkit-scrollbar-thumb{
        background:rgba(255,255,255,.20);
        border-radius:20px;
    }

    .erp-menu-group{
        margin-bottom:8px;
    }

    .erp-menu-toggle{
        width:100%;
        border:1px solid rgba(255,255,255,.10);
        background:rgba(255,255,255,.06);
        color:#fff;
        border-radius:14px;
        display:flex;
        justify-content:space-between;
        align-items:center;
        padding:11px 12px;
        cursor:pointer;
        text-align:left;
        box-shadow:inset 0 1px rgba(255,255,255,.07);
        transition:background .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease;
    }

    .erp-menu-toggle:hover,
    .erp-menu-toggle.open{
        background:rgba(255,255,255,.13);
        border-color:rgba(255,255,255,.24);
        transform:translateX(2px);
        box-shadow:inset 3px 0 #38bdf8,0 7px 18px rgba(0,0,0,.12);
    }

    .erp-menu-left{
        display:flex;
        align-items:center;
        gap:10px;
        min-width:0;
    }

    .erp-menu-icon{
        width:38px;
        height:38px;
        border-radius:13px;
        background:linear-gradient(135deg,rgba(255,255,255,.28),rgba(56,189,248,.16) 48%,rgba(34,197,94,.14));
        border:1px solid rgba(255,255,255,.16);
        box-shadow:inset 0 1px rgba(255,255,255,.24),0 8px 20px rgba(0,0,0,.20);
        display:flex;
        align-items:center;
        justify-content:center;
        font-size:21px;
        text-shadow:0 2px 10px rgba(255,255,255,.40);
        flex-shrink:0;
        text-decoration:none;
        color:inherit;
        cursor:pointer;
    }

    .erp-menu-left strong{
        display:block;
        font-size:13px;
        line-height:1.15;
    }

    .erp-menu-left small{
        display:block;
        font-size:10px;
        color:rgba(255,255,255,.62);
        margin-top:3px;
    }

    .erp-menu-caret{
        font-size:15px;
        color:rgba(255,255,255,.76);
    }

    .erp-submenu{
        margin:7px 0 0 18px;
        padding-left:12px;
        border-left:1px dashed rgba(255,255,255,.23);
    }

    .erp-sub-link{
        display:flex;
        align-items:center;
        gap:9px;
        padding:9px 10px;
        margin-bottom:4px;
        text-decoration:none;
        color:rgba(255,255,255,.88);
        border-radius:11px;
        font-size:12.5px;
        background:rgba(0,0,0,.10);
        border:1px solid transparent;
        transition:background .15s ease,color .15s ease,transform .15s ease,border-color .15s ease;
    }

    .erp-sub-link:hover,
    .erp-sub-link.active{
        background:rgba(255,255,255,.17);
        color:#fff;
        border-color:rgba(255,255,255,.13);
        transform:translateX(3px);
    }

    .erp-sub-icon{
        width:23px;
        height:23px;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        border-radius:8px;
        background:linear-gradient(135deg,rgba(255,255,255,.24),rgba(96,165,250,.16));
        border:1px solid rgba(255,255,255,.12);
        box-shadow:inset 0 1px rgba(255,255,255,.18),0 4px 12px rgba(0,0,0,.16);
        font-size:13px;
        flex-shrink:0;
    }

    .erp-menu-toggle:hover .erp-menu-icon,
    .erp-menu-toggle.open .erp-menu-icon,
    .erp-sub-link:hover .erp-sub-icon,
    .erp-sub-link.active .erp-sub-icon{
        background:linear-gradient(135deg,rgba(255,255,255,.34),rgba(125,211,252,.24) 48%,rgba(134,239,172,.18));
        border-color:rgba(255,255,255,.26);
    }

    .erp-sidebar-status{
        margin:10px;
        padding:12px;
        border-radius:16px;
        background:linear-gradient(135deg,rgba(34,197,94,.18),rgba(14,165,233,.10));
        border:1px solid rgba(134,239,172,.25);
    }

    .erp-status-title{
        font-size:12px;
        font-weight:900;
        text-transform:uppercase;
        letter-spacing:.08em;
        margin-bottom:8px;
        color:rgba(255,255,255,.85);
    }

    .erp-status-row{
        display:flex;
        justify-content:space-between;
        gap:10px;
        padding:5px 0;
        font-size:11px;
        border-bottom:1px solid rgba(255,255,255,.09);
    }

    .erp-status-row:last-child{
        border-bottom:0;
    }

    .erp-status-row span{
        color:rgba(255,255,255,.68);
    }

    .erp-status-row strong{
        text-align:right;
        color:#fff;
        max-width:110px;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
    }

    .erp-status-row .ok{
        color:#86efac;
    }

    .erp-status-row .bad{
        color:#fca5a5;
    }
