/* Custom Theme Colors for MenyakaBox */
/* Primary Color: #076044 (Dark Green) */
/* Secondary Color: #252D30 (Dark Gray) */

/* CRITICAL: Override CSS Variables with Maximum Priority */
:root,
[data-bs-theme=light],
html,
body {
  /* Primary Color Variables - Complete Override */
  --bs-primary: #076044 !important;
  --bs-primary-rgb: 7, 96, 68 !important;
  --bs-primary-text-emphasis: #03301f !important;
  --bs-primary-bg-subtle: #cfe8df !important;
  --bs-primary-border-subtle: #9fd1bf !important;

  /* Secondary Color Variables */
  --bs-secondary: #252D30 !important;
  --bs-secondary-rgb: 37, 45, 48 !important;
  --bs-secondary-text-emphasis: #121618 !important;
  --bs-secondary-bg-subtle: #d6d8d9 !important;
  --bs-secondary-border-subtle: #adb1b3 !important;

  /* Success Color (use primary for consistency) */
  --bs-success: #076044 !important;
  --bs-success-rgb: 7, 96, 68 !important;
  --bs-success-text-emphasis: #03301f !important;
  --bs-success-bg-subtle: #cfe8df !important;
  --bs-success-border-subtle: #9fd1bf !important;

  /* Link Colors */
  --bs-link-color: #076044 !important;
  --bs-link-color-rgb: 7, 96, 68 !important;
  --bs-link-hover-color: #055036 !important;
  --bs-link-hover-color-rgb: 5, 80, 54 !important;
}

/* Button Primary Styles - Aggressive Override */
.btn-primary,
.btn.btn-primary,
button.btn-primary,
a.btn-primary,
.btn-primary:not(:disabled):not(.disabled) {
  --bs-btn-color: #fff !important;
  --bs-btn-bg: #076044 !important;
  --bs-btn-border-color: #076044 !important;
  --bs-btn-hover-color: #fff !important;
  --bs-btn-hover-bg: #055036 !important;
  --bs-btn-hover-border-color: #055036 !important;
  --bs-btn-focus-shadow-rgb: 7, 96, 68 !important;
  --bs-btn-active-color: #fff !important;
  --bs-btn-active-bg: #044029 !important;
  --bs-btn-active-border-color: #044029 !important;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
  --bs-btn-disabled-color: #fff !important;
  --bs-btn-disabled-bg: #076044 !important;
  --bs-btn-disabled-border-color: #076044 !important;
  background-color: #076044 !important;
  border-color: #076044 !important;
  color: #fff !important;
}

.btn-primary:hover,
.btn.btn-primary:hover,
button.btn-primary:hover,
a.btn-primary:hover {
  background-color: #055036 !important;
  border-color: #055036 !important;
  color: #fff !important;
}

.btn-primary:focus,
.btn-primary.focus,
.btn.btn-primary:focus {
  background-color: #055036 !important;
  border-color: #055036 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.5) !important;
}

.btn-primary:active,
.btn-primary.active,
.show > .btn-primary.dropdown-toggle,
.btn.btn-primary:active {
  background-color: #044029 !important;
  border-color: #044029 !important;
}

/* Button Success (also use primary color) */
.btn-success,
.btn.btn-success,
button.btn-success,
a.btn-success {
  --bs-btn-bg: #076044 !important;
  --bs-btn-border-color: #076044 !important;
  background-color: #076044 !important;
  border-color: #076044 !important;
}

.btn-success:hover,
.btn.btn-success:hover {
  background-color: #055036 !important;
  border-color: #055036 !important;
}

/* Button Secondary Styles - Aggressive Override */
.btn-secondary,
.btn.btn-secondary,
button.btn-secondary,
a.btn-secondary {
  --bs-btn-bg: #252D30 !important;
  --bs-btn-border-color: #252D30 !important;
  --bs-btn-hover-bg: #1d2326 !important;
  --bs-btn-hover-border-color: #1d2326 !important;
  --bs-btn-active-bg: #16191b !important;
  --bs-btn-active-border-color: #16191b !important;
  --bs-btn-disabled-bg: #252D30 !important;
  --bs-btn-disabled-border-color: #252D30 !important;
  background-color: #252D30 !important;
  border-color: #252D30 !important;
  color: #fff !important;
}

.btn-secondary:hover,
.btn.btn-secondary:hover {
  background-color: #1d2326 !important;
  border-color: #1d2326 !important;
}

/* Badge Primary Styles */
.badge.bg-primary,
.badge-primary,
span.badge.bg-primary {
  background-color: #076044 !important;
  color: #fff !important;
}

.badge.bg-secondary,
.badge-secondary,
span.badge.bg-secondary {
  background-color: #252D30 !important;
  color: #fff !important;
}

.badge.bg-success,
.badge-success,
span.badge.bg-success {
  background-color: #076044 !important;
  color: #fff !important;
}

/* Alert Primary Styles */
.alert-primary {
  --bs-alert-bg: #cfe8df;
  --bs-alert-border-color: #9fd1bf;
  --bs-alert-color: #03301f;
}

.alert-secondary {
  --bs-alert-bg: #d6d8d9;
  --bs-alert-border-color: #adb1b3;
  --bs-alert-color: #121618;
}

/* Background Label Styles */
.bg-label-primary {
  background-color: rgba(7, 96, 68, 0.16) !important;
  color: #076044 !important;
}

.bg-label-secondary {
  background-color: rgba(37, 45, 48, 0.16) !important;
  color: #252D30 !important;
}

/* Text Color Utilities */
.text-primary {
  color: #076044 !important;
}

.text-secondary {
  color: #252D30 !important;
}

.text-success {
  color: #076044 !important;
}

a.text-primary:hover,
a.text-primary:focus {
  color: #055036 !important;
}

/* Border Color Utilities */
.border-primary {
  border-color: #076044 !important;
}

.border-secondary {
  border-color: #252D30 !important;
}

/* Link Styles - Context-aware link colors */
/* Regular content links = BLACK (but not in navigation/menu) */
.card a:not(.btn):not(.nav-link):not(.text-primary),
.content-wrapper a:not(.btn):not(.nav-link):not(.page-link):not(.text-primary),
p a:not(.btn):not(.nav-link):not(.text-primary),
.table a:not(.btn):not(.nav-link):not(.text-primary) {
  color: #2f2b3d;
  text-decoration: none;
}

.card a:not(.btn):not(.nav-link):not(.text-primary):hover,
.content-wrapper a:not(.btn):not(.nav-link):not(.page-link):not(.text-primary):hover,
p a:not(.btn):not(.nav-link):not(.text-primary):hover,
.table a:not(.btn):not(.nav-link):not(.text-primary):hover {
  color: #444050;
  text-decoration: underline;
}

/* Links with .text-primary class = GREEN */
a.text-primary,
.text-primary a {
  color: #076044 !important;
}

a.text-primary:hover,
.text-primary a:hover {
  color: #055036 !important;
}

/* Navigation links inherit from their context (light/dark mode support) */
.navbar a:not(.btn):not(.text-primary),
.menu a:not(.btn):not(.text-primary),
.footer a:not(.btn):not(.text-primary),
.nav-link,
.navbar-nav .nav-link,
.menu-link,
.footer-link {
  color: inherit; /* Let parent context control color */
}

/* Links that should be green (specific cases) */
a.btn-primary,
a.page-link {
  color: #076044 !important;
}

a.btn-primary:hover,
a.page-link:hover {
  color: #055036 !important;
}

/* Form Control Focus */
.form-control:focus,
.form-select:focus {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
}

/* Input Group Focus */
.input-group:focus-within .form-control,
.input-group:focus-within .input-group-text {
  border-color: #076044 !important;
}

/* Form Floating Focus */
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:focus:not(:placeholder-shown) ~ label,
.form-floating > .form-select:focus ~ label,
.form-floating > .form-select:focus:not(:placeholder-shown) ~ label {
  color: #076044 !important;
}

/* Checkbox and Radio Checked State */
.form-check-input:checked {
  background-color: #076044;
  border-color: #076044;
}

/* Progress Bar */
.progress-bar {
  background-color: #076044;
}

/* Pagination Active State */
.page-item.active .page-link {
  background-color: #076044;
  border-color: #076044;
}

.page-link {
  color: #076044;
}

.page-link:hover {
  color: #055036;
}

/* Nav Pills Active State */
.nav-pills .nav-link.active {
  background-color: #076044;
}

/* Dropdown Item Active State */
.dropdown-item.active,
.dropdown-item:active {
  background-color: #076044;
}

/* List Group Item Active State */
.list-group-item.active {
  background-color: #076044;
  border-color: #076044;
}

/* Spinner Primary */
.spinner-border-primary {
  border-color: #076044;
  border-right-color: transparent;
}


/* Additional Strong Overrides */
.bg-primary { background-color: #076044 !important; }
.bg-success { background-color: #076044 !important; }
.btn-outline-primary { color: #076044 !important; border-color: #076044 !important; }
.btn-outline-primary:hover { background-color: #076044 !important; color: #fff !important; }

/* ============================================ */
/* OVERRIDE TEMPLATE DEFAULT PRIMARY COLOR */
/* Replace #7367f0 (purple) with #076044 (green) */
/* Replace rgba(115, 103, 240, ...) with rgba(7, 96, 68, ...) */
/* ============================================ */

/* Override any hardcoded purple references */
[style*="#7367f0"],
[style*="rgb(115, 103, 240)"],
[style*="rgba(115, 103, 240"] {
  color: #076044 !important;
  background-color: #076044 !important;
  border-color: #076044 !important;
}

/* ============================================ */
/* MENU AND NAVIGATION ACTIVE STATES */
/* ============================================ */

/* Menu active states with gradient - Override purple gradients */
.bg-menu-theme.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle),
.layout-wrapper:not(.layout-horizontal) .bg-menu-theme .menu-item.active > .menu-link:not(.menu-toggle) {
  background: linear-gradient(270deg, rgba(7, 96, 68, 0.7) 0%, #076044 100%) !important;
  box-shadow: 0px 2px 6px 0px rgba(7, 96, 68, 0.3) !important;
  color: #fff !important;
}

/* Ensure text inside active menu link is white */
.bg-menu-theme.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle) > div,
.layout-wrapper:not(.layout-horizontal) .bg-menu-theme .menu-item.active > .menu-link:not(.menu-toggle) > div {
  color: #fff !important;
}

/* Reset color for sub-menu text when parent is active */
.bg-menu-theme .menu-item.active .menu-sub .menu-item .menu-link > div {
  color: inherit !important;
}

/* Active sub-menu item text should be green */
.bg-menu-theme .menu-item.active .menu-sub .menu-item.active .menu-link > div {
  color: #076044 !important;
}

.bg-menu-theme.menu-horizontal .menu-inner > .menu-item.active > .menu-link.menu-toggle {
  background: linear-gradient(270deg, rgba(7, 96, 68, 0.7) 0%, #076044 100%) !important;
  color: #fff !important;
  box-shadow: 0px 2px 6px 0px rgba(7, 96, 68, 0.3) !important;
}

/* Menu active link before pseudo-element */
.layout-wrapper:not(.layout-horizontal) .bg-menu-theme .menu-inner > .menu-item.active:before {
  background: #076044 !important;
}

/* Menu link active states */
.menu.bg-primary .menu-vertical .menu-item.active > .menu-link:not(.menu-toggle),
.menu.bg-primary.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle) {
  background: linear-gradient(270deg, rgba(7, 96, 68, 0.7) 0%, #076044 100%) !important;
  box-shadow: 0px 2px 6px 0px rgba(7, 96, 68, 0.3) !important;
  color: #fff !important;
}

.menu.bg-primary.menu-horizontal .menu-inner > .menu-item.active > .menu-link.menu-toggle {
  background: linear-gradient(270deg, rgba(7, 96, 68, 0.7) 0%, #076044 100%) !important;
  color: #fff !important;
  box-shadow: 0px 2px 6px 0px rgba(7, 96, 68, 0.3) !important;
}

/* ============================================ */
/* BOX SHADOWS - Replace purple with green */
/* ============================================ */

.btn-primary.btn[class*=btn-]:not([class*=btn-label-]):not([class*=btn-outline-]):not([class*=btn-text-]):not(.btn-icon):not(:disabled):not(.disabled),
.page-item.active .page-link,
.form-check-input:checked,
.form-check-input[type=checkbox]:indeterminate,
.switch-input:checked ~ .switch-toggle-slider,
.switch-primary.switch .switch-input:checked ~ .switch-toggle-slider,
.progress-bar,
.nav-pills .nav-link.active,
.bs-stepper .step.active .bs-stepper-circle,
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.daterangepicker td.active:not(.off),
.datepicker table tr td.active,
.datepicker table tr td.active.highlighted {
  box-shadow: 0 0.125rem 0.375rem 0 rgba(7, 96, 68, 0.3) !important;
}

/* ============================================ */
/* BACKGROUND COLORS */
/* ============================================ */

/* Navbar with primary background */
.navbar.bg-primary {
  background-color: rgba(7, 96, 68, 0.88) !important;
  color: #cfe8df !important;
}

/* Menu with primary background */
.menu.bg-primary {
  background-color: #076044 !important;
  color: #cfe8df !important;
}

.menu.bg-primary.menu-horizontal {
  background-color: rgba(7, 96, 68, 0.95) !important;
}

/* Footer with primary background */
.footer.bg-primary {
  color: #cfe8df !important;
}

.layout-footer-fixed .layout-horizontal .footer.bg-primary,
.layout-footer-fixed .layout-wrapper:not(.layout-horizontal) .footer.bg-primary .footer-container {
  background-color: #076044 !important;
}

/* ============================================ */
/* HOVER AND FOCUS STATES */
/* ============================================ */

.page-item .page-link:hover,
.page-item .page-link:focus,
.pagination li > a:not(.page-link):hover,
.pagination li > a:not(.page-link):focus {
  background-color: #cfe8df !important;
  color: #076044 !important;
}

/* ============================================ */
/* WAVES EFFECT - Replace purple ripples */
/* ============================================ */

.page-item .page-link.waves-effect .waves-ripple,
.pagination li > a:not(.page-link).waves-effect .waves-ripple,
.btn-label-primary.waves-effect .waves-ripple,
.btn-text-primary.waves-effect .waves-ripple,
.btn-outline-primary.waves-effect .waves-ripple,
.dropdown-item.waves-effect .waves-ripple,
.nav-tabs .nav-link.waves-effect .waves-ripple,
.list-group-item.active.waves-effect .waves-ripple {
  background: radial-gradient(rgba(7, 96, 68, 0.2) 0, rgba(7, 96, 68, 0.3) 40%, rgba(7, 96, 68, 0.4) 50%, rgba(7, 96, 68, 0.5) 60%, rgba(47, 43, 61, 0) 70%) !important;
}

.waves-effect.waves-primary .waves-ripple {
  background: rgba(7, 96, 68, 0.3) !important;
}

/* ============================================ */
/* PAGINATION OUTLINE */
/* ============================================ */

.pagination-outline-primary .page-item.active .page-link,
.pagination-outline-primary .page-item.active .page-link:hover,
.pagination-outline-primary .page-item.active .page-link:focus,
.pagination-outline-primary.pagination li.active > a:not(.page-link),
.pagination-outline-primary.pagination li.active > a:not(.page-link):hover,
.pagination-outline-primary.pagination li.active > a:not(.page-link):focus {
  border-color: #076044 !important;
  color: #076044 !important;
  background-color: #cfe8df !important;
}

/* ============================================ */
/* ALERTS */
/* ============================================ */

.alert-primary {
  background-color: #cfe8df !important;
  border-color: #cfe8df !important;
  color: #076044 !important;
}

.alert-primary .alert-icon {
  background-color: #076044 !important;
}

.alert-outline-primary {
  border-color: #076044 !important;
  color: #076044 !important;
}

.alert-outline-primary .alert-icon {
  color: #076044 !important;
  background-color: #cfe8df !important;
}

.alert-solid-primary {
  background-color: #076044 !important;
  color: #fff !important;
}

/* ============================================ */
/* TOOLTIPS AND POPOVERS */
/* ============================================ */

.tooltip-primary .tooltip-inner,
.tooltip-primary > .tooltip .tooltip-inner,
.ngb-tooltip-primary + ngb-tooltip-window .tooltip-inner {
  background: #076044 !important;
  color: #fff !important;
}

.tooltip-primary.bs-tooltip-auto[data-popper-placement=top] .tooltip-arrow::before,
.tooltip-primary.bs-tooltip-auto[data-popper-placement=left] .tooltip-arrow::before,
.tooltip-primary.bs-tooltip-auto[data-popper-placement=bottom] .tooltip-arrow::before,
.tooltip-primary.bs-tooltip-auto[data-popper-placement=right] .tooltip-arrow::before {
  border-top-color: #076044 !important;
  border-left-color: #076044 !important;
  border-bottom-color: #076044 !important;
  border-right-color: #076044 !important;
}

.popover-primary,
.popover-primary > .popover,
.ngb-popover-primary + ngb-popover-window {
  border-color: transparent !important;
  background: #076044 !important;
}

.popover-primary .popover-header {
  border-color: #076044 !important;
}

.popover-primary.bs-popover-auto[data-popper-placement=top] > .popover-arrow::after,
.popover-primary.bs-popover-auto[data-popper-placement=right] > .popover-arrow::after,
.popover-primary.bs-popover-auto[data-popper-placement=bottom] > .popover-arrow::after,
.popover-primary.bs-popover-auto[data-popper-placement=left] > .popover-arrow::after {
  border-top-color: #076044 !important;
  border-right-color: #076044 !important;
  border-bottom-color: #076044 !important;
  border-left-color: #076044 !important;
}

/* ============================================ */
/* TABLES */
/* ============================================ */

.table-primary {
  --bs-table-bg: #cfe8df !important;
  --bs-table-striped-bg: #c5dfd5 !important;
  --bs-table-active-bg: #bbd6cb !important;
  --bs-table-hover-bg: #c5dfd5 !important;
  color: #03301f !important;
  border-color: #9fd1bf !important;
}

/* ============================================ */
/* LIST GROUP */
/* ============================================ */

.list-group-item-primary {
  border-color: #076044 !important;
  background-color: #cfe8df !important;
  color: #076044 !important;
}

a.list-group-item-primary:hover,
a.list-group-item-primary:focus,
button.list-group-item-primary:hover,
button.list-group-item-primary:focus {
  border-color: #076044 !important;
  background-color: #bbd6cb !important;
  color: #076044 !important;
}

a.list-group-item-primary.active,
button.list-group-item-primary.active {
  border-color: #076044 !important;
  background-color: #076044 !important;
  color: #fff !important;
}

.list-group-item.active {
  background-color: #cfe8df !important;
  color: #076044 !important;
}

.list-group.list-group-timeline .list-group-timeline-primary:before {
  border-color: #076044 !important;
  background-color: #076044 !important;
}

/* ============================================ */
/* CAROUSEL */
/* ============================================ */

.modal-onboarding .carousel-indicators [data-bs-target] {
  background-color: #076044 !important;
}

.carousel-control-prev,
.carousel-control-next {
  color: #076044 !important;
}

.carousel-control-prev:hover,
.carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #076044 !important;
}

/* ============================================ */
/* DROPDOWN NOTIFICATIONS */
/* ============================================ */

.dropdown-notifications-item:not(.mark-as-read) .dropdown-notifications-read span {
  background-color: #076044 !important;
}

/* ============================================ */
/* GRADIENT BACKGROUNDS */
/* ============================================ */

.bg-gradient-primary {
  background-image: linear-gradient(45deg, #076044, #0a9366) !important;
}

/* ============================================ */
/* GLOW EFFECTS */
/* ============================================ */

.bg-primary.bg-glow {
  box-shadow: 0px 2px 3px 0px rgba(7, 96, 68, 0.3) !important;
}

/* ============================================ */
/* NAV TABS AND PILLS */
/* ============================================ */

.nav-tabs .nav-link.active,
.nav-tabs .nav-link.active:hover,
.nav-tabs .nav-link.active:focus {
  box-shadow: 0 -2px 0 #076044 inset !important;
}

.nav-align-bottom .nav-tabs .nav-link.active,
.nav-align-bottom .nav-tabs .nav-link.active:hover,
.nav-align-bottom .nav-tabs .nav-link.active:focus {
  box-shadow: 0 2px 0 #076044 inset !important;
}

.nav-align-left .nav-tabs .nav-link.active,
.nav-align-left .nav-tabs .nav-link.active:hover,
.nav-align-left .nav-tabs .nav-link.active:focus {
  box-shadow: -2px 0px 0 #076044 inset !important;
}

.nav-align-right .nav-tabs .nav-link.active,
.nav-align-right .nav-tabs .nav-link.active:hover,
.nav-align-right .nav-tabs .nav-link.active:focus {
  box-shadow: 2px 0px 0 #076044 inset !important;
}

/* ============================================ */
/* CUSTOM OPTIONS */
/* ============================================ */

.custom-option.checked {
  border: 2px solid #076044 !important;
}

.custom-option.checked .custom-option-body i,
.custom-option.checked .custom-option-header i {
  color: #076044 !important;
}

.custom-option.custom-option-label.checked {
  background-color: rgba(7, 96, 68, 0.12) !important;
  color: #076044 !important;
}

.custom-option.custom-option-label.checked .custom-option-header span,
.custom-option.custom-option-label.checked .custom-option-title {
  color: #076044 !important;
}

/* ============================================ */
/* TIMELINE */
/* ============================================ */

.timeline .timeline-point-primary {
  background-color: #076044 !important;
  outline: 3px solid rgba(7, 96, 68, 0.12) !important;
}

.timeline.timeline-outline .timeline-point-primary {
  border: 2px solid #076044 !important;
}

.timeline .timeline-indicator-primary {
  background-color: #cfe8df !important;
}

.timeline .timeline-indicator-primary i {
  color: #076044 !important;
}

/* ============================================ */
/* DIVIDERS */
/* ============================================ */

.divider.divider-primary.divider-vertical:before,
.divider.divider-primary.divider-vertical:after,
.divider.divider-primary .divider-text:before,
.divider.divider-primary .divider-text:after {
  border-color: #076044 !important;
}

/* ============================================ */
/* FORM FLOATING LABELS */
/* ============================================ */

.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:focus:not(:placeholder-shown) ~ label,
.form-floating > .form-select:focus ~ label,
.form-floating > .form-select:focus:not(:placeholder-shown) ~ label {
  color: #076044 !important;
}

/* ============================================ */
/* JSTREE */
/* ============================================ */

.jstree-default .jstree-wholerow-hovered,
.jstree-default .jstree-hovered,
.jstree-default-dark .jstree-wholerow-hovered,
.jstree-default-dark .jstree-hovered {
  background: rgba(7, 96, 68, 0.16) !important;
  color: #076044 !important;
}

.jstree-default .jstree-wholerow-clicked,
.jstree-default .jstree-clicked,
.jstree-default-dark .jstree-wholerow-clicked,
.jstree-default-dark .jstree-clicked {
  background: #076044 !important;
  color: #fff !important;
}

/* ============================================ */
/* CARDS */
/* ============================================ */

.card.card-border-shadow-primary::after {
  border-bottom-color: #9fd1bf !important;
}

.card.card-border-shadow-primary:hover::after {
  border-bottom-color: #076044 !important;
}

.card.card-hover-border-primary:hover,
.card .card-hover-border-primary:hover {
  border-color: #9fd1bf !important;
}

/* ============================================ */
/* LINKS - Context-aware (respects dark mode) */
/* ============================================ */

/* Content links = BLACK (only in content areas) */
.card a:not(.btn):not(.nav-link):not(.text-primary),
.content-wrapper a:not(.btn):not(.nav-link):not(.page-link):not(.text-primary),
p a:not(.btn):not(.nav-link):not(.text-primary),
.table a:not(.btn):not(.nav-link):not(.text-primary) {
  color: #2f2b3d !important;
  text-decoration: none;
}

.card a:not(.btn):not(.nav-link):not(.text-primary):hover,
.content-wrapper a:not(.btn):not(.nav-link):not(.page-link):not(.text-primary):hover,
p a:not(.btn):not(.nav-link):not(.text-primary):hover,
.table a:not(.btn):not(.nav-link):not(.text-primary):hover {
  color: #444050 !important;
  text-decoration: underline;
}

/* Navigation/Menu links = INHERIT from context */
.navbar a:not(.btn):not(.text-primary),
.menu a:not(.btn):not(.text-primary),
.footer a:not(.btn):not(.text-primary),
.nav-link,
.navbar-nav .nav-link,
.menu-link,
.footer-link {
  color: inherit !important; /* Respects light/dark mode */
}

/* Links with .text-primary explicitly = GREEN */
a.text-primary,
.text-primary a {
  color: #076044 !important;
}

a.text-primary:hover,
.text-primary a:hover {
  color: #055036 !important;
}

/* Component-specific links that need green */
a.page-link {
  color: #076044 !important;
}

a.page-link:hover {
  color: #055036 !important;
}

.text-body[href]:hover,
.text-heading[href]:hover {
  color: #055036 !important;
}

/* ============================================ */
/* SVG FILL */
/* ============================================ */

.fill-primary,
.svg-illustration svg {
  fill: #076044 !important;
}

/* ============================================ */
/* NOUISLIDER */
/* ============================================ */

.noUi-target:not([disabled]) {
  background: rgba(7, 96, 68, 0.16) !important;
}

.noUi-target:not([disabled]) .noUi-connect {
  background: #076044 !important;
}

.noUi-target:not([disabled]) .noUi-handle {
  border-color: #076044 !important;
}

.noUi-target:not([disabled]) .noUi-handle:hover {
  box-shadow: 0 0 0 8px rgba(7, 96, 68, 0.16) !important;
}

.noUi-target:not([disabled]) .noUi-handle:active,
.noUi-target:not([disabled]) .noUi-handle:focus {
  box-shadow: 0 0 0 13px rgba(7, 96, 68, 0.16) !important;
}

/* ============================================ */
/* TYPEAHEAD */
/* ============================================ */

.tt-suggestion:active,
.tt-cursor {
  background: #076044 !important;
  color: #fff !important;
}

/* ============================================ */
/* SWIPER */
/* ============================================ */

.swiper-pagination-bullet.swiper-pagination-bullet-active,
.swiper-pagination.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #076044 !important;
}

/* ============================================ */
/* SPINKIT */
/* ============================================ */

.sk-primary.sk-plane,
.sk-primary .sk-chase-dot:before,
.sk-primary .sk-bounce-dot,
.sk-primary .sk-wave-rect,
.sk-primary.sk-pulse,
.sk-primary .sk-swing-dot,
.sk-primary .sk-circle-dot:before,
.sk-primary .sk-circle-fade-dot:before,
.sk-primary .sk-grid-cube,
.sk-primary .sk-fold-cube:before {
  background-color: #076044 !important;
}

/* ============================================ */
/* PLYR VIDEO PLAYER */
/* ============================================ */

.plyr input[type=range]::-ms-fill-lower,
.plyr input[type=range]:active::-webkit-slider-thumb,
.plyr input[type=range]:active::-moz-range-thumb,
.plyr input[type=range]:active::-ms-thumb {
  background: #076044 !important;
}

.plyr--video .plyr__control.plyr__control--overlaid,
.plyr--video .plyr__controls button.tab-focus:focus,
.plyr--video .plyr__control[aria-expanded=true],
.plyr--video .plyr__controls button:hover,
.plyr--audio .plyr__controls button.tab-focus:focus,
.plyr--audio .plyr__control[aria-expanded=true],
.plyr--audio .plyr__controls button:hover,
.plyr__play-large {
  background: #076044 !important;
  color: #fff !important;
}

.plyr__progress--played,
.plyr__volume--display,
.plyr--full-ui input[type=range] {
  color: #076044 !important;
}

.plyr__menu__container .plyr__control[role=menuitemradio][aria-checked=true]::before {
  background: #076044 !important;
}

/* ============================================ */
/* FULLCALENDAR */
/* ============================================ */

.fc .fc-event-primary:not(.fc-list-event) {
  background-color: #cfe8df !important;
  color: #076044 !important;
}

.fc .fc-event-primary.fc-list-event .fc-list-event-dot {
  border-color: #076044 !important;
}

.fc .fc-button-primary:not(.fc-prev-button):not(.fc-next-button) {
  background-color: rgba(7, 96, 68, 0.16) !important;
  border: 0 !important;
  color: #076044 !important;
}

.fc .fc-button-primary:not(.fc-prev-button):not(.fc-next-button).fc-button-active,
.fc .fc-button-primary:not(.fc-prev-button):not(.fc-next-button):hover {
  background-color: rgba(7, 96, 68, 0.24) !important;
  color: #076044 !important;
}

/* ============================================ */
/* SWEETALERT2 */
/* ============================================ */

.swal2-progress-steps[class] .swal2-progress-step.swal2-active-progress-step,
.swal2-progress-steps[class] .swal2-progress-step-line,
.swal2-progress-steps[class] .swal2-active-progress-step,
.swal2-progress-steps[class] .swal2-progress-step {
  background: #076044 !important;
  color: #fff !important;
}

.swal2-progress-steps[class] .swal2-progress-step.swal2-active-progress-step ~ .swal2-progress-step,
.swal2-progress-steps[class] .swal2-progress-step.swal2-active-progress-step ~ .swal2-progress-step-line {
  background: #cfe8df !important;
}

/* ============================================ */
/* PICKR COLOR PICKER */
/* ============================================ */

.pcr-app .pcr-type.active,
.pcr-app .pcr-save {
  background: #076044 !important;
}

/* ============================================ */
/* ICON CARD */
/* ============================================ */

.icon-card.active {
  outline: 1px solid #076044 !important;
}

.icon-card.active i,
.icon-card.active svg {
  color: #076044 !important;
}

/* ============================================ */
/* CHAT APP */
/* ============================================ */

.app-chat .sidebar-body .chat-contact-list li.active {
  background: #076044 !important;
}

.app-chat .app-chat-history .chat-history .chat-message.chat-message-right .chat-message-text {
  background-color: #076044 !important;
}

/* ============================================ */
/* LANDING NAVBAR */
/* ============================================ */

.navbar.landing-navbar .navbar-nav .show > .nav-link,
.navbar.landing-navbar .navbar-nav .active > .nav-link,
.navbar.landing-navbar .navbar-nav .nav-link.show,
.navbar.landing-navbar .navbar-nav .nav-link.active,
.navbar.landing-navbar .navbar-nav .nav-link:hover {
  color: #076044 !important;
}

.navbar.landing-navbar .navbar-nav .show > .nav-link i,
.navbar.landing-navbar .navbar-nav .active > .nav-link i,
.navbar.landing-navbar .navbar-nav .nav-link.show i,
.navbar.landing-navbar .navbar-nav .nav-link.active i,
.navbar.landing-navbar .navbar-nav .nav-link:hover i {
  color: #076044 !important;
}

/* ============================================ */
/* LANDING FEATURES */
/* ============================================ */

.landing-features .features-icon-wrapper .features-icon-box .features-icon {
  border: 2px solid rgba(7, 96, 68, 0.2) !important;
}

.landing-features .features-icon-wrapper .features-icon-box:hover .features-icon {
  background-color: rgba(7, 96, 68, 0.05) !important;
}

/* ============================================ */
/* FOOTER THEME */
/* ============================================ */

.bg-footer-theme {
  color: #076044 !important;
}

.bg-footer-theme .footer-link,
.bg-footer-theme .footer-text,
.bg-footer-theme .show > .footer-link,
.bg-footer-theme .active > .footer-link,
.bg-footer-theme .footer-link.show,
.bg-footer-theme .footer-link.active {
  color: #076044 !important;
}

.bg-footer-theme .footer-link:hover,
.bg-footer-theme .footer-link:focus {
  color: #076044 !important;
}

/* ============================================ */
/* HORIZONTAL MENU ACTIVE STATE */
/* ============================================ */

.bg-menu-theme.menu-horizontal .menu-item.active > .menu-link:not(.menu-toggle) {
  background: #cfe8df !important;
  color: #076044 !important;
}

/* ============================================ */
/* MENU INNER SHADOW */
/* ============================================ */

.bg-menu-theme .menu-inner-shadow {
  background: linear-gradient(#fff 41%, rgba(255, 255, 255, 0.11) 95%, rgba(255, 255, 255, 0)) !important;
}

.menu.bg-primary .menu-inner-shadow {
  background: linear-gradient(#076044 41%, rgba(7, 96, 68, 0.11) 95%, rgba(7, 96, 68, 0)) !important;
}


/* Chart and Graph Colors */
.apexcharts-bar-area[fill="#7367f0"],
.apexcharts-area-series[fill="#7367f0"],
.apexcharts-line-series[stroke="#7367f0"] {
  fill: #076044 !important;
  stroke: #076044 !important;
}

/* Card and Component Styles */
.card-header.bg-primary,
.card.bg-primary,
.modal-header.bg-primary {
  background-color: #076044 !important;
}

/* Menu and Navigation */
.menu-link.active,
.menu-item.active > .menu-link {
  background-color: rgba(7, 96, 68, 0.12) !important;
  color: #076044 !important;
}

.menu-link.active:before,
.menu-item.active > .menu-link:before {
  background: #076044 !important;
}

/* Sidebar Active State */
.layout-menu .menu-link.active,
.layout-menu .menu-item.active > .menu-link {
  background-color: rgba(7, 96, 68, 0.08) !important;
  color: #076044 !important;
}

/* Nav Tabs */
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #076044 !important;
  border-color: transparent transparent #076044 !important;
}

/* Switches and Toggles */
.form-switch .form-check-input:checked,
.form-check-input:checked[type="checkbox"] {
  background-color: #076044 !important;
  border-color: #076044 !important;
}

/* Custom Checkboxes */
.form-check-input:checked {
  background-color: #076044 !important;
  border-color: #076044 !important;
}

/* Radio Buttons */
.form-check-input:checked[type="radio"] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23076044'/%3e%3c/svg%3e") !important;
  background-color: #fff !important;
  border-color: #076044 !important;
}

/* Range Sliders */
input[type="range"]::-webkit-slider-thumb {
  background: #076044 !important;
}

input[type="range"]::-moz-range-thumb {
  background: #076044 !important;
}

input[type="range"]::-webkit-slider-runnable-track {
  background: linear-gradient(to right, #076044 0%, #076044 var(--range-progress, 0%), #e9ecef var(--range-progress, 0%), #e9ecef 100%) !important;
}

/* Bootstrap Select */
.bootstrap-select .dropdown-toggle:focus,
.bootstrap-select > .dropdown-toggle.bs-placeholder:focus {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
}

.bootstrap-select .dropdown-menu li.selected a {
  background-color: #076044 !important;
  color: #fff !important;
}

/* Flatpickr Date Picker */
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
  background: #076044 !important;
  border-color: #076044 !important;
}

.flatpickr-months .flatpickr-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg,
.flatpickr-months .flatpickr-prev-month:hover svg {
  fill: #076044 !important;
}

/* Select2 Dropdown */
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable,
.select2-container--default .select2-results__option--selected {
  background-color: #076044 !important;
}

.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default .select2-selection--multiple:focus {
  border-color: #076044 !important;
}

/* DataTables */
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: #076044 !important;
  border-color: #076044 !important;
  color: #fff !important;
}

table.dataTable tbody tr.selected {
  background-color: rgba(7, 96, 68, 0.12) !important;
}

div.dt-button-info {
  background-color: #076044 !important;
}

/* Sweet Alert 2 */
.swal2-styled.swal2-confirm {
  background-color: #076044 !important;
  border-color: #076044 !important;
}

.swal2-styled.swal2-confirm:focus {
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.5) !important;
}

/* Toastr Notifications */
.toast-success {
  background-color: #076044 !important;
}

/* Bootstrap Stepper */
.bs-stepper-header .step.active .bs-stepper-circle,
.bs-stepper .line.active {
  background-color: #076044 !important;
  border-color: #076044 !important;
}

.bs-stepper-header .step.crossed .bs-stepper-circle {
  background-color: #076044 !important;
}

/* Dropzone */
.dropzone {
  border-color: rgba(7, 96, 68, 0.3) !important;
}

.dropzone:hover {
  border-color: #076044 !important;
}

/* Quill Editor */
.ql-snow .ql-stroke.ql-fill,
.ql-snow .ql-fill,
.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,
.ql-snow.ql-toolbar button:hover .ql-fill,
.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,
.ql-snow.ql-toolbar button.ql-active .ql-fill {
  fill: #076044 !important;
}

.ql-snow .ql-stroke,
.ql-snow.ql-toolbar button:hover .ql-stroke,
.ql-snow.ql-toolbar button.ql-active .ql-stroke {
  stroke: #076044 !important;
}

/* Tagify */
.tagify__tag {
  background-color: rgba(7, 96, 68, 0.12) !important;
  color: #076044 !important;
}

.tagify__tag:hover {
  background-color: rgba(7, 96, 68, 0.2) !important;
}

/* Perfect Scrollbar */
.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
  background-color: #076044 !important;
}

/* Timeline */
.timeline .timeline-indicator-primary {
  background-color: #076044 !important;
  border-color: #076044 !important;
}

/* ============================================ */
/* ADDITIONAL THEME-DEFAULT.CSS OVERRIDES */
/* Override ALL remaining #7367f0 references */
/* ============================================ */

/* Text and Heading Links */
.text-body[href]:hover,
.text-heading[href]:hover {
  color: #055036 !important;
}

/* Dropdown Active States */
.dropdown-item:not(.disabled).active,
.dropdown-item:not(.disabled):active {
  background-color: #cfe8df !important;
  color: #076044 !important;
}

.dropdown-menu > li:not(.disabled) > a:not(.dropdown-item):active,
.dropdown-menu > li.active:not(.disabled) > a:not(.dropdown-item) {
  background-color: #cfe8df !important;
  color: #076044 !important;
}

/* Button Groups */
.btn-group .btn-primary,
.input-group .btn-primary {
  border-right: var(--bs-border-width) solid #055036 !important;
  border-left: var(--bs-border-width) solid #055036 !important;
}

.btn-group-vertical .btn-primary {
  border-top-color: #055036 !important;
  border-bottom-color: #055036 !important;
}

/* Button Label Primary */
.btn-label-primary {
  color: #076044 !important;
  border-color: transparent !important;
  background: rgba(7, 96, 68, 0.12) !important;
}

.btn-label-primary:hover {
  border-color: transparent !important;
  background: rgba(7, 96, 68, 0.16) !important;
  color: #076044 !important;
}

.btn-label-primary:focus,
.btn-label-primary.focus,
.btn-label-primary:active,
.btn-label-primary.active {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.16) !important;
  border-color: transparent !important;
}

.btn-group .btn-label-primary,
.input-group .btn-label-primary {
  border-right: var(--bs-border-width) solid rgba(7, 96, 68, 0.2) !important;
  border-left: var(--bs-border-width) solid rgba(7, 96, 68, 0.2) !important;
}

.btn-group-vertical .btn-label-primary {
  border-top: var(--bs-border-width) solid rgba(7, 96, 68, 0.2) !important;
  border-bottom: var(--bs-border-width) solid rgba(7, 96, 68, 0.2) !important;
}

/* Button Text Primary */
.btn-text-primary {
  color: #076044 !important;
}

.btn-text-primary:hover,
.btn-text-primary:focus,
.btn-text-primary.focus {
  border-color: transparent !important;
  background: rgba(7, 96, 68, 0.08) !important;
  color: #076044 !important;
}

.btn-text-primary:active,
.btn-text-primary.active {
  color: #076044 !important;
  background: rgba(7, 96, 68, 0.08) !important;
  border-color: transparent !important;
}

.btn-group .btn-text-primary,
.input-group .btn-text-primary {
  border-right: var(--bs-border-width) solid #076044 !important;
  border-left: var(--bs-border-width) solid #076044 !important;
}

.btn-group-vertical .btn-text-primary {
  border-top: var(--bs-border-width) solid #076044 !important;
  border-bottom: var(--bs-border-width) solid #076044 !important;
}

/* Button Outline Primary */
.btn-outline-primary {
  color: #076044 !important;
  border-color: #076044 !important;
  background: transparent !important;
}

.btn-outline-primary:hover {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.08) !important;
  border-color: #076044 !important;
}

.btn-check:focus + .btn-outline-primary,
.btn-outline-primary:focus {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.08) !important;
  border-color: #076044 !important;
}

.btn-check:checked + .btn-outline-primary,
.btn-check:active + .btn-outline-primary,
.btn-outline-primary:active,
.btn-outline-primary.active,
.btn-outline-primary.dropdown-toggle.show {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.08) !important;
  border-color: #076044 !important;
}

.btn-outline-primary .badge {
  background: #076044 !important;
  border-color: #076044 !important;
  color: #fff !important;
}

/* Navbar with Primary Background */
.navbar.bg-primary {
  background-color: rgba(7, 96, 68, 0.88) !important;
  color: #cfe8df !important;
}

.navbar.bg-primary .navbar-brand,
.navbar.bg-primary .navbar-brand a {
  color: #fff !important;
}

.navbar.bg-primary .navbar-brand:hover,
.navbar.bg-primary .navbar-brand:focus,
.navbar.bg-primary .navbar-brand a:hover,
.navbar.bg-primary .navbar-brand a:focus {
  color: #fff !important;
}

.navbar.bg-primary .navbar-search-wrapper .navbar-search-icon,
.navbar.bg-primary .navbar-search-wrapper .search-input {
  color: #cfe8df !important;
}

.navbar.bg-primary .search-input-wrapper .search-input,
.navbar.bg-primary .search-input-wrapper .search-toggler {
  background-color: #076044 !important;
  color: #cfe8df !important;
}

.navbar.bg-primary .navbar-nav > .nav-link,
.navbar.bg-primary .navbar-nav > .nav-item > .nav-link,
.navbar.bg-primary .navbar-nav > .nav > .nav-item > .nav-link {
  color: #cfe8df !important;
}

.navbar.bg-primary .navbar-nav > .nav-link:hover,
.navbar.bg-primary .navbar-nav > .nav-link:focus,
.navbar.bg-primary .navbar-nav > .nav-item > .nav-link:hover,
.navbar.bg-primary .navbar-nav > .nav-item > .nav-link:focus,
.navbar.bg-primary .navbar-nav > .nav > .nav-item > .nav-link:hover,
.navbar.bg-primary .navbar-nav > .nav > .nav-item > .nav-link:focus {
  color: #fff !important;
}

.navbar.bg-primary .navbar-nav > .nav-link.disabled,
.navbar.bg-primary .navbar-nav > .nav-item > .nav-link.disabled,
.navbar.bg-primary .navbar-nav > .nav > .nav-item > .nav-link.disabled {
  color: rgba(207, 232, 223, 0.6) !important;
}

.navbar.bg-primary .navbar-nav .show > .nav-link,
.navbar.bg-primary .navbar-nav .active > .nav-link,
.navbar.bg-primary .navbar-nav .nav-link.show,
.navbar.bg-primary .navbar-nav .nav-link.active {
  color: #fff !important;
}

.navbar.bg-primary .navbar-toggler {
  color: #cfe8df !important;
  border-color: rgba(255, 255, 255, 0.15) !important;
}

.navbar.bg-primary .navbar-text {
  color: #cfe8df !important;
}

.navbar.bg-primary .navbar-text a {
  color: #fff !important;
}

.navbar.bg-primary .navbar-text a:hover,
.navbar.bg-primary .navbar-text a:focus {
  color: #fff !important;
}

.navbar.bg-primary hr {
  border-color: rgba(255, 255, 255, 0.15) !important;
}

/* Menu with Primary Background */
.menu.bg-primary {
  background-color: #076044 !important;
  color: #cfe8df !important;
}

.menu.bg-primary.menu-horizontal {
  background-color: rgba(7, 96, 68, 0.95) !important;
}

.menu.bg-primary .menu-link,
.menu.bg-primary .menu-horizontal-prev,
.menu.bg-primary .menu-horizontal-next {
  color: #cfe8df !important;
}

.menu.bg-primary .menu-link:hover,
.menu.bg-primary .menu-link:focus,
.menu.bg-primary .menu-horizontal-prev:hover,
.menu.bg-primary .menu-horizontal-prev:focus,
.menu.bg-primary .menu-horizontal-next:hover,
.menu.bg-primary .menu-horizontal-next:focus {
  color: #fff !important;
}

.menu.bg-primary .menu-link.active,
.menu.bg-primary .menu-horizontal-prev.active,
.menu.bg-primary .menu-horizontal-next.active {
  color: #fff !important;
}

.menu.bg-primary .menu-toggle::after {
  color: #cfe8df !important;
}

.menu.bg-primary .menu-item.disabled .menu-link,
.menu.bg-primary .menu-horizontal-prev.disabled,
.menu.bg-primary .menu-horizontal-next.disabled {
  color: rgba(207, 232, 223, 0.6) !important;
}

.menu.bg-primary .menu-item.open:not(.menu-item-closing) > .menu-toggle,
.menu.bg-primary .menu-item.active > .menu-link {
  color: #fff !important;
}

.menu.bg-primary.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle) {
  background: linear-gradient(270deg, rgba(7, 96, 68, 0.7) 0%, #076044 100%) !important;
  box-shadow: 0px 2px 6px 0px rgba(7, 96, 68, 0.3) !important;
  color: #fff !important;
}

.menu.bg-primary.menu-horizontal .menu-inner > .menu-item.active > .menu-link.menu-toggle {
  background: linear-gradient(270deg, rgba(7, 96, 68, 0.7) 0%, #076044 100%) !important;
  color: #fff !important;
  box-shadow: 0px 2px 6px 0px rgba(7, 96, 68, 0.3) !important;
}

.menu.bg-primary.menu-horizontal .menu-inner .menu-item:not(.menu-item-closing) > .menu-sub,
.menu.bg-primary.menu-horizontal .menu-inner .menu-item.open > .menu-toggle {
  background: #076044 !important;
}

.menu.bg-primary.menu-horizontal .menu-item.active > .menu-link:not(.menu-toggle) {
  background: #055036 !important;
  color: #076044 !important;
}

.menu.bg-primary .menu-inner > .menu-item.menu-item-closing .menu-item.open .menu-sub,
.menu.bg-primary .menu-inner > .menu-item.menu-item-closing .menu-item.open .menu-toggle {
  background: transparent !important;
  color: #fff !important;
}

.menu.bg-primary .menu-text {
  color: #fff !important;
}

.menu.bg-primary .menu-header {
  color: rgba(207, 232, 223, 0.7) !important;
}

.menu.bg-primary hr,
.menu.bg-primary .menu-divider,
.menu.bg-primary .menu-inner > .menu-item.open > .menu-sub::before {
  border-color: rgba(255, 255, 255, 0.15) !important;
}

.menu.bg-primary .menu-block::before {
  background-color: rgba(207, 232, 223, 0.7) !important;
}

.menu.bg-primary .ps__thumb-y,
.menu.bg-primary .ps__rail-y.ps--clicking > .ps__thumb-y {
  background: rgba(255, 255, 255, 0.6) !important;
}

/* Footer with Primary Background */
.footer.bg-primary {
  color: #cfe8df !important;
}

.layout-footer-fixed .layout-horizontal .footer.bg-primary {
  background-color: #076044 !important;
}

.layout-footer-fixed .layout-wrapper:not(.layout-horizontal) .footer.bg-primary .footer-container {
  background-color: #076044 !important;
}

.footer.bg-primary .footer-link {
  color: #cfe8df !important;
}

.footer.bg-primary .footer-link:hover,
.footer.bg-primary .footer-link:focus {
  color: #fff !important;
}

.footer.bg-primary .footer-link.disabled {
  color: rgba(207, 232, 223, 0.6) !important;
}

.footer.bg-primary .footer-text {
  color: #fff !important;
}

.footer.bg-primary .show > .footer-link,
.footer.bg-primary .active > .footer-link,
.footer.bg-primary .footer-link.show,
.footer.bg-primary .footer-link.active {
  color: #fff !important;
}

.footer.bg-primary hr {
  border-color: rgba(255, 255, 255, 0.15) !important;
}

/* Select2 */
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #076044 !important;
  color: #fff !important;
}

.select2-container--default.select2-container--focus .select2-selection,
.select2-container--default.select2-container--open .select2-selection {
  border-width: 2px !important;
  border-color: #076044 !important;
}

.select2-primary .select2-container--default .select2-selection--multiple .select2-selection__choice {
  background: rgba(7, 96, 68, 0.16) !important;
  color: #076044 !important;
}

/* Tagify */
.tagify--focus {
  border-color: #076044 !important;
}

.tagify__dropdown__item--active {
  background: #076044 !important;
}

/* DataTable */
table.dataTable.dtr-column > tbody > tr > td.control:before,
table.dataTable.dtr-column > tbody > tr > th.control:before {
  background-color: #076044 !important;
  border: 2px solid #fff !important;
  box-shadow: 0 0 3px rgba(47, 43, 61, 0.8) !important;
}

/* Bootstrap Select */
.bootstrap-select .dropdown-menu.inner a[aria-selected=true] {
  background: #076044 !important;
  color: #fff !important;
}

.bootstrap-select .dropdown-toggle.show {
  border-color: #076044 !important;
}

/* Datepicker */
.datepicker table tr td.active,
.datepicker table tr td.active.highlighted,
.datepicker table tr td .focused,
.datepicker table tr td span.active,
.datepicker table tr td span.active.disabled,
.datepicker table tr td.range-start,
.datepicker table tr td.range-end {
  background: #076044 !important;
  color: #fff !important;
  box-shadow: 0 0.125rem 0.375rem 0 rgba(7, 96, 68, 0.3) !important;
}

.datepicker table tr td.range,
.datepicker table tr td.range.highlighted,
.datepicker table tr td.range.today {
  color: #076044 !important;
  background: rgba(7, 96, 68, 0.12) !important;
}

.datepicker table tr td.range.focused,
.datepicker table tr td.range.highlighted.focused,
.datepicker table tr td.range.today.focused {
  background: rgba(7, 96, 68, 0.16) !important;
}

.datepicker table tr td.range.disabled,
.datepicker table tr td.range.highlighted.disabled,
.datepicker table tr td.range.today.disabled {
  background: rgba(7, 96, 68, 0.06) !important;
  color: rgba(7, 96, 68, 0.5) !important;
}

.datepicker table tr td.today:not(.active),
.datepicker table tr td.today:not(.active):hover {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.12) !important;
}

/* Flatpickr */
.flatpickr-day.today,
.flatpickr-day.today:hover {
  color: #076044 !important;
  border-color: rgba(7, 96, 68, 0.12) !important;
  background-color: rgba(7, 96, 68, 0.12) !important;
}

.flatpickr-day.inRange,
.flatpickr-day.nextMonthDay.inRange,
.flatpickr-day.prevMonthDay.inRange,
.flatpickr-day.today.inRange,
.flatpickr-day.prevMonthDay.today.inRange,
.flatpickr-day.nextMonthDay.today.inRange {
  color: #076044 !important;
  background: rgba(7, 96, 68, 0.12) !important;
  border-color: rgba(7, 96, 68, 0.12) !important;
}

.flatpickr-day.selected,
.flatpickr-day.selected.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.startRange:focus,
.flatpickr-day.startRange:hover,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.endRange:focus,
.flatpickr-day.endRange:hover,
.flatpickr-day.endRange.nextMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.week.selected {
  color: #fff !important;
  background: #076044 !important;
  border-color: #076044 !important;
  box-shadow: 0 0.125rem 0.375rem 0 rgba(7, 96, 68, 0.3) !important;
}

/* Date Range Picker */
.daterangepicker td.active:not(.off) {
  background: #076044 !important;
  color: #fff !important;
  box-shadow: 0 0.125rem 0.375rem 0 rgba(7, 96, 68, 0.3) !important;
}

.daterangepicker .start-date:not(.end-date):not(.off),
.daterangepicker .end-date:not(.start-date):not(.off) {
  background-color: #076044 !important;
  color: #fff !important;
  border: 0 !important;
}

.daterangepicker .start-date:not(.end-date):not(.off):hover,
.daterangepicker .end-date:not(.start-date):not(.off):hover {
  background-color: #076044 !important;
}

.daterangepicker .input-mini.active {
  border-color: #076044 !important;
}

.daterangepicker td.in-range:not(.start-date):not(.end-date):not(.off) {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.12) !important;
}

.ranges li.active {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.12) !important;
}

/* Timepicker */
li.ui-timepicker-selected,
.ui-timepicker-list .ui-timepicker-selected:hover {
  color: #fff !important;
  background: #076044 !important;
}

/* Quill Editor */
.ql-snow.ql-toolbar button:hover,
.ql-snow.ql-toolbar button:focus,
.ql-snow.ql-toolbar button.ql-active,
.ql-snow.ql-toolbar .ql-picker-label:hover,
.ql-snow.ql-toolbar .ql-picker-label.ql-active,
.ql-snow.ql-toolbar .ql-picker-item:hover,
.ql-snow.ql-toolbar .ql-picker-item.ql-selected,
.ql-snow .ql-toolbar button:hover,
.ql-snow .ql-toolbar button:focus,
.ql-snow .ql-toolbar button.ql-active,
.ql-snow .ql-toolbar .ql-picker-label:hover,
.ql-snow .ql-toolbar .ql-picker-label.ql-active,
.ql-snow .ql-toolbar .ql-picker-item:hover,
.ql-snow .ql-toolbar .ql-picker-item.ql-selected {
  color: #076044 !important;
}

.ql-snow.ql-toolbar button:hover .ql-fill,
.ql-snow.ql-toolbar button:focus .ql-fill,
.ql-snow.ql-toolbar button.ql-active .ql-fill,
.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,
.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,
.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,
.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,
.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,
.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,
.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,
.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,
.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,
.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,
.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,
.ql-snow .ql-toolbar button:hover .ql-fill,
.ql-snow .ql-toolbar button:focus .ql-fill,
.ql-snow .ql-toolbar button.ql-active .ql-fill,
.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,
.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,
.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,
.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,
.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,
.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,
.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,
.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,
.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,
.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,
.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill {
  fill: #076044 !important;
}

.ql-snow.ql-toolbar button:hover .ql-stroke,
.ql-snow.ql-toolbar button:focus .ql-stroke,
.ql-snow.ql-toolbar button.ql-active .ql-stroke,
.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,
.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,
.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,
.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,
.ql-snow.ql-toolbar button:hover .ql-stroke-miter,
.ql-snow.ql-toolbar button:focus .ql-stroke-miter,
.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,
.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,
.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,
.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,
.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,
.ql-snow .ql-toolbar button:hover .ql-stroke,
.ql-snow .ql-toolbar button:focus .ql-stroke,
.ql-snow .ql-toolbar button.ql-active .ql-stroke,
.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,
.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,
.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,
.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,
.ql-snow .ql-toolbar button:hover .ql-stroke-miter,
.ql-snow .ql-toolbar button:focus .ql-stroke-miter,
.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,
.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,
.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,
.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,
.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter {
  stroke: #076044 !important;
}

/* Typeahead */
.tt-suggestion:active,
.tt-cursor {
  background: #076044 !important;
  color: #fff !important;
}

/* Dropzone */
.dropzone.dz-drag-hover {
  border-color: #076044 !important;
}

/* Shepherd Tour */
.shepherd-element .shepherd-button:not(:disabled).btn-primary {
  color: #fff !important;
  background-color: #076044 !important;
  border-color: #076044 !important;
}

.shepherd-element .shepherd-button:not(:disabled).btn-primary:hover {
  color: #fff !important;
  background-color: #055036 !important;
  border-color: #055036 !important;
}

.btn-check:focus + .shepherd-element .shepherd-button:not(:disabled).btn-primary,
.shepherd-element .shepherd-button:not(:disabled).btn-primary:focus,
.shepherd-element .shepherd-button:not(:disabled).btn-primary.focus {
  color: #fff !important;
  background-color: #055036 !important;
  border-color: #055036 !important;
}

/* BS Stepper */
.bs-stepper .step.active .bs-stepper-circle {
  background-color: #076044 !important;
  color: #fff !important;
  box-shadow: 0 0.125rem 0.375rem 0 rgba(7, 96, 68, 0.3) !important;
}

.bs-stepper .step.active .bs-stepper-icon svg {
  fill: #076044 !important;
}

.bs-stepper .step.active .bs-stepper-icon i,
.bs-stepper .step.active .bs-stepper-label {
  color: #076044 !important;
}

.bs-stepper .step.crossed .step-trigger .bs-stepper-circle {
  background-color: rgba(7, 96, 68, 0.12) !important;
  color: #076044 !important;
}

.bs-stepper .step.crossed .step-trigger .bs-stepper-icon svg {
  fill: #076044 !important;
}

.bs-stepper .step.crossed .step-trigger .bs-stepper-icon i {
  color: #076044 !important;
}

.bs-stepper.wizard-icons .step.crossed .bs-stepper-label {
  color: #076044 !important;
}

.bs-stepper.wizard-icons .step.crossed + .line i {
  color: #076044 !important;
}

/* Link colors (general) */
a {
  color: #076044 !important;
}

a:hover {
  color: #055036 !important;
}

/* Override any hardcoded color values in inline styles or attributes */
[style*="color: #7367f0"],
[style*="color:#7367f0"],
[style*="background: #7367f0"],
[style*="background:#7367f0"],
[style*="background-color: #7367f0"],
[style*="background-color:#7367f0"],
[style*="border-color: #7367f0"],
[style*="border-color:#7367f0"] {
  color: #076044 !important;
  background-color: #076044 !important;
  border-color: #076044 !important;
}

/* ============================================ */
/* COMPREHENSIVE HOVER, FOCUS, ACTIVE OVERRIDES */
/* ============================================ */

/* Hover color overrides - Replace #685dd8, #8176f2 with green hover color */
a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #055036 !important;
}

.text-body[href]:hover,
.text-heading[href]:hover {
  color: #055036 !important;
}

a:hover {
  color: #055036 !important;
}

/* Button hover states - all variations */
.btn-primary:hover,
.btn-primary:focus,
.btn-primary.focus,
.btn-primary:active,
.btn-primary.active {
  color: #fff !important;
  background-color: #055036 !important;
  border-color: #055036 !important;
}

.btn-label-primary:hover,
.btn-label-primary:focus,
.btn-label-primary.focus,
.btn-label-primary:active,
.btn-label-primary.active {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.16) !important;
  border-color: transparent !important;
}

.btn-text-primary:hover,
.btn-text-primary:focus,
.btn-text-primary.focus,
.btn-text-primary:active,
.btn-text-primary.active {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.08) !important;
  border-color: transparent !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary.focus,
.btn-outline-primary:active,
.btn-outline-primary.active {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.08) !important;
  border-color: #076044 !important;
}

/* Page link hover and active states */
.page-item .page-link:hover,
.page-item .page-link:focus,
.pagination li > a:not(.page-link):hover,
.pagination li > a:not(.page-link):focus {
  background-color: #cfe8df !important;
  color: #076044 !important;
}

.page-item.active .page-link,
.page-item.active .page-link:hover,
.page-item.active .page-link:focus,
.pagination li.active > a:not(.page-link),
.pagination li.active > a:not(.page-link):hover,
.pagination li.active > a:not(.page-link):focus {
  border-color: #076044 !important;
  background-color: #076044 !important;
  color: #fff !important;
}

.page-link:hover,
.page-link:focus {
  color: #055036 !important;
}

/* List group hover and active states */
a.list-group-item-primary:hover,
a.list-group-item-primary:focus,
button.list-group-item-primary:hover,
button.list-group-item-primary:focus {
  border-color: #076044 !important;
  background-color: #bbd6cb !important;
  color: #076044 !important;
}

a.list-group-item-primary.active,
button.list-group-item-primary.active {
  border-color: #076044 !important;
  background-color: #076044 !important;
  color: #fff !important;
}

.list-group-item.active {
  background-color: #cfe8df !important;
  color: #076044 !important;
}

/* Carousel control hover and focus */
.carousel-control-prev:hover,
.carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #076044 !important;
}

/* Dropdown item hover, focus, and active states */
.dropdown-item:hover,
.dropdown-item:focus {
  background-color: rgba(7, 96, 68, 0.08) !important;
  color: #076044 !important;
}

.dropdown-item:not(.disabled).active,
.dropdown-item:not(.disabled):active {
  background-color: #cfe8df !important;
  color: #076044 !important;
}

.dropdown-menu > li:not(.disabled) > a:not(.dropdown-item):hover,
.dropdown-menu > li:not(.disabled) > a:not(.dropdown-item):focus {
  background-color: rgba(7, 96, 68, 0.08) !important;
  color: #076044 !important;
}

.dropdown-menu > li:not(.disabled) > a:not(.dropdown-item):active,
.dropdown-menu > li.active:not(.disabled) > a:not(.dropdown-item) {
  background-color: #cfe8df !important;
  color: #076044 !important;
}

/* Nav pills active and hover states */
.nav-pills .nav-link:hover,
.nav-pills .nav-link:focus {
  background-color: rgba(7, 96, 68, 0.08) !important;
  color: #076044 !important;
}

.nav-pills .nav-link.active,
.nav-pills .nav-link.active:hover,
.nav-pills .nav-link.active:focus {
  background-color: #076044 !important;
  color: #fff !important;
  box-shadow: 0 0.125rem 0.375rem 0 rgba(7, 96, 68, 0.3) !important;
}

/* Nav tabs active and hover states */
.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
  color: #076044 !important;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-link.active:hover,
.nav-tabs .nav-link.active:focus {
  color: #076044 !important;
  box-shadow: 0 -2px 0 #076044 inset !important;
}

.nav-align-bottom .nav-tabs .nav-link.active,
.nav-align-bottom .nav-tabs .nav-link.active:hover,
.nav-align-bottom .nav-tabs .nav-link.active:focus {
  box-shadow: 0 2px 0 #076044 inset !important;
}

.nav-align-left .nav-tabs .nav-link.active,
.nav-align-left .nav-tabs .nav-link.active:hover,
.nav-align-left .nav-tabs .nav-link.active:focus {
  box-shadow: -2px 0px 0 #076044 inset !important;
}

.nav-align-right .nav-tabs .nav-link.active,
.nav-align-right .nav-tabs .nav-link.active:hover,
.nav-align-right .nav-tabs .nav-link.active:focus {
  box-shadow: 2px 0px 0 #076044 inset !important;
}

/* Form focus states */
.form-control:focus,
.form-select:focus {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
}

.input-group:focus-within .form-control,
.input-group:focus-within .input-group-text {
  border-color: #076044 !important;
}

.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:focus:not(:placeholder-shown) ~ label,
.form-floating > .form-select:focus ~ label,
.form-floating > .form-select:focus:not(:placeholder-shown) ~ label {
  color: #076044 !important;
}

/* Menu hover and active states */
.bg-menu-theme .menu-link:hover,
.bg-menu-theme .menu-link:focus,
.bg-menu-theme .menu-horizontal-prev:hover,
.bg-menu-theme .menu-horizontal-prev:focus,
.bg-menu-theme .menu-horizontal-next:hover,
.bg-menu-theme .menu-horizontal-next:focus {
  background: rgba(7, 96, 68, 0.06) !important;
  color: #076044 !important;
}

/* Only style the direct menu-link of active parent items, not nested items */
.bg-menu-theme .menu-item.open:not(.menu-item-closing) > .menu-toggle,
.bg-menu-theme .menu-item.active > .menu-link {
  color: #076044 !important;
}

/* Active menu item (not toggle/parent) */
.bg-menu-theme.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle),
.bg-menu-theme.menu-horizontal .menu-inner > .menu-item.active > .menu-link.menu-toggle {
  background: linear-gradient(270deg, rgba(7, 96, 68, 0.7) 0%, #076044 100%) !important;
  box-shadow: 0px 2px 6px 0px rgba(7, 96, 68, 0.3) !important;
  color: #fff !important;
}

.bg-menu-theme.menu-horizontal .menu-item.active > .menu-link:not(.menu-toggle) {
  background: #cfe8df !important;
  color: #076044 !important;
}

/* Active parent menu toggle */
.bg-menu-theme .menu-inner .menu-item.open > .menu-link.menu-toggle,
.bg-menu-theme .menu-inner .menu-item.active > .menu-link.menu-toggle {
  background: rgba(7, 96, 68, 0.08) !important;
  color: #076044 !important;
}

/* Reset color for sub-menu items inside active parent */
.bg-menu-theme .menu-item.active .menu-sub .menu-item > .menu-link {
  color: inherit !important;
  background: transparent !important;
}

/* Active sub-menu item should have green text */
.bg-menu-theme .menu-item.active .menu-sub .menu-item.active > .menu-link {
  color: #076044 !important;
  background: rgba(7, 96, 68, 0.06) !important;
}

/* Sub-menu items hover state */
.bg-menu-theme .menu-item .menu-sub .menu-item > .menu-link:hover {
  background: rgba(7, 96, 68, 0.06) !important;
  color: #076044 !important;
}

html:not(.layout-menu-collapsed) .bg-menu-theme .menu-inner .menu-item:not(.active) > .menu-link:hover,
.layout-menu-hover.layout-menu-collapsed .bg-menu-theme .menu-inner .menu-item:not(.active) > .menu-link:hover {
  background: rgba(7, 96, 68, 0.06) !important;
  color: #076044 !important;
}

/* Navbar landing hover and active states */
.navbar.landing-navbar .navbar-nav .nav-link:hover,
.navbar.landing-navbar .navbar-nav .show > .nav-link,
.navbar.landing-navbar .navbar-nav .active > .nav-link,
.navbar.landing-navbar .navbar-nav .nav-link.show,
.navbar.landing-navbar .navbar-nav .nav-link.active {
  color: #076044 !important;
}

.navbar.landing-navbar .navbar-nav .nav-link:hover i,
.navbar.landing-navbar .navbar-nav .show > .nav-link i,
.navbar.landing-navbar .navbar-nav .active > .nav-link i,
.navbar.landing-navbar .navbar-nav .nav-link.show i,
.navbar.landing-navbar .navbar-nav .nav-link.active i {
  color: #076044 !important;
}

/* Landing features hover */
.landing-features .features-icon-wrapper .features-icon-box:hover .features-icon {
  background-color: rgba(7, 96, 68, 0.05) !important;
}

/* Footer hover states */
.bg-footer-theme .footer-link:hover,
.bg-footer-theme .footer-link:focus {
  color: #076044 !important;
}

.footer.bg-primary .footer-link:hover,
.footer.bg-primary .footer-link:focus {
  color: #fff !important;
}

/* Card hover states */
.card.card-border-shadow-primary:hover::after {
  border-bottom-color: #076044 !important;
}

.card.card-hover-border-primary:hover,
.card .card-hover-border-primary:hover {
  border-color: #9fd1bf !important;
}

/* noUiSlider hover and focus states */
.noUi-target:not([disabled]) .noUi-handle:hover {
  box-shadow: 0 0 0 8px rgba(7, 96, 68, 0.16) !important;
  border-color: #076044 !important;
}

.noUi-target:not([disabled]) .noUi-handle:active,
.noUi-target:not([disabled]) .noUi-handle:focus {
  box-shadow: 0 0 0 13px rgba(7, 96, 68, 0.16) !important;
  border-color: #076044 !important;
}

/* Select2 focus states */
.select2-container--default.select2-container--focus .select2-selection,
.select2-container--default.select2-container--open .select2-selection {
  border-width: 2px !important;
  border-color: #076044 !important;
}

/* Tagify focus */
.tagify--focus {
  border-color: #076044 !important;
}

.tagify__tag:hover {
  background-color: rgba(7, 96, 68, 0.2) !important;
}

/* Bootstrap Select focus */
.bootstrap-select .dropdown-toggle:focus,
.bootstrap-select > .dropdown-toggle.bs-placeholder:focus {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
}

.bootstrap-select .dropdown-toggle.show {
  border-color: #076044 !important;
}

/* Flatpickr hover states */
.flatpickr-months .flatpickr-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg,
.flatpickr-months .flatpickr-prev-month:hover svg {
  fill: #076044 !important;
}

/* SweetAlert2 hover and focus */
.swal2-styled.swal2-confirm:hover,
.swal2-styled.swal2-confirm:focus {
  background-color: #055036 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.5) !important;
}

/* Dropzone hover */
.dropzone:hover {
  border-color: #076044 !important;
}

/* Perfect Scrollbar hover */
.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
  background-color: #076044 !important;
}

/* Icon card active */
.icon-card:hover,
.icon-card:focus {
  outline: 1px solid rgba(7, 96, 68, 0.3) !important;
}

.icon-card.active {
  outline: 1px solid #076044 !important;
}

.icon-card.active i,
.icon-card.active svg {
  color: #076044 !important;
}

/* Chat active */
.app-chat .sidebar-body .chat-contact-list li:hover {
  background: rgba(7, 96, 68, 0.08) !important;
}

.app-chat .sidebar-body .chat-contact-list li.active {
  background: #076044 !important;
}

/* Timeline hover */
.timeline .timeline-item:hover .timeline-point-primary {
  outline: 3px solid rgba(7, 96, 68, 0.2) !important;
}

/* Custom option hover */
.custom-option:hover {
  border-color: rgba(7, 96, 68, 0.3) !important;
}

.custom-option.checked {
  border: 2px solid #076044 !important;
}

/* Accordion active states */
.accordion-button:not(.collapsed) {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.08) !important;
}

.accordion-button:focus {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
}

/* Range input active states */
input[type="range"]:focus {
  outline: none !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
}

input[type="range"]::-webkit-slider-thumb:hover,
input[type="range"]::-webkit-slider-thumb:active {
  background: #055036 !important;
}

input[type="range"]::-moz-range-thumb:hover,
input[type="range"]::-moz-range-thumb:active {
  background: #055036 !important;
}

/* Switch hover and focus */
.switch-input:hover ~ .switch-toggle-slider,
.switch-input:focus ~ .switch-toggle-slider {
  background: rgba(7, 96, 68, 0.16) !important;
}

.switch-input:checked:hover ~ .switch-toggle-slider,
.switch-input:checked:focus ~ .switch-toggle-slider {
  background: #055036 !important;
}

/* Badge hover (when used in buttons) */
.btn:hover .badge,
.btn:focus .badge {
  background-color: #fff !important;
  color: #076044 !important;
}

/* Plyr controls hover states */
.plyr--video .plyr__controls button:hover,
.plyr--audio .plyr__controls button:hover {
  background: #055036 !important;
}

.plyr__play-large:hover {
  background: #055036 !important;
}

/* DataTables hover and active */
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: rgba(7, 96, 68, 0.08) !important;
  border-color: rgba(7, 96, 68, 0.3) !important;
  color: #076044 !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  background: #055036 !important;
  border-color: #055036 !important;
}

table.dataTable tbody tr:hover {
  background-color: rgba(7, 96, 68, 0.03) !important;
}

table.dataTable tbody tr.selected:hover {
  background-color: rgba(7, 96, 68, 0.16) !important;
}

/* Override any remaining #685dd8 (purple hover) references */
[style*="#685dd8"],
[style*="rgb(104, 93, 216)"],
[style*="rgba(104, 93, 216"] {
  color: #055036 !important;
  background-color: #055036 !important;
  border-color: #055036 !important;
}

/* Override any remaining #8176f2 (purple light hover) references */
[style*="#8176f2"],
[style*="rgb(129, 118, 242)"],
[style*="rgba(129, 118, 242"] {
  color: #055036 !important;
  background-color: #055036 !important;
  border-color: #055036 !important;
}

/* ============================================ */
/* FRONT-PAGE.CSS OVERRIDES */
/* These must be at the very end to override front-page.css */
/* ============================================ */

/* Landing navbar active and hover states */
.light-style .layout-navbar .navbar.landing-navbar .navbar-nav .show > .nav-link,
.light-style .layout-navbar .navbar.landing-navbar .navbar-nav .active > .nav-link,
.light-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link.show,
.light-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link.active,
.light-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link:hover {
  color: #076044 !important;
}

.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .show > .nav-link,
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .active > .nav-link,
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link.show,
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link.active,
.dark-style .layout-navbar .navbar.landing-navbar .navbar-nav .nav-link:hover {
  color: #076044 !important;
}

/* Landing footer form inputs focus */
.landing-footer .footer-form input:focus,
.landing-footer .footer-form input:hover:not([disabled]) {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
}

.landing-footer .footer-form input:focus {
  border-color: #076044 !important;
}

/* Landing forms - all input focus states */
.landing-hero input:focus,
.landing-hero textarea:focus,
.landing-hero select:focus,
.landing-features input:focus,
.landing-features textarea:focus,
.landing-features select:focus,
.landing-contact input:focus,
.landing-contact textarea:focus,
.landing-contact select:focus {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
}

/* All landing page sections - input focus overrides */
section input:focus,
section textarea:focus,
section select:focus,
section .form-control:focus,
section .form-select:focus {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
}

/* Landing pricing cards active states */
.landing-pricing .pricing-card.active,
.landing-pricing .pricing-card:hover {
  border-color: #076044 !important;
}

.landing-pricing .pricing-card.active .pricing-title,
.landing-pricing .pricing-card:hover .pricing-title {
  color: #076044 !important;
}

/* Landing FAQ active accordion */
.landing-faq .accordion-button:not(.collapsed) {
  color: #076044 !important;
  background-color: rgba(7, 96, 68, 0.08) !important;
}

.landing-faq .accordion-button:focus {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
}

/* Landing CTA buttons */
.landing-cta .btn-primary,
.landing-hero .btn-primary,
.landing-features .btn-primary {
  background-color: #076044 !important;
  border-color: #076044 !important;
}

.landing-cta .btn-primary:hover,
.landing-hero .btn-primary:hover,
.landing-features .btn-primary:hover {
  background-color: #055036 !important;
  border-color: #055036 !important;
}

/* Landing feature icons hover */
.landing-features .features-icon:hover,
.landing-features .features-icon.active {
  background-color: rgba(7, 96, 68, 0.12) !important;
  border-color: #076044 !important;
}

/* Landing testimonials active indicator */
.landing-testimonials .swiper-pagination-bullet-active {
  background-color: #076044 !important;
}

/* Landing contact form focus states - Maximum specificity */
form input:focus,
form textarea:focus,
form select:focus,
form .form-control:focus,
form .form-select:focus {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
  outline: none !important;
}

/* Override any remaining purple focus states with maximum specificity */
input.form-control:focus,
textarea.form-control:focus,
select.form-select:focus,
.form-control:focus:not([readonly]),
.form-select:focus:not([readonly]) {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
  outline: none !important;
}

/* Input group focus states on landing pages */
.input-group:focus-within,
.input-group:focus-within .form-control,
.input-group:focus-within .input-group-text,
.input-group:focus-within .btn {
  border-color: #076044 !important;
}

/* Landing page mega dropdown active states */
.navbar.landing-navbar .navbar-nav .nav-item.mega-dropdown .dropdown-menu .mega-dropdown-link:hover,
.navbar.landing-navbar .navbar-nav .nav-item.mega-dropdown .dropdown-menu .mega-dropdown-link.active {
  color: #076044 !important;
}

.navbar.landing-navbar .navbar-nav .nav-item.mega-dropdown .dropdown-menu .mega-dropdown-link:hover i,
.navbar.landing-navbar .navbar-nav .nav-item.mega-dropdown .dropdown-menu .mega-dropdown-link.active i {
  color: #076044 !important;
}

/* Override focus-visible state for modern browsers */
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
.form-control:focus-visible,
.form-select:focus-visible {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
  outline: 2px solid #076044 !important;
  outline-offset: 2px !important;
}

/* Nuclear option - override all possible focus states */
*:focus,
*:focus-visible,
*[class*="form"]:focus,
*[class*="input"]:focus {
  --bs-focus-ring-color: rgba(7, 96, 68, 0.25) !important;
}

/* Override Bootstrap 5 focus ring variables */
:root,
[data-bs-theme=light] {
  --bs-focus-ring-color: rgba(7, 96, 68, 0.25) !important;
  --bs-primary-rgb: 7, 96, 68 !important;
}

/* Final catch-all for any missed active states */
.active:not(.carousel-item):not(.page-item),
*[class*="active"]:not(.carousel-item):not(.page-item):not(.show) {
  color: #076044 !important;
}

/* Ensure landing page links maintain green color */
.landing-hero a:not(.btn),
.landing-features a:not(.btn),
.landing-faq a:not(.btn),
.landing-footer a:not(.btn) {
  color: #076044 !important;
}

.landing-hero a:not(.btn):hover,
.landing-features a:not(.btn):hover,
.landing-faq a:not(.btn):hover,
.landing-footer a:not(.btn):hover {
  color: #055036 !important;
}

.timeline .timeline-point-primary {
  background-color: #076044 !important;
}

/* Offcanvas */
.offcanvas-header {
  border-bottom-color: rgba(7, 96, 68, 0.12) !important;
}

/* Modal */
.modal-header {
  border-bottom-color: rgba(7, 96, 68, 0.12) !important;
}

/* Toast */
.toast-header {
  background-color: rgba(7, 96, 68, 0.08) !important;
  color: #076044 !important;
}

/* Avatar Initial Primary */
.avatar .avatar-initial.bg-primary,
.avatar-initial.bg-primary {
  background-color: #076044 !important;
  color: #fff !important;
}

/* List Group Flush Border */
.list-group-flush .list-group-item:hover {
  background-color: rgba(7, 96, 68, 0.04) !important;
}

/* Custom File Upload */
.custom-file-input:focus ~ .custom-file-label {
  border-color: #076044 !important;
  box-shadow: 0 0 0 0.25rem rgba(7, 96, 68, 0.25) !important;
}

/* Input Group Text Primary */
.input-group-text.bg-primary {
  background-color: #076044 !important;
  border-color: #076044 !important;
}

/* Waves Effect */
.waves-effect.waves-primary .waves-ripple {
  background: rgba(7, 96, 68, 0.3) !important;
}

/* Node Waves */
.waves-effect.waves-light {
  background: rgba(7, 96, 68, 0.1) !important;
}

/* App Brand Logo Text */
.app-brand-text.demo {
  color: #076044 !important;
}

/* Focus Visible */
*:focus-visible {
  outline-color: #076044 !important;
}

/* Selection */
::selection {
  background-color: rgba(7, 96, 68, 0.3) !important;
  color: #fff !important;
}

::-moz-selection {
  background-color: rgba(7, 96, 68, 0.3) !important;
  color: #fff !important;
}

/* Scrollbar */
::-webkit-scrollbar-thumb {
  background-color: rgba(7, 96, 68, 0.3) !important;
}

::-webkit-scrollbar-thumb:hover {
  background-color: rgba(7, 96, 68, 0.5) !important;
}

/* Override any inline styles with purple color */
[style*="color: rgb(115, 103, 240)"],
[style*="color: #7367f0"],
[style*="color:#7367f0"] {
  color: #076044 !important;
}

[style*="background-color: rgb(115, 103, 240)"],
[style*="background-color: #7367f0"],
[style*="background-color:#7367f0"],
[style*="background: #7367f0"],
[style*="background:#7367f0"] {
  background-color: #076044 !important;
}

[style*="border-color: rgb(115, 103, 240)"],
[style*="border-color: #7367f0"],
[style*="border-color:#7367f0"] {
  border-color: #076044 !important;
}

/* Additional Elements */
.text-primary strong,
.text-primary b,
strong.text-primary,
b.text-primary {
  color: #076044 !important;
}

/* Hover States */
*[class*="hover-primary"]:hover {
  color: #076044 !important;
}

/* Active States */
.active.text-primary,
.active .text-primary {
  color: #076044 !important;
}
