::selection {
    background-color: var(--primary);
    color: #fff;
}

::-moz-selection {
    background-color: var(--primary);
    color: #fff;
}

.rz-button:not(.rz-variant-outlined):not(.rz-variant-flat):not(.rz-variant-text):not(.rz-datepicker-trigger):not(.rz-state-disabled):not(.pagination-btn) {
    background-color: var(--primary) !important;
}

.rz-button:not(.rz-variant-outlined):not(.rz-variant-flat):not(.rz-variant-text):not(.rz-datepicker-trigger):not(.rz-state-disabled):not(.pagination-btn):hover {
    background-color: var(--primary-hover) !important;
}

.rz-button.rz-datepicker-trigger, .rz-button.rz-datepicker-trigger:hover {
    background-color: transparent !important;
}

.rz-button.rz-primary.rz-shade-default:disabled {
    background-color: var(--primary) !important;
}

.rz-colorpicker, .rz-lookup-search input, .rz-numeric, .rz-calendar > .rz-inputtext, .rz-multiselect, .rz-dropdown, .mask, .rz-textarea, .rz-textbox {
    box-shadow: none;
    border: 1px solid #ced4da;
    border-radius: 4px;
    background-color: #fff;
}

.rz-form-field input {
    border: 1px solid #ced4da;
}

.rz-form-field input:focus {
    color: #495057;
    background-color: #fff;
    border-color: #80bdff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgb(0 123 255 / 25%);
}

.rz-form-field input.invalid {
    border-color: #dc3545 !important;
}

.rz-form-field input.invalid:focus {
    box-shadow: 0 0 0 0.2rem rgb(220 53 69 / 25%) !important;
}

.rz-textbox,
.rz-inputtext,
.rz-dropdown {
    width: 100%;
    max-width: none;
}

.rz-calendar > .rz-inputtext {
    height: 38px;
}

.radzen-select-group .validation-message {
    margin-top: -3px;
}

.rz-datatable-thead th, .rz-grid-table thead th {
    background-color: var(--light-grey-3); 
    border-bottom: 1px solid #E8E8E8;
}

.rz-datatable-thead th:not(:last-child), .rz-grid-table thead th:not(:last-child), .rz-grid-table td:not(:last-child) {
    border-right: none;
}

.rz-datatable-data tr:last-child td, .rz-grid-table tr:last-child td {
    border-bottom: 1px solid var(--light-grey-3);
}

.rz-datatable-thead th .rz-column-title, .rz-grid-table thead th .rz-column-title {
    font-family: 'Nunito Sans', "Helvetica Neue", sans-serif;
    color: var(--slate);
    font-weight: 900;
    font-size: 12px;
    line-height: 22px;
}

.rz-data-grid-data > .rz-grid-table > tbody > .rz-data-row:nth-child(odd) > td {
    background-color: white !important;
}

.rz-data-grid-data > .rz-grid-table > tbody > .rz-data-row:nth-child(even) > td {
    background-color: white !important;
}

.rz-calendar input.rz-inputtext[readonly] {
    background-color: #e9ecef;
}

.rz-data-grid {
    border: none;
}

.rz-grid-table td .rz-cell-data {
    color: var(--slate);
}

/* Vertically align cell data and icon columns in grid rows */
.rz-grid-table td {
    vertical-align: middle !important;
}

.rz-grid-table td .rz-cell-data,
.rz-grid-table td .rz-col-icon {
    display: inline-flex;
    align-items: center;
    vertical-align: middle;
}

.rz-form-field .rz-dropdown {
    border-radius: 4px !important;
    border: 1px solid #CED4DA !important;
}

.rz-dialog-mask {
    background-color: rgba(0, 0, 0, 0.4);
    opacity: 1;
}

.mb-3 {
    margin-bottom: 1rem !important;
}

.ms-4,
.mx-4 {
    margin-left: 1.5rem !important;
}

.ms-auto,
.mx-auto {
    margin-left: auto !important;
}

.rz-data-row .rz-button.rz-variant-text.rz-base,
.rz-data-row .rz-button.rz-variant-text.rz-base.rz-shade-default,
.rz-data-row .rz-button.rz-variant-text.rz-base:hover,
.rz-data-row .rz-button.rz-variant-text.rz-base.rz-shade-default:hover {
    background-color: transparent !important;
    box-shadow: none !important;
}

.rz-datatable-thead th:hover,
.rz-grid-table thead th:hover {
    background-color: var(--light-grey-3) !important;
    box-shadow: none !important;
}

.rz-selectable tbody > tr.rz-expanded-row-content:nth-child(even):hover:not(.rz-state-highlight) > td,
.rz-selectable tbody > tr.rz-expanded-row-content:nth-child(odd):hover:not(.rz-state-highlight) > td,
.rz-expanded-row-content > td,
.rz-expanded-row-content > td:hover {
    background-color: white !important;
}

.float-right {
    float: right;
}