import type { Metadata, Viewport } from 'next'
import { Geist } from 'next/font/google'
import { Toaster } from '@/components/ui/sonner'
import { SITE_URL } from '@/lib/app-url'
import './globals.css'

const geist = Geist({ subsets: ['latin'] })

export const metadata: Metadata = {
  metadataBase: new URL(SITE_URL),
  title: { default: 'HeavyHaul Agent', template: '%s · HeavyHaul Agent' },
  description:
    'The shared workspace for oversize trips — permits, people, warnings, and AI answers in one place.',
  manifest: '/manifest.webmanifest',
  appleWebApp: { capable: true, title: 'HeavyHaul Agent', statusBarStyle: 'default' },
}

export const viewport: Viewport = {
  themeColor: '#0f1b2d',
  width: 'device-width',
  initialScale: 1,
}

export default function RootLayout({ children }: { children: React.ReactNode }) {
  return (
    <html lang="en">
      <body className={`${geist.className} min-h-screen bg-neutral-50 text-neutral-900 antialiased`}>
        {children}
        <Toaster position="top-center" richColors />
      </body>
    </html>
  )
}
