.book-page{--desk:#eae8e0;--sheet:#faf8f0;--book-ink:#393b30;--book-muted:#686a5e;--book-line:#d8d5c9;--sheet-height:min(820px, calc(100svh - 140px));--volume-width:min(650px, calc(var(--sheet-height) * .79), calc(100vw - 64px));background:var(--desk);color:var(--book-ink)}[data-theme=dark] .book-page{--desk:#1c201b;--sheet:#282c23;--book-ink:#d6d9c9;--book-muted:#a3a894;--book-line:#43483b}.js .book-page{height:100svh;overflow:hidden}.book-stage{place-items:center;min-height:100svh;padding:70px 24px;display:grid}.book-volume{touch-action:pan-y pinch-zoom;width:var(--volume-width);height:var(--sheet-height);grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr);display:grid;position:relative}.book-volume[data-spread=double]{width:min(1240px, calc(var(--sheet-height) * 1.46), calc(100vw - 64px));grid-template-columns:repeat(2,minmax(0,1fr))}.book-volume>.book-sheet{grid-row:1}.book-sheet-primary{grid-column:1}.book-sheet-secondary,[data-book-layout=vertical] .book-volume[data-spread=double]>.book-sheet-primary{grid-column:2}[data-book-layout=vertical] .book-volume[data-spread=double]>.book-sheet-secondary{grid-column:1}.book-sheet{isolation:isolate;background:var(--sheet);border:1px solid color-mix(in srgb, var(--book-line) 70%, transparent);width:100%;min-width:0;height:100%;min-height:0;box-shadow:0 1px 2px #35322208, 1px 3px 0 -1px var(--sheet), 1px 3px 1px 0 #5147331a, 0 14px 44px -22px #49412a36;border-radius:1px 2px 2px 1px;grid-template-rows:auto minmax(0,1fr) auto;gap:28px;padding:38px 49px 26px;display:grid;position:relative}.book-sheet:before{content:"";z-index:-1;pointer-events:none;opacity:.5;mix-blend-mode:multiply;background-image:url(/textures/ivory-paper.webp);background-size:700px 700px;position:absolute;inset:0}[data-theme=dark] .book-sheet:before{opacity:.1}.book-volume[data-spread=double] .book-sheet[data-book-side=left]{border-right-color:color-mix(in srgb, var(--book-line) 50%, transparent);box-shadow:-1px 3px 0 -1px var(--sheet), -1px 3px 1px #5147331a, -10px 18px 38px -24px #49412a40;background-image:linear-gradient(270deg,#48412e0e,#0000 7%);border-radius:2px 0 0 2px}.book-volume[data-spread=double] .book-sheet[data-book-side=right]{box-shadow:1px 3px 0 -1px var(--sheet), 1px 3px 1px #5147331a, 10px 18px 38px -24px #49412a40;background-image:linear-gradient(90deg,#48412e16,#0000 8%);border-left-color:#0000;border-radius:0 2px 2px 0}.book-sheet[data-blank]>*{visibility:hidden}#book-turn-layer{z-index:2;perspective:4800px;pointer-events:none;position:absolute;inset:0}.book-leaf{height:100%;transform-style:preserve-3d;will-change:transform;position:absolute;top:0}.book-leaf-face{-webkit-backface-visibility:hidden;backface-visibility:hidden;position:absolute;inset:0;transform:translateZ(.3px)}.book-leaf-back{transform:rotateY(180deg)translateZ(.3px)}.book-leaf-shade{opacity:0;pointer-events:none;background:linear-gradient(90deg,#51412720,#fff8e508 30%,#51412735);position:absolute;inset:0}[data-side=left] .book-leaf-shade{transform:scaleX(-1)}.book-turn-shadow{background:linear-gradient(90deg,#252316b3,#0000);height:100%;position:absolute;top:0}[data-side=left] .book-turn-shadow{background:linear-gradient(270deg,#252316b3,#0000)}.book-turn-underlay{position:absolute;top:0}.book-volume .book-snapshot{box-shadow:none!important}.book-running-head{color:var(--book-muted);align-items:center;gap:18px;display:flex}.book-running-head :is(h1,p){font:400 10px/1.6 var(--serif);letter-spacing:.2em;white-space:nowrap}.book-head-rule{background:var(--book-line);opacity:.7;flex:1;height:1px}.book-content-area{min-width:0;min-height:0;position:relative}.book-flow{width:100%;height:100%;font:420 var(--reading-size)/1.95 var(--serif);font-variation-settings:var(--serif-variation);letter-spacing:.045em;line-break:strict;word-break:normal;overflow-wrap:break-word;padding-inline:.1em .35em;display:flow-root;overflow:hidden}.book-flow:focus-visible{outline:1px solid var(--book-line);outline-offset:12px}[data-book-layout=vertical] .book-flow{writing-mode:vertical-rl;text-orientation:mixed;font-feature-settings:"vert" 1, "vrt2" 1;line-height:2.05}.book-flow h2{font:500 calc(var(--reading-size) * 1.04)/1.6 var(--serif);letter-spacing:.16em;margin-block:0 .95em;margin-inline:0;padding:0}.book-flow p{text-indent:2em;text-align:justify;margin-block:0 .65em;margin-inline:0}.book-flow p[data-continued]{text-indent:0}.book-flow p.book-verse{text-indent:0;text-align:center;white-space:pre-line}.book-flow :last-child{margin-block-end:0}#book-measure{visibility:hidden;pointer-events:none;position:absolute;inset:0}.book-folio{text-align:center;font:400 10px/1.7 var(--serif);color:var(--book-muted);letter-spacing:.15em}.book-topbar{z-index:5;top:15px;color:var(--book-muted);justify-content:space-between;align-items:center;font-size:12px;display:flex;position:fixed;inset-inline:32px}.book-return{align-items:center;gap:9px;min-height:44px;display:flex}.book-return:hover,.book-icon-button:hover{color:var(--book-ink)}.book-options,.book-layout-options{align-items:center;gap:8px;display:flex}.book-layout-options button{min-width:44px;min-height:44px;color:var(--book-muted);position:relative}.book-layout-options button[aria-pressed=true]{color:var(--book-ink)}.book-layout-options button[aria-pressed=true]:after{content:"";inset-inline:16px;background:currentColor;height:1px;position:absolute;bottom:5px}.book-control-rule{background:var(--book-line);width:1px;height:13px;margin-inline:3px 6px}.book-icon-button{cursor:pointer;place-items:center;min-width:44px;min-height:44px;display:grid}#book-settings{position:relative}#book-settings summary{list-style:none}#book-settings summary::-webkit-details-marker{display:none}.book-settings-panel{background:var(--sheet);border:1px solid var(--book-line);border-radius:3px;width:266px;max-height:calc(100svh - 90px);padding:23px;position:absolute;top:52px;right:0;overflow-y:auto;box-shadow:0 8px 24px #25281816}.book-settings-title{font:17px/1.8 var(--serif);color:var(--book-ink)}.book-settings-help{border-top:1px solid var(--book-line);margin-top:17px;padding-top:14px;font-size:11px;line-height:1.9}.book-settings-panel .settings-theme{align-items:center;gap:9px;min-height:44px;display:flex}.book-spread-hint{margin-top:10px;font-size:11px;line-height:1.9}.book-pagination{z-index:4;color:var(--book-muted);grid-template-columns:44px 132px 44px;align-items:center;gap:15px;display:grid;position:fixed;bottom:15px;left:50%;transform:translate(-50%)}.book-turn{place-items:center;width:44px;height:44px;display:grid}.book-turn:disabled{opacity:.22}.book-turn:hover:not(:disabled){color:var(--book-ink)}#book-open-toc{min-height:44px;font:12px/1.4 var(--serif-hans);font-variant-numeric:tabular-nums;letter-spacing:.08em;justify-content:center;align-items:center;gap:10px;display:flex}.book-pages-mark{opacity:.55}[data-book-layout=vertical] .book-previous{grid-area:1/3}[data-book-layout=vertical] .book-next{grid-area:1/1}[data-book-layout=vertical] #book-open-toc{grid-area:1/2}[data-book-layout=vertical] .book-turn svg{transform:rotate(180deg)}.book-controls{transition:opacity .28s}.book-tools-hidden .book-controls{opacity:0;pointer-events:none}.book-tools-hidden .book-controls:has(:focus-visible),.book-tools-hidden .book-controls:has(details[open]){opacity:1;pointer-events:auto}.book-toc{border:1px solid var(--book-line);background:var(--sheet);width:min(430px,100vw - 40px);max-height:min(740px,100svh - 64px);color:var(--book-ink);border-radius:3px;padding:27px 30px;box-shadow:0 18px 80px #20231930}.book-toc::backdrop{backdrop-filter:blur(3px);background:#292d2340}.book-toc-heading{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.book-toc h2{font:25px/1.7 var(--serif);margin-top:4px}.book-toc-eyebrow{letter-spacing:.16em;color:var(--book-muted);font-size:10px}.book-toc nav{display:grid}.book-toc nav button{text-align:left;border-top:1px solid var(--book-line);min-height:48px;font:14px/1.7 var(--serif);align-items:center;gap:16px;padding:8px 3px;display:flex}.book-toc nav button:hover,.book-toc nav button[aria-current]{color:var(--olive);background:var(--olive-soft)}.book-toc-number,.book-toc-page{font:10px/1.7 var(--sans);color:var(--book-muted);font-variant-numeric:tabular-nums}.book-toc-page{margin-left:auto}.book-visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.js .book-fallback{display:none}html:not(.js) .book-sheet,html:not(.js) .book-volume{height:auto}.book-fallback{font:18px/2 var(--serif)}.book-fallback h2{margin:2em 0 1em;font-size:22px}.book-fallback p{margin-bottom:1em}.book-fallback a{text-decoration:underline}#book-layout-error{font:16px/2 var(--serif)}@media (width<=600px){.book-page{--sheet-height:calc(100svh - 126px);--volume-width:calc(100vw - 28px)}.book-stage{padding:63px 14px}.book-sheet{gap:24px;padding:26px 25px 19px}.book-topbar{inset-inline:14px;font-size:11px;top:8px}.book-return{justify-content:center;min-width:44px}.book-return span{display:none}.book-options,.book-layout-options{gap:2px}.book-control-rule{margin-inline:2px}.book-pagination{bottom:8px}.book-flow{letter-spacing:.025em;line-height:1.85}[data-book-layout=vertical] .book-flow{line-height:1.9}.book-running-head :is(h1,p){letter-spacing:.16em;font-size:9px}.book-running-head{gap:12px}}@media (height<=540px) and (width>=601px){.book-page{--sheet-height:calc(100svh - 112px);--volume-width:min(650px, calc(100vw - 80px))}.book-stage{padding-block:56px}.book-sheet{gap:12px;padding:18px 34px 14px}.book-volume[data-spread=double]{width:min(1000px,100vw - 64px)}.book-topbar{top:5px}.book-pagination{bottom:5px}.book-flow h2{font-size:var(--reading-size);margin-block-end:.6em}}@media (prefers-reduced-motion:reduce){.book-controls{transition:none}}@media (forced-colors:active){.book-sheet:before{display:none}.book-sheet{border:1px solid canvastext}}@media print{.book-controls,.book-toc,#book-measure,#book-turn-layer{display:none!important}.book-page{background:#fff;height:auto!important;overflow:visible!important}.book-stage{min-height:0;padding:0}.book-sheet{box-shadow:none;border:0}}
