:root{color-scheme:light;--ink:#142843;--blue:#17649e;--muted:#4a6077;--line:#ccdae7;--paper:#fff;--page:#f3f7fb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--page);color:var(--ink);font:17px/1.7 Inter,"Segoe UI",Arial,sans-serif}a{color:var(--blue);text-underline-offset:3px}button,input{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #ce962d;outline-offset:4px}.book-skip{position:absolute;top:-90px;left:12px}.book-skip:focus{top:12px;background:#fff;z-index:30;padding:12px}.book-bar{position:sticky;top:0;z-index:20;background:#fffffffa;border-bottom:1px solid var(--line);padding:12px 24px;display:flex;gap:20px;align-items:center;justify-content:space-between}.book-bar a{font-weight:700;text-decoration:none}.book-tools{display:flex;gap:8px}.book-tools button,.book-actions button,.book-actions a{border:1px solid #b9cfe0;border-radius:9px;background:white;color:#164e78;padding:9px 14px;font-weight:650;text-decoration:none;min-height:44px}.book-layout{display:grid;grid-template-columns:290px minmax(0,1fr);max-width:1220px;margin:auto;gap:30px;padding:28px 24px 90px}.book-index{align-self:start;position:sticky;top:90px;max-height:calc(100dvh - 110px);overflow:auto;padding:18px;background:white;border:1px solid var(--line);border-radius:12px}.book-index label{display:block;font-weight:700;font-size:15px}.book-index input{width:100%;padding:9px;border:1px solid #9bb7cd;border-radius:7px;margin:8px 0 12px}.book-index nav a{display:block;padding:9px 11px;border-radius:7px;color:#36536b;text-decoration:none;font-size:14px;line-height:1.45;border-left:3px solid transparent}.book-index nav a[aria-current=page]{background:#e5eff8;border-left-color:#2675af;color:#123e63;font-weight:700}.book-index nav a.is-read::after{content:' ✓';color:#277154}.book-main{min-width:0}.book-cover{padding:10px 0 20px}.book-kicker{color:#17649e;font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:750}.book-cover h1{font-size:clamp(30px,4vw,44px);line-height:1.15;letter-spacing:-.035em;margin:10px 0}.book-cover p{margin:8px 0;color:var(--muted);font-size:16px}.book-progress{display:flex;gap:12px;align-items:center;color:var(--muted);font-size:13px}.book-progress progress{width:120px;accent-color:var(--blue)}.book-chapter{background:white;border:1px solid var(--line);border-top:4px solid #2675af;border-radius:12px;padding:clamp(20px,4vw,48px);font-size:var(--reading-size,18px);line-height:1.85;overflow-wrap:anywhere}.book-chapter>*{max-width:70ch;margin-left:auto;margin-right:auto}.book-chapter h1,.book-chapter h2,.book-chapter h3,.book-chapter h4{color:#173958;line-height:1.3;letter-spacing:-.02em}.book-chapter h1{font-size:1.9em}.book-chapter h2{font-size:1.6em;margin-top:2em}.book-chapter h2:first-of-type{margin-top:0}.book-chapter h3{font-size:1.22em;margin-top:2em;padding-top:1em;border-top:1px solid #e1eaf2}.book-chapter h4{font-size:1.08em;margin-top:1.8em}.book-chapter p{margin-top:1em;margin-bottom:1em}.book-chapter blockquote{border-left:4px solid #c99436;background:#fff7e9;padding:10px 20px}.book-chapter pre{overflow:auto;white-space:pre;max-width:100%;font:14px/1.65 Consolas,monospace;padding:22px;background:#edf4fa;border:1px solid #c6d7e6;border-radius:10px;tab-size:2}.book-chapter pre:focus{outline:3px solid #2675af}.book-chapter hr{border:0;border-top:1px solid var(--line);margin:30px auto}.book-chapter .table-wrap{overflow-x:auto;max-width:100%;border:1px solid var(--line);border-radius:8px}.book-chapter table{border-collapse:collapse;width:100%;font-size:.9em}.book-chapter th,.book-chapter td{padding:12px;text-align:left;border-bottom:1px solid var(--line);min-width:110px}.book-chapter th{background:#eaf2f9}.book-chapter details{padding:14px 18px;border:1px solid var(--line);border-radius:8px;margin:18px 0}.book-chapter summary{cursor:pointer;font-weight:700}.book-chapter li+li{margin-top:.5em}.book-actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0;justify-content:space-between}.book-actions .book-next{background:#17649e;color:#fff;border-color:#17649e}.book-bottom{font-size:14px;color:var(--muted);display:flex;flex-wrap:wrap;gap:16px;margin-top:25px}.book-mobile-index{display:none}.book-chapter[hidden],.book-index nav a[hidden]{display:none!important}.book-mode-all .book-chapter{display:block!important;margin-bottom:30px}.book-status{min-height:25px;font-size:14px;color:#34614e}.book-legacy{margin-top:30px}@media(max-width:850px){.book-layout{display:block;padding:15px 12px 60px}.book-bar{padding:10px 14px;gap:10px}.book-bar a{font-size:14px}.book-tools{gap:5px}.book-tools button{padding:7px 10px;font-size:14px}.book-tools .book-full-label{display:none}.book-mobile-index{display:block}.book-index{display:none;position:fixed;inset:70px 12px 12px;max-height:none;z-index:19;box-shadow:0 15px 40px #14284325}.book-index.is-open{display:block}.book-cover{padding:8px 8px 15px}.book-chapter{padding:24px 18px;line-height:1.8}.book-chapter pre{font-size:12px;padding:14px}.book-chapter h2{font-size:1.42em}.book-actions{gap:8px}.book-actions>*{flex:1;text-align:center;font-size:14px}.book-actions .book-complete{flex-basis:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{body{background:white}.book-bar,.book-index,.book-actions,.book-bottom,.book-progress,.book-status{display:none!important}.book-layout{display:block;padding:0;max-width:none}.book-chapter{display:block!important;border:0;padding:0;page-break-before:always;font-size:11pt}.book-chapter pre{white-space:pre-wrap}.book-chapter .table-wrap{overflow:visible}.book-cover{page-break-after:always}}

@media print{.book-chapter[hidden]{display:block!important}}
