/* Wspolny wyglad formularzy (Tabler 1.x + Aire). Ladowany po tabler.min.css. */

.form-card {
    margin: 0 auto 1.5rem;
}

/* Etykiety i podpowiedzi */
.form-group > label,
.form-group > .form-label {
    font-weight: var(--tblr-font-weight-medium, 500);
}

.form-group .form-hint {
    margin-top: .25rem;
}

/* Gwiazdka przy polach wymaganych: wystarczy atrybut required na polu */
.form-group:has(> input[required], > select[required], > textarea[required], > .input-group > [required]) > label::after,
.form-label.required::after {
    content: " *";
    color: var(--tblr-danger);
}

/* Pola tylko do odczytu wygladaja jak informacja, nie jak pole do wpisania */
.form-control[readonly] {
    background-color: var(--tblr-bg-surface-secondary, #f6f8fb);
    color: var(--tblr-secondary);
}

/* Sekcje formularza */
.form-section + .form-section {
    border-top: 1px solid var(--tblr-border-color);
    padding-top: 1.25rem;
    margin-top: .25rem;
}

.form-section-title {
    font-size: 1rem;
    font-weight: var(--tblr-font-weight-bold, 600);
    margin-bottom: .25rem;
}

.form-section-hint {
    color: var(--tblr-secondary);
    font-size: .8125rem;
    margin-bottom: 1rem;
}

/* Lista wybranych pracownikow (checkboxy Aire) w kilku kolumnach */
.form-check-columns div:has(> .form-check) {
    columns: 3 14rem;
}

.form-check-columns .form-check {
    break-inside: avoid;
}

/* Wiersze podzadan */
.subtask-row + .subtask-row {
    margin-top: .5rem;
}
