feat(app): 全局样式重构与核心应用层更新

- 重构 globals.css 设计令牌系统,对齐咨询风品牌色与排版
- 更新根布局,集成 SEO schema 与黑暗模式防闪烁脚本
- 添加 robots.ts 与 sitemap.ts 动态生成
- 添加 middleware.ts 中间件层
- 更新隐私政策与服务条款页面
This commit is contained in:
张翔
2026-07-07 06:52:19 +08:00
parent cf99e7556c
commit 9053f69123
12 changed files with 1444 additions and 975 deletions
+14 -9
View File
@@ -1,16 +1,21 @@
'use client';
import { useEffect } from 'react';
import { StaticLink } from '@/components/ui/static-link';
import { Button } from '@/components/ui/button';
import { Home, ArrowLeft, Search } from 'lucide-react';
export default function NotFound() {
useEffect(() => {
document.title = '页面未找到 - 睿新致远';
}, []);
return (
<div className="min-h-screen bg-[var(--color-bg-primary)] flex items-center justify-center">
<div className="container-wide px-4 py-20">
<div className="max-w-xl mx-auto text-center">
<div className="mb-8">
<h1 className="text-8xl sm:text-[120px] font-bold text-[var(--color-brand-primary)] leading-none mb-4 opacity-20">
<h1 className="text-8xl sm:text-[120px] font-bold text-[var(--color-brand)] leading-none mb-4 opacity-20">
404
</h1>
</div>
@@ -54,8 +59,8 @@ export default function NotFound() {
href="/products"
className="flex flex-col items-center p-4 bg-[var(--color-bg-primary)] rounded-lg hover:shadow-md transition-shadow group"
>
<div className="w-9 h-9 bg-[var(--color-brand-primary-bg)] rounded-lg flex items-center justify-center mb-2 group-hover:bg-[var(--color-challenge-isolation-hover)] transition-colors">
<Search className="w-4 h-4 text-[var(--color-brand-primary)]" />
<div className="w-9 h-9 bg-[var(--color-brand-bg)] rounded-lg flex items-center justify-center mb-2 group-hover:bg-[var(--color-challenge-isolation-hover)] transition-colors">
<Search className="w-4 h-4 text-[var(--color-brand)]" />
</div>
<span className="font-medium text-sm text-[var(--color-text-primary)]">产品</span>
</StaticLink>
@@ -64,8 +69,8 @@ export default function NotFound() {
href="/solutions"
className="flex flex-col items-center p-4 bg-[var(--color-bg-primary)] rounded-lg hover:shadow-md transition-shadow group"
>
<div className="w-9 h-9 bg-[var(--color-brand-primary-bg)] rounded-lg flex items-center justify-center mb-2 group-hover:bg-[var(--color-challenge-isolation-hover)] transition-colors">
<Search className="w-4 h-4 text-[var(--color-brand-primary)]" />
<div className="w-9 h-9 bg-[var(--color-brand-bg)] rounded-lg flex items-center justify-center mb-2 group-hover:bg-[var(--color-challenge-isolation-hover)] transition-colors">
<Search className="w-4 h-4 text-[var(--color-brand)]" />
</div>
<span className="font-medium text-sm text-[var(--color-text-primary)]">解决方案</span>
</StaticLink>
@@ -74,8 +79,8 @@ export default function NotFound() {
href="/about"
className="flex flex-col items-center p-4 bg-[var(--color-bg-primary)] rounded-lg hover:shadow-md transition-shadow group"
>
<div className="w-9 h-9 bg-[var(--color-brand-primary-bg)] rounded-lg flex items-center justify-center mb-2 group-hover:bg-[var(--color-challenge-isolation-hover)] transition-colors">
<Search className="w-4 h-4 text-[var(--color-brand-primary)]" />
<div className="w-9 h-9 bg-[var(--color-brand-bg)] rounded-lg flex items-center justify-center mb-2 group-hover:bg-[var(--color-challenge-isolation-hover)] transition-colors">
<Search className="w-4 h-4 text-[var(--color-brand)]" />
</div>
<span className="font-medium text-sm text-[var(--color-text-primary)]">关于我们</span>
</StaticLink>
@@ -84,8 +89,8 @@ export default function NotFound() {
href="/contact"
className="flex flex-col items-center p-4 bg-[var(--color-bg-primary)] rounded-lg hover:shadow-md transition-shadow group"
>
<div className="w-9 h-9 bg-[var(--color-brand-primary-bg)] rounded-lg flex items-center justify-center mb-2 group-hover:bg-[var(--color-challenge-isolation-hover)] transition-colors">
<Search className="w-4 h-4 text-[var(--color-brand-primary)]" />
<div className="w-9 h-9 bg-[var(--color-brand-bg)] rounded-lg flex items-center justify-center mb-2 group-hover:bg-[var(--color-challenge-isolation-hover)] transition-colors">
<Search className="w-4 h-4 text-[var(--color-brand)]" />
</div>
<span className="font-medium text-sm text-[var(--color-text-primary)]">联系我们</span>
</StaticLink>