fix(ui): stop CardHeader drawing a phantom gap without a description

grid-rows-[auto_auto] was unconditional, so a header with a title and
no CardDescription still reserved an empty second row track and drew
the gap-2 for it — 32px instead of the intended 24px between heading
and body on desktop. Make the second row conditional on a description
being present, and widen CardAction to row-span-full so it still
tracks the header's row count when an action lands in a
description-less card.

Also correct two assessment cards that had drifted onto gap-1.5
instead of the sanctioned gap-2 compact tier.
This commit is contained in:
Marc-André Bombeck committed 2026-07-30 15:50:14 +02:00
1 parent a4bb2adcb2
commit 14d0eeeb46
5 files changed
+9 -9

No files matched your search

@@ -176,11 +176,11 @@ describe("assessment presentation contract", () => {
);
expect(cardSource).toContain(
'className="animate-insight-in gap-1.5 py-3 md:py-4"',
'className="animate-insight-in gap-2 py-3 md:py-4"',
);
expect(cardSource).toContain('className="text-foreground text-sm"');
expect(moodSource).toContain(
'className="animate-insight-in gap-1.5 py-3 md:py-4"',
'className="animate-insight-in gap-2 py-3 md:py-4"',
);
expect(moodSource).toContain('data-slot="insight-assessment"');
expect(moodBodySource).toContain(