import type { Metadata, Viewport } from "next"; import { Inter } from "next/font/google"; import Script from "next/script"; import { Toaster } from "@/components/ui/sonner"; import { StaleClientRecovery } from "@/components/stale-client-recovery"; import { themePreferenceBootScript } from "@/lib/theme-preference"; const inter = Inter({ subsets: ["latin"], display: "swap", variable: "--font-inter", }); export const metadata: Metadata = { title: "Jyotisha · 印度占星", description: "与 Mastra Agent 对话,基于星盘证据讨论事业、关系与时间窗口。", }; export const viewport: Viewport = { width: "device-width", initialScale: 1, viewportFit: "cover", interactiveWidget: "resizes-content", }; export default function RootLayout({ children }: Readonly<{ children: React.ReactNode }>) { const enableReactDevTools = process.env.NODE_ENV === "development" && process.env.NEXT_PUBLIC_ENABLE_REACT_DEVTOOLS === "1"; return ( {/* Synchronous on purpose: a pinned theme must be on before the first paint, or the page flashes the other theme on every load. */}