From 9f21d9f20d318afb86e75a7d2e92eaf54dc6dd90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Thu, 9 Jul 2026 12:05:34 +0200 Subject: [PATCH] fix(cards): retire banned p-5 shells and accent header icons Bring the structural card-anatomy offenders onto the spacing scale. The cycle wellness-tile family (ring tile, phase-education, insight summary, cycle view) and the insights wellness-scores tile drop banned p-5/px-5 py-5 for p-4 md:p-6 and keep their premium hue surface; their header and info glyphs move off text-primary to foreground, spinners to muted. The onboarding hand-rolled shells (anamnesis card, baseline form, getting-started checklist, tour tooltip) drop p-5/space-y-5/rounded-2xl for p-4 md:p-6/space-y-4/rounded-xl. settings/anamnesis-section moves its three raw Card+CardTitle shells onto SettingsCard + SettingsCardHeader. --- .../cycle/cycle-insight-summary-card.tsx | 2 +- src/components/cycle/cycle-ring-tile.tsx | 2 +- src/components/cycle/cycle-view.tsx | 8 +-- src/components/cycle/phase-education-card.tsx | 5 +- .../insights/derived/wellness-scores.tsx | 2 +- src/components/onboarding/anamnesis-card.tsx | 4 +- src/components/onboarding/baseline-form.tsx | 2 +- .../onboarding/getting-started-checklist.tsx | 2 +- src/components/onboarding/tour.tsx | 4 +- src/components/settings/anamnesis-section.tsx | 68 ++++++++----------- 10 files changed, 43 insertions(+), 56 deletions(-) diff --git a/src/components/cycle/cycle-insight-summary-card.tsx b/src/components/cycle/cycle-insight-summary-card.tsx index a143755b4..1fd2c4f48 100644 --- a/src/components/cycle/cycle-insight-summary-card.tsx +++ b/src/components/cycle/cycle-insight-summary-card.tsx @@ -114,7 +114,7 @@ export function CycleInsightSummaryCard() { data-slot="cycle-insight-summary" data-phase={phase ?? "none"} style={{ "--tile-hue": hue } as React.CSSProperties} - className="wellness-tile wellness-tile-rise rounded-xl px-5 py-5" + className="wellness-tile wellness-tile-rise rounded-xl p-4 md:p-6" > {/* Zone 1 — the current phase / cycle-day read. */}
diff --git a/src/components/cycle/cycle-ring-tile.tsx b/src/components/cycle/cycle-ring-tile.tsx index fe65f734e..c857f1779 100644 --- a/src/components/cycle/cycle-ring-tile.tsx +++ b/src/components/cycle/cycle-ring-tile.tsx @@ -109,7 +109,7 @@ export function CycleRingTile({ className }: { className?: string }) { // per-phase hue arc inside the ring is the only saturated thing. style={{ "--tile-hue": hue } as React.CSSProperties} className={cn( - "wellness-tile focus-visible:ring-ring flex flex-col gap-4 rounded-xl p-5 focus-visible:ring-2 focus-visible:outline-none", + "wellness-tile focus-visible:ring-ring flex flex-col gap-4 rounded-xl p-4 focus-visible:ring-2 focus-visible:outline-none md:p-6", play && "wellness-tile-rise", className, )} diff --git a/src/components/cycle/cycle-view.tsx b/src/components/cycle/cycle-view.tsx index a085ffb33..0d7b7d450 100644 --- a/src/components/cycle/cycle-view.tsx +++ b/src/components/cycle/cycle-view.tsx @@ -219,13 +219,13 @@ export function CycleView() { : undefined } className={cn( - "wellness-tile flex flex-col items-center gap-3 rounded-xl px-5 py-5", + "wellness-tile flex flex-col items-center gap-3 rounded-xl p-4 md:p-6", play && "wellness-tile-rise", )} > {loading ? (
- +
) : calendarError ? (
@@ -347,7 +347,7 @@ export function CycleView() { className="text-muted-foreground bg-muted/40 mb-3 flex items-start gap-2 rounded-lg p-3 text-sm" >