/*
 * MOS legacy theme compatibility.
 * Custom page layout CSS is allowed; custom theme ownership is not.
 * This file maps common legacy Backpack/custom-page surfaces to MOS semantic
 * tokens without replacing domain/status colors.
 */

.mos-enabled {
    --mos-legacy-page-bg: var(--mos-bg);
    --mos-legacy-surface: var(--mos-surface);
    --mos-legacy-surface-elevated: var(--mos-surface-elevated);
    --mos-legacy-surface-subtle: var(--mos-surface-subtle);
    --mos-legacy-surface-detail: var(--mos-surface-detail);
    --mos-legacy-surface-hover: var(--mos-surface-hover);
    --mos-legacy-surface-selected: var(--mos-surface-selected);
    --mos-legacy-text: var(--mos-text-primary);
    --mos-legacy-text-secondary: var(--mos-text-secondary);
    --mos-legacy-text-muted: var(--mos-text-muted);
    --mos-legacy-border: var(--mos-border);
    --mos-legacy-border-strong: var(--mos-border-strong);
    --mos-legacy-input-bg: var(--mos-input-bg);
    --mos-legacy-input-fg: var(--mos-input-fg);
    --mos-legacy-input-placeholder: var(--mos-input-placeholder);
}

.mos-enabled .bg-white,
.mos-enabled .bg-light,
.mos-enabled .list-group-item,
.mos-enabled .accordion-item,
.mos-enabled .accordion-button:not(.collapsed),
.mos-enabled .offcanvas,
.mos-enabled .modal-content,
.mos-enabled .popover,
.mos-enabled .dropdown-menu {
    background-color: var(--mos-legacy-surface) !important;
    color: var(--mos-legacy-text);
    border-color: var(--mos-legacy-border);
}

.mos-enabled .card-body,
.mos-enabled .accordion-body,
.mos-enabled .modal-body,
.mos-enabled .offcanvas-body,
.mos-enabled .dropdown-item,
.mos-enabled .popover-body {
    color: var(--mos-legacy-text);
}

.mos-enabled .text-dark {
    color: var(--mos-legacy-text) !important;
}

.mos-enabled .text-muted,
.mos-enabled small.text-muted,
.mos-enabled .small.text-muted,
.mos-enabled .form-text {
    color: var(--mos-legacy-text-muted) !important;
}

.mos-enabled .table,
.mos-enabled .table-responsive,
.mos-enabled .dataTables_wrapper,
.mos-enabled .dataTables_scrollBody {
    background: transparent;
    color: var(--mos-legacy-text);
    border-color: var(--mos-legacy-border);
}

.mos-enabled .table > :not(caption) > * > * {
    background-color: var(--mos-table-row-bg);
    color: var(--mos-legacy-text);
    border-color: var(--mos-legacy-border);
}

.mos-enabled .table thead th,
.mos-enabled .table tfoot th,
.mos-enabled table.dataTable thead th,
.mos-enabled table.dataTable tfoot th {
    background-color: var(--mos-table-header-bg);
    color: var(--mos-legacy-text-secondary);
    border-color: var(--mos-legacy-border);
}

.mos-enabled .table-hover > tbody > tr:hover > *,
.mos-enabled table.dataTable.hover > tbody > tr:hover > *,
.mos-enabled table.dataTable.display > tbody > tr:hover > * {
    background-color: var(--mos-legacy-surface-hover);
    color: var(--mos-legacy-text);
}

.mos-enabled .table-active,
.mos-enabled .table-active > * {
    background-color: var(--mos-legacy-surface-selected) !important;
    color: var(--mos-legacy-text) !important;
}

.mos-enabled .form-control,
.mos-enabled .form-select,
.mos-enabled .input-group-text,
.mos-enabled .select2-container--default .select2-selection--single,
.mos-enabled .select2-container--default .select2-selection--multiple,
.mos-enabled .select2-container--bootstrap .select2-selection,
.mos-enabled .select2-container--bootstrap4 .select2-selection {
    background-color: var(--mos-legacy-input-bg);
    color: var(--mos-legacy-input-fg);
    border-color: var(--mos-legacy-border);
}

.mos-enabled .form-control::placeholder,
.mos-enabled .select2-container--default .select2-selection__placeholder,
.mos-enabled .select2-container--bootstrap .select2-selection__placeholder,
.mos-enabled .select2-container--bootstrap4 .select2-selection__placeholder {
    color: var(--mos-legacy-input-placeholder) !important;
}

.mos-enabled .select2-dropdown,
.mos-enabled .select2-container--default .select2-results__option {
    background-color: var(--mos-legacy-surface-elevated);
    color: var(--mos-legacy-text);
    border-color: var(--mos-legacy-border);
}

.mos-enabled .select2-container--default .select2-results__option--highlighted[aria-selected],
.mos-enabled .select2-container--default .select2-results__option--highlighted[data-selected] {
    background-color: var(--mos-primary);
    color: #ffffff;
}

.mos-enabled .select2-container--default .select2-search--dropdown .select2-search__field {
    background-color: var(--mos-legacy-input-bg);
    color: var(--mos-legacy-input-fg);
    border-color: var(--mos-legacy-border);
}

.mos-enabled .pagination .page-link {
    background-color: var(--mos-legacy-surface);
    color: var(--mos-legacy-text);
    border-color: var(--mos-legacy-border);
}

.mos-enabled .pagination .page-item.active .page-link {
    background-color: var(--mos-primary);
    color: #ffffff;
    border-color: var(--mos-primary);
}

.mos-enabled .pagination .page-item.disabled .page-link,
.mos-enabled .btn.disabled,
.mos-enabled .btn:disabled,
.mos-enabled fieldset:disabled .btn {
    background-color: var(--mos-disabled-bg);
    color: var(--mos-disabled-fg);
    border-color: var(--mos-legacy-border);
}

.mos-enabled .dropdown-item:hover,
.mos-enabled .dropdown-item:focus {
    background-color: var(--mos-legacy-surface-hover);
    color: var(--mos-legacy-text);
}

.mos-enabled .modal-header,
.mos-enabled .modal-footer,
.mos-enabled .offcanvas-header {
    border-color: var(--mos-legacy-border);
}

.mos-enabled .form-control:focus,
.mos-enabled .form-select:focus,
.mos-enabled .select2-container--default.select2-container--focus .select2-selection--single,
.mos-enabled .select2-container--default.select2-container--open .select2-selection--single,
.mos-enabled .select2-container--default.select2-container--focus .select2-selection--multiple,
.mos-enabled .select2-container--default.select2-container--open .select2-selection--multiple {
    border-color: var(--mos-primary) !important;
    box-shadow: 0 0 0 .2rem var(--mos-focus-ring) !important;
}

.mos-enabled .border,
.mos-enabled .border-top,
.mos-enabled .border-end,
.mos-enabled .border-bottom,
.mos-enabled .border-start {
    border-color: var(--mos-legacy-border) !important;
}

.mos-enabled .mos-sidebar .dropdown-menu {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--mos-nav-text);
    border: 0;
    border-inline-start: 1px solid rgba(136, 151, 255, .2);
    box-shadow: none;
}

.mos-enabled .mos-sidebar .dropdown-item {
    background: transparent !important;
    background-color: transparent !important;
    color: var(--mos-nav-text-muted) !important;
}

.mos-enabled .mos-sidebar .dropdown-item:hover,
.mos-enabled .mos-sidebar .dropdown-item:focus {
    background: var(--mos-nav-hover) !important;
    color: #ffffff !important;
}

.mos-enabled .mos-sidebar .dropdown-item.mos-active,
.mos-enabled .mos-sidebar .dropdown-item.active {
    background: rgba(82, 99, 176, .14) !important;
    color: rgba(255, 255, 255, .94) !important;
}

.mos-enabled .mos-sidebar .dropdown-item.mos-current,
.mos-enabled .mos-sidebar .dropdown-item.active.mos-current {
    background: var(--mos-nav-active) !important;
    color: #ffffff !important;
}
