manual save(2026-01-23 14:12)

This commit is contained in:
SiteAgent Bot
2026-01-23 14:12:09 +08:00
parent 9a81aca4bf
commit 005dfa4ce7
2 changed files with 63 additions and 48 deletions

View File

@@ -4,15 +4,26 @@
:root { :root {
--tf-text: #111111; --tf-text: #111111;
--tf-text-muted: #555555; --tf-text-muted: #394b59;
--tf-text-subtle: #738296;
--tf-bg: #fafaf7; --tf-bg: #fafaf7;
--tf-bg-alt: #f5f5f2; --tf-bg-alt: #fafaf7;
--tf-border: rgba(17, 17, 17, 0.12);
--tf-accent: #1b6b5a; --tf-border: #cdd9e5;
--tf-accent: #1e5bb0;
--tf-accent-strong: #1e5bb0;
--tf-accent-soft: #ebf2fc;
--tf-accent-border: #4a89e8;
--tf-accent-link: #2c6ecb;
--tf-surface: #f6f8fa;
--tf-font-cn: "HarmonyOS Sans SC", "HarmonyOS Sans", "Source Han Sans SC", "Noto Sans CJK SC", --tf-font-cn: "HarmonyOS Sans SC", "HarmonyOS Sans", "Source Han Sans SC", "Noto Sans CJK SC",
"PingFang SC", "Microsoft YaHei", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
--tf-font-serif: "IBM Plex Serif", Charter, "Bitstream Charter", Georgia, "Times New Roman", Times, serif; --tf-font-serif: "Source Han Serif SC", "Noto Serif CJK SC", "LXGW WenKai", "霞鹜文楷", "Songti SC",
"SimSun", "IBM Plex Serif", Charter, "Bitstream Charter", Georgia, "Times New Roman", Times, serif;
--tf-font-ui: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; --tf-font-ui: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
color: var(--tf-text); color: var(--tf-text);
@@ -31,5 +42,5 @@ body {
} }
::selection { ::selection {
background: color-mix(in srgb, var(--tf-accent) 18%, white); background: var(--tf-accent-soft);
} }

View File

@@ -32,16 +32,16 @@ const SectionWorldView: React.FC = () => {
<header className="max-w-3xl"> <header className="max-w-3xl">
<h1 <h1
id="SectionWorldView-title" id="SectionWorldView-title"
className="font-[var(--tf-font-cn)] text-[clamp(56px,5.2vw,64px)] leading-[1.05] tracking-tight" className="font-[var(--tf-font-serif)] font-medium text-[clamp(56px,5.2vw,64px)] leading-[1.05] tracking-tight text-[var(--tf-text)]"
> >
</h1> </h1>
<p className="mt-10 text-[clamp(18px,1.6vw,20px)] leading-[1.8] text-[var(--tf-text-muted)]"> <p className="mt-10 text-[clamp(18px,1.6vw,20px)] leading-[1.8] text-[#394B59]">
<br /> <br />
</p> </p>
<p className="mt-8 text-[clamp(16px,1.4vw,18px)] leading-[1.8] text-[var(--tf-text-muted)]"> <p className="mt-8 text-[clamp(16px,1.4vw,18px)] leading-[1.8] text-[var(--tf-text-subtle)]">
<br /> <br />
@@ -65,7 +65,7 @@ const SectionDecisionUncertainty: React.FC = () => {
<div className="max-w-4xl"> <div className="max-w-4xl">
<h2 <h2
id="SectionDecisionUncertainty-title" id="SectionDecisionUncertainty-title"
className="text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight" className="font-medium text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight text-[var(--tf-text)]"
> >
</h2> </h2>
@@ -73,7 +73,7 @@ const SectionDecisionUncertainty: React.FC = () => {
<div className="mt-12 grid gap-7"> <div className="mt-12 grid gap-7">
{questions.map((question) => ( {questions.map((question) => (
<div key={question} className="border-l border-[var(--tf-border)] pl-6"> <div key={question} className="border-l border-[var(--tf-border)] pl-6">
<p className="text-[clamp(16px,1.4vw,18px)] leading-[1.8] text-[var(--tf-text)]">{question}</p> <p className="text-[clamp(16px,1.4vw,18px)] leading-[1.8] text-[var(--tf-text-muted)]">{question}</p>
</div> </div>
))} ))}
</div> </div>
@@ -88,13 +88,14 @@ const SectionCoreThesis: React.FC = () => {
<div className="mx-auto max-w-4xl text-center"> <div className="mx-auto max-w-4xl text-center">
<h2 <h2
id="SectionCoreThesis-title" id="SectionCoreThesis-title"
className="font-[var(--tf-font-serif)] text-[clamp(44px,4.3vw,56px)] leading-[1.12] tracking-tight" className="font-[var(--tf-font-serif)] text-[clamp(44px,4.3vw,56px)] leading-[1.4] tracking-tight text-[var(--tf-text)]"
> >
<br /> <br />
<span className="text-[var(--tf-accent-strong)]"></span>
</h2> </h2>
<p className="mt-10 text-[clamp(16px,1.4vw,18px)] leading-[1.85] text-[var(--tf-text-muted)]"> <p className="mt-10 text-[clamp(16px,1.4vw,18px)] leading-[1.85] text-[var(--tf-text-subtle)]">
<br /> <br />
@@ -110,7 +111,7 @@ const SectionMethodology: React.FC = () => {
<article className="max-w-4xl"> <article className="max-w-4xl">
<h2 <h2
id="SectionMethodology-title" id="SectionMethodology-title"
className="text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight" className="font-medium text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight text-[var(--tf-text)]"
> >
</h2> </h2>
@@ -128,8 +129,8 @@ const SectionMethodology: React.FC = () => {
</div> </div>
<div className="mt-12"> <div className="mt-12">
<div className="inline-flex items-baseline gap-3 border-b border-[var(--tf-border)] pb-2"> <div className="inline-flex items-baseline gap-3 border-b border-[#EBF2FC] pb-2">
<span className="font-[var(--tf-font-serif)] text-[clamp(20px,1.8vw,22px)] text-[var(--tf-text)]"> <span className="font-[var(--tf-font-serif)] text-[clamp(20px,1.8vw,22px)] text-[var(--tf-accent-strong)]">
Compliance as Growth Compliance as Growth
</span> </span>
<span className="text-sm font-[var(--tf-font-ui)] text-[var(--tf-text-muted)]"> </span> <span className="text-sm font-[var(--tf-font-ui)] text-[var(--tf-text-muted)]"> </span>
@@ -165,7 +166,7 @@ const SectionSystemOverview: React.FC = () => {
<div className="max-w-5xl"> <div className="max-w-5xl">
<h2 <h2
id="SectionSystemOverview-title" id="SectionSystemOverview-title"
className="text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight" className="font-medium text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight text-[var(--tf-text)]"
> >
</h2> </h2>
@@ -180,11 +181,13 @@ const SectionSystemOverview: React.FC = () => {
{modules.map((module) => ( {modules.map((module) => (
<div <div
key={module.name} key={module.name}
className="rounded-2xl border border-[var(--tf-border)] bg-white p-7" className="group rounded-2xl border border-[var(--tf-border)] bg-[var(--tf-surface)] p-7 transition-colors hover:border-[var(--tf-accent-border)] hover:bg-[var(--tf-accent-soft)]"
aria-label={`${module.name} 模块`} aria-label={`${module.name} 模块`}
> >
<div className="flex items-baseline justify-between gap-4"> <div className="flex items-baseline justify-between gap-4">
<div className="text-lg font-[var(--tf-font-ui)] font-medium text-[var(--tf-text)]">{module.name}</div> <div className="text-lg font-[var(--tf-font-ui)] font-medium text-[var(--tf-text-muted)] group-hover:text-[var(--tf-accent-strong)]">
{module.name}
</div>
<div className="text-xs font-[var(--tf-font-ui)] text-[var(--tf-text-muted)]">Module</div> <div className="text-xs font-[var(--tf-font-ui)] text-[var(--tf-text-muted)]">Module</div>
</div> </div>
<p className="mt-5 text-[clamp(16px,1.4vw,18px)] leading-[1.8] text-[var(--tf-text-muted)]"> <p className="mt-5 text-[clamp(16px,1.4vw,18px)] leading-[1.8] text-[var(--tf-text-muted)]">
@@ -199,12 +202,14 @@ const SectionSystemOverview: React.FC = () => {
} }
const SectionDiscoveryIntro: React.FC = () => { const SectionDiscoveryIntro: React.FC = () => {
const tags = ['每日晨报', '政策研究', '行业趋势', '深度报告']
return ( return (
<HomeSection id="SectionDiscoveryIntro" variant="alt"> <HomeSection id="SectionDiscoveryIntro" variant="alt">
<div className="max-w-4xl"> <div className="max-w-4xl">
<h2 <h2
id="SectionDiscoveryIntro-title" id="SectionDiscoveryIntro-title"
className="text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight" className="font-[var(--tf-font-serif)] text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight text-[var(--tf-text)]"
> >
Discovery Discovery
</h2> </h2>
@@ -215,11 +220,15 @@ const SectionDiscoveryIntro: React.FC = () => {
</p> </p>
<div className="mt-12 flex flex-wrap items-center gap-x-4 gap-y-2 text-sm font-[var(--tf-font-ui)] text-[var(--tf-text)]"> <div className="mt-12 flex flex-wrap items-center gap-x-3 gap-y-3 text-sm font-[var(--tf-font-ui)]">
<span className="inline-flex items-center rounded-full border border-[var(--tf-border)] px-3 py-1"></span> {tags.map((tag) => (
<span className="inline-flex items-center rounded-full border border-[var(--tf-border)] px-3 py-1"></span> <span
<span className="inline-flex items-center rounded-full border border-[var(--tf-border)] px-3 py-1"></span> key={tag}
<span className="inline-flex items-center rounded-full border border-[var(--tf-border)] px-3 py-1"></span> className="inline-flex items-center rounded-full bg-[var(--tf-accent-soft)] px-3 py-1 text-[var(--tf-accent-link)]"
>
{tag}
</span>
))}
</div> </div>
</div> </div>
</HomeSection> </HomeSection>
@@ -239,7 +248,7 @@ const SectionMeasurableOutcome: React.FC = () => {
<div className="max-w-4xl"> <div className="max-w-4xl">
<h2 <h2
id="SectionMeasurableOutcome-title" id="SectionMeasurableOutcome-title"
className="text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight" className="font-medium text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight text-[var(--tf-text)]"
> >
</h2> </h2>
@@ -249,7 +258,7 @@ const SectionMeasurableOutcome: React.FC = () => {
<div key={point} className="flex items-start gap-4"> <div key={point} className="flex items-start gap-4">
<span <span
aria-hidden="true" aria-hidden="true"
className="mt-2 h-2.5 w-2.5 rounded-full bg-[var(--tf-accent)]" className="mt-2 h-2.5 w-2.5 rounded-full bg-[var(--tf-border)]"
/> />
<p className="text-[clamp(16px,1.4vw,18px)] leading-[1.8] text-[var(--tf-text-muted)]">{point}</p> <p className="text-[clamp(16px,1.4vw,18px)] leading-[1.8] text-[var(--tf-text-muted)]">{point}</p>
</div> </div>
@@ -261,34 +270,33 @@ const SectionMeasurableOutcome: React.FC = () => {
} }
const SectionTrustProof: React.FC = () => { const SectionTrustProof: React.FC = () => {
const logos = ['Gov', 'Enterprise', 'Consortium', 'ThinkTank', 'Academia', 'Partner']
return ( return (
<HomeSection id="SectionTrustProof" variant="alt"> <HomeSection id="SectionTrustProof" variant="alt">
<div className="max-w-5xl"> <div className="max-w-5xl">
<h2 <h2
id="SectionTrustProof-title" id="SectionTrustProof-title"
className="text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight" className="font-medium text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight text-[var(--tf-text)]"
> >
</h2> </h2>
<p className="mt-10 max-w-3xl text-[clamp(16px,1.4vw,18px)] leading-[1.85] text-[var(--tf-text-muted)]"> <p className="mt-10 max-w-3xl text-[clamp(16px,1.4vw,18px)] leading-[1.85] text-[var(--tf-text-subtle)]">
</p> </p>
<div className="mt-14 grid gap-3 sm:grid-cols-3"> <div className="mt-14 grid gap-x-10 gap-y-6 sm:grid-cols-3">
{['政府级项目', '多行业实践', '高约束环境'].map((label) => ( {logos.map((label) => (
<div <div
key={label} key={label}
className="rounded-2xl border border-[var(--tf-border)] bg-white px-6 py-5 text-sm font-[var(--tf-font-ui)] text-[var(--tf-text-muted)]" className="select-none rounded-xl border border-[var(--tf-border)] bg-[var(--tf-surface)] px-6 py-5 text-sm font-[var(--tf-font-ui)] tracking-wide text-[var(--tf-text-subtle)] grayscale transition duration-300 hover:grayscale-0"
aria-label="Logo 占位"
> >
{label} {label}
</div> </div>
))} ))}
</div> </div>
<p className="mt-8 text-xs font-[var(--tf-font-ui)] text-[var(--tf-text-muted)]">
V1 Proof
</p>
</div> </div>
</HomeSection> </HomeSection>
) )
@@ -300,7 +308,7 @@ const SectionSoftCTA: React.FC = () => {
<div className="max-w-4xl"> <div className="max-w-4xl">
<h2 <h2
id="SectionSoftCTA-title" id="SectionSoftCTA-title"
className="text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight" className="font-[var(--tf-font-serif)] text-[clamp(36px,3.2vw,40px)] leading-[1.15] tracking-tight text-[var(--tf-accent-strong)]"
> >
</h2> </h2>
@@ -308,32 +316,28 @@ const SectionSoftCTA: React.FC = () => {
<div className="mt-10 grid gap-4"> <div className="mt-10 grid gap-4">
<Link <Link
to="/discovery" to="/discovery"
className="group inline-flex items-center justify-between rounded-2xl border border-[var(--tf-border)] bg-white px-7 py-6" className="group inline-flex items-center justify-between border-b border-[var(--tf-border)] py-4"
> >
<span className="text-[clamp(16px,1.4vw,18px)] leading-[1.6] text-[var(--tf-text)]"> <span className="text-[clamp(16px,1.4vw,18px)] leading-[1.6] text-[var(--tf-text-subtle)]">
</span> </span>
<span className="text-sm font-[var(--tf-font-ui)] text-[var(--tf-text-muted)] group-hover:text-[var(--tf-accent)]"> <span className="text-sm font-[var(--tf-font-ui)] text-[var(--tf-text-subtle)] group-hover:text-[var(--tf-accent-strong)]">
</span> </span>
</Link> </Link>
<Link <Link
to="/contact" to="/contact"
className="group inline-flex items-center justify-between rounded-2xl border border-[var(--tf-border)] bg-white px-7 py-6" className="group inline-flex items-center justify-between border-b border-[var(--tf-border)] py-4"
> >
<span className="text-[clamp(16px,1.4vw,18px)] leading-[1.6] text-[var(--tf-text)]"> <span className="text-[clamp(16px,1.4vw,18px)] leading-[1.6] text-[var(--tf-text-subtle)]">
</span> </span>
<span className="text-sm font-[var(--tf-font-ui)] text-[var(--tf-text-muted)] group-hover:text-[var(--tf-accent)]"> <span className="text-sm font-[var(--tf-font-ui)] text-[var(--tf-text-subtle)] group-hover:text-[var(--tf-accent-strong)]">
</span> </span>
</Link> </Link>
</div> </div>
<p className="mt-8 text-xs font-[var(--tf-font-ui)] text-[var(--tf-text-muted)]">
V1
</p>
</div> </div>
</HomeSection> </HomeSection>
) )