*,*:before,*:after{box-sizing:border-box}*{margin:0}html,body{height:100%}body{-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:var(--accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 30%,transparent)}a:hover{border-bottom-color:var(--accent)}button{background:none;border:0;cursor:pointer;padding:0}:root{--lch-white-light: 100% 0 0;--lch-cream-light: 96% .005 96;--lch-cream: 92% .005 96;--lch-cream-dark: 75% .005 96;--lch-ink-light: 30% 0 0;--lch-ink: 20% 0 0;--lch-accent-warm: 55% .12 60}html[data-theme=light]{--bg: oklch(var(--lch-white-light));--panel: oklch(var(--lch-cream-light));--rule: oklch(var(--lch-cream));--fg: oklch(var(--lch-ink));--muted: oklch(var(--lch-cream-dark));--accent: oklch(var(--lch-accent-warm));--panel-shadow: 0 4px 18px oklch(0% 0 0 / .06);--badge-original: oklch(55% .12 142);--badge-revised: oklch(55% .16 29)}html[data-theme=sepia]{--bg: oklch(92% .025 75);--panel: oklch(95% .02 75);--rule: oklch(85% .025 75);--fg: oklch(26% .04 50);--muted: oklch(45% .03 60);--accent: oklch(52% .14 50);--panel-shadow: 0 4px 18px oklch(26% .04 50 / .07);--badge-original: oklch(48% .12 142);--badge-revised: oklch(50% .16 29)}html[data-theme=dark]{--bg: oklch(14% 0 0);--panel: oklch(18% 0 0);--rule: oklch(28% 0 0);--fg: oklch(92% 0 0);--muted: oklch(65% 0 0);--accent: oklch(75% .15 60);--panel-shadow: 0 8px 28px oklch(0% 0 0 / .5);--badge-original: oklch(72% .18 142);--badge-revised: oklch(72% .18 29)}:root{--font-sans: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-serif: ui-serif, "Source Serif 4", Charter, Georgia, serif;--font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--size-base: 1.25rem;--line: 1.55;--column: 44rem;--space: 1.4em;--icon-btn-size: 2.65em;--pill-radius: 999px;--transition: .22s ease}html[data-font=serif] body{font-family:var(--font-serif)}html[data-font=sans] body,html:not([data-font]) body{font-family:var(--font-sans)}html[data-size="1"]{--size-base: 1rem}html[data-size="2"]{--size-base: 1.1rem}html[data-size="3"]{--size-base: 1.18rem}html[data-size="4"]{--size-base: 1.25rem}html[data-size="5"]{--size-base: 1.4rem}html[data-size="6"]{--size-base: 1.55rem}body{font:var(--size-base) / var(--line) var(--font-sans);background:var(--bg);color:var(--fg);transition:background var(--transition),color var(--transition)}main.reader{max-width:var(--column);margin:6rem auto 7rem;padding:0 1.5rem}article>*+*{margin-top:var(--space)}article h1{font-size:2em;line-height:1.18;font-weight:700;letter-spacing:-.01em;margin-bottom:1.6em}article h2{font-size:1.4em;font-weight:700;line-height:1.3;margin:2em 0 .5em}article h3{font-size:1.15em;font-weight:700;margin:1.6em 0 .4em}article p{margin:0 0 var(--space)}article blockquote{border-left:3px solid var(--accent);padding-left:1.2em;color:var(--muted);margin:var(--space) 0}article hr{border:0;border-top:1px solid var(--rule);margin:2em 0}article ul,article ol{padding-left:1.6em}article li+li{margin-top:.35em}article a{color:var(--accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--accent) 32%,transparent)}article a:hover{border-bottom-color:var(--accent)}article img{border-radius:4px;margin:var(--space) 0}html[data-justify=on] article p{text-align:justify;hyphens:auto}.book-header{position:fixed;top:0;left:0;right:0;height:4.5rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:0 1.25rem;background:var(--bg);z-index:50}.book-header .hdr-left,.book-header .hdr-right{display:flex;align-items:center;gap:.5rem}.book-header .hdr-right{justify-self:end}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--icon-btn-size);height:var(--icon-btn-size);border-radius:50%;border:1px solid var(--fg);color:var(--fg);background:transparent;cursor:pointer;text-decoration:none;transition:background var(--transition),color var(--transition)}.icon-btn:hover{background:var(--fg);color:var(--bg)}.icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lang-switch{display:inline-flex;align-items:center;gap:0;border:1px solid var(--rule);border-radius:var(--pill-radius);padding:.18em .25em;font-size:.85em;font-family:var(--font-sans);font-weight:600;letter-spacing:.04em;background:transparent}.lang-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2.2em;padding:.3em .6em;border-radius:var(--pill-radius);color:var(--fg);text-decoration:none;opacity:.55;transition:opacity var(--transition),background var(--transition),color var(--transition)}.lang-btn:hover{opacity:1;background:var(--panel)}.lang-btn.is-current{opacity:1;background:var(--fg);color:var(--bg)}.lang-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cover-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;max-width:var(--column);margin:0 auto}.cover-home{display:inline-flex;align-items:center;gap:.4em;color:var(--fg);text-decoration:none;font-family:var(--font-sans);font-size:.95em;font-weight:500;opacity:.75;transition:opacity var(--transition)}.cover-home:hover{opacity:1}.ico{display:inline-block;width:var(--ico-size, 1.05em);height:var(--ico-size, 1.05em);background-color:currentColor;-webkit-mask:var(--ico) center / contain no-repeat;mask:var(--ico) center / contain no-repeat}.breadcrumbs{justify-self:center;display:inline-flex;align-items:center;gap:.5em;font-size:.95em}.breadcrumbs .bcr-icon{display:inline-flex;align-items:center;color:var(--fg);border:0;padding:.25em}.breadcrumbs .bcr-sep{color:var(--muted);font-size:1em}.breadcrumbs .bcr-book{color:var(--accent);text-decoration:underline;text-underline-offset:3px;border:0}.breadcrumbs .bcr-page{color:var(--fg);font-weight:700}@media(max-width:720px){.book-header{grid-template-columns:auto auto}.breadcrumbs{display:none}}@media(max-width:560px){.book-header{padding:.7rem .6rem;gap:.4rem}.book-header .hdr-left,.book-header .hdr-right{gap:.35rem}:root{--icon-btn-size: 2.35em}#toggle-fullscreen{display:none}.lang-switch{font-size:.78em;padding:.14em .18em}.lang-btn{min-width:1.8em;padding:.28em .45em}.reader{padding:1.5rem 1rem 4rem}:root{--size-base: 1.12rem;--line: 1.55}article h1{font-size:1.7rem}article h2{font-size:1.3rem}.cover-top{padding:.8rem 1rem}.prev-next{gap:.7rem;padding-top:1.5rem}.pill{font-size:.88em;padding:.7em 1.1em}.drawer{width:100%;max-width:100vw}}.buy-teaser{margin:4rem auto 0;max-width:36rem;padding:2.5rem 2rem;text-align:center;background:color-mix(in srgb,var(--accent) 8%,var(--bg));border:1px solid color-mix(in srgb,var(--accent) 30%,var(--rule));border-radius:12px}.buy-teaser .teaser-eyebrow{font-family:var(--font-sans);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);opacity:.85;margin-bottom:1.25rem}.buy-teaser .teaser-headline{font-size:1.45rem;line-height:1.3;margin:0 0 1rem;color:var(--fg)}.buy-teaser .teaser-body{font-size:1rem;line-height:1.55;margin:0 0 1.75rem;color:var(--fg);opacity:.85}.buy-teaser .teaser-cta{display:inline-block;padding:.95em 1.6em;background:var(--fg);color:var(--bg);border-radius:var(--pill-radius);font-family:var(--font-sans);font-weight:600;font-size:1rem;text-decoration:none;border-bottom:none;transition:transform var(--transition),opacity var(--transition)}.buy-teaser .teaser-cta:hover{transform:translateY(-1px);opacity:.9}.buy-teaser .teaser-meta{margin-top:1rem;font-family:var(--font-sans);font-size:.85rem;color:var(--fg);opacity:.65}@media(max-width:560px){.buy-teaser{padding:2rem 1.25rem;margin-top:3rem}.buy-teaser .teaser-headline{font-size:1.2rem}.buy-teaser .teaser-body{font-size:.95rem}}.prev-next{display:flex;justify-content:center;gap:1rem;margin:4.5rem auto 0;padding:2.5rem 0 0;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:.55em;padding:.85em 1.4em;border:1px solid var(--fg);border-radius:var(--pill-radius);color:var(--fg);background:transparent;font-family:var(--font-sans);font-size:.95em;border-bottom:1px solid var(--fg);transition:background var(--transition),color var(--transition)}.pill strong{font-weight:700}.pill .pill-arrow{width:1.05em;height:1.05em;color:var(--accent)}.pill:hover{background:var(--fg);color:var(--bg)}.pill:hover .pill-arrow{color:var(--bg)}.reading-progress{position:fixed;top:0;left:0;height:2px;background:var(--accent);z-index:60;transition:width 80ms linear}.drawer{position:fixed;top:0;width:min(420px,90vw);height:100%;background:var(--bg);border-right:1px solid var(--rule);box-shadow:var(--panel-shadow);padding:5rem 1.75rem 2rem;overflow-y:auto;transform:translate(-110%);transition:transform var(--transition);z-index:70;font-family:var(--font-sans)}.drawer.settings{left:auto;right:0;border-right:0;border-left:1px solid var(--rule);transform:translate(110%)}.drawer.open{transform:translate(0)}.drawer h3{font-size:.9rem;letter-spacing:.05em;text-transform:uppercase;margin-bottom:1.25rem;color:var(--muted)}.drawer ol{list-style:none;padding:0;counter-reset:chap}.drawer ol li{counter-increment:chap;padding:.6rem 0;border-bottom:1px solid var(--rule)}.drawer ol li:before{content:counter(chap,decimal-leading-zero) "  ";color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.drawer a{color:var(--fg);border:0}.drawer a.current{color:var(--accent);font-weight:700}.drawer-overlay{position:fixed;inset:0;background:#00000052;opacity:0;pointer-events:none;transition:opacity var(--transition);z-index:65}.drawer-overlay.open{opacity:1;pointer-events:auto}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:.85rem 0;border-bottom:1px solid var(--rule)}.settings-row label{color:var(--muted);font-size:.92rem}.settings-row .opts{display:flex;gap:.4rem}.settings-row .opts button{padding:.4rem .8rem;border:1px solid var(--rule);border-radius:999px;color:var(--fg);background:transparent;font-size:.85rem;cursor:pointer;transition:all var(--transition)}.settings-row .opts button.active{background:var(--fg);color:var(--bg);border-color:var(--fg)}.search-dialog{border:0;border-radius:12px;padding:0;background:var(--bg);color:var(--fg);box-shadow:0 30px 80px #00000040;max-width:640px;width:92vw;font-family:var(--font-sans)}.search-dialog::backdrop{background:#00000073;backdrop-filter:blur(2px)}.search-close{position:absolute;top:.5rem;right:.75rem;font-size:1.3rem;line-height:1;color:var(--muted);background:transparent;border:0;cursor:pointer;padding:.4rem}.search-close:hover{color:var(--fg)}.search-form{display:flex;align-items:center;gap:.6rem;padding:1.25rem 1rem;border:1.5px solid var(--accent);border-radius:12px;margin:1.25rem}.search-icon{display:inline-flex;color:var(--muted)}.search-icon svg{width:1.3em;height:1.3em}.search-form input{flex:1;border:0;background:transparent;font:1.1rem var(--font-sans);color:var(--fg);outline:none}.search-form input::placeholder{color:var(--muted)}.search-submit{display:inline-flex;align-items:center;justify-content:center;width:2.4em;height:2.4em;border-radius:50%;border:0;background:var(--fg);color:var(--bg);cursor:pointer}.search-submit svg{width:1.1em;height:1.1em}.search-results{max-height:60vh;overflow-y:auto;padding:0 1.25rem 1.25rem}.search-results .search-result{display:block;padding:.85rem 0;color:var(--fg);border-bottom:1px solid var(--rule)}.search-results .search-result strong{display:block;margin-bottom:.2em}.search-results .search-result span{display:block;color:var(--muted);font-size:.92em}.search-noindex,.search-empty{padding:0 1.25rem 1.25rem;color:var(--muted)}.before-after{margin:2em 0;padding:1.5em;border:1px solid var(--rule);border-radius:12px;background:var(--panel);font-family:var(--font-sans)}.before-after .reference{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.before-after .reference a{color:inherit;border:0}.before-after h4{font-size:1.05rem;margin:.4em 0 1em;font-weight:700}.before-after .versions{display:grid;grid-template-columns:1fr 1fr;gap:1.25em;margin-bottom:1em}@media(max-width:640px){.before-after .versions{grid-template-columns:1fr}}.before-after .version{padding:1em;border-radius:8px;background:color-mix(in srgb,var(--bg) 60%,var(--panel));font-family:var(--font-serif);font-size:1rem}.before-after .badge{display:inline-block;font-family:var(--font-sans);font-size:.7rem;font-weight:700;letter-spacing:.08em;padding:.18em .6em;border-radius:999px;margin-bottom:.6em;color:#fff}.before-after .badge.original{background:var(--badge-original)}.before-after .badge.revised{background:var(--badge-revised)}.before-after .source{font-size:.76rem;color:var(--muted);margin-top:.6em}.before-after .context{font-style:italic;color:var(--fg);margin-top:.6em}.before-after .permalink{display:inline-block;margin-top:1em;font-size:.85rem;color:var(--muted);border:0}.before-after .permalink:hover{color:var(--accent)}.library{max-width:64rem;margin:7rem auto 4rem;padding:0 1.5rem;text-align:center}.library h1{font-size:clamp(2em,5vw,3em);margin-bottom:.4em;font-weight:700;letter-spacing:-.01em}.library .lede{color:var(--muted);margin:0 auto 3rem;max-width:36rem}.library .books{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.25rem;text-align:left}.library .book{display:block;padding:1.5rem;border:1px solid var(--rule);border-radius:12px;background:var(--panel);color:var(--fg);border-bottom:1px solid var(--rule);transition:transform var(--transition),box-shadow var(--transition)}.library .book:hover{transform:translateY(-2px);box-shadow:var(--panel-shadow)}.library .book .lang{display:inline-block;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.5em}.library .book h3{font-size:1.2rem;margin:0 0 .4em;font-weight:700}.library .book p{font-size:.92rem;color:var(--muted);margin:0}.cover-page{max-width:40rem;margin:8rem auto;padding:0 1.5rem;text-align:center}.cover-page h1{font-size:clamp(2.4em,6vw,3.6em);line-height:1.08;font-weight:700;letter-spacing:-.015em;margin-bottom:.6em}.cover-page .subtitle{font-size:1.15rem;color:var(--muted);margin-bottom:3em;font-style:italic;font-family:var(--font-serif)}.cover-page .start{display:inline-flex;align-items:center;gap:.5em;padding:.9em 1.6em;border:1px solid var(--fg);border-radius:var(--pill-radius);background:transparent;color:var(--fg);font-weight:600;border-bottom:1px solid var(--fg);transition:background var(--transition),color var(--transition)}.cover-page .start:hover{background:var(--fg);color:var(--bg)}body.is-fullscreen .book-header{opacity:0;pointer-events:none;transition:opacity var(--transition)}body.is-fullscreen .book-header:hover{opacity:1;pointer-events:auto}body.is-fullscreen main.reader{margin-top:3rem}
