From 2ce32f88d5eed7ab0d5994096f76d5ac71c28f1e Mon Sep 17 00:00:00 2001 From: Ryan Barlow <7389646+ryanbarlow97@users.noreply.github.com> Date: Sun, 11 Oct 2026 17:03:11 +0000 Subject: [PATCH] Keep the scrollbar's room on every page The page scrollbar appeared once content grew past the screen (opening the skin editor on Profile, for one), which narrowed the viewport and slid the whole page sideways. Staff pages already reserved the gutter; every page now does, except the full-screen map, which never scrolls. Co-Authored-By: Claude Opus 5.5 --- frontend/app/admin/layout.tsx | 2 +- frontend/app/internal/globals.css | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/frontend/app/admin/layout.tsx b/frontend/app/admin/layout.tsx index 2c7b6ac2..4419d23f 100644 --- a/frontend/app/admin/layout.tsx +++ b/frontend/app/admin/layout.tsx @@ -7,7 +7,7 @@ import AdminNav from "../components/admin/AdminNav"; */ export default function AdminLayout({ children }: { children: React.ReactNode }) { return ( -
+
{/* Opaque and pinned under the site header on wider screens, so the tabs stay in reach down a long list. */}
diff --git a/frontend/app/internal/globals.css b/frontend/app/internal/globals.css index 9581062e..73e9a690 100644 --- a/frontend/app/internal/globals.css +++ b/frontend/app/internal/globals.css @@ -173,9 +173,10 @@ color: var(--tfmc-cream); } - /* Staff pages keep the scrollbar's room even when nothing scrolls, so the - frame does not shift sideways as a list loads or a tab changes length. */ - html:has(.staff-panel) { + /* Pages keep the scrollbar's room even when nothing scrolls, so the layout + does not shift sideways as a page grows past the screen. The full-screen + map never scrolls, so it gets the whole width. */ + html:not(.map-fullscreen) { scrollbar-gutter: stable; }