.form{display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}.field__input{height:52px;width:100%;box-sizing:border-box;border-radius:var(--radius-button);border:1.5px solid var(--border-strong);background:#fff;padding:0 16px;font:inherit;font-weight:400;font-size:16px;color:var(--ink)}.field--compact .field__input{height:52px}.field__input::placeholder{color:var(--grey);opacity:1}.field__input[aria-invalid=true]{border-color:var(--error)}.field__error{margin:0;display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--error)}.field__error:before{content:"";flex:none;width:6px;height:6px;border-radius:var(--radius-pill);background:currentColor}.choices{border:0;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;gap:10px}.choices__legend{padding:0;margin-bottom:10px;font-size:14px;font-weight:600}.choices__optional{font-weight:500;color:var(--grey)}.choices__list{display:flex;flex-wrap:wrap;gap:8px}.pill{display:inline-flex;align-items:center;gap:8px;box-sizing:border-box;min-height:var(--tap-min);border-radius:var(--radius-button);border:1.5px solid var(--border-strong);background:#fff;color:var(--ink);padding:10px 14px;font-size:14px;font-weight:600;cursor:pointer}.pill input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px;margin:0}.pill:has(:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.pill--radio{position:relative;padding:11px 18px}.pill--radio input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.pill--radio:has(input:checked){border-color:var(--ink);background:var(--ink);color:#fff}.form__trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.btn[aria-disabled=true],.btn:disabled{cursor:progress;opacity:.75}.spinner{width:16px;height:16px;margin-right:10px;border-radius:var(--radius-pill);border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:bh-spin .8s linear infinite}@keyframes bh-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation-duration:2.4s}}.form-alert{margin:0;padding:12px 14px;border-radius:var(--radius-card);background:#fdecea;color:#7a1a12;font-size:14px;font-weight:600}.form-success:focus{outline:none}.form-success__title{margin:0;font-family:var(--font-display);font-weight:700;font-size:22px;letter-spacing:-.3px;line-height:1.25}.form-success__body{margin:8px 0 0;color:var(--ink-soft);font-size:16px}
