ADDED - Frame site content in a macOS-style shell window on an ambient desktop

- Wrap #smooth-wrapper in an .app-shell: a fixed, inset, rounded, bordered
  panel. Its transform makes it the containing block for the fixed wrapper, so
  ScrollSmoother sizes the scroll viewport to the shell (content scrolls inside
  it) without fighting ScrollSmoother's inline styles.
- Dock and corner controls stay outside the shell, on a brand-tinted 'desktop'
  wallpaper painted on body.
- Reduced-motion path: the shell scrolls its content natively.
This commit is contained in:
moh
2026-09-20 20:16:49 +02:00
parent 31dc72b1c8
commit 2fc0641512
2 changed files with 57 additions and 11 deletions
+9 -7
View File
@@ -45,13 +45,15 @@ export default async function SiteLayout({ children, params }: SiteLayoutProps)
<ScrollSmootherProvider />
<SiteAmbientBackdrop />
<SiteDock defaultLocale={siteSettings.defaultLocale} isSuperAdmin={authenticated} />
<div id="smooth-wrapper">
<div id="smooth-content">
<div className="site-content-frame flex min-h-screen flex-col">
<main className="flex-1">
<PageTransition>{children}</PageTransition>
</main>
<SiteFooter defaultLocale={siteSettings.defaultLocale} />
<div className="app-shell">
<div id="smooth-wrapper">
<div id="smooth-content">
<div className="site-content-frame flex min-h-screen flex-col">
<main className="flex-1">
<PageTransition>{children}</PageTransition>
</main>
<SiteFooter defaultLocale={siteSettings.defaultLocale} />
</div>
</div>
</div>
</div>