/**
 * Mad Er Magisk — opt-in UI theme (Bootstrap 5.1 + DevExpress Blazing Berry bs5).
 *
 * Add class `theme-mem` on an ancestor (e.g. layout root via SharedBranding:MainLayout:ThemeClass).
 * Does not change global :root — default Bootstrap / DevExpress semantic colours stay as shipped.
 *
 * Palette: SORT2025, SKOV, ORANGE, KHAKI, RUST, KAFFE, STRAND, CREAM, HAV, ASKE, MOCCA, LER, GRÅ15, HVID.
 */

.theme-mem {
    /* Basis */
    --mem-sort2025: #3e4241;
    --mem-hvid: #ffffff;
    --mem-gra15: #e3e3e3;
    /* Farvekort */
    --mem-skov: #3a3d1f;
    --mem-orange: #c07f2c;
    --mem-khaki: #d8c39b;
    --mem-rust: #a5431a;
    --mem-kaffe: #3f2615;
    --mem-strand: #d5c7b6;
    --mem-cream: #f3e1cf;
    --mem-hav: #929ca6;
    --mem-aske: #5f513d;
    --mem-mocca: #895b2f;
    --mem-ler: #a7927e;
    /* Hover / active helpers */
    --mem-orange-hover: #a56d24;
    --mem-orange-active: #8f5e1f;
    --mem-mocca-hover: #744a28;
    --mem-skov-hover: #2e3118;
    --mem-skov-active: #232515;
    --mem-rust-hover: #8a3614;
    --mem-rust-active: #722c11;
    --mem-hav-hover: #7a8490;
    --mem-hav-active: #656e78;
    --mem-khaki-hover: #c9b48a;
    --mem-khaki-active: #b8a377;
    --mem-cream-hover: #e8d4be;
    --mem-kaffe-hover: #2f1c10;
    --mem-kaffe-active: #221409;
    --mem-focus-primary: rgba(192, 127, 44, 0.45);
    --mem-focus-secondary: rgba(146, 156, 166, 0.45);
    --mem-focus-success: rgba(58, 61, 31, 0.35);
    --mem-focus-danger: rgba(165, 67, 26, 0.35);
    --mem-focus-warning: rgba(216, 195, 155, 0.65);
    --mem-focus-info: rgba(146, 156, 166, 0.45);
}


    /* -------------------------------------------------------------------------- */
    /* Solid buttons — BS 5.1 uses hardcoded hex on .btn-*                         */
    /* -------------------------------------------------------------------------- */

    .theme-mem .btn-primary {
        color: var(--mem-hvid);
        background-color: var(--mem-orange);
        border-color: var(--mem-orange);
    }

        .theme-mem .btn-primary:hover {
            color: var(--mem-hvid);
            background-color: var(--mem-orange-hover);
            border-color: var(--mem-orange-active);
        }

        .btn-check:focus + .btn-primary,
        .theme-mem .btn-primary:focus {
            color: var(--mem-hvid);
            background-color: var(--mem-orange-hover);
            border-color: var(--mem-orange-active);
            box-shadow: 0 0 0 0.25rem var(--mem-focus-primary);
        }

.btn-check:checked + .btn-primary,
.btn-primary.active,
.btn-primary.show,
.btn-primary:first-child:active,
:not(.btn-check) + .btn-primary:active {
    color: var(--mem-hvid);
    background-color: var(--mem-orange-active);
    border-color: var(--mem-mocca);
}

.theme-mem .btn-secondary {
    color: var(--mem-hvid);
    background-color: var(--mem-hav);
    border-color: var(--mem-hav);
}

    .theme-mem .btn-secondary:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-hav-hover);
        border-color: var(--mem-hav-active);
    }

    .btn-check:focus + .btn-secondary,
    .theme-mem .btn-secondary:focus {
        color: var(--mem-hvid);
        background-color: var(--mem-hav-hover);
        border-color: var(--mem-hav-active);
        box-shadow: 0 0 0 0.25rem var(--mem-focus-secondary);
    }

.btn-check:checked + .btn-secondary,
.btn-secondary.active,
.btn-secondary.show,
.btn-secondary:first-child:active,
:not(.btn-check) + .btn-secondary:active {
    color: var(--mem-hvid);
    background-color: var(--mem-hav-active);
    border-color: var(--mem-aske);
}

.theme-mem .btn-success {
    color: var(--mem-hvid);
    background-color: var(--mem-skov);
    border-color: var(--mem-skov);
}

    .theme-mem .btn-success:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-skov-hover);
        border-color: var(--mem-skov-active);
    }

    .btn-check:focus + .btn-success,
    .theme-mem .btn-success:focus {
        color: var(--mem-hvid);
        background-color: var(--mem-skov-hover);
        border-color: var(--mem-skov-active);
        box-shadow: 0 0 0 0.25rem var(--mem-focus-success);
    }

.btn-check:checked + .btn-success,
.btn-success.active,
.btn-success.show,
.btn-success:first-child:active,
:not(.btn-check) + .btn-success:active {
    color: var(--mem-hvid);
    background-color: var(--mem-skov-active);
    border-color: #1a1c0e;
}

.theme-mem .btn-danger {
    color: var(--mem-hvid);
    background-color: var(--mem-rust);
    border-color: var(--mem-rust);
}

    .theme-mem .btn-danger:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-rust-hover);
        border-color: var(--mem-rust-active);
    }

    .btn-check:focus + .btn-danger,
    .theme-mem .btn-danger:focus {
        color: var(--mem-hvid);
        background-color: var(--mem-rust-hover);
        border-color: var(--mem-rust-active);
        box-shadow: 0 0 0 0.25rem var(--mem-focus-danger);
    }

.btn-check:checked + .btn-danger,
.btn-danger.active,
.btn-danger.show,
.btn-danger:first-child:active,
:not(.btn-check) + .btn-danger:active {
    color: var(--mem-hvid);
    background-color: var(--mem-rust-active);
    border-color: #5c240e;
}

.theme-mem .btn-warning {
    color: var(--mem-kaffe);
    background-color: var(--mem-khaki);
    border-color: var(--mem-khaki);
}

    .theme-mem .btn-warning:hover {
        color: var(--mem-kaffe);
        background-color: var(--mem-khaki-hover);
        border-color: var(--mem-khaki-active);
    }

    .btn-check:focus + .btn-warning,
    .theme-mem .btn-warning:focus {
        color: var(--mem-kaffe);
        background-color: var(--mem-khaki-hover);
        border-color: var(--mem-khaki-active);
        box-shadow: 0 0 0 0.25rem var(--mem-focus-warning);
    }

.btn-check:checked + .btn-warning,
.btn-warning.active,
.btn-warning.show,
.btn-warning:first-child:active,
:not(.btn-check) + .btn-warning:active {
    color: var(--mem-kaffe);
    background-color: var(--mem-khaki-active);
    border-color: var(--mem-mocca);
}

.theme-mem .btn-info {
    color: var(--mem-hvid);
    background-color: #7a8490;
    border-color: #7a8490;
}

    .theme-mem .btn-info:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-hav-hover);
        border-color: var(--mem-hav-active);
    }

    .btn-check:focus + .btn-info,
    .theme-mem .btn-info:focus {
        color: var(--mem-hvid);
        background-color: var(--mem-hav-hover);
        border-color: var(--mem-hav-active);
        box-shadow: 0 0 0 0.25rem var(--mem-focus-info);
    }

.btn-check:checked + .btn-info,
.btn-info.active,
.btn-info.show,
.btn-info:first-child:active,
:not(.btn-check) + .btn-info:active {
    color: var(--mem-hvid);
    background-color: var(--mem-hav-active);
    border-color: var(--mem-aske);
}

.theme-mem .btn-light {
    color: var(--mem-sort2025);
    background-color: var(--mem-cream);
    border-color: var(--mem-strand);
}

    .theme-mem .btn-light:hover {
        color: var(--mem-kaffe);
        background-color: var(--mem-cream-hover);
        border-color: var(--mem-ler);
    }

    .btn-check:focus + .btn-light,
    .theme-mem .btn-light:focus {
        color: var(--mem-kaffe);
        background-color: var(--mem-cream-hover);
        border-color: var(--mem-ler);
        box-shadow: 0 0 0 0.25rem rgba(167, 146, 126, 0.45);
    }

.btn-check:checked + .btn-light,
.btn-light.active,
.btn-light.show,
.btn-light:first-child:active,
:not(.btn-check) + .btn-light:active {
    color: var(--mem-hvid);
    background-color: var(--mem-ler);
    border-color: var(--mem-aske);
}

.theme-mem .btn-dark {
    color: var(--mem-hvid);
    background-color: var(--mem-kaffe);
    border-color: var(--mem-kaffe);
}

    .theme-mem .btn-dark:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-kaffe-hover);
        border-color: var(--mem-kaffe-active);
    }

    .btn-check:focus + .btn-dark,
    .theme-mem .btn-dark:focus {
        color: var(--mem-hvid);
        background-color: var(--mem-kaffe-hover);
        border-color: var(--mem-kaffe-active);
        box-shadow: 0 0 0 0.25rem rgba(63, 38, 21, 0.45);
    }

.btn-check:checked + .btn-dark,
.btn-dark.active,
.btn-dark.show,
.btn-dark:first-child:active,
:not(.btn-check) + .btn-dark:active {
    color: var(--mem-hvid);
    background-color: var(--mem-kaffe-active);
    border-color: #150c07;
}

/* Outline buttons */
.theme-mem .btn-outline-primary {
    color: var(--mem-orange);
    border-color: var(--mem-orange);
}

    .theme-mem .btn-outline-primary:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-orange);
        border-color: var(--mem-orange);
    }

    .btn-check:focus + .btn-outline-primary,
    .theme-mem .btn-outline-primary:focus {
        box-shadow: 0 0 0 0.25rem var(--mem-focus-primary);
    }

.theme-mem .btn-outline-secondary {
    color: var(--mem-hav);
    border-color: var(--mem-hav);
}

    .theme-mem .btn-outline-secondary:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-hav);
        border-color: var(--mem-hav);
    }

    .btn-check:focus + .btn-outline-secondary,
    .theme-mem .btn-outline-secondary:focus {
        box-shadow: 0 0 0 0.25rem var(--mem-focus-secondary);
    }

.theme-mem .btn-outline-success {
    color: var(--mem-skov);
    border-color: var(--mem-skov);
}

    .theme-mem .btn-outline-success:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-skov);
        border-color: var(--mem-skov);
    }

    .btn-check:focus + .btn-outline-success,
    .theme-mem .btn-outline-success:focus {
        box-shadow: 0 0 0 0.25rem var(--mem-focus-success);
    }

.theme-mem .btn-outline-danger {
    color: var(--mem-rust);
    border-color: var(--mem-rust);
}

    .theme-mem .btn-outline-danger:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-rust);
        border-color: var(--mem-rust);
    }

    .btn-check:focus + .btn-outline-danger,
    .theme-mem .btn-outline-danger:focus {
        box-shadow: 0 0 0 0.25rem var(--mem-focus-danger);
    }

.theme-mem .btn-outline-warning {
    color: var(--mem-mocca);
    border-color: var(--mem-khaki);
}

    .theme-mem .btn-outline-warning:hover {
        color: var(--mem-kaffe);
        background-color: var(--mem-khaki);
        border-color: var(--mem-khaki);
    }

    .btn-check:focus + .btn-outline-warning,
    .theme-mem .btn-outline-warning:focus {
        box-shadow: 0 0 0 0.25rem var(--mem-focus-warning);
    }

.theme-mem .btn-outline-info {
    color: #5a6470;
    border-color: var(--mem-hav);
}

    .theme-mem .btn-outline-info:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-hav);
        border-color: var(--mem-hav);
    }

    .btn-check:focus + .btn-outline-info,
    .theme-mem .btn-outline-info:focus {
        box-shadow: 0 0 0 0.25rem var(--mem-focus-info);
    }

.theme-mem .btn-outline-light {
    color: var(--mem-sort2025);
    border-color: var(--mem-cream);
}

    .theme-mem .btn-outline-light:hover {
        color: var(--mem-kaffe);
        background-color: var(--mem-cream);
        border-color: var(--mem-cream);
    }

.theme-mem .btn-outline-dark {
    color: var(--mem-kaffe);
    border-color: var(--mem-kaffe);
}

    .theme-mem .btn-outline-dark:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-kaffe);
        border-color: var(--mem-kaffe);
    }

/* -------------------------------------------------------------------------- */
/* .border-* — hardcoded in BS 5.1                                            */
/* -------------------------------------------------------------------------- */

.theme-mem .border-primary {
    border-color: var(--mem-orange) !important;
}

.theme-mem .border-secondary {
    border-color: var(--mem-hav) !important;
}

.theme-mem .border-success {
    border-color: var(--mem-skov) !important;
}

.theme-mem .border-info {
    border-color: #7a8490 !important;
}

.theme-mem .border-warning {
    border-color: var(--mem-khaki) !important;
}

.theme-mem .border-danger {
    border-color: var(--mem-rust) !important;
}

.theme-mem .border-light {
    border-color: var(--mem-cream) !important;
}

.theme-mem .border-dark {
    border-color: var(--mem-kaffe) !important;
}

/* -------------------------------------------------------------------------- */
/* .link-* — hardcoded                                                        */
/* -------------------------------------------------------------------------- */

.theme-mem .link-primary {
    color: var(--mem-orange);
}

    .link-primary:focus,
    .theme-mem .link-primary:hover {
        color: var(--mem-rust);
    }

.theme-mem .link-secondary {
    color: var(--mem-hav);
}

    .link-secondary:focus,
    .theme-mem .link-secondary:hover {
        color: var(--mem-aske);
    }

.theme-mem .link-success {
    color: var(--mem-skov);
}

    .link-success:focus,
    .theme-mem .link-success:hover {
        color: var(--mem-skov-active);
    }

.theme-mem .link-danger {
    color: var(--mem-rust);
}

    .link-danger:focus,
    .theme-mem .link-danger:hover {
        color: var(--mem-rust-active);
    }

.theme-mem .link-warning {
    color: var(--mem-mocca);
}

    .link-warning:focus,
    .theme-mem .link-warning:hover {
        color: var(--mem-kaffe);
    }

.theme-mem .link-info {
    color: #5a6470;
}

    .link-info:focus,
    .theme-mem .link-info:hover {
        color: var(--mem-aske);
    }

.theme-mem .link-light {
    color: var(--mem-cream);
}

    .link-light:focus,
    .theme-mem .link-light:hover {
        color: var(--mem-hvid);
    }

.theme-mem .link-dark {
    color: var(--mem-kaffe);
}

    .link-dark:focus,
    .theme-mem .link-dark:hover {
        color: var(--mem-skov);
    }

/* -------------------------------------------------------------------------- */
/* Alerts                                                                     */
/* -------------------------------------------------------------------------- */

.theme-mem .alert-primary {
    color: var(--mem-kaffe);
    background-color: #fbefe2;
    border-color: var(--mem-khaki);
}

    .theme-mem .alert-primary .alert-link {
        color: var(--mem-rust);
    }

.theme-mem .alert-secondary {
    color: var(--mem-kaffe);
    background-color: var(--mem-gra15);
    border-color: var(--mem-hav);
}

    .theme-mem .alert-secondary .alert-link {
        color: var(--mem-aske);
    }

.theme-mem .alert-success {
    color: var(--mem-skov);
    background-color: #eceee0;
    border-color: #c5c9a8;
}

    .theme-mem .alert-success .alert-link {
        color: var(--mem-skov-active);
    }

.theme-mem .alert-danger {
    color: #6b220d;
    background-color: #fce8e3;
    border-color: #e4b5a8;
}

    .theme-mem .alert-danger .alert-link {
        color: var(--mem-rust-active);
    }

.theme-mem .alert-warning {
    color: var(--mem-kaffe);
    background-color: #faf4e8;
    border-color: var(--mem-khaki);
}

    .theme-mem .alert-warning .alert-link {
        color: var(--mem-mocca);
    }

.theme-mem .alert-info {
    color: var(--mem-sort2025);
    background-color: #eef1f3;
    border-color: var(--mem-hav);
}

    .theme-mem .alert-info .alert-link {
        color: var(--mem-aske);
    }

.theme-mem .alert-light {
    color: var(--mem-sort2025);
    background-color: var(--mem-hvid);
    border-color: var(--mem-strand);
}

    .theme-mem .alert-light .alert-link {
        color: var(--mem-kaffe);
    }

.theme-mem .alert-dark {
    color: var(--mem-hvid);
    background-color: var(--mem-kaffe);
    border-color: var(--mem-skov);
}

    .theme-mem .alert-dark .alert-link {
        color: var(--mem-cream);
    }

/* -------------------------------------------------------------------------- */
/* List group (BS 5.1 hardcoded tints)                                        */
/* -------------------------------------------------------------------------- */

.theme-mem .list-group-item-primary {
    color: var(--mem-kaffe);
    background-color: #fbefe2;
}

    .list-group-item-primary.list-group-item-action:focus,
    .theme-mem .list-group-item-primary.list-group-item-action:hover {
        color: var(--mem-kaffe);
        background-color: #f3e0cc;
    }

    .theme-mem .list-group-item-primary.list-group-item-action.active {
        color: var(--mem-hvid);
        background-color: var(--mem-orange);
        border-color: var(--mem-orange);
    }

.theme-mem .list-group-item-secondary {
    color: var(--mem-sort2025);
    background-color: var(--mem-gra15);
}

    .list-group-item-secondary.list-group-item-action:focus,
    .theme-mem .list-group-item-secondary.list-group-item-action:hover {
        color: var(--mem-kaffe);
        background-color: #d6d6d6;
    }

    .theme-mem .list-group-item-secondary.list-group-item-action.active {
        color: var(--mem-hvid);
        background-color: var(--mem-hav);
        border-color: var(--mem-hav);
    }

.theme-mem .list-group-item-success {
    color: var(--mem-skov);
    background-color: #eceee0;
}

    .list-group-item-success.list-group-item-action:focus,
    .theme-mem .list-group-item-success.list-group-item-action:hover {
        color: var(--mem-skov);
        background-color: #dde0cf;
    }

    .theme-mem .list-group-item-success.list-group-item-action.active {
        color: var(--mem-hvid);
        background-color: var(--mem-skov);
        border-color: var(--mem-skov);
    }

.theme-mem .list-group-item-info {
    color: var(--mem-sort2025);
    background-color: #eef1f3;
}

    .list-group-item-info.list-group-item-action:focus,
    .theme-mem .list-group-item-info.list-group-item-action:hover {
        color: var(--mem-kaffe);
        background-color: #e0e5ea;
    }

    .theme-mem .list-group-item-info.list-group-item-action.active {
        color: var(--mem-hvid);
        background-color: #7a8490;
        border-color: #7a8490;
    }

.theme-mem .list-group-item-warning {
    color: var(--mem-kaffe);
    background-color: #faf4e8;
}

    .list-group-item-warning.list-group-item-action:focus,
    .theme-mem .list-group-item-warning.list-group-item-action:hover {
        color: var(--mem-kaffe);
        background-color: #f0e6d4;
    }

    .theme-mem .list-group-item-warning.list-group-item-action.active {
        color: var(--mem-kaffe);
        background-color: var(--mem-khaki);
        border-color: var(--mem-khaki);
    }

.theme-mem .list-group-item-danger {
    color: #6b220d;
    background-color: #fce8e3;
}

    .list-group-item-danger.list-group-item-action:focus,
    .theme-mem .list-group-item-danger.list-group-item-action:hover {
        color: #6b220d;
        background-color: #f5d5cc;
    }

    .theme-mem .list-group-item-danger.list-group-item-action.active {
        color: var(--mem-hvid);
        background-color: var(--mem-rust);
        border-color: var(--mem-rust);
    }

.theme-mem .list-group-item-light {
    color: var(--mem-sort2025);
    background-color: var(--mem-cream);
}

    .list-group-item-light.list-group-item-action:focus,
    .theme-mem .list-group-item-light.list-group-item-action:hover {
        color: var(--mem-kaffe);
        background-color: var(--mem-cream-hover);
    }

    .theme-mem .list-group-item-light.list-group-item-action.active {
        color: var(--mem-hvid);
        background-color: var(--mem-ler);
        border-color: var(--mem-ler);
    }

.theme-mem .list-group-item-dark {
    color: var(--mem-hvid);
    background-color: #5a4a3d;
}

    .list-group-item-dark.list-group-item-action:focus,
    .theme-mem .list-group-item-dark.list-group-item-action:hover {
        color: var(--mem-hvid);
        background-color: var(--mem-kaffe);
    }

    .theme-mem .list-group-item-dark.list-group-item-action.active {
        color: var(--mem-hvid);
        background-color: var(--mem-kaffe);
        border-color: var(--mem-kaffe);
    }

.theme-mem .list-group-item.active {
    background-color: var(--mem-orange);
    border-color: var(--mem-mocca);
}

/* -------------------------------------------------------------------------- */
/* text-bg-* (BS 5.2+ / DevExpress; harmless on 5.1 if unused)                 */
/* -------------------------------------------------------------------------- */

.theme-mem .text-bg-primary {
    color: var(--mem-hvid) !important;
    background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.theme-mem .text-bg-secondary {
    color: var(--mem-hvid) !important;
    background-color: rgba(146, 156, 166, var(--bs-bg-opacity, 1)) !important;
}

.theme-mem .text-bg-success {
    color: var(--mem-hvid) !important;
    background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important;
}

.theme-mem .text-bg-danger {
    color: var(--mem-hvid) !important;
    background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important;
}

.theme-mem .text-bg-warning {
    color: var(--mem-kaffe) !important;
    background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important;
}

.theme-mem .text-bg-info {
    color: var(--mem-hvid) !important;
    background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important;
}

.theme-mem .text-bg-light {
    color: var(--mem-kaffe) !important;
    background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

.theme-mem .text-bg-dark {
    color: var(--mem-hvid) !important;
    background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* -------------------------------------------------------------------------- */
/* Form validation (BS 5.1 hardcoded greens/reds + SVGs)                      */
/* -------------------------------------------------------------------------- */

.theme-mem .valid-feedback {
    color: var(--bs-form-valid-color);
}

.theme-mem .valid-tooltip {
    color: var(--mem-hvid);
    background-color: rgba(58, 61, 31, 0.92);
}

.theme-mem .invalid-feedback {
    color: var(--bs-form-invalid-color);
}

.theme-mem .invalid-tooltip {
    color: var(--mem-hvid);
    background-color: rgba(165, 67, 26, 0.92);
}

.form-control.is-valid,
.theme-mem .was-validated .form-control:valid {
    border-color: var(--bs-form-valid-border-color);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%233a3d1f' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
}

    .form-control.is-valid:focus,
    .theme-mem .was-validated .form-control:valid:focus {
        border-color: var(--bs-form-valid-border-color);
        box-shadow: 0 0 0 0.25rem var(--mem-focus-success);
    }

.form-control.is-invalid,
.theme-mem .was-validated .form-control:invalid {
    border-color: var(--bs-form-invalid-border-color);
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23a5431a'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23a5431a' stroke='none'/%3e%3c/svg%3e");
}

    .form-control.is-invalid:focus,
    .theme-mem .was-validated .form-control:invalid:focus {
        border-color: var(--bs-form-invalid-border-color);
        box-shadow: 0 0 0 0.25rem var(--mem-focus-danger);
    }

.form-select.is-valid,
.theme-mem .was-validated .form-select:valid {
    border-color: var(--bs-form-valid-border-color);
}

    .form-select.is-valid:not([multiple]):not([size]),
    .form-select.is-valid:not([multiple])[size="1"],
    .was-validated .form-select:valid:not([multiple]):not([size]),
    .theme-mem .was-validated .form-select:valid:not([multiple])[size="1"] {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%233e4241' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%233a3d1f' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
    }

    .form-select.is-valid:focus,
    .theme-mem .was-validated .form-select:valid:focus {
        border-color: var(--bs-form-valid-border-color);
        box-shadow: 0 0 0 0.25rem var(--mem-focus-success);
    }

.form-select.is-invalid,
.theme-mem .was-validated .form-select:invalid {
    border-color: var(--bs-form-invalid-border-color);
}

    .form-select.is-invalid:not([multiple]):not([size]),
    .form-select.is-invalid:not([multiple])[size="1"],
    .was-validated .form-select:invalid:not([multiple]):not([size]),
    .theme-mem .was-validated .form-select:invalid:not([multiple])[size="1"] {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%233e4241' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23a5431a'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23a5431a' stroke='none'/%3e%3c/svg%3e");
    }

    .form-select.is-invalid:focus,
    .theme-mem .was-validated .form-select:invalid:focus {
        border-color: var(--bs-form-invalid-border-color);
        box-shadow: 0 0 0 0.25rem var(--mem-focus-danger);
    }

.form-check-input.is-valid,
.theme-mem .was-validated .form-check-input:valid {
    border-color: var(--bs-form-valid-border-color);
}

    .form-check-input.is-valid:checked,
    .theme-mem .was-validated .form-check-input:valid:checked {
        background-color: var(--mem-skov);
    }

    .form-check-input.is-valid:focus,
    .theme-mem .was-validated .form-check-input:valid:focus {
        box-shadow: 0 0 0 0.25rem var(--mem-focus-success);
    }

.form-check-input.is-invalid,
.theme-mem .was-validated .form-check-input:invalid {
    border-color: var(--bs-form-invalid-border-color);
}

    .form-check-input.is-invalid:checked,
    .theme-mem .was-validated .form-check-input:invalid:checked {
        background-color: var(--mem-rust);
    }

    .form-check-input.is-invalid:focus,
    .theme-mem .was-validated .form-check-input:invalid:focus {
        box-shadow: 0 0 0 0.25rem var(--mem-focus-danger);
    }

    .form-check-input.is-invalid ~ .form-check-label,
    .theme-mem .was-validated .form-check-input:invalid ~ .form-check-label {
        color: var(--bs-form-invalid-color);
    }

.form-check-input.is-valid ~ .form-check-label,
.theme-mem .was-validated .form-check-input:valid ~ .form-check-label {
    color: var(--bs-form-valid-color);
}

/* Modal / misc: btn-close focus ring */
.theme-mem .btn-close:focus {
    box-shadow: 0 0 0 0.25rem var(--mem-focus-primary);
}

/* -------------------------------------------------------------------------- */
/* DevExpress Blazing Berry — map purple accents to MEM palette               */
/* .theme-mem is on .main-layout; rules use descendant selectors              */
/* -------------------------------------------------------------------------- */

.theme-mem {
    --bs-primary: var(--mem-orange, #c07f2c);
    --bs-primary-rgb: 192, 127, 44;
    --dxbl-list-box-item-selected-bg: var(--mem-orange, #c07f2c);
    --dxbl-list-box-item-selected-color: var(--mem-hvid, #fff);
    --dxbl-list-box-item-selected-hover-bg: var(--mem-orange-hover, #a56d24);
    --dxbl-list-box-item-selected-hover-color: var(--mem-hvid, #fff);
    --dxbl-list-box-item-selected-focused-color: var(--mem-hvid, #fff);
    --dxbl-list-box-item-multi-selected-bg: #fff7ed;
    --dxbl-list-box-item-multi-selected-color: var(--mem-kaffe, #3f2615);
    --dxbl-list-box-item-multi-selected-hover-bg: #ffedd5;
    --dxbl-list-box-item-multi-selected-hover-color: var(--mem-kaffe, #3f2615);
    --dxbl-list-box-focus-bg: #fff7ed;
    --dxbl-list-box-focus-color: var(--mem-kaffe, #3f2615);
    --dxbl-list-box-highlighted-text-bg: var(--mem-khaki, #d8c39b);
    --dxbl-list-box-highlighted-text-color: var(--mem-kaffe, #3f2615);
    --dxbl-checkbox-check-element-checked-bg: var(--mem-orange, #c07f2c);
    --dxbl-checkbox-check-element-checked-color: var(--mem-hvid, #fff);
    --dxbl-checkbox-check-element-checked-hover-bg: var(--mem-orange-hover, #a56d24);
    --dxbl-checkbox-check-element-checked-hover-background: var(--mem-orange-hover, #a56d24);
    --dxbl-checkbox-checked-focus-shadow-color: var(--mem-focus-primary, rgba(192, 127, 44, 0.45));
    --dxbl-checkbox-switch-checked-bg: var(--mem-orange, #c07f2c);
    --dxbl-text-edit-focus-border-color: var(--mem-orange, #c07f2c);
    --dxbl-text-edit-focus-shadow-color: var(--mem-focus-primary, rgba(192, 127, 44, 0.35));
    --dxbl-grid-selection-bg: #fff7ed;
    --dxbl-grid-selection-color: var(--mem-kaffe, #3f2615);
    --dxbl-grid-focus-bg: #fff7ed;
    --dxbl-grid-focus-color: var(--mem-kaffe, #3f2615);
    --dxbl-grid-focus-frame-color: var(--mem-orange, #c07f2c);
    --dxbl-grid-selection-focus-bg: #fff7ed;
    --dxbl-grid-selection-focus-color: var(--mem-kaffe, #3f2615);
    --dxbl-treeview-item-selection-bg: #fff7ed;
    --dxbl-treeview-item-selection-color: var(--mem-kaffe, #3f2615);
    --dxbl-treeview-item-hover-bg: #f9fafb;
    --dxbl-treeview-item-hover-color: var(--mem-kaffe, #3f2615);
    --dxbl-treeview-item-focus-outline-color: var(--mem-orange, #c07f2c);
    --dxbl-tabs-tab-selected-color: var(--mem-orange, #c07f2c);
    --dxbl-tabs-tab-focus-outline-color: var(--mem-orange, #c07f2c);
    --dxbl-tabs-tab-drop-indicator-color: var(--mem-orange, #c07f2c);
    --dxbl-tabs-tab-hover-color: var(--mem-kaffe, #3f2615);
}

    .theme-mem .text-primary,
    .theme-mem .spinner-border.text-primary,
    .theme-mem .layout-loading-panel .spinner-border.text-primary {
        color: var(--mem-orange, #c07f2c) !important;
    }

    /* DxGrid — common layout and colours (any app with theme-mem active) */
    .theme-mem .dxbl-grid {
        --dxbl-grid-bg: #fff;
        --dxbl-grid-color: #374151;
        --dxbl-grid-border-color: #e5e7eb;
        --dxbl-grid-header-bg: #f4f6f8;
        --dxbl-grid-header-color: #1f2937;
        --dxbl-grid-header-font-weight: 600;
        --dxbl-grid-footer-bg: #fafbfc;
        --dxbl-grid-group-footer-bg: #fafbfc;
        --dxbl-grid-hover-bg: #f9fafb;
        --dxbl-grid-focus-bg: #fff7ed;
        --dxbl-grid-focus-color: var(--mem-kaffe, #3f2615);
        --dxbl-grid-selection-focus-bg: #fff7ed;
        --dxbl-grid-selection-focus-color: var(--mem-kaffe, #3f2615);
        /* Keep unset — DevExpress reuses this var for svg opacity when set to a colour */
        --dxbl-grid-expand-btn-color: unset;
        --dxbl-grid-expand-btn-hover-color: unset;
        --dxbl-grid-expand-btn-hover-bg: #fff7ed;
    }

        .theme-mem .dxbl-grid .dxbl-grid-table thead .dxbl-grid-header-row > td,
        .theme-mem .dxbl-grid .dxbl-grid-table > thead > tr > td {
            background-color: #f4f6f8 !important;
            color: #1f2937 !important;
            font-weight: 600;
            border-color: #e5e7eb !important;
        }

        .theme-mem .dxbl-grid .dxbl-grid-table td {
            border-color: #e5e7eb !important;
        }

        .theme-mem .dxbl-grid .dxbl-grid-table tbody tr.dxbl-grid-data-row > td {
            padding-top: 0.45rem;
            padding-bottom: 0.45rem;
        }

        .theme-mem .dxbl-grid .dxbl-grid-group-row {
            background-color: #f8fafc;
            color: #1f2937;
            font-weight: 600;
        }

        .theme-mem .dxbl-grid .dxbl-grid-group-panel-container {
            background-color: #fafbfc;
            border-color: #e5e7eb;
        }

        .theme-mem .dxbl-grid .dxbl-grid-table .dxbl-grid-focused-row:not(.dxbl-grid-group-row):not(.dxbl-grid-group-footer-row) > td:not(.dxbl-grid-empty-cell):not(.dxbl-grid-indent-cell) {
            background-color: #fff7ed !important;
            color: var(--mem-kaffe, #3f2615) !important;
            box-shadow: inset 3px 0 0 var(--mem-orange, #c07f2c);
        }

            .theme-mem .dxbl-grid .dxbl-grid-table .dxbl-grid-focused-row:not(.dxbl-grid-group-row):not(.dxbl-grid-group-footer-row) > td:not(.dxbl-grid-empty-cell):not(.dxbl-grid-indent-cell)::before,
            .theme-mem .dxbl-grid .dxbl-grid-table .dxbl-grid-focused-row.dxbl-grid-selected-row > td:not(.dxbl-grid-empty-cell):not(.dxbl-grid-indent-cell)::before {
                background-color: #fff7ed !important;
                opacity: 1 !important;
            }

        .theme-mem .dxbl-grid.dxbl-grid-row-hover-enabled .dxbl-grid-table tbody tr.dxbl-grid-data-row:not(.dxbl-grid-focused-row):hover > td {
            background-color: #f9fafb !important;
        }

        /* Tree/group expand chevrons — must stay dark on coloured rows (DevExpress default focus colour is #fff) */
        .theme-mem .dxbl-grid-tree-node-expand-button,
        .theme-mem .dxbl-grid .dxbl-grid-tree-node-expand-button {
            --dxbl-btn-color: var(--mem-mocca, #895b2f);
        }

            .theme-mem .dxbl-grid-tree-node-expand-button > svg.dxbl-image,
            .theme-mem .dxbl-grid .dxbl-grid-tree-node-expand-button > svg.dxbl-image,
            .theme-mem .dxbl-grid .dxbl-grid-expand-button-cell .dxbl-grid-expand-button > svg.dxbl-image {
                color: var(--mem-mocca, #895b2f) !important;
                fill: currentColor !important;
                opacity: 1 !important;
            }

            .theme-mem .dxbl-grid-tree-node-expand-button:not(.dxbl-disabled):not(:disabled):hover > svg.dxbl-image,
            .theme-mem .dxbl-grid .dxbl-grid-tree-node-expand-button:not(.dxbl-disabled):not(:disabled):hover > svg.dxbl-image,
            .theme-mem .dxbl-grid .dxbl-grid-expand-button-cell .dxbl-grid-expand-button:not(.dxbl-disabled):not(:disabled):hover > svg.dxbl-image {
                color: var(--mem-orange, #c07f2c) !important;
                opacity: 1 !important;
            }

        .theme-mem .dxbl-grid .dxbl-grid-table .dxbl-grid-focused-row > td .dxbl-grid-tree-node-expand-button > svg.dxbl-image,
        .theme-mem .dxbl-grid .dxbl-grid-table .mem-tree-row-top > td .dxbl-grid-tree-node-expand-button > svg.dxbl-image,
        .theme-mem .dxbl-grid .dxbl-grid-table tr.mem-tree-row-top .dxbl-grid-tree-node-expand-button > svg.dxbl-image {
            color: var(--mem-mocca, #895b2f) !important;
            fill: currentColor !important;
            opacity: 1 !important;
        }

    .theme-mem .dxbl-list-box-item:not(.dxbl-list-box-item-selected),
    .theme-mem .dxbl-edit-dropdown-item:not(.dxbl-list-box-item-selected) {
        color: #1f2937 !important;
    }

    .theme-mem .dxbl-list-box:not(.dxbl-list-box-multi-select) .dxbl-list-box-item-selected,
    .theme-mem .dxbl-list-box:not(.dxbl-list-box-multi-select) .dxbl-list-box-item-selected > .dxbl-list-box-item-content {
        background-color: var(--mem-orange, #c07f2c) !important;
        color: var(--mem-hvid, #fff) !important;
    }

        .theme-mem .dxbl-list-box:not(.dxbl-list-box-multi-select) .dxbl-list-box-item-selected:hover,
        .theme-mem .dxbl-list-box:not(.dxbl-list-box-multi-select) .dxbl-list-box-item-selected:hover > .dxbl-list-box-item-content {
            background-color: var(--mem-orange-hover, #a56d24) !important;
            color: var(--mem-hvid, #fff) !important;
        }

    .theme-mem .dxbl-list-box.dxbl-list-box-multi-select .dxbl-list-box-item-selected,
    .theme-mem .dxbl-list-box.dxbl-list-box-multi-select .dxbl-list-box-item-selected > .dxbl-list-box-item-content {
        background-color: #fff7ed !important;
        color: var(--mem-kaffe, #3f2615) !important;
    }

        .theme-mem .dxbl-list-box.dxbl-list-box-multi-select .dxbl-list-box-item-selected:hover,
        .theme-mem .dxbl-list-box.dxbl-list-box-multi-select .dxbl-list-box-item-selected:hover > .dxbl-list-box-item-content {
            background-color: #ffedd5 !important;
            color: var(--mem-kaffe, #3f2615) !important;
        }

    .theme-mem .dxbl-checkbox.dxbl-checkbox-checked .dxbl-checkbox-check-element,
    .theme-mem .dxbl-checkbox.dxbl-checkbox-checked .dxbl-checkbox-icon {
        background-color: var(--mem-orange, #c07f2c) !important;
        border-color: var(--mem-orange, #c07f2c) !important;
        color: var(--mem-hvid, #fff) !important;
    }

    .theme-mem .dxbl-btn-primary {
        --dxbl-btn-bg: var(--mem-orange, #c07f2c);
        --dxbl-btn-border-color: var(--mem-orange, #c07f2c);
        --dxbl-btn-color: #fff;
        --dxbl-btn-hover-bg: var(--mem-orange-hover, #a56d24);
        --dxbl-btn-hover-border-color: var(--mem-orange-active, #8f5e1f);
        --dxbl-btn-hover-color: #fff;
        --dxbl-btn-active-bg: var(--mem-orange-active, #8f5e1f);
        --dxbl-btn-active-border-color: var(--mem-mocca, #895b2f);
        --dxbl-btn-active-color: #fff;
        --dxbl-btn-focus-shadow-color: var(--mem-focus-primary, rgba(192, 127, 44, 0.45));
    }

        .theme-mem .dxbl-btn-primary:not(.dxbl-disabled):not(:disabled) {
            background-color: var(--mem-orange, #c07f2c) !important;
            border-color: var(--mem-orange, #c07f2c) !important;
            color: #fff !important;
        }

            .theme-mem .dxbl-btn-primary:not(.dxbl-disabled):not(:disabled):hover {
                background-color: var(--mem-orange-hover, #a56d24) !important;
                border-color: var(--mem-orange-active, #8f5e1f) !important;
                color: #fff !important;
            }

        .theme-mem .dxbl-btn-primary.dxbl-disabled,
        .theme-mem .dxbl-btn-primary:disabled,
        .theme-mem .dxbl-btn.dxbl-btn-primary.dxbl-disabled,
        .theme-mem .dxbl-btn.dxbl-btn-primary:disabled {
            --dxbl-btn-bg: #f3f4f6;
            --dxbl-btn-border-color: #e5e7eb;
            --dxbl-btn-color: #9ca3af;
            --dxbl-btn-disabled-bg: #f3f4f6;
            --dxbl-btn-disabled-border-color: #e5e7eb;
            --dxbl-btn-disabled-color: #9ca3af;
            background-color: #f3f4f6 !important;
            border-color: #e5e7eb !important;
            color: #9ca3af !important;
            opacity: 1 !important;
        }

            .theme-mem .dxbl-btn-primary.dxbl-disabled .dxbl-btn-icon,
            .theme-mem .dxbl-btn-primary:disabled .dxbl-btn-icon,
            .theme-mem .dxbl-btn.dxbl-btn-primary.dxbl-disabled .dxbl-btn-icon,
            .theme-mem .dxbl-btn.dxbl-btn-primary:disabled .dxbl-btn-icon {
                color: #9ca3af !important;
                opacity: 1 !important;
            }

    .theme-mem .dxbl-btn-secondary {
        --dxbl-btn-bg: #4b5563;
        --dxbl-btn-border-color: #4b5563;
        --dxbl-btn-color: #fff;
        --dxbl-btn-hover-bg: #374151;
        --dxbl-btn-hover-border-color: #374151;
        --dxbl-btn-hover-color: #fff;
        --dxbl-btn-active-bg: #1f2937;
        --dxbl-btn-active-border-color: #1f2937;
        --dxbl-btn-active-color: #fff;
        --dxbl-btn-focus-shadow-color: rgba(75, 85, 99, 0.35);
    }

    .theme-mem .dxbl-btn-light {
        --dxbl-btn-bg: #fff;
        --dxbl-btn-border-color: #d1d5db;
        --dxbl-btn-color: #374151;
        --dxbl-btn-hover-bg: #f9fafb;
        --dxbl-btn-hover-border-color: #9ca3af;
        --dxbl-btn-hover-color: #111827;
        --dxbl-btn-active-bg: #f3f4f6;
        --dxbl-btn-active-border-color: #9ca3af;
        --dxbl-btn-active-color: #111827;
    }

    .theme-mem .dxbl-btn-danger {
        --dxbl-btn-bg: #fef2f2;
        --dxbl-btn-border-color: #fecaca;
        --dxbl-btn-color: #b91c1c;
        --dxbl-btn-hover-bg: #fee2e2;
        --dxbl-btn-hover-border-color: #fca5a5;
        --dxbl-btn-hover-color: #991b1b;
        --dxbl-btn-active-bg: #fecaca;
        --dxbl-btn-active-border-color: #f87171;
        --dxbl-btn-active-color: #7f1d1d;
    }

    .theme-mem .dxbl-tabs {
        --dxbl-tabs-bg: #fff;
        --dxbl-tabs-color: #4b5563;
        --dxbl-tabs-separator-border-color: #e5e7eb;
        --dxbl-tabs-tab-hover-bg: #f9fafb;
        --dxbl-tabs-tab-selected-color: var(--mem-orange, #c07f2c);
        --dxbl-tabs-tab-focus-outline-color: var(--mem-orange, #c07f2c);
        --dxbl-tabs-tab-drop-indicator-color: var(--mem-orange, #c07f2c);
        --dxbl-tabs-tab-hover-color: var(--mem-kaffe, #3f2615);
    }

        .theme-mem .dxbl-tabs .dxbl-tabs-tablist {
            background: #fafbfc;
            border-bottom: 1px solid #e5e7eb;
        }

            .theme-mem .dxbl-tabs .dxbl-tabs-tablist > ul > li > .dxbl-tabs-item.dxbl-active,
            .theme-mem .dxbl-tabs .dxbl-tabs-tablist > .dxbl-scroll-viewer > .dxbl-scroll-viewer-content > ul > li > .dxbl-tabs-item.dxbl-active,
            .theme-mem .dxbl-tabs .dxbl-tabs-tab-selected > .dxbl-tabs-item {
                color: var(--mem-orange, #c07f2c) !important;
                font-weight: 600;
            }

                .theme-mem .dxbl-tabs .dxbl-tabs-tablist > ul > li > .dxbl-tabs-item.dxbl-active .dxbl-tabs-item-text,
                .theme-mem .dxbl-tabs .dxbl-tabs-tablist > .dxbl-scroll-viewer > .dxbl-scroll-viewer-content > ul > li > .dxbl-tabs-item.dxbl-active .dxbl-tabs-item-text,
                .theme-mem .dxbl-tabs .dxbl-tabs-tab-selected > .dxbl-tabs-item .dxbl-tabs-item-text {
                    color: var(--mem-orange, #c07f2c) !important;
                }

        /* Blazing Berry hardcodes #5f368d on ::after — override the active-tab underline */
        .theme-mem .dxbl-tabs > .dxbl-tabs-tablist > ul > li > .dxbl-tabs-item.dxbl-active::after,
        .theme-mem .dxbl-tabs > .dxbl-tabs-tablist > .dxbl-scroll-viewer > .dxbl-scroll-viewer-content > ul > li > .dxbl-tabs-item.dxbl-active::after,
        .theme-mem .dxbl-tabs.dxbl-tabs-top > .dxbl-tabs-tablist > ul > li > .dxbl-tabs-item.dxbl-active::after,
        .theme-mem .dxbl-tabs.dxbl-tabs-top > .dxbl-tabs-tablist > .dxbl-scroll-viewer > .dxbl-scroll-viewer-content > ul > li > .dxbl-tabs-item.dxbl-active::after {
            background-color: var(--mem-orange, #c07f2c) !important;
        }

    .theme-mem .dxbl-btn .dxbl-btn-icon.fa-solid {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 1rem;
        font-size: 0.8rem;
        line-height: 1;
    }

    .theme-mem .alert-danger {
        color: #6b220d;
        background-color: #fce8e3;
        border-color: #e4b5a8;
    }

/* Portaled DevExpress UI (popups, dropdowns) when layout uses theme-mem */
body:has(.main-layout.theme-mem) .dxbl-btn.dxbl-btn-primary,
body:has(.main-layout.theme-mem) .dxbl-btn-primary:where(:not(.dxbl-btn-standalone)) {
    --dxbl-btn-bg: var(--mem-orange, #c07f2c);
    --dxbl-btn-border-color: var(--mem-orange, #c07f2c);
    --dxbl-btn-color: #fff;
    --dxbl-btn-hover-bg: var(--mem-orange-hover, #a56d24);
    --dxbl-btn-hover-border-color: var(--mem-orange-active, #8f5e1f);
    --dxbl-btn-hover-color: #fff;
    --dxbl-btn-active-bg: var(--mem-orange-active, #8f5e1f);
    --dxbl-btn-active-border-color: var(--mem-mocca, #895b2f);
    --dxbl-btn-active-color: #fff;
    --dxbl-btn-focus-shadow-color: var(--mem-focus-primary, rgba(192, 127, 44, 0.45));
}

    body:has(.main-layout.theme-mem) .dxbl-btn.dxbl-btn-primary:not(.dxbl-disabled):not(:disabled),
    body:has(.main-layout.theme-mem) .dxbl-btn-primary:where(:not(.dxbl-btn-standalone)):not(.dxbl-disabled):not(:disabled) {
        background-color: var(--mem-orange, #c07f2c) !important;
        border-color: var(--mem-orange, #c07f2c) !important;
        color: #fff !important;
    }

    body:has(.main-layout.theme-mem) .dxbl-btn.dxbl-btn-primary.dxbl-disabled,
    body:has(.main-layout.theme-mem) .dxbl-btn.dxbl-btn-primary:disabled,
    body:has(.main-layout.theme-mem) .dxbl-btn-primary:where(:not(.dxbl-btn-standalone)).dxbl-disabled,
    body:has(.main-layout.theme-mem) .dxbl-btn-primary:where(:not(.dxbl-btn-standalone)):disabled {
        --dxbl-btn-bg: #f3f4f6;
        --dxbl-btn-border-color: #e5e7eb;
        --dxbl-btn-color: #9ca3af;
        --dxbl-btn-disabled-bg: #f3f4f6;
        --dxbl-btn-disabled-border-color: #e5e7eb;
        --dxbl-btn-disabled-color: #9ca3af;
        background-color: #f3f4f6 !important;
        border-color: #e5e7eb !important;
        color: #9ca3af !important;
        opacity: 1 !important;
    }

        body:has(.main-layout.theme-mem) .dxbl-btn.dxbl-btn-primary.dxbl-disabled .dxbl-btn-icon,
        body:has(.main-layout.theme-mem) .dxbl-btn.dxbl-btn-primary:disabled .dxbl-btn-icon,
        body:has(.main-layout.theme-mem) .dxbl-btn-primary:where(:not(.dxbl-btn-standalone)).dxbl-disabled .dxbl-btn-icon,
        body:has(.main-layout.theme-mem) .dxbl-btn-primary:where(:not(.dxbl-btn-standalone)):disabled .dxbl-btn-icon {
            color: #9ca3af !important;
            opacity: 1 !important;
        }

body:has(.main-layout.theme-mem) .dxbl-checkbox.dxbl-checkbox-checked .dxbl-checkbox-check-element,
body:has(.main-layout.theme-mem) .dxbl-checkbox.dxbl-checkbox-checked .dxbl-checkbox-icon {
    background-color: var(--mem-orange, #c07f2c) !important;
    border-color: var(--mem-orange, #c07f2c) !important;
    color: #fff !important;
}

body:has(.main-layout.theme-mem) .dxbl-list-box:not(.dxbl-list-box-multi-select) .dxbl-list-box-item-selected,
body:has(.main-layout.theme-mem) .dxbl-list-box:not(.dxbl-list-box-multi-select) .dxbl-list-box-item-selected > .dxbl-list-box-item-content {
    background-color: var(--mem-orange, #c07f2c) !important;
    color: #fff !important;
}

body:has(.main-layout.theme-mem) .dxbl-list-box.dxbl-list-box-multi-select .dxbl-list-box-item-selected,
body:has(.main-layout.theme-mem) .dxbl-list-box.dxbl-list-box-multi-select .dxbl-list-box-item-selected > .dxbl-list-box-item-content {
    background-color: #fff7ed !important;
    color: var(--mem-kaffe, #3f2615) !important;
}

/* DxTreeList — tree-specific overrides (use mem-tree-row-* via CustomizeElement) */
.theme-mem .dxbl-tree-list .dxbl-grid {
    --dxbl-grid-focus-color: var(--mem-kaffe, #3f2615);
    --dxbl-grid-selection-focus-color: var(--mem-kaffe, #3f2615);
}

.theme-mem .dxbl-tree-list tr.mem-tree-row-top > td {
    background-color: #f8fafc !important;
    color: var(--mem-kaffe, #3f2615) !important;
    font-weight: 600;
}

.theme-mem .dxbl-tree-list tr.mem-tree-row-child > td {
    color: #374151 !important;
    font-weight: 400;
}

.theme-mem .dxbl-tree-list .dxbl-grid .dxbl-grid-table .dxbl-grid-focused-row > td:not(.dxbl-grid-empty-cell) {
    background-color: #fff7ed !important;
    color: var(--mem-kaffe, #3f2615) !important;
    box-shadow: none !important;
    font-weight: 600;
}

    .theme-mem .dxbl-tree-list .dxbl-grid .dxbl-grid-table .dxbl-grid-focused-row > td:not(.dxbl-grid-empty-cell):first-child {
        box-shadow: inset 3px 0 0 var(--mem-orange, #c07f2c) !important;
    }

    .theme-mem .dxbl-tree-list .dxbl-grid .dxbl-grid-table .dxbl-grid-focused-row > td:not(.dxbl-grid-empty-cell)::before {
        background-color: transparent !important;
        opacity: 0 !important;
    }

.theme-mem .dxbl-tree-list .dxbl-grid.dxbl-grid-row-hover-enabled .dxbl-grid-table > tbody > tr.dxbl-grid-focused-row:hover > td:not(.dxbl-grid-empty-cell) {
    background-color: #ffedd5 !important;
    color: var(--mem-kaffe, #3f2615) !important;
}
