/* ================================================================
   Beeclick — Violet Dark Theme Override
   Только цвета / границы / тени / состояния.
   Никакой правки layout, отступов, размеров, сетки.
   Подключается ПОСЛЕ plugins.dark.bundle.css и style.dark.bundle.css
   ================================================================ */

:root,
body.dark-mode {
    /* --- Поверхности --- */
    --bc-bg:            #0E0B14;   /* базовый фон */
    --bc-bg-2:          #121020;   /* чуть светлее (aside / topbar) */
    --bc-surface:       #16121F;   /* карточки, панели */
    --bc-surface-2:     #1C1728;   /* elevated (hover, dropdown) */
    --bc-surface-3:     #221C30;   /* самый светлый уровень */
    --bc-input:         #181322;   /* поля ввода */
    --bc-input-focus:   #1E1830;

    /* --- Границы --- */
    --bc-border:         #24202F;
    --bc-border-soft:    rgba(139, 92, 246, 0.08);
    --bc-border-strong:  #2E2842;
    --bc-border-accent:  rgba(139, 92, 246, 0.55);

    /* --- Акцент (фиолет) --- */
    --bc-accent:         #8B5CF6;
    --bc-accent-hover:   #A78BFA;
    --bc-accent-active:  #7C3AED;
    --bc-accent-soft:    rgba(139, 92, 246, 0.12);
    --bc-accent-softer:  rgba(139, 92, 246, 0.06);
    --bc-accent-glow:    0 0 0 3px rgba(139, 92, 246, 0.18);
    --bc-accent-glow-lg: 0 8px 28px -8px rgba(139, 92, 246, 0.45);

    /* --- Текст --- */
    --bc-text:        #ECEAF5;
    --bc-text-strong: #FFFFFF;
    --bc-text-muted:  #8A839E;
    --bc-text-dim:    #5C5770;

    /* --- Статусы (сохранены, но приглушены) --- */
    --bc-success: #34D399;
    --bc-warning: #A78BFA;        /* без оранжевого — мягкий фиолет */
    --bc-warning-soft: rgba(167, 139, 250, 0.14);
    --bc-warning-border: rgba(167, 139, 250, 0.32);
    --bc-danger:  #F43F5E;
    --bc-info:    #8B5CF6;

    /* Bootstrap / Metronic переменные — переопределяем здесь */
    --bs-primary:      var(--bc-accent);
    --bs-primary-rgb:  139, 92, 246;
    --bs-warning:      var(--bc-warning);
    --bs-warning-rgb:  167, 139, 250;
    --bs-link-color:   var(--bc-accent);
    --bs-link-hover-color: var(--bc-accent-hover);
    --bs-body-bg:      var(--bc-bg);
    --bs-body-color:   var(--bc-text);
    --bs-border-color: var(--bc-border);
}

/* ============================ БАЗА ============================ */
html, body, body.dark-mode {
    background-color: var(--bc-bg) !important;
    color: var(--bc-text) !important;
}

body.bg-light,
.bg-light,
.bg-body,
.bg-white {
    background-color: var(--bc-bg) !important;
    color: var(--bc-text) !important;
}

a { color: var(--bc-accent); }
a:hover { color: var(--bc-accent-hover); }

::selection { background: var(--bc-accent-soft); color: var(--bc-text-strong); }

/* ============================ ТЕКСТ ============================ */
.text-dark, .text-gray-900, .text-gray-800, .text-gray-700 { color: var(--bc-text) !important; }
.text-gray-600, .text-gray-500 { color: var(--bc-text-muted) !important; }
.text-gray-400, .text-gray-300, .text-muted { color: var(--bc-text-dim) !important; }
.text-white { color: var(--bc-text-strong) !important; }

.text-primary,
.link-primary { color: var(--bc-accent) !important; }
.text-primary:hover,
.link-primary:hover { color: var(--bc-accent-hover) !important; }

/* ============================ ASIDE / SIDEBAR ============================ */
.aside,
#kt_aside {
    background-color: var(--bc-bg-2) !important;
    border-right: 1px solid var(--bc-border) !important;
}

.aside-menu,
.menu {
    background-color: transparent !important;
}

.menu .menu-item .menu-link {
    color: var(--bc-text-muted) !important;
    border-radius: 10px;
    transition: background-color .15s ease, color .15s ease, box-shadow .15s ease;
}
.menu .menu-item .menu-link .menu-icon i,
.menu .menu-item .menu-link .menu-icon .svg-icon,
.menu .menu-item .menu-link .menu-icon svg [fill] {
    color: var(--bc-text-muted) !important;
    fill: var(--bc-text-muted) !important;
}

.menu .menu-item .menu-link:hover,
.menu .menu-item.hover > .menu-link,
.menu .menu-item .menu-link.hover {
    background-color: var(--bc-accent-softer) !important;
    color: var(--bc-text-strong) !important;
}
.menu .menu-item .menu-link:hover .menu-icon i,
.menu .menu-item .menu-link:hover .menu-icon .svg-icon,
.menu .menu-item .menu-link:hover .menu-icon svg [fill] {
    color: var(--bc-accent-hover) !important;
    fill: var(--bc-accent-hover) !important;
}

.menu .menu-item .menu-link.active,
.menu .menu-item.show > .menu-link,
.menu .menu-item .menu-link.active:hover {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-text-strong) !important;
    border: 1px solid var(--bc-border-accent) !important;
    box-shadow: var(--bc-accent-glow);
}
.menu .menu-item .menu-link.active .menu-icon i,
.menu .menu-item .menu-link.active .menu-icon .svg-icon,
.menu .menu-item .menu-link.active .menu-icon svg [fill] {
    color: var(--bc-accent) !important;
    fill: var(--bc-accent) !important;
}

.aside-logo { border-bottom: 1px solid var(--bc-border) !important; }

/* ============================ HEADER / TOPBAR ============================ */
.header,
#kt_header,
.toolbar {
    background-color: var(--bc-bg-2) !important;
    border-bottom: 1px solid var(--bc-border) !important;
}

.page-title, .page-title .breadcrumb-item { color: var(--bc-text) !important; }
.breadcrumb-item.text-muted, .breadcrumb-item a { color: var(--bc-text-muted) !important; }

/* ============================ КАРТОЧКИ / ПАНЕЛИ ============================ */
.card,
.modal-content,
.dropdown-menu,
.menu-sub-dropdown,
.offcanvas {
    background-color: var(--bc-surface) !important;
    border: 1px solid var(--bc-border) !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 20px -8px rgba(0, 0, 0, 0.5) !important;
    color: var(--bc-text) !important;
}

.card-header {
    background-color: transparent !important;
    border-bottom: 1px solid var(--bc-border) !important;
}
.card-title, .card-label { color: var(--bc-text) !important; }
.card-footer {
    background-color: transparent !important;
    border-top: 1px solid var(--bc-border) !important;
}

.dropdown-item {
    color: var(--bc-text-muted) !important;
}
.dropdown-item:hover,
.dropdown-item:focus {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-text-strong) !important;
}
.dropdown-item.active {
    background-color: var(--bc-accent) !important;
    color: #fff !important;
}

/* ============================ КНОПКИ ============================ */
.btn {
    border-radius: 10px !important;
    transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease, color .15s ease;
}

.btn-primary {
    background-color: var(--bc-accent) !important;
    border-color: var(--bc-accent) !important;
    color: #fff !important;
    box-shadow: 0 6px 18px -10px rgba(139, 92, 246, 0.7) !important;
}
.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--bc-accent-hover) !important;
    border-color: var(--bc-accent-hover) !important;
    color: #fff !important;
    box-shadow: var(--bc-accent-glow-lg) !important;
}
.btn-primary:active,
.btn-primary.active,
.btn-check:checked + .btn-primary {
    background-color: var(--bc-accent-active) !important;
    border-color: var(--bc-accent-active) !important;
}

.btn-light,
.btn-secondary,
.btn-light-primary {
    background-color: var(--bc-surface-2) !important;
    border: 1px solid var(--bc-border-strong) !important;
    color: var(--bc-text) !important;
}
.btn-light:hover,
.btn-secondary:hover,
.btn-light-primary:hover {
    background-color: var(--bc-accent-soft) !important;
    border-color: var(--bc-border-accent) !important;
    color: var(--bc-accent-hover) !important;
}

.btn-outline,
.btn-outline-primary {
    background-color: transparent !important;
    border: 1px solid var(--bc-border-accent) !important;
    color: var(--bc-accent) !important;
}
.btn-outline-primary:hover {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-accent-hover) !important;
    border-color: var(--bc-accent) !important;
    box-shadow: var(--bc-accent-glow);
}

.btn-active-light-primary:hover,
.btn-active-primary:hover {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-accent-hover) !important;
}

.btn-icon:hover .svg-icon,
.btn-icon:hover i { color: var(--bc-accent-hover) !important; fill: var(--bc-accent-hover) !important; }

/* Статусные кнопки — мягкие версии, без ядерных оттенков */
.btn-success, .badge-success, .bg-success, .btn-light-success {
    background-color: rgba(52, 211, 153, 0.12) !important;
    border-color: rgba(52, 211, 153, 0.3) !important;
    color: var(--bc-success) !important;
}
.btn-danger, .badge-danger, .bg-danger, .btn-light-danger {
    background-color: rgba(244, 63, 94, 0.12) !important;
    border-color: rgba(244, 63, 94, 0.3) !important;
    color: var(--bc-danger) !important;
}
.btn-warning, .badge-warning, .bg-warning, .btn-light-warning, .badge-light-warning {
    background-color: var(--bc-warning-soft) !important;
    border-color: var(--bc-warning-border) !important;
    color: var(--bc-warning) !important;
}
.btn-info, .badge-info, .bg-info, .btn-light-info {
    background-color: var(--bc-accent-soft) !important;
    border-color: var(--bc-border-accent) !important;
    color: var(--bc-accent) !important;
}

.badge-light-primary, .badge-primary {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-accent-hover) !important;
    border: 1px solid var(--bc-border-accent) !important;
}

/* ============================ ИНПУТЫ / SELECT ============================ */
.form-control,
.form-select,
.form-control-solid,
.form-select-solid,
textarea.form-control,
input.form-control {
    background-color: var(--bc-input) !important;
    border: 1px solid var(--bc-border) !important;
    color: var(--bc-text) !important;
    border-radius: 10px !important;
    transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

.form-control::placeholder,
textarea::placeholder { color: var(--bc-text-dim) !important; }

.form-control:focus,
.form-select:focus,
.form-control-solid:focus {
    background-color: var(--bc-input-focus) !important;
    border-color: var(--bc-accent) !important;
    box-shadow: var(--bc-accent-glow) !important;
    color: var(--bc-text-strong) !important;
}

.form-control:disabled,
.form-select:disabled {
    background-color: rgba(255,255,255,0.02) !important;
    color: var(--bc-text-dim) !important;
}

/* ─── Bootstrap validation artefacts: отключаем «прыгающую» рамку/иконку
      при вводе. Валидные/инвалидные SVG-иконки BS5 сдвигали правый padding,
      из-за чего обводка казалась кривой, пока пользователь не нажмёт Enter
      (submit → was-validated). Теперь состояния выровнены. */
.form-control:valid,
.form-control.is-valid,
.form-control:invalid,
.form-control.is-invalid,
.form-select:valid,
.form-select.is-valid,
.form-select:invalid,
.form-select.is-invalid,
.was-validated .form-control:valid,
.was-validated .form-control:invalid,
.was-validated .form-select:valid,
.was-validated .form-select:invalid {
    background-image: none !important;
    padding-right: 1rem !important;
    border-color: var(--bc-border) !important;
    box-shadow: none !important;
}
.form-control:valid:focus,
.form-control.is-valid:focus,
.form-control:invalid:focus,
.form-control.is-invalid:focus,
.form-select:valid:focus,
.form-select.is-valid:focus,
.form-select:invalid:focus,
.form-select.is-invalid:focus,
.was-validated .form-control:valid:focus,
.was-validated .form-control:invalid:focus,
.was-validated .form-select:valid:focus,
.was-validated .form-select:invalid:focus {
    background-image: none !important;
    padding-right: 1rem !important;
    border-color: var(--bc-accent) !important;
    box-shadow: var(--bc-accent-glow) !important;
}

/* Единый focus-ring — без outline/transform, чтобы border не «прыгал» */
.form-control,
.form-select,
.form-control-solid {
    outline: 0 !important;
    transform: none !important;
}
.form-control:focus,
.form-select:focus,
.form-control-solid:focus {
    outline: 0 !important;
    transform: none !important;
}

.input-group-text {
    background-color: var(--bc-surface-2) !important;
    border: 1px solid var(--bc-border) !important;
    color: var(--bc-text-muted) !important;
}

.form-label { color: var(--bc-text) !important; }
.form-check-input {
    background-color: var(--bc-input) !important;
    border-color: var(--bc-border-strong) !important;
}
.form-check-input:checked {
    background-color: var(--bc-accent) !important;
    border-color: var(--bc-accent) !important;
}
.form-check-input:focus {
    border-color: var(--bc-accent) !important;
    box-shadow: var(--bc-accent-glow) !important;
}

/* Переключатели */
.form-switch .form-check-input {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%238A839E'/%3e%3c/svg%3e") !important;
}
.form-switch .form-check-input:checked {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e") !important;
    background-color: var(--bc-accent) !important;
}

/* Select2 */
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
    background-color: var(--bc-input) !important;
    border: 1px solid var(--bc-border) !important;
    color: var(--bc-text) !important;
    border-radius: 10px !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered,
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
    color: var(--bc-text) !important;
}
.select2-container--default.select2-container--focus .select2-selection {
    border-color: var(--bc-accent) !important;
    box-shadow: var(--bc-accent-glow) !important;
}
.select2-dropdown {
    background-color: var(--bc-surface-2) !important;
    border: 1px solid var(--bc-border-strong) !important;
    color: var(--bc-text) !important;
}
.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-accent-hover) !important;
}
.select2-container--default .select2-results__option[aria-selected=true] {
    background-color: var(--bc-accent) !important;
    color: #fff !important;
}
.select2-search--dropdown .select2-search__field {
    background-color: var(--bc-input) !important;
    border: 1px solid var(--bc-border) !important;
    color: var(--bc-text) !important;
}

/* ============================ ТАБЛИЦЫ ============================ */
.table,
.dataTable {
    color: var(--bc-text) !important;
    --bs-table-bg: transparent;
    --bs-table-color: var(--bc-text);
    --bs-table-striped-bg: rgba(139, 92, 246, 0.03);
    --bs-table-hover-bg:   rgba(139, 92, 246, 0.06);
    --bs-table-border-color: var(--bc-border);
}

.table thead th,
.dataTable thead th {
    color: var(--bc-text-muted) !important;
    background-color: transparent !important;
    border-bottom: 1px solid var(--bc-border-strong) !important;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.table tbody tr,
.dataTable tbody tr {
    border-color: var(--bc-border) !important;
}
.table tbody tr:hover,
.dataTable tbody tr:hover {
    background-color: var(--bc-accent-softer) !important;
}
.table td,
.table th,
.dataTable td,
.dataTable th {
    border-color: var(--bc-border) !important;
}

.table-row-dashed > :not(caption) > * > * {
    border-bottom-style: dashed !important;
    border-bottom-color: var(--bc-border) !important;
}

/* DataTables элементы */
.dataTables_wrapper .dataTables_length select,
.dataTables_wrapper .dataTables_filter input {
    background-color: var(--bc-input) !important;
    border: 1px solid var(--bc-border) !important;
    color: var(--bc-text) !important;
    border-radius: 8px !important;
}
.page-item .page-link {
    background-color: transparent !important;
    border: 1px solid var(--bc-border) !important;
    color: var(--bc-text-muted) !important;
    border-radius: 8px !important;
    margin: 0 2px;
}
.page-item .page-link:hover {
    background-color: var(--bc-accent-soft) !important;
    border-color: var(--bc-border-accent) !important;
    color: var(--bc-accent-hover) !important;
}
.page-item.active .page-link {
    background-color: var(--bc-accent) !important;
    border-color: var(--bc-accent) !important;
    color: #fff !important;
    box-shadow: var(--bc-accent-glow);
}
.page-item.disabled .page-link { color: var(--bc-text-dim) !important; }

/* Metronic по умолчанию красит SVG-стрелки пагинации в #8e5ad7 (золотой/рыжий)
   на :hover / :focus. Перекрываем на фиолетовый. */
.page-item:hover:not(.offset) .page-link .previous,
.page-item:focus .page-link .previous,
.page-item.active .page-link .previous {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 9' fill='%238e5ad7'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.06463 4.42111C1.96161 4.22088 1.9809 3.9637 2.12863 3.78597L5.12847 0.177181C5.31402 -0.046034 5.63049 -0.060261 5.83532 0.145404C6.04015 0.351069 6.05578 0.698744 5.87023 0.921959L3.19406 4.14137L5.84414 7.06417C6.03896 7.27904 6.03835 7.62686 5.84278 7.84105C5.64721 8.05524 5.33073 8.05469 5.13591 7.83982L2.14806 4.54449C2.1141 4.50704 2.08629 4.46541 2.06463 4.42111Z'/%3e%3c/svg%3e") !important;
}
.page-item:hover:not(.offset) .page-link .next,
.page-item:focus .page-link .next,
.page-item.active .page-link .next {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 9' fill='%238e5ad7'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M5.93537 4.57889C6.03839 4.77912 6.0191 5.0363 5.87137 5.21403L2.87153 8.82282C2.68598 9.04603 2.36951 9.06026 2.16468 8.8546C1.95985 8.64893 1.94422 8.30126 2.12977 8.07804L4.80594 4.85863L2.15586 1.93583C1.96104 1.72096 1.96165 1.37314 2.15722 1.15895C2.35279 0.944757 2.66927 0.945311 2.86409 1.16018L5.85194 4.45551C5.8859 4.49296 5.91371 4.53459 5.93537 4.57889Z'/%3e%3c/svg%3e") !important;
}
.page-item:hover:not(.offset) .page-link,
.page-item:focus .page-link {
    color: var(--bc-accent-hover) !important;
    background-color: var(--bc-accent-soft) !important;
}
.page-item:hover:not(.offset) .page-link i,
.page-item:focus .page-link i { color: var(--bc-accent-hover) !important; }

/* ============================ МОДАЛКИ / OFFCANVAS ============================ */
.modal-backdrop.show { opacity: .65; background-color: #050308; }
.modal-header, .modal-footer { border-color: var(--bc-border) !important; }
.modal-title { color: var(--bc-text-strong) !important; }

/* ============================ ALERTS / NOTIFY ============================ */
.alert,
.alert-primary {
    background-color: var(--bc-accent-soft) !important;
    border: 1px solid var(--bc-border-accent) !important;
    color: var(--bc-text) !important;
    border-radius: 10px !important;
}
.alert-success {
    background-color: rgba(52, 211, 153, 0.08) !important;
    border-color: rgba(52, 211, 153, 0.3) !important;
    color: var(--bc-success) !important;
}
.alert-danger {
    background-color: rgba(244, 63, 94, 0.08) !important;
    border-color: rgba(244, 63, 94, 0.3) !important;
    color: var(--bc-danger) !important;
}
.alert-warning {
    background-color: var(--bc-warning-soft) !important;
    border-color: var(--bc-warning-border) !important;
    color: var(--bc-warning) !important;
}

/* ============================ SEPARATOR ============================ */
.separator, hr { border-color: var(--bc-border) !important; }

/* ============================ ИКОНКИ ============================ */
.svg-icon.svg-icon-primary, .svg-icon.svg-icon-primary svg [fill] {
    color: var(--bc-accent) !important;
    fill: var(--bc-accent) !important;
}

/* ============================ СТРАНИЦЫ LOGIN / REGISTER ============================ */
.bgi-attachment-fixed[style*="background-image"] {
    background-image: none !important;
    background-color: var(--bc-bg) !important;
}
#formBlocks {
    background-color: var(--bc-surface) !important;
    border: 1px solid var(--bc-border) !important;
    box-shadow: 0 24px 60px -20px rgba(0,0,0,.6), var(--bc-accent-glow-lg) !important;
    border-radius: 16px !important;
}

/* ============================ SCROLLBAR ============================ */
* {
    scrollbar-width: thin;
    scrollbar-color: var(--bc-border-strong) transparent;
}
*::-webkit-scrollbar { width: 10px; height: 10px; }
*::-webkit-scrollbar-track { background: transparent; }
*::-webkit-scrollbar-thumb {
    background-color: var(--bc-border-strong);
    border-radius: 10px;
    border: 2px solid var(--bc-bg);
}
*::-webkit-scrollbar-thumb:hover { background-color: var(--bc-accent); }

/* ============================ LOADER ============================ */
.page-loader { background-color: var(--bc-bg) !important; }
.spinner-border.text-primary { color: var(--bc-accent) !important; }

/* ============================ TOOLTIPS / POPOVERS ============================ */
.tooltip-inner,
.popover {
    background-color: var(--bc-surface-3) !important;
    color: var(--bc-text) !important;
    border: 1px solid var(--bc-border-strong) !important;
}
.popover-header {
    background-color: var(--bc-surface-2) !important;
    color: var(--bc-text-strong) !important;
    border-bottom: 1px solid var(--bc-border) !important;
}

/* ============================ FOCUS (общий) ============================ */
:focus-visible {
    outline: none;
    box-shadow: var(--bc-accent-glow) !important;
}

/* ============================ SYMBOL / AVATAR ============================ */
.symbol.symbol-light-primary > .symbol-label,
.symbol .symbol-label.bg-light-primary {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-accent-hover) !important;
}

/* ============================ CHECKBOX / RADIO ACCENT ============================ */
input[type="checkbox"]:checked,
input[type="radio"]:checked {
    accent-color: var(--bc-accent);
}

/* ============================ btn-active-color-* HOVER ИСПРАВЛЕНИЯ ============================ */
/* Metronic paints text/icon color on hover via btn-active-color-warning/danger/primary.
   Наводка на «экшен-кнопки» не должна уходить в оранжевый. */
.btn.btn-active-color-warning:hover,
.btn.btn-active-color-warning:focus,
.btn.btn-active-color-warning:active,
.btn.btn-active-color-warning.active,
.btn.btn-active-color-warning:hover i,
.btn.btn-active-color-warning:hover .svg-icon,
.btn.btn-active-color-warning:hover .svg-icon svg [fill] {
    color: var(--bc-accent-hover) !important;
    fill: var(--bc-accent-hover) !important;
}

.btn.btn-active-color-primary:hover,
.btn.btn-active-color-primary:focus,
.btn.btn-active-color-primary:active,
.btn.btn-active-color-primary.active,
.btn.btn-active-color-primary:hover i,
.btn.btn-active-color-primary:hover .svg-icon,
.btn.btn-active-color-primary:hover .svg-icon svg [fill] {
    color: var(--bc-accent-hover) !important;
    fill: var(--bc-accent-hover) !important;
}

.btn.btn-bg-light {
    background-color: var(--bc-surface-2) !important;
    border: 1px solid var(--bc-border) !important;
    color: var(--bc-text-muted) !important;
}
.btn.btn-bg-light:hover {
    background-color: var(--bc-accent-soft) !important;
    border-color: var(--bc-border-accent) !important;
    color: var(--bc-accent-hover) !important;
}

.btn.btn-light-warning,
.btn.btn-light-warning:hover,
.btn.btn-light-warning:focus,
.btn.btn-light-warning.active {
    background-color: var(--bc-accent-soft) !important;
    border: 1px solid var(--bc-border-accent) !important;
    color: var(--bc-accent-hover) !important;
}
.btn.btn-light-warning:hover {
    background-color: var(--bc-accent) !important;
    color: #fff !important;
    border-color: var(--bc-accent) !important;
}

.btn.btn-light-danger { color: var(--bc-danger) !important; }
.btn.btn-light-danger:hover {
    background-color: rgba(244, 63, 94, 0.22) !important;
    color: var(--bc-danger) !important;
    border-color: rgba(244, 63, 94, 0.5) !important;
}

.text-hover-primary:hover,
.text-hover-warning:hover,
a.text-hover-primary:hover,
a.text-hover-warning:hover {
    color: var(--bc-accent-hover) !important;
}

/* ============================ ЖЁЛТЫЙ/ОРАНЖЕВЫЙ WARNING → ФИОЛЕТ ============================ */
/* Metronic иногда использует warning/orange для акцентов (иконки, обводки, бэйджи).
   Принудительно перекрашиваем, чтобы нигде не осталось жёлтого. */
.text-warning,
.text-orange,
.text-yellow,
.text-light-warning,
.text-active-warning,
a.text-warning { color: var(--bc-accent) !important; }

.bg-warning,
.bg-orange,
.bg-yellow,
.bg-light-warning {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-accent-hover) !important;
}

.btn-warning,
.btn.btn-warning,
.btn-light-warning,
.btn-active-warning {
    background-color: var(--bc-accent) !important;
    border-color: var(--bc-accent) !important;
    color: #fff !important;
}
.btn-warning:hover,
.btn-light-warning:hover {
    background-color: var(--bc-accent-hover) !important;
    border-color: var(--bc-accent-hover) !important;
}

.border-warning,
.border-orange,
.border-yellow {
    border-color: var(--bc-border-accent) !important;
}

.svg-icon.svg-icon-warning,
.svg-icon.svg-icon-warning svg [fill],
.svg-icon.svg-icon-orange svg [fill],
i.text-warning,
i.text-orange {
    color: var(--bc-accent) !important;
    fill: var(--bc-accent) !important;
}

/* Инлайн-стили с жёлтыми хексами */
[style*="#f8a204" i],
[style*="#F8A204" i],
[style*="#ffc107" i],
[style*="#FFC107" i],
[style*="#ffb822" i],
[style*="#FFB822" i],
[style*="#ffd600" i],
[style*="#FFD600" i] {
    color: var(--bc-accent) !important;
}

/* ============================ КНОПКА "LANG" / "THEME" в header ============================ */
.btn.btn-icon.btn-active-light,
.btn.btn-icon.btn-active-light-primary {
    color: var(--bc-text-muted) !important;
}
.btn.btn-icon.btn-active-light:hover,
.btn.btn-icon.btn-active-light-primary:hover {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-accent-hover) !important;
}

/* ============================ HELP DRAWER (Write to support) ============================ */
.explore-btn-primary {
    border: 0 !important;
    color: #fff !important;
    background-color: var(--bc-accent) !important;
}
.explore-btn-primary:hover,
.explore-btn-primary:focus,
.explore-btn-primary:active {
    color: #fff !important;
    background-color: var(--bc-accent-active) !important;
}
.explore-btn-toggle:hover,
.explore-btn-toggle:focus,
.explore-btn-toggle:active {
    color: #fff !important;
    background-color: var(--bc-accent) !important;
}
.explore-btn-dismiss:hover i,
.explore-btn-dismiss:hover .svg-icon {
    color: var(--bc-accent-hover) !important;
}
.explore-link { color: var(--bc-accent) !important; }
.explore-link:hover { color: var(--bc-accent-hover) !important; }
.explore-link-hover:hover { color: var(--bc-accent-hover) !important; }

/* ============================ SELECT2 (bootstrap5 variant) ============================ */
.select2-container--bootstrap5 .select2-selection {
    background-color: var(--bc-input) !important;
    border: 1px solid var(--bc-border) !important;
    color: var(--bc-text) !important;
    border-radius: 10px !important;
}
.select2-container--bootstrap5 .select2-selection .select2-selection__rendered,
.select2-container--bootstrap5 .select2-selection .select2-selection__placeholder {
    color: var(--bc-text) !important;
}
.select2-container--bootstrap5.select2-container--focus .select2-selection,
.select2-container--bootstrap5.select2-container--open .select2-selection {
    border-color: var(--bc-accent) !important;
    box-shadow: var(--bc-accent-glow) !important;
}
.select2-container--bootstrap5.select2-container--focus .form-select-solid,
.select2-container--bootstrap5.select2-container--open .form-select-solid {
    background-color: var(--bc-input-focus) !important;
}
.select2-container--bootstrap5 .select2-selection--multiple .select2-selection__rendered .select2-selection__choice {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-accent-hover) !important;
    border: 1px solid var(--bc-border-accent) !important;
}
.select2-container--bootstrap5 .select2-selection--multiple .select2-selection__rendered .select2-selection__choice .select2-selection__choice__display {
    color: var(--bc-accent-hover) !important;
}
.select2-container--bootstrap5 .select2-selection--multiple .select2-selection__rendered .select2-selection__choice .select2-selection__choice__remove {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23A78BFA'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") !important;
}
.select2-container--bootstrap5 .select2-selection--multiple .select2-selection__rendered .select2-selection__choice .select2-selection__choice__remove:hover {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%238B5CF6'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") !important;
}
.select2-container--bootstrap5 .select2-dropdown {
    background-color: var(--bc-surface-2) !important;
    border: 1px solid var(--bc-border-strong) !important;
    box-shadow: var(--bc-accent-glow-lg) !important;
}
.select2-container--bootstrap5 .select2-dropdown .select2-search .select2-search__field {
    background-color: var(--bc-input) !important;
    border: 1px solid var(--bc-border) !important;
    color: var(--bc-text) !important;
}
.select2-container--bootstrap5 .select2-dropdown .select2-results__option {
    color: var(--bc-text) !important;
}
.select2-container--bootstrap5 .select2-dropdown .select2-results__option.select2-results__option--highlighted {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-accent-hover) !important;
}
.select2-container--bootstrap5 .select2-dropdown .select2-results__option.select2-results__option--selected {
    background-color: var(--bc-accent) !important;
    color: #fff !important;
}
.select2-container--bootstrap5 .select2-selection__clear:hover {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%238B5CF6'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") !important;
}

/* ============================ TAGIFY (GEO filter) ============================ */
.tagify {
    --tagify-dd-color-primary: var(--bc-accent) !important;
    --tagify-dd-bg-color:      var(--bc-surface-2) !important;
    --tags-border-color:       var(--bc-border) !important;
    --tags-hover-border-color: var(--bc-border-strong) !important;
    --tags-focus-border-color: var(--bc-accent) !important;
    --tag-bg:                  var(--bc-accent-soft) !important;
    --tag-hover:               var(--bc-accent-soft) !important;
    --tag-text-color:          var(--bc-accent-hover) !important;
    --tag-text-color--edit:    var(--bc-text-strong) !important;
    --tag-remove-bg:           rgba(244, 63, 94, 0.18) !important;
    --tag-remove-btn-color:    var(--bc-accent-hover) !important;
    --tag-remove-btn-bg:       transparent !important;
    --tag-remove-btn-bg--hover: transparent !important;
    --input-color:             var(--bc-text) !important;
    --placeholder-color:       var(--bc-text-dim) !important;
    --placeholder-color-focus: var(--bc-text-muted) !important;
    background-color: var(--bc-input) !important;
    border: 1px solid var(--bc-border) !important;
    color: var(--bc-text) !important;
    border-radius: 10px !important;
    line-height: 1.5 !important;
}
.tagify.tagify--focus {
    border-color: var(--bc-accent) !important;
    box-shadow: var(--bc-accent-glow) !important;
    background-color: var(--bc-input-focus) !important;
}
.tagify .tagify__tag > div {
    color: var(--bc-accent-hover) !important;
}
.tagify .tagify__tag .tagify__tag__removeBtn {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23A78BFA'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") !important;
}
.tagify .tagify__tag .tagify__tag__removeBtn:hover {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23F43F5E'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") !important;
}
.tagify__input {
    color: var(--bc-text) !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    padding: 2px 4px !important;
    margin: 2px !important;
    min-width: 80px !important;
}
.tagify__input:focus,
.tagify__input:focus-visible {
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    background: transparent !important;
}
.tagify__input::before {
    color: var(--bc-text-dim) !important;
}
/* small variant used inside split-rotation rows */
.tagify--sm {
    min-height: 32px !important;
    padding: 2px 4px !important;
    border-radius: 8px !important;
    flex: 1 1 auto;
}
.tagify--sm .tagify__input { font-size: 0.85rem !important; min-width: 60px !important; }
.tagify--sm .tagify__tag   { margin: 2px 0 2px 4px !important; }
.tagify__dropdown {
    box-shadow: var(--bc-accent-glow-lg) !important;
}
.tagify__dropdown__wrapper {
    background-color: var(--bc-surface-2) !important;
    border: 1px solid var(--bc-border-strong) !important;
    color: var(--bc-text) !important;
}
.tagify__dropdown__item {
    color: var(--bc-text) !important;
}
.tagify__dropdown__item--active,
.tagify__dropdown__item:hover {
    background-color: var(--bc-accent-soft) !important;
    color: var(--bc-accent-hover) !important;
}

/* ============================ ПОЛНАЯ ЗАЧИСТКА ОРАНЖЕВОГО/ЖЁЛТОГО ============================ */
/* Закрываем все оставшиеся Metronic-классы, где бандл задаёт оранжевый/жёлтый. */
.badge-light-warning,
.symbol.symbol-light-warning > .symbol-label,
.symbol-label.bg-light-warning,
.btn.btn-active-light-warning,
.btn.btn-active-warning,
.btn.btn-color-warning,
.btn.btn-bg-light-warning,
.btn.btn-hover-warning:hover,
.btn.btn-hover-light-warning:hover,
.btn-outline-warning,
.btn-outline-warning:hover,
.progress-bar-warning,
.bg-warning-subtle,
.text-warning-emphasis,
.link-warning,
a.link-warning {
    background-color: var(--bc-warning-soft) !important;
    color: var(--bc-warning) !important;
    border-color: var(--bc-warning-border) !important;
}

.progress-bar.bg-warning,
.progress .bg-warning {
    background-color: var(--bc-warning) !important;
    color: #fff !important;
}

.btn-outline-warning {
    background-color: transparent !important;
}

.text-warning,
.text-warning-emphasis,
.link-warning,
a.link-warning,
a.text-warning,
.btn.btn-color-warning,
.btn-link-warning {
    color: var(--bc-warning) !important;
}

/* Toastr / Swal / noUi / Kanban / прочее, что ещё использует warning */
.toastr-warning,
.toast-warning,
#toast-container > .toast-warning,
.swal2-icon.swal2-warning,
.swal2-warning,
.noUi-connects .noUi-warning,
.kanban-board .kanban-item.warning,
.fc-event-warning,
.fc-event.warning {
    background-color: var(--bc-warning-soft) !important;
    color: var(--bc-warning) !important;
    border-color: var(--bc-warning-border) !important;
}

/* Любые инлайн-стили с характерными Metronic/Bootstrap жёлтыми хексами */
[style*="#FFA800" i],
[style*="#ffa800" i],
[style*="#FFC700" i],
[style*="#ffc700" i],
[style*="#F6C000" i],
[style*="#f6c000" i],
[style*="#FFC000" i],
[style*="#ffc000" i],
[style*="#DB9E17" i],
[style*="#db9e17" i],
[style*="#DB9E00" i],
[style*="#db9e00" i],
[style*="#B68300" i],
[style*="#b68300" i],
[style*="#F59E0B" i],
[style*="#f59e0b" i],
[style*="orange" i],
[style*="yellow" i] {
    color: var(--bc-warning) !important;
    background-color: transparent !important;
    border-color: var(--bc-warning-border) !important;
}

/* SVG внутри warning-иконок: принудительно перекрасить любой fill="#FFA800" и т.п. */
.svg-icon svg [fill="#FFA800"],
.svg-icon svg [fill="#ffa800"],
.svg-icon svg [fill="#FFC700"],
.svg-icon svg [fill="#ffc700"],
.svg-icon svg [fill="#FFB822"],
.svg-icon svg [fill="#ffb822"],
.svg-icon svg [fill="#F59E0B"],
.svg-icon svg [fill="#f59e0b"] {
    fill: var(--bc-warning) !important;
}
