"use client"; import { Loader2 } from "lucide-react"; import { useRouter } from "next/navigation"; import { useEffect, useState } from "react"; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"; interface DashboardLayoutProps { children: React.ReactNode; } export default function DashboardLayout({ children }: DashboardLayoutProps) { const router = useRouter(); const [isCheckingAuth, setIsCheckingAuth] = useState(true); useEffect(() => { // Check if user is authenticated const token = localStorage.getItem("surfsense_bearer_token"); if (!token) { router.push("/login"); return; } setIsCheckingAuth(false); }, [router]); // Show loading screen while checking authentication if (isCheckingAuth) { return (