body {
  overflow-x: hidden;
}

#wrapper {
  display: flex;
}

#sidebar-wrapper {
  min-height: 100vh;
  width: 15rem; /* Fixed width for sidebar */
  transition: margin 0.25s ease-out;
  border-right: 1px solid rgba(0, 0, 0, 0.125); /* Add a subtle border */
}

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

#sidebar-wrapper .list-group {
  width: 15rem;
}

#page-content-wrapper {
  flex-grow: 1; /* Allow content to take remaining space */
  min-width: 0; /* Prevent overflow */
  padding: 20px; /* Add padding to content area */
}

#page-content-wrapper .container-fluid {
  max-width: 1200px; /* Limit content width */
  margin-left: auto; /* Center content */
  margin-right: auto; /* Center content */
}

/* Default state for sidebar (visible on large screens) */
@media (min-width: 768px) {
  #sidebar-wrapper {
    margin-left: 0; /* Sidebar visible by default */
  }

  #menu-toggle {
    display: none; /* Hide menu toggle button on larger screens */
  }
}

/* State when toggled (sidebar hidden on large screens) */
#wrapper.toggled #sidebar-wrapper {
  margin-left: -15rem; /* Hide sidebar */
}

#wrapper.toggled #page-content-wrapper {
  margin-left: 0; /* Content takes full width */
}

/* Adjust for smaller screens */
@media (max-width: 767.98px) {
  #sidebar-wrapper {
    margin-left: -15rem; /* Initially hidden on small screens */
    position: fixed;
    z-index: 1000;
  }

  #wrapper.toggled #sidebar-wrapper {
    margin-left: 0; /* Show sidebar when toggled */
  }

  #page-content-wrapper {
    min-width: 100vw; /* Occupy full width */
  }

  #wrapper.toggled #page-content-wrapper {
    margin-left: 0; /* No push on small screens */
  }

  #menu-toggle {
    display: block; /* Show menu toggle button on smaller screens */
  }
}

.list-group-item-action:hover {
  background-color: #495057 !important;
}

.btn-link {
  text-decoration: none;
}

.card {
  margin-bottom: 1.5rem;
}

/* Custom styles for nested list items */
.list-group-item .list-group-item {
  padding-left: 2.5rem;
}

.list-group-item .list-group-item-action {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
