.required-legend { font-size: .9rem; margin: 0 0 1rem; grid-column: 1 / -1; flex-basis: 100%; }
.required-mark { display: inline !important; font-size: 1em !important; font-weight: 800; color: inherit; white-space: nowrap; }
.field-guidance-error { display: block; font-size: .875rem; line-height: 1.4; margin-top: .4rem; color: inherit; font-weight: 600; }
[aria-invalid="true"] { outline: 2px solid #e43a78; outline-offset: 2px; }
.required-legend[hidden] { display: none; }
@media print { .required-legend,.field-guidance-error { display:none; } }

/* Same visible required-field treatment across company and admin forms. */
form input[required]:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([readonly]):not(:disabled),
form select[required]:not(:disabled),
form textarea[required]:not([readonly]):not(:disabled) {
    background-color: #302126;
    color: #f7f8fa;
    caret-color: #ffffff;
    border-color: #ba788e;
}
form [aria-invalid="true"] { border-color: #ff729e; }
.required-mark { color: #ff9bbb; }
