diff --git a/app/views/active_admin/devise/sessions/new.html.erb b/app/views/active_admin/devise/sessions/new.html.erb
index 7c49318..efe7aa0 100644
--- a/app/views/active_admin/devise/sessions/new.html.erb
+++ b/app/views/active_admin/devise/sessions/new.html.erb
@@ -15,10 +15,12 @@
<%= active_admin_application.site_title(self) %>
- <%= button_to ActiveAdmin::Oidc.config.login_button_label,
- "/admin/auth/oidc",
- method: :post,
- class: "activeadmin-oidc-login-button",
- data: { turbo: false } %>
+ <%= form_tag "/admin/auth/oidc",
+ method: :post,
+ class: "activeadmin-oidc-login-form formtastic",
+ data: { turbo: false } do %>
+ <%= submit_tag ActiveAdmin::Oidc.config.login_button_label,
+ class: "activeadmin-oidc-login-button" %>
+ <% end %>
<% end %>
diff --git a/lib/generators/active_admin/oidc/install/templates/sessions_new.html.erb b/lib/generators/active_admin/oidc/install/templates/sessions_new.html.erb
index e880bb6..0cd8d78 100644
--- a/lib/generators/active_admin/oidc/install/templates/sessions_new.html.erb
+++ b/lib/generators/active_admin/oidc/install/templates/sessions_new.html.erb
@@ -1,9 +1,11 @@
<%%= active_admin_application.site_title(self) %>
- <%%= button_to ActiveAdmin::Oidc.config.login_button_label,
- "/admin/auth/oidc",
- method: :post,
- class: "activeadmin-oidc-login-button",
- data: { turbo: false } %>
+ <%%= form_tag "/admin/auth/oidc",
+ method: :post,
+ class: "activeadmin-oidc-login-form formtastic",
+ data: { turbo: false } do %>
+ <%%= submit_tag ActiveAdmin::Oidc.config.login_button_label,
+ class: "activeadmin-oidc-login-button" %>
+ <%% end %>
diff --git a/spec/requests/login_page_spec.rb b/spec/requests/login_page_spec.rb
index fb34d07..fa01c7a 100644
--- a/spec/requests/login_page_spec.rb
+++ b/spec/requests/login_page_spec.rb
@@ -37,4 +37,18 @@
expect(response.body).to include(ActiveAdmin::Oidc::Configuration::DEFAULT_LOGIN_BUTTON_LABEL)
end
+
+ # Regression: AA v3's formtastic stylesheet targets
+ # `#login input[type="submit"]`, so a