Skip to content

Commit 41866f8

Browse files
i-anasopclaude
andcommitted
fix: onboarding nav fully visible on phones, clear of Calm-corner heart
On phone viewports the whole onboarding page scrolled, pushing Back/Next below the fold, and the fixed Calm-corner heart (bottom-left) overlapped the Back button. Phone layout is now a flex column: the card scrolls internally while the nav stays pinned and is lifted ~78px so it sits above the heart, which tucks into the very corner. Tag the stage with data-screen for scoping. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 0d8cfbd commit 41866f8

2 files changed

Lines changed: 19 additions & 3 deletions

File tree

app/globals.css

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -893,8 +893,9 @@ input,textarea{font-family:var(--body);}
893893
.ob-nav{position:absolute;bottom:30px;left:0;right:0;padding:0;}
894894
}
895895
@media (max-width:760px){
896-
.ob-page{overflow-y:auto;align-items:start;padding-top:14px;}
897-
.ob-page > .card{min-height:0;}
896+
/* flex column: card scrolls inside, nav is ALWAYS visible at the bottom */
897+
.ob-page{display:flex;flex-direction:column;overflow:hidden;padding:12px 10px 0;}
898+
.ob-page > .card{flex:1 1 auto;min-height:0;overflow-y:auto;margin:0 auto;}
898899
}
899900

900901
/* floating calm button must never cover the last content on phones */
@@ -978,3 +979,18 @@ input,textarea{font-family:var(--body);}
978979
.ob-page > .card .tile{padding:11px 12px!important;}
979980
.ob-page > .card .tile .chip.sm{font-size:11px!important;padding:5px 9px!important;}
980981
}
982+
983+
/* onboarding nav: pinned + fully visible on phones, lifted clear of the
984+
fixed Calm-corner heart (bottom-left, ~66px tall) and the corner doodles */
985+
@media (max-width:760px){
986+
.ob-nav{position:static;flex:0 0 auto;padding:12px 0 78px;gap:10px;background:transparent;}
987+
.ob-nav > div{flex-wrap:wrap;justify-content:center;gap:10px;}
988+
/* keep the Calm-corner button tucked in the very corner, below the nav row */
989+
.stage[data-screen="onboard"] .calm-btn{bottom:14px;left:14px;width:44px;height:44px;}
990+
/* the page-corner heart/star/cloud sit low-left/low-right and clashed with the
991+
nav — lift them up so they stay decorative background, never over buttons */
992+
.ob-page > .doodles .doodle{opacity:.5;}
993+
.ob-page > .doodles .doodle:nth-child(2){top:46% !important;} /* star */
994+
.ob-page > .doodles .doodle:nth-child(3){top:58% !important;} /* heart */
995+
.ob-page > .doodles .doodle:nth-child(5){top:52% !important;} /* cloud */
996+
}

app/page.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ export default function EchoApp() {
9393
if (!booted) return <BootSkeleton />;
9494

9595
return (
96-
<div className={'stage' + (prefs.reducedMotion ? ' calm' : '')}>
96+
<div className={'stage' + (prefs.reducedMotion ? ' calm' : '')} data-screen={screen}>
9797
<div className="screen is-active" key={screen}>
9898
<Active />
9999
</div>

0 commit comments

Comments
 (0)