[data-theme='amanda'] {
	
	/* Primary */
  --bs-primary: #0C4B5F;
  --bs-primary-dark: #064054;
  --bs-primary-light: #155C75;
    /* white */
  --bs-body-bg: #FFFFFF;  
    /* danger */
  --phoenix-danger-lighter: #EC656C;
  --phoenix-danger-light: #EC656C;
  --phoenix-danger: #E4444D;
  --phoenix-danger-dark: #C53A41;
  --phoenix-danger-darker: #C53A41;	
  --phoenix-danger-text-emphasis: #C53A41;	
    /* success */
  --phoenix-success-lighter: #3CC072;
  --phoenix-success-light: #3CC072;
  --phoenix-success: #2FAB66;
  --phoenix-success-dark: #228A52;
  --phoenix-success-darker: #228A52;	
  --phoenix-success-text-emphasis: #228A52;	
  
  /* Form validation - use danger color for consistency */
  --phoenix-form-invalid-color: var(--phoenix-danger);
  
  --bs-secondary: #FFC107;
  --bs-accent: #0C728F;
  --bs-body-color: #374151;

  --bs-info: #007BC4;
  --bs-success: #2E7D32;
  --bs-warning: #AF6300;
  --bs-danger: #C62828;
  font-family: "Outfit", sans-serif;
  color: var(--bs-body-color);
  
  
  /* link colors */
  --phoenix-link-color-rgb: var(--bs-primary);
  --phoenix-link-hover-color-rgb: var(--bs-primary-light);  
}



a, .text-decoration-none {
	font-weight: bold;
    text-decoration: underline !important;	
}

.btn:hover, .btn-primary {
  --phoenix-btn-bg: var(--bs-primary);
  --phoenix-btn-hover-bg: var(--bs-primary-dark);
  --phoenix-btn-active-bg: var(--bs-primary-light);
  --phoenix-btn-color: var(--bs-body-bg);
}

.btn-outline-secondary {
	border: var(--phoenix-border-width) solid var(--phoenix-border-color);
	--phoenix-btn-hover-border-color: var(--bs-primary-light);
}

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



[data-theme='amanda'] {
  --bs-primary: #0C4B5F;
  --bs-secondary: #FFC107;
  --bs-accent: #0C728F;
  --bs-body-color: #374151;
  --bs-body-bg: #FFFFFF;
  --bs-info: #007BC4;
  --bs-success: #2E7D32;
  --bs-warning: #AF6300;
  --bs-danger: #C62828;
  font-family: "Outfit", sans-serif;
  color: var(--bs-body-color);
}

[data-theme='amanda'] body {
  background-color: var(--bs-body-bg);
}

[data-theme='amanda'] h1,
[data-theme='amanda'] h2,
[data-theme='amanda'] h3,
[data-theme='amanda'] h4,
[data-theme='amanda'] h5,
[data-theme='amanda'] h6 {
  font-family: "Alatsi", sans-serif;
  font-weight: 400;
  color: var(--bs-primary);
}

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

/* Navbar Customizations for Light Theme */
[data-theme='amanda'] {
  /* Vertical Navbar Colors */
  --phoenix-navbar-vertical-bg-color: #FFFFFF !important;
  --phoenix-navbar-vertical-border-color: #E5E7EB;
  --phoenix-navbar-vertical-label-color: #6B7280;
  --phoenix-navbar-vertical-link-color: #374151;
  --phoenix-navbar-vertical-link-hover-bg: #F3F4F6;
  --phoenix-navbar-vertical-link-hover-color: #0C4B5F;
  --phoenix-navbar-vertical-link-active-color: #0C4B5F;
  --phoenix-navbar-vertical-link-active-bg: #E0F2FE;
  --phoenix-navbar-vertical-hr-color: #E5E7EB;
  --phoenix-navbar-vertical-dropdown-indicator-color: #9CA3AF;
  
  /* Top Navbar Colors */
  --phoenix-navbar-top-bg-color: #FFFFFF;
  --phoenix-navbar-top-border-color: #E5E7EB;
  --phoenix-navbar-top-link-color: #374151;
  --phoenix-navbar-top-link-hover-color: #0C4B5F;
  
  /* Navbar Collapse Toggle */
  --phoenix-navbar-vertical-toggle-icon-color: #6B7280;
  --phoenix-navbar-vertical-toggle-hover-color: #0C4B5F;
}

/* Navbar Vertical Custom Styles */
.navbar-vertical {
  background-color: #FFFFFF !important;
}

/* Ensure white background in all cases */
[data-theme='amanda'] .navbar-vertical,
[data-navigation-type="combo"] .navbar-vertical {
  background-color: #FFFFFF !important;
}

.navbar-vertical .navbar-nav .nav-link {
  color: var(--phoenix-navbar-vertical-link-color);
  transition: all 0.2s ease-in-out;
}

.navbar-vertical .navbar-nav .nav-link:hover {
  background-color: var(--phoenix-navbar-vertical-link-hover-bg);
  color: var(--phoenix-navbar-vertical-link-hover-color);
}

.navbar-vertical .navbar-nav .nav-link.active {
  background-color: var(--phoenix-navbar-vertical-link-active-bg);
  color: var(--phoenix-navbar-vertical-link-active-color);
  font-weight: 600;
}

/* Remove filters to show original icon colors */
.navbar-vertical .navbar-nav .nav-link-icon img {
  filter: none;
}

.navbar-vertical .navbar-nav .nav-link:hover .nav-link-icon img,
.navbar-vertical .navbar-nav .nav-link.active .nav-link-icon img {
  filter: none;
  opacity: 0.9;
}

/* Larger Sidebar Menu Items */
.navbar-vertical .navbar-nav {
  padding: 0;
}

.navbar-vertical .navbar-nav .nav-item {
  margin-bottom: 0.5rem;
}

.navbar-vertical .navbar-nav .nav-link {
  padding: 1rem 1rem 1rem 0.5rem; /* Small left padding */
  font-size: 1.25rem; /* 20px */
  font-weight: 700;
  border-radius: 0;
  margin: 0;
  display: flex;
  align-items: center;
  text-decoration: none !important;
}

.navbar-vertical .navbar-nav .nav-link-icon {
  margin-right: 0.75rem;
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.navbar-vertical .navbar-nav .nav-link-text {
  font-weight: 700;
  letter-spacing: 0.025em;
  font-size: 1.25rem; /* 20px */
  line-height: 1.2;
}

/* Adjust hover and active states for larger items */
.navbar-vertical .navbar-nav .nav-link:hover {
  background-color: var(--phoenix-navbar-vertical-link-hover-bg);
}

.navbar-vertical .navbar-nav .nav-link.active {
  font-weight: 900;
  box-shadow: inset 4px 0 0 0 var(--bs-primary);
  background-color: var(--phoenix-navbar-vertical-link-active-bg);
}

/* Icon size adjustment for larger display */
.navbar-vertical .navbar-nav .nav-link-icon img {
  width: 40px;
  height: 40px;
}

/* Remove all padding from navbar content and collapse */
.navbar-vertical-content {
  padding: 0;
  overflow-x: hidden;
  overflow-y: auto;
}

.navbar-vertical .navbar-collapse {
  padding: 0;
  overflow-x: hidden;
}

#navbarVerticalNav {
  padding: 1rem 0;
}

/* Prevent horizontal overflow on navbar */
.navbar-vertical {
  overflow-x: hidden;
}

/* Top Navbar Custom Styles */
.navbar-top {
  background-color: var(--phoenix-navbar-top-bg-color);
}

/* Avatar Styles */
.avatar-name {
  background-color: var(--bs-primary);
  color: white;
  font-weight: 600;
  font-size: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Dropdown Menu Styles */
.dropdown-menu {
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

/* Fix profile dropdown positioning */
.navbar-top .dropdown-menu {
  left: auto !important;
  right: 0;
}

.dropdown-header {
  background-color: #F9FAFB;
  padding: 0.75rem 1.5rem;
}

.dropdown-header-title {
  font-size: 0.875rem;
  font-weight: 600;
  margin-bottom: 0.125rem;
  color: var(--bs-primary);
  text-align: center;
}

.dropdown-header-subtitle {
  font-size: 0.75rem;
  color: #6B7280;
  word-wrap: break-word;
  padding-right: 0.5rem;
  text-align: center;
}

/* Profile Snippet Colors */
.navbar-top .nav-link.dropdown-toggle {
  color: var(--bs-primary) !important;
  text-decoration: none !important;
}

.navbar-top .nav-link.dropdown-toggle:hover,
.navbar-top .nav-link.dropdown-toggle:focus {
  color: var(--bs-primary-light) !important;
}

/* Fix profile snippet alignment - remove avatar bottom margin */
.navbar-top .nav-link.dropdown-toggle .avatar {
  margin-bottom: 0 !important;
}

/* Dropdown items */
.dropdown-item {
  color: var(--bs-primary);
  text-decoration: none !important;
  padding: 0.5rem 1.5rem;
}

.dropdown-item:hover,
.dropdown-item:focus {
  background-color: var(--phoenix-navbar-vertical-link-hover-bg);
  color: var(--bs-primary-light);
  text-decoration: none !important;
}

.dropdown-item i {
  color: var(--bs-primary);
}

.dropdown-item:hover i {
  color: var(--bs-primary-light);
}

/* Navbar Vertical Toggle Button */
.navbar-vertical-toggle {
  color: var(--phoenix-navbar-vertical-toggle-icon-color);
  background-color: transparent;
  padding: 0.5rem 1rem;
  font-size: 0.875rem;
  transition: all 0.2s ease-in-out;
}

.navbar-vertical-toggle:hover {
  color: var(--phoenix-navbar-vertical-toggle-hover-color);
  background-color: var(--phoenix-navbar-vertical-link-hover-bg);
}

/* Mobile Navbar Toggler */
.navbar-toggler {
  border: none;
  padding: 0.25rem 0.5rem;
  margin-right: 0 !important;
}

.navbar-toggler:focus {
  box-shadow: none;
}

/* Content area adjustments */
.content {
  background-color: #F9FAFB;
  min-height: 100vh;
}

/* Navbar Brand Logo adjustments */
.navbar-brand img {
  height: 40px;
  width: auto;
}

.navbar-top .navbar-brand img {
  height: 42px;
}

/* Responsive adjustments */
@media (max-width: 991.98px) {
  .navbar-vertical {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1050;
    height: 100vh;
    transform: translateX(-100%);
    transition: transform 0.3s ease-in-out;
  }
  
  .navbar-vertical.show {
    transform: translateX(0);
  }
  
  .content {
    margin-left: 0;
  }
}

/* Scrollbar styling for vertical navbar */
.navbar-vertical-content.scrollbar {
  scrollbar-width: thin;
  scrollbar-color: #CBD5E0 transparent;
}

.navbar-vertical-content.scrollbar::-webkit-scrollbar {
  width: 6px;
}

.navbar-vertical-content.scrollbar::-webkit-scrollbar-track {
  background: transparent;
}

.navbar-vertical-content.scrollbar::-webkit-scrollbar-thumb {
  background-color: #CBD5E0;
  border-radius: 3px;
}

.navbar-vertical-content.scrollbar::-webkit-scrollbar-thumb:hover {
  background-color: #9CA3AF;
}

/* Combo Navbar Layout with Proper Borders */
[data-navigation-type="combo"] .navbar-top {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1040;
  width: 100%;
  border-bottom: 1px solid var(--phoenix-navbar-top-border-color, #E5E7EB);
}

[data-navigation-type="combo"] .navbar-vertical {
  position: fixed;
  top: var(--phoenix-navbar-top-height, 3.625rem);
  bottom: 0;
  left: 0;
  z-index: 1030;
  width: 15.875rem;
  height: calc(100vh - var(--phoenix-navbar-top-height, 3.625rem));
  border-right: 1px solid var(--phoenix-navbar-vertical-border-color, #E5E7EB);
  border-top: none; /* Remove top border to connect seamlessly */
}

/* Logo positioning in top navbar */
[data-navigation-type="combo"] .navbar-top .navbar-brand {
  padding: 0.5rem 1rem;
  margin: 0;
}

/* Container padding adjustments */
[data-navigation-type="combo"] .navbar-top .container-fluid {
  padding-left: 1rem;
  padding-right: 1rem;
}

/* Content positioning */
[data-navigation-type="combo"] .content {
  margin-top: var(--phoenix-navbar-top-height, 3.625rem);
  margin-left: 15.875rem;
  min-height: calc(100vh - var(--phoenix-navbar-top-height, 3.625rem));
}

/* Profile avatar positioning */
[data-navigation-type="combo"] .navbar-top .navbar-nav-icons {
  height: var(--phoenix-navbar-top-height, 3.625rem);
}

/* When vertical navbar is collapsed */
.navbar-vertical-collapsed[data-navigation-type="combo"] .content {
  margin-left: 4rem;
}

/* Mobile responsive */
@media (max-width: 991.98px) {
  [data-navigation-type="combo"] .navbar-vertical {
    position: fixed;
    top: var(--phoenix-navbar-top-height, 3.625rem);
    left: 0;
    bottom: 0;
    width: 15.875rem;
    z-index: 1035;
    transform: translateX(-100%);
    transition: transform 0.3s ease-in-out;
    background-color: #FFFFFF;
  }
  
  /* Show sidebar when collapse is open */
  [data-navigation-type="combo"] .navbar-vertical .navbar-collapse.show {
    transform: none;
  }
  
  [data-navigation-type="combo"] .navbar-vertical .navbar-collapse.show ~ .navbar-vertical-content,
  [data-navigation-type="combo"] .navbar-vertical .navbar-vertical-content:has(.navbar-collapse.show) {
    transform: translateX(0);
  }
  
  /* Make the entire navbar visible when collapse is shown */
  [data-navigation-type="combo"] .navbar-vertical:has(.navbar-collapse.show) {
    transform: translateX(0);
  }
  
  /* Backdrop for mobile menu */
  .navbar-backdrop {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1034;
    display: none;
  }
  
  .navbar-backdrop.show {
    display: block;
  }
  
  [data-navigation-type="combo"] .content {
    margin-left: 0;
  }
  
  /* Ensure navbar content is scrollable on mobile */
  .navbar-vertical-content {
    height: 100%;
    overflow-y: auto;
  }
}

/* Custom hover effect for feature cards */
.feature-card {
  transition: all 0.3s ease;
  border: 1px solid rgba(0, 0, 0, 0.125);
}

/* Bulk Upload Wizard Styles */
.quantity-input .btn {
  min-height: 44px;
  min-width: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.quantity-input input[type="number"] {
  font-size: 1.5rem;
  font-weight: bold;
  min-height: 44px;
}

/* Remove spinner buttons on number input */
.quantity-input input[type="number"]::-webkit-inner-spin-button,
.quantity-input input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Validation state improvements */
.was-validated .form-control:invalid,
.form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-select:invalid,
.form-select.is-invalid {
  border-color: #dc3545;
}

/* Success state for validated fields */
.was-validated .form-control:valid,
.form-control.is-valid {
  border-color: #198754;
}

/* Mobile optimization for wizard */
@media (max-width: 576px) {
  .nav-wizard .nav-link {
    padding: 0.5rem;
  }
  
  .nav-wizard .nav-item-circle {
    width: 40px;
    height: 40px;
  }
  
  .form-select-lg,
  .form-control-lg {
    min-height: 44px;
    font-size: 1.1rem;
  }
  
  /* Ensure validation feedback is visible on mobile */
  .invalid-feedback {
    font-size: 0.875rem;
    margin-top: 0.25rem;
  }
}

/* Touch-friendly spacing */
.theme-wizard .form-label {
  margin-bottom: 0.75rem;
}

.theme-wizard .mb-4 {
  margin-bottom: 2rem !important;
}

/* Make required asterisks more visible */
.form-label .text-danger {
  font-weight: bold;
}

/* Herd card styles */
.herd-card {
  cursor: pointer;
  transition: all 0.2s ease-in-out;
  border: 2px solid var(--bs-gray-300);
  min-height: 120px;
}

.herd-card:hover {
  border-color: var(--bs-primary);
  box-shadow: 0 0 0 0.1rem rgba(12, 75, 95, 0.1);
}

.herd-card.selected {
  border-color: var(--bs-primary);
  background-color: rgba(12, 75, 95, 0.05);
}

.herd-card .form-check-input {
  margin-top: 0.5rem;
}

.herd-card .card-title {
  color: var(--bs-primary);
}

/* Ensure cards are touch-friendly on mobile */
@media (max-width: 576px) {
  .herd-card {
    min-height: 100px;
  }
  
  .herd-card .card-body {
    padding: 1rem;
  }
}