:root {
    --cp-primary: #2656d9;
    --cp-primary-dark: #163a9d;
    --cp-accent: #13a38b;
    --cp-text: #1f2937;
    --cp-surface: #ffffff;
    --cp-muted: #667085;
    --cp-border: #d9e2ef;
    --cp-sidebar: #12213f;
    --cp-sidebar-soft: #1b315c;
    --cp-sidebar-panel: #183255;
    --cp-sidebar-hover: #1e3d63;
    --cp-sidebar-active: #134d63;
    --cp-sidebar-text: #eaf3ff;
    --cp-sidebar-muted: #9eb2cc;
    --cp-sidebar-line: rgba(174, 205, 236, .18);
    --cp-sidebar-icon: #9ed8ff;
    --cp-body: #f4f7fb;
    --cp-shadow: 0 16px 40px rgba(18, 33, 63, .08);
    --cp-table-head: #17233c;
    --cp-table-row: #ffffff;
    --cp-table-row-alt: #f8fbff;
    --cp-table-hover: #edf4ff;
    --cp-table-text: #1f2937;
    --cp-row-success-bg: #dff7ea;
    --cp-row-success-hover: #c9efd9;
    --cp-row-success-text: #075233;
    --cp-row-danger-bg: #fde2e2;
    --cp-row-danger-hover: #fbd0d0;
    --cp-row-danger-text: #842029;
    --cp-row-warning-bg: #fff1cc;
    --cp-row-warning-hover: #ffe6a3;
    --cp-row-warning-text: #704500;
    --cp-row-info-bg: #dcecff;
    --cp-row-info-hover: #c9e0ff;
    --cp-row-info-text: #123d7a;
    --cp-row-secondary-bg: #e9eef5;
    --cp-row-secondary-hover: #dce4ef;
    --cp-row-secondary-text: #334155;
    --admin-sidebar-width: 256px;
    --admin-sidebar-collapsed-width: 78px;
}

[data-theme="dark"] {
    --cp-primary: #6ea8ff;
    --cp-primary-dark: #3d7ee8;
    --cp-accent: #41d6bd;
    --cp-text: #edf4ff;
    --cp-surface: #172033;
    --cp-muted: #a9b6cb;
    --cp-border: #34445f;
    --cp-sidebar: #08111f;
    --cp-sidebar-soft: #101c31;
    --cp-sidebar-panel: #0e1b2e;
    --cp-sidebar-hover: #132841;
    --cp-sidebar-active: #103b47;
    --cp-sidebar-text: #eef7ff;
    --cp-sidebar-muted: #8fa2ba;
    --cp-sidebar-line: rgba(108, 147, 190, .2);
    --cp-sidebar-icon: #7bc8ff;
    --cp-body: #0b1220;
    --cp-shadow: 0 18px 48px rgba(0, 0, 0, .34);
    --cp-table-head: #0f1a2c;
    --cp-table-row: #172033;
    --cp-table-row-alt: #1c2940;
    --cp-table-hover: #243653;
    --cp-table-text: #edf4ff;
}

body,
.c-app {
    color: #1f2937;
    background: var(--cp-body);
    font-size: .9rem;
}

[data-theme="dark"] body,
[data-theme="dark"] .c-app {
    color: #e6edf7;
    background: var(--cp-body);
}

.c-main {
    padding: 1rem 0 0;
}

.c-main > .card,
.card {
    border: 1px solid rgba(217, 226, 239, .9);
    border-radius: .85rem;
    box-shadow: var(--cp-shadow);
}

.card-header {
    background: #f8fbff;
    border-bottom: 1px solid var(--cp-border);
    border-radius: .85rem .85rem 0 0 !important;
    color: #17233c;
    font-weight: 700;
}

.card-body {
    color: #263445;
}

[data-theme="dark"] .card,
[data-theme="dark"] .card-body,
[data-theme="dark"] .modal-content,
[data-theme="dark"] .dropdown-menu {
    color: #e6edf7;
    background-color: var(--cp-surface);
    border-color: var(--cp-border);
}

[data-theme="dark"] .card-header,
[data-theme="dark"] .modal-header,
[data-theme="dark"] .modal-footer {
    color: #f8fbff;
    background: #172033;
    border-color: var(--cp-border);
}

.ck-editor__editable,
textarea {
    min-height: 150px;
}

.datatable {
    width: 100% !important;
}

table.dataTable tbody td.select-checkbox::before,
table.dataTable tbody td.select-checkbox::after,
table.dataTable tbody th.select-checkbox::before,
table.dataTable tbody th.select-checkbox::after {
    top: 50%;
}

.datatable-toolbar {
    padding: .85rem;
    background: #f8fbff;
    border: 1px solid var(--cp-border);
    border-radius: .75rem;
}

[data-theme="dark"] .datatable-toolbar {
    background: #111a2b;
    border-color: var(--cp-border);
}

.dataTables_length label,
.dataTables_filter label {
    color: var(--cp-muted);
    font-weight: 600;
    margin-bottom: 0;
}

[data-theme="dark"] .dataTables_length label,
[data-theme="dark"] .dataTables_filter label,
[data-theme="dark"] .dataTables_info {
    color: #c8d4e6 !important;
}

.dataTables_length select,
.dataTables_filter input {
    border-color: var(--cp-border);
    border-radius: .55rem;
    min-height: 34px;
}

[data-theme="dark"] .dataTables_length select,
[data-theme="dark"] .dataTables_filter input {
    color: #edf4ff;
    background-color: #111a2b;
    border-color: var(--cp-border);
}

.dt-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.dt-buttons .btn {
    border-radius: .5rem;
    font-weight: 700;
}

.table.datatable {
    box-sizing: border-box;
    border-collapse: separate;
    border-spacing: 0;
}

table.dataTable thead th {
    border-bottom: 1px solid var(--cp-border);
}

table.dataTable,
.table {
    color: var(--cp-table-text);
    --bs-table-color: var(--cp-table-text);
    --bs-table-bg: var(--cp-table-row);
    --bs-table-striped-bg: var(--cp-table-row-alt);
    --bs-table-hover-bg: var(--cp-table-hover);
    --bs-table-border-color: var(--cp-border);
}

table.dataTable tbody tr,
.table tbody tr {
    color: var(--cp-table-text);
    background-color: var(--cp-table-row);
}

table.dataTable tbody td,
table.dataTable tbody th,
.table tbody td,
.table tbody th {
    vertical-align: top;
}

table.dataTable.display tbody tr.odd,
table.dataTable.stripe tbody tr.odd,
.table-striped > tbody > tr:nth-of-type(odd) > * {
    color: var(--cp-table-text);
    background-color: var(--cp-table-row-alt);
}

table.dataTable.hover tbody tr:hover,
table.dataTable.display tbody tr:hover,
.table-hover tbody tr:hover {
    color: var(--cp-table-text);
    background-color: var(--cp-table-hover);
}

table.dataTable tbody tr.selected,
table.dataTable tbody th.selected,
table.dataTable tbody td.selected {
    color: #fff !important;
    background-color: #2f6fe4 !important;
}

[data-theme="dark"] table.dataTable tbody tr.selected,
[data-theme="dark"] table.dataTable tbody th.selected,
[data-theme="dark"] table.dataTable tbody td.selected {
    color: #fff !important;
    background-color: #315fbd !important;
}

[data-theme="dark"] table.dataTable tbody td,
[data-theme="dark"] table.dataTable tbody th,
[data-theme="dark"] .table td,
[data-theme="dark"] .table th {
    color: #edf4ff;
    background-color: inherit !important;
    border-color: var(--cp-border);
}

[data-theme="dark"] table.dataTable tbody td a,
[data-theme="dark"] .table td a {
    color: #9cc4ff;
}

.dataTables_wrapper.no-footer .dataTables_scrollBody {
    border-bottom: 1px solid var(--cp-border);
    margin-bottom: 0;
}

.dataTables_wrapper {
    color: var(--cp-table-text);
}

.dataTables_wrapper .dataTables_scroll {
    overflow: hidden;
    border: 1px solid var(--cp-border);
    border-radius: .85rem;
    background: var(--cp-surface);
    box-shadow: 0 16px 34px rgba(18, 33, 63, .08);
    margin-bottom: .45rem;
}

.dataTables_wrapper .dataTables_scrollHead {
    overflow: hidden;
    background: var(--cp-table-head);
    border-bottom: 0 !important;
}

.dataTables_wrapper .dataTables_scrollHeadInner,
.dataTables_wrapper .dataTables_scrollHead table,
.dataTables_wrapper .dataTables_scrollBody table {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.dataTables_wrapper .dataTables_scrollBody thead,
.dataTables_wrapper .dataTables_scrollBody thead tr,
.dataTables_wrapper .dataTables_scrollBody thead th,
.dataTables_wrapper .dataTables_scrollBody thead td {
    height: 0 !important;
    max-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
    visibility: collapse !important;
}

.dataTables_wrapper .dataTables_scrollBody {
    scrollbar-color: #8aa0ba #eef4fb;
    scrollbar-width: thin;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_scroll {
    background: #121d2f;
    box-shadow: 0 18px 42px rgba(0, 0, 0, .28);
}

[data-theme="dark"] .dataTables_wrapper .dataTables_scrollBody {
    scrollbar-color: #526885 #111a2b;
}

.select2:not(.select2-hidden-accessible) {
    max-width: 100%;
    width: 100% !important;
}

.select2-selection__rendered {
    padding-bottom: 5px !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered,
.select2-container--classic .select2-selection--single .select2-selection__rendered,
.select2-container--default .select2-selection--multiple .select2-selection__rendered,
.select2-container--classic .select2-selection--multiple .select2-selection__rendered {
    color: var(--cp-text);
}

.select2-container--default .select2-selection__placeholder,
.select2-container--classic .select2-selection__placeholder {
    color: var(--cp-muted);
}

[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__rendered,
[data-theme="dark"] .select2-container--classic .select2-selection--single .select2-selection__rendered,
[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__rendered,
[data-theme="dark"] .select2-container--classic .select2-selection--multiple .select2-selection__rendered {
    color: #edf4ff;
}

[data-theme="dark"] .select2-container--default .select2-selection__placeholder,
[data-theme="dark"] .select2-container--classic .select2-selection__placeholder {
    color: #a8b6cc;
}

[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__arrow b,
[data-theme="dark"] .select2-container--classic .select2-selection--single .select2-selection__arrow b {
    border-top-color: #a8b6cc;
    border-bottom-color: #a8b6cc;
}

.has-error .invalid-feedback {
    display: block !important;
}

.btn-info,
.badge-info {
    color: white;
}

table.dataTable thead .sorting,
table.dataTable thead .sorting_asc,
table.dataTable thead .sorting_desc {
    /*background-image: none;*/
}

.sidebar .nav-item {
    cursor: pointer;
}

.btn-default {
    color: #263445;
    background-color: #eef4fb;
    border-color: #d9e2ef;
}

.btn-default.focus,
.btn-default:focus {
    box-shadow: 0 0 0 .2rem rgba(209, 213, 215, .5);
}

.btn-default:hover {
    color: #17233c;
    background-color: #dce9f7;
    border-color: #c7d7ea;
}

.btn-group-xs > .btn,
.btn-xs {
    padding: 1px 5px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px;
}

.searchable-title {
    font-weight: bold;
}
.searchable-fields {
    padding-left:5px;
}
.searchable-link {
    padding:0 5px 0 5px;
}
.searchable-link:hover   {
    cursor: pointer;
    background: #eaeaea;
}
.select2-results__option {
    padding-left: 0px;
    padding-right: 0px;
}

.select2-container--classic .select2-selection--single {
    height: 38px;
    padding: 5px 0;
}

.select2-container--classic .select2-selection--multiple .select2-selection__choice {
    background-color: #3b5998;
    color: white;
    border: 1px solid #3b5998;
    padding: 3px 5px;
    margin-top: 5px;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice,
[data-theme="dark"] .select2-container--classic .select2-selection--multiple .select2-selection__choice {
    color: #dbeafe;
    background-color: #1e3a5f;
    border-color: #315273;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove,
[data-theme="dark"] .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
    color: #b8c7dc;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover,
[data-theme="dark"] .select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
    color: #ffffff;
    background-color: transparent;
}

.select2-container--classic .select2-results__option--highlighted[aria-selected] {
    background-color: #3b5998;
}

.select2-container--classic .select2-results__option[aria-selected=true] {
    background-color: #d8e2f3;
}

.form-group .required::after {
    content: " *";
    color: red;
}

.form-check.is-invalid ~ .invalid-feedback {
    display: block;
}

.c-sidebar {
    background: var(--cp-sidebar);
    box-shadow: 14px 0 34px rgba(18, 33, 63, .16);
}

.btn-block {
    display: block;
    width: 100%;
}

.font-weight-bold {
    font-weight: 700 !important;
}

.font-weight-semibold {
    font-weight: 600 !important;
}

.font-weight-normal {
    font-weight: 400 !important;
}

.form-group {
    margin-bottom: 1rem;
}

.form-text {
    display: block;
    margin-top: .35rem;
}

.ml-auto {
    margin-left: auto !important;
}

.mr-auto {
    margin-right: auto !important;
}

.text-gray-800 {
    color: #1f2937 !important;
}

.text-xs {
    font-size: .75rem;
}

.c-sidebar-nav-item, .c-sidebar-nav-dropdown {
    border-bottom: 1px solid rgba(255, 255, 255, .06);
}

.c-sidebar-brand {
    background: rgba(255, 255, 255, .06);
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.c-sidebar-brand .c-sidebar-brand-full {
    color: #fff;
    font-weight: 800;
    letter-spacing: .01em;
}

.c-sidebar .c-sidebar-nav-link {
    color: rgba(255, 255, 255, .78);
    margin: .15rem .6rem;
    border-radius: .65rem;
    transition: background-color .18s ease, color .18s ease, transform .18s ease;
}

.c-sidebar .c-sidebar-nav-link:hover,
.c-sidebar .c-sidebar-nav-link.c-active,
.c-sidebar .c-sidebar-nav-dropdown.c-show > .c-sidebar-nav-dropdown-toggle {
    color: #fff;
    background: rgba(255, 255, 255, .11);
    text-decoration: none;
}

.c-sidebar .c-sidebar-nav-link:hover {
    transform: translateX(2px);
}

.c-sidebar-nav-icon {
    color: rgba(255, 255, 255, .72) !important;
}

.c-header {
    display: none !important;
}

.admin-mobile-menu-toggle {
    display: none;
}

.admin-mobile-topbar {
    display: none;
}

.admin-mobile-sidebar-backdrop {
    display: none;
}

.admin-sidebar-brand {
    height: auto;
    min-height: 112px;
    padding: 1rem .85rem .9rem;
    align-items: stretch;
    background: rgba(255, 255, 255, .055);
}

.admin-brand-card {
    width: 100%;
    display: grid;
    gap: 0;
    text-align: center;
}

.admin-brand-main {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    padding-bottom: .75rem;
}

.admin-brand-copy {
    min-width: 0;
}

.admin-brand-title {
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    letter-spacing: 0;
    word-break: break-word;
}

.admin-brand-user {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    margin-top: .25rem;
    color: rgba(255, 255, 255, .72);
    font-size: .78rem;
    font-weight: 700;
    line-height: 1.25;
}

.admin-brand-user span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-sidebar-theme-toggle {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    padding: .55rem .7rem;
    border-radius: 999px;
    color: #eef5ff;
    background: rgba(255, 255, 255, .09);
    border: 1px solid rgba(255, 255, 255, .16);
    font-size: .78rem;
    font-weight: 800;
    line-height: 1;
    margin-bottom: .35rem;
}

.admin-sidebar-theme-toggle:hover {
    background: rgba(255, 255, 255, .18);
}

.admin-theme-icon-dark,
.admin-theme-label-dark {
    display: none;
}

[data-theme="dark"] .admin-theme-icon-light,
[data-theme="dark"] .admin-theme-label-light {
    display: none;
}

[data-theme="dark"] .admin-theme-icon-dark,
[data-theme="dark"] .admin-theme-label-dark {
    display: inline-flex;
}

[data-theme="dark"] .admin-sidebar-theme-toggle {
    color: #eaf2ff;
    background: rgba(110, 168, 255, .16);
    border-color: rgba(110, 168, 255, .26);
}

.admin-menu {
    flex: 1 1 auto;
    min-height: 0;
    padding: .45rem .7rem 1rem .8rem;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
    touch-action: pan-y;
}

.admin-menu-list {
    display: block;
    padding: 0;
}

.admin-menu-section {
    padding: .9rem .65rem .35rem;
    color: rgba(226, 236, 250, .62);
    font-size: .66rem;
    font-weight: 600;
    line-height: 1;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.admin-menu-section:first-child {
    padding-top: .25rem;
}

.admin-menu-item,
.admin-menu-dropdown,
.admin-menu-subitem,
.c-sidebar-nav-item,
.c-sidebar-nav-dropdown {
    border-bottom: 0;
}

.c-sidebar .admin-menu .c-sidebar-nav-link,
.c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle {
    position: relative;
    display: flex;
    align-items: center;
    gap: .72rem;
    min-height: 42px;
    width: 100%;
    margin: .12rem 0;
    padding: .58rem .68rem;
    border-radius: .55rem;
    color: rgba(238, 245, 255, .82);
    font-size: .82rem;
    font-weight: 400;
    line-height: 1.22;
    text-decoration: none;
    border: 1px solid transparent;
    transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.c-sidebar .admin-menu .c-sidebar-nav-link > span:not(.admin-menu-badge),
.c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.c-sidebar .admin-menu .c-sidebar-nav-icon {
    flex: 0 0 1.35rem;
    width: 1.35rem;
    margin: 0 !important;
    color: rgba(226, 236, 250, .74) !important;
    font-size: .92rem;
    text-align: center;
}

.c-sidebar .admin-menu .c-sidebar-nav-link:hover,
.c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle:hover {
    color: #fff;
    background: rgba(255, 255, 255, .09);
    border-color: rgba(255, 255, 255, .12);
    transform: translateX(2px);
}

.c-sidebar .admin-menu .c-sidebar-nav-link:focus,
.c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle:focus,
.admin-sidebar-theme-toggle:focus {
    outline: none !important;
}

.c-sidebar .admin-menu .c-sidebar-nav-link:focus-visible,
.c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle:focus-visible {
    color: #fff;
    background: rgba(110, 168, 255, .16);
    border-color: rgba(125, 177, 255, .3);
    box-shadow: 0 0 0 2px rgba(125, 177, 255, .16);
}

.admin-sidebar-theme-toggle:focus-visible {
    box-shadow: 0 0 0 2px rgba(125, 177, 255, .2);
}

.c-sidebar .admin-menu .c-sidebar-nav-link.c-active,
.c-sidebar .admin-menu .admin-menu-dropdown.admin-open > .c-sidebar-nav-dropdown-toggle {
    color: #fff;
    background: rgba(110, 168, 255, .18);
    border-color: rgba(125, 177, 255, .26);
    box-shadow: inset 3px 0 0 var(--cp-accent);
}

.admin-menu-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 1.38rem;
    height: 1.38rem;
    margin-left: auto;
    padding: 0 .42rem;
    border-radius: 999px;
    color: #152033;
    background: #ffca2c;
    font-size: .7rem;
    font-weight: 700;
    line-height: 1;
    box-shadow: 0 6px 16px rgba(255, 202, 44, .22);
}

.admin-menu-dropdown > .c-sidebar-nav-dropdown-toggle::after {
    content: "";
    flex: 0 0 auto;
    width: .46rem;
    height: .46rem;
    margin-left: auto;
    border-right: 2px solid rgba(226, 236, 250, .58);
    border-bottom: 2px solid rgba(226, 236, 250, .58);
    transform: rotate(45deg);
    transition: transform .18s ease, border-color .18s ease;
}

.admin-menu-dropdown.admin-open > .c-sidebar-nav-dropdown-toggle::after {
    transform: rotate(-135deg);
}

.admin-menu-sublist {
    display: none;
    height: auto !important;
    max-height: none !important;
    margin: .28rem .15rem .55rem .25rem;
    padding: .18rem 0 .18rem .45rem;
    border-left: 1px solid rgba(226, 236, 250, .1);
    overflow: visible;
    list-style: none;
}

.admin-menu-dropdown.admin-open > .admin-menu-sublist,
.admin-menu-dropdown.admin-open > .c-sidebar-nav-dropdown-items {
    display: block;
}

.c-sidebar .admin-menu .admin-menu-subitem .c-sidebar-nav-link {
    min-height: 36px;
    width: auto;
    margin: .08rem .05rem;
    padding: .48rem .55rem;
    color: rgba(238, 245, 255, .74);
    font-size: .8rem;
    font-weight: 400;
    box-shadow: none;
}

.c-sidebar .admin-menu .admin-menu-subitem .c-sidebar-nav-icon {
    flex-basis: 1.15rem;
    width: 1.15rem;
    font-size: .78rem;
}

[data-theme="light"] .c-sidebar {
    background: #142747;
}

[data-theme="light"] .admin-sidebar-brand {
    background: rgba(255, 255, 255, .06);
}

[data-theme="dark"] .admin-menu-section {
    color: rgba(214, 227, 247, .58);
}

[data-theme="dark"] .c-sidebar .admin-menu .c-sidebar-nav-link.c-active,
[data-theme="dark"] .c-sidebar .admin-menu .admin-menu-dropdown.admin-open > .c-sidebar-nav-dropdown-toggle {
    background: rgba(65, 214, 189, .13);
    border-color: rgba(65, 214, 189, .22);
}

[data-theme="dark"] .admin-menu-badge {
    color: #0b1220;
    background: #ffd666;
}

.c-sidebar {
    background: var(--cp-sidebar);
    border-right: 1px solid var(--cp-sidebar-line);
    box-shadow: 18px 0 44px rgba(15, 23, 42, .2);
}

.admin-sidebar-brand {
    position: static;
    padding: 1rem .85rem .85rem;
    background: var(--cp-sidebar-soft);
    border-bottom: 1px solid var(--cp-sidebar-line);
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, .035);
}

.admin-brand-card {
    position: relative;
    padding: .82rem .75rem .68rem;
    border: 1px solid var(--cp-sidebar-line);
    border-radius: .95rem;
    background: var(--cp-sidebar-panel);
    box-shadow: 0 14px 30px rgba(2, 8, 23, .18);
}

.admin-brand-card::before {
    content: "";
    position: absolute;
    top: .55rem;
    left: 50%;
    width: 2.75rem;
    height: .18rem;
    border-radius: 999px;
    background: var(--cp-accent);
    transform: translateX(-50%);
}

.admin-brand-main {
    padding-top: .34rem;
    padding-bottom: 0;
}

.admin-brand-title {
    font-size: .98rem;
    font-weight: 700;
    color: var(--cp-sidebar-text);
}

.admin-brand-initials {
    display: none;
}

.admin-brand-user {
    color: var(--cp-sidebar-muted);
    font-size: .76rem;
    font-weight: 500;
    margin-bottom: .48rem;
}

.admin-sidebar-theme-toggle {
    width: auto;
    min-height: 28px;
    margin: 0 auto;
    padding: .34rem .62rem;
    color: var(--cp-sidebar-text);
    background: #21405f;
    border-color: var(--cp-sidebar-line);
    font-size: .72rem;
    font-weight: 600;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
}

.admin-sidebar-theme-toggle:hover {
    color: #fff;
    background: #285071;
    border-color: rgba(158, 216, 255, .34);
}

.admin-menu {
    padding: .72rem .75rem 1.15rem .8rem;
    scrollbar-color: rgba(158, 216, 255, .32) transparent;
    scrollbar-width: thin;
}

.admin-menu::-webkit-scrollbar {
    width: 7px;
}

.admin-menu::-webkit-scrollbar-track {
    background: transparent;
}

.admin-menu::-webkit-scrollbar-thumb {
    background: rgba(158, 216, 255, .3);
    border-radius: 999px;
}

.admin-menu-section {
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: .95rem .62rem .44rem;
    color: var(--cp-sidebar-muted);
    font-size: .63rem;
    font-weight: 600;
    letter-spacing: .08em;
}

.admin-menu-section::after {
    content: "";
    height: 1px;
    flex: 1 1 auto;
    background: var(--cp-sidebar-line);
}

.admin-menu-section:first-child {
    padding-top: .1rem;
}

.c-sidebar .admin-menu .c-sidebar-nav-link,
.c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle {
    min-height: 41px;
    gap: .7rem;
    margin: .11rem 0;
    padding: .52rem .62rem;
    border-radius: .78rem;
    color: rgba(234, 243, 255, .82);
    font-size: .82rem;
    font-weight: 400;
    border-color: transparent;
}

.c-sidebar .admin-menu .c-sidebar-nav-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 1.72rem;
    width: 1.72rem;
    height: 1.72rem;
    border-radius: .58rem;
    color: var(--cp-sidebar-icon) !important;
    background: rgba(158, 216, 255, .095);
    font-size: .83rem;
    box-shadow: inset 0 0 0 1px rgba(158, 216, 255, .08);
}

.c-sidebar .admin-menu .c-sidebar-nav-link:hover,
.c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle:hover {
    color: #fff;
    background: var(--cp-sidebar-hover);
    border-color: rgba(158, 216, 255, .18);
    transform: translateX(2px);
}

.c-sidebar .admin-menu .c-sidebar-nav-link:hover .c-sidebar-nav-icon,
.c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle:hover .c-sidebar-nav-icon {
    color: #fff !important;
    background: #245a78;
}

.c-sidebar .admin-menu .c-sidebar-nav-link.c-active,
.c-sidebar .admin-menu .admin-menu-dropdown.admin-open > .c-sidebar-nav-dropdown-toggle {
    color: #fff;
    font-weight: 500;
    background: var(--cp-sidebar-active);
    border-color: rgba(65, 214, 189, .36);
    box-shadow: inset 3px 0 0 var(--cp-accent), 0 10px 24px rgba(2, 8, 23, .16);
}

.c-sidebar .admin-menu .c-sidebar-nav-link.c-active .c-sidebar-nav-icon,
.c-sidebar .admin-menu .admin-menu-dropdown.admin-open > .c-sidebar-nav-dropdown-toggle .c-sidebar-nav-icon {
    color: #06251f !important;
    background: var(--cp-accent);
}

.c-sidebar .admin-menu .admin-operation-deposits {
    --admin-operation-color: #3ee0ad;
    --admin-operation-soft: rgba(62, 224, 173, .13);
}

.c-sidebar .admin-menu .admin-operation-withdraws {
    --admin-operation-color: #7cb7ff;
    --admin-operation-soft: rgba(124, 183, 255, .13);
}

.c-sidebar .admin-menu .admin-operation-pool {
    --admin-operation-color: #a78bfa;
    --admin-operation-soft: rgba(167, 139, 250, .13);
}

.c-sidebar .admin-menu .admin-operation-bank-accounts {
    --admin-operation-color: #f7c948;
    --admin-operation-soft: rgba(247, 201, 72, .14);
}

.c-sidebar .admin-menu .admin-operation-groups {
    --admin-operation-color: #fb923c;
    --admin-operation-soft: rgba(251, 146, 60, .14);
}

.c-sidebar .admin-menu .admin-operation-group-limits {
    --admin-operation-color: #38d4e8;
    --admin-operation-soft: rgba(56, 212, 232, .13);
}

.c-sidebar .admin-menu .admin-operation-deliveries {
    --admin-operation-color: #fda4af;
    --admin-operation-soft: rgba(253, 164, 175, .13);
}

.c-sidebar .admin-menu .admin-operation-item .c-sidebar-nav-icon {
    color: var(--admin-operation-color) !important;
    background: var(--admin-operation-soft);
}

.c-sidebar .admin-menu .admin-operation-item .c-sidebar-nav-link:hover .c-sidebar-nav-icon {
    color: #061621 !important;
    background: var(--admin-operation-color);
}

.c-sidebar .admin-menu .admin-operation-item .c-sidebar-nav-link.c-active .c-sidebar-nav-icon {
    color: #061621 !important;
    background: var(--admin-operation-color);
}

.admin-menu-badge {
    min-width: 1.32rem;
    height: 1.32rem;
    padding: 0 .4rem;
    color: #172033;
    background: #f7c948;
    font-size: .68rem;
    font-weight: 700;
    box-shadow: 0 7px 18px rgba(247, 201, 72, .24);
}

.admin-menu-dropdown > .c-sidebar-nav-dropdown-toggle::after {
    width: .42rem;
    height: .42rem;
    border-color: rgba(234, 243, 255, .55);
}

.admin-menu-sublist {
    margin: .34rem .1rem .72rem .83rem;
    padding: .16rem 0 .16rem .62rem;
    border-left-color: var(--cp-sidebar-line);
}

.c-sidebar .admin-menu .admin-menu-subitem .c-sidebar-nav-link {
    min-height: 34px;
    margin: .06rem 0;
    padding: .42rem .48rem;
    border-radius: .62rem;
    color: rgba(234, 243, 255, .72);
    font-size: .78rem;
    font-weight: 400;
}

.c-sidebar .admin-menu .admin-menu-subitem .c-sidebar-nav-icon {
    flex-basis: 1.38rem;
    width: 1.38rem;
    height: 1.38rem;
    border-radius: .45rem;
    background: rgba(158, 216, 255, .075);
    font-size: .72rem;
}

.c-sidebar .admin-menu .admin-menu-subitem .c-sidebar-nav-link.c-active {
    font-weight: 500;
    background: #1e4664;
    border-color: rgba(158, 216, 255, .24);
    box-shadow: inset 2px 0 0 var(--cp-sidebar-icon);
}

[data-theme="light"] .c-sidebar {
    background: var(--cp-sidebar);
}

[data-theme="light"] .admin-sidebar-brand {
    background: var(--cp-sidebar-soft);
}

[data-theme="light"] .admin-brand-card {
    background: var(--cp-sidebar-panel);
}

[data-theme="dark"] .c-sidebar {
    background: var(--cp-sidebar);
    border-right-color: var(--cp-sidebar-line);
    box-shadow: 18px 0 48px rgba(0, 0, 0, .34);
}

[data-theme="dark"] .admin-sidebar-brand {
    background: var(--cp-sidebar-soft);
}

[data-theme="dark"] .admin-brand-card {
    background: var(--cp-sidebar-panel);
    border-color: rgba(65, 214, 189, .12);
}

[data-theme="dark"] .admin-sidebar-theme-toggle {
    background: #142641;
    border-color: rgba(65, 214, 189, .18);
}

[data-theme="dark"] .admin-sidebar-theme-toggle:hover {
    background: #19314f;
}

[data-theme="dark"] .c-sidebar .admin-menu .c-sidebar-nav-link.c-active,
[data-theme="dark"] .c-sidebar .admin-menu .admin-menu-dropdown.admin-open > .c-sidebar-nav-dropdown-toggle {
    background: var(--cp-sidebar-active);
    border-color: rgba(65, 214, 189, .3);
}

.admin-sidebar-collapse-toggle {
    display: none;
}

.admin-collapse-icon-collapsed {
    display: none;
}

@media (min-width: 992px) {
    .c-sidebar,
    .c-wrapper,
    .admin-sidebar-collapse-toggle,
    .admin-sidebar-brand,
    .admin-brand-card,
    .admin-menu,
    .c-sidebar .admin-menu .c-sidebar-nav-link,
    .c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle {
        transition: width .2s ease, margin-left .2s ease, left .2s ease, padding .2s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease, opacity .18s ease;
    }

    .admin-sidebar-collapse-toggle {
        position: fixed;
        top: 2.85rem;
        left: calc(var(--admin-sidebar-width) - 15px);
        z-index: 1050;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 30px;
        height: 30px;
        padding: 0;
        color: var(--cp-sidebar-text);
        background: var(--cp-sidebar-panel);
        border: 1px solid rgba(158, 216, 255, .28);
        border-radius: 999px;
        box-shadow: 0 14px 28px rgba(2, 8, 23, .24);
    }

    .admin-sidebar-collapse-toggle:hover,
    .admin-sidebar-collapse-toggle:focus-visible {
        color: #061621;
        background: var(--cp-accent);
        border-color: var(--cp-accent);
        outline: none;
    }

    body.admin-sidebar-collapsed .admin-sidebar-collapse-toggle {
        left: calc(var(--admin-sidebar-collapsed-width) - 15px);
    }

    html.admin-sidebar-collapsed-preload .admin-sidebar-collapse-toggle {
        left: calc(var(--admin-sidebar-collapsed-width) - 15px);
    }

    html.admin-sidebar-collapsed-preload .admin-collapse-icon-expanded,
    body.admin-sidebar-collapsed .admin-collapse-icon-expanded {
        display: none;
    }

    html.admin-sidebar-collapsed-preload .admin-collapse-icon-collapsed,
    body.admin-sidebar-collapsed .admin-collapse-icon-collapsed {
        display: inline-block;
    }

    html.admin-sidebar-collapsed-preload #sidebar,
    body.admin-sidebar-collapsed #sidebar {
        width: var(--admin-sidebar-collapsed-width) !important;
        overflow: hidden;
    }

    html.admin-sidebar-collapsed-preload .c-wrapper,
    body.admin-sidebar-collapsed .c-wrapper {
        margin-left: var(--admin-sidebar-collapsed-width) !important;
    }

    html.admin-sidebar-collapsed-preload .admin-sidebar-brand,
    body.admin-sidebar-collapsed .admin-sidebar-brand {
        min-height: auto;
        padding: .82rem .5rem .6rem;
        overflow: visible;
    }

    html.admin-sidebar-collapsed-preload .admin-brand-card,
    body.admin-sidebar-collapsed .admin-brand-card {
        display: flex;
        justify-content: center;
        padding: .64rem .34rem .58rem;
        border-radius: 1rem;
    }

    html.admin-sidebar-collapsed-preload .admin-brand-card::before,
    body.admin-sidebar-collapsed .admin-brand-card::before {
        top: .42rem;
        width: 1.75rem;
        height: .16rem;
    }

    html.admin-sidebar-collapsed-preload .admin-brand-main,
    html.admin-sidebar-collapsed-preload .admin-brand-copy,
    body.admin-sidebar-collapsed .admin-brand-main,
    body.admin-sidebar-collapsed .admin-brand-copy {
        width: 100%;
    }

    html.admin-sidebar-collapsed-preload .admin-brand-title,
    body.admin-sidebar-collapsed .admin-brand-title {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2.35rem;
        height: 2.35rem;
        margin: .1rem auto .38rem;
        background: rgba(65, 214, 189, .12);
        border: 1px solid rgba(65, 214, 189, .26);
        border-radius: .86rem;
    }

    html.admin-sidebar-collapsed-preload .admin-brand-initials,
    body.admin-sidebar-collapsed .admin-brand-initials {
        display: inline-flex;
        color: var(--cp-sidebar-text);
        font-size: .82rem;
        font-weight: 700;
        letter-spacing: .03em;
    }

    html.admin-sidebar-collapsed-preload .admin-brand-title-text,
    body.admin-sidebar-collapsed .admin-brand-title-text {
        display: none;
    }

    html.admin-sidebar-collapsed-preload .admin-brand-user,
    body.admin-sidebar-collapsed .admin-brand-user {
        display: none;
    }

    html.admin-sidebar-collapsed-preload .admin-brand-user span,
    html.admin-sidebar-collapsed-preload .admin-sidebar-theme-toggle span,
    body.admin-sidebar-collapsed .admin-brand-user span,
    body.admin-sidebar-collapsed .admin-sidebar-theme-toggle span {
        display: none;
    }

    html.admin-sidebar-collapsed-preload .admin-sidebar-theme-toggle,
    body.admin-sidebar-collapsed .admin-sidebar-theme-toggle {
        width: 2.28rem;
        min-height: 1.78rem;
        margin: 0 auto;
        padding: 0;
        border-radius: 999px;
    }

    html.admin-sidebar-collapsed-preload .admin-sidebar-theme-toggle i,
    body.admin-sidebar-collapsed .admin-sidebar-theme-toggle i {
        margin: 0;
    }

    html.admin-sidebar-collapsed-preload .admin-menu,
    body.admin-sidebar-collapsed .admin-menu {
        padding: .54rem .42rem 1rem;
        overflow-y: auto;
        overflow-x: hidden;
        scrollbar-color: rgba(158, 216, 255, .42) transparent;
        scrollbar-width: thin;
    }

    html.admin-sidebar-collapsed-preload .admin-menu::-webkit-scrollbar,
    body.admin-sidebar-collapsed .admin-menu::-webkit-scrollbar {
        width: 5px;
    }

    html.admin-sidebar-collapsed-preload .admin-menu::-webkit-scrollbar-track,
    body.admin-sidebar-collapsed .admin-menu::-webkit-scrollbar-track {
        background: transparent;
    }

    html.admin-sidebar-collapsed-preload .admin-menu::-webkit-scrollbar-thumb,
    body.admin-sidebar-collapsed .admin-menu::-webkit-scrollbar-thumb {
        background: rgba(158, 216, 255, .36);
        border-radius: 999px;
    }

    html.admin-sidebar-collapsed-preload .admin-menu::-webkit-scrollbar-thumb:hover,
    body.admin-sidebar-collapsed .admin-menu::-webkit-scrollbar-thumb:hover {
        background: rgba(65, 214, 189, .52);
    }

    html.admin-sidebar-collapsed-preload .admin-menu-section,
    body.admin-sidebar-collapsed .admin-menu-section {
        justify-content: center;
        padding: .78rem 0 .32rem;
        gap: 0;
    }

    html.admin-sidebar-collapsed-preload .admin-menu-section:first-child,
    body.admin-sidebar-collapsed .admin-menu-section:first-child {
        padding-top: .22rem;
    }

    html.admin-sidebar-collapsed-preload .admin-menu-section span,
    body.admin-sidebar-collapsed .admin-menu-section span {
        display: block;
        width: 1.6rem;
        height: 1px;
        overflow: hidden;
        color: transparent;
        font-size: 0;
        background: var(--cp-sidebar-line);
    }

    html.admin-sidebar-collapsed-preload .admin-menu-section::after,
    body.admin-sidebar-collapsed .admin-menu-section::after {
        display: none;
    }

    html.admin-sidebar-collapsed-preload .c-sidebar .admin-menu .c-sidebar-nav-link,
    html.admin-sidebar-collapsed-preload .c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle,
    body.admin-sidebar-collapsed .c-sidebar .admin-menu .c-sidebar-nav-link,
    body.admin-sidebar-collapsed .c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle {
        justify-content: center;
        width: 2.78rem;
        min-height: 2.78rem;
        margin: .14rem auto;
        padding: 0;
        gap: 0;
        border-radius: .96rem;
        transform: none;
    }

    html.admin-sidebar-collapsed-preload .c-sidebar .admin-menu .c-sidebar-nav-link:hover,
    html.admin-sidebar-collapsed-preload .c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle:hover,
    body.admin-sidebar-collapsed .c-sidebar .admin-menu .c-sidebar-nav-link:hover,
    body.admin-sidebar-collapsed .c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle:hover {
        transform: none;
    }

    html.admin-sidebar-collapsed-preload .c-sidebar .admin-menu .c-sidebar-nav-link > span:not(.admin-menu-badge),
    html.admin-sidebar-collapsed-preload .c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle > span,
    body.admin-sidebar-collapsed .c-sidebar .admin-menu .c-sidebar-nav-link > span:not(.admin-menu-badge),
    body.admin-sidebar-collapsed .c-sidebar .admin-menu .c-sidebar-nav-dropdown-toggle > span {
        display: none;
    }

    html.admin-sidebar-collapsed-preload .c-sidebar .admin-menu .c-sidebar-nav-icon,
    body.admin-sidebar-collapsed .c-sidebar .admin-menu .c-sidebar-nav-icon {
        flex-basis: 2rem;
        width: 2rem;
        height: 2rem;
        margin: 0 !important;
        border-radius: .72rem;
    }

    html.admin-sidebar-collapsed-preload .admin-menu-badge,
    body.admin-sidebar-collapsed .admin-menu-badge {
        position: absolute;
        top: -.18rem;
        right: -.22rem;
        min-width: 1.08rem;
        height: 1.08rem;
        padding: 0 .26rem;
        font-size: .58rem;
        box-shadow: 0 8px 18px rgba(247, 201, 72, .22);
    }

    html.admin-sidebar-collapsed-preload .admin-menu-dropdown > .c-sidebar-nav-dropdown-toggle::after,
    body.admin-sidebar-collapsed .admin-menu-dropdown > .c-sidebar-nav-dropdown-toggle::after {
        display: none;
    }

    html.admin-sidebar-collapsed-preload .admin-menu-sublist,
    html.admin-sidebar-collapsed-preload .c-sidebar-nav-dropdown-items,
    body.admin-sidebar-collapsed .admin-menu-sublist,
    body.admin-sidebar-collapsed .c-sidebar-nav-dropdown-items {
        display: none !important;
    }

    body.admin-sidebar-collapsed .admin-menu-dropdown.admin-flyout-open > .admin-menu-sublist,
    body.admin-sidebar-collapsed .admin-menu-dropdown.admin-flyout-open > .c-sidebar-nav-dropdown-items {
        position: fixed;
        top: var(--admin-menu-flyout-top, 1rem);
        left: calc(var(--admin-sidebar-collapsed-width) + .72rem);
        z-index: 1065;
        display: block !important;
        width: min(18rem, calc(100vw - var(--admin-sidebar-collapsed-width) - 1.5rem));
        max-height: min(28rem, calc(100vh - 2rem));
        margin: 0;
        padding: 2.7rem .55rem .62rem;
        overflow-y: auto;
        overflow-x: hidden;
        list-style: none;
        background: var(--cp-sidebar-panel);
        border: 1px solid rgba(158, 216, 255, .2);
        border-radius: .95rem;
        box-shadow: 0 24px 50px rgba(2, 8, 23, .38);
        scrollbar-color: rgba(158, 216, 255, .38) transparent;
        scrollbar-width: thin;
    }

    body.admin-sidebar-collapsed .admin-menu-dropdown.admin-flyout-open > .admin-menu-sublist::before,
    body.admin-sidebar-collapsed .admin-menu-dropdown.admin-flyout-open > .c-sidebar-nav-dropdown-items::before {
        content: attr(data-flyout-title);
        position: absolute;
        top: .68rem;
        left: .8rem;
        right: .8rem;
        padding-bottom: .58rem;
        color: var(--cp-sidebar-text);
        border-bottom: 1px solid var(--cp-sidebar-line);
        font-size: .78rem;
        font-weight: 700;
        line-height: 1.1;
    }

    body.admin-sidebar-collapsed .admin-menu-dropdown.admin-flyout-open > .admin-menu-sublist::-webkit-scrollbar,
    body.admin-sidebar-collapsed .admin-menu-dropdown.admin-flyout-open > .c-sidebar-nav-dropdown-items::-webkit-scrollbar {
        width: 6px;
    }

    body.admin-sidebar-collapsed .admin-menu-dropdown.admin-flyout-open > .admin-menu-sublist::-webkit-scrollbar-thumb,
    body.admin-sidebar-collapsed .admin-menu-dropdown.admin-flyout-open > .c-sidebar-nav-dropdown-items::-webkit-scrollbar-thumb {
        background: rgba(158, 216, 255, .34);
        border-radius: 999px;
    }

    body.admin-sidebar-collapsed .admin-menu-dropdown.admin-flyout-open .admin-menu-subitem .c-sidebar-nav-link {
        justify-content: flex-start;
        width: 100%;
        min-height: 36px;
        margin: .08rem 0;
        padding: .42rem .48rem;
        gap: .52rem;
        border-radius: .62rem;
    }

    body.admin-sidebar-collapsed .admin-menu-dropdown.admin-flyout-open .admin-menu-subitem .c-sidebar-nav-link > span:not(.admin-menu-badge) {
        display: inline-block;
    }

    body.admin-sidebar-collapsed .admin-menu-dropdown.admin-flyout-open .admin-menu-subitem .c-sidebar-nav-icon {
        flex: 0 0 1.38rem;
        width: 1.38rem;
        height: 1.38rem;
        font-size: .72rem;
    }
}

@media (max-width: 991.98px) {
    .admin-sidebar-collapse-toggle {
        display: none !important;
    }

    body.admin-sidebar-collapsed .c-wrapper {
        margin-left: 0 !important;
    }
}

.is-fancybox-content .admin-sidebar-collapse-toggle {
    display: none !important;
}

.tooltip.admin-sidebar-tooltip .tooltip-inner,
body.admin-sidebar-collapsed .tooltip .tooltip-inner {
    padding: .42rem .62rem;
    color: var(--cp-sidebar-text);
    background: #0e1b2e;
    border: 1px solid rgba(158, 216, 255, .22);
    border-radius: .58rem;
    box-shadow: 0 14px 32px rgba(2, 8, 23, .28);
    font-size: .76rem;
    font-weight: 500;
}

[data-theme="light"] body.admin-sidebar-collapsed .tooltip .tooltip-inner {
    background: #12213f;
}

.c-sidebar .c-sidebar-nav-link,
.c-sidebar .c-sidebar-nav-dropdown-toggle {
    padding-left: 1rem;
    padding-right: 1rem;
}

.c-sidebar-brand .c-sidebar-brand-full:hover {
    color: inherit;
}

.custom-select.form-control-sm {
    padding: 0.25rem 1.5rem;
}

table.dataTable.compact thead th, table.dataTable.compact thead td {
    padding: .58rem .6rem;
}

table.datatable thead th, table.datatable thead td {
    padding: .58rem .6rem;
    background: var(--cp-table-head);
    color: white;
    border-color: #243755;
    font-size: .76rem;
    font-weight: 650;
    letter-spacing: 0;
    line-height: 1.25;
    white-space: nowrap;
}

[data-theme="dark"] table.datatable thead th,
[data-theme="dark"] table.datatable thead td {
    color: #f8fbff;
    background: #0c1524;
    border-color: #263852;
}

.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody {
    /*height: calc(100vh - 338px);*/
}

.dataTables_wrapper .dataTables_length {
    margin-top: .15rem;
}

table.datatable thead .sorting:after,
table.datatable thead .sorting_asc:after,
table.datatable thead .sorting_desc:after,
table.datatable thead .sorting:before,
table.datatable thead .sorting_asc:before,
table.datatable thead .sorting_desc:before {
   display: none;
}

.dataTables_wrapper .dataTables_processing {
    display: none !important;
}

@keyframes spinner {
    to {transform: rotate(360deg);}
}

.spinner:before {
    content: '';
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    margin-left: -10px;
    border-radius: 50%;
    border: 2px solid #ccc;
    border-top-color: #333;
    animation: spinner .6s linear infinite;
}

.admin-action-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .55rem;
    min-height: 38px;
    margin: 0 0 .72rem;
}

.admin-action-bar .btn {
    padding: .4rem .78rem;
    border-radius: .5rem;
    font-size: .82rem;
    font-weight: 500;
    line-height: 1.2;
    min-height: 34px;
}

.admin-action-bar > .d-flex {
    gap: .55rem;
}

.admin-action-bar .btn {
    margin: 0 !important;
}

.admin-action-btn {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    justify-content: center;
    min-height: 34px;
    padding: .4rem .78rem !important;
    border-radius: .5rem !important;
    font-size: .82rem;
    font-weight: 500;
    line-height: 1.2;
    white-space: nowrap;
    color: #24324a !important;
    background: #fff !important;
    border: 1px solid #cfd9e8 !important;
    box-shadow: 0 6px 16px rgba(18, 33, 63, .06) !important;
}

.admin-action-btn i {
    font-size: .85rem;
}

.admin-action-btn-create:not(:has(i))::before {
    content: "\f055";
    font-family: "Font Awesome 5 Free";
    font-size: .82rem;
    font-weight: 900;
    color: #0f9f6e;
}

.admin-action-btn-create .fa-plus::before {
    content: "\f055";
}

.admin-action-btn-confirmed:not(:has(i))::before {
    content: "\f058";
    font-family: "Font Awesome 5 Free";
    font-size: .82rem;
    font-weight: 900;
    color: #2656d9;
}

.admin-action-btn-limit i {
    color: #0f9f6e;
}

.admin-action-btn:hover {
    color: #163a9d !important;
    background: #f7faff !important;
    border-color: #9fb6dc !important;
    box-shadow: 0 8px 18px rgba(18, 33, 63, .1) !important;
}

.admin-action-btn-create i {
    color: #0f9f6e;
}

.admin-action-btn-confirmed i {
    color: #2656d9;
}

.admin-table-page > .admin-action-btn,
.admin-table-page > form > .admin-action-btn {
    margin-bottom: .72rem;
}

.admin-table-page > .admin-action-bar + .admin-filter-panel,
.admin-table-page > .admin-action-bar + .table-responsive,
.admin-table-page > .admin-action-bar + .alert,
.admin-table-page > .admin-action-bar + .admin-page-note,
.admin-table-page > .admin-action-btn + .admin-filter-panel,
.admin-table-page > .admin-action-btn + .table-responsive {
    margin-top: .15rem;
}

.admin-page-note {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    margin: 0 0 .72rem;
    padding: .68rem .8rem;
    border: 1px solid rgba(38, 86, 217, .14);
    border-radius: .7rem;
    background: #f8fbff;
    color: #344054;
    font-size: .82rem;
    line-height: 1.35;
}

.admin-page-note i {
    flex: 0 0 auto;
    margin-top: .08rem;
    color: #2656d9;
    font-size: .92rem;
}

.admin-page-note strong {
    display: block;
    margin-bottom: .08rem;
    color: #17233a;
    font-size: .84rem;
    font-weight: 650;
}

.admin-page-note span {
    display: block;
    color: #667085;
}

.admin-page-note-info {
    border-color: rgba(14, 165, 233, .24);
    background: #f0f9ff;
}

.admin-status-legend {
    display: flex;
    align-items: center;
    gap: .7rem;
    flex-wrap: wrap;
    margin: .72rem 0 .62rem;
    padding: .55rem .7rem;
    border: 1px solid rgba(148, 163, 184, .24);
    border-radius: .65rem;
    background: #f8fafc;
    color: #344054;
    font-size: .8rem;
}

.admin-status-legend strong {
    color: #17233a;
    font-size: .78rem;
    font-weight: 650;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.admin-status-legend-items {
    display: flex;
    align-items: center;
    gap: .55rem .8rem;
    flex-wrap: wrap;
}

.admin-status-legend-item {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    white-space: nowrap;
}

.admin-status-dot {
    display: inline-block;
    width: .55rem;
    height: .55rem;
    border-radius: 999px;
    box-shadow: 0 0 0 3px rgba(148, 163, 184, .12);
}

.admin-status-dot-warning {
    background: #f59e0b;
}

.admin-status-dot-danger {
    background: #ef4444;
}

.admin-status-dot-success {
    background: #22c55e;
}

.admin-status-dot-primary {
    background: #2f80ed;
}

[data-theme="dark"] .admin-action-btn {
    color: #e7eefb !important;
    background: #111a2b !important;
    border-color: #34445f !important;
    box-shadow: none !important;
}

[data-theme="dark"] .admin-action-btn:hover {
    color: #fff !important;
    background: #17243a !important;
    border-color: #5e769b !important;
}

[data-theme="dark"] .admin-page-note {
    color: #c8d7ec;
    border-color: #2d4365;
    background: #111a2b;
}

[data-theme="dark"] .admin-page-note strong {
    color: #f2f6ff;
}

[data-theme="dark"] .admin-page-note span {
    color: #a9b8cf;
}

[data-theme="dark"] .admin-page-note-info {
    border-color: #24587a;
    background: #10233a;
}

[data-theme="dark"] .admin-status-legend {
    color: #c8d7ec;
    border-color: #34445f;
    background: #111a2b;
}

[data-theme="dark"] .admin-status-legend strong {
    color: #f2f6ff;
}

.admin-filter-panel {
    overflow: hidden;
    margin-bottom: .8rem;
    border-color: rgba(38, 86, 217, .14);
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(18, 33, 63, .06);
}

.admin-filter-panel > .card-header {
    min-height: 40px;
    display: flex;
    align-items: center;
    gap: .45rem;
    padding: .6rem 1rem;
    background: #f7fbff;
    font-size: .9rem;
}

.admin-filter-panel > .card-header i {
    color: #2656d9;
    font-size: .82rem;
}

[data-theme="dark"] .admin-filter-panel > .card-header i {
    color: #6ea8ff;
}

.admin-table-page {
    padding-bottom: .7rem;
}

.admin-table-page .dataTables_wrapper {
    margin-bottom: 0;
}

.admin-table-page .dataTables_wrapper > .row:last-child {
    align-items: center;
    margin-top: .2rem;
    margin-bottom: 0;
}

.admin-table-page .dataTables_info {
    margin-bottom: 0;
}

.admin-table-page .dataTables_paginate {
    margin-bottom: 0;
}

.datatable-deferred-count-control {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    min-height: 32px;
}

.datatable-deferred-count-button {
    border-color: var(--cp-border);
    color: var(--cp-muted);
    background: var(--cp-surface);
    white-space: nowrap;
}

.datatable-deferred-count-button:hover,
.datatable-deferred-count-button:focus {
    color: #ffffff;
    background: var(--cp-primary);
    border-color: var(--cp-primary);
    box-shadow: none;
}

[data-theme="dark"] .datatable-deferred-count-button {
    color: #dce8fb;
    background: #111a2b;
    border-color: #34445f;
}

[data-theme="dark"] .datatable-deferred-count-button:hover,
[data-theme="dark"] .datatable-deferred-count-button:focus {
    color: #ffffff;
    background: #17243a;
    border-color: #5e769b;
}

@media (max-width: 767.98px) {
    .datatable-deferred-count-control {
        justify-content: center;
        position: sticky;
        left: 0;
        width: calc(100vw - 2rem);
        max-width: 100%;
        padding-right: .25rem;
        padding-left: .25rem;
    }

    .datatable-deferred-count-button {
        max-width: 100%;
    }
}

[data-theme="dark"] .admin-filter-panel {
    background: #172033;
    border-color: rgba(110, 168, 255, .18);
    box-shadow: 0 16px 36px rgba(0, 0, 0, .24);
}

[data-theme="dark"] .admin-filter-panel > .card-header {
    background: #1a263b;
}

#filter form.filter-form {
    padding: .85rem 1rem 1rem !important;
}

#filter form .form-group {
    margin-bottom: .6rem;
}

#filter label {
    margin-bottom: .28rem;
    color: var(--cp-text);
    font-size: .82rem;
    font-weight: 600;
}

#filter .form-control,
#filter .select2-container--classic .select2-selection--single {
    min-height: 34px;
}

.filter-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: .5rem;
    margin-top: .45rem;
}

.filter-actions .btn {
    width: auto;
    min-width: 124px;
    padding: .43rem 1rem;
    border-radius: .45rem;
    font-size: .84rem;
    line-height: 1.2;
}

.table-toggle-bar {
    width: fit-content;
    max-width: 100%;
    flex-wrap: wrap;
    align-items: center;
    gap: .55rem !important;
    margin: .55rem 0 .6rem;
    padding: .35rem .45rem;
    border: 1px solid #dbe5f1;
    border-radius: 999px;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 8px 22px rgba(18, 33, 63, .055);
}

.table-toggle-icon {
    width: 26px;
    height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    color: #2656d9;
    background: #eef5ff;
    font-size: .78rem;
}

.table-toggle-bar .form-group {
    margin-bottom: 0;
}

.table-toggle-bar .toggle {
    min-height: 34px;
    overflow: hidden;
    border-radius: 999px !important;
    border: 1px solid #dce6f2 !important;
    box-shadow: none !important;
    background: #f8fbff !important;
}

.table-toggle-bar .toggle .btn {
    min-height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .34rem;
    padding: .42rem .82rem;
    font-size: .79rem;
    line-height: 1.1;
    font-weight: 500;
    border: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

.table-toggle-bar .toggle-on::before,
.table-toggle-bar .toggle-off::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: .72rem;
    line-height: 1;
}

.table-toggle-status .toggle-on::before {
    content: "\f0ae";
}

.table-toggle-status .toggle-off::before {
    content: "\f0ca";
}

.table-toggle-refresh .toggle-on::before {
    content: "\f2f1";
}

.table-toggle-refresh .toggle-off::before {
    content: "\f28d";
}

.table-toggle-bar .toggle.btn-warning,
.table-toggle-bar .toggle .btn-warning {
    color: #5a4300 !important;
    background: #fff7dc !important;
}

.table-toggle-bar .toggle.btn-success,
.table-toggle-bar .toggle .btn-success {
    color: #0f5132 !important;
    background: #e8f7ef !important;
}

.table-toggle-bar .toggle.btn-secondary,
.table-toggle-bar .toggle .btn-secondary {
    color: #4b5563 !important;
    background: #eef2f7 !important;
}

.table-toggle-bar .toggle .toggle-handle {
    background: #fff !important;
    border: 1px solid rgba(151, 170, 196, .5) !important;
    border-radius: 999px !important;
    min-height: 32px;
}

[data-theme="dark"] .table-toggle-bar .toggle {
    border-color: #34445f !important;
    background: #111a2b !important;
    box-shadow: none !important;
}

[data-theme="dark"] .table-toggle-bar {
    border-color: #2d3d56;
    background: rgba(17, 26, 43, .86);
    box-shadow: none;
}

[data-theme="dark"] .table-toggle-icon {
    color: #9cc4ff;
    background: #182942;
}

[data-theme="dark"] .table-toggle-bar .toggle.btn-warning,
[data-theme="dark"] .table-toggle-bar .toggle .btn-warning {
    color: #ffe6a3 !important;
    background: #352a0f !important;
}

[data-theme="dark"] .table-toggle-bar .toggle.btn-success,
[data-theme="dark"] .table-toggle-bar .toggle .btn-success {
    color: #b8f3cf !important;
    background: #113321 !important;
}

[data-theme="dark"] .table-toggle-bar .toggle.btn-secondary,
[data-theme="dark"] .table-toggle-bar .toggle .btn-secondary {
    color: #d2dbe8 !important;
    background: #243044 !important;
}

[data-theme="dark"] .dataTables_wrapper .pagination .page-link {
    color: #dce8fb;
    background: #111a2b;
    border-color: #34445f;
    box-shadow: none;
}

[data-theme="dark"] .dataTables_wrapper .pagination .page-link:hover {
    color: #fff;
    background: #17243a;
    border-color: #5e769b;
}

[data-theme="dark"] .dataTables_wrapper .pagination .page-item.active .page-link {
    color: #fff;
    background: #3d7ee8;
    border-color: #3d7ee8;
}

[data-theme="dark"] .dataTables_wrapper .pagination .page-item.active > .page-link,
[data-theme="dark"] .dataTables_wrapper .pagination .active > .page-link {
    color: #fff !important;
    background: #3d7ee8 !important;
    border-color: #3d7ee8 !important;
}

[data-theme="dark"] .dataTables_wrapper .pagination .page-item.disabled .page-link {
    color: #7e8ca3;
    background: #0f1726;
    border-color: #2a3850;
}

.fancybox__content {
    padding: 0;
    max-width: calc(100vw - 1rem);
    max-height: calc(100vh - 1rem);
    border-radius: .85rem;
    box-shadow: 0 24px 56px rgba(15, 23, 42, .22);
}

.fancybox__backdrop {
    background: rgba(15, 23, 42, .56);
}

.fancybox__iframe {
    background: transparent !important;
    border: 0;
    border-radius: .85rem;
    color-scheme: light dark;
}

.fancybox__content:has(.fancybox__iframe) {
    background: transparent !important;
    overflow: hidden;
}

.fancybox__content[data-admin-fancybox-autosized="true"] {
    height: auto !important;
}

.fancybox__content[data-admin-fancybox-autosized="true"] > .fancybox__iframe {
    display: block;
}

.fancybox__content .is-fancybox-content,
.is-fancybox-content,
.is-fancybox-content .c-wrapper,
.is-fancybox-content .c-body,
.is-fancybox-content .c-main {
    min-height: 0 !important;
}

.is-fancybox-content {
    background: transparent !important;
    height: auto !important;
    overflow: auto !important;
}

html:has(body.is-fancybox-content) {
    background: transparent !important;
}

.is-fancybox-content .admin-mobile-topbar,
.is-fancybox-content #sidebar,
.is-fancybox-content .group-limit-floating-panel,
.is-fancybox-content .group-limit-floating-panel-minibar {
    display: none !important;
}

.is-fancybox-content .c-wrapper {
    margin-left: 0 !important;
}

.is-fancybox-content .c-main {
    padding: 0 !important;
}

.is-fancybox-content .c-body,
.is-fancybox-content .c-wrapper {
    background: transparent !important;
}

.is-fancybox-content .c-main > .card,
.is-fancybox-content .card {
    margin: 0 !important;
    border-radius: .85rem;
    box-shadow: none;
    overflow: hidden;
}

.is-fancybox-content .card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    min-height: 48px;
    padding: .8rem 1rem;
    background: #f8fbff;
}

.is-fancybox-content .admin-filter-panel > .card-header {
    justify-content: flex-start;
    gap: .45rem;
    min-height: 42px;
    padding: .62rem 1rem;
}

.is-fancybox-content .admin-filter-panel > .card-header span {
    margin-left: 0;
}

.is-fancybox-content .card-header h1,
.is-fancybox-content .card-header h2,
.is-fancybox-content .card-header h3,
.is-fancybox-content .card-header h4,
.is-fancybox-content .card-header h5 {
    margin: 0;
    color: #10203a;
    font-size: 1.05rem;
    font-weight: 700;
    letter-spacing: 0;
}

.is-fancybox-content .card-body {
    padding: 1rem;
}

.is-fancybox-content .admin-form-card,
.is-fancybox-content .admin-form-page,
.is-fancybox-content .admin-form-section {
    max-width: 100%;
}

.is-fancybox-content [data-fancybox-close].btn-secondary,
.is-fancybox-content .btn-secondary[href*="Fancybox.close"] {
    color: #45566f !important;
    background: #eef4fb !important;
    border-color: #d5e0ef !important;
    box-shadow: none;
}

[data-theme="dark"] html:has(body.is-fancybox-content),
[data-theme="dark"] body.is-fancybox-content,
[data-theme="dark"] .is-fancybox-content,
[data-theme="dark"] .is-fancybox-content .c-wrapper,
[data-theme="dark"] .is-fancybox-content .c-body,
[data-theme="dark"] .is-fancybox-content .c-main {
    background: transparent !important;
}

[data-theme="dark"] .is-fancybox-content .card {
    color: #edf4ff;
    background: #111a2b;
    border-color: #34445f;
}

[data-theme="dark"] .fancybox__backdrop {
    background: rgba(2, 6, 23, .74);
}

[data-theme="dark"] .fancybox__content {
    box-shadow: 0 26px 62px rgba(0, 0, 0, .48);
}

[data-theme="dark"] .is-fancybox-content .card-header {
    background: #172033;
}

[data-theme="dark"] .is-fancybox-content .card-header h1,
[data-theme="dark"] .is-fancybox-content .card-header h2,
[data-theme="dark"] .is-fancybox-content .card-header h3,
[data-theme="dark"] .is-fancybox-content .card-header h4,
[data-theme="dark"] .is-fancybox-content .card-header h5 {
    color: #f8fbff;
}

[data-theme="dark"] .is-fancybox-content [data-fancybox-close].btn-secondary,
[data-theme="dark"] .is-fancybox-content .btn-secondary[href*="Fancybox.close"] {
    color: #dce8f8 !important;
    background: #23324a !important;
    border-color: #3a4c67 !important;
}

.select2-container--open {
    z-index: 2055;
}

.modal .select2-container--open,
.fancybox__content .select2-container--open,
.modal-open .select2-container--open {
    z-index: 2065;
}

.select2-dropdown {
    border-color: var(--cp-border);
    box-shadow: 0 16px 34px rgba(18, 33, 63, .16);
}

[data-theme="dark"] .select2-dropdown {
    color: #edf4ff;
    background: #111a2b;
    border-color: #34445f;
}

[data-theme="dark"] .select2-container--default .select2-results__option[aria-selected=true],
[data-theme="dark"] .select2-container--classic .select2-results__option[aria-selected=true] {
    color: #f8fbff;
    background-color: #243653;
}

[data-theme="dark"] .select2-container--default .select2-results__option--highlighted[aria-selected],
[data-theme="dark"] .select2-container--classic .select2-results__option--highlighted[aria-selected] {
    color: #ffffff;
    background-color: #2f6fe4;
}

[data-theme="dark"] .select2-container--default .select2-search--dropdown .select2-search__field,
[data-theme="dark"] .select2-container--classic .select2-search--dropdown .select2-search__field {
    color: #edf4ff;
    background: #0d1626;
    border-color: #34445f;
}


.btn-primary,
.btn-success {
    color: #fff !important;
    background: var(--cp-primary) !important;
    background-image: none !important;
    border-color: var(--cp-primary) !important;
    box-shadow: 0 10px 22px rgba(38, 86, 217, .18);
}

.btn,
.btn:hover,
.btn:focus,
a,
a:hover,
a:focus,
.page-link,
.page-link:hover,
.page-link:focus {
    background-image: none !important;
}

.btn-primary:hover,
.btn-success:hover {
    filter: brightness(.96);
}

.btn-info {
    color: #fff !important;
    background-color: #0b91c9 !important;
    border-color: #0b91c9 !important;
}

table.datatable,
.admin-data-table {
    margin: 0 !important;
    font-size: .82rem;
}

table.datatable thead th,
table.datatable thead td,
.admin-data-table thead th,
.admin-data-table thead td {
    position: relative;
}

table.datatable tbody td,
table.datatable tbody th,
.admin-data-table tbody td,
.admin-data-table tbody th {
    padding: .44rem .55rem !important;
    line-height: 1.35;
    border-top: 1px solid rgba(151, 170, 196, .28);
}

table.datatable tbody tr:first-child td,
table.datatable tbody tr:first-child th,
.admin-data-table tbody tr:first-child td,
.admin-data-table tbody tr:first-child th {
    border-top: 0;
}

table.datatable tbody tr,
.admin-data-table tbody tr {
    transition: background-color .16s ease, box-shadow .16s ease;
}

table.datatable tbody tr:hover > *,
.admin-data-table tbody tr:hover > * {
    background-color: rgba(38, 86, 217, .035) !important;
    background-image: none !important;
}

.datatable-Withdraw .withdraw-copy-content {
    display: inline;
    white-space: normal;
    overflow-wrap: break-word;
}

.datatable-Withdraw .withdraw-copy-button {
    display: inline-grid;
    place-items: center;
    width: 20px;
    height: 20px;
    margin-left: .15rem;
    padding: 0;
    border: 0;
    border-radius: .25rem;
    background: transparent;
    color: var(--cp-muted);
    cursor: pointer;
    vertical-align: middle;
}

.datatable-Withdraw .withdraw-copy-button:hover,
.datatable-Withdraw .withdraw-copy-button:focus-visible {
    background: color-mix(in srgb, var(--cp-primary) 10%, transparent);
    color: var(--cp-primary);
}

.datatable-Withdraw .withdraw-copy-button.is-copied {
    color: #0f9f6e;
}

.datatable-Withdraw .withdraw-copy-button.is-error {
    color: #c0392b;
}

.datatable-Withdraw .withdraw-copy-button.is-copied i {
    animation: withdraw-copy-check .22s ease-out;
}

.datatable-Withdraw .withdraw-order-id {
    display: block;
    max-width: 8rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.withdraw-copy-fallback {
    position: fixed;
    left: -9999px;
    opacity: 0;
}

@keyframes withdraw-copy-check {
    from { transform: scale(.7); }
    to { transform: scale(1); }
}

@media (prefers-reduced-motion: reduce) {
    .datatable-Withdraw .withdraw-copy-button.is-copied i {
        animation: none;
    }
}

table.datatable tbody td:first-child,
.admin-data-table tbody td:first-child {
    min-width: 148px;
    white-space: normal;
}

table.datatable .text-muted,
.admin-data-table .text-muted {
    color: inherit !important;
}

table.datatable .btn,
.admin-data-table .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 25px;
    margin: 0;
    padding: .22rem .48rem;
    border: 0;
    border-radius: .38rem;
    font-size: .72rem;
    font-weight: 600;
    line-height: 1.1;
    box-shadow: none;
    white-space: nowrap;
}

table.datatable td:first-child .btn-group,
table.datatable td:first-child form,
table.datatable td:first-child > div,
.admin-data-table td:first-child .btn-group,
.admin-data-table td:first-child form,
.admin-data-table td:first-child > div {
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: .22rem;
    width: auto;
    max-width: 100%;
    vertical-align: top;
}

table.datatable td:first-child .btn-group > .btn,
table.datatable td:first-child .btn-group > a,
table.datatable td:first-child .btn-group > button,
table.datatable td:first-child .btn-group > form,
.admin-data-table td:first-child .btn-group > .btn,
.admin-data-table td:first-child .btn-group > a,
.admin-data-table td:first-child .btn-group > button,
.admin-data-table td:first-child .btn-group > form {
    flex: 0 0 auto;
}

table.datatable td:first-child .btn-group > form,
.admin-data-table td:first-child .btn-group > form {
    margin: 0 !important;
    display: inline-flex !important;
}

table.datatable td:first-child .btn-group > form .btn,
.admin-data-table td:first-child .btn-group > form .btn {
    border-radius: .38rem !important;
}

table.datatable td:first-child .btn-xs:not(.btn-info)::before,
table.datatable td:first-child .btn-sm:not(.btn-info)::before,
.admin-data-table td:first-child .btn-xs:not(.btn-info)::before,
.admin-data-table td:first-child .btn-sm:not(.btn-info)::before {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: .67rem;
    line-height: 1;
    margin-right: .24rem;
}

table.datatable td:first-child .btn-warning::before,
.admin-data-table td:first-child .btn-warning::before {
    content: "\f013";
}

table.datatable td:first-child .btn-primary::before,
table.datatable td:first-child .btn-success::before,
.admin-data-table td:first-child .btn-primary::before,
.admin-data-table td:first-child .btn-success::before {
    content: "\f00c";
}

table.datatable td:first-child .btn-withdraw-pool-take::before,
.admin-data-table td:first-child .btn-withdraw-pool-take::before {
    content: "\f4bd";
}

table.datatable td:first-child .btn-danger::before,
.admin-data-table td:first-child .btn-danger::before {
    content: "\f00d";
}

table.datatable td:first-child .btn-secondary::before,
table.datatable td:first-child .btn-default::before,
.admin-data-table td:first-child .btn-secondary::before,
.admin-data-table td:first-child .btn-default::before {
    content: "\f2f1";
}

table.datatable .btn-info,
.admin-data-table .btn-info {
    min-width: 24px;
    color: #fff !important;
    background: #0f97c7 !important;
}

.admin-row-actions {
    display: inline-flex;
    align-items: center;
    width: auto;
    max-width: 100%;
}

.admin-row-actions-desktop {
    display: inline-flex;
}

.admin-row-actions-mobile {
    display: none;
    position: relative;
}

.admin-row-actions--compact-menu .admin-row-actions-desktop {
    display: none !important;
}

.admin-row-actions--compact-menu .admin-row-actions-mobile {
    display: inline-flex;
}

.admin-row-actions-menu-toggle {
    gap: .32rem;
    min-width: 92px;
    font-weight: 600;
}

.admin-row-actions-menu-toggle i {
    font-size: .7rem;
}

.admin-row-actions-menu {
    min-width: 188px;
    padding: .35rem;
    border: 1px solid rgba(151, 170, 196, .45);
    border-radius: .65rem;
    box-shadow: 0 18px 36px rgba(18, 33, 63, .16);
}

body > .admin-row-actions-menu--portalled {
    max-height: min(360px, calc(100vh - 16px));
    overflow-y: auto;
    overscroll-behavior: contain;
}

.admin-row-actions-menu form {
    margin: 0;
}

.admin-row-actions-menu .dropdown-item {
    display: flex;
    align-items: center;
    gap: .42rem;
    width: 100%;
    padding: .45rem .55rem;
    border: 0;
    border-radius: .45rem;
    color: #263445;
    background: transparent;
    font-size: .76rem;
    font-weight: 500;
    line-height: 1.2;
    text-align: left;
    white-space: nowrap;
}

.admin-row-actions-menu .dropdown-item i {
    width: .9rem;
    flex: 0 0 .9rem;
    text-align: center;
}

.admin-row-actions-menu .dropdown-item:hover,
.admin-row-actions-menu .dropdown-item:focus {
    color: #163a9d;
    background: #edf4ff;
}

.admin-row-actions-menu-item--danger {
    color: #9f1239 !important;
}

.admin-row-actions-menu-item--success {
    color: #047857 !important;
}

[data-theme="dark"] .admin-row-actions-menu {
    background: #111a2b;
    border-color: #34445f;
    box-shadow: 0 18px 36px rgba(0, 0, 0, .34);
}

[data-theme="dark"] .admin-row-actions-menu .dropdown-item {
    color: #e7eefb;
}

[data-theme="dark"] .admin-row-actions-menu .dropdown-item:hover,
[data-theme="dark"] .admin-row-actions-menu .dropdown-item:focus {
    color: #fff;
    background: #17243a;
}

[data-theme="dark"] .admin-row-actions-menu-item--danger {
    color: #fecdd3 !important;
}

[data-theme="dark"] .admin-row-actions-menu-item--success {
    color: #9ff0c7 !important;
}

@media (max-width: 767.98px) {
    .admin-row-actions {
        min-width: 0;
    }

    .admin-row-actions-desktop {
        display: none !important;
    }

    .admin-row-actions-mobile {
        display: inline-flex;
    }
}

.withdraw-row-actions {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .22rem;
    min-width: 148px;
}

.withdraw-row-actions .btn {
    flex: 0 0 auto;
}

.withdraw-row-actions .dropdown-item {
    font-size: .72rem;
    font-weight: 600;
}

.withdraw-send-menu .withdraw-send-menu-item i {
    width: .85rem;
    text-align: center;
    margin-right: .16rem;
}

.withdraw-send-dropdown {
    position: static;
}

.withdraw-send-menu-toggle {
    color: #fff !important;
    background: #0f97c7 !important;
    border-color: #0b91c9 !important;
}

.withdraw-send-menu {
    min-width: 205px;
    padding: .35rem;
    border: 1px solid rgba(151, 170, 196, .45);
    border-radius: .65rem;
    box-shadow: 0 18px 36px rgba(18, 33, 63, .16);
}

/* This menu is portalled to body, so its typography cannot depend on a row ancestor. */
.withdraw-send-menu .dropdown-item {
    display: flex;
    align-items: center;
    gap: .42rem;
    padding: .45rem .55rem;
    border-radius: .45rem;
    color: #263445;
    font-size: .72rem;
    font-weight: 600;
    line-height: 1.2;
}

.withdraw-send-menu .dropdown-item:hover,
.withdraw-send-menu .dropdown-item:focus {
    color: #163a9d;
    background: #edf4ff;
}

[data-theme="dark"] .withdraw-send-menu-toggle {
    color: #fff !important;
    background: #1597c2 !important;
    border-color: #1597c2 !important;
}

[data-theme="dark"] .withdraw-send-menu {
    background: #111a2b;
    border-color: #34445f;
    box-shadow: 0 18px 36px rgba(0, 0, 0, .34);
}

[data-theme="dark"] .withdraw-send-menu .dropdown-item {
    color: #e7eefb;
}

[data-theme="dark"] .withdraw-send-menu .dropdown-item:hover,
[data-theme="dark"] .withdraw-send-menu .dropdown-item:focus {
    color: #fff;
    background: #17243a;
}

table.datatable .btn-warning,
.admin-data-table .btn-warning {
    color: #3b2a00 !important;
    background: #ffd24a !important;
}

table.datatable .btn-danger,
.admin-data-table .btn-danger {
    color: #fff !important;
    background: #d63d50 !important;
}

table.datatable .btn-primary,
table.datatable .btn-success,
.admin-data-table .btn-primary,
.admin-data-table .btn-success {
    color: #fff !important;
    background: #2656d9 !important;
}

table.datatable .badge,
.admin-data-table .badge {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: .17rem .46rem;
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 600;
    line-height: 1;
}

table.datatable .admin-empty-badge,
.admin-data-table .admin-empty-badge,
.badge.admin-empty-badge {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    min-height: 21px;
    padding: .18rem .52rem;
    color: #475467 !important;
    background: #eef2f7 !important;
    border: 1px solid #d6dfeb;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65);
}

.admin-empty-badge i {
    color: #667085;
    font-size: .66rem;
}

[data-theme="dark"] table.datatable .admin-empty-badge,
[data-theme="dark"] .admin-data-table .admin-empty-badge,
[data-theme="dark"] .badge.admin-empty-badge {
    color: #cbd7e6 !important;
    background: #172033 !important;
    border-color: #33445f;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
}

[data-theme="dark"] .admin-empty-badge i {
    color: #93a7c0;
}

.role-data-table td:nth-child(4) {
    min-width: 560px;
}

.group-data-table th:nth-child(5),
.group-data-table td:nth-child(5) {
    min-width: 300px !important;
}

.group-data-table th:nth-child(6),
.group-data-table td:nth-child(6) {
    min-width: 260px !important;
}

.group-data-table th:nth-child(7),
.group-data-table td:nth-child(7) {
    min-width: 560px !important;
}

.group-summary-panel {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .38rem;
    max-width: 100%;
}

.group-summary-item {
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .16rem .32rem;
    min-height: 30px;
    padding: .28rem .42rem;
    border: 1px solid #cfe0f4;
    border-radius: .55rem;
    background: #ffffff;
}

.group-detail-item,
.group-summary-parent {
    min-width: 0;
    padding: .42rem .5rem;
    border: 1px solid #dbe5f2;
    border-radius: .65rem;
    background: #f8fbff;
}

.group-summary-item > span,
.group-detail-item > span,
.group-summary-parent > span:not(.admin-entity-badge) {
    display: block;
    margin-bottom: .16rem;
    color: #667085;
    font-size: .68rem;
    font-weight: 500;
    line-height: 1.1;
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
}

.group-summary-item > span {
    margin: 0;
    color: #4d617c;
    font-size: .66rem;
}

.group-summary-item > strong,
.group-detail-item > strong {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .3rem;
    color: #10213f;
    font-size: .76rem;
    font-weight: 500;
    line-height: 1.2;
    min-width: 0;
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
}

.group-summary-item > strong {
    display: block;
    flex: 1 1 auto;
    color: #0f2f5f;
    font-size: .75rem;
    text-align: right;
}

.group-summary-item > strong > .group-commission-inline {
    display: block;
    max-width: 100%;
    margin: .16rem 0 0;
    font-size: .68rem;
}

.group-summary-parent {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .35rem;
}

.group-summary-parent > span:not(.admin-entity-badge) {
    margin: 0;
}

.group-detail-panel {
    border: 1px solid #dbe5f2;
    border-radius: .75rem;
    background: #ffffff;
    overflow: hidden;
}

.group-detail-panel summary {
    cursor: pointer;
    padding: .45rem .65rem;
    color: #155eef;
    font-size: .78rem;
    font-weight: 800;
    list-style-position: inside;
    user-select: none;
}

.group-detail-panel[open] summary {
    border-bottom: 1px solid #dbe5f2;
    background: #f8fbff;
}

.group-detail-body {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem;
    padding: .6rem;
}

.group-site-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(96px, 1fr));
    gap: .35rem;
    align-items: start;
    width: 100%;
    min-width: 540px;
}

.group-site-grid--empty {
    display: flex;
}

.group-site-grid__item,
.group-site-grid .admin-entity-badge {
    min-width: 0;
    max-width: 100%;
}

.group-site-grid .admin-entity-badge {
    width: 100%;
    margin: 0;
    justify-content: center;
    padding-right: .42rem;
    padding-left: .42rem;
}

.group-site-grid .admin-entity-badge > span {
    min-width: 0;
}

.bank-account-data-table th:nth-child(4),
.bank-account-data-table td:nth-child(4) {
    min-width: 310px !important;
}

.bank-account-data-table th:nth-child(5),
.bank-account-data-table td:nth-child(5) {
    min-width: 300px !important;
}

.bank-account-data-table th:nth-child(6),
.bank-account-data-table td:nth-child(6) {
    min-width: 330px !important;
}

.bank-account-data-table th:nth-child(8),
.bank-account-data-table td:nth-child(8) {
    min-width: 560px !important;
}

.user-data-table th:nth-child(7),
.user-data-table td:nth-child(7) {
    min-width: 560px !important;
}

.site-data-table th:nth-child(3),
.site-data-table td:nth-child(3) {
    min-width: 300px !important;
}

.site-data-table th:nth-child(4),
.site-data-table td:nth-child(4) {
    min-width: 180px !important;
}

.site-data-table th:nth-child(5),
.site-data-table td:nth-child(5),
.site-data-table th:nth-child(6),
.site-data-table td:nth-child(6) {
    min-width: 280px !important;
}

.site-data-table th:nth-child(7),
.site-data-table td:nth-child(7) {
    min-width: 160px !important;
}

.site-data-table th:nth-child(8),
.site-data-table td:nth-child(8) {
    min-width: 560px !important;
}

.group-reconciliation-page {
    border-radius: 8px;
}

.group-reconciliation-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 460px);
    gap: 1rem;
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
}

.group-reconciliation-hero--single {
    grid-template-columns: minmax(0, 1fr);
}

.group-reconciliation-hero-copy {
    min-width: 0;
    align-self: center;
}

.group-reconciliation-hero h1,
.group-reconciliation-run-copy h2,
.group-reconciliation-table-card h2,
.group-reconciliation-modal-header h1,
.group-reconciliation-decision-card h2 {
    margin: 0;
    color: var(--cp-text);
    letter-spacing: 0;
}

.group-reconciliation-hero h1 {
    font-size: 1.45rem;
    font-weight: 800;
}

.group-reconciliation-hero p,
.group-reconciliation-run-copy p,
.group-reconciliation-table-card p,
.group-reconciliation-decision-card p,
.group-reconciliation-date-form small {
    margin: .35rem 0 0;
    color: var(--cp-muted);
}

.group-reconciliation-date-form {
    width: 100%;
    padding: .9rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.group-reconciliation-tracking-title {
    display: grid;
    gap: .18rem;
    margin-bottom: .75rem;
}

.group-reconciliation-tracking-title span {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    color: var(--cp-text);
    font-weight: 800;
    line-height: 1.2;
}

.group-reconciliation-tracking-title i {
    color: var(--cp-primary);
}

.group-reconciliation-tracking-title small {
    color: var(--cp-muted);
    line-height: 1.35;
}

.group-reconciliation-date-form label {
    display: block;
    margin-bottom: .4rem;
    font-weight: 700;
    color: var(--cp-text);
}

.group-reconciliation-date-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .6rem;
    align-items: center;
}

.group-reconciliation-date-help {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .32rem;
    padding: .72rem .78rem;
    border: 1px solid color-mix(in srgb, var(--cp-primary) 28%, var(--cp-border));
    border-radius: 8px;
    color: var(--cp-muted);
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
    line-height: 1.42;
}

.group-reconciliation-date-help strong {
    display: block;
    margin-bottom: .18rem;
    color: var(--cp-text);
    font-size: .82rem;
}

.group-reconciliation-date-help span {
    display: block;
}

.group-reconciliation-date-row .btn,
.group-reconciliation-complete-form .btn,
.group-reconciliation-decision-card .btn,
.group-reconciliation-approve-form .btn {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
}

.group-reconciliation-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .8rem;
    margin-bottom: 1rem;
}

.group-reconciliation-summary-card {
    min-height: 120px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: .35rem;
    padding: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.group-reconciliation-summary-card span,
.group-reconciliation-review-metric span {
    color: var(--cp-muted);
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
}

.group-reconciliation-summary-card strong {
    color: var(--cp-text);
    font-size: 1.35rem;
    line-height: 1.2;
}

.group-reconciliation-summary-card--primary {
    border-color: color-mix(in srgb, var(--cp-primary) 48%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-primary) 10%, var(--cp-surface));
}

.group-reconciliation-summary-card--success {
    border-color: rgba(37, 133, 95, .45);
    background: color-mix(in srgb, #25855f 10%, var(--cp-surface));
}

.group-reconciliation-summary-card--warning {
    border-color: rgba(180, 116, 22, .45);
    background: color-mix(in srgb, #b47416 10%, var(--cp-surface));
}

.group-reconciliation-summary-card--danger {
    border-color: rgba(190, 55, 65, .45);
    background: color-mix(in srgb, #be3741 10%, var(--cp-surface));
}

.group-reconciliation-run-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 520px);
    gap: 1rem;
    align-items: stretch;
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.group-reconciliation-run-panel > [data-group-reconciliation-completion-controls] {
    display: contents;
}

.group-reconciliation-complete-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .55rem;
    align-content: end;
}

.group-reconciliation-complete-form label {
    grid-column: 1 / -1;
    margin: 0;
    font-weight: 700;
    color: var(--cp-text);
}

.group-reconciliation-run-message,
.group-reconciliation-complete-state,
.group-reconciliation-complete-hint {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
}

.group-reconciliation-run-message {
    grid-column: 1 / -1;
    padding: .85rem 1rem;
}

.group-reconciliation-run-message strong,
.group-reconciliation-run-message span,
.group-reconciliation-complete-state strong,
.group-reconciliation-complete-state span {
    display: block;
}

.group-reconciliation-run-message span,
.group-reconciliation-complete-state span,
.group-reconciliation-complete-hint {
    color: var(--cp-muted);
}

.group-reconciliation-run-message--success,
.group-reconciliation-complete-state {
    border-color: rgba(37, 133, 95, .5);
    background: color-mix(in srgb, #25855f 10%, var(--cp-surface));
}

.group-reconciliation-run-message--success i,
.group-reconciliation-complete-state i {
    color: #25855f;
}

.group-reconciliation-run-message--warning {
    border-color: rgba(180, 116, 22, .5);
    background: color-mix(in srgb, #b47416 10%, var(--cp-surface));
}

.group-reconciliation-run-message--warning i {
    color: #b47416;
}

.group-reconciliation-complete-state {
    min-height: 76px;
    padding: .85rem 1rem;
}

.group-reconciliation-complete-state strong {
    color: var(--cp-text);
}

.group-reconciliation-complete-form--disabled .btn[disabled] {
    cursor: not-allowed;
    opacity: .64;
}

.group-reconciliation-complete-hint {
    grid-column: 1 / -1;
    padding: .7rem .8rem;
    background: color-mix(in srgb, var(--cp-surface) 92%, #b47416 8%);
}

.group-reconciliation-complete-hint i {
    color: #b47416;
}

.group-reconciliation-table-card {
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    padding: 1rem;
    background: var(--cp-surface);
}

.group-reconciliation-finance-table {
    min-width: 1740px;
    table-layout: auto;
}

.group-reconciliation-finance-table.admin-report-table thead th {
    padding: .62rem .7rem !important;
    vertical-align: bottom;
    white-space: nowrap;
}

.group-reconciliation-finance-table.admin-report-table tbody td,
.group-reconciliation-finance-table.admin-report-table tbody th {
    padding: .5rem .7rem !important;
    vertical-align: middle;
}

.group-reconciliation-finance-table.admin-report-table tbody tr:hover > * {
    background: color-mix(in srgb, var(--cp-primary) 7%, var(--cp-surface)) !important;
}

.group-reconciliation-finance-table .group-reconciliation-col--positive {
    color: #d9fbe6 !important;
}

.group-reconciliation-finance-table .group-reconciliation-col--negative {
    color: #ffe0e6 !important;
}

.group-reconciliation-finance-table .group-reconciliation-col--carry,
.group-reconciliation-finance-table .group-reconciliation-col--info,
.group-reconciliation-finance-table .group-reconciliation-col--net,
.group-reconciliation-finance-table .group-reconciliation-col--difference {
    color: #dbeafe !important;
}

.group-reconciliation-action-cell {
    min-width: 132px;
}

.group-reconciliation-group-cell {
    min-width: 220px;
    color: var(--cp-text);
    font-weight: 750;
    white-space: normal;
}

.group-reconciliation-money {
    min-width: 92px;
    font-variant-numeric: tabular-nums;
    font-weight: 750;
    line-height: 1.25;
    white-space: nowrap;
}

.group-reconciliation-money--positive {
    color: #15803d !important;
}

.group-reconciliation-money--negative {
    color: #be123c !important;
}

.group-reconciliation-money--carry {
    color: #174ea6 !important;
}

.group-reconciliation-money--info {
    color: #0369a1 !important;
}

.group-reconciliation-money--net {
    font-weight: 800;
}

.group-reconciliation-money--difference {
    font-weight: 800;
}

.group-reconciliation-money--muted {
    color: #64748b !important;
    font-weight: 650;
}

[data-theme="dark"] .group-reconciliation-finance-table.admin-report-table tbody tr:hover > * {
    background: #17243a !important;
}

[data-theme="dark"] .group-reconciliation-group-cell {
    color: #edf4ff;
}

[data-theme="dark"] .group-reconciliation-money--positive {
    color: #22c55e !important;
}

[data-theme="dark"] .group-reconciliation-money--negative {
    color: #fb7185 !important;
}

[data-theme="dark"] .group-reconciliation-money--carry {
    color: #8bbcff !important;
}

[data-theme="dark"] .group-reconciliation-money--info {
    color: #67e8f9 !important;
}

[data-theme="dark"] .group-reconciliation-money--muted {
    color: #94a3b8 !important;
}

.group-reconciliation-actions.btn-group {
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
    min-width: max-content;
}

table.datatable td:first-child .group-reconciliation-actions.btn-group,
.admin-data-table td:first-child .group-reconciliation-actions.btn-group {
    gap: 0;
}

table.datatable td:first-child .group-reconciliation-actions.btn-group > .group-reconciliation-action-btn,
table.datatable td:first-child .group-reconciliation-actions.btn-group > .group-reconciliation-action-form .group-reconciliation-action-btn,
.group-reconciliation-actions.btn-group > .group-reconciliation-action-form .group-reconciliation-action-btn,
.group-reconciliation-action-btn {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .32rem;
    border-radius: 0 !important;
    font-weight: 800;
    line-height: 1.1;
    white-space: nowrap;
}

.group-reconciliation-action-btn::before {
    content: none !important;
    display: none !important;
    margin-right: 0 !important;
}

.group-reconciliation-actions.btn-group > .group-reconciliation-action-btn:first-child {
    border-top-left-radius: .38rem !important;
    border-bottom-left-radius: .38rem !important;
}

.group-reconciliation-actions.btn-group > .group-reconciliation-action-btn:last-child,
.group-reconciliation-actions.btn-group > .group-reconciliation-action-form:last-child .group-reconciliation-action-btn {
    border-top-right-radius: .38rem !important;
    border-bottom-right-radius: .38rem !important;
}

.group-reconciliation-actions.btn-group > .group-reconciliation-action-btn + .group-reconciliation-action-btn,
.group-reconciliation-actions.btn-group > .group-reconciliation-action-btn + .group-reconciliation-action-form,
.group-reconciliation-actions.btn-group > .group-reconciliation-action-form + .group-reconciliation-action-btn {
    margin-left: -1px;
}

.group-reconciliation-action-btn--copy {
    color: #ffffff !important;
    background: #465a7e !important;
    border-color: #5d76a3 !important;
}

.group-reconciliation-action-btn--copy:hover,
.group-reconciliation-action-btn--copy:focus {
    color: #ffffff !important;
    background: #536d9a !important;
    border-color: #7894c2 !important;
}

.group-reconciliation-action-btn--copy.is-copied {
    color: #ffffff !important;
    background: #23745f !important;
    border-color: #33a083 !important;
}

.group-reconciliation-page > .card-body {
    padding: .9rem;
}

.group-reconciliation-page .admin-page-kicker {
    margin-bottom: .22rem;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 0;
}

.group-reconciliation-hero {
    padding: .85rem 1rem;
    border-color: color-mix(in srgb, var(--cp-border) 78%, transparent);
    background: color-mix(in srgb, var(--cp-surface) 96%, var(--cp-primary) 4%);
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}

.group-reconciliation-hero h1 {
    font-size: 1.28rem;
    font-weight: 700;
    line-height: 1.18;
}

.group-reconciliation-hero p,
.group-reconciliation-run-copy p,
.group-reconciliation-table-card p {
    max-width: 1160px;
    font-size: .78rem;
    line-height: 1.45;
}

.group-reconciliation-table-card h2,
.group-reconciliation-run-copy h2 {
    font-size: 1.12rem;
    font-weight: 700;
    line-height: 1.22;
}

.group-reconciliation-summary-grid {
    gap: .62rem;
    margin-bottom: .8rem;
}

.group-reconciliation-summary-card {
    min-height: 78px;
    gap: .28rem;
    padding: .74rem .9rem;
    border-color: color-mix(in srgb, var(--cp-border) 76%, transparent);
    box-shadow: 0 10px 22px rgba(15, 23, 42, .04);
}

.group-reconciliation-summary-card span,
.group-reconciliation-review-metric span {
    font-size: .71rem;
    font-weight: 700;
}

.group-reconciliation-summary-card strong {
    font-size: 1.15rem;
    font-weight: 700;
}

.group-reconciliation-run-panel {
    gap: .8rem;
    padding: .9rem 1rem;
    margin-bottom: .8rem;
    border-color: color-mix(in srgb, var(--cp-border) 76%, transparent);
    box-shadow: 0 10px 22px rgba(15, 23, 42, .04);
}

.group-reconciliation-run-message,
.group-reconciliation-complete-state,
.group-reconciliation-complete-hint {
    border-color: color-mix(in srgb, var(--cp-border) 68%, transparent);
}

.group-reconciliation-run-message {
    padding: .72rem .85rem;
}

.group-reconciliation-run-message strong,
.group-reconciliation-complete-state strong {
    font-size: .82rem;
    font-weight: 700;
}

.group-reconciliation-run-message span,
.group-reconciliation-complete-state span,
.group-reconciliation-complete-hint {
    font-size: .76rem;
    line-height: 1.4;
}

.group-reconciliation-complete-state {
    min-height: 64px;
    padding: .75rem .85rem;
}

.group-reconciliation-complete-form label {
    font-size: .78rem;
    font-weight: 700;
}

.group-reconciliation-complete-form .form-control {
    min-height: 38px;
    font-size: .8rem;
}

.group-reconciliation-table-card {
    padding: .9rem;
    border-color: color-mix(in srgb, var(--cp-border) 74%, transparent);
    background: color-mix(in srgb, var(--cp-surface) 98%, var(--cp-body) 2%);
    box-shadow: 0 12px 26px rgba(15, 23, 42, .05);
}

.group-reconciliation-table-card .admin-section-heading {
    margin-bottom: .68rem;
}

.group-reconciliation-page .admin-report-table-wrap {
    border: 0 !important;
    background: color-mix(in srgb, var(--cp-surface) 98%, var(--cp-body) 2%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
    scrollbar-color: rgba(82, 111, 150, .46) color-mix(in srgb, var(--cp-surface) 92%, var(--cp-body) 8%);
    scrollbar-width: thin;
}

.group-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.group-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar-track {
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-body) 8%);
    border-radius: 999px;
}

.group-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar-thumb {
    background: rgba(82, 111, 150, .46);
    border: 2px solid color-mix(in srgb, var(--cp-surface) 92%, var(--cp-body) 8%);
    border-radius: 999px;
}

.group-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar-thumb:hover {
    background: rgba(38, 91, 163, .68);
}

.group-reconciliation-page .dataTables_wrapper > .row:first-child {
    align-items: center;
    gap: .5rem 0;
    margin: 0 0 .55rem;
}

.group-reconciliation-page .dataTables_wrapper > .row:last-child {
    align-items: center;
    gap: .5rem 0;
    margin: .58rem 0 0;
}

.group-reconciliation-page .dataTables_length label,
.group-reconciliation-page .dataTables_info {
    color: var(--cp-muted);
    font-size: .76rem;
    font-weight: 600;
}

.group-reconciliation-page .dataTables_length select {
    min-height: 32px;
    padding: .24rem 1.65rem .24rem .55rem;
    border-radius: 7px;
    font-size: .76rem;
}

.group-reconciliation-page #group-reconciliation-runs-table_wrapper .dataTables_filter {
    display: none !important;
}

.group-reconciliation-page .admin-data-table {
    border-collapse: separate;
    border-spacing: 0;
    color: var(--cp-text);
    font-size: .78rem;
}

.group-reconciliation-page .admin-data-table thead th,
.group-reconciliation-page .admin-data-table thead td,
.group-reconciliation-finance-table.admin-report-table thead th {
    padding: .52rem .66rem !important;
    border: 0 !important;
    border-bottom: 1px solid color-mix(in srgb, var(--cp-border) 78%, transparent) !important;
    color: color-mix(in srgb, var(--cp-text) 90%, var(--cp-muted) 10%) !important;
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%) !important;
    font-size: .73rem;
    font-weight: 700;
    line-height: 1.22;
    vertical-align: middle;
    white-space: nowrap;
}

.group-reconciliation-page .admin-data-table thead th:not(:last-child),
.group-reconciliation-page .admin-data-table thead td:not(:last-child),
.group-reconciliation-finance-table.admin-report-table thead th:not(:last-child) {
    border-right: 1px solid color-mix(in srgb, var(--cp-border) 56%, transparent) !important;
}

.group-reconciliation-page table.dataTable thead > tr > th.sorting,
.group-reconciliation-page table.dataTable thead > tr > th.sorting_asc,
.group-reconciliation-page table.dataTable thead > tr > th.sorting_desc {
    padding-right: 1.3rem !important;
}

.group-reconciliation-page table.dataTable thead > tr > th.sorting::before,
.group-reconciliation-page table.dataTable thead > tr > th.sorting::after,
.group-reconciliation-page table.dataTable thead > tr > th.sorting_asc::before,
.group-reconciliation-page table.dataTable thead > tr > th.sorting_asc::after,
.group-reconciliation-page table.dataTable thead > tr > th.sorting_desc::before,
.group-reconciliation-page table.dataTable thead > tr > th.sorting_desc::after {
    right: .44rem;
    color: var(--cp-muted);
    font-size: .58rem;
    opacity: .42;
}

.group-reconciliation-page .admin-data-table tbody td,
.group-reconciliation-page .admin-data-table tbody th,
.group-reconciliation-finance-table.admin-report-table tbody td,
.group-reconciliation-finance-table.admin-report-table tbody th {
    padding: .46rem .66rem !important;
    border: 0 !important;
    border-top: 1px solid color-mix(in srgb, var(--cp-border) 54%, transparent) !important;
    border-right: 1px solid color-mix(in srgb, var(--cp-border) 38%, transparent) !important;
    color: var(--cp-text);
    font-weight: 500;
    line-height: 1.32;
    vertical-align: middle;
}

.group-reconciliation-page .admin-data-table tbody td:last-child,
.group-reconciliation-page .admin-data-table tbody th:last-child,
.group-reconciliation-finance-table.admin-report-table tbody td:last-child,
.group-reconciliation-finance-table.admin-report-table tbody th:last-child {
    border-right: 0 !important;
}

.group-reconciliation-page .admin-data-table tbody tr:first-child td,
.group-reconciliation-page .admin-data-table tbody tr:first-child th {
    border-top: 0 !important;
}

.group-reconciliation-page .admin-data-table tbody tr:nth-child(even) > * {
    background: color-mix(in srgb, var(--cp-surface) 95%, var(--cp-primary) 5%) !important;
}

.group-reconciliation-page .admin-data-table tbody tr:hover > *,
.group-reconciliation-finance-table.admin-report-table tbody tr:hover > * {
    background: color-mix(in srgb, var(--cp-surface) 90%, var(--cp-primary) 10%) !important;
}

.group-reconciliation-finance-table {
    min-width: 1580px;
}

.group-reconciliation-action-cell {
    min-width: 116px;
}

.group-reconciliation-group-cell {
    min-width: 190px;
    font-weight: 600;
}

.group-reconciliation-money {
    min-width: 84px;
    font-weight: 600;
    line-height: 1.22;
}

.group-reconciliation-money--net,
.group-reconciliation-money--difference {
    font-weight: 700;
}

table.datatable td:first-child .group-reconciliation-actions.btn-group > .group-reconciliation-action-btn,
table.datatable td:first-child .group-reconciliation-actions.btn-group > .group-reconciliation-action-form .group-reconciliation-action-btn,
.group-reconciliation-actions.btn-group > .group-reconciliation-action-form .group-reconciliation-action-btn,
.group-reconciliation-action-btn {
    min-height: 28px;
    padding: .28rem .5rem;
    font-size: .7rem;
    font-weight: 700;
}

[data-theme="dark"] .group-reconciliation-hero,
[data-theme="dark"] .group-reconciliation-summary-card,
[data-theme="dark"] .group-reconciliation-run-panel,
[data-theme="dark"] .group-reconciliation-table-card,
[data-theme="dark"] .group-reconciliation-page .admin-report-table-wrap {
    border-color: rgba(90, 116, 152, .42);
    box-shadow: none;
}

[data-theme="dark"] .group-reconciliation-hero {
    background: color-mix(in srgb, var(--cp-surface) 94%, var(--cp-primary) 6%);
}

[data-theme="dark"] .group-reconciliation-page .admin-data-table thead th,
[data-theme="dark"] .group-reconciliation-page .admin-data-table thead td,
[data-theme="dark"] .group-reconciliation-finance-table.admin-report-table thead th {
    color: #dbeafe !important;
    border-bottom-color: rgba(90, 116, 152, .46) !important;
    background: #111d30 !important;
}

[data-theme="dark"] .group-reconciliation-page .admin-data-table tbody td,
[data-theme="dark"] .group-reconciliation-page .admin-data-table tbody th,
[data-theme="dark"] .group-reconciliation-finance-table.admin-report-table tbody td,
[data-theme="dark"] .group-reconciliation-finance-table.admin-report-table tbody th {
    border-top-color: rgba(90, 116, 152, .34) !important;
    border-right-color: rgba(90, 116, 152, .24) !important;
    color: #e5eefb;
}

[data-theme="dark"] .group-reconciliation-page .admin-data-table tbody tr:nth-child(even) > * {
    background: rgba(23, 35, 56, .64) !important;
}

[data-theme="dark"] .group-reconciliation-page .admin-data-table tbody tr:hover > *,
[data-theme="dark"] .group-reconciliation-finance-table.admin-report-table tbody tr:hover > * {
    background: #17243a !important;
}

[data-theme="dark"] .group-reconciliation-page .admin-report-table-wrap {
    scrollbar-color: rgba(119, 154, 197, .5) rgba(17, 26, 43, .72);
}

[data-theme="dark"] .group-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar-track {
    background: rgba(17, 26, 43, .72);
}

[data-theme="dark"] .group-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar-thumb {
    background: rgba(119, 154, 197, .5);
    border-color: rgba(17, 26, 43, .72);
}

.group-reconciliation-complete-state--processing {
    border-color: rgba(31, 111, 190, .5);
    background: color-mix(in srgb, #1f6fbe 10%, var(--cp-surface));
}

.group-reconciliation-complete-state--processing i {
    color: #1f6fbe;
}

.group-reconciliation-complete-progress-link {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    width: max-content;
    margin-top: .65rem;
}

.group-reconciliation-completion-modal {
    display: grid;
    gap: 1rem;
    padding: .85rem;
    border: 1px solid var(--cp-border);
    border-radius: .85rem;
    color: var(--cp-text);
    background: var(--cp-body);
    box-shadow: 0 22px 48px rgba(15, 23, 42, .18);
}

.is-fancybox-content:has(.group-reconciliation-completion-modal),
html:has(body.is-fancybox-content .group-reconciliation-completion-modal),
body.is-fancybox-content:has(.group-reconciliation-completion-modal) {
    background: var(--cp-body) !important;
}

.group-reconciliation-completion-header {
    flex-wrap: wrap;
    margin-bottom: 0;
}

.group-reconciliation-completion-header-copy {
    flex: 1 1 420px;
    min-width: 0;
}

.group-reconciliation-completion-summary {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .8rem;
}

.group-reconciliation-completion-notice {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: .85rem 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    color: var(--cp-text);
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
}

.group-reconciliation-completion-notice i {
    margin-top: .2rem;
    color: var(--cp-primary);
}

.group-reconciliation-completion-notice strong,
.group-reconciliation-completion-notice span {
    display: block;
}

.group-reconciliation-completion-notice strong {
    color: var(--cp-text);
    font-weight: 900;
}

.group-reconciliation-completion-notice span {
    margin-top: .18rem;
    color: var(--cp-muted);
    line-height: 1.45;
}

.group-reconciliation-completion-notice--cash {
    border-color: rgba(31, 111, 190, .42);
    background: color-mix(in srgb, #1f6fbe 8%, var(--cp-surface));
}

.group-reconciliation-completion-notice--historical {
    border-color: rgba(180, 116, 22, .42);
    background: color-mix(in srgb, #b47416 8%, var(--cp-surface));
}

.group-reconciliation-completion-notice--historical i {
    color: #b47416;
}

.group-reconciliation-completion-summary-card,
.group-reconciliation-completion-section,
.group-reconciliation-completion-progress {
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.group-reconciliation-completion-summary-card {
    display: grid;
    gap: .35rem;
    min-height: 112px;
    padding: .9rem 1rem;
}

.group-reconciliation-completion-summary-card span {
    color: var(--cp-muted);
    font-size: .76rem;
    font-weight: 850;
    text-transform: uppercase;
}

.group-reconciliation-completion-summary-card strong {
    color: var(--cp-text);
    font-size: 1.2rem;
    font-weight: 900;
}

.group-reconciliation-completion-summary-card small {
    color: var(--cp-muted);
}

.group-reconciliation-completion-summary-card--positive {
    border-color: rgba(22, 128, 78, .42);
    background: color-mix(in srgb, #16804e 8%, var(--cp-surface));
}

.group-reconciliation-completion-summary-card--negative {
    border-color: rgba(190, 18, 60, .42);
    background: color-mix(in srgb, #be123c 8%, var(--cp-surface));
}

.group-reconciliation-completion-summary-card--warning {
    border-color: rgba(180, 116, 22, .42);
    background: color-mix(in srgb, #b47416 8%, var(--cp-surface));
}

.group-reconciliation-completion-section,
.group-reconciliation-completion-progress {
    position: sticky;
    top: 0;
    z-index: 4;
    padding: 1rem;
    border-color: color-mix(in srgb, var(--cp-primary) 36%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-primary) 7%, var(--cp-surface));
    box-shadow: 0 10px 24px rgba(15, 23, 42, .12);
}

.group-reconciliation-completion-money--positive {
    color: #15803d !important;
    font-weight: 850;
}

.group-reconciliation-completion-money--negative {
    color: #be123c !important;
    font-weight: 850;
}

.group-reconciliation-completion-money--muted {
    color: var(--cp-muted) !important;
    font-weight: 700;
}

.group-reconciliation-completion-status {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: .28rem .48rem;
    border: 1px solid var(--cp-border);
    border-radius: 999px;
    color: var(--cp-text);
    background: color-mix(in srgb, var(--cp-surface) 84%, var(--cp-primary) 16%);
    font-size: .74rem;
    font-weight: 850;
    line-height: 1.1;
    white-space: normal;
}

.group-reconciliation-completion-status--updated,
.group-reconciliation-completion-status--completed,
.group-reconciliation-completion-progress-card--updated .group-reconciliation-completion-status {
    border-color: rgba(22, 128, 78, .45);
    color: #15803d;
    background: color-mix(in srgb, #16804e 13%, var(--cp-surface));
}

.group-reconciliation-completion-status--failed,
.group-reconciliation-completion-progress-card--failed .group-reconciliation-completion-status {
    border-color: rgba(190, 18, 60, .45);
    color: #be123c;
    background: color-mix(in srgb, #be123c 13%, var(--cp-surface));
}

.group-reconciliation-completion-status--processing,
.group-reconciliation-completion-progress-card--processing .group-reconciliation-completion-status {
    border-color: rgba(31, 111, 190, .45);
    color: #1f6fbe;
    background: color-mix(in srgb, #1f6fbe 13%, var(--cp-surface));
}

.group-reconciliation-completion-status--skipped-deleted,
.group-reconciliation-completion-status--skipped-child,
.group-reconciliation-completion-status--skipped-unlimited,
.group-reconciliation-completion-status--skipped-historical,
.group-reconciliation-completion-progress-card--skipped-deleted .group-reconciliation-completion-status,
.group-reconciliation-completion-progress-card--skipped-child .group-reconciliation-completion-status,
.group-reconciliation-completion-progress-card--skipped-unlimited .group-reconciliation-completion-status,
.group-reconciliation-completion-progress-card--skipped-historical .group-reconciliation-completion-status {
    border-color: rgba(180, 116, 22, .45);
    color: #b47416;
    background: color-mix(in srgb, #b47416 13%, var(--cp-surface));
}

.group-reconciliation-completion-progress[hidden] {
    display: none !important;
}

.group-reconciliation-completion-progress-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .75rem;
}

.group-reconciliation-completion-progress-head strong,
.group-reconciliation-completion-progress-head span {
    display: block;
}

.group-reconciliation-completion-progress-head strong {
    font-size: 1rem;
    color: var(--cp-text);
}

.group-reconciliation-completion-progress-head span {
    color: var(--cp-muted);
}

.group-reconciliation-completion-progress-head > span {
    color: var(--cp-primary);
    font-size: 1.2rem;
    font-weight: 900;
}

.group-reconciliation-completion-progress-track {
    height: 10px;
    overflow: hidden;
    border-radius: 999px;
    background: color-mix(in srgb, var(--cp-border) 64%, var(--cp-surface));
}

.group-reconciliation-completion-progress-track span {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: #1f6fbe;
    transition: width .28s ease;
}

.group-reconciliation-completion-progress-card--processing {
    border-color: color-mix(in srgb, var(--cp-primary) 70%, var(--cp-border));
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--cp-primary) 16%, transparent);
}

.group-reconciliation-completion-progress-error {
    margin-top: .75rem;
    padding: .75rem .9rem;
    border: 1px solid rgba(190, 18, 60, .45);
    border-radius: 8px;
    color: #be123c;
    background: color-mix(in srgb, #be123c 10%, var(--cp-surface));
}

.group-reconciliation-completion-actions {
    display: flex;
    flex: 0 0 auto;
    align-self: flex-start;
    justify-content: flex-end;
    gap: .65rem;
    margin-left: auto;
}

.group-reconciliation-completion-section-heading {
    margin-bottom: .9rem;
}

.group-reconciliation-impact-section + .group-reconciliation-impact-section {
    margin-top: 1rem;
}

.group-reconciliation-impact-section h3 {
    margin: 0 0 .65rem;
    color: var(--cp-text);
    font-size: .95rem;
    font-weight: 900;
}

.group-reconciliation-impact-grid,
.group-reconciliation-completion-progress-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
}

.group-reconciliation-impact-card {
    display: grid;
    gap: .75rem;
    min-width: 0;
    padding: .9rem;
    border: 1px solid var(--cp-border);
    border-left-width: 4px;
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 94%, var(--cp-primary) 6%);
}

.group-reconciliation-impact-card--increase {
    border-left-color: #16804e;
    background: color-mix(in srgb, #16804e 8%, var(--cp-surface));
}

.group-reconciliation-impact-card--decrease {
    border-left-color: #be123c;
    background: color-mix(in srgb, #be123c 8%, var(--cp-surface));
}

.group-reconciliation-impact-card--reserve {
    border-left-color: #1f6fbe;
    background: color-mix(in srgb, #1f6fbe 8%, var(--cp-surface));
}

.group-reconciliation-impact-card__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .7rem;
    min-width: 0;
}

.group-reconciliation-impact-card__head strong {
    min-width: 0;
    color: var(--cp-text);
    font-size: .96rem;
    font-weight: 900;
    overflow-wrap: anywhere;
}

.group-reconciliation-impact-card__head > span:not(.group-reconciliation-completion-status) {
    flex: 0 0 auto;
    padding: .24rem .48rem;
    border-radius: 999px;
    color: var(--cp-muted);
    background: color-mix(in srgb, var(--cp-surface) 82%, var(--cp-border) 18%);
    font-size: .72rem;
    font-weight: 850;
    white-space: nowrap;
}

.group-reconciliation-impact-card__amount {
    font-size: 1.45rem;
    font-weight: 950;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
}

.group-reconciliation-impact-card--increase .group-reconciliation-impact-card__amount {
    color: #15803d;
}

.group-reconciliation-impact-card--decrease .group-reconciliation-impact-card__amount {
    color: #be123c;
}

.group-reconciliation-impact-card--reserve .group-reconciliation-impact-card__amount {
    color: #1f6fbe;
}

.group-reconciliation-impact-card__label {
    margin-top: -.55rem;
    color: var(--cp-muted);
    font-size: .78rem;
    font-weight: 800;
}

.group-reconciliation-impact-card__metrics {
    display: grid;
    gap: .45rem;
}

.group-reconciliation-impact-card__metrics > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .7rem;
    min-width: 0;
    padding: .48rem .55rem;
    border: 1px solid color-mix(in srgb, var(--cp-border) 76%, transparent);
    border-radius: 7px;
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-border) 12%);
}

.group-reconciliation-impact-card__metrics span {
    color: var(--cp-muted);
    font-size: .74rem;
    font-weight: 750;
}

.group-reconciliation-impact-card__metrics strong {
    color: var(--cp-text);
    font-size: .8rem;
    font-weight: 850;
    font-variant-numeric: tabular-nums;
    text-align: right;
}

.group-reconciliation-completion-empty {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: .9rem 1rem;
    border: 1px solid rgba(22, 128, 78, .38);
    border-radius: 8px;
    background: color-mix(in srgb, #16804e 8%, var(--cp-surface));
}

.group-reconciliation-completion-empty i {
    color: #15803d;
    margin-top: .15rem;
}

.group-reconciliation-completion-empty strong,
.group-reconciliation-completion-empty span {
    display: block;
}

.group-reconciliation-completion-empty strong {
    color: var(--cp-text);
}

.group-reconciliation-completion-empty span {
    color: var(--cp-muted);
}

.group-reconciliation-completion-progress-cards {
    margin-top: .85rem;
}

[data-theme="dark"] .group-reconciliation-completion-money--positive,
[data-theme="dark"] .group-reconciliation-completion-status--updated,
[data-theme="dark"] .group-reconciliation-completion-status--completed,
[data-theme="dark"] .group-reconciliation-completion-progress-card--updated .group-reconciliation-completion-status {
    color: #22c55e !important;
}

[data-theme="dark"] .group-reconciliation-completion-money--negative,
[data-theme="dark"] .group-reconciliation-completion-status--failed,
[data-theme="dark"] .group-reconciliation-completion-progress-card--failed .group-reconciliation-completion-status {
    color: #fb7185 !important;
}

[data-theme="dark"] .group-reconciliation-completion-status--processing,
[data-theme="dark"] .group-reconciliation-completion-progress-card--processing .group-reconciliation-completion-status {
    color: #8bbcff !important;
}

[data-theme="dark"] .group-reconciliation-impact-card--increase .group-reconciliation-impact-card__amount {
    color: #22c55e;
}

[data-theme="dark"] .group-reconciliation-impact-card--decrease .group-reconciliation-impact-card__amount {
    color: #fb7185;
}

[data-theme="dark"] .group-reconciliation-impact-card--reserve .group-reconciliation-impact-card__amount {
    color: #8bbcff;
}

.group-reconciliation-modal-header {
    display: flex;
    gap: 1rem;
    align-items: center;
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
}

.group-reconciliation-modal-icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 8px;
    color: var(--cp-primary);
    background: color-mix(in srgb, var(--cp-primary) 15%, var(--cp-surface));
}

.group-reconciliation-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-top: .45rem;
}

.group-reconciliation-chip {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: .15rem .65rem;
    border: 1px solid var(--cp-border);
    border-radius: 999px;
    color: var(--cp-text);
    background: var(--cp-surface);
    font-size: .78rem;
    font-weight: 700;
}

.group-reconciliation-impact {
    display: flex;
    gap: .75rem;
    padding: .9rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    color: var(--cp-text);
    background: var(--cp-surface);
}

.group-reconciliation-impact i {
    margin-top: .2rem;
    color: var(--cp-primary);
}

.group-reconciliation-impact strong,
.group-reconciliation-impact span {
    display: block;
}

.group-reconciliation-impact span {
    margin-top: .25rem;
    color: var(--cp-muted);
}

.group-reconciliation-impact--warning {
    border-color: rgba(180, 116, 22, .5);
    background: color-mix(in srgb, #b47416 10%, var(--cp-surface));
}

.group-reconciliation-impact--warning i {
    color: #b47416;
}

.group-reconciliation-impact--success {
    border-color: rgba(37, 133, 95, .5);
    background: color-mix(in srgb, #25855f 10%, var(--cp-surface));
}

.group-reconciliation-impact--success i {
    color: #25855f;
}

.group-reconciliation-impact--danger {
    border-color: rgba(190, 55, 65, .5);
    background: color-mix(in srgb, #be3741 10%, var(--cp-surface));
}

.group-reconciliation-impact--danger i {
    color: #be3741;
}

.group-reconciliation-validation-summary ul {
    display: grid;
    gap: .28rem;
    margin: .55rem 0 0;
    padding-left: 1rem;
    color: var(--cp-muted);
}

.group-reconciliation-validation-summary li {
    line-height: 1.35;
}

.group-reconciliation-form-validation {
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    padding: .72rem .8rem;
    border: 1px solid rgba(190, 55, 65, .46);
    border-radius: 8px;
    color: var(--cp-text);
    background: color-mix(in srgb, #be3741 9%, var(--cp-surface));
    line-height: 1.4;
}

.group-reconciliation-form-validation[hidden] {
    display: none !important;
}

.group-reconciliation-form-validation i {
    margin-top: .14rem;
    color: #be3741;
}

.group-reconciliation-form-validation strong,
.group-reconciliation-form-validation span {
    display: block;
    text-transform: none;
    letter-spacing: 0;
}

.group-reconciliation-form-validation span {
    margin-top: .18rem;
    color: var(--cp-muted);
    font-size: .82rem;
    font-weight: 500;
}

.group-reconciliation-review-metric .group-reconciliation-form-validation span {
    text-transform: none;
}

.group-reconciliation-form-validation ul {
    display: grid;
    gap: .22rem;
    margin: .45rem 0 0;
    padding-left: 1rem;
    color: var(--cp-muted);
}

.group-reconciliation-form-validation ul[hidden] {
    display: none !important;
}

.group-reconciliation-review-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .75rem;
    margin-bottom: 1rem;
    align-items: stretch;
}

.group-reconciliation-review-metric {
    min-width: 0;
    min-height: 92px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: .35rem;
    padding: .8rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
    overflow: hidden;
}

.group-reconciliation-review-metric strong {
    color: var(--cp-text);
    font-size: 1.02rem;
}

.group-reconciliation-review-metric--strong {
    border-color: color-mix(in srgb, var(--cp-primary) 45%, var(--cp-border));
}

.group-reconciliation-review-metric--danger {
    border-color: rgba(190, 55, 65, .55);
}

.group-reconciliation-review-metric--danger strong {
    color: #be3741;
}

.group-reconciliation-review-metric--success {
    border-color: rgba(37, 133, 95, .55);
}

.group-reconciliation-review-metric--success strong {
    color: #25855f;
}

.group-reconciliation-review-metric--editable {
    justify-content: flex-start;
    min-height: 176px;
}

.group-reconciliation-review-metric--editable.is-editing {
    border-color: color-mix(in srgb, var(--cp-primary) 60%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 90%, var(--cp-primary) 10%);
}

.group-reconciliation-review-metric--manual {
    border-color: rgba(23, 132, 150, .55);
    background: color-mix(in srgb, #178496 10%, var(--cp-surface));
}

.group-reconciliation-field-view,
.group-reconciliation-field-form {
    width: 100%;
    min-width: 0;
}

.group-reconciliation-field-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .5rem;
    min-width: 0;
}

.group-reconciliation-field-title span {
    min-width: 0;
    color: var(--cp-muted);
    font-size: .82rem;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.group-reconciliation-field-title em {
    flex: 0 0 auto;
    padding: .15rem .45rem;
    border: 1px solid rgba(23, 132, 150, .45);
    border-radius: 999px;
    color: #178496;
    background: color-mix(in srgb, #178496 12%, var(--cp-surface));
    font-size: .68rem;
    font-style: normal;
    font-weight: 800;
    line-height: 1.15;
    white-space: nowrap;
}

.group-reconciliation-field-view small,
.group-reconciliation-field-form small {
    display: block;
    margin-top: .25rem;
    color: var(--cp-muted);
    font-size: .78rem;
    line-height: 1.35;
}

.group-reconciliation-field-warning {
    color: #b47416 !important;
}

.group-reconciliation-field-note {
    overflow-wrap: anywhere;
}

.group-reconciliation-field-actions,
.group-reconciliation-field-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: .75rem;
}

.group-reconciliation-field-form-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.group-reconciliation-field-button {
    min-width: 0;
    min-height: 38px;
    padding: .45rem .7rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    border-radius: 6px;
    border: 1px solid var(--cp-border);
    color: var(--cp-text);
    background: var(--cp-surface);
    box-shadow: none;
    font-size: .78rem;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
}

.group-reconciliation-field-button:hover,
.group-reconciliation-field-button:focus {
    color: var(--cp-text);
    border-color: color-mix(in srgb, var(--cp-primary) 45%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.group-reconciliation-field-button i {
    flex: 0 0 auto;
}

.group-reconciliation-field-button--edit {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 56%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.group-reconciliation-field-button--edit:hover,
.group-reconciliation-field-button--edit:focus {
    color: var(--cp-primary);
}

.group-reconciliation-field-button--save {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 56%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.group-reconciliation-field-button--save:hover,
.group-reconciliation-field-button--save:focus {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 45%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.group-reconciliation-field-button--cancel {
    color: #be3741;
    border-color: rgba(190, 55, 65, .48);
    background: color-mix(in srgb, #be3741 9%, var(--cp-surface));
}

.group-reconciliation-field-button--cancel:hover,
.group-reconciliation-field-button--cancel:focus {
    color: #ffffff;
    border-color: #be3741;
    background: #be3741;
}

.group-reconciliation-field-button--restore {
    color: #15758a;
    border-color: rgba(21, 117, 138, .46);
    background: color-mix(in srgb, #15758a 10%, var(--cp-surface));
}

.group-reconciliation-field-button--restore:hover,
.group-reconciliation-field-button--restore:focus {
    color: #0f5d70;
    border-color: rgba(21, 117, 138, .66);
    background: color-mix(in srgb, #15758a 16%, var(--cp-surface));
}

.group-reconciliation-field-form {
    display: grid;
    gap: .45rem;
}

.group-reconciliation-field-form[hidden] {
    display: none !important;
}

.group-reconciliation-field-form label {
    margin: 0;
    color: var(--cp-text);
    font-size: .82rem;
    font-weight: 700;
}

.group-reconciliation-field-form textarea {
    min-height: 74px;
    resize: vertical;
}

.group-reconciliation-field-form .invalid-feedback,
.group-reconciliation-adjustment-form .invalid-feedback,
.group-reconciliation-decision-card .invalid-feedback,
.group-reconciliation-approve-form .invalid-feedback {
    margin-top: .3rem;
    color: #be3741;
    font-size: .76rem;
    font-weight: 700;
    line-height: 1.35;
}

[data-theme="dark"] .group-reconciliation-field-form .invalid-feedback,
[data-theme="dark"] .group-reconciliation-adjustment-form .invalid-feedback,
[data-theme="dark"] .group-reconciliation-decision-card .invalid-feedback,
[data-theme="dark"] .group-reconciliation-approve-form .invalid-feedback {
    color: #fca5a5;
}

.group-reconciliation-decision-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    align-items: stretch;
}

.group-reconciliation-decision-intro {
    display: flex;
    gap: .75rem;
    align-items: flex-start;
    padding: .9rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid color-mix(in srgb, var(--cp-primary) 34%, var(--cp-border));
    border-radius: 8px;
    color: var(--cp-text);
    background: color-mix(in srgb, var(--cp-surface) 90%, var(--cp-primary) 10%);
}

.group-reconciliation-decision-intro i {
    margin-top: .15rem;
    color: var(--cp-primary);
}

.group-reconciliation-decision-intro strong,
.group-reconciliation-decision-intro span {
    display: block;
}

.group-reconciliation-decision-intro span {
    margin-top: .25rem;
    color: var(--cp-muted);
    line-height: 1.45;
}

.group-reconciliation-adjustment-form {
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
}

.group-reconciliation-adjustment-copy h2 {
    margin: 0;
    color: var(--cp-text);
    font-size: 1rem;
    font-weight: 800;
}

.group-reconciliation-adjustment-copy p {
    margin: .3rem 0 .8rem;
    color: var(--cp-muted);
}

.group-reconciliation-adjustment-help-list {
    display: grid;
    gap: .42rem;
    margin: .75rem 0 1rem;
    padding: .72rem .82rem;
    list-style: none;
    border: 1px solid color-mix(in srgb, var(--cp-primary) 24%, var(--cp-border));
    border-radius: 8px;
    color: var(--cp-muted);
    background: color-mix(in srgb, var(--cp-surface) 94%, var(--cp-primary) 6%);
}

.group-reconciliation-adjustment-help-list li {
    position: relative;
    min-width: 0;
    padding-left: 1rem;
    line-height: 1.4;
}

.group-reconciliation-adjustment-help-list li::before {
    content: "";
    position: absolute;
    top: .56rem;
    left: 0;
    width: .36rem;
    height: .36rem;
    border-radius: 999px;
    background: var(--cp-primary);
}

.group-reconciliation-adjustment-help-list strong {
    color: var(--cp-text);
}

.group-reconciliation-adjustment-grid {
    display: grid;
    grid-template-columns: minmax(170px, .85fr) minmax(150px, .65fr) minmax(260px, 1fr) minmax(168px, auto);
    gap: .75rem;
    align-items: start;
}

.group-reconciliation-adjustment-grid .form-group {
    min-width: 0;
    margin-bottom: 0;
}

.group-reconciliation-adjustment-field-hint {
    display: block;
    margin-top: .32rem;
    color: var(--cp-muted);
    font-size: .76rem;
    line-height: 1.35;
}

.group-reconciliation-adjustment-actions {
    min-width: 0;
    display: flex;
    align-items: end;
    justify-content: flex-end;
    align-self: start;
    padding-top: 1.45rem;
}

.group-reconciliation-adjustment-actions .btn {
    width: 100%;
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    border-radius: 6px;
    font-weight: 700;
    line-height: 1.2;
    white-space: normal;
}

.group-reconciliation-adjustment-actions .btn-outline-primary {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 56%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.group-reconciliation-adjustment-actions .btn-outline-primary:hover,
.group-reconciliation-adjustment-actions .btn-outline-primary:focus {
    color: #ffffff;
    border-color: var(--cp-primary);
    background: var(--cp-primary);
}

.group-reconciliation-adjustment-lines {
    display: grid;
    gap: .85rem;
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.group-reconciliation-adjustment-lines-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.group-reconciliation-adjustment-lines-header h2 {
    margin: 0;
    color: var(--cp-text);
    font-size: 1rem;
    font-weight: 800;
}

.group-reconciliation-adjustment-lines-header p {
    margin: .3rem 0 0;
    color: var(--cp-muted);
    line-height: 1.45;
}

.group-reconciliation-adjustment-lines-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .65rem;
}

.group-reconciliation-adjustment-lines-summary > div {
    min-width: 0;
    padding: .7rem .8rem;
    border: 1px solid color-mix(in srgb, var(--cp-border) 82%, var(--cp-primary) 18%);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
}

.group-reconciliation-adjustment-lines-summary span,
.group-reconciliation-adjustment-lines-summary strong {
    display: block;
}

.group-reconciliation-adjustment-lines-summary span {
    color: var(--cp-muted);
    font-size: .76rem;
    font-weight: 700;
}

.group-reconciliation-adjustment-lines-summary strong {
    margin-top: .18rem;
    color: var(--cp-text);
    font-size: .96rem;
    font-weight: 800;
}

.group-reconciliation-adjustment-lines-summary .is-positive strong,
.group-reconciliation-adjustment-effect.is-positive {
    color: #11845b;
}

.group-reconciliation-adjustment-lines-summary .is-negative strong,
.group-reconciliation-adjustment-effect.is-negative {
    color: #be3741;
}

.group-reconciliation-adjustment-lines-wrap {
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.group-reconciliation-adjustment-lines-table {
    min-width: 760px;
    margin-bottom: 0;
}

.group-reconciliation-adjustment-lines-table th,
.group-reconciliation-adjustment-lines-table td {
    vertical-align: middle;
}

.group-reconciliation-adjustment-direction {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: .2rem .48rem;
    border-radius: 999px;
    font-size: .74rem;
    font-weight: 800;
    line-height: 1.2;
    white-space: nowrap;
}

.group-reconciliation-adjustment-direction.is-increase {
    color: #0b6b46;
    border: 1px solid rgba(17, 132, 91, .34);
    background: rgba(17, 132, 91, .12);
}

.group-reconciliation-adjustment-direction.is-decrease {
    color: #9f2f38;
    border: 1px solid rgba(190, 55, 65, .32);
    background: rgba(190, 55, 65, .12);
}

.group-reconciliation-adjustment-effect {
    font-weight: 800;
    white-space: nowrap;
}

.group-reconciliation-adjustment-delete-form {
    margin: 0;
}

.group-reconciliation-adjustment-delete-button {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    border-radius: 6px;
    font-weight: 800;
}

.group-reconciliation-adjustment-empty {
    padding: .8rem;
    border: 1px dashed color-mix(in srgb, var(--cp-border) 80%, var(--cp-muted) 20%);
    border-radius: 8px;
    color: var(--cp-muted);
    background: color-mix(in srgb, var(--cp-surface) 95%, var(--cp-muted) 5%);
}

[data-theme="dark"] .group-reconciliation-field-button--save {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 56%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

[data-theme="dark"] .group-reconciliation-field-button--save:hover,
[data-theme="dark"] .group-reconciliation-field-button--save:focus {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 45%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

[data-theme="dark"] .group-reconciliation-field-button--cancel {
    color: #fecaca;
    border-color: rgba(248, 113, 113, .48);
    background: rgba(190, 55, 65, .18);
}

[data-theme="dark"] .group-reconciliation-field-button--cancel:hover,
[data-theme="dark"] .group-reconciliation-field-button--cancel:focus {
    color: #071426;
    border-color: #fca5a5;
    background: #fca5a5;
}

[data-theme="dark"] .group-reconciliation-field-button--restore {
    color: #8bd8e6;
    border-color: rgba(139, 216, 230, .42);
    background: rgba(23, 132, 150, .16);
}

[data-theme="dark"] .group-reconciliation-page .btn-primary,
[data-theme="dark"] .group-reconciliation-page .btn-success,
[data-theme="dark"] .group-reconciliation-review-page .btn-primary,
[data-theme="dark"] .group-reconciliation-review-page .btn-success {
    color: #071426 !important;
}

[data-theme="dark"] .group-reconciliation-page table.datatable .btn-primary,
[data-theme="dark"] .group-reconciliation-page table.datatable .btn-success,
[data-theme="dark"] .group-reconciliation-page .admin-data-table .btn-primary,
[data-theme="dark"] .group-reconciliation-page .admin-data-table .btn-success {
    color: #071426 !important;
    background: var(--cp-primary) !important;
    border-color: var(--cp-primary) !important;
}

[data-theme="dark"] .group-reconciliation-adjustment-actions .btn-outline-primary:hover,
[data-theme="dark"] .group-reconciliation-adjustment-actions .btn-outline-primary:focus {
    color: #071426;
}

[data-theme="dark"] .group-reconciliation-adjustment-lines-summary .is-positive strong,
[data-theme="dark"] .group-reconciliation-adjustment-effect.is-positive {
    color: #6ee7a8;
}

[data-theme="dark"] .group-reconciliation-adjustment-lines-summary .is-negative strong,
[data-theme="dark"] .group-reconciliation-adjustment-effect.is-negative {
    color: #fca5a5;
}

[data-theme="dark"] .group-reconciliation-adjustment-direction.is-increase {
    color: #bbf7d0;
    border-color: rgba(74, 222, 128, .38);
    background: rgba(34, 197, 94, .16);
}

[data-theme="dark"] .group-reconciliation-adjustment-direction.is-decrease {
    color: #fecaca;
    border-color: rgba(248, 113, 113, .38);
    background: rgba(239, 68, 68, .16);
}

.group-reconciliation-decision-card,
.group-reconciliation-approve-form {
    padding: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.group-reconciliation-approve-form {
    display: grid;
    gap: .75rem;
    margin-top: 1rem;
}

.group-reconciliation-approve-form--disabled {
    border-color: rgba(180, 116, 22, .46);
    background: color-mix(in srgb, #b47416 8%, var(--cp-surface));
}

.group-reconciliation-approve-copy h2 {
    margin: 0;
    color: var(--cp-text);
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: 0;
}

.group-reconciliation-approve-copy p {
    margin: .28rem 0 0;
    color: var(--cp-muted);
    line-height: 1.45;
}

.group-reconciliation-disabled-note {
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    padding: .72rem .8rem;
    border: 1px solid rgba(180, 116, 22, .42);
    border-radius: 8px;
    color: var(--cp-muted);
    background: color-mix(in srgb, #b47416 10%, var(--cp-surface));
    line-height: 1.4;
}

.group-reconciliation-disabled-note i {
    margin-top: .12rem;
    color: #b47416;
}

.group-reconciliation-approve-form textarea:disabled {
    cursor: not-allowed;
    color: var(--cp-muted);
    background: color-mix(in srgb, var(--cp-surface) 86%, var(--cp-border) 14%);
    opacity: 1;
}

.group-reconciliation-approve-form .btn[disabled] {
    cursor: not-allowed;
    opacity: .62;
}

.group-reconciliation-decision-card {
    min-width: 0;
    min-height: 100%;
    display: flex;
    flex-direction: column;
}

.group-reconciliation-decision-card > .btn {
    width: 100%;
    margin-top: auto;
}

.group-reconciliation-decision-list {
    display: grid;
    gap: .45rem;
    margin: .85rem 0 1rem;
    padding: .75rem .85rem;
    list-style: none;
    border: 1px solid color-mix(in srgb, var(--cp-border) 80%, var(--cp-primary) 20%);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 94%, var(--cp-border) 6%);
}

.group-reconciliation-decision-list li {
    position: relative;
    min-width: 0;
    padding-left: 1rem;
    color: var(--cp-muted);
    line-height: 1.4;
}

.group-reconciliation-decision-list li::before {
    content: "";
    position: absolute;
    top: .56rem;
    left: 0;
    width: .38rem;
    height: .38rem;
    border-radius: 999px;
    background: var(--cp-primary);
}

.group-reconciliation-confirm-check {
    padding: .75rem .75rem .75rem 2.2rem;
    margin-bottom: .75rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.group-reconciliation-modal-actions {
    margin-top: 1rem;
    padding: .8rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 94%, var(--cp-border));
}

.c-sidebar .admin-menu .admin-menu-link--with-control-badge {
    gap: .58rem;
}

.c-sidebar .admin-menu .c-sidebar-nav-link.admin-menu-link--with-control-badge > .admin-menu-label--wrap {
    flex: 1 1 auto;
    min-width: 0;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    line-height: 1.18;
}

.admin-menu-badge-control {
    min-width: 0;
    height: 1.12rem;
    margin-left: .18rem;
    padding: 0 .36rem;
    color: #2f2200;
    background: #f4d36f;
    border: 1px solid rgba(255, 236, 164, .68);
    border-radius: 999px;
    box-shadow: none;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1;
    white-space: nowrap;
}

[data-theme="dark"] .admin-menu-badge-control {
    color: #1c1400;
    background: #eec95e;
    border-color: rgba(255, 225, 132, .36);
}

@media (min-width: 992px) {
    html.admin-sidebar-collapsed-preload .admin-menu-badge-control,
    body.admin-sidebar-collapsed .admin-menu-badge-control {
        top: .18rem;
        right: .16rem;
        width: .68rem;
        min-width: .68rem;
        height: .68rem;
        padding: 0;
        border: 2px solid var(--cp-sidebar);
        font-size: 0;
    }
}

@media (max-width: 1199.98px) {
    .group-reconciliation-hero {
        grid-template-columns: 1fr;
    }

    .group-reconciliation-hero-copy {
        align-self: auto;
    }

    .group-reconciliation-date-help {
        grid-template-columns: 1fr;
    }

    .group-reconciliation-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .group-reconciliation-review-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .group-reconciliation-adjustment-grid {
        grid-template-columns: minmax(170px, .8fr) minmax(150px, .7fr) minmax(260px, 1fr);
    }

    .group-reconciliation-adjustment-lines-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .group-reconciliation-adjustment-actions {
        grid-column: 1 / -1;
        justify-content: flex-start;
        padding-top: 0;
    }

    .group-reconciliation-adjustment-actions .btn {
        width: auto;
        min-width: 180px;
    }
}

@media (max-width: 767.98px) {
    .group-reconciliation-hero,
    .group-reconciliation-run-panel,
    .group-reconciliation-decision-grid {
        grid-template-columns: 1fr;
        display: grid;
    }

    .group-reconciliation-date-form {
        width: 100%;
    }

    .group-reconciliation-date-row,
    .group-reconciliation-complete-form,
    .group-reconciliation-adjustment-grid,
    .group-reconciliation-adjustment-lines-summary,
    .group-reconciliation-summary-grid,
    .group-reconciliation-review-grid,
    .group-reconciliation-completion-summary {
        grid-template-columns: 1fr;
    }

    .group-reconciliation-date-form {
        padding: .8rem;
    }

    .group-reconciliation-modal-header {
        align-items: flex-start;
    }

    .group-reconciliation-field-form-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .group-reconciliation-field-button,
    .group-reconciliation-adjustment-actions .btn {
        width: 100%;
    }

    .group-reconciliation-completion-actions,
    .group-reconciliation-completion-progress-head {
        flex-direction: column;
        align-items: stretch;
    }

    .group-reconciliation-completion-actions {
        width: 100%;
        margin-left: 0;
    }

    .group-reconciliation-impact-grid,
    .group-reconciliation-completion-progress-cards {
        grid-template-columns: 1fr;
    }

    .group-reconciliation-completion-actions .btn {
        width: 100%;
    }
}

@media (max-width: 420px) {
    .group-reconciliation-field-form-actions {
        grid-template-columns: 1fr;
    }
}

.bank-account-status-compact {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    max-width: 86px;
    min-width: 0;
}

.bank-account-status-compact .admin-status-badge {
    justify-content: center;
    min-width: 0;
}

.bank-account-identity {
    display: grid;
    gap: .24rem;
    min-width: 0;
    padding: .45rem .55rem;
    border: 1px solid #dbe5f2;
    border-radius: .65rem;
    background: #ffffff;
}

.bank-account-identity strong {
    color: #10213f;
    font-size: .78rem;
    font-weight: 800;
    line-height: 1.15;
}

.bank-account-identity__integrations {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .24rem;
    min-width: 0;
}

.bank-account-identity__integrations .admin-status-badge {
    max-width: 100%;
    min-width: 0;
    padding: .16rem .42rem;
    font-size: .66rem;
    line-height: 1.15;
}

.bank-account-identity__integrations .admin-status-badge > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bank-account-identity span,
.bank-account-identity code {
    min-width: 0;
    overflow: hidden;
    color: #42536a;
    font-size: .72rem;
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bank-account-identity code {
    padding: 0;
    color: #173b86;
    background: transparent;
    font-family: inherit;
}

.bank-account-finance-grid,
.bank-account-limit-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .38rem;
}

.bank-account-finance-grid .bank-account-metric:first-child {
    grid-column: 1 / -1;
}

.bank-account-finance-grid .bank-account-metric {
    grid-template-columns: minmax(48px, .65fr) minmax(0, 1.35fr);
}

.bank-account-finance-grid .bank-account-metric strong {
    flex-wrap: nowrap;
    font-size: .72rem;
    white-space: nowrap;
}

.bank-account-metric {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(52px, .72fr) minmax(0, 1.28fr);
    align-items: center;
    gap: .32rem;
    min-height: 30px;
    padding: .28rem .42rem;
    border: 1px solid #cfe0f4;
    border-radius: .55rem;
    background: #ffffff;
}

.bank-account-metric span {
    min-width: 0;
    color: #4d617c;
    font-size: .66rem;
    font-weight: 500;
    line-height: 1.1;
    white-space: nowrap;
}

.bank-account-metric strong {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: .28rem;
    min-width: 0;
    color: #0f2f5f;
    font-size: .75rem;
    font-weight: 500;
    line-height: 1.15;
    text-align: right;
}

.bank-account-limit-grid .bank-account-metric:first-child {
    grid-column: 1 / -1;
}

.bank-account-reset-link {
    display: inline-flex;
    align-items: center;
    min-height: 20px;
    padding: .16rem .42rem;
    border: 1px solid #cbd5e1;
    border-radius: 999px;
    color: #344054;
    background: #f1f5f9;
    font-size: .68rem;
    font-weight: 500;
    line-height: 1;
}

.bank-account-site-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(96px, 1fr));
    gap: .35rem;
    align-items: start;
    width: 100%;
    min-width: 540px;
}

.bank-account-site-grid--empty {
    display: flex;
    min-width: 0;
}

.bank-account-site-grid__item,
.bank-account-site-grid .admin-entity-badge {
    min-width: 0;
    max-width: 100%;
}

.bank-account-site-grid .admin-entity-badge {
    width: 100%;
    margin: 0;
    justify-content: center;
    padding-right: .42rem;
    padding-left: .42rem;
}

.bank-account-site-grid .admin-entity-badge > span {
    min-width: 0;
}

@media (min-width: 1200px) {
    .bank-account-table-page {
        --bank-account-actions-width: 390px;
        --bank-account-group-width: 150px;
    }

    .bank-account-table-page .dataTables_scrollHeadInner,
    .bank-account-table-page .bank-account-data-table {
        width: 100% !important;
        min-width: 0 !important;
    }

    .bank-account-table-page .bank-account-data-table {
        table-layout: fixed;
    }

    .bank-account-table-page .bank-account-data-table th,
    .bank-account-table-page .bank-account-data-table td {
        min-width: 0 !important;
        box-sizing: border-box;
    }

    .bank-account-table-page .bank-account-data-table th:nth-child(1) {
        width: var(--bank-account-actions-width) !important;
    }

    .bank-account-table-page .bank-account-data-table th:nth-child(2) {
        width: 60px !important;
    }

    .bank-account-table-page .bank-account-data-table th:nth-child(3) {
        width: 90px !important;
    }

    .bank-account-table-page .bank-account-data-table th:nth-child(4),
    .bank-account-table-page .bank-account-data-table th:nth-child(5),
    .bank-account-table-page .bank-account-data-table th:nth-child(6),
    .bank-account-table-page .bank-account-data-table th:nth-child(8) {
        width: auto !important;
    }

    .bank-account-table-page .bank-account-data-table th:nth-child(7) {
        width: var(--bank-account-group-width) !important;
    }

    .bank-account-table-page .bank-account-site-grid {
        grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
        min-width: 0;
        max-width: 560px;
    }

    .bank-account-table-page .bank-account-data-table td:nth-child(7) .admin-entity-badge {
        max-width: 100%;
    }

    .bank-account-table-page .bank-account-identity code {
        white-space: normal;
        overflow-wrap: anywhere;
    }
}

@media (min-width: 1200px) and (max-width: 1799.98px) {
    .bank-account-table-page {
        --bank-account-actions-width: 110px;
        --bank-account-group-width: 120px;
    }

    .bank-account-table-page .admin-row-actions-desktop {
        display: none !important;
    }

    .bank-account-table-page .admin-row-actions-mobile {
        display: inline-flex;
    }
}

@media (min-width: 1200px) and (max-width: 2199.98px) {
    .bank-account-table-page .bank-account-finance-grid,
    .bank-account-table-page .bank-account-limit-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

.payment-method-card-data-table td {
    vertical-align: middle;
}

.payment-method-card-identity strong,
.payment-method-card-identity span,
.payment-method-card-identity code {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.payment-method-card-allocation-grid {
    grid-template-columns: minmax(0, 1fr);
}

.payment-method-card-allocation-grid .bank-account-metric:first-child {
    grid-column: auto;
}

.payment-method-card-allocation-grid .bank-account-metric {
    grid-template-columns: minmax(68px, .7fr) minmax(0, 1.3fr);
}

.payment-method-card-allocation-grid .admin-status-badge {
    max-width: 100%;
}

@media (min-width: 1200px) {
    .payment-method-card-table-page {
        --payment-method-card-actions-width: 176px;
        --payment-method-card-group-width: 150px;
    }

    .payment-method-card-table-page .payment-method-card-data-table {
        width: 100% !important;
        min-width: 0 !important;
        table-layout: fixed;
    }

    .payment-method-card-table-page .payment-method-card-data-table th,
    .payment-method-card-table-page .payment-method-card-data-table td {
        min-width: 0 !important;
        box-sizing: border-box;
    }

    .payment-method-card-table-page .payment-method-card-data-table th:nth-child(1) {
        width: var(--payment-method-card-actions-width) !important;
    }

    .payment-method-card-table-page .payment-method-card-data-table th:nth-child(2) {
        width: 60px !important;
    }

    .payment-method-card-table-page .payment-method-card-data-table th:nth-child(3) {
        width: 90px !important;
    }

    .payment-method-card-table-page .payment-method-card-data-table th:nth-child(4) {
        width: 250px !important;
    }

    .payment-method-card-table-page .payment-method-card-data-table th:nth-child(5) {
        width: 300px !important;
    }

    .payment-method-card-table-page .payment-method-card-data-table th:nth-child(6) {
        width: var(--payment-method-card-group-width) !important;
    }

    .payment-method-card-table-page .payment-method-card-site-grid {
        grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
        min-width: 0;
        max-width: 560px;
    }

    .payment-method-card-table-page .payment-method-card-data-table td:nth-child(6) .admin-entity-badge {
        max-width: 100%;
    }
}

@media (min-width: 1200px) and (max-width: 1799.98px) {
    .payment-method-card-table-page {
        --payment-method-card-actions-width: 110px;
        --payment-method-card-group-width: 120px;
    }

    .payment-method-card-table-page .admin-row-actions-desktop {
        display: none !important;
    }

    .payment-method-card-table-page .admin-row-actions-mobile {
        display: inline-flex;
    }
}

@media (max-width: 1199.98px) {
    .payment-method-card-table-page .payment-method-card-data-table {
        min-width: 1180px;
    }

    .payment-method-card-table-page .payment-method-card-site-grid {
        grid-template-columns: repeat(2, minmax(96px, 1fr));
        min-width: 240px;
    }
}

.user-authorized-site-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(96px, 1fr));
    gap: .35rem;
    align-items: start;
    width: 100%;
    min-width: 540px;
}

.user-authorized-site-grid__item,
.user-authorized-site-grid .admin-entity-badge {
    min-width: 0;
    max-width: 100%;
}

.user-authorized-site-grid .admin-entity-badge {
    width: 100%;
    margin: 0;
    justify-content: center;
    padding-right: .42rem;
    padding-left: .42rem;
}

.user-authorized-site-grid .admin-entity-badge > span {
    min-width: 0;
}

.site-table-identity {
    display: flex;
    align-items: center;
    min-width: 0;
    min-height: 30px;
    padding: .34rem .5rem;
    border: 1px solid #dbe5f2;
    border-radius: .55rem;
    background: #ffffff;
}

.site-table-identity strong {
    color: #10213f;
    font-size: .78rem;
    font-weight: 600;
    line-height: 1.15;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.site-status-grid,
.site-finance-grid,
.site-auto-grid,
.site-commission-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .38rem;
}

.site-table-metric {
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .16rem .32rem;
    min-height: 30px;
    padding: .28rem .42rem;
    border: 1px solid #cfe0f4;
    border-radius: .55rem;
    background: #ffffff;
}

.site-table-metric > span {
    min-width: 0;
    max-width: 100%;
    color: #4d617c;
    font-size: .66rem;
    font-weight: 500;
    line-height: 1.1;
    white-space: normal;
    overflow-wrap: anywhere;
}

.site-table-metric > strong {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
    color: #0f2f5f;
    font-size: .75rem;
    font-weight: 500;
    line-height: 1.15;
    text-align: right;
    white-space: normal;
    overflow-wrap: anywhere;
}

.site-commission-grid {
    grid-template-columns: 1fr;
}

.site-status-grid {
    grid-template-columns: 1fr;
}

.site-group-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(96px, 1fr));
    gap: .35rem;
    align-items: start;
    width: 100%;
    min-width: 540px;
}

.site-group-grid--empty {
    display: flex;
    min-width: 0;
}

.site-group-grid__item,
.site-group-grid .admin-entity-badge {
    min-width: 0;
    max-width: 100%;
}

.site-group-grid .admin-entity-badge {
    width: 100%;
    margin: 0;
    justify-content: center;
    padding-right: .42rem;
    padding-left: .42rem;
}

.site-group-grid .admin-entity-badge > span {
    min-width: 0;
}

.role-permission-panel {
    display: flex;
    flex-direction: column;
    gap: .55rem;
    max-width: 100%;
}

.role-permission-summary {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .75rem;
    padding: .55rem .65rem;
    border: 1px solid #dbe5f2;
    border-radius: .75rem;
    background: #f8fbff;
}

.role-permission-summary > div:first-child {
    min-width: 86px;
}

.role-permission-summary strong {
    display: block;
    color: #10213f;
    font-size: .82rem;
    font-weight: 700;
    line-height: 1.15;
}

.role-permission-summary span {
    color: #667085;
    font-size: .72rem;
    font-weight: 600;
}

.role-permission-groups {
    display: flex;
    flex: 1;
    flex-wrap: wrap;
    gap: .35rem;
}

.role-permission-group-chip,
.role-permission-more {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    min-height: 26px;
    padding: .25rem .5rem;
    border: 1px solid #d5e0ef;
    border-radius: 999px;
    color: #24405f;
    background: #ffffff;
    font-size: .72rem;
    font-weight: 600;
    white-space: nowrap;
}

.role-permission-group-chip strong {
    min-width: 22px;
    padding: .14rem .35rem;
    border-radius: 999px;
    color: #155eef;
    background: #edf4ff;
    font-size: .68rem;
    text-align: center;
}

.role-permission-more {
    color: #155eef;
    background: #edf4ff;
    border-color: #bfdbfe;
}

.role-permission-details {
    border: 1px solid #dbe5f2;
    border-radius: .75rem;
    background: #ffffff;
    overflow: hidden;
}

.role-permission-details summary {
    cursor: pointer;
    padding: .45rem .65rem;
    color: #155eef;
    font-size: .78rem;
    font-weight: 700;
    list-style-position: inside;
    user-select: none;
}

.role-permission-details[open] summary {
    border-bottom: 1px solid #dbe5f2;
    background: #f8fbff;
}

.role-permission-detail-body {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: .65rem;
    max-height: 360px;
    padding: .7rem;
    overflow: auto;
}

.role-permission-detail-group {
    padding: .55rem;
    border: 1px solid #e3ebf5;
    border-radius: .7rem;
    background: #fbfdff;
}

.role-permission-detail-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    margin-bottom: .45rem;
    color: #10213f;
    font-size: .76rem;
    font-weight: 800;
}

.role-permission-detail-title strong {
    min-width: 24px;
    padding: .12rem .36rem;
    border-radius: 999px;
    color: #155eef;
    background: #edf4ff;
    font-size: .68rem;
    text-align: center;
}

.role-permission-chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.role-permission-chip {
    display: inline-flex;
    align-items: baseline;
    gap: .28rem;
    max-width: 100%;
    padding: .24rem .45rem;
    border: 1px solid #d8e5f7;
    border-radius: .55rem;
    color: #173b86;
    background: #eff6ff;
    font-size: .7rem;
    font-weight: 700;
    line-height: 1.1;
}

.role-permission-chip small {
    color: #5d7493;
    font-size: .64rem;
    font-weight: 600;
}

.role-permission-empty {
    display: inline-flex;
    align-items: center;
    padding: .35rem .55rem;
    border: 1px dashed #cbd5e1;
    border-radius: .65rem;
    color: #667085;
    background: #f8fafc;
    font-size: .78rem;
    font-weight: 700;
}

.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate {
    padding-top: .35rem !important;
}

.dataTables_wrapper .dataTables_paginate .paginate_button,
.dataTables_wrapper .pagination .page-link {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .82rem;
    font-weight: 500;
    line-height: 1;
}

.dataTables_wrapper .pagination {
    gap: .22rem;
    align-items: center;
    margin-bottom: 0;
}

.dataTables_wrapper .pagination .page-link {
    min-width: 31px;
    padding: .36rem .58rem;
    color: #263445;
    background: #fff;
    border: 1px solid #d7e1ed;
    border-radius: .46rem !important;
    box-shadow: none;
}

.dataTables_wrapper .pagination .page-link:hover {
    color: #163a9d;
    background: #f4f8ff;
    border-color: #b9c9e3;
}

.dataTables_wrapper .pagination .page-item.active .page-link {
    color: #fff;
    background: #2656d9;
    border-color: #2656d9;
    box-shadow: 0 5px 12px rgba(38, 86, 217, .16);
}

.dataTables_wrapper .pagination .page-item.active > .page-link,
.dataTables_wrapper .pagination .active > .page-link {
    color: #fff !important;
    background: #2656d9 !important;
    border-color: #2656d9 !important;
}

.dataTables_wrapper .pagination .page-item.disabled .page-link {
    color: #8a98aa;
    background: #f2f5f9;
    border-color: #dfe7f1;
    box-shadow: none;
}

.dataTables_wrapper .dataTables_length select {
    padding-top: .25rem;
    padding-bottom: .25rem;
}

table.datatable tbody tr.bg-success > *,
table.datatable tbody tr.bg-danger > *,
table.datatable tbody tr.bg-warning > *,
table.datatable tbody tr.bg-info > *,
table.datatable tbody tr.bg-primary > *,
table.datatable tbody tr.bg-secondary > *,
.admin-data-table tbody tr.bg-success > *,
.admin-data-table tbody tr.bg-danger > *,
.admin-data-table tbody tr.bg-warning > *,
.admin-data-table tbody tr.bg-info > *,
.admin-data-table tbody tr.bg-primary > *,
.admin-data-table tbody tr.bg-secondary > * {
    background-color: inherit !important;
    color: inherit !important;
}

table.datatable tbody tr.bg-success > *,
table.datatable tbody tr.bg-danger > *,
table.datatable tbody tr.bg-warning > *,
table.datatable tbody tr.bg-info > *,
.admin-data-table tbody tr.bg-success > *,
.admin-data-table tbody tr.bg-danger > *,
.admin-data-table tbody tr.bg-warning > *,
.admin-data-table tbody tr.bg-info > * {
    border-color: rgba(151, 170, 196, .26) !important;
    box-shadow: none !important;
}

table.datatable tbody tr.admin-row-state-review > *,
.admin-data-table tbody tr.admin-row-state-review > * {
    color: #12344d !important;
    background-color: #e7f4ff !important;
    border-color: rgba(14, 116, 144, .24) !important;
}

table.datatable tbody tr.admin-row-state-review:hover > *,
.admin-data-table tbody tr.admin-row-state-review:hover > * {
    background-color: #d9efff !important;
}

[data-theme="dark"] table.datatable,
[data-theme="dark"] .admin-data-table {
    color: #edf4ff;
}

[data-theme="dark"] table.datatable tbody td,
[data-theme="dark"] table.datatable tbody th,
[data-theme="dark"] .admin-data-table tbody td,
[data-theme="dark"] .admin-data-table tbody th {
    border-top-color: rgba(107, 132, 168, .24);
}

[data-theme="dark"] table.datatable tbody tr:hover > *,
[data-theme="dark"] .admin-data-table tbody tr:hover > * {
    background-color: rgba(110, 168, 255, .08) !important;
    background-image: none !important;
}

[data-theme="dark"] table.datatable tbody tr.admin-row-state-review > *,
[data-theme="dark"] .admin-data-table tbody tr.admin-row-state-review > * {
    color: #dff6ff !important;
    background-color: #12324a !important;
    border-color: rgba(125, 211, 252, .26) !important;
}

[data-theme="dark"] table.datatable tbody tr.admin-row-state-review:hover > *,
[data-theme="dark"] .admin-data-table tbody tr.admin-row-state-review:hover > * {
    background-color: #173d5a !important;
}

[data-theme="dark"] table.datatable .btn-warning,
[data-theme="dark"] .admin-data-table .btn-warning {
    color: #241900 !important;
    background: #f3c33f !important;
}

[data-theme="dark"] table.datatable .btn-danger,
[data-theme="dark"] .admin-data-table .btn-danger {
    background: #e05264 !important;
}

[data-theme="dark"] table.datatable .btn-info,
[data-theme="dark"] .admin-data-table .btn-info {
    background: #1597c2 !important;
}

[data-theme="dark"] .group-summary-item,
[data-theme="dark"] .group-detail-item,
[data-theme="dark"] .group-summary-parent {
    border-color: #33445f;
    background: #111a2b;
}

[data-theme="dark"] .group-summary-item {
    border-color: #2f4d78;
    background: #0f1a2c;
}

[data-theme="dark"] .group-summary-item > span,
[data-theme="dark"] .group-detail-item > span,
[data-theme="dark"] .group-summary-parent > span:not(.admin-entity-badge) {
    color: #9fb0c7;
}

[data-theme="dark"] .group-summary-item > span {
    color: #b6c8df;
}

[data-theme="dark"] .group-summary-item > strong,
[data-theme="dark"] .group-detail-item > strong {
    color: #edf4ff;
}

[data-theme="dark"] .group-detail-panel {
    border-color: #33445f;
    background: #0f1a2c;
}

[data-theme="dark"] .group-detail-panel summary {
    color: #8fc7ff;
}

[data-theme="dark"] .group-detail-panel[open] summary {
    border-bottom-color: #33445f;
    background: #111a2b;
}

[data-theme="dark"] .bank-account-identity,
[data-theme="dark"] .bank-account-metric {
    border-color: #33445f;
    background: #111a2b;
}

[data-theme="dark"] .bank-account-metric {
    border-color: #2f4d78;
    background: #0f1a2c;
}

[data-theme="dark"] .bank-account-identity strong,
[data-theme="dark"] .bank-account-metric strong {
    color: #edf4ff;
}

[data-theme="dark"] .bank-account-identity span,
[data-theme="dark"] .bank-account-metric span {
    color: #b6c8df;
}

[data-theme="dark"] .bank-account-identity code {
    color: #a5c8ff;
    background: transparent;
}

[data-theme="dark"] .bank-account-reset-link {
    color: #d8e8ff;
    border-color: #34445f;
    background: #16233a;
}

[data-theme="dark"] .site-table-identity,
[data-theme="dark"] .site-table-metric {
    border-color: #33445f;
    background: #111a2b;
}

[data-theme="dark"] .site-table-metric {
    border-color: #2f4d78;
    background: #0f1a2c;
}

[data-theme="dark"] .site-table-identity strong,
[data-theme="dark"] .site-table-metric > strong {
    color: #edf4ff;
}

[data-theme="dark"] .site-table-identity span,
[data-theme="dark"] .site-table-metric > span {
    color: #b6c8df;
}

[data-theme="dark"] .site-table-identity code {
    color: #a5c8ff;
    background: transparent;
}

[data-theme="dark"] .role-permission-summary {
    border-color: #33445f;
    background: #111a2b;
}

[data-theme="dark"] .role-permission-summary strong,
[data-theme="dark"] .role-permission-detail-title {
    color: #edf4ff;
}

[data-theme="dark"] .role-permission-summary span {
    color: #9fb0c7;
}

[data-theme="dark"] .role-permission-group-chip,
[data-theme="dark"] .role-permission-more {
    color: #d8e8ff;
    border-color: #34445f;
    background: #16233a;
}

[data-theme="dark"] .role-permission-group-chip strong,
[data-theme="dark"] .role-permission-detail-title strong {
    color: #b9d7ff;
    background: #1d3b69;
}

[data-theme="dark"] .role-permission-more {
    color: #8fc7ff;
    background: #102c46;
    border-color: #1d5f8f;
}

[data-theme="dark"] .role-permission-details {
    border-color: #33445f;
    background: #0f1a2c;
}

[data-theme="dark"] .role-permission-details summary {
    color: #8fc7ff;
}

[data-theme="dark"] .role-permission-details[open] summary {
    border-bottom-color: #33445f;
    background: #111a2b;
}

[data-theme="dark"] .role-permission-detail-group {
    border-color: #2c3c55;
    background: #111a2b;
}

[data-theme="dark"] .role-permission-chip {
    color: #d8e8ff;
    border-color: #27527f;
    background: #102c46;
}

[data-theme="dark"] .role-permission-chip small {
    color: #91a8c4;
}

[data-theme="dark"] .role-permission-empty {
    color: #9fb0c7;
    border-color: #34445f;
    background: #111a2b;
}

@media (max-width: 767.98px) {
    .c-main {
        padding-top: 4.7rem !important;
    }

    .admin-mobile-topbar {
        position: fixed;
        top: .55rem;
        left: .65rem;
        right: .65rem;
        z-index: 1040;
        min-height: 52px;
        display: flex;
        align-items: center;
        gap: .65rem;
        padding: .42rem .6rem;
        background: #ffffff;
        border: 1px solid #cbd9ec;
        border-radius: 1rem;
        box-shadow: 0 14px 34px rgba(18, 33, 63, .14);
        backdrop-filter: blur(12px);
    }

    .admin-mobile-menu-toggle {
        flex: 0 0 38px;
        width: 38px;
        height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        background: var(--cp-sidebar-active);
        border: 1px solid rgba(255, 255, 255, .18);
        border-radius: 999px;
        box-shadow: 0 8px 18px rgba(18, 33, 63, .18);
    }

    .admin-mobile-brand {
        min-width: 0;
    }

    .admin-mobile-title {
        color: #17233c;
        font-size: .92rem;
        font-weight: 700;
        line-height: 1.15;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .admin-mobile-user {
        display: flex;
        align-items: center;
        gap: .3rem;
        margin-top: .15rem;
        color: #667085;
        font-size: .75rem;
        font-weight: 600;
        line-height: 1.15;
    }

    .admin-mobile-user span {
        min-width: 0;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    [data-theme="dark"] .admin-mobile-topbar {
        background: var(--cp-sidebar-panel);
        border-color: var(--cp-sidebar-line);
        box-shadow: 0 16px 36px rgba(0, 0, 0, .36);
    }

    [data-theme="dark"] .admin-mobile-title {
        color: #edf4ff;
    }

    [data-theme="dark"] .admin-mobile-user {
        color: #a9b6cb;
    }

    [data-theme="dark"] .admin-mobile-menu-toggle {
        color: #edf4ff;
        background: var(--cp-sidebar-active);
        border-color: rgba(65, 214, 189, .2);
        box-shadow: 0 14px 30px rgba(0, 0, 0, .34);
    }

    .c-sidebar {
        z-index: 1035;
    }

    .admin-table-page {
        padding: .75rem .65rem .7rem;
    }

    .admin-action-bar {
        gap: .45rem;
    }

    .admin-action-bar .btn,
    .filter-actions .btn {
        min-width: 0;
        padding: .38rem .65rem;
        font-size: .78rem;
    }

    .admin-action-bar .admin-action-btn {
        flex: 1 1 150px;
        justify-content: center;
    }

    .admin-filter-panel > .card-header {
        padding-inline: .75rem;
    }

    #filter form.filter-form {
        padding: .75rem !important;
    }

    #filter .filterElement {
        width: 100%;
    }

    .table-toggle-bar {
        width: 100%;
        gap: .45rem !important;
        border-radius: .8rem;
        padding: .45rem;
        align-items: stretch;
    }

    .table-toggle-icon {
        display: none;
    }

    .table-toggle-item {
        flex: 1 1 100%;
        min-width: 0;
    }

    .table-toggle-item .toggle {
        width: 100% !important;
        min-width: 0;
    }

    .table-toggle-bar .toggle {
        height: 42px !important;
        min-height: 42px;
    }

    .table-toggle-bar .toggle .toggle-group {
        height: 100%;
        width: 200%;
    }

    .table-toggle-bar .toggle .btn {
        min-height: 40px;
        padding: .54rem .72rem;
        font-size: .76rem;
        white-space: nowrap;
        overflow: visible;
    }

    .table-toggle-bar .toggle .toggle-on,
    .table-toggle-bar .toggle .toggle-off {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: .34rem;
    }

    .table-toggle-bar .toggle .toggle-handle {
        min-height: 40px;
        width: 38px !important;
    }

    .admin-data-table {
        font-size: .78rem;
    }

    .group-data-table th:nth-child(5),
    .group-data-table td:nth-child(5) {
        min-width: 300px !important;
    }

    .group-data-table th:nth-child(6),
    .group-data-table td:nth-child(6) {
        min-width: 260px !important;
    }

    .group-data-table th:nth-child(7),
    .group-data-table td:nth-child(7) {
        min-width: 560px !important;
    }

    .group-summary-panel {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .group-detail-body {
        grid-template-columns: 1fr;
    }

    .group-site-grid {
        grid-template-columns: repeat(5, minmax(96px, 1fr));
        min-width: 540px;
    }

    .bank-account-data-table th:nth-child(4),
    .bank-account-data-table td:nth-child(4) {
        min-width: 300px !important;
    }

    .bank-account-data-table th:nth-child(5),
    .bank-account-data-table td:nth-child(5) {
        min-width: 280px !important;
    }

    .bank-account-data-table th:nth-child(6),
    .bank-account-data-table td:nth-child(6) {
        min-width: 310px !important;
    }

    .bank-account-data-table th:nth-child(8),
    .bank-account-data-table td:nth-child(8) {
        min-width: 240px !important;
    }

    .bank-account-site-grid {
        grid-template-columns: repeat(2, minmax(96px, 1fr));
        min-width: 220px;
    }

    .user-data-table th:nth-child(7),
    .user-data-table td:nth-child(7) {
        min-width: 560px !important;
    }

    .user-authorized-site-grid {
        grid-template-columns: repeat(5, minmax(96px, 1fr));
        min-width: 540px;
    }

    .site-data-table th:nth-child(3),
    .site-data-table td:nth-child(3) {
        min-width: 290px !important;
    }

    .site-data-table th:nth-child(4),
    .site-data-table td:nth-child(4) {
        min-width: 180px !important;
    }

    .site-data-table th:nth-child(5),
    .site-data-table td:nth-child(5),
    .site-data-table th:nth-child(6),
    .site-data-table td:nth-child(6) {
        min-width: 270px !important;
    }

    .site-data-table th:nth-child(7),
    .site-data-table td:nth-child(7) {
        min-width: 160px !important;
    }

    .site-data-table th:nth-child(8),
    .site-data-table td:nth-child(8) {
        min-width: 560px !important;
    }

    .site-group-grid {
        grid-template-columns: repeat(5, minmax(96px, 1fr));
        min-width: 540px;
    }

    table.datatable thead th,
    table.datatable thead td,
    .admin-data-table tbody td,
    .admin-data-table tbody th {
        padding: .4rem .46rem !important;
    }

    .dataTables_wrapper .dataTables_length,
    .dataTables_wrapper .dataTables_info,
    .dataTables_wrapper .dataTables_paginate {
        float: none;
        width: 100%;
        text-align: left;
    }

    .dataTables_wrapper .dataTables_paginate {
        display: flex;
        justify-content: center;
        margin-top: .5rem;
    }

    .dataTables_wrapper .pagination {
        justify-content: center;
        flex-wrap: wrap;
    }

    .dataTables_wrapper .pagination .page-link {
        min-height: 29px;
        min-width: 30px;
        padding: .34rem .52rem;
        font-size: .78rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .c-main {
        padding-top: 4.6rem !important;
    }

    .admin-mobile-topbar {
        position: fixed;
        top: .65rem;
        left: .85rem;
        right: .85rem;
        z-index: 1040;
        min-height: 52px;
        display: flex;
        align-items: center;
        gap: .7rem;
        padding: .42rem .65rem;
        background: #ffffff;
        border: 1px solid #cbd9ec;
        border-radius: 1rem;
        box-shadow: 0 14px 34px rgba(18, 33, 63, .13);
        backdrop-filter: blur(12px);
    }

    .admin-mobile-menu-toggle {
        flex: 0 0 40px;
        width: 40px;
        height: 40px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        background: var(--cp-sidebar-active);
        border: 1px solid rgba(255, 255, 255, .18);
        border-radius: 999px;
        box-shadow: 0 12px 28px rgba(18, 33, 63, .2);
    }

    .admin-mobile-brand {
        min-width: 0;
    }

    .admin-mobile-title {
        color: #17233c;
        font-size: .95rem;
        font-weight: 700;
        line-height: 1.15;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .admin-mobile-user {
        display: flex;
        align-items: center;
        gap: .3rem;
        margin-top: .15rem;
        color: #667085;
        font-size: .76rem;
        font-weight: 600;
        line-height: 1.15;
    }

    .admin-mobile-user span {
        min-width: 0;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    [data-theme="dark"] .admin-mobile-topbar {
        background: var(--cp-sidebar-panel);
        border-color: var(--cp-sidebar-line);
        box-shadow: 0 16px 36px rgba(0, 0, 0, .36);
    }

    [data-theme="dark"] .admin-mobile-title {
        color: #edf4ff;
    }

    [data-theme="dark"] .admin-mobile-user {
        color: #a9b6cb;
    }

    [data-theme="dark"] .admin-mobile-menu-toggle {
        color: #edf4ff;
        background: var(--cp-sidebar-active);
        border-color: rgba(65, 214, 189, .2);
        box-shadow: 0 14px 30px rgba(0, 0, 0, .34);
    }

    .admin-table-page {
        padding: .9rem;
    }

    .table-toggle-bar {
        max-width: 100%;
    }
}

@media (max-width: 991.98px) {
    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }

    body.admin-sidebar-open {
        overflow: hidden;
    }

    .c-wrapper,
    .c-body,
    .c-main {
        min-width: 0;
        max-width: 100%;
    }

    .admin-mobile-topbar {
        position: fixed !important;
        z-index: 1030 !important;
        transform: translateY(0);
        transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
        will-change: opacity, transform;
    }

    body.admin-sidebar-open .admin-mobile-topbar {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transform: translateY(-12px);
    }

    .admin-mobile-sidebar-backdrop {
        position: fixed;
        inset: 0;
        z-index: 1038;
        display: none;
        background: rgba(15, 23, 42, .38);
        backdrop-filter: blur(2px);
    }

    .admin-mobile-sidebar-backdrop.is-visible {
        display: block;
    }

    .c-sidebar {
        z-index: 1045 !important;
        max-width: min(84vw, 280px);
        box-shadow: 24px 0 60px rgba(15, 23, 42, .22);
    }

    .c-sidebar:not(.c-sidebar-show) {
        box-shadow: none;
    }

    [data-theme="dark"] .admin-mobile-sidebar-backdrop {
        background: rgba(2, 6, 23, .58);
    }

    .card,
    .admin-form-card,
    .admin-detail-card,
    .admin-report-card,
    .admin-dashboard-card,
    .group-limit-card,
    .admin-table-page {
        max-width: 100%;
    }

    .card,
    .admin-form-card,
    .admin-detail-card,
    .admin-report-card,
    .admin-dashboard-card {
        overflow: hidden;
    }

    .card-body,
    .admin-form-page,
    .admin-detail-page,
    .admin-report-page,
    .admin-table-page,
    .admin-form-section,
    .admin-detail-section {
        min-width: 0;
    }

    .admin-action-bar,
    .filter-actions,
    .admin-form-actions,
    .admin-detail-actions,
    .admin-report-actions {
        flex-wrap: wrap;
        min-width: 0;
    }

    .admin-action-bar .btn,
    .filter-actions .btn,
    .admin-form-actions .btn,
    .admin-detail-actions .btn,
    .admin-report-actions .btn {
        white-space: nowrap;
    }

    .table-responsive,
    .dataTables_wrapper,
    .dataTables_scroll,
    .dataTables_scrollHead,
    .dataTables_scrollBody {
        max-width: 100%;
    }

    img,
    canvas,
    svg {
        max-width: 100%;
    }

    .admin-table-page > .card,
    .admin-filter-panel,
    .dataTables_wrapper .dataTables_scroll {
        border-radius: .7rem;
    }

    .dataTables_wrapper .dataTables_scroll {
        overflow: hidden;
    }

    .dataTables_wrapper .dataTables_scrollHead,
    .dataTables_wrapper .dataTables_scrollHeadInner {
        overflow: hidden !important;
        border-bottom: 0 !important;
    }

    .dataTables_wrapper .dataTables_scrollHead table,
    .dataTables_wrapper .dataTables_scrollBody table {
        margin: 0 !important;
    }

    .dataTables_wrapper .dataTables_scrollBody {
        border-top: 0 !important;
    }

    .admin-table-page .dataTables_wrapper > .row:last-child {
        row-gap: .35rem;
    }

    .admin-table-page .dataTables_paginate {
        display: flex;
        justify-content: center;
    }
}

.bg-success {
    --bs-table-color: #08381d;
    --bs-table-bg: #dff8e8;
    --bs-table-striped-bg: #d6f2e1;
    --bs-table-hover-bg: #c9ecd8;
    color: #08381d !important;
    background-color: #dff8e8 !important;
    border-color: #27ae60 !important;
}

.bg-danger {
    --bs-table-color: #68131d;
    --bs-table-bg: #ffe2e8;
    --bs-table-striped-bg: #ffd9e0;
    --bs-table-hover-bg: #ffcbd5;
    color: #68131d !important;
    background-color: #ffe2e8 !important;
    border-color: #dc3545 !important;
}

.bg-warning {
    --bs-table-color: #4a3100;
    --bs-table-bg: #fff0bd;
    --bs-table-striped-bg: #ffe8a3;
    --bs-table-hover-bg: #ffdf85;
    color: #4a3100 !important;
    background-color: #fff0bd !important;
    border-color: #ffc107 !important;
}

.bg-info {
    --bs-table-color: #063144;
    --bs-table-bg: #d5f2fb;
    --bs-table-striped-bg: #c4eaf6;
    --bs-table-hover-bg: #afe0ef;
    color: #063144 !important;
    background-color: #d5f2fb !important;
    border-color: #0dcaf0 !important;
}

.bg-primary {
    --bs-table-color: #09275d;
    --bs-table-bg: #dbe8ff;
    --bs-table-striped-bg: #ccddfa;
    --bs-table-hover-bg: #bbd0f3;
    color: #09275d !important;
    background-color: #dbe8ff !important;
    border-color: #0d6efd !important;
}

.bg-secondary {
    --bs-table-color: #202832;
    --bs-table-bg: #e5e9ef;
    --bs-table-striped-bg: #d8dde5;
    --bs-table-hover-bg: #cbd2dc;
    color: #202832 !important;
    background-color: #e5e9ef !important;
    border-color: #6c757d !important;
}

[data-theme="dark"] .bg-success {
    --bs-table-color: #e4ffef;
    --bs-table-bg: #103322;
    --bs-table-striped-bg: #153b28;
    --bs-table-hover-bg: #194830;
    color: #e4ffef !important;
    background-color: #103322 !important;
}

[data-theme="dark"] .bg-danger {
    --bs-table-color: #ffe7ea;
    --bs-table-bg: #42141d;
    --bs-table-striped-bg: #4e1823;
    --bs-table-hover-bg: #5d1f2c;
    color: #ffe7ea !important;
    background-color: #42141d !important;
}

[data-theme="dark"] .bg-warning {
    --bs-table-color: #fff6db;
    --bs-table-bg: #4d3608;
    --bs-table-striped-bg: #5b410d;
    --bs-table-hover-bg: #6d4d10;
    color: #fff6db !important;
    background-color: #4d3608 !important;
}

[data-theme="dark"] .bg-info {
    --bs-table-color: #e0f8ff;
    --bs-table-bg: #0b3546;
    --bs-table-striped-bg: #0f4255;
    --bs-table-hover-bg: #124f66;
    color: #e0f8ff !important;
    background-color: #0b3546 !important;
}

[data-theme="dark"] .bg-primary {
    --bs-table-color: #edf4ff;
    --bs-table-bg: #15386f;
    --bs-table-striped-bg: #1b427e;
    --bs-table-hover-bg: #224f93;
    color: #edf4ff !important;
    background-color: #15386f !important;
}

[data-theme="dark"] .bg-secondary {
    --bs-table-color: #eef2f7;
    --bs-table-bg: #303947;
    --bs-table-striped-bg: #384454;
    --bs-table-hover-bg: #465366;
    color: #eef2f7 !important;
    background-color: #303947 !important;
}

.c-main > .card {
    /* background-color: transparent; */
}

.input-group-text-wrap {
    display: flex;
}

.input-group-text-wrap .input-group-text {
    border-radius: .5rem 0 0 .5rem;
}

.form-control,
.form-select,
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple,
.select2-container--classic .select2-selection--single,
.select2-container--classic .select2-selection--multiple {
    border-color: var(--cp-border);
    border-radius: .55rem;
}

[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select,
[data-theme="dark"] select.form-control,
[data-theme="dark"] .select2-container--default .select2-selection--single,
[data-theme="dark"] .select2-container--default .select2-selection--multiple,
[data-theme="dark"] .select2-container--classic .select2-selection--single,
[data-theme="dark"] .select2-container--classic .select2-selection--multiple {
    color: #edf4ff;
    background-color: #111a2b;
    border-color: var(--cp-border);
}

[data-theme="dark"] select.form-control option,
[data-theme="dark"] .form-select option {
    color: #edf4ff;
    background-color: #111a2b;
}

[data-theme="dark"] select.form-control:disabled,
[data-theme="dark"] .form-select:disabled,
[data-theme="dark"] .select2-container--default.select2-container--disabled .select2-selection--single,
[data-theme="dark"] .select2-container--classic.select2-container--disabled .select2-selection--single {
    color: #a8b6cc;
    background-color: #111a2b;
    opacity: 1;
}

[data-theme="dark"] .select2-dropdown,
[data-theme="dark"] .select2-results__option,
[data-theme="dark"] .select2-search__field {
    color: #edf4ff;
    background-color: #111a2b;
    border-color: var(--cp-border);
}

[data-theme="dark"] .select2-container--default .select2-results__option--highlighted[aria-selected],
[data-theme="dark"] .select2-container--classic .select2-results__option--highlighted[aria-selected] {
    color: #fff;
    background-color: #2f6fe4;
}

.form-control:focus,
.form-select:focus {
    border-color: rgba(38, 86, 217, .55);
    box-shadow: 0 0 0 .2rem rgba(38, 86, 217, .12);
}

.badge {
    font-weight: 700;
    letter-spacing: .01em;
}

.page-item.active .page-link {
    background-color: var(--cp-primary);
    border-color: var(--cp-primary);
}

.page-link {
    color: var(--cp-primary);
    border-color: var(--cp-border);
}

[data-theme="dark"] .page-link {
    color: #b8d4ff;
    background-color: #111a2b;
    border-color: var(--cp-border);
}

[data-theme="dark"] .page-item.disabled .page-link {
    color: #72809a;
    background-color: #111a2b;
    border-color: var(--cp-border);
}

[data-theme="dark"] .text-muted,
[data-theme="dark"] small,
[data-theme="dark"] .form-text {
    color: var(--cp-muted) !important;
}

[data-theme="dark"] pre,
[data-theme="dark"] code {
    color: #d9e6ff;
    background-color: #0f1a2c;
}

.admin-form-card {
    overflow: hidden;
    border-color: var(--cp-border);
}

.admin-form-page {
    padding: 1rem;
}

.admin-form-header {
    display: flex;
    align-items: center;
    gap: .85rem;
    padding: .95rem 1rem 1.05rem;
    margin-bottom: .95rem;
    border: 1px solid var(--cp-border);
    border-radius: .85rem;
    background: #f8fbff;
}

.admin-form-title-icon {
    width: 42px;
    height: 42px;
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    border: 1px solid #cfe0f7;
    border-radius: .75rem;
    color: #2656d9;
    background: #eef5ff;
}

.admin-form-header h1 {
    margin: 0;
    color: #14213a;
    font-size: 1.16rem;
    font-weight: 750;
    line-height: 1.25;
}

.admin-form-header p,
.admin-form-section-header p,
.admin-limit-card-header p {
    margin: .2rem 0 0;
    color: var(--cp-muted);
    font-size: .82rem;
    line-height: 1.45;
}

.admin-form {
    display: flex;
    flex-direction: column;
    gap: .9rem;
}

.admin-form-section {
    padding: .95rem;
    border: 1px solid var(--cp-border);
    border-radius: .85rem;
    background: #fff;
}

.admin-form-section > h2 {
    margin: 0;
    color: #17233c;
    font-size: .98rem;
    font-weight: 740;
    line-height: 1.25;
}

.admin-form-section > p {
    margin: .2rem 0 .85rem;
    padding-bottom: .7rem;
    border-bottom: 1px solid #e6edf7;
    color: var(--cp-muted);
    font-size: .82rem;
    line-height: 1.45;
}

.admin-form-section-header {
    display: flex;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .85rem;
    padding-bottom: .7rem;
    border-bottom: 1px solid #e6edf7;
}

.admin-form-section-header h2,
.admin-limit-card-header h3 {
    margin: 0;
    color: #17233c;
    font-size: .98rem;
    font-weight: 740;
    line-height: 1.25;
}

.admin-form-grid,
.admin-limit-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem 1rem;
    align-items: start;
}

.admin-form-grid-span {
    grid-column: 1 / -1;
}

.admin-form-grid .form-group,
.admin-limit-card .form-group {
    margin-bottom: 0;
}

.group-finance-layout {
    display: grid;
    gap: .85rem;
}

.group-finance-card {
    padding: .85rem;
    border: 1px solid #d9e5f5;
    border-radius: .75rem;
    background: #f8fbff;
}

.group-finance-card-header {
    margin-bottom: .8rem;
    padding-bottom: .65rem;
    border-bottom: 1px solid #e0e9f6;
}

.group-finance-card-header h3 {
    margin: 0;
    color: #17233c;
    font-size: .9rem;
    font-weight: 720;
    line-height: 1.25;
}

.group-finance-card-header p {
    margin: .18rem 0 0;
    color: var(--cp-muted);
    font-size: .76rem;
    line-height: 1.45;
}

.group-finance-toggle-card {
    max-width: 580px;
}

.group-finance-toggle-grid {
    grid-template-columns: 1fr;
}

.group-finance-toggle-card .admin-toggle-card {
    min-height: 66px;
}

.admin-form .form-group,
.admin-report-filter-grid .form-group,
.admin-report-filter-body .form-group {
    min-width: 0;
}

.admin-form label {
    margin-bottom: .35rem;
    color: #18243b;
    font-size: .8rem;
    font-weight: 650;
}

.admin-form .required::after {
    content: " *";
    color: #dc3545;
}

.admin-form .form-text {
    display: block;
    margin-top: .35rem;
    font-size: .74rem;
}

.admin-field-head {
    min-height: 1.75rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .4rem;
}

.admin-field-head label,
.admin-field-head .form-label {
    margin-bottom: 0 !important;
}

.admin-field-tools,
.admin-select-actions,
.admin-report-select-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .35rem;
}

.admin-field-tools .btn,
.admin-select-actions .btn,
.admin-report-select-actions .btn {
    min-height: 1.55rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .18rem .5rem;
    border-radius: .42rem !important;
    font-size: .72rem;
    font-weight: 650;
    line-height: 1.1;
    letter-spacing: 0;
    white-space: nowrap;
}

.admin-form .form-control,
.admin-form .form-select,
.admin-report-filter-body .form-control,
.admin-report-filter-body .form-select,
.admin-report-filter-grid .form-control,
.admin-report-filter-grid .form-select,
.admin-form .select2-container--default .select2-selection--single,
.admin-form .select2-container--classic .select2-selection--single,
.admin-report-filter-body .select2-container--default .select2-selection--single,
.admin-report-filter-body .select2-container--classic .select2-selection--single,
.admin-report-filter-grid .select2-container--default .select2-selection--single,
.admin-report-filter-grid .select2-container--classic .select2-selection--single {
    min-height: 38px;
}

.admin-form .select2-container--default .select2-selection--single,
.admin-form .select2-container--classic .select2-selection--single,
.admin-report-filter-body .select2-container--default .select2-selection--single,
.admin-report-filter-body .select2-container--classic .select2-selection--single,
.admin-report-filter-grid .select2-container--default .select2-selection--single,
.admin-report-filter-grid .select2-container--classic .select2-selection--single {
    display: flex;
    align-items: center;
}

.admin-form .select2-container--default .select2-selection--multiple,
.admin-form .select2-container--classic .select2-selection--multiple,
.admin-report-filter-body .select2-container--default .select2-selection--multiple,
.admin-report-filter-body .select2-container--classic .select2-selection--multiple,
.admin-report-filter-grid .select2-container--default .select2-selection--multiple,
.admin-report-filter-grid .select2-container--classic .select2-selection--multiple {
    min-height: 38px;
    padding: .18rem .4rem;
}

.admin-form .select2-container,
.admin-report-filter-body .select2-container,
.admin-report-filter-grid .select2-container {
    width: 100% !important;
}

.admin-toggle-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: .65rem;
}

.group-settings-toggle-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.group-settings-toggle-grid .admin-toggle-card {
    flex-direction: column;
    align-items: flex-start;
}

.group-settings-toggle-grid .admin-toggle-card > div {
    min-width: 0;
}

.group-settings-toggle-grid .admin-toggle-card > div:last-child {
    flex: 0 0 auto;
}

.admin-toggle-card {
    min-height: 58px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .7rem .75rem;
    border: 1px solid #dbe7f6;
    border-radius: .8rem;
    background: #fbfdff;
}

.admin-toggle-card strong {
    display: block;
    color: #17233c;
    font-size: .8rem;
    font-weight: 500;
}

.admin-toggle-card small {
    display: block;
    margin-top: .15rem;
    color: var(--cp-muted);
    font-size: .72rem;
    line-height: 1.35;
}

.admin-toggle-card .toggle,
.admin-limit-toggle .toggle {
    flex: 0 0 auto;
    max-width: 190px;
}

.bank-account-status-section {
    width: 100%;
    max-width: 560px;
    align-self: flex-start;
}

.bank-account-status-toggle-grid {
    grid-template-columns: minmax(0, 1fr);
}

.bank-account-status-toggle-grid .admin-toggle-card {
    min-height: 54px;
}

.bank-account-integration-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: stretch;
}

.bank-account-integration-grid .admin-form-note {
    grid-column: 1 / -1;
}

.bank-account-integration-grid .admin-toggle-card {
    min-height: 70px;
    align-items: flex-start;
}

.bank-account-integration-grid .admin-toggle-card > div {
    min-width: 0;
}

.admin-limit-grid {
    align-items: stretch;
}

.admin-limit-card {
    display: flex;
    flex-direction: column;
    gap: .75rem;
    padding: .85rem;
    border: 1px solid #dbe7f6;
    border-radius: .8rem;
    background: #fbfdff;
}

.admin-limit-card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .9rem;
}

.admin-form-note {
    padding: .65rem .75rem;
    border: 1px solid #e2eaf5;
    border-radius: .65rem;
    color: #34435c;
    background: #f8fbff;
    font-size: .78rem;
    line-height: 1.45;
}

.admin-select-actions {
    margin-bottom: .45rem;
}

.admin-field-head .admin-select-actions,
.admin-field-head .admin-report-select-actions {
    margin-bottom: 0;
}

.admin-form-alert {
    grid-column: 1 / -1;
    margin-bottom: 0;
}

.admin-adjust-callback-notice {
    margin-bottom: 1rem;
}

.admin-form-actions {
    display: flex;
    justify-content: flex-start;
    padding: .85rem .95rem;
    border: 1px solid var(--cp-border);
    border-radius: .85rem;
    background: #f8fbff;
}

.admin-form-submit {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    min-height: 38px;
    padding-inline: 1rem;
    border-radius: .55rem;
    font-size: .84rem;
    font-weight: 650;
}

[data-theme="dark"] .admin-form-header,
[data-theme="dark"] .admin-form-section,
[data-theme="dark"] .admin-toggle-card,
[data-theme="dark"] .admin-limit-card,
[data-theme="dark"] .admin-form-actions {
    border-color: var(--cp-border);
    background: #111a2b;
}

[data-theme="dark"] .admin-form-title-icon {
    color: #8bbcff;
    background: #17243a;
    border-color: #34445f;
}

[data-theme="dark"] .admin-form-header h1,
[data-theme="dark"] .admin-form-section-header h2,
[data-theme="dark"] .admin-limit-card-header h3,
[data-theme="dark"] .admin-toggle-card strong,
[data-theme="dark"] .admin-form label {
    color: #edf4ff;
}

[data-theme="dark"] .admin-form-section-header {
    border-bottom-color: #263653;
}

[data-theme="dark"] .admin-form-section > h2 {
    color: #edf4ff;
}

[data-theme="dark"] .admin-form-section > p {
    border-bottom-color: #263653;
    color: var(--cp-muted);
}

[data-theme="dark"] .group-finance-card {
    border-color: #263653;
    background: #0f1a2c;
}

[data-theme="dark"] .group-finance-card-header {
    border-bottom-color: #263653;
}

[data-theme="dark"] .group-finance-card-header h3 {
    color: #edf4ff;
}

[data-theme="dark"] .admin-form-note {
    color: #d6e3f7;
    background: #0f1a2c;
    border-color: #263653;
}

.integration-document-card {
    background: var(--cp-surface);
}

.integration-document-page {
    display: flex;
    flex-direction: column;
    gap: .9rem;
}

.integration-document-header,
.integration-document-note {
    margin-bottom: 0;
}

.integration-document-note {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
}

.integration-document-note i {
    margin-top: .12rem;
    color: #2656d9;
}

.integration-document-note div {
    display: grid;
    gap: .15rem;
}

.integration-document-flow-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
}

.integration-document-flow-card {
    display: flex;
    min-height: 94px;
    flex-direction: column;
    justify-content: center;
    gap: .35rem;
    padding: .9rem;
    border: 1px solid #d8e4f5;
    border-radius: .85rem;
    color: #23304b;
    background: #f8fbff;
    cursor: pointer;
    transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.integration-document-flow-title {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    font-weight: 720;
}

.integration-document-flow-title i {
    color: #2656d9;
}

.integration-document-flow-copy {
    color: var(--cp-muted);
    font-size: .8rem;
    line-height: 1.45;
}

.integration-document-flow-options .btn-check:focus + .integration-document-flow-card,
.integration-document-flow-options .btn-check:checked + .integration-document-flow-card {
    border-color: #5b8def;
    background: #eef5ff;
    box-shadow: 0 0 0 .18rem rgba(38, 86, 217, .13);
}

.integration-document-empty {
    display: flex;
    align-items: center;
    gap: .55rem;
}

.integration-document-actions {
    margin-top: 0;
}

.integration-document-output {
    min-height: 132px;
    resize: vertical;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size: .9rem;
    line-height: 1.55;
}

.integration-document-copy-fallback {
    position: fixed;
    top: -9999px;
    left: -9999px;
    opacity: 0;
}

[data-theme="dark"] .integration-document-flow-card {
    border-color: #263653;
    color: #edf4ff;
    background: #0f1a2c;
}

[data-theme="dark"] .integration-document-flow-title i,
[data-theme="dark"] .integration-document-note i {
    color: #8bbcff;
}

[data-theme="dark"] .integration-document-flow-options .btn-check:focus + .integration-document-flow-card,
[data-theme="dark"] .integration-document-flow-options .btn-check:checked + .integration-document-flow-card {
    border-color: #5f8ff5;
    background: #17243a;
    box-shadow: 0 0 0 .18rem rgba(139, 188, 255, .14);
}

@media (max-width: 1199.98px) {
    .group-settings-toggle-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bank-account-integration-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .admin-form-page {
        padding: .85rem;
    }

    .admin-form-grid,
    .admin-limit-grid {
        grid-template-columns: 1fr;
    }

    .integration-document-flow-options {
        grid-template-columns: 1fr;
    }

    .group-finance-toggle-card {
        max-width: none;
    }

    .bank-account-status-section {
        max-width: none;
    }

    .bank-account-integration-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .group-settings-toggle-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 575.98px) {
    .admin-form-header {
        align-items: flex-start;
        padding: .85rem;
    }

    .admin-field-head {
        min-height: 0;
        align-items: flex-start;
        flex-direction: column;
        gap: .35rem;
    }

    .admin-field-tools,
    .admin-select-actions,
    .admin-report-select-actions {
        justify-content: flex-start;
    }

    .admin-form-section,
    .admin-form-actions {
        padding: .8rem;
    }

    .admin-toggle-card,
    .admin-limit-card-header {
        align-items: stretch;
        flex-direction: column;
    }

    .admin-toggle-card .toggle,
    .admin-limit-toggle .toggle {
        max-width: none;
    }

    .bank-account-integration-grid {
        grid-template-columns: 1fr;
    }

    .admin-form-actions {
        justify-content: flex-start;
    }

    .admin-form-submit {
        width: auto;
        justify-content: flex-start;
    }
}

.system-config-card {
    background: var(--cp-surface);
}

.system-config-page {
    gap: .9rem;
}

.system-config-header {
    align-items: flex-start;
    margin-bottom: 0;
}

.system-config-title {
    min-width: 0;
    flex: 1 1 auto;
}

.system-config-impact-note {
    margin-bottom: 0;
}

.system-config-ai-provision {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: .75rem;
    padding: .8rem .9rem;
    border: 1px solid #bfdbfe;
    border-radius: 8px;
    background: #eff6ff;
}

.system-config-ai-provision-copy {
    min-width: 0;
    display: flex;
    align-items: flex-start;
    gap: .7rem;
}

.system-config-ai-provision-icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 8px;
    color: #1d4ed8;
    background: #dbeafe;
}

.system-config-ai-provision-copy strong,
.system-config-ai-provision-copy span,
.system-config-ai-provision-copy small {
    display: block;
}

.system-config-ai-provision-copy strong {
    color: #17233c;
    font-size: .82rem;
    font-weight: 750;
}

.system-config-ai-provision-copy span,
.system-config-ai-provision-copy small {
    margin-top: .16rem;
    color: var(--cp-muted);
    font-size: .74rem;
    line-height: 1.42;
}

.system-config-ai-provision-copy code {
    color: #1e3a8a;
    font-size: .72rem;
}

.system-config-ai-provision-button {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
}

.system-config-tabs {
    margin: 0;
}

.system-config-tabs .nav-link {
    min-width: 0;
}

.system-config-tabs .nav-link span {
    overflow: hidden;
    text-overflow: ellipsis;
}

.system-config-tab-content {
    min-width: 0;
}

.system-config-tab-intro {
    margin-bottom: .9rem;
    padding: .9rem 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: #f8fbff;
}

.system-config-tab-intro h2 {
    margin: 0;
    color: #14213a;
    font-size: 1rem;
    font-weight: 750;
    line-height: 1.25;
}

.system-config-tab-intro p {
    margin: .24rem 0 0;
    color: var(--cp-muted);
    font-size: .82rem;
    line-height: 1.45;
}

.system-config-section + .system-config-section {
    margin-top: .9rem;
}

.system-config-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
    align-items: stretch;
}

.system-config-setting {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: .75rem;
    padding: .85rem;
    border: 1px solid #dbe7f6;
    border-radius: 8px;
    background: #fbfdff;
}

.system-config-setting--wide {
    grid-column: 1 / -1;
}

.system-config-setting-copy {
    display: grid;
    gap: .26rem;
    min-width: 0;
}

.system-config-setting-copy strong {
    color: #17233c;
    font-size: .86rem;
    font-weight: 750;
    line-height: 1.3;
}

.system-config-select-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    margin-top: .5rem;
}

.system-config-select-toolbar .btn {
    min-height: 30px;
}

.system-config-effect,
.system-config-example,
.system-config-save-copy span {
    display: block;
    color: var(--cp-muted);
    font-size: .76rem;
    line-height: 1.42;
}

.system-config-example {
    color: #49627f;
}

.system-config-toggle-card {
    min-height: 56px;
    padding: .62rem .7rem;
    border-color: #e2eaf5;
    background: #fff;
}

.system-config-toggle-card > div {
    min-width: 0;
}

.system-config-toggle-card .toggle {
    flex: 0 0 auto;
    max-width: 148px;
}

.system-config-toggle-card .toggle,
.system-config-toggle-card .toggle-group {
    min-width: 112px;
}

.system-config-inline-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .7rem;
}

.system-config-inline-fields .system-config-toggle-card,
.system-config-inline-fields .form-group {
    min-width: 0;
}

.system-config-link-row {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-top: .65rem;
}

.system-config-link-row .btn,
.system-config-save-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
}

.system-config-algorithm-tools {
    display: grid;
    gap: .5rem;
    margin-top: .65rem;
    padding: .65rem;
    border: 1px solid #dbe7f6;
    border-left: 3px solid #3b82f6;
    border-radius: 7px;
    background: #f6faff;
}

.system-config-algorithm-tools--amount {
    border-left-color: #0f9f8f;
}

.system-config-algorithm-tools[hidden] {
    display: none !important;
}

.system-config-algorithm-tools .btn.disabled {
    pointer-events: none;
    opacity: .55;
}

.system-config-source-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
}

.system-config-source-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: .2rem .65rem;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 700;
    line-height: 1.2;
}

.system-config-source-badge--database {
    color: #14532d;
    background: #dcfce7;
    border-color: #86efac;
}

.system-config-source-badge--env {
    color: #92400e;
    background: #fef3c7;
    border-color: #fcd34d;
}

.system-config-source-badge--undefined {
    color: #9f1239;
    background: #ffe4e6;
    border-color: #fda4af;
}

.system-config-info-strip {
    display: flex;
    align-items: flex-start;
    gap: .7rem;
    padding: .75rem .8rem;
    border: 1px solid #d8e5f4;
    border-radius: 8px;
    background: #f6fbff;
}

.system-config-info-strip i {
    margin-top: .1rem;
    color: #1d4ed8;
}

.system-config-info-strip strong {
    display: block;
    color: #17233c;
    font-size: .8rem;
    font-weight: 750;
}

.system-config-info-strip span {
    display: block;
    color: var(--cp-muted);
    font-size: .75rem;
    line-height: 1.45;
}

.system-config-message-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.system-config-save-bar {
    position: sticky;
    bottom: .75rem;
    z-index: 4;
    align-items: center;
    justify-content: space-between;
    gap: .9rem;
    box-shadow: 0 12px 28px rgba(18, 33, 63, .08);
}

.system-config-save-copy {
    display: grid;
    gap: .12rem;
    min-width: 0;
}

.system-config-save-copy strong {
    color: #17233c;
    font-size: .84rem;
    font-weight: 750;
}

[data-theme="dark"] .system-config-page {
    color: #e6edf7;
}

[data-theme="dark"] .system-config-tabs {
    border-color: var(--cp-border);
    background: #111a2b;
}

[data-theme="dark"] .system-config-tab-intro,
[data-theme="dark"] .system-config-setting,
[data-theme="dark"] .system-config-toggle-card,
[data-theme="dark"] .system-config-info-strip,
[data-theme="dark"] .system-config-algorithm-tools {
    border-color: #263653;
    background: #0f1a2c;
}

[data-theme="dark"] .system-config-ai-provision {
    border-color: #315273;
    background: #10233c;
}

[data-theme="dark"] .system-config-ai-provision-icon {
    color: #bfdbfe;
    background: #1e3a5f;
}

[data-theme="dark"] .system-config-ai-provision-copy strong {
    color: #edf4ff;
}

[data-theme="dark"] .system-config-ai-provision-copy code {
    color: #bfdbfe;
}

[data-theme="dark"] .system-config-tab-intro h2,
[data-theme="dark"] .system-config-setting-copy strong,
[data-theme="dark"] .system-config-toggle-card strong,
[data-theme="dark"] .system-config-info-strip strong,
[data-theme="dark"] .system-config-save-copy strong {
    color: #edf4ff;
}

[data-theme="dark"] .system-config-example {
    color: #b8c7dc;
}

[data-theme="dark"] .system-config-source-badge--database {
    color: #d1fae5;
    background: rgba(22, 101, 52, .35);
    border-color: rgba(74, 222, 128, .45);
}

[data-theme="dark"] .system-config-source-badge--env {
    color: #fde68a;
    background: rgba(146, 64, 14, .35);
    border-color: rgba(250, 204, 21, .35);
}

[data-theme="dark"] .system-config-source-badge--undefined {
    color: #fecdd3;
    background: rgba(159, 18, 57, .3);
    border-color: rgba(251, 113, 133, .35);
}

[data-theme="dark"] .system-config-info-strip i {
    color: #93c5fd;
}

.system-config-section .system-config-info-strip + .system-config-message-grid {
    margin-top: .8rem;
}

[data-theme="dark"] .system-config-save-bar {
    box-shadow: 0 16px 36px rgba(0, 0, 0, .28);
}

@media (max-width: 991.98px) {
    .system-config-header {
        flex-wrap: wrap;
    }

    .system-config-grid,
    .system-config-inline-fields,
    .system-config-message-grid {
        grid-template-columns: 1fr;
    }

    .system-config-save-bar {
        position: static;
    }
}

@media (max-width: 575.98px) {
    .system-config-tabs .nav-link {
        max-width: 210px;
        padding-inline: .6rem;
    }

    .system-config-tab-intro,
    .system-config-setting {
        padding: .75rem;
    }

    .system-config-toggle-card {
        align-items: stretch;
        flex-direction: column;
    }

    .system-config-source-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .system-config-toggle-card .toggle {
        max-width: none;
    }

    .system-config-save-bar {
        align-items: stretch;
        flex-direction: column;
    }

    .system-config-ai-provision {
        align-items: stretch;
        flex-direction: column;
    }

    .system-config-ai-provision-button {
        width: 100%;
    }

    .system-config-save-button {
        width: 100%;
    }
}

.login-page {
    min-height: 100vh;
    background: #eef4fb;
}

.login-page .c-app {
    background: transparent;
    min-height: 100vh;
}

.login-page .container {
    max-width: none;
    padding: 24px;
}

.auth-shell {
    min-height: calc(100vh - 48px);
    display: flex;
    align-items: center;
    justify-content: center;
}

.auth-card {
    width: min(100%, 440px);
    padding: 24px;
    border: 1px solid #d7e3f4;
    border-radius: 16px;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 24px 70px rgba(15, 23, 42, .14);
    backdrop-filter: blur(16px);
}

.auth-card-compact {
    width: min(100%, 420px);
}

.auth-card-wide {
    width: min(100%, 520px);
}

.auth-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-bottom: 18px;
    margin-bottom: 18px;
    border-bottom: 1px solid #e2e8f0;
}

.auth-brand-mark {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    color: #0f766e;
    background: #ccfbf1;
    border: 1px solid #99f6e4;
    font-size: 18px;
}

.auth-brand-mark-warning {
    color: #b45309;
    background: #fef3c7;
    border-color: #fde68a;
}

.auth-brand h1 {
    margin: 0 0 2px;
    color: #0f172a;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: 0;
}

.auth-brand p {
    margin: 0;
    color: #64748b;
    font-size: 12px;
    font-weight: 600;
}

.auth-card-header {
    margin-bottom: 18px;
}

.auth-kicker {
    display: inline-flex;
    align-items: center;
    margin-bottom: 6px;
    color: #0f766e;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.auth-card-header h2 {
    margin: 0 0 6px;
    color: #0f172a;
    font-size: 24px;
    font-weight: 800;
    letter-spacing: 0;
}

.auth-card-header p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.5;
}

.auth-alert {
    color: #075985;
    background: #e0f2fe;
    border-color: #bae6fd;
    border-radius: 12px;
    font-size: 13px;
}

.auth-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.auth-field .form-label {
    margin-bottom: 7px;
    color: #344054;
    font-size: 13px;
    font-weight: 700;
}

.auth-input-group {
    display: flex;
    align-items: stretch;
    border: 1px solid #cbd7ea;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.auth-input-group:focus-within {
    border-color: #38bdf8;
    box-shadow: 0 0 0 4px rgba(56, 189, 248, .16);
}

.auth-input-group > span {
    width: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #2563eb;
    background: #f1f6ff;
    border-right: 1px solid #dbe5f2;
}

.auth-input-group .form-control {
    min-height: 46px;
    color: #0f172a;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.auth-code-group .form-control {
    font-size: 20px;
    font-weight: 800;
    letter-spacing: .18em;
}

.auth-submit {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 4px;
    color: #fff !important;
    background: #2563eb;
    border: 1px solid #2563eb;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 14px 30px rgba(37, 99, 235, .22);
}

.auth-submit:hover {
    background: #1d4ed8;
    border-color: #1d4ed8;
}

.auth-qr-panel {
    display: flex;
    justify-content: center;
    padding: 16px;
    margin-bottom: 14px;
    border: 1px solid #dbe5f2;
    border-radius: 12px;
    background: #f8fbff;
}

.auth-qr-panel img {
    width: min(100%, 220px);
    border-radius: 8px;
}

.auth-manual-key {
    margin-bottom: 18px;
}

.auth-manual-key label {
    display: block;
    margin-bottom: 7px;
    color: #344054;
    font-size: 12px;
    font-weight: 700;
}

.auth-secret-control {
    display: flex;
    align-items: stretch;
    border: 1px solid #cbd7ea;
    border-radius: 11px;
    background: #fff;
    overflow: hidden;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.auth-secret-control:focus-within {
    border-color: #38bdf8;
    box-shadow: 0 0 0 4px rgba(56, 189, 248, .16);
}

.auth-secret-value {
    min-width: 0;
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    padding: 10px 12px;
    color: #0f172a;
    background: transparent;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1.35;
    overflow-wrap: anywhere;
    user-select: all;
}

.auth-secret-value:focus {
    outline: 0;
}

.auth-copy-button {
    min-width: 104px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 8px 12px;
    color: #1d4ed8;
    background: #eff6ff;
    border: 0;
    border-left: 1px solid #cbd7ea;
    border-radius: 0;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}

.auth-copy-button:hover,
.auth-copy-button:focus {
    color: #1e40af;
    background: #dbeafe;
}

.auth-copy-button.is-copied {
    color: #166534;
    background: #dcfce7;
}

.auth-copy-button.is-copy-error {
    color: #9a3412;
    background: #ffedd5;
}

[data-theme="dark"] .login-page {
    background: #06101f;
}

[data-theme="dark"] .auth-card {
    background: rgba(15, 23, 42, .94);
    border-color: #28405f;
    box-shadow: 0 24px 80px rgba(0, 0, 0, .36);
}

[data-theme="dark"] .auth-brand {
    border-bottom-color: #273a58;
}

[data-theme="dark"] .auth-brand h1,
[data-theme="dark"] .auth-card-header h2,
[data-theme="dark"] .auth-field .form-label {
    color: #f8fafc;
}

[data-theme="dark"] .auth-brand p,
[data-theme="dark"] .auth-card-header p,
[data-theme="dark"] .auth-field .form-text {
    color: #9fb0c7 !important;
}

[data-theme="dark"] .auth-input-group {
    background: #0b1628;
    border-color: #33445f;
}

[data-theme="dark"] .auth-input-group > span {
    color: #67e8f9;
    background: #10223a;
    border-right-color: #33445f;
}

[data-theme="dark"] .auth-input-group .form-control {
    color: #f8fafc;
}

[data-theme="dark"] .auth-qr-panel {
    background: #0b1628;
    border-color: #33445f;
}

[data-theme="dark"] .auth-manual-key label {
    color: #f8fafc;
}

[data-theme="dark"] .auth-secret-control {
    background: #07111f;
    border-color: #33445f;
}

[data-theme="dark"] .auth-secret-value {
    color: #e0f2fe;
}

[data-theme="dark"] .auth-copy-button {
    color: #7dd3fc;
    background: #10223a;
    border-left-color: #33445f;
}

[data-theme="dark"] .auth-copy-button:hover,
[data-theme="dark"] .auth-copy-button:focus {
    color: #bae6fd;
    background: #16324f;
}

[data-theme="dark"] .auth-copy-button.is-copied {
    color: #a7f3d0;
    background: #14532d;
}

[data-theme="dark"] .auth-copy-button.is-copy-error {
    color: #fed7aa;
    background: #7c2d12;
}

[data-theme="dark"] .auth-alert {
    color: #bae6fd;
    background: #082f49;
    border-color: #0e7490;
}

@media (max-width: 575.98px) {
    .login-page .container {
        padding: 14px;
    }

    .auth-shell {
        min-height: calc(100vh - 28px);
    }

    .auth-card {
        padding: 18px;
        border-radius: 14px;
    }

    .auth-card-header h2 {
        font-size: 21px;
    }

    .auth-copy-button {
        min-width: 92px;
        padding-right: 10px;
        padding-left: 10px;
    }

    .auth-secret-value {
        padding-right: 10px;
        padding-left: 10px;
        font-size: 12px;
    }
}

.admin-detail-card {
    background: var(--cp-surface);
}

.admin-detail-page {
    display: flex;
    flex-direction: column;
    gap: .9rem;
}

.admin-detail-header {
    flex-wrap: wrap;
    margin-bottom: 0;
}

.admin-detail-title {
    min-width: 0;
    flex: 1 1 auto;
}

.admin-detail-header-meta {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    flex-wrap: wrap;
    width: 100%;
    margin-left: calc(42px + .85rem);
}

.admin-detail-id {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: .22rem .62rem;
    border: 1px solid #d6e3f3;
    border-radius: 999px;
    color: #31506f;
    background: #fff;
    font-size: .78rem;
    font-weight: 700;
}

.admin-detail-status {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: .2rem .6rem;
    border-radius: 999px;
    font-size: .74rem;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.admin-detail-status-success {
    color: #0f5132;
    background: #d9f7e7;
}

.admin-detail-status-danger {
    color: #842029;
    background: #f8d7da;
}

.admin-detail-status-info {
    color: #055160;
    background: #cff4fc;
}

.admin-detail-status-review {
    color: #075985;
    background: #dff3ff;
}

.admin-detail-status-warning {
    color: #664d03;
    background: #fff3cd;
}

.admin-detail-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .7rem;
}

.admin-detail-summary-item {
    min-width: 0;
    padding: .75rem .85rem;
    border: 1px solid var(--cp-border);
    border-radius: .8rem;
    background: #fbfdff;
}

.admin-detail-summary-item span {
    display: block;
    margin-bottom: .2rem;
    color: var(--cp-muted);
    font-size: .74rem;
    font-weight: 650;
}

.admin-detail-summary-item strong {
    display: block;
    overflow: hidden;
    color: #14213a;
    font-size: .92rem;
    font-weight: 750;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-detail-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    padding: .65rem;
    border: 1px solid var(--cp-border);
    border-radius: .8rem;
    background: #f8fbff;
}

.admin-detail-actions form {
    margin: 0;
}

.admin-detail-actions .btn {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    border-radius: .5rem;
    font-weight: 650;
}

.admin-detail-tabs {
    overflow-x: auto;
    padding: .35rem;
    border: 1px solid var(--cp-border);
    border-radius: .8rem;
    background: #f8fbff;
}

.admin-detail-tabs .nav-tabs {
    flex-wrap: nowrap;
    gap: .35rem;
    min-width: max-content;
    border-bottom: 0;
}

.admin-detail-tabs .nav-link {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    min-height: 34px;
    padding: .42rem .72rem;
    border: 1px solid transparent;
    border-radius: .55rem;
    color: #3f5572;
    background: transparent;
    font-size: .8rem;
    font-weight: 650;
}

.admin-detail-tabs .nav-link:hover {
    border-color: #d7e4f4;
    color: #12356b;
    background: #fff;
}

.admin-detail-tabs .nav-link.active {
    color: #174ea6;
    border-color: #cfe0f7;
    background: #eef5ff;
}

.admin-detail-section + .admin-detail-section {
    margin-top: .9rem;
}

.admin-detail-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border: 1px solid #e2eaf5;
    border-radius: .78rem;
    overflow: hidden;
}

.admin-detail-list-compact {
    margin-bottom: .75rem;
}

.admin-detail-row {
    display: grid;
    grid-template-columns: minmax(135px, .42fr) minmax(0, 1fr);
    min-width: 0;
    border-bottom: 1px solid #e2eaf5;
    background: #fff;
}

.admin-detail-row:nth-last-child(-n+2) {
    border-bottom: 0;
}

.admin-detail-row span,
.admin-detail-row strong {
    min-width: 0;
    padding: .66rem .75rem;
    line-height: 1.35;
}

.admin-detail-row span {
    color: #50617a;
    background: #f8fbff;
    font-size: .78rem;
    font-weight: 700;
}

.admin-detail-row strong {
    overflow-wrap: anywhere;
    color: #14213a;
    font-size: .82rem;
    font-weight: 500;
}

.admin-detail-empty {
    padding: .85rem;
    border: 1px solid #dbe7f6;
    border-radius: .75rem;
    color: #34435c;
    background: #fbfdff;
}

.admin-detail-empty strong,
.admin-detail-empty span {
    display: block;
}

.admin-detail-empty span {
    margin-top: .2rem;
    color: var(--cp-muted);
    font-size: .8rem;
}

.admin-detail-note {
    padding: .85rem;
    border: 1px solid #dbe7f6;
    border-radius: .75rem;
    color: #26364f;
    background: #fbfdff;
    font-size: .86rem;
    line-height: 1.55;
    overflow-wrap: anywhere;
    white-space: normal;
}

.admin-detail-log-list {
    display: flex;
    flex-direction: column;
    gap: .8rem;
}

.admin-detail-log-item {
    padding: .8rem;
    border: 1px solid #dbe7f6;
    border-radius: .8rem;
    background: #fbfdff;
}

.admin-detail-log-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .7rem;
}

.admin-detail-log-header strong {
    color: #17233c;
    font-size: .88rem;
    font-weight: 740;
}

.admin-detail-log-header span {
    color: var(--cp-muted);
    font-size: .76rem;
}

.admin-detail-code-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
}

.admin-detail-code-grid span {
    display: block;
    margin-bottom: .35rem;
    color: #50617a;
    font-size: .76rem;
    font-weight: 700;
}

.admin-detail-code-grid pre {
    max-height: 260px;
    min-height: 82px;
    margin: 0;
    padding: .75rem;
    overflow: auto;
    border: 1px solid #dbe7f6;
    border-radius: .65rem;
    color: #17233c;
    background: #f8fbff;
    font-size: .76rem;
    line-height: 1.45;
    white-space: pre-wrap;
}

.admin-log-body-preview-column,
.admin-log-body-preview {
    min-width: 720px;
}

.admin-log-body-preview pre {
    overflow-wrap: anywhere;
}

.admin-detail-related-table {
    overflow: hidden;
    border: 1px solid #e2eaf5;
    border-radius: .78rem;
    background: #fff;
}

.admin-detail-related-table .table {
    margin-bottom: 0;
}

.admin-detail-related-table .table th {
    color: #50617a;
    background: #f8fbff;
    font-size: .78rem;
    font-weight: 700;
}

.admin-detail-related-table .table td {
    font-size: .82rem;
}

.admin-detail-pill-list {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.admin-detail-pill {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: .18rem .55rem;
    border-radius: 999px;
    color: #174ea6;
    background: #eef5ff;
    border: 1px solid #cfe0f7;
    font-size: .74rem;
    font-weight: 700;
}

.admin-detail-footer-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}

.admin-detail-footer-actions .btn {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    border-radius: .5rem;
    font-weight: 650;
}

.admin-detail-form-actions {
    margin-top: .85rem;
    padding: .75rem;
}

.site-auto-reject-section fieldset {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.site-auto-reject-global-note,
.site-auto-reject-readonly-note {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    margin-bottom: .9rem;
    padding: .75rem .85rem;
    border: 1px solid #bfd8f6;
    border-radius: .75rem;
    color: #224268;
    background: #f2f7fd;
}

.site-auto-reject-global-note--warning {
    color: #704b00;
    border-color: #f1d18d;
    background: #fff9eb;
}

.site-auto-reject-global-note > i,
.site-auto-reject-readonly-note > i {
    flex: 0 0 auto;
    margin-top: .15rem;
}

.site-auto-reject-global-note strong,
.site-auto-reject-global-note span {
    display: block;
}

.site-auto-reject-global-note strong {
    margin-bottom: .15rem;
    font-size: .84rem;
}

.site-auto-reject-global-note span,
.site-auto-reject-readonly-note span {
    font-size: .8rem;
    line-height: 1.45;
}

.site-auto-reject-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

.site-auto-reject-rule {
    min-width: 0;
    padding: .9rem;
    border: 1px solid #dce6f2;
    border-radius: .8rem;
    background: #fff;
}

.site-auto-reject-rule-header,
.site-auto-reject-rule-title {
    display: flex;
    align-items: flex-start;
}

.site-auto-reject-rule-header {
    justify-content: space-between;
    gap: .75rem;
}

.site-auto-reject-rule-title {
    min-width: 0;
    gap: .6rem;
}

.site-auto-reject-rule-icon {
    display: inline-flex;
    flex: 0 0 34px;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid #cfe0f7;
    border-radius: .65rem;
    color: #174ea6;
    background: #eef5ff;
}

.site-auto-reject-rule h3 {
    margin: 0;
    color: #17233c;
    font-size: .9rem;
    font-weight: 750;
}

.site-auto-reject-rule-title p {
    margin: .18rem 0 0;
    color: var(--cp-muted);
    font-size: .76rem;
    line-height: 1.4;
}

.site-auto-reject-system-value {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-top: .8rem;
    padding: .55rem .65rem;
    border: 1px solid #e2eaf5;
    border-radius: .6rem;
    background: #f8fbff;
}

.site-auto-reject-system-value span {
    color: #50617a;
    font-size: .75rem;
    font-weight: 650;
}

.site-auto-reject-system-value strong {
    color: #26364f;
    font-size: .78rem;
    font-weight: 720;
    text-align: right;
}

.site-auto-reject-mode-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .55rem;
    margin-top: .75rem;
}

.site-auto-reject-mode-option {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    min-width: 0;
    margin: 0;
    padding: .65rem;
    cursor: pointer;
    border: 1px solid #dce6f2;
    border-radius: .65rem;
    background: #fbfdff;
}

.site-auto-reject-mode-option:has(input:checked) {
    border-color: #7aa7df;
    box-shadow: 0 0 0 2px rgba(31, 111, 235, .08);
    background: #f2f7fd;
}

.site-auto-reject-mode-option input {
    flex: 0 0 auto;
    margin-top: .2rem;
    accent-color: #2468b4;
}

.site-auto-reject-mode-option span,
.site-auto-reject-mode-option strong,
.site-auto-reject-mode-option small {
    display: block;
    min-width: 0;
}

.site-auto-reject-mode-option strong {
    color: #26364f;
    font-size: .79rem;
    font-weight: 720;
}

.site-auto-reject-mode-option small {
    margin-top: .15rem;
    color: var(--cp-muted);
    font-size: .71rem;
    line-height: 1.35;
}

.site-auto-reject-custom-panel {
    margin-top: .75rem;
    padding: .7rem;
    border: 1px solid #dce6f2;
    border-radius: .65rem;
    background: #f8fbff;
}

.site-auto-reject-custom-panel > label {
    display: block;
    margin-bottom: .35rem;
    color: #34435c;
    font-size: .78rem;
    font-weight: 700;
}

.site-auto-reject-custom-panel .input-group {
    max-width: 260px;
}

.site-auto-reject-custom-panel small {
    display: block;
    margin-top: .35rem;
    color: var(--cp-muted);
    font-size: .72rem;
    line-height: 1.4;
}

.site-auto-reject-summary {
    min-height: 2.35rem;
    margin: .75rem 0 0;
    padding: .55rem .65rem;
    border-left: 3px solid #7aa7df;
    border-radius: .25rem .55rem .55rem .25rem;
    color: #34435c;
    background: #f6f9fd;
    font-size: .76rem;
    line-height: 1.45;
}

.site-auto-reject-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-top: .9rem;
    padding-top: .8rem;
    border-top: 1px solid #e2eaf5;
}

.site-auto-reject-actions > span {
    color: var(--cp-muted);
    font-size: .76rem;
    line-height: 1.4;
}

.site-auto-reject-actions .btn {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: .4rem;
}

.site-auto-reject-readonly-note {
    margin: .9rem 0 0;
    color: #53627a;
    border-color: #dce6f2;
    background: #f8fbff;
}

[data-theme="dark"] .site-auto-reject-global-note,
[data-theme="dark"] .site-auto-reject-readonly-note {
    color: #cfe2fb;
    border-color: #315274;
    background: #11243a;
}

[data-theme="dark"] .site-auto-reject-global-note--warning {
    color: #f5dda4;
    border-color: #695429;
    background: #2a2415;
}

[data-theme="dark"] .site-auto-reject-rule {
    border-color: #263653;
    background: #111a2b;
}

[data-theme="dark"] .site-auto-reject-rule-icon {
    color: #dbeafe;
    border-color: #3b5d8b;
    background: #183255;
}

[data-theme="dark"] .site-auto-reject-rule h3,
[data-theme="dark"] .site-auto-reject-system-value strong,
[data-theme="dark"] .site-auto-reject-mode-option strong,
[data-theme="dark"] .site-auto-reject-custom-panel > label,
[data-theme="dark"] .site-auto-reject-summary {
    color: #e8f1ff;
}

[data-theme="dark"] .site-auto-reject-system-value,
[data-theme="dark"] .site-auto-reject-mode-option,
[data-theme="dark"] .site-auto-reject-custom-panel,
[data-theme="dark"] .site-auto-reject-summary {
    border-color: #263653;
    background: #0f1a2c;
}

[data-theme="dark"] .site-auto-reject-mode-option:has(input:checked) {
    border-color: #4f78aa;
    box-shadow: 0 0 0 2px rgba(89, 145, 211, .12);
    background: #183255;
}

[data-theme="dark"] .site-auto-reject-system-value span {
    color: #b8c7dc;
}

[data-theme="dark"] .site-auto-reject-actions {
    border-top-color: #263653;
}

@media (max-width: 991.98px) {
    .site-auto-reject-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 575.98px) {
    .site-auto-reject-rule-header,
    .site-auto-reject-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .site-auto-reject-mode-options {
        grid-template-columns: minmax(0, 1fr);
    }

    .site-auto-reject-system-value {
        align-items: flex-start;
        flex-direction: column;
        gap: .2rem;
    }

    .site-auto-reject-system-value strong {
        text-align: left;
    }

    .site-auto-reject-custom-panel .input-group,
    .site-auto-reject-actions .btn {
        width: 100%;
        max-width: none;
    }

    .site-auto-reject-actions .btn {
        justify-content: center;
    }
}

[data-theme="dark"] .admin-detail-summary-item,
[data-theme="dark"] .admin-detail-actions,
[data-theme="dark"] .admin-detail-tabs,
[data-theme="dark"] .admin-detail-empty,
[data-theme="dark"] .admin-detail-note,
[data-theme="dark"] .admin-detail-log-item {
    border-color: var(--cp-border);
    background: #111a2b;
}

[data-theme="dark"] .admin-detail-id {
    color: #dce9fb;
    border-color: #34445f;
    background: #0f1a2c;
}

[data-theme="dark"] .admin-detail-summary-item strong,
[data-theme="dark"] .admin-detail-row strong,
[data-theme="dark"] .admin-detail-note,
[data-theme="dark"] .admin-detail-log-header strong {
    color: #edf4ff;
}

[data-theme="dark"] .admin-detail-tabs .nav-link {
    color: #bfd0e7;
}

[data-theme="dark"] .admin-detail-tabs .nav-link:hover {
    color: #fff;
    border-color: #34445f;
    background: #17243a;
}

[data-theme="dark"] .admin-detail-tabs .nav-link.active {
    color: #dbeafe;
    border-color: #3b5d8b;
    background: #183255;
}

[data-theme="dark"] .admin-detail-list {
    border-color: #263653;
}

[data-theme="dark"] .admin-detail-row {
    border-bottom-color: #263653;
    background: #111a2b;
}

[data-theme="dark"] .admin-detail-row span {
    color: #b8c7dc;
    background: #0f1a2c;
}

[data-theme="dark"] .admin-detail-code-grid span {
    color: #b8c7dc;
}

[data-theme="dark"] .admin-detail-code-grid pre {
    color: #dbeafe;
    border-color: #263653;
    background: #0f1a2c;
}

[data-theme="dark"] .admin-detail-related-table {
    border-color: #263653;
    background: #111a2b;
}

[data-theme="dark"] .admin-detail-related-table .table th {
    color: #b8c7dc;
    background: #0f1a2c;
}

[data-theme="dark"] .admin-detail-pill {
    color: #dbeafe;
    background: #183255;
    border-color: #3b5d8b;
}

[data-theme="dark"] .admin-detail-status-success {
    color: #c7f9df;
    background: #0f3d2a;
}

[data-theme="dark"] .admin-detail-status-danger {
    color: #ffd3d9;
    background: #5c121d;
}

[data-theme="dark"] .admin-detail-status-info {
    color: #c8f4ff;
    background: #123d4a;
}

[data-theme="dark"] .admin-detail-status-review {
    color: #b7e7ff;
    background: #0d3b55;
}

[data-theme="dark"] .admin-detail-status-warning {
    color: #ffe8a3;
    background: #4b3708;
}

@media (max-width: 991.98px) {
    .admin-detail-header {
        align-items: flex-start;
    }

    .admin-detail-header-meta {
        width: 100%;
        margin-left: 0;
    }

    .admin-detail-summary,
    .admin-detail-list,
    .admin-detail-code-grid {
        grid-template-columns: 1fr;
    }

    .admin-log-body-preview-column,
    .admin-log-body-preview {
        min-width: min(560px, 72vw);
    }

    .admin-detail-row:nth-last-child(-n+2) {
        border-bottom: 1px solid #e2eaf5;
    }

    .admin-detail-row:last-child {
        border-bottom: 0;
    }
}

@media (max-width: 575.98px) {
    .admin-detail-page {
        padding: .7rem;
    }

    .admin-detail-row {
        grid-template-columns: 1fr;
    }

    .admin-detail-row span {
        padding-bottom: .25rem;
    }

    .admin-detail-row strong {
        padding-top: .2rem;
    }

    .admin-detail-tabs .nav-link {
        padding-inline: .62rem;
    }
}

.admin-report-page {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.admin-report-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.admin-report-title {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: .75rem;
}

.admin-report-title-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 8px;
    color: #1f5fbe;
    background: #eef5ff;
    border: 1px solid #d9e7fb;
}

.admin-report-title h1 {
    margin: 0;
    color: var(--cp-text);
    font-size: 1.05rem;
    font-weight: 700;
    letter-spacing: 0;
}

.admin-report-title p,
.admin-report-muted {
    margin: .2rem 0 0;
    color: var(--cp-muted);
    font-size: .82rem;
}

.admin-report-filter,
.admin-report-section {
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
    overflow: hidden;
}

.admin-report-section {
    padding: .95rem;
}

.admin-report-section-header,
.admin-report-filter-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .78rem .95rem;
    border-bottom: 1px solid #e2eaf5;
}

.admin-report-section-header {
    padding: 0 0 .78rem;
    margin-bottom: .85rem;
}

.admin-report-section-header h2,
.admin-report-filter-header h2 {
    margin: 0;
    color: var(--cp-text);
    font-size: .92rem;
    font-weight: 700;
    letter-spacing: 0;
}

.admin-report-section-header small,
.admin-report-filter-header small {
    display: block;
    margin-top: .16rem;
    color: var(--cp-muted);
    font-size: .76rem;
}

.admin-report-filter-body {
    padding: .95rem;
}

.admin-report-filter-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem 1rem;
    align-items: start;
}

.admin-report-filter-body .row {
    align-items: start;
    row-gap: .85rem;
}

.admin-report-filter-body .row > [class*="col-"] {
    min-width: 0;
}

.admin-report-filter-body .row.align-items-end > [class*="col-"] {
    display: flex;
    flex-direction: column;
}

.admin-report-filter-body .row.align-items-end label {
    min-height: 1.75rem;
    display: flex;
    align-items: center;
    margin-bottom: .4rem !important;
}

.admin-report-filter-body .row.align-items-end .btn {
    min-height: 38px;
    align-items: center;
}

.admin-report-filter-grid .form-group {
    margin-bottom: 0;
}

.admin-report-filter-grid label,
.admin-report-page label {
    margin-bottom: .35rem;
    color: var(--cp-text);
    font-size: .82rem;
    font-weight: 650;
}

.admin-report-filter-grid .required::after {
    content: " *";
    color: #e23d52;
}

.admin-report-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem;
    grid-column: 1 / -1;
    padding-top: .15rem;
}

.admin-report-actions .btn,
.admin-report-top-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    min-height: 34px;
    border-radius: 7px;
    font-size: .82rem;
    font-weight: 650;
    letter-spacing: 0;
}

.admin-report-advanced-toggle {
    white-space: nowrap;
}

.admin-report-filter-active-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 18px;
    padding: .1rem .38rem;
    border-radius: 999px;
    background: #e7f7ee;
    color: #167041;
    font-size: .68rem;
    font-weight: 700;
}

.admin-report-advanced-filter {
    grid-column: 1 / -1;
}

.admin-report-advanced-filter-inner {
    border: 1px solid #d7e3f2;
    border-radius: 8px;
    background: #f8fbff;
    padding: .85rem;
}

.admin-report-advanced-filter-head {
    display: flex;
    flex-direction: column;
    gap: .15rem;
    margin-bottom: .75rem;
}

.admin-report-advanced-filter-head strong {
    color: var(--cp-text);
    font-size: .84rem;
    font-weight: 700;
}

.admin-report-advanced-filter-head small {
    color: var(--cp-muted);
    font-size: .76rem;
}

.admin-report-amount-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .8rem;
}

.admin-report-select-actions {
    margin-bottom: .35rem;
}

.admin-report-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .8rem;
}

.admin-report-metric {
    border: 1px solid #e2eaf5;
    border-radius: 8px;
    background: #f8fbff;
    padding: .85rem;
}

.admin-report-metric span {
    display: block;
    color: var(--cp-muted);
    font-size: .74rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.admin-report-metric strong {
    display: block;
    margin-top: .25rem;
    color: var(--cp-text);
    font-size: 1.05rem;
    font-weight: 750;
    overflow-wrap: anywhere;
}

.admin-report-metric small {
    display: block;
    margin-top: .15rem;
    color: var(--cp-muted);
    font-size: .74rem;
}

.admin-report-metric-success {
    border-color: #bfe8d1;
    background: #f0fff6;
}

.admin-report-metric-danger {
    border-color: #f3c7cf;
    background: #fff5f7;
}

.admin-report-metric-info {
    border-color: #bddff7;
    background: #f2f9ff;
}

.admin-report-metric-primary {
    border-color: #bdd4ff;
    background: #f2f7ff;
}

.admin-report-metric-warning {
    border-color: #f4d489;
    background: #fff8e6;
}

.admin-report-tabs {
    border-bottom: 1px solid #dfe8f5;
    gap: .35rem;
    overflow-x: auto;
    flex-wrap: nowrap;
}

.admin-report-tabs .nav-link {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    white-space: nowrap;
    border: 1px solid transparent;
    border-radius: 7px 7px 0 0;
    color: #526984;
    font-size: .82rem;
    font-weight: 650;
    letter-spacing: 0;
}

.admin-report-tabs .nav-link.active {
    color: #174ea6;
    background: #eef5ff;
    border-color: #cddcf0 #cddcf0 var(--cp-surface);
}

.admin-report-table-wrap {
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    overflow: auto;
    background: var(--cp-surface);
}

.admin-report-table {
    margin-bottom: 0;
    color: var(--cp-text);
    font-size: .82rem;
}

.admin-report-table thead th {
    background: #14233d !important;
    color: #fff !important;
    border-color: #203451 !important;
    font-weight: 700;
    letter-spacing: 0;
    vertical-align: middle;
    white-space: nowrap;
}

.admin-report-table tbody td,
.admin-report-table tfoot th,
.admin-report-table tfoot td {
    border-color: #e2eaf5 !important;
    vertical-align: middle;
}

.admin-report-table tfoot th,
.admin-report-table tfoot td {
    background: #eef5ff;
    color: var(--cp-text);
    font-weight: 750;
}

.admin-report-pending-amount {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    min-width: max-content;
    padding: .12rem .42rem;
    border: 1px solid #d8a600;
    border-radius: 999px;
    background: #fff7d6;
    color: #705000 !important;
    font-weight: 750;
    line-height: 1.2;
    white-space: nowrap;
}

.admin-report-carryover-value {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    gap: .14rem;
    min-width: max-content;
    line-height: 1.25;
}

.admin-report-carryover-value strong {
    color: #174ea6;
    font-weight: 800;
    white-space: nowrap;
}

.admin-report-carryover-value small {
    color: var(--cp-muted);
    font-weight: 650;
    white-space: nowrap;
}

.admin-report-empty {
    padding: .85rem;
    border: 1px dashed #cbd8ea;
    border-radius: 8px;
    color: var(--cp-muted);
    background: #f8fbff;
    font-size: .84rem;
}

[data-theme="dark"] .admin-report-header,
[data-theme="dark"] .admin-report-filter,
[data-theme="dark"] .admin-report-section {
    border-color: var(--cp-border);
    background: var(--cp-surface);
}

[data-theme="dark"] .admin-report-title-icon {
    color: #8bbcff;
    background: #11243e;
    border-color: #263f61;
}

[data-theme="dark"] .admin-report-title h1,
[data-theme="dark"] .admin-report-section-header h2,
[data-theme="dark"] .admin-report-filter-header h2,
[data-theme="dark"] .admin-report-filter-grid label,
[data-theme="dark"] .admin-report-page label {
    color: #edf4ff;
}

[data-theme="dark"] .admin-report-section-header,
[data-theme="dark"] .admin-report-filter-header,
[data-theme="dark"] .admin-report-tabs {
    border-color: #263653;
}

[data-theme="dark"] .admin-report-metric {
    border-color: #263653;
    background: #131e31;
}

[data-theme="dark"] .admin-report-filter-active-badge {
    background: #123523;
    color: #8ee0af;
}

[data-theme="dark"] .admin-report-advanced-filter-inner {
    border-color: #263653;
    background: #101b2e;
}

[data-theme="dark"] .admin-report-advanced-filter-head strong {
    color: #edf4ff;
}

[data-theme="dark"] .admin-report-advanced-filter-head small {
    color: #9fb0c7;
}

[data-theme="dark"] .admin-report-metric strong {
    color: #edf4ff;
}

[data-theme="dark"] .admin-report-metric-success {
    border-color: #1e5c3e;
    background: #0d2c22;
}

[data-theme="dark"] .admin-report-metric-danger {
    border-color: #6b2432;
    background: #35141c;
}

[data-theme="dark"] .admin-report-metric-info {
    border-color: #24587a;
    background: #102a3e;
}

[data-theme="dark"] .admin-report-metric-primary {
    border-color: #2b5a94;
    background: #10243f;
}

[data-theme="dark"] .admin-report-metric-warning {
    border-color: #775c24;
    background: #332710;
}

[data-theme="dark"] .admin-report-tabs .nav-link {
    color: #bfd0e7;
}

[data-theme="dark"] .admin-report-tabs .nav-link.active {
    color: #dbeafe;
    background: #14233d;
    border-color: #2c4162 #2c4162 var(--cp-surface);
}

[data-theme="dark"] .admin-report-table-wrap {
    border-color: #263653;
    background: var(--cp-surface);
}

[data-theme="dark"] .admin-report-table {
    color: #edf4ff;
}

[data-theme="dark"] .admin-report-table thead th {
    background: #0d1728 !important;
    border-color: #243753 !important;
}

[data-theme="dark"] .admin-report-table tbody td,
[data-theme="dark"] .admin-report-table tfoot th,
[data-theme="dark"] .admin-report-table tfoot td {
    border-color: #263653 !important;
}

[data-theme="dark"] .admin-report-table tfoot th,
[data-theme="dark"] .admin-report-table tfoot td {
    background: #14233d;
    color: #edf4ff;
}

[data-theme="dark"] .admin-report-pending-amount {
    border-color: rgba(255, 205, 86, .36);
    background: rgba(255, 205, 86, .12);
    color: #ffd86b !important;
}

[data-theme="dark"] .admin-report-carryover-value strong {
    color: #8bbcff;
}

[data-theme="dark"] .admin-report-carryover-value small {
    color: #b8c7dc;
}

[data-theme="dark"] .admin-report-empty {
    border-color: #334762;
    color: #b8c7dc;
    background: #101a2a;
}

.general-reports-compact-page {
    --report-surface: #ffffff;
    --report-panel: #f8fbff;
    --report-panel-strong: #eef5ff;
    --report-border: #d9e2ef;
    --report-text: #1f2937;
    --report-heading: #17233c;
    --report-muted: #667085;
    --report-positive: #15803d;
    --report-negative: #be123c;
    --report-info: #1f5fbe;
    --report-warning: #8a5a00;
    --report-row: #ffffff;
    --report-row-alt: #f8fbff;
    --report-row-hover: #edf4ff;
    color: var(--report-text);
}

.general-reports-compact-page .admin-report-header,
.general-reports-compact-page .admin-report-filter,
.general-reports-compact-page .admin-report-section,
.general-reports-compact-page .general-report-card,
.general-reports-compact-page #section-pagination,
.general-reports-compact-page #details-card {
    border-color: var(--report-border);
    background: var(--report-surface);
}

.general-reports-compact-page .general-report-card {
    overflow: hidden;
    box-shadow: none;
}

.general-reports-compact-page .general-report-card .card-header {
    background: var(--report-panel-strong);
    border-color: var(--report-border);
    color: var(--report-heading);
}

.general-reports-compact-page .general-report-card .card-body {
    background: var(--report-panel);
    color: var(--report-text);
}

.general-reports-compact-page .general-report-kpi-card {
    background: var(--report-panel);
    border-color: var(--report-border);
    min-height: 86px;
}

.general-reports-compact-page .general-report-kpi-card strong {
    color: var(--report-heading);
}

.general-reports-compact-page .general-report-kpi-card.admin-report-metric-success span,
.general-reports-compact-page .general-report-kpi-card.admin-report-metric-success strong {
    color: var(--report-positive);
}

.general-reports-compact-page .general-report-kpi-card.admin-report-metric-danger span,
.general-reports-compact-page .general-report-kpi-card.admin-report-metric-danger strong {
    color: var(--report-negative);
}

.general-reports-compact-page .general-report-kpi-card.admin-report-metric-info span,
.general-reports-compact-page .general-report-kpi-card.admin-report-metric-info strong,
.general-reports-compact-page .general-report-kpi-card.admin-report-metric-primary span,
.general-reports-compact-page .general-report-kpi-card.admin-report-metric-primary strong {
    color: var(--report-info);
}

.general-reports-compact-page .general-report-kpi-card.admin-report-metric-warning span,
.general-reports-compact-page .general-report-kpi-card.admin-report-metric-warning strong {
    color: var(--report-warning);
}

.general-reports-compact-page .admin-report-table-wrap {
    border-color: var(--report-border);
    background: var(--report-panel);
}

.general-reports-compact-page .compact-table,
.general-reports-compact-page .heatmap-table {
    color: var(--report-text);
    --bs-table-color: var(--report-text);
    --bs-table-bg: var(--report-row);
    --bs-table-hover-bg: var(--report-row-hover);
    --bs-table-border-color: var(--report-border);
}

.general-reports-compact-page .compact-table thead th,
.general-reports-compact-page .heatmap-table thead th {
    background: var(--report-panel-strong) !important;
    color: var(--report-heading) !important;
    border-color: var(--report-border) !important;
}

.general-reports-compact-page .compact-table tbody td,
.general-reports-compact-page .compact-table tbody th,
.general-reports-compact-page .heatmap-table tbody td,
.general-reports-compact-page .heatmap-table tbody th {
    color: var(--report-text) !important;
    border-color: var(--report-border) !important;
}

.general-reports-compact-page .compact-table tbody tr:hover > *,
.general-reports-compact-page .heatmap-table tbody tr:hover > * {
    background: var(--report-row-hover) !important;
    color: var(--report-heading) !important;
}

[data-theme="dark"] .general-reports-compact-page {
    --report-surface: #10192a;
    --report-panel: #15233a;
    --report-panel-strong: #1a2b45;
    --report-border: rgba(129, 158, 201, .34);
    --report-text: #e7effb;
    --report-heading: #f6f9ff;
    --report-muted: #b6c6dc;
    --report-positive: #6ee7a8;
    --report-negative: #ff8a98;
    --report-info: #93c5fd;
    --report-warning: #f7d36b;
    --report-row: #132039;
    --report-row-alt: #172740;
    --report-row-hover: #203552;
    color: var(--report-text);
}

[data-theme="dark"] .general-reports-compact-page .admin-report-header,
[data-theme="dark"] .general-reports-compact-page .admin-report-filter,
[data-theme="dark"] .general-reports-compact-page .admin-report-section,
[data-theme="dark"] .general-reports-compact-page .general-report-card,
[data-theme="dark"] .general-reports-compact-page #section-pagination,
[data-theme="dark"] .general-reports-compact-page #details-card {
    border-color: var(--report-border);
    background: var(--report-surface);
}

[data-theme="dark"] .general-reports-compact-page .admin-report-title h1,
[data-theme="dark"] .general-reports-compact-page .admin-report-filter-header h2,
[data-theme="dark"] .general-reports-compact-page #section-title,
[data-theme="dark"] .general-reports-compact-page label,
[data-theme="dark"] .general-reports-compact-page .general-report-card h6 {
    color: var(--report-heading);
}

[data-theme="dark"] .general-reports-compact-page .text-muted,
[data-theme="dark"] .general-reports-compact-page .admin-report-title p,
[data-theme="dark"] .general-reports-compact-page .admin-report-filter-header small,
[data-theme="dark"] .general-reports-compact-page .admin-report-metric small,
[data-theme="dark"] .general-reports-compact-page .admin-report-empty {
    color: var(--report-muted) !important;
}

[data-theme="dark"] .general-reports-compact-page .general-report-card .card-header,
[data-theme="dark"] .general-reports-compact-page #details-heading {
    background: var(--report-panel-strong);
    border-color: var(--report-border);
    color: var(--report-heading);
}

[data-theme="dark"] .general-reports-compact-page .general-report-card .card-body,
[data-theme="dark"] .general-reports-compact-page #section-pagination .card-body,
[data-theme="dark"] .general-reports-compact-page #details-card .card-body {
    background: var(--report-panel);
    color: var(--report-text);
}

[data-theme="dark"] .general-reports-compact-page .general-report-kpi-card {
    background: var(--report-panel);
    border-color: var(--report-border);
}

[data-theme="dark"] .general-reports-compact-page .admin-report-tabs {
    border-color: var(--report-border);
}

[data-theme="dark"] .general-reports-compact-page .admin-report-tabs .nav-link {
    color: var(--report-muted);
}

[data-theme="dark"] .general-reports-compact-page .admin-report-tabs .nav-link.active {
    background: var(--report-panel-strong);
    border-color: var(--report-border) var(--report-border) var(--report-surface);
    color: var(--report-heading);
}

[data-theme="dark"] .general-reports-compact-page .form-control,
[data-theme="dark"] .general-reports-compact-page .form-select,
[data-theme="dark"] .general-reports-compact-page .select2-container--default .select2-selection--single,
[data-theme="dark"] .general-reports-compact-page .select2-container--classic .select2-selection--single {
    background: #0f1a2d;
    border-color: var(--report-border);
    color: var(--report-text);
}

[data-theme="dark"] .general-reports-compact-page .admin-report-table-wrap {
    border-color: var(--report-border);
    background: var(--report-panel);
}

[data-theme="dark"] .general-reports-compact-page .compact-table,
[data-theme="dark"] .general-reports-compact-page .heatmap-table {
    color: var(--report-text);
    --bs-table-color: var(--report-text);
    --bs-table-bg: var(--report-row);
    --bs-table-hover-bg: var(--report-row-hover);
    --bs-table-border-color: var(--report-border);
}

[data-theme="dark"] .general-reports-compact-page .compact-table tbody tr:nth-child(even) > *,
[data-theme="dark"] .general-reports-compact-page .heatmap-table tbody tr:nth-child(even) > * {
    background: var(--report-row-alt) !important;
}

[data-theme="dark"] .general-reports-compact-page .compact-table tbody tr:hover > *,
[data-theme="dark"] .general-reports-compact-page .heatmap-table tbody tr:hover > * {
    background: var(--report-row-hover) !important;
    color: var(--report-heading) !important;
}

[data-theme="dark"] .general-reports-compact-page .heat-cell {
    color: var(--report-heading) !important;
}

[data-theme="dark"] .general-reports-compact-page .entity-chip {
    box-shadow: 0 0 0 1px rgba(231, 239, 251, .2);
}

.group-wallet-page,
.group-limit-tracking-page,
.group-cash-movement-edit-page {
    --group-surface: #ffffff;
    --group-surface-soft: #f8fbff;
    --group-surface-raised: #fbfdff;
    --group-border: #d8e2ef;
    --group-border-soft: #e6edf7;
    --group-heading: #17233c;
    --group-text: #34435c;
    --group-muted: #667085;
    --group-table-head: #14233d;
    --group-table-head-border: #203451;
    --group-table-head-text: #ffffff;
    --group-table-row: #ffffff;
    --group-table-stripe: #f8fbff;
    --group-table-hover: #edf4ff;
    --group-blue: #2656d9;
    --group-blue-soft: #eef5ff;
    --group-blue-border: #cfe0f7;
    --group-green: #17633a;
    --group-green-soft: #ecfdf3;
    --group-green-panel: #f3fbf6;
    --group-green-border: #cfe9da;
    --group-red: #c2413b;
    --group-red-soft: #fff1f1;
    --group-red-panel: #fff7f7;
    --group-red-border: #f0d4d4;
    --group-amber: #8a5a00;
    --group-amber-soft: #fff5d6;
    --group-amber-border: #f4d489;
    gap: 1rem;
    color: var(--group-text);
}

[data-theme="dark"] .group-wallet-page,
[data-theme="dark"] .group-limit-tracking-page,
[data-theme="dark"] .group-cash-movement-edit-page {
    --group-surface: #172033;
    --group-surface-soft: #111a2b;
    --group-surface-raised: #0f1a2c;
    --group-border: #34445f;
    --group-border-soft: #263653;
    --group-heading: #edf4ff;
    --group-text: #d6e3f7;
    --group-muted: #a9b6cb;
    --group-table-head: #0d1728;
    --group-table-head-border: #243753;
    --group-table-head-text: #f8fbff;
    --group-table-row: #172033;
    --group-table-stripe: #1b2940;
    --group-table-hover: #243653;
    --group-blue: #a9c7ff;
    --group-blue-soft: rgba(96, 165, 250, .16);
    --group-blue-border: rgba(96, 165, 250, .32);
    --group-green: #9be6b2;
    --group-green-soft: rgba(46, 160, 67, .18);
    --group-green-panel: rgba(46, 160, 67, .12);
    --group-green-border: rgba(75, 191, 123, .35);
    --group-red: #ffb3bf;
    --group-red-soft: rgba(248, 81, 111, .16);
    --group-red-panel: rgba(248, 81, 111, .1);
    --group-red-border: rgba(248, 81, 111, .32);
    --group-amber: #ffd98a;
    --group-amber-soft: rgba(245, 158, 11, .18);
    --group-amber-border: rgba(245, 158, 11, .36);
}

.group-wallet-header,
.group-limit-header {
    align-items: flex-start;
}

.group-wallet-header-copy,
.group-limit-header-copy {
    min-width: 0;
    flex: 1 1 360px;
}

.group-wallet-header-actions,
.group-limit-header-actions {
    flex: 0 0 auto;
}

.group-wallet-summary,
.group-limit-summary {
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
}

.group-wallet-page .admin-form-header,
.group-wallet-page .admin-form-section,
.group-limit-tracking-page .admin-form-header,
.group-limit-tracking-page .admin-form-section {
    border-color: var(--group-border);
    background: var(--group-surface);
}

.group-wallet-page .admin-form-header h1,
.group-wallet-page .admin-form-section-header h2,
.group-limit-tracking-page .admin-form-header h1,
.group-limit-tracking-page .admin-form-section-header h2 {
    color: var(--group-heading);
}

.group-wallet-page .admin-form-section-header,
.group-limit-tracking-page .admin-form-section-header {
    border-bottom-color: var(--group-border-soft);
}

.group-wallet-page .admin-form-title-icon,
.group-limit-tracking-page .admin-form-title-icon {
    color: var(--group-blue);
    background: var(--group-blue-soft);
    border-color: var(--group-blue-border);
}

.group-wallet-page .admin-report-metric,
.group-limit-tracking-page .admin-report-metric {
    border-color: var(--group-border);
    background: var(--group-surface-soft);
}

.group-wallet-page .admin-report-metric strong,
.group-limit-tracking-page .admin-report-metric strong {
    color: var(--group-heading);
}

.group-wallet-page .admin-report-metric span,
.group-wallet-page .admin-report-metric small,
.group-limit-tracking-page .admin-report-metric span,
.group-limit-tracking-page .admin-report-metric small {
    color: var(--group-muted);
}

.group-wallet-page .admin-report-metric-info,
.group-limit-tracking-page .admin-report-metric-info,
.group-wallet-page .admin-report-metric-primary,
.group-limit-tracking-page .admin-report-metric-primary {
    border-color: var(--group-blue-border);
    background: var(--group-blue-soft);
}

.group-wallet-page .admin-report-metric-success,
.group-limit-tracking-page .admin-report-metric-success {
    border-color: var(--group-green-border);
    background: var(--group-green-panel);
}

.group-wallet-page .admin-report-metric-danger,
.group-limit-tracking-page .admin-report-metric-danger {
    border-color: var(--group-red-border);
    background: var(--group-red-panel);
}

.group-wallet-page .admin-report-metric-warning,
.group-limit-tracking-page .admin-report-metric-warning {
    border-color: var(--group-amber-border);
    background: var(--group-amber-soft);
}

.group-wallet-operation-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.group-wallet-operation-grid-cash {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
}

.group-wallet-operation-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.group-wallet-operation-card .admin-form {
    flex: 1 1 auto;
}

.group-wallet-operation-card .group-wallet-inline-actions {
    margin-top: auto;
}

.group-wallet-operation-card-header {
    justify-content: flex-start;
    align-items: flex-start;
}

.group-wallet-operation-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: .55rem;
    font-size: .95rem;
}

.group-wallet-operation-icon-balance {
    color: var(--group-blue);
    background: var(--group-blue-soft);
}

.group-wallet-operation-icon-max {
    color: var(--group-amber);
    background: var(--group-amber-soft);
}

.group-wallet-operation-icon-adjust {
    color: var(--group-green);
    background: var(--group-green-soft);
}

.group-wallet-compact-form-grid {
    grid-template-columns: 1fr;
}

.group-cash-carryover-bar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    margin-top: -0.15rem;
    padding: .72rem .85rem;
    border: 1px solid var(--group-blue-border);
    border-radius: .72rem;
    background: var(--group-blue-soft);
    min-height: 70px;
}

.group-cash-carryover-bar-content {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: center;
    gap: .72rem;
    min-width: 0;
}

.group-cash-carryover-bar-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border: 1px solid var(--group-blue-border);
    border-radius: .62rem;
    color: var(--group-blue);
    background: var(--group-surface);
    font-size: .95rem;
}

.group-cash-carryover-bar-main {
    min-width: 0;
}

.group-cash-carryover-bar-title {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .6rem;
}

.group-cash-carryover-bar-title span {
    color: var(--group-muted);
    font-size: .76rem;
    font-weight: 800;
    text-transform: uppercase;
}

.group-cash-carryover-bar-title strong {
    color: var(--group-heading);
    font-size: 1.14rem;
    font-weight: 800;
    line-height: 1.15;
}

.group-cash-carryover-bar-main p {
    margin: .22rem 0 0;
    color: var(--group-muted);
    font-size: .82rem;
    line-height: 1.35;
}

.group-cash-carryover-bar-panel {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .75rem;
    min-width: 0;
}

.group-cash-carryover-bar-meta,
.group-cash-carryover-bar-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}

.group-cash-carryover-bar-meta {
    justify-content: flex-end;
}

.group-cash-carryover-bar-meta span {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    min-width: 0;
    min-height: 34px;
    padding: .34rem .62rem;
    border: 1px solid var(--group-border);
    border-radius: 999px;
    color: var(--group-text);
    background: var(--group-surface);
    font-size: .76rem;
    font-weight: 650;
    line-height: 1.2;
}

.group-cash-carryover-bar-meta i {
    color: var(--group-blue);
}

.group-cash-carryover-bar-actions {
    justify-content: flex-end;
}

.group-cash-carryover-action-btn,
.group-cash-carryover-modal-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    min-height: 36px;
    padding: .45rem .72rem;
    border-radius: .48rem;
    font-size: .8rem;
    font-weight: 750;
    line-height: 1;
    white-space: nowrap;
}

.group-cash-carryover-action-btn {
    min-width: 112px;
}

.group-cash-carryover-action-btn.btn-outline-info {
    min-width: 150px;
    border-color: var(--group-blue-border);
    color: var(--group-blue);
    background: var(--group-surface);
}

.group-cash-carryover-action-btn.btn-outline-info:hover,
.group-cash-carryover-action-btn.btn-outline-info:focus {
    border-color: var(--group-blue);
    color: #fff;
    background: var(--group-blue);
}

.group-cash-carryover-edit-card,
.group-cash-carryover-history-card {
    width: min(100%, 920px);
    border-color: var(--group-border);
    background: var(--group-surface);
}

.group-cash-carryover-edit-card {
    width: min(100%, 760px);
}

.group-cash-carryover-edit-page,
.group-cash-carryover-history-page {
    display: grid;
    gap: .95rem;
    padding: 1rem;
}

.group-cash-carryover-modal-header {
    margin-bottom: 0;
    align-items: flex-start;
    padding: .95rem;
}

.group-cash-carryover-modal-header .admin-form-title-icon {
    color: var(--group-blue);
    background: var(--group-blue-soft);
    border-color: var(--group-blue-border);
}

.group-cash-carryover-modal-header-copy {
    min-width: 0;
}

.group-cash-carryover-modal-header-copy h1 {
    margin-bottom: .22rem;
    color: var(--group-heading);
    font-size: 1.14rem;
    line-height: 1.2;
}

.group-cash-carryover-modal-header-copy p {
    max-width: 58rem;
    margin-bottom: .45rem;
    color: var(--group-muted);
    font-size: .86rem;
    line-height: 1.45;
}

.group-cash-carryover-edit-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .7rem;
}

.group-cash-carryover-edit-summary-item {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    align-items: center;
    column-gap: .62rem;
    min-width: 0;
    min-height: 74px;
    padding: .78rem;
    border: 1px solid var(--group-border);
    border-radius: .6rem;
    background: var(--group-surface-soft);
}

.group-cash-carryover-edit-summary-item i {
    grid-row: span 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: .5rem;
    color: var(--group-blue);
    background: var(--group-blue-soft);
}

.group-cash-carryover-edit-summary-item span,
.group-cash-carryover-edit-summary-item strong {
    display: block;
    min-width: 0;
}

.group-cash-carryover-edit-summary-item span {
    color: var(--group-muted);
    font-size: .74rem;
    font-weight: 700;
    line-height: 1.2;
}

.group-cash-carryover-edit-summary-item strong {
    margin-top: .18rem;
    color: var(--group-heading);
    font-size: .95rem;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.group-cash-carryover-impact-note {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    align-items: flex-start;
    gap: .65rem;
    padding: .82rem .9rem;
    border: 1px solid var(--group-blue-border);
    border-radius: .65rem;
    color: var(--group-text);
    background: var(--group-blue-soft);
}

.group-cash-carryover-impact-note > i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: .5rem;
    color: var(--group-blue);
    background: var(--group-surface);
}

.group-cash-carryover-impact-note strong,
.group-cash-carryover-impact-note p {
    display: block;
}

.group-cash-carryover-impact-note strong {
    color: var(--group-heading);
    font-size: .86rem;
    line-height: 1.2;
}

.group-cash-carryover-impact-note p {
    margin: .18rem 0 0;
    color: var(--group-muted);
    font-size: .84rem;
    line-height: 1.45;
}

.group-cash-carryover-edit-form {
    display: grid;
    gap: .9rem;
}

.group-cash-carryover-edit-grid {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: .85rem;
    align-items: start;
}

.group-cash-carryover-edit-grid .form-control {
    min-height: 38px;
}

.group-cash-carryover-edit-grid textarea.form-control {
    min-height: 108px;
    resize: vertical;
}

.group-cash-carryover-modal-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(150px, .42fr);
    gap: .55rem;
    margin-top: .1rem;
    padding: .7rem;
    border: 1px solid var(--group-border);
    border-radius: .65rem;
    background: var(--group-surface-soft);
}

.group-cash-carryover-modal-action-btn {
    width: 100%;
}

.group-cash-carryover-card {
    border-color: var(--group-border);
}

.group-cash-carryover-grid {
    display: grid;
    grid-template-columns: minmax(260px, .9fr) minmax(280px, 1fr);
    gap: 1rem;
    align-items: stretch;
}

.group-cash-carryover-current,
.group-cash-carryover-form,
.group-cash-carryover-empty {
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--group-border);
    border-radius: .65rem;
    background: var(--group-surface-raised);
}

.group-cash-carryover-current {
    display: grid;
    gap: .75rem;
}

.group-cash-carryover-current-head {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
}

.group-cash-carryover-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border-radius: .55rem;
    color: var(--group-blue);
    background: var(--group-blue-soft);
}

.group-cash-carryover-current span,
.group-cash-carryover-current strong,
.group-cash-carryover-current small {
    display: block;
}

.group-cash-carryover-current-head span {
    color: var(--group-muted);
    font-size: .78rem;
    font-weight: 650;
}

.group-cash-carryover-current-head strong {
    margin-top: .12rem;
    color: var(--group-heading);
    font-size: 1.28rem;
    font-weight: 780;
    line-height: 1.15;
}

.group-cash-carryover-current p,
.group-cash-carryover-current small {
    margin: 0;
    color: var(--group-muted);
    font-size: .82rem;
    line-height: 1.45;
}

.group-cash-carryover-meta {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}

.group-cash-carryover-meta span {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    min-width: 0;
    padding: .35rem .55rem;
    border: 1px solid var(--group-border);
    border-radius: 999px;
    color: var(--group-text);
    background: var(--group-surface-soft);
    font-size: .76rem;
    line-height: 1.2;
}

.group-cash-carryover-meta i {
    color: var(--group-blue);
}

.group-cash-carryover-form {
    display: flex;
    flex-direction: column;
}

.group-cash-carryover-history {
    margin-top: 1rem;
}

.group-cash-carryover-history-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .65rem;
}

.group-cash-carryover-history-head strong {
    color: var(--group-heading);
    font-size: .94rem;
    font-weight: 750;
}

.group-cash-carryover-history-head span {
    color: var(--group-muted);
    font-size: .8rem;
}

.group-cash-carryover-history-wrap {
    overflow: auto;
}

.group-cash-carryover-history-table th,
.group-cash-carryover-history-table td {
    white-space: nowrap;
}

.group-cash-carryover-history-table td:last-child {
    min-width: 220px;
    white-space: normal;
}

.group-cash-carryover-empty {
    color: var(--group-muted);
    font-size: .84rem;
}

@media (max-width: 1199.98px) {
    .group-wallet-operation-grid-cash {
        grid-template-columns: 1fr;
    }

    .group-cash-carryover-bar {
        grid-template-columns: 1fr;
    }

    .group-cash-carryover-bar-panel {
        justify-content: flex-start;
    }

    .group-cash-carryover-bar-meta,
    .group-cash-carryover-bar-actions {
        justify-content: flex-start;
    }
}

.group-cash-movement-card {
    border-color: var(--group-border);
}

.group-cash-movement-create-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    align-items: stretch;
}

.group-cash-movement-type-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--group-border);
    border-radius: .65rem;
    background: var(--group-surface-raised);
    color: var(--group-text);
}

.group-cash-movement-type-card-header {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    margin-bottom: .9rem;
}

.group-cash-movement-type-card-header h3 {
    margin: 0 0 .2rem;
    color: var(--group-heading);
    font-size: .98rem;
    font-weight: 750;
    letter-spacing: 0;
}

.group-cash-movement-type-card-header p {
    margin: 0;
    color: var(--group-muted);
    font-size: .82rem;
    line-height: 1.42;
}

.group-cash-movement-type-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: .55rem;
    font-size: .95rem;
}

.group-cash-movement-type-icon-danger {
    background: var(--group-red-soft);
    color: var(--group-red);
}

.group-cash-movement-type-icon-success {
    background: var(--group-green-soft);
    color: var(--group-green);
}

.group-cash-movement-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
    align-items: start;
}

.group-cash-movement-card-grid .group-cash-movement-note-field,
.group-cash-movement-card-grid .group-cash-movement-auto-commission {
    grid-column: 1 / -1;
}

.group-cash-movement-auto-commission {
    padding: .72rem .85rem;
    border: 1px dashed var(--group-border);
    border-radius: .55rem;
    background: var(--group-surface-soft);
}

.group-cash-movement-auto-commission span,
.group-cash-movement-auto-commission strong,
.group-cash-movement-auto-commission small {
    display: block;
}

.group-cash-movement-auto-commission span {
    color: var(--group-muted);
    font-size: .78rem;
    font-weight: 650;
}

.group-cash-movement-auto-commission strong {
    margin-top: .12rem;
    color: var(--group-heading);
    font-size: .94rem;
    font-weight: 750;
}

.group-cash-movement-auto-commission small {
    margin-top: .2rem;
    color: var(--group-muted);
    font-size: .78rem;
    line-height: 1.38;
}

.group-cash-movement-commission-estimate {
    display: grid;
    gap: .12rem;
    margin-top: .65rem;
    padding: .58rem .68rem;
    border: 1px solid var(--group-green-border);
    border-radius: .5rem;
    background: var(--group-green-panel);
}

.group-cash-movement-commission-estimate span,
.group-cash-movement-commission-estimate small {
    color: var(--group-muted);
    font-size: .76rem;
}

.group-cash-movement-commission-estimate strong {
    color: var(--group-green);
    font-size: 1rem;
    font-weight: 760;
}

.group-cash-movement-commission-hint {
    display: block;
}

.group-cash-movement-form-grid {
    display: grid;
    grid-template-columns: minmax(170px, .9fr) minmax(150px, .75fr) minmax(150px, .75fr) minmax(150px, .75fr) minmax(220px, 1.25fr);
    gap: .85rem;
    align-items: start;
}

.group-cash-movement-note-field textarea {
    min-height: 42px;
    resize: vertical;
}

.group-cash-movement-effect-preview {
    margin-top: .85rem;
    padding: .72rem .85rem;
    border: 1px solid var(--group-border);
    border-radius: .55rem;
    background: var(--group-surface-soft);
    color: var(--group-text);
    font-size: .86rem;
    line-height: 1.45;
}

.group-cash-movement-effect-preview strong {
    color: var(--group-heading);
}

.group-cash-movement-preview-positive {
    border-color: var(--group-green-border);
    background: var(--group-green-panel);
}

.group-cash-movement-preview-negative {
    border-color: var(--group-red-border);
    background: var(--group-red-panel);
}

.group-cash-movement-history .admin-filter-panel > .card-header {
    cursor: pointer;
}

.group-wallet-page .admin-filter-panel,
.group-limit-tracking-page .admin-filter-panel {
    border-color: var(--group-border);
    background: var(--group-surface);
}

.group-wallet-page .admin-filter-panel > .card-header,
.group-limit-tracking-page .admin-filter-panel > .card-header {
    border-color: var(--group-border);
    background: var(--group-surface-soft);
    color: var(--group-heading);
}

.group-wallet-page .admin-filter-panel > .card-header i,
.group-limit-tracking-page .admin-filter-panel > .card-header i {
    color: var(--group-blue);
}

.group-cash-movement-history .admin-report-table-wrap {
    overflow: auto;
}

.group-wallet-page .admin-report-table-wrap,
.group-limit-tracking-page .admin-report-table-wrap {
    border-color: var(--group-border);
    background: var(--group-surface);
}

.group-wallet-page .admin-data-table,
.group-limit-tracking-page .admin-data-table {
    color: var(--group-text);
    --bs-table-color: var(--group-text);
    --bs-table-bg: var(--group-table-row);
    --bs-table-striped-bg: var(--group-table-stripe);
    --bs-table-striped-color: var(--group-text);
    --bs-table-hover-bg: var(--group-table-hover);
    --bs-table-hover-color: var(--group-heading);
    --bs-table-border-color: var(--group-border-soft);
}

.group-wallet-page .admin-data-table thead th,
.group-limit-tracking-page .admin-data-table thead th {
    background: var(--group-table-head) !important;
    border-color: var(--group-table-head-border) !important;
    color: var(--group-table-head-text) !important;
}

.group-wallet-page .admin-data-table tbody td,
.group-wallet-page .admin-data-table tbody th,
.group-limit-tracking-page .admin-data-table tbody td,
.group-limit-tracking-page .admin-data-table tbody th {
    border-color: var(--group-border-soft) !important;
    color: var(--group-text);
}

.group-wallet-page .admin-data-table tbody tr:hover > *,
.group-limit-tracking-page .admin-data-table tbody tr:hover > * {
    background: var(--group-table-hover) !important;
    color: var(--group-heading) !important;
}

.group-wallet-page .dataTables_wrapper .dataTables_length label,
.group-wallet-page .dataTables_wrapper .dataTables_info,
.group-limit-tracking-page .dataTables_wrapper .dataTables_length label,
.group-limit-tracking-page .dataTables_wrapper .dataTables_info {
    color: var(--group-muted);
}

.group-wallet-page .dataTables_wrapper .dataTables_length select,
.group-limit-tracking-page .dataTables_wrapper .dataTables_length select {
    border-color: var(--group-border);
    background: var(--group-surface-soft);
    color: var(--group-text);
}

.cash-movement-delivery-badge {
    border: 1px solid var(--group-border);
    color: var(--group-text);
    background: var(--group-surface-soft);
}

.group-wallet-page .datatable-GroupCashMovement .badge-success {
    border: 1px solid #b7d9c9;
    color: #176044 !important;
    background: #e4f3ec !important;
}

[data-theme="dark"] .group-wallet-page .datatable-GroupCashMovement .badge-success {
    border-color: #2c5b45;
    color: #a9d8bf !important;
    background: #183629 !important;
}

.cash-movement-note {
    display: inline-block;
    max-width: 280px;
    white-space: normal;
}

.group-cash-movement-edit-header {
    align-items: flex-start;
    margin-bottom: 0;
}

.group-cash-movement-edit-card {
    width: min(820px, calc(100vw - 1rem));
    max-width: 100%;
    margin: 0 auto;
}

.group-cash-movement-edit-page {
    gap: .85rem;
    padding: 1rem;
}

.group-cash-movement-edit-header-copy {
    min-width: 0;
}

.group-cash-movement-edit-notice {
    margin-bottom: 0;
}

.group-cash-movement-edit-scenario {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: .85rem;
    border: 1px solid var(--group-border);
    border-radius: .65rem;
    background: var(--group-surface-raised);
}

.group-cash-movement-edit-scenario strong,
.group-cash-movement-edit-scenario span {
    display: block;
}

.group-cash-movement-edit-scenario strong {
    color: var(--group-heading);
    font-size: .96rem;
    font-weight: 750;
}

.group-cash-movement-edit-scenario span {
    margin-top: .18rem;
    color: var(--group-muted);
    font-size: .82rem;
    line-height: 1.42;
}

.group-cash-movement-edit-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem 1rem;
    align-items: start;
}

.group-cash-movement-edit-note-field {
    grid-column: 1 / -1;
}

.group-cash-movement-edit-note-field textarea {
    min-height: 96px;
    resize: vertical;
}

.group-cash-movement-edit-actions {
    margin-top: 0;
    padding: .85rem;
    border: 1px solid var(--group-border);
    border-radius: .65rem;
    background: var(--group-surface-raised);
}

.group-cash-movement-current-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
    margin-bottom: 1rem;
}

.group-cash-movement-current-summary > div {
    padding: .78rem .85rem;
    border: 1px solid var(--group-border);
    border-radius: .55rem;
    background: var(--group-surface-raised);
}

.group-cash-movement-current-summary span,
.group-cash-movement-current-summary strong {
    display: block;
}

.group-cash-movement-current-summary span {
    color: var(--group-muted);
    font-size: .78rem;
}

.group-cash-movement-current-summary strong {
    color: var(--group-heading);
    font-size: .98rem;
    margin-top: .18rem;
}

.group-wallet-inline-actions {
    align-items: center;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: .1rem;
}

.group-wallet-note-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
}

.group-wallet-note-grid .admin-form-note strong,
.group-wallet-note-grid .admin-form-note span {
    display: block;
}

.group-wallet-note-grid .admin-form-note strong {
    margin-bottom: .25rem;
    color: var(--group-heading);
    font-size: .82rem;
    font-weight: 750;
}

.group-limit-mode-row {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    margin-top: .45rem;
}

.group-limit-status-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    flex-wrap: wrap;
    padding: .75rem .85rem;
    border: 1px solid var(--group-border);
    border-radius: .8rem;
    background: var(--group-surface-soft);
    color: var(--group-text);
}

.group-limit-status-bar > div {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    min-width: 0;
}

.group-limit-status-bar span:not(.badge),
.group-limit-status-bar small {
    color: var(--group-muted);
    font-size: .8rem;
}

.group-limit-table-section .admin-report-table-wrap,
.group-wallet-logs .admin-report-table-wrap {
    overflow: auto;
}

.limit-progress-cell {
    min-width: 170px;
}

.limit-progress {
    height: 9px;
    border-radius: 999px;
    background-color: var(--group-border-soft);
}

.limit-progress .progress-bar {
    border-radius: 999px;
}

.risk-cell {
    min-width: 148px;
}

.risk-meta {
    display: block;
    margin-top: .25rem;
    color: var(--group-muted);
    font-size: .74rem;
}

.withdraw-negative {
    color: #dc3545;
    font-weight: 700;
}

.limit-currency-value {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    white-space: nowrap;
}

.limit-debt-badge {
    display: inline-flex;
    align-items: center;
    padding: .15rem .42rem;
    border-radius: 999px;
    background: var(--group-red-soft);
    color: var(--group-red);
    font-size: .68rem;
    font-weight: 750;
}

.unlimited-label {
    color: var(--group-text);
    font-weight: 700;
}

.inactive-groups-card {
    border-style: dashed;
}

.inactive-group-badge {
    font-size: .68rem;
}

[data-theme="dark"] .group-limit-status-bar {
    border-color: var(--group-border);
    background: var(--group-surface-soft);
}

[data-theme="dark"] .group-wallet-note-grid .admin-form-note strong {
    color: var(--group-heading);
}

[data-theme="dark"] .group-wallet-operation-icon-balance {
    color: var(--group-blue);
    background: var(--group-blue-soft);
}

[data-theme="dark"] .group-wallet-operation-icon-max {
    color: var(--group-amber);
    background: var(--group-amber-soft);
}

[data-theme="dark"] .group-wallet-operation-icon-adjust {
    color: var(--group-green);
    background: var(--group-green-soft);
}

[data-theme="dark"] .group-cash-movement-type-icon-danger {
    background: var(--group-red-soft);
    color: var(--group-red);
}

[data-theme="dark"] .group-cash-movement-type-icon-success {
    background: var(--group-green-soft);
    color: var(--group-green);
}

[data-theme="dark"] .cash-movement-delivery-badge {
    border-color: var(--group-border);
    color: var(--group-heading);
    background: var(--group-surface-soft);
}

[data-theme="dark"] .limit-progress {
    background-color: var(--group-border-soft);
}

[data-theme="dark"] .unlimited-label {
    color: var(--group-text);
}

[data-theme="dark"] .withdraw-negative {
    color: #ff9aaa;
}

[data-theme="dark"] .limit-debt-badge {
    background: var(--group-red-soft);
    color: var(--group-red);
}

.swal2-popup.admin-swal,
.is-fancybox-content .swal2-popup:not(.admin-swal) {
    width: min(34rem, calc(100vw - 2rem));
    padding: 1.15rem;
    color: var(--cp-table-text);
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
    box-shadow: 0 24px 70px rgba(18, 33, 63, .18);
}

.admin-swal .swal2-icon,
.is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-icon {
    width: 5em;
    height: 5em;
    margin: .25rem auto .65rem;
    font-size: .64rem;
}

.admin-swal .swal2-title,
.is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-title {
    padding: 0;
    color: var(--cp-table-text);
    font-size: 1.12rem;
    font-weight: 700;
    letter-spacing: 0;
}

.admin-swal .swal2-html-container,
.is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-html-container {
    margin: .75rem 0 0;
    color: var(--cp-muted);
    font-size: .84rem;
    line-height: 1.45;
    text-align: left;
}

.admin-swal .swal2-actions,
.is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-actions {
    gap: .55rem;
    margin: 1rem 0 0;
}

.admin-swal .swal2-input,
.admin-swal .swal2-textarea {
    width: 100%;
    margin: .35rem 0 0;
    min-height: 38px;
    color: var(--cp-table-text);
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: #f8fbff;
    box-shadow: none;
    font-size: .88rem;
}

.admin-swal .swal2-textarea {
    min-height: 86px;
    resize: vertical;
}

.admin-swal .swal2-input:focus,
.admin-swal .swal2-textarea:focus {
    border-color: var(--cp-primary);
    box-shadow: 0 0 0 .18rem rgba(38, 86, 217, .14);
}

.admin-swal .swal2-input-label {
    justify-content: flex-start;
    margin: .85rem 0 .1rem;
    color: var(--cp-table-text);
    font-size: .82rem;
    font-weight: 650;
}

.admin-swal-confirm,
.admin-swal-cancel,
.is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-confirm,
.is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-cancel {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: .5rem .9rem !important;
    border: 1px solid transparent !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    font-size: .82rem !important;
    font-weight: 650 !important;
    line-height: 1.1 !important;
}

.admin-swal-confirm,
.is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-confirm {
    color: #fff !important;
    background: #2656d9 !important;
}

.admin-swal-confirm:hover,
.is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-confirm:hover {
    background: #1f49bd !important;
}

.admin-swal-confirm:disabled,
.is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-confirm:disabled {
    cursor: not-allowed !important;
    opacity: .58 !important;
}

.admin-swal-confirm-danger {
    background: #dc3545 !important;
}

.admin-swal-confirm-danger:hover {
    background: #bd2c3a !important;
}

.admin-swal-cancel,
.is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-cancel {
    color: #344054 !important;
    border-color: #cdd8e8 !important;
    background: #fff !important;
}

.admin-swal-cancel:hover,
.is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-cancel:hover {
    color: #17233c !important;
    background: #f3f7fc !important;
}

.admin-swal-card,
.admin-swal-alert,
.admin-swal-amount-panel {
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: #f8fbff;
}

.admin-swal-card {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem;
    padding: .72rem;
}

.admin-swal-card.admin-swal-card--focus {
    gap: .65rem;
    padding: .8rem;
    background: #f5f9ff;
}

.admin-swal-card > div,
.admin-swal-amount-item {
    min-width: 0;
}

.admin-swal-card > div {
    padding: .55rem .62rem;
    border: 1px solid rgba(217, 226, 239, .72);
    border-radius: 8px;
    background: rgba(255, 255, 255, .72);
}

.admin-swal-card > div.is-important {
    border-color: rgba(38, 86, 217, .24);
    background: #eef5ff;
}

.admin-swal-card > div.is-amount {
    border-color: rgba(19, 163, 139, .28);
    background: #ecfdf8;
}

.admin-swal-card span,
.admin-swal-amount-item span {
    display: block;
    margin-bottom: .15rem;
    color: var(--cp-muted);
    font-size: .68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.admin-swal-card strong,
.admin-swal-amount-item strong {
    display: block;
    color: var(--cp-table-text);
    font-size: .86rem;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.admin-swal-card > div.is-important strong {
    color: #1d4ed8;
    font-size: .92rem;
}

.admin-swal-card > div.is-amount strong {
    color: #087443;
    font-size: .96rem;
}

.admin-swal-alert {
    margin-top: .65rem;
    padding: .65rem .75rem;
    color: #344054;
    font-size: .8rem;
}

.admin-swal-alert-info {
    color: #164e63;
    border-color: #bae6fd;
    background: #f0f9ff;
}

.admin-swal-alert-warning {
    color: #6f4e00;
    border-color: #f7d773;
    background: #fff8dc;
}

.admin-swal-alert-danger {
    color: #842029;
    border-color: #f1b8bf;
    background: #fff1f3;
}

.admin-swal-field-grid {
    display: grid;
    gap: .72rem;
    margin-top: .8rem;
}

.admin-swal-field-grid--confirm {
    gap: .8rem;
}

.admin-swal-field-grid label {
    display: block;
    margin: 0 0 .25rem;
    color: var(--cp-table-text);
    font-size: .8rem;
    font-weight: 650;
}

.admin-swal-field-grid label.is-required {
    color: #dc3545;
}

.admin-swal-input {
    margin: 0 !important;
}

.admin-swal-control-block {
    padding: .75rem;
    border: 1px solid #d7e3f3;
    border-radius: 10px;
    background: #f8fbff;
}

.admin-swal-checkbox-row {
    display: flex !important;
    align-items: flex-start;
    gap: .65rem;
    text-align: left;
}

.admin-swal-checkbox-row strong {
    display: block;
    color: var(--cp-table-text);
    font-size: .82rem;
    font-weight: 700;
    line-height: 1.35;
}

.admin-swal-checkbox {
    flex: 0 0 auto;
    width: 1rem;
    height: 1rem;
    margin-top: .1rem;
    accent-color: #2656d9;
}

.swal2-popup.admin-adjust-callback-swal {
    max-height: calc(100vh - 1rem);
    overflow-y: auto;
}

.admin-adjust-callback-swal .admin-swal-card.admin-swal-card--focus {
    gap: .55rem;
    padding: .65rem;
}

.admin-adjust-callback-swal .admin-swal-card > div {
    padding: .48rem .55rem;
}

.admin-adjust-callback-swal .admin-swal-field-grid {
    gap: .62rem;
    margin-top: .65rem;
}

.admin-adjust-callback-swal .admin-swal-control-block {
    padding: .62rem;
}

.admin-swal-helper {
    display: block;
    margin-top: .4rem;
    color: #64748b;
    font-size: .76rem;
    line-height: 1.35;
}

.admin-swal-select {
    width: 100% !important;
    height: 2.65rem !important;
    padding: .55rem .75rem !important;
    color: #0f172a !important;
    border: 1px solid #cbd8ea !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: none !important;
}

.admin-swal-select:focus {
    border-color: var(--cp-primary, #2f6fe4) !important;
    outline: 0 !important;
    box-shadow: 0 0 0 .18rem rgba(47, 111, 228, .16) !important;
}

.admin-swal-textarea {
    width: 100% !important;
    min-height: 6.5rem !important;
    padding: .65rem .75rem !important;
    color: #0f172a !important;
    border: 1px solid #cbd8ea !important;
    border-radius: 8px !important;
    background: #fff !important;
    box-shadow: none !important;
    resize: vertical;
}

.admin-swal-textarea:focus {
    border-color: var(--cp-primary, #2f6fe4) !important;
    outline: 0 !important;
    box-shadow: 0 0 0 .18rem rgba(47, 111, 228, .16) !important;
}

.admin-swal-error {
    display: none;
    margin-top: .55rem;
    color: #dc3545;
    font-size: .8rem;
    font-weight: 650;
}

.admin-swal-amount-panel {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .55rem;
    margin-top: .75rem;
    padding: .7rem;
}

.admin-swal-amount-item {
    padding: .55rem;
    border-radius: 8px;
    background: #fff;
}

.admin-swal-amount-item.is-current strong {
    color: #b42318;
}

.admin-swal-amount-item.is-new strong {
    color: #087443;
}

[data-theme="dark"] .swal2-popup.admin-swal,
[data-theme="dark"] .is-fancybox-content .swal2-popup:not(.admin-swal) {
    color: #edf4ff;
    border-color: #34445f;
    background: #111a2b;
    box-shadow: 0 26px 80px rgba(0, 0, 0, .46);
}

[data-theme="dark"] .admin-swal .swal2-title,
[data-theme="dark"] .is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-title,
[data-theme="dark"] .admin-swal-card strong,
[data-theme="dark"] .admin-swal-amount-item strong,
[data-theme="dark"] .admin-swal-field-grid label,
[data-theme="dark"] .admin-swal .swal2-input-label {
    color: #edf4ff;
}

[data-theme="dark"] .admin-swal .swal2-html-container,
[data-theme="dark"] .is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-html-container {
    color: #a9b6cb;
}

[data-theme="dark"] .admin-swal .swal2-input,
[data-theme="dark"] .admin-swal .swal2-textarea,
[data-theme="dark"] .admin-swal .swal2-select,
[data-theme="dark"] .admin-swal-card,
[data-theme="dark"] .admin-swal-amount-panel {
    color: #edf4ff;
    border-color: #34445f;
    background: #0f1a2c;
}

[data-theme="dark"] .admin-swal .swal2-select option {
    color: #edf4ff;
    background: #0f1a2c;
}

[data-theme="dark"] .admin-swal-card.admin-swal-card--focus {
    background: #0f1a2c;
}

[data-theme="dark"] .admin-swal-card > div {
    border-color: rgba(52, 68, 95, .82);
    background: #111f34;
}

[data-theme="dark"] .admin-swal-card > div.is-important {
    border-color: rgba(110, 168, 255, .34);
    background: #132742;
}

[data-theme="dark"] .admin-swal-card > div.is-important strong {
    color: #a8cfff;
}

[data-theme="dark"] .admin-swal-card > div.is-amount {
    border-color: rgba(65, 214, 189, .32);
    background: #0f2d2d;
}

[data-theme="dark"] .admin-swal-card > div.is-amount strong {
    color: #8cf2db;
}

[data-theme="dark"] .admin-swal .swal2-input::placeholder,
[data-theme="dark"] .admin-swal .swal2-textarea::placeholder {
    color: #71819a;
}

[data-theme="dark"] .admin-swal-cancel,
[data-theme="dark"] .is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-cancel {
    color: #dbe7f7 !important;
    border-color: #34445f !important;
    background: #172033 !important;
}

[data-theme="dark"] .admin-swal-cancel:hover,
[data-theme="dark"] .is-fancybox-content .swal2-popup:not(.admin-swal) .swal2-cancel:hover {
    color: #fff !important;
    background: #1c2940 !important;
}

[data-theme="dark"] .admin-swal-alert {
    color: #c8d7ec;
    border-color: #34445f;
    background: #0f1a2c;
}

[data-theme="dark"] .admin-swal-alert-info {
    color: #c8f4ff;
    border-color: #24587a;
    background: #102a3e;
}

[data-theme="dark"] .admin-swal-alert-warning {
    color: #ffe8a3;
    border-color: #665018;
    background: #2d220b;
}

[data-theme="dark"] .admin-swal-alert-danger {
    color: #ffd3d9;
    border-color: #6b2432;
    background: #35141c;
}

[data-theme="dark"] .admin-swal-control-block {
    border-color: #34445f;
    background: #111f34;
}

[data-theme="dark"] .admin-swal-helper {
    color: #9fb0c8;
}

[data-theme="dark"] .admin-swal-textarea {
    color: #edf4ff !important;
    border-color: #34445f !important;
    background: #0f1a2c !important;
}

[data-theme="dark"] .admin-swal-amount-item {
    background: #111f34;
}

.admin-socket-status-backdrop,
.admin-socket-status-dialog,
.admin-socket-status-badge {
    position: fixed;
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease;
}

.admin-socket-status-backdrop[hidden],
.admin-socket-status-dialog[hidden],
.admin-socket-status-badge[hidden] {
    display: none !important;
}

.admin-socket-status-backdrop {
    inset: 0;
    z-index: 2260;
    background: rgba(15, 23, 42, .34);
}

.admin-socket-status-dialog {
    top: 50%;
    left: 50%;
    z-index: 2261;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .9rem;
    width: min(420px, calc(100vw - 2rem));
    padding: 1rem;
    color: #17233c;
    border: 1px solid #f2cc74;
    border-radius: 8px;
    background: #fff9e8;
    box-shadow: 0 26px 76px rgba(15, 23, 42, .28);
    transform: translate(-50%, calc(-50% + 10px));
}

.admin-socket-status-backdrop.is-visible,
.admin-socket-status-dialog.is-visible,
.admin-socket-status-badge.is-visible {
    opacity: 1;
    pointer-events: auto;
}

.admin-socket-status-dialog.is-visible {
    transform: translate(-50%, -50%);
}

.admin-socket-status-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    color: #8a5a00;
    border: 1px solid #f0c866;
    border-radius: 8px;
    background: #fff2c7;
}

.admin-socket-status-icon i {
    position: relative;
    z-index: 1;
    font-size: 1rem;
}

.admin-socket-status-spinner {
    position: absolute;
    inset: 7px;
    border: 2px solid rgba(138, 90, 0, .2);
    border-top-color: #b7791f;
    border-radius: 999px;
    animation: admin-socket-status-spin .9s linear infinite;
}

.admin-socket-status-content {
    min-width: 0;
}

.admin-socket-status-title {
    margin: 0;
    color: #593d00;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.25;
}

.admin-socket-status-message,
.admin-socket-status-helper {
    margin: .42rem 0 0;
    color: #6f4e00;
    font-size: .84rem;
    line-height: 1.45;
}

.admin-socket-status-helper {
    color: #80621a;
    font-size: .78rem;
}

.admin-socket-status-actions {
    grid-column: 2;
    display: flex;
    justify-content: flex-end;
    margin-top: .2rem;
}

.admin-socket-status-dismiss {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: .45rem .8rem;
    color: #593d00;
    border: 1px solid #e7bd55;
    border-radius: 8px;
    background: #fff;
    box-shadow: none;
    font-size: .8rem;
    font-weight: 650;
    line-height: 1.1;
}

.admin-socket-status-dismiss:hover,
.admin-socket-status-dismiss:focus {
    color: #3d2a00;
    border-color: #d2a33d;
    background: #fff7df;
}

.admin-socket-status-dismiss:focus-visible {
    outline: 2px solid rgba(245, 158, 11, .35);
    outline-offset: 2px;
}

.admin-socket-status-badge {
    right: 1rem;
    bottom: 1rem;
    z-index: 2255;
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    max-width: min(360px, calc(100vw - 2rem));
    padding: .72rem .85rem;
    color: #6f4e00;
    border: 1px solid #f0c866;
    border-radius: 8px;
    background: #fff9e8;
    box-shadow: 0 18px 48px rgba(15, 23, 42, .18);
    transform: translateY(8px);
}

.admin-socket-status-badge.is-visible {
    transform: translateY(0);
}

.admin-socket-status-badge > i {
    flex: 0 0 auto;
    color: #b7791f;
    font-size: .92rem;
}

.admin-socket-status-badge-copy {
    min-width: 0;
}

.admin-socket-status-badge-copy strong,
.admin-socket-status-badge-copy span {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-socket-status-badge-copy strong {
    color: #593d00;
    font-size: .8rem;
    font-weight: 700;
    line-height: 1.2;
}

.admin-socket-status-badge-copy span {
    color: #80621a;
    font-size: .74rem;
    line-height: 1.25;
}

@keyframes admin-socket-status-spin {
    to {
        transform: rotate(360deg);
    }
}

[data-theme="dark"] .admin-socket-status-backdrop {
    background: rgba(0, 0, 0, .42);
}

[data-theme="dark"] .admin-socket-status-dialog,
[data-theme="dark"] .admin-socket-status-badge {
    color: #ffe8a3;
    border-color: #665018;
    background: #2d220b;
    box-shadow: 0 26px 80px rgba(0, 0, 0, .48);
}

[data-theme="dark"] .admin-socket-status-icon {
    color: #ffe8a3;
    border-color: rgba(245, 158, 11, .34);
    background: rgba(120, 74, 0, .38);
}

[data-theme="dark"] .admin-socket-status-spinner {
    border-color: rgba(255, 232, 163, .18);
    border-top-color: #f8d56b;
}

[data-theme="dark"] .admin-socket-status-title,
[data-theme="dark"] .admin-socket-status-badge-copy strong {
    color: #fff3c4;
}

[data-theme="dark"] .admin-socket-status-message,
[data-theme="dark"] .admin-socket-status-helper,
[data-theme="dark"] .admin-socket-status-badge-copy span {
    color: #f7dda0;
}

[data-theme="dark"] .admin-socket-status-dismiss {
    color: #ffe8a3;
    border-color: #665018;
    background: #3a2a0d;
}

[data-theme="dark"] .admin-socket-status-dismiss:hover,
[data-theme="dark"] .admin-socket-status-dismiss:focus {
    color: #fff8dd;
    border-color: #8f6c1c;
    background: #47340f;
}

.admin-session-expiry-open {
    overflow: hidden;
}

.admin-session-expiry-backdrop,
.admin-session-expiry-dialog {
    position: fixed;
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease;
}

.admin-session-expiry-backdrop[hidden],
.admin-session-expiry-dialog[hidden] {
    display: none !important;
}

.admin-session-expiry-backdrop {
    inset: 0;
    z-index: 2300;
    background: rgba(15, 23, 42, .46);
}

.admin-session-expiry-dialog {
    top: 50%;
    left: 50%;
    z-index: 2301;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .95rem;
    width: min(440px, calc(100vw - 2rem));
    padding: 1rem;
    color: #17233c;
    border: 1px solid #f0b8b8;
    border-radius: 8px;
    background: #fff7f7;
    box-shadow: 0 28px 82px rgba(15, 23, 42, .32);
    transform: translate(-50%, calc(-50% + 10px));
}

.admin-session-expiry-backdrop.is-visible,
.admin-session-expiry-dialog.is-visible {
    opacity: 1;
    pointer-events: auto;
}

.admin-session-expiry-dialog.is-visible {
    transform: translate(-50%, -50%);
}

.admin-session-expiry-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    color: #a33a3a;
    border: 1px solid #efb1b1;
    border-radius: 8px;
    background: #ffe7e7;
}

.admin-session-expiry-icon i {
    font-size: 1rem;
}

.admin-session-expiry-content {
    min-width: 0;
}

.admin-session-expiry-title {
    margin: 0;
    color: #6f1f1f;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.25;
}

.admin-session-expiry-message,
.admin-session-expiry-helper {
    margin: .42rem 0 0;
    color: #743232;
    font-size: .84rem;
    line-height: 1.45;
}

.admin-session-expiry-helper {
    color: #8a4d4d;
    font-size: .78rem;
}

.admin-session-expiry-actions {
    grid-column: 2;
    display: flex;
    justify-content: flex-end;
    margin-top: .2rem;
}

.admin-session-expiry-login {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: .48rem .9rem;
    color: #fff;
    border: 1px solid #a33a3a;
    border-radius: 8px;
    background: #b33f3f;
    box-shadow: none;
    font-size: .82rem;
    font-weight: 650;
    line-height: 1.1;
}

.admin-session-expiry-login:hover,
.admin-session-expiry-login:focus {
    color: #fff;
    border-color: #8e3030;
    background: #9f3535;
}

.admin-session-expiry-login:focus-visible {
    outline: 2px solid rgba(220, 38, 38, .32);
    outline-offset: 2px;
}

[data-theme="dark"] .admin-session-expiry-backdrop {
    background: rgba(0, 0, 0, .52);
}

[data-theme="dark"] .admin-session-expiry-dialog {
    color: #ffd6d6;
    border-color: #653333;
    background: #2a171b;
    box-shadow: 0 28px 86px rgba(0, 0, 0, .52);
}

[data-theme="dark"] .admin-session-expiry-icon {
    color: #ffd6d6;
    border-color: rgba(248, 113, 113, .35);
    background: rgba(127, 29, 29, .38);
}

[data-theme="dark"] .admin-session-expiry-title {
    color: #ffe2e2;
}

[data-theme="dark"] .admin-session-expiry-message,
[data-theme="dark"] .admin-session-expiry-helper {
    color: #f2b8b8;
}

[data-theme="dark"] .admin-session-expiry-login {
    color: #fff;
    border-color: #8b3a3a;
    background: #a13b3b;
}

[data-theme="dark"] .admin-session-expiry-login:hover,
[data-theme="dark"] .admin-session-expiry-login:focus {
    border-color: #ad4a4a;
    background: #b54848;
}

@media (max-width: 575.98px) {
    .admin-socket-status-dialog {
        grid-template-columns: 1fr;
        gap: .75rem;
        width: calc(100vw - 1.5rem);
        padding: .9rem;
    }

    .admin-socket-status-icon {
        width: 38px;
        height: 38px;
    }

    .admin-socket-status-actions {
        grid-column: 1;
        justify-content: stretch;
    }

    .admin-socket-status-dismiss {
        width: 100%;
    }

    .admin-socket-status-badge {
        right: .75rem;
        bottom: .75rem;
        left: .75rem;
        max-width: none;
    }

    .admin-session-expiry-dialog {
        grid-template-columns: 1fr;
        gap: .75rem;
        width: calc(100vw - 1.5rem);
        padding: .9rem;
    }

    .admin-session-expiry-icon {
        width: 38px;
        height: 38px;
    }

    .admin-session-expiry-actions {
        grid-column: 1;
        justify-content: stretch;
    }

    .admin-session-expiry-login {
        width: 100%;
    }
}

@media (max-width: 576px) {
    .swal2-popup.admin-swal {
        padding: 1rem;
    }

    .swal2-popup.admin-adjust-callback-swal {
        width: calc(100vw - 1rem);
        padding: .75rem;
    }

    .admin-adjust-callback-swal .swal2-icon {
        margin-bottom: .4rem;
    }

    .admin-swal-card,
    .admin-swal-amount-panel {
        grid-template-columns: 1fr;
    }

    .admin-adjust-callback-swal .admin-swal-card.admin-swal-card--focus {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .42rem;
        padding: .5rem;
    }

    .admin-adjust-callback-swal .admin-swal-card > div {
        padding: .4rem .45rem;
    }

    .admin-adjust-callback-swal .admin-swal-card span {
        font-size: .62rem;
    }

    .admin-adjust-callback-swal .admin-swal-card strong {
        font-size: .74rem;
        overflow-wrap: anywhere;
    }

    .admin-adjust-callback-swal .admin-swal-alert {
        margin-top: .5rem;
        padding: .5rem .55rem;
        font-size: .76rem;
    }

    .admin-adjust-callback-swal .admin-swal-field-grid {
        gap: .5rem;
        margin-top: .55rem;
    }

    .admin-adjust-callback-swal .admin-swal-control-block {
        padding: .5rem;
    }

    .admin-adjust-callback-swal .admin-swal-checkbox-row {
        gap: .5rem;
    }

    .admin-adjust-callback-swal .admin-swal-checkbox-row strong {
        font-size: .74rem;
    }

    .admin-adjust-callback-swal .admin-swal-helper {
        margin-top: .25rem;
        font-size: .68rem;
    }

    .admin-adjust-callback-swal .admin-swal-confirm,
    .admin-adjust-callback-swal .admin-swal-cancel {
        min-height: 34px;
        padding: .45rem .6rem;
        font-size: .73rem;
    }
}

@media (max-width: 768px) {
    .admin-report-header {
        align-items: flex-start;
        flex-direction: column;
        padding: .85rem;
    }

    .admin-report-filter-grid,
    .admin-report-summary {
        grid-template-columns: 1fr;
    }

    .admin-report-section,
    .admin-report-filter-body {
        padding: .8rem;
    }

    .admin-report-section-header,
    .admin-report-filter-header {
        padding: .72rem .8rem;
    }

    .admin-report-filter-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-report-advanced-toggle {
        width: 100%;
    }

    .admin-report-amount-grid {
        grid-template-columns: 1fr;
    }

    .admin-report-section-header {
        padding: 0 0 .72rem;
    }

    .group-wallet-operation-grid,
    .group-cash-carryover-grid,
    .group-cash-movement-create-grid,
    .group-cash-movement-card-grid,
    .group-cash-movement-edit-grid,
    .group-cash-movement-form-grid,
    .group-cash-movement-current-summary,
    .group-wallet-note-grid {
        grid-template-columns: 1fr;
    }

    .group-cash-movement-edit-card {
        width: min(100%, calc(100vw - .75rem));
    }

    .group-cash-movement-edit-page {
        padding: .85rem;
    }

    .group-cash-movement-edit-header,
    .group-cash-movement-edit-scenario {
        gap: .65rem;
    }

    .group-cash-movement-edit-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .group-cash-movement-edit-actions .btn {
        width: 100%;
        justify-content: center;
    }

    .group-cash-carryover-edit-card,
    .group-cash-carryover-history-card {
        width: min(100%, calc(100vw - .75rem));
    }

    .group-cash-carryover-edit-page,
    .group-cash-carryover-history-page {
        padding: .85rem;
    }

    .group-cash-carryover-edit-summary {
        grid-template-columns: 1fr;
    }

    .group-cash-carryover-edit-grid,
    .group-cash-carryover-modal-actions {
        grid-template-columns: 1fr;
    }

    .group-cash-carryover-modal-header {
        padding: .85rem;
    }

    .group-cash-carryover-bar {
        grid-template-columns: 1fr;
        gap: .7rem;
        padding: .85rem;
    }

    .group-cash-carryover-bar-icon,
    .group-cash-carryover-bar-meta,
    .group-cash-carryover-bar-actions {
        grid-column: auto;
    }

    .group-cash-carryover-bar-content {
        align-items: flex-start;
    }

    .group-cash-carryover-bar-panel {
        display: grid;
        gap: .65rem;
        justify-content: stretch;
    }

    .group-cash-carryover-bar-title {
        display: grid;
        gap: .18rem;
    }

    .group-cash-carryover-bar-meta,
    .group-cash-carryover-bar-actions {
        justify-content: flex-start;
    }

    .group-cash-carryover-action-btn,
    .group-cash-carryover-modal-actions .btn {
        flex: 1 1 120px;
    }

    .group-cash-carryover-history-head {
        align-items: flex-start;
        flex-direction: column;
    }

    .group-wallet-header-actions,
    .group-wallet-header-actions,
    .group-limit-header-actions {
        width: 100%;
    }

    .group-wallet-header,
    .group-limit-header {
        display: grid;
        grid-template-columns: 44px minmax(0, 1fr);
        align-items: center;
        gap: .75rem;
    }

    .group-wallet-header .admin-form-title-icon,
    .group-limit-header .admin-form-title-icon {
        width: 44px;
        height: 44px;
    }

    .group-wallet-header-copy,
    .group-limit-header-copy {
        min-width: 0;
        flex: none;
    }

    .group-wallet-header-copy h1,
    .group-limit-header-copy h1 {
        white-space: normal;
        word-break: normal;
        overflow-wrap: normal;
    }

    .group-wallet-header-actions,
    .group-limit-header-actions {
        display: grid;
        grid-column: 1 / -1;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .5rem;
        padding: .55rem;
    }

    .group-wallet-header-actions .btn,
    .group-limit-header-actions .btn {
        width: 100%;
        min-width: 0;
        justify-content: center;
    }

    .group-limit-status-bar {
        align-items: flex-start;
        flex-direction: column;
    }
}

.admin-form-validation-toast {
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 2200;
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    max-width: min(360px, calc(100vw - 2rem));
    padding: .72rem .85rem;
    color: #8a1f2d;
    border: 1px solid #f1b8c0;
    border-radius: .85rem;
    background: #fff4f6;
    box-shadow: 0 18px 48px rgba(15, 23, 42, .16);
    font-size: .86rem;
    font-weight: 650;
    line-height: 1.35;
    pointer-events: none;
    opacity: 0;
    transform: translateY(-8px);
    transition: opacity .18s ease, transform .18s ease;
}

.admin-form-validation-toast.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.admin-form-validation-toast i {
    color: #e11d48;
    font-size: .95rem;
}

.admin-form.was-validated .form-control:invalid,
.admin-form.was-validated .custom-select:invalid,
.admin-form .form-control.is-invalid,
.admin-form .custom-select.is-invalid {
    border-color: #ef4444 !important;
    box-shadow: 0 0 0 .15rem rgba(239, 68, 68, .12) !important;
}

.admin-form .select2-container.is-invalid .select2-selection {
    border-color: #ef4444 !important;
    box-shadow: 0 0 0 .15rem rgba(239, 68, 68, .12) !important;
}

[data-theme="dark"] .admin-form-validation-toast {
    color: #ffdbe1;
    border-color: #6b2432;
    background: #35141c;
    box-shadow: 0 18px 48px rgba(0, 0, 0, .38);
}

[data-theme="dark"] .admin-form-validation-toast i {
    color: #fb7185;
}

.daterangepicker {
    color: #1f2937;
    border: 1px solid var(--cp-border);
    border-radius: .85rem;
    background: #ffffff;
    box-shadow: 0 18px 48px rgba(18, 33, 63, .16);
    font-family: inherit;
}

.daterangepicker:before,
.daterangepicker:after {
    border-bottom-color: var(--cp-border);
}

.daterangepicker .calendar-table,
.daterangepicker .calendar-table table,
.daterangepicker td.off,
.daterangepicker td.off.in-range,
.daterangepicker td.off.start-date,
.daterangepicker td.off.end-date {
    color: #98a2b3;
    background: #ffffff;
}

.daterangepicker .calendar-table {
    border-color: transparent;
    border-radius: .7rem;
}

.daterangepicker th.month,
.daterangepicker th,
.daterangepicker td {
    color: #334155;
    font-size: .82rem;
}

.daterangepicker td.available:hover,
.daterangepicker th.available:hover {
    color: #173b86;
    background: #edf4ff;
}

.daterangepicker td.in-range {
    color: #173b86;
    background: #e8f1ff;
}

.daterangepicker td.active,
.daterangepicker td.active:hover {
    color: #ffffff;
    background: var(--cp-primary);
}

.daterangepicker .ranges li {
    color: #475467;
    border-radius: 0;
    font-size: .82rem;
}

.daterangepicker .ranges li:hover,
.daterangepicker .ranges li.active {
    color: #ffffff;
    background: var(--cp-primary);
}

.daterangepicker .drp-buttons {
    border-top: 1px solid var(--cp-border);
}

.daterangepicker .drp-selected {
    color: #667085;
    font-size: .8rem;
}

.daterangepicker .calendar-time select {
    color: #1f2937;
    border: 1px solid var(--cp-border);
    border-radius: .45rem;
    background: #ffffff;
}

[data-theme="dark"] .daterangepicker {
    color: #edf4ff;
    border-color: #34445f;
    background: #111a2b;
    box-shadow: 0 22px 64px rgba(0, 0, 0, .44);
}

[data-theme="dark"] .daterangepicker:before,
[data-theme="dark"] .daterangepicker:after {
    border-bottom-color: #34445f;
}

[data-theme="dark"] .daterangepicker .calendar-table,
[data-theme="dark"] .daterangepicker .calendar-table table {
    color: #edf4ff;
    background: #111a2b;
    border-color: transparent;
}

[data-theme="dark"] .daterangepicker th.month,
[data-theme="dark"] .daterangepicker th,
[data-theme="dark"] .daterangepicker td {
    color: #c8d7ec;
}

[data-theme="dark"] .daterangepicker td.off,
[data-theme="dark"] .daterangepicker td.off.in-range,
[data-theme="dark"] .daterangepicker td.off.start-date,
[data-theme="dark"] .daterangepicker td.off.end-date {
    color: #627189;
    background: #111a2b;
}

[data-theme="dark"] .daterangepicker td.disabled,
[data-theme="dark"] .daterangepicker option.disabled {
    color: #4e5d73;
}

[data-theme="dark"] .daterangepicker td.available:hover,
[data-theme="dark"] .daterangepicker th.available:hover {
    color: #ffffff;
    background: #243653;
}

[data-theme="dark"] .daterangepicker td.in-range {
    color: #d8e8ff;
    background: #182b46;
}

[data-theme="dark"] .daterangepicker td.start-date,
[data-theme="dark"] .daterangepicker td.end-date,
[data-theme="dark"] .daterangepicker td.active,
[data-theme="dark"] .daterangepicker td.active:hover {
    color: #ffffff;
    background: #2f7df0;
}

[data-theme="dark"] .daterangepicker .ranges {
    border-right: 1px solid #34445f;
}

[data-theme="dark"] .daterangepicker .ranges li {
    color: #9fb0c7;
}

[data-theme="dark"] .daterangepicker .ranges li:hover {
    color: #f8fbff;
    background: #1c2940;
}

[data-theme="dark"] .daterangepicker .ranges li.active {
    color: #ffffff;
    background: #145b80;
}

[data-theme="dark"] .daterangepicker .drp-buttons {
    border-top-color: #34445f;
}

[data-theme="dark"] .daterangepicker .drp-selected {
    color: #8fa2ba;
}

[data-theme="dark"] .daterangepicker .calendar-time select,
[data-theme="dark"] .daterangepicker select.hourselect,
[data-theme="dark"] .daterangepicker select.minuteselect,
[data-theme="dark"] .daterangepicker select.secondselect,
[data-theme="dark"] .daterangepicker select.ampmselect {
    color: #edf4ff;
    border-color: #34445f;
    background: #0f1a2c;
}

[data-theme="dark"] .daterangepicker .btn-default,
[data-theme="dark"] .daterangepicker .cancelBtn {
    color: #dbe7f7;
    border-color: #34445f;
    background: #172033;
}

[data-theme="dark"] .bootstrap-datetimepicker-widget.dropdown-menu {
    color: #edf4ff;
    border-color: #34445f;
    background: #111a2b;
    box-shadow: 0 22px 64px rgba(0, 0, 0, .44);
}

[data-theme="dark"] .bootstrap-datetimepicker-widget table td,
[data-theme="dark"] .bootstrap-datetimepicker-widget table th {
    color: #c8d7ec;
}

[data-theme="dark"] .bootstrap-datetimepicker-widget table td.old,
[data-theme="dark"] .bootstrap-datetimepicker-widget table td.new,
[data-theme="dark"] .bootstrap-datetimepicker-widget table td.disabled,
[data-theme="dark"] .bootstrap-datetimepicker-widget table td.disabled:hover {
    color: #627189;
}

[data-theme="dark"] .bootstrap-datetimepicker-widget table td.active,
[data-theme="dark"] .bootstrap-datetimepicker-widget table td.active:hover {
    color: #ffffff;
    background: #2f7df0;
}

[data-theme="dark"] .bootstrap-datetimepicker-widget table td span:hover,
[data-theme="dark"] .bootstrap-datetimepicker-widget table td.day:hover,
[data-theme="dark"] .bootstrap-datetimepicker-widget table th:hover {
    background: #243653;
}

/* Touch-friendly internal scroll surfaces */
.admin-menu-dropdown.admin-flyout-open > .admin-menu-sublist,
.table-responsive,
.admin-detail-tabs,
.admin-report-tabs,
.admin-report-table-wrap,
.admin-scroll-area,
.permission-list,
.role-permission-detail-body,
.select2-results__options,
.modal-body,
.fancybox__content,
.dataTables_wrapper .dataTables_scrollBody,
body > .admin-row-actions-menu--portalled,
body.is-fancybox-content,
.admin-detail-code-grid pre,
.swal2-popup.admin-adjust-callback-swal,
.user-scope-group-list,
.user-scope-site-list,
.user-scope-passive-list,
.group-limit-floating-panel__list {
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x pan-y;
}

/* Shared internal scroll surfaces */
.admin-scroll-area,
.permission-list,
.role-permission-detail-body,
.select2-results__options,
.modal-body,
.fancybox__content,
.dataTables_wrapper .dataTables_scrollBody {
    scrollbar-width: thin;
    scrollbar-color: rgba(82, 111, 150, .58) rgba(226, 234, 246, .72);
}

.admin-scroll-area::-webkit-scrollbar,
.permission-list::-webkit-scrollbar,
.role-permission-detail-body::-webkit-scrollbar,
.select2-results__options::-webkit-scrollbar,
.modal-body::-webkit-scrollbar,
.fancybox__content::-webkit-scrollbar,
.dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.admin-scroll-area::-webkit-scrollbar-track,
.permission-list::-webkit-scrollbar-track,
.role-permission-detail-body::-webkit-scrollbar-track,
.select2-results__options::-webkit-scrollbar-track,
.modal-body::-webkit-scrollbar-track,
.fancybox__content::-webkit-scrollbar-track,
.dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-track {
    background: rgba(226, 234, 246, .72);
    border-radius: 999px;
}

.admin-scroll-area::-webkit-scrollbar-thumb,
.permission-list::-webkit-scrollbar-thumb,
.role-permission-detail-body::-webkit-scrollbar-thumb,
.select2-results__options::-webkit-scrollbar-thumb,
.modal-body::-webkit-scrollbar-thumb,
.fancybox__content::-webkit-scrollbar-thumb,
.dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-thumb {
    background: rgba(82, 111, 150, .58);
    border: 2px solid rgba(226, 234, 246, .72);
    border-radius: 999px;
}

.admin-scroll-area::-webkit-scrollbar-thumb:hover,
.permission-list::-webkit-scrollbar-thumb:hover,
.role-permission-detail-body::-webkit-scrollbar-thumb:hover,
.select2-results__options::-webkit-scrollbar-thumb:hover,
.modal-body::-webkit-scrollbar-thumb:hover,
.fancybox__content::-webkit-scrollbar-thumb:hover,
.dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-thumb:hover {
    background: rgba(38, 91, 163, .78);
}

[data-theme="dark"] .admin-scroll-area,
[data-theme="dark"] .permission-list,
[data-theme="dark"] .role-permission-detail-body,
[data-theme="dark"] .select2-results__options,
[data-theme="dark"] .modal-body,
[data-theme="dark"] .fancybox__content,
[data-theme="dark"] .dataTables_wrapper .dataTables_scrollBody {
    scrollbar-color: rgba(119, 154, 197, .52) rgba(17, 26, 43, .7);
}

[data-theme="dark"] .admin-scroll-area::-webkit-scrollbar-track,
[data-theme="dark"] .permission-list::-webkit-scrollbar-track,
[data-theme="dark"] .role-permission-detail-body::-webkit-scrollbar-track,
[data-theme="dark"] .select2-results__options::-webkit-scrollbar-track,
[data-theme="dark"] .modal-body::-webkit-scrollbar-track,
[data-theme="dark"] .fancybox__content::-webkit-scrollbar-track,
[data-theme="dark"] .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-track {
    background: rgba(17, 26, 43, .7);
}

[data-theme="dark"] .admin-scroll-area::-webkit-scrollbar-thumb,
[data-theme="dark"] .permission-list::-webkit-scrollbar-thumb,
[data-theme="dark"] .role-permission-detail-body::-webkit-scrollbar-thumb,
[data-theme="dark"] .select2-results__options::-webkit-scrollbar-thumb,
[data-theme="dark"] .modal-body::-webkit-scrollbar-thumb,
[data-theme="dark"] .fancybox__content::-webkit-scrollbar-thumb,
[data-theme="dark"] .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-thumb {
    background: rgba(119, 154, 197, .52);
    border-color: rgba(17, 26, 43, .7);
}

[data-theme="dark"] .admin-scroll-area::-webkit-scrollbar-thumb:hover,
[data-theme="dark"] .permission-list::-webkit-scrollbar-thumb:hover,
[data-theme="dark"] .role-permission-detail-body::-webkit-scrollbar-thumb:hover,
[data-theme="dark"] .select2-results__options::-webkit-scrollbar-thumb:hover,
[data-theme="dark"] .modal-body::-webkit-scrollbar-thumb:hover,
[data-theme="dark"] .fancybox__content::-webkit-scrollbar-thumb:hover,
[data-theme="dark"] .dataTables_wrapper .dataTables_scrollBody::-webkit-scrollbar-thumb:hover {
    background: rgba(76, 201, 185, .62);
}

/* Role create permission matrix */
.admin-form .permission-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .65rem;
    margin-bottom: .9rem;
    border: 1px solid #d7e4f5;
    border-radius: .9rem;
    background: #f8fbff;
}

.admin-form .permission-toolbar-search-wrap {
    position: relative;
    flex: 1 1 420px;
    min-width: 260px;
}

.admin-form .permission-toolbar-search-wrap i {
    position: absolute;
    top: 50%;
    left: .85rem;
    z-index: 2;
    color: #2f6bda;
    font-size: .82rem;
    transform: translateY(-50%);
}

.admin-form .permission-toolbar .permission-toolbar-search {
    width: 100%;
    min-width: 0;
    padding-left: 2.15rem;
    font-size: .86rem;
}

.admin-form .permission-toolbar-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: .45rem;
    flex-wrap: wrap;
}

.admin-form .permission-toolbar-btn,
.admin-form .permission-group-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .38rem;
    min-height: 2rem;
    border-radius: .5rem;
    font-size: .78rem;
    font-weight: 650;
    line-height: 1;
    box-shadow: none;
}

.admin-form .permission-toolbar-btn-primary {
    color: #155eef;
    border: 1px solid #b9d3ff;
    background: #edf4ff;
}

.admin-form .permission-toolbar-btn-secondary {
    color: #475467;
    border: 1px solid #d0d9e7;
    background: #ffffff;
}

.admin-form .permission-toolbar-btn:hover,
.admin-form .permission-group-action-btn:hover {
    border-color: #2f6bda;
    color: #173b86;
    background: #e8f1ff;
}

.admin-form .permission-total-counter {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0 .75rem;
    color: #155eef;
    border: 1px solid #b9d3ff;
    border-radius: 999px;
    background: #edf4ff;
    font-size: .78rem;
    font-weight: 700;
    white-space: nowrap;
}

.admin-form .permission-group-grid {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: .85rem;
}

.admin-form .permission-group-card {
    overflow: hidden;
    border: 1px solid #d7e4f5;
    border-radius: .95rem;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(18, 33, 63, .06);
}

.admin-form .permission-group-card .card-header {
    display: grid;
    grid-template-columns: 1fr;
    gap: .62rem;
    align-items: stretch;
    padding: .78rem .85rem;
    border-bottom: 1px solid #dce7f6;
    background: #f7fbff;
}

.admin-form .permission-group-title {
    color: #10213f;
    font-size: .88rem;
    font-weight: 750;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.admin-form .permission-group-count {
    margin-top: .15rem;
    color: #667085;
    font-size: .74rem;
    font-weight: 650;
}

.admin-form .permission-group-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    flex-wrap: nowrap;
    gap: 0;
    white-space: nowrap;
}

.admin-form .permission-group-action-btn {
    color: #475467;
    border: 1px solid #d0d9e7;
    background: #ffffff;
    min-width: 0;
}

.admin-form .permission-group-actions .permission-group-action-btn + .permission-group-action-btn {
    margin-left: -1px;
}

.admin-form .permission-group-card .card-body {
    padding: .75rem;
}

.admin-form .permission-list {
    max-height: 320px;
    padding-right: .35rem;
    overflow-y: auto;
}

.admin-form .permission-item {
    gap: .55rem;
    padding: .68rem .72rem;
    margin-bottom: .48rem;
    border-color: #dbe5f2;
    border-radius: .72rem;
    background: #ffffff;
    font-size: .82rem;
}

.admin-form .permission-item:hover {
    border-color: #9fc3ff;
    background: #f5f9ff;
}

.admin-form .permission-item:has(input:checked) {
    border-color: #86b7ff;
    background: #edf6ff;
    box-shadow: inset 3px 0 0 #2f6bda;
}

.admin-form .permission-item input[type="checkbox"] {
    flex: 0 0 auto;
    width: .95rem;
    height: .95rem;
    margin-top: .15rem;
    accent-color: #2f6bda;
}

.admin-form .permission-item .permission-label {
    color: #17243d;
    font-size: .82rem;
    font-weight: 700;
}

.admin-form .permission-item .permission-key {
    margin-top: .15rem;
    color: #667085 !important;
    font-size: .72rem;
    font-weight: 600;
}

[data-theme="dark"] .admin-form .permission-toolbar {
    border-color: #2b3d59;
    background: #111a2b;
}

[data-theme="dark"] .admin-form .permission-toolbar-search-wrap i {
    color: #7db7ff;
}

[data-theme="dark"] .admin-form .permission-toolbar-btn-primary,
[data-theme="dark"] .admin-form .permission-total-counter {
    color: #cde4ff;
    border-color: #28598c;
    background: #102c46;
}

[data-theme="dark"] .admin-form .permission-toolbar-btn-secondary,
[data-theme="dark"] .admin-form .permission-group-action-btn {
    color: #d8e8ff;
    border-color: #34445f;
    background: #172033;
}

[data-theme="dark"] .admin-form .permission-toolbar-btn:hover,
[data-theme="dark"] .admin-form .permission-group-action-btn:hover {
    color: #ffffff;
    border-color: #3b82f6;
    background: #1c3b63;
}

[data-theme="dark"] .admin-form .permission-group-card {
    border-color: #2b3d59;
    background: #111a2b;
    box-shadow: 0 16px 42px rgba(0, 0, 0, .22);
}

[data-theme="dark"] .admin-form .permission-group-card .card-header {
    border-bottom-color: #2b3d59;
    background: #0f1a2c;
}

[data-theme="dark"] .admin-form .permission-group-title {
    color: #edf4ff;
}

[data-theme="dark"] .admin-form .permission-group-count {
    color: #9fb0c7;
}

[data-theme="dark"] .admin-form .permission-item {
    color: #dbe7f7;
    border-color: #34445f;
    background: #111a2b;
}

[data-theme="dark"] .admin-form .permission-item:hover {
    border-color: #3f6ea5;
    background: #16233a;
}

[data-theme="dark"] .admin-form .permission-item:has(input:checked) {
    border-color: #3b82f6;
    background: #112f50;
    box-shadow: inset 3px 0 0 #4cc9b9;
}

[data-theme="dark"] .admin-form .permission-item .permission-label {
    color: #edf4ff;
}

[data-theme="dark"] .admin-form .permission-item .permission-key {
    color: #9fb0c7 !important;
}

.withdraw-transfer-groupless-option {
    margin: -.1rem 0 .65rem;
    padding: 0;
    border: 0;
    background: transparent;
}

.withdraw-transfer-groupless-option.is-selected {
    background: transparent;
    box-shadow: none;
}

.withdraw-transfer-groupless-check {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    margin: 0;
    cursor: pointer;
}

.withdraw-transfer-groupless-check input {
    width: .92rem;
    height: .92rem;
    flex: 0 0 auto;
    margin: 0;
    accent-color: #3b82f6;
}

.withdraw-transfer-groupless-copy {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    color: #5f6f86;
    font-size: .76rem;
    font-weight: 650;
    line-height: 1.25;
}

.withdraw-transfer-groupless-option.is-selected .withdraw-transfer-groupless-copy {
    color: #1d4ed8;
}

.withdraw-transfer-group-field.is-disabled {
    opacity: .62;
}

.withdraw-transfer-group-field.is-disabled label {
    color: #7c8797;
}

[data-theme="dark"] .withdraw-transfer-groupless-option {
    background: transparent;
}

[data-theme="dark"] .withdraw-transfer-groupless-option.is-selected {
    background: transparent;
    box-shadow: none;
}

[data-theme="dark"] .withdraw-transfer-groupless-copy {
    color: #9fb0c7;
}

[data-theme="dark"] .withdraw-transfer-groupless-option.is-selected .withdraw-transfer-groupless-copy {
    color: #a8d0ff;
}

[data-theme="dark"] .withdraw-transfer-group-field.is-disabled label {
    color: #93a4ba;
}

.withdraw-pool-page .admin-page-note {
    margin-bottom: .85rem;
}

.withdraw-pool-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
    margin-bottom: .9rem;
}

.withdraw-pool-summary-item {
    display: flex;
    align-items: flex-start;
    gap: .7rem;
    padding: .8rem .9rem;
    border: 1px solid #d7e4f5;
    border-radius: .85rem;
    background: #f8fbff;
}

.withdraw-pool-summary-item i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    color: #155eef;
    border: 1px solid #cfe0ff;
    border-radius: .65rem;
    background: #edf4ff;
}

.withdraw-pool-summary-item strong {
    display: block;
    color: #10213f;
    font-size: .9rem;
    font-weight: 750;
    line-height: 1.2;
}

.withdraw-pool-summary-item span {
    display: block;
    margin-top: .2rem;
    color: #667085;
    font-size: .78rem;
    font-weight: 600;
    line-height: 1.35;
}

.withdraw-pool-row-actions {
    flex-wrap: nowrap !important;
    white-space: nowrap;
}

.withdraw-pool-table td:first-child {
    min-width: 118px;
}

.withdraw-pool-take-card {
    margin-bottom: 0;
}

.is-fancybox-content .withdraw-pool-take-card {
    width: min(calc(100vw - 1rem), 520px);
    max-width: 520px;
    margin: 0 auto !important;
}

.is-fancybox-content .withdraw-pool-take-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.withdraw-pool-take-page {
    padding: .62rem;
}

.withdraw-pool-take-shell {
    display: grid;
    gap: .5rem;
}

.withdraw-pool-take-hero {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    align-items: center;
    gap: .58rem;
    padding: .55rem .65rem;
    border: 1px solid #dbe5f2;
    border-radius: .75rem;
    background: #f8fbff;
}

.withdraw-pool-take-hero-icon,
.withdraw-pool-take-success-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.withdraw-pool-take-hero-icon {
    width: 34px;
    height: 34px;
    color: #155eef;
    border: 1px solid #cfe0ff;
    border-radius: .65rem;
    background: #edf4ff;
}

.withdraw-pool-take-hero h1 {
    margin: 0;
    color: #10213f;
    font-size: .96rem;
    font-weight: 750;
    line-height: 1.2;
}

.withdraw-pool-take-hero p {
    margin: .15rem 0 0;
    color: #667085;
    font-size: .72rem;
    font-weight: 600;
    line-height: 1.34;
}

.withdraw-pool-take-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .42rem;
    margin: 0;
}

.withdraw-pool-take-summary-item {
    min-width: 0;
    padding: .46rem .56rem;
    border: 1px solid #dbe5f2;
    border-radius: .7rem;
    background: #f8fbff;
}

.withdraw-pool-take-summary-item span {
    display: block;
    color: #667085;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .01em;
    text-transform: uppercase;
}

.withdraw-pool-take-summary-item strong {
    display: block;
    margin-top: .2rem;
    color: #10213f;
    font-size: .82rem;
    font-weight: 750;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.withdraw-pool-take-summary-amount strong {
    color: #155eef;
}

.withdraw-pool-take-form {
    gap: .5rem;
}

.withdraw-pool-take-section {
    padding: .58rem;
    border-radius: .75rem;
}

.withdraw-pool-take-section .admin-form-section-header {
    margin-bottom: .45rem;
    padding-bottom: .42rem;
}

.withdraw-pool-take-section .admin-form-section-header h2 {
    font-size: .9rem;
}

.withdraw-pool-take-section .admin-form-section-header p,
.withdraw-pool-take-section .admin-page-note span,
.withdraw-pool-take-section .form-text {
    font-size: .72rem;
    line-height: 1.34;
}

.withdraw-pool-take-section .admin-page-note {
    padding: .5rem .58rem;
    border-radius: .68rem;
}

.withdraw-pool-take-section .admin-page-note.mb-3 {
    margin-bottom: .5rem !important;
}

.withdraw-pool-take-section .form-group label {
    margin-bottom: .25rem;
    font-size: .75rem;
}

.withdraw-pool-take-actions {
    gap: .45rem;
    padding: .5rem .58rem;
    border-radius: .75rem;
}

.withdraw-pool-take-actions .btn,
.withdraw-pool-take-success .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .42rem;
    min-height: 34px;
    padding: .42rem .78rem;
    border-radius: .55rem;
    font-size: .8rem;
    font-weight: 700;
    line-height: 1.1;
}

.withdraw-pool-take-success {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    min-height: 285px;
    padding: 1.15rem .9rem;
    text-align: center;
    border: 1px solid rgba(39, 174, 96, .32);
    border-radius: .78rem;
    background: #effaf3;
}

.withdraw-pool-take-success-icon {
    width: 52px;
    height: 52px;
    margin: 0 auto .75rem;
    color: #0f8a45;
    border: 1px solid rgba(39, 174, 96, .28);
    border-radius: 50%;
    background: #dff8e8;
    font-size: 1.22rem;
}

.withdraw-pool-take-success h2 {
    margin: 0;
    color: #0f5132;
    font-size: 1rem;
    font-weight: 750;
    line-height: 1.25;
}

.withdraw-pool-take-success p {
    max-width: 360px;
    margin: .42rem 0 .85rem;
    color: #386251;
    font-size: .8rem;
    font-weight: 600;
    line-height: 1.42;
}

[data-theme="dark"] .withdraw-pool-summary-item,
[data-theme="dark"] .withdraw-pool-take-summary-item {
    border-color: #2b3d59;
    background: #111a2b;
}

[data-theme="dark"] .withdraw-pool-summary-item i,
[data-theme="dark"] .withdraw-pool-take-hero-icon {
    color: #8fc7ff;
    border-color: #28598c;
    background: #102c46;
}

[data-theme="dark"] .withdraw-pool-summary-item strong,
[data-theme="dark"] .withdraw-pool-take-summary-item strong,
[data-theme="dark"] .withdraw-pool-take-hero h1 {
    color: #edf4ff;
}

[data-theme="dark"] .withdraw-pool-summary-item span,
[data-theme="dark"] .withdraw-pool-take-summary-item span,
[data-theme="dark"] .withdraw-pool-take-hero p {
    color: #9fb0c7;
}

[data-theme="dark"] .withdraw-pool-take-hero {
    border-color: #2b3d59;
    background: #111a2b;
}

[data-theme="dark"] .withdraw-pool-take-summary-amount strong {
    color: #8fc7ff;
}

[data-theme="dark"] .withdraw-pool-take-success {
    border-color: rgba(76, 201, 185, .28);
    background: #0f2b23;
}

[data-theme="dark"] .withdraw-pool-take-success-icon {
    color: #84f0c4;
    border-color: rgba(76, 201, 185, .32);
    background: #123d32;
}

[data-theme="dark"] .withdraw-pool-take-success h2 {
    color: #d8ffe7;
}

[data-theme="dark"] .withdraw-pool-take-success p {
    color: #a9d8c6;
}

@media (max-width: 767.98px) {
    .withdraw-pool-summary,
    .withdraw-pool-take-summary {
        grid-template-columns: 1fr;
    }

    .withdraw-pool-page .admin-page-note {
        align-items: flex-start;
    }
}

@media (max-width: 992px) {
    .admin-form .permission-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .admin-form .permission-toolbar-search-wrap {
        flex-basis: auto;
        width: 100%;
        min-width: 100%;
    }

    .admin-form .permission-toolbar-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 576px) {
    .admin-form .permission-group-card .card-header {
        grid-template-columns: 1fr;
    }

    .admin-form .permission-group-actions {
        width: 100%;
    }

    .admin-form .permission-group-action-btn {
        flex: 1 1 0;
    }

    .admin-form .permission-toolbar-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .admin-form .permission-total-counter {
        justify-content: center;
    }
}

.admin-dashboard-page {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.admin-dashboard-card {
    background: #ffffff;
    border: 1px solid #d7e3f4;
    border-radius: 12px;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .08);
}

.admin-dashboard-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 18px;
}

.admin-dashboard-hero-main {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.admin-dashboard-hero-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #2563eb;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
}

.admin-dashboard-hero h1 {
    margin: 0 0 4px;
    color: #0f172a;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0;
}

.admin-dashboard-hero p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

.admin-dashboard-refresh {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    color: #64748b;
    font-size: 12px;
    white-space: nowrap;
}

@media (min-width: 992px) {
    .admin-dashboard-refresh {
        margin-right: 168px;
    }
}

.admin-dashboard-error {
    margin: 0;
}

.admin-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.admin-dashboard-chart-card {
    overflow: hidden;
}

.admin-dashboard-card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px 12px;
    border-bottom: 1px solid #e2e8f0;
}

.admin-dashboard-card-header h2 {
    margin: 0 0 4px;
    color: #0f172a;
    font-size: 16px;
    font-weight: 700;
}

.admin-dashboard-card-header p {
    margin: 0;
    color: #64748b;
    font-size: 12px;
}

.admin-dashboard-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 4px 10px;
    border-radius: 999px;
    color: #0369a1;
    background: #e0f2fe;
    border: 1px solid #bae6fd;
    font-size: 11px;
    font-weight: 700;
}

.admin-dashboard-chip-secondary {
    color: #0f766e;
    background: #ccfbf1;
    border-color: #99f6e4;
}

.admin-dashboard-chart-shell {
    position: relative;
    height: 320px;
    padding: 14px;
}

.admin-dashboard-chart-shell canvas {
    position: relative;
    z-index: 1;
}

.admin-dashboard-skeleton {
    position: absolute;
    inset: 14px;
    z-index: 2;
    display: none;
    border-radius: 10px;
    background:
        linear-gradient(90deg, rgba(226, 232, 240, .55) 25%, rgba(241, 245, 249, .95) 37%, rgba(226, 232, 240, .55) 63%),
        repeating-linear-gradient(to bottom, transparent 0 44px, rgba(148, 163, 184, .18) 45px 46px);
    background-size: 420px 100%, 100% 100%;
    animation: admin-dashboard-loading 1.15s ease-in-out infinite;
}

.admin-dashboard-chart-shell.is-loading .admin-dashboard-skeleton {
    display: block;
}

.admin-dashboard-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.admin-dashboard-metric {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
    padding: 16px;
    border-radius: 12px;
    background: #ffffff;
    border: 1px solid #d7e3f4;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .08);
}

.admin-dashboard-metric i {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    font-size: 16px;
}

.admin-dashboard-metric span {
    display: block;
    margin-bottom: 5px;
    color: #64748b;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.admin-dashboard-metric strong {
    display: block;
    color: #0f172a;
    font-size: 20px;
    font-weight: 800;
}

.admin-dashboard-metric-success i {
    color: #15803d;
    background: #dcfce7;
}

.admin-dashboard-metric-danger i {
    color: #be123c;
    background: #ffe4e6;
}

.admin-dashboard-metric-info i {
    color: #0369a1;
    background: #e0f2fe;
}

@keyframes admin-dashboard-loading {
    0% { background-position: -420px 0, 0 0; }
    100% { background-position: 420px 0, 0 0; }
}

[data-theme="dark"] .admin-dashboard-card,
[data-theme="dark"] .admin-dashboard-metric {
    background: #111c2f;
    border-color: #28415f;
    box-shadow: 0 18px 44px rgba(0, 0, 0, .22);
}

[data-theme="dark"] .admin-dashboard-hero-icon {
    color: #93c5fd;
    background: #10243f;
    border-color: #315783;
}

[data-theme="dark"] .admin-dashboard-hero h1,
[data-theme="dark"] .admin-dashboard-card-header h2,
[data-theme="dark"] .admin-dashboard-metric strong {
    color: #f8fafc;
}

[data-theme="dark"] .admin-dashboard-hero p,
[data-theme="dark"] .admin-dashboard-refresh,
[data-theme="dark"] .admin-dashboard-card-header p,
[data-theme="dark"] .admin-dashboard-metric span {
    color: #9fb3ce;
}

[data-theme="dark"] .admin-dashboard-card-header {
    border-color: #28415f;
}

[data-theme="dark"] .admin-dashboard-chip {
    color: #fef3c7;
    background: #5f430a;
    border-color: #8a6512;
}

[data-theme="dark"] .admin-dashboard-chip-secondary {
    color: #bbf7d0;
    background: #0e3b2a;
    border-color: #176647;
}

[data-theme="dark"] .admin-dashboard-skeleton {
    background:
        linear-gradient(90deg, rgba(31, 49, 75, .55) 25%, rgba(48, 70, 103, .9) 37%, rgba(31, 49, 75, .55) 63%),
        repeating-linear-gradient(to bottom, transparent 0 44px, rgba(148, 163, 184, .12) 45px 46px);
    background-size: 420px 100%, 100% 100%;
}

[data-theme="dark"] .admin-dashboard-metric-success i {
    color: #86efac;
    background: #123d2a;
}

[data-theme="dark"] .admin-dashboard-metric-danger i {
    color: #fda4af;
    background: #4c1420;
}

[data-theme="dark"] .admin-dashboard-metric-info i {
    color: #7dd3fc;
    background: #10344c;
}

@media (max-width: 991.98px) {
    .admin-dashboard-grid,
    .admin-dashboard-summary {
        grid-template-columns: 1fr;
    }

    .admin-dashboard-hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-dashboard-refresh {
        justify-content: space-between;
        width: 100%;
    }
}

@media (max-width: 575.98px) {
    .admin-dashboard-hero,
    .admin-dashboard-card-header,
    .admin-dashboard-metric {
        padding: 14px;
    }

    .admin-dashboard-chart-shell {
        height: 280px;
        padding: 10px;
    }

    .admin-dashboard-skeleton {
        inset: 10px;
    }

    .admin-dashboard-refresh {
        align-items: stretch;
        flex-direction: column;
    }
}

/* Admin system health page */
.admin-system-health-page {
    display: grid;
    gap: 16px;
}

.admin-system-health-hero,
.admin-system-health-status,
.admin-system-health-metric,
.admin-system-health-card {
    background: #ffffff;
    border: 1px solid #d7e3f4;
    border-radius: 8px;
    box-shadow: 0 14px 36px rgba(15, 23, 42, .07);
}

.admin-system-health-hero {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 16px;
    padding: 18px;
}

.admin-system-health-heading {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.admin-system-health-icon {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #075985;
    background: #e0f2fe;
    border: 1px solid #bae6fd;
    border-radius: 8px;
    font-size: 18px;
}

.admin-system-health-heading h1 {
    margin: 0 0 4px;
    color: #0f172a;
    font-size: 22px;
    font-weight: 750;
}

.admin-system-health-heading p,
.admin-system-health-card-header p,
.admin-system-health-status p,
.admin-system-health-metric small,
.admin-system-health-task-grid p {
    margin: 0;
    color: #64748b;
    font-size: 12px;
    line-height: 1.45;
}

.admin-system-health-actions {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    flex: 0 0 auto;
    color: #64748b;
    font-size: 12px;
}

.admin-system-health-alert {
    margin: 0;
}

.admin-page-note-warning {
    color: #513a04;
    border-color: rgba(245, 158, 11, .28);
    background: #fffbeb;
}

.admin-page-note-warning i {
    color: #b45309;
}

.admin-system-health-summary {
    display: grid;
    grid-template-columns: 1.2fr repeat(2, minmax(0, .9fr));
    gap: 16px;
}

.admin-system-health-status,
.admin-system-health-metric {
    min-width: 0;
    padding: 16px;
}

.admin-system-health-status {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 14px;
}

.admin-system-health-status > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.admin-system-health-label,
.admin-system-health-metric span {
    display: block;
    color: #475569;
    font-size: 11px;
    font-weight: 750;
    text-transform: uppercase;
}

.admin-system-health-metric {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.admin-system-health-metric > i,
.admin-system-health-task-grid > article > i {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-size: 15px;
}

.admin-system-health-metric > i {
    color: #0f766e;
    background: #ccfbf1;
    border: 1px solid #99f6e4;
}

.admin-system-health-metric div {
    min-width: 0;
}

.admin-system-health-metric strong {
    display: block;
    margin: 4px 0 3px;
    color: #0f172a;
    font-size: 16px;
    font-weight: 750;
    overflow-wrap: anywhere;
}

.admin-system-health-card {
    overflow: hidden;
}

.admin-system-health-card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 18px 12px;
    border-bottom: 1px solid #e2e8f0;
}

.admin-system-health-card-header h2 {
    margin: 0 0 4px;
    color: #0f172a;
    font-size: 16px;
    font-weight: 750;
}

.admin-system-health-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 4px 10px;
    color: #075985;
    background: #e0f2fe;
    border: 1px solid #bae6fd;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
}

.admin-system-health-task-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
}

.admin-system-health-task-grid > article {
    display: flex;
    gap: 12px;
    min-width: 0;
    padding: 16px;
    border-right: 1px solid #e2e8f0;
}

.admin-system-health-task-grid > article:last-child {
    border-right: 0;
}

.admin-system-health-task-grid > article > i {
    color: #1d4ed8;
    background: #dbeafe;
    border: 1px solid #bfdbfe;
}

.admin-system-health-task-grid h3 {
    margin: 0 0 4px;
    color: #0f172a;
    font-size: 13px;
    font-weight: 750;
}

[data-theme="dark"] .admin-system-health-hero,
[data-theme="dark"] .admin-system-health-status,
[data-theme="dark"] .admin-system-health-metric,
[data-theme="dark"] .admin-system-health-card {
    background: #111c2f;
    border-color: #28415f;
    box-shadow: 0 14px 36px rgba(0, 0, 0, .22);
}

[data-theme="dark"] .admin-system-health-icon {
    color: #7dd3fc;
    background: #10344c;
    border-color: #24587a;
}

[data-theme="dark"] .admin-system-health-heading h1,
[data-theme="dark"] .admin-system-health-card-header h2,
[data-theme="dark"] .admin-system-health-metric strong,
[data-theme="dark"] .admin-system-health-task-grid h3 {
    color: #f8fafc;
}

[data-theme="dark"] .admin-system-health-heading p,
[data-theme="dark"] .admin-system-health-card-header p,
[data-theme="dark"] .admin-system-health-status p,
[data-theme="dark"] .admin-system-health-metric small,
[data-theme="dark"] .admin-system-health-task-grid p,
[data-theme="dark"] .admin-system-health-actions {
    color: #9fb3ce;
}

[data-theme="dark"] .admin-system-health-label,
[data-theme="dark"] .admin-system-health-metric span {
    color: #c5d1e2;
}

[data-theme="dark"] .admin-page-note-warning {
    color: #f9d98a;
    border-color: rgba(245, 158, 11, .32);
    background: rgba(120, 74, 0, .26);
}

[data-theme="dark"] .admin-page-note-warning i {
    color: #fbbf24;
}

[data-theme="dark"] .admin-system-health-metric > i {
    color: #99f6e4;
    background: #0f3b36;
    border-color: #1e6b61;
}

[data-theme="dark"] .admin-system-health-card-header,
[data-theme="dark"] .admin-system-health-task-grid > article {
    border-color: #28415f;
}

[data-theme="dark"] .admin-system-health-chip {
    color: #a5e4ff;
    background: #10344c;
    border-color: #24587a;
}

[data-theme="dark"] .admin-system-health-task-grid > article > i {
    color: #bfdbfe;
    background: #172f54;
    border-color: #315783;
}

@media (max-width: 1199.98px) {
    .admin-system-health-summary {
        grid-template-columns: 1fr;
    }

    .admin-system-health-task-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-system-health-task-grid > article:nth-child(2n) {
        border-right: 0;
    }

    .admin-system-health-task-grid > article:nth-child(n + 3) {
        border-top: 1px solid #e2e8f0;
    }

    [data-theme="dark"] .admin-system-health-task-grid > article:nth-child(n + 3) {
        border-top-color: #28415f;
    }
}

@media (max-width: 767.98px) {
    .admin-system-health-hero,
    .admin-system-health-actions,
    .admin-system-health-card-header,
    .admin-system-health-status > div {
        align-items: stretch;
        flex-direction: column;
    }

    .admin-system-health-actions {
        width: 100%;
    }

    .admin-system-health-task-grid {
        grid-template-columns: 1fr;
    }

    .admin-system-health-task-grid > article,
    .admin-system-health-task-grid > article:nth-child(2n) {
        border-right: 0;
    }

    .admin-system-health-task-grid > article + article {
        border-top: 1px solid #e2e8f0;
    }

    [data-theme="dark"] .admin-system-health-task-grid > article + article {
        border-top-color: #28415f;
    }
}

/* Admin error pages */
.admin-error-page {
    min-height: 100vh;
    color: #0f1f35;
    background: #eef3f9;
}

.admin-error-shell {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    padding: 24px;
}

.admin-error-card {
    width: min(100%, 560px);
    padding: 28px;
    border: 1px solid #cbd8eb;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 24px 70px rgba(23, 43, 77, .12);
}

.admin-error-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
    padding-bottom: 18px;
    border-bottom: 1px solid #d9e3f1;
}

.admin-error-brand-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    color: #1f6fe5;
    border: 1px solid #bcd1f3;
    border-radius: 14px;
    background: #edf5ff;
}

.admin-error-brand strong,
.admin-error-card h1 {
    color: #10213a;
}

.admin-error-brand strong {
    display: block;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.1;
}

.admin-error-brand span {
    display: block;
    margin-top: 4px;
    color: #667792;
    font-size: 13px;
    font-weight: 600;
}

.admin-error-code {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 74px;
    height: 42px;
    margin-bottom: 16px;
    color: #174f9e;
    border: 1px solid #bcd1f3;
    border-radius: 999px;
    background: #edf5ff;
    font-size: 18px;
    font-weight: 800;
    letter-spacing: .04em;
}

.admin-error-card h1 {
    margin: 0 0 10px;
    font-size: 28px;
    font-weight: 800;
    letter-spacing: 0;
}

.admin-error-card p {
    margin: 0;
    color: #52637d;
    font-size: 15px;
    line-height: 1.65;
}

.admin-error-detail {
    margin-top: 18px;
    padding: 14px 16px;
    color: #42526d;
    border: 1px solid #d8e4f3;
    border-radius: 12px;
    background: #f7faff;
    font-size: 13px;
    line-height: 1.55;
}

.admin-error-detail strong {
    color: #15345c;
}

.admin-error-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.admin-error-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 9px 16px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0;
    box-shadow: none !important;
}

.admin-error-btn-primary {
    color: #ffffff !important;
    border-color: #2563eb !important;
    background: #2563eb !important;
}

.admin-error-btn-primary:hover {
    color: #ffffff !important;
    border-color: #1d4ed8 !important;
    background: #1d4ed8 !important;
}

.admin-error-btn-secondary {
    color: #203553 !important;
    border-color: #cbd8eb !important;
    background: #ffffff !important;
}

.admin-error-btn-secondary:hover {
    color: #10213a !important;
    border-color: #9eb5d5 !important;
    background: #f2f6fb !important;
}

[data-theme="dark"] .admin-error-page {
    color: #edf4ff;
    background: #07111f;
}

[data-theme="dark"] .admin-error-card {
    border-color: #28415f;
    background: #111c2f;
    box-shadow: 0 26px 72px rgba(0, 0, 0, .38);
}

[data-theme="dark"] .admin-error-brand {
    border-bottom-color: #28415f;
}

[data-theme="dark"] .admin-error-brand-mark,
[data-theme="dark"] .admin-error-code {
    color: #93c5fd;
    border-color: #315783;
    background: #10243f;
}

[data-theme="dark"] .admin-error-brand strong,
[data-theme="dark"] .admin-error-card h1 {
    color: #f8fafc;
}

[data-theme="dark"] .admin-error-brand span,
[data-theme="dark"] .admin-error-card p {
    color: #9fb3ce;
}

[data-theme="dark"] .admin-error-detail {
    color: #c8d7ec;
    border-color: #2b4365;
    background: #0f1a2c;
}

[data-theme="dark"] .admin-error-detail strong {
    color: #f2f7ff;
}

[data-theme="dark"] .admin-error-btn-secondary {
    color: #dbe7f7 !important;
    border-color: #34445f !important;
    background: #172033 !important;
}

[data-theme="dark"] .admin-error-btn-secondary:hover {
    color: #ffffff !important;
    border-color: #5e769b !important;
    background: #1c2940 !important;
}

@media (max-width: 575.98px) {
    .admin-error-shell {
        align-items: stretch;
        padding: 14px;
    }

    .admin-error-card {
        align-self: center;
        padding: 22px;
        border-radius: 16px;
    }

    .admin-error-card h1 {
        font-size: 24px;
    }

    .admin-error-actions,
    .admin-error-btn {
        width: 100%;
    }
}

.manual-deposit-limit-panel {
    margin: .85rem 0 1rem;
    padding: .9rem;
    border: 1px solid rgba(148, 163, 184, .34);
    border-radius: .8rem;
    color: #102033;
    background: #f8fbff;
}

.manual-deposit-limit-panel__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .8rem;
    margin-bottom: .8rem;
}

.manual-deposit-limit-panel__header strong {
    display: block;
    font-size: .9rem;
    font-weight: 700;
}

.manual-deposit-limit-panel__header span,
.manual-deposit-limit-panel p,
.manual-deposit-limit-panel small {
    color: #5b6b82;
}

.manual-deposit-limit-panel__header i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: .7rem;
    color: #2563eb;
    background: #eaf2ff;
}

.manual-deposit-limit-panel__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .65rem;
}

.manual-deposit-limit-panel__grid > div {
    padding: .7rem .75rem;
    border: 1px solid rgba(148, 163, 184, .28);
    border-radius: .65rem;
    background: #ffffff;
}

.manual-deposit-limit-panel small {
    display: block;
    margin-bottom: .2rem;
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
}

.manual-deposit-limit-panel strong[data-role] {
    display: block;
    font-size: .92rem;
    font-weight: 800;
}

.manual-deposit-limit-panel p {
    margin: .75rem 0 0;
    font-size: .82rem;
}

.manual-deposit-limit-panel.is-success {
    border-color: rgba(16, 185, 129, .36);
    background: #f0fdf8;
}

.manual-deposit-limit-panel.is-success .manual-deposit-limit-panel__header i {
    color: #047857;
    background: #d1fae5;
}

.manual-deposit-limit-panel.is-danger {
    border-color: rgba(244, 63, 94, .42);
    background: #fff1f2;
}

.manual-deposit-limit-panel.is-danger .manual-deposit-limit-panel__header i {
    color: #be123c;
    background: #ffe4e6;
}

.manual-deposit-limit-panel.is-loading {
    opacity: .78;
}

.manual-deposit-feedback {
    display: grid;
    gap: .35rem;
    margin-bottom: 1rem;
    padding: .75rem .85rem;
    border: 1px solid rgba(244, 63, 94, .35);
    border-radius: .7rem;
    color: #9f1239;
    background: #fff1f2;
    font-size: .85rem;
}

.manual-deposit-feedback div {
    display: flex;
    align-items: center;
    gap: .45rem;
}

.admin-modal-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    min-height: 36px;
    padding: .45rem .85rem;
    border-radius: .55rem;
    font-size: .86rem;
    font-weight: 700;
}

.admin-modal-btn-primary {
    color: #ffffff !important;
    border-color: #2563eb !important;
    background: #2563eb !important;
}

.admin-modal-btn-primary:hover {
    border-color: #1d4ed8 !important;
    background: #1d4ed8 !important;
}

.admin-modal-btn-secondary {
    color: #334155 !important;
    border-color: #cbd5e1 !important;
    background: #f8fafc !important;
}

.admin-modal-btn-secondary:hover {
    color: #0f172a !important;
    border-color: #94a3b8 !important;
    background: #eef2f7 !important;
}

[data-theme="dark"] .manual-deposit-limit-panel {
    color: #edf4ff;
    border-color: #34445f;
    background: #111a2b;
}

[data-theme="dark"] .manual-deposit-limit-panel__header span,
[data-theme="dark"] .manual-deposit-limit-panel p,
[data-theme="dark"] .manual-deposit-limit-panel small {
    color: #a8b6cc;
}

[data-theme="dark"] .manual-deposit-limit-panel__header i {
    color: #9cc7ff;
    background: #172d4f;
}

[data-theme="dark"] .manual-deposit-limit-panel__grid > div {
    border-color: #2e3f5b;
    background: #0d1626;
}

[data-theme="dark"] .manual-deposit-limit-panel.is-success {
    border-color: rgba(52, 211, 153, .38);
    background: #0f2b23;
}

[data-theme="dark"] .manual-deposit-limit-panel.is-success .manual-deposit-limit-panel__header i {
    color: #7ee4bd;
    background: #123d32;
}

[data-theme="dark"] .manual-deposit-limit-panel.is-danger {
    border-color: rgba(251, 113, 133, .44);
    background: #371621;
}

[data-theme="dark"] .manual-deposit-limit-panel.is-danger .manual-deposit-limit-panel__header i {
    color: #fecdd3;
    background: #4a1d2b;
}

[data-theme="dark"] .manual-deposit-feedback {
    color: #fecdd3;
    border-color: rgba(251, 113, 133, .42);
    background: #371621;
}

.admin-status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .32rem;
    min-height: 22px;
    max-width: 100%;
    padding: .16rem .5rem;
    border: 1px solid transparent;
    border-radius: .38rem;
    font-size: .74rem;
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
    vertical-align: middle;
}

.admin-status-badge i {
    flex: 0 0 auto;
    font-size: .68rem;
}

.admin-status-badge > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Owner metrics must expose the full state, including unconfigured accounts. */
.site-table-metric > strong > .admin-status-badge,
.group-summary-item > strong > .admin-status-badge,
.group-detail-item > strong > .admin-status-badge {
    white-space: normal;
    text-align: left;
}

.site-table-metric > strong > .admin-status-badge > span,
.group-summary-item > strong > .admin-status-badge > span,
.group-detail-item > strong > .admin-status-badge > span {
    overflow: visible;
    text-overflow: clip;
    overflow-wrap: anywhere;
}

.admin-status-badge--success {
    color: #087443;
    border-color: #9ee6bd;
    background: #dcfce7;
}

.admin-status-badge--danger {
    color: #a51f36;
    border-color: #fecdd3;
    background: #ffe4e9;
}

.admin-status-badge--warning {
    color: #8a5a00;
    border-color: #f6d98b;
    background: #fff5d6;
}

.admin-status-badge--info {
    color: #075985;
    border-color: #bae6fd;
    background: #e0f2fe;
}

.admin-status-badge--neutral,
.admin-status-badge--secondary {
    color: #475569;
    border-color: #cbd5e1;
    background: #f1f5f9;
}

[data-theme="dark"] .admin-status-badge--success {
    color: #9ff0c7;
    border-color: rgba(74, 222, 128, .34);
    background: rgba(22, 101, 52, .32);
}

[data-theme="dark"] .admin-status-badge--danger {
    color: #fecdd3;
    border-color: rgba(251, 113, 133, .36);
    background: rgba(127, 29, 29, .36);
}

[data-theme="dark"] .admin-status-badge--warning {
    color: #f9d98a;
    border-color: rgba(245, 158, 11, .32);
    background: rgba(120, 74, 0, .32);
}

[data-theme="dark"] .admin-status-badge--info {
    color: #a5e4ff;
    border-color: rgba(56, 189, 248, .34);
    background: rgba(8, 87, 132, .34);
}

[data-theme="dark"] .admin-status-badge--neutral,
[data-theme="dark"] .admin-status-badge--secondary {
    color: #c5d1e2;
    border-color: rgba(148, 163, 184, .26);
    background: rgba(100, 116, 139, .18);
}

.user-scope-preview-panel {
    border-left-width: 4px;
}

.user-scope-preview-panel label {
    color: inherit;
}

.user-scope-preview-panel input[type="checkbox"],
.user-scope-preview-panel input[type="radio"] {
    flex: 0 0 auto;
}

.user-scope-summary-title {
    font-weight: 600;
    font-size: .86rem;
    margin-bottom: .35rem;
}

.user-scope-group-list,
.user-scope-site-list,
.user-scope-passive-list {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    max-height: 132px;
    overflow-y: auto;
}

.user-scope-group-list .admin-status-badge,
.user-scope-site-list .admin-status-badge,
.user-scope-passive-list .admin-status-badge {
    justify-content: flex-start;
    max-width: 240px;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
}

.user-scope-group-list .admin-status-badge > span,
.user-scope-site-list .admin-status-badge > span,
.user-scope-passive-list .admin-status-badge > span {
    white-space: nowrap;
}

[data-theme="dark"] .user-scope-preview-panel.alert-info {
    color: #a5e4ff;
    border-color: rgba(56, 189, 248, .32);
    background: rgba(8, 87, 132, .26);
}

[data-theme="dark"] .user-scope-preview-panel.alert-warning {
    color: #f9d98a;
    border-color: rgba(245, 158, 11, .36);
    background: rgba(120, 74, 0, .24);
}

[data-theme="dark"] .user-scope-preview-panel.alert-danger {
    color: #ffd3d9;
    border-color: rgba(251, 113, 133, .38);
    background: rgba(127, 29, 45, .32);
}

.admin-scope-health-panel {
    padding: .85rem 1rem;
    border: 1px solid #d8e3f2;
    border-left-width: 4px;
    border-radius: 8px;
    background: #f8fbff;
}

.admin-scope-health-panel--warning {
    color: #7a4d00;
    border-color: #f2c75c;
    background: #fff7df;
}

.admin-scope-health-panel__header {
    display: flex;
    gap: .7rem;
    align-items: flex-start;
    margin-bottom: .55rem;
}

.admin-scope-health-panel__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border-radius: 8px;
    color: #7a4d00;
    background: rgba(245, 158, 11, .18);
}

.admin-scope-health-panel h3 {
    margin: 0 0 .18rem;
    font-size: 1rem;
    line-height: 1.25;
}

.admin-scope-health-panel p {
    margin-bottom: 0;
    line-height: 1.45;
}

.admin-scope-health-user-list {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.scope-confirmation-check {
    display: flex;
    gap: .5rem;
    align-items: flex-start;
    font-weight: 600;
}

.scope-confirmation-check input {
    margin-top: .2rem;
}

.user-scope-health-page {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.user-scope-health-hero {
    display: flex;
    align-items: center;
    gap: .9rem;
    padding: 1rem;
    border: 1px solid #d7e5f8;
    border-radius: 8px;
    background: #f8fbff;
}

.user-scope-health-hero__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 8px;
    color: #0f5fa8;
    background: #e0f2fe;
}

.user-scope-health-hero h1 {
    margin: 0 0 .2rem;
    font-size: 1.28rem;
    line-height: 1.25;
}

.user-scope-health-hero p {
    margin: 0;
    color: #516784;
    line-height: 1.45;
}

.user-scope-health-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: .65rem;
}

.user-scope-health-summary__item {
    min-width: 0;
    padding: .8rem;
    border: 1px solid #d7e3f4;
    border-radius: 8px;
    background: #ffffff;
}

.user-scope-health-summary__item span,
.user-scope-health-summary__item small {
    display: block;
    color: #5b6f8d;
    font-size: .78rem;
    line-height: 1.25;
}

.user-scope-health-summary__item strong {
    display: block;
    margin: .3rem 0 .15rem;
    color: #11243d;
    font-size: 1.48rem;
    line-height: 1.1;
}

.user-scope-health-summary__item--danger {
    border-color: #fecdd3;
    background: #fff1f3;
}

.user-scope-health-summary__item--warning {
    border-color: #f6d98b;
    background: #fff8e6;
}

.user-scope-health-summary__item--info {
    border-color: #bae6fd;
    background: #eff8ff;
}

.user-scope-health-section {
    margin-bottom: 0;
    border-left-width: 4px;
}

.user-scope-health-section--danger {
    border-left-color: #e11d48;
}

.user-scope-health-section--warning {
    border-left-color: #d97706;
}

.user-scope-health-section--info {
    border-left-color: #0284c7;
}

.user-scope-health-section .admin-form-section-header h2 {
    display: flex;
    align-items: center;
    gap: .45rem;
}

.user-scope-health-empty {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .75rem .85rem;
    border: 1px solid #d8e6d8;
    border-radius: 8px;
    color: #166534;
    background: #f0fdf4;
    font-weight: 600;
}

.user-scope-health-table-note {
    display: flex;
    align-items: center;
    gap: .45rem;
    margin-bottom: .55rem;
    padding: .55rem .65rem;
    border: 1px solid #d7e3f4;
    border-radius: 8px;
    color: #3d526d;
    background: #f8fbff;
    font-size: .82rem;
    line-height: 1.35;
}

.user-scope-health-table-note i {
    color: #0f5fa8;
}

.user-scope-health-table {
    border: 1px solid #d7e3f4;
    border-radius: 8px;
}

.user-scope-health-table .table {
    min-width: 1080px;
}

.user-scope-health-table td {
    vertical-align: top;
}

.user-scope-health-email {
    display: block;
    margin-top: .12rem;
    color: #60738e;
    font-size: .78rem;
}

.user-scope-health-reason {
    max-width: 250px;
    color: #334155;
    line-height: 1.4;
}

.user-scope-health-reason span {
    display: block;
    margin-top: .28rem;
    color: #a51f36;
    font-weight: 700;
}

.user-scope-health-badge-stack {
    display: flex;
    flex-direction: column;
    gap: .35rem;
    min-width: 240px;
}

.user-scope-health-badge-stack > span {
    display: flex;
    flex-wrap: wrap;
    gap: .3rem;
    align-items: center;
}

.user-scope-health-table .admin-status-badge {
    margin-right: .22rem;
    margin-bottom: .22rem;
}

[data-theme="dark"] .admin-scope-health-panel {
    color: #d8e6f8;
    border-color: rgba(148, 163, 184, .28);
    background: #111c2f;
}

[data-theme="dark"] .admin-scope-health-panel--warning {
    color: #f9d98a;
    border-color: rgba(245, 158, 11, .36);
    background: rgba(120, 74, 0, .24);
}

[data-theme="dark"] .admin-scope-health-panel__icon {
    color: #f9d98a;
    background: rgba(245, 158, 11, .18);
}

[data-theme="dark"] .user-scope-health-hero,
[data-theme="dark"] .user-scope-health-summary__item {
    border-color: rgba(148, 163, 184, .26);
    background: #121d2f;
}

[data-theme="dark"] .user-scope-health-hero__icon {
    color: #a5e4ff;
    background: rgba(8, 87, 132, .34);
}

[data-theme="dark"] .user-scope-health-hero h1,
[data-theme="dark"] .user-scope-health-summary__item strong {
    color: #eef5ff;
}

[data-theme="dark"] .user-scope-health-hero p,
[data-theme="dark"] .user-scope-health-summary__item span,
[data-theme="dark"] .user-scope-health-summary__item small,
[data-theme="dark"] .user-scope-health-email {
    color: #aebcd0;
}

[data-theme="dark"] .user-scope-health-summary__item--danger {
    border-color: rgba(251, 113, 133, .36);
    background: rgba(127, 29, 29, .25);
}

[data-theme="dark"] .user-scope-health-summary__item--warning {
    border-color: rgba(245, 158, 11, .32);
    background: rgba(120, 74, 0, .22);
}

[data-theme="dark"] .user-scope-health-summary__item--info {
    border-color: rgba(56, 189, 248, .34);
    background: rgba(8, 87, 132, .25);
}

[data-theme="dark"] .user-scope-health-empty {
    color: #9ff0c7;
    border-color: rgba(74, 222, 128, .34);
    background: rgba(22, 101, 52, .28);
}

[data-theme="dark"] .user-scope-health-table-note,
[data-theme="dark"] .user-scope-health-table {
    color: #b8c8dc;
    border-color: rgba(148, 163, 184, .24);
    background: rgba(15, 23, 42, .36);
}

[data-theme="dark"] .user-scope-health-table-note i {
    color: #7dd3fc;
}

[data-theme="dark"] .user-scope-health-reason {
    color: #d8e6f8;
}

[data-theme="dark"] .user-scope-health-reason span {
    color: #fecdd3;
}

@media (max-width: 767.98px) {
    .user-scope-health-hero {
        align-items: flex-start;
    }

    .user-scope-health-summary {
        grid-template-columns: 1fr;
    }
}

.group-site-impact-table {
    max-height: 240px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

.group-site-impact-table .table {
    color: inherit;
    min-width: 760px;
}

.group-site-impact-table th,
.group-site-impact-table td {
    vertical-align: top;
    white-space: normal;
}

.group-site-impact-help {
    padding: .65rem .75rem;
    border: 1px solid rgba(245, 158, 11, .28);
    border-radius: .35rem;
    background: rgba(245, 158, 11, .08);
}

@media (max-width: 575.98px) {
    .group-site-impact-table {
        max-height: none;
        overflow: visible;
    }

    .group-site-impact-table .table {
        min-width: 0;
    }

    .group-site-impact-table thead {
        display: none;
    }

    .group-site-impact-table table,
    .group-site-impact-table tbody,
    .group-site-impact-table tr,
    .group-site-impact-table td {
        display: block;
        width: 100%;
    }

    .group-site-impact-table tr {
        margin-bottom: .75rem;
        overflow: hidden;
        border: 1px solid var(--cp-border);
        border-radius: .35rem;
        background: var(--cp-table-row);
    }

    .group-site-impact-table tr:last-child {
        margin-bottom: 0;
    }

    .group-site-impact-table td {
        display: grid;
        grid-template-columns: minmax(6.5rem, 38%) 1fr;
        gap: .5rem;
        padding: .55rem .65rem;
        border-top: 1px solid var(--cp-border);
        word-break: break-word;
    }

    .group-site-impact-table td:first-child {
        border-top: 0;
    }

    .group-site-impact-table td::before {
        content: attr(data-label);
        font-weight: 700;
    }
}

.admin-online-users-page .admin-table-page {
    padding-bottom: .9rem;
}

.admin-online-users-note {
    margin-bottom: .85rem;
}

.admin-online-users-action-bar {
    margin-bottom: .85rem;
}

.admin-online-users-refresh-btn {
    color: #075985;
    border-color: rgba(14, 165, 233, .34);
    background: #e0f2fe;
}

.admin-online-users-message-all-btn {
    color: #0f5132;
    border-color: rgba(34, 197, 94, .3);
    background: #dcfce7;
}

.admin-online-users-refresh-btn:hover,
.admin-online-users-refresh-btn:focus {
    color: #0c4a6e;
    border-color: rgba(14, 165, 233, .48);
    background: #bae6fd;
}

.admin-online-users-message-all-btn:hover,
.admin-online-users-message-all-btn:focus {
    color: #14532d;
    border-color: rgba(22, 163, 74, .44);
    background: #bbf7d0;
}

.admin-online-users-section-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: .8rem;
    margin-bottom: .7rem;
}

.admin-online-users-section-header h1 {
    margin: 0 0 .08rem;
    color: #17233a;
    font-size: 1rem;
    font-weight: 700;
}

.admin-online-users-section-header p {
    margin: 0;
    color: #667085;
    font-size: .78rem;
}

.admin-online-users-online-table td {
    vertical-align: middle;
}

.admin-online-users-page .table-responsive {
    overflow-x: visible;
}

.admin-online-users-online-table {
    width: 100% !important;
    min-width: 0;
    table-layout: fixed;
}

.admin-online-users-online-table th,
.admin-online-users-online-table td {
    overflow: hidden;
    text-overflow: ellipsis;
    overflow-wrap: normal;
}

.admin-online-users-online-table th:first-child,
.admin-online-users-online-table td:first-child {
    width: 48px;
}

.admin-online-users-online-table th:nth-child(5),
.admin-online-users-online-table td:nth-child(5) {
    width: 122px;
}

.admin-online-users-online-table th:nth-child(6),
.admin-online-users-online-table td:nth-child(6) {
    width: 72px;
    text-align: center;
}

.admin-online-users-online-table th:nth-child(7),
.admin-online-users-online-table td:nth-child(7) {
    width: 360px;
    text-align: right;
}

.admin-online-users-online-table .admin-entity-badge {
    margin: .08rem .18rem .08rem 0;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-online-users-online-table .admin-entity-badge span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.admin-online-users-last-seen {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    color: #344054;
    font-size: .78rem;
}

.admin-online-users-row-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .35rem;
    min-width: 0;
}

.admin-online-users-row-refresh-btn,
.admin-online-users-row-message-btn,
.admin-online-users-revoke-btn {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    min-height: 26px;
    white-space: nowrap;
}

.admin-online-users-row-refresh-btn {
    color: #155e75;
    border-color: rgba(6, 182, 212, .34);
    background: rgba(207, 250, 254, .9);
}

.admin-online-users-row-refresh-btn:hover,
.admin-online-users-row-refresh-btn:focus {
    color: #164e63;
    border-color: rgba(8, 145, 178, .44);
    background: #a5f3fc;
}

.admin-online-users-row-message-btn {
    color: #166534;
    border-color: rgba(34, 197, 94, .28);
    background: rgba(220, 252, 231, .9);
}

.admin-online-users-row-message-btn:hover,
.admin-online-users-row-message-btn:focus {
    color: #14532d;
    border-color: rgba(22, 163, 74, .42);
    background: #bbf7d0;
}

.admin-online-users-confirm-user {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .18rem;
    margin-top: .25rem;
}

.admin-online-users-confirm-user strong {
    color: #17233a;
}

.admin-online-users-confirm-user span {
    color: #667085;
    font-size: .82rem;
}

.admin-online-users-message-form {
    display: flex;
    flex-direction: column;
    gap: .45rem;
    text-align: left;
}

.admin-online-users-message-form label {
    margin: .15rem 0 0;
    color: #344054;
    font-size: .78rem;
    font-weight: 700;
}

.admin-online-users-message-form .admin-online-users-message-target,
.admin-online-users-message-form .admin-online-users-message-textarea {
    width: 100%;
    margin: 0;
}

.admin-online-users-message-form .admin-online-users-message-target {
    min-height: 38px;
    color: #17233a;
    border: 1px solid rgba(71, 85, 105, .2);
    border-radius: 6px;
    background: #fff;
    font-size: .86rem;
}

.admin-online-users-message-form .admin-online-users-message-textarea {
    min-height: 112px;
    resize: vertical;
}

.admin-online-users-message-help {
    color: #667085;
    font-size: .76rem;
    line-height: 1.35;
}

[data-theme="dark"] .admin-online-users-refresh-btn {
    color: #a5e4ff;
    border-color: rgba(56, 189, 248, .34);
    background: rgba(8, 87, 132, .34);
}

[data-theme="dark"] .admin-online-users-message-all-btn {
    color: #bbf7d0;
    border-color: rgba(74, 222, 128, .28);
    background: rgba(22, 101, 52, .34);
}

[data-theme="dark"] .admin-online-users-refresh-btn:hover,
[data-theme="dark"] .admin-online-users-refresh-btn:focus {
    color: #e0f7ff;
    border-color: rgba(125, 211, 252, .42);
    background: rgba(14, 116, 144, .42);
}

[data-theme="dark"] .admin-online-users-message-all-btn:hover,
[data-theme="dark"] .admin-online-users-message-all-btn:focus {
    color: #dcfce7;
    border-color: rgba(134, 239, 172, .4);
    background: rgba(21, 128, 61, .48);
}

[data-theme="dark"] .admin-online-users-section-header h1 {
    color: #f2f6ff;
}

[data-theme="dark"] .admin-online-users-section-header p,
[data-theme="dark"] .admin-online-users-last-seen {
    color: #a9b8cf;
}

[data-theme="dark"] .admin-online-users-row-refresh-btn {
    color: #a5f3fc;
    border-color: rgba(34, 211, 238, .28);
    background: rgba(21, 94, 117, .34);
}

[data-theme="dark"] .admin-online-users-row-refresh-btn:hover,
[data-theme="dark"] .admin-online-users-row-refresh-btn:focus {
    color: #ecfeff;
    border-color: rgba(103, 232, 249, .4);
    background: rgba(14, 116, 144, .48);
}

[data-theme="dark"] .admin-online-users-row-message-btn {
    color: #bbf7d0;
    border-color: rgba(74, 222, 128, .26);
    background: rgba(22, 101, 52, .34);
}

[data-theme="dark"] .admin-online-users-row-message-btn:hover,
[data-theme="dark"] .admin-online-users-row-message-btn:focus {
    color: #dcfce7;
    border-color: rgba(134, 239, 172, .4);
    background: rgba(21, 128, 61, .46);
}

[data-theme="dark"] .admin-online-users-confirm-user strong {
    color: #f2f6ff;
}

[data-theme="dark"] .admin-online-users-confirm-user span {
    color: #a9b8cf;
}

[data-theme="dark"] .admin-online-users-message-form label {
    color: #dbe7f7;
}

[data-theme="dark"] .admin-online-users-message-form .admin-online-users-message-target {
    color: #eef5ff;
    border-color: rgba(148, 163, 184, .28);
    background: #111c2f;
}

[data-theme="dark"] .admin-online-users-message-help {
    color: #a9b8cf;
}

@media (max-width: 767.98px) {
    .admin-online-users-page .table-responsive {
        overflow-x: auto;
    }

    .admin-online-users-online-table {
        min-width: 1040px;
    }

    .admin-online-users-section-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-online-users-action-bar .admin-online-users-refresh-btn {
        flex: 1 1 210px;
        justify-content: center;
    }
}

.admin-recent-deposit-warning {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .28rem;
    min-height: 24px;
    max-width: 100%;
    padding: .15rem .45rem;
    color: #8a5a00;
    cursor: help;
    border: 1px solid #f2c94c;
    border-radius: .42rem;
    background: #fff4cc;
    vertical-align: middle;
    touch-action: manipulation;
}

.admin-recent-deposit-warning i {
    flex: 0 0 auto;
    font-size: .72rem;
}

.admin-recent-deposit-warning__label {
    min-width: 0;
    overflow: hidden;
    font-size: .72rem;
    font-weight: 700;
    line-height: 1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-recent-deposit-warning:focus {
    outline: 2px solid rgba(245, 158, 11, .4);
    outline-offset: 2px;
}

[data-theme="dark"] .admin-recent-deposit-warning {
    color: #ffe08a;
    border-color: rgba(245, 158, 11, .42);
    background: rgba(120, 74, 0, .38);
}

table.datatable tbody tr.table-success > *,
.admin-data-table tbody tr.table-success > * {
    color: #0f5132 !important;
    background-color: #dff5e7 !important;
    border-color: rgba(25, 135, 84, .2) !important;
}

table.datatable tbody tr.table-danger > *,
.admin-data-table tbody tr.table-danger > * {
    color: #842029 !important;
    background-color: #fde2e5 !important;
    border-color: rgba(220, 53, 69, .2) !important;
}

[data-theme="dark"] table.datatable tbody tr.table-success > *,
[data-theme="dark"] .admin-data-table tbody tr.table-success > *,
[data-theme="dark"] table.datatable tbody tr.bg-success > *,
[data-theme="dark"] .admin-data-table tbody tr.bg-success > * {
    color: #d8ffe7 !important;
    background-color: #123d2a !important;
    border-color: rgba(74, 222, 128, .22) !important;
}

[data-theme="dark"] table.datatable tbody tr.table-danger > *,
[data-theme="dark"] .admin-data-table tbody tr.table-danger > *,
[data-theme="dark"] table.datatable tbody tr.bg-danger > *,
[data-theme="dark"] .admin-data-table tbody tr.bg-danger > * {
    color: #ffe1e6 !important;
    background-color: #4a1721 !important;
    border-color: rgba(251, 113, 133, .24) !important;
}

html:not([data-theme="dark"]) table.datatable tbody tr.bg-success,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-success,
html:not([data-theme="dark"]) table.datatable tbody tr.table-success,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-success {
    --cp-status-row-bg: var(--cp-row-success-bg);
    --cp-status-row-hover: var(--cp-row-success-hover);
    --cp-status-row-text: var(--cp-row-success-text);
}

html:not([data-theme="dark"]) table.datatable tbody tr.bg-danger,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-danger,
html:not([data-theme="dark"]) table.datatable tbody tr.table-danger,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-danger {
    --cp-status-row-bg: var(--cp-row-danger-bg);
    --cp-status-row-hover: var(--cp-row-danger-hover);
    --cp-status-row-text: var(--cp-row-danger-text);
}

html:not([data-theme="dark"]) table.datatable tbody tr.bg-warning,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-warning,
html:not([data-theme="dark"]) table.datatable tbody tr.table-warning,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-warning {
    --cp-status-row-bg: var(--cp-row-warning-bg);
    --cp-status-row-hover: var(--cp-row-warning-hover);
    --cp-status-row-text: var(--cp-row-warning-text);
}

html:not([data-theme="dark"]) table.datatable tbody tr.bg-info,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-info,
html:not([data-theme="dark"]) table.datatable tbody tr.bg-primary,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-primary,
html:not([data-theme="dark"]) table.datatable tbody tr.table-info,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-info,
html:not([data-theme="dark"]) table.datatable tbody tr.table-primary,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-primary {
    --cp-status-row-bg: var(--cp-row-info-bg);
    --cp-status-row-hover: var(--cp-row-info-hover);
    --cp-status-row-text: var(--cp-row-info-text);
}

html:not([data-theme="dark"]) table.datatable tbody tr.bg-secondary,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-secondary,
html:not([data-theme="dark"]) table.datatable tbody tr.table-secondary,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-secondary {
    --cp-status-row-bg: var(--cp-row-secondary-bg);
    --cp-status-row-hover: var(--cp-row-secondary-hover);
    --cp-status-row-text: var(--cp-row-secondary-text);
}

html:not([data-theme="dark"]) table.datatable tbody tr.bg-success > *,
html:not([data-theme="dark"]) table.datatable tbody tr.bg-danger > *,
html:not([data-theme="dark"]) table.datatable tbody tr.bg-warning > *,
html:not([data-theme="dark"]) table.datatable tbody tr.bg-info > *,
html:not([data-theme="dark"]) table.datatable tbody tr.bg-primary > *,
html:not([data-theme="dark"]) table.datatable tbody tr.bg-secondary > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-success > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-danger > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-warning > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-info > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-primary > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-secondary > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-success > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-danger > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-warning > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-info > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-primary > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-secondary > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-success > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-danger > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-warning > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-info > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-primary > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-secondary > * {
    color: var(--cp-status-row-text) !important;
    background-color: var(--cp-status-row-bg) !important;
    border-top-color: rgba(15, 23, 42, .1) !important;
}

html:not([data-theme="dark"]) table.datatable tbody tr.bg-success:hover > *,
html:not([data-theme="dark"]) table.datatable tbody tr.bg-danger:hover > *,
html:not([data-theme="dark"]) table.datatable tbody tr.bg-warning:hover > *,
html:not([data-theme="dark"]) table.datatable tbody tr.bg-info:hover > *,
html:not([data-theme="dark"]) table.datatable tbody tr.bg-primary:hover > *,
html:not([data-theme="dark"]) table.datatable tbody tr.bg-secondary:hover > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-success:hover > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-danger:hover > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-warning:hover > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-info:hover > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-primary:hover > *,
html:not([data-theme="dark"]) table.datatable tbody tr.table-secondary:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-success:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-danger:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-warning:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-info:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-primary:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.bg-secondary:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-success:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-danger:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-warning:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-info:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-primary:hover > *,
html:not([data-theme="dark"]) .admin-data-table tbody tr.table-secondary:hover > * {
    color: var(--cp-status-row-text) !important;
    background-color: var(--cp-status-row-hover) !important;
    background-image: none !important;
}

@media (max-width: 575.98px) {
    .admin-recent-deposit-warning {
        width: 28px;
        min-width: 28px;
        padding-right: 0;
        padding-left: 0;
    }

    .admin-recent-deposit-warning__label {
        position: absolute;
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        border: 0;
    }
}

[data-theme="dark"] .admin-modal-btn-secondary {
    color: #d8e8ff !important;
    border-color: #34445f !important;
    background: #111a2b !important;
}

[data-theme="dark"] .admin-modal-btn-secondary:hover {
    color: #ffffff !important;
    border-color: #5e769b !important;
    background: #17243a !important;
}

@media (max-width: 575.98px) {
    .manual-deposit-limit-panel__grid {
        grid-template-columns: 1fr;
    }

    .manual-deposit-modal-footer {
        gap: .5rem;
    }

    .manual-deposit-modal-footer .admin-modal-btn {
        flex: 1 1 auto;
    }
}

.admin-entity-badge {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    max-width: 180px;
    min-height: 1.45rem;
    margin: .08rem .25rem .08rem 0;
    padding: .22rem .55rem;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 700;
    line-height: 1.15;
    white-space: nowrap;
    vertical-align: middle;
}

.admin-entity-badge > span {
    overflow: hidden;
    text-overflow: ellipsis;
}

.admin-entity-badge i {
    flex: 0 0 auto;
    font-size: .68rem;
}

.admin-entity-badge--group {
    color: #0f766e;
    border-color: rgba(20, 184, 166, .34);
    background: #ccfbf1;
}

.admin-entity-badge--site {
    color: #1d4ed8;
    border-color: rgba(59, 130, 246, .28);
    background: #dbeafe;
}

.admin-entity-badge--empty {
    color: #64748b;
    border-color: #cbd5e1;
    background: #f1f5f9;
}

.admin-entity-badge__warning {
    color: #f59e0b;
}

[data-theme="dark"] .admin-entity-badge--group {
    color: #8df4dd;
    border-color: rgba(45, 212, 191, .28);
    background: rgba(20, 184, 166, .16);
}

[data-theme="dark"] .admin-entity-badge--site {
    color: #a8d0ff;
    border-color: rgba(96, 165, 250, .28);
    background: rgba(37, 99, 235, .18);
}

[data-theme="dark"] .admin-entity-badge--empty {
    color: #c5d1e2;
    border-color: rgba(148, 163, 184, .24);
    background: rgba(100, 116, 139, .16);
}
/* Tiered commission controls */
.commission-tier-control {
    border: 1px solid rgba(148, 163, 184, 0.35);
    border-radius: 8px;
    padding: 16px;
    margin-bottom: 18px;
    background: rgba(255, 255, 255, 0.72);
}

body.dark-mode .commission-tier-control,
body.dark .commission-tier-control,
[data-theme="dark"] .commission-tier-control {
    background: rgba(17, 24, 39, 0.72);
    border-color: rgba(148, 163, 184, 0.28);
}

.commission-tier-control__head,
.commission-tier-summary__top,
.commission-tier-editor-toolbar {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}

.commission-tier-control h3 {
    font-size: 1rem;
    margin: 0 0 4px;
}

.commission-tier-control p,
.commission-tier-summary small {
    margin: 0;
    color: #6b7280;
}

body.dark-mode .commission-tier-control p,
body.dark-mode .commission-tier-summary small,
body.dark .commission-tier-control p,
body.dark .commission-tier-summary small,
[data-theme="dark"] .commission-tier-control p,
[data-theme="dark"] .commission-tier-summary small {
    color: #9ca3af;
}

.commission-tier-toggle {
    display: inline-flex;
    border: 1px solid rgba(148, 163, 184, 0.45);
    border-radius: 8px;
    overflow: hidden;
    min-height: 38px;
}

.commission-tier-toggle__item {
    border: 0;
    background: transparent;
    color: inherit;
    padding: 8px 12px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-width: 96px;
    justify-content: center;
}

.commission-tier-toggle__item.is-active {
    background: #0d6efd;
    color: #fff;
}

.commission-tier-summary {
    margin-top: 14px;
    border-top: 1px solid rgba(148, 163, 184, 0.25);
    padding-top: 14px;
}

.commission-tier-summary__top {
    justify-content: flex-start;
}

.commission-tier-summary__copy {
    flex: 1 1 260px;
    min-width: 0;
}

.commission-tier-summary__copy strong {
    display: block;
    margin-bottom: 2px;
}

.commission-tier-summary__edit-button {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-color: #d97706;
    background: #f59e0b;
    color: #111827;
    font-weight: 600;
    box-shadow: 0 6px 14px rgba(217, 119, 6, 0.18), 0 0 0 1px rgba(217, 119, 6, 0.12);
}

.commission-tier-summary__edit-button:hover,
.commission-tier-summary__edit-button:focus {
    border-color: #b45309;
    background: #d97706;
    color: #111827;
}

.commission-tier-summary__edit-button:focus-visible {
    outline: 2px solid rgba(245, 158, 11, 0.45);
    outline-offset: 2px;
}

body.dark-mode .commission-tier-summary__edit-button,
body.dark .commission-tier-summary__edit-button,
[data-theme="dark"] .commission-tier-summary__edit-button {
    border-color: #f59e0b;
    background: #fbbf24;
    color: #111827;
    box-shadow: 0 8px 18px rgba(251, 191, 36, 0.22), 0 0 0 1px rgba(251, 191, 36, 0.18);
}

body.dark-mode .commission-tier-summary__edit-button:hover,
body.dark-mode .commission-tier-summary__edit-button:focus,
body.dark .commission-tier-summary__edit-button:hover,
body.dark .commission-tier-summary__edit-button:focus,
[data-theme="dark"] .commission-tier-summary__edit-button:hover,
[data-theme="dark"] .commission-tier-summary__edit-button:focus {
    border-color: #fbbf24;
    background: #f59e0b;
    color: #111827;
}

.commission-tier-summary__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 10px;
    margin-top: 12px;
}

.commission-tier-summary__row,
.commission-tier-summary__empty,
.commission-tier-editor-row {
    border: 1px solid rgba(148, 163, 184, 0.28);
    border-radius: 8px;
    padding: 10px 12px;
    background: rgba(248, 250, 252, 0.8);
}

body.dark-mode .commission-tier-summary__row,
body.dark-mode .commission-tier-summary__empty,
body.dark-mode .commission-tier-editor-row,
body.dark .commission-tier-summary__row,
body.dark .commission-tier-summary__empty,
body.dark .commission-tier-editor-row,
[data-theme="dark"] .commission-tier-summary__row,
[data-theme="dark"] .commission-tier-summary__empty,
[data-theme="dark"] .commission-tier-editor-row {
    background: rgba(31, 41, 55, 0.82);
    border-color: rgba(148, 163, 184, 0.22);
}

.commission-tier-summary__row strong {
    display: block;
    margin-bottom: 6px;
}

.commission-tier-summary__row div {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    font-size: 0.86rem;
}

.commission-tier-editor .admin-form-section {
    margin-bottom: 14px;
}

.commission-tier-editor-toolbar {
    align-items: center;
    padding: 12px;
    border: 1px solid rgba(148, 163, 184, 0.24);
    border-radius: 8px;
    background: rgba(248, 250, 252, 0.72);
}

body.dark-mode .commission-tier-editor-toolbar,
body.dark .commission-tier-editor-toolbar,
[data-theme="dark"] .commission-tier-editor-toolbar {
    background: rgba(15, 23, 42, 0.62);
    border-color: rgba(148, 163, 184, 0.2);
}

.commission-tier-editor-btn {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid transparent;
    font-weight: 600;
}

.commission-tier-editor-btn--add {
    background: #16a34a;
    border-color: #15803d;
    color: #fff;
}

.commission-tier-editor-btn--add:hover,
.commission-tier-editor-btn--add:focus {
    background: #15803d;
    border-color: #166534;
    color: #fff;
}

.commission-tier-editor-btn--default,
.commission-tier-editor-btn--cancel {
    background: #f8fafc;
    border-color: rgba(100, 116, 139, 0.34);
    color: #334155;
}

.commission-tier-editor-btn--default:hover,
.commission-tier-editor-btn--default:focus,
.commission-tier-editor-btn--cancel:hover,
.commission-tier-editor-btn--cancel:focus {
    background: #e2e8f0;
    border-color: rgba(71, 85, 105, 0.4);
    color: #0f172a;
}

.commission-tier-editor-btn--apply {
    background: #2563eb;
    border-color: #1d4ed8;
    color: #fff;
    box-shadow: 0 6px 14px rgba(37, 99, 235, 0.2);
}

.commission-tier-editor-btn--apply:hover,
.commission-tier-editor-btn--apply:focus {
    background: #1d4ed8;
    border-color: #1e40af;
    color: #fff;
}

body.dark-mode .commission-tier-editor-btn--default,
body.dark-mode .commission-tier-editor-btn--cancel,
body.dark .commission-tier-editor-btn--default,
body.dark .commission-tier-editor-btn--cancel,
[data-theme="dark"] .commission-tier-editor-btn--default,
[data-theme="dark"] .commission-tier-editor-btn--cancel {
    background: rgba(30, 41, 59, 0.95);
    border-color: rgba(148, 163, 184, 0.3);
    color: #dbeafe;
}

body.dark-mode .commission-tier-editor-btn--default:hover,
body.dark-mode .commission-tier-editor-btn--default:focus,
body.dark-mode .commission-tier-editor-btn--cancel:hover,
body.dark-mode .commission-tier-editor-btn--cancel:focus,
body.dark .commission-tier-editor-btn--default:hover,
body.dark .commission-tier-editor-btn--default:focus,
body.dark .commission-tier-editor-btn--cancel:hover,
body.dark .commission-tier-editor-btn--cancel:focus,
[data-theme="dark"] .commission-tier-editor-btn--default:hover,
[data-theme="dark"] .commission-tier-editor-btn--default:focus,
[data-theme="dark"] .commission-tier-editor-btn--cancel:hover,
[data-theme="dark"] .commission-tier-editor-btn--cancel:focus {
    background: rgba(51, 65, 85, 0.95);
    color: #fff;
}

.commission-tier-editor-list {
    display: grid;
    gap: 12px;
    margin-top: 12px;
}

.commission-tier-inline-alert {
    margin-top: 10px;
}

.commission-tier-editor-row {
    display: grid;
    grid-template-columns: minmax(220px, 0.8fr) minmax(240px, 1fr) 38px;
    gap: 12px;
    align-items: end;
}

.commission-tier-editor-row:has(.commission-tier-editor-row__meta) {
    grid-template-columns: minmax(120px, 0.38fr) minmax(260px, 0.8fr) minmax(220px, 1fr) 38px;
    align-items: stretch;
}

.commission-tier-editor-row__meta {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 6px;
    min-width: 0;
}

.commission-tier-editor-row__meta span {
    width: max-content;
    max-width: 100%;
    border-radius: 999px;
    padding: 3px 8px;
    background: rgba(37, 99, 235, 0.1);
    color: #1d4ed8;
    font-size: 0.78rem;
    font-weight: 700;
}

.commission-tier-editor-row__meta strong {
    color: #111827;
    font-size: 0.95rem;
}

body.dark-mode .commission-tier-editor-row__meta span,
body.dark .commission-tier-editor-row__meta span,
[data-theme="dark"] .commission-tier-editor-row__meta span {
    background: rgba(96, 165, 250, 0.18);
    color: #bfdbfe;
}

body.dark-mode .commission-tier-editor-row__meta strong,
body.dark .commission-tier-editor-row__meta strong,
[data-theme="dark"] .commission-tier-editor-row__meta strong {
    color: #f8fafc;
}

.commission-tier-editor-row__range,
.commission-tier-editor-row__rates {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 10px;
}

.commission-tier-editor-infinity {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    border: 1px solid rgba(245, 158, 11, 0.45);
    border-radius: 4px;
    background: rgba(245, 158, 11, 0.12);
    color: #92400e;
    font-weight: 700;
}

body.dark-mode .commission-tier-editor-infinity,
body.dark .commission-tier-editor-infinity,
[data-theme="dark"] .commission-tier-editor-infinity {
    border-color: rgba(251, 191, 36, 0.42);
    background: rgba(251, 191, 36, 0.16);
    color: #fde68a;
}

.commission-tier-editor-remove {
    width: 34px;
    height: 34px;
    align-self: center;
    justify-self: end;
    border: 1px solid rgba(220, 38, 38, 0.28);
    border-radius: 8px;
    background: rgba(254, 242, 242, 0.82);
    color: #b91c1c;
}

.commission-tier-editor-remove:hover,
.commission-tier-editor-remove:focus {
    background: #dc2626;
    border-color: #b91c1c;
    color: #fff;
}

.commission-tier-editor-remove:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

body.dark-mode .commission-tier-editor-remove,
body.dark .commission-tier-editor-remove,
[data-theme="dark"] .commission-tier-editor-remove {
    background: rgba(127, 29, 29, 0.18);
    border-color: rgba(248, 113, 113, 0.3);
    color: #fecaca;
}

.commission-tier-editor-alert {
    display: none;
    margin-top: 12px;
    padding: 0;
    border: 0;
    background: transparent;
}

.commission-tier-editor-alert:not(:empty) {
    display: block;
}

.commission-tier-editor-alert .alert {
    margin: 0;
    border-radius: 8px;
    padding: 10px 12px;
    border: 1px solid transparent;
}

.commission-tier-editor-alert .alert-success {
    border-color: rgba(22, 163, 74, 0.28);
    background: rgba(220, 252, 231, 0.8);
    color: #166534;
}

.commission-tier-editor-alert .alert-danger {
    border-color: rgba(220, 38, 38, 0.28);
    background: rgba(254, 226, 226, 0.8);
    color: #991b1b;
}

body.dark-mode .commission-tier-editor-alert .alert-success,
body.dark .commission-tier-editor-alert .alert-success,
[data-theme="dark"] .commission-tier-editor-alert .alert-success {
    border-color: rgba(74, 222, 128, 0.25);
    background: rgba(20, 83, 45, 0.32);
    color: #bbf7d0;
}

body.dark-mode .commission-tier-editor-alert .alert-danger,
body.dark .commission-tier-editor-alert .alert-danger,
[data-theme="dark"] .commission-tier-editor-alert .alert-danger {
    border-color: rgba(248, 113, 113, 0.32);
    background: rgba(127, 29, 29, 0.3);
    color: #fecaca;
}

.commission-tier-editor .admin-form-actions {
    border-top: 1px solid rgba(148, 163, 184, 0.22);
    padding-top: 14px;
    gap: 10px;
    flex-wrap: wrap;
}

.group-commission-inline {
    display: inline-block;
    margin-left: 6px;
}

.admin-readonly-field {
    background: rgba(148, 163, 184, 0.12);
}

@media (max-width: 768px) {
    .commission-tier-editor-row {
        grid-template-columns: 1fr;
    }

    .commission-tier-editor-row:has(.commission-tier-editor-row__meta) {
        grid-template-columns: 1fr;
    }

    .commission-tier-editor-row__meta {
        flex-direction: row;
        justify-content: flex-start;
        align-items: center;
    }

    .commission-tier-editor-remove {
        width: 100%;
        justify-self: stretch;
    }

    .commission-tier-toggle {
        width: 100%;
    }

    .commission-tier-toggle__item {
        flex: 1 1 0;
    }

    .commission-tier-summary__top {
        align-items: stretch;
    }

    .commission-tier-summary__edit-button {
        width: 100%;
    }
}


/* Site reconciliation aliases: mirrors the group reconciliation UI for site mutabakat screens. */
.site-reconciliation-page {
    border-radius: 8px;
}

.site-reconciliation-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 460px);
    gap: 1rem;
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
}

.site-reconciliation-hero--single {
    grid-template-columns: minmax(0, 1fr);
}

.site-reconciliation-hero-copy {
    min-width: 0;
    align-self: center;
}

.site-reconciliation-hero h1,
.site-reconciliation-run-copy h2,
.site-reconciliation-table-card h2,
.site-reconciliation-modal-header h1,
.site-reconciliation-decision-card h2 {
    margin: 0;
    color: var(--cp-text);
    letter-spacing: 0;
}

.site-reconciliation-hero h1 {
    font-size: 1.45rem;
    font-weight: 800;
}

.site-reconciliation-hero p,
.site-reconciliation-run-copy p,
.site-reconciliation-table-card p,
.site-reconciliation-decision-card p,
.site-reconciliation-date-form small {
    margin: .35rem 0 0;
    color: var(--cp-muted);
}

.site-reconciliation-date-form {
    width: 100%;
    padding: .9rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.site-reconciliation-tracking-title {
    display: grid;
    gap: .18rem;
    margin-bottom: .75rem;
}

.site-reconciliation-tracking-title span {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    color: var(--cp-text);
    font-weight: 800;
    line-height: 1.2;
}

.site-reconciliation-tracking-title i {
    color: var(--cp-primary);
}

.site-reconciliation-tracking-title small {
    color: var(--cp-muted);
    line-height: 1.35;
}

.site-reconciliation-date-form label {
    display: block;
    margin-bottom: .4rem;
    font-weight: 700;
    color: var(--cp-text);
}

.site-reconciliation-date-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .6rem;
    align-items: center;
}

.site-reconciliation-date-help {
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .32rem;
    padding: .72rem .78rem;
    border: 1px solid color-mix(in srgb, var(--cp-primary) 28%, var(--cp-border));
    border-radius: 8px;
    color: var(--cp-muted);
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
    line-height: 1.42;
}

.site-reconciliation-date-help strong {
    display: block;
    margin-bottom: .18rem;
    color: var(--cp-text);
    font-size: .82rem;
}

.site-reconciliation-date-help span {
    display: block;
}

.site-reconciliation-date-row .btn,
.site-reconciliation-complete-form .btn,
.site-reconciliation-decision-card .btn,
.site-reconciliation-approve-form .btn {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
}

.site-reconciliation-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .8rem;
    margin-bottom: 1rem;
}

.site-reconciliation-summary-card {
    min-height: 120px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: .35rem;
    padding: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.site-reconciliation-summary-card span,
.site-reconciliation-review-metric span {
    color: var(--cp-muted);
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
}

.site-reconciliation-summary-card strong {
    color: var(--cp-text);
    font-size: 1.35rem;
    line-height: 1.2;
}

.site-reconciliation-summary-card--primary {
    border-color: color-mix(in srgb, var(--cp-primary) 48%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-primary) 10%, var(--cp-surface));
}

.site-reconciliation-summary-card--success {
    border-color: rgba(37, 133, 95, .45);
    background: color-mix(in srgb, #25855f 10%, var(--cp-surface));
}

.site-reconciliation-summary-card--warning {
    border-color: rgba(180, 116, 22, .45);
    background: color-mix(in srgb, #b47416 10%, var(--cp-surface));
}

.site-reconciliation-summary-card--danger {
    border-color: rgba(190, 55, 65, .45);
    background: color-mix(in srgb, #be3741 10%, var(--cp-surface));
}

.site-reconciliation-run-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 520px);
    gap: 1rem;
    align-items: stretch;
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.site-reconciliation-run-panel > [data-site-reconciliation-completion-controls] {
    display: contents;
}

.site-reconciliation-complete-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .55rem;
    align-content: end;
}

.site-reconciliation-complete-form label {
    grid-column: 1 / -1;
    margin: 0;
    font-weight: 700;
    color: var(--cp-text);
}

.site-reconciliation-run-message,
.site-reconciliation-complete-state,
.site-reconciliation-complete-hint {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
}

.site-reconciliation-run-message {
    grid-column: 1 / -1;
    padding: .85rem 1rem;
}

.site-reconciliation-run-message strong,
.site-reconciliation-run-message span,
.site-reconciliation-complete-state strong,
.site-reconciliation-complete-state span {
    display: block;
}

.site-reconciliation-run-message span,
.site-reconciliation-complete-state span,
.site-reconciliation-complete-hint {
    color: var(--cp-muted);
}

.site-reconciliation-run-message--success,
.site-reconciliation-complete-state {
    border-color: rgba(37, 133, 95, .5);
    background: color-mix(in srgb, #25855f 10%, var(--cp-surface));
}

.site-reconciliation-run-message--success i,
.site-reconciliation-complete-state i {
    color: #25855f;
}

.site-reconciliation-run-message--warning {
    border-color: rgba(180, 116, 22, .5);
    background: color-mix(in srgb, #b47416 10%, var(--cp-surface));
}

.site-reconciliation-run-message--warning i {
    color: #b47416;
}

.site-reconciliation-complete-state {
    min-height: 76px;
    padding: .85rem 1rem;
}

.site-reconciliation-complete-state strong {
    color: var(--cp-text);
}

.site-reconciliation-complete-form--disabled .btn[disabled] {
    cursor: not-allowed;
    opacity: .64;
}

.site-reconciliation-complete-hint {
    grid-column: 1 / -1;
    padding: .7rem .8rem;
    background: color-mix(in srgb, var(--cp-surface) 92%, #b47416 8%);
}

.site-reconciliation-complete-hint i {
    color: #b47416;
}

.site-reconciliation-table-card {
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    padding: 1rem;
    background: var(--cp-surface);
}

.site-reconciliation-finance-table {
    min-width: 1740px;
    table-layout: auto;
}

.site-reconciliation-finance-table.admin-report-table thead th {
    padding: .62rem .7rem !important;
    vertical-align: bottom;
    white-space: nowrap;
}

.site-reconciliation-finance-table.admin-report-table tbody td,
.site-reconciliation-finance-table.admin-report-table tbody th {
    padding: .5rem .7rem !important;
    vertical-align: middle;
}

.site-reconciliation-finance-table.admin-report-table tbody tr:hover > * {
    background: color-mix(in srgb, var(--cp-primary) 7%, var(--cp-surface)) !important;
}

.site-reconciliation-finance-table .site-reconciliation-col--positive {
    color: #d9fbe6 !important;
}

.site-reconciliation-finance-table .site-reconciliation-col--negative {
    color: #ffe0e6 !important;
}

.site-reconciliation-finance-table .site-reconciliation-col--carry,
.site-reconciliation-finance-table .site-reconciliation-col--info,
.site-reconciliation-finance-table .site-reconciliation-col--net,
.site-reconciliation-finance-table .site-reconciliation-col--difference {
    color: #dbeafe !important;
}

.site-reconciliation-action-cell {
    min-width: 132px;
}

.site-reconciliation-site-cell {
    min-width: 220px;
    color: var(--cp-text);
    font-weight: 750;
    white-space: normal;
}

.site-reconciliation-money {
    min-width: 92px;
    font-variant-numeric: tabular-nums;
    font-weight: 750;
    line-height: 1.25;
    white-space: nowrap;
}

.site-reconciliation-money--positive {
    color: #15803d !important;
}

.site-reconciliation-money--negative {
    color: #be123c !important;
}

.site-reconciliation-money--carry {
    color: #174ea6 !important;
}

.site-reconciliation-money--info {
    color: #0369a1 !important;
}

.site-reconciliation-money--net {
    font-weight: 800;
}

.site-reconciliation-money--difference {
    font-weight: 800;
}

.site-reconciliation-money--muted {
    color: #64748b !important;
    font-weight: 650;
}

[data-theme="dark"] .site-reconciliation-finance-table.admin-report-table tbody tr:hover > * {
    background: #17243a !important;
}

[data-theme="dark"] .site-reconciliation-site-cell {
    color: #edf4ff;
}

[data-theme="dark"] .site-reconciliation-money--positive {
    color: #22c55e !important;
}

[data-theme="dark"] .site-reconciliation-money--negative {
    color: #fb7185 !important;
}

[data-theme="dark"] .site-reconciliation-money--carry {
    color: #8bbcff !important;
}

[data-theme="dark"] .site-reconciliation-money--info {
    color: #67e8f9 !important;
}

[data-theme="dark"] .site-reconciliation-money--muted {
    color: #94a3b8 !important;
}

.site-reconciliation-actions.btn-group {
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0;
    min-width: max-content;
}

table.datatable td:first-child .site-reconciliation-actions.btn-group,
.admin-data-table td:first-child .site-reconciliation-actions.btn-group {
    gap: 0;
}

table.datatable td:first-child .site-reconciliation-actions.btn-group > .site-reconciliation-action-btn,
table.datatable td:first-child .site-reconciliation-actions.btn-group > .site-reconciliation-action-form .site-reconciliation-action-btn,
.site-reconciliation-actions.btn-group > .site-reconciliation-action-form .site-reconciliation-action-btn,
.site-reconciliation-action-btn {
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .32rem;
    border-radius: 0 !important;
    font-weight: 800;
    line-height: 1.1;
    white-space: nowrap;
}

.site-reconciliation-action-btn::before {
    content: none !important;
    display: none !important;
    margin-right: 0 !important;
}

.site-reconciliation-actions.btn-group > .site-reconciliation-action-btn:first-child {
    border-top-left-radius: .38rem !important;
    border-bottom-left-radius: .38rem !important;
}

.site-reconciliation-actions.btn-group > .site-reconciliation-action-btn:last-child,
.site-reconciliation-actions.btn-group > .site-reconciliation-action-form:last-child .site-reconciliation-action-btn {
    border-top-right-radius: .38rem !important;
    border-bottom-right-radius: .38rem !important;
}

.site-reconciliation-actions.btn-group > .site-reconciliation-action-btn + .site-reconciliation-action-btn,
.site-reconciliation-actions.btn-group > .site-reconciliation-action-btn + .site-reconciliation-action-form,
.site-reconciliation-actions.btn-group > .site-reconciliation-action-form + .site-reconciliation-action-btn {
    margin-left: -1px;
}

.site-reconciliation-action-btn--copy {
    color: #ffffff !important;
    background: #465a7e !important;
    border-color: #5d76a3 !important;
}

.site-reconciliation-action-btn--copy:hover,
.site-reconciliation-action-btn--copy:focus {
    color: #ffffff !important;
    background: #536d9a !important;
    border-color: #7894c2 !important;
}

.site-reconciliation-action-btn--copy.is-copied {
    color: #ffffff !important;
    background: #23745f !important;
    border-color: #33a083 !important;
}

.site-reconciliation-page > .card-body {
    padding: .9rem;
}

.site-reconciliation-page .admin-page-kicker {
    margin-bottom: .22rem;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 0;
}

.site-reconciliation-hero {
    padding: .85rem 1rem;
    border-color: color-mix(in srgb, var(--cp-border) 78%, transparent);
    background: color-mix(in srgb, var(--cp-surface) 96%, var(--cp-primary) 4%);
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}

.site-reconciliation-hero h1 {
    font-size: 1.28rem;
    font-weight: 700;
    line-height: 1.18;
}

.site-reconciliation-hero p,
.site-reconciliation-run-copy p,
.site-reconciliation-table-card p {
    max-width: 1160px;
    font-size: .78rem;
    line-height: 1.45;
}

.site-reconciliation-table-card h2,
.site-reconciliation-run-copy h2 {
    font-size: 1.12rem;
    font-weight: 700;
    line-height: 1.22;
}

.site-reconciliation-summary-grid {
    gap: .62rem;
    margin-bottom: .8rem;
}

.site-reconciliation-summary-card {
    min-height: 78px;
    gap: .28rem;
    padding: .74rem .9rem;
    border-color: color-mix(in srgb, var(--cp-border) 76%, transparent);
    box-shadow: 0 10px 22px rgba(15, 23, 42, .04);
}

.site-reconciliation-summary-card span,
.site-reconciliation-review-metric span {
    font-size: .71rem;
    font-weight: 700;
}

.site-reconciliation-summary-card strong {
    font-size: 1.15rem;
    font-weight: 700;
}

.site-reconciliation-run-panel {
    gap: .8rem;
    padding: .9rem 1rem;
    margin-bottom: .8rem;
    border-color: color-mix(in srgb, var(--cp-border) 76%, transparent);
    box-shadow: 0 10px 22px rgba(15, 23, 42, .04);
}

.site-reconciliation-run-message,
.site-reconciliation-complete-state,
.site-reconciliation-complete-hint {
    border-color: color-mix(in srgb, var(--cp-border) 68%, transparent);
}

.site-reconciliation-run-message {
    padding: .72rem .85rem;
}

.site-reconciliation-run-message strong,
.site-reconciliation-complete-state strong {
    font-size: .82rem;
    font-weight: 700;
}

.site-reconciliation-run-message span,
.site-reconciliation-complete-state span,
.site-reconciliation-complete-hint {
    font-size: .76rem;
    line-height: 1.4;
}

.site-reconciliation-complete-state {
    min-height: 64px;
    padding: .75rem .85rem;
}

.site-reconciliation-complete-form label {
    font-size: .78rem;
    font-weight: 700;
}

.site-reconciliation-complete-form .form-control {
    min-height: 38px;
    font-size: .8rem;
}

.site-reconciliation-table-card {
    padding: .9rem;
    border-color: color-mix(in srgb, var(--cp-border) 74%, transparent);
    background: color-mix(in srgb, var(--cp-surface) 98%, var(--cp-body) 2%);
    box-shadow: 0 12px 26px rgba(15, 23, 42, .05);
}

.site-reconciliation-table-card .admin-section-heading {
    margin-bottom: .68rem;
}

.site-reconciliation-page .admin-report-table-wrap {
    border: 0 !important;
    background: color-mix(in srgb, var(--cp-surface) 98%, var(--cp-body) 2%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
    scrollbar-color: rgba(82, 111, 150, .46) color-mix(in srgb, var(--cp-surface) 92%, var(--cp-body) 8%);
    scrollbar-width: thin;
}

.site-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.site-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar-track {
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-body) 8%);
    border-radius: 999px;
}

.site-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar-thumb {
    background: rgba(82, 111, 150, .46);
    border: 2px solid color-mix(in srgb, var(--cp-surface) 92%, var(--cp-body) 8%);
    border-radius: 999px;
}

.site-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar-thumb:hover {
    background: rgba(38, 91, 163, .68);
}

.site-reconciliation-page .dataTables_wrapper > .row:first-child {
    align-items: center;
    gap: .5rem 0;
    margin: 0 0 .55rem;
}

.site-reconciliation-page .dataTables_wrapper > .row:last-child {
    align-items: center;
    gap: .5rem 0;
    margin: .58rem 0 0;
}

.site-reconciliation-page .dataTables_length label,
.site-reconciliation-page .dataTables_info {
    color: var(--cp-muted);
    font-size: .76rem;
    font-weight: 600;
}

.site-reconciliation-page .dataTables_length select {
    min-height: 32px;
    padding: .24rem 1.65rem .24rem .55rem;
    border-radius: 7px;
    font-size: .76rem;
}

.site-reconciliation-page #site-reconciliation-runs-table_wrapper .dataTables_filter {
    display: none !important;
}

.site-reconciliation-page .admin-data-table {
    border-collapse: separate;
    border-spacing: 0;
    color: var(--cp-text);
    font-size: .78rem;
}

.site-reconciliation-page .admin-data-table thead th,
.site-reconciliation-page .admin-data-table thead td,
.site-reconciliation-finance-table.admin-report-table thead th {
    padding: .52rem .66rem !important;
    border: 0 !important;
    border-bottom: 1px solid color-mix(in srgb, var(--cp-border) 78%, transparent) !important;
    color: color-mix(in srgb, var(--cp-text) 90%, var(--cp-muted) 10%) !important;
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%) !important;
    font-size: .73rem;
    font-weight: 700;
    line-height: 1.22;
    vertical-align: middle;
    white-space: nowrap;
}

.site-reconciliation-page .admin-data-table thead th:not(:last-child),
.site-reconciliation-page .admin-data-table thead td:not(:last-child),
.site-reconciliation-finance-table.admin-report-table thead th:not(:last-child) {
    border-right: 1px solid color-mix(in srgb, var(--cp-border) 56%, transparent) !important;
}

.site-reconciliation-page table.dataTable thead > tr > th.sorting,
.site-reconciliation-page table.dataTable thead > tr > th.sorting_asc,
.site-reconciliation-page table.dataTable thead > tr > th.sorting_desc {
    padding-right: 1.3rem !important;
}

.site-reconciliation-page table.dataTable thead > tr > th.sorting::before,
.site-reconciliation-page table.dataTable thead > tr > th.sorting::after,
.site-reconciliation-page table.dataTable thead > tr > th.sorting_asc::before,
.site-reconciliation-page table.dataTable thead > tr > th.sorting_asc::after,
.site-reconciliation-page table.dataTable thead > tr > th.sorting_desc::before,
.site-reconciliation-page table.dataTable thead > tr > th.sorting_desc::after {
    right: .44rem;
    color: var(--cp-muted);
    font-size: .58rem;
    opacity: .42;
}

.site-reconciliation-page .admin-data-table tbody td,
.site-reconciliation-page .admin-data-table tbody th,
.site-reconciliation-finance-table.admin-report-table tbody td,
.site-reconciliation-finance-table.admin-report-table tbody th {
    padding: .46rem .66rem !important;
    border: 0 !important;
    border-top: 1px solid color-mix(in srgb, var(--cp-border) 54%, transparent) !important;
    border-right: 1px solid color-mix(in srgb, var(--cp-border) 38%, transparent) !important;
    color: var(--cp-text);
    font-weight: 500;
    line-height: 1.32;
    vertical-align: middle;
}

.site-reconciliation-page .admin-data-table tbody td:last-child,
.site-reconciliation-page .admin-data-table tbody th:last-child,
.site-reconciliation-finance-table.admin-report-table tbody td:last-child,
.site-reconciliation-finance-table.admin-report-table tbody th:last-child {
    border-right: 0 !important;
}

.site-reconciliation-page .admin-data-table tbody tr:first-child td,
.site-reconciliation-page .admin-data-table tbody tr:first-child th {
    border-top: 0 !important;
}

.site-reconciliation-page .admin-data-table tbody tr:nth-child(even) > * {
    background: color-mix(in srgb, var(--cp-surface) 95%, var(--cp-primary) 5%) !important;
}

.site-reconciliation-page .admin-data-table tbody tr:hover > *,
.site-reconciliation-finance-table.admin-report-table tbody tr:hover > * {
    background: color-mix(in srgb, var(--cp-surface) 90%, var(--cp-primary) 10%) !important;
}

.site-reconciliation-finance-table {
    min-width: 1580px;
}

.site-reconciliation-action-cell {
    min-width: 116px;
}

.site-reconciliation-site-cell {
    min-width: 190px;
    font-weight: 600;
}

.site-reconciliation-money {
    min-width: 84px;
    font-weight: 600;
    line-height: 1.22;
}

.site-reconciliation-money--net,
.site-reconciliation-money--difference {
    font-weight: 700;
}

table.datatable td:first-child .site-reconciliation-actions.btn-group > .site-reconciliation-action-btn,
table.datatable td:first-child .site-reconciliation-actions.btn-group > .site-reconciliation-action-form .site-reconciliation-action-btn,
.site-reconciliation-actions.btn-group > .site-reconciliation-action-form .site-reconciliation-action-btn,
.site-reconciliation-action-btn {
    min-height: 28px;
    padding: .28rem .5rem;
    font-size: .7rem;
    font-weight: 700;
}

[data-theme="dark"] .site-reconciliation-hero,
[data-theme="dark"] .site-reconciliation-summary-card,
[data-theme="dark"] .site-reconciliation-run-panel,
[data-theme="dark"] .site-reconciliation-table-card,
[data-theme="dark"] .site-reconciliation-page .admin-report-table-wrap {
    border-color: rgba(90, 116, 152, .42);
    box-shadow: none;
}

[data-theme="dark"] .site-reconciliation-hero {
    background: color-mix(in srgb, var(--cp-surface) 94%, var(--cp-primary) 6%);
}

[data-theme="dark"] .site-reconciliation-page .admin-data-table thead th,
[data-theme="dark"] .site-reconciliation-page .admin-data-table thead td,
[data-theme="dark"] .site-reconciliation-finance-table.admin-report-table thead th {
    color: #dbeafe !important;
    border-bottom-color: rgba(90, 116, 152, .46) !important;
    background: #111d30 !important;
}

[data-theme="dark"] .site-reconciliation-page .admin-data-table tbody td,
[data-theme="dark"] .site-reconciliation-page .admin-data-table tbody th,
[data-theme="dark"] .site-reconciliation-finance-table.admin-report-table tbody td,
[data-theme="dark"] .site-reconciliation-finance-table.admin-report-table tbody th {
    border-top-color: rgba(90, 116, 152, .34) !important;
    border-right-color: rgba(90, 116, 152, .24) !important;
    color: #e5eefb;
}

[data-theme="dark"] .site-reconciliation-page .admin-data-table tbody tr:nth-child(even) > * {
    background: rgba(23, 35, 56, .64) !important;
}

[data-theme="dark"] .site-reconciliation-page .admin-data-table tbody tr:hover > *,
[data-theme="dark"] .site-reconciliation-finance-table.admin-report-table tbody tr:hover > * {
    background: #17243a !important;
}

[data-theme="dark"] .site-reconciliation-page .admin-report-table-wrap {
    scrollbar-color: rgba(119, 154, 197, .5) rgba(17, 26, 43, .72);
}

[data-theme="dark"] .site-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar-track {
    background: rgba(17, 26, 43, .72);
}

[data-theme="dark"] .site-reconciliation-page .admin-report-table-wrap::-webkit-scrollbar-thumb {
    background: rgba(119, 154, 197, .5);
    border-color: rgba(17, 26, 43, .72);
}

.site-reconciliation-complete-state--processing {
    border-color: rgba(31, 111, 190, .5);
    background: color-mix(in srgb, #1f6fbe 10%, var(--cp-surface));
}

.site-reconciliation-complete-state--processing i {
    color: #1f6fbe;
}

.site-reconciliation-complete-progress-link {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    width: max-content;
    margin-top: .65rem;
}

.site-reconciliation-completion-modal {
    display: grid;
    gap: 1rem;
    padding: .85rem;
    border: 1px solid var(--cp-border);
    border-radius: .85rem;
    color: var(--cp-text);
    background: var(--cp-body);
    box-shadow: 0 22px 48px rgba(15, 23, 42, .18);
}

.is-fancybox-content:has(.site-reconciliation-completion-modal),
html:has(body.is-fancybox-content .site-reconciliation-completion-modal),
body.is-fancybox-content:has(.site-reconciliation-completion-modal) {
    background: var(--cp-body) !important;
}

.site-reconciliation-completion-header {
    flex-wrap: wrap;
    margin-bottom: 0;
}

.site-reconciliation-completion-header-copy {
    flex: 1 1 420px;
    min-width: 0;
}

.site-reconciliation-completion-summary {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .8rem;
}

.site-reconciliation-completion-notice {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: .85rem 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    color: var(--cp-text);
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
}

.site-reconciliation-completion-notice i {
    margin-top: .2rem;
    color: var(--cp-primary);
}

.site-reconciliation-completion-notice strong,
.site-reconciliation-completion-notice span {
    display: block;
}

.site-reconciliation-completion-notice strong {
    color: var(--cp-text);
    font-weight: 900;
}

.site-reconciliation-completion-notice span {
    margin-top: .18rem;
    color: var(--cp-muted);
    line-height: 1.45;
}

.site-reconciliation-completion-notice--cash {
    border-color: rgba(31, 111, 190, .42);
    background: color-mix(in srgb, #1f6fbe 8%, var(--cp-surface));
}

.site-reconciliation-completion-notice--historical {
    border-color: rgba(180, 116, 22, .42);
    background: color-mix(in srgb, #b47416 8%, var(--cp-surface));
}

.site-reconciliation-completion-notice--historical i {
    color: #b47416;
}

.site-reconciliation-completion-summary-card,
.site-reconciliation-completion-section,
.site-reconciliation-completion-progress {
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.site-reconciliation-completion-summary-card {
    display: grid;
    gap: .35rem;
    min-height: 112px;
    padding: .9rem 1rem;
}

.site-reconciliation-completion-summary-card span {
    color: var(--cp-muted);
    font-size: .76rem;
    font-weight: 850;
    text-transform: uppercase;
}

.site-reconciliation-completion-summary-card strong {
    color: var(--cp-text);
    font-size: 1.2rem;
    font-weight: 900;
}

.site-reconciliation-completion-summary-card small {
    color: var(--cp-muted);
}

.site-reconciliation-completion-summary-card--positive {
    border-color: rgba(22, 128, 78, .42);
    background: color-mix(in srgb, #16804e 8%, var(--cp-surface));
}

.site-reconciliation-completion-summary-card--negative {
    border-color: rgba(190, 18, 60, .42);
    background: color-mix(in srgb, #be123c 8%, var(--cp-surface));
}

.site-reconciliation-completion-summary-card--warning {
    border-color: rgba(180, 116, 22, .42);
    background: color-mix(in srgb, #b47416 8%, var(--cp-surface));
}

.site-reconciliation-completion-section,
.site-reconciliation-completion-progress {
    position: sticky;
    top: 0;
    z-index: 4;
    padding: 1rem;
    border-color: color-mix(in srgb, var(--cp-primary) 36%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-primary) 7%, var(--cp-surface));
    box-shadow: 0 10px 24px rgba(15, 23, 42, .12);
}

.site-reconciliation-completion-money--positive {
    color: #15803d !important;
    font-weight: 850;
}

.site-reconciliation-completion-money--negative {
    color: #be123c !important;
    font-weight: 850;
}

.site-reconciliation-completion-money--muted {
    color: var(--cp-muted) !important;
    font-weight: 700;
}

.site-reconciliation-completion-status {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: .28rem .48rem;
    border: 1px solid var(--cp-border);
    border-radius: 999px;
    color: var(--cp-text);
    background: color-mix(in srgb, var(--cp-surface) 84%, var(--cp-primary) 16%);
    font-size: .74rem;
    font-weight: 850;
    line-height: 1.1;
    white-space: normal;
}

.site-reconciliation-completion-status--updated,
.site-reconciliation-completion-status--completed,
.site-reconciliation-completion-progress-card--updated .site-reconciliation-completion-status {
    border-color: rgba(22, 128, 78, .45);
    color: #15803d;
    background: color-mix(in srgb, #16804e 13%, var(--cp-surface));
}

.site-reconciliation-completion-status--failed,
.site-reconciliation-completion-progress-card--failed .site-reconciliation-completion-status {
    border-color: rgba(190, 18, 60, .45);
    color: #be123c;
    background: color-mix(in srgb, #be123c 13%, var(--cp-surface));
}

.site-reconciliation-completion-status--processing,
.site-reconciliation-completion-progress-card--processing .site-reconciliation-completion-status {
    border-color: rgba(31, 111, 190, .45);
    color: #1f6fbe;
    background: color-mix(in srgb, #1f6fbe 13%, var(--cp-surface));
}

.site-reconciliation-completion-status--skipped-deleted,
.site-reconciliation-completion-status--skipped-child,
.site-reconciliation-completion-status--skipped-unlimited,
.site-reconciliation-completion-status--skipped-historical,
.site-reconciliation-completion-progress-card--skipped-deleted .site-reconciliation-completion-status,
.site-reconciliation-completion-progress-card--skipped-child .site-reconciliation-completion-status,
.site-reconciliation-completion-progress-card--skipped-unlimited .site-reconciliation-completion-status,
.site-reconciliation-completion-progress-card--skipped-historical .site-reconciliation-completion-status {
    border-color: rgba(180, 116, 22, .45);
    color: #b47416;
    background: color-mix(in srgb, #b47416 13%, var(--cp-surface));
}

.site-reconciliation-completion-progress[hidden] {
    display: none !important;
}

.site-reconciliation-completion-progress-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .75rem;
}

.site-reconciliation-completion-progress-head strong,
.site-reconciliation-completion-progress-head span {
    display: block;
}

.site-reconciliation-completion-progress-head strong {
    font-size: 1rem;
    color: var(--cp-text);
}

.site-reconciliation-completion-progress-head span {
    color: var(--cp-muted);
}

.site-reconciliation-completion-progress-head > span {
    color: var(--cp-primary);
    font-size: 1.2rem;
    font-weight: 900;
}

.site-reconciliation-completion-progress-track {
    height: 10px;
    overflow: hidden;
    border-radius: 999px;
    background: color-mix(in srgb, var(--cp-border) 64%, var(--cp-surface));
}

.site-reconciliation-completion-progress-track span {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: #1f6fbe;
    transition: width .28s ease;
}

.site-reconciliation-completion-progress-card--processing {
    border-color: color-mix(in srgb, var(--cp-primary) 70%, var(--cp-border));
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--cp-primary) 16%, transparent);
}

.site-reconciliation-completion-progress-error {
    margin-top: .75rem;
    padding: .75rem .9rem;
    border: 1px solid rgba(190, 18, 60, .45);
    border-radius: 8px;
    color: #be123c;
    background: color-mix(in srgb, #be123c 10%, var(--cp-surface));
}

.site-reconciliation-completion-actions {
    display: flex;
    flex: 0 0 auto;
    align-self: flex-start;
    justify-content: flex-end;
    gap: .65rem;
    margin-left: auto;
}

.site-reconciliation-completion-section-heading {
    margin-bottom: .9rem;
}

.site-reconciliation-impact-section + .site-reconciliation-impact-section {
    margin-top: 1rem;
}

.site-reconciliation-impact-section h3 {
    margin: 0 0 .65rem;
    color: var(--cp-text);
    font-size: .95rem;
    font-weight: 900;
}

.site-reconciliation-impact-grid,
.site-reconciliation-completion-progress-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
}

.site-reconciliation-impact-card {
    display: grid;
    gap: .75rem;
    min-width: 0;
    padding: .9rem;
    border: 1px solid var(--cp-border);
    border-left-width: 4px;
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 94%, var(--cp-primary) 6%);
}

.site-reconciliation-impact-card--increase {
    border-left-color: #16804e;
    background: color-mix(in srgb, #16804e 8%, var(--cp-surface));
}

.site-reconciliation-impact-card--decrease {
    border-left-color: #be123c;
    background: color-mix(in srgb, #be123c 8%, var(--cp-surface));
}

.site-reconciliation-impact-card--reserve {
    border-left-color: #1f6fbe;
    background: color-mix(in srgb, #1f6fbe 8%, var(--cp-surface));
}

.site-reconciliation-impact-card__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .7rem;
    min-width: 0;
}

.site-reconciliation-impact-card__head strong {
    min-width: 0;
    color: var(--cp-text);
    font-size: .96rem;
    font-weight: 900;
    overflow-wrap: anywhere;
}

.site-reconciliation-impact-card__head > span:not(.site-reconciliation-completion-status) {
    flex: 0 0 auto;
    padding: .24rem .48rem;
    border-radius: 999px;
    color: var(--cp-muted);
    background: color-mix(in srgb, var(--cp-surface) 82%, var(--cp-border) 18%);
    font-size: .72rem;
    font-weight: 850;
    white-space: nowrap;
}

.site-reconciliation-impact-card__amount {
    font-size: 1.45rem;
    font-weight: 950;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
}

.site-reconciliation-impact-card--increase .site-reconciliation-impact-card__amount {
    color: #15803d;
}

.site-reconciliation-impact-card--decrease .site-reconciliation-impact-card__amount {
    color: #be123c;
}

.site-reconciliation-impact-card--reserve .site-reconciliation-impact-card__amount {
    color: #1f6fbe;
}

.site-reconciliation-impact-card__label {
    margin-top: -.55rem;
    color: var(--cp-muted);
    font-size: .78rem;
    font-weight: 800;
}

.site-reconciliation-impact-card__metrics {
    display: grid;
    gap: .45rem;
}

.site-reconciliation-impact-card__metrics > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .7rem;
    min-width: 0;
    padding: .48rem .55rem;
    border: 1px solid color-mix(in srgb, var(--cp-border) 76%, transparent);
    border-radius: 7px;
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-border) 12%);
}

.site-reconciliation-impact-card__metrics span {
    color: var(--cp-muted);
    font-size: .74rem;
    font-weight: 750;
}

.site-reconciliation-impact-card__metrics strong {
    color: var(--cp-text);
    font-size: .8rem;
    font-weight: 850;
    font-variant-numeric: tabular-nums;
    text-align: right;
}

.site-reconciliation-completion-empty {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: .9rem 1rem;
    border: 1px solid rgba(22, 128, 78, .38);
    border-radius: 8px;
    background: color-mix(in srgb, #16804e 8%, var(--cp-surface));
}

.site-reconciliation-completion-empty i {
    color: #15803d;
    margin-top: .15rem;
}

.site-reconciliation-completion-empty strong,
.site-reconciliation-completion-empty span {
    display: block;
}

.site-reconciliation-completion-empty strong {
    color: var(--cp-text);
}

.site-reconciliation-completion-empty span {
    color: var(--cp-muted);
}

.site-reconciliation-completion-progress-cards {
    margin-top: .85rem;
}

[data-theme="dark"] .site-reconciliation-completion-money--positive,
[data-theme="dark"] .site-reconciliation-completion-status--updated,
[data-theme="dark"] .site-reconciliation-completion-status--completed,
[data-theme="dark"] .site-reconciliation-completion-progress-card--updated .site-reconciliation-completion-status {
    color: #22c55e !important;
}

[data-theme="dark"] .site-reconciliation-completion-money--negative,
[data-theme="dark"] .site-reconciliation-completion-status--failed,
[data-theme="dark"] .site-reconciliation-completion-progress-card--failed .site-reconciliation-completion-status {
    color: #fb7185 !important;
}

[data-theme="dark"] .site-reconciliation-completion-status--processing,
[data-theme="dark"] .site-reconciliation-completion-progress-card--processing .site-reconciliation-completion-status {
    color: #8bbcff !important;
}

[data-theme="dark"] .site-reconciliation-impact-card--increase .site-reconciliation-impact-card__amount {
    color: #22c55e;
}

[data-theme="dark"] .site-reconciliation-impact-card--decrease .site-reconciliation-impact-card__amount {
    color: #fb7185;
}

[data-theme="dark"] .site-reconciliation-impact-card--reserve .site-reconciliation-impact-card__amount {
    color: #8bbcff;
}

.site-reconciliation-modal-header {
    display: flex;
    gap: 1rem;
    align-items: center;
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
}

.site-reconciliation-modal-icon {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: 8px;
    color: var(--cp-primary);
    background: color-mix(in srgb, var(--cp-primary) 15%, var(--cp-surface));
}

.site-reconciliation-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-top: .45rem;
}

.site-reconciliation-chip {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: .15rem .65rem;
    border: 1px solid var(--cp-border);
    border-radius: 999px;
    color: var(--cp-text);
    background: var(--cp-surface);
    font-size: .78rem;
    font-weight: 700;
}

.site-reconciliation-impact {
    display: flex;
    gap: .75rem;
    padding: .9rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    color: var(--cp-text);
    background: var(--cp-surface);
}

.site-reconciliation-impact i {
    margin-top: .2rem;
    color: var(--cp-primary);
}

.site-reconciliation-impact strong,
.site-reconciliation-impact span {
    display: block;
}

.site-reconciliation-impact span {
    margin-top: .25rem;
    color: var(--cp-muted);
}

.site-reconciliation-impact--warning {
    border-color: rgba(180, 116, 22, .5);
    background: color-mix(in srgb, #b47416 10%, var(--cp-surface));
}

.site-reconciliation-impact--warning i {
    color: #b47416;
}

.site-reconciliation-impact--success {
    border-color: rgba(37, 133, 95, .5);
    background: color-mix(in srgb, #25855f 10%, var(--cp-surface));
}

.site-reconciliation-impact--success i {
    color: #25855f;
}

.site-reconciliation-impact--danger {
    border-color: rgba(190, 55, 65, .5);
    background: color-mix(in srgb, #be3741 10%, var(--cp-surface));
}

.site-reconciliation-impact--danger i {
    color: #be3741;
}

.site-reconciliation-validation-summary ul {
    display: grid;
    gap: .28rem;
    margin: .55rem 0 0;
    padding-left: 1rem;
    color: var(--cp-muted);
}

.site-reconciliation-validation-summary li {
    line-height: 1.35;
}

.site-reconciliation-form-validation {
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    padding: .72rem .8rem;
    border: 1px solid rgba(190, 55, 65, .46);
    border-radius: 8px;
    color: var(--cp-text);
    background: color-mix(in srgb, #be3741 9%, var(--cp-surface));
    line-height: 1.4;
}

.site-reconciliation-form-validation[hidden] {
    display: none !important;
}

.site-reconciliation-form-validation i {
    margin-top: .14rem;
    color: #be3741;
}

.site-reconciliation-form-validation strong,
.site-reconciliation-form-validation span {
    display: block;
    text-transform: none;
    letter-spacing: 0;
}

.site-reconciliation-form-validation span {
    margin-top: .18rem;
    color: var(--cp-muted);
    font-size: .82rem;
    font-weight: 500;
}

.site-reconciliation-review-metric .site-reconciliation-form-validation span {
    text-transform: none;
}

.site-reconciliation-form-validation ul {
    display: grid;
    gap: .22rem;
    margin: .45rem 0 0;
    padding-left: 1rem;
    color: var(--cp-muted);
}

.site-reconciliation-form-validation ul[hidden] {
    display: none !important;
}

.site-reconciliation-review-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: .75rem;
    margin-bottom: 1rem;
    align-items: stretch;
}

.site-reconciliation-review-metric {
    min-width: 0;
    min-height: 92px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: .35rem;
    padding: .8rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
    overflow: hidden;
}

.site-reconciliation-review-metric strong {
    color: var(--cp-text);
    font-size: 1.02rem;
}

.site-reconciliation-review-metric--strong {
    border-color: color-mix(in srgb, var(--cp-primary) 45%, var(--cp-border));
}

.site-reconciliation-review-metric--danger {
    border-color: rgba(190, 55, 65, .55);
}

.site-reconciliation-review-metric--danger strong {
    color: #be3741;
}

.site-reconciliation-review-metric--success {
    border-color: rgba(37, 133, 95, .55);
}

.site-reconciliation-review-metric--success strong {
    color: #25855f;
}

.site-reconciliation-review-metric--editable {
    justify-content: flex-start;
    min-height: 176px;
}

.site-reconciliation-review-metric--editable.is-editing {
    border-color: color-mix(in srgb, var(--cp-primary) 60%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 90%, var(--cp-primary) 10%);
}

.site-reconciliation-review-metric--manual {
    border-color: rgba(23, 132, 150, .55);
    background: color-mix(in srgb, #178496 10%, var(--cp-surface));
}

.site-reconciliation-field-view,
.site-reconciliation-field-form {
    width: 100%;
    min-width: 0;
}

.site-reconciliation-field-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .5rem;
    min-width: 0;
}

.site-reconciliation-field-title span {
    min-width: 0;
    color: var(--cp-muted);
    font-size: .82rem;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.site-reconciliation-field-title em {
    flex: 0 0 auto;
    padding: .15rem .45rem;
    border: 1px solid rgba(23, 132, 150, .45);
    border-radius: 999px;
    color: #178496;
    background: color-mix(in srgb, #178496 12%, var(--cp-surface));
    font-size: .68rem;
    font-style: normal;
    font-weight: 800;
    line-height: 1.15;
    white-space: nowrap;
}

.site-reconciliation-field-view small,
.site-reconciliation-field-form small {
    display: block;
    margin-top: .25rem;
    color: var(--cp-muted);
    font-size: .78rem;
    line-height: 1.35;
}

.site-reconciliation-field-warning {
    color: #b47416 !important;
}

.site-reconciliation-field-note {
    overflow-wrap: anywhere;
}

.site-reconciliation-field-actions,
.site-reconciliation-field-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: .75rem;
}

.site-reconciliation-field-form-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.site-reconciliation-field-button {
    min-width: 0;
    min-height: 38px;
    padding: .45rem .7rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    border-radius: 6px;
    border: 1px solid var(--cp-border);
    color: var(--cp-text);
    background: var(--cp-surface);
    box-shadow: none;
    font-size: .78rem;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: 0;
    text-align: center;
    white-space: normal;
}

.site-reconciliation-field-button:hover,
.site-reconciliation-field-button:focus {
    color: var(--cp-text);
    border-color: color-mix(in srgb, var(--cp-primary) 45%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.site-reconciliation-field-button i {
    flex: 0 0 auto;
}

.site-reconciliation-field-button--edit {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 56%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.site-reconciliation-field-button--edit:hover,
.site-reconciliation-field-button--edit:focus {
    color: var(--cp-primary);
}

.site-reconciliation-field-button--save {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 56%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.site-reconciliation-field-button--save:hover,
.site-reconciliation-field-button--save:focus {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 45%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.site-reconciliation-field-button--cancel {
    color: #be3741;
    border-color: rgba(190, 55, 65, .48);
    background: color-mix(in srgb, #be3741 9%, var(--cp-surface));
}

.site-reconciliation-field-button--cancel:hover,
.site-reconciliation-field-button--cancel:focus {
    color: #ffffff;
    border-color: #be3741;
    background: #be3741;
}

.site-reconciliation-field-button--restore {
    color: #15758a;
    border-color: rgba(21, 117, 138, .46);
    background: color-mix(in srgb, #15758a 10%, var(--cp-surface));
}

.site-reconciliation-field-button--restore:hover,
.site-reconciliation-field-button--restore:focus {
    color: #0f5d70;
    border-color: rgba(21, 117, 138, .66);
    background: color-mix(in srgb, #15758a 16%, var(--cp-surface));
}

.site-reconciliation-field-form {
    display: grid;
    gap: .45rem;
}

.site-reconciliation-field-form[hidden] {
    display: none !important;
}

.site-reconciliation-field-form label {
    margin: 0;
    color: var(--cp-text);
    font-size: .82rem;
    font-weight: 700;
}

.site-reconciliation-field-form textarea {
    min-height: 74px;
    resize: vertical;
}

.site-reconciliation-field-form .invalid-feedback,
.site-reconciliation-adjustment-form .invalid-feedback,
.site-reconciliation-decision-card .invalid-feedback,
.site-reconciliation-approve-form .invalid-feedback {
    margin-top: .3rem;
    color: #be3741;
    font-size: .76rem;
    font-weight: 700;
    line-height: 1.35;
}

[data-theme="dark"] .site-reconciliation-field-form .invalid-feedback,
[data-theme="dark"] .site-reconciliation-adjustment-form .invalid-feedback,
[data-theme="dark"] .site-reconciliation-decision-card .invalid-feedback,
[data-theme="dark"] .site-reconciliation-approve-form .invalid-feedback {
    color: #fca5a5;
}

.site-reconciliation-decision-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    align-items: stretch;
}

.site-reconciliation-decision-intro {
    display: flex;
    gap: .75rem;
    align-items: flex-start;
    padding: .9rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid color-mix(in srgb, var(--cp-primary) 34%, var(--cp-border));
    border-radius: 8px;
    color: var(--cp-text);
    background: color-mix(in srgb, var(--cp-surface) 90%, var(--cp-primary) 10%);
}

.site-reconciliation-decision-intro i {
    margin-top: .15rem;
    color: var(--cp-primary);
}

.site-reconciliation-decision-intro strong,
.site-reconciliation-decision-intro span {
    display: block;
}

.site-reconciliation-decision-intro span {
    margin-top: .25rem;
    color: var(--cp-muted);
    line-height: 1.45;
}

.site-reconciliation-adjustment-form {
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
}

.site-reconciliation-adjustment-copy h2 {
    margin: 0;
    color: var(--cp-text);
    font-size: 1rem;
    font-weight: 800;
}

.site-reconciliation-adjustment-copy p {
    margin: .3rem 0 .8rem;
    color: var(--cp-muted);
}

.site-reconciliation-adjustment-help-list {
    display: grid;
    gap: .42rem;
    margin: .75rem 0 1rem;
    padding: .72rem .82rem;
    list-style: none;
    border: 1px solid color-mix(in srgb, var(--cp-primary) 24%, var(--cp-border));
    border-radius: 8px;
    color: var(--cp-muted);
    background: color-mix(in srgb, var(--cp-surface) 94%, var(--cp-primary) 6%);
}

.site-reconciliation-adjustment-help-list li {
    position: relative;
    min-width: 0;
    padding-left: 1rem;
    line-height: 1.4;
}

.site-reconciliation-adjustment-help-list li::before {
    content: "";
    position: absolute;
    top: .56rem;
    left: 0;
    width: .36rem;
    height: .36rem;
    border-radius: 999px;
    background: var(--cp-primary);
}

.site-reconciliation-adjustment-help-list strong {
    color: var(--cp-text);
}

.site-reconciliation-adjustment-grid {
    display: grid;
    grid-template-columns: minmax(170px, .85fr) minmax(150px, .65fr) minmax(260px, 1fr) minmax(168px, auto);
    gap: .75rem;
    align-items: start;
}

.site-reconciliation-adjustment-grid .form-group {
    min-width: 0;
    margin-bottom: 0;
}

.site-reconciliation-adjustment-field-hint {
    display: block;
    margin-top: .32rem;
    color: var(--cp-muted);
    font-size: .76rem;
    line-height: 1.35;
}

.site-reconciliation-adjustment-actions {
    min-width: 0;
    display: flex;
    align-items: end;
    justify-content: flex-end;
    align-self: start;
    padding-top: 1.45rem;
}

.site-reconciliation-adjustment-actions .btn {
    width: 100%;
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    border-radius: 6px;
    font-weight: 700;
    line-height: 1.2;
    white-space: normal;
}

.site-reconciliation-adjustment-actions .btn-outline-primary {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 56%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.site-reconciliation-adjustment-actions .btn-outline-primary:hover,
.site-reconciliation-adjustment-actions .btn-outline-primary:focus {
    color: #ffffff;
    border-color: var(--cp-primary);
    background: var(--cp-primary);
}

.site-reconciliation-adjustment-lines {
    display: grid;
    gap: .85rem;
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.site-reconciliation-adjustment-lines-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.site-reconciliation-adjustment-lines-header h2 {
    margin: 0;
    color: var(--cp-text);
    font-size: 1rem;
    font-weight: 800;
}

.site-reconciliation-adjustment-lines-header p {
    margin: .3rem 0 0;
    color: var(--cp-muted);
    line-height: 1.45;
}

.site-reconciliation-adjustment-lines-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .65rem;
}

.site-reconciliation-adjustment-lines-summary > div {
    min-width: 0;
    padding: .7rem .8rem;
    border: 1px solid color-mix(in srgb, var(--cp-border) 82%, var(--cp-primary) 18%);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
}

.site-reconciliation-adjustment-lines-summary span,
.site-reconciliation-adjustment-lines-summary strong {
    display: block;
}

.site-reconciliation-adjustment-lines-summary span {
    color: var(--cp-muted);
    font-size: .76rem;
    font-weight: 700;
}

.site-reconciliation-adjustment-lines-summary strong {
    margin-top: .18rem;
    color: var(--cp-text);
    font-size: .96rem;
    font-weight: 800;
}

.site-reconciliation-adjustment-lines-summary .is-positive strong,
.site-reconciliation-adjustment-effect.is-positive {
    color: #11845b;
}

.site-reconciliation-adjustment-lines-summary .is-negative strong,
.site-reconciliation-adjustment-effect.is-negative {
    color: #be3741;
}

.site-reconciliation-adjustment-lines-wrap {
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.site-reconciliation-adjustment-lines-table {
    min-width: 760px;
    margin-bottom: 0;
}

.site-reconciliation-adjustment-lines-table th,
.site-reconciliation-adjustment-lines-table td {
    vertical-align: middle;
}

.site-reconciliation-adjustment-direction {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: .2rem .48rem;
    border-radius: 999px;
    font-size: .74rem;
    font-weight: 800;
    line-height: 1.2;
    white-space: nowrap;
}

.site-reconciliation-adjustment-direction.is-increase {
    color: #0b6b46;
    border: 1px solid rgba(17, 132, 91, .34);
    background: rgba(17, 132, 91, .12);
}

.site-reconciliation-adjustment-direction.is-decrease {
    color: #9f2f38;
    border: 1px solid rgba(190, 55, 65, .32);
    background: rgba(190, 55, 65, .12);
}

.site-reconciliation-adjustment-effect {
    font-weight: 800;
    white-space: nowrap;
}

.site-reconciliation-adjustment-delete-form {
    margin: 0;
}

.site-reconciliation-adjustment-delete-button {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    border-radius: 6px;
    font-weight: 800;
}

.site-reconciliation-adjustment-empty {
    padding: .8rem;
    border: 1px dashed color-mix(in srgb, var(--cp-border) 80%, var(--cp-muted) 20%);
    border-radius: 8px;
    color: var(--cp-muted);
    background: color-mix(in srgb, var(--cp-surface) 95%, var(--cp-muted) 5%);
}

[data-theme="dark"] .site-reconciliation-field-button--save {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 56%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

[data-theme="dark"] .site-reconciliation-field-button--save:hover,
[data-theme="dark"] .site-reconciliation-field-button--save:focus {
    color: var(--cp-primary);
    border-color: color-mix(in srgb, var(--cp-primary) 45%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

[data-theme="dark"] .site-reconciliation-field-button--cancel {
    color: #fecaca;
    border-color: rgba(248, 113, 113, .48);
    background: rgba(190, 55, 65, .18);
}

[data-theme="dark"] .site-reconciliation-field-button--cancel:hover,
[data-theme="dark"] .site-reconciliation-field-button--cancel:focus {
    color: #071426;
    border-color: #fca5a5;
    background: #fca5a5;
}

[data-theme="dark"] .site-reconciliation-field-button--restore {
    color: #8bd8e6;
    border-color: rgba(139, 216, 230, .42);
    background: rgba(23, 132, 150, .16);
}

[data-theme="dark"] .site-reconciliation-page .btn-primary,
[data-theme="dark"] .site-reconciliation-page .btn-success,
[data-theme="dark"] .site-reconciliation-review-page .btn-primary,
[data-theme="dark"] .site-reconciliation-review-page .btn-success {
    color: #071426 !important;
}

[data-theme="dark"] .site-reconciliation-page table.datatable .btn-primary,
[data-theme="dark"] .site-reconciliation-page table.datatable .btn-success,
[data-theme="dark"] .site-reconciliation-page .admin-data-table .btn-primary,
[data-theme="dark"] .site-reconciliation-page .admin-data-table .btn-success {
    color: #071426 !important;
    background: var(--cp-primary) !important;
    border-color: var(--cp-primary) !important;
}

[data-theme="dark"] .site-reconciliation-adjustment-actions .btn-outline-primary:hover,
[data-theme="dark"] .site-reconciliation-adjustment-actions .btn-outline-primary:focus {
    color: #071426;
}

[data-theme="dark"] .site-reconciliation-adjustment-lines-summary .is-positive strong,
[data-theme="dark"] .site-reconciliation-adjustment-effect.is-positive {
    color: #6ee7a8;
}

[data-theme="dark"] .site-reconciliation-adjustment-lines-summary .is-negative strong,
[data-theme="dark"] .site-reconciliation-adjustment-effect.is-negative {
    color: #fca5a5;
}

[data-theme="dark"] .site-reconciliation-adjustment-direction.is-increase {
    color: #bbf7d0;
    border-color: rgba(74, 222, 128, .38);
    background: rgba(34, 197, 94, .16);
}

[data-theme="dark"] .site-reconciliation-adjustment-direction.is-decrease {
    color: #fecaca;
    border-color: rgba(248, 113, 113, .38);
    background: rgba(239, 68, 68, .16);
}

.site-reconciliation-decision-card,
.site-reconciliation-approve-form {
    padding: 1rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
}

.site-reconciliation-approve-form {
    display: grid;
    gap: .75rem;
    margin-top: 1rem;
}

.site-reconciliation-approve-form--disabled {
    border-color: rgba(180, 116, 22, .46);
    background: color-mix(in srgb, #b47416 8%, var(--cp-surface));
}

.site-reconciliation-approve-copy h2 {
    margin: 0;
    color: var(--cp-text);
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: 0;
}

.site-reconciliation-approve-copy p {
    margin: .28rem 0 0;
    color: var(--cp-muted);
    line-height: 1.45;
}

.site-reconciliation-disabled-note {
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    padding: .72rem .8rem;
    border: 1px solid rgba(180, 116, 22, .42);
    border-radius: 8px;
    color: var(--cp-muted);
    background: color-mix(in srgb, #b47416 10%, var(--cp-surface));
    line-height: 1.4;
}

.site-reconciliation-disabled-note i {
    margin-top: .12rem;
    color: #b47416;
}

.site-reconciliation-approve-form textarea:disabled {
    cursor: not-allowed;
    color: var(--cp-muted);
    background: color-mix(in srgb, var(--cp-surface) 86%, var(--cp-border) 14%);
    opacity: 1;
}

.site-reconciliation-approve-form .btn[disabled] {
    cursor: not-allowed;
    opacity: .62;
}

.site-reconciliation-decision-card {
    min-width: 0;
    min-height: 100%;
    display: flex;
    flex-direction: column;
}

.site-reconciliation-decision-card > .btn {
    width: 100%;
    margin-top: auto;
}

.site-reconciliation-decision-list {
    display: grid;
    gap: .45rem;
    margin: .85rem 0 1rem;
    padding: .75rem .85rem;
    list-style: none;
    border: 1px solid color-mix(in srgb, var(--cp-border) 80%, var(--cp-primary) 20%);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 94%, var(--cp-border) 6%);
}

.site-reconciliation-decision-list li {
    position: relative;
    min-width: 0;
    padding-left: 1rem;
    color: var(--cp-muted);
    line-height: 1.4;
}

.site-reconciliation-decision-list li::before {
    content: "";
    position: absolute;
    top: .56rem;
    left: 0;
    width: .38rem;
    height: .38rem;
    border-radius: 999px;
    background: var(--cp-primary);
}

.site-reconciliation-confirm-check {
    padding: .75rem .75rem .75rem 2.2rem;
    margin-bottom: .75rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
}

.site-reconciliation-modal-actions {
    margin-top: 1rem;
    padding: .8rem;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: color-mix(in srgb, var(--cp-surface) 94%, var(--cp-border));
}

.c-sidebar .admin-menu .admin-menu-link--with-control-badge {
    gap: .58rem;
}

.c-sidebar .admin-menu .c-sidebar-nav-link.admin-menu-link--with-control-badge > .admin-menu-label--wrap {
    flex: 1 1 auto;
    min-width: 0;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    line-height: 1.18;
}

.admin-menu-badge-control {
    min-width: 0;
    height: 1.12rem;
    margin-left: .18rem;
    padding: 0 .36rem;
    color: #2f2200;
    background: #f4d36f;
    border: 1px solid rgba(255, 236, 164, .68);
    border-radius: 999px;
    box-shadow: none;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1;
    white-space: nowrap;
}

[data-theme="dark"] .admin-menu-badge-control {
    color: #1c1400;
    background: #eec95e;
    border-color: rgba(255, 225, 132, .36);
}

@media (min-width: 992px) {
    html.admin-sidebar-collapsed-preload .admin-menu-badge-control,
    body.admin-sidebar-collapsed .admin-menu-badge-control {
        top: .18rem;
        right: .16rem;
        width: .68rem;
        min-width: .68rem;
        height: .68rem;
        padding: 0;
        border: 2px solid var(--cp-sidebar);
        font-size: 0;
    }
}

@media (max-width: 1199.98px) {
    .site-reconciliation-hero {
        grid-template-columns: 1fr;
    }

    .site-reconciliation-hero-copy {
        align-self: auto;
    }

    .site-reconciliation-date-help {
        grid-template-columns: 1fr;
    }

    .site-reconciliation-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-reconciliation-review-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .site-reconciliation-adjustment-grid {
        grid-template-columns: minmax(170px, .8fr) minmax(150px, .7fr) minmax(260px, 1fr);
    }

    .site-reconciliation-adjustment-lines-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-reconciliation-adjustment-actions {
        grid-column: 1 / -1;
        justify-content: flex-start;
        padding-top: 0;
    }

    .site-reconciliation-adjustment-actions .btn {
        width: auto;
        min-width: 180px;
    }
}

@media (max-width: 767.98px) {
    .site-reconciliation-hero,
    .site-reconciliation-run-panel,
    .site-reconciliation-decision-grid {
        grid-template-columns: 1fr;
        display: grid;
    }

    .site-reconciliation-date-form {
        width: 100%;
    }

    .site-reconciliation-date-row,
    .site-reconciliation-complete-form,
    .site-reconciliation-adjustment-grid,
    .site-reconciliation-adjustment-lines-summary,
    .site-reconciliation-summary-grid,
    .site-reconciliation-review-grid,
    .site-reconciliation-completion-summary {
        grid-template-columns: 1fr;
    }

    .site-reconciliation-date-form {
        padding: .8rem;
    }

    .site-reconciliation-modal-header {
        align-items: flex-start;
    }

    .site-reconciliation-field-form-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .site-reconciliation-field-button,
    .site-reconciliation-adjustment-actions .btn {
        width: 100%;
    }

    .site-reconciliation-completion-actions,
    .site-reconciliation-completion-progress-head {
        flex-direction: column;
        align-items: stretch;
    }

    .site-reconciliation-completion-actions {
        width: 100%;
        margin-left: 0;
    }

    .site-reconciliation-impact-grid,
    .site-reconciliation-completion-progress-cards {
        grid-template-columns: 1fr;
    }

    .site-reconciliation-completion-actions .btn {
        width: 100%;
    }
}

@media (max-width: 420px) {
    .site-reconciliation-field-form-actions {
        grid-template-columns: 1fr;
    }
}

.reconciliation-completion-modal.reconciliation-completion-modal--compact {
    gap: .65rem;
    padding: .65rem;
    border-radius: 8px;
    font-size: .88rem;
}

.reconciliation-completion-modal--compact .reconciliation-completion-header {
    gap: .7rem;
    padding: .72rem;
    margin-bottom: 0;
    border-radius: 8px;
}

.reconciliation-completion-modal--compact .reconciliation-completion-icon {
    width: 40px;
    height: 40px;
}

.reconciliation-completion-modal--compact .reconciliation-completion-header-copy h1 {
    margin-bottom: .18rem;
    font-size: 1.08rem;
    line-height: 1.2;
}

.reconciliation-completion-modal--compact .reconciliation-completion-header-copy p {
    margin-bottom: 0;
    font-size: .82rem;
    line-height: 1.38;
}

.reconciliation-completion-modal--compact .reconciliation-completion-actions {
    gap: .45rem;
}

.reconciliation-completion-modal--compact .reconciliation-completion-actions .btn {
    min-height: 36px;
    padding: .42rem .72rem;
    font-size: .84rem;
    line-height: 1.15;
}

.reconciliation-completion-modal--compact .reconciliation-completion-notice {
    gap: .55rem;
    padding: .6rem .72rem;
    border-radius: 7px;
}

.reconciliation-completion-modal--compact .reconciliation-completion-notice i {
    margin-top: .12rem;
}

.reconciliation-completion-modal--compact .reconciliation-completion-notice strong {
    font-size: .88rem;
    line-height: 1.25;
}

.reconciliation-completion-modal--compact .reconciliation-completion-notice span {
    margin-top: .12rem;
    font-size: .8rem;
    line-height: 1.35;
}

.reconciliation-completion-modal--compact .reconciliation-completion-summary {
    grid-template-columns: repeat(auto-fit, minmax(138px, 1fr));
    gap: .55rem;
}

.site-reconciliation-completion-summary {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.reconciliation-completion-modal--compact .reconciliation-completion-summary-card {
    gap: .25rem;
    min-height: 88px;
    padding: .62rem .72rem;
}

.reconciliation-completion-modal--compact .reconciliation-completion-summary-card span {
    font-size: .68rem;
    line-height: 1.22;
}

.reconciliation-completion-modal--compact .reconciliation-completion-summary-card strong {
    font-size: 1rem;
    line-height: 1.25;
}

.reconciliation-completion-modal--compact .reconciliation-completion-summary-card small {
    font-size: .74rem;
    line-height: 1.32;
}

.reconciliation-completion-modal--compact .reconciliation-completion-section,
.reconciliation-completion-modal--compact .reconciliation-completion-progress {
    padding: .72rem;
    border-radius: 8px;
}

.reconciliation-completion-modal--compact .reconciliation-completion-section-heading {
    margin-bottom: .55rem;
}

.reconciliation-completion-modal--compact .reconciliation-completion-section-heading h2 {
    margin-bottom: .16rem;
    font-size: 1.12rem;
    line-height: 1.25;
}

.reconciliation-completion-modal--compact .reconciliation-completion-section-heading p {
    margin-bottom: 0;
    font-size: .8rem;
    line-height: 1.35;
}

.reconciliation-completion-modal--compact .reconciliation-impact-section + .reconciliation-impact-section {
    margin-top: .7rem;
}

.reconciliation-completion-modal--compact .reconciliation-impact-section h3 {
    margin-bottom: .42rem;
    font-size: .85rem;
}

.reconciliation-completion-modal--compact .reconciliation-impact-grid,
.reconciliation-completion-modal--compact .group-reconciliation-completion-progress-cards,
.reconciliation-completion-modal--compact .site-reconciliation-completion-progress-cards {
    gap: .55rem;
}

.reconciliation-completion-modal--compact .reconciliation-impact-card {
    gap: .55rem;
    padding: .62rem .7rem;
    border-radius: 7px;
}

.reconciliation-completion-modal--compact .reconciliation-impact-card__head {
    gap: .5rem;
}

.reconciliation-completion-modal--compact .reconciliation-impact-card__head strong {
    font-size: .88rem;
    line-height: 1.25;
}

.reconciliation-completion-modal--compact .reconciliation-impact-card__head > span:not(.group-reconciliation-completion-status):not(.site-reconciliation-completion-status) {
    padding: .18rem .42rem;
    font-size: .66rem;
}

.reconciliation-completion-modal--compact .reconciliation-impact-card__amount {
    font-size: 1.12rem;
}

.reconciliation-completion-modal--compact .reconciliation-impact-card__metrics {
    gap: .34rem;
}

.reconciliation-completion-modal--compact .reconciliation-impact-card__metrics > div {
    gap: .5rem;
    padding: .36rem .45rem;
    border-radius: 6px;
}

.reconciliation-completion-modal--compact .reconciliation-impact-card__metrics span {
    font-size: .68rem;
}

.reconciliation-completion-modal--compact .reconciliation-impact-card__metrics strong {
    font-size: .74rem;
}

.reconciliation-completion-modal--compact .reconciliation-completion-progress-head {
    gap: .7rem;
    margin-bottom: .5rem;
}

.reconciliation-completion-modal--compact .reconciliation-completion-progress-head strong {
    font-size: .9rem;
}

.reconciliation-completion-modal--compact .reconciliation-completion-progress-head span {
    font-size: .8rem;
}

.reconciliation-completion-modal--compact .reconciliation-completion-progress-head > span {
    font-size: 1rem;
}

.reconciliation-completion-modal--compact .reconciliation-completion-progress-track {
    height: 7px;
}

.reconciliation-completion-modal--compact .reconciliation-completion-empty {
    gap: .55rem;
    padding: .62rem .72rem;
    border-radius: 7px;
}

.reconciliation-completion-modal--compact .reconciliation-completion-empty strong {
    font-size: .86rem;
}

.reconciliation-completion-modal--compact .reconciliation-completion-empty span {
    font-size: .78rem;
    line-height: 1.35;
}

@media (max-width: 767.98px) {
    .reconciliation-completion-modal--compact .reconciliation-completion-header,
    .reconciliation-completion-modal--compact .reconciliation-completion-actions,
    .reconciliation-completion-modal--compact .reconciliation-completion-progress-head {
        align-items: stretch;
    }

    .reconciliation-completion-modal--compact .reconciliation-completion-actions {
        width: 100%;
        margin-left: 0;
    }

    .reconciliation-completion-modal--compact .reconciliation-completion-summary,
    .reconciliation-completion-modal--compact .reconciliation-impact-grid {
        grid-template-columns: 1fr;
    }
}

.withdraw-receipt-upload {
    display: grid;
    gap: .58rem;
    padding: .78rem;
    border: 1px solid rgba(38, 86, 217, .2);
    border-radius: 8px;
    background: rgba(38, 86, 217, .045);
}

.withdraw-receipt-upload--swal {
    margin-top: .82rem;
    text-align: left;
}

.withdraw-receipt-upload__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .75rem;
}

.withdraw-receipt-upload__head label {
    display: block;
    margin-bottom: .16rem;
    color: var(--cp-text);
    font-weight: 700;
}

.withdraw-receipt-upload__head label.is-required::after,
.withdraw-receipt-upload__head label.required::after {
    content: " *";
    color: #dc3545;
}

.withdraw-receipt-upload__head small {
    display: block;
    color: var(--cp-muted);
    line-height: 1.35;
}

.withdraw-receipt-upload__head > i {
    display: inline-grid;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 8px;
    color: #0f766e;
    background: rgba(19, 163, 139, .13);
}

.withdraw-receipt-upload__status {
    min-height: 20px;
    color: var(--cp-muted);
    font-size: .82rem;
    line-height: 1.35;
}

.withdraw-receipt-upload__summary {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: .36rem .52rem;
    border: 1px solid rgba(19, 163, 139, .22);
    border-radius: 7px;
    color: #0f766e;
    background: rgba(19, 163, 139, .1);
    font-size: .82rem;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.withdraw-receipt-upload.is-uploading {
    border-color: rgba(38, 86, 217, .38);
    background: rgba(38, 86, 217, .075);
}

.withdraw-receipt-upload.is-uploading .withdraw-receipt-upload__status {
    color: var(--cp-primary-dark);
}

.withdraw-receipt-upload.is-success {
    border-color: rgba(19, 163, 139, .38);
    background: rgba(19, 163, 139, .08);
}

.withdraw-receipt-upload.is-success .withdraw-receipt-upload__status {
    color: #0f766e;
    font-weight: 700;
}

.withdraw-receipt-upload.is-error {
    border-color: rgba(220, 53, 69, .4);
    background: rgba(220, 53, 69, .07);
}

.withdraw-receipt-upload.is-error .withdraw-receipt-upload__status {
    color: #b42318;
    font-weight: 700;
}

.admin-withdraw-receipt-action {
    color: #0f766e;
    border-color: rgba(15, 118, 110, .38);
    background: rgba(15, 118, 110, .08);
}

.admin-withdraw-receipt-action:hover,
.admin-withdraw-receipt-action:focus {
    color: #ffffff;
    border-color: #0f766e;
    background: #0f766e;
}

.admin-withdraw-review-badge {
    align-self: center;
    min-height: 28px;
}

table.datatable td:first-child .admin-withdraw-review-action,
.admin-data-table td:first-child .admin-withdraw-review-action {
    min-width: max-content;
}

table.datatable td:first-child .admin-withdraw-review-action::before,
.admin-data-table td:first-child .admin-withdraw-review-action::before {
    content: none;
}

.withdraw-receipt-preview-shell {
    min-height: 100vh;
    padding: 1rem;
    color: var(--cp-text);
    background: var(--cp-body);
}

.withdraw-receipt-preview-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .85rem;
    padding-bottom: .8rem;
    border-bottom: 1px solid var(--cp-border);
}

.withdraw-receipt-preview-header h1 {
    margin: 0 0 .25rem;
    font-size: 1.22rem;
    line-height: 1.25;
}

.withdraw-receipt-preview-header p {
    max-width: 680px;
    margin: 0;
    color: var(--cp-muted);
    line-height: 1.42;
}

.withdraw-receipt-preview-meta {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-bottom: .85rem;
}

.withdraw-receipt-preview-meta span {
    display: inline-flex;
    gap: .28rem;
    max-width: 100%;
    padding: .34rem .52rem;
    border: 1px solid var(--cp-border);
    border-radius: 7px;
    background: var(--cp-surface);
    color: var(--cp-text);
    font-size: .82rem;
    overflow-wrap: anywhere;
}

.withdraw-receipt-preview-frame {
    min-height: 72vh;
    border: 1px solid var(--cp-border);
    border-radius: 8px;
    background: var(--cp-surface);
    overflow: hidden;
}

.withdraw-receipt-preview-frame iframe,
.withdraw-receipt-preview-frame img {
    display: block;
    width: 100%;
    min-height: 72vh;
    border: 0;
}

.withdraw-receipt-preview-frame img {
    height: auto;
    object-fit: contain;
    padding: .75rem;
}

[data-theme="dark"] .withdraw-receipt-upload {
    border-color: rgba(110, 168, 255, .25);
    background: rgba(110, 168, 255, .08);
}

[data-theme="dark"] .withdraw-receipt-upload__head > i {
    color: #41d6bd;
    background: rgba(65, 214, 189, .14);
}

[data-theme="dark"] .withdraw-receipt-upload__summary {
    color: #88ead8;
    border-color: rgba(65, 214, 189, .28);
    background: rgba(65, 214, 189, .12);
}

[data-theme="dark"] .withdraw-receipt-upload.is-uploading .withdraw-receipt-upload__status {
    color: #a9caff;
}

[data-theme="dark"] .withdraw-receipt-upload.is-success .withdraw-receipt-upload__status {
    color: #88ead8;
}

[data-theme="dark"] .withdraw-receipt-upload.is-error .withdraw-receipt-upload__status {
    color: #ffb4bd;
}

[data-theme="dark"] .admin-withdraw-receipt-action {
    color: #88ead8;
    border-color: rgba(65, 214, 189, .32);
    background: rgba(65, 214, 189, .12);
}

[data-theme="dark"] .admin-withdraw-receipt-action:hover,
[data-theme="dark"] .admin-withdraw-receipt-action:focus {
    color: #07131f;
    border-color: #88ead8;
    background: #88ead8;
}

@media (max-width: 767.98px) {
    .withdraw-receipt-preview-shell {
        padding: .75rem;
    }

    .withdraw-receipt-preview-header {
        align-items: stretch;
        flex-direction: column;
    }

    .withdraw-receipt-preview-header .btn {
        justify-content: center;
        width: 100%;
    }

    .withdraw-receipt-preview-frame,
    .withdraw-receipt-preview-frame iframe,
    .withdraw-receipt-preview-frame img {
        min-height: 64vh;
    }
}

.admin-row-state-split > td:first-child {
    box-shadow: inset 4px 0 0 #b47416;
}

.admin-row-state-split-attention > td:first-child {
    box-shadow: inset 4px 0 0 #dc3545;
}

[data-theme="dark"] .admin-row-state-split > td:first-child {
    box-shadow: inset 4px 0 0 #f9d98a;
}

[data-theme="dark"] .admin-row-state-split-attention > td:first-child {
    box-shadow: inset 4px 0 0 #fecdd3;
}

.admin-withdraw-split-status,
.admin-withdraw-split-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    min-width: 86px;
    white-space: nowrap;
}

.admin-withdraw-split-status {
    margin-right: .15rem;
}

.admin-withdraw-split-status span,
.admin-withdraw-split-action span {
    white-space: nowrap;
}

.withdraw-split-part-badge {
    min-width: 30px;
    margin-left: .1rem;
}

.withdraw-split-shell {
    min-height: 100%;
    padding: 1rem;
    color: var(--cp-text);
    border: 1px solid var(--cp-border);
    border-radius: .85rem;
    background: var(--cp-surface);
}

body.is-fancybox-content:has(.withdraw-split-shell),
html:has(body.is-fancybox-content .withdraw-split-shell),
.is-fancybox-content:has(.withdraw-split-shell) .c-wrapper,
.is-fancybox-content:has(.withdraw-split-shell) .c-body,
.is-fancybox-content:has(.withdraw-split-shell) .c-main {
    background: var(--cp-surface) !important;
}

.withdraw-split-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    padding-bottom: .85rem;
    border-bottom: 1px solid color-mix(in srgb, var(--cp-border) 76%, transparent);
}

.withdraw-split-title {
    margin: 0;
    color: var(--cp-text);
    font-size: 1.1rem;
    font-weight: 700;
}

.withdraw-split-shell .text-muted {
    color: var(--cp-muted) !important;
}

.withdraw-split-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: .75rem;
    margin-bottom: 1rem;
}

.withdraw-split-summary-item {
    border: 1px solid var(--cp-border, #dee2e6);
    border-radius: 6px;
    padding: .65rem .75rem;
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-body) 8%);
}

.withdraw-split-summary-item span {
    display: block;
    color: var(--cp-muted, #6c757d);
    font-size: .78rem;
}

.withdraw-split-summary-item strong {
    display: block;
    margin-top: .15rem;
    font-size: .95rem;
}

.withdraw-split-parts {
    display: grid;
    gap: .65rem;
}

.withdraw-split-part-row {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) 160px 40px;
    gap: .5rem;
    align-items: end;
    padding: .65rem;
    border: 1px solid color-mix(in srgb, var(--cp-border) 82%, transparent);
    border-radius: 6px;
    background: color-mix(in srgb, var(--cp-surface) 96%, var(--cp-body) 4%);
}

.withdraw-split-shell [hidden] {
    display: none !important;
}

.withdraw-split-part-row--provider {
    grid-template-columns: minmax(160px, 1fr) minmax(115px, 150px) minmax(190px, 1fr) 40px;
}

.withdraw-split-part-row .form-text {
    line-height: 1.35;
}

.withdraw-split-part-row label {
    color: var(--cp-text);
    font-size: .82rem;
    font-weight: 600;
}

.withdraw-split-shell .form-control,
.withdraw-split-shell .select2-container--default .select2-selection--single {
    color: var(--cp-text);
    border-color: var(--cp-border);
    background: var(--cp-surface);
}

.withdraw-split-shell .select2-container--default .select2-selection--single {
    min-height: 38px;
}

.withdraw-split-shell .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--cp-text);
    line-height: 36px;
}

.withdraw-split-shell .select2-container--default .select2-selection--single .select2-selection__arrow {
    min-height: 36px;
}

.withdraw-split-total-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-top: 1rem;
    padding: .75rem;
    color: var(--cp-text);
    border: 1px solid color-mix(in srgb, var(--cp-primary) 32%, var(--cp-border));
    border-radius: 6px;
    background: color-mix(in srgb, var(--cp-surface) 92%, var(--cp-primary) 8%);
}

.withdraw-split-total-bar.is-balanced {
    border-color: color-mix(in srgb, #16804e 36%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 90%, #16804e 10%);
}

.withdraw-split-total-bar.is-over {
    border-color: color-mix(in srgb, #be3741 38%, var(--cp-border));
    background: color-mix(in srgb, var(--cp-surface) 90%, #be3741 10%);
}

.withdraw-split-status-table {
    margin-bottom: 0;
    color: var(--cp-text);
    border-color: color-mix(in srgb, var(--cp-border) 80%, transparent);
}

.withdraw-split-status-table thead th {
    color: color-mix(in srgb, var(--cp-text) 92%, var(--cp-muted) 8%);
    border-color: color-mix(in srgb, var(--cp-border) 80%, transparent);
    background: color-mix(in srgb, var(--cp-surface) 88%, var(--cp-primary) 12%);
    font-size: .78rem;
    font-weight: 700;
}

.withdraw-split-status-table tbody td {
    color: var(--cp-text);
    border-color: color-mix(in srgb, var(--cp-border) 70%, transparent);
    background: color-mix(in srgb, var(--cp-surface) 98%, var(--cp-body) 2%);
}

.withdraw-split-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .5rem;
    margin-top: 1rem;
}

@media (max-width: 767.98px) {
    .withdraw-split-header,
    .withdraw-split-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .withdraw-split-summary {
        grid-template-columns: 1fr;
    }

    .withdraw-split-part-row {
        grid-template-columns: 1fr;
    }

    .withdraw-split-part-row--provider {
        grid-template-columns: 1fr;
    }
}

/* Optional site/group identity: a stable neutral badge on every status row. */
.admin-entity-color--blue { --entity-ink: #1d4ed8; --entity-tint: #dbeafe; --entity-dark-ink: #a8cfff; --entity-dark-tint: #213d63; }
.admin-entity-color--indigo { --entity-ink: #4338ca; --entity-tint: #e0e7ff; --entity-dark-ink: #b8c2ff; --entity-dark-tint: #333967; }
.admin-entity-color--violet { --entity-ink: #6d28d9; --entity-tint: #ede9fe; --entity-dark-ink: #d1b6ff; --entity-dark-tint: #433265; }
.admin-entity-color--purple { --entity-ink: #86198f; --entity-tint: #fae8ff; --entity-dark-ink: #f0b5f6; --entity-dark-tint: #542b59; }
.admin-entity-color--teal { --entity-ink: #0f766e; --entity-tint: #ccfbf1; --entity-dark-ink: #91eadd; --entity-dark-tint: #164c48; }
.admin-entity-color--cyan { --entity-ink: #0e7490; --entity-tint: #cffafe; --entity-dark-ink: #92e6f5; --entity-dark-tint: #164657; }
.admin-entity-color--rose { --entity-ink: #9d174d; --entity-tint: #fce7f3; --entity-dark-ink: #f6b5d0; --entity-dark-tint: #572c43; }
.admin-entity-color--slate { --entity-ink: #475569; --entity-tint: #e2e8f0; --entity-dark-ink: #d3deec; --entity-dark-tint: #3b4a60; }
.admin-entity-color--navy { --entity-ink: #1e3a5f; --entity-tint: #dce6f2; --entity-dark-ink: #a4bddf; --entity-dark-tint: #24374e; }
.admin-entity-color--sky { --entity-ink: #0369a1; --entity-tint: #e0f2fe; --entity-dark-ink: #9adfff; --entity-dark-tint: #174866; }
.admin-entity-color--emerald { --entity-ink: #047857; --entity-tint: #d1fae5; --entity-dark-ink: #9ce6c4; --entity-dark-tint: #1d4c3e; }
.admin-entity-color--lime { --entity-ink: #4d7c0f; --entity-tint: #ecfccb; --entity-dark-ink: #cae988; --entity-dark-tint: #354e24; }
.admin-entity-color--amber { --entity-ink: #a16207; --entity-tint: #fef3c7; --entity-dark-ink: #f6d77a; --entity-dark-tint: #574421; }
.admin-entity-color--orange { --entity-ink: #c2410c; --entity-tint: #ffedd5; --entity-dark-ink: #fdc38d; --entity-dark-tint: #663b1d; }
.admin-entity-color--coral { --entity-ink: #b93838; --entity-tint: #ffe8df; --entity-dark-ink: #ffb5a0; --entity-dark-tint: #632f2d; }
.admin-entity-color--burgundy { --entity-ink: #881337; --entity-tint: #ffe4e6; --entity-dark-ink: #fda4af; --entity-dark-tint: #5b2239; }
.admin-entity-color--pink { --entity-ink: #b4238a; --entity-tint: #fde6f4; --entity-dark-ink: #f5b4e0; --entity-dark-tint: #5b2c50; }
.admin-entity-color--fuchsia { --entity-ink: #a21caf; --entity-tint: #fae8ff; --entity-dark-ink: #f5adf4; --entity-dark-tint: #602d64; }
.admin-entity-color--lavender { --entity-ink: #7557a8; --entity-tint: #f2eafa; --entity-dark-ink: #dac5fb; --entity-dark-tint: #49375c; }
.admin-entity-color--brown { --entity-ink: #854d0e; --entity-tint: #f5e7d6; --entity-dark-ink: #e8c298; --entity-dark-tint: #513c29; }

.admin-entity-badge.admin-entity-badge--custom {
    color: #243247;
    background: #f8fafc;
    border-color: #bac7d8;
    padding: .13rem .5rem .13rem .18rem;
    gap: .3rem;
}
.admin-entity-badge--custom > .admin-entity-badge__icon {
    display: inline-flex;
    flex: 0 0 1.25rem;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 50%;
    color: var(--entity-ink);
    background: var(--entity-tint);
}
.admin-entity-badge--custom .admin-entity-badge__label { min-width: 0; }
[data-theme="dark"] .admin-entity-badge.admin-entity-badge--custom { color: #edf4ff; background: #1c293d; border-color: #4b607c; }
[data-theme="dark"] .admin-entity-badge--custom > .admin-entity-badge__icon { color: var(--entity-dark-ink); background: var(--entity-dark-tint); }
.select2-results__option .admin-entity-badge,
.select2-selection__rendered .admin-entity-badge { max-width: min(100%, 260px); margin: 0; vertical-align: middle; }
.select2-selection__choice .admin-entity-badge { max-width: 180px; }
.select2-results__option .admin-entity-badge { font-size: .78rem; }
.select2-container--default .select2-results__option[aria-selected="true"] .admin-entity-badge::after { content: "✓"; margin-left: .2rem; }

.admin-identity-editor__heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.admin-identity-editor > summary { list-style: none; cursor: pointer; }
.admin-identity-editor > summary::-webkit-details-marker { display: none; }
.admin-identity-editor > summary:focus-visible { outline: 2px solid var(--cp-primary); outline-offset: 5px; border-radius: 4px; }
.admin-identity-editor:not([open]) > summary { border-bottom: 0; padding-bottom: 0; margin-bottom: 0; }
.admin-identity-editor__chevron { flex: 0 0 auto; color: var(--cp-muted); font-size: .8rem; }
.admin-identity-editor[open] > summary .admin-identity-editor__chevron { transform: rotate(180deg); }
.admin-identity-editor__heading > div { min-width: 0; }
.admin-identity-editor__heading > button { flex: 0 0 auto; white-space: nowrap; }
.admin-identity-editor__optional { display: inline-block; margin-left: .5rem; color: var(--cp-muted); font-size: .72rem; font-weight: 400; }
.admin-identity-editor__grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr); gap: 1.5rem; align-items: start; }
.admin-identity-editor__controls { min-width: 0; }
.admin-identity-editor__fieldset { min-width: 0; padding: 0; margin: 0 0 1.15rem; border: 0; }
.admin-identity-editor__fieldset:last-child { margin-bottom: 0; }
.admin-identity-editor__fieldset > legend { float: none; width: auto; padding: 0; margin: 0 0 .6rem; font-size: .83rem; font-weight: 600; color: var(--cp-text); }
.admin-identity-colors { display: grid; grid-template-columns: repeat(auto-fill, minmax(66px, 1fr)); gap: .3rem; max-height: 146px; overflow-y: auto; padding: .15rem .2rem .3rem; scrollbar-width: thin; scrollbar-color: var(--cp-border) transparent; scrollbar-gutter: stable; overscroll-behavior: contain; }
.admin-identity-color-choice,
.admin-identity-icon-choice { position: relative; margin: 0; cursor: pointer; font-weight: 400; }
.admin-identity-color-choice > input,
.admin-identity-icon-choice > input { position: absolute; width: 1px; height: 1px; margin: 0; opacity: 0; }
.admin-identity-color-choice__content { display: flex; flex-direction: column; align-items: center; gap: .35rem; min-width: 0; padding: .35rem .15rem; border: 1px solid transparent; border-radius: 7px; color: var(--cp-text); font-size: .65rem; }
.admin-identity-color-choice__content > span:last-child { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-identity-color-choice__dot { display: inline-flex; align-items: center; justify-content: center; width: 1.55rem; height: 1.55rem; border: 1px solid var(--entity-ink, #64748b); border-radius: 50%; background: var(--entity-ink, #64748b); color: #fff; }
.admin-identity-color-choice__dot > i { opacity: 0; font-size: .64rem; }
.admin-identity-color-choice__dot--default { border-color: var(--cp-border); background: var(--cp-surface); color: var(--cp-muted); }
.admin-identity-color-choice__dot--default > i,
.admin-identity-color-choice > input:checked + span .admin-identity-color-choice__dot > i { opacity: 1; }
.admin-identity-color-choice > input:checked + span,
.admin-identity-icon-choice > input:checked + span { border-color: var(--cp-primary); background: var(--cp-body); box-shadow: inset 0 0 0 1px var(--cp-primary); }
.admin-identity-color-choice > input:focus-visible + span,
.admin-identity-icon-choice > input:focus-visible + span { outline: 2px solid var(--cp-primary); outline-offset: 2px; }
.admin-identity-icon-search { margin-bottom: .55rem; }
.admin-identity-icons { display: grid; grid-template-columns: repeat(auto-fill, minmax(65px, 1fr)); gap: .35rem; max-height: 236px; overflow-y: auto; padding: .15rem .2rem .25rem; scrollbar-width: thin; scrollbar-color: var(--cp-border) transparent; scrollbar-gutter: stable; overscroll-behavior: contain; }
.admin-identity-icons::-webkit-scrollbar,
.admin-identity-colors::-webkit-scrollbar { width: 7px; }
.admin-identity-icons::-webkit-scrollbar-thumb,
.admin-identity-colors::-webkit-scrollbar-thumb { border: 1px solid var(--cp-surface); border-radius: 6px; background: var(--cp-border); }
.admin-identity-icon-choice[hidden] { display: none; }
.admin-identity-icon-choice__content { display: flex; height: 61px; padding: .5rem .15rem .35rem; flex-direction: column; align-items: center; justify-content: center; gap: .35rem; border: 1px solid var(--cp-border); border-radius: 7px; color: var(--cp-text); background: var(--cp-surface); }
.admin-identity-icon-choice__content > i { font-size: 1rem; }
.admin-identity-icon-choice__content > span { width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: center; font-size: .61rem; }
.admin-identity-color-choice:hover > span,
.admin-identity-icon-choice:hover > span { border-color: var(--cp-primary); }
.admin-identity-icons__empty { margin: .75rem 0; font-size: .8rem; }
.admin-identity-preview-wrap { min-width: 0; }
.admin-identity-preview__heading { display: flex; align-items: center; justify-content: space-between; gap: .5rem; margin-bottom: .65rem; font-size: .8rem; }
.admin-identity-preview__themes { display: inline-flex; padding: .15rem; border: 1px solid var(--cp-border); border-radius: 7px; }
.admin-identity-preview__themes > button { padding: .28rem .45rem; border: 0; border-radius: 4px; background: transparent; color: var(--cp-muted); font-size: .68rem; white-space: nowrap; }
.admin-identity-preview__themes > button[aria-pressed="true"] { background: var(--cp-body); color: var(--cp-text); box-shadow: 0 0 0 1px var(--cp-border); }
.admin-identity-preview__themes > button:focus-visible { outline: 2px solid var(--cp-primary); outline-offset: 2px; }
.admin-identity-preview { padding: .8rem; border: 1px solid #d4deea; border-radius: 9px; background: #f6f8fc; color: #243247; }
.admin-identity-preview__label { margin-bottom: .45rem; font-size: .69rem; font-weight: 600; }
.admin-identity-preview__table { margin-bottom: 1rem; border: 1px solid #d4deea; border-radius: 6px; overflow: hidden; }
.admin-identity-preview__row { display: flex; align-items: center; justify-content: space-between; gap: .65rem; min-height: 42px; padding: .35rem .5rem; font-size: .72rem; }
.admin-identity-preview__row > span:first-child { flex: 0 0 auto; }
.admin-identity-preview__row > span:last-child { min-width: 0; text-align: right; }
.admin-identity-preview__row--approved { background: #dff7ea; color: #075233; }
.admin-identity-preview__row--rejected { background: #fde2e2; color: #842029; border-top: 1px solid #d4deea; }
.admin-identity-preview__selection,
.admin-identity-preview__option { display: flex; align-items: center; justify-content: space-between; gap: .5rem; min-height: 39px; padding: .35rem .55rem; border: 1px solid #b8c5d6; background: #fff; font-size: .76rem; }
.admin-identity-preview__selection { border-radius: 6px; }
.admin-identity-preview__option { border-radius: 0 0 6px 6px; background: #e8f0ff; margin: 3px 0 0; }
.admin-identity-preview__selection > span,
.admin-identity-preview__option > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-identity-preview__selection > i,
.admin-identity-preview__option > i { flex: 0 0 auto; font-size: .65rem; }
.admin-identity-preview .admin-entity-badge { max-width: 100%; margin: 0; }
.admin-identity-preview[data-preview-theme="dark"] { border-color: #34445f; background: #111c2e; color: #edf4ff; }
.admin-identity-preview[data-preview-theme="dark"] .admin-identity-preview__table { border-color: #34445f; }
.admin-identity-preview[data-preview-theme="dark"] .admin-identity-preview__row--approved { background: #103f31; color: #e1fff0; }
.admin-identity-preview[data-preview-theme="dark"] .admin-identity-preview__row--rejected { background: #4d1d2b; color: #ffe6ec; border-color: #34445f; }
.admin-identity-preview[data-preview-theme="dark"] .admin-identity-preview__selection { border-color: #4b607c; background: #1c293d; }
.admin-identity-preview[data-preview-theme="dark"] .admin-identity-preview__option { border-color: #4b607c; background: #263e64; }
.admin-identity-preview[data-preview-theme="light"] .admin-entity-badge--site { color: #1d4ed8; background: #dbeafe; border-color: #accbfa; }
.admin-identity-preview[data-preview-theme="light"] .admin-entity-badge--group { color: #0f766e; background: #ccfbf1; border-color: #83d5c9; }
.admin-identity-preview[data-preview-theme="dark"] .admin-entity-badge--site { color: #a8d0ff; background: rgba(37, 99, 235, .18); border-color: rgba(96, 165, 250, .28); }
.admin-identity-preview[data-preview-theme="dark"] .admin-entity-badge--group { color: #8df4dd; background: rgba(20, 184, 166, .16); border-color: rgba(45, 212, 191, .28); }
.admin-identity-preview[data-preview-theme="light"] .admin-entity-badge.admin-entity-badge--custom { color: #243247; background: #f8fafc; border-color: #bac7d8; }
.admin-identity-preview[data-preview-theme="light"] .admin-entity-badge--custom > .admin-entity-badge__icon { color: var(--entity-ink); background: var(--entity-tint); }
.admin-identity-preview[data-preview-theme="dark"] .admin-entity-badge.admin-entity-badge--custom { color: #edf4ff; background: #1c293d; border-color: #4b607c; }
.admin-identity-preview[data-preview-theme="dark"] .admin-entity-badge--custom > .admin-entity-badge__icon { color: var(--entity-dark-ink); background: var(--entity-dark-tint); }

@media (max-width: 900px) {
    .admin-identity-editor__grid { grid-template-columns: minmax(0, 1fr); gap: 1.1rem; }
    .admin-identity-preview-wrap { max-width: 470px; width: 100%; }
}
@media (max-width: 480px) {
    .admin-identity-editor__heading { flex-wrap: wrap; gap: .3rem; margin-bottom: 1rem; }
    .admin-identity-editor > summary.admin-identity-editor__heading { flex-wrap: nowrap; gap: .65rem; }
    .admin-identity-editor__heading p { margin-bottom: .2rem; }
    .admin-identity-preview__heading { flex-wrap: wrap; }
    .admin-identity-colors { gap: .2rem; }
    .admin-identity-color-choice__content { min-width: 45px; padding: .3rem .2rem; }
    .admin-identity-preview { padding: .6rem; }
    .admin-identity-preview__row { gap: .35rem; padding: .35rem; }
}
