:root{
  --paper:#e9e6dd;
  --sheet:#ffffff;
  --panel:#f4f2ec;
  --ink:#1b1d21;
  --quiet:#5a5f68;
  --accent:#1f5d50;
  --rule:#d5d1c6;
  --warn:#b3562a;
  --mono:Consolas,"Courier New",monospace;
  --serif:Georgia,"Times New Roman",serif;
  --sans:-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --cond:"Arial Narrow","Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);}
a{color:var(--accent)}
a:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
code{font:13px/1.4 var(--mono);color:var(--quiet)}
.skip{position:absolute;left:-9999px;top:0;background:var(--ink);color:#fff;padding:10px 16px;z-index:5}
.skip:focus{left:0}
.sheet{max-width:1300px;margin:0 auto;background:var(--sheet);border-left:1px solid var(--rule);border-right:1px solid var(--rule)}

.masthead{display:flex;flex-wrap:wrap;gap:10px 32px;align-items:flex-end;justify-content:space-between;
  padding:12px 32px 10px;border-bottom:2px solid var(--ink)}
.masthead-name a{display:block;text-decoration:none;color:var(--ink)}
.masthead-name b{display:block;font:700 28px/1 var(--cond);letter-spacing:.09em;text-transform:uppercase}
.masthead-name span{display:block;font:11px/1.3 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-top:4px}
.masthead-name p{margin:6px 0 0;max-width:76ch;font-size:12px;line-height:1.5;color:var(--quiet)}
.edition{display:flex;flex-wrap:wrap;gap:0}
.edition span{font:12px/1 var(--mono);letter-spacing:.1em;padding:8px 12px;border:1px solid var(--rule);margin-left:-1px;color:var(--quiet);white-space:nowrap}

.doclinks{display:flex;flex-wrap:wrap;align-items:center;gap:0;padding:0 32px;border-bottom:1px solid var(--rule);background:var(--panel)}
.doclinks b{font:11px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--quiet);padding:11px 16px 11px 0}
.doclinks a{font:12px/1 var(--mono);letter-spacing:.06em;padding:11px 16px;color:var(--accent);text-decoration:none;border-left:1px solid var(--rule)}
.doclinks a:hover{background:#fff;text-decoration:underline}

.manual-grid{display:grid;grid-template-columns:262px minmax(0,1fr) 208px;
  grid-template-areas:"rail body onpage" "rail body onpage" "rail pager onpage";
  align-items:start}
.chapter-rail{grid-area:rail;border-right:1px solid var(--rule);padding:24px 20px 40px;background:var(--panel);min-height:100%}
.chapter-rail>b{display:block;font:11px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--quiet);padding-bottom:10px;border-bottom:1px solid var(--rule)}
.chapter-rail ol{list-style:none;margin:0;padding:0}
.chapter-rail li{border-bottom:1px solid var(--rule)}
.chapter-rail li a,.chapter-rail li.quiet{display:grid;grid-template-columns:26px 1fr;gap:2px 8px;padding:10px 4px;text-decoration:none;color:var(--ink)}
.chapter-rail li a:hover{background:#fff}
.chapter-rail li.here{background:#fff;box-shadow:inset 3px 0 0 var(--accent)}
.chapter-rail .num{font:12px/1.5 var(--mono);color:var(--accent)}
.chapter-rail .rail-title{font:600 14px/1.35 var(--sans)}
.chapter-rail .rail-host{grid-column:2;font:11px/1.4 var(--mono);color:var(--quiet)}
.chapter-rail li.quiet .rail-title{color:var(--quiet);font-weight:400}
.rail-note{margin:16px 0 0;font-size:12px;line-height:1.55;color:var(--quiet)}

.reading{grid-area:body;padding:30px 40px 44px;max-width:none;min-width:0}
.reading>section{border-top:1px solid var(--rule);margin-top:34px;padding-top:26px}
.reading>section:first-of-type{border-top:0;margin-top:0;padding-top:0}
.reading h1{font:400 36px/1.15 var(--serif);margin:0 0 14px;letter-spacing:-.01em}
.reading h2{font:400 23px/1.25 var(--serif);margin:26px 0 10px}
.reading section:first-of-type h2:first-of-type{margin-top:18px}
.reading h3{font:600 17px/1.3 var(--sans);margin:20px 0 8px}
.reading p{margin:0 0 12px;max-width:68ch}
.lede{font-size:18px;line-height:1.6;color:#2b2f35}
.reading ul.facts,.reading ol.steps{max-width:70ch;padding-left:22px}
.reading ul.facts li,.reading ol.steps li{margin-bottom:9px}
.reading ol.steps li::marker{font:600 14px var(--mono);color:var(--accent)}

.deflist{margin:0;border-top:1px solid var(--rule)}
.deflist>div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:6px 24px;border-bottom:1px solid var(--rule);padding:12px 0}
.deflist dt{font:600 14px/1.5 var(--sans);color:var(--accent)}
.deflist dd{margin:0;font-size:15px;line-height:1.6}

.figure-block{margin:20px 0;padding:0}
.figure-block img{display:block;width:100%;height:auto;max-width:640px;border:1px solid var(--rule);background:var(--panel)}
.figure-block figcaption{margin-top:8px;font-size:13px;line-height:1.55;color:var(--quiet);max-width:64ch}

.scroll-hint{display:none}
.scroll-wrap{overflow-x:auto;margin:6px 0 20px;border:1px solid var(--rule)}
.spec-table{border-collapse:collapse;width:100%;min-width:520px;font-size:14px}
.spec-table caption{caption-side:top;text-align:left;padding:10px 12px;font:12px/1.5 var(--mono);color:var(--quiet);background:var(--panel);border-bottom:1px solid var(--rule)}
.spec-table th,.spec-table td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--rule);vertical-align:top}
.spec-table thead th{font:11px/1.3 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--quiet);border-bottom:2px solid var(--ink)}
.spec-table tbody th{font-weight:600;width:24%}
.spec-table tbody tr:last-child th,.spec-table tbody tr:last-child td{border-bottom:0}
.spec-table td{font-variant-numeric:tabular-nums}
.spec-table .figure{font-family:var(--mono);font-size:13px}

.notice{border:1px solid var(--warn);border-left-width:4px;background:#fbf3ec;padding:12px 16px;margin:16px 0;max-width:70ch}
.notice b{display:block;font:11px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--warn);margin-bottom:6px}
.notice p{margin:0;font-size:15px}

.crumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font:12px/1 var(--mono);color:var(--quiet);margin-bottom:18px}
.crumb a{color:var(--accent)}
.crumb a::after{content:"/";display:inline-block;text-decoration:none;color:#a9a396;padding-left:9px}
.chapter-kicker{font:11px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin:0 0 10px}
.edition-stamp{display:flex;flex-wrap:wrap;gap:0;margin:0 0 18px}
.edition-stamp span{font:12px/1 var(--mono);letter-spacing:.08em;padding:8px 12px;border:1px solid var(--rule);margin-left:-1px;color:var(--quiet);white-space:nowrap}

.chapter-list{list-style:none;margin:20px 0 0;padding:0}
.chapter-list li{display:grid;grid-template-columns:52px minmax(0,1fr);gap:20px;border-top:1px solid var(--rule);padding:18px 0}
.chapter-list .num{font:400 26px/1 var(--serif);color:var(--accent)}
.chapter-list h2{margin:0 0 4px;font:400 22px/1.25 var(--serif)}
.chapter-list li.quiet h2{color:var(--quiet)}
.chapter-list .chapter-host{margin:0 0 6px}
.chapter-list p{margin:0;font-size:15px}

.onpage{grid-area:onpage;padding:30px 24px 40px 0;position:sticky;top:0}
.onpage b{display:block;font:11px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--quiet);padding-bottom:8px;border-bottom:1px solid var(--rule)}
.onpage ul{list-style:none;margin:0;padding:0}
.onpage li{border-bottom:1px solid var(--rule)}
.onpage a{display:block;padding:8px 0;font-size:13px;line-height:1.4;text-decoration:none}
.onpage a:hover{text-decoration:underline}

.pager{grid-area:pager;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ink);margin:0 40px 34px}
.pager a,.pager .empty{display:block;padding:16px 18px;text-decoration:none;color:var(--ink);border-right:1px solid var(--rule)}
.pager .pager-next{border-right:0;text-align:right}
.pager a:hover{background:var(--panel)}
.pager span{display:block;font:11px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--quiet);margin-bottom:6px}
.pager b{font:600 15px/1.35 var(--sans);color:var(--accent)}
.pager .empty b{color:var(--quiet)}

.colophon{border-top:2px solid var(--ink);background:var(--panel);padding:26px 32px 32px}
.colophon h2{font:400 22px/1.25 var(--serif);margin:0 0 14px}
.colophon-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:32px}
.colophon p{margin:0 0 10px;font-size:14px;line-height:1.6;color:#33373d}
.edition-line{font:12px/1 var(--mono) !important;letter-spacing:.1em;color:var(--accent) !important;padding-bottom:10px;border-bottom:1px solid var(--rule)}
.host-label{font:11px/1 var(--mono) !important;letter-spacing:.18em;text-transform:uppercase;color:var(--quiet) !important}
.host-list{font-family:var(--mono);font-size:12px !important;line-height:1.8 !important;color:var(--quiet) !important}
.host-list b{display:block;color:var(--ink);letter-spacing:.1em;text-transform:uppercase;font-size:11px}
.colophon-foot{margin:22px 0 0 !important;padding-top:14px;border-top:1px solid var(--rule);font:12px/1 var(--mono) !important;letter-spacing:.08em;color:var(--quiet) !important}

@media(max-width:1180px){
  .manual-grid{grid-template-columns:236px minmax(0,1fr) 180px}
  .reading{padding:26px 28px 40px}
  .pager{margin:0 28px 30px}
}
@media(max-width:900px){
  .manual-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"rail" "body" "pager"}
  .onpage{display:none}
  .chapter-rail{border-right:0;border-bottom:1px solid var(--rule);padding:20px 24px 24px}
  .chapter-rail ol{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:0 24px}
  .reading{padding:26px 24px 36px}
  .pager{margin:0 24px 28px}
  .colophon-grid{grid-template-columns:minmax(0,1fr);gap:22px}
  .scroll-hint{display:block;margin:14px 0 4px;font:11px/1 var(--mono);letter-spacing:.14em;
    text-transform:uppercase;color:var(--quiet)}
  .scroll-wrap{box-shadow:inset -16px 0 14px -14px rgba(27,29,33,.45)}
}
@media(max-width:640px){
  .masthead{padding:14px 20px 12px}
  .masthead-name b{font-size:25px}
  .edition span:last-child{display:none}
  .doclinks{padding:0 20px}
  .doclinks a{padding:10px 12px}
  .doclinks a:first-of-type{border-left:0}
  .chapter-rail{padding:18px 20px 22px}
  .reading{padding:22px 20px 30px}
  .reading h1{font-size:29px}
  .reading h2{font-size:21px}
  .deflist>div{grid-template-columns:minmax(0,1fr);gap:2px}
  .spec-table{min-width:420px}
  .pager{grid-template-columns:minmax(0,1fr);margin:0 20px 24px}
  .pager a,.pager .empty{border-right:0;border-bottom:1px solid var(--rule);text-align:left}
  .pager .pager-next{text-align:left}
  .colophon{padding:22px 20px 26px}
  .chapter-list li{grid-template-columns:38px minmax(0,1fr);gap:14px}
}
