chore(release): v1.28.43 — visual consistency polish

Verified UI-consistency findings from the campaign's design audit, each
pixel-faithful except the intended correction:

- insights hero band: off-scale py-5/gap-5 → the standard scale; H1
  font-semibold → font-bold; sm:text-[28px] → sm:text-3xl.
- medication-compliance-chart + recent-achievements-card: hand-rolled
  muted h-4 icon + text-sm headers → the standard TileHeader primitive so
  they match sibling tiles.
- achievements stat tiles + clinician-view shells: p-5 → p-4 md:p-6.
- two text-primary header glyphs (research-mode dialog, enroll-mfa) →
  text-foreground (never accent on a header glyph); the deliberate
  badge-boxed icons left untouched.
- SheetHeader now reserves the trailing close-X gutter like DialogHeader,
  closing the latent overlap class for future raw-Sheet consumers.
- five raw Dialogs on phone-reachable surfaces → ResponsiveSheet.
- new bg-card-scoped healthlog/spacing-scale lint (flags p-5/gap-5 etc.
  only on card shells; list-marker insets + half-steps excluded) at error,
  with the five offenders it flagged swept.
- dropped the stale CLAUDE.md '18 PascalCase outliers' line (0 remain).

Every data-slot preserved. No migration.
This commit is contained in:
Marc-André Bombeck committed 2026-07-16 03:44:00 +02:00
1 parent 3a9ed8dd0e
commit 6d83115d16
25 files changed
+717 -544

No files matched your search

+3 -3
View File
@@ -334,7 +334,7 @@ export default function AchievementsPage() {
/>
<div className="grid gap-4 sm:grid-cols-2 lg:grid-cols-3">
<div className="bg-card border-border flex min-h-34 flex-col justify-between rounded-xl border p-5">
<div className="bg-card border-border flex min-h-34 flex-col justify-between rounded-xl border p-4 md:p-6">
<p className="text-muted-foreground text-sm">
{t("achievements.points")}
</p>
@@ -354,7 +354,7 @@ export default function AchievementsPage() {
aria-label={t("achievements.points")}
/>
</div>
<div className="bg-card border-border flex min-h-34 flex-col justify-between rounded-xl border p-5">
<div className="bg-card border-border flex min-h-34 flex-col justify-between rounded-xl border p-4 md:p-6">
<p className="text-muted-foreground text-sm">
{t("achievements.unlocked")}
</p>
@@ -368,7 +368,7 @@ export default function AchievementsPage() {
{t("achievements.remainingUnlocks", { count: remainingUnlocks })}
</p>
</div>
<div className="bg-card border-border min-h-34 rounded-xl border p-5 sm:col-span-2 lg:col-span-1">
<div className="bg-card border-border min-h-34 rounded-xl border p-4 sm:col-span-2 md:p-6 lg:col-span-1">
<p className="text-muted-foreground text-sm">
{t("achievements.nextGoal")}
</p>
+4 -1
View File
@@ -31,7 +31,10 @@ export default function EnrollMfaPage() {
</div>
<div className="space-y-2">
<div className="text-foreground inline-flex items-center gap-2 text-lg font-semibold">
<ShieldAlert className="text-primary h-5 w-5" aria-hidden="true" />
<ShieldAlert
className="text-foreground h-5 w-5"
aria-hidden="true"
/>
{t("auth.enrollMfa.title")}
</div>
<p className="text-muted-foreground text-sm">