"use client"; import Link from "next/link"; import { usePathname, useRouter } from "next/navigation"; import { Home, LayoutGrid, Gift, Trophy, User, LogOut, Settings, History, Shield } from "lucide-react"; import { SpinzaWordmark, SpinzaMark } from "@/components/brand/logo"; import { useSession } from "@/lib/store"; import { Button, Credits } from "@/components/ui"; import { cn } from "@/lib/utils"; const NAV = [ { href: "/", label: "Home", icon: Home }, { href: "/games", label: "Games", icon: LayoutGrid }, { href: "/rewards", label: "Rewards", icon: Gift }, { href: "/leaderboard", label: "Leaderboard", icon: Trophy }, { href: "/profile", label: "Profile", icon: User }, ]; const SIDE_EXTRA = [ { href: "/profile/history", label: "History", icon: History }, { href: "/settings", label: "Settings", icon: Settings }, { href: "/responsible-play", label: "Responsible play", icon: Shield }, ]; function isActive(path: string, href: string) { return href === "/" ? path === "/" : path.startsWith(href); } /** Desktop: sidebar + top bar. Mobile: top logo + balance, bottom navigation. */ export function AppShell({ children, wide }: { children: React.ReactNode; wide?: boolean }) { const path = usePathname(); const router = useRouter(); const { status, user, wallet, signOut } = useSession(); const authed = status === "authenticated"; return (