.sidebar {
  min-height: 100vh;
  background-color: #f8f9fa;
  border-right: 1px solid #132c45;
  padding: 1rem 0.5rem;
  display: flex;
  align-items: flex-start;
}

.btn-bar {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  width: 100%;
}

.nav-link {
  display: block;
  width: 100%;
  padding: 0.4rem 0.75rem;
  text-align: left;
  font-size: 0.95rem;
  border-radius: 0.4rem;
  border: 1px solid #0d6efd;
  color: #0d6efd;
  text-decoration: none;
  background-color: white;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.nav-link:hover {
  background-color: #a4c8ff;
  text-decoration: none;
}

/* Active page highlight */
.active-link {
  background-color: #ff66cc; /* pink */
  color: white;
  border-color: #ff66cc;
}


@media (max-width: 768px) {
  .sidebar {
    min-height: auto !important;      /* Override full height */
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #132c45;
  }

  .btn-bar {
    flex-direction: row;              /* Horizontal layout */
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.5rem;
  }

  .btn-bar a {
    flex: 1 1 auto;
    text-align: center;
  }

  .col-md-2.sidebar {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .col-md-10 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}