37 lines
1.1 KiB
TypeScript
37 lines
1.1 KiB
TypeScript
import './globals.css';
|
|
import type { ReactNode } from 'react';
|
|
import type { Metadata } from 'next';
|
|
import { HeaderNav } from '@/components/HeaderNav';
|
|
import { MobileBottomNav } from '@/components/MobileBottomNav';
|
|
import { PwaBootstrap } from '@/components/PwaBootstrap';
|
|
|
|
export const viewport = {
|
|
themeColor: '#0B0E14',
|
|
};
|
|
|
|
export const metadata: Metadata = {
|
|
title: '2026 世界盃專業量化投注研究中心',
|
|
description: '以台北時區驅動的世界盃即時賽程、新聞、賠率與量化投注研究平台',
|
|
manifest: '/manifest.json',
|
|
other: {
|
|
'application-name': '2026 世界盃專業量化投注研究中心',
|
|
},
|
|
};
|
|
|
|
export default function RootLayout({ children }: { children: ReactNode }) {
|
|
return (
|
|
<html lang="zh-Hant">
|
|
<body>
|
|
<PwaBootstrap />
|
|
<div className="dashboard-shell min-h-screen p-4 md:p-8">
|
|
<header className="mx-auto max-w-7xl rounded-2xl panel-glow px-5 py-4 md:px-8 md:py-5">
|
|
<HeaderNav />
|
|
</header>
|
|
<main className="mx-auto mt-6 mb-24 max-w-7xl">{children}</main>
|
|
</div>
|
|
<MobileBottomNav />
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|