/* Formular-Stile */

.form-group {
    margin-bottom: 1.5em;
}

.form-group label {
    display: block;
    font-weight: bold;
    font-size: 0.9em;
    margin-bottom: 0.4rem;
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 0.5rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
}

/* Korrektur: verhindert Einzug bei .form-check in .form-group */
.form-group .form-check {
    padding-left: 0;
}

.form-check {
    display: flex;
    align-items: center;
    margin-bottom: 0.5rem;
}

.form-check-input {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0.6em;
}

.info-field {
    background-color: #f8f9fa;
    padding: 0.75em;
    border: 1px solid #e9ecef;
    border-radius: 4px;
}

/* Filter-Formular */
.filter-form h4 {
    margin-top: 0;
    margin-bottom: 1rem;
}

.filter-grid {
    display: flex;
    flex-wrap: wrap;
    row-gap: 0.3rem;
    column-gap: 1.5rem;
    align-items: end;
}

.flex-break {
    flex-basis: 100%;
    height: 0;
}

.filter-grid .form-group {
    flex: 1 1 220px;
}

.range-group > div {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.range-group span {
    font-weight: bold;
}

.filter-actions {
    margin-top: 1.5rem;
    display: flex;
    row-gap: 0.3rem;
    column-gap: 1.5rem;
}

/* Flatpickr: muss über Bootstrap-Modals liegen */
.flatpickr-calendar {
    z-index: 9999 !important;
}

.input-group > .flatpickr-input {
    flex: 1 1 auto;
    width: 1%;
}

.compact-date {
    width: auto !important;
    max-width: 135px;
    padding: 0.25rem 0.5rem;
    font-size: 0.9rem;
}

/* Checkbox in Formulargruppe (z.B. Login "Angemeldet bleiben") */
.form-group.checkbox { display: flex; align-items: center; gap: 0.5em; }
.form-group.checkbox label { margin-bottom: 0; }
.form-group.checkbox input { width: auto; }

/* Inline-Fehlerliste unter Eingabefeldern */
.form-group .errors {
    list-style: none;
    padding: 0;
    margin: 5px 0 0;
    color: #dc3545;
    font-size: 0.9em;
}
