"use client"; import { Menu } from "lucide-react"; import Link from "next/link"; import { usePathname } from "next/navigation"; import { useState } from "react"; import { AppSidebar } from "@/components/app-sidebar"; /** * App chrome: a fixed sidebar on md+, and on small screens a top bar with a * hamburger that opens the same sidebar as a slide-in drawer. */ export function AppShell({ children }: { children: React.ReactNode }) { const [open, setOpen] = useState(false); const pathname = usePathname(); // The tree visualization wants the whole canvas; everything else reads better // in a centered, max-width column. const fullWidth = /^\/trees\/[^/]+\/tree$/.test(pathname); return (