Skip to content

Commit 0d86ed0

Browse files
authored
fix(onboarding): make product selection continue button reachable on mobile
The product selection screen vertically centered its content inside a 100vh container. On mobile browsers, 100vh includes the area behind the bottom browser chrome, so the centered Continue button sat behind it — and because the content fit within 100vh, the scroll container never grew, leaving the button unreachable without force-scrolling. Top-align the content on mobile (justify-start) so the scroll container can grow and reveal the button, and add safe-area-aware bottom padding so it clears the browser chrome. All changes are gated behind the sm breakpoint, leaving desktop layout unchanged. Generated-By: PostHog Code Task-Id: c312ed5c-5699-40b3-99ea-4c2ccc67129a
1 parent 9edd076 commit 0d86ed0

2 files changed

Lines changed: 4 additions & 4 deletions

File tree

frontend/src/scenes/onboarding/productSelection/variants/ProductCarousel.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,7 @@ export function ProductCarousel({ mode, recommendationSource }: ProductCarouselP
428428
: "Pick your starting point — you'll unlock the rest soon enough."
429429

430430
return (
431-
<div className="SimplifiedProductSelection flex flex-col flex-1 w-full min-h-full p-4 items-center justify-center bg-primary overflow-x-hidden">
431+
<div className="SimplifiedProductSelection flex flex-col flex-1 w-full min-h-full p-4 pb-[max(env(safe-area-inset-bottom),80px)] sm:pb-4 items-center justify-start sm:justify-center bg-primary overflow-x-hidden">
432432
{/* Subtle product color wash */}
433433
<div
434434
className="absolute inset-0 transition-colors duration-700 pointer-events-none"
@@ -438,7 +438,7 @@ export function ProductCarousel({ mode, recommendationSource }: ProductCarouselP
438438
}}
439439
/>
440440

441-
<div className="relative flex flex-col items-center justify-center flex-grow w-full max-w-2xl">
441+
<div className="relative flex flex-col items-center justify-start sm:justify-center flex-grow w-full max-w-2xl">
442442
<div className="flex justify-center mb-4">
443443
<Logomark />
444444
</div>

frontend/src/scenes/onboarding/productSelection/variants/legacy/LegacyProductSelection.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -252,8 +252,8 @@ export function LegacyProductSelection(): JSX.Element {
252252
const { currentStep } = useValues(productSelectionLogic)
253253

254254
return (
255-
<div className="flex flex-col flex-1 w-full min-h-full p-4 items-center justify-center bg-primary overflow-x-hidden">
256-
<div className="flex flex-col items-center justify-center flex-grow w-full">
255+
<div className="flex flex-col flex-1 w-full min-h-full p-4 pb-[max(env(safe-area-inset-bottom),80px)] sm:pb-4 items-center justify-start sm:justify-center bg-primary overflow-x-hidden">
256+
<div className="flex flex-col items-center justify-start sm:justify-center flex-grow w-full">
257257
{currentStep === 'choose_path' && <ChoosePathStep />}
258258
{currentStep === 'product_selection' && <ProductSelectionStep />}
259259
{currentStep === 'choose_path' && <OnboardingExitAction />}

0 commit comments

Comments
 (0)