/* LOFYZ · 轨道图（版式库 37）。整页深色星空：页眉 + 首屏（左标题与玻璃卡、右轨道图）→ 图注 → 深色星体卡 → 轨道之外 → 作者框 → 页脚。
   颜色只在 :root 里改；五条轨道色 zhu / nei / wai / fa / hong 由 .is-<名> 套到 --c（主色）、--ci（浅色字）、--cg（卡角辉光）。 */
:root{
 --bg:#0a1020;--bg2:#0d1529;--card:#101a30;--card2:#0d1629;--line:#1d2943;--line2:#26344f;
 --text:#e2e8f0;--soft:#cbd5e1;--muted:#94a3b8;--dim:#64748b;--white:#f8fafc;
 --blue:#3b82f6;--blue2:#6366f1;--link:#93c5fd;
 --sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans CJK SC","Source Han Sans SC",system-ui,sans-serif;
 --mono:ui-monospace,"Cascadia Mono","SFMono-Regular",Consolas,Menlo,monospace;
 --wrap:1240px;--pad:24px;--r:16px;
 color-scheme:dark;
}
.is-zhu{--c:#3b82f6;--ci:#93c5fd;--cg:rgba(59,130,246,.16)}
.is-nei{--c:#34d399;--ci:#6ee7b7;--cg:rgba(52,211,153,.13)}
.is-wai{--c:#fbbf24;--ci:#fcd34d;--cg:rgba(251,191,36,.12)}
.is-fa{--c:#a78bfa;--ci:#c4b5fd;--cg:rgba(167,139,250,.15)}
.is-hong{--c:#fb7185;--ci:#fda4af;--cg:rgba(251,113,133,.13)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;position:relative;min-height:100vh;background:var(--bg);color:var(--text);font:16px/1.7 var(--sans);overflow-x:hidden}
body::before{content:"";position:absolute;z-index:-1;left:0;right:0;top:0;height:980px;pointer-events:none;
 background:
  radial-gradient(circle at 1.5px 1.5px,rgba(255,255,255,.55) 0 1px,transparent 1.6px) 0 0/173px 151px,
  radial-gradient(circle at 1px 1px,rgba(191,219,254,.4) 0 .8px,transparent 1.2px) 61px 37px/97px 113px,
  radial-gradient(circle at 1px 1px,rgba(255,255,255,.3) 0 .7px,transparent 1.1px) 23px 71px/59px 67px,
  radial-gradient(ellipse 760px 560px at 72% 330px,#1b2a48 0,rgba(16,26,48,.6) 45%,transparent 75%),
  radial-gradient(ellipse 520px 420px at 8% 120px,rgba(99,102,241,.13),transparent 70%);
 -webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}
a{color:var(--link)}
a:focus-visible,button:focus-visible{outline:2px solid #bfdbfe;outline-offset:2px;border-radius:6px}
img{max-width:100%;height:auto}
.lf-skip{position:absolute;left:-999px;top:8px;z-index:99;background:#fff;color:#0a1020;padding:10px 14px;border-radius:8px}
.lf-skip:focus{left:12px}

/* 页眉 */
.lf-top{max-width:var(--wrap);margin:0 auto;display:flex;align-items:center;gap:16px;padding:16px var(--pad)}
.lf-logo{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:#fff;text-decoration:none;font-weight:900;letter-spacing:.2em;font-size:15px}
.lf-mark{width:28px;height:28px;color:#cbd5e1;flex:none}
.lf-nav{margin-left:auto;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.lf-nav a{display:inline-flex;align-items:center;min-height:40px;padding:0 15px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:var(--soft);font-size:13px;text-decoration:none;background:rgba(255,255,255,.02);transition:border-color .15s,background .15s}
.lf-nav a:hover{border-color:rgba(147,197,253,.55);background:rgba(59,130,246,.08);color:#fff}
.lf-nav a[aria-current="page"]{border-color:rgba(147,197,253,.6);color:#fff;background:rgba(59,130,246,.14)}

/* 首屏 */
.lf-hero{max-width:var(--wrap);margin:0 auto;padding:6px var(--pad) 18px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:34px;align-items:center}
.lf-hero:not(.has-fig){grid-template-columns:minmax(0,820px)}
.lf-hero-l{min-width:0}
.lf-kick{margin:0 0 12px;font:700 11px/1.3 var(--mono);letter-spacing:.24em;color:#60a5fa}
.lf-hero h1{margin:0 0 14px;color:#fff;font-size:clamp(26px,2.9vw,40px);line-height:1.2;font-weight:850;letter-spacing:.01em}
.lf-lead{margin:0 0 14px;color:var(--muted);font-size:15.5px;line-height:1.8;max-width:36em}
.lf-intro p{margin:0 0 .6em}
.lf-bits{margin:0 0 18px;color:var(--dim);font-size:12.5px}
.lf-bits i{font-style:normal;margin:0 8px;opacity:.6}
.lf-bits a{color:var(--muted)}
.lf-crumbs{list-style:none;display:flex;flex-wrap:wrap;gap:4px;margin:0 0 14px;padding:0;font-size:12.5px;color:var(--dim)}
.lf-crumbs li+li::before{content:"/";margin:0 8px 0 4px;opacity:.5}
.lf-crumbs a{color:var(--muted)}

/* 玻璃卡：发射台码卡 / 先说结论 / 这一页 */
.lf-kit,.lf-ans{position:relative;max-width:520px;margin:0 0 12px;padding:18px 20px;border-radius:18px;background:linear-gradient(160deg,rgba(255,255,255,.085),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 24px 60px -28px rgba(0,0,0,.75),inset 0 1px 0 rgba(255,255,255,.09)}
.lf-kit-lab{display:flex;align-items:center;gap:8px;margin:0 0 10px;font:700 11px/1.3 var(--mono);letter-spacing:.2em;color:#c4b5fd}
.lf-kit-lab svg{width:15px;height:15px;fill:#a78bfa;flex:none}
.lf-dot{width:8px;height:8px;border-radius:50%;background:var(--c,#60a5fa);box-shadow:0 0 0 4px var(--cg,rgba(96,165,250,.18));flex:none}
.lf-ans .lf-kit-lab{color:var(--ci,#93c5fd)}
.lf-kit-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px;margin:0 0 10px}
.lf-kit-row code{font:900 30px/1 var(--mono);letter-spacing:.08em;color:#fff;text-shadow:0 0 22px rgba(167,139,250,.45)}
.lf-copy{display:inline-flex;align-items:center;flex:none;white-space:nowrap;min-height:40px;padding:0 16px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(255,255,255,.04);color:#fff;font:600 13px/1 var(--sans);cursor:pointer}
.lf-copy:hover{background:rgba(255,255,255,.1)}
.lf-copy.is-ok{border-color:#34d399;color:#a7f3d0}
.lf-kit-gain{margin:0 0 4px;padding-left:16px;position:relative;color:var(--soft);font-size:13.5px;line-height:1.65}
.lf-kit-gain::before{content:"";position:absolute;left:2px;top:.62em;width:7px;height:7px;border-radius:50%;background:#a78bfa;box-shadow:0 0 0 3px rgba(167,139,250,.2)}
.lf-go{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;margin:14px 0 10px;padding:0 16px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;font-weight:800;font-size:15.5px;text-decoration:none;box-shadow:0 12px 28px -12px rgba(99,102,241,.8)}
.lf-go:hover{filter:brightness(1.08)}
.lf-kit-mini{display:none}
.lf-kit-note{margin:0;color:var(--muted);font-size:11.5px;line-height:1.65}
.lf-kit.is-bare .lf-kit-note{margin-top:10px}
.lf-ans{border-left:3px solid var(--c,#3b82f6)}
.lf-ans-t{margin:0;color:var(--text);font-size:15px;line-height:1.75}
.lf-ans-t b{color:#fff;font-size:18px}
.lf-ans-m{margin:10px 0 0;color:var(--dim);font-size:12.5px}
.lf-ans-go{display:inline-flex;align-items:center;min-height:40px;margin-top:6px;color:var(--ci,#93c5fd);font-size:13.5px;font-weight:700;text-decoration:none}

/* 轨道图 */
.lf-hero-r{min-width:0}
.lf-orbit{margin:0}
.lf-orbit svg{display:block;width:100%;height:auto;overflow:visible}
.lf-orbit-t{display:none!important}
.lf-orbit text{font-family:var(--sans);paint-order:stroke;stroke:var(--bg);stroke-width:4px;stroke-linejoin:round}
.lf-ring{fill:none;stroke:#30415f;stroke-width:1.5}
.lf-ring.is-2{stroke:#2b3a56;stroke-dasharray:7 8}
.lf-trail{fill:none;stroke-width:3.5;stroke-linecap:round;opacity:.4}
.is-lost .lf-trail{stroke-dasharray:2 6;opacity:.7}
.lf-lb{font-size:13.5px;font-weight:800;fill:#f8fafc}
.lf-sb{font-size:11.5px;font-weight:500;fill:var(--muted)}
.lf-sb.is-zhu{fill:#bfdbfe}.lf-sb.is-nei{fill:#a7f3d0}.lf-sb.is-wai{fill:#fde68a}.lf-sb.is-fa{fill:#ddd6fe}.lf-sb.is-hong{fill:#fecdd3}
.lf-n{font-size:12.5px;font-weight:900;fill:#0a1020;stroke:none!important}
.lf-cl{font-size:17px;font-weight:900;fill:#fff;stroke:none!important}
.lf-cs{font-size:11px;fill:#dbeafe;stroke:none!important}
.lf-rl{font-size:12px;font-weight:700;fill:#7c8aa5;letter-spacing:.08em}
.lf-orbit a{cursor:pointer}
.lf-orbit a:hover .lf-lb{fill:#bfdbfe}
.lf-orbit a:focus-visible{outline:2px solid #bfdbfe}
.lf-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;margin:8px 0 0;color:var(--muted);font-size:12px}
.lf-legend span{display:inline-flex;align-items:center;gap:6px}
.lf-legend i{width:9px;height:9px;border-radius:50%;background:var(--c)}
.lf-legend em{font-style:normal;color:var(--dim)}
.lf-cap{max-width:var(--wrap);margin:4px auto 0;padding:0 var(--pad);color:var(--dim);font-size:12.5px;line-height:1.7}

/* 星体卡 */
.lf-cards{max-width:var(--wrap);margin:26px auto 0;padding:0 var(--pad)}
.lf-preface{margin:0 0 14px;padding:18px 22px;border:1px solid var(--line);border-radius:var(--r);background:rgba(16,26,48,.55)}
.lf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch}
.lf-card{position:relative;min-width:0;padding:16px 22px 20px;border:1px solid var(--line);border-radius:var(--r);background:radial-gradient(circle at 100% 0,var(--cg),transparent 46%),linear-gradient(180deg,var(--card),var(--card2));scroll-margin-top:14px}
.lf-card::before{content:"";position:absolute;left:22px;right:22px;top:-1px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--c),transparent 70%);opacity:.85}
.lf-card.is-wide{grid-column:1/-1}
.lf-card-tag{display:flex;align-items:center;gap:8px;margin:0;min-height:40px;font:700 11px/1.3 var(--mono);letter-spacing:.16em;color:var(--ci)}
.lf-pl{width:18px;height:18px;color:var(--c);flex:none}
.lf-up{margin-left:auto;display:inline-flex;align-items:center;min-height:40px;padding:0 2px;color:var(--dim);font:500 12px/1 var(--sans);letter-spacing:0;text-decoration:none}
.lf-up:hover{color:var(--link)}
.lf-card h2.lf-h{margin:2px 0 8px;color:#f1f5f9;font-size:19.5px;line-height:1.4;font-weight:800;scroll-margin-top:60px}
.lf-body{color:var(--soft);font-size:15.5px;line-height:1.85}
.lf-body>:first-child{margin-top:0}
.lf-body p{margin:.7em 0}
.lf-body strong{color:#fff}
.lf-body ul,.lf-body ol{margin:.6em 0;padding-left:1.3em}
.lf-body li{margin:.3em 0}
.lf-body ul>li::marker{color:var(--c,#60a5fa)}
.lf-body h3.lf-h3{margin:1.2em 0 .3em;color:#f1f5f9;font-size:16.5px;line-height:1.45;display:flex;align-items:center;gap:8px;scroll-margin-top:60px}
.lf-body h3.lf-h3::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--c,#60a5fa);box-shadow:0 0 0 3px var(--cg,rgba(96,165,250,.2));flex:none}
.lf-body code{font-family:var(--mono);font-size:.92em;background:rgba(255,255,255,.07);padding:1px 6px;border-radius:5px;color:#e0e7ff}
.lf-body blockquote{margin:.8em 0;padding:4px 0 4px 14px;border-left:3px solid var(--line2);color:var(--muted)}

/* 步骤清单：一条从发射台往上爬的弹道 */
.lf-steps{margin:14px 0 6px;padding:16px 18px 8px;border:1px solid rgba(167,139,250,.22);border-radius:14px;background:linear-gradient(180deg,rgba(124,58,237,.08),rgba(10,16,32,.35))}
.lf-steps-t{display:flex;align-items:center;gap:10px;margin:0 0 4px}
.lf-steps-t b{color:#fff;font-size:15.5px}
.lf-steps-t span{font:700 11px/1 var(--mono);letter-spacing:.14em;color:#c4b5fd;border:1px solid rgba(196,181,253,.35);border-radius:999px;padding:5px 9px}
.lf-steps-lead{margin:0 0 6px;color:var(--muted);font-size:13px}
.lf-steps ol{position:relative;list-style:none;margin:0;padding:0}
.lf-steps ol::before{content:"";position:absolute;left:16px;top:22px;bottom:30px;border-left:2px dashed rgba(167,139,250,.38)}
.lf-steps li{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:14px;align-items:start;margin:0;padding:10px 0;scroll-margin-top:60px}
.lf-steps-n{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ddd6fe,#7c3aed);color:#fff;font:900 14px/1 var(--mono);box-shadow:0 0 0 5px rgba(124,58,237,.18)}
.lf-steps li b{display:block;color:#f8fafc;font-size:15px;margin:5px 0 2px}
.lf-steps li p{margin:0;color:var(--soft);font-size:14.5px;line-height:1.7}
.lf-steps li a{display:inline-flex;align-items:center;min-height:40px;font-size:12.5px;white-space:nowrap;color:#c4b5fd;text-decoration:none}

/* 提示块 */
.lf-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;margin:14px 0;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03)}
.lf-note-k{display:inline-flex;align-items:center;gap:7px;height:24px;padding:0 9px;border-radius:999px;font:700 11px/1 var(--mono);letter-spacing:.12em;color:var(--nk);background:var(--nb)}
.lf-note-k::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--nk);box-shadow:0 0 8px var(--nk)}
.lf-note.is-tip{--nk:#93c5fd;--nb:rgba(59,130,246,.14)}
.lf-note.is-warn{--nk:#fcd34d;--nb:rgba(251,191,36,.13);border-color:rgba(251,191,36,.2)}
.lf-note.is-stop{--nk:#fda4af;--nb:rgba(251,113,133,.14);border-color:rgba(251,113,133,.24)}
.lf-note.is-ok{--nk:#6ee7b7;--nb:rgba(52,211,153,.13)}
.lf-note-t{display:block;color:#fff;margin:1px 0 2px}
.lf-note .lf-body{font-size:14.5px;line-height:1.75}
.lf-note .lf-body p{margin:.2em 0}

/* 分流块：你看到 → 对接 → 这样办 */
.lf-state{display:grid;grid-template-columns:minmax(0,1fr) 120px minmax(0,1.3fr);align-items:stretch;margin:16px 0}
.lf-state-say,.lf-state-do{padding:12px 14px;border-radius:12px}
.lf-state-say{border:1px solid rgba(251,113,133,.3);background:rgba(251,113,133,.06)}
.lf-state-do{border:1px solid rgba(52,211,153,.3);background:rgba(52,211,153,.06)}
.lf-state-k{display:block;margin-bottom:4px;font:700 10.5px/1.3 var(--mono);letter-spacing:.16em;color:var(--muted)}
.lf-state-say p{margin:0;color:#fecdd3;font-weight:700;font-size:14.5px}
.lf-state-link{position:relative;display:flex;align-items:center;justify-content:center;padding:0 6px}
.lf-state-link::before{content:"";position:absolute;left:0;right:0;top:50%;border-top:2px dashed #3b4b66}
.lf-state-link span{position:relative;padding:3px 7px;border-radius:8px;background:var(--card);color:var(--muted);font-size:11.5px;line-height:1.35;text-align:center}
.lf-state .lf-body{font-size:14.5px;line-height:1.75}
.lf-state .lf-body p{margin:.2em 0}

/* 表格（三列及以上窄屏变卡片） */
.lf-tbl{margin:14px 0;overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.lf-tbl table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.65}
.lf-tbl th{text-align:left;padding:10px 12px;background:rgba(59,130,246,.08);color:var(--link);font:700 11.5px/1.4 var(--mono);letter-spacing:.08em;border-bottom:1px solid var(--line)}
.lf-tbl td{padding:10px 12px;border-bottom:1px solid var(--line);color:var(--soft);vertical-align:top}
.lf-tbl tr:last-child td{border-bottom:0}

/* 界面示意（本站自绘手机 / 网页） */
.lf-scr{margin:16px 0;display:flex;flex-direction:column;align-items:center}
.lf-scr-dev{width:min(260px,100%);padding:9px;border-radius:32px;background:linear-gradient(160deg,#334155,#0f172a);box-shadow:0 26px 50px -24px rgba(0,0,0,.9),inset 0 0 0 1px rgba(255,255,255,.08)}
.lf-scr.is-web .lf-scr-dev{width:min(420px,100%);border-radius:14px;padding:0}
.lf-scr-in{border-radius:24px;overflow:hidden;background:#0b1222;padding:0 0 12px}
.lf-scr.is-web .lf-scr-in{border-radius:14px}
.lf-scr-notch{display:flex;justify-content:center;margin:0;padding:7px 0 2px}.lf-scr-notch i{width:70px;height:16px;border-radius:999px;background:#020617}
.lf-scr-bar{display:flex;align-items:center;gap:5px;margin:0;padding:8px 10px;background:#111a2e}.lf-scr-bar i{width:8px;height:8px;border-radius:50%;background:#334155}.lf-scr-bar em{margin-left:8px;font-style:normal;font-size:11px;color:var(--dim);background:#0b1222;border-radius:6px;padding:2px 10px}
.lf-scr-top{display:flex;align-items:center;gap:8px;margin:0;padding:10px 14px 6px;color:#fff;font-size:14px}.lf-scr-back{width:8px;height:8px;border-left:2px solid #94a3b8;border-bottom:2px solid #94a3b8;transform:rotate(45deg)}.lf-scr-top span{margin-left:auto}
.lf-scr-crumb{margin:0;padding:0 14px 6px;color:var(--dim);font-size:11px}
.lf-scr-rows{list-style:none;margin:0;padding:0 10px}
.lf-scr-rows li{display:flex;align-items:center;gap:10px;margin:4px 0;padding:9px 10px;border-radius:10px;background:rgba(255,255,255,.035);color:var(--soft);font-size:13px}
.lf-scr-rows li i{width:16px;height:16px;border-radius:5px;background:#1e293b;flex:none}
.lf-scr-rows li em,.lf-scr-rows li s{margin-left:auto;font-style:normal;text-decoration:none;color:var(--dim)}
.lf-scr-rows li.is-hi{background:var(--cg);color:#fff;box-shadow:inset 0 0 0 1.5px var(--c)}
.lf-scr-rows li.is-hi i{background:var(--c)}
.lf-scr-rows li.is-hi s{color:#0a1020;background:var(--ci);border-radius:6px;padding:2px 7px;font-size:11px;font-weight:700}
.lf-scr figcaption,.lf-shot figcaption,.lf-figure figcaption,.lf-cover figcaption{margin-top:10px;color:var(--dim);font-size:12.5px;line-height:1.6;text-align:center}

/* 截图框 / 本站图 / 两图并排 / 封面 */
.lf-shot,.lf-figure{margin:16px 0}
.lf-shot-box{border-radius:12px;overflow:hidden;border:1px solid var(--line2);background:#0b1222}
.lf-shot-bar{display:flex;align-items:center;gap:5px;padding:7px 10px;background:#111a2e}.lf-shot-bar i{width:8px;height:8px;border-radius:50%;background:#334155}.lf-shot-bar em{margin-left:8px;font-style:normal;font-size:11px;color:var(--dim)}
.lf-shot img,.lf-figure img{display:block;width:100%}
.lf-shot.is-phone .lf-shot-box{max-width:300px;margin:0 auto;border-radius:28px;border:8px solid #1e293b}
.lf-figure img{border-radius:12px;border:1px solid var(--line)}
.lf-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;margin:14px 0}
.lf-pair>*{margin:0}
.lf-cover{max-width:var(--wrap);margin:18px auto 0;padding:0 var(--pad)}
.lf-cover img{display:block;width:100%;border-radius:var(--r);border:1px solid var(--line)}

/* 依据 */
.lf-basis{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;margin:16px 0 4px;padding:12px 14px;border-radius:12px;border:1px dashed var(--line2);background:rgba(59,130,246,.04)}
.lf-basis-k{font:700 11px/24px var(--mono);letter-spacing:.14em;color:var(--link)}
.lf-basis .lf-body{font-size:13.5px;line-height:1.75;color:var(--muted)}
.lf-basis .lf-body p{margin:0}

/* 轨道之外（问答）：宽屏左问右答 */
.lf-faq{max-width:var(--wrap);margin:40px auto 0;padding:0 var(--pad)}
.lf-faq-top{margin:0 0 10px}
.lf-faq h2{margin:0 0 6px;color:#fff;font-size:24px;line-height:1.3}
.lf-faq-lead{margin:0;color:var(--muted);font-size:14.5px}
.lf-qs{border-top:1px solid var(--line)}
.lf-q{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.45fr);gap:30px;padding:16px 0;border-bottom:1px solid var(--line)}
.lf-q h3{margin:0;display:flex;gap:12px;color:#f1f5f9;font-size:16px;line-height:1.55}
.lf-q h3 span{flex:none;font:700 12px/1.9 var(--mono);color:#60a5fa;letter-spacing:.06em}
.lf-q p{margin:0;color:var(--soft);font-size:15px;line-height:1.8}

/* 文章卡（列表 / 最近 / 接着看） */
.lf-side,.lf-listbox{max-width:var(--wrap);margin:40px auto 0;padding:0 var(--pad)}
.lf-listbox{margin-top:22px}
.lf-side-top{margin:0 0 12px}
.lf-side h2{margin:0;color:#fff;font-size:22px}
.lf-rows{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lf-row{display:grid;grid-template-columns:38px minmax(0,1fr);gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:radial-gradient(circle at 100% 0,var(--cg),transparent 50%),var(--card);scroll-margin-top:14px}
.lf-row:target{border-color:var(--c);box-shadow:0 0 0 3px var(--cg)}
.lf-row-n{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--ci),var(--c));color:#0a1020;font:900 13px/1 var(--mono);box-shadow:0 0 0 5px var(--cg)}
.lf-row-m{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 4px;color:var(--dim);font-size:12px}
.lf-row-m span{color:var(--ci);font-family:var(--mono);letter-spacing:.06em}
.lf-row h3{margin:0;font-size:16px;line-height:1.5}
.lf-row h3 a{color:#f8fafc;text-decoration:none}
.lf-row h3 a:hover{color:var(--link);text-decoration:underline}
.lf-row p{margin:5px 0 0;color:var(--muted);font-size:13.5px;line-height:1.65}
.lf-all{margin:14px 0 0}
.lf-all a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid rgba(147,197,253,.35);border-radius:999px;color:var(--link);text-decoration:none;font-weight:700;font-size:14px}
.lf-pager{max-width:var(--wrap);margin:22px auto 0;padding:0 var(--pad);display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.lf-pg{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:var(--soft);text-decoration:none;font-size:14px}
.lf-pg.is-off{opacity:.35}
.lf-pg-at{color:var(--muted);font-size:13px}

/* 文章底部：轨道标签 */
.lf-tags{max-width:var(--wrap);margin:26px auto 0;padding:0 var(--pad);display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.lf-tags-h{margin-right:4px;color:var(--dim);font:700 11px/1 var(--mono);letter-spacing:.16em}
.lf-tags a,.lf-tags span:not(.lf-tags-h){display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line2);color:var(--soft);font-size:13px;text-decoration:none}
.lf-tags a:hover{border-color:var(--c);color:#fff}
.lf-tags i{width:8px;height:8px;border-radius:50%;background:var(--c)}

/* 作者框 */
.lf-author{max-width:var(--wrap);margin:40px auto 0;padding:0 var(--pad);display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px;align-items:start}
.lf-author-av{margin:0;position:relative;width:60px;height:60px;border-radius:50%;border:1px dashed #3b4b66;display:grid;place-items:center}
.lf-author-av i{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#bfdbfe,#2563eb);color:#fff;font-style:normal;font-weight:900;font-size:18px}
.lf-author-av::after{content:"";position:absolute;right:2px;top:5px;width:9px;height:9px;border-radius:50%;background:#34d399}
.lf-author-c{padding:14px 18px;border:1px solid var(--line);border-radius:var(--r);background:var(--card2)}
.lf-author-n{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin:0 0 6px}
.lf-author-n b{color:#fff;font-size:16px}
.lf-author-n span{color:var(--dim);font-size:12.5px}
.lf-author-t{margin:0 0 6px;color:var(--muted);font-size:14px;line-height:1.75}
.lf-author-l{display:flex;flex-wrap:wrap;gap:4px 18px;margin:0}
.lf-author-l a{display:inline-flex;align-items:center;min-height:40px;font-size:13px;color:var(--link)}

/* 404 */
.lf-404-links{max-width:var(--wrap);margin:26px auto 0;padding:0 var(--pad);display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.lf-404-links .lf-kick{width:100%;margin-bottom:4px}
.lf-404-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--line2);border-radius:999px;color:var(--soft);text-decoration:none;font-size:14px}

/* 页脚 */
.lf-foot{margin-top:56px;border-top:1px solid var(--line);background:linear-gradient(180deg,rgba(13,21,41,.6),var(--bg))}
.lf-foot-in{max-width:var(--wrap);margin:0 auto;padding:28px var(--pad) 34px;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:16px 40px}
.lf-foot-id p{margin:10px 0 0;color:var(--dim);font-size:13px;line-height:1.8}
.lf-foot-id a{color:var(--muted)}
.lf-foot-id .lf-logo{color:#cbd5e1}
.lf-foot-risk{color:#56637b!important}
.lf-foot-links{display:flex;flex-wrap:wrap;align-content:flex-start;gap:2px 18px}
.lf-foot-links a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;min-width:44px;color:var(--muted);font-size:13.5px;text-decoration:none}
.lf-foot-links a:hover{color:#fff}
.lf-foot-c{grid-column:1/-1;margin:6px 0 0;color:#475569;font-size:12.5px}
.lf-foot-c a{color:var(--dim)}

/* 平板 */
@media (max-width:980px){
 .lf-hero{grid-template-columns:minmax(0,1fr);gap:18px}
 .lf-hero-r{max-width:640px;width:100%;margin:0 auto}
 .lf-kit,.lf-ans{max-width:none}
}
@media (max-width:860px){
 .lf-grid{grid-template-columns:minmax(0,1fr)}
 .lf-q{grid-template-columns:minmax(0,1fr);gap:6px}
 .lf-foot-in{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
 .lf-rows{grid-template-columns:minmax(0,1fr)}
 .lf-pair{grid-template-columns:minmax(0,1fr)}
 .lf-state{grid-template-columns:minmax(0,1fr)}
 .lf-state-link{height:34px}
 .lf-state-link::before{left:50%;right:auto;top:0;bottom:0;border-top:0;border-left:2px dashed #3b4b66}
 .lf-tbl[data-cols="3"],.lf-tbl[data-cols="4"],.lf-tbl[data-cols="5"]{border:0;overflow:visible}
 .lf-tbl[data-cols="3"] thead,.lf-tbl[data-cols="4"] thead,.lf-tbl[data-cols="5"] thead{display:none}
 .lf-tbl[data-cols="3"] tr,.lf-tbl[data-cols="4"] tr,.lf-tbl[data-cols="5"] tr{display:block;margin:0 0 10px;padding:6px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.02)}
 .lf-tbl[data-cols="3"] td,.lf-tbl[data-cols="4"] td,.lf-tbl[data-cols="5"] td{display:block;padding:6px 0;border-bottom:1px dashed var(--line)}
 .lf-tbl[data-cols="3"] td:last-child,.lf-tbl[data-cols="4"] td:last-child,.lf-tbl[data-cols="5"] td:last-child{border-bottom:0}
 .lf-tbl td[data-th]::before{content:attr(data-th);display:block;margin-bottom:2px;color:var(--link);font:700 10.5px/1.4 var(--mono);letter-spacing:.1em}
 .lf-tbl[data-cols="2"] td[data-th]::before,.lf-tbl[data-cols="1"] td[data-th]::before{display:none}
}

/* 手机：首页先出竖版轨道图，发射台缩成底部固定条 */
@media (max-width:640px){
 :root{--pad:16px}
 body::before{height:760px}
 .lf-top{padding:10px var(--pad);gap:10px}
 .lf-logo{font-size:14px;letter-spacing:.16em;gap:8px}
 .lf-mark{width:24px;height:24px}
 .lf-nav{gap:6px}
 .lf-nav a{padding:0 11px;font-size:12.5px}
 .lf-nav.has-more a.is-zw,.lf-nav.has-more a:first-child{display:none}
 .lf-hero{padding-top:0;gap:10px}
 .lf-hero h1{font-size:23px;line-height:1.3}
 .lf-lead{font-size:15px}
 .fig-first .lf-hero-r{order:-1}
 .fig-first .lf-lead{display:none}
 .lf-orbit-w{display:none!important}
 .lf-orbit-t{display:block!important}
 .lf-legend{gap:4px 12px;font-size:11.5px;margin-top:2px}
 .lf-legend em{width:100%;text-align:center}
 .lf-card{padding:12px 16px 16px}
 .lf-card::before{left:16px;right:16px}
 .lf-card h2.lf-h{font-size:18px}
 .lf-body{font-size:15.5px}
 .lf-steps{padding:14px 12px 6px}
 .lf-steps li{grid-template-columns:34px minmax(0,1fr);gap:12px}
 .lf-steps li a{grid-column:2}
 .lf-faq h2{font-size:21px}
 .lf-author{grid-template-columns:minmax(0,1fr);gap:10px}
 .lf-kit{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:6px 10px;max-width:none;margin:0;padding:9px 12px 10px;border:0;border-radius:16px 16px 0 0;background:linear-gradient(135deg,#1d4ed8,#4338ca);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 -14px 34px -12px rgba(0,0,0,.6)}
 .lf-kit-lab,.lf-kit-gain,.lf-kit-note{display:none}
 .lf-kit-row{margin:0;gap:8px;flex-wrap:nowrap}
 .lf-kit-row code{font-size:20px;text-shadow:none}
 .lf-copy{min-height:40px;padding:0 12px;font-size:12.5px;border-color:rgba(255,255,255,.5)}
 .lf-go{margin:0;min-height:44px;font-size:14px;background:#fff;color:#1d4ed8;box-shadow:none}
 .lf-kit.is-bare{grid-template-columns:minmax(0,1fr)}
 .lf-kit-mini{display:block;grid-column:1/-1;margin:0;color:#c7d2fe;font-size:10.5px;line-height:1.4}
 body.has-kit{padding-bottom:116px}
}
@media (max-width:340px){
 .lf-kit{grid-template-columns:minmax(0,1fr)}
 body.has-kit{padding-bottom:160px}
}
