:root {
  --bg: #f4f5f2;
  --surface: #ffffff;
  --surface-2: #f8f9f6;
  --ink: #20221f;
  --muted: #6d726b;
  --line: #dfe2dc;
  --line-strong: #cbd0c8;
  --accent: #237657;
  --accent-dark: #19583f;
  --accent-soft: #e8f2ed;
  --amber: #9a6517;
  --amber-soft: #fbf2df;
  --red: #a04642;
  --red-soft: #f8e9e7;
  --site-max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body { min-width: 320px; margin: 0; color: var(--ink); background: var(--bg); font-family: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; letter-spacing: 0; }
button, input { font: inherit; letter-spacing: 0; }
a { color: inherit; }
button:focus-visible, input:focus-visible, a:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.shell { width: min(var(--site-max), calc(100% - 48px)); margin: 0 auto; }
.public-nav { position: sticky; top: 0; z-index: 10; min-height: 64px; display: flex; align-items: center; gap: 24px; padding: 0 max(24px, calc((100% - var(--site-max)) / 2)); border-bottom: 1px solid var(--line); background: rgba(244, 245, 242, .95); backdrop-filter: blur(12px); }
.public-brand { display: inline-flex; align-items: center; gap: 9px; font-size: 17px; font-weight: 650; text-decoration: none; }
.brand-mark { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 5px; color: var(--accent-dark); background: #d9eee4; }
.brand-mark i { width: 17px; height: 17px; }
.public-links { display: flex; align-items: center; gap: 22px; margin-left: 18px; }
.public-links a { color: var(--muted); font-size: 12px; text-decoration: none; }
.public-links a:hover, .public-links a[aria-current="page"] { color: var(--ink); }
.nav-spacer { flex: 1; }
.locale-switch { display: inline-flex; padding: 2px; border: 1px solid var(--line-strong); border-radius: 5px; background: var(--surface); }
.locale-switch button { min-width: 38px; height: 28px; border: 0; border-radius: 3px; color: var(--muted); background: transparent; cursor: pointer; font-size: 10px; }
.locale-switch button.active { color: #fff; background: var(--ink); }
.button { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 16px; border: 1px solid var(--line-strong); border-radius: 5px; color: var(--ink); background: var(--surface); font-size: 12px; font-weight: 600; text-decoration: none; cursor: pointer; transition: transform .2s ease, border-color .2s ease, background .2s ease; }
.button:hover { transform: translateY(-1px); border-color: #9ea69b; }
.button:active { transform: translateY(1px); }
.button.primary { border-color: var(--accent); color: #fff; background: var(--accent); }
.button.primary:hover { background: var(--accent-dark); }
.button[disabled] { cursor: wait; opacity: .66; transform: none; }
.eyebrow { display: block; margin: 0 0 14px; color: var(--accent); font: 10px "Geist Mono", monospace; text-transform: uppercase; }
.breadcrumbs { margin: 0 0 28px; color: var(--muted); font-size: 11px; }
.breadcrumbs a { text-decoration: none; }
.breadcrumbs a:hover { color: var(--accent); }
.page-hero { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .65fr); gap: 84px; align-items: end; padding: 94px 0 72px; border-bottom: 1px solid var(--line-strong); }
.page-hero h1 { max-width: 780px; margin: 0; font-size: clamp(42px, 6vw, 68px); line-height: 1; letter-spacing: 0; }
.page-hero .lead { max-width: 560px; margin: 0 0 26px; color: var(--muted); font-size: 17px; line-height: 1.65; }
.boundary-strip { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid var(--line-strong); }
.boundary-strip div { padding: 22px 22px 22px 0; }
.boundary-strip div + div { padding-left: 22px; border-left: 1px solid var(--line); }
.boundary-strip span { display: block; color: var(--muted); font: 9px "Geist Mono", monospace; text-transform: uppercase; }
.boundary-strip strong { display: block; margin-top: 8px; font-size: 12px; line-height: 1.45; }
.audit-form-band { padding: 46px 0 52px; background: var(--ink); color: #f5f6f2; }
.audit-form-layout { display: grid; grid-template-columns: minmax(240px, .58fr) minmax(0, 1.42fr); gap: 72px; align-items: end; }
.audit-form-layout h2 { margin: 0; font-size: 31px; letter-spacing: 0; }
.audit-form-layout p { margin: 10px 0 0; color: #b8beb5; font-size: 12px; line-height: 1.55; }
.audit-form { display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.audit-form label { grid-column: 1 / -1; color: #dfe4dc; font-size: 11px; }
.audit-form input { min-width: 0; height: 48px; border: 1px solid #525951; border-radius: 5px; padding: 0 14px; color: #f5f6f2; background: #2d302c; }
.audit-form input::placeholder { color: #8e958b; }
.audit-form .button { height: 48px; }
.form-message { grid-column: 1 / -1; min-height: 18px; margin: 2px 0 0; color: #efb9b3; font-size: 11px; }
.audit-results { display: none; padding: 72px 0 96px; }
.audit-results.visible { display: block; }
.result-head { display: grid; grid-template-columns: 1fr auto; gap: 32px; align-items: end; padding-bottom: 24px; border-bottom: 2px solid var(--ink); }
.result-head h2 { margin: 0; font-size: 30px; }
.score { text-align: right; }
.score span, .score small { display: block; color: var(--muted); font-size: 9px; }
.score strong { display: block; margin: 4px 0; font: 600 30px "Geist Mono", monospace; }
.audit-facts { display: grid; grid-template-columns: repeat(4, 1fr); border-bottom: 1px solid var(--line-strong); }
.audit-fact { min-width: 0; padding: 18px 16px 18px 0; }
.audit-fact + .audit-fact { padding-left: 16px; border-left: 1px solid var(--line); }
.audit-fact span { display: block; color: var(--muted); font-size: 9px; text-transform: uppercase; }
.audit-fact strong { display: block; overflow-wrap: anywhere; margin-top: 8px; font-size: 12px; }
.result-layout { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(260px, .55fr); gap: 64px; padding-top: 38px; }
.findings { border-top: 1px solid var(--line-strong); }
.finding { display: grid; grid-template-columns: 80px 1fr; gap: 20px; padding: 22px 0; border-bottom: 1px solid var(--line); }
.finding > span { color: var(--amber); font: 9px "Geist Mono", monospace; text-transform: uppercase; }
.finding.severity-high > span, .finding.severity-critical > span { color: var(--red); }
.finding strong { display: block; font-size: 14px; }
.finding p { margin: 7px 0 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.result-side { align-self: start; position: sticky; top: 92px; padding-top: 18px; border-top: 1px solid var(--ink); }
.result-side h3 { margin: 0 0 8px; font-size: 17px; }
.result-side p, .result-side li { color: var(--muted); font-size: 11px; line-height: 1.55; }
.result-side ul { padding-left: 17px; }
.result-side .button { width: 100%; margin-top: 9px; }
.no-findings { padding: 24px 0; color: var(--muted); }
.section-band { padding: 84px 0; }
.section-band.white { background: var(--surface); }
.section-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 84px; margin-bottom: 38px; }
.section-intro h2 { max-width: 650px; margin: 0; font-size: 38px; line-height: 1.08; letter-spacing: 0; }
.section-intro p { max-width: 550px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.7; }
.plan-list { border-top: 1px solid var(--ink); }
.plan-row { display: grid; grid-template-columns: 140px minmax(0, 1.2fr) minmax(260px, .8fr); gap: 34px; padding: 30px 0; border-bottom: 1px solid var(--line); }
.plan-row > span { color: var(--accent); font: 10px "Geist Mono", monospace; text-transform: uppercase; }
.plan-row h2 { margin: 0 0 8px; font-size: 24px; }
.plan-row p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.plan-row ul { margin: 0; padding-left: 18px; color: var(--muted); font-size: 11px; line-height: 1.65; }
.plan-status { display: inline-flex; margin-top: 14px; padding: 5px 7px; border: 1px solid var(--line-strong); color: var(--muted); font: 9px "Geist Mono", monospace; }
.decision-table { width: 100%; border-collapse: collapse; border-top: 1px solid var(--ink); }
.decision-table th, .decision-table td { padding: 16px 12px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; font-size: 11px; line-height: 1.5; }
.decision-table th { color: var(--muted); font: 9px "Geist Mono", monospace; text-transform: uppercase; }
.pricing-note { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 40px; align-items: center; margin: 48px 0 0; padding: 30px 0; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--line); }
.pricing-note h2 { margin: 0 0 7px; font-size: 23px; }
.pricing-note p { max-width: 720px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.intent-page-hero { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(260px, .65fr); gap: 84px; align-items: end; padding: 88px 0 72px; border-bottom: 1px solid var(--line-strong); }
.intent-page-hero h1 { max-width: 760px; margin: 0 0 24px; font-size: clamp(42px, 6vw, 68px); line-height: 1; }
.intent-page-hero .eyebrow { display: flex; align-items: center; gap: 8px; }
.intent-page-hero .eyebrow i { width: 17px; height: 17px; }
.intent-page-hero .lead { max-width: 680px; margin: 0; color: var(--muted); font-size: 17px; line-height: 1.7; }
.intent-page-actions { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 30px; }
.intent-page-actions .text-link { align-self: center; color: var(--accent); text-decoration: none; font-size: 12px; font-weight: 600; }
.intent-question { padding: 20px; border-top: 2px solid var(--accent); background: var(--surface); }
.intent-question > span { display: block; color: var(--muted); font: 9px "Geist Mono", monospace; text-transform: uppercase; }
.intent-question strong { display: block; margin: 18px 0 18px; font-size: 19px; line-height: 1.35; }
.intent-question small { display: block; color: var(--muted); font-size: 10px; line-height: 1.55; }
.intent-page-grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr); gap: 84px; padding: 78px 0; border-bottom: 1px solid var(--line-strong); }
.intent-page-grid h2, .intent-boundary h2 { max-width: 660px; margin: 0 0 16px; font-size: 34px; line-height: 1.1; }
.intent-page-grid article > p { max-width: 680px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.75; }
.intent-team { max-width: 520px; margin-top: 28px; padding: 16px 18px; border-left: 3px solid var(--accent); background: var(--accent-soft); }
.intent-team span, .intent-team small { display: block; color: var(--muted); font-size: 9px; text-transform: uppercase; }
.intent-team strong { display: block; margin: 8px 0 5px; font-size: 14px; }
.intent-team small { text-transform: none; line-height: 1.45; }
.intent-signals { border-top: 1px solid var(--ink); }
.intent-signals ul { margin: 0; padding: 0; list-style: none; }
.intent-signals li { display: grid; grid-template-columns: 30px 1fr; gap: 12px; align-items: center; min-height: 48px; border-bottom: 1px solid var(--line); }
.intent-signals li span { color: var(--accent); font: 10px "Geist Mono", monospace; }
.intent-signals li strong { font-size: 11px; line-height: 1.4; }
.intent-action-list { border-top: 1px solid var(--ink); }
.intent-action { display: grid; grid-template-columns: 46px 1fr; gap: 16px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.intent-action > span { color: var(--accent); font: 11px "Geist Mono", monospace; }
.intent-action p { margin: 0; font-size: 16px; line-height: 1.45; }
.intent-boundary { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(260px, .9fr); gap: 84px; padding: 72px 0 88px; }
.intent-boundary p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.75; }
.public-footer { padding: 34px 0; border-top: 1px solid var(--line); }
.footer-layout { display: grid; grid-template-columns: 1fr 1fr auto; gap: 30px; align-items: start; }
.footer-layout p, .footer-layout a { margin: 0; color: var(--muted); font-size: 11px; text-decoration: none; }
.footer-links { display: flex; gap: 18px; }
[data-locale-copy] { display: none; }
html[lang="en"] [data-locale-copy="en"], html[lang="zh-CN"] [data-locale-copy="zh"] { display: revert; }

@media (max-width: 820px) {
  .shell { width: calc(100% - 28px); }
  .public-nav { padding: 0 14px; gap: 12px; }
  .public-links { display: none; }
  .public-nav > .button { padding-inline: 10px; }
  .page-hero, .audit-form-layout, .section-intro { grid-template-columns: 1fr; gap: 28px; }
  .page-hero { padding: 64px 0 52px; }
  .page-hero h1 { font-size: 38px; }
  .boundary-strip { grid-template-columns: 1fr; }
  .boundary-strip div + div { padding-left: 0; border-left: 0; border-top: 1px solid var(--line); }
  .audit-form { grid-template-columns: 1fr; }
  .audit-form label, .form-message { grid-column: auto; }
  .result-head { grid-template-columns: 1fr; }
  .score { text-align: left; }
  .audit-facts { grid-template-columns: 1fr 1fr; }
  .audit-fact:nth-child(3) { padding-left: 0; border-left: 0; border-top: 1px solid var(--line); }
  .audit-fact:nth-child(4) { border-top: 1px solid var(--line); }
  .result-layout { grid-template-columns: 1fr; gap: 40px; }
  .result-side { position: static; }
  .plan-row { grid-template-columns: 72px 1fr; gap: 18px; }
  .plan-row ul { grid-column: 2; }
  .decision-table thead { display: none; }
  .decision-table, .decision-table tbody, .decision-table tr, .decision-table td { display: block; }
  .decision-table tr { padding: 17px 0; border-bottom: 1px solid var(--line); }
  .decision-table td { padding: 5px 0; border: 0; }
  .decision-table td::before { display: block; margin-bottom: 3px; color: var(--muted); font: 8px "Geist Mono", monospace; text-transform: uppercase; content: attr(data-label); }
  .pricing-note, .footer-layout { grid-template-columns: 1fr; gap: 20px; }
  .intent-page-hero, .intent-page-grid, .intent-boundary { grid-template-columns: 1fr; gap: 30px; }
  .intent-page-hero { padding: 64px 0 52px; }
  .intent-page-hero h1 { font-size: 38px; }
  .intent-page-grid, .intent-boundary { padding: 54px 0; }
  .intent-page-grid h2, .intent-boundary h2 { font-size: 28px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
