@@ -99,7 +99,7 @@ export const OverviewTab = memo(function OverviewTabComponent({
9999 const isCanceled = currentPlan ?. scenario === "cancel" ;
100100
101101 return (
102- < div className = "flex h-full flex-col overflow-y-auto lg:flex-row lg:overflow-hidden" >
102+ < div className = "flex h-full flex-col overflow-y-auto lg:grid lg:h-full lg:grid-cols-[1fr_20rem] lg:overflow-hidden" >
103103 < CancelSubscriptionDialog
104104 currentPeriodEnd = { cancelTarget ?. currentPeriodEnd }
105105 isLoading = { isLoading }
@@ -114,7 +114,7 @@ export const OverviewTab = memo(function OverviewTabComponent({
114114 />
115115
116116 { /* Main Content */ }
117- < div className = "shrink-0 lg:min-h-0 lg:flex-1 lg:overflow-y-auto" >
117+ < div className = "shrink-0 lg:h-full lg:min-h-0 lg:overflow-y-auto" >
118118 < div className = "border-b px-5 py-4" >
119119 < h2 className = "font-semibold" > Usage</ h2 >
120120 < p className = "text-muted-foreground text-sm" >
@@ -138,7 +138,7 @@ export const OverviewTab = memo(function OverviewTabComponent({
138138 </ div >
139139
140140 { /* Sidebar */ }
141- < div className = "flex w-full shrink-0 flex-col border-t bg-muted/30 lg:w-80 lg:overflow-y-auto lg:border-t-0 lg:border-l" >
141+ < div className = "flex w-full shrink-0 flex-col border-t bg-muted/30 lg:h-full lg:w-auto lg:overflow-y-auto lg:border-t-0 lg:border-l" >
142142 { /* Plan */ }
143143 < div className = "border-b p-5" >
144144 < div className = "mb-3 flex items-center justify-between" >
@@ -172,15 +172,15 @@ export const OverviewTab = memo(function OverviewTabComponent({
172172 </ div >
173173
174174 { /* Payment Method + Actions - inline on mobile, stacked on desktop */ }
175- < div className = "flex flex-1 flex-col gap-5 p-5 sm:flex-row sm:items-start lg:flex-col lg:gap-0 lg:p-0" >
175+ < div className = "grid gap-5 p-5 sm:grid-cols-2 lg:grid-cols-1 lg:gap-0 lg:p-0" >
176176 { /* Payment Method */ }
177- < div className = "w-full sm:w-auto sm:flex-1 lg:w-full lg:border-b lg:p-5" >
177+ < div className = "w-full lg:w-auto lg:border-b lg:p-5" >
178178 < h3 className = "mb-3 font-semibold" > Payment Method</ h3 >
179179 < CreditCardDisplay customer = { customer } />
180180 </ div >
181181
182182 { /* Actions */ }
183- < div className = "flex w-full flex-col gap-2 sm:w-auto sm:min-w-40 lg:w-full lg:p-5" >
183+ < div className = "flex w-full flex-col gap-2 lg:w-auto lg:p-5" >
184184 { isCanceled ? (
185185 < Button className = "w-full" onClick = { onNavigateToPlans } >
186186 Reactivate Plan
@@ -240,7 +240,7 @@ function CreditCardDisplay({ customer }: { customer: Customer | null }) {
240240
241241 if ( ! card ) {
242242 return (
243- < div className = "flex aspect-[1.586/1] w-full max-w-xs flex-col items-center justify-center rounded-xl border border-dashed bg-background sm:max-w-56 lg:max-w-none " >
243+ < div className = "flex aspect-[1.586/1] w-full flex-col items-center justify-center rounded-xl border border-dashed bg-background" >
244244 < CreditCardIcon
245245 className = "mb-2 text-muted-foreground"
246246 size = { 28 }
@@ -258,7 +258,7 @@ function CreditCardDisplay({ customer }: { customer: Customer | null }) {
258258 const brand = card . brand ?. toLowerCase ( ) || "card" ;
259259
260260 return (
261- < div className = "relative aspect-[1.586/1] w-full max-w-xs sm:max-w-56 lg:max-w-none " >
261+ < div className = "relative aspect-[1.586/1] w-full" >
262262 < div
263263 className = { cn (
264264 "absolute inset-0 flex flex-col justify-between overflow-hidden rounded-xl p-4" ,
@@ -560,8 +560,8 @@ function ErrorState({
560560
561561function OverviewSkeleton ( ) {
562562 return (
563- < div className = "flex h-full flex-col overflow-y-auto lg:flex-row lg:overflow-hidden" >
564- < div className = "shrink-0 lg:min-h-0 lg:flex-1 lg:overflow-y-auto" >
563+ < div className = "flex h-full flex-col overflow-y-auto lg:grid lg:grid-cols-[1fr_20rem] lg:overflow-hidden" >
564+ < div className = "shrink-0 lg:h-full lg:min-h-0 lg:overflow-y-auto" >
565565 < div className = "border-b px-5 py-4" >
566566 < Skeleton className = "mb-1 h-5 w-20" />
567567 < Skeleton className = "h-4 w-40" />
@@ -581,7 +581,7 @@ function OverviewSkeleton() {
581581 ) ) }
582582 </ div >
583583 </ div >
584- < div className = "flex w-full shrink-0 flex-col border-t bg-muted/30 lg:w-80 lg:overflow-y-auto lg:border-t-0 lg:border-l" >
584+ < div className = "flex w-full shrink-0 flex-col border-t bg-muted/30 lg:h-full lg:w-auto lg:overflow-y-auto lg:border-t-0 lg:border-l" >
585585 < div className = "border-b p-5" >
586586 < Skeleton className = "mb-3 h-5 w-28" />
587587 < div className = "flex items-center gap-3" >
@@ -592,12 +592,12 @@ function OverviewSkeleton() {
592592 </ div >
593593 </ div >
594594 </ div >
595- < div className = "flex flex-1 flex-col gap-5 p-5 sm:flex-row sm:items-start lg:flex-col lg:gap-0 lg:p-0" >
596- < div className = "w-full sm:w-auto sm:flex-1 lg:w-full lg:border-b lg:p-5" >
595+ < div className = "grid gap-5 p-5 sm:grid-cols-2 lg:grid-cols-1 lg:gap-0 lg:p-0" >
596+ < div className = "w-full lg:w-auto lg:border-b lg:p-5" >
597597 < Skeleton className = "mb-3 h-5 w-32" />
598- < Skeleton className = "aspect-[1.586/1] w-full max-w-xs rounded-xl sm:max-w-56 lg:max-w-none " />
598+ < Skeleton className = "aspect-[1.586/1] w-full rounded-xl" />
599599 </ div >
600- < div className = "flex w-full flex-col gap-2 sm:w-auto sm:min-w-40 lg:w-full lg:p-5" >
600+ < div className = "flex w-full flex-col gap-2 lg:w-auto lg:p-5" >
601601 < Skeleton className = "h-10 w-full" />
602602 < Skeleton className = "h-10 w-full" />
603603 < Skeleton className = "h-10 w-full" />
0 commit comments