.reader-shell{z-index:60;background:var(--reader-bg);height:100dvh;color:var(--reader-text);-webkit-font-smoothing:antialiased;font-family:DM Sans,system-ui,sans-serif;position:fixed;inset:0;overflow:hidden}.reader-shell :is(button,a,input,select):focus-visible{outline:2px solid var(--reader-accent);outline-offset:4px}.reader-toolbar{z-index:3;min-height:72px;padding:calc(10px + env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));background:var(--reader-bg);border-bottom:1px solid var(--reader-border);align-items:center;gap:4px;transition:transform .18s;display:flex;position:absolute;inset:0 0 auto}.reader-toolbar[data-hidden=true]{transform:translateY(-100%)}.reader-toolbar:focus-within{transform:translateY(0)}.reader-icon-button{width:44px;height:44px;color:var(--reader-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.reader-icon-button:hover{background:var(--reader-surface)}.reader-icon-button:disabled{opacity:.35;cursor:default}.reader-book-identity{text-align:center;flex:1;min-width:0;padding:0 12px}.reader-book-identity p{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.reader-book-identity>span{color:var(--reader-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:11px;display:block;overflow:hidden}.reader-viewport{overscroll-behavior:contain;overflow-anchor:none;scrollbar-width:thin;scrollbar-color:var(--reader-border) var(--reader-bg);touch-action:pan-y pinch-zoom;position:absolute;inset:0;overflow-y:auto}.reader-viewport:focus{outline:none}.reader-viewport:focus-visible{box-shadow:inset 0 0 0 2px var(--reader-accent)}.reader-page{max-width:var(--reader-width);padding:calc(132px + env(safe-area-inset-top)) min(var(--reader-gutter), 8vw) calc(128px + env(safe-area-inset-bottom));margin:0 auto}.reader-chapter-heading{margin-bottom:42px}.reader-eyebrow{color:var(--reader-muted);letter-spacing:.15em;text-transform:uppercase;font-size:11px;font-weight:500;line-height:1.8}.reader-chapter-heading h1{font-family:var(--reader-font);letter-spacing:-.025em;overflow-wrap:anywhere;text-wrap:balance;margin-top:14px;font-size:clamp(30px,4vw,40px);font-weight:500;line-height:1.25}.reader-chapter-rule{background:var(--reader-accent);width:32px;height:1px;margin-top:28px;display:block}.reader-shell .reader-content{font-family:var(--reader-font);font-size:var(--reader-size);line-height:var(--reader-leading);color:var(--reader-text);overflow-wrap:anywhere}.reader-shell .reader-content p{text-indent:0;text-align:start;margin:0 0 1em}.reader-shell .reader-content :is(h1,h2,h3,h4,h5,h6){margin:1.8em 0 .7em;font-weight:600;line-height:1.35}.reader-shell .reader-content blockquote{border-left:2px solid var(--reader-accent);opacity:1;margin:1.6em 0;padding:.15em 0 .15em 1.1em}.reader-shell .reader-content :is(ul,ol){margin:1em 0;padding-inline-start:1.4em}.reader-shell .reader-content ul{list-style:outside}.reader-shell .reader-content ol{list-style:decimal}.reader-shell .reader-content pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--reader-surface);border-radius:8px;padding:1em;font-size:.8em}.reader-shell .reader-content a{color:var(--reader-accent);text-underline-offset:3px;text-decoration:underline}.reader-chapter-navigation{border-top:1px solid var(--reader-border);grid-template-columns:1fr 1fr;gap:24px;margin-top:56px;padding-top:24px;display:grid}.reader-chapter-link{text-align:left;border-radius:8px;align-items:center;gap:12px;min-width:0;min-height:64px;display:flex}.reader-chapter-link svg{flex-shrink:0}.reader-chapter-link>span{min-width:0}.reader-chapter-link small{color:var(--reader-muted);margin-bottom:5px;font-size:11px;display:block}.reader-chapter-link>span>span{overflow-wrap:anywhere;font-size:14px;line-height:1.5}.reader-chapter-next{text-align:right;justify-content:flex-end}.reader-chapter-link:hover{color:var(--reader-accent)}.reader-progress{background:var(--reader-bg);padding-bottom:env(safe-area-inset-bottom);z-index:2;position:absolute;inset:auto 0 0}.reader-progress-track{background:var(--reader-border);height:1px}.reader-progress-track span{background:var(--reader-accent);height:1px;display:block}.reader-progress-labels{-moz-column-gap:20px;min-height:46px;padding:10px max(24px, env(safe-area-inset-left));color:var(--reader-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 20px;font-size:11px;display:flex}.reader-sync-message{border-top:1px solid var(--reader-border);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;padding:8px 20px;font-size:12px;display:flex}.reader-sync-message button{min-height:44px;text-decoration:underline}.reader-state{text-align:center;max-width:520px;min-height:70dvh;color:var(--reader-muted);flex-direction:column;justify-content:center;align-items:center;gap:20px;margin:auto;padding:120px 28px 80px;font-size:15px;line-height:1.7;display:flex}.reader-loader{border:2px solid var(--reader-border);border-top-color:var(--reader-accent);border-radius:50%;width:22px;height:22px;animation:1s linear infinite reader-spin}@keyframes reader-spin{to{transform:rotate(360deg)}}.reader-text-button{min-height:44px;color:var(--reader-text);text-underline-offset:4px;justify-content:center;align-items:center;font-size:14px;text-decoration:underline;display:inline-flex}.reader-preview-end{border-top:1px solid var(--reader-border);margin-top:64px;padding-top:36px}.reader-preview-end h2{font-family:var(--reader-font);margin:12px 0;font-size:28px;line-height:1.3}.reader-preview-end>p:not(.reader-eyebrow){color:var(--reader-muted);font-size:15px;line-height:1.8}.reader-purchase-link{border:1px solid var(--reader-border);background:var(--reader-surface);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-height:52px;margin-top:24px;padding:14px 18px;font-size:14px;display:flex}.reader-purchase-link>span{align-items:center;gap:12px;display:flex}.reader-book-end{text-align:center;margin-top:64px;padding-top:36px;font-size:15px}.reader-book-end>span{color:var(--reader-accent)}.reader-book-end p{margin:18px 0 8px}.reader-panel{border:1px solid var(--reader-border);background:var(--reader-bg);width:min(480px,100vw - 40px);max-height:min(780px,100dvh - 64px);color:var(--reader-text);overscroll-behavior:contain;border-radius:24px;margin:auto;padding:0;position:fixed;inset:0;overflow-y:auto;box-shadow:0 28px 100px #0004}.reader-panel::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0007}.reader-panel-heading{z-index:1;background:var(--reader-bg);border-bottom:1px solid var(--reader-border);justify-content:space-between;align-items:center;gap:20px;padding:16px 20px 12px 28px;display:flex;position:sticky;top:0}.reader-panel-heading h2{font-size:18px;font-weight:500}.reader-panel-content{padding:24px 28px 32px}.reader-panel-book-title{font-family:var(--reader-font);overflow-wrap:anywhere;margin-bottom:12px;font-size:21px;line-height:1.45}.reader-panel-note{color:var(--reader-muted);font-size:12px;line-height:1.7}.reader-contents{margin-top:20px}.reader-contents li+li{border-top:1px solid var(--reader-border)}.reader-contents button{text-align:left;border-radius:10px;align-items:center;gap:16px;width:100%;padding:20px 12px;font-size:14px;line-height:1.6;display:flex}.reader-contents button>span:nth-child(2){overflow-wrap:anywhere;flex:1}.reader-contents button svg{flex-shrink:0}.reader-contents button[aria-current]{background:var(--reader-surface);font-weight:600}.reader-contents-number{color:var(--reader-muted);font-variant-numeric:tabular-nums;font-size:12px}.reader-appearance{gap:26px;display:grid}.reader-appearance legend,.reader-setting-label{justify-content:space-between;width:100%;margin-bottom:12px;font-size:13px;font-weight:500;display:flex}.reader-setting-label span{color:var(--reader-muted);font-variant-numeric:tabular-nums}.reader-theme-options{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.reader-theme-option,.reader-choice-options label{cursor:pointer;position:relative}.reader-appearance input[type=radio]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.reader-theme-option>span{border:1px solid var(--reader-border);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:82px;font-size:11px;display:flex}.reader-theme-option b{font-family:Georgia,serif;font-size:24px;font-weight:400}.reader-appearance input[type=radio]:checked+span{outline:2px solid var(--reader-accent);outline-offset:3px}.reader-appearance input[type=radio]:focus-visible+span{outline:2px solid var(--reader-text);outline-offset:5px}.reader-choice-options{grid-template-columns:1fr 1fr;gap:12px;display:grid}.reader-choice-options span{border:1px solid var(--reader-border);border-radius:10px;justify-content:center;align-items:center;min-height:50px;font-size:17px;display:flex}.reader-size-control{align-items:center;gap:18px;min-height:44px;display:flex}.reader-size-control span:first-child{font-size:15px}.reader-size-control span:last-child{font-size:27px}.reader-size-control input{width:100%;min-width:0;height:32px;accent-color:var(--reader-accent)}.reader-select-grid{grid-template-columns:1fr 1fr;gap:16px;font-size:13px;display:grid}.reader-select-grid>div{min-width:0}.reader-select-grid select{background:var(--reader-surface);border:1px solid var(--reader-border);width:100%;min-height:46px;color:var(--reader-text);border-radius:10px;margin-top:10px;padding:8px 12px;display:block}.reader-flow-select{background:var(--reader-surface);border:1px solid var(--reader-border);width:100%;min-height:46px;color:var(--reader-text);border-radius:10px;padding:8px 12px;font-size:13px;display:block}@media (max-width:600px){.reader-toolbar{padding-inline:max(8px, env(safe-area-inset-left))}.reader-book-identity{padding-inline:4px}.reader-book-identity>span{font-size:10px}.reader-page{padding-top:calc(112px + env(safe-area-inset-top))}.reader-progress-labels{gap:5px 12px;padding-inline:20px;font-size:10px}.reader-panel{border-bottom:0;border-radius:24px 24px 0 0;width:100%;max-width:100%;max-height:88dvh;inset:auto 0 0}.reader-panel-content{padding:24px 24px max(32px, env(safe-area-inset-bottom))}.reader-chapter-navigation{gap:20px}.reader-chapter-link{gap:8px}}@media (prefers-reduced-motion:reduce){.reader-toolbar,.reader-loader{transition:none;animation:none}}@media (orientation:landscape) and (max-height:500px){.reader-toolbar{min-height:52px;padding-block:max(4px, env(safe-area-inset-top)) 4px}.reader-page{padding-top:calc(80px + env(safe-area-inset-top));padding-bottom:calc(80px + env(safe-area-inset-bottom))}.reader-chapter-heading{margin-bottom:24px}.reader-chapter-heading h1{margin-top:8px}.reader-chapter-rule{margin-top:16px}.reader-progress-labels{min-height:32px;padding-block:6px}.reader-panel{width:min(640px, calc(100vw - 40px - env(safe-area-inset-left) - env(safe-area-inset-right)));max-height:calc(100dvh - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border:1px solid var(--reader-border);border-radius:16px;margin:auto;inset:0}.reader-panel-heading{padding-block:6px}.reader-panel-content{padding-block:16px}}.reader-shell[data-reading-mode=pages]{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);display:grid}.reader-shell[data-reading-mode=pages]>:is(.reader-toolbar,.reader-viewport,.reader-progress){min-width:0}.reader-shell[data-reading-mode=pages] .reader-toolbar{grid-row:1;position:relative}.reader-viewport[data-reading-mode=pages]{--reader-page-gap:32px;min-height:0;width:min(var(--reader-width), calc(100% - 2 * min(var(--reader-gutter), 8vw)));direction:ltr;grid-row:2;margin:16px auto;position:relative;inset:auto;overflow:hidden}.reader-viewport[data-reading-mode=pages] .reader-page{-moz-column-count:1;column-count:1;-moz-column-gap:var(--reader-page-gap);column-gap:var(--reader-page-gap);-moz-column-fill:auto;column-fill:auto;width:100%;max-width:none;height:100%;margin:0;padding:0}.reader-viewport[data-reading-mode=pages] :is(.reader-content,.reader-chapter-heading){-webkit-box-decoration-break:clone;box-decoration-break:clone;padding-inline:3px}.reader-viewport[data-reading-mode=pages] .reader-content{widows:2;orphans:2}.reader-viewport[data-reading-mode=pages][data-empty=true]{overflow-y:auto}.reader-viewport[data-reading-mode=pages] .reader-state{min-height:100%;padding:24px 10px}.reader-viewport[data-reading-mode=pages] :is(.reader-chapter-heading,.reader-book-end,.reader-chapter-navigation),.reader-viewport[data-reading-mode=pages] .reader-purchase-link{-moz-column-break-inside:avoid;break-inside:avoid}.reader-viewport[data-reading-mode=pages] .reader-content :is(h1,h2,h3,h4,h5,h6){-moz-column-break-after:avoid;break-after:avoid}.reader-shell[data-reading-mode=pages] .reader-progress{grid-row:3;position:relative}.reader-page-controls{border-top:1px solid var(--reader-border);justify-content:center;align-items:center;gap:28px;padding:4px 16px;display:flex}.reader-page-controls>span{text-align:center;font-variant-numeric:tabular-nums;min-width:110px;font-size:12px}.reader-page-controls small{color:var(--reader-muted);margin-top:2px;font-size:10px;display:block}@media (orientation:landscape) and (max-height:500px){.reader-viewport[data-reading-mode=pages]{margin-block:8px}.reader-shell[data-reading-mode=pages] .reader-progress-labels{display:none}.reader-page-controls{padding-block:0}}
html[data-app-mode=installed] .reader-shell{--reader-top:calc(60px + env(safe-area-inset-top));--reader-bottom:calc(65px + env(safe-area-inset-bottom));font-family:var(--font-ui);background-image:linear-gradient(90deg,#00000006,#0000 20px calc(100% - 12px),#00000009)}html[data-app-mode=installed] .reader-shell:before{content:"";pointer-events:none;z-index:1;position:absolute;inset:0;box-shadow:inset 2px 0 2px #00000009,inset -3px 0 1px #ffffff1a,inset -4px 0 1px #0000000a}html[data-app-mode=installed] .reader-shell[data-reading-mode=pages]{grid-template-rows:var(--reader-top) minmax(0, 1fr) auto}html[data-app-mode=installed] .reader-toolbar{height:var(--reader-top);min-height:0;padding:env(safe-area-inset-top) max(8px, env(safe-area-inset-right)) 0 max(8px, env(safe-area-inset-left));background:var(--reader-bg);border:0;transition:opacity .16s,transform .18s}html[data-app-mode=installed] .reader-book-identity{padding-inline:4px}html[data-app-mode=installed] .reader-book-identity p{letter-spacing:.01em;font-size:12px}html[data-app-mode=installed] .reader-book-identity>span{display:none}html[data-app-mode=installed] .reader-icon-button{border-radius:14px}html[data-app-mode=installed] .reader-toolbar[data-hidden=true]{opacity:0;visibility:hidden}html[data-app-mode=installed] .reader-running-head{inset:env(safe-area-inset-top) 40px auto;opacity:0;pointer-events:none;height:60px;color:var(--reader-muted);letter-spacing:.04em;justify-content:center;align-items:center;font-size:10px;display:flex;position:absolute}html[data-app-mode=installed] .reader-running-head span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}html[data-app-mode=installed] .reader-shell[data-reader-focus=true] .reader-running-head{opacity:1}html[data-app-mode=installed] .reader-viewport[data-reading-mode=pages]{margin-block:14px 8px}html[data-app-mode=installed] .reader-chapter-heading{text-align:center;margin-bottom:36px;padding-top:20px}html[data-app-mode=installed] .reader-chapter-heading h1{letter-spacing:-.02em;margin-top:12px;font-size:clamp(30px,8vw,42px);font-weight:500;line-height:1.3}html[data-app-mode=installed] .reader-eyebrow{letter-spacing:.18em;font-size:10px}html[data-app-mode=installed] .reader-chapter-rule{background:var(--reader-border);width:62px;margin:24px auto 0;position:relative}html[data-app-mode=installed] .reader-chapter-rule:after{content:"◆";color:var(--reader-accent);background:var(--reader-bg);padding-inline:9px;font-size:7px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}html[data-app-mode=installed] .reader-content{font-kerning:normal}html[data-app-mode=installed] .reader-progress{min-height:var(--reader-bottom);background:var(--reader-bg);border-top:0}html[data-app-mode=installed] .reader-mobile-controls{max-width:420px;height:64px;padding-inline:max(20px, env(safe-area-inset-left));justify-content:space-between;align-items:center;gap:12px;margin-inline:auto;display:flex}html[data-app-mode=installed] .reader-progress-choice{min-width:0;min-height:44px;color:var(--reader-text);font-variant-numeric:tabular-nums;padding:4px 10px;font-size:12px;font-weight:500}html[data-app-mode=installed] .reader-progress-choice small{color:var(--reader-muted);margin-top:2px;font-size:10px;font-weight:400;display:block}html[data-app-mode=installed] .reader-progress-track{margin-inline:min(var(--reader-gutter), 8vw)}html[data-app-mode=installed] .reader-shell[data-reader-focus=true] .reader-mobile-controls{visibility:hidden;opacity:0;pointer-events:none}html[data-app-mode=installed] .reader-focus-progress{width:fit-content;min-width:100px;min-height:44px;color:var(--reader-muted);font-variant-numeric:tabular-nums;margin-inline:auto;font-size:11px;font-weight:400;position:absolute;inset:10px 20px auto}html[data-app-mode=installed] .reader-flip-layer{z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none;position:absolute;left:0;right:0;overflow:hidden}html[data-app-mode=installed] .reader-flip-scene{perspective:1600px;perspective-origin:0;position:absolute;inset:0}html[data-app-mode=installed] .reader-flip-leaf{transform-origin:0;transform-style:preserve-3d;will-change:transform;position:absolute;inset:0}html[data-app-mode=installed] :is(.reader-flip-face,.reader-flip-base){background:var(--reader-bg);position:absolute;inset:0;overflow:hidden}html[data-app-mode=installed] .reader-flip-face{backface-visibility:hidden;border-radius:0 5px 9px 0;box-shadow:12px 2px 28px #0003,1px 0 1px #0003}html[data-app-mode=installed] .reader-flip-front{transform:translateZ(.1px)}html[data-app-mode=installed] .reader-flip-back{background-image:linear-gradient(90deg,#00000015,#0000 12%,#ffffff0c 70%,#00000020);transform:rotateY(180deg)}html[data-app-mode=installed] .reader-flip-light{opacity:0;background:linear-gradient(90deg,#0002,#0000 12% 72%,#ffffff18 88%,#0003);border-right:1px solid #ffffff30;position:absolute;inset:0}html[data-app-mode=installed] .reader-flip-cast{opacity:0;background:linear-gradient(90deg,#0005,#0001 40%,#0000 75%);position:absolute;inset:0}html[data-app-mode=installed] .reader-flip-layer [data-reader-snapshot]{touch-action:none;-webkit-user-select:none;user-select:none}html[data-app-mode=installed] .reader-panel{border-color:var(--reader-border);box-shadow:0 -12px 60px #0003}html[data-app-mode=installed] .reader-panel-heading{padding:14px 16px 12px 24px}html[data-app-mode=installed] .reader-panel-heading h2{font-family:var(--font-heading);font-size:18px;font-weight:650}html[data-app-mode=installed] .reader-appearance{gap:24px}html[data-app-mode=installed] .reader-live-preview{border:1px solid var(--reader-border);background:var(--reader-bg);border-radius:16px;padding:16px 20px;box-shadow:0 3px 10px #00000008}html[data-app-mode=installed] .reader-live-preview>span{color:var(--reader-muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;font-size:10px;display:block}html[data-app-mode=installed] .reader-live-preview p{font-family:var(--reader-font);font-size:var(--reader-size);line-height:var(--reader-leading);-webkit-line-clamp:3;overflow-wrap:anywhere;text-align:start;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}html[data-app-mode=installed] .reader-preset-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}html[data-app-mode=installed] .reader-preset-options button{border:1px solid var(--reader-border);border-radius:12px;min-height:46px;font-size:13px}html[data-app-mode=installed] .reader-preset-options button[aria-pressed=true]{background:var(--reader-surface);border-color:var(--reader-accent)}html[data-app-mode=installed] .reader-theme-option>span{border-radius:14px;min-height:76px}html[data-app-mode=installed] .reader-motion-choice{justify-content:space-between;align-items:center;gap:16px;min-height:48px;font-size:13px;display:flex}html[data-app-mode=installed] .reader-motion-choice small{color:var(--reader-muted);margin-top:6px;font-size:12px;line-height:1.6;display:block}html[data-app-mode=installed] .reader-motion-choice input{width:22px;height:22px;accent-color:var(--reader-accent);flex-shrink:0}html[data-app-mode=installed] .reader-advanced{border-top:1px solid var(--reader-border);padding-top:8px}html[data-app-mode=installed] .reader-advanced summary{cursor:pointer;min-height:44px;padding-block:12px;font-size:13px}html[data-app-mode=installed] .reader-advanced[open]>div{padding-top:12px}@media (orientation:landscape) and (max-height:500px){html[data-app-mode=installed] .reader-shell{--reader-top:calc(48px + env(safe-area-inset-top));--reader-bottom:calc(45px + env(safe-area-inset-bottom))}html[data-app-mode=installed] .reader-mobile-controls{height:44px}html[data-app-mode=installed] .reader-progress-choice small{display:none}html[data-app-mode=installed] .reader-running-head{height:48px}html[data-app-mode=installed] .reader-focus-progress{top:0}html[data-app-mode=installed] .reader-chapter-heading{margin-bottom:22px;padding-top:4px}html[data-app-mode=installed] .reader-chapter-heading h1{font-size:28px}html[data-app-mode=installed] .reader-chapter-rule{margin-top:16px}html[data-app-mode=installed] .reader-panel-heading{padding-block:6px}}@media (prefers-reduced-motion:reduce){html[data-app-mode=installed] .reader-toolbar{transition:none}html[data-app-mode=installed] .reader-flip-layer{display:none}}
