:root{--green:#263a32;--paper:#fffdf6;--border:#c7bca9;--reader-header-height:150px;--reader-bar-height:70px}
*{box-sizing:border-box}body{margin:0;background:#f3eee4;color:#25251f;font-family:Georgia,'Times New Roman',serif}button,select{font:inherit}button{cursor:pointer}a{color:#315f52}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #ad8541;outline-offset:2px}
html body.night-reader>header.reader-header{position:sticky!important;top:0!important;z-index:120;display:flex;flex-wrap:wrap;gap:12px;padding:14px 24px!important;background:#263a32;color:#faf4e6}header h1{font-size:23px;margin:8px 0;line-height:1.2}header>div{flex:1;min-width:250px}header nav{align-self:center}.return-to-author{white-space:nowrap;padding:8px 12px;border:1px solid #9caa9e;border-radius:4px;text-decoration:none}
html body.night-reader>.bar{position:sticky!important;top:var(--reader-header-height)!important;z-index:115;display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:9px 20px;background:#f9f5ed;border-bottom:1px solid var(--border);font:13px Arial,sans-serif;overflow:visible}.bar button,.bar select{min-height:38px;border:1px solid #c9beab;border-radius:4px;background:white;color:var(--green);padding:7px 9px}.bar #contents,.bar [data-mode].on{background:#315f52;color:white}.bar #sel{max-width:150px}.mode-buttons{display:flex;gap:5px;flex-wrap:wrap}
main{max-width:1460px;margin:auto;padding:25px 76px 150px;display:flex;gap:24px;align-items:flex-start;justify-content:center}.book{min-width:0;width:min(100%,760px)}.leaf{margin:0 auto 28px;scroll-margin-top:calc(var(--reader-header-height) + var(--reader-bar-height) + 16px)!important}.leaf-paper{min-height:calc(700px * var(--leaf-ratio));padding:50px 46px;background:var(--paper);border:1px solid #e0d8c9;box-shadow:0 7px 24px #342f231d}.flow{font-size:18px;line-height:1.4;overflow-wrap:anywhere}.flow p{margin:0 0 .55em;text-indent:1.5em;text-align:justify;text-align-last:left}.flow h1,.flow h2,.flow h3,.flow h4,.flow h5,.flow h6{text-align:center;text-indent:0;font-size:1.1em;line-height:1.25;margin:1em 0 .6em}.printed-folio{text-align:center;margin:0 0 18px;font-size:.85em}.leaf-label{text-align:right;padding:7px 3px;font:12px Arial,sans-serif;color:#666}
.footnotes{position:relative;margin-top:20px;padding-top:10px;font-size:14px;line-height:1.25}.footnotes::before{content:'';position:absolute;top:0;left:0;width:29%;border-top:1px solid #80796e}.footnotes p{margin:0 0 .35em;text-indent:1.4em}.note-ref,.note-back{color:#315f52;text-decoration:none}.footnotes [id],.note-ref{scroll-margin-top:calc(var(--reader-header-height) + var(--reader-bar-height) + 16px)}sup{font-size:.72em;vertical-align:super}
.title-composition{min-height:850px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:48px;padding-top:30px}.title-composition p{text-indent:0;text-align:center;text-align-last:center}.title-composition .title-author{font-size:23px}.title-composition h2{font-size:32px;margin:55px 0 0}.title-subtitle{font-size:20px}.title-imprint{margin-top:auto!important;padding-top:70px;font-size:18px}.contents-leaf table{width:100%;border-collapse:collapse}.contents-leaf td{padding:5px 0}.contents-leaf td:last-child{width:45px;text-align:right}.contents-leaf a{text-decoration:none}.contents-leaf a:hover{text-decoration:underline}
.scan{display:none;min-width:0;position:static;width:min(100%,700px)}.scan img{display:block;width:100%;height:auto;background:white}.night-reader[data-mode="book"] .leaf:not(.active),.night-reader[data-mode="compare"] .leaf:not(.active){display:none}.night-reader[data-mode="scan"] .book{display:none}.night-reader[data-mode="scan"] .scan,.night-reader[data-mode="compare"] .scan{display:block}.night-reader[data-mode="compare"] .book,.night-reader[data-mode="compare"] .scan{width:50%}.night-reader[data-mode="compare"] .flow{font-size:18px}.night-reader:not([data-mode="continuous"]) .jump-pair{display:none}
.contents-panel{position:fixed;z-index:400;inset:0 auto 0 0;width:min(490px,100vw);overflow:auto;background:#fcf8ef;border-right:1px solid var(--border);box-shadow:12px 0 34px #1c2b2580;padding:20px 24px 70px;font:15px/1.45 Arial,sans-serif}.contents-panel[hidden]{display:none}.contents-panel a{display:block;padding:10px 0;border-bottom:1px solid #e1d8c8;text-decoration:none}.contents-panel a span{display:block;color:#796f61;font-size:12px}.contents-panel button{padding:8px 14px;background:#315f52;color:white;border:0;border-radius:4px}
#return-contents,.jump-pair{position:fixed;z-index:110;bottom:calc(var(--library-footer-height,28px) + 12px + env(safe-area-inset-bottom,0px))}#return-contents{left:14px;padding:11px 14px;border:1px solid #26483e;border-radius:6px;background:#315f52;color:white;box-shadow:0 3px 12px #13251c44;font:600 13px Arial,sans-serif}#return-contents[hidden]{display:none}.jump-pair{right:14px;display:flex;flex-direction:column;gap:8px}.jump-pair button{width:44px;height:44px;border:1px solid #b8a98f;border-radius:6px;background:#fffdf8;color:var(--green);box-shadow:0 3px 12px #13251c35;font:26px/1 Arial,sans-serif}
@media(max-width:900px){main{padding:18px 64px 150px}.night-reader[data-mode="compare"] main{display:block}.night-reader[data-mode="compare"] .book,.night-reader[data-mode="compare"] .scan{width:100%;margin:auto}.scan{margin-top:20px}}
@media(max-width:600px){html body.night-reader>header.reader-header{padding:12px 70px 12px 16px!important}header h1{font-size:18px}header>div{min-width:0}main{padding:18px 18px 150px}.leaf-paper{min-height:calc((100vw - 36px) * var(--leaf-ratio));padding:30px 24px}.flow{font-size:16px;line-height:1.4}.footnotes{font-size:13px}.title-composition{min-height:600px;gap:24px}.title-composition h2{font-size:24px}.title-composition .title-author{font-size:19px}.title-subtitle{font-size:17px}.bar{padding:8px 12px}.mode-buttons{width:100%}.mode-buttons button{flex:1;padding:7px 6px;font-size:12px}#return-contents{max-width:calc(100vw - 85px);left:10px}.jump-pair{right:10px}}
.flow table{width:100%;table-layout:fixed;border-collapse:collapse}.flow td,.flow th{font-size:14px;text-align:left;padding:4px;vertical-align:top;overflow-wrap:anywhere}.contents-leaf td,.contents-leaf th{font-size:inherit}.contents-leaf td:first-child,.contents-leaf th:first-child{width:90%}@media(max-width:600px){.flow td,.flow th{font-size:13px}.contents-leaf td,.contents-leaf th{font-size:16px}}

.toc-row{display:flex;gap:18px;justify-content:space-between;margin:12px 0;text-decoration:none;text-align:left}.toc-row span{flex:1}.toc-row b{flex:none}.title-composition{gap:28px}.title-composition h2{font-size:28px}.flow p:empty{display:none}.reader-title-compact{display:none}@media(max-width:700px){.reader-title-full{display:none}.reader-title-compact{display:inline}.reader-header small{display:none}}