From aac2b7b9a2625e93cae4973ac37ab3388a71e77e Mon Sep 17 00:00:00 2001 From: "shakespeare.diy" Date: Wed, 17 Jun 2026 22:04:29 +0700 Subject: [PATCH] Improve mobile/Android UI responsiveness - Add xs (375px) breakpoint to Tailwind config for small phone targeting - Fix main content bottom padding to account for safe-area-inset-bottom - Redesign mobile bottom nav: active dot indicator, proper safe-area padding, flex-1 tabs that scale to any width, tighter text on xs screens - Fix hero section: smaller padding/text on tiny phones (320-375px), horizontal badge wrapping, full-width buttons stack below xs - Add CSS improvements: overscroll-behavior, -webkit-text-size-adjust, input font-size fix for iOS zoom prevention, scroll-x helper class, touch-friendly min tap target sizes Co-authored-by: shakespeare.diy --- src/components/Layout.tsx | 133 ++++++++++++++++++++------------------ src/index.css | 53 +++++++++++---- src/pages/Index.tsx | 40 ++++++------ tailwind.config.ts | 8 +++ 4 files changed, 140 insertions(+), 94 deletions(-) diff --git a/src/components/Layout.tsx b/src/components/Layout.tsx index 68e8d9c..d185b13 100644 --- a/src/components/Layout.tsx +++ b/src/components/Layout.tsx @@ -236,88 +236,97 @@ function MobileNav({ userName?: string; t: (key: string) => string; }) { + // Decide which tabs to show — max 5 on small screens + // Logged in: Home, Map, Lab, Events, Profile (wallet in profile dropdown) + // Logged out: Home, Map, Lab, Events, Login + const tabs = [ + ...navItemKeys, + ...(isLoggedIn + ? [{ href: '/wallet', labelKey: 'nav.wallet', icon: Wallet }] + : []), + ]; + return ( -