.book-main{max-width:1140px}.book-intro{max-width:72ch}.book-intro>p{margin-bottom:1.4em}.book-toc{padding-left:1.3em;columns:2;column-gap:48px}.book-toc li{break-inside:avoid;margin:0 0 1em;padding-left:.35em}.book-toc a{overflow-wrap:anywhere}.book-toc small{display:block;font: .72rem Arial,sans-serif;margin-top:.3em}.book-reader{max-width:69ch;margin:auto}.book-reader h1{font-size:clamp(1.8rem,4vw,3rem)}.book-reader .prose{font-size:1.12rem}.book-reader .prose h2{font-size:1.65rem}.book-reader .prose h3{font-size:1.35rem}.book-reader .prose :is(p,h1,h2,h3,h4,h5,h6,blockquote){margin-bottom:1.5em;scroll-margin-top:24px}.chapter-nav{border-top:1px solid #655c49;padding-top:24px;margin-top:40px;display:grid;gap:18px}.book-return{margin-bottom:35px}.book-controls{margin:24px 0;display:flex;gap:10px;flex-wrap:wrap;align-items:center;font: .85rem Arial,sans-serif}.book-controls select{max-width:100%;width:min(100%,520px);padding:10px;background:#151e30;color:#ecd295;border:1px solid #bea36c;font:inherit}.prose [tabindex]:focus{outline:1px solid #bea36c;outline-offset:8px}.book-reader .fine{white-space:normal}.book-static-note{font: .8rem Arial,sans-serif}.book-intro .edition{padding-left:18px;border-left:2px solid #bea36c}@media(max-width:700px){.book-toc{columns:1}.book-reader .prose{font-size:1.02rem}.book-controls{gap:8px}}

/* Static reading headings keep programmatic focus without a decorative box. */
.book-reader :is(h1,h2,h3,h4,h5,h6)[tabindex="-1"]:focus{outline:none;box-shadow:none}
.book-reader :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #f3d9a0;outline-offset:4px}
