From 7499c222e93fb6c06ccf2bd4d384f71a550eb75a Mon Sep 17 00:00:00 2001 From: "soroush.asadi" Date: Fri, 5 Jun 2026 06:38:46 +0330 Subject: [PATCH] Mobile UI polish pass (game-ui-design + mobile-app-ui-design) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Grounded in the two installed design skills: - Safe-area insets (notch/home-bar): .safe-top/.safe-bottom/.safe-x helpers applied to the game-table HUD + bottom hand + reaction button, and to ScreenShell + HomeScreen (covers Profile/Shop/Leaderboard/etc.). - Touch targets ≥44px: table HUD buttons (mute/forfeit/exit) and the reaction button now meet the 44/48px minimum. - HUD readability: seat name/level labels (which float over the felt) get a text-shadow (.hud-shadow) and stronger contrast. Verified: tsc + next build clean; web image rebuilt on :1500. Co-Authored-By: Claude Opus 4.8 --- src/app/globals.css | 13 +++++++++++++ src/components/GameTable.tsx | 17 ++++++++--------- src/components/HomeScreen.tsx | 2 +- src/components/online/ScreenHeader.tsx | 4 ++-- 4 files changed, 24 insertions(+), 12 deletions(-) diff --git a/src/app/globals.css b/src/app/globals.css index 1bcc24b..5b62aae 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -59,6 +59,19 @@ box-shadow: 0 0 10px rgba(212, 175, 55, 0.45); } +/* HUD text stays legible over the dynamic felt/table (game-ui best practice). */ +.hud-shadow { + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6), 0 0 6px rgba(0, 0, 0, 0.4); +} + +/* Safe-area helpers for notch / home-indicator on phones. */ +.safe-top { padding-top: max(0.75rem, env(safe-area-inset-top)); } +.safe-bottom { padding-bottom: max(0.5rem, env(safe-area-inset-bottom)); } +.safe-x { + padding-left: max(0.75rem, env(safe-area-inset-left)); + padding-right: max(0.75rem, env(safe-area-inset-right)); +} + html, body { height: 100%; diff --git a/src/components/GameTable.tsx b/src/components/GameTable.tsx index 6d8c5c4..c324ffc 100644 --- a/src/components/GameTable.tsx +++ b/src/components/GameTable.tsx @@ -76,13 +76,13 @@ export function GameTable({ return (
{/* Top HUD */} -
+
{trump && }