From ae8867d8324ef978891803f7ae8c15ff54d307d2 Mon Sep 17 00:00:00 2001
From: Matt
Date: Thu, 21 May 2026 18:47:33 +0200
Subject: [PATCH] =?UTF-8?q?feat(uat-batch-21):=20a11y=20=E2=80=94=20auth-p?=
=?UTF-8?q?age=20link=20contrast=20bumped=20past=20AA?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
`text-[#007bff] hover:underline` (light blue, 12-14px) was falling
below WCAG 1.4.3 AA contrast against the auth shell's white card.
Bumped to `text-[#0058b3]` (darker variant of the same hue) and
added `underline underline-offset-2 hover:no-underline` so the link
is always visibly underlined as a backup affordance.
Affects: /login, /reset-password, /set-password, /portal/login,
/portal/forgot-password, portal password-set-form. Button bg colors
(white-text on the same blue) are unchanged — those pass AA at
button sizes.
tsc clean. 1419/1419 vitest pass.
Co-Authored-By: Claude Opus 4.7 (1M context)
---
src/app/(auth)/login/page.tsx | 5 ++++-
src/app/(auth)/reset-password/page.tsx | 10 ++++++++--
src/app/(auth)/set-password/page.tsx | 5 ++++-
src/app/(portal)/portal/forgot-password/page.tsx | 7 +++++--
src/app/(portal)/portal/login/page.tsx | 5 ++++-
src/components/portal/password-set-form.tsx | 4 ++--
6 files changed, 27 insertions(+), 9 deletions(-)
diff --git a/src/app/(auth)/login/page.tsx b/src/app/(auth)/login/page.tsx
index 2c639ef7..dd24ca98 100644
--- a/src/app/(auth)/login/page.tsx
+++ b/src/app/(auth)/login/page.tsx
@@ -133,7 +133,10 @@ export default function LoginPage() {
-
+
Forgot password?
diff --git a/src/app/(auth)/reset-password/page.tsx b/src/app/(auth)/reset-password/page.tsx
index ce65132a..e405e31e 100644
--- a/src/app/(auth)/reset-password/page.tsx
+++ b/src/app/(auth)/reset-password/page.tsx
@@ -88,7 +88,10 @@ export default function ResetPasswordPage() {
If an account exists for that email address, we have sent a password reset link. Please
check your inbox and spam folder.
-
+
Back to sign in
@@ -118,7 +121,10 @@ export default function ResetPasswordPage() {
Remember your password?{' '}
-
+
Sign in
diff --git a/src/app/(auth)/set-password/page.tsx b/src/app/(auth)/set-password/page.tsx
index feff73b9..0c0b0481 100644
--- a/src/app/(auth)/set-password/page.tsx
+++ b/src/app/(auth)/set-password/page.tsx
@@ -120,7 +120,10 @@ function SetPasswordInner() {
Please use the link from the email we sent you. If the link is broken, ask your
administrator for a new one.
-
+
Back to sign in
diff --git a/src/app/(portal)/portal/forgot-password/page.tsx b/src/app/(portal)/portal/forgot-password/page.tsx
index b7b87fd2..618af931 100644
--- a/src/app/(portal)/portal/forgot-password/page.tsx
+++ b/src/app/(portal)/portal/forgot-password/page.tsx
@@ -44,7 +44,7 @@ export default function PortalForgotPasswordPage() {
Back to sign in
@@ -95,7 +95,10 @@ export default function PortalForgotPasswordPage() {
Remember your password?{' '}
-
+
Sign in
diff --git a/src/app/(portal)/portal/login/page.tsx b/src/app/(portal)/portal/login/page.tsx
index bd8601c6..706abd6e 100644
--- a/src/app/(portal)/portal/login/page.tsx
+++ b/src/app/(portal)/portal/login/page.tsx
@@ -91,7 +91,10 @@ export default function PortalLoginPage() {
-
+
Forgot password?
diff --git a/src/components/portal/password-set-form.tsx b/src/components/portal/password-set-form.tsx
index 51daa85f..d329698a 100644
--- a/src/components/portal/password-set-form.tsx
+++ b/src/components/portal/password-set-form.tsx
@@ -128,7 +128,7 @@ export function PasswordSetForm({
Request a new link
@@ -148,7 +148,7 @@ export function PasswordSetForm({