/* 第一版产品表达与阅读体验；由发布脚本统一挂载到全部页面。 */
[hidden] { display: none !important; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.hero h1 { font-size:clamp(32px,3.45vw,49px); line-height:1.4; letter-spacing:-1.4px; }
.hero-inner { grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr); align-items:center; }
.hero-assurance { color:var(--soft); font-size:13px; margin-top:24px; line-height:2; }
.hero-assurance span { margin:0 8px; color:var(--blue); }
.hero-code .code-plain { border:0; background:transparent; box-shadow:none; margin:12px 0; }
.hero-code .code-head { padding:8px 0; background:transparent; }
.hero-code .code-body { padding:12px 0; }
.hero-code pre { font-size:13px; }
.hero-code .terminal-body { padding:24px; }
.hero-stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
.stat-cell .num { font-variant-numeric:tabular-nums; }
.arch-principles article { padding:18px 0; border-top:1px solid var(--line-soft); }
.arch-principles h4 { font-size:16px; margin:0 0 8px; }
.arch-principles p { font-size:14px; color:var(--soft); line-height:1.8; margin:0; }
.ext-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ext-card { display:flex; flex-direction:column; }
.ext-head h3 { margin:0; font-family:var(--font-mono); font-size:21px; color:var(--ext-c); }
.ext-badge { color:var(--ext-c); background:var(--bg0); border:1px solid var(--line); }
.ext-link { display:inline-block; font-size:13px; margin-top:auto; padding-top:20px; color:var(--ext-c); }
.capability-label { display:block; color:var(--cyan); font:11px var(--font-mono); letter-spacing:1.3px; margin-bottom:20px; }
.b-card > a { display:inline-block; margin-top:20px; font-size:13px; }
.evidence-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.evidence-card { min-width:0; padding:30px; border:1px solid var(--line); border-radius:var(--radius-lg); background:linear-gradient(140deg,rgba(91,157,255,.055),rgba(9,14,26,.6)); }
.evidence-card h3 { font-size:20px; margin:0 0 12px; }
.evidence-card p { color:var(--soft); font-size:14px; line-height:1.85; }
.evidence-card a { display:inline-block; font-size:13px; margin:12px 18px 0 0; }
.evidence-number { font-size:clamp(28px,3vw,42px); color:var(--text); font-weight:700; letter-spacing:-1px; margin:10px 0 22px; font-variant-numeric:tabular-nums; }
.evidence-number small { font-size:13px; color:var(--soft); font-weight:400; letter-spacing:0; }
.source-note { color:var(--soft); font-size:13px; line-height:1.9; margin:20px 0; overflow-wrap:anywhere; }
.source-link { color:var(--soft); }
.start-banner { padding:42px; border:1px solid var(--line); border-radius:var(--radius-lg); background:radial-gradient(ellipse at top right,rgba(91,157,255,.14),transparent 70%),var(--bg1); }
.start-banner h2 { font-size:clamp(24px,3vw,34px); letter-spacing:-.8px; margin:8px 0 14px; }
.start-banner p { color:var(--soft); }
.start-banner .hero-actions { margin-top:24px; }
.evidence-page section + section { margin-top:64px; padding-top:32px; border-top:1px solid var(--line); }
.evidence-page table.data { min-width:780px; font-size:13px; font-variant-numeric:tabular-nums; }
.evidence-page table.data td, .evidence-page table.data th { white-space:nowrap; }
.page-content, .book-layout, .book-main, .api-layout, .api-main, .code-block { min-width:0; }
.platform-commands { min-width:0; }
.platform-commands .code-block { margin:0 0 16px; }
.platform-commands .fname { font-size:11px; }
.table-wrap { max-width:100%; scrollbar-color:var(--muted) var(--bg0); }
.footer h3 { margin:0 0 18px; font-size:12px; color:var(--soft); text-transform:uppercase; letter-spacing:1.5px; }
.nav-dropdown { position:relative; }
.nav-dropdown summary { list-style:none; cursor:pointer; padding:8px 12px; font-size:13px; color:var(--soft); border-radius:7px; }
.nav-dropdown summary::-webkit-details-marker { display:none; }
.nav-dropdown summary::after { content:'⌄'; margin-left:6px; }
.nav-dropdown[open] summary { color:var(--text); background:var(--bg3); }
.nav-dropdown > div { position:absolute; top:calc(100% + 12px); right:0; min-width:150px; padding:8px; border:1px solid var(--line); border-radius:12px; background:var(--bg1); box-shadow:0 12px 36px #0008; }
.nav-dropdown > div a { display:block; white-space:nowrap; }
.nav-links a[aria-current="page"] { color:var(--cyan); }
.api-ref-example { position:relative; }
.api-ref-example pre.code { padding-top:44px; }
.api-ref-example > .copy-btn { position:absolute; right:8px; top:8px; opacity:1; z-index:1; }
.copy-btn { min-height:32px; min-width:50px; touch-action:manipulation; }
.copy-btn:focus-visible { opacity:1; }
.api-search-box { position:relative; padding:24px; margin-bottom:24px; background:var(--bg1); border:1px solid var(--line); border-radius:14px; }
.api-search-box label { display:flex; justify-content:space-between; gap:10px; align-items:center; font-size:14px; margin-bottom:12px; }
.api-search-box kbd { color:var(--soft); font:11px var(--font-mono); }
#apiSearch { width:100%; padding:14px 16px; background:var(--bg0); color:var(--text); font:inherit; font-size:15px; border:1px solid var(--line); border-radius:8px; box-sizing:border-box; }
#apiSearchCount { margin:12px 0 0; font-size:13px; color:var(--soft); }
.search-results { list-style:none; padding:0; margin:20px 0 0; max-height:420px; overflow-y:auto; border-top:1px solid var(--line); }
.search-results li { margin:0; }
.search-results a { display:flex; flex-direction:column; gap:4px; padding:12px 8px; border-bottom:1px solid var(--line-soft); text-decoration:none; overflow-wrap:anywhere; }
.search-results a:hover, .search-results a:focus-visible { background:var(--bg3); }
.search-results strong { font:13px var(--font-mono); color:var(--cyan); }
.search-results span { font-size:12px; color:var(--soft); }
.api-directory-summary { font-size:13px; color:var(--soft); margin-bottom:26px; }
@media (max-width:1024px) {
  .hero-inner { grid-template-columns:minmax(0,1fr); }
  .hero h1 { font-size:clamp(32px,5.5vw,49px); }
  .hero-code { max-width:640px; width:100%; }
  .ext-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:768px) {
  .hero h1 { font-size:clamp(27px,7.1vw,43px); letter-spacing:-.8px; }
  .hero-assurance span { margin:0 3px; }
  .hero-stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .hero-stats .num { font-size:26px; }
  .hero-stats .lbl { font-size:11px; line-height:1.7; }
  .stat-cell { padding:22px 8px; }
  .evidence-grid { grid-template-columns:minmax(0,1fr); }
  .evidence-card { padding:24px; }
  .start-banner { padding:28px 22px; }
  .nav-links { max-height:calc(100dvh - var(--nav-h)); overflow-y:auto; }
  .nav-dropdown summary { padding:11px 14px; font-size:15px; }
  .nav-dropdown > div { position:static; box-shadow:none; margin:4px 14px 8px; }
  .api-search-box { padding:18px; }
  body.menu-open { overflow:hidden; }
  html:not(.js-enabled) .nav-toggle { display:none; }
  html:not(.js-enabled) .nav { position:relative; }
  html:not(.js-enabled) .nav-inner { flex-wrap:wrap; }
  html:not(.js-enabled) .nav-links { position:static; visibility:visible; opacity:1; transform:none; width:100%; max-height:none; }
  html:not(.js-enabled) .hero { padding-top:40px; }
}
@media (max-width:520px) {
  .ext-grid { grid-template-columns:minmax(0,1fr); }
  .hero-stats .lbl { max-width:110px; margin:auto; }
  .hero-code .terminal-body { padding:18px; }
}
@media (prefers-reduced-motion:reduce) {
  .motion-ready .reveal { opacity:1; transform:none; transition:none; }
}
