/* Standalone document styles. */
:root{--ink:#17382c;--muted:#69756c;--copper:#97663d;--paper:#f8f6ee;--line:#dddcd0;color-scheme:light;font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:.23em}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--copper);outline-offset:4px}button{font:inherit;cursor:pointer}.skip-link{position:fixed;top:-80px;left:20px;z-index:10;padding:14px;background:white}.skip-link:focus{top:10px}
.doc-header{min-height:100px;max-width:1440px;margin:auto;padding:24px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.doc-brand{display:flex;align-items:center;gap:13px;font-size:23px;font-weight:650;letter-spacing:-.8px;text-decoration:none}.doc-brand img{width:45px;height:45px;object-fit:contain}.doc-brand small{display:block;font-size:11px;font-weight:400;letter-spacing:2px;margin-top:6px;color:var(--muted)}.doc-header nav{display:flex;gap:26px;font-size:14px}.doc-header nav a{text-decoration:none;padding:7px 0}.doc-header [aria-current=page]{color:var(--copper);border-bottom:2px solid var(--copper)}
.reading-layout{display:grid;grid-template-columns:258px minmax(0,850px);gap:54px;max-width:1280px;margin:0 auto;padding:50px 40px 70px}.toc-panel{align-self:start;position:sticky;top:25px}.toc-panel summary{list-style:none;font-size:13px;letter-spacing:.06em;font-weight:650;display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line);cursor:pointer}.toc-panel summary::-webkit-details-marker{display:none}.toc-panel summary span{color:var(--copper);font-variant-numeric:tabular-nums}.toc-inner{max-height:calc(100vh - 125px);overflow:auto;padding:18px 0 0}.toc-panel ol{list-style:none;margin:0;padding:0}.toc-panel li{margin:1px 0}.toc-panel a{display:block;padding:9px 10px;border-left:2px solid transparent;font-size:13px;line-height:1.5;text-decoration:none;color:#626f64}.toc-panel a:hover{background:#eeeee5}.toc-panel a[aria-current=location]{color:var(--ink);border-color:var(--copper);background:#eaece1;font-weight:600}.current-label{padding:16px 10px;color:var(--muted);font-size:11px;border-top:1px solid var(--line);margin-top:16px;line-height:1.8}.current-label span{display:block;color:var(--ink);font-size:12px;margin-top:5px}
main{min-width:0}.doc-kicker{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--copper);font-weight:650}.doc-meta{display:flex;gap:10px 20px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:18px}.doc-tools{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:22px 0 36px;font-size:12px;color:var(--muted)}.doc-tools>span{margin-right:auto}.doc-tools button{border:1px solid var(--line);background:transparent;padding:9px 12px;border-radius:5px;color:var(--ink)}.document{font-size:16px;line-height:1.95;overflow-wrap:anywhere}.document h1{word-break:keep-all;overflow-wrap:normal;font-size:clamp(28px,3.1vw,42px);line-height:1.3;letter-spacing:-1px;margin:0 0 48px;font-weight:650}.document h2{font-size:25px;line-height:1.5;margin:65px 0 22px;border-top:1px solid var(--line);padding-top:28px;scroll-margin-top:28px;font-weight:650;letter-spacing:-.4px}.document h3{font-size:18px;margin:34px 0 15px;scroll-margin-top:28px}.document p{margin:0 0 20px}.document li{margin-bottom:10px}.document strong{font-weight:650}.document a{color:#376c56}.document .permalink{font-size:15px;font-weight:400;text-decoration:none;color:var(--copper);opacity:.65}.document code{font-family:"SFMono-Regular",Consolas,monospace;font-size:.87em;background:#ebece3;padding:2px 4px;border-radius:3px;overflow-wrap:anywhere}.table-scroll{overflow-x:auto;margin:25px 0 30px;border:1px solid var(--line);border-radius:7px;background:#fcfbf7}.document table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.75}.document th,.document td{padding:14px 16px;border-bottom:1px solid #e3e3d9;text-align:left;vertical-align:top;min-width:120px}.document th{background:#e9ede3;font-size:12px;letter-spacing:.04em}.document tr:last-child td{border-bottom:0}.document td:first-child{font-weight:550}.formula-block{overflow:auto;margin:24px 0 30px;border-left:3px solid var(--copper);background:#e9ede3;border-radius:0 6px 6px 0;padding:22px}.formula-block pre{margin:0;line-height:1.9;font-size:13px}.formula-block code{padding:0;background:none;white-space:pre;font-size:inherit}.document pre:not(.formula-block pre){overflow:auto;padding:16px;background:#e9ede3;font-size:13px}
/* Stack flow nodes on narrow screens. */
.flow-figure{margin:28px 0 34px}.flow-figure figcaption{font-size:11px;letter-spacing:2px;color:var(--copper);margin-bottom:13px}.doc-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;list-style:none;padding:0;margin:0}.doc-flow li{position:relative;background:#edf0e7;border:1px solid #d9dfd0;border-radius:8px;padding:18px;margin:0}.doc-flow li:not(:last-child)::after{content:'→';position:absolute;right:-15px;top:42%;color:var(--copper);font-size:17px;z-index:1}.doc-flow li:nth-child(3)::after{content:'→'}.doc-flow .step{display:block;font-size:12px;color:var(--copper);font-variant-numeric:tabular-nums;margin-bottom:8px}.doc-flow strong{font-size:15px;display:block}.doc-flow p{font-size:13px;line-height:1.8;margin:8px 0 0;color:#626f64}.doc-footer{border-top:1px solid var(--line);margin-top:55px;padding-top:26px;display:flex;flex-wrap:wrap;gap:18px 25px;font-size:13px}.doc-footer>span{width:100%;color:var(--muted);font-size:12px}
@media(min-width:1400px){.reading-layout{max-width:1380px;grid-template-columns:258px minmax(0,900px);gap:70px}.doc-flow{grid-template-columns:repeat(4,minmax(0,1fr))}.doc-flow li:nth-child(2)::after{content:'→';bottom:auto;top:42%;right:-15px}}
@media(max-width:1000px){.reading-layout{grid-template-columns:215px minmax(0,1fr);gap:30px;padding-left:25px;padding-right:25px}.doc-header{padding:22px 25px}.doc-header nav{gap:15px}.doc-brand{font-size:20px}}
@media(max-width:850px){.doc-header{align-items:flex-start;flex-direction:column;padding:22px 22px 15px;gap:18px}.doc-header nav{gap:24px;font-size:13px}.reading-layout{display:block;padding:18px 22px 45px}.toc-panel{position:static;margin-bottom:35px;border:1px solid var(--line);border-radius:7px;padding:0 15px;background:#f0f1e9}.toc-panel summary{border:0;padding:14px 0}.toc-panel summary::after{content:'展开 +';font-size:11px;color:var(--muted)}.toc-panel details[open] summary::after{content:'收起 −'}.toc-inner{max-height:50vh;padding:0 0 8px}.document{font-size:16px;line-height:1.95}.document h1{font-size:30px;margin-bottom:35px}.document h2{font-size:23px;margin-top:48px}.document h3{font-size:18px}.document table{min-width:520px}.document th,.document td{padding:12px}.doc-tools{gap:12px;margin-bottom:27px}.doc-tools>span{width:100%}.doc-flow{grid-template-columns:1fr;gap:20px}.doc-flow li:not(:last-child)::after,.doc-flow li:nth-child(2)::after,.doc-flow li:nth-child(3)::after{content:'↓';top:auto;right:50%;bottom:-25px}.formula-block{padding:18px;font-size:12px}.doc-meta{gap:8px 14px}}
@media(prefers-reduced-motion:no-preference){a,button{transition:color .15s,background .15s}}
/* Single-column print layout; hide controls. */
@media print{@page{size:A4;margin:18mm 16mm}:root{background:white;color:#111}body{background:white}.doc-header,.toc-panel,.doc-tools,.skip-link,.permalink{display:none!important}.reading-layout{display:block;max-width:none;padding:0;margin:0}.doc-kicker{color:#333}.doc-meta{color:#555}.document{font-size:10.5pt;line-height:1.7}.document h1{font-size:24pt;margin:20pt 0}.document h2{font-size:17pt;margin:25pt 0 12pt;padding-top:14pt;break-after:avoid}.document h3{font-size:12pt;break-after:avoid}.document p,.document li{orphans:3;widows:3}.table-scroll,.formula-block{overflow:visible;border-radius:0;break-inside:auto}.document table{min-width:0;font-size:9pt}.document th,.document td{min-width:0;padding:7pt;overflow-wrap:anywhere}.document thead{display:table-header-group}.document tr{break-inside:avoid}.formula-block pre,.formula-block code{white-space:pre-wrap;overflow-wrap:anywhere}.document pre{white-space:pre-wrap!important}.doc-flow{grid-template-columns:repeat(2,minmax(0,1fr));break-inside:avoid}.doc-flow li::after{display:none}.doc-flow p{font-size:9pt}.doc-footer{font-size:9pt}a{color:inherit!important;text-decoration:none}.doc-footer a{display:none}}

/* Full protocol name beside the brand. */
.brand small.protocol-full-name,.doc-brand small.protocol-full-name{font-size:14px;line-height:1.4;letter-spacing:0;font-weight:500;color:var(--ink);margin-top:5px}

/* Shared two-level wordmark. */
.doc-header .platform-brand{display:grid;grid-template-columns:45px auto;gap:5px 12px;letter-spacing:0}.platform-brand img{grid-column:1;grid-row:1/3}.platform-brand strong{grid-column:2;font-size:28px;line-height:1.1;letter-spacing:-1px}.platform-brand small.platform-subtitle{grid-column:2;display:block;font:400 12px/1.5 Inter,"SF Pro Text",-apple-system,system-ui,sans-serif;letter-spacing:-.28px;white-space:nowrap;margin:0}
@media(max-width:850px){.doc-header{padding-left:10px;padding-right:10px}.doc-header .platform-brand{width:100%;grid-template-columns:40px auto;gap:6px 10px}.platform-brand img{grid-row:1;grid-column:1;width:40px;height:40px}.platform-brand strong{grid-column:2;font-size:28px}.platform-brand small.platform-subtitle{grid-column:1/-1;white-space:normal;font-size:12px}}
.doc-header{flex-wrap:wrap}.doc-header nav{flex-wrap:wrap}.doc-header .platform-brand{min-width:0}.doc-brand small.platform-subtitle{white-space:normal;max-width:520px}
@media(max-width:850px){html[lang="en"] .toc-panel summary::after{content:'Expand +'}html[lang="en"] .toc-panel details[open] summary::after{content:'Collapse −'}html[lang="zh-Hant"] .toc-panel summary::after{content:'展開 +'}html[lang="zh-Hant"] .toc-panel details[open] summary::after{content:'收合 −'}}

/* Responsive reading controls and diagrams. */
@media screen and (max-width: 1100px) {
  .doc-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px 20px;
  }
  .doc-header .platform-brand {
    grid-template-columns: 45px minmax(0, 1fr);
    width: auto;
  }
  .doc-header nav {
    grid-column: 1 / -1;
    grid-row: 2;
    gap: 8px 24px;
  }
  .doc-header nav a,
  .doc-tools a,
  .doc-tools button{
    min-height: 44px;
  }
  .doc-header nav a,
  .doc-tools a {
    display: inline-flex;
    align-items: center;
  }
  .doc-flow {
    grid-template-columns: minmax(0, 1fr);
    gap: 24px;
  }
  .doc-flow li {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    column-gap: 12px;
    align-items: baseline;
  }
  .doc-flow .step {
    grid-row: 1 / 3;
    margin: 0;
  }
  .doc-flow strong,
  .doc-flow p {
    grid-column: 2;
  }
  .doc-flow li:not(:last-child)::after {
    content: '↓';
    top: auto;
    right: 50%;
    bottom: -28px;
  }
}
@media screen and (max-width: 850px) {
  .doc-header,
  .reading-layout {
    padding-left: clamp(16px, 4vw, 28px);
    padding-right: clamp(16px, 4vw, 28px);
  }
  .doc-header .platform-brand {
    grid-template-columns: 40px minmax(0, 1fr);
  }
  .document h1 {
    font-size: clamp(28px, 5vw, 32px);
    overflow-wrap: anywhere;
  }
  .document ul,
  .document ol:not(.doc-flow) {
    padding-left: 24px;
  }
  .table-scroll,
  .formula-block {
    max-width: 100%;
    overscroll-behavior-x: contain;
  }
  .toc-panel a,
  .doc-footer a {
    min-height: 44px;
  }
}
@media screen and (max-width: 600px) {
  .doc-header .platform-brand {
    grid-column: 1 / -1;
  }
  .doc-header nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-column: 1;
    gap: 4px 18px;
  }
  .doc-header nav a {
    justify-self: start;
  }
  .doc-header nav a:first-child {
    grid-column: 1 / -1;
  }
  .doc-header .platform-brand strong {
    font-size: clamp(24px, 6vw, 28px);
  }
}
