diff --git a/app/javascript/submission_form/phone_step.vue b/app/javascript/submission_form/phone_step.vue
index 8a2dfe13..d3e95bed 100644
--- a/app/javascript/submission_form/phone_step.vue
+++ b/app/javascript/submission_form/phone_step.vue
@@ -39,7 +39,7 @@
required
maxlength="6"
autofocus
- inputmode="decimal"
+ inputmode="numeric"
@input="onInputCode"
>
diff --git a/app/views/devise/sessions/_otp_form.html.erb b/app/views/devise/sessions/_otp_form.html.erb
index bf1959bf..aee78e63 100644
--- a/app/views/devise/sessions/_otp_form.html.erb
+++ b/app/views/devise/sessions/_otp_form.html.erb
@@ -1,4 +1,4 @@
<%= label_tag 'user[otp_attempt]', t('two_factor_code_from_authenticator_app'), class: 'label' %>
- <%= text_field_tag 'user[otp_attempt]', nil, autofocus: true, autocomplete: 'off', placeholder: 'XXX-XXX', required: true, class: 'base-input' %>
+ <%= text_field_tag 'user[otp_attempt]', nil, autofocus: true, autocomplete: 'off', inputmode: 'numeric', placeholder: 'XXXXXX', required: true, class: 'base-input' %>
diff --git a/app/views/mfa_setup/_form.html.erb b/app/views/mfa_setup/_form.html.erb
index c931b48e..52b463a3 100644
--- a/app/views/mfa_setup/_form.html.erb
+++ b/app/views/mfa_setup/_form.html.erb
@@ -6,7 +6,7 @@
<%== RQRCode::QRCode.new(@provision_url).as_svg(viewbox: true, svg_attributes: { class: 'md:w-80 md:h-80 my-4 mx-auto' }).sub(/\A<\?xml[^>]*\?>/, '') %>