Spaces:
Paused
Paused
| import type { Metadata, Viewport } from "next"; | |
| import { Toaster } from "sonner"; | |
| import "./globals.css"; | |
| import { TopNav } from "@/components/top-nav"; | |
| export const metadata: Metadata = { | |
| title: "ChatGPT 号池管理", | |
| description: "ChatGPT account pool management dashboard", | |
| }; | |
| export const viewport: Viewport = { | |
| width: "device-width", | |
| initialScale: 1, | |
| maximumScale: 1, | |
| userScalable: false, | |
| themeColor: "#f0ebe3", | |
| }; | |
| export default function RootLayout({ | |
| children, | |
| }: Readonly<{ | |
| children: React.ReactNode; | |
| }>) { | |
| return ( | |
| <html lang="zh-CN" suppressHydrationWarning> | |
| <body | |
| className="antialiased" | |
| style={{ | |
| fontFamily: | |
| '"SF Pro Display","SF Pro Text","PingFang SC","Microsoft YaHei","Helvetica Neue",sans-serif', | |
| }} | |
| > | |
| <Toaster position="top-center" richColors offset={48} /> | |
| <main className="min-h-screen overflow-x-hidden bg-[radial-gradient(circle_at_top_left,_rgba(255,255,255,0.92),_rgba(245,239,231,0.96)_42%,_rgba(240,235,227,0.99)_100%)] px-4 pt-0 pb-2 text-stone-900 sm:px-6 sm:pt-2 lg:px-8"> | |
| <div className="mx-auto box-border flex min-h-[calc(100dvh-0.5rem)] max-w-[1440px] flex-col gap-2 pt-[env(safe-area-inset-top)] sm:min-h-[calc(100dvh-1rem)] sm:gap-5 sm:pt-0"> | |
| <TopNav /> | |
| {children} | |
| </div> | |
| </main> | |
| </body> | |
| </html> | |
| ); | |
| } | |