/* Basic styles for the wrapper and sidebar */
#wrapper {
    display: flex;
    align-items: stretch;
}

#sidebar-wrapper {
    min-height: 100vh;
    width: 220px; /* Fixed sidebar width */
    margin-left: -220px; /* Hide sidebar by default on small screens */
    transition: margin 0.25s ease-out;
    background-color: #f8f9fa; /* Light background */
    border-right: 1px solid #dee2e6;
}

#sidebar-wrapper .sidebar-heading {
    padding: 0.875rem 1.25rem;
    font-size: 1.2rem;
    font-weight: bold;
}

#sidebar-wrapper .list-group {
    width: 220px;
}

#sidebar-wrapper .list-group-item {
    border: none;
    padding: 0.75rem 1.25rem;
}

#sidebar-wrapper .list-group-item.active {
    background-color: #0d6efd; /* Bootstrap primary blue */
    color: white;
    border-radius: 0; /* Remove default radius */
}

#sidebar-wrapper .list-group-item-action:focus,
#sidebar-wrapper .list-group-item-action:hover {
    background-color: #e9ecef; /* Lighter gray on hover */
}

#page-content-wrapper {
    min-width: 100vw;
    flex-grow: 1;
    transition: margin 0.25s ease-out;
}

#wrapper.toggled #sidebar-wrapper {
    margin-left: 0;
}

#wrapper.toggled #page-content-wrapper {
    min-width: calc(100vw - 220px); /* Adjust content width when sidebar is visible */
    margin-left: 220px;
}

/* Responsive styles */
@media (min-width: 992px) { /* lg breakpoint */
    #sidebar-wrapper {
        margin-left: 0;
    }

    #page-content-wrapper {
        min-width: 0;
        width: 100%;
        margin-left: 0; /* Reset margin for larger screens */
    }

    /* Keep sidebar visible on large screens */
    #wrapper #sidebar-wrapper {
        margin-left: 0;
    }
    
    /* Adjust page content wrapper width when sidebar is fixed */
    #wrapper #page-content-wrapper {
         margin-left: 220px;
         width: calc(100% - 220px);
    }

    /* Hide toggle button on large screens */
    #menu-toggle {
        display: none;
    }
    
    /* Ensure toggled state doesn't hide sidebar on large screens */
     #wrapper.toggled #sidebar-wrapper {
        margin-left: 0; /* Keep sidebar visible */
    }
    
    /* Ensure toggled state doesn't affect page content on large screens */
    #wrapper.toggled #page-content-wrapper {
        margin-left: 220px;
        width: calc(100% - 220px);
    }
}

/* Styles for when sidebar is toggled OFF on smaller screens */
@media (max-width: 991.98px) { /* Below lg breakpoint */
    #sidebar-wrapper {
        margin-left: -220px; /* Hidden by default */
    }

    #page-content-wrapper {
        min-width: 100vw;
        margin-left: 0;
    }

    /* When toggled ON (visible) on smaller screens */
    #wrapper.toggled #sidebar-wrapper {
        margin-left: 0;
    }
    
    /* When toggled ON, content should not shift */
    #wrapper.toggled #page-content-wrapper {
        margin-left: 0; /* Keep content full width */
        /* Optionally add an overlay or prevent scrolling on body */
    }
}

/* Additional styling */
.navbar {
    padding: 0.5rem 1rem;
}

.container-fluid {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

