
/* Global responsive adjustments */
img,
svg,
video,
canvas {
  max-width: 100%;
  height: auto;
}

body {
  text-rendering: optimizeLegibility;
}

.table-responsive {
  overflow-x: auto;
}

.navbar .btn + .btn,
.navbar .btn-sm + .btn-sm {
  margin-left: 0.25rem;
}

@media (max-width: 992px) {
  .navbar-nav {
    gap: 0.25rem;
    padding-top: 0.5rem;
  }
}

@media (max-width: 768px) {
  h1, .h1 { font-size: 1.5rem; }
  h2, .h2 { font-size: 1.25rem; }
  h3, .h3 { font-size: 1.1rem; }
  .display-6 { font-size: 1.6rem; }
}

@media (max-width: 576px) {
  .container {
    padding-left: 16px;
    padding-right: 16px;
  }

  .navbar .btn,
  .navbar .btn-sm {
    width: 100%;
  }

  .d-flex.gap-2 {
    gap: 0.5rem !important;
  }

  .card-body {
    padding: 1rem;
  }

  .table {
    font-size: 0.9rem;
  }

  .form-control,
  .form-select,
  .btn {
    min-height: 44px;
  }
}

@media (max-width: 420px) {
  .btn {
    font-size: 0.9rem;
  }

  .badge {
    font-size: 0.7rem;
  }
}

:root {
    --bs-primary: #006400;
    --bs-primary-rgb: 0, 100, 0;
    --bs-link-color: #006400;
    --bs-link-hover-color: #004d00;
}

.btn-primary {
    background-color: #006400;
    border-color: #006400;
}

.btn-primary:hover {
    background-color: #004d00;
    border-color: #004d00;
}

.btn-outline-primary {
    color: #006400;
    border-color: #006400;
}

.btn-outline-primary:hover {
    color: #fff;
    background-color: #006400;
    border-color: #006400;
}

.text-primary {
    color: #006400 !important;
}

.bg-primary {
    background-color: #006400 !important;
}
