@charset "UTF-8";
:root{color-scheme:dark;--ink:#34291e;--paper:#eee0bd;--gold:#c5a66d;--muted:#b7a991;--text-size:19px;--dock-height:102px}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 25%,#534639 0%,#2f2822 52%,#211c19 100%);color:#eee3ce;font-family:Georgia,'Times New Roman',serif;min-height:100dvh;padding-bottom:calc(var(--dock-height) + env(safe-area-inset-bottom));-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' opacity='.045' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E");pointer-events:none;z-index:9}
button,select,input{font:inherit}button,select{color:inherit}button{cursor:pointer;border:0;background:none}button:disabled{opacity:.35;cursor:default}button:hover:not(:disabled){color:#f2cd83}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid #cbb07a;outline-offset:5px}svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}a{color:inherit;text-decoration:none}.tiny{font:10px/1.5 system-ui,sans-serif;letter-spacing:.2em;color:var(--muted)}
.skip-link{position:fixed;left:15px;top:-80px;background:#eee0bd;color:var(--ink);padding:10px;z-index:20}.skip-link:focus{top:10px}.masthead{max-width:1320px;margin:auto;height:90px;padding:20px 40px;display:flex;justify-content:space-between;align-items:center}.wordmark{display:flex;flex-direction:column;gap:5px;font-size:22px}.wordmark i{color:var(--gold);font-weight:normal}.header-actions{display:flex;gap:26px;font:12px system-ui,sans-serif;color:#d7c9ae}.header-actions button{display:flex;gap:8px;align-items:center;padding:8px 0}.header-actions svg{width:17px;height:17px}.edition-bar{max-width:1120px;margin:7px auto 18px;display:flex;align-items:center;gap:20px;color:#d0b887;font-size:14px}.edition-bar>span:first-child{font:10px system-ui,sans-serif;letter-spacing:.22em;padding-right:20px;border-right:1px solid #79674d}.type-controls{margin-left:auto;display:flex;gap:12px}.type-controls button{font:15px Georgia,serif;padding:4px 7px;border:1px solid #75664f;border-radius:3px}
main{padding:0 38px}.book{position:relative;isolation:isolate;max-width:1190px;margin:auto;padding:53px 65px 47px;border-radius:5px 12px 12px 5px;border:1px solid #b39361;background:linear-gradient(90deg,#cbb585 0%,#eee0be 3%,#f3e9cc 44%,#ddc99e 49%,#b4a07b 50%,#e5d3ad 51%,#f2e6c6 56%,#efe1be 96%,#d4bc8f 100%);color:var(--ink);box-shadow:0 2px 0 #c3ac81,0 5px 0 #e0cda8,0 7px 0 #b29b70,0 10px 0 #d9c4a0,0 12px 0 #4b2420,0 16px 0 #71392c,0 17px 0 #b69365,0 24px 34px #08060480,0 50px 80px #0005,inset 0 0 45px #a5844133}.book:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 6% 8%,#af8b5130,transparent 22%),radial-gradient(ellipse at 86% 89%,#a2804120,transparent 28%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.5' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23906a30' opacity='.1' filter='url(%23f)' d='M0 0h240v240H0z'/%3E%3C/svg%3E");border-radius:inherit;pointer-events:none}.spine{position:absolute;left:50%;top:0;bottom:0;width:54px;transform:translateX(-50%);pointer-events:none;background:linear-gradient(90deg,transparent,#56432417 40%,#59401d28 48%,#eee3cd50 52%,#ead8b622 58%,transparent);z-index:2}.ribbon{position:absolute;top:-1px;right:43px;width:17px;height:65px;z-index:3;filter:drop-shadow(2px 2px 1px #0003);background:linear-gradient(90deg,#623028,#91483c,#6d3329);clip-path:polygon(0 0,100% 0,100% 100%,50% 87%,0 100%)}.running-head{position:absolute;top:22px;left:65px;right:65px;display:flex;justify-content:space-between;gap:90px;font:10px Georgia,serif;color:#806c4e;font-variant:small-caps;letter-spacing:.08em}.running-head>span{width:calc(50% - 45px);text-align:center}.page-numbers{position:absolute;bottom:22px;left:65px;right:65px;display:flex;justify-content:space-between;color:#8a7352;font-size:12px}.page-numbers>span{width:calc(50% - 45px);text-align:center}.viewport{width:100%;height:clamp(360px,calc(100dvh - 430px),680px);overflow:hidden;position:relative}.pages{height:100%;width:100%;column-count:2;column-gap:90px;column-fill:auto;transition:transform .32s ease;font-size:var(--text-size);line-height:1.65;text-align:justify;hyphens:auto;overflow:visible;position:relative}.pages p{margin:0 0 .78em;orphans:2;widows:2}.pages p+p{text-indent:1.1em}.pages h1{font-size:clamp(30px,3.4vw,48px);font-weight:normal;line-height:1.2;text-align:center;margin:0 0 24px}.pages h2{font-size:25px;line-height:1.4;text-align:center;font-weight:normal;margin:30px 0 28px;break-after:avoid}.pages h2 .chapter-number{display:block;text-transform:uppercase;letter-spacing:.2em;font-size:11px;margin-bottom:18px;color:#876a3f}.pages .first-paragraph:first-letter{float:left;font-size:3.7em;line-height:.85;padding:.1em .09em 0 0;color:#714b2f}.passage{border-radius:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone;cursor:pointer;transition:background .15s}.passage:hover{background:#bea36322}.passage.active{background:#d8b15b66;box-shadow:0 1px 0 #b2833477}.passage:focus-visible{outline:2px solid #916834;outline-offset:3px}.title-leaf{height:100%;break-after:column;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:22px}.cover-leaf img{display:block;width:auto;height:82%;max-width:90%;object-fit:contain;box-shadow:4px 7px 16px #3d281b55;border:1px solid #8b6a3e}.title-leaf .tiny{color:#866b45}.title-leaf h1{max-width:340px;margin:0}.title-leaf .byline{font-size:16px;letter-spacing:.06em}.title-leaf .ornament{width:80px;border-top:1px solid #b59868;border-bottom:1px solid #b59868;padding:8px;font-size:22px;color:#977d51}.title-leaf .opening{padding:10px 25px;background:#71462e;color:#f4e5c7;border:1px solid #603721;font-size:14px;margin-top:5px;border-radius:2px}.copyright-leaf{font-size:16px;text-align:left;display:flex;flex-direction:column;height:100%;justify-content:flex-end}.copyright-leaf p{font-size:14px}.page-navigation{max-width:1190px;margin:26px auto 0;display:flex;align-items:center;justify-content:space-between;font:12px system-ui,sans-serif;color:#b9aa91}.page-navigation button{padding:10px 0;color:#e3d4b8;display:flex;align-items:center;gap:12px}.page-navigation button span{font-size:20px;color:#bd9b63}.notice{text-align:center;min-height:16px;margin:3px 0 12px;color:#d1b88d;font:12px system-ui,sans-serif}
.audio-dock{position:fixed;bottom:0;left:0;right:0;z-index:10;min-height:var(--dock-height);padding:20px max(32px,calc((100vw - 1280px)/2)) calc(20px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:25px;background:#211c18f5;border-top:1px solid #7d684844;box-shadow:0 -10px 30px #0002;backdrop-filter:blur(12px)}.audio-title{width:190px;min-width:120px;display:flex;flex-direction:column;gap:6px}.audio-title>span:last-child{font-size:14px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.transport{display:flex;align-items:center;gap:14px}.play{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid #b79860;background:#b798601a;color:#e6cb99}.play svg{fill:currentColor;stroke-width:0;width:23px;height:23px}.skip{position:relative;height:32px;padding:0}.skip svg{height:25px;width:25px}.skip span{position:absolute;top:10px;left:7px;font:8px system-ui,sans-serif}.timeline{flex:1;min-width:60px}.timeline>div{display:flex;justify-content:space-between;font:10px system-ui,sans-serif;color:#b1a189;margin-top:5px;font-variant-numeric:tabular-nums}input[type=range]{width:100%;margin:0;cursor:pointer;accent-color:#c1a16a;height:5px;display:block}.speed-label{display:flex;flex-direction:column;gap:3px}.speed-label .tiny{font-size:8px}select{background:#2c241e;border:1px solid #796548;border-radius:3px;padding:5px 7px;font:12px system-ui,sans-serif;cursor:pointer}.follow-label{display:flex;gap:8px;align-items:center;white-space:nowrap;color:#d5c4a5;font:11px system-ui,sans-serif}.follow-label input{accent-color:#b79860;width:15px;height:15px;cursor:pointer}.audio-dock audio{display:none}
dialog{color:var(--ink);background:#eee0bd;border:1px solid #b59b6b;border-radius:5px;width:min(520px,calc(100vw - 30px));max-height:80dvh;padding:30px;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#0c0908a6;backdrop-filter:blur(4px)}.dialog-heading{display:flex;justify-content:space-between;align-items:start;margin-bottom:18px}.dialog-heading .tiny{color:#8b7147}.dialog-heading h2{font-size:30px;margin:5px 0;font-weight:normal}.dialog-heading button{font-size:30px;color:#7c5b34;line-height:1;padding:4px}#chapter-list{display:flex;flex-direction:column;gap:3px}#chapter-list button{color:var(--ink);text-align:left;padding:10px 7px;border-bottom:1px solid #c9b38477;font-size:15px}#chapter-list button:hover{background:#c9b38455;color:var(--ink)}#chapter-list button[aria-current=true]{background:#c9b38466}dialog .copyright{font-size:12px;text-align:center;color:#8f7650;margin-bottom:0}.no-script{position:fixed;inset:40% 10% auto;background:var(--paper);color:var(--ink);padding:30px;text-align:center;z-index:12}
@media(min-width:1500px){.masthead{height:100px}.edition-bar{margin-top:15px;margin-bottom:25px}}
@media(max-width:900px){.audio-dock{gap:16px;padding-left:22px;padding-right:22px}.audio-title{width:135px}.follow-label{max-width:95px;white-space:normal;line-height:1.5}.book{padding-left:40px;padding-right:40px}.running-head,.page-numbers{left:40px;right:40px}.edition-bar{margin-left:5px;margin-right:5px}.pages{font-size:calc(var(--text-size) - 1px)}}
@media(max-width:680px){:root{--dock-height:142px}.masthead{height:82px;padding:15px 22px}.wordmark{font-size:17px}.wordmark .tiny{font-size:7px}.header-actions{gap:17px;font-size:11px}.desktop-label{display:none}.edition-bar{margin-top:0;margin-bottom:13px;gap:10px;font-size:13px}.edition-bar>span:first-child{padding-right:10px;font-size:8px}.type-controls{gap:5px}.type-controls button{font-size:13px}main{padding:0 18px}.book{padding:42px 28px 36px;background:linear-gradient(90deg,#d3bd91,#f2e6c8 6%,#efe1bd 92%,#ddc89f);border-radius:3px 6px 6px 3px}.spine{display:none}.running-head{top:16px;left:28px;right:28px;justify-content:center;font-size:8px;gap:0}.running-head>span:first-child{display:none}.running-head>span:last-child{width:100%}.page-numbers{left:28px;right:28px;bottom:14px;justify-content:center}.page-numbers>span{width:100%}#right-number{display:none}.viewport{height:clamp(300px,calc(100dvh - 440px),680px)}.pages{column-count:1;column-gap:56px;font-size:var(--text-size);line-height:1.6}.pages h2{font-size:24px;margin-top:20px}.ribbon{right:15px;width:12px;height:43px}.page-navigation{margin-top:21px;font-size:10px}.page-navigation button{gap:8px}.page-navigation button span{font-size:16px}.audio-dock{padding:13px 20px calc(14px + env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr auto auto;gap:12px 16px}.audio-title{width:auto;min-width:0;grid-column:1}.audio-title>span:last-child{font-size:12px}.audio-title .tiny{font-size:7px}.transport{grid-row:1;grid-column:2 / 4;gap:15px}.play{width:40px;height:40px}.timeline{grid-row:2;grid-column:1}.speed-label{grid-row:2;grid-column:2}.speed-label>.tiny{display:none}.follow-label{grid-row:2;grid-column:3;font-size:10px;max-width:82px;gap:5px}.title-leaf h1{font-size:38px}.title-leaf{gap:15px}.cover-leaf{display:none}.title-leaf .opening{margin-top:0}.copyright-leaf p{font-size:12px}.notice{font-size:10px}.cover-leaf img{height:78%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{body{display:none}}

.title-leaf:last-child{break-after:auto}

@media(max-width:680px){.header-actions{gap:10px}.wordmark{font-size:15px}.header-actions button{min-height:44px}}
@media(max-width:360px){.masthead{padding-left:15px;padding-right:15px}.header-actions{gap:8px}.wordmark{font-size:13px}.header-actions{font-size:10px}}
