diff --git a/web/src/components/layout/AppShell.tsx b/web/src/components/layout/AppShell.tsx index 76973e9..a8c7ec2 100644 --- a/web/src/components/layout/AppShell.tsx +++ b/web/src/components/layout/AppShell.tsx @@ -43,12 +43,23 @@ export function AppShell() { // max-w-5xl reading measure the other pages use (#107). const canvasRoute = inEditor || inPublicGarden const showBottomNav = !!user && !canvasRoute + // On a phone the editor is a full-screen canvas — the same reason the bottom + // bar hides there. The global top bar (brand + account) is then pure chrome + // above the garden, so hide it too and let the editor's own strip carry a back + // affordance; desktop keeps the header. Only the editor, not the public view, + // which has no strip of its own to fall back on. + const hideHeaderOnMobile = inEditor const visibleSections = sections.filter((s) => !s.adminOnly || user?.isAdmin) return (
-
+
{/* The bar matches the content width below: constrained on reading pages, edge-to-edge on the canvas routes so the brand aligns with the editor. */}