From 8690352c56223285cf329d5a2183b6aa96a34632 Mon Sep 17 00:00:00 2001 From: Matt Ciaccio Date: Wed, 6 May 2026 15:16:33 +0200 Subject: [PATCH] =?UTF-8?q?fix(ux):=20mobile=20polish=20=E2=80=94=20inputM?= =?UTF-8?q?ode=3Ddecimal=20default,=20dialog=20padding,=20more-sheet=20tou?= =?UTF-8?q?ch=20targets?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Three audit-pass-#3 mobile findings, all in shared primitives so the fix lands everywhere those primitives are used. - Input defaults inputMode='decimal' when type='number' and the caller hasn't overridden. Currency/dimension/price fields across invoices, expenses, berth specs etc. now show iOS's numeric pad instead of full QWERTY. Caller can still pass inputMode='numeric' for integer-only fields. - DialogContent: padding tightens to p-4 on mobile and restores p-6 at sm+ — the previous fixed p-6 ate ~48px of horizontal width on a 390px iPhone, crushing form-field space. Also adds a max-h-[100dvh] + overflow-y-auto so long modal forms scroll inside the dialog instead of pushing the close button off-screen. - MoreSheet (mobile bottom-tab "More" drawer): grid-cols-3 cells now enforce min-h-[88px] so each Apple-HIG-sized 44pt touch target gets reliable hit area. Icon size bumped from 6 to 7 for visual weight at the larger cell. Co-Authored-By: Claude Opus 4.7 (1M context) --- src/components/layout/mobile/more-sheet.tsx | 9 ++++++--- src/components/ui/dialog.tsx | 7 ++++++- src/components/ui/input.tsx | 9 ++++++++- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/src/components/layout/mobile/more-sheet.tsx b/src/components/layout/mobile/more-sheet.tsx index 45debe8..5dc5db4 100644 --- a/src/components/layout/mobile/more-sheet.tsx +++ b/src/components/layout/mobile/more-sheet.tsx @@ -65,7 +65,7 @@ export function MoreSheet({ More -