import type { Metadata } from "next";
import { Fraunces, Outfit } from "next/font/google";
import { AnnouncementBar } from "@/components/layout/AnnouncementBar";
import { Footer } from "@/components/layout/Footer";
import { Header } from "@/components/layout/Header";
import { Providers } from "@/context/providers";
import "./globals.css";

const sans = Outfit({
  variable: "--font-inter",
  subsets: ["latin"],
  weight: ["400", "500", "600"],
});

const display = Fraunces({
  variable: "--font-display",
  subsets: ["latin"],
  weight: ["500", "600", "700"],
});

export const metadata: Metadata = {
  title: {
    default: "BhoFit — Clothes cut for how you move",
    template: "%s · BhoFit",
  },
  description:
    "BhoFit — refined everyday clothes for women, men, kids, and baby. Honest cloth, considered fit. Free shipping over $99.",
  icons: {
    icon: [{ url: "/favicon.svg", type: "image/svg+xml" }],
    apple: [{ url: "/favicon.svg" }],
  },
};

export default function RootLayout({
  children,
}: Readonly<{
  children: React.ReactNode;
}>) {
  return (
    <html
      lang="en"
      className={`${sans.variable} ${display.variable} h-full`}
      suppressHydrationWarning
    >
      <body className="flex min-h-full flex-col bg-background text-foreground antialiased">
        <Providers>
          <AnnouncementBar />
          <Header />
          <main className="flex-1 bg-canvas">{children}</main>
          <Footer />
        </Providers>
      </body>
    </html>
  );
}
