/* 麓鸣 Lom 官网：中性黑白灰（版式与配色参考 usemagpie.ai），背景是宇航.design 的点阵水面 */
:root {
  --bg: #fafafa; --bg2: #f1f1f2; --card: #ffffff; --ink: #111112; --ink2: #4a4a50; --ink3: #85858c;
  --line: #e4e4e7; --btn: #111112; --btn-ink: #fafafa; --code: #f4f4f5; --ok: #1f8a4c;
  --shadow: 0 1px 2px rgba(0,0,0,.04), 0 12px 40px -12px rgba(0,0,0,.18);
  --header: rgba(250,250,250,.78);
  /* 点阵水面（heang-motion.js 读取这几个变量） */
  --h-bg-dot: rgba(17,17,18,.075); --h-accent: #111112; --h-ink: #111112; --h-fog: #b3b3ba;
  --font: -apple-system, BlinkMacSystemFont, "SF Pro Text", Inter, "Segoe UI", system-ui, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  --mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;
  --wrap: 1180px;
  color-scheme: light;
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #0b0b0c; --bg2: #121214; --card: #161618; --ink: #f2f2f3; --ink2: #b3b3ba; --ink3: #7a7a82;
    --line: #26262a; --btn: #f2f2f3; --btn-ink: #0b0b0c; --code: #151517; --ok: #4cc07a;
    --shadow: 0 1px 2px rgba(0,0,0,.3), 0 20px 60px -20px rgba(0,0,0,.8); --header: rgba(11,11,12,.78);
    --h-bg-dot: rgba(242,242,243,.07); --h-accent: #f2f2f3; --h-ink: #f2f2f3; --h-fog: #b3b3ba;
    color-scheme: dark;
  }
  :root:not([data-theme="light"]) .inv, :root:not([data-theme="light"]) .logos .mono { filter: invert(1); }
  :root:not([data-theme="light"]) .shot-light { display: none; }
  :root:not([data-theme="light"]) .shot-dark { display: block; }
}
:root[data-theme="dark"] {
  --bg: #0b0b0c; --bg2: #121214; --card: #161618; --ink: #f2f2f3; --ink2: #b3b3ba; --ink3: #7a7a82;
  --line: #26262a; --btn: #f2f2f3; --btn-ink: #0b0b0c; --code: #151517; --ok: #4cc07a;
  --shadow: 0 1px 2px rgba(0,0,0,.3), 0 20px 60px -20px rgba(0,0,0,.8); --header: rgba(11,11,12,.78);
  --h-bg-dot: rgba(242,242,243,.07); --h-accent: #f2f2f3; --h-ink: #f2f2f3; --h-fog: #b3b3ba;
  color-scheme: dark;
}
:root[data-theme="dark"] .inv, :root[data-theme="dark"] .logos .mono { filter: invert(1); }
:root[data-theme="dark"] .shot-light { display: none; }
:root[data-theme="dark"] .shot-dark { display: block; }

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 80px; }
body {
  margin: 0; background-color: var(--bg); color: var(--ink); font: 16px/1.6 var(--font);
  background-image: radial-gradient(var(--h-bg-dot) 1px, transparent 1.2px); background-size: 22px 22px;
  -webkit-font-smoothing: antialiased; overflow-x: hidden;
}
html.has-field body { background-image: none; }
a { color: inherit; }
img { max-width: 100%; }
code, kbd, pre { font-family: var(--mono); }
:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; border-radius: 6px; }
::selection { background: var(--ink); color: var(--bg); }
.page { position: relative; z-index: 1; }
.wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 24px; }

/* 顶栏 */
.top { position: sticky; top: 0; z-index: 20; background: var(--header); backdrop-filter: saturate(1.6) blur(14px); -webkit-backdrop-filter: saturate(1.6) blur(14px); border-bottom: 1px solid transparent; }
.top.scrolled { border-bottom-color: var(--line); }
.top .wrap { height: 64px; display: flex; align-items: center; gap: 20px; }
.brand { display: flex; align-items: center; gap: 9px; text-decoration: none; font-weight: 680; font-size: 17px; letter-spacing: -.01em; }
.brand img { width: 27px; height: 22px; display: block; }
.brand .sub { color: var(--ink3); font-weight: 400; padding-left: 10px; margin-left: 2px; border-left: 1px solid var(--line); font-size: 15px; }
.nav { display: flex; gap: 22px; margin-left: auto; font-size: 14px; }
.nav a { text-decoration: none; color: var(--ink2); }
.nav a:hover, .nav a.on { color: var(--ink); }
.tools { display: flex; gap: 8px; align-items: center; }
.ibtn { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid var(--line); background: var(--card); color: var(--ink); border-radius: 9px; cursor: pointer; padding: 0; }
.ibtn svg { width: 17px; height: 17px; }
.ibtn svg[hidden] { display: none; }
.ibtn:hover { background: var(--bg2); }
.menu-btn { display: none; }

/* 按钮 */
.btn { display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 16px; border-radius: 10px; font: 560 15px/1 var(--font); text-decoration: none; border: 1px solid var(--btn); background: var(--btn); color: var(--btn-ink); cursor: pointer; white-space: nowrap; transition: transform .12s ease, opacity .12s ease; }
.btn:hover { opacity: .88; }
.btn:active { transform: translateY(1px); }
.btn svg { width: 16px; height: 16px; }
.btn.sec { background: var(--card); color: var(--ink); border-color: var(--line); }
.btn.sec:hover { background: var(--bg2); opacity: 1; }
.btn.sm { height: 34px; padding: 0 14px; font-size: 14px; border-radius: 8px; }

/* 首页主视觉 */
.hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.18fr); gap: 56px; align-items: center; padding: 72px 0 56px; min-height: calc(100svh - 64px); }
h1 { font-size: clamp(40px, 5.4vw, 64px); line-height: 1.08; letter-spacing: -.035em; font-weight: 700; margin: 0 0 22px; text-wrap: balance; }
h1 .dim, h2 .dim { color: var(--ink3); }
.lead { font-size: 19px; color: var(--ink2); margin: 0 0 26px; max-width: 34em; }
.pairs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.pair { display: inline-flex; align-items: center; gap: 7px; padding: 6px 12px; border: 1px solid var(--line); background: var(--card); border-radius: 999px; font-size: 13.5px; color: var(--ink2); }
.pair b { color: var(--ink); font-weight: 600; }
.pair img { width: 16px; height: 16px; }
.pair .ar { color: var(--ink3); }
.ctas { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 14px; }
.meta { font-size: 13px; color: var(--ink3); }
.meta a { color: var(--ink2); }
.shot { border: 1px solid var(--line); border-radius: 16px; overflow: hidden; box-shadow: var(--shadow); background: var(--card); aspect-ratio: 16 / 10; }
.shot img { display: block; width: 100%; height: 100%; object-fit: cover; }
.shot-dark { display: none; }
.video { margin-top: 30px; border: 1px solid var(--line); border-radius: 18px; overflow: hidden; box-shadow: var(--shadow); background: #000; aspect-ratio: 16 / 9; }
.video video { display: block; width: 100%; height: 100%; }

/* 区块 */
section.block { padding: 88px 0; }
.eyebrow { font-size: 13px; color: var(--ink3); margin: 0 0 12px; letter-spacing: .02em; }
h2 { font-size: clamp(30px, 3.6vw, 42px); line-height: 1.15; letter-spacing: -.03em; font-weight: 680; margin: 0 0 18px; text-wrap: balance; }
h3 { font-size: 17px; font-weight: 640; margin: 0 0 6px; letter-spacing: -.01em; }
.sub-lead { font-size: 18px; color: var(--ink2); max-width: 40em; margin: 0 0 36px; }
.split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 56px; align-items: center; }
.split.rev > :first-child { order: 2; }
.card { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 22px; }
.card p { margin: 0; color: var(--ink2); font-size: 14.5px; }
.grid { display: grid; gap: 16px; }
.g2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.g3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.g4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.checks { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; }
.checks li { position: relative; padding-left: 28px; color: var(--ink2); }
.checks li b { color: var(--ink); font-weight: 600; }
.checks li::before { content: ""; position: absolute; left: 2px; top: .42em; width: 15px; height: 15px; border-radius: 50%; background: var(--ink); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0Zm3.7 5.8-4.2 4.6a.8.8 0 0 1-1.1.1L4.3 8.6a.8.8 0 1 1 1-1.2l1.5 1.3 3.7-4a.8.8 0 1 1 1.2 1.1Z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0Zm3.7 5.8-4.2 4.6a.8.8 0 0 1-1.1.1L4.3 8.6a.8.8 0 1 1 1-1.2l1.5 1.3 3.7-4a.8.8 0 1 1 1.2 1.1Z'/%3E%3C/svg%3E") center / contain no-repeat; }

/* 支持的 Agent / 模型 */
.strip { padding: 24px 0 8px; text-align: center; }
.strip .eyebrow { text-transform: uppercase; letter-spacing: .08em; font-size: 12px; }
.logos { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 22px; margin: 0 auto 30px; max-width: 980px; font-size: 14.5px; color: var(--ink2); }
.logos span { display: inline-flex; align-items: center; gap: 7px; }
.logos img { width: 18px; height: 18px; object-fit: contain; }
.logos .more { color: var(--ink3); }

/* 工作原理图 */
.flow { display: grid; grid-template-columns: minmax(0, 1fr) 40px minmax(0, 1.05fr) 40px minmax(0, 1fr); align-items: center; gap: 0; }
.flow .arrow { text-align: center; color: var(--ink3); font-size: 20px; }
.node { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 18px 18px 14px; }
.node.hub { box-shadow: var(--shadow); text-align: center; padding: 28px 22px; }
.node .ttl { font-size: 12px; letter-spacing: .06em; color: var(--ink3); margin-bottom: 10px; text-transform: uppercase; }
.node ul { list-style: none; margin: 0; padding: 0; }
.node li { display: flex; justify-content: space-between; gap: 10px; padding: 6px 0; font-size: 14.5px; }
.node li em { font-style: normal; color: var(--ink3); font-size: 12.5px; white-space: nowrap; }
.hub img { width: 44px; height: 36px; margin: 0 auto 12px; display: block; }
.hub b { display: block; font-size: 17px; margin-bottom: 6px; }
.hub code { font-size: 12.5px; color: var(--ink3); }
.chips { display: grid; gap: 8px; margin-top: 16px; }
.chip { border: 1px solid var(--line); background: var(--bg2); border-radius: 8px; padding: 7px 10px; font-size: 13px; color: var(--ink2); }

/* 示意卡片：任务过程、TEAM.md、切换器、技能 */
.mock { background: var(--card); border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow); overflow: hidden; }
.mock-head { display: flex; align-items: center; gap: 8px; padding: 12px 16px; border-bottom: 1px solid var(--line); font-size: 13.5px; color: var(--ink2); }
.mock-head .dots { display: inline-flex; gap: 6px; margin-right: 6px; }
.mock-head .dots i { width: 10px; height: 10px; border-radius: 50%; background: var(--line); }
.mock-body { padding: 16px; display: grid; gap: 10px; }
.bubble { justify-self: end; background: var(--bg2); border-radius: 14px; padding: 10px 14px; font-size: 14px; max-width: 86%; }
.step { display: flex; align-items: center; gap: 10px; border: 1px solid var(--line); border-radius: 12px; padding: 10px 12px; font-size: 14px; }
.step .ic { width: 28px; height: 28px; border-radius: 8px; background: var(--bg2); display: grid; place-items: center; flex: none; }
.step .ic svg { width: 15px; height: 15px; }
.step small { display: block; color: var(--ink3); font-size: 12.5px; }
.step .st { margin-left: auto; font-size: 12px; color: var(--ok); white-space: nowrap; }
.answer { font-size: 14px; color: var(--ink2); }
.answer b { color: var(--ink); }
.md { font: 13px/1.75 var(--mono); padding: 18px 20px; color: var(--ink2); white-space: pre-wrap; margin: 0; background: transparent; }
.md .h { color: var(--ink); font-weight: 700; }
.md .k { color: var(--ink); }
.sw-row { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-radius: 10px; font-size: 14px; }
.sw-row img { width: 22px; height: 22px; object-fit: contain; }
.sw-row small { color: var(--ink3); font-size: 12.5px; display: block; }
.sw-row.on { background: var(--bg2); }
.sw-row .tick { margin-left: auto; font-size: 12px; color: var(--ink3); white-space: nowrap; }
.price { margin-left: auto; font-size: 12px; padding: 3px 9px; border-radius: 999px; border: 1px solid var(--line); color: var(--ink2); white-space: nowrap; }
.price.free { color: var(--ok); border-color: color-mix(in srgb, var(--ok) 40%, var(--line)); }
.steps4 { counter-reset: s; }
.steps4 .card { position: relative; padding-top: 52px; }
.steps4 .card::before { counter-increment: s; content: counter(s); position: absolute; top: 18px; left: 22px; width: 24px; height: 24px; border-radius: 50%; border: 1px solid var(--line); display: grid; place-items: center; font-size: 12.5px; color: var(--ink2); }

/* npm 安装入口 */
.npm-install { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin: 0 0 28px; }
.npm-install pre { display: inline-flex; align-items: center; gap: 24px; margin: 0; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--code); color: var(--ink2); font: 13px/1.5 var(--font); }
.npm-install pre .copy { position: static; margin: 0; }
.npm-install .npm-note { color: var(--ink3); font-size: 12px; }


/* 下载 */
.dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.dl .card { padding: 26px; display: grid; gap: 14px; align-content: start; }
.dl h3 { font-size: 20px; display: flex; align-items: center; gap: 10px; }
.dl h3 svg { width: 22px; height: 22px; }
.dl .req { color: var(--ink2); font-size: 14.5px; }
.dl .fine { font-size: 12.5px; color: var(--ink3); word-break: break-all; font-family: var(--mono); }
.dl .note { font-size: 13.5px; color: var(--ink2); border-top: 1px solid var(--line); padding-top: 14px; }
.oss { margin-top: 16px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 24px; padding: 22px 26px; }
.oss-text { flex: 1 1 380px; min-width: 0; display: grid; gap: 6px; }
.oss h3 { font-size: 18px; margin: 0; display: flex; align-items: center; gap: 10px; }
.oss h3 svg { width: 20px; height: 20px; }
.brand span { white-space: nowrap; }
@media (max-width: 440px) { .gh-btn > span:not(.gh-count) { display: none; } .gh-btn { padding: 0 10px; } }
.lang-btn { gap: 6px; padding: 0 11px; }
.lang-btn svg { width: 15px; height: 15px; }
@media (max-width: 440px) { .lang-btn svg { display: none; } .lang-btn { padding: 0 10px; } }
.doc .zh { color: var(--ink3); font-size: .9em; font-weight: 400; }
.gh-count { padding-left: 8px; border-left: 1px solid currentColor; font-variant-numeric: tabular-nums; opacity: .8; }
.extra { margin-top: 16px; display: flex; flex-wrap: wrap; gap: 10px 24px; justify-content: center; color: var(--ink3); font-size: 14px; }

.credits { margin-top: 32px; padding: 24px 0; border-top: 1px solid var(--line); }
.credits h3 { margin: 0 0 12px; font-size: 16px; color: var(--ink); }
.credits-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: 12px 32px; }
.credits p { margin: 0; color: var(--ink2); font-size: 14px; line-height: 1.8; }
.credits a { color: var(--ink); font-weight: 600; text-underline-offset: 3px; }

/* 页脚 */
footer { border-top: 1px solid var(--line); padding: 36px 0 48px; margin-top: 40px; color: var(--ink3); font-size: 13.5px; }
footer .wrap { display: flex; flex-wrap: wrap; gap: 16px 28px; align-items: center; }
footer nav { display: flex; flex-wrap: wrap; gap: 18px; margin-left: auto; }
footer a { text-decoration: none; color: var(--ink2); }
footer a:hover { color: var(--ink); }

/* 文档 */
.docs { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 48px; padding: 40px 0 60px; }
.side { position: sticky; top: 88px; align-self: start; font-size: 14px; max-height: calc(100vh - 110px); overflow: auto; }
.side .eyebrow { margin-bottom: 8px; }
.side a { display: block; text-decoration: none; color: var(--ink2); padding: 4px 0; }
.side a:hover { color: var(--ink); }
.side a.on { color: var(--ink); font-weight: 650; }
.side .toc a { padding-left: 12px; font-size: 13.5px; color: var(--ink3); }
.side .toc a:hover { color: var(--ink); }
.doc { max-width: 780px; min-width: 0; }
.doc .crumb { font-size: 13px; color: var(--ink3); margin-bottom: 10px; }
.doc h1 { font-size: clamp(34px, 4vw, 44px); margin-bottom: 16px; }
.doc .intro { font-size: 18px; color: var(--ink2); margin: 0 0 28px; }
.doc h2 { font-size: 26px; margin: 48px 0 14px; letter-spacing: -.02em; }
.doc h3 { margin-top: 26px; }
.doc p, .doc li { color: var(--ink2); }
.doc li { margin: 6px 0; }
.doc ol, .doc ul { padding-left: 22px; }
.doc b, .doc strong { color: var(--ink); }
.doc a { text-decoration-color: var(--ink3); text-underline-offset: 3px; }
.doc .card { margin: 0; }
.doc code { background: var(--code); border: 1px solid var(--line); border-radius: 6px; padding: 1px 6px; font-size: .88em; }
.doc pre { background: var(--code); border: 1px solid var(--line); border-radius: 12px; padding: 14px 16px; overflow: auto; font-size: 13.5px; line-height: 1.6; position: relative; }
.doc pre code { background: none; border: 0; padding: 0; }
.doc pre:has(> .copy) { padding-right: 66px; white-space: pre-wrap; overflow-wrap: anywhere; }
.dl pre { background: var(--code); border: 1px solid var(--line); border-radius: 10px; margin: 8px 0; padding: 10px 62px 10px 12px; font-size: 12px; line-height: 1.55; white-space: pre-wrap; overflow-wrap: anywhere; position: relative; }
.copy { position: absolute; top: 8px; right: 8px; font: 12px var(--font); border: 1px solid var(--line); background: var(--card); color: var(--ink2); border-radius: 6px; padding: 3px 8px; cursor: pointer; }
.callout { border: 1px solid var(--line); background: var(--card); border-radius: 12px; padding: 14px 16px; margin: 18px 0; font-size: 14.5px; color: var(--ink2); }
.callout b:first-child { display: block; margin-bottom: 4px; }
.tbl { width: 100%; border-collapse: collapse; font-size: 14.5px; margin: 14px 0; }
.tbl th, .tbl td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--line); vertical-align: top; }
.tbl th { color: var(--ink3); font-weight: 500; font-size: 13px; }
.tbl td:first-child { white-space: nowrap; color: var(--ink); }
.links { display: flex; flex-wrap: wrap; gap: 10px; margin: 14px 0; }
.next { display: flex; justify-content: space-between; gap: 16px; margin-top: 56px; padding-top: 22px; border-top: 1px solid var(--line); }
.next a { text-decoration: none; color: var(--ink2); font-size: 14px; }
.next a b { display: block; color: var(--ink); font-size: 16px; }

/* 加载动画（宇航.design 闪屏，配色改成本站的中性色） */
#heang-splash { position: fixed; inset: 0; z-index: 2147483000; display: grid; place-items: center; background-color: #fafafa; background-image: radial-gradient(rgba(17,17,18,.075) 1px, transparent 1.2px); background-size: 22px 22px; transition: opacity .42s ease; animation: hs-failsafe .4s ease 9s forwards; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) #heang-splash { background-color: #0b0b0c; background-image: radial-gradient(rgba(242,242,243,.07) 1px, transparent 1.2px); } }
:root[data-theme="dark"] #heang-splash { background-color: #0b0b0c; background-image: radial-gradient(rgba(242,242,243,.07) 1px, transparent 1.2px); }
#heang-splash.hs-reveal { opacity: 0; pointer-events: none; }
#heang-splash .hs-mark { position: relative; width: 88px; height: 88px; transition: transform .64s cubic-bezier(.65,0,.25,1); }
#heang-splash .hs-mark > img { display: block; width: 100%; height: 100%; object-fit: contain; }
#heang-splash .hs-mark::before, #heang-splash .hs-ring { content: ""; position: absolute; inset: -22px; border-radius: 50%; transition: opacity .18s ease; }
#heang-splash .hs-mark::before { border: 3px solid var(--line); }
#heang-splash .hs-ring { background: conic-gradient(from 0deg, transparent 0 18%, color-mix(in srgb, var(--ink) 45%, transparent) 50%, var(--ink) 100%); -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 2.5px)); mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 2.5px)); animation: hs-spin .9s linear infinite; }
#heang-splash.hs-done .hs-ring, #heang-splash.hs-done .hs-mark::before { opacity: 0; }
@keyframes hs-spin { to { transform: rotate(1turn); } }
@keyframes hs-failsafe { to { opacity: 0; visibility: hidden; pointer-events: none; } }
@media (prefers-reduced-motion: reduce) { #heang-splash .hs-ring { animation: none; } #heang-splash .hs-mark { transition: none; } .btn { transition: none; } }

/* 窄屏 */
@media (max-width: 960px) {
  .hero, .split { grid-template-columns: 1fr; gap: 36px; }
  .split.rev > :first-child { order: 0; }
  .hero { padding-top: 44px; }
  .flow { grid-template-columns: 1fr; gap: 12px; }
  .flow .arrow { transform: rotate(90deg); }
  .g4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .g3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dl { grid-template-columns: 1fr; }
  .docs { grid-template-columns: 1fr; gap: 20px; }
  .side { position: static; max-height: none; border: 1px solid var(--line); border-radius: 12px; padding: 12px 16px; background: var(--card); }
  .side .toc { display: none; }
}
@media (max-width: 760px) {
  .nav { display: none; position: absolute; top: 64px; left: 0; right: 0; flex-direction: column; gap: 0; background: var(--bg); border-bottom: 1px solid var(--line); padding: 8px 16px 14px; }
  .nav.open { display: flex; }
  .nav a { padding: 10px 0; font-size: 16px; }
  .menu-btn { display: grid; }
  .tools { margin-left: auto; }
  .top .dl-btn { display: none; }
  .wrap { padding: 0 16px; }
  .g2, .g3, .g4, .dl { grid-template-columns: 1fr; }
  section.block { padding: 64px 0; }
  .lead { font-size: 17px; }
  .brand .sub { display: none; }
  .tbl td:first-child { white-space: normal; }
}

/* 首页技术标识：与正文同色阶，轻量强调 Rust 核心 */
.tech-note { display: inline-flex; align-items: center; gap: 9px; margin: 0 0 22px; padding: 6px 12px 6px 7px; border: 1px solid var(--line); border-radius: 999px; background: var(--card); color: var(--ink2); font-size: 14px; line-height: 1.4; }
.tech-note strong { color: var(--ink); font-weight: 650; }
.tech-mark { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--ink); color: var(--bg); font: 700 14px/1 var(--mono); }

/* 首页底部：能做什么、常见问题 */
.exs { align-items: start; }
.ex h3 { margin-bottom: 10px; }
.ex ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.ex li { display: grid; gap: 2px; padding-top: 10px; border-top: 1px solid var(--line); }
.ex li:first-child { border-top: 0; padding-top: 0; }
.ex li b { font-size: 13px; color: var(--ink3); font-weight: 600; }
.ex li span { color: var(--ink); font-size: 14.5px; line-height: 1.55; }
.faq { display: grid; gap: 10px; max-width: 820px; }
.faq details { border: 1px solid var(--line); background: var(--card); border-radius: 14px; padding: 0 18px; }
.faq summary { cursor: pointer; padding: 16px 0; font-weight: 600; list-style: none; display: flex; justify-content: space-between; gap: 12px; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; color: var(--ink3); font-weight: 400; }
.faq details[open] summary::after { content: "−"; }
.faq details p { margin: 0 0 16px; color: var(--ink2); }
.faq-more { margin-top: 18px; font-size: 14px; color: var(--ink3); }

/* SITE-020：开发者文档栏目（表格横向滚动、侧栏章节缩进） */
.tblwrap { overflow-x: auto; margin: 14px 0; }
.tblwrap .tbl { margin: 0; min-width: 480px; }
.tblwrap .tbl td { overflow-wrap: anywhere; }
.side a.subnav { padding-left: 12px; font-size: 13.5px; }
.doc hr { border: 0; border-top: 1px solid var(--line); margin: 28px 0; }
.doc pre { max-width: 100%; }

/* SITE-020：手机 Agent、个人助理、团队群聊、Mika 下载 */
.tag { display: inline-block; margin-left: 10px; padding: 2px 9px; border: 1px solid var(--line); border-radius: 999px; font-size: 12px; font-weight: 500; line-height: 1.5; color: var(--ink2); vertical-align: middle; white-space: nowrap; letter-spacing: 0; }
.jev .tag, .eyebrow .tag { margin-left: 0; }
.eyebrow .tag { margin-left: 10px; }
.tag.soon { color: var(--ink); border-style: dashed; }
.jev { grid-template-columns: 1fr; align-content: center; }
.jev .card { display: grid; gap: 10px; justify-items: start; }
.jev .card.soon { border-style: dashed; }
.pa-cards .card { display: grid; gap: 10px; align-content: start; }
.pa-cards .card h3 { margin: 0; }
.pa-cards .card p a { white-space: nowrap; }
.pa-checks { margin-top: 28px; max-width: 52em; }
.pa-checks code, .mika-notes code { background: var(--code); border: 1px solid var(--line); border-radius: 6px; padding: 1px 6px; font-size: .88em; }
.chain { margin-top: 56px; }
.chain-title { font-size: clamp(20px, 2.4vw, 26px); margin: 0 0 20px; }
.chain-note { margin: 18px 0 0; color: var(--ink2); font-size: 14.5px; }
.mika { margin-top: 16px; padding: 26px; display: grid; gap: 18px; }
.mika-head h3 { font-size: 20px; display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-bottom: 8px; }
.mika-head h3 svg { width: 22px; height: 22px; }
.mika-head h3 .tag { margin-left: 0; }
.mika-head p { color: var(--ink2); font-size: 14.5px; max-width: 58em; }
.mika-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 24px; margin: 0; }
.mika-facts > div { min-width: 0; }
.mika-facts .wide { grid-column: 1 / -1; }
.mika-facts dt { font-size: 12.5px; color: var(--ink3); margin-bottom: 2px; }
.mika-facts dd { margin: 0; font-size: 14.5px; color: var(--ink); overflow-wrap: anywhere; }
.mika-facts dd.mono { font-family: var(--mono); font-size: 12.5px; color: var(--ink2); word-break: break-all; }
.mika-act .btn[aria-disabled="true"] { opacity: .55; cursor: not-allowed; pointer-events: none; }
.mika-notes { margin: 0; padding-left: 20px; display: grid; gap: 6px; color: var(--ink2); font-size: 13.5px; }
@media (max-width: 760px) { .mika-facts { grid-template-columns: 1fr; } .mika { padding: 20px; } }

/* SITE-WIN-PAUSE-01: unavailable installers are visibly disabled. */
.btn:disabled{opacity:.55;cursor:not-allowed}
