[data-auth-status] { white-space: pre-line; overflow-wrap: anywhere; }
.customer-auth-feedback { margin-block: .65rem; font-size: .875rem; line-height: 1.6; white-space: pre-line; overflow-wrap: anywhere; text-align: start; }
.customer-auth-feedback-silent { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; border: 0; }
.customer-auth-feedback-error { padding: .6rem .75rem; color: #9f1239; background: #fff1f2; border-inline-start: 3px solid #be123c; border-radius: 5px; }
.customer-auth-field-error { margin-block-start: .35rem; color: #9f1239; font-size: .875rem; }
[data-auth-invalid] { border-color: #be123c !important; }
[data-auth-status][hidden], [data-auth-credentials][hidden] { display: none !important; }
[data-auth-busy="true"] button[type="submit"]::after {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-inline-start: .5rem;
    border: 2px solid currentColor;
    border-inline-end-color: transparent;
    border-radius: 50%;
    vertical-align: middle;
    animation: customer-auth-spin .8s linear infinite;
}
@keyframes customer-auth-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
    [data-auth-busy="true"] button[type="submit"]::after { animation: none; }
}
