form .pf-invalid { border-color:#dc2626 !important; outline:2px solid #dc2626; outline-offset:1px; }
.pf-field-error { display:block; color:#b91c1c; font-size:.875rem; font-weight:600; line-height:1.45; margin:6px 0 0; overflow-wrap:anywhere; }
[data-theme="dark"] .pf-field-error, .login-box .pf-field-error { color:#fca5a5; }
.pf-error-summary { border:1px solid #dc2626; border-radius:8px; padding:12px 16px; margin:0 0 18px; overflow-wrap:anywhere; }
.pf-error-summary p { margin:0 0 6px; font-weight:600; }
.pf-error-summary ul { margin:0; padding-left:20px; }
.pf-error-summary a { color:inherit; text-decoration:underline; }
.pf-required-hint { font-size:.875rem; }
.supplier-address-fields { display:grid; grid-template-columns:minmax(0,1fr) minmax(90px,120px); gap:14px; min-width:0; }
.supplier-address-fields label, .supplier-address-fields input { min-width:0; width:100%; box-sizing:border-box; }
.supplier-address-review { grid-column:1/-1; margin:0; }
@media(max-width:380px) { .supplier-address-fields { grid-template-columns:minmax(0,1fr); } }
