.aiv-native-form{--aiv-form-gap:18px;position:relative;display:block;max-width:100%;font:inherit}
.aiv-native-form .aiv-form-step{margin:0;padding:0}
.aiv-form-grid{display:flex;flex-wrap:wrap;gap:var(--aiv-form-gap)}
.aiv-form-field{flex:1 1 calc(var(--aiv-field-width,100%) - var(--aiv-form-gap));min-width:min(100%,220px);box-sizing:border-box}
.aiv-form-field label,.aiv-form-field legend{display:block;margin:0 0 7px;font-weight:600}
.aiv-form-field input:not([type=checkbox]):not([type=radio]),.aiv-form-field select,.aiv-form-field textarea{box-sizing:border-box;width:100%;max-width:100%;font:inherit}
.aiv-choice,.aiv-acceptance{display:flex!important;align-items:flex-start;gap:8px;font-weight:400!important}
.aiv-choice input,.aiv-acceptance input{margin-top:.25em}
.aiv-form-field fieldset{margin:0;padding:0;border:0}
.aiv-form-help{margin:0 0 6px;font-size:.9em;opacity:.78}
.aiv-field-error{margin:6px 0 0;color:#a12622;font-size:.9em}
.aiv-required-mark{color:#b32d2e}
.aiv-form-navigation{display:flex;gap:12px;justify-content:flex-end;margin-top:22px}
.aiv-form-navigation button{cursor:pointer}
.aiv-form-progress{margin:0 0 12px;text-align:right;font-size:.9em;opacity:.7}
.aiv-form-message{margin-top:18px;padding:12px 14px;border-radius:6px}
.aiv-form-message--success{border:1px solid #7ad18b;background:#edf9ef;color:#175c24}
.aiv-form-message--error{border:1px solid #ef9a9a;background:#fff1f1;color:#8b1a1a}
.aiv-form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.aiv-native-form.is-submitting{opacity:.72;cursor:progress}
.aiv-native-form.is-submitting::after{content:"";position:absolute;top:50%;left:50%;width:2.25rem;height:2.25rem;box-sizing:border-box;border:3px solid var(--aiv-form-loader-color,currentColor);border-right-color:transparent;border-radius:50%;z-index:2;pointer-events:none;transform:translate(-50%,-50%);animation:aiv-native-form-spin .75s linear infinite}
@keyframes aiv-native-form-spin{from{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.aiv-native-form.is-submitting::after{animation:none}}
@media(max-width:640px){.aiv-form-field{flex-basis:100%;min-width:100%}.aiv-form-navigation{justify-content:stretch}.aiv-form-navigation button{flex:1}}
