*{box-sizing:border-box}body{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button{color:inherit}a{color:inherit;text-decoration:none}.app{--bg:#f7f4ec;--ink:#302f29;--muted:#858277;--line:#dedbd1;--gold:#8c7042;--surface:#efebe1;min-height:100dvh;background:var(--bg);color:var(--ink);font:14px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app[data-theme=dark]{--bg:#202321;--ink:#e2dfd5;--muted:#a1a59b;--line:#3b403a;--gold:#ceb784;--surface:#292e29}.file-input{display:none}header{height:100px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px;font:22px Georgia,serif}.brand-mark{font:italic 36px Georgia,serif;color:var(--gold);letter-spacing:-10px;padding-right:10px}.brand-mark span{font-size:30px}.brand small{font:9px -apple-system,sans-serif;letter-spacing:3px;margin-left:10px;color:var(--muted)}.header-actions{display:flex;align-items:center;gap:28px}.local{font-size:11px;color:var(--muted)}.local i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7b8b6e;margin-right:7px}.icon-button{background:none;border:1px solid var(--line);width:37px;height:37px;border-radius:50%;font-size:23px}.library{max-width:1250px;margin:auto;padding:64px 48px 24px}.eyebrow{font-size:10px;letter-spacing:2.3px;color:var(--gold);font-weight:600}.library-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:52px}h1{font:normal clamp(40px,4.5vw,62px)/1.08 Georgia,serif;letter-spacing:-2px;margin:18px 0}p{color:var(--muted)}.primary{border:0;background:var(--ink);color:var(--bg);padding:14px 24px;border-radius:5px;font-size:12px}.primary span{margin-right:10px;font-size:18px}.section-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px}.section-heading h2{font:22px Georgia,serif;margin:0}.section-heading h2 span{font:11px sans-serif;color:var(--muted);margin-left:10px}.section-heading>span{font-size:10px;color:var(--muted)}.empty{min-height:360px;display:flex;justify-content:center;align-items:center;gap:85px;padding:40px 0}.book-illustration{position:relative;transform:rotate(-7deg);width:178px;flex-shrink:0}.illustration-cover{position:relative;z-index:1;height:242px;background:#596654;color:#e4dfca;border-radius:2px 6px 6px 2px;box-shadow:inset 6px 0 #465241,inset 8px 0 #75806c,7px 5px #d9d5c7,9px 6px #83907a,15px 20px 30px #0002;padding:24px;text-align:center;display:flex;flex-direction:column;justify-content:space-between}.illustration-cover span{font:17px Georgia;letter-spacing:3px}.illustration-cover i{font:italic 23px/1.35 Georgia}.illustration-cover small{font-size:6px;letter-spacing:1.5px}.empty-copy h2{font: 34px/1.15 Georgia;margin:13px 0}.empty-copy p{font-size:13px;line-height:1.8}.text-button{padding:10px 0;background:none;border:0;border-bottom:1px solid var(--gold);color:var(--gold);font-size:12px}.text-button span{margin-left:25px}.empty-copy>small{display:block;color:var(--muted);font-size:9px;margin-top:20px}.library-footer{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:22px;color:var(--muted);font-size:10px}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:35px;padding:32px 0 48px}.book-card{text-align:left;background:none;border:0;padding:0;min-width:0}.cover{height:260px;padding:24px 20px;background:hsl(var(--cover-hue) 14% 32%);color:#f0e8d8;border-radius:2px 6px 6px 2px;box-shadow:inset 5px 0 #0002,3px 4px #d2cebf;display:flex;flex-direction:column;justify-content:space-between;text-align:center}.cover small{font-size:7px;letter-spacing:2px}.cover div{font:25px/1.2 Georgia;overflow:hidden;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical}.cover span{font:italic 13px Georgia}.cover i{font:14px Georgia;color:#d0c091}.book-card h3{font:18px Georgia;margin:20px 0 5px}.book-card p{font-size:12px;margin:0 0 12px}.book-status{font-size:10px;color:var(--gold)}.add-card{height:260px;border:1px dashed var(--line);background:none;color:var(--muted);font-size:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px}.add-card span{font-size:27px}.error{background:#8d3b2918;padding:12px 6%;display:flex;justify-content:space-between;font-size:13px}.error button{border:0;background:none}.reader{position:relative}.reader-toolbar{height:80px;margin:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.reader-toolbar button,.reader-footer button{border:0;background:none}.quiet{font-size:12px}.book-heading{text-align:center;max-width:55%;display:flex;flex-direction:column}.book-heading strong{font:18px Georgia;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.book-heading span{font-size:10px;color:var(--muted);margin-top:5px}.reader-tools{display:flex;gap:18px}.reader-tools button{font:20px Georgia}.reading-shell{position:relative;max-width:850px;margin:0 auto;padding:0 30px}.chapter-label{height:60px;display:flex;align-items:center;justify-content:center;font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden}.epub-viewer{height:calc(100dvh - 335px);min-height:260px}.reader-footer{height:90px;margin:0 6%;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line)}.reader-footer button{font-size:12px;padding:15px 0}.reader-footer>div{text-align:center;font-size:11px;color:var(--muted)}.reader-footer small{display:block;font-size:9px;margin-top:5px}.panel{position:absolute;right:6%;top:72px;width:330px;max-width:88vw;max-height:70vh;overflow:auto;background:var(--bg);box-shadow:0 12px 50px #0002;border:1px solid var(--line);padding:25px;z-index:5;border-radius:7px}.panel-title{display:flex;align-items:flex-start;gap:20px;justify-content:space-between}.panel-title h2{font:24px Georgia;margin:0}.panel-title button{border:0;background:none;font-size:22px}.panel p{font-size:12px}.panel label{display:flex;justify-content:space-between;margin-top:25px;font-size:12px}.panel input{width:100%;accent-color:var(--gold);margin:20px 0}.theme-options{display:flex;gap:12px}.theme-options button{width:50%;padding:15px;background:var(--surface);border:1px solid var(--line);border-radius:4px;line-height:2}.theme-options button.selected{border-color:var(--gold)}.panel nav{display:flex;flex-direction:column;margin-top:20px}.panel nav button{text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:12px 0;font-size:13px}.panel nav button.current{color:var(--gold)}.hint{margin-top:25px}.loading{position:absolute;inset:60px 0 0;background:var(--bg);display:grid;place-items:center;color:var(--muted)}@media(max-width:650px){header{height:76px;padding:0 6%}.brand{font-size:19px}.brand small,.local{display:none}.library{padding:35px 24px 20px}.library-heading{align-items:flex-start;margin-bottom:35px;gap:16px}.library-heading h1{font-size:38px}.library-heading p{font-size:12px}.primary{padding:10px 12px;white-space:nowrap;margin-top:25px;font-size:10px}.primary span{margin-right:0}.section-heading>span{max-width:135px;text-align:right;font-size:9px}.empty{gap:30px;flex-direction:column;padding:40px 0;text-align:center}.book-illustration{width:135px}.illustration-cover{height:180px;padding:16px}.illustration-cover i{font-size:18px}.empty-copy h2{font-size:29px}.library-footer{gap:18px;font-size:9px}.library-footer span:last-child{text-align:right;max-width:180px}.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.cover{height:225px;padding:18px 12px}.cover div{font-size:21px}.add-card{height:225px}.reader-toolbar{height:75px}.book-heading strong{font-size:15px}.reader-tools{gap:10px}.quiet span{display:none}.reading-shell{padding:0 12px}.epub-viewer{height:calc(100dvh - 291px)}.chapter-label{height:50px;font-size:8px}.reader-footer{height:80px}.reader-footer button span{display:none}.panel{top:70px}.reader-footer small{font-size:8px}}.featured{margin:15px 0 34px}.featured .section-heading h2{margin-top:8px}.featured-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-top:26px}.classic-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:7px;overflow:hidden}.classic-cover{height:200px;padding:24px;background:hsl(var(--cover-hue) 16% 30%);color:#f4ead6;display:flex;flex-direction:column;justify-content:space-between;text-align:center;box-shadow:inset 7px 0 #0002}.classic-cover small{font-size:8px;letter-spacing:2px}.classic-cover span{font:27px/1.2 Georgia,serif}.classic-cover i{font:italic 13px Georgia}.classic-details{padding:22px;display:flex;flex-direction:column;flex:1}.classic-details h3{font:21px/1.3 Georgia;margin:0}.classic-details p{font-size:12px}.classic-author{margin:5px 0}.edition-link,.download-size{font-size:10px;color:var(--muted)}.edition-link{margin-top:auto;text-decoration:underline;text-underline-offset:3px}.classic-action{margin-top:20px;padding:11px 8px;border:1px solid var(--line);border-radius:4px;background:var(--surface);font-size:12px}.classic-action:hover:not(:disabled){border-color:var(--gold)}.source-notice{font-size:10px;color:var(--muted);line-height:1.65;margin:22px 0 0}.source-notice a{text-decoration:underline;text-underline-offset:2px}.source-notice p{margin:6px 0}.reader>.source-notice{margin:0 6%;padding:12px 0 18px;border-top:1px solid var(--line)}.download-status{display:flex;justify-content:space-between;align-items:center;font-size:12px;margin-top:16px;color:var(--gold)}.download-status button{background:none;border:0;text-decoration:underline;font-size:12px}@media(max-width:700px){.featured-grid{grid-template-columns:1fr}.classic-card{flex-direction:row}.classic-cover{width:35%;height:auto;min-height:230px;flex-shrink:0;padding:18px 10px}.classic-cover span{font-size:20px}.classic-cover small{font-size:6px;letter-spacing:1px}.classic-cover i{font-size:11px}.classic-details{padding:18px;min-width:0}.classic-details h3{font-size:19px}.featured .section-heading>span{max-width:100px}.classic-action{font-size:11px}.source-notice{font-size:10px}}@media(max-width:700px){.classic-cover span{font-size:17px;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.quiet-reader{height:100dvh;min-height:300px}.quiet-reader .reading-shell{height:100%;max-width:900px;padding:32px 30px}.quiet-reader .epub-viewer{height:100%;min-height:0}.quiet-reader .loading{inset:32px 0}.reader-menu-trigger{position:fixed;right:22px;top:18px;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--muted);font:30px/1 Georgia,serif;z-index:32}.reader-menu-trigger:hover,.reader-menu-trigger[aria-expanded=true]{background:var(--surface);color:var(--ink)}.reader-menu-backdrop{position:fixed;inset:0;background:transparent;border:0;z-index:30;cursor:default}.reader-menu{position:fixed;right:24px;top:70px;width:355px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 90px);overflow:auto;overscroll-behavior:contain;background:var(--bg);border:1px solid var(--line);box-shadow:0 16px 60px #0002;border-radius:10px;padding:22px;z-index:31}.reader-menu:focus{outline:none}.menu-topline{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}.menu-topline button{background:none;border:0;padding:4px}.menu-close{font-size:24px}.menu-back{font-size:12px}.reader-menu h2{font: 23px/1.25 Georgia,serif;margin:8px 0}.reader-menu p{font-size:12px}.menu-book{padding-bottom:18px;border-bottom:1px solid var(--line)}.menu-book p{margin:6px 0 16px}.menu-book>span{display:block;font-size:12px}.menu-book small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.menu-pagination{display:flex;gap:10px;margin:16px 0}.menu-pagination button{flex:1;background:var(--surface);border:1px solid var(--line);padding:11px 8px;border-radius:4px;font-size:12px}.menu-actions,.menu-contents{display:flex;flex-direction:column}.menu-actions button,.menu-contents button{border:0;border-bottom:1px solid var(--line);background:none;text-align:left;padding:13px 3px;font-size:13px}.menu-actions button{display:flex;justify-content:space-between;align-items:center}.menu-actions button:hover,.menu-contents button:hover{color:var(--gold)}.menu-actions kbd,.menu-actions span{color:var(--muted);font:11px inherit}.menu-contents .current{color:var(--gold)}.reader-menu label{display:flex;justify-content:space-between;margin-top:24px;font-size:12px}.reader-menu input[type=range]{width:100%;accent-color:var(--gold);margin:20px 0}.shortcut-list{font-size:12px}.shortcut-list>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.shortcut-list dd{margin:0;color:var(--muted);font-size:11px;text-align:right}.reader-menu .source-notice{font-size:12px}.reader-menu .source-notice p{line-height:1.7}.reader-menu .hint{font-size:11px;line-height:1.7}@media(max-width:650px){.quiet-reader .reading-shell{padding:24px 10px}.reader-menu-trigger{right:8px;top:4px;width:40px;height:40px;background:var(--bg)}.reader-menu{right:12px;top:50px;max-height:calc(100dvh - 64px);width:min(355px,calc(100vw - 24px))}.quiet-reader .loading{inset:24px 0}}.app[data-theme=white]{--bg:#fff;--ink:#272b30;--muted:#72777d;--line:#e1e4e8;--gold:#76603c;--surface:#f4f5f6}.quiet-reader.two-columns .reading-shell{max-width:1440px}.reader-menu select{width:100%;margin-top:10px;padding:10px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink);font:inherit}.reader-menu .font-preview{font-size:19px;color:var(--ink);line-height:1.5}.column-options{border:0;margin:24px 0 0;padding:0;display:flex;gap:10px}.column-options legend{font-size:12px;margin-bottom:10px}.column-options button{flex:1;padding:10px;border:1px solid var(--line);border-radius:4px;background:var(--surface);font-size:12px}.column-options button[aria-pressed=true]{border-color:var(--gold)}.reader-menu .theme-options button{flex:1;width:auto}.reader-menu .hint{margin-top:12px}select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.passage-actions{display:flex;flex-wrap:wrap;gap:8px}.passage-actions button{padding:10px;border:1px solid var(--line);border-radius:4px;background:var(--surface);font-size:12px}.saved-passages{list-style:none;padding:0;margin:0}.saved-passages li{border-bottom:1px solid var(--line);padding:12px 0}.passage-jump{display:block;width:100%;text-align:left;background:none;border:0;padding:4px 0}.passage-kind{display:block;font-size:10px;color:var(--gold);margin-bottom:8px}.passage-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;font:16px/1.55 Georgia,serif;overflow-wrap:anywhere}.passage-remove{background:none;border:0;padding:8px 0;font-size:11px;color:var(--muted);text-decoration:underline}.reader-menu .passage-status{color:var(--gold);font-size:11px}.saved-empty{padding:20px 0}.search-input-row{display:flex;gap:8px;margin-top:10px}.book-search input{min-width:0;flex:1;padding:10px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink);font:inherit}.search-input-row button,.cancel-search{padding:10px;border:1px solid var(--line);border-radius:4px;background:var(--surface);font-size:12px}.search-results{list-style:none;margin:0;padding:0}.search-results li{border-bottom:1px solid var(--line)}.search-results button{width:100%;border:0;background:none;text-align:left;padding:16px 0;font:15px/1.6 Georgia,serif;overflow-wrap:anywhere}.search-results mark{background:#efbf3555;color:var(--ink);border-radius:2px}.reader-menu .search-status{color:var(--gold);font-size:12px}.note-edit{background:none;border:0;padding:10px 0;margin-right:18px;color:var(--gold);font-size:12px;text-decoration:underline}.saved-note{margin-top:14px;padding:12px;background:var(--surface);border-left:2px solid var(--gold);border-radius:3px}.saved-note>span{font-size:10px;color:var(--gold)}.reader-menu .saved-note p{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);margin:6px 0 0;font-size:13px}.note-editor textarea{width:100%;resize:vertical;min-height:100px;max-height:50vh;margin-top:8px;padding:10px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink);font-family:inherit;font-size:14px;line-height:1.6}.note-actions{display:flex;gap:10px}.note-actions button{padding:9px 13px;border:1px solid var(--line);border-radius:4px;background:var(--surface);font-size:12px}.note-actions button[type=submit]{border-color:var(--gold)}textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.book-progress{padding:0 0 12px;border-bottom:1px solid var(--line)}.book-progress label{margin-top:18px}.book-progress strong{font-weight:500;color:var(--gold)}.reader-menu .book-progress input{margin:14px 0 6px}.progress-preview{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.book-progress p{font-size:11px}.quiet-reader .reading-shell{padding-inline:var(--reader-margin,20px)}.quiet-reader.scroll-reader .reading-shell{padding-block:24px}.scroll-reader .epub-container{overscroll-behavior-y:contain;scrollbar-width:none}.scroll-reader .epub-container::-webkit-scrollbar{display:none}.column-options:disabled{opacity:.55}.offline-card{max-width:1154px;margin:20px auto 0;padding:14px 18px;border:1px solid var(--line);border-radius:7px;font-size:12px}.offline-summary{display:flex;justify-content:space-between;align-items:center;gap:16px}.offline-summary p{margin:0}.offline-card button{padding:9px 13px;border:1px solid var(--gold);border-radius:4px;background:var(--surface);font-size:12px}.offline-card .install-reader{white-space:nowrap}.offline-card details{margin-top:10px;color:var(--muted)}.offline-card summary{cursor:pointer;font-size:11px}.offline-card details p,.install-help p{line-height:1.6}.offline-card .hint{margin:10px 0}@media(max-width:1250px){.offline-card{margin-inline:24px}}@media(max-width:500px){.offline-summary{align-items:flex-start;flex-direction:column}}.header-actions{gap:8px}.toolbar-icon{display:inline-grid;place-items:center;position:relative;flex-shrink:0;width:38px;height:38px;padding:0}.library{padding-top:32px}.library-topline h1{font:28px/1.2 Georgia,serif;letter-spacing:0;margin:0}.library-topline h1 span{font:12px sans-serif;color:var(--muted);margin-left:8px}.library-topline .primary{margin:0}.utility-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid var(--line);border-radius:12px;padding:24px;background:var(--bg);color:var(--ink);font:14px/1.6 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.utility-dialog::backdrop{background:#0007}.utility-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.utility-title h2{font:24px Georgia,serif;margin:0}.utility-dialog button{padding:.6rem .9rem;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}.utility-dialog p{overflow-wrap:anywhere}@media(max-width:650px){header{height:auto;min-height:76px;gap:16px;flex-wrap:wrap;padding:16px 24px}.brand small{display:none}.header-actions{margin-left:auto;gap:6px}.toolbar-icon{width:36px;height:36px}.library-topline h1{font-size:24px}.library{padding-top:28px}}.library-footer{flex-wrap:wrap;gap:16px}.library-footer nav{display:flex;flex-wrap:wrap;gap:18px}.library-footer nav a{text-decoration:underline;text-underline-offset:3px;padding:4px 0}.header-navigation{display:flex;align-items:center;gap:20px;margin-left:auto;margin-right:24px;font-size:13px}.header-navigation a{padding:9px 12px;text-decoration:none;border-radius:6px;border:1px solid transparent}.header-navigation a:hover{background:var(--surface);text-decoration:none}.header-navigation a[aria-current=page]{color:var(--ink);background:var(--surface);border-color:var(--line);font-weight:600}a.toolbar-icon{color:inherit}@media(max-width:650px){.header-navigation{margin-right:0;gap:4px}}
