Name form fields with autocomplete tokens
Without autocomplete, the browser and the password manager guess what a field is from its name, and they guess wrong often enough that people fall back to copy and paste.
<input name="email" autocomplete="username" />
<input type="password" autocomplete="current-password" />
<input type="text" autocomplete="one-time-code" inputmode="numeric" />A sign-up form wants new-password, which is what offers to generate one. Browsers largely ignore autocomplete="off" on password fields, so naming the field is the control you actually have.
accessibilityfrontend