body {
  background-color: #f8f9fa;
  font-size: 14px;
  overflow-x: hidden;
  /* Prevent horizontal scroll */
}

.navbar-brand {
  font-weight: bold;
  font-size: 1rem;
}

.sidebar {
  min-height: 100vh;
  /* Flexible height, avoids overflow issues */
  background-color: #343a40;
  color: white;
  padding-top: 1rem;
  overflow-y: hidden;
  /* Prevent vertical scroll inside sidebar */
}

.sidebar a {
  color: white;
  padding: 0.5rem 1rem;
  display: block;
  font-size: 150%;
  text-decoration: none;
  transition: background-color 0.2s ease-in-out;
}

.sidebar a:hover {
  background-color: #495057;
}

.card {
  padding: 0.5rem !important;
}

.card-title {
  font-size: 0.95rem;
  margin-bottom: 0.3rem;
}

.card-text {
  font-size: 0.75rem;
}

canvas {
  max-height: 150px;
}