.form-error-state {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    border-radius: .35rem;
    padding: .75rem .9rem;
}

.form-error-state--error {
    border-left: 2px solid var(--error, #ba1a1a);
    background: color-mix(in srgb, #ffdad6 40%, #fff);
    box-shadow: 0 0 32px -12px color-mix(in srgb, var(--error, #ba1a1a) 26%, transparent);
}

.form-error-state--success {
    border-left: 2px solid var(--tertiary, #526256);
    background: color-mix(in srgb, var(--success-bg, #d5e7d8) 62%, #fff);
    box-shadow: 0 0 32px -12px color-mix(in srgb, var(--tertiary, #526256) 24%, transparent);
}

.form-error-state__icon {
    margin-top: .06rem;
}

.form-error-state--error .form-error-state__icon {
    color: var(--error, #ba1a1a);
}

.form-error-state--success .form-error-state__icon {
    color: var(--tertiary, #526256);
}

.form-error-state__title {
    margin: 0;
    font-size: .98rem;
    line-height: 1.25;
}

.form-error-state--error .form-error-state__title {
    color: #93000a;
}

.form-error-state--success .form-error-state__title {
    color: var(--success-text, #0f1f16);
}

.form-error-state__message {
    margin: .3rem 0 0;
    font-size: .84rem;
    line-height: 1.4;
}

.form-error-state--error .form-error-state__message {
    color: color-mix(in srgb, #795354 92%, #fff);
}

.form-error-state--success .form-error-state__message {
    color: color-mix(in srgb, var(--success-text, #0f1f16) 86%, #fff);
}

.form-error-state__link {
    display: inline-block;
    margin-top: .5rem;
    font-size: .72rem;
    letter-spacing: .07em;
    text-transform: uppercase;
    text-decoration: none;
    font-weight: 700;
}

.form-error-state--error .form-error-state__link {
    color: #93000a;
}

.form-error-state--success .form-error-state__link {
    color: var(--success-text, #0f1f16);
}

.form-error-state__link:hover {
    text-decoration: underline;
}
