.dhx_grid-cell__content .mdi {
    color: var(--re-primary) !important;
    font-size: 20px;
}

.dhx_checkbox__input:checked + .dhx_checkbox__visual-input,
.dhx_checkbox__input[data-dhx-checked="true"] + .dhx_checkbox__visual-input {
    background-color: var(--re-primary) !important;
    border-color: var(--re-primary) !important;
}

/* ===== MenuConfig tree grid ===== */
.menuConfig-tree .dhx_grid-cell{
    border: none !important;
}
.menuConfig-tree .dhx_data-wrap {
    border-bottom: 1px solid var(--re-surface) !important;
}
/* ================================ */

/* User group ACL tree — sticky Menu column + menu folder row contrast */
.userGrMn-acl-tree .dhx_grid-row.re-user-grmn-row--menu .dhx_grid-cell {
    background: color-mix(in srgb, var(--re-primary) 6%, var(--re-surface-soft)) !important;
    font-weight: 600;
}

/* ACL tree: no row hover or selection — permission checkboxes are the interactive focus */
.userGrMn-acl-tree .dhx_grid-row:hover .dhx_grid-cell {
    background: var(--re-surface) !important;
}

.userGrMn-acl-tree .dhx_grid-row.re-user-grmn-row--menu:hover .dhx_grid-cell {
    background: color-mix(in srgb, var(--re-primary) 6%, var(--re-surface-soft)) !important;
}

.userGrMn-acl-tree .dhx_grid-row--selected .dhx_grid-cell,
.userGrMn-acl-tree .dhx_grid-row.dhx_grid-row--selected .dhx_grid-cell,
.userGrMn-acl-tree .dhx_grid-row.re-grid-row--selected .dhx_grid-cell {
    background: var(--re-surface) !important;
    color: var(--re-ink) !important;
}

.userGrMn-acl-tree .dhx_grid-row.re-user-grmn-row--menu.dhx_grid-row--selected .dhx_grid-cell,
.userGrMn-acl-tree .dhx_grid-row.re-user-grmn-row--menu.re-grid-row--selected .dhx_grid-cell {
    background: color-mix(in srgb, var(--re-primary) 6%, var(--re-surface-soft)) !important;
}

/* ACL checkboxes: not-allowed until Alterar is on; pointer when editable */
.userGrMn-acl-tree .dhx_grid-cell:has(.dhx_checkbox),
.userGrMn-acl-tree .dhx_checkbox,
.userGrMn-acl-tree .dhx_checkbox__visual-input,
.userGrMn-acl-tree .dhx_checkbox__input {
    cursor: not-allowed !important;
}

.userGrMn-acl-tree.userGrMn-acl-tree--editable .dhx_grid-cell:has(.dhx_checkbox),
.userGrMn-acl-tree.userGrMn-acl-tree--editable .dhx_checkbox,
.userGrMn-acl-tree.userGrMn-acl-tree--editable .dhx_checkbox__visual-input,
.userGrMn-acl-tree.userGrMn-acl-tree--editable .dhx_checkbox__input {
    cursor: pointer !important;
}

.dhx_grid-content {
    background: none !important;
}

.dhx_checkbox { /* override the display: inline-block; by vault.scss which misaligned grid checkboxes*/
    display: flex;
}
.dhx_checkbox__visual-input {
    border-radius: 6px !important;
    border: 1px solid var(--re-border-strong) !important;
}

/* Round every grid/form/toolbar inside any space layout, no matter how deep */
.dhx_layout-space.dhx_layout-columns>.dhx_layout-cell,
.re-accounting-page.dhx_layout-space.dhx_layout-rows>.dhx_layout-cell,
.re-property-mnt-page.dhx_layout-space.dhx_layout-rows>.dhx_layout-cell,
.re-tenant-rent-layout.dhx_layout-space.dhx_layout-rows>.dhx_layout-cell,
.re-user-grmn-side.dhx_layout-space.dhx_layout-rows>.dhx_layout-cell {
  border: 1px solid var(--re-border) !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}

/* Property picker pagination pane — do not clip the DHTMLX Pagination widget. */
.re-accounting-page.dhx_layout-space.dhx_layout-rows > .dhx_layout-cell[data-cell-id="pickPagerPane"],
.re-property-mnt-page.dhx_layout-space.dhx_layout-rows > .dhx_layout-cell[data-cell-id="pickPagerPane"] {
  overflow: visible !important;
  min-height: 52px !important;
  flex-shrink: 0 !important;
}

/* userGrMn: left column is a gutter stack — panels inside are the bordered cards */
.dhx_layout-space.dhx_layout-columns > .dhx_layout-cell.re-user-grmn-side {
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}

/* Nested space rows: outer col already has 12px inset — do not double margins on inner panels */
.re-user-grmn-side.dhx_layout-space.dhx_layout-rows > .dhx_layout-cell {
  margin: 0 !important;
}

.re-user-grmn-side.dhx_layout-space.dhx_layout-rows > .dhx_layout-cell:not(:last-of-type) {
  margin-bottom: 12px !important;
}

.re-user-grmn-side > .dhx_layout-cell-content {
  width: 100%;
  min-width: 0;
  min-height: 0;
  height: 100%;
}

.dhx_layout-space {
    background: var(--re-bg);
}

/* ---------- Grid surfaces & selection ----------------------------------- */
.dhx_grid {
    background: var(--re-surface) !important;
}

.dhx_grid-header,
.dhx_grid-header-cell {
    background: var(--re-surface-soft) !important;
    color: var(--re-ink-muted) !important;
    font-weight: 500 !important;
}

.dhx_grid-cell {
    border-bottom: 1px solid var(--re-border) !important;
    color: var(--re-ink) !important;
    background: var(--re-surface) !important;
}

.dhx_grid-cell a,
.dhx_grid-cell__content {
    color: var(--re-ink) !important;
}

.dhx_grid-row:hover .dhx_grid-cell {
    background: var(--re-primary-softer) !important;
}

.dhx_grid-row--selected .dhx_grid-cell,
.dhx_grid-row.dhx_grid-row--selected .dhx_grid-cell {
    background-color: var(--re-primary-soft) !important;
}

/* Selection text sync: classes from js/grid-selection-primary-text.js */
.dhx_grid-row.re-grid-row--selected .dhx_grid-cell,
.dhx_grid-row.re-grid-row--selected .dhx_grid-cell__content {
    color: var(--re-primary) !important;
}

.dhx_grid-row.re-grid-row--selected .dhx_grid-cell a {
    color: var(--re-primary) !important;
}

.dhx_grid-row.re-grid-row--selected .dhx_grid-cell__content .mdi {
    color: var(--re-primary);
}

.dhx_grid-cell.re-grid-cell--selected,
.dhx_grid-cell.re-grid-cell--selected .dhx_grid-cell__content {
    color: var(--re-primary) !important;
}

.dhx_grid-cell.re-grid-cell--selected a {
    color: var(--re-primary) !important;
}

.dhx_grid-cell.re-grid-cell--selected .dhx_grid-cell__content .mdi {
    color: var(--re-primary) !important;
}

.dhx_grid-selected-row::after {
    background: var(--re-primary-soft) !important;
    opacity: 1 !important;
}

[data-theme="dark"] .dhx_grid-selected-row::after {
    background: var(--re-primary-soft) !important;
}

.dhx_grid-selected-cell {
    border-color: var(--re-primary) !important;
    background-color: var(--re-primary-soft) !important;
}

[data-theme="dark"] .dhx_grid-selected-cell {
    background-color: var(--re-primary-soft) !important;
}

.dhx_grid-body .dhx_grid-cell {
    border-right: 1px solid var(--re-border) !important;
}

.dhx_grid-body .dhx_grid-row > .dhx_grid-cell:last-child {
    border-right: none !important;
}

/* leftSplit/rightSplit: frozen body pane — sole cell is :last-child but still needs a right edge */
.dhx_grid-fixed-cols-wrap .dhx_grid-row > .dhx_grid-cell:last-child,
.dhx_grid__cols_left--fixed .dhx_grid-row > .dhx_grid-cell:last-child,
.dhx_grid__cols_right--fixed .dhx_grid-row > .dhx_grid-cell:last-child {
    border-right: 1px solid var(--re-border) !important;
}

.dhx_grid-header .dhx_grid-header-cell:last-child {
    border-right: none !important;
}

/* leftSplit/rightSplit: frozen header pane has one cell that is :last-child but still needs a right edge */
.dhx_header-fixed-cols .dhx_grid-header-cell:last-child {
    border-right: 1px solid var(--re-border) !important;
}

.dhx_grid-header .dhx_grid-header-cell {
    border-right: 1px solid var(--re-border) !important;
    border-bottom: 1px solid var(--re-border) !important;
}

.dhx_grid-header .dhx_grid-header-cell:not(:first-child) {
    border-left: none !important;
}

/* DHTMLX grid scroll areas — visible classic scrollbars (global * thumb is too faint). */
.dhx_widget.dhx_grid .dhx_grid-body {
    overflow: auto !important;
}

.dhx_widget.dhx_grid .dhx_grid-body::-webkit-scrollbar,
.dhx_widget.dhx_grid .dhx_grid-header::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

.dhx_widget.dhx_grid .dhx_grid-body::-webkit-scrollbar-track,
.dhx_widget.dhx_grid .dhx_grid-header::-webkit-scrollbar-track {
    background: var(--re-scrollbar-track);
}

.dhx_widget.dhx_grid .dhx_grid-body::-webkit-scrollbar-thumb,
.dhx_widget.dhx_grid .dhx_grid-header::-webkit-scrollbar-thumb {
    background: var(--re-scrollbar-thumb-solid);
    border-radius: 5px;
    border: 2px solid var(--re-scrollbar-track);
    background-clip: padding-box;
}

.dhx_widget.dhx_grid .dhx_grid-body::-webkit-scrollbar-thumb:hover,
.dhx_widget.dhx_grid .dhx_grid-header::-webkit-scrollbar-thumb:hover {
    background: var(--re-scrollbar-thumb-hover);
    background-clip: padding-box;
}

.dhx_widget.dhx_grid .dhx_grid-body::-webkit-scrollbar-corner {
    background: var(--re-scrollbar-corner);
}

@supports not selector(::-webkit-scrollbar) {
    .dhx_widget.dhx_grid .dhx_grid-body {
        scrollbar-width: auto;
        scrollbar-color: var(--re-scrollbar-thumb-moz) var(--re-scrollbar-track-moz);
    }
}

/* Column resize grip: 9px wide, right: -5px — last column extends past the grid edge. */
.dhx_grid-header-cell.dhx_last-column-cell .dhx_resizer_grip_wrap {
    display: none;
}

/* ---------- Layout borders & space gutters ------------------------------ */
.dhx_widget,
.dhx_widget--bordered,
.dhx_widget--border,
.dhx_widget--border_top,
.dhx_widget--border_right,
.dhx_widget--border_bottom,
.dhx_widget--border_left,
.dhx_layout-cell,
.dhx_layout-rows > .dhx_layout-cell,
.dhx_layout-cols > .dhx_layout-cell {
    border-color: var(--re-border) !important;
    --dhx-border: 1px solid transparent !important;
    --dhx-border-color: var(--re-border) !important;
}

.dhx_layout--type_space,
.dhx_layout-cols.dhx_layout--type_space,
.dhx_layout-rows.dhx_layout--type_space {
    background: var(--re-bg) !important;
}

/* Soft-deleted entity rows: muted red text + per-word strikethrough (.re-word-strike). */
.dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted .dhx_grid-cell__content,
.dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted .dhx_grid-cell a {
    color: #b71c1c !important;
    opacity: 0.72;
}

.dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted .dhx_grid-cell {
    color: #b71c1c !important;
}

.dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted .re-word-strike {
    text-decoration: line-through;
    text-decoration-color: #b71c1c;
    text-decoration-thickness: 1px;
    text-decoration-skip-ink: none;
}

.dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted .dhx_grid-cell__content .mdi {
    color: #b71c1c !important;
}

.dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted.re-grid-row--selected .dhx_grid-cell__content,
.dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted.dhx_grid-row--selected .dhx_grid-cell__content {
    color: #b71c1c !important;
    opacity: 0.78;
}

.dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted.re-grid-row--selected .dhx_grid-cell__content .mdi,
.dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted.dhx_grid-row--selected .dhx_grid-cell__content .mdi {
    color: #b71c1c !important;
}

[data-theme="dark"] .dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted .dhx_grid-cell__content,
[data-theme="dark"] .dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted .dhx_grid-cell a {
    color: #fecaca !important;
    opacity: 0.72;
}

[data-theme="dark"] .dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted .dhx_grid-cell {
    color: #fecaca !important;
}

[data-theme="dark"] .dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted .re-word-strike {
    text-decoration-color: #fecaca;
}

[data-theme="dark"] .dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted .dhx_grid-cell__content .mdi {
    color: #fecaca !important;
}

[data-theme="dark"] .dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted.re-grid-row--selected .dhx_grid-cell__content,
[data-theme="dark"] .dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted.dhx_grid-row--selected .dhx_grid-cell__content {
    color: #fecaca !important;
    opacity: 0.78;
}

[data-theme="dark"] .dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted.re-grid-row--selected .dhx_grid-cell__content .mdi,
[data-theme="dark"] .dhx_widget.dhx_grid .dhx_grid-row.re-grid-row-deleted.dhx_grid-row--selected .dhx_grid-cell__content .mdi {
    color: #fecaca !important;
}

/* ---------- Lookup tables (tablesMnt): color swatch + hex in grid ---------- */
.re-lkp-color-cell {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    max-width: 100%;
    vertical-align: middle;
}

.re-lkp-color-swatch {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    border-radius: 4px;
    border: 1px solid var(--re-border);
    box-sizing: border-box;
}

.re-lkp-color-swatch--empty {
    background: repeating-linear-gradient(
        45deg,
        var(--re-border),
        var(--re-border) 3px,
        var(--re-surface) 3px,
        var(--re-surface) 6px
    );
}

.re-lkp-color-hex {
    flex: 1 1 auto;
    min-width: 0;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Global grid loading overlay (js/dhxGridLoader.js; back-office only). */
.re-grid-loading {
    position: relative;
}

.re-grid-loader {
    display: none;
    position: absolute;
    inset: 0;
    z-index: 50;
    pointer-events: none;
}

.re-grid-loader.is-visible {
    display: block;
}

.re-grid-loader__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.78);
}

[data-theme="dark"] .re-grid-loader__backdrop {
    background: rgba(27, 30, 36, 0.78);
}

.re-grid-loader__spinner {
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 1;
    margin: -14px 0 0 -14px;
}