.navbar-nav>.nav-item>.nav-link.active { font-weight:bold; }
.sidebar-dark-primary { background-color:#1e2a38; }
.brand-text { font-size:1.2rem; font-weight:bold; }
.table { background:#fff; }
/* ---------- Sidebar / Overlay Responsive Behavior ---------- */

/* default desktop */
.main-sidebar {
    width: 250px;
    transition: transform .28s ease, width .28s ease;
    z-index: 4000;
}

/* page content shift when sidebar visible on desktop */
.content-wrapper {
    margin-left: 250px;
    transition: margin-left .28s ease;
}

/* collapsed sidebar */
body.sidebar-collapsed .main-sidebar {
    transform: translateX(-250px) !important;
}

body.sidebar-collapsed .content-wrapper {
    margin-left: 0 !important;
}

/* overlay */
#sidebarOverlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0,0,0,0.45);
    z-index: 3500;
}

    /* show overlay (mobile) */
    #sidebarOverlay.show {
        display: block;
    }

/* mobile defaults — sidebar hidden by default on small screens but can be opened */
@media (max-width: 991.98px) {

    /* start hidden */
    body:not(.sidebar-open) .main-sidebar {
        transform: translateX(-250px);
        position: fixed;
        left: 0;
        top: 0;
        bottom: 0;
    }

    /* when open on mobile */
    body.sidebar-open .main-sidebar {
        transform: translateX(0) !important;
        position: fixed;
    }

    /* content always full width on mobile when sidebar hidden */
    .content-wrapper {
        margin-left: 0 !important;
    }
}

/* ensure toggle button is always visible above content */
#sidebarToggleBtn {
    position: relative;
    z-index: 5200; /* above sidebar overlay and below header if needed */
}

/* ensure sidebar text visible on mobile (if dark-mode overrides) */
@media (max-width: 991.98px) {
    .main-sidebar .nav-link, .main-sidebar .nav-link p, .main-sidebar .nav-link i {
        color: #fff !important;
    }
}