'use client';

import React from 'react';
import { usePathname } from 'next/navigation';
import './globals.css';
import { AuthProvider } from '@/context/AuthContext';
import { ToastProvider } from '@/context/ToastContext';
import Navbar from '@/components/Navbar';
import Footer from '@/components/Footer';

export default function RootLayout({
  children,
}: {
  children: React.ReactNode;
}) {
  const pathname = usePathname();
  const isDashboard = pathname?.startsWith('/admin') || pathname?.startsWith('/student');
  const showNavbar = !isDashboard;

  return (
    <html lang="en">
      <head>
        <title>Apka German School</title>
        <meta name="description" content="Master German A1 to B2 with Interactive Video Lessons & B1 Exam Prep" />
        <link rel="icon" href="/logo.png" type="image/png" />
        <link rel="shortcut icon" href="/logo.png" type="image/png" />
        <link rel="apple-touch-icon" href="/logo.png" />
      </head>
      <body className="antialiased min-h-screen text-gray-900 flex flex-col bg-[#F8FAFC]">
        <AuthProvider>
          <ToastProvider>
            {/* Public Top Wrapper with Navbar & Footer */}
            {!isDashboard ? (
              <div className="relative w-full flex flex-col min-h-screen bg-[#F8FAFC]">
                {showNavbar && <Navbar />}
                <main className="flex-1">{children}</main>
                <Footer />
              </div>
            ) : (
              <main className="flex-1">{children}</main>
            )}
          </ToastProvider>
        </AuthProvider>
      </body>
    </html>
  );
}
