/**
 * Theme Override - Primary Color: #2b828f (Teal)
 * This file overrides the default purple (#7367f0) with teal
 * Must be loaded AFTER core.css and theme-default.css
 */

:root {
  --bs-purple: #2b828f;
  --bs-primary: #2b828f;
  --bs-primary-rgb: 43, 130, 143;
  --bs-info: #0891b2;
  --bs-info-rgb: 8, 145, 178;
  --bs-link-color: #2b828f;
  --bs-link-color-rgb: 43, 130, 143;
  --bs-link-hover-color: #237078;
}

/* Text Primary */
.text-primary,
[class*="text-primary"] {
  color: #2b828f !important;
}

/* Background Primary */
.bg-primary:not([class*="bg-opacity"]),
[class*="bg-primary"]:not(.bg-label-primary):not([class*="bg-opacity"]) {
  background-color: #2b828f !important;
}

/* Buttons */
.btn-primary {
  background-color: #2b828f !important;
  border-color: #2b828f !important;
}

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

.btn-primary:focus,
.btn-primary.focus {
  box-shadow: 0 0.125rem 0.375rem 0 rgba(43, 130, 143, 0.3) !important;
}

.btn-outline-primary {
  color: #2b828f !important;
  border-color: #2b828f !important;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
  background-color: #2b828f !important;
  border-color: #2b828f !important;
  color: #fff !important;
}

.btn-label-primary {
  background-color: rgba(43, 130, 143, 0.12) !important;
  color: #2b828f !important;
}

.btn-label-primary:hover {
  background-color: #2b828f !important;
  color: #fff !important;
}

.btn-text-primary {
  color: #2b828f !important;
}

.btn-text-primary:hover {
  background-color: rgba(43, 130, 143, 0.08) !important;
}

/* Badges */
.badge.bg-primary {
  background-color: #2b828f !important;
}

.badge.bg-label-primary {
  background-color: rgba(43, 130, 143, 0.16) !important;
  color: #2b828f !important;
}

/* Alerts */
.alert-primary {
  background-color: rgba(43, 130, 143, 0.12) !important;
  border-color: rgba(43, 130, 143, 0.2) !important;
  color: #2b828f !important;
}

/* Forms */
.form-control:focus,
.form-select:focus {
  border-color: #2b828f !important;
  box-shadow: 0 0 0.25rem 0.05rem rgba(43, 130, 143, 0.1) !important;
}

.form-check-input:checked {
  background-color: #2b828f !important;
  border-color: #2b828f !important;
}

.form-check-input:focus {
  border-color: #2b828f !important;
  box-shadow: 0 0 0 8px rgba(43, 130, 143, 0.16) !important;
}

.form-check-input[type="checkbox"]:indeterminate {
  background-color: #2b828f !important;
  border-color: #2b828f !important;
}

.form-switch .form-check-input:checked {
  background-color: #2b828f !important;
}

.form-range::-webkit-slider-thumb {
  background-color: #2b828f !important;
}

.form-range::-moz-range-thumb {
  background-color: #2b828f !important;
}

.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 8px rgba(43, 130, 143, 0.16) !important;
}

.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 8px rgba(43, 130, 143, 0.16) !important;
}

/* Pagination */
.pagination .page-item.active .page-link {
  background-color: #2b828f !important;
  border-color: #2b828f !important;
}

.page-link {
  color: #2b828f !important;
}

.page-link:hover {
  color: #237078 !important;
}

/* Progress */
.progress-bar {
  background-color: #2b828f !important;
}

/* List Group */
.list-group-item.active {
  background-color: #2b828f !important;
  border-color: #2b828f !important;
}

.list-group-item-primary {
  background-color: rgba(43, 130, 143, 0.12) !important;
  color: #2b828f !important;
}

/* Nav Tabs */
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #2b828f !important;
  border-bottom-color: #2b828f !important;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  background-color: #2b828f !important;
}

/* Dropdown */
.dropdown-item.active,
.dropdown-item:active {
  background-color: #2b828f !important;
}

.dropdown-menu .dropdown-item:hover:not(.active),
.dropdown-menu .dropdown-item:focus:not(.active) {
  color: #2b828f !important;
  background-color: rgba(43, 130, 143, 0.08) !important;
}

/* Accordion */
.accordion-button:not(.collapsed) {
  color: #2b828f !important;
  background-color: rgba(43, 130, 143, 0.1) !important;
}

.accordion-button:focus {
  border-color: #2b828f !important;
  box-shadow: 0 0 0 0.2rem rgba(43, 130, 143, 0.25) !important;
}

/* Tables */
.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(43, 130, 143, 0.08) !important;
}

/* Cards */
.card.border-primary,
.card.border-start.border-primary {
  border-color: #2b828f !important;
}

/* Avatar */
.avatar-initial {
  background-color: #2b828f !important;
}

.avatar-initial.bg-label-primary {
  background-color: rgba(43, 130, 143, 0.16) !important;
  color: #2b828f !important;
}

/* Offcanvas */
.offcanvas-primary {
  background-color: #2b828f !important;
}

/* Tooltips */
.tooltip-primary .tooltip-inner {
  background-color: #2b828f !important;
}

.bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before,
.bs-tooltip-top .tooltip-arrow::before {
  border-top-color: #2b828f !important;
}

/* Borders */
.border-primary {
  border-color: #2b828f !important;
}

.border-top.border-primary,
.border-top-primary {
  border-top-color: #2b828f !important;
}

.border-bottom.border-primary,
.border-bottom-primary {
  border-bottom-color: #2b828f !important;
}

.border-start.border-primary,
.border-start-primary {
  border-left-color: #2b828f !important;
}

.border-end.border-primary,
.border-end-primary {
  border-right-color: #2b828f !important;
}

/* Dividers */
.divider.divider-primary .divider-text::before,
.divider.divider-primary .divider-text::after {
  border-color: #2b828f !important;
}

/* Links */
a {
  color: #2b828f;
}

a:hover {
  color: #237078;
}

/* Spinners */
.spinner-border.text-primary,
.spinner-grow.text-primary {
  color: #2b828f !important;
}

/* Menu / Sidebar - Inactive States (keep text black) */
.bg-menu-theme .menu-item:not(.active):not(.open) > .menu-link {
  color: #4c4e64 !important;
}

.bg-menu-theme .menu-item:not(.active):not(.open) > .menu-link .menu-icon {
  color: #6f6b7d !important;
}

/* Menu / Sidebar - Active States */
.bg-menu-theme.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle) {
  background: linear-gradient(270deg, rgba(43, 130, 143, 0.7) 0%, #2b828f 100%) !important;
  box-shadow: 0px 2px 6px 0px rgba(43, 130, 143, 0.3) !important;
  color: #fff !important;
}

.bg-menu-theme.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle)::before {
  background: #2b828f !important;
}

.bg-menu-theme.menu-vertical .menu-item.active > .menu-link .menu-icon,
.bg-menu-theme.menu-vertical .menu-item.active > .menu-link:not(.menu-toggle) .menu-icon {
  color: #fff !important;
}

.layout-wrapper:not(.layout-horizontal) .bg-menu-theme .menu-inner > .menu-item.active::before {
  background: #2b828f !important;
  background-color: #2b828f !important;
}

.bg-menu-theme .menu-link:hover,
.bg-menu-theme .menu-item:not(.active) > .menu-link:hover {
  background-color: rgba(43, 130, 143, 0.08) !important;
}

.bg-menu-theme .menu-item.open:not(.menu-item-closing) > .menu-toggle,
.bg-menu-theme .menu-item.active > .menu-link:not(.menu-toggle) + .menu-content-text {
  color: #2b828f !important;
}

.bg-menu-theme .menu-inner .menu-item.active > .menu-link.menu-toggle {
  color: #2b828f !important;
}

.bg-menu-theme .menu-inner .menu-item.active > .menu-link.menu-toggle .menu-icon {
  color: #2b828f !important;
}

/* Layout Navbar */
.layout-navbar .navbar-brand-text {
  color: #2b828f !important;
}

/* Breadcrumb */
.breadcrumb-item a {
  color: #2b828f !important;
}

.breadcrumb-item a:hover {
  color: #237078 !important;
}

/* Step Wizard */
.bs-stepper .step.active .bs-stepper-circle {
  background-color: #2b828f !important;
  box-shadow: 0 3px 6px 0 rgba(43, 130, 143, 0.4) !important;
}

.bs-stepper .step.crossed .bs-stepper-circle {
  background-color: #2b828f !important;
}

.bs-stepper .line::before {
  background-color: #2b828f !important;
}

/* Timeline */
.timeline-point-primary {
  background-color: #2b828f !important;
  box-shadow: 0 0 0 3px rgba(43, 130, 143, 0.16) !important;
}

/* App Calendar */
.fc .fc-button-primary {
  background-color: #2b828f !important;
  border-color: #2b828f !important;
}

.fc .fc-button-primary:hover {
  background-color: #237078 !important;
  border-color: #237078 !important;
}

.fc .fc-button-primary:not(:disabled).fc-button-active,
.fc .fc-button-primary:not(:disabled):active {
  background-color: #237078 !important;
  border-color: #237078 !important;
}

/* Sweet Alert */
.swal2-styled.swal2-confirm {
  background-color: #2b828f !important;
  border-color: #2b828f !important;
}

/* Select2 */
.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #2b828f !important;
}

/* Choices */
.choices__inner {
  border-color: #2b828f !important;
}

/* Tagify */
.tagify__tag {
  --tag-bg: rgba(43, 130, 143, 0.1);
  --tag-text-color: #2b828f;
}

/* Quill Editor */
.ql-snow.ql-toolbar button:hover,
.ql-snow .ql-toolbar button:hover,
.ql-snow.ql-toolbar button.ql-active,
.ql-snow .ql-toolbar button.ql-active {
  color: #2b828f !important;
}

.ql-snow.ql-toolbar button:hover .ql-stroke,
.ql-snow .ql-toolbar button:hover .ql-stroke,
.ql-snow.ql-toolbar button.ql-active .ql-stroke,
.ql-snow .ql-toolbar button.ql-active .ql-stroke {
  stroke: #2b828f !important;
}

.ql-snow.ql-toolbar button:hover .ql-fill,
.ql-snow .ql-toolbar button:hover .ql-fill,
.ql-snow.ql-toolbar button.ql-active .ql-fill,
.ql-snow .ql-toolbar button.ql-active .ql-fill {
  fill: #2b828f !important;
}

/* DataTables */
table.dataTable tbody tr.selected {
  background-color: rgba(43, 130, 143, 0.08) !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current {
  background: #2b828f !important;
  border-color: #2b828f !important;
}

/* Kanban */
.kanban-board-header.bg-primary {
  background-color: #2b828f !important;
}

/* ApexCharts */
.apexcharts-tooltip.apexcharts-theme-light {
  border-color: #2b828f !important;
}

/* Chart.js */
.chartjs-render-monitor {
  --chart-primary: #2b828f;
}

/* File Upload */
.custom-file-input:focus ~ .custom-file-label {
  border-color: #2b828f !important;
  box-shadow: 0 0 0 0.2rem rgba(43, 130, 143, 0.25) !important;
}

/* Range Slider noUiSlider */
.noUi-connect {
  background: #2b828f !important;
}

.noUi-handle {
  border-color: #2b828f !important;
}

/* Perfect Scrollbar */
.ps__thumb-y {
  background-color: rgba(43, 130, 143, 0.4) !important;
}

/* Waves Effect */
.waves-effect.waves-primary .waves-ripple {
  background: radial-gradient(rgba(43, 130, 143, 0.2) 0, rgba(43, 130, 143, 0.3) 40%, rgba(43, 130, 143, 0.4) 50%, rgba(43, 130, 143, 0.5) 60%, rgba(47, 43, 61, 0) 70%) !important;
}

/* Selection */
::selection {
  background-color: rgba(43, 130, 143, 0.3);
}

::-moz-selection {
  background-color: rgba(43, 130, 143, 0.3);
}

/* Focus Outline */
:focus-visible {
  outline-color: #2b828f !important;
}

/* Scrollbar */
::-webkit-scrollbar-thumb:hover {
  background-color: #2b828f !important;
}

/* ============================================
   INFO COLOR OVERRIDES (#0891b2 - Cyan)
   ============================================ */

/* Text Info */
.text-info,
[class*="text-info"] {
  color: #0891b2 !important;
}

/* Background Info */
.bg-info:not([class*="bg-opacity"]),
[class*="bg-info"]:not(.bg-label-info):not([class*="bg-opacity"]) {
  background-color: #0891b2 !important;
}

/* Buttons Info */
.btn-info {
  background-color: #0891b2 !important;
  border-color: #0891b2 !important;
}

.btn-info:hover,
.btn-info:focus,
.btn-info:active,
.btn-info.active {
  background-color: #0e7490 !important;
  border-color: #0e7490 !important;
}

.btn-outline-info {
  color: #0891b2 !important;
  border-color: #0891b2 !important;
}

.btn-outline-info:hover,
.btn-outline-info:focus,
.btn-outline-info:active {
  background-color: #0891b2 !important;
  border-color: #0891b2 !important;
  color: #fff !important;
}

.btn-label-info {
  background-color: rgba(8, 145, 178, 0.12) !important;
  color: #0891b2 !important;
}

.btn-label-info:hover {
  background-color: #0891b2 !important;
  color: #fff !important;
}

/* Badges Info */
.badge.bg-info {
  background-color: #0891b2 !important;
}

.badge.bg-label-info {
  background-color: rgba(8, 145, 178, 0.16) !important;
  color: #0891b2 !important;
}

/* Alerts Info */
.alert-info {
  background-color: rgba(8, 145, 178, 0.12) !important;
  border-color: rgba(8, 145, 178, 0.2) !important;
  color: #0891b2 !important;
}

/* Avatar Info */
.avatar-initial.bg-label-info {
  background-color: rgba(8, 145, 178, 0.16) !important;
  color: #0891b2 !important;
}

/* Border Info */
.border-info {
  border-color: #0891b2 !important;
}

/* Card Border Info */
.card.border-info,
.card.border-start.border-info {
  border-color: #0891b2 !important;
}
