html,body,#root{width:100%;min-height:100%}body{margin:0}:root{color:#252824;font-synthesis:none;text-rendering:optimizelegibility;letter-spacing:0;--green:#176b57;--green-dark:#105344;--ink:#252824;--muted:#71766f;--line:#dfe3dc;--panel:#fff;--soft:#eff2ec;background:#f7f8f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh}button,input,textarea{font:inherit;letter-spacing:0}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #176b5747}svg{stroke-width:1.8px;width:1.15rem;height:1.15rem}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.library-shell{background:#f7f8f5;grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:#f0f3ed;flex-direction:column;height:100vh;padding:26px 18px 22px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:11px;padding:0 8px 28px;font-size:19px;font-weight:720;display:flex}.brand-mark{color:#fff;background:var(--green);border-radius:6px;place-items:center;width:32px;height:32px;display:grid}.brand-mark svg{width:18px;height:18px}.sidebar nav{gap:4px;display:grid}.nav-item{cursor:pointer;color:#555b54;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;height:42px;padding:0 12px;display:flex}.nav-item.active{color:var(--green-dark);background:#dfe9e0;font-weight:650}.nav-item span{text-align:center;background:#ffffffa6;border-radius:999px;min-width:24px;margin-left:auto;padding:2px 7px;font-size:12px}.sidebar-actions{border-top:1px solid var(--line);gap:10px;margin-top:auto;padding:15px 10px 12px;display:grid}.language-switch{background:#ffffff9e;border:1px solid #cbd2c9;border-radius:5px;grid-template-columns:repeat(2,40px);gap:2px;width:max-content;padding:2px;display:inline-grid}.language-switch button{color:#646a63;cursor:pointer;background:0 0;border:0;border-radius:3px;height:36px;padding:0;font-size:11px;font-weight:700}.language-switch button.active{color:#fff;background:var(--green)}.feedback-button{color:#555b54;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:9px;min-height:40px;padding:0 9px;font-weight:620;display:flex}.feedback-button:hover{color:var(--green-dark);background:#dfe9e0}.feedback-button svg{width:16px}.privacy-note{border-top:1px solid var(--line);gap:5px;margin-top:0;padding:15px;display:grid}.privacy-note strong{text-transform:uppercase;color:var(--green);font-size:12px}.privacy-note span{color:var(--muted);font-size:12px;line-height:1.45}.library-main{width:min(1180px,100%);margin:0 auto;padding:48px 52px 72px}.library-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:30px;display:flex}.eyebrow{color:var(--green);margin:0 0 7px;font-size:11px;font-weight:760}h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:38px;font-weight:600;line-height:1.05}h2{margin:0;font-size:20px}.primary-button,.secondary-button,.danger-button{cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;height:40px;padding:0 15px;font-weight:650;display:inline-flex}.primary-button{background:var(--green);color:#fff}.primary-button:hover{background:var(--green-dark)}.primary-button:disabled{opacity:.6;cursor:progress}.secondary-button{color:#343934;background:#fff;border-color:#cfd5cd}.secondary-button:hover{background:var(--soft)}.danger-button{color:#fff;background:#a33b32}.notice{color:#245a49;background:#edf6f1;border:1px solid #b8d5c9;border-radius:6px;justify-content:space-between;align-items:center;gap:16px;min-height:42px;margin:-12px 0 20px;padding:9px 10px 9px 14px;font-size:13px;display:flex}.notice button{cursor:pointer;background:0 0;border:0;place-items:center;min-width:40px;height:40px;display:grid}.notice button.notice-action{color:#245a49;border:1px solid #9fc7b6;border-radius:4px;width:auto;padding:0 9px;font-weight:650}.notice svg{width:16px}.drop-zone{color:#5f655e;cursor:pointer;background:#ffffff8a;border:1px dashed #bac3b8;border-radius:6px;justify-content:center;align-items:center;gap:10px;width:100%;height:96px;margin-bottom:28px;padding:0 18px;transition:border-color .15s,background .15s;display:flex}.drop-zone:hover{background:#f7faf6;border-color:#7d9385}.drop-zone:disabled{opacity:.65;cursor:progress}.drop-zone>svg{color:var(--green)}.drop-zone small{color:#8b908a;border-left:1px solid #d6dbd4;padding-left:10px}.drop-zone.dragging{border-color:var(--green);background:#eaf3ed}.empty-state{text-align:center;border-top:1px solid var(--line);flex-direction:column;justify-content:center;align-items:center;min-height:390px;display:flex}.empty-icon{width:58px;height:58px;color:var(--green);background:#e5ebe4;border-radius:50%;place-items:center;margin-bottom:18px;display:grid}.empty-icon svg{width:27px;height:27px}.empty-state p{max-width:390px;color:var(--muted);margin:9px 0 21px}.book-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.book-card{border:1px solid var(--line);background:var(--panel);border-radius:7px;min-width:0;transition:border-color .15s,box-shadow .15s;position:relative;overflow:hidden}.book-card:hover{border-color:#bfc8bd;box-shadow:0 5px 15px #2f393012}.book-open{cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:86px minmax(0,1fr);gap:16px;width:100%;min-height:176px;padding:18px;display:grid}.book-cover{color:#fff;border-radius:3px;flex-direction:column;justify-content:center;align-items:center;gap:10px;height:122px;display:flex;box-shadow:0 5px 12px #18201b24}.book-cover svg{width:28px;height:28px}.book-cover span{font-size:10px;font-weight:800}.cover-epub{background:#386f63}.cover-pdf{background:#8e4239}.cover-txt{color:#3f463e;background:#d9d8cc}.book-info{align-self:center;gap:5px;min-width:0;display:grid}.book-info strong{text-overflow:ellipsis;white-space:nowrap;padding-right:25px;font-size:15px;overflow:hidden}.book-info>span{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px;overflow:hidden}.book-info small{color:#898e87;font-size:11px;line-height:1.4}.progress-track{background:#e7eae5;width:100%;height:3px;margin:9px 0 2px;overflow:hidden}.progress-track i{background:var(--green);height:100%;display:block}.card-menu{cursor:pointer;color:#848a82;background:0 0;border:0;border-radius:4px;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:6px;right:6px}.card-menu:hover{color:#9a312a;background:#f7e9e7}.card-menu svg{width:16px}.dialog-backdrop{z-index:20;background:#1a1e1b6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.dialog{background:#fff;border-radius:8px;width:min(420px,100%);padding:26px;box-shadow:0 22px 70px #0000003b}.dialog-icon{color:#9b352e;background:#f7e7e5;border-radius:50%;place-items:center;width:38px;height:38px;margin-bottom:18px;display:grid}.dialog-heading{justify-content:space-between;align-items:center;min-height:38px;margin-bottom:18px;display:flex}.dialog-heading .dialog-icon{margin:0}.dialog-heading .icon-button:disabled{opacity:.45;cursor:wait}.feedback-icon{color:var(--green);background:#e5efe9}.feedback-dialog textarea{resize:vertical;width:100%;min-height:116px;color:var(--ink);background:#fff;border:1px solid #cbd2c9;border-radius:6px;padding:11px 12px;line-height:1.5}.feedback-dialog .dialog-actions button:disabled{opacity:.55;cursor:wait}.feedback-meta{min-height:28px;color:var(--muted);justify-content:space-between;gap:10px;padding-top:6px;font-size:11px;display:flex}.feedback-meta>span:last-child{white-space:nowrap;margin-left:auto}.feedback-error{color:#98382f}.dialog p{color:var(--muted);margin:10px 0 24px;font-size:14px;line-height:1.55}.dialog p.dialog-error{color:#98382f;margin:-12px 0 18px}.dialog-actions{justify-content:flex-end;gap:9px;display:flex}.dialog-actions button:disabled{opacity:.6;cursor:wait}.reader-shell{--reader-background:#f5f1e8;--reader-toolbar-line:#292a271f;--reader-toolbar-muted:#636861;--reader-toolbar-control-border:#52595257;--reader-toolbar-hover:#434b451a;--reader-toolbar-active:#434b451a;--reader-toolbar-active-ring:transparent;--reader-toolbar-focus:#176b57;background:var(--reader-background);color:#292a27;grid-template-rows:58px minmax(0,1fr);height:100vh;display:grid;overflow:hidden}.reader-shell.theme-white{--reader-background:#fff;--reader-toolbar-line:#2225221f;--reader-toolbar-muted:#6f756e;background:var(--reader-background);color:#222522}.reader-shell.theme-night{--reader-background:#171918;--reader-toolbar-line:#e5e8e224;--reader-toolbar-muted:#aeb4ad;--reader-toolbar-control-border:#bec5bd61;--reader-toolbar-hover:#dde5dd1a;--reader-toolbar-active:#30443c;--reader-toolbar-active-ring:#9dd0bf;--reader-toolbar-focus:#9dd0bf;background:var(--reader-background);color:#e5e8e2}.reader-shell.theme-contrast{--reader-background:#fff;--reader-toolbar-line:#111;--reader-toolbar-muted:#333;--reader-toolbar-control-border:#111;--reader-toolbar-hover:#00000029;--reader-toolbar-active:#050505;--reader-toolbar-focus:#050505;background:var(--reader-background);color:#050505}.reader-toolbar{z-index:8;border-bottom:1px solid var(--reader-toolbar-line);background:var(--reader-background);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;height:58px;padding:0 14px;display:grid}.reader-title{text-align:center;min-width:0;display:grid}.reader-title strong,.reader-title span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reader-title strong{font-size:14px}.reader-title span{color:var(--reader-toolbar-muted);margin-top:2px;font-size:10px}.reader-leading-controls,.reader-controls{align-items:center;gap:4px;display:flex}.reading-mode-switch{border:1px solid var(--reader-toolbar-control-border);border-radius:5px;grid-template-columns:repeat(2,auto);gap:2px;padding:2px;display:inline-grid}.reading-mode-switch button{min-width:74px;height:36px;color:var(--reader-toolbar-muted);cursor:pointer;background:0 0;border:0;border-radius:3px;justify-content:center;align-items:center;gap:6px;padding:0 9px;font-size:11px;font-weight:700;display:inline-flex}.reading-mode-switch button:hover{color:inherit;background:var(--reader-toolbar-hover)}.reading-mode-switch button.active{color:#fff;background:var(--green)}.reading-mode-switch svg{width:15px;height:15px}.icon-button{cursor:pointer;background:0 0;border:0;border-radius:5px;flex:0 0 40px;place-items:center;width:40px;height:40px;padding:0;display:grid}.reader-shell .reader-toolbar .icon-button:hover{background:var(--reader-toolbar-hover)}.reader-shell .reader-toolbar .icon-button.active{background:var(--reader-toolbar-active);box-shadow:inset 0 0 0 1px var(--reader-toolbar-active-ring)}.reader-shell .reader-toolbar button:focus-visible{outline-color:var(--reader-toolbar-focus)}.theme-contrast .reader-toolbar .icon-button.active{color:#fff}.icon-button:hover,.icon-button.active{background:#656f661f}.icon-button:disabled{opacity:.4;cursor:default}.reader-workspace{min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.reading-surface{flex:auto;min-width:0;min-height:0;position:relative;overflow:hidden}.reader-stage{width:100%;height:100%}.epub-stage{padding:0 52px}.foliate-reader{width:100%;height:100%;display:block}.pdf-stage{text-align:center;background:#d8dad6;padding:28px 62px 70px;overflow:auto}.pdf-stage.theme-white{background:#e7e9e6}.pdf-stage.theme-night{background:#101211}.pdf-stage.theme-contrast{background:#fff}.pdf-stage canvas{background:#fff;margin:0 auto;display:block}.pdf-page-surface{isolation:isolate;background:#fff;margin:0 auto;position:relative;box-shadow:0 8px 28px #0000002e}.pdf-page-surface>canvas{box-shadow:none;margin:0;position:absolute;inset:0}.pdf-page-error,.pdf-page-slot-error,.pdf-preview-error{color:#8c302a;text-align:center;background:#faecea;border:1px solid #edcbc7;border-radius:6px;padding:14px}.pdf-page-error{z-index:4;place-items:center;margin:0;display:grid;position:absolute;inset:24px}.pdf-page-slot-error{align-self:start;max-width:580px;margin:24px auto}.pdf-preview-error{align-self:start;width:100%}.textLayer{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;z-index:2;opacity:1;letter-spacing:0;word-spacing:normal;text-align:initial;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;transform-origin:0 0;caret-color:canvastext;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size));line-height:1;position:absolute;inset:0;overflow:clip}.textLayer>:not(.markedContent),.textLayer .markedContent span:not(.markedContent){z-index:1;color:#0000;white-space:pre;cursor:text;transform-origin:0 0;-webkit-user-select:text;user-select:text;--font-height:0;--scale-x:1;--rotate:0deg;font-size:calc(var(--text-scale-factor) * var(--font-height));transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv));position:absolute}.textLayer .markedContent{display:contents}.textLayer ::selection{color:#0000;background:#1874be52}.textLayer .endOfContent{z-index:0;-webkit-user-select:none;user-select:none;position:absolute;inset:100% 0 0}.pdf-source-highlight{z-index:1;pointer-events:none;background:#37a68333;border:2px solid #176b57c7;position:absolute}.pdf-paper-page-preview-host{place-items:start center;width:min(320px,100%);min-height:140px;display:grid}.pdf-paper-page-preview{width:100%;height:auto;margin:0;box-shadow:0 3px 14px #0000002b}.pdf-view-toolbar{z-index:5;background:color-mix(in srgb, var(--reader-background) 96%, transparent);text-align:left;border:1px solid #575e5847;align-items:center;gap:12px;width:min(1100px,100%);min-height:48px;margin:0 auto 18px;padding:7px 9px;display:flex;position:sticky;top:-28px}.pdf-view-toolbar>span{color:var(--reader-toolbar-muted);margin-left:auto;font-size:11px}.pdf-view-toolbar .pdf-analysis-error{color:#98382f}.pdf-view-switch{border:1px solid var(--reader-toolbar-control-border);border-radius:5px;flex:none;grid-auto-columns:minmax(104px,1fr);grid-auto-flow:column;gap:2px;padding:2px;display:grid}.pdf-view-switch button{min-height:30px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:3px;justify-content:center;align-items:center;gap:6px;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex}.pdf-view-switch button.active{color:#fff;background:var(--green)}.pdf-view-switch button:disabled{opacity:.7;cursor:wait}.pdf-view-switch svg{width:15px;height:15px}.pdf-paper-stage{text-align:left;background:var(--reader-background);padding:28px 34px 90px}.pdf-paper-document{width:min(1160px,100%);margin:0 auto}.pdf-paper-summary{border-top:1px solid var(--reader-toolbar-line);border-bottom:1px solid var(--reader-toolbar-line);grid-template-columns:repeat(4,minmax(0,1fr));min-height:70px;display:grid}.pdf-paper-summary>div{border-right:1px solid var(--reader-toolbar-line);align-content:center;gap:3px;min-width:0;padding:12px 16px;display:grid}.pdf-paper-summary>div:last-child{border-right:0}.pdf-paper-summary strong{font-variant-numeric:tabular-nums;font-size:20px}.pdf-paper-summary span{color:var(--reader-toolbar-muted);font-size:10px}.pdf-paper-warning{color:#72551d;background:#fff7df;border-bottom:1px solid #d8bd77;margin:0;padding:11px 16px;font-size:11px;line-height:1.5}.theme-night .pdf-paper-warning{color:#ead395;background:#342d1c}.pdf-reflow-pages{border-bottom:1px solid var(--reader-toolbar-line);width:min(780px,100%);margin:0 auto}.mode-proof .pdf-reflow-pages{width:100%}.pdf-reflow-page{border-top:1px solid var(--reader-toolbar-line)}.pdf-reflow-page:first-child{border-top:0}.pdf-reflow-page .pdf-paper-page-marker{z-index:2;position:sticky;top:39px}.pdf-source-only-row{border-top:0;display:block}.pdf-source-only-row+.pdf-source-only-row{border-top:1px solid color-mix(in srgb, var(--reader-toolbar-line) 65%, transparent)}.pdf-source-only-row .pdf-paper-source{border-right:0;min-height:0;padding:14px 22px}.pdf-proof-row{grid-template-columns:minmax(280px,.82fr) minmax(360px,1.18fr);align-items:start;display:grid}.pdf-proof-preview{border-right:1px solid var(--reader-toolbar-line);background:#5c695f0a;place-items:start center;min-height:220px;padding:18px;display:grid;position:sticky;top:68px}.pdf-proof-text{min-width:0}.pdf-proof-text .pdf-paper-source{font-size:13px}.quality-review>.pdf-paper-page-marker{box-shadow:inset 3px 0 #b27d1f}.quality-rejected>.pdf-paper-page-marker{box-shadow:inset 3px 0 #98382f}.pdf-paper-row{grid-column:1/-1;grid-template-columns:subgrid;border-top:1px solid var(--reader-toolbar-line);transition:background .12s;display:grid;position:relative}.pdf-paper-row.active{box-shadow:inset 3px 0 var(--green);background:#176b5717}.pdf-paper-row:focus-visible{outline:3px solid var(--reader-toolbar-focus);outline-offset:-3px}.theme-night .pdf-paper-row.active{background:#9dd0bf1a}.pdf-paper-page-marker{color:var(--reader-toolbar-muted);background:color-mix(in srgb, var(--reader-background) 88%, #a9afa9);text-align:center;font-variant-numeric:tabular-nums;grid-column:1/-1;justify-content:center;align-items:center;gap:8px;padding:6px 12px;font-size:10px;display:flex}.pdf-paper-page-marker strong{color:#72551d;text-transform:uppercase;font-size:9px}.quality-rejected .pdf-paper-page-marker strong{color:#98382f}.pdf-paper-page-content{grid-column:1/-1;grid-template-columns:subgrid;display:grid}.pdf-paper-empty-page{min-height:96px;color:var(--reader-toolbar-muted);text-align:center;grid-column:1/-1;place-items:center;margin:0;padding:26px;font-size:11px;display:grid}.pdf-paper-source{min-width:0;min-height:72px;color:inherit;text-align:left;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;border:0;border-right:1px solid var(--reader-toolbar-line);background:0 0;align-content:start;gap:7px;padding:15px 17px;font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.68;display:grid}.pdf-paper-source:hover{background:#5c695f0f}.pdf-block-kind{color:var(--reader-toolbar-muted);text-transform:uppercase;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:9px;font-weight:800}.pdf-block-title>span:last-child{font-size:22px;line-height:1.32}.pdf-block-heading>span:last-child{font-size:17px;font-weight:700;line-height:1.4}.pdf-block-footnote,.pdf-block-caption,.pdf-block-reference{font-size:12px}.pdf-block-equation{text-align:center;font-family:Times New Roman,serif}.pdf-continuous{padding:24px 24px 70px}.continuous-pdf-track{width:min(1100px,100%);margin:0 auto;position:relative}.continuous-pdf-page{place-items:start center;padding-bottom:18px;display:grid;position:absolute;left:0;right:0}.continuous-pdf-page canvas{width:auto;max-width:100%;height:auto;max-height:calc(100% - 18px)}.page-status{z-index:4;color:#fff;background:#1e211fc7;border-radius:4px;padding:5px 10px;font-size:11px;position:fixed;bottom:14px;left:50%;transform:translate(-50%)}.text-stage{background:#f5f1e8}.text-stage-scroll{padding:52px 82px 100px;overflow:auto}.text-stage-paged{overscroll-behavior-x:contain;scrollbar-width:none;position:relative;overflow:auto hidden}.text-stage-paged::-webkit-scrollbar{display:none}.text-stage.theme-white{color:#222522;background:#fff}.text-stage.theme-night{color:#e5e8e2;background:#171918}.text-stage.theme-contrast{color:#050505;background:#fff}.text-stage article{overflow-wrap:anywhere;width:100%;margin:0 auto}.text-stage-paged article{width:var(--text-page-width);max-width:none;height:100%;padding:var(--text-page-top-inset) var(--text-page-side-inset) var(--text-page-bottom-inset);column-width:var(--text-content-width);column-gap:calc(var(--text-page-side-inset) * 2);column-fill:auto;margin:0}.text-stage article p{white-space:pre-wrap;margin:0 0 1em}.text-stage article .markdown-paragraph{white-space:pre-wrap}.text-stage article .markdown-heading{break-after:avoid;white-space:pre-wrap;margin:0 0 .65em;line-height:1.25}.text-stage article h1.markdown-heading{font-size:1.8em}.text-stage article h2.markdown-heading{font-size:1.5em}.text-stage article h3.markdown-heading{font-size:1.28em}.text-stage article h4.markdown-heading,.text-stage article h5.markdown-heading,.text-stage article h6.markdown-heading{font-size:1.1em}.text-stage article .markdown-list{break-inside:avoid;margin:0 0 1em;padding-inline-start:1.6em}.text-stage article .markdown-list li{white-space:pre-wrap;margin-block:.28em}.text-stage article .markdown-list-line{display:inline}.text-stage article .markdown-quote{color:color-mix(in srgb, currentColor 82%, #687068);break-inside:avoid;border-inline-start:3px solid #176b5773;margin:0 0 1em;padding:.35em 1em}.text-stage article .markdown-quote p{margin:0 0 .65em}.text-stage article .markdown-quote p:last-child{margin-bottom:0}.text-stage article .markdown-code{overflow-wrap:anywhere;white-space:pre-wrap;color:inherit;break-inside:avoid;background:#6c716914;border:1px solid #6c716933;border-radius:5px;margin:0 0 1em;padding:.85em 1em;font:.88em/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.text-stage article .markdown-inline-code{background:#6c71691f;border-radius:3px;padding:.08em .28em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.text-stage article .markdown-rule{border:0;border-top:1px solid #6c716957;margin:1.3em 0}.text-stage article .markdown-link{color:var(--green-dark);text-underline-offset:.15em;text-decoration:underline;text-decoration-thickness:.08em}.text-stage article .markdown-image-alt{color:var(--green-dark);font-style:italic}.theme-night .text-stage article .markdown-quote{color:#c4cbc3;border-color:#9dd0bf8c}.theme-night .text-stage article .markdown-code{background:#e5e8e214;border-color:#e5e8e22e}.theme-night .text-stage article .markdown-link,.theme-night .text-stage article .markdown-image-alt{color:#b6e1d3}.text-page-track{pointer-events:none;position:absolute;inset:0 auto 0 0}.spin{animation:1s linear infinite reader-spin}@keyframes reader-spin{to{transform:rotate(360deg)}}.reader-error{color:#8c302a;background:#faecea;border:1px solid #edcbc7;border-radius:6px;max-width:580px;margin:50px auto;padding:18px}.reader-loading{color:#747a73;place-items:center;font-size:13px;display:grid;position:absolute;inset:0}.page-turn{z-index:3;color:#2d342f73;cursor:pointer;background:0 0;border:0;place-items:center;width:46px;display:grid;position:absolute;top:34px;bottom:34px}.page-turn:hover{color:var(--green);background:#5b6f620f}.page-turn-left{left:0}.page-turn-right{right:0}.theme-night .page-turn{color:#e6ebe580}.reader-panel{z-index:6;color:#292d29;background:#f8faf7;flex-direction:column;width:300px;min-width:300px;height:100%;display:flex;overflow:hidden}.outline-panel,.search-panel{border-right:1px solid #d9ded7}.settings-panel{border-left:1px solid #d9ded7;overflow-y:auto}.theme-night .reader-panel{color:#e5e8e2;background:#202321;border-color:#343936}.theme-contrast .reader-panel{color:#050505;background:#fff;border-color:#111}.reader-panel-header{border-bottom:1px solid #6c716933;justify-content:space-between;align-items:center;height:54px;min-height:54px;padding:0 12px 0 17px;display:flex}.reader-panel-header>div{align-items:center;gap:9px;min-width:0;display:flex}.reader-panel-header svg{width:17px}.reader-panel-header strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.panel-note{color:#777d75;border-bottom:1px solid #6c716924;margin:0;padding:11px 17px;font-size:11px;line-height:1.45}.theme-night .panel-note{color:#aeb4ad}.outline-nav{min-height:0;padding:10px 8px 28px;overflow-y:auto}.outline-list{margin:0;padding:0;list-style:none}.outline-list .outline-list{padding-left:16px}.outline-row{grid-template-columns:40px minmax(0,1fr);align-items:start;min-height:40px;display:grid}.outline-disclosure{color:#777d75;cursor:pointer;background:0 0;border:0;place-items:center;width:40px;height:40px;padding:0;display:grid}.outline-disclosure svg{width:14px}.outline-spacer{width:40px}.outline-link{min-width:0;min-height:40px;color:inherit;cursor:pointer;text-align:left;overflow-wrap:anywhere;background:0 0;border:0;border-radius:4px;padding:9px 8px;font-size:12px;line-height:1.5}.outline-link:hover{background:#58685c1a}.outline-link.current{color:var(--green-dark);background:#e1ece4;font-weight:700}.theme-night .outline-link.current{color:#b6e1d3;background:#30443c}.outline-link:disabled{color:#8b908a;cursor:default}.empty-panel{color:#777d75;text-align:center;margin:24px 16px;font-size:12px;line-height:1.55}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.reader-search-form{border-bottom:1px solid #6c716929;grid-template-columns:minmax(0,1fr) 40px;gap:7px;padding:12px;display:grid}.reader-search-form input{min-width:0;height:40px;color:inherit;background:#fff;border:1px solid #cbd2c9;border-radius:5px;padding:0 11px}.reader-search-form .primary-button{place-items:center;width:40px;height:40px;padding:0;display:grid}.reader-search-form svg{width:16px;height:16px}.theme-night .reader-search-form input{background:#171918;border-color:#525953}.search-summary{color:#6d746c;border-bottom:1px solid #6c716924;min-height:38px;padding:10px 16px;font-size:11px;line-height:1.5}.theme-night .search-summary{color:#b4bbb3}.search-results{min-height:0;padding:7px 8px 28px;overflow-y:auto}.search-result{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:4px;gap:5px;padding:10px 9px;display:grid}.search-result:hover,.search-result:focus-visible{background:#58685c1a}.search-result+.search-result{border-top:1px solid #6c71691f;border-radius:0}.search-result strong{color:#687068;font-size:10px;font-weight:750}.search-result span{overflow-wrap:anywhere;font-size:12px;line-height:1.55}.search-result mark,.text-search-highlight{color:inherit;background:#f4d878;border-radius:2px;padding:0 .08em}.theme-night .search-result mark,.theme-night .text-search-highlight{color:#171918;background:#e7c65c}.setting-group{border-bottom:1px solid #6c716929;gap:10px;margin:0;padding:16px 17px;display:grid}.setting-label{color:#656b64;font-size:11px;font-weight:750}.theme-night .setting-label{color:#b4bbb3}.setting-group>input[type=range]{width:100%;accent-color:var(--green)}.setting-group select{width:100%;height:40px;color:inherit;background:0 0;border:1px solid #cbd2c9;border-radius:5px;padding:0 32px 0 10px}.theme-night .setting-group select{background:#202321;border-color:#525953}.font-size-control{grid-template-columns:40px minmax(64px,1fr) 40px;align-items:center;display:grid}.font-size-control output{text-align:center;font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.segmented-control{border:1px solid #cbd2c9;border-radius:5px;grid-auto-columns:1fr;grid-auto-flow:column;gap:2px;padding:2px;display:grid}.segmented-control button{color:#676d66;cursor:pointer;background:0 0;border:0;border-radius:3px;min-width:0;min-height:40px;padding:4px 6px;font-size:11px;line-height:1.25}.segmented-control button.active{color:#fff;background:var(--green);font-weight:700}.theme-night .segmented-control{border-color:#525953}.theme-night .segmented-control button{color:#bcc2bb}.theme-night .segmented-control button.active{color:#fff}.theme-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.theme-option{min-width:0;height:40px;color:inherit;cursor:pointer;background:0 0;border:1px solid #cbd2c9;border-radius:5px;align-items:center;gap:7px;padding:0 8px;font-size:11px;display:flex}.theme-option.active{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green);font-weight:700}.theme-option i{border:1px solid #0003;border-radius:50%;flex:0 0 15px;width:15px;height:15px}.theme-swatch-white i{background:#fff}.theme-swatch-paper i{background:#f5f1e8}.theme-swatch-night i{background:#171918}.theme-swatch-contrast i{background:linear-gradient(90deg,#050505 50%,#fff 50%)}.shortcuts-note{border-top:0;border-bottom:0;margin-top:auto}.recovery-shell{background:#f7f8f5;place-items:center;min-height:100vh;padding:32px;display:grid}.recovery-panel{border:1px solid var(--line);background:#fff;border-radius:8px;width:min(520px,100%);padding:30px;box-shadow:0 14px 38px #2f39301a}.recovery-panel h1{font-size:28px}.recovery-panel p{color:var(--muted);margin:12px 0 24px;line-height:1.55}.recovery-actions{flex-wrap:wrap;gap:9px;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (width<=860px){.pdf-proof-row{display:block}.pdf-proof-preview{border-right:0;border-bottom:1px solid var(--reader-toolbar-line);min-height:0;position:static}}@media (width<=760px){.library-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;align-items:center;width:100%;height:auto;padding:16px 18px;position:static}.brand{padding:0}.sidebar nav,.privacy-note{display:none}.sidebar-actions{border:0;grid-template-columns:auto auto;align-items:center;margin-top:0;margin-left:auto;padding:0}.feedback-button{justify-content:center;width:40px;padding:0;font-size:0}.feedback-button svg{width:17px}.library-main{padding:30px 20px 56px}.library-header{align-items:center}h1{font-size:31px}.drop-zone{text-align:center;flex-wrap:wrap;height:auto;min-height:86px;padding:16px}.drop-zone small{border:0;width:100%;padding:0}.book-grid{grid-template-columns:1fr}.reader-toolbar{gap:4px;padding-inline:6px}.reader-title strong{font-size:12px}.reader-title span{display:none}.reading-mode-switch button{width:40px;min-width:40px;padding:0}.reading-mode-switch span{display:none}.reader-panel{width:min(300px,100vw - 46px);min-width:0;position:absolute;top:0;bottom:0;box-shadow:0 12px 34px #0003}.outline-panel,.search-panel{left:0}.settings-panel{right:0}.epub-stage{padding:0 42px}.text-stage-scroll{padding:34px 48px 90px}.pdf-stage{padding-inline:46px}.pdf-paper-stage{padding-inline:12px}.pdf-view-toolbar{flex-wrap:wrap;top:-28px}.pdf-view-toolbar>span{width:100%;margin-left:0;padding-inline:3px}.pdf-view-switch{grid-auto-columns:auto;grid-auto-flow:row;width:100%}.pdf-paper-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.pdf-paper-summary>div:nth-child(2){border-right:0}.pdf-paper-summary>div:nth-child(-n+2){border-bottom:1px solid var(--reader-toolbar-line)}.pdf-reflow-pages{width:100%}.pdf-proof-row{display:block}.pdf-proof-preview{border-right:0;border-bottom:1px solid var(--reader-toolbar-line);min-height:0;position:static}.pdf-paper-page-content,.pdf-paper-row{display:block}.pdf-paper-source{border-right:0;border-bottom:1px solid var(--reader-toolbar-line);width:100%}.page-turn{width:40px}}
