/* ── Radzen Component Overrides for ITL Theme ── */

/* Buttons */
.rz-button.rz-primary {
    background: var(--itl-green) !important;
    border-color: var(--itl-green) !important;
    font-family: var(--font-body) !important;
    font-weight: 600 !important;
    border-radius: var(--radius-sm) !important;
}
.rz-button.rz-primary:hover { background: var(--itl-green-light) !important; }

/* Dialog */
.rz-dialog .rz-dialog-wrapper {
    border-radius: var(--radius-xl) !important;
    border: none !important;
    box-shadow: var(--shadow-xl) !important;
}

/* Notifications */
.rz-notification {
    border-radius: var(--radius-md) !important;
    font-family: var(--font-body) !important;
}

/* ══════════════════════════════════════════════════════════
   DATA GRID — high-level premium treatment
   ══════════════════════════════════════════════════════════ */
.itl-grid, .rz-data-grid {
    border: none !important;
    border-radius: 0 !important;
    font-family: var(--font-body) !important;
}

.rz-grid-table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    width: 100% !important;
}

/* Header */
.rz-grid-table thead tr th,
.rz-grid-table th {
    background: var(--gray-50) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .08em !important;
    color: var(--gray-400) !important;
    font-family: var(--font-body) !important;
    padding: 13px 16px !important;
    border-bottom: 1px solid var(--gray-200) !important;
    position: sticky;
    top: 0;
    z-index: 2;
    white-space: nowrap;
}
.rz-grid-table th .rz-column-title-content { font-weight: 700 !important; }
.rz-grid-table th .rz-sortable-column-icon { color: var(--itl-green) !important; font-size: 14px !important; }
.rz-grid-table th:hover { background: var(--gray-100) !important; cursor: pointer; }

/* Body cells */
.rz-grid-table td {
    font-family: var(--font-body) !important;
    font-size: 13.5px !important;
    color: var(--gray-700) !important;
    padding: 12px 16px !important;
    border-bottom: 1px solid var(--gray-100) !important;
    vertical-align: middle !important;
}
.rz-grid-table tbody tr:last-child td { border-bottom: none !important; }
.rz-grid-table tbody tr { transition: var(--transition); }
.rz-grid-table tbody tr:nth-child(even) td { background: rgba(248,250,249,.55); }
.rz-grid-table tbody tr:hover td { background: var(--itl-green-soft) !important; }

/* Filter row */
.rz-grid-table .rz-filter-cell,
.rz-data-filter,
.rz-datatable-filter {
    padding: 8px 12px !important;
    background: var(--white) !important;
    border-bottom: 1px solid var(--gray-100) !important;
}
.rz-data-filter input, .rz-datatable-filter input {
    border: 1.5px solid var(--gray-200) !important;
    border-radius: var(--radius-sm) !important;
    font-size: 13px !important;
    height: 34px !important;
}

/* Empty message */
.rz-data-grid-data-cell.rz-empty-message,
.rz-grid-table .rz-no-records {
    padding: 60px 24px !important;
    text-align: center !important;
    color: var(--gray-400) !important;
    font-size: 14px !important;
}

/* Loading indicator */
.rz-data-grid .rz-loading-indicator,
.rz-data-grid .rz-datatable-loading-content {
    color: var(--itl-green) !important;
}

/* Column resize handle */
.rz-column-resizer { background: var(--itl-green-mid) !important; }

/* Pager */
.rz-paginator {
    background: var(--white) !important;
    border-top: 1px solid var(--gray-100) !important;
    padding: 12px 16px !important;
    font-family: var(--font-body) !important;
    font-size: 13px !important;
    color: var(--gray-500) !important;
}
.rz-paginator .rz-paginator-page,
.rz-paginator .rz-paginator-next,
.rz-paginator .rz-paginator-prev,
.rz-paginator .rz-paginator-first,
.rz-paginator .rz-paginator-last {
    border-radius: var(--radius-sm) !important;
    min-width: 30px !important;
    height: 30px !important;
    font-weight: 600 !important;
    transition: var(--transition) !important;
}
.rz-paginator .rz-paginator-page:hover { background: var(--itl-green-soft) !important; color: var(--itl-green) !important; }

/* Sort / filter icons */
.rz-sortable-column-icon, .rz-column-menu-icon { color: var(--gray-300) !important; }
.rz-cell-filter .rz-icon, .rz-grid-table .rz-icon { color: var(--gray-400) !important; }

/* Inputs */
.rz-textbox, .rz-dropdown, .rz-numeric, .rz-textarea {
    border: 1.5px solid var(--gray-200) !important;
    border-radius: var(--radius-sm) !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    color: var(--gray-800) !important;
    transition: var(--transition) !important;
}

.rz-textbox:focus, .rz-dropdown.rz-state-focused,
.rz-numeric input:focus, .rz-textarea:focus {
    border-color: var(--itl-green) !important;
    box-shadow: 0 0 0 3px rgba(26,122,74,.1) !important;
    outline: none !important;
}

/* Tabs */
.rz-tabview .rz-tabview-nav li.rz-tabview-selected a {
    color: var(--itl-green) !important;
    border-bottom-color: var(--itl-green) !important;
}

/* Checkbox */
.rz-chkbox-box.rz-state-active { background: var(--itl-green) !important; border-color: var(--itl-green) !important; }

/* Progress bar */
.rz-progressbar .rz-progressbar-value { background: var(--itl-green) !important; }

/* Tooltip */
.rz-tooltip { border-radius: var(--radius-sm) !important; font-family: var(--font-body) !important; }

/* Paginator */
.rz-paginator .rz-paginator-page.rz-state-active {
    background: var(--itl-green) !important;
    color: white !important;
    border-color: var(--itl-green) !important;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #f1f5f3;
}

::-webkit-scrollbar-thumb {
    background: #2d8a4e;
    border-radius: 10px;
}

    ::-webkit-scrollbar-thumb:hover {
        background: #24733f;
    }

::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: #f5f7f6;
}

::-webkit-scrollbar-thumb {
    background: var(--itl-green);
    border-radius: 10px;
}

    ::-webkit-scrollbar-thumb:hover {
        background: #247a43;
    }