/*
 * LTE dark adapters extend AdminLTE without replacing component styles.
 * Status colors stay component-owned; only neutral surfaces are normalized.
 */
.dark-mode {
    color-scheme: dark;
    --lte-surface-canvas: #1b2025;
    --lte-surface: #262c31;
    --lte-surface-raised: #2d343a;
    --lte-surface-soft: #343c43;
    --lte-surface-hover: #3a444c;
    --lte-text: #e7edf2;
    --lte-text-muted: #aab6bf;
    --lte-border: rgba(205, 220, 232, .18);
    --lte-border-strong: rgba(205, 220, 232, .3);
    --lte-accent: #58a6ff;
    --lte-accent-soft: rgba(88, 166, 255, .16);
    --lte-focus: rgba(88, 166, 255, .34);
    --lte-shadow: 0 .7rem 1.8rem rgba(0, 0, 0, .26);
}

/* Core surfaces */
.dark-mode .icms-widget.card,
.dark-mode .card:not([class*="bg-"]) {
    border-color: var(--lte-border);
    background-color: var(--lte-surface);
    color: var(--lte-text);
}

.dark-mode .card:not([class*="bg-"]) > .card-header,
.dark-mode .card:not([class*="bg-"]) > .card-footer {
    border-color: var(--lte-border);
    background-color: var(--lte-surface-raised);
}

.dark-mode .list-group-item {
    border-color: var(--lte-border);
    background-color: var(--lte-surface);
    color: var(--lte-text);
}

.dark-mode .list-group-item-action:hover,
.dark-mode .list-group-item-action:focus,
.dark-mode .list-group-item.active {
    border-color: var(--lte-border-strong);
    background-color: var(--lte-surface-hover);
    color: var(--lte-text);
}

.dark-mode hr,
.dark-mode .dropdown-divider {
    border-color: var(--lte-border);
}

.dark-mode code {
    color: #ff9fca;
}

.dark-mode pre {
    border-color: var(--lte-border);
    background: var(--lte-surface-canvas);
    color: var(--lte-text);
}

.dark-mode .text-secondary,
.dark-mode .text-muted {
    color: var(--lte-text-muted) !important;
}

.dark-mode .text-dark,
.dark-mode .text-body {
    color: var(--lte-text) !important;
}

.dark-mode .border,
.dark-mode .border-top,
.dark-mode .border-right,
.dark-mode .border-bottom,
.dark-mode .border-left {
    border-color: var(--lte-border) !important;
}

.dark-mode .jumbotron {
    border: 1px solid var(--lte-border);
    background-color: var(--lte-surface-raised);
    color: var(--lte-text);
}

/* Tables */
.dark-mode .table {
    color: var(--lte-text);
}

.dark-mode .table caption {
    color: var(--lte-text-muted);
}

.dark-mode .table th,
.dark-mode .table td,
.dark-mode .table thead th,
.dark-mode .table-bordered {
    border-color: var(--lte-border);
}

.dark-mode .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, .025);
}

.dark-mode .table-hover tbody tr:hover {
    background-color: var(--lte-surface-hover);
    color: var(--lte-text);
}

.dark-mode .table-secondary,
.dark-mode .table-secondary > th,
.dark-mode .table-secondary > td {
    border-color: var(--lte-border);
    background-color: var(--lte-surface-soft);
    color: var(--lte-text);
}

/* Forms */
.dark-mode label,
.dark-mode legend,
.dark-mode .col-form-label {
    color: var(--lte-text);
}

.dark-mode .form-control,
.dark-mode .custom-select,
.dark-mode .custom-file-label,
.dark-mode .input-group-text {
    border-color: var(--lte-border-strong);
    background-color: var(--lte-surface-raised);
    color: var(--lte-text);
}

.dark-mode .form-control::placeholder {
    color: var(--lte-text-muted);
    opacity: .78;
}

.dark-mode .form-control:focus,
.dark-mode .custom-select:focus,
.dark-mode .custom-file-input:focus ~ .custom-file-label {
    border-color: var(--lte-accent);
    background-color: var(--lte-surface-raised);
    color: var(--lte-text);
    box-shadow: 0 0 0 .2rem var(--lte-focus);
}

.dark-mode .form-control:disabled,
.dark-mode .form-control[readonly],
.dark-mode .custom-select:disabled {
    border-color: var(--lte-border);
    background-color: var(--lte-surface-canvas);
    color: var(--lte-text-muted);
    opacity: .76;
}

.dark-mode .form-control-plaintext,
.dark-mode .form-text,
.dark-mode .custom-control-label::before {
    color: var(--lte-text-muted);
}

.dark-mode .custom-control-label::before {
    border-color: var(--lte-border-strong);
    background-color: var(--lte-surface-raised);
}

.dark-mode .custom-file-label::after {
    border-color: var(--lte-border-strong);
    background-color: var(--lte-surface-soft);
    color: var(--lte-text);
}

.dark-mode .btn:focus-visible,
.dark-mode a:focus-visible,
.dark-mode [tabindex]:focus-visible {
    outline: 2px solid var(--lte-accent);
    outline-offset: 2px;
    box-shadow: 0 0 0 .2rem var(--lte-focus);
}

/* Select2 */
.dark-mode .select2-container--default .select2-selection--single,
.dark-mode .select2-container--default .select2-selection--multiple,
.dark-mode .select2-dropdown,
.dark-mode .select2-search--dropdown .select2-search__field {
    border-color: var(--lte-border-strong);
    background-color: var(--lte-surface-raised);
    color: var(--lte-text);
}

.dark-mode .select2-container--default .select2-selection--single .select2-selection__rendered,
.dark-mode .select2-container--default .select2-selection--multiple .select2-selection__choice,
.dark-mode .select2-results__option {
    color: var(--lte-text);
}

.dark-mode .select2-container--default .select2-selection--multiple .select2-selection__choice {
    border-color: var(--lte-border-strong);
    background-color: var(--lte-surface-soft);
}

.dark-mode .select2-container--default .select2-results__option[aria-selected="true"] {
    background-color: var(--lte-surface-hover);
}

.dark-mode .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--lte-accent);
    color: #fff;
}

/* Modal, dropdown and navigation */
.dark-mode .modal-content,
.dark-mode .popover {
    border-color: var(--lte-border);
    background-color: var(--lte-surface);
    color: var(--lte-text);
    box-shadow: var(--lte-shadow);
}

.dark-mode .modal-header,
.dark-mode .modal-footer,
.dark-mode .popover-header {
    border-color: var(--lte-border);
    background-color: var(--lte-surface-raised);
}

.dark-mode .modal-header .close,
.dark-mode .popover .close {
    color: var(--lte-text);
    text-shadow: none;
}

.dark-mode .modal-backdrop.show {
    opacity: .72;
}

.dark-mode .dropdown-menu {
    border-color: var(--lte-border);
    background-color: var(--lte-surface-raised);
    color: var(--lte-text);
    box-shadow: var(--lte-shadow);
}

.dark-mode .dropdown-item {
    color: var(--lte-text);
}

.dark-mode .dropdown-item:hover,
.dark-mode .dropdown-item:focus {
    background-color: var(--lte-surface-hover);
    color: var(--lte-text);
}

.dark-mode .dropdown-item.disabled,
.dark-mode .dropdown-item:disabled {
    color: var(--lte-text-muted);
}

.dark-mode .nav-tabs {
    border-color: var(--lte-border);
}

.dark-mode .nav-tabs .nav-link {
    color: var(--lte-text-muted);
}

.dark-mode .nav-tabs .nav-link:hover,
.dark-mode .nav-tabs .nav-link:focus {
    border-color: var(--lte-border) var(--lte-border) transparent;
    color: var(--lte-text);
}

.dark-mode .nav-tabs .nav-link.active,
.dark-mode .nav-tabs .nav-item.show .nav-link {
    border-color: var(--lte-border) var(--lte-border) var(--lte-surface);
    background-color: var(--lte-surface);
    color: var(--lte-text);
}

.dark-mode .page-link {
    border-color: var(--lte-border);
    background-color: var(--lte-surface);
    color: var(--lte-accent);
}

.dark-mode .page-link:hover,
.dark-mode .page-item.active .page-link {
    border-color: var(--lte-accent);
    background-color: var(--lte-accent);
    color: #fff;
}

.dark-mode .page-item.disabled .page-link {
    border-color: var(--lte-border);
    background-color: var(--lte-surface-canvas);
    color: var(--lte-text-muted);
}

.dark-mode .alert-light,
.dark-mode .alert-secondary,
.dark-mode .empty_list {
    border-color: var(--lte-border);
    background-color: var(--lte-surface-soft);
    color: var(--lte-text);
}

.dark-mode .tooltip-inner {
    background-color: var(--lte-text);
    color: var(--lte-surface-canvas);
}

/* Editors */
.dark-mode .redactor_box,
.dark-mode .redactor_editor,
.dark-mode .redactor_toolbar,
.dark-mode .redactor_dropdown,
.dark-mode #redactor_modal,
.dark-mode .redactor_droparea .redactor_dropareabox {
    border-color: var(--lte-border) !important;
    background-color: var(--lte-surface-raised) !important;
    color: var(--lte-text) !important;
}

.dark-mode .redactor_toolbar li a,
.dark-mode .redactor_dropdown a,
.dark-mode #redactor_modal header,
.dark-mode #redactor_modal section {
    color: var(--lte-text);
}

.dark-mode .redactor_toolbar li a:hover,
.dark-mode .redactor_dropdown a:hover {
    background-color: var(--lte-surface-hover);
    color: var(--lte-text) !important;
}

.dark-mode .redactor_input,
.dark-mode #redactor_modal textarea,
.dark-mode #redactor_modal select,
.dark-mode #redactor_modal input[type="text"],
.dark-mode #redactor_modal input[type="password"],
.dark-mode #redactor_modal input[type="email"] {
    border-color: var(--lte-border-strong);
    background-color: var(--lte-surface);
    color: var(--lte-text);
}

.dark-mode .mce-panel,
.dark-mode .mce-menubar,
.dark-mode .mce-menu,
.dark-mode .mce-window,
.dark-mode .mce-btn {
    border-color: var(--lte-border) !important;
    background: var(--lte-surface-raised) !important;
    color: var(--lte-text) !important;
}

.dark-mode .mce-btn button,
.dark-mode .mce-menu-item .mce-text {
    color: var(--lte-text) !important;
}

/* InstantCMS component adapters */
.dark-mode .zsearch {
    background: var(--lte-surface-canvas);
    color: var(--lte-text);
}

.dark-mode .zsearch__form,
.dark-mode .zsearch__types ul li span {
    background: var(--lte-surface-raised);
}

.dark-mode .zsearch__mainform input,
.dark-mode .zsearch__error,
.dark-mode .zsearch__types ul li.selected,
.dark-mode .zs-item__text {
    color: var(--lte-text);
}

.dark-mode .zsearch__mainform .zsearch__btn {
    background: var(--lte-surface-soft);
    color: var(--lte-text-muted);
}

.dark-mode .zsearch__types::after {
    background: linear-gradient(270deg, var(--lte-surface-canvas), rgba(27, 32, 37, 0));
}

.dark-mode .zsearch__types ul,
.dark-mode .zs-item {
    border-color: var(--lte-border);
}

.dark-mode .zsearch__types ul li::after {
    background: var(--lte-accent);
}

.dark-mode .icms-users-profile__view .fieldset_title h3,
.dark-mode .icms-users-profile__view .fieldset_title a {
    background: var(--lte-surface-canvas);
}

.dark-mode .icms-forms__full-msg {
    background-color: rgba(38, 44, 49, .94);
    color: var(--lte-text);
}

.dark-mode .icms-activity__list::before {
    background-color: var(--lte-border-strong);
}

.dark-mode .icms-activity__list-day .octicon {
    color: var(--lte-border-strong);
    background: var(--lte-surface-canvas);
}

.dark-mode .icms-forum__widget-posts > .media:nth-child(even),
.dark-mode .icms-forum__list:nth-of-type(odd),
.dark-mode .icms-forum__threads_list:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, .025);
}

.dark-mode .icms-forum__threads_list:hover {
    background-color: var(--lte-surface-hover);
}

.dark-mode .icms-forum__post-data,
.dark-mode .icms-forum__post-header {
    border-color: var(--lte-border);
    background-color: var(--lte-surface-raised);
}

.dark-mode .icms-forum__post-data::before {
    background-color: var(--lte-border);
}

.dark-mode .icms-forum__post-data::after {
    background-color: var(--lte-surface-raised);
}

.dark-mode .icms-messages.modal-messages,
.dark-mode .icms-messages .bg-gray,
.dark-mode .icms-messages .bg-success_light {
    background-color: var(--lte-surface);
}

.dark-mode .icms-messages .message-my .selected {
    background-color: var(--lte-accent-soft) !important;
}

.dark-mode #pm_contact .smilepanel {
    border-color: var(--lte-border);
    background-color: var(--lte-surface-raised);
    box-shadow: var(--lte-shadow);
}

/* LTE content cards */
.dark-mode .lte_list_box .icms-content-fields {
    border-color: var(--lte-border);
    background: var(--lte-surface);
}

.dark-mode .lte_list_box:hover .icms-content-fields {
    border-color: var(--lte-border-strong);
    background: var(--lte-surface-raised);
    box-shadow: var(--lte-shadow);
}

.dark-mode .lte_list_box .icms-content-fields .f_title h3 a {
    color: var(--lte-text);
}

.dark-mode .lte_list_box .info_bar {
    border-color: var(--lte-border);
    background: var(--lte-surface);
}

/* Paidgroups */
.dark-mode .paidgroups-workspace {
    --pg-ink: var(--lte-text);
    --pg-muted: var(--lte-text-muted);
    --pg-line: var(--lte-border);
    --pg-accent: var(--lte-accent);
    --pg-accent-soft: var(--lte-accent-soft);
    --pg-warm: #e5a45f;
}

.dark-mode .paidgroups-toolbar {
    border-color: var(--pg-line);
    background:
        radial-gradient(circle at 92% 10%, rgba(229, 164, 95, .16), transparent 38%),
        linear-gradient(135deg, var(--lte-surface-raised), var(--lte-surface));
}

.dark-mode .paidgroups-workspace-nav,
.dark-mode .paidgroups-panel,
.dark-mode .paidgroups-pagination a,
.dark-mode .paidgroups-surface {
    border-color: var(--pg-line);
    background: var(--lte-surface);
    color: var(--pg-ink);
}

.dark-mode .paidgroups-workspace-nav a:hover,
.dark-mode .paidgroups-choice:hover,
.dark-mode .paidgroups-user-result:hover {
    color: var(--pg-ink);
    background: var(--lte-surface-hover);
}

.dark-mode .paidgroups-choice,
.dark-mode .paidgroups-user-result,
.dark-mode .paidgroups-empty,
.dark-mode .paidgroups-registry-filter {
    border-color: var(--pg-line);
    background: var(--lte-surface-raised);
}

.dark-mode .paidgroups-selected-user {
    border-color: var(--lte-border-strong);
    background: var(--pg-accent-soft);
}

.dark-mode .paidgroups-note,
.dark-mode .paidgroups-aside {
    color: var(--pg-muted);
    background: #3b342c;
}

.dark-mode .paidgroups-record,
.dark-mode .paidgroups-records,
.dark-mode .paidgroups-form-actions {
    border-color: var(--pg-line);
}

.dark-mode .paidgroups-surface > .card-header {
    border-bottom-color: var(--pg-line);
    background: var(--lte-surface-raised);
}

.dark-mode .paidgroups-surface .table th {
    color: var(--pg-muted);
}

/* Filesmulti */
.dark-mode .filesmulti-output,
.dark-mode .filesmulti-field {
    --filesmulti-ink: var(--lte-text);
    --filesmulti-muted: var(--lte-text-muted);
    --filesmulti-line: var(--lte-border-strong);
    --filesmulti-soft: var(--lte-surface-raised);
    --filesmulti-accent: #39c5b7;
    --filesmulti-danger: #f27b73;
}

.dark-mode .filesmulti-card,
.dark-mode .filesmulti-input-item {
    border-color: var(--filesmulti-line);
    background: linear-gradient(145deg, var(--lte-surface-raised), var(--filesmulti-soft));
    box-shadow: 0 .25rem .9rem rgba(0, 0, 0, .2);
}

.dark-mode .filesmulti-extension,
.dark-mode .filesmulti-download,
.dark-mode .filesmulti-icon-button,
.dark-mode .filesmulti-upload-selected {
    color: #9de4dc;
    background: #294842;
}

.dark-mode .filesmulti-icon-button.is-danger {
    color: #ffaaa4;
    background: #4d302f;
}

.dark-mode .filesmulti-dropzone {
    border-color: #657b78;
    background:
        radial-gradient(circle at 15% 15%, rgba(57, 197, 183, .1), transparent 34%),
        var(--filesmulti-soft);
}

.dark-mode .filesmulti-dropzone:hover,
.dark-mode .filesmulti-dropzone.is-dragging {
    border-color: var(--filesmulti-accent);
    background-color: #304541;
}

.dark-mode .filesmulti-progress {
    background: #4a555a;
}

.dark-mode .filesmulti-media {
    --plyr-menu-background: rgba(45, 52, 58, .96);
    --plyr-menu-color: var(--lte-text);
    --plyr-tooltip-background: rgba(45, 52, 58, .96);
    --plyr-tooltip-color: var(--lte-text);
    --plyr-color-main: #39c5b7;
}

/* Filesmulti Market */
.dark-mode .filesmulti-market-editor,
.dark-mode .filesmulti-market-batch-editor,
.dark-mode .filesmulti-market-bundle-editor,
.dark-mode .filesmulti-market-guide,
.dark-mode .filesmulti-market-locked,
.dark-mode .filesmulti-market-bundle,
.dark-mode .filesmulti-market-checkout,
.dark-mode .filesmulti-market-library,
.dark-mode .filesmulti-market-sales__filter {
    --filesmarket-ink: var(--lte-text);
    --filesmarket-paper: var(--lte-surface-raised);
    --filesmarket-line: var(--lte-border);
    --filesmarket-accent: #ef704d;
    --filesmarket-accent-dark: #ff9476;
    color: var(--filesmarket-ink);
}

.dark-mode .filesmulti-market-editor,
.dark-mode .filesmulti-market-batch-editor,
.dark-mode .filesmulti-market-bundle-editor,
.dark-mode .filesmulti-market-guide,
.dark-mode .filesmulti-market-bundle,
.dark-mode .filesmulti-market-checkout,
.dark-mode .filesmulti-market-library article,
.dark-mode .filesmulti-market-sales__filter,
.dark-mode .filesmulti-market-sales__stats > div,
.dark-mode .filesmulti-market-empty,
.dark-mode .filesmulti-market-versions section {
    border-color: var(--filesmarket-line);
    background: var(--filesmarket-paper);
    color: var(--filesmarket-ink);
}

.dark-mode .filesmulti-market-editor input,
.dark-mode .filesmulti-market-batch-editor input,
.dark-mode .filesmulti-market-bundle-editor input,
.dark-mode .filesmulti-market-sales__filter select {
    border-color: var(--lte-border-strong);
    background: var(--lte-surface);
    color: var(--lte-text);
}

.dark-mode .filesmulti-market-library__lead {
    color: var(--lte-text-muted);
}

.dark-mode .filesmulti-market-editor button.is-secondary:hover {
    background: var(--lte-surface-hover);
}

/* Billing Escrow */
.dark-mode .billing-escrow-page,
.dark-mode .billing-escrow-request {
    --escrow-ink: var(--lte-text);
    --escrow-leaf: #5fc7a7;
    --escrow-paper: var(--lte-surface-raised);
    --escrow-line: var(--lte-border);
    --escrow-alert: #f27b73;
    color: var(--escrow-ink);
}

.dark-mode .billing-escrow-hold,
.dark-mode .billing-escrow-request,
.dark-mode .billing-escrow-empty {
    border-color: var(--escrow-line);
    background: linear-gradient(135deg, var(--lte-surface), var(--escrow-paper));
}

.dark-mode .billing-escrow-hold dl div,
.dark-mode .billing-escrow-refund,
.dark-mode .billing-escrow-explain {
    background: var(--lte-surface-raised);
}

.dark-mode .billing-escrow-refund > small {
    color: var(--lte-text-muted);
}

.dark-mode .billing-escrow-refund textarea,
.dark-mode .billing-escrow-request textarea {
    border-color: var(--lte-border-strong);
    background: var(--lte-surface);
    color: var(--lte-text);
}

/* ZTM */
.dark-mode .ztm-button__link {
    background: #287fc1;
    color: #fff;
}

.dark-mode .ztm-button__link:hover,
.dark-mode .ztm-button__link:focus {
    background: #3498db;
    color: #fff;
}

.dark-mode .ztm-verify,
.dark-mode .ztm-mini-app-widget {
    color: var(--lte-text);
}

.dark-mode .ztm-mini-app-widget .mini-app-user-info,
.dark-mode .mini-app-modal-content {
    border-color: var(--lte-border);
    background: var(--lte-surface-raised);
    color: var(--lte-text);
}

.dark-mode .ztm-mini-app-widget .user-details .user-name,
.dark-mode .mini-app-modal-header h3 {
    color: var(--lte-text);
}

.dark-mode .ztm-mini-app-widget .user-status,
.dark-mode .mini-app-modal-body p {
    color: var(--lte-text-muted);
}

/* InstantCMS surfaces that retain light Modern/LTE colors */
.dark-mode .info_bar:not(.bg-transparent) {
    border-color: var(--lte-border);
    background-color: var(--lte-surface-raised);
}

.dark-mode .info_bar {
    color: var(--lte-text-muted);
}

.dark-mode .icms-comment-html {
    border-color: var(--lte-border-strong);
    background-color: var(--lte-surface-raised);
    color: var(--lte-text);
}

.dark-mode .icms-comment-html::before {
    background-color: var(--lte-border-strong);
}

.dark-mode .icms-comment-html::after {
    background-color: var(--lte-surface-raised);
}

.dark-mode .selected-comment .icms-comment-html {
    border-color: var(--lte-accent);
    box-shadow: 0 0 0 .18rem var(--lte-focus);
}

.dark-mode .comment h6 .text-dark,
.dark-mode #user_profile .text-secondary,
.dark-mode #user_profile .title,
.dark-mode .content_item .text-secondary {
    color: var(--lte-text-muted) !important;
}

.dark-mode .icms-users-profile__view .fieldset_title {
    border-color: var(--lte-border);
}

.dark-mode .content_counts .list-group-item-secondary,
.dark-mode .content_counts .list-group-item-action:last-child {
    border-color: var(--lte-border);
    background: var(--lte-surface-raised);
    color: var(--lte-text);
}

.dark-mode .content_counts .list-group-item-secondary > div:first-child,
.dark-mode .content_counts .list-group-item-action {
    border-color: var(--lte-border);
    color: var(--lte-text);
}

.dark-mode .content_counts .list-group-item-action:hover {
    background: var(--lte-surface-hover);
    color: var(--lte-text);
    box-shadow: none;
}

.dark-mode .content_counts .list-group-item-secondary .friends-list .icms-user-avatar > * {
    border-color: var(--lte-border-strong);
}

.dark-mode .photos_count_1 div a {
    background: var(--lte-surface-raised) !important;
}

.dark-mode .modal-body,
.dark-mode .zsearch__header,
.dark-mode .zsearch__content {
    border-color: var(--lte-border);
    background-color: var(--lte-surface);
    color: var(--lte-text);
}

.dark-mode .zsearch__header,
.dark-mode .zsearch__content {
    box-shadow: var(--lte-shadow);
}

.dark-mode .zsearch__close,
.dark-mode .zsearch__inputclean,
.dark-mode .zs-item__date,
.dark-mode .zsearch__types ul li {
    color: var(--lte-text-muted);
}

.dark-mode .zsearch__mainform input::placeholder {
    color: var(--lte-text-muted);
    opacity: .82;
}

/* Keep informational states recognizable without bright full-width panels. */
.dark-mode .alert-info {
    border-color: #2f7892;
    background-color: #20566b;
    color: #e3f6fc;
}

.dark-mode .alert-info a:not(.btn) {
    color: #a9e2f5;
}

/* Bootstrap 4 Select2 theme used by content forms. */
.dark-mode .select2-container--bootstrap4 .select2-selection,
.dark-mode .select2-container--bootstrap4 .select2-dropdown,
.dark-mode .select2-container--bootstrap4 .select2-search__field {
    border-color: var(--lte-border-strong) !important;
    background-color: var(--lte-surface-raised) !important;
    color: var(--lte-text) !important;
}

.dark-mode .select2-container--bootstrap4 .select2-selection--single .select2-selection__rendered,
.dark-mode .select2-container--bootstrap4 .select2-selection--multiple .select2-selection__choice,
.dark-mode .select2-container--bootstrap4 .select2-results__option {
    color: var(--lte-text);
}

.dark-mode .select2-container--bootstrap4 .select2-selection--multiple .select2-selection__choice,
.dark-mode .select2-container--bootstrap4 .select2-results__option[aria-selected="true"] {
    border-color: var(--lte-border);
    background-color: var(--lte-surface-soft);
}

.dark-mode .select2-container--bootstrap4 .select2-results__option--highlighted[aria-selected] {
    background-color: var(--lte-accent);
    color: #fff;
}

.dark-mode .select2-container--bootstrap4 .select2-selection__placeholder {
    color: var(--lte-text-muted);
}

/* Redactor can enqueue its stylesheet after the template styles. */
body.dark-mode .redactor_box,
body.dark-mode .redactor_editor,
body.dark-mode .redactor_toolbar,
body.dark-mode .redactor-box,
body.dark-mode .redactor-in,
body.dark-mode .redactor-toolbar,
body.dark-mode .redactor-source {
    border-color: var(--lte-border-strong) !important;
    background: var(--lte-surface-raised) !important;
    color: var(--lte-text) !important;
}

body.dark-mode .redactor_toolbar li a,
body.dark-mode .redactor-toolbar a,
body.dark-mode .redactor-toolbar button {
    color: var(--lte-text) !important;
}

body.dark-mode .redactor_toolbar li a:hover,
body.dark-mode .redactor-toolbar a:hover,
body.dark-mode .redactor-toolbar button:hover {
    background: var(--lte-surface-hover) !important;
    color: var(--lte-text) !important;
}

body.dark-mode .redactor_editor .redactor_placeholder,
body.dark-mode .redactor-in .redactor-placeholder {
    color: var(--lte-text-muted) !important;
}

/* User menu is dark while the main navbar itself may remain light. */
.dark-mode .main-header .icms-user-menu__items,
.dark-mode .main-header .icms-user-menu__items .dropdown-menu {
    border-color: var(--lte-border);
    background: var(--lte-surface-raised);
    color: var(--lte-text);
}

.dark-mode .main-header .icms-user-menu__items .nav-link,
.dark-mode .main-header .icms-user-menu__items .dropdown-item,
.dark-mode .main-header .icms-user-menu__items a:not(.btn) {
    color: var(--lte-text) !important;
}

.dark-mode .main-header .icms-user-menu__items .nav-link:hover,
.dark-mode .main-header .icms-user-menu__items .nav-link:focus,
.dark-mode .main-header .icms-user-menu__items .dropdown-item:hover,
.dark-mode .main-header .icms-user-menu__items .dropdown-item:focus {
    background: var(--lte-surface-hover);
    color: var(--lte-text) !important;
}

.dark-mode .main-header .icms-user-menu__items .nav-link.disabled {
    color: var(--lte-text-muted) !important;
}

@media (max-width: 767.98px) {
    .dark-mode .table-responsive,
    .dark-mode .table-responsive-sm,
    .dark-mode .table-responsive-md {
        -webkit-overflow-scrolling: touch;
    }

    .dark-mode .modal-dialog:not(.modal-dialog-icms-messages) {
        margin: .5rem;
    }

    .dark-mode .modal-content {
        max-height: calc(100vh - 1rem);
        max-height: calc(100dvh - 1rem);
    }

    .dark-mode .modal-body {
        overflow-y: auto;
    }

    .dark-mode .paidgroups-aside {
        border-left: 0;
    }

    .dark-mode .filesmulti-market-checkout,
    .dark-mode .billing-escrow-page,
    .dark-mode .billing-escrow-request {
        margin-top: 1rem;
        margin-bottom: 1rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dark-mode .paidgroups-workspace,
    .dark-mode .zsearch__form.animated {
        animation: none !important;
    }

    .dark-mode *,
    .dark-mode *::before,
    .dark-mode *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
