Skip to content

fix(website): make the mobile menu reachable without a sticky header - #21

Merged
Oba-One merged 3 commits into
mainfrom
fix/mobile-menu-stacking
Oct 5, 2026
Merged

Oba-One merged 3 commits into
mainfrom
fix/mobile-menu-stacking

Conversation

@Oba-One

@Oba-One Oba-One commented Oct 5, 2026

Copy link
Copy Markdown
Member

Summary

On phones the open menu rendered behind the page, so none of its four links could be tapped. This carries the contributor's fix from #9 unchanged and adds one rule so the header keeps scrolling away with the page as it does today.

  • The shared layer rule in GpLayout.astro put the header and the page on the same level. The page comes later in the document, so it painted over the open menu. Taking the header out of that rule (the commit from fix(website): remove global z-index override for header #9) fixes the layering.
  • On its own, that lets the header fall back to position: sticky from SiteHeader.astro. The header has no background, so page content would show through the logo and nav while scrolling. The second commit keeps the header in normal flow. Its z-index: 20 now comes from SiteHeader.astro alone.

DESIGN.md describes a sticky header. Returning to that needs a header background and is a separate design decision, so it is left out here.

Verification

  • bun run ui:check: 0 hard, 0 warn.
  • Rendered proof (built-in browser, unauthenticated, public production with this exact CSS applied in the page): at 375×812 on /, reachable menu links went from 0 of 4 to 4 of 4. The header computes position: relative; z-index: 20 and scrolls away with the page.
  • Not run: a local build. Dependencies are not installed in this checkout. The Pages workflow builds on merge, and a failed build leaves the deployed site untouched.
  • After merge: the same check against production itself.

Merge with a merge commit, not a squash, so the commit from #9 stays in the history and that pull request closes as merged.

Fixes PRD-1115

🤖 Generated with Claude Code

dtczelo and others added 3 commits June 15, 2026 12:18
Brings in dtczelo's commit unchanged so the pull request closes as
merged. The follow-up commit keeps the header in normal flow.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The shared layer rule put the header on the same level as the page, so
the page painted over the open mobile menu and none of its links could
be tapped. With the header out of that rule it falls back to
SiteHeader's sticky position, and the header has no background, so page
content would show through it while scrolling.

Keep the header in normal flow and let SiteHeader's own z-index place
it above the page.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 5, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-05T04:28:48.781069Z a11f6ec PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@coderabbitai

coderabbitai Bot commented Oct 5, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

🧰 Additional context used
📚 Code guidelines (3)
CLAUDE.md — auto-discovered
AGENTS.md — auto-discovered
packages/website/CLAUDE.md — auto-discovered

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Essentials
  • Run ID: 3fedc086-1ca3-436f-bf96-c1b03d2dc2d5
📥 Commits

Reviewing files that changed from the base of the PR and between b1ead9d and a11f6ec.

📒 Files selected for processing (1)
  • packages/website/src/layouts/GpLayout.astro

Included review availability: This review used your included allowance. 0 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 1 review per hour.

📜 Recent review details
⏰ Context from checks skipped due to timeout. (4)
  • GitHub Check: CodeQL
  • GitHub Check: Analyze (python)
  • GitHub Check: Analyze (javascript-typescript)
  • GitHub Check: Analyze (actions)
🧰 Additional context used
📓 Path-based instructions (7)
For frontend, UI, CSS, accessibility, browser-proof, or web-design changes in `packages/website`, run `bun run agentic:guidance` first, then follow `packages/website/DESIGN.md` and the website token system.

📄 CodeRabbit inference engine (CLAUDE.md)

Files:

  • packages/website/src/layouts/GpLayout.astro
Before frontend, UI, CSS, accessibility, browser-proof, or web-design work in `packages/website`, consult `DESIGN.md`, `gp-tokens.css`, and relevant UI primitives, and run `bun run agentic:guidance`.

📄 CodeRabbit inference engine (AGENTS.md)

Files:

  • packages/website/src/layouts/GpLayout.astro
Never expose `DATABASE_URL` or database credentials to the public website deploy, Keystatic content, generated JSON, browser bundles, or future Vercel projects; credentials belong only on private Fly services.

📄 CodeRabbit inference engine (CLAUDE.md)

Files:

  • packages/website/src/layouts/GpLayout.astro
Prefer semantic HTML, native controls, platform CSS, and browser primitives; preserve landmarks, headings, accessible names, focus states, touch targets, and empty/error/loading states.

📄 CodeRabbit inference engine (CLAUDE.md)

Files:

  • packages/website/src/layouts/GpLayout.astro
Use var(--gp-*) CSS custom properties for all colors, sizes, and spacing; never hardcode hex colors except for data-visualization colors Use var(--gp-font-display) (Spectral) only for display and headlines; var(--gp-font-body) (Manrope) for...

📄 CodeRabbit inference engine (packages/website/CLAUDE.md)

Files:

  • packages/website/src/layouts/GpLayout.astro
Use semantic HTML elements (button, a) instead of divs with onclick; add label for on every input; use cursor: pointer on actionables; ensure one main landmark per page; maintain stable layout with no load-time shift

📄 CodeRabbit inference engine (packages/website/CLAUDE.md)

Files:

  • packages/website/src/layouts/GpLayout.astro
Keep implementation within the smallest applicable package boundary and do not expand beyond issue acceptance criteria.

📄 CodeRabbit inference engine (AGENTS.md)

Files:

  • packages/website/src/layouts/GpLayout.astro
🔇 Additional comments (1)
packages/website/src/layouts/GpLayout.astro (1)

148-153: LGTM!


📝 Summary

Summary by CodeRabbit

  • Bug Fixes
    • Adjusted the site header’s layering relative to the main content and footer to improve how page elements overlap.

Walkthrough

The layout now positions .gp-site-header without assigning it a z-index. The main content and footer retain their relative positioning and z-index: 1.

Changes

Header stacking

Layer / File(s) Summary
Separate header positioning
packages/website/src/layouts/GpLayout.astro
The header has position: relative without a z-index. The main content and footer retain position: relative and z-index: 1.

Priority: ➖ Normal

Estimated code review effort: 1 (Trivial) | ~5 minutes

Change: Bug fix

Merge Risk: ⚪ Minimal · up to a11f6

The mobile menu remains above page content, with no actionable merge-blocking risk introduced by this change.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly describes the mobile menu fix and the header behavior change.
Description check ✅ Passed The description explains the menu layering fix, header positioning, and reported verification.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Warning

MCP server "posthog" is unavailable: the server marks every selected tool as able to make changes, and CodeRabbit only uses read-only tools.


MCP server "posthog" is unavailable: the server marks every selected tool as able to make changes, and CodeRabbit only uses read-only tools.


I’m a rabbit, hopping by,
I see the header’s z-index fly.
Main and footer stay at one,
The layout’s little change is done.
I nibble greens and thump my feet,
Then bounce away, pleased and neat.

Comment @coderabbitai help to get the list of available commands.

@Oba-One
Oba-One merged commit 0d3e479 into main Oct 5, 2026
5 checks passed
@Oba-One
Oba-One deleted the fix/mobile-menu-stacking branch October 5, 2026 04:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants