
h1, h2, h3, h4 {
  font-weight: 600;
}

.table thead th {
  vertical-align: middle;
}

.btn:hover {
  transform: scale(1.02);
  transition: 0.2s ease-in-out;
}

input:focus, select:focus {
  box-shadow: 0 0 5px #0078d7;
  border-color: #0078d7;
}

.line-total {
  font-weight: bold;
}

.navbar-brand {
  font-weight: 500;
  font-size: 1.2rem;
}

.card-title {
  font-weight: 500;
}
:root {
  --bg-color: #f8f9fa;
  --text-color: #212529;
}

[data-theme='dark'] {
  --bg-color: #212529;
  --text-color: #f8f9fa;
}

body {
  background-color: var(--bg-color);
  color: var(--text-color);
  transition: background-color 0.3s ease, color 0.3s ease;
}

.glassy {
  backdrop-filter: blur(10px);
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 8px;
  transition: background-color 0.3s ease;
}
.nav-link.active {
  background-color: var(--bs-primary);
  color: white;
  font-weight: bold;
}

.nav-link i {
  margin-right: 0.5rem;
  transition: color 0.3s ease;
}

.nav-link.active i {
  color: white;
}

/* Main content positioning to account for fixed sidebar */
.main-content {
  margin-left: 270px;
  padding-top: 20px;
}

/* Responsive behavior for smaller screens */
@media (max-width: 767.98px) {
  .main-content {
    margin-left: 0;
    padding-top: 60px; /* Account for mobile nav toggle */
  }
}