From c8bba7ff9d1d45966dc03c072f4ea16bc9c47177 Mon Sep 17 00:00:00 2001 From: Daniel John Murray Date: Fri, 11 Sep 2026 13:47:42 +0700 Subject: [PATCH 1/2] fix(frontend): reset BYO hint paragraph margins --- frontend/src/v2/v2.css | 1 + 1 file changed, 1 insertion(+) diff --git a/frontend/src/v2/v2.css b/frontend/src/v2/v2.css index 442d6e2c8..76b85336c 100644 --- a/frontend/src/v2/v2.css +++ b/frontend/src/v2/v2.css @@ -5694,6 +5694,7 @@ body.modern-ui.v2-canvas { .v2-byo__hint { font-size: 12px; color: var(--v2-text-tertiary); + margin: 0; } .v2-byo__error { padding: 10px 12px; From 3b043aee930e0600b1f7ee353aa31e6fc8aa0af9 Mon Sep 17 00:00:00 2001 From: Daniel John Murray Date: Fri, 11 Sep 2026 13:49:36 +0700 Subject: [PATCH 2/2] test(frontend): guard BYO hint spacing invariant --- frontend/src/v2/__tests__/v2-layout-invariants.test.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/frontend/src/v2/__tests__/v2-layout-invariants.test.ts b/frontend/src/v2/__tests__/v2-layout-invariants.test.ts index 78bb77aee..0bf0cc196 100644 --- a/frontend/src/v2/__tests__/v2-layout-invariants.test.ts +++ b/frontend/src/v2/__tests__/v2-layout-invariants.test.ts @@ -145,6 +145,10 @@ describe('v2 layout invariants (CSS rule presence)', () => { const appsManagement = read('../../components/AppsManagement.tsx'); const podModel = read('../../../../backend/models/Pod.ts'); + test('BYO hints do not add paragraph margins to flex gaps', () => { + expect(ruleBody(v2, '.v2-byo__hint')).toContain('margin: 0'); + }); + test('Your Team card name owns its line so the category chip cannot crush it', () => { // Direction C: the name sits in its own column of the card head; the // crush guard is min-width 0 on the name and the head, not a flex basis.