/* Jagdscheinpro - Military/Hunting Color Scheme Override */

:root {
  /* Primary Colors - Military Green & Earth Tones */
  --bs-primary: #4A5F3A;        /* Military/Forest Green */
  --bs-secondary: #8B7355;      /* Tan/Khaki */
  --bs-success: #556B2F;        /* Dark Olive Green */
  --bs-info: #6B7C59;           /* Sage Green */
  --bs-warning: #C19A6B;        /* Camel/Desert Tan */
  --bs-danger: #8B4513;         /* Saddle Brown */
  
  /* Additional Hunting Theme Colors */
  --hunting-green: #4A5F3A;     /* Primary Military Green */
  --camo-tan: #C9B896;          /* Light Tan */
  --camo-brown: #8B7355;        /* Medium Brown */
  --forest-green: #2D4A2B;      /* Dark Forest Green */
  --olive-drab: #6B8E23;        /* Olive Drab */
  
  /* Background variations */
  --bg-light-tan: #F5F1E8;      /* Very light tan background */
  --bg-camo-light: #E8E4D8;     /* Light camo background */
}

/* Primary button and element styling */
.btn-primary,
.bg-primary {
  background-color: #4A5F3A !important;
  border-color: #4A5F3A !important;
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: #3A4F2A !important;
  border-color: #3A4F2A !important;
}

.btn-outline-primary {
  color: #4A5F3A !important;
  border-color: #4A5F3A !important;
}

.btn-outline-primary:hover {
  background-color: #4A5F3A !important;
  border-color: #4A5F3A !important;
  color: #fff !important;
}

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

/* Logo Styling */
.site-logo {
  width: 50px;
  height: 50px;
  transition: transform 0.3s ease;
}

.site-logo:hover {
  transform: scale(1.05);
}

.footer-logo {
  width: 45px;
  height: 45px;
  filter: brightness(1.2);
  transition: transform 0.3s ease, filter 0.3s ease;
}

.footer-logo:hover {
  transform: scale(1.05);
  filter: brightness(1.4);
}

.site-identity {
  line-height: 1.2;
}

.site-identity .h4 {
  font-weight: 700;
  letter-spacing: -0.5px;
}

.site-identity small {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Responsive logo sizes */
@media (max-width: 992px) {
  .site-logo {
    width: 40px;
    height: 40px;
  }
  
  .footer-logo {
    width: 35px;
    height: 35px;
  }
  
  .site-identity .h4 {
    font-size: 1.25rem;
  }
}

@media (max-width: 576px) {
  .site-logo {
    width: 35px;
    height: 35px;
  }
  
  .footer-logo {
    width: 30px;
    height: 30px;
  }
  
  .site-identity .h4 {
    font-size: 1.1rem;
  }
  
  .site-identity small {
    font-size: 0.65rem;
  }
}

.border-primary {
  border-color: #4A5F3A !important;
}

/* Link colors */
a {
  color: #4A5F3A;
}

a:hover {
  color: #3A4F2A;
}

/* Badge colors */
.badge.bg-primary {
  background-color: #4A5F3A !important;
}

/* Alert primary */
.alert-primary {
  background-color: #E8EDE5;
  border-color: #4A5F3A;
  color: #2D3A25;
}

/* Form controls focus */
.form-control:focus,
.form-select:focus {
  border-color: #4A5F3A;
  box-shadow: 0 0 0 0.25rem rgba(74, 95, 58, 0.25);
}

/* Navbar with military theme */
.navbar {
  background: linear-gradient(135deg, #4A5F3A 0%, #3A4F2A 100%);
}

/* Hero sections with camo gradient */
.bg-primary.hero-header,
.container-fluid.bg-primary {
  background: linear-gradient(135deg, #4A5F3A 0%, #556B2F 50%, #3A4F2A 100%) !important;
}

/* Accordion and cards with earth tones */
.accordion-button:not(.collapsed) {
  background-color: #E8EDE5;
  color: #4A5F3A;
}

.accordion-button:focus {
  border-color: #4A5F3A;
  box-shadow: 0 0 0 0.25rem rgba(74, 95, 58, 0.25);
}

/* Progress bars */
.progress-bar {
  background-color: #4A5F3A;
}

/* Pagination */
.page-link {
  color: #4A5F3A;
}

.page-item.active .page-link {
  background-color: #4A5F3A;
  border-color: #4A5F3A;
}

.page-link:hover {
  color: #3A4F2A;
  background-color: #E8EDE5;
}

/* Dropdown menus */
.dropdown-item:hover,
.dropdown-item:focus {
  background-color: #E8EDE5;
  color: #4A5F3A;
}

/* List group */
.list-group-item.active {
  background-color: #4A5F3A;
  border-color: #4A5F3A;
}

/* Breadcrumb */
.breadcrumb-item.active {
  color: #4A5F3A;
}

/* Spinner/Loader */
.spinner-border.text-primary {
  color: #4A5F3A !important;
}

/* Custom hunting theme backgrounds */
.bg-light {
  background-color: #F5F1E8 !important;
}

.bg-camo-pattern {
  background: linear-gradient(135deg, #4A5F3A 25%, transparent 25%) -10px 0,
              linear-gradient(225deg, #4A5F3A 25%, transparent 25%) -10px 0,
              linear-gradient(315deg, #4A5F3A 25%, transparent 25%),
              linear-gradient(45deg, #4A5F3A 25%, transparent 25%);
  background-size: 20px 20px;
  background-color: #8B7355;
}

/* Tan secondary colors */
.btn-secondary,
.bg-secondary {
  background-color: #8B7355 !important;
  border-color: #8B7355 !important;
}

.btn-secondary:hover {
  background-color: #7B6345 !important;
  border-color: #7B6345 !important;
}

.text-secondary {
  color: #8B7355 !important;
}

/* Shadow effects with earth tones */
.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(74, 95, 58, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(74, 95, 58, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(74, 95, 58, 0.175) !important;
}

/* Navigation links in topbar */
.topbar a {
  color: #4A5F3A !important;
}

.topbar a:hover {
  color: #3A4F2A !important;
}

/* Icon colors */
.fa-primary,
.fas.text-primary,
.far.text-primary {
  color: #4A5F3A !important;
}

/* Back to top button */
.back-to-top {
  background-color: #4A5F3A;
  color: #fff;
}

.back-to-top:hover {
  background-color: #3A4F2A;
}

/* Table striped rows */
.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #F5F1E8;
}

/* Carousel indicators */
.carousel-indicators [data-bs-target] {
  background-color: #4A5F3A;
}

/* Toast notifications */
.toast-header {
  background-color: #E8EDE5;
  color: #4A5F3A;
}

/* Modal headers */
.modal-header {
  border-bottom-color: #4A5F3A;
}

/* Offcanvas */
.offcanvas-header {
  background-color: #4A5F3A;
  color: #fff;
}

/* Custom utility classes */
.bg-hunting-green {
  background-color: #4A5F3A !important;
}

.bg-camo-tan {
  background-color: #C9B896 !important;
}

.bg-forest-green {
  background-color: #2D4A2B !important;
}

.text-hunting-green {
  color: #4A5F3A !important;
}

.text-camo-tan {
  color: #8B7355 !important;
}

.border-hunting-green {
  border-color: #4A5F3A !important;
}

/* Logo sizing for header and footer */
.site-logo {
  width: 56px;
  height: auto;
  display: inline-block;
}

@media (max-width: 768px) {
  .site-logo {
    width: 44px;
  }
}

.site-logo-mark {
  width: 48px;
  height: auto;
  display: inline-block;
}

@media (max-width: 768px) {
  .site-logo-mark {
    width: 36px;
  }
}
