.handbook { --book-paper: var(--staff-surface, #fff); --book-soft: var(--staff-soft, #edf3ee); --book-line: var(--staff-border, #c8d5cb); --book-ink: var(--staff-ink, #234b3d); --book-muted: var(--staff-muted, #596e61); color: var(--book-ink); }
.handbook-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 18px; margin-bottom: 24px; }
.handbook-eyebrow { font-size: 10px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--book-muted); }
.handbook-toolbar h2 { font-size: 24px; margin: 7px 0 5px; letter-spacing: -.5px; }
.handbook-toolbar p { margin: 0; color: var(--book-muted); font-size: 12px; }
.handbook-layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 24px; align-items: start; }
.handbook-contents { position: sticky; top: 20px; padding: 18px; border: 1px solid var(--book-line); border-radius: 12px; background: var(--book-paper); max-height: calc(100dvh - 40px); overflow-y: auto; scrollbar-width: thin; }
.handbook-contents label { display: grid; gap: 8px; font-size: 12px; font-weight: 600; }
.handbook-contents input { display: block; width: 100%; min-width: 0; min-height: 42px; padding: 10px 12px; border: 1px solid var(--book-line); border-radius: 7px; background: var(--book-paper); color: var(--book-ink); font: inherit; font-weight: 400; }
.handbook-contents-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 22px 0 12px; font-size: 11px; }
.handbook-contents-heading span { color: var(--book-muted); }
.handbook-contents nav { display: grid; gap: 4px; }
.handbook-contents nav button { display: flex; gap: 10px; align-items: baseline; width: 100%; text-align: left; min-height: 40px; padding: 10px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: var(--book-ink); font: inherit; font-size: 12px; }
.handbook-contents nav button > span { font-size: 10px; color: var(--book-muted); font-variant-numeric: tabular-nums; }
.handbook-contents nav button[aria-current=page] { background: var(--book-soft); border-color: var(--book-line); font-weight: 600; }
.handbook-contents nav button:hover { background: var(--book-soft); }
.handbook-page { min-width: 0; min-height: 680px; padding: 38px 42px 26px; background: var(--book-paper); border: 1px solid var(--book-line); border-radius: 4px 14px 14px 4px; box-shadow: -5px 0 0 var(--book-soft), -6px 0 0 var(--book-line), 0 8px 24px #163e3006; }
.handbook-page-heading { padding-bottom: 24px; margin-bottom: 28px; border-bottom: 1px solid var(--book-line); }
.handbook-page-heading h2 { margin: 12px 0; font-size: 31px; letter-spacing: -.6px; line-height: 1.3; }
.handbook-page-heading > p { margin: 0; font-size: 15px; line-height: 1.8; color: var(--book-muted); }
.handbook-open-section { display: inline-block; margin-top: 16px; color: var(--staff-primary, #21563f); font-size: 12px; text-underline-offset: 4px; }
.handbook-section { margin: 0 0 28px; max-width: 76ch; }
.handbook-section h3 { margin: 0 0 12px; font-size: 17px; }
.handbook-section :is(ol, ul) { padding-left: 22px; margin: 0; }
.handbook-section li { padding-left: 5px; margin: 0 0 14px; font-size: 14px; line-height: 1.85; overflow-wrap: anywhere; }
.handbook-section li::marker { color: var(--book-muted); font-size: 12px; }
.handbook-page-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding-top: 20px; margin-top: 30px; border-top: 1px solid var(--book-line); }
.handbook-page-footer > span { font-size: 11px; color: var(--book-muted); }
.handbook-page-footer > div { display: flex; gap: 8px; flex-wrap: wrap; }
.handbook-page-footer button { font-size: 12px; padding: 9px 12px; }
.handbook-export-hint { font-size: 11px; color: var(--book-muted); text-align: right; margin-top: 18px; }
#help-print-document { display: none; }
@media (max-width: 1000px) {
 .handbook-layout { grid-template-columns: 210px minmax(0, 1fr); gap: 18px; }
 .handbook-page { padding: 28px; }
}
@media (max-width: 750px) {
 .handbook-layout { grid-template-columns: minmax(0, 1fr); }
 .handbook-contents { position: static; max-height: none; padding: 14px; }
 .handbook-contents nav { grid-template-columns: repeat(2, minmax(0, 1fr)); max-height: 190px; overflow-y: auto; }
 .handbook-contents nav button { min-width: 0; min-height: 44px; font-size: 11px; padding: 9px 6px; gap: 6px; }
 .handbook-contents-heading { margin: 16px 0 8px; }
 .handbook-page { padding: 24px 20px; min-height: 0; }
 .handbook-page-heading h2 { font-size: 27px; }
 .handbook-toolbar h2 { font-size: 22px; }
 .handbook-export-hint { text-align: left; line-height: 1.6; }
}
@page handbook { size: A4; margin: 18mm 17mm; }
@media print {
 body.help-book-print { background: #fff !important; color: #203d30 !important; }
 body.help-book-print > * { display: none !important; }
 body.help-book-print > #help-print-document { display: block !important; page: handbook; font-family: Arial, sans-serif; font-size: 11pt; color: #203d30; background: #fff; }
 #help-print-document * { box-shadow: none; text-shadow: none; }
 #help-print-document h1 { font-size: 28pt; line-height: 1.2; margin: 8mm 0 6mm; }
 #help-print-document h2 { font-size: 17pt; line-height: 1.4; }
 #help-print-document h3 { font-size: 13pt; }
 #help-print-document :is(h1, h2, h3) { break-after: avoid; color: #203d30; }
 #help-print-document p { line-height: 1.7; }
 .handbook-print-cover { min-height: 240mm; padding-top: 20mm; }
 .handbook-print-cover > span, .handbook-print-chapter > span { font-size: 9pt; letter-spacing: 1px; color: #52685a; }
 #help-print-document .handbook-print-cover h1 { font-size: 42pt; margin: 22mm 0 12mm; }
 .handbook-print-escalation { margin-top: 26mm; padding-top: 7mm; border-top: 1px solid #8fa795; }
 .handbook-print-toc, .handbook-print-chapter { break-before: page; }
 .handbook-print-toc ol { padding-left: 7mm; }
 .handbook-print-toc li { margin: 0 0 4mm; padding-left: 2mm; line-height: 1.4; }
 .handbook-print-toc small { color: #52685a; margin-left: 3mm; }
 .handbook-print-lead { color: #52685a; font-size: 12pt; margin-bottom: 10mm; }
 #help-print-document .handbook-section { max-width: none; margin-bottom: 8mm; }
 #help-print-document .handbook-section li { font-size: 10.5pt; line-height: 1.65; margin-bottom: 4mm; break-inside: avoid; }
}

.handbook-journey ol { list-style:none;counter-reset:journey;padding-left:0 }
.handbook-journey li { position:relative;counter-increment:journey;border-left:2px solid var(--book-line);padding:0 0 24px 38px;margin:0;break-inside:avoid }
.handbook-journey li::before { content:counter(journey);position:absolute;left:-15px;top:0;width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--book-line);border-radius:50%;background:var(--book-soft);color:var(--book-ink);font-size:12px;font-weight:600 }
.handbook-journey li:last-child { padding-bottom:0;border-left-color:transparent }
@media print {
  #help-print-document .handbook-journey { --book-line:#b4c4ba;--book-soft:#eef3ef;--book-ink:#203d30 }
}

.service-flow-overview { margin:0 0 34px;padding:20px;border:1px solid var(--book-line,#c8d5cb);border-radius:12px;background:var(--book-soft,#edf3ee);color:var(--book-ink,#234b3d) }
.service-flow-overview header h3 { margin:0 0 8px }
.service-flow-overview header p,.service-flow-note { font-size:12px;line-height:1.7;color:var(--book-muted,#596e61);margin:0 }
.service-flow-routes { margin-top:18px }
.service-flow-route { padding:12px 0;border-bottom:1px solid var(--book-line,#c8d5cb);break-inside:avoid }
.service-flow-route h4 { font-size:11px;font-weight:600;margin:0 0 8px;color:var(--book-muted,#596e61) }
.service-flow-route ol { display:flex;flex-wrap:wrap;gap:8px 0;list-style:none;padding:0;margin:0 }
.service-flow-route li { display:flex;align-items:center;margin:0;padding:0;font-size:11px;line-height:1.5 }
.service-flow-route li span { display:block;padding:6px 9px;background:var(--book-paper,#fff);border:1px solid var(--book-line,#c8d5cb);border-radius:6px }
.service-flow-route li:not(:last-child)::after { content:"→";padding:0 7px;color:var(--book-muted,#596e61) }
.service-flow-group { font-size:13px;margin:20px 0 0 }
.service-flow-holds { margin-top:20px }
.service-flow-holds h4 { font-size:13px;margin:0 0 10px }
.service-flow-holds dl { margin:0;display:grid;gap:9px }
.service-flow-holds dl>div { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:12px;font-size:11px;line-height:1.6 }
.service-flow-holds dt { font-weight:600 }.service-flow-holds dd { margin:0 }
.service-flow-overview .service-flow-note { border-top:1px solid var(--book-line,#c8d5cb);padding-top:14px;margin-top:18px }
@media(max-width:650px) { .service-flow-overview{padding:14px}.service-flow-holds dl>div{grid-template-columns:minmax(0,1fr);gap:3px}.service-flow-route li{font-size:10px}.service-flow-route li span{padding:5px 7px} }
@media print { #help-print-document .service-flow-overview { --book-line:#b4c4ba;--book-soft:#eef3ef;--book-ink:#203d30;--book-muted:#52685a;--book-paper:#fff;padding:5mm } #help-print-document .service-flow-route li { margin:0;font-size:8pt } #help-print-document .service-flow-overview header p,#help-print-document .service-flow-note { font-size:9pt } }
