function otpSection(ctx, options) {
const otpBlurb = (options.otpBlurb || []).map((x) => '\t'.repeat(6) + x).join('\n');
return `\t\t\t<section class="otp">
-\t\t\t\t<form action="" method="POST">
+\t\t\t\t<form method="POST">
\t\t\t\t\t<fieldset>
\t\t\t\t\t\t<legend>Two-Factor Authentication</legend>
\t\t\t\t\t\t<label for="otp">OTP Code</label>
-\t\t\t\t\t\t<input id="otp" name="otp" value="">
+\t\t\t\t\t\t<input type="tel" id="otp" name="otp" value="">
\t\t\t\t\t\t<br>
-\t\t\t\t\t\t<button>Confirm</button>
+\t\t\t\t\t\t<button type="submit">Confirm</button>
${otpBlurb}
\t\t\t\t\t</fieldset>
\t\t\t\t\t<input type="hidden" name="state" value="${ctx.otpState}">
\t\t\t\t</form>
-\t\t\t</section`;
+\t\t\t</section>`;
}