/* LimpioHQ Brand Colors */
:root {
    --limpio-primary: #0F5440;      /* Primary Green - main brand color */
    --limpio-accent: #45A89C;       /* Accent Teal - secondary accents */
    --limpio-text: #333333;         /* Text Charcoal - body text */
    --limpio-background: #F5F5F0;   /* Off-White - background */

    /* Override Argon/Bootstrap variables */
    --primary: #0F5440;
    --blue: #0F5440;
    --teal: #45A89C;
    --info: #45A89C;
    --default: #0F5440;
}

/* Primary button overrides */
.btn-primary {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
    background-color: #0a3d2e !important;
    border-color: #0a3d2e !important;
}

/* Default button overrides */
.btn-default {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
}
.btn-default:hover, .btn-default:focus, .btn-default:active {
    background-color: #0a3d2e !important;
    border-color: #0a3d2e !important;
}

/* Info/Accent button overrides */
.btn-info {
    background-color: #45A89C !important;
    border-color: #45A89C !important;
}
.btn-info:hover, .btn-info:focus, .btn-info:active {
    background-color: #3a8f85 !important;
    border-color: #3a8f85 !important;
}

/* Success button overrides */
.btn-success {
    background-color: #45A89C !important;
    border-color: #45A89C !important;
}
.btn-success:hover, .btn-success:focus, .btn-success:active {
    background-color: #3a8f85 !important;
    border-color: #3a8f85 !important;
}

/* Secondary button overrides */
.btn-secondary {
    background-color: #F5F5F0 !important;
    border-color: #0F5440 !important;
    color: #0F5440 !important;
}
.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active {
    background-color: #e8e8e3 !important;
    border-color: #0a3d2e !important;
    color: #0a3d2e !important;
}

/* Link colors */
a {
    color: #0F5440;
}
a:hover {
    color: #0a3d2e;
}

/* Table action links */
a.text-info,
a.text-primary,
a.text-default,
.table a:not(.btn),
td a:not(.btn) {
    color: #0F5440 !important;
}
a.text-info:hover,
a.text-primary:hover,
a.text-default:hover,
.table a:not(.btn):hover,
td a:not(.btn):hover {
    color: #0a3d2e !important;
}

/* Badge overrides - distinct colors for status visibility */
.badge-primary {
    background-color: #0F5440 !important;  /* Primary Green */
    color: #fff !important;
}
.badge-info {
    background-color: #17a2b8 !important;  /* Blue for NEW/info statuses */
    color: #fff !important;
}
.badge-success {
    background-color: #2dce89 !important;  /* Green for success/upsold */
    color: #fff !important;
}
.badge-teal {
    background-color: #45A89C !important;  /* Teal for converted */
    color: #fff !important;
}
.badge-warning {
    background-color: #fb6340 !important;  /* Orange for warnings */
    color: #fff !important;
}
.badge-danger {
    background-color: #f5365c !important;  /* Red for lost/danger */
    color: #fff !important;
}
.badge-secondary {
    background-color: #8898aa !important;  /* Gray for secondary */
    color: #fff !important;
}
.badge-default {
    background-color: #525f7f !important;  /* Neutral gray for default */
    color: #fff !important;
}

/* Alert boxes */
.alert-success {
    background-color: rgba(69, 168, 156, 0.85) !important;  /* Accent Teal with transparency */
    border-color: #45A89C !important;
    color: #fff !important;
}
.alert-success .close {
    color: #fff !important;
}
.alert-primary {
    background-color: rgba(15, 84, 64, 0.85) !important;
    border-color: #0F5440 !important;
    color: #fff !important;
}
.alert-info {
    background-color: rgba(69, 168, 156, 0.85) !important;
    border-color: #45A89C !important;
    color: #fff !important;
}

/* Checkbox styling - override Argon purple #5e72e4 */
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E") !important;
}
.custom-control-input:checked ~ .custom-control-label::before {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
}
.custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(15, 84, 64, 0.25) !important;
}
.custom-checkbox .custom-control-input:disabled:checked::before {
    border-color: rgba(15, 84, 64, 0.5) !important;
}
.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
    background-color: rgba(15, 84, 64, 0.5) !important;
}

/* Checkbox label - ensure no background on the label itself */
.custom-checkbox .custom-control-label {
    background: none !important;
    background-color: transparent !important;
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label {
    background: none !important;
    background-color: transparent !important;
}

/* Radio button styling */
.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
}

/* Selection/highlight backgrounds */
::selection {
    background-color: rgba(15, 84, 64, 0.3) !important;
    color: #333 !important;
}
::-moz-selection {
    background-color: rgba(15, 84, 64, 0.3) !important;
    color: #333 !important;
}

/* Text color utilities */
.text-primary {
    color: #0F5440 !important;
}
.text-info {
    color: #45A89C !important;
}
.text-success {
    color: #0F5440 !important;
}
.text-default {
    color: #0F5440 !important;
}

/* Background utilities */
.bg-primary {
    background-color: #0F5440 !important;
}
.bg-info {
    background-color: #45A89C !important;
}
.bg-default {
    background-color: #0F5440 !important;
}

/* Sidebar active state */
.navbar-vertical .navbar-nav .nav-link.active {
    color: #0F5440 !important;
}
.navbar-vertical .navbar-nav .nav-link.active:before {
    border-left-color: #0F5440 !important;
}

/* Sidebar nav icons - standardized to Primary Green */
.navbar-vertical .navbar-nav .nav-link i,
.sidenav .navbar-nav .nav-link i,
.navbar-vertical .nav-item i,
.sidenav .nav-item i {
    color: #0F5440 !important;
}

/* Page background and sticky footer */
html, body {
    height: 100%;
}
body {
    background-color: #F5F5F0 !important;
}
.main-content {
    background-color: #F5F5F0 !important;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}
.main-content > .header {
    flex-shrink: 0;
}
.main-content > .container-fluid.mt--7 {
    flex: 1;
    display: flex;
    flex-direction: column;
}
.main-content > .container-fluid.mt--7 > .row:first-child {
    flex: 1;
}
.main-content .footer {
    flex-shrink: 0;
    margin-top: auto;
}

/* Form focus states */
.form-control:focus {
    border-color: #0F5440 !important;
    box-shadow: 0 0 0 0.2rem rgba(15, 84, 64, 0.25) !important;
}

/* Custom checkbox/radio */
.custom-control-input:checked ~ .custom-control-label::before {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
}

/* Toggle switches */
.custom-toggle input:checked + .custom-toggle-slider {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
}
.custom-toggle input:checked + .custom-toggle-slider:before {
    background-color: #fff !important;
}
.custom-switch .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
}
.custom-switch .custom-control-input:focus ~ .custom-control-label::before {
    box-shadow: 0 0 0 0.2rem rgba(15, 84, 64, 0.25) !important;
}

/* Bootstrap toggle (bootstrap-toggle plugin) */
.toggle.btn-primary {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
}
.toggle-on.btn-primary {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
}

/* Generic toggle/switch styling */
input[type="checkbox"]:checked + label,
input[type="checkbox"]:checked + .slider,
input[type="checkbox"]:checked + .toggle-slider {
    background-color: #0F5440 !important;
}
.toggle-switch input:checked + .slider {
    background-color: #0F5440 !important;
}
.switch input:checked + .slider {
    background-color: #0F5440 !important;
}

/* Info icon color */
.text-primary i,
i.text-primary,
.fa-info-circle {
    color: #0F5440 !important;
}

/* Progress bars */
.progress-bar {
    background-color: #0F5440 !important;
}

/* Pagination */
.page-item.active .page-link {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
    color: #fff !important;
}
.page-link {
    color: #0F5440 !important;
}
.page-link:hover {
    color: #0a3d2e !important;
}

/* Label badges - using distinct colors from above */
/* Note: Badge colors are defined in the main badge overrides section above */

/* Nav pills */
.nav-pills .nav-link.active {
    background-color: #0F5440 !important;
}
.nav-pills .nav-link:hover:not(.active) {
    color: #0F5440 !important;
}

/* Nav tabs */
.nav-tabs .nav-link.active {
    color: #0F5440 !important;
    border-bottom-color: #0F5440 !important;
}
.nav-tabs .nav-link:hover:not(.active) {
    color: #0F5440 !important;
}

/* Sidebar navigation */
.navbar-vertical .navbar-nav .nav-link:hover {
    color: #0F5440 !important;
}
.sidenav .navbar-nav .nav-link.active .icon {
    color: #0F5440 !important;
}
.sidenav .navbar-nav .nav-link:hover .icon {
    color: #0F5440 !important;
}

/* Button navigation (btn-neutral on dark backgrounds) */
.btn-neutral {
    background-color: #F5F5F0 !important;
    color: #0F5440 !important;
}
.btn-neutral:hover, .btn-neutral:focus, .btn-neutral:active {
    background-color: #fff !important;
    color: #0a3d2e !important;
}

/* Outline buttons */
.btn-outline-primary {
    color: #0F5440 !important;
    border-color: #0F5440 !important;
}
.btn-outline-primary:hover, .btn-outline-primary:focus, .btn-outline-primary:active {
    background-color: #0F5440 !important;
    color: #fff !important;
}
.btn-outline-info {
    color: #45A89C !important;
    border-color: #45A89C !important;
}
.btn-outline-info:hover, .btn-outline-info:focus, .btn-outline-info:active {
    background-color: #45A89C !important;
    color: #fff !important;
}
.btn-outline-default {
    color: #0F5440 !important;
    border-color: #0F5440 !important;
}
.btn-outline-default:hover, .btn-outline-default:focus, .btn-outline-default:active {
    background-color: #0F5440 !important;
    color: #fff !important;
}

/* Link button styling */
.btn-link {
    color: #0F5440 !important;
}
.btn-link:hover, .btn-link:focus {
    color: #0a3d2e !important;
}

/* Dropdown active */
.dropdown-item.active, .dropdown-item:active {
    background-color: #0F5440 !important;
}
.dropdown-item:hover, .dropdown-item:focus {
    color: #0F5440 !important;
}

/* Gradient backgrounds */
.bg-gradient-primary {
    background: linear-gradient(87deg, #0F5440 0, #45A89C 100%) !important;
}
.bg-gradient-default {
    background: linear-gradient(87deg, #0F5440 0, #0a3d2e 100%) !important;
}
.bg-gradient-info {
    background: linear-gradient(87deg, #45A89C 0, #0F5440 100%) !important;
}
.bg-gradient-blue {
    background: linear-gradient(87deg, #0F5440 0, #45A89C 100%) !important;
}

/* Mask overlays with gradients */
.mask.bg-gradient-default {
    background: linear-gradient(87deg, #0F5440 0, #0a3d2e 100%) !important;
}
.mask.bg-gradient-primary {
    background: linear-gradient(87deg, #0F5440 0, #45A89C 100%) !important;
}
.mask.bg-gradient-info {
    background: linear-gradient(87deg, #45A89C 0, #0F5440 100%) !important;
}

/* Fill and stroke for SVGs */
.fill-primary {
    fill: #0F5440 !important;
}
.stroke-primary {
    stroke: #0F5440 !important;
}
.fill-info {
    fill: #45A89C !important;
}
.stroke-info {
    stroke: #45A89C !important;
}
.fill-default {
    fill: #0F5440 !important;
}
.stroke-default {
    stroke: #0F5440 !important;
}

/* Custom Warning color for badges */
.badge-warning {
    color: #c38b00;
    background-color: #ffedb0;
}

.form-control{
    color: black !important;
}

.form-control:focus{
    color: black !important;
}

.avatar-xxs {
    font-size: 0.4375rem;
    width: 24px;
    height: 24px;
}

.btn-xs {
    font-size: 0.65rem;
    line-height: 1.2;
    padding: 0.25rem 0.5rem;
    border-radius: 0.375rem;
}


/* Text Color */
.text-orange {
    color : #ff7300;
    background-color: #fad4a3;
}

/* orange class for icons but with no background */
.icon-orange-no-bg {
    color : #ff7300;
}

/* Background Color */
.bg-orange {
    color : #ff7300;
    background-color: #fad4a3;
}

/* Badges */
.badge-orange {
    color : #ff7300;
    background-color: #fad4a3;
}

/* Buttons */
.btn-orange {
    color : #ff7300;
    background-color: #fad4a3;
}

.btn-orange:hover, .btn-orange:focus, .btn-orange:active {
    color : #ff7300;
    background-color: #fad4a3;
}

/* Select2 dropdown styling */
.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #0F5440 !important;
    color: #fff !important;
}
.select2-container--default .select2-results__option--selected {
    background-color: #45A89C !important;
    color: #fff !important;
}
.select2-container--default .select2-selection--single:focus,
.select2-container--default .select2-selection--multiple:focus {
    border-color: #0F5440 !important;
}
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--multiple {
    border-color: #0F5440 !important;
}

/* Choices.js dropdown styling */
.choices__list--dropdown .choices__item--selectable.is-highlighted {
    background-color: #0F5440 !important;
    color: #fff !important;
}
.choices__list--dropdown .choices__item--selectable.is-selected {
    background-color: #45A89C !important;
    color: #fff !important;
}

/* Native select option styling (limited browser support) */
select option:checked,
select option:hover {
    background-color: #0F5440 !important;
    color: #fff !important;
}

/* Bootstrap custom select */
.custom-select:focus {
    border-color: #0F5440 !important;
    box-shadow: 0 0 0 0.2rem rgba(15, 84, 64, 0.25) !important;
}

/* List group active items */
.list-group-item.active {
    background-color: #0F5440 !important;
    border-color: #0F5440 !important;
}
.list-group-item-action:hover,
.list-group-item-action:focus {
    color: #0F5440 !important;
}

/* Auth pages - clean white background with sticky footer */
html, body {
    height: 100%;
}
body.bg-auth {
    background-color: #ffffff !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 100vh !important;
}
body.bg-auth .main-content {
    background-color: #ffffff !important;
    flex: 1 0 auto !important;
}
body.bg-auth .navbar-top {
    background-color: #ffffff !important;
    box-shadow: none !important;
}
body.bg-auth .navbar-brand img {
    filter: none;
}
body.bg-auth .footer {
    background-color: #ffffff !important;
    border-top: 1px solid #e9ecef !important;
    flex-shrink: 0 !important;
}

/* You can continue to extend other components as needed... */
