diff --git a/frontend/src/components/email-otp-login.tsx b/frontend/src/components/email-otp-login.tsx
index 72e1a45f..075d2fb3 100644
--- a/frontend/src/components/email-otp-login.tsx
+++ b/frontend/src/components/email-otp-login.tsx
@@ -51,6 +51,10 @@ export function EmailOtpLogin({
const [notice, setNotice] = useState("");
const canUsePassword = provider === "self-hosted" && passwordEnabled;
+ const showLoginNavigation =
+ canUsePassword && (mode === "otp" || mode === "password");
+ const showBackToLogin =
+ canUsePassword && (mode === "register" || mode === "forgot");
function chooseMode(nextMode: AuthMode, nextNotice = "") {
setMode(nextMode);
@@ -257,7 +261,7 @@ export function EmailOtpLogin({
{title}
{intro}
- {canUsePassword && (
+ {showLoginNavigation && (