/* General Styles */
body {
    overflow-x: hidden;
}

/* Sidebar */
.sidebar {
    min-height: 100vh;
    background: #f8f9fa;
    transition: all 0.3s;
}

.sidebar a {
    display: block;
    padding: 10px 20px;
    color: #333;
    text-decoration: none;
}

.sidebar a:hover {
    background: #e9ecef;
}

.sidebar .submenu {
    display: none;
}

.sidebar .submenu.show {
    display: block;
}

/* Fixed Sidebar */
#sidebar {
    position: fixed;
    top: 56px;
    left: 0;
    width: 250px;
    height: 100vh;
    z-index: 1000;
    border-right: 1px solid #dbcece;
    transition: left 0.3s ease;
}

/* Content */
#contentadmin {
    margin: 56px 30px 30px 250px;
    transition: margin-left 0.3s ease, width 0.3s ease;
}

/* Navbar */
nav.navbar.navbar-dark {
    position: fixed;
    width: 100%;
    z-index: 1100;
}

/* Overlay for Mobile */
#overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 900;
}

/* Responsive Breakpoints */
@media (max-width: 991px) {
    #sidebar {
        left: -250px;
    }

    #sidebar.show {
        left: 0;
    }

    #contentadmin {
        margin-left: 0;
        width: 100%;
    }

    #overlay.show {
        display: block;
    }

    /* Optional: make sidebar items bigger for touch */
    .sidebar a {
        padding: 15px 20px;
        font-size: 16px;
    }
}

@media (max-width: 576px) {
    /* Navbar text shrink */
    nav.navbar .navbar-text {
        display: none;
    }

    /* Make buttons full width */
    #contentadmin .btn {
        width: 100%;
        margin-bottom: 10px;
    }
}
