/* Loaded only by presets that opt in to semantic component colors. */
.card, .modal-content, .dropdown-menu, .menu-sub-dropdown {
    --bs-secondary-color: var(--admin-text-muted);
    --bs-text-muted: var(--admin-text-muted);
    --bs-gray-500: var(--admin-text-muted);
    --bs-gray-600: var(--admin-text-muted);
    --bs-text-gray-400: var(--admin-text-muted);
    --bs-text-gray-500: var(--admin-text-muted);
    --bs-text-gray-600: var(--admin-text-muted);
}
.form-control::placeholder, .select2-search__field::placeholder {
    color: var(--admin-text-muted) !important;
    opacity: 1;
}
.form-control, .form-select, .input-group-text { border-color: var(--admin-border); }
.form-control:disabled, .form-select:disabled { border-color: var(--admin-border); }
.backstrap-file-label, .btn-file,
.select2-container--bootstrap .select2-selection,
.select2-container--default .select2-selection, .select2-dropdown,
.select2-container--bootstrap .select2-selection.select2-selection--multiple .select2-search--inline .select2-search__field {
    border-color: var(--admin-border) !important;
}
.select2-container--bootstrap.select2-container--focus .select2-selection,
.select2-container--default.select2-container--focus .select2-selection,
.select2-container--open .select2-selection { border-color: var(--admin-action) !important; }
.select2-search__field:focus {
    outline: 2px solid var(--admin-focus-ring);
    outline-offset: 1px;
}
.form-control.form-control-solid, .form-select.form-select-solid {
    background-color: var(--admin-surface);
    border-color: var(--admin-border);
    color: var(--admin-text);
}
.navbar-filters .nav-link { color: var(--admin-text-muted-on-background); }
.navbar-filters .nav-link:hover, .navbar-filters .nav-link:focus,
.navbar-filters .active > .nav-link { color: var(--admin-action); }
:root .table-bordered tbody tr td { border-bottom-color: var(--admin-border); }
:root table.dataTable .highlight { background-color: var(--admin-background) !important; }
:root table.dataTable .selected {
    background-color: var(--admin-action) !important;
    color: var(--admin-button-text);
}
.invalid-feedback, .invalid-tooltip { color: var(--bs-danger); }
.invalid-tooltip { background-color: var(--bs-danger-light); }
.valid-feedback { color: var(--bs-success); }
.valid-tooltip { color: var(--bs-success-inverse); background-color: var(--bs-success); }
.form-control.is-valid, .was-validated .form-control:valid { background-image: var(--admin-valid-icon); }
.form-control.is-invalid, .was-validated .form-control:invalid { background-image: var(--admin-invalid-icon); }
.form-select.is-valid, .was-validated .form-select:valid { --bs-form-select-bg-icon: var(--admin-valid-icon) !important; }
.form-select.is-invalid, .was-validated .form-select:invalid { --bs-form-select-bg-icon: var(--admin-invalid-icon) !important; }
.form-control.is-invalid, .form-select.is-invalid,
.was-validated .form-control:invalid, .was-validated .form-select:invalid {
    border-color: var(--bs-danger) !important;
}
.form-control.is-invalid:focus, .form-select.is-invalid:focus,
.was-validated .form-control:invalid:focus, .was-validated .form-select:invalid:focus {
    outline-color: var(--bs-danger) !important;
}
.form-control.is-valid, .form-select.is-valid,
.was-validated .form-control:valid, .was-validated .form-select:valid { border-color: var(--bs-success) !important; }
.form-control.is-valid:focus, .form-select.is-valid:focus,
.was-validated .form-control:valid:focus, .was-validated .form-select:valid:focus { outline-color: var(--bs-success) !important; }
.btn:focus-visible, .page-link:focus-visible, a:focus-visible {
    outline: 2px solid var(--admin-focus-ring);
    outline-offset: 2px;
}
.noty_theme__backstrap { border-radius: .5rem; box-shadow: 0 4px 16px rgba(11, 31, 68, .12); }
.noty_theme__backstrap .noty_close_button { color: inherit; background: transparent; }
/* Backpack uses SweetAlert; Metronic also ships SweetAlert2. Cover both. */
.swal-modal { background: var(--admin-surface); }
.swal-title, .swal-text { color: var(--admin-text); }
.swal-button, .swal-button:not([disabled]):hover {
    background-color: var(--admin-action);
    color: var(--admin-button-text);
}
.swal-button:not([disabled]):hover { background-color: var(--admin-action-hover); }
.swal-button--cancel, .swal-button--cancel:not([disabled]):hover {
    color: var(--admin-text);
    background-color: var(--admin-background);
    border: 1px solid var(--admin-border);
}
.swal-button--danger { background-color: var(--bs-danger); color: var(--bs-danger-inverse); }
.swal-button--danger:not([disabled]):hover { background-color: var(--bs-danger-active); }
.swal-button:focus, .swal2-styled:focus { box-shadow: none !important; outline: 2px solid var(--admin-focus-ring); outline-offset: 2px; }
.swal-icon--success { border-color: var(--bs-success); }
.swal-icon--success__ring { border-color: var(--bs-success-border-subtle); }
.swal-icon--success__line { background-color: var(--bs-success); }
.swal-icon--warning { border-color: var(--bs-warning) !important; }
.swal-icon--warning__body, .swal-icon--warning__dot { background-color: var(--bs-warning); }
.swal-icon--error { border-color: var(--bs-danger); }
.swal-icon--error__line { background-color: var(--bs-danger); }
.swal-icon--info { border-color: var(--bs-info); }
.swal-icon--info::before, .swal-icon--info::after { background-color: var(--bs-info); }
.swal2-popup { color: var(--admin-text); background: var(--admin-surface); }
.swal2-popup .swal2-title, .swal2-popup .swal2-html-container { color: var(--admin-text); }
.swal2-popup .swal2-styled.swal2-confirm {
    color: var(--admin-button-text) !important;
    background-color: var(--admin-action) !important;
}
.swal2-popup .swal2-styled.swal2-confirm:hover { background-color: var(--admin-action-hover) !important; }
.swal2-popup .swal2-styled.swal2-cancel {
    color: var(--admin-text);
    background: var(--admin-background);
    border: 1px solid var(--admin-border);
}
.swal2-popup .swal2-styled.swal2-deny { color: var(--bs-danger-inverse); background: var(--bs-danger); }
.swal2-popup .swal2-styled.swal2-deny:hover { background: var(--bs-danger-active); }
.swal2-popup .swal2-close { color: var(--admin-text-muted); }
.swal2-icon.swal2-success { border-color: var(--bs-success); color: var(--bs-success); }
.swal2-icon.swal2-success .swal2-success-ring { border-color: var(--bs-success-border-subtle); }
.swal2-icon.swal2-success [class^="swal2-success-line"] { background-color: var(--bs-success); }
.swal2-icon.swal2-warning { border-color: var(--bs-warning); color: var(--bs-warning); }
.swal2-icon.swal2-error { border-color: var(--bs-danger); color: var(--bs-danger); }
.swal2-icon.swal2-error [class^="swal2-x-mark-line"] { background-color: var(--bs-danger); }
.swal2-icon.swal2-info, .swal2-icon.swal2-question { border-color: var(--bs-info); color: var(--bs-info); }

/* Summary-card treatment is a preset capability, not a global restyling. */
[data-admin-summary-cards="neutral"] .admin-summary-card {
    background-image: none !important;
    background-color: var(--admin-surface) !important;
    color: var(--admin-text) !important;
    border: 1px solid var(--admin-border);
    border-top: 3px solid var(--admin-accent);
}
[data-admin-summary-cards="neutral"] .admin-summary-card .card-header { box-shadow: none; }
[data-admin-summary-cards="neutral"] .admin-summary-card .text-white { color: var(--admin-text) !important; }
[data-admin-summary-cards="neutral"] .admin-summary-card .text-gray-300 { color: var(--admin-text-muted) !important; }
[data-admin-summary-cards="neutral"] .admin-summary-card .opacity-75 {
    opacity: 1 !important;
    color: var(--admin-text-muted) !important;
}
[data-admin-summary-cards="neutral"] .admin-summary-card .bg-white.bg-opacity-50 {
    background-color: var(--admin-border) !important;
}
[data-admin-summary-cards="neutral"] .admin-summary-card [role="progressbar"] {
    background-color: var(--admin-action) !important;
}
[data-admin-summary-cards="neutral"] .admin-summary-card .invoice-budget {
    border-top-color: var(--admin-border);
}
[data-admin-summary-cards="neutral"] .admin-summary-card .invoice-budget-result { background: var(--bs-primary-light); }
[data-admin-summary-cards="neutral"] .admin-summary-card .invoice-summary-secondary,
[data-admin-summary-cards="neutral"] .admin-summary-card .invoice-summary-note { color: var(--admin-text-muted); }
[data-admin-summary-cards="neutral"] .admin-summary-card .invoice-summary-negative { color: var(--bs-danger); }
[data-admin-summary-cards="neutral"] .admin-summary-card .invoice-budget-scope-note { border-inline-start-color: var(--admin-border); }
