diff --git a/docs/operator-manual/custom-styles.md b/docs/operator-manual/custom-styles.md
index 6f68d5e23b128..f7fcee73d9e44 100644
--- a/docs/operator-manual/custom-styles.md
+++ b/docs/operator-manual/custom-styles.md
@@ -118,3 +118,20 @@ data:
```

+
+## Login Button Text
+
+By default, the SSO login button label is derived from the OIDC provider or Dex connector name (e.g. "Log in via Azure"). You can override this text using the `ui.loginButtonText` field in the `argocd-cm` ConfigMap.
+
+### argocd-cm
+```yaml
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: argocd-cm
+data:
+ ui.loginButtonText: "SSO Login"
+```
+
+If `ui.loginButtonText` is set, it takes precedence over the provider-derived label. If not set, the default behavior is preserved.
diff --git a/ui/src/app/login/components/login.tsx b/ui/src/app/login/components/login.tsx
index 5c8d746bf3da1..44975c9a8e70e 100644
--- a/ui/src/app/login/components/login.tsx
+++ b/ui/src/app/login/components/login.tsx
@@ -84,7 +84,8 @@ export function Login(props: RouteComponentProps<{}>) {