/* Custom styles for Radzen components */

/* Keep sidebar width/collapse behavior without forcing fixed colors. */
.rz-sidebar {
    overflow-x: hidden;
    transition: width 0.2s ease;
}

/* Row hover effect for Radzen DataGrid */
.rz-datatable-hoverable-rows .rz-datatable-row:hover,
.rz-grid-table tr:hover,
.rz-grid-table tr:hover td,
.rz-data-row:hover,
.rz-datatable-row:hover,
.rz-datatable-data tr:hover {
    background-color: var(--rz-secondary-lighter) !important;
    cursor: pointer;
}

/* Target the specific row classes */
.rz-grid-table .rz-grid-row:hover,
.rz-grid-table .rz-grid-row-odd:hover,
.rz-grid-table .rz-grid-row-even:hover {
    background-color: var(--rz-secondary-lighter) !important;
    cursor: pointer;
}

/* Target all cells in a row */
.rz-grid-table tr:hover > td {
    background-color: var(--rz-secondary-lighter) !important;
}

/* Ensure side dialogs are anchored to viewport edges. */
.rz-dialog-side-position-right,
.rz-dialog-side-position-left {
    top: 0 !important;
    bottom: 0 !important;
}

/* GenericTest component styles moved from inline <style> block */
.grid-row1.headerRow {
    height: 55% !important;
}

.noedit {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    padding: 0.2rem 0.3rem;
    font-size: 0.72rem;
}

.btnWidth {
    width: 75px;
}

.linearityCol {
    padding: 0;
}

.linearityColHeader {
    padding: 0;
}

.AlingRight {
    float: right;
}

.AlingLeft {
    float: left;
}

.generic-test-modal-host {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    overflow: hidden;
    padding-left: 5px;
    width: 100%;
}

.generic-test-grid-wrap {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
}

.generic-test-header {
    background: #f8fafc;
    border-bottom: 1px solid #e5e7eb;
    padding: 0.75rem;
    border-radius: 4px 4px 0 0;
}

.generic-test-header .row {
    margin-left: 0;
    margin-right: 0;
    align-items: flex-end;
}

.generic-test-header .col-12 {
    padding-left: 0;
    padding-right: 0;
}

.generic-test-header .form-control-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    margin-bottom: 0.15rem;
}

.generic-test-actions {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
}

.generic-test-actions .rz-button {
    min-height: 28px;
    font-size: 0.75rem;
    white-space: nowrap;
}

.generic-test-grid-wrap .rz-datatable-thead > tr > th {
    background: #f8fafc;
    border-bottom: 2px solid #dee2e6;
    padding: 0.4rem 0.25rem;
}

.generic-test-grid-wrap .rz-header-cell {
    background: #f8fafc;
    border-bottom: 2px solid #dee2e6;
}

.generic-test-header-row {
    display: flex;
    align-items: center;
    width: 100%;
    min-width: 500px;
}

.generic-test-header-row label,
.generic-test-header-row .form-control-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    margin-bottom: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.generic-test-data-row input,
.generic-test-data-row select,
.generic-test-data-row .form-control {
    height: 26px;
    font-size: 0.72rem;
    padding: 0.15rem 0.3rem;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    box-sizing: border-box;
}

.generic-test-grid-wrap .inputgrid,
.generic-test-grid-wrap .inputgridNoBorder {
    width: 100% !important;
    min-width: 60px;
    height: 26px;
    font-size: 0.72rem;
    padding: 0.15rem 0.3rem;
    box-sizing: border-box;
}

.generic-test-select-cell {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 0 4px;
    flex-shrink: 0;
    min-width: 70px;
}

.generic-test-select-cell .btn,
.generic-test-select-cell .rz-button {
    min-height: 24px;
    min-width: 26px;
    padding: 0.15rem 0.35rem;
    font-size: 0.65rem;
    white-space: nowrap;
    line-height: 1;
}

.generic-test-select-buttons {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 4px;
}

.generic-test-select-buttons .btn {
    min-height: 24px;
    padding: 0.15rem 0.35rem;
    font-size: 0.65rem;
    white-space: nowrap;
    height: 24px;
    line-height: 1;
}

.generic-test-select-buttons .rz-button {
    min-height: 24px;
    padding: 0.15rem 0.35rem;
    font-size: 0.65rem;
    line-height: 1;
}

.generic-test-grid-wrap .rz-data-grid {
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    overflow: hidden;
}

.generic-test-action-icon .rz-button {
    min-height: 24px;
    min-width: 26px;
    width: 26px;
    padding: 0;
    font-size: 0.7rem;
    line-height: 1;
}

.generic-test-col-title {
    font-size: 0.75rem;
    font-weight: 600;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.generic-test-header-labels {
    margin: 0;
}

.generic-test-radzen-grid .rz-datatable-data td {
    padding: 0.15rem 0.5rem;
    vertical-align: middle;
}

.generic-test-radzen-grid .rz-datatable-thead th {
    padding: 0.4rem 0.5rem;
    background: #f8fafc;
}

.generic-test-radzen-grid .rz-datatable-data label,
.generic-test-radzen-grid .rz-datatable-data .form-control-label {
    display: none !important;
}

.generic-test-radzen-grid .rz-datatable-data .form-control,
.generic-test-radzen-grid .rz-datatable-data input {
    height: 28px;
    font-size: 0.78rem;
    padding: 0.15rem 0.35rem;
}

.calibration-grid .inputgrid,
.calibration-grid .inputgridNoBorder,
.calibration-grid .inputgrid input,
.calibration-grid .inputgridNoBorder input,
.calibration-grid .inputgrid select,
.calibration-grid .inputgridNoBorder select,
.calibration-grid .form-control,
.calibration-grid label.inputgrid,
.calibration-grid label.inputgridNoBorder {
    background-color: var(--rz-input-background-color, var(--rz-base-background-color, #1f1f1f)) !important;
    color: var(--rz-input-color, var(--rz-text-color, #f5f5f5)) !important;
    border-color: var(--rz-input-border-color, var(--rz-base-400, #4b5563)) !important;
}

.calibration-grid .inputgrid:disabled,
.calibration-grid .inputgridNoBorder:disabled,
.calibration-grid .inputgrid input:disabled,
.calibration-grid .inputgridNoBorder input:disabled,
.calibration-grid .inputgrid select:disabled,
.calibration-grid .inputgridNoBorder select:disabled,
.calibration-grid .form-control:disabled,
.calibration-grid label.inputgrid:disabled,
.calibration-grid label.inputgridNoBorder:disabled {
    background-color: var(--rz-input-disabled-background-color, var(--rz-base-200)) !important;
    color: var(--rz-input-disabled-color, var(--rz-text-secondary-color)) !important;
}

.calibration-grid .rz-datatable-data td,
.calibration-grid .rz-grid-table td,
.calibration-grid .rz-grid-table tr {
    background-color: var(--rz-grid-cell-background-color, var(--rz-base-background-color, transparent));
    color: var(--rz-text-color);
}

.calibration-grid .rz-cell-data .rz-badge {
    font-weight: 600;
    min-width: 6.5rem;
    justify-content: center;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 568px) {
}
