/* Form errors. Loaded LAST, after every page stylesheet.

   It used to sit at the end of style.css, and the page sheets that load after
   it won on equal specificity: the message and the code appeared but the field
   stayed grey. A separate sheet loaded last is the fix, rather than piling on
   !important until something gives. */

.field-invalid,
.field-invalid input,
.field-invalid select,
.field-invalid textarea {
    border-color: var(--danger) !important;
    background-color: var(--danger-tint);
}

.field-invalid:focus,
.field-invalid input:focus {
    outline: 2px solid var(--danger);
    outline-offset: 1px;
}

.form-group-checkbox.field-invalid label,
label.field-invalid {
    color: var(--danger-dark);
    font-weight: 600;
}

.field-error {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px;
    margin: 6px 0 0;
    font-size: 0.85rem;
    line-height: 1.45;
    color: var(--danger-dark);
}

.field-error__code {
    font-size: 0.72rem;
    letter-spacing: 0.04em;
    color: var(--danger);
    border: 1px solid var(--danger);
    border-radius: 4px;
    padding: 1px 6px;
    white-space: nowrap;
}

.form-error-summary {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 10px;
    margin: 0 0 20px;
    padding: 13px 16px;
    border: 1px solid var(--danger);
    border-left-width: 3px;
    border-radius: 8px;
    background-color: var(--danger-tint);
    color: var(--danger-dark);
    font-size: 0.92rem;
}

.form-error-summary__code {
    font-size: 0.72rem;
    letter-spacing: 0.04em;
    color: var(--danger);
    border: 1px solid var(--danger);
    border-radius: 4px;
    padding: 1px 6px;
    background-color: var(--white);
    white-space: nowrap;
}
