/* DxGrid con superficies claras, selección suave y acentos del tema. */
.dxbl-grid {
    --dxbl-grid-bg: #fff;
    --dxbl-grid-color: #203b37;
    --dxbl-grid-border-color: rgba(var(--primary-rgb), 0.22);
    --dxbl-grid-border-radius: 0.75rem;
    --dxbl-grid-header-bg: #f7fbfa;
    --dxbl-grid-header-color: #48615d;
    --dxbl-grid-selection-bg: rgba(var(--primary-rgb), 0.10);
    --dxbl-grid-selection-color: #183d38;
    --dxbl-grid-focus-bg: rgba(var(--primary-rgb), 0.10);
    --dxbl-grid-focus-color: #183d38;
    --dxbl-grid-selection-focus-bg: rgba(var(--primary-rgb), 0.10);
    --dxbl-grid-selection-focus-color: #183d38;
    --dxbl-grid-hover-bg: rgba(var(--primary-rgb), 0.045);
    --dxbl-grid-hover-color: #183d38;
    --dxbl-checkbox-check-element-checked-bg: var(--primary);
    --dxbl-checkbox-check-element-checked-hover-bg: var(--primary-darker);
    --dxbl-checkbox-check-element-unchecked-bg: #fff;
    --dxbl-checkbox-check-element-unchecked-hover-bg: rgba(var(--primary-rgb), 0.06);
    --dxbl-checkbox-check-element-unchecked-border-color: rgba(var(--primary-rgb), 0.38);
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(24, 64, 59, 0.045);
}

.dxbl-grid .dxbl-grid-table > thead > tr > th {
    border-color: rgba(var(--primary-rgb), 0.16);
    letter-spacing: 0.02em;
}

.dxbl-grid .dxbl-checkbox {
    --dxbl-checkbox-check-element-checked-bg: var(--primary);
    --dxbl-checkbox-check-element-checked-hover-bg: var(--primary-darker);
    --dxbl-checkbox-check-element-unchecked-bg: #fff;
    --dxbl-checkbox-check-element-unchecked-hover-bg: rgba(var(--primary-rgb), 0.06);
    --dxbl-checkbox-check-element-unchecked-border-color: rgba(var(--primary-rgb), 0.38);
}

.dxbl-grid .dxbl-grid-table > tbody > tr > td {
    border-color: rgba(var(--primary-rgb), 0.18);
}

.dxbl-grid .dxbl-grid-table > tbody > tr:last-child > td { border-bottom-width: 0; }

.dxbl-grid .dxbl-grid-table .dxbl-grid-selected-row > td:not(.dxbl-grid-empty-cell),
.dxbl-grid .dxbl-grid-table .dxbl-grid-focused-row > td:not(.dxbl-grid-empty-cell) {
    background-color: rgba(var(--primary-rgb), 0.10) !important;
    color: #183d38 !important;
}

.dxbl-grid .dxbl-grid-table .dxbl-grid-selected-row > td::before,
.dxbl-grid .dxbl-grid-table .dxbl-grid-focused-row > td::before { display: none !important; }

.dxbl-grid .dxbl-grid-table .dxbl-grid-selected-row > td:first-child,
.dxbl-grid .dxbl-grid-table .dxbl-grid-focused-row > td:first-child {
    box-shadow: inset 4px 0 0 var(--primary);
}

.dxbl-grid .dxbl-grid-search-box-container .dxbl-text-edit,
.dxbl-grid .dxbl-grid-search-box-container .form-control { border-radius: 2rem; }

.dxbl-grid .dxbl-toolbar .dxbl-btn,
.dxbl-grid .dxbl-grid-toolbar-container .dxbl-btn { color: var(--primary); }

.grid-action {
    display: inline-grid;
    place-items: center;
    width: 1.75rem;
    height: 1.75rem;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0.4rem !important;
    background: transparent !important;
    box-shadow: none !important;
}

.grid-action:hover:not(:disabled) { background: rgba(var(--primary-rgb), 0.08) !important; }

.grid-status-badge {
    display: inline-flex;
    align-items: center;
    min-height: 1.35rem;
    padding: 0.15rem 0.55rem;
    border-radius: 999px;
    background: rgba(var(--primary-rgb), 0.11);
    color: var(--primary-darker);
    font-size: 0.68rem;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
}

.grid-status-badge-muted {
    background: #edf1f1;
    color: #667773;
}

.grid-status-badge-success {
    color: #237247;
    border-color: #a8d5ba;
    background: #edf8f1;
}

.grid-status-badge-warning {
    color: #8a6514;
    border-color: #ead49e;
    background: #fff8e7;
}

.grid-status-badge-danger {
    color: #a23a3a;
    border-color: #e5b8b8;
    background: #fff0f0;
}
