
import type { Metadata } from 'next';
import { GeistSans } from 'geist/font/sans';
import { GeistMono } from 'geist/font/mono';
import './globals.css';
import { Toaster } from "@/components/ui/toaster";
import { SiteHeader } from '@/components/Layout/SiteHeader';
import { ThemeProvider } from '@/components/ThemeProvider';
import { SiteFooter } from '@/components/Layout/SiteFooter';
import { AuthProvider } from '@/contexts/AuthContext'; // Added AuthProvider

export const metadata: Metadata = {
  title: 'Count Tool Hub', 
  description: 'Your central application portal for counting tools.', 
};

export default function RootLayout({
  children,
}: Readonly<{
  children: React.ReactNode;
}>) {
  return (
    <html lang="en" className={`${GeistSans.variable} ${GeistMono.variable}`} suppressHydrationWarning>
      <body className="font-sans antialiased">
        <AuthProvider> {/* Added AuthProvider */}
          <ThemeProvider
              attribute="class"
              defaultTheme="system"
              enableSystem
              disableTransitionOnChange
            >
            <SiteHeader />
            {children}
            <Toaster />
            <SiteFooter />
          </ThemeProvider>
        </AuthProvider> {/* Added AuthProvider */}
      </body>
    </html>
  );
}
