diff --git a/components/Layout.js b/components/Layout.js index 0deab86..5562e22 100644 --- a/components/Layout.js +++ b/components/Layout.js @@ -664,7 +664,18 @@ export default function Layout({ children, user = null, showSearch = false }) { }, []); return ( -
+ // Outer shell — `md:p-4 md:gap-4` pulls both the sidebar and the + // main column in from the viewport edges so the sidebar and the + // top header read as floating chrome chips (operator feedback + // 2026-06-04: "pull out the left nav to make it look like it is + // its own floating section versus attached to the top-left"). The + // `md:gap-4` on this row also creates the visible page-body + // background between the sidebar's right edge and the main + // column, which replaces the previous hard divider — "all feels + // like one large page" is achieved by the hearth gradient + // showing through the gap. Mobile (< 768px) keeps the current + // flush layout because the sidebar is `hidden md:flex` anyway. +
{/* Mobile Navigation - Bottom bar for mobile */} setIsMobileMenuOpen(true)} @@ -815,14 +826,21 @@ export default function Layout({ children, user = null, showSearch = false }) { {/* Desktop Sidebar - Hidden on mobile. Liquid Glass mid-tint, ambient elevation + rim-light edges; the page background visibly cools - through the rail. */} + through the rail. 2026-06-04 floating-chrome pass: rounded-3xl + + overflow-hidden so the rail reads as its own floating chip; + `var(--rim-light-outer)` dropped from the box-shadow stack + because that 1px outer ring was the "vertical divider between + the sidebar and the right side" the operator wanted gone. The + chip's edge is now defined solely by `var(--elevation-ambient)` + (drop shadow) + the glass-surface-mid tint against the body + gradient that shows through `md:gap-4` on the outer flex. */}
@@ -933,8 +951,14 @@ export default function Layout({ children, user = null, showSearch = false }) {
- {/* Main Content */} -
+ {/* Main Content. `md:gap-4` adds vertical breathing room between + the floating TopSearchBar header and the page content so they + read as two distinct floating chrome elements over the body + gradient (rather than the header sitting flush against the + content). `min-w-0` prevents flex children from blowing past + the column width when long card titles or table cells refuse + to wrap. */} +
{/* Global top bar — redesign-v2 sub-convoy #3 (2026-06-04). Rendered for ALL authenticated pages so the search + notifications + user-menu chrome is consistent everywhere diff --git a/components/ui/TopSearchBar.js b/components/ui/TopSearchBar.js index e6e14ac..b19190c 100644 --- a/components/ui/TopSearchBar.js +++ b/components/ui/TopSearchBar.js @@ -62,17 +62,24 @@ export default function TopSearchBar({ return (
{/* Search affordance — read-only-ish input that opens the