.eh-form{--b:var(--eh-border,#DDD8CC);--bg:var(--eh-bg,#F4F2EC);--tx:var(--eh-text,#1E2B3C);--tx2:var(--eh-text-2,#5E5A52);--pr:var(--eh-primary,#1E2B3C);--onpr:var(--eh-on-primary,#F4F2EC);--ac:var(--eh-accent,#A8742A);--dn:var(--eh-danger,#9B2C2C);--ok:var(--eh-success,#2F5D50);
  background:var(--eh-surface,#FBFAF7);border:1px solid var(--b);border-radius:2px;padding:36px;max-width:760px;color:var(--tx);font-family:'Source Sans 3',system-ui,sans-serif}
.eh-form [hidden]{display:none !important}
.eh-step{display:flex;flex-direction:column;gap:20px}
.eh-lbl{display:block;margin:0 0 6px;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--tx2);padding:0}
.eh-req{color:var(--dn)}.eh-opt{text-transform:none;letter-spacing:0}
.eh-fld{width:100%;box-sizing:border-box;min-height:48px;padding:12px 14px;background:var(--bg);border:1px solid var(--b);border-radius:2px;color:var(--tx);font:inherit;font-size:16px}
.eh-fld:focus{outline:2px solid var(--eh-focus,#A8742A);outline-offset:1px}
.eh-hint{margin-top:6px;font-size:13px;color:var(--tx2)}
.eh-err{display:none;margin-top:6px;font-size:14px;font-weight:600;color:var(--dn)}
.eh-bad .eh-err{display:block}.eh-bad .eh-fld{border-color:var(--dn)}
.eh-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.eh-btn{display:inline-flex;align-items:center;min-height:48px;padding:14px 24px;box-sizing:border-box;border:1.5px solid var(--pr);border-radius:2px;font:inherit;font-size:16px;font-weight:600;cursor:pointer}
.eh-btn-p{background:var(--pr);color:var(--onpr)}
.eh-btn[disabled]{opacity:.6;cursor:progress}
.eh-note{margin:20px 0 0;font-size:14px;line-height:1.6;color:var(--tx2)}
.eh-note a{color:var(--eh-accent-text,#7E5418)}
.eh-fail{margin-top:18px;padding:12px 14px;border-left:3px solid var(--dn);background:var(--bg);font-weight:600;color:var(--dn)}
.eh-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.eh-ok-l{margin:0;font-family:'IBM Plex Mono',monospace;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--ok)}
.eh-ok-t{margin:12px 0 0;font-size:20px;line-height:1.55}
@media(max-width:760px){.eh-form{padding:22px}}
