From 1476c905707d38c7719e4d3d6fea0706afcb618b Mon Sep 17 00:00:00 2001 From: Tyler Date: Sat, 20 Jun 2026 16:51:17 -0600 Subject: [PATCH] style(frontend): mobile responsive polish for Dashboard/Providers/Upload/Reconciliation --- src/pages/Dashboard.tsx | 10 +++++----- src/pages/Providers.tsx | 6 +++--- src/pages/Reconciliation.tsx | 30 ++++++++++++++++-------------- src/pages/Upload.tsx | 16 +++++++++------- 4 files changed, 33 insertions(+), 29 deletions(-) diff --git a/src/pages/Dashboard.tsx b/src/pages/Dashboard.tsx index ea76b32..31299cd 100644 --- a/src/pages/Dashboard.tsx +++ b/src/pages/Dashboard.tsx @@ -108,7 +108,7 @@ export function Dashboard() { const sectionBase = kpiBase + kpiStep * 5 + 60; // after the last KPI return ( -
+
{/* Hero */}
-
-
+
+
Today · {fmt.date(new Date().toISOString())}
-

+

Good morning, Jordan.

@@ -157,7 +157,7 @@ export function Dashboard() { {/* KPIs — every card carries a trend. */}

+
Providers
-

Provider directory

+

Provider directory

NPIs registered with the clearinghouse for 837P submission and 835 remittance retrieval. @@ -49,7 +49,7 @@ export function Providers() { {items.map((p) => (

diff --git a/src/pages/Reconciliation.tsx b/src/pages/Reconciliation.tsx index d57ebd1..044511c 100644 --- a/src/pages/Reconciliation.tsx +++ b/src/pages/Reconciliation.tsx @@ -27,17 +27,17 @@ export function ReconciliationPage() { if (unmatched.isLoading) { return ( -
+
Reconciliation
-

+

Manual pairing

-
+
@@ -51,13 +51,13 @@ export function ReconciliationPage() { ? unmatched.error.message : String(unmatched.error); return ( -
+
Reconciliation
-

+

Manual pairing

@@ -78,13 +78,13 @@ export function ReconciliationPage() { if (empty) { return ( -
+
Reconciliation
-

+

Manual pairing

@@ -125,13 +125,13 @@ export function ReconciliationPage() { }; return ( -
+
Reconciliation
-

+

Manual pairing

@@ -139,7 +139,7 @@ export function ReconciliationPage() {

-
+
{/* Claims column */}

@@ -155,7 +155,7 @@ export function ReconciliationPage() { onClick={() => setSelectedClaim(c.id)} aria-pressed={active} className={cn( - "w-full text-left p-3 rounded-md border transition-colors", + "w-full text-left p-3 min-h-[44px] rounded-md border transition-colors", active ? "border-accent bg-accent/5" : "border-border/60 hover:border-border" @@ -190,7 +190,7 @@ export function ReconciliationPage() { onClick={() => setSelectedRemit(r.id)} aria-pressed={active} className={cn( - "w-full text-left p-3 rounded-md border transition-colors", + "w-full text-left p-3 min-h-[44px] rounded-md border transition-colors", active ? "border-accent bg-accent/5" : "border-border/60 hover:border-border" @@ -215,10 +215,11 @@ export function ReconciliationPage() {

-
+
{selectedClaim || selectedRemit ? ( - + {selectedClaim ? `Claim ${selectedClaim}` : "No claim"} {" · "} {selectedRemit ? `Remit ${selectedRemit}` : "No remit"} diff --git a/src/pages/Upload.tsx b/src/pages/Upload.tsx index 1eea36b..343e6f7 100644 --- a/src/pages/Upload.tsx +++ b/src/pages/Upload.tsx @@ -233,7 +233,7 @@ function ClaimCard837({ claim }: { claim: ClaimOutput }) {
Service lines
-
+
@@ -403,7 +403,7 @@ function ClaimCard835({ claim }: { claim: ClaimPayment }) {
Service payments
-
+
@@ -584,13 +584,13 @@ export function Upload() { } return ( -
+
Upload · EDI parser
-

+

Parse an X12 file

@@ -665,7 +665,7 @@ export function Upload() { if (e.key === "Enter" || e.key === " ") inputRef.current?.click(); }} className={cn( - "relative flex flex-col items-center justify-center gap-2 rounded-lg border border-dashed border-border/60 bg-muted/20 px-6 py-8 cursor-pointer transition-colors", + "relative flex flex-col items-center justify-center gap-2 rounded-lg border border-dashed border-border/60 bg-muted/20 px-6 py-10 sm:py-8 min-h-[140px] sm:min-h-[120px] cursor-pointer transition-colors", "hover:bg-muted/30 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring" )} > @@ -704,7 +704,7 @@ export function Upload() { />

-
+
{api.isConfigured ? ( @@ -721,12 +721,13 @@ export function Upload() { )}
-
+
{file ? ( @@ -734,6 +735,7 @@ export function Upload() {