/* One reading system for both manuals; no page-local legacy stylesheet. */
.manual-page { --ink: var(--color-text); --ink-2: var(--page-reading); --ink-3: var(--color-muted); --brand: var(--page-accent); --paper: var(--color-bg); --panel: var(--color-surface); --panel-2: var(--color-subtle); --line: var(--color-border); --mono: var(--font-mono); }
html { scroll-padding-top: calc(var(--doc-header-height, 72px) + 24px); }
.doc-progress { border-top: 1px solid var(--color-border); }
.doc-progress-meta { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 32px; font-size: 11px; color: var(--color-secondary); }
.doc-progress-meta b { display: inline-block; min-width: 4ch; margin-inline-start: 6px; color: var(--page-accent); font-weight: 600; font-variant-numeric: tabular-nums; text-align: end; }
.doc-progress-track { height: 3px; background: var(--color-border); overflow: hidden; }
.doc-progress-fill { display: block; height: 100%; background: var(--page-accent); transform: scaleX(0); transform-origin: left; }
.shell { display: grid; grid-template-columns: 238px minmax(0, 1fr); gap: 60px; width: min(1180px, calc(100% - 112px)); margin-inline: auto; }
.toc { position: sticky; top: calc(var(--doc-header-height, 72px) + 24px); align-self: start; max-height: calc(100dvh - var(--doc-header-height, 72px) - 48px); overflow-y: auto; scrollbar-width: thin; scrollbar-color: var(--color-border) transparent; padding: 22px 22px 24px 0; border-inline-end: 1px solid var(--color-border); margin-top: 26px; }
.toc-home { display: inline-flex; align-items: center; min-height: 36px; font-size: 13px; text-decoration: none; color: var(--color-secondary); }
.doc-product-switch { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 9px; padding: 4px; margin-top: 14px; }
.doc-product-switch a { display: flex; align-items: center; justify-content: center; min-height: 36px; border-radius: 5px; color: var(--color-secondary); text-decoration: none; font-size: 13px; }
.doc-product-switch a[aria-current='page'] { background: var(--page-wash); color: var(--page-accent); font-weight: 600; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--page-accent) 24%, transparent); }
.doc-toc > summary { display: none; }
.toc-search { margin-top: 24px; }
.toc-search label { display: block; font-size: 12px; color: var(--color-muted); margin-bottom: 8px; }
.toc-search > div { position: relative; }
.toc-search input { width: 100%; background: var(--color-surface); border: 1px solid var(--color-border); color: var(--color-text); border-radius: 7px; padding: 10px 36px 10px 12px; font-size: 14px; min-height: 42px; }
.toc-search input::placeholder { color: var(--color-muted); }
.toc-search input::-webkit-search-cancel-button { display: none; }
.toc-search button { position: absolute; inset: 0 0 0 auto; width: 36px; padding: 0; border: 0; background: none; color: var(--color-secondary); font-size: 20px; }
.toc-search [role='status'] { color: var(--color-secondary); font-size: 12px; margin-top: 8px; }
.toc-search [role='status']:empty { display: none; }
.toc nav#toc { display: grid; gap: 3px; margin-top: 18px; }
.toc-sec { color: var(--color-muted); font-size: 12px; margin: 22px 0 7px; padding-inline: 10px; }
#toc a { display: block; padding: 9px 10px; font-size: 14px; color: var(--color-secondary); text-decoration: none; border-radius: 5px; line-height: 1.5; }
#toc a:not(.sub) { font-weight: 550; color: var(--color-text); }
#toc a.sub { padding: 7px 10px 7px 23px; font-size: 13px; }
#toc a[aria-current='location'] { color: var(--page-accent); background: var(--page-wash); font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
.toc-download { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 10px; min-height: 48px; border-top: 1px solid var(--color-border); margin-top: 22px; font-size: 13px; color: var(--color-text); text-decoration: none; }
.toc-download svg { width: 17px; height: 17px; }
.doc { min-width: 0; padding-block: 48px 72px; }
.doc-in { max-width: 880px; margin-inline: auto; }
.cover h1 { font-size: clamp(38px, 3.9vw, 55px); line-height: 1.16; letter-spacing: -.055em; font-weight: 780; margin-top: 30px; }
.cover > p:not(.page-crumb) { color: var(--color-secondary); font-size: 16px; line-height: 1.85; margin-top: 24px; }
.cover-meta { display: flex; flex-wrap: wrap; gap: 16px; margin-top: 20px; font-size: 13px; color: var(--color-muted); font-variant-numeric: tabular-nums; }
.cover-meta span:first-child { color: var(--page-accent); }
.manual-shortcuts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 36px; border-top: 1px solid var(--color-border); border-bottom: 1px solid var(--color-border); padding-block: 22px; }
.manual-shortcuts a { padding-inline: 18px; text-decoration: none; }
.manual-shortcuts a:first-child { padding-inline-start: 0; }
.manual-shortcuts a:last-child { padding-inline-end: 0; }
.manual-shortcuts a + a { border-inline-start: 1px solid var(--color-border); }
.manual-shortcuts small, .doc-next small { display: block; color: var(--color-muted); font-size: 12px; font-weight: 400; }
.manual-shortcuts strong { display: flex; align-items: center; gap: 12px; justify-content: space-between; font-size: 14px; font-weight: 600; margin-top: 8px; }
.manual-shortcuts svg, .doc-next svg { width: 17px; height: 17px; color: var(--page-accent); }
.notation { font-size: 13px; color: var(--color-secondary); margin-top: 18px; }
.notation summary { cursor: pointer; min-height: 40px; padding-block: 8px; }
.notation > div { padding: 16px 20px; line-height: 1.9; background: var(--color-surface); border-radius: 8px; margin-top: 8px; }
.chap { margin-top: 64px; padding-top: 42px; border-top: 1px solid var(--color-border); scroll-margin-top: 24px; }
.chap:first-of-type { border-top: 0; padding-top: 24px; margin-top: 20px; }
.chap h2 { font-size: 34px; line-height: 1.3; font-weight: 730; letter-spacing: -.04em; margin-bottom: 18px; }
.chap p, .chap li { font-size: 16px; color: var(--page-reading); line-height: 1.85; text-wrap: auto; }
.chap p + p { margin-top: 16px; }
.chap > p { max-width: 75ch; }
.chap h3 { font-size: 23px; line-height: 1.4; font-weight: 680; letter-spacing: -.03em; margin-top: 44px; margin-bottom: 16px; scroll-margin-top: 24px; }
.chap h4 { font-size: 18px; line-height: 1.5; font-weight: 630; letter-spacing: -.025em; margin-top: 28px; margin-bottom: 12px; }
.chap :is(b, strong) { color: var(--color-text); font-weight: 600; }
.chap a { color: var(--page-accent); }
.chap .list { margin-block: 18px; padding-inline-start: 22px; display: grid; gap: 10px; }
.chap li::marker { color: var(--color-muted); }
.chap .steps { list-style: decimal; padding-inline-start: 24px; display: grid; gap: 14px; margin-block: 22px; }
.chap .steps li { padding-inline-start: 8px; }
.chap .check { padding-inline-start: 22px; display: grid; gap: 10px; margin-block: 20px; }
.doc code { font-family: var(--font-mono); font-size: .86em; background: var(--color-subtle); color: var(--color-text); padding: 2px 5px; border-radius: 4px; overflow-wrap: anywhere; }
.doc kbd { font-family: var(--font-mono); font-size: .8em; background: var(--color-surface); border: 1px solid var(--color-border); border-bottom-width: 2px; border-radius: 5px; padding: 2px 6px; color: var(--color-text); white-space: nowrap; }
.doc pre { max-width: 100%; overflow-x: auto; background: var(--color-surface); border: 1px solid var(--color-border); color: var(--page-reading); border-radius: 8px; padding: 20px; font-family: var(--font-mono); font-size: 13px; line-height: 1.8; margin-block: 22px; }
.doc pre .c { color: var(--color-muted); }.doc pre .k { color: var(--page-accent); }.doc pre .s { color: var(--color-text); }
.note { display: grid; grid-template-columns: auto 1fr; align-items: baseline; gap: 18px; margin-block: 24px; padding: 22px 24px; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 10px; color: var(--page-reading); font-size: 14px; line-height: 1.85; }
.note .tag { font-size: 12px; color: var(--page-accent); font-weight: 600; white-space: nowrap; }
.note > div > b:first-child { display: block; margin-bottom: 4px; }
.note--stop { border-color: #c66a62; }
.note--stop .tag { color: #b33c30; }
[data-theme='dark'] .note--stop .tag { color: #ffa59b; }
.chap figure { margin-block: 28px; border: 1px solid var(--color-border); border-radius: 10px; overflow: hidden; background: var(--color-surface); }
.chap figure img { width: 100%; max-height: 580px; height: auto; object-fit: contain; outline: 1px solid var(--image-outline); outline-offset: -1px; }
.chap figcaption { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 6px 20px; border-top: 1px solid var(--color-border); padding: 14px 18px; color: var(--color-muted); font-size: 13px; line-height: 1.65; }
.figure-zoom { border: 0; padding: 5px 0; background: none; color: var(--color-text); cursor: pointer; font-size: 13px; white-space: nowrap; min-height: 32px; margin-inline-start: auto; }
.tablewrap { max-width: 100%; overflow-x: auto; margin-block: 24px; border: 1px solid var(--color-border); border-radius: 8px; }
.doc table { border-collapse: collapse; width: 100%; min-width: 560px; font-size: 14px; line-height: 1.8; color: var(--page-reading); }
.doc th, .doc td { padding: 15px 18px; text-align: start; vertical-align: top; border-bottom: 1px solid var(--color-border); }
.doc th { background: var(--color-surface); color: var(--color-text); font-weight: 600; font-size: 13px; }
.doc tbody tr:last-child td { border-bottom: 0; }
.doc td.m { font-size: 13px; }
.doc td.rid { font-family: var(--font-mono); font-size: 12px; color: var(--page-accent); white-space: nowrap; }
.doc td .d { display: block; font-size: 13px; color: var(--color-muted); margin-top: 5px; }
.stage { margin-block: 26px; padding: 26px 28px; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 10px; }
.stage-h { display: flex; align-items: baseline; gap: 14px; }
.stage-h .n { font-size: 13px; color: var(--page-accent); font-weight: 600; }
.stage-h h4 { margin: 0; }
.stage .stage-lead { font-size: 14px; margin-block: 8px 18px; color: var(--color-secondary); }
.pipe { display: grid; gap: 16px; padding: 24px; margin-block: 24px; background: var(--color-surface); border-radius: 10px; }
.pipe-row { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: 24px; font-size: 15px; line-height: 1.85; color: var(--page-reading); }
.pipe-row .s { color: var(--page-accent); font-size: 13px; font-weight: 550; }
.chips { display: flex; flex-wrap: wrap; gap: 10px; margin-block: 20px; }
.chip { display: inline-block; vertical-align: middle; font-size: 12px; font-weight: 450; line-height: 1.5; padding: 5px 9px; color: var(--color-secondary); background: var(--color-surface); border: 1px solid var(--color-border); border-radius: 5px; overflow-wrap: anywhere; }
.chip--brand { background: var(--page-wash); color: var(--page-accent); }
.current-tools { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin-block: 28px; }
.current-tools article { padding-top: 20px; border-top: 1px solid var(--color-border); }
.current-tools h3 { margin: 0 0 12px; font-size: 20px; }
.current-tools p { font-size: 15px; }
.guide-update-note { color: var(--color-muted); font-size: 13px; line-height: 1.8; margin-block: 18px; }
.guide-update-note a { color: var(--page-accent); }
.doc-next { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; border-top: 1px solid var(--color-border); margin-top: 64px; padding-top: 30px; }
.doc-next a { text-decoration: none; padding: 16px 0; }
.doc-next strong { display: flex; align-items: center; justify-content: space-between; gap: 16px; font-size: 17px; margin-top: 8px; font-weight: 600; }
.doc-image-dialog { width: min(1540px, 96vw); max-width: 96vw; max-height: 94dvh; padding: 0; border: 1px solid var(--color-border); border-radius: 12px; background: var(--color-bg); color: var(--color-text); overscroll-behavior: contain; }
.doc-image-dialog::backdrop { background: rgb(0 0 0 / .8); }
.doc-image-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 14px 20px; }
.doc-image-header h2 { font-size: 16px; line-height: 1.5; font-weight: 600; }
.doc-image-help { font-size: 12px; color: var(--color-muted); padding: 0 20px 14px; }
.doc-image-scroll { max-height: calc(94dvh - 125px); overflow: auto; padding: 1px; }
.doc-image-scroll img { min-width: 100%; max-width: none; height: auto; }
.doc-route { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 28px; margin-block: 24px 32px; border-block: 1px solid var(--color-border); }
.doc-route a { display: grid; gap: 5px; padding-block: 18px; text-decoration: none; }
.doc-route span { font-size: 12px; color: var(--color-muted); }
.doc-route b { font-size: 16px; }
.doc-route a:nth-child(n+3) { border-top: 1px solid var(--color-border); }
.chap .doc-location { color: var(--page-accent); font-size: 13px; margin-block: 12px 20px; }
.chap .doc-result { font-size: 14px; line-height: 1.9; padding-block: 14px; border-block: 1px solid var(--color-border); margin-block: 24px; }
.doc-result b { color: var(--page-accent); margin-inline-end: 8px; }
.chap .doc-source { font-size: 12px; color: var(--color-muted); line-height: 1.9; margin-block: 20px; }
.doc-command { border: 1px solid var(--color-border); border-radius: 8px; margin-block: 20px; overflow: hidden; background: var(--color-surface); }
.doc-command-bar { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 8px 14px; border-bottom: 1px solid var(--color-border); font-size: 12px; color: var(--color-secondary); }
.doc-command-bar button { min-height: 36px; min-width: 48px; padding: 6px 10px; border: 1px solid var(--color-border); border-radius: 5px; background: var(--color-bg); color: var(--color-text); cursor: pointer; flex-shrink: 0; }
.doc-command pre { border: 0; border-radius: 0; margin: 0; padding: 18px; font-size: 13px; }
.doc-command code { padding: 0; background: none; font-size: inherit; overflow-wrap: normal; }
.doc-command .doc-copy-status { margin: 0; padding: 0 18px 14px; font-size: 12px; line-height: 1.7; color: var(--page-accent); }
.doc-command .doc-copy-status:empty { display: none; }
.doc-disclosure { border-block: 1px solid var(--color-border); margin-block: 22px; }
.doc-disclosure + .doc-disclosure { border-top: 0; margin-top: -22px; }
.doc-disclosure > summary { padding: 18px 4px; font-size: 15px; font-weight: 550; line-height: 1.75; color: var(--color-text); cursor: pointer; }
.doc-disclosure > div { padding: 0 4px 18px; }
.doc-disclosure > div > p { font-size: 14px; }
.doc-help-links { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-block: 24px; font-size: 14px; }
@media (max-width: 38rem) { .doc-command-bar { padding-inline: 12px; }.doc-command pre { padding: 16px 12px; font-size: 12px; }.doc-route { gap: 0 18px; }.doc-route b { font-size: 14px; } }
@media print { .doc-command-bar button, .doc-copy-status { display: none; }.doc-command pre { white-space: pre-wrap; overflow-wrap: anywhere; } }
@media (hover: hover) { #toc a:hover { color: var(--page-accent); background: var(--color-surface); }.manual-shortcuts a:hover strong, .doc-next a:hover strong, .toc-download:hover { color: var(--page-accent); } }
@media (max-width: 70rem) { .shell { width: calc(100% - 64px); grid-template-columns: 215px minmax(0, 1fr); gap: 36px; }.toc { padding-inline-end: 16px; }.cover h1 { font-size: 44px; }.manual-shortcuts { grid-template-columns: 1fr; padding-block: 4px; }.manual-shortcuts a { padding: 15px 0; display: flex; align-items: center; justify-content: space-between; gap: 24px; }.manual-shortcuts strong { margin-top: 0; }.manual-shortcuts a + a { border-inline-start: 0; border-top: 1px solid var(--color-border); } }
@media (max-width: 52rem) {
 .shell { display: block; }
 .toc { position: static; max-height: none; border: 0; border-bottom: 1px solid var(--color-border); margin-top: 20px; padding: 0 0 16px; overflow: visible; }
 .toc-home { font-size: 13px; }
 .doc-product-switch { max-width: 300px; margin-top: 8px; }
 .doc-toc > summary { display: flex; align-items: center; justify-content: space-between; min-height: 48px; margin-top: 12px; font-size: 14px; cursor: pointer; list-style: none; }
 .doc-toc > summary::-webkit-details-marker { display: none; }
 .doc-toc[open] > summary span { transform: rotate(45deg); }
 .toc-search { margin-top: 8px; }
 .toc-search input { font-size: 16px; }
 .toc nav#toc { grid-template-columns: 1fr 1fr; gap: 4px 12px; }
 .toc-sec { grid-column: 1 / -1; margin-top: 16px; }
 #toc a.sub { padding: 9px 10px; }
 .toc-download { display: none; }
 .doc { padding-top: 30px; }
 .cover h1 { font-size: clamp(36px, 6.5vw, 48px); }
 .manual-shortcuts { grid-template-columns: repeat(3, minmax(0, 1fr)); padding-block: 20px; }
 .manual-shortcuts a { display: block; padding: 0 16px; }
 .manual-shortcuts a + a { border-top: 0; border-inline-start: 1px solid var(--color-border); }
 .manual-shortcuts strong { margin-top: 8px; }
}
@media (max-width: 38rem) {
 .shell { width: calc(100% - 40px); }
 .doc { padding-block: 26px 48px; }
 .cover h1 { font-size: clamp(31px, 8.7vw, 43px); margin-top: 24px; }
 .cover > p:not(.page-crumb) { font-size: 15px; margin-top: 22px; }
 .manual-shortcuts { grid-template-columns: 1fr; margin-top: 26px; padding-block: 4px; }
 .manual-shortcuts a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 0; }
 .manual-shortcuts a + a { border-inline-start: 0; border-top: 1px solid var(--color-border); }
 .manual-shortcuts strong { font-size: 13px; margin-top: 0; }
 .manual-shortcuts small { font-size: 11px; }
 .chap { margin-top: 48px; padding-top: 32px; }
 .chap h2 { font-size: 28px; }
 .chap h3 { font-size: 22px; margin-top: 36px; }
 .chap h4 { font-size: 17px; }
 .chap p, .chap li { font-size: 16px; line-height: 1.85; }
 .note { grid-template-columns: 1fr; gap: 8px; padding: 20px; }
 .stage { padding: 20px; }
 .pipe { padding: 20px; }
 .pipe-row { grid-template-columns: 1fr; gap: 3px; }
 .doc th, .doc td { padding: 12px 14px; }
 .current-tools { grid-template-columns: 1fr; gap: 20px; }
 .doc-next { grid-template-columns: 1fr; gap: 6px; }
 .doc-next strong { font-size: 16px; }
 .doc-image-header { padding: 12px; gap: 12px; }
 .doc-image-header h2 { font-size: 14px; }
 .doc-image-header .button { flex-shrink: 0; }
}
@media print { .shell { display: block; width: 100%; }.toc, .manual-shortcuts, .doc-next, .figure-zoom, .doc-image-dialog { display: none; }.doc { padding: 0; }.chap { break-before: page; }.chap figure { break-inside: avoid; }.chap figure img { max-height: none; }.tablewrap { overflow: visible; }.doc table { min-width: 0; } }
