.error {
    border: solid 1px red;
}

/* Corrige labels que el theme pone como display:flex con space-between, lo que separa las palabras */
/* Solo aplicamos a labels sin <br> (checkbox/radio y similares) para no romper los labels de campos con salto de línea */
.fz-form label:not(:has(br)) {
    display: block;          /* evita ocupar todo el ancho y respeta el flujo de texto */
    align-items: center;
    justify-content: flex-start;   /* anula space-between heredado de temas */
    gap: .5rem;                    /* separación entre input y texto */
    flex-wrap: wrap;               /* permite que el texto con enlaces haga salto de línea natural */
    width: auto;                   /* por si el tema lo fuerza a 100% */
}

/* Checkboxes y radios en línea con el texto */
.fz-form input[type="checkbox"],
.fz-form input[type="radio"] {
    display: inline-block;
    vertical-align: middle;
    margin: 0 .25rem 0 0;
}