:root {
  color-scheme: light;
  --ink: #0b0d10;
  --paper: #f7f9fc;
  --white: #ffffff;
  --blue: #2864f0;
  --blue-dark: #1748bd;
  --muted: #69707d;
  --line: rgba(11, 13, 16, 0.12);
  --chrome-surface: rgba(244,248,255,.91);
  --chrome-surface-strong: rgba(240,246,254,.97);
  --chrome-text: #0b0d10;
  --chrome-muted: #606775;
  --chrome-line: rgba(73,108,181,.1);
  --chrome-menu: rgba(220,229,243,.72);
  --chrome-panel: #f7faff;
  --chrome-action: linear-gradient(112deg,#10141d,#202938);
  --site-footer-height: 60px;
  --shell: min(1180px, calc(100vw - 64px));
  font-family: "SF Pro Text", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI",
    "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; color: var(--ink); background: var(--paper); overflow-x: hidden; }
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
::selection{color:#fff;background:#2864f0}
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }
button { font: inherit; }
button:focus-visible,a:focus-visible{outline:3px solid rgba(40,100,240,.28);outline-offset:3px}
img { display: block; max-width: 100%; }
svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.skip-link {
  position: fixed; left: 16px; top: 12px; z-index: 300; padding: 10px 14px;
  color: #fff; background: #0b0d10; border-radius: 8px; transform: translateY(-160%);
}
.skip-link:focus { transform: translateY(0); }

.site-header {
  position: fixed; inset: 0 0 auto; z-index: 100; height: 70px;
  color: var(--chrome-text); background: var(--chrome-surface); border-bottom: 1px solid var(--chrome-line);
  -webkit-backdrop-filter:blur(18px) saturate(145%);backdrop-filter:blur(18px) saturate(145%);
  transition: height .25s ease, background .25s ease, border-color .25s ease;
}
.site-header.scrolled { height: 62px; background: var(--chrome-surface-strong); border-color: var(--chrome-line); }
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(58,108,240,.18),transparent);pointer-events:none}
.nav-shell { width: var(--shell); height: 100%; margin: auto; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; flex: 0 0 auto; }
.brand-crown { width: 38px; height: 20px; display: grid; place-items: center; overflow: visible; }
.brand-crown img { width: 38px; height: auto; filter:drop-shadow(0 3px 6px rgba(220,151,22,.2)); }
.brand-name { font-size: 15px; line-height: 1; font-weight: 730; letter-spacing: -.02em; white-space: nowrap; }
.nav-content { display: flex; align-items: center; gap: 42px; }
.nav-links { display: flex; align-items: center; gap: 30px; }
.nav-links a { position: relative; padding: 23px 0; color: var(--chrome-muted); font-size: 13px; font-weight: 560; letter-spacing:.01em; }
.nav-links a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 16px; height: 1px; background: currentColor; transition: right .25s ease; }
.nav-links a:hover, .nav-links a.active { color: var(--chrome-text); }
.nav-links a:hover::after, .nav-links a.active::after { right: 0; }
.nav-action, .download-nav-pill {
  min-width: 112px; height: 40px; padding: 0 18px; display: inline-flex; align-items: center;
  justify-content: center; gap: 12px; color: #fff !important; background: var(--ink); border-radius: 999px;
  font-size: 12px; font-weight: 650; transition: transform .2s ease, background .2s ease;
}
.nav-action:hover, .download-nav-pill:hover { color: #fff; background: var(--blue); transform: translateY(-2px); }
.nav-action::after, .download-nav-pill::after { display: none; }
.menu-button { display: none; width: 40px; height: 40px; padding: 0; border: 0; background: none; cursor: pointer; }

.site-footer { position:relative;z-index:1;color:#aebbd0;background:#091a38;scroll-snap-align:end;scroll-snap-stop:normal; }
.site-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:rgba(151,181,235,.18)}
.footer-shell { box-sizing:border-box;width:var(--shell);height:var(--site-footer-height);margin:auto;padding:8px 0;display:flex;align-items:center;justify-content:center;gap:22px;text-align:center; }
.footer-brand { flex-direction:row;gap:8px;color:#f6f9ff;transition:opacity .2s ease,transform .2s ease; }
.footer-brand:hover{opacity:.86;transform:translateY(-1px)}
.footer-brand .brand-crown { width:28px;height:16px; }
.footer-brand .brand-crown img { width:28px;filter:none; }
.footer-brand .brand-name { font-size:13px;font-weight:680;letter-spacing:.01em; }
.footer-meta{display:flex;align-items:center;justify-content:center;gap:16px;padding-left:22px;border-left:1px solid rgba(151,181,235,.22);color:#b8c5d9;font-size:11px;line-height:1.4;letter-spacing:.01em}
.footer-company{font:inherit;white-space:nowrap}
.footer-separator{width:1px;height:12px;background:rgba(151,181,235,.28)}
.footer-filing{color:#d1dcef;font-weight:540;text-decoration:none;white-space:nowrap;transition:color .2s ease}
.footer-filing:hover,.footer-filing:focus-visible{color:#fff}

.home-page[data-chapter="capabilities"]{
  --chrome-surface:rgba(7,16,31,.92);--chrome-surface-strong:rgba(7,16,31,.97);--chrome-text:#f5f8ff;--chrome-muted:#a7b6cf;--chrome-line:rgba(122,163,239,.2);--chrome-menu:rgba(28,47,80,.86);--chrome-panel:#0b1729;--chrome-action:linear-gradient(112deg,#2d66e8,#5878f1)
}
.home-page[data-chapter="download"]{
  --chrome-surface:rgba(7,29,70,.91);--chrome-surface-strong:rgba(7,29,70,.97);--chrome-text:#f6f9ff;--chrome-muted:#b5c7e8;--chrome-line:rgba(147,184,255,.22);--chrome-menu:rgba(20,51,105,.88);--chrome-panel:#0a285c;--chrome-action:linear-gradient(112deg,#fff,#e7efff)
}
.home-page[data-chapter="download"] .nav-action{color:#1748bd!important}
.reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s cubic-bezier(.2,.7,.2,1), transform .7s cubic-bezier(.2,.7,.2,1); }
.reveal.is-visible { opacity: 1; transform: none; }

@media (max-width: 860px) {
  :root { --shell: calc(100vw - 32px); }
  .site-header, .site-header.scrolled { height: 60px; background: var(--chrome-surface-strong); border-color: var(--chrome-line); -webkit-backdrop-filter:none; backdrop-filter:none; }
  .brand { gap: 2px; }.brand-crown { width: 32px; height: 17px; }.brand-crown img { width: 32px; }.brand-name { font-size: 13px; }
  .menu-button { display: grid; place-content: center; gap: 6px; border-radius: 50%; background: var(--chrome-menu); }
  .menu-button span { width: 17px; height: 1.5px; background: var(--chrome-text); transition: transform .2s ease; }
  .menu-button[aria-expanded="true"] span:first-child { transform: translateY(3.75px) rotate(45deg); }
  .menu-button[aria-expanded="true"] span:last-child { transform: translateY(-3.75px) rotate(-45deg); }
  .nav-content {
    position: fixed; inset: 60px 0 0 auto; width: min(300px, calc(100vw - 44px)); padding: 18px 20px 30px;
    display: grid; align-content: start; gap: 22px; background: #fff; border-left: 1px solid var(--line);
    box-shadow: -22px 24px 50px rgba(11,13,16,.12); transform: translateX(105%); transition: transform .28s ease;
    color:var(--chrome-text);background:var(--chrome-panel);border-left-color:var(--chrome-line);
  }
  .nav-content.open { transform: none; }
  .nav-links { display: grid; gap: 0; }.nav-links a { padding: 16px 2px; border-bottom: 1px solid var(--line); font-size: 15px; }.nav-links a::after { display: none; }
  .nav-action, .download-nav-pill { width: 100%; height: 44px; }
  .footer-shell { width:calc(100vw - 20px);height:var(--site-footer-height);padding:7px 0;gap:10px;justify-content:center;text-align:center; }
  .footer-brand{gap:5px}
  .footer-brand .brand-crown,.footer-brand .brand-crown img{width:22px}
  .footer-brand .brand-name{font-size:10px}
  .footer-meta{gap:8px;padding-left:10px;font-size:8px}
  .footer-separator{height:10px}
  .reveal { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}

@media (prefers-contrast: more) {
  :root { --line: rgba(11,13,16,.35); }
  .nav-links a, .footer-shell { color: currentColor; }
}

/* Unified action language: calm geometry, consistent motion and clear icons. */
.button-icon{width:17px;height:17px;flex:0 0 auto;stroke-width:1.9;transition:transform .22s ease}
.nav-action,.download-nav-pill{border-radius:999px;background:var(--chrome-action);box-shadow:0 8px 18px rgba(12,20,34,.15)}
.nav-action:hover,.download-nav-pill:hover,.download-page .download-nav-pill:hover,.home-page[data-chapter="download"] .nav-action:hover{color:#fff!important;background:linear-gradient(112deg,#125ee2,#0b43ad);box-shadow:0 12px 28px rgba(5,48,132,.28),inset 0 1px 0 rgba(255,255,255,.18)}
.nav-action:hover .button-icon,.download-nav-pill:hover .button-icon{transform:translate(2px,-2px)}

@media (hover:none){.nav-action:hover,.download-nav-pill:hover{transform:none}}

/* 标题栏当前页面指示 */
@media (min-width:861px){
  .nav-links{gap:8px;padding:4px;border-radius:999px;background:color-mix(in srgb,var(--chrome-text) 4%,transparent)}
  .nav-links a:not(.download-nav-pill){min-width:76px;padding:10px 14px;text-align:center;border-radius:999px;transition:color .22s ease,background .22s ease,box-shadow .22s ease,transform .22s ease}
  .nav-links a:not(.download-nav-pill)::after{left:50%;right:auto;bottom:4px;width:15px;height:2px;border-radius:999px;background:currentColor;box-shadow:0 0 9px currentColor;opacity:0;transform:translateX(-50%) scaleX(.25);transition:opacity .22s ease,transform .22s ease}
  .nav-links a:not(.download-nav-pill):hover{background:color-mix(in srgb,var(--chrome-text) 6%,transparent)}
  .nav-links a:not(.download-nav-pill).active{color:var(--chrome-text);font-weight:680;background:color-mix(in srgb,var(--chrome-text) 11%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--chrome-text) 10%,transparent),0 8px 22px rgba(3,53,137,.1)}
  .nav-links a:not(.download-nav-pill).active::after{opacity:.82;transform:translateX(-50%) scaleX(1)}
  .download-nav-pill.active{box-shadow:0 10px 26px rgba(4,70,164,.2),0 0 0 3px rgba(255,255,255,.12),inset 0 1px 0 rgba(255,255,255,.72)}
}

@media (max-width:860px){
  .nav-links a{position:relative;padding:14px 14px 14px 18px;border-bottom-color:color-mix(in srgb,var(--chrome-text) 10%,transparent);border-radius:12px;transition:color .2s ease,background .2s ease}
  .nav-links a.active{color:var(--chrome-text);font-weight:680;background:color-mix(in srgb,var(--chrome-text) 9%,transparent)}
  .nav-links a.active::before{position:absolute;left:5px;top:50%;width:3px;height:20px;border-radius:999px;background:currentColor;box-shadow:0 0 10px color-mix(in srgb,var(--chrome-text) 55%,transparent);transform:translateY(-50%);content:""}
  .download-nav-pill.active::before{display:none}
}

/* 除下载入口外，导航保持纯文字状态 */
@media (min-width:861px){
  .nav-links{gap:30px;padding:0;background:transparent}
  .nav-links a:not(.download-nav-pill){min-width:0;padding:23px 2px;border-radius:0;background:transparent!important;box-shadow:none!important;transform:none}
  .nav-links a:not(.download-nav-pill):hover{background:transparent!important}
  .nav-links a:not(.download-nav-pill).active{background:transparent!important;box-shadow:none!important}
  .nav-links a:not(.download-nav-pill)::after{bottom:14px;width:18px;height:2px}
}
@media (max-width:860px){
  .nav-links a:not(.download-nav-pill),.nav-links a:not(.download-nav-pill).active{border-radius:0;background:transparent!important;box-shadow:none!important}
}

/* Title-bar download action follows the same integrated icon language. */
.nav-action,.download-nav-pill{min-width:116px;height:40px;padding:0 17px;justify-content:center;gap:8px;border:1px solid rgba(255,255,255,.72);border-radius:999px;font-weight:680;letter-spacing:.01em}
.nav-action .button-icon,.download-nav-pill .button-icon{width:15px;height:15px;flex:0 0 15px;stroke-width:2;transition:transform .2s ease}
.nav-action:hover .button-icon,.download-nav-pill:hover .button-icon{transform:translateY(2px)}
@media (max-width:860px){.nav-action,.download-nav-pill{width:100%;height:44px;gap:9px}.download-nav-pill{display:flex;align-items:center;justify-content:center}}
