:root {
  --bg: #eef3fb;
  --paper: #ffffff;
  --ink: #0f172a;
  --muted: #667085;
  --line: #dbe4f0;
  --blue: #2563eb;
  --cyan: #06b6d4;
  --green: #16a34a;
  --amber: #d97706;
  --navy: #071426;
  --shadow: 0 18px 55px rgba(15, 23, 42, .11);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 92px; }
body {
  margin: 0;
  color: var(--ink);
  font-family: Inter, "Segoe UI", "Microsoft YaHei", Arial, sans-serif;
  background:
    radial-gradient(circle at 15% 0%, rgba(37,99,235,.15), transparent 34rem),
    radial-gradient(circle at 90% 8%, rgba(6,182,212,.11), transparent 30rem),
    var(--bg);
  line-height: 1.62;
}
body:not([data-lang="zh"]) .zh,
body[data-lang="zh"] .en { display: none !important; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { cursor: pointer; }
.hidden { display: none !important; }
.manual-topbar {
  position: sticky; top: 0; z-index: 30;
  min-height: 70px; padding: 10px clamp(18px, 4vw, 62px);
  display: flex; align-items: center; justify-content: space-between; gap: 18px;
  color: #e8f3ff; background: rgba(7,20,38,.96);
  border-bottom: 1px solid rgba(148,163,184,.25); backdrop-filter: blur(18px);
}
.manual-brand { display: flex; align-items: center; gap: 11px; }
.manual-brand-mark {
  width: 42px; height: 42px; display: grid; place-items: center; border-radius: 14px;
  font-weight: 950; color: white; background: linear-gradient(135deg,var(--blue),var(--cyan));
  box-shadow: 0 12px 26px rgba(37,99,235,.32);
}
.manual-brand b,.manual-brand small { display: block; }
.manual-brand b { font-size: 15px; letter-spacing: .01em; }
.manual-brand small { color: #93c5fd; font-size: 11px; }
.manual-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.manual-actions button,.manual-actions a {
  min-height: 38px; padding: 8px 12px; border: 1px solid rgba(148,163,184,.35);
  border-radius: 11px; color: #e8f3ff; background: rgba(255,255,255,.06); font-weight: 800;
}
.manual-actions button:hover,.manual-actions a:hover { border-color: #67e8f9; background: rgba(6,182,212,.15); }
.language-switch { display: flex; padding: 3px; border-radius: 12px; background: rgba(255,255,255,.08); }
.language-switch button { min-height: 31px; padding: 5px 10px; border: 0; background: transparent; }
.language-switch button[aria-pressed="true"] { color: #071426; background: #67e8f9; }
.toc-toggle { display: none; }
.manual-hero {
  width: min(1480px, calc(100% - 36px)); margin: 28px auto 24px; padding: clamp(28px,5vw,68px);
  color: white; border-radius: 32px; overflow: hidden; position: relative;
  background:
    radial-gradient(circle at 86% 18%, rgba(34,211,238,.32), transparent 24rem),
    linear-gradient(120deg,#071426 0%,#102a52 52%,#0c4a6e 100%);
  box-shadow: 0 28px 80px rgba(7,20,38,.25);
}
.manual-hero:after { content:""; position:absolute; inset:auto -80px -150px auto; width:360px; height:360px; border:60px solid rgba(255,255,255,.05); border-radius:50%; }
.manual-kicker { color: #67e8f9; font-size: 12px; font-weight: 950; letter-spacing: .13em; }
.manual-hero h1 { margin: 8px 0 12px; max-width: 900px; font-size: clamp(38px,5vw,74px); line-height: 1.02; letter-spacing: -.045em; }
.manual-lead { max-width: 850px; margin: 0; color: #cbdcf2; font-size: clamp(16px,2vw,21px); }
.hero-badges { display:flex; gap:9px; flex-wrap:wrap; margin-top:24px; }
.hero-badges span { padding:7px 11px; border-radius:999px; color:#dbeafe; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.1); font-size:12px; font-weight:750; }
.hero-flow { position:relative; z-index:1; display:flex; align-items:stretch; gap:10px; margin-top:32px; }
.hero-flow div { flex:1; min-width:0; display:flex; align-items:center; gap:10px; padding:13px; border-radius:16px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.1); }
.hero-flow b { flex:0 0 30px; width:30px; height:30px; display:grid; place-items:center; border-radius:10px; color:#082f49; background:#67e8f9; }
.hero-flow span { font-size:12px; font-weight:800; }
.hero-flow i { align-self:center; color:#67e8f9; }
.manual-shell { width:min(1480px,calc(100% - 36px)); margin:0 auto 50px; display:grid; grid-template-columns:280px minmax(0,1fr); gap:24px; align-items:start; }
.manual-toc { position:sticky; top:94px; max-height:calc(100vh - 112px); overflow:auto; padding:18px; border:1px solid var(--line); border-radius:24px; background:rgba(255,255,255,.94); box-shadow:var(--shadow); }
.toc-search label { display:block; margin-bottom:7px; color:#475467; font-size:12px; font-weight:900; }
.toc-search input { width:100%; border:1px solid var(--line); border-radius:11px; padding:10px 11px; outline:none; }
.toc-search input:focus { border-color:var(--blue); box-shadow:0 0 0 4px rgba(37,99,235,.1); }
.toc-search p { min-height:18px; margin:5px 2px 10px; color:var(--muted); font-size:11px; }
.manual-toc nav { display:grid; gap:3px; }
.manual-toc nav a { display:flex; align-items:center; gap:9px; padding:8px 10px; border-radius:10px; color:#475467; font-size:12px; }
.manual-toc nav a span { color:#94a3b8; font-family:Consolas,monospace; }
.manual-toc nav a:hover,.manual-toc nav a.active { color:#1d4ed8; background:#eaf2ff; }
.manual-content { min-width:0; display:grid; gap:22px; }
.manual-section { position:relative; overflow:hidden; padding:clamp(24px,4vw,48px); border:1px solid rgba(219,228,240,.95); border-radius:28px; background:rgba(255,255,255,.96); box-shadow:var(--shadow); }
.manual-section.search-hidden { display:none; }
.section-number { position:absolute; top:18px; right:28px; color:#e2e8f0; font-size:58px; line-height:1; font-weight:950; letter-spacing:-.08em; }
.section-heading { position:relative; z-index:1; margin-bottom:24px; padding-right:70px; }
.section-heading p { margin:0 0 6px; color:#2563eb; font-size:11px; font-weight:950; letter-spacing:.13em; }
.section-heading h2 { margin:0; font-size:clamp(28px,3vw,42px); line-height:1.12; letter-spacing:-.035em; }
.manual-section h3 { margin:0 0 9px; font-size:18px; line-height:1.25; }
.manual-section p { color:#475467; }
.manual-section li { margin:5px 0; }
.callout { margin:18px 0; padding:15px 17px; display:flex; gap:8px; flex-wrap:wrap; border-radius:16px; color:#164e63; background:#ecfeff; border:1px solid #a5f3fc; }
.callout b { color:#0e7490; }
.callout.important { color:#78350f; background:#fffbeb; border-color:#fde68a; }
.callout.important b { color:#b45309; }
.callout.success { color:#14532d; background:#f0fdf4; border-color:#bbf7d0; }
.callout.success b { color:#15803d; }
.step-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; }
.step-grid>div,.module-grid>section { padding:18px; border:1px solid var(--line); border-radius:18px; background:linear-gradient(145deg,#fff,#f8fbff); }
.step-grid>div>b { width:34px; height:34px; display:grid; place-items:center; margin-bottom:12px; color:white; border-radius:11px; background:linear-gradient(135deg,var(--blue),var(--cyan)); }
.step-grid h3 { margin-bottom:4px; }
.step-grid p { margin:0; font-size:13px; }
.module-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.module-grid.three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.module-grid.four { grid-template-columns:repeat(2,minmax(0,1fr)); }
.module-grid section p:first-of-type { margin-top:0; }
.module-grid section p,.module-grid section li { font-size:13px; }
.module-grid ul,.module-grid ol { margin:10px 0 0; padding-left:21px; color:#475467; }
.term-table,.mode-table,.permission-table { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border:1px solid var(--line); border-radius:18px; overflow:hidden; }
.term-table>div,.mode-table>div,.permission-table>div { padding:16px 18px; display:grid; gap:4px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.term-table>div:nth-child(2n),.mode-table>div:nth-child(2n),.permission-table>div:nth-child(2n) { border-right:0; }
.term-table span,.mode-table span,.permission-table span { color:#667085; font-size:13px; }
.priority-flow,.procedure { margin-top:18px; padding:18px 20px; border-radius:18px; background:#f6f9fe; border:1px solid var(--line); }
.priority-flow { display:grid; gap:5px; }
.priority-flow span { color:#475467; }
.procedure>b { display:block; margin-bottom:8px; font-size:17px; }
.procedure p { margin:4px 0; }
.procedure ol { margin:7px 0 0; padding-left:22px; }
.manual-subsection { margin-top:20px; padding-top:18px; border-top:1px solid var(--line); }
.manual-subsection>h3,.field-guide>h3,.sync-matrix>h3 { margin-bottom:13px; }
.role-grid,.acceptance-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
.role-grid>div,.acceptance-grid>div {
  display:grid; gap:5px; padding:15px 16px; border:1px solid var(--line);
  border-radius:15px; background:#fbfdff;
}
.role-grid span,.acceptance-grid span { color:#667085; font-size:13px; }
.lifecycle-flow { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:9px; }
.lifecycle-flow>div {
  min-width:0; display:grid; grid-template-columns:30px minmax(0,1fr); align-items:center;
  gap:3px 8px; padding:13px; border:1px solid #bfdbfe; border-radius:15px; background:#eff6ff;
}
.lifecycle-flow b { grid-row:1/3; width:30px; height:30px; display:grid; place-items:center; border-radius:10px; color:#fff; background:#2563eb; }
.lifecycle-flow span { font-size:12px; font-weight:850; }
.lifecycle-flow small { min-width:0; color:#64748b; font-size:10px; line-height:1.3; }
.field-guide { margin-top:18px; padding:18px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; border:1px solid var(--line); border-radius:18px; background:#f8fbff; }
.field-guide>h3 { grid-column:1/-1; }
.field-guide>div { display:grid; gap:3px; padding:12px 13px; border:1px solid #e2e8f0; border-radius:13px; background:#fff; }
.field-guide>div b { color:#1e40af; }
.field-guide>div span { color:#667085; font-size:12px; }
.verification-box { margin-top:18px; padding:16px 18px; display:grid; gap:5px; color:#14532d; border:1px solid #bbf7d0; border-radius:16px; background:#f0fdf4; }
.verification-box span { font-size:13px; }
.sync-matrix { margin-top:20px; padding:18px; border:1px solid var(--line); border-radius:18px; background:#fbfdff; }
.sync-row { display:grid; grid-template-columns:.7fr 1.4fr 1fr; border-top:1px solid var(--line); }
.sync-row>* { padding:11px 12px; color:#475467; font-size:12px; }
.sync-row>*+* { border-left:1px solid var(--line); }
.sync-head { border-top:0; border-radius:11px; background:#eaf2ff; }
.sync-head>* { color:#1e3a8a; }
.manual-shot { display:block; margin-top:20px; padding:12px; border:1px solid var(--line); border-radius:20px; background:#f7faff; }
.manual-shot img { display:block; width:100%; max-height:650px; object-fit:contain; border-radius:12px; }
.manual-shot figcaption { padding:8px 4px 0; text-align:center; color:#667085; font-size:12px; }
.report-flow { display:flex; align-items:center; gap:8px; margin-bottom:18px; }
.report-flow div { flex:1; padding:12px; display:flex; align-items:center; gap:8px; border-radius:14px; background:#edf5ff; }
.report-flow b { width:27px; height:27px; display:grid; place-items:center; border-radius:9px; color:white; background:#2563eb; }
.report-flow span { font-size:12px; font-weight:800; }
.report-flow i { color:#06b6d4; }
.access-formula { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px; margin-bottom:18px; padding:18px; border-radius:18px; color:#164e63; background:linear-gradient(135deg,#eff6ff,#ecfeff); border:1px solid #bae6fd; }
.access-formula span,.access-formula strong { padding:8px 12px; border-radius:11px; background:white; border:1px solid #dbeafe; }
.access-formula b { color:#0284c7; font-size:20px; }
.module-grid dl { margin:0; }
.module-grid dt { margin-top:10px; font-weight:900; }
.module-grid dd { margin:3px 0; color:#475467; font-size:13px; }
.faq-list { display:grid; gap:9px; }
.faq-list details { border:1px solid var(--line); border-radius:14px; background:#fbfdff; }
.faq-list summary { padding:14px 16px; cursor:pointer; font-weight:850; }
.faq-list details p { margin:0; padding:0 16px 15px; }
.checklist { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.checklist label { display:flex; align-items:flex-start; gap:10px; padding:14px; border:1px solid var(--line); border-radius:14px; color:#475467; background:#fbfdff; }
.checklist input { width:18px; height:18px; margin-top:3px; accent-color:var(--green); }
.no-results { padding:60px 20px; text-align:center; border:1px dashed #94a3b8; border-radius:24px; background:rgba(255,255,255,.8); }
.manual-footer { width:min(1480px,calc(100% - 36px)); margin:0 auto 30px; padding:18px 22px; display:flex; justify-content:space-between; gap:12px; color:#64748b; font-size:12px; border-top:1px solid #cbd5e1; }
.back-to-top { position:fixed; right:24px; bottom:24px; width:45px; height:45px; display:grid; place-items:center; border:0; border-radius:15px; color:white; background:#0f172a; box-shadow:0 14px 35px rgba(15,23,42,.28); opacity:0; pointer-events:none; transform:translateY(10px); transition:.2s ease; }
.back-to-top.visible { opacity:1; pointer-events:auto; transform:none; }

@media (max-width: 980px) {
  .manual-topbar { align-items:flex-start; }
  .manual-actions { max-width:70%; }
  .toc-toggle { display:inline-flex; }
  .manual-shell { grid-template-columns:1fr; }
  .manual-toc { position:fixed; z-index:40; top:76px; left:18px; right:18px; max-height:calc(100vh - 94px); transform:translateY(-12px); opacity:0; pointer-events:none; transition:.2s ease; }
  .manual-toc.open { transform:none; opacity:1; pointer-events:auto; }
  .module-grid.three { grid-template-columns:1fr; }
}
@media (max-width: 720px) {
  .manual-topbar { padding:10px 14px; }
  .manual-brand small { display:none; }
  .manual-actions { max-width:none; }
  .manual-actions #printManual,.manual-actions .console-link span { display:none; }
  .manual-hero,.manual-shell,.manual-footer { width:min(100% - 20px,1480px); }
  .manual-hero { margin-top:12px; padding:28px 22px; border-radius:24px; }
  .hero-flow { display:grid; grid-template-columns:1fr 1fr; }
  .hero-flow i { display:none; }
  .manual-section { padding:24px 18px; border-radius:22px; }
  .section-number { top:14px; right:20px; font-size:42px; }
  .step-grid,.module-grid,.module-grid.four,.term-table,.mode-table,.permission-table,.checklist { grid-template-columns:1fr; }
  .role-grid,.acceptance-grid,.lifecycle-flow,.field-guide { grid-template-columns:1fr; }
  .field-guide>h3 { grid-column:auto; }
  .sync-matrix { overflow-x:auto; }
  .sync-row { min-width:650px; }
  .term-table>div,.mode-table>div,.permission-table>div { border-right:0; }
  .report-flow { align-items:stretch; display:grid; grid-template-columns:1fr 1fr; }
  .report-flow i { display:none; }
  .manual-footer { display:grid; text-align:center; }
}
@media print {
  @page { size:A4; margin:12mm; }
  body { background:white; font-size:10pt; }
  .manual-topbar,.manual-toc,.back-to-top,.hero-flow,.manual-footer { display:none !important; }
  .manual-hero { width:100%; margin:0 0 10mm; padding:18mm 12mm; box-shadow:none; border-radius:0; print-color-adjust:exact; -webkit-print-color-adjust:exact; }
  .manual-shell { width:100%; display:block; margin:0; }
  .manual-content { display:block; }
  .manual-section { margin:0 0 8mm; padding:9mm; box-shadow:none; break-inside:avoid; }
  .manual-shot { break-inside:avoid; }
  .manual-section.search-hidden { display:block; }
}
