/* Handbook reading surface; uses the existing ERI brand tokens. */
.handbook { background:var(--surface); color:var(--ink); }
.hb-header { background:var(--cream); border-bottom:1px solid var(--border); padding:110px 0 0; }
.hb-back { font-size:.875rem; color:var(--muted); }
.hb-back:hover,.hb-meta a:hover { text-decoration:underline; }
.hb-title-row { display:flex; justify-content:space-between; align-items:flex-end; gap:32px; padding:34px 0 32px; }
.hb-kicker { font-size:.875rem; font-weight:650; color:var(--verm-deep); margin-bottom:12px; }
.hb-title-row h1 { font-size:clamp(2.5rem,5.2vw,4.3rem); font-weight:650; letter-spacing:-.055em; line-height:1.03; }
.hb-download { display:block; flex-shrink:0; background:var(--ink); color:var(--surface); padding:18px 24px; font-weight:600; font-size:1rem; }
.hb-download span { display:block; margin-top:5px; font-size:.875rem; font-weight:400; color:#e8ddd0; }
.hb-download:hover { background:var(--ink-3); }
.hb-meta { display:flex; gap:26px; flex-wrap:wrap; border-top:1px solid var(--border); padding:17px 0; font-size:.875rem; color:var(--muted); }
.hb-meta a { margin-left:auto; color:var(--ink); }
.hb-layout { display:grid; grid-template-columns:250px minmax(0,1fr); gap:clamp(40px,6vw,90px); align-items:start; padding-top:44px; padding-bottom:80px; }
.hb-sidebar { position:sticky; top:100px; max-height:calc(100vh - 120px); overflow-y:auto; padding-bottom:12px; }
.hb-nav-label { color:var(--muted); font-size:.875rem; margin-bottom:16px; }
.hb-sidebar li a,.hb-mobile-contents li a { display:flex; gap:12px; padding:8px 10px 8px 0; font-size:.875rem; line-height:1.45; border-left:2px solid transparent; }
.hb-sidebar li a span,.hb-mobile-contents li a span { color:var(--muted); font-variant-numeric:tabular-nums; min-width:23px; }
.hb-sidebar li a:hover,.hb-sidebar li a[aria-current] { color:var(--verm-deep); }
.hb-sidebar li a[aria-current] { border-left-color:var(--verm); padding-left:10px; }
.hb-support { display:block; border-top:1px solid var(--border); margin-top:24px; padding-top:18px; font-size:.875rem; color:var(--muted); }
.hb-support span { display:block; color:var(--ink); margin-top:4px; }
.hb-article { min-width:0; max-width:760px; }
.hb-intro h2 { font-size:1.6rem; letter-spacing:-.025em; margin-bottom:16px; }
.hb-intro p,.hb-copy p { font-size:1rem; line-height:1.85; margin-bottom:20px; }
.hb-edition { color:var(--muted); }
.hb-edition strong { font-weight:650; color:var(--ink); }
.hb-facts { display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid var(--border); margin:30px 0 14px; padding:20px 0; gap:16px; }
.hb-facts dt { font-size:.875rem; color:var(--muted); margin-bottom:5px; }
.hb-facts dd { font-size:1.25rem; font-weight:600; }
.hb-facts dd span { display:block; font-size:.875rem; color:var(--muted); font-weight:400; }
.hb-chapter { padding:38px 0 18px; border-bottom:1px solid var(--border); scroll-margin-top:105px; }
.hb-chapter-heading { display:flex; gap:17px; align-items:baseline; margin-bottom:24px; }
.hb-number { font-size:.875rem; font-weight:550; color:var(--verm-deep); font-variant-numeric:tabular-nums; }
.hb-chapter h2 { font-size:clamp(1.6rem,2.3vw,2rem); line-height:1.2; font-weight:600; letter-spacing:-.035em; }
.hb-copy h3 { font-size:1.075rem; font-weight:650; margin:30px 0 12px; }
.hb-copy .tbl-wrap { margin:24px 0; }
.hb-copy .tbl { min-width:0; width:100%; font-size:.9375rem; }
.hb-copy .tbl th { background:var(--cream-2); color:var(--ink); text-transform:none; font-size:.875rem; letter-spacing:0; }
.hb-copy .tbl td,.hb-copy .tbl th { padding:14px 16px; vertical-align:top; }
.hb-copy .tbl td:first-child { width:31%; font-weight:550; }
.hb-copy a { text-decoration:underline; text-underline-offset:3px; }
.hb-end { display:flex; justify-content:space-between; gap:20px; padding-top:28px; font-size:.9375rem; }
.hb-end a:hover { text-decoration:underline; }
.hb-mobile-contents { display:none; }
.handbook a:focus-visible,.handbook summary:focus-visible { outline:3px solid var(--peri-deep); outline-offset:4px; }
@media(max-width:900px) {
 .hb-layout { display:block; padding-top:24px; }
 .hb-sidebar { display:none; }
 .hb-article { max-width:none; }
 .hb-mobile-contents { display:block; border-bottom:1px solid var(--border); margin-bottom:28px; padding-bottom:20px; }
 .hb-mobile-contents summary { cursor:pointer; font-weight:600; }
 .hb-mobile-contents summary span { font-size:.875rem; font-weight:400; color:var(--muted); margin-left:12px; }
 .hb-mobile-contents ol { padding-top:16px; columns:2; }
 .hb-mobile-contents li { break-inside:avoid; }
}
@media(max-width:560px) {
 .hb-header { padding-top:86px; }
 .hb-title-row { align-items:flex-start; flex-direction:column; padding-top:25px; gap:24px; }
 .hb-download { width:100%; }
 .hb-meta { gap:8px 18px; }
 .hb-meta a { margin-left:0; }
 .hb-facts { gap:12px; }
 .hb-facts dd { font-size:1.1rem; }
 .hb-mobile-contents ol { columns:1; }
 .hb-chapter-heading { gap:12px; }
 .hb-copy .tbl td,.hb-copy .tbl th { padding:11px 10px; }
 .hb-copy .tbl td:first-child { width:36%; }
 .hb-copy .tbl { font-size:.875rem; }
 .hb-end { flex-wrap:wrap; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media print {
 @page { margin:18mm; }
 body, .handbook { background:white!important; color:#111!important; }
 body::after,.hb-sidebar,.hb-mobile-contents,.hb-download,.hb-end,.hb-back,.hb-meta a { display:none!important; }
 .hb-header { padding:0; }
 .hb-title-row { padding:12px 0 24px; }
 .hb-title-row h1 { font-size:32pt; }
 .hb-layout { display:block; padding:0; }
 .hb-article { max-width:none; }
 .container { padding-inline:0; }
 .hb-chapter { padding-top:24px; scroll-margin:0; }
 .hb-chapter-heading,h3 { break-after:avoid; }
 p { orphans:3; widows:3; }
 tr { break-inside:avoid; }
 .hb-copy p,.hb-intro p { font-size:10pt; line-height:1.5; }
 .hb-copy .tbl-wrap { overflow:visible; }
}
