.navbar-brand img {
  height: 36px;
  width: auto;
}

.org-type-badge {
  font-size: 0.9rem;
  padding: 0.45rem 0.9rem;
  background-color: #e2e8f0 !important;
  color: #0f172a !important;
  border: 1px solid #cbd5e1;
}

.org-type-badge.text-white {
  color: #fff !important;
}

.org-type-badge[class*="org-type--"] {
  border-color: transparent;
}

.org-type--farm {
  background-color: #198754 !important;
  color: #fff !important;
}

.org-type--fishing {
  background-color: #0dcaf0 !important;
  color: #052c65 !important;
}

.org-type--aquaculture {
  background-color: #0fa3b1 !important;
  color: #031f2b !important;
}

.org-type--value-added-producer {
  background-color: #fcd34d !important;
  color: #0f172a !important;
}

.org-type--distributor {
  background-color: #0d6efd !important;
  color: #fff !important;
}

.org-type--processor {
  background-color: #6f42c1 !important;
  color: #fff !important;
}

.org-type--shared-kitchen {
  background-color: #d63384 !important;
  color: #fff !important;
}

.org-type--cold-storage {
  background-color: #495057 !important;
  color: #fff !important;
}

.org-type--dry-storage {
  background-color: #8d6e63 !important;
  color: #fff !important;
}

.org-type--aggregation-site {
  background-color: #fd7e14 !important;
  color: #fff !important;
}

.org-type--resource-provider {
  background-color: #1982c4 !important;
  color: #fff !important;
}

.org-type--co-packer {
  background-color: #343a40 !important;
  color: #fff !important;
}

/* Buyer org types */
.org-type--buyer-k-12-school {
  background-color: #6366f1 !important;
  color: #fff !important;
}

.org-type--buyer-higher-education {
  background-color: #8b5cf6 !important;
  color: #fff !important;
}

.org-type--buyer-health-care {
  background-color: #ec4899 !important;
  color: #fff !important;
}

.org-type--buyer-carceral {
  background-color: #78716c !important;
  color: #fff !important;
}

.org-type--buyer-retail {
  background-color: #14b8a6 !important;
  color: #fff !important;
}

.org-type--buyer-processor-distributor {
  background-color: #f59e0b !important;
  color: #fff !important;
}

.org-type--buyer-restaurant-cafe-catering {
  background-color: #ef4444 !important;
  color: #fff !important;
}

.org-type--buyer-other {
  background-color: #64748b !important;
  color: #fff !important;
}

/* Brand Colors */
:root {
  --cream: #FFE7A7;
  --sunflower: #FFD56A;
  --gold: #FFC233;
  --harvest: #FFB200;
  --bronze: #D39400;
  --navy: #25336E;

  /* ===== Bootstrap CSS Variable Overrides ===== */

  /* Primary: Navy */
  --bs-primary: var(--navy);
  --bs-primary-rgb: 37, 51, 110;

  /* Info: Navy */
  --bs-info: var(--navy);
  --bs-info-rgb: 37, 51, 110;

  /* Warning: Harvest gold */
  --bs-warning: var(--harvest);
  --bs-warning-rgb: 255, 178, 0;

  /* Success: Forest green (complementary to gold palette) */
  --bs-success: #2e7d32;
  --bs-success-rgb: 46, 125, 50;

  /* Danger: Deep red (complementary to gold palette) */
  --bs-danger: #c62828;
  --bs-danger-rgb: 198, 40, 40;

  /* Light: Cream */
  --bs-light: var(--cream);
  --bs-light-rgb: 255, 231, 167;

  /* Dark: Navy */
  --bs-dark: var(--navy);
  --bs-dark-rgb: 37, 51, 110;

  /* Link colors */
  --bs-link-color: var(--navy);
  --bs-link-color-rgb: 37, 51, 110;
  --bs-link-hover-color: var(--bronze);
  --bs-link-hover-color-rgb: 211, 148, 0;
}

/* Typography - Tahoma for headings only */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: Tahoma, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

/* Navbar Styles */
.navbar-light .navbar-nav .nav-link {
  color: #000;
}

.navbar-light .navbar-nav .nav-link:hover {
  color: var(--harvest);
}

.navbar-light .navbar-nav .nav-link.active {
  color: #000;
  font-weight: 600;
  border-bottom: 2px solid var(--gold);
}

/* Footer Styles */
footer {
  background-color: var(--navy) !important;
}

footer a.text-muted {
  color: var(--sunflower) !important;
}

footer a.text-muted:hover {
  color: var(--harvest) !important;
}

footer .text-muted {
  color: rgba(255, 255, 255, 0.8) !important;
}

/* Button Styles */
.btn-harvest {
  background-color: var(--harvest);
  color: white;
  border: none;
}

.btn-harvest:hover {
  background-color: var(--bronze);
  color: white;
}

.btn-navy {
  background-color: var(--navy);
  color: white;
  border: none;
}

.btn-navy:hover {
  background-color: #1a2451;
  color: white;
}

.btn-outline-navy {
  background-color: transparent;
  color: var(--navy);
  border: 1px solid var(--navy);
}

.btn-outline-navy:hover {
  background-color: var(--navy);
  color: white;
  border-color: var(--navy);
}

.btn-outline-harvest {
  background-color: transparent;
  color: var(--navy);
  border: 2px solid var(--harvest);
}

.btn-outline-harvest:hover {
  background-color: var(--cream);
  color: var(--navy);
  border-color: var(--harvest);
}

/* Bootstrap button overrides for brand consistency */
.btn-primary {
  --bs-btn-bg: var(--navy);
  --bs-btn-border-color: var(--navy);
  --bs-btn-hover-bg: #1a2451;
  --bs-btn-hover-border-color: #1a2451;
  --bs-btn-active-bg: #141c40;
  --bs-btn-active-border-color: #141c40;
  --bs-btn-disabled-bg: var(--navy);
  --bs-btn-disabled-border-color: var(--navy);
}

.btn-outline-primary {
  --bs-btn-color: var(--navy);
  --bs-btn-border-color: var(--navy);
  --bs-btn-hover-bg: var(--navy);
  --bs-btn-hover-border-color: var(--navy);
  --bs-btn-active-bg: var(--navy);
  --bs-btn-active-border-color: var(--navy);
}

.btn-success {
  --bs-btn-bg: #2e7d32;
  --bs-btn-border-color: #2e7d32;
  --bs-btn-hover-bg: #256427;
  --bs-btn-hover-border-color: #256427;
  --bs-btn-active-bg: #1b5e20;
  --bs-btn-active-border-color: #1b5e20;
}

.btn-outline-success {
  --bs-btn-color: #2e7d32;
  --bs-btn-border-color: #2e7d32;
  --bs-btn-hover-bg: #2e7d32;
  --bs-btn-hover-border-color: #2e7d32;
}

.btn-warning {
  --bs-btn-bg: var(--harvest);
  --bs-btn-border-color: var(--harvest);
  --bs-btn-color: var(--navy);
  --bs-btn-hover-bg: var(--bronze);
  --bs-btn-hover-border-color: var(--bronze);
  --bs-btn-hover-color: white;
  --bs-btn-active-bg: #b57f00;
  --bs-btn-active-border-color: #b57f00;
}

.btn-outline-warning {
  --bs-btn-color: #7a5800;
  --bs-btn-border-color: var(--harvest);
  --bs-btn-hover-bg: var(--harvest);
  --bs-btn-hover-border-color: var(--harvest);
  --bs-btn-hover-color: var(--navy);
}

.btn-danger {
  --bs-btn-bg: #c62828;
  --bs-btn-border-color: #c62828;
  --bs-btn-hover-bg: #b71c1c;
  --bs-btn-hover-border-color: #b71c1c;
  --bs-btn-active-bg: #a31515;
  --bs-btn-active-border-color: #a31515;
}

.btn-outline-danger {
  --bs-btn-color: #c62828;
  --bs-btn-border-color: #c62828;
  --bs-btn-hover-bg: #c62828;
  --bs-btn-hover-border-color: #c62828;
}

.btn-info {
  --bs-btn-bg: var(--navy);
  --bs-btn-border-color: var(--navy);
  --bs-btn-color: white;
  --bs-btn-hover-bg: #1a2451;
  --bs-btn-hover-border-color: #1a2451;
}

.btn-outline-info {
  --bs-btn-color: var(--navy);
  --bs-btn-border-color: var(--navy);
  --bs-btn-hover-bg: var(--navy);
  --bs-btn-hover-border-color: var(--navy);
}

/* Alert overrides for brand consistency */
.alert-primary {
  --bs-alert-bg: #e8eaf6;
  --bs-alert-border-color: #c5cae9;
  --bs-alert-color: var(--navy);
}

.alert-info {
  --bs-alert-bg: #e8eaf6;
  --bs-alert-border-color: #c5cae9;
  --bs-alert-color: var(--navy);
}

.alert-success {
  --bs-alert-bg: #e8f5e9;
  --bs-alert-border-color: #c8e6c9;
  --bs-alert-color: #1b5e20;
}

.alert-warning {
  --bs-alert-bg: var(--cream);
  --bs-alert-border-color: var(--sunflower);
  --bs-alert-color: #7a5800;
}

.alert-danger {
  --bs-alert-bg: #ffebee;
  --bs-alert-border-color: #ffcdd2;
  --bs-alert-color: #b71c1c;
}

/* Badge overrides for brand consistency */
.badge.bg-primary,
.text-bg-primary {
  background-color: var(--navy) !important;
}

.badge.bg-info {
  background-color: var(--navy) !important;
  color: white !important;
}

.badge.bg-success {
  background-color: #2e7d32 !important;
}

.badge.bg-warning {
  background-color: var(--harvest) !important;
  color: var(--navy) !important;
}

.badge.bg-danger {
  background-color: #c62828 !important;
}

/* Subtle background variants */
.bg-primary-subtle {
  background-color: #e8eaf6 !important;
}

.bg-success-subtle {
  background-color: #e8f5e9 !important;
}

.bg-warning-subtle {
  background-color: var(--cream) !important;
}

.bg-danger-subtle {
  background-color: #ffebee !important;
}

.bg-info-subtle {
  background-color: #e8eaf6 !important;
}

/* Text emphasis variants */
.text-primary-emphasis {
  color: var(--navy) !important;
}

.text-success-emphasis {
  color: #1b5e20 !important;
}

.text-warning-emphasis {
  color: #7a5800 !important;
}

.text-danger-emphasis {
  color: #b71c1c !important;
}

.text-info-emphasis {
  color: var(--navy) !important;
}

/* Form focus states using brand colors */
.form-control:focus,
.form-select:focus {
  border-color: var(--harvest);
  box-shadow: 0 0 0 0.25rem rgba(255, 178, 0, 0.25);
}

.form-check-input:focus {
  border-color: var(--harvest);
  box-shadow: 0 0 0 0.25rem rgba(255, 178, 0, 0.25);
}

.form-check-input:checked {
  background-color: var(--navy);
  border-color: var(--navy);
}

/* Text color utility overrides */
.text-primary {
  color: var(--navy) !important;
}

.text-success {
  color: #2e7d32 !important;
}

.text-danger {
  color: #c62828 !important;
}

.text-warning {
  color: #7a5800 !important;
}

.text-info {
  color: var(--navy) !important;
}

/* Brand-specific utility classes */
.text-navy {
  color: var(--navy) !important;
}

.text-harvest {
  color: var(--harvest) !important;
}

.text-bronze {
  color: var(--bronze) !important;
}

.bg-navy {
  background-color: var(--navy) !important;
}

.bg-harvest {
  background-color: var(--harvest) !important;
}

.bg-sunflower {
  background-color: var(--sunflower) !important;
}

.bg-gold {
  background-color: var(--gold) !important;
}

.bg-bronze {
  background-color: var(--bronze) !important;
}

.border-navy {
  border-color: var(--navy) !important;
}

.border-harvest {
  border-color: var(--harvest) !important;
}

.border-gold {
  border-color: var(--gold) !important;
}

/* Section Backgrounds */
.bg-cream {
  background-color: var(--cream);
}

/* Card Styles */
.card-on-cream {
  background-color: white;
  border: 1px solid var(--gold);
}

/* ===== Filter Dropdown Clear Buttons ===== */
.filter-clear-btn {
  display: block;
  width: 100%;
  padding: 0.5rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 500;
  text-align: left;
  color: var(--navy);
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 0.375rem;
  transition: background-color 150ms ease, border-color 150ms ease;
  cursor: pointer;
}

.filter-clear-btn:hover {
  background-color: #f1f5f9;
  border-color: #cbd5e1;
}

.filter-clear-btn:focus {
  outline: none;
  box-shadow: 0 0 0 0.2rem rgba(37, 51, 110, 0.15);
  border-color: var(--navy);
}

/* ===== Filter Dropdown Typeahead ===== */
.filter-options-list {
  max-height: 240px;
  overflow-y: auto;
}

.filter-option.filter-hidden {
  display: none !important;
}

.filter-typeahead-hint {
  display: none;
  padding: 0.375rem 0.625rem;
  font-size: 0.8125rem;
  color: #6b7280;
  background-color: #f9fafb;
  border: 1px dashed #d1d5db;
  border-radius: 0.25rem;
}

.filter-typeahead-hint.active {
  display: block;
}

.filter-typeahead-hint::before {
  content: "Filter: ";
  font-weight: 500;
  color: #9ca3af;
}

.filter-no-matches {
  display: none;
  padding: 0.5rem;
  text-align: center;
  font-size: 0.875rem;
  color: #6b7280;
}

.filter-no-matches.active {
  display: block;
}

.filter-typeahead.typeahead-active {
  outline: 2px solid var(--harvest);
  outline-offset: -2px;
}
