/*
 * Theme-aware content tokens.
 * This file intentionally loads after vendor and theme CSS so content components
 * stay readable when Theme Customizer switches between custom themes.
 */
:root,
[data-bs-theme="light"] {
  --simoris-content-bg: #f6f7fb;
  --simoris-surface: #ffffff;
  --simoris-surface-soft: #f8fafc;
  --simoris-surface-strong: #eef2f7;
  --simoris-text: #334155;
  --simoris-text-strong: #0f172a;
  --simoris-text-muted: #64748b;
  --simoris-border: #d8dee8;
  --simoris-border-soft: #e7ebf2;
  --simoris-input-bg: #ffffff;
  --simoris-input-text: #1f2937;
  --simoris-placeholder: #8b97a8;
  --simoris-table-row: #ffffff;
  --simoris-table-row-alt: #f8fafc;
  --simoris-table-hover: #eef5ff;
  --simoris-info-bg: #e9f7ff;
  --simoris-info-text: #164863;
  --simoris-info-border: #8ed7f6;
  color-scheme: light;
}

[data-bs-theme="bodered-theme"] {
  --simoris-content-bg: #f7f8fb;
  --simoris-surface: #ffffff;
  --simoris-surface-soft: #fbfcfe;
  --simoris-surface-strong: #f1f4f8;
  --simoris-text: #334155;
  --simoris-text-strong: #111827;
  --simoris-text-muted: #64748b;
  --simoris-border: #cbd5e1;
  --simoris-border-soft: #dfe6ef;
  --simoris-input-bg: #ffffff;
  --simoris-input-text: #1f2937;
  --simoris-placeholder: #8b97a8;
  --simoris-table-row: #ffffff;
  --simoris-table-row-alt: #f8fafc;
  --simoris-table-hover: #edf4ff;
  --simoris-info-bg: #e9f7ff;
  --simoris-info-text: #164863;
  --simoris-info-border: #8ed7f6;
  color-scheme: light;
}

[data-bs-theme="blue-theme"] {
  --simoris-content-bg: #060b28;
  --simoris-surface: #11173c;
  --simoris-surface-soft: #0c1233;
  --simoris-surface-strong: #181f4a;
  --simoris-text: #d7deea;
  --simoris-text-strong: #f8fbff;
  --simoris-text-muted: #a9b4c7;
  --simoris-border: rgba(191, 219, 254, 0.24);
  --simoris-border-soft: rgba(191, 219, 254, 0.14);
  --simoris-input-bg: #0d1438;
  --simoris-input-text: #f8fbff;
  --simoris-placeholder: #96a3b8;
  --simoris-table-row: rgba(12, 18, 51, 0.86);
  --simoris-table-row-alt: rgba(18, 25, 62, 0.9);
  --simoris-table-hover: rgba(37, 99, 235, 0.18);
  --simoris-info-bg: rgba(14, 165, 233, 0.14);
  --simoris-info-text: #dff6ff;
  --simoris-info-border: rgba(125, 211, 252, 0.7);
  color-scheme: dark;
}

[data-bs-theme="dark"] {
  --simoris-content-bg: #181c1f;
  --simoris-surface: #22272b;
  --simoris-surface-soft: #1d2226;
  --simoris-surface-strong: #2b3035;
  --simoris-text: #d8dee5;
  --simoris-text-strong: #f8f9fa;
  --simoris-text-muted: #b5bec8;
  --simoris-border: #495057;
  --simoris-border-soft: rgba(255, 255, 255, 0.13);
  --simoris-input-bg: #1f2428;
  --simoris-input-text: #f8f9fa;
  --simoris-placeholder: #9aa4af;
  --simoris-table-row: #1f2428;
  --simoris-table-row-alt: #242a2f;
  --simoris-table-hover: #2b3238;
  --simoris-info-bg: rgba(13, 202, 240, 0.13);
  --simoris-info-text: #d8f7ff;
  --simoris-info-border: rgba(110, 223, 246, 0.62);
  color-scheme: dark;
}

[data-bs-theme="semi-dark"] {
  --simoris-content-bg: #f4f6fb;
  --simoris-surface: #ffffff;
  --simoris-surface-soft: #f8fafc;
  --simoris-surface-strong: #eef2f7;
  --simoris-text: #334155;
  --simoris-text-strong: #0f172a;
  --simoris-text-muted: #64748b;
  --simoris-border: #d8dee8;
  --simoris-border-soft: #e7ebf2;
  --simoris-input-bg: #ffffff;
  --simoris-input-text: #1f2937;
  --simoris-placeholder: #8b97a8;
  --simoris-table-row: #ffffff;
  --simoris-table-row-alt: #f8fafc;
  --simoris-table-hover: #eef5ff;
  --simoris-info-bg: #e9f7ff;
  --simoris-info-text: #164863;
  --simoris-info-border: #8ed7f6;
  color-scheme: light;
}

body {
  --bs-heading-color: var(--simoris-text-strong);
  --bs-body-color: var(--simoris-text);
  --bs-emphasis-color: var(--simoris-text-strong);
  --bs-secondary-color: var(--simoris-text-muted);
  --bs-border-color: var(--simoris-border);
  --bs-border-color-translucent: var(--simoris-border-soft);
  color: var(--simoris-text);
}

.main-wrapper .main-content {
  color: var(--simoris-text);
}

.main-wrapper .main-content .card,
.modal-content,
.dropdown-menu,
.popover,
.offcanvas,
.toast {
  background-color: var(--simoris-surface);
  color: var(--simoris-text);
  border-color: var(--simoris-border-soft);
}

[data-bs-theme="blue-theme"] .main-wrapper .main-content .card {
  background-image: linear-gradient(127deg, rgba(6, 11, 40, 0.96) 19%, rgba(18, 25, 62, 0.8) 77%);
}

.modal-header,
.modal-footer,
.offcanvas-header {
  border-color: var(--simoris-border-soft);
}

.modal-header:not([class*="bg-"]):not([class*="bg-grd"]),
.modal-footer,
.offcanvas-header {
  background-color: var(--simoris-surface-strong);
  color: var(--simoris-text-strong);
}

.card-title,
.modal-title,
.offcanvas-title,
.main-wrapper .main-content h1,
.main-wrapper .main-content h2,
.main-wrapper .main-content h3,
.main-wrapper .main-content h4,
.main-wrapper .main-content h5,
.main-wrapper .main-content h6 {
  color: var(--simoris-text-strong);
}

.modal-header[class*="bg-"] .modal-title,
.modal-header[class*="bg-grd"] .modal-title,
.modal-header[class*="bg-"] .primaery-menu-close,
.modal-header[class*="bg-grd"] .primaery-menu-close {
  color: #ffffff;
}

label,
.form-label,
.col-form-label,
.dataTables_wrapper,
.table {
  color: var(--simoris-text);
}

.form-text,
.text-muted,
.small.text-muted,
.dataTables_info,
.dataTables_length label,
.dataTables_filter label,
.page-breadcrumb .breadcrumb-item,
.page-breadcrumb .breadcrumb-item a {
  color: var(--simoris-text-muted) !important;
}

.text-body,
.text-body-emphasis,
.main-wrapper .main-content .text-dark,
.modal .text-dark,
.offcanvas .text-dark {
  color: var(--simoris-text-strong) !important;
}

.form-control,
.form-select,
.input-group-text,
.bootstrap-tagsinput {
  background-color: var(--simoris-input-bg);
  color: var(--simoris-input-text);
  border-color: var(--simoris-border);
}

.form-control:focus,
.form-select:focus {
  background-color: var(--simoris-input-bg);
  color: var(--simoris-input-text);
  border-color: #38bdf8;
  box-shadow: 0 0 0 0.2rem rgba(56, 189, 248, 0.18);
}

.form-control:disabled,
.form-control[readonly],
.form-select:disabled {
  background-color: var(--simoris-surface-strong);
  color: var(--simoris-text-muted);
  border-color: var(--simoris-border-soft);
  opacity: 1;
}

.form-control::placeholder,
textarea::placeholder,
input::placeholder {
  color: var(--simoris-placeholder) !important;
  opacity: 1;
}

.invalid-feedback,
.error {
  color: #ff6b81;
}

.table {
  --bs-table-color: var(--simoris-text);
  --bs-table-bg: transparent;
  --bs-table-border-color: var(--simoris-border-soft);
  --bs-table-striped-color: var(--simoris-text);
  --bs-table-striped-bg: var(--simoris-table-row-alt);
  --bs-table-hover-color: var(--simoris-text-strong);
  --bs-table-hover-bg: var(--simoris-table-hover);
  border-color: var(--simoris-border-soft);
}

.table > :not(caption) > * > * {
  color: var(--simoris-text);
  background-color: var(--simoris-table-row);
  border-color: var(--simoris-border-soft);
}

.table > thead > tr > * {
  color: var(--simoris-text-strong);
  background-color: var(--simoris-surface-soft);
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  color: var(--simoris-text);
  background-color: var(--simoris-table-row-alt);
}

.table-hover > tbody > tr:hover > * {
  color: var(--simoris-text-strong);
  background-color: var(--simoris-table-hover);
}

.dataTables_wrapper .dataTables_length select,
.dataTables_wrapper .dataTables_filter input {
  background-color: var(--simoris-input-bg);
  color: var(--simoris-input-text);
  border-color: var(--simoris-border);
}

.page-link {
  background-color: var(--simoris-surface);
  color: var(--simoris-text);
  border-color: var(--simoris-border-soft);
}

.page-link:hover,
.page-link:focus {
  background-color: var(--simoris-table-hover);
  color: var(--simoris-text-strong);
  border-color: var(--simoris-border);
}

.active > .page-link,
.page-link.active {
  color: #ffffff;
}

.alert.bg-info,
.alert-info,
.bg-info.bg-opacity-10 {
  background-color: var(--simoris-info-bg) !important;
  color: var(--simoris-info-text) !important;
  border-color: var(--simoris-info-border) !important;
}

.alert.bg-info .text-muted,
.alert-info .text-muted,
.bg-info.bg-opacity-10 .text-muted {
  color: color-mix(in srgb, var(--simoris-info-text) 76%, transparent) !important;
}

.alert.bg-warning,
.alert-warning,
.bg-warning.bg-opacity-10 {
  color: var(--simoris-text-strong) !important;
}

.dropdown-item {
  color: var(--simoris-text);
}

.dropdown-item:hover,
.dropdown-item:focus {
  background-color: var(--simoris-table-hover);
  color: var(--simoris-text-strong);
}

.select2-container--bootstrap-5 .select2-selection {
  background-color: var(--simoris-input-bg) !important;
  color: var(--simoris-input-text) !important;
  border-color: var(--simoris-border) !important;
}

.select2-container--bootstrap-5.select2-container--focus .select2-selection,
.select2-container--bootstrap-5.select2-container--open .select2-selection {
  border-color: #38bdf8 !important;
  box-shadow: 0 0 0 0.2rem rgba(56, 189, 248, 0.18) !important;
}

.select2-container--bootstrap-5 .select2-selection__rendered,
.select2-container--bootstrap-5 .select2-selection__placeholder,
.select2-container--bootstrap-5 .select2-selection__choice__display {
  color: var(--simoris-input-text) !important;
}

.select2-container--bootstrap-5 .select2-selection__placeholder {
  color: var(--simoris-placeholder) !important;
}

.select2-container--bootstrap-5 .select2-selection__clear,
.select2-container--bootstrap-5 .select2-selection__choice__remove,
.select2-container--bootstrap-5 .select2-selection__arrow b {
  color: var(--simoris-text-muted) !important;
  border-color: var(--simoris-text-muted) transparent transparent transparent !important;
}

.select2-container--bootstrap-5 .select2-selection__choice {
  background-color: var(--simoris-surface-strong) !important;
  color: var(--simoris-input-text) !important;
  border-color: var(--simoris-border) !important;
}

.select2-dropdown {
  background-color: var(--simoris-surface) !important;
  color: var(--simoris-text) !important;
  border-color: var(--simoris-border) !important;
}

.select2-search__field {
  background-color: var(--simoris-input-bg) !important;
  color: var(--simoris-input-text) !important;
  border-color: var(--simoris-border) !important;
}

.select2-results__option {
  color: var(--simoris-text);
}

.select2-results__option--selected {
  background-color: var(--simoris-surface-strong) !important;
  color: var(--simoris-text-strong) !important;
}

.select2-container--bootstrap-5 .select2-results__option--highlighted,
.select2-container--bootstrap-5 .select2-results__option--highlighted.select2-results__option[aria-selected="true"] {
  background-color: #0d6efd !important;
  color: #ffffff !important;
}

.offcanvas .btn-outline-secondary {
  color: var(--simoris-text);
  border-color: var(--simoris-border);
}

.offcanvas .btn-check:checked + .btn-outline-secondary,
.offcanvas .btn-outline-secondary:hover,
.offcanvas .btn-outline-secondary:focus {
  background-color: var(--simoris-surface-strong);
  color: var(--simoris-text-strong);
  border-color: var(--simoris-border);
}
