/* The source XHTML and downloadable EPUB remain unchanged. */
.book-content-area{align-items:center}
.reader-sound-toggle{white-space:nowrap}.reader-sound-toggle[aria-pressed="false"]{color:#a7b3a0}
.book-turn-layer{position:absolute;inset:0;z-index:8;pointer-events:none;perspective:2200px;perspective-origin:50% 45%;transform-style:preserve-3d}
.turn-sheet{position:absolute;top:0;bottom:0;transform-style:preserve-3d;will-change:transform;z-index:2}
.turn-spread .turn-sheet{width:50%}.turn-single .turn-sheet{width:100%}
.turn-forward .turn-sheet{left:0;transform-origin:right center}.turn-backward .turn-sheet{right:0;transform-origin:left center}
.turn-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:var(--book-paper);overflow:hidden}
.turn-front{transform:rotateY(0deg)}.turn-back{transform:rotateY(180deg)}
.turn-face>.book-paper,.turn-stationary>.book-paper{width:100%!important;height:100%}
.turn-stationary{position:absolute;top:0;bottom:0;width:50%;z-index:0}.turn-forward .turn-stationary{right:0}.turn-backward .turn-stationary{left:0}.turn-single .turn-stationary{display:none}
.turn-shading{position:absolute;inset:0;z-index:4;background:linear-gradient(90deg,#594a31,transparent 45%,#74634722 80%,#594a3166);pointer-events:none;opacity:0}
.turn-back .turn-shading{background:linear-gradient(270deg,#594a31,transparent 50%,#594a3144)}
.turn-cast{position:absolute;top:0;bottom:0;width:50%;z-index:1;opacity:0;background:linear-gradient(90deg,transparent,#282e26)}.turn-forward .turn-cast{left:0}.turn-backward .turn-cast{right:0;transform:scaleX(-1)}.turn-single .turn-cast{width:100%}
.turn-blank{background:linear-gradient(90deg,#bbad8c22,transparent 12%,#bbad8c11 85%,#bbad8c44),var(--book-paper)}.turn-blank:after{content:'shiasatte';position:absolute;inset:0;display:grid;place-items:center;font:italic 38px var(--latin);letter-spacing:.02em;color:#a59c7a33}
.book.is-turning>.book-paper{pointer-events:none}
.book.has-error .book-flow{visibility:hidden}
#reader-modal{--book-paper:#f6f0e2;--book-ink:#322f28;--book-muted:#827963;--book-rule:#c7bfa944;--book-size:18px;--book-pitch:36px;position:fixed;inset:0;z-index:9999;height:100dvh;display:none;flex-direction:column;background:radial-gradient(ellipse at 50% 35%,#455449,#29362f 90%);color:#e9e9dc;font-family:var(--font-sans);overflow:hidden}#reader-modal.open{display:flex}
#reader-topbar{flex:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:70px;padding:10px 34px;border-bottom:1px solid #e3e4d51a}.reader-brand{display:flex;align-items:center;gap:20px}.reader-brand strong{font:400 32px/1 var(--latin);letter-spacing:-.04em}.reader-brand span{font-size:12px;color:#b4bdae;letter-spacing:.15em;border-left:1px solid #e3e4d533;padding-left:20px}.reader-tools{display:flex;align-items:center;gap:20px}.reader-type-control{display:flex;align-items:center;gap:10px;font-size:13px;color:#c6cebf}.reader-type-control select{font:14px var(--font-sans);background:#354238;color:#eff0e6;border:1px solid #84927d80;border-radius:2px;padding:7px 22px 7px 10px;min-height:40px}.reader-btn{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:7px 12px;font:14px var(--font-sans);color:#e3e6d8;border:1px solid transparent;border-radius:2px}.reader-btn:hover{background:#eff1df12;border-color:#e2e5d326}
.reader-stage{position:relative;display:flex;justify-content:center;align-items:center;flex:1;min-height:0;padding:24px 60px 30px}.book{position:relative;display:flex;flex-direction:row-reverse;width:var(--book-width,min(650px,100%));height:var(--book-height,100%);max-height:830px;isolation:isolate;border-radius:2px;box-shadow:0 20px 65px #0b191954,0 3px 8px #10201933}.book:before{content:'';position:absolute;inset:4px -5px -7px -5px;z-index:-1;background:repeating-linear-gradient(to bottom,#e6ddc8 0,#e6ddc8 1px,#b6b19d 1px,#e9e1cc 2px);border:1px solid #98998466;border-radius:3px;box-shadow:0 4px 0 #666e5a,0 7px 0 #1f332a}.book.is-spread{width:var(--book-width,min(1140px,100%))}
.book-paper{position:relative;display:flex;flex-direction:column;width:100%;min-width:0;padding:23px 38px 20px;background:var(--book-paper);color:var(--book-ink);overflow:hidden}.book-paper:before{content:'';position:absolute;inset:0;pointer-events:none;z-index:2;background:linear-gradient(90deg,#8977520c,transparent 8%,transparent 94%,#89775209)}.book.is-spread .book-paper{width:50%}.book-paper-left{display:none}.book.is-spread .book-paper-left{display:flex}.book.is-spread .book-paper-right{background:linear-gradient(90deg,#71613f28,transparent 9%),var(--book-paper);border-left:1px solid #b8a68455;padding-left:40px}.book.is-spread .book-paper-left{background:linear-gradient(270deg,#71613f24,transparent 9%),var(--book-paper);padding-right:40px}
.book-running{display:flex;align-items:center;justify-content:space-between;gap:18px;flex:none;font:12px/1.6 var(--font-serif);letter-spacing:.12em;color:var(--book-muted);border-bottom:1px solid var(--book-rule);padding-bottom:13px;margin-bottom:27px;min-height:33px}.book-running span:first-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.book-running span:last-child{font-family:var(--latin);font-size:17px;letter-spacing:.04em;flex:none}.book-content-area{position:relative;flex:1;min-height:0;display:flex;justify-content:center;overflow:hidden}
.book-flow{flex:none;height:100%;overflow:hidden;writing-mode:vertical-rl;-webkit-writing-mode:vertical-rl;overscroll-behavior:none;scrollbar-width:none;touch-action:pan-y;outline-offset:-3px;font:400 var(--book-size)/var(--book-pitch) var(--font-serif);letter-spacing:.035em;line-break:strict;word-break:normal;overflow-wrap:normal;text-align:justify;color:var(--book-ink)}.book-flow::-webkit-scrollbar{display:none}.book-content{display:flow-root;height:100%;width:max-content;min-width:100%;margin:0;padding:0;writing-mode:vertical-rl}.book-content p{font:inherit;letter-spacing:inherit;text-indent:1em;margin:0;padding:0;overflow-wrap:normal;line-break:strict;word-break:normal}.book-content p.noindent{text-indent:0}.book-content p.center{text-align:center;text-indent:0}.book-content p.blank{height:1.9em;text-indent:0}.book-content h1,.book-content h2,.book-content h3{font-family:var(--font-serif);font-size:1.15em;font-weight:500;line-height:var(--book-pitch);letter-spacing:.12em;text-align:start;margin:0 0 0 var(--book-pitch);padding:0;min-height:0}.book-content .tcy{text-combine-upright:all;-webkit-text-combine:horizontal}.book-tail{width:100%;height:100%;display:block}
.book-folio{display:flex;align-items:center;justify-content:space-between;flex:none;min-height:37px;padding-top:16px;margin-top:14px;border-top:1px solid var(--book-rule);font:12px/1.5 var(--font-sans);color:var(--book-muted);letter-spacing:.06em}.book-folio .folio-number{font:17px/1 var(--latin);letter-spacing:.12em}.book-paper-left .book-folio{flex-direction:row-reverse}.book-paper.is-empty .book-flow,.book-paper.is-empty .book-running{visibility:hidden}.book-paper.is-empty .folio-number{visibility:hidden}
.book.is-special .book-content{width:100%;writing-mode:horizontal-tb;text-align:center}.book.is-special .book-tail{display:none}.book.is-special .book-flow{writing-mode:horizontal-tb;width:100%!important;overflow:auto}.book.is-special .book-content-area{overflow:auto}.book-content .part-wrap{height:100%;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center}.book-content .part-title{font:14px/2 var(--font-serif);color:var(--book-muted);letter-spacing:.25em;text-indent:0;margin-bottom:30px}.book-content .part-subtitle{font:400 clamp(25px,3vw,40px)/1.8 var(--font-serif);letter-spacing:.13em;text-indent:0;overflow-wrap:anywhere}.book-content .part-rule{border:0;width:1px;height:48px;background:#a69b7e;margin:36px auto 0}.book-content .illustration{height:100%;width:100%;display:flex;align-items:center;justify-content:center;writing-mode:horizontal-tb}.book-content .illustration img{width:100%;height:100%;object-fit:contain}
.book[aria-busy="true"] .book-flow{visibility:hidden}.book-load-state{position:absolute;inset:65px 24px;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;background:var(--book-paper);color:var(--book-muted);font:15px/2 var(--font-serif);text-align:center}.book-load-state[hidden]{display:none}.book-load-state button{border-bottom:1px solid currentColor;padding:8px 12px;font:14px var(--font-sans)}
#reader-navbar{flex:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:70px;padding:0 34px 12px}.reader-pagination{display:flex;align-items:center;gap:34px}.reader-nav-btn{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:8px 16px;border:1px solid #d9dfca38;border-radius:2px;font:14px var(--font-sans);color:#e9eddf}.reader-nav-btn:hover{background:#e1e9d51a}.reader-nav-btn:disabled{opacity:.3;cursor:default}.reader-nav-btn .turn-arrow{font-size:23px}.reader-position{display:flex;flex-direction:column;gap:4px;text-align:center;min-width:135px}#reader-page-info{font:16px/1.5 var(--latin);letter-spacing:.15em;color:#edf0df}.reader-position-label{font:12px/1.5 var(--font-sans);letter-spacing:.07em;color:#aebba9}.reader-start{font-size:13px;color:#bdc8b7;min-height:44px;padding:8px 0}.reader-start:hover{color:white}
#reader-toc{position:absolute;left:0;top:0;bottom:0;z-index:5;width:min(360px,90vw);overflow:auto;background:#f1ebdc;color:#3c4436;padding:24px 25px;box-shadow:12px 0 40px #101d2440;transform:translateX(-105%);visibility:hidden;transition:transform .3s,visibility .3s}#reader-toc.open{transform:translateX(0);visibility:visible}.reader-toc-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid #8a917e33;margin-bottom:15px}.reader-toc-top h2{font:25px var(--font-serif)}.reader-toc-top button{min-width:44px;min-height:44px;font-size:22px}#reader-toc ul{margin:0;padding:0;list-style:none}#reader-toc li a{display:block;padding:13px 8px;border-bottom:1px solid #858d7920;font:14px/1.8 var(--font-serif)}#reader-toc li a:hover,#reader-toc li a.active{color:#354d32;background:#dce1cf}#reader-toc li a.active{box-shadow:inset 2px 0 #63764a}#reader-toc li.toc-part a{font-family:var(--font-sans);font-size:13px;padding-top:27px;color:#677958}.reader-toc-epub{display:block;margin-top:28px;font:13px/2 var(--font-sans);color:#637250}#reader-overlay{position:absolute;inset:0;z-index:4;background:#12241fcc;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}#reader-overlay.show{opacity:1;visibility:visible}#reader-modal :focus-visible{outline:2px solid #acb88e;outline-offset:3px}.book-flow:focus-visible{outline:1px solid #aaa083!important;outline-offset:3px!important}
@media(max-width:760px){#reader-topbar{min-height:61px;padding:8px 16px;gap:10px}.reader-brand strong{font-size:29px}.reader-brand span{display:none}.reader-tools{gap:8px}.reader-type-control{gap:5px;font-size:12px}.reader-type-control select{font-size:13px;padding:6px;min-height:38px}.reader-btn{font-size:13px;padding:7px 9px;gap:7px}.reader-stage{padding:10px 18px 20px}.book-paper{padding:18px 25px 16px}.book-running{margin-bottom:20px;padding-bottom:9px;font-size:12px;letter-spacing:.04em}.book-folio{margin-top:10px;padding-top:11px;min-height:30px}.book-running span:last-child{font-size:15px}#reader-navbar{min-height:69px;padding:0 16px max(10px,env(safe-area-inset-bottom));gap:8px}.reader-pagination{gap:10px}.reader-nav-btn{gap:5px;padding:5px 10px;min-height:44px;font-size:13px}.reader-nav-btn .turn-arrow{font-size:20px}.reader-position{min-width:80px}#reader-page-info{font-size:15px}.reader-position-label{font-size:12px}.reader-start{display:none}}
@media(max-width:410px){.reader-type-control>span{display:none}.reader-stage{padding:8px 10px 16px}.book-paper{padding:16px 20px 12px}.book-running{margin-bottom:14px}.reader-pagination{gap:7px}.reader-nav-btn{padding:5px 9px}.reader-nav-btn .turn-label{display:none}.reader-position{min-width:84px}#reader-navbar{padding-left:14px;padding-right:14px}.book-folio{font-size:12px}}
@media(max-height:520px){#reader-topbar{min-height:46px;padding-top:3px;padding-bottom:3px}.reader-stage{padding-top:5px;padding-bottom:12px}.book-paper{padding-top:10px;padding-bottom:8px}.book-running{margin-bottom:10px;padding-bottom:5px;min-height:24px}.book-folio{margin-top:6px;padding-top:5px;min-height:24px}#reader-navbar{min-height:50px;padding-bottom:3px}.reader-brand span{display:none}}
@media(prefers-reduced-motion:reduce){#reader-modal *,#reader-modal *:before{animation:none!important;transition:none!important}}
@media(max-width:640px){.reader-tools{gap:6px}.reader-type-control>span,.reader-close-prefix{display:none}.reader-sound-toggle{padding:7px 6px}.reader-brand strong{font-size:27px}}
@media(max-width:410px){.reader-brand strong{font-size:24px}.reader-tools{gap:4px}.reader-type-control select{padding:6px 2px}.reader-sound-toggle{font-size:12px}.reader-tools #reader-close{padding:7px 4px;gap:5px}}
