/* Form field styles for non-wizard pages (loaded after Radzen so these rules win). */
/* Matches Wizard.razor / RFQ / Note Payable look. */
.form-group { margin-bottom: 20px; }
.form-label { display: block; margin-bottom: 8px; font-weight: 500; color: #212121; font-size: 14px; }
.form-input { width: 100%; padding: 10px 12px; border: 1px solid #e0e0e0; border-radius: 8px; font-size: 14px; box-sizing: border-box; }
.form-input:focus { border-color: #1976d2; outline: none; box-shadow: 0 0 0 3px rgba(25, 118, 210, 0.15); }
.form-group textarea.form-input { resize: vertical; min-height: 90px; }
.required { color: #f44336; }

/* Radzen DropDown: inner trigger/label fill height (control height set on component). */
.rz-dropdown .rz-dropdown-trigger {
    min-height: 100% !important;
    height: 100% !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
}
.rz-dropdown .rz-dropdown-label {
    min-height: 100% !important;
    height: 100% !important;
    line-height: 1.5 !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
}

/* Reference/Enum editors: scroll wrapper shows full text when long (e.g. Arabic). */
.entity-reference-dropdown-scroll,
.enum-editor-dropdown-scroll {
    width: 100%;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}
.enum-editor-dropdown-scroll {
    display: block;
}
.enum-editor-dropdown-scroll .rz-dropdown {
    min-width: min-content;
}

/* Radzen DatePicker (RadzenDatePicker): fix broken CSS and "fixed location" in scroll (Radzen 9 / Material theme). */
/* See https://blazor.radzen.com/datepicker - input lives in .rz-calendar; popup is .rz-datepicker. */
/*
 * WHY ONLY THE DATE PICKER BREAKS:
 * TextBox, Numeric, Switch, etc. are plain inputs with no popup. DropDown/EnumEditor open lists that Radzen
 * may render in a shared overlay. The DatePicker opens a calendar PANEL that is rendered in the same DOM
 * tree as the trigger. Any ancestor with overflow:hidden or overflow:auto (e.g. wizard step content,
 * report container) CLIPS this popup, so the calendar never appears or is cut off. So only the DatePicker
 * is affected. Fix: wizard uses Inline=true (calendar below input, no popup). Reports: container overflow
 * set to visible so the popup can extend outside.
 */

/* Form-field wrapper (Material theme wraps in .rz-form-field): force full width and in-flow so it doesn't overlap. */
.rz-form-field:has(.rz-calendar),
.form-group .rz-form-field .rz-calendar {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}
.rz-form-field:has(.rz-calendar) {
    display: block !important;
    position: relative !important;
}
.rz-form-field:has(.rz-calendar) .rz-form-field-content {
    position: relative !important;
    width: 100% !important;
    display: flex !important;
    box-sizing: border-box !important;
}

/* Calendar input wrapper: in flow, full width. */
.rz-calendar {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    display: block !important;
    position: relative !important;
}
.rz-calendar .rz-inputtext {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 0 !important;
}

/* Popup: z-index only; never position:fixed so it doesn't stay viewport-fixed when dialog scrolls. */
.rz-datepicker-panel,
.rz-datepicker.rz-popup,
.rz-datepicker:not(.rz-datepicker-inline) {
    z-index: 1100 !important;
}

/* GL report pages: allow Radzen DatePicker popup to extend outside container (avoids clipping). */
.gl-report-container {
    overflow: visible !important;
}
