From 9a02e896f6e7a3265c6832a2d790ce84a9644521 Mon Sep 17 00:00:00 2001 From: David Rybar Date: Thu, 21 May 2026 12:02:21 +0200 Subject: [PATCH] fix(theme): load design-tokens.css on login pages base_login.html only loaded style-custom.css, leaving the --ds-* tokens undefined. The Google SSO btn-primary used background-color: var(--ds-primary) with color: white, rendering invisible (white text on a card with transparent button bg) on both navy and blue themes. Load design-tokens.css the same way base.html does so the button picks up its green fill. --- CHANGELOG.md | 12 ++++++++---- app/web/templates/base_login.html | 5 +++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d625007..1556390 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -79,10 +79,14 @@ CalVer image tags (`stable-YYYY.MM.N`, `dev-YYYY.MM.N`) are produced for every C ### Fixed - Pre-login pages (`/login`, magic-link screens, first-time `/setup`) now honour the configured `instance.theme`. `base_login.html` sets - `` from `instance_theme`, and the navy - variant flips the `.login-features` hero panel from brand-blue - `--primary` to the deep-navy gradient — eliminating the jarring - blue → navy flip after sign-in on navy-configured instances. + `` from `instance_theme`, additionally loads + `design-tokens.css` so the `.btn-primary` Google SSO button gets + its `--ds-primary` green fill (previously rendered as invisible + white text on a white card because the `--ds-*` tokens weren't + defined), and the navy variant flips the `.login-features` hero + panel from brand-blue `--primary` to the deep-navy gradient — + eliminating the jarring blue → navy flip after sign-in on + navy-configured instances. - Skill / agent detail pages nested inside a Flea Market plugin rendered the parent plugin's title on the hero instead of the skill/agent name. The frontend fallback chain branched on diff --git a/app/web/templates/base_login.html b/app/web/templates/base_login.html index d8b6fe0..5e51e6c 100644 --- a/app/web/templates/base_login.html +++ b/app/web/templates/base_login.html @@ -5,6 +5,11 @@ {% block title %}Data Analyst Portal{% endblock %} + {# Design-system tokens (`--ds-*`) — required so `.btn-primary` + (Google SSO on /login) gets its `--ds-primary` green fill; + otherwise the white button text renders invisible on a white + card. Same reason base.html loads it globally. #} + {% include '_theme.html' %}