@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-ext-wght-normal-CGKlZYBf.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-wght-normal-DLqwHbi6.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-ext-wght-normal-e3e57Shi.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-wght-normal-CO1l-giJ.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-vietnamese-wght-normal-LcSrhZ7T.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-ext-wght-normal-BnEbWgdZ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-wght-normal-DLxlUchJ.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-ext-wght-italic-DrMGjC4f.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-wght-italic-C2hF6zFe.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-ext-wght-italic-f6xT_0ee.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-wght-italic-9BAkQpca.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-vietnamese-wght-italic-LyOFdRXZ.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-ext-wght-italic-CC1SwlwQ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-wght-italic-Bm_GJfSc.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-normal-BrHNak5F.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-normal-BbWidj28.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-italic-D-qjh7ci.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-italic-OoEIrRJc.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-700-normal-GZI4o3u0.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-700-normal-BK6Glc0m.woff)format("woff")}:root{--paper:#f3f5f0;--paper-2:#e8ece4;--card:#fbfcf9;--ink:#1e2738;--ink-2:#4b5567;--ink-3:#626a79;--line:#cfd6cb;--moss:#3d6a4c;--moss-soft:#dbe7dc;--plank:#b9c2b4;--rust:#a8542c;--rust-soft:#f5e3d8;--shimmer:#fff6;--f-read:"Literata Variable", "Literata", Georgia, "Times New Roman", serif;--f-ui:"Atkinson Hyperlegible", system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--paper:#121822;--paper-2:#1a2230;--card:#18202c;--ink:#e5e9e1;--ink-2:#b0b9c6;--ink-3:#8a94a3;--line:#2d3848;--moss:#8cc09c;--moss-soft:#1e3327;--plank:#3a4657;--rust:#e59a72;--rust-soft:#3a261c;--shimmer:#ffffff0f}}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--f-ui);-webkit-text-size-adjust:100%;margin:0;line-height:1.5}h1{font-family:var(--f-read);margin:0;font-weight:500}.app{max-width:34rem;padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));margin:0 auto}.stack{gap:12px;display:grid}.muted{color:var(--ink-3);font-size:.9rem}:root{--radius:12px;--tap:48px}.screen{align-content:start;gap:20px;min-height:calc(100dvh - 32px);display:grid}.screen-centre{text-align:center;align-content:center;justify-items:center}.logo{width:88px;height:88px}.title{font-family:var(--f-read);overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;font-size:1.9rem;font-weight:500;line-height:1.2}.lede{color:var(--ink-2);font-size:1.05rem}label{gap:6px;font-size:.95rem;font-weight:700;display:grid}.input{min-height:var(--tap);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--card);width:100%;color:var(--ink);font:inherit;padding:10px 14px;font-size:1.05rem}.input:focus-visible,.btn:focus-visible,.link:focus-visible{outline:3px solid var(--moss);outline-offset:2px}.input-code{letter-spacing:.4em;text-align:center;font-variant-numeric:tabular-nums;font-size:1.6rem}.btn{min-height:var(--tap);border:1.5px solid var(--moss);border-radius:var(--radius);background:var(--moss);width:100%;color:var(--paper);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:10px 18px;font-size:1.05rem;font-weight:700;display:inline-flex}.btn-line{color:var(--ink);border-color:var(--line);background:0 0}.btn:disabled{opacity:.55;cursor:default}.link{min-height:var(--tap);color:var(--moss);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:700;text-decoration:underline;display:inline-flex}.link:disabled{color:var(--ink-3);cursor:default;text-decoration:none}.error{border-radius:var(--radius);background:var(--rust-soft);color:var(--ink);border-left:4px solid var(--rust);padding:10px 14px}.divider{color:var(--ink-3);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;font-size:.9rem;display:grid}.divider:before,.divider:after{content:"";border-top:1px solid var(--line)}.steps{text-align:left;gap:10px;margin:0;padding-left:1.4em;display:grid}.banner{z-index:10;border-radius:var(--radius);background:var(--moss-soft);align-items:center;gap:12px;margin:-4px 0 12px;padding:8px 8px 8px 14px;display:flex;position:sticky;top:0}.banner .btn{width:auto;min-height:40px;margin-left:auto}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.icon{vertical-align:-.25em;stroke:currentColor;stroke-width:1.8px;fill:none;stroke-linecap:round;stroke-linejoin:round;width:1.3em;height:1.3em}.mascot{width:96px;height:96px}.brand{text-align:center;justify-items:center;gap:8px;padding-top:24px;display:grid}.subtitle{font-family:var(--f-read);margin:0;font-size:1.25rem;font-weight:500;line-height:1.3}.notice{border-radius:var(--radius);background:var(--moss-soft);gap:12px;padding:12px 14px;display:flex}.notice .icon{stroke:var(--moss);stroke-width:2px;flex-shrink:0;margin-top:2px}.notice p{color:var(--ink-2);margin:4px 0 0;font-size:.95rem}.rows{margin:0;padding:0;list-style:none}.rows li{min-height:var(--tap);border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:8px 0;display:flex}.rows li:last-child{border-bottom:0}.grow{overflow-wrap:anywhere;flex-grow:1;min-width:0}.pill{background:var(--moss-soft);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:.875rem}.rows .muted{white-space:nowrap}a.btn{text-decoration:none}.muted-2{color:var(--ink-2)}.eyebrow{color:var(--moss);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.85rem;font-weight:700}.current-step{border-radius:var(--radius);background:var(--moss-soft);gap:10px;padding:16px;display:grid}.current-step p{margin:0}.step-no{text-align:right;width:1.2em;color:var(--ink-3);font-variant-numeric:tabular-nums;flex-shrink:0}.feedback{border-top:1px solid var(--line);padding-top:16px}.feedback p{margin:0}.next-steps li{align-items:baseline}.step-already{color:var(--ink-2);margin-top:2px;font-size:.95rem;display:block}.cover{aspect-ratio:2/3;box-sizing:border-box;object-fit:cover;background:var(--paper-2);border-radius:3px 6px 6px 3px;max-width:100%;display:block;box-shadow:inset 3px 0 #0000002e,0 2px 6px -2px #00000059}.cover-grid{width:100%}.cover-row{flex:none;width:46px}.cover-page{flex:none;width:112px}.cover-drawn{background:var(--cover-bg);color:var(--cover-ink);flex-direction:column;justify-content:space-between;gap:4px;padding:8px 7px;display:flex;overflow:hidden;container-type:inline-size}.cover-drawn.cover-row{padding:5px 4px}.cover-drawn.cover-page{padding:11px 10px}.cover-title{font-family:var(--f-read);overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;-webkit-line-clamp:5;line-clamp:5;-webkit-box-orient:vertical;font-size:11.5cqi;font-weight:600;line-height:1.12;display:-webkit-box;overflow:hidden}.cover-author{font-family:var(--f-ui);white-space:nowrap;text-overflow:ellipsis;font-size:8.5cqi;overflow:hidden}.cover-row .cover-title{-webkit-line-clamp:4;line-clamp:4;font-size:.46rem}.cover-page .cover-title{-webkit-line-clamp:6;line-clamp:6;font-size:1rem}.cover-page .cover-author{font-size:.7rem}.cover-c1{--cover-bg:#2f4858;--cover-ink:#f3e9d2}.cover-c2{--cover-bg:#b04a33;--cover-ink:#fff4e0}.cover-c3{--cover-bg:#e3b55a;--cover-ink:#2a2116}.cover-c4{--cover-bg:#6d597a;--cover-ink:#f6eef6}.cover-c5{--cover-bg:#f4f0e2;--cover-ink:#9e2a2b}.cover-c6{--cover-bg:#264653;--cover-ink:#e9f5f2}.cover-c7{--cover-bg:#8ab17d;--cover-ink:#1b2a1b}.cover-c8{--cover-bg:#1d3557;--cover-ink:#f1faee}.cover-c9{--cover-bg:#c4502f;--cover-ink:#fff}.cover-c10{--cover-bg:#3a5a40;--cover-ink:#eef3e2}.cover-c11{--cover-bg:#8f5f6a;--cover-ink:#fff8f5}.cover-c12{--cover-bg:#d9d0b4;--cover-ink:#33302a}.bar{align-items:center;gap:12px;display:flex}.bar-title{font-family:var(--f-read);margin:0;font-size:1.35rem;font-weight:500;line-height:1.2}.round-btn{border:1.5px solid var(--line);background:var(--card);width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:50%;flex:none;place-items:center;display:grid}.round-btn:focus-visible,.search-clear:focus-visible,.search-row:focus-visible,.option-card:focus-visible{outline:3px solid var(--moss);outline-offset:2px}.book-head{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.book-text{flex:11rem;gap:4px;display:grid}.book-text>*,.book-blurb>p,.book-foot p{margin:0}.book-title{font-family:var(--f-read);overflow-wrap:anywhere;font-size:1.5rem;font-weight:500;line-height:1.2}.book-title:focus{outline:none}.book-translators{color:var(--ink-2);font-size:.95rem}.book-skeleton{width:55%}.book-blurb{font-family:var(--f-read);color:var(--ink);gap:12px;margin-top:0;font-size:1.05rem;line-height:1.6;display:grid}.book-foot{border-top:1px solid var(--line);justify-items:start;gap:12px;margin-top:12px;padding-top:16px;display:grid}.book-report{color:var(--ink-2);justify-items:start;display:grid}.book-report .link{min-height:48px}.book-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.book-actions .btn{width:auto;padding-inline:24px}.book-actions .link{min-height:48px}.book-slow{align-items:center;gap:12px;display:flex}.book-slow .mascot{flex:none;width:56px;height:56px}.search-form{position:relative}.search-icon{color:var(--ink-3);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-input{text-overflow:ellipsis;min-height:52px;padding-left:calc(24px + 1.3rem);padding-right:48px}.search-input:focus-visible{border-color:var(--moss);box-shadow:0 0 0 1px var(--moss);outline:none}.search-input::-webkit-search-cancel-button{appearance:none;display:none}.search-clear{width:48px;height:48px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:50%;right:2px;transform:translateY(-50%)}.search-hint{color:var(--ink-2);gap:4px;display:grid}.search-hint p{margin:0}.search-examples{color:var(--ink-3);font-size:.95rem}.search-examples span{white-space:nowrap}.search-rows{margin:0;padding:0;list-style:none}.search-rows li{border-bottom:1px solid var(--line)}.search-rows li:last-child{border-bottom:0}.search-row{width:100%;min-height:76px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;padding:8px 0;display:flex}.search-row:disabled{opacity:.55;cursor:default}.search-text{flex:1;gap:2px;min-width:0;display:grid}.search-title{font-family:var(--f-read);font-size:1rem;line-height:1.3}.search-authors{color:var(--ink-2);font-size:.95rem}.search-ui{font-family:var(--f-ui)}.cover-ghost{aspect-ratio:2/3;box-sizing:border-box;border:1.5px dashed var(--ink-3);width:46px;color:var(--ink-3);border-radius:3px 6px 6px 3px;flex:none;place-items:center;display:grid}.cover-skeleton{background:var(--paper-2);border:0}.skeleton-line{background:var(--paper-2);border-radius:7px;height:14px;display:block}.skeleton-short{width:55%}.search-partial{border-radius:var(--radius);background:var(--paper-2);color:var(--ink-2);padding:10px 14px;font-size:.95rem}.notice-warm{background:var(--rust-soft)}.notice-warm .icon{stroke:var(--rust)}.notice-warm p{color:var(--ink);margin:0}.spinner{box-sizing:border-box;border:3px solid var(--line);border-top-color:var(--moss);border-radius:50%;flex:none;width:22px;height:22px}@media (prefers-reduced-motion:no-preference){.spinner{animation:.8s linear infinite spin}}@keyframes spin{to{transform:rotate(360deg)}}.option-card{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--card);width:100%;min-height:64px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;align-items:center;gap:14px;padding:10px 14px;display:flex}.option-card:disabled{opacity:.55;cursor:default}.option-tile{background:var(--moss-soft);width:44px;height:44px;color:var(--moss);border-radius:10px;flex:none;place-items:center;display:grid}.option-text{gap:2px;display:grid}.search-progress{background:var(--moss);opacity:.7;border-radius:1px;height:2px;position:absolute;bottom:-7px;left:12px;right:12px}@media (prefers-reduced-motion:no-preference){.search-progress{background:linear-gradient(90deg, transparent, var(--moss), transparent);background-repeat:no-repeat;background-size:40% 100%;animation:1.2s ease-in-out infinite search-progress}@keyframes search-progress{0%{background-position:-40% 0}to{background-position:140% 0}}}.search-caption{color:var(--ink-2);margin:10px 0 0;font-size:.95rem}.search-rows[aria-busy=true]{opacity:.5;transition:opacity .2s}.search-stuck{justify-items:start;gap:10px;display:grid}.search-stuck p{color:var(--ink-2);margin:0}.search-stuck .btn{width:auto}@media (prefers-reduced-motion:no-preference){.cover-skeleton,.skeleton-line{background:linear-gradient(90deg, var(--paper-2) 30%, var(--shimmer) 50%, var(--paper-2) 70%) var(--paper-2);background-size:300% 100%;animation:1.6s ease-in-out infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:0 0}}}.scan-screen{--paper:#121822;--paper-2:#1a2230;--card:#18202c;--ink:#e5e9e1;--ink-2:#b0b9c6;--ink-3:#8a94a3;--line:#2d3848;--moss:#8cc09c;--moss-soft:#1e3327;--rust:#e59a72;--rust-soft:#3a261c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;z-index:1;background:var(--paper);color:var(--ink);padding:max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom));position:fixed;inset:0;overflow-y:auto}.scan-inner{gap:20px;max-width:34rem;margin:0 auto;display:grid}.scan-camera{background:#000;border-radius:18px;height:max(200px,min(330px,45vh,458px - 8rem));position:relative;overflow:hidden}.scan-camera[hidden]{display:none}.scan-video{object-fit:cover;width:100%;height:100%;display:block}.scan-frame{border:2px solid #ffffffd9;border-radius:12px;place-items:center;height:36%;display:grid;position:absolute;top:32%;left:14%;right:14%;box-shadow:0 0 0 9999px #00000059}.scan-frame-read{border:3px solid var(--moss)}.scan-check{background:var(--moss);width:44px;height:44px;color:var(--paper);border-radius:50%;place-items:center;display:grid}.scan-check .icon{stroke-width:2.5px}.scan-text{gap:4px;display:grid}.scan-text p{margin:0}.scan-steps{gap:6px;margin:4px 0 0;padding-left:1.4em;display:grid}.scan-line{align-items:center;gap:12px;display:flex}.home-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;display:flex}.home-head .title{margin:0}.sync{display:contents}.sync-button{min-height:var(--tap);color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;align-items:center;padding:0;display:inline-flex}.sync-button:focus-visible{outline:3px solid var(--moss);outline-offset:2px;border-radius:999px}.pill-quiet{background:var(--paper-2);color:var(--ink-2);white-space:normal;box-shadow:inset 0 0 0 1px var(--line);align-items:center;gap:5px;font-size:.85rem;font-weight:700;display:inline-flex}.pill-quiet .icon{width:1.1em;height:1.1em}.sync-note{flex-basis:100%;margin:0}.dialog{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);width:min(34rem,100vw - 32px);color:var(--ink);padding:20px}.dialog::backdrop{background:#1218228c}.dialog-title{font-family:var(--f-read);margin:0 0 8px;font-size:1.4rem;font-weight:500}.dialog p{margin:0 0 20px}.btn-danger{color:var(--rust)}.search-section{gap:4px;display:grid}.search-heading{color:var(--moss);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.85rem;font-weight:700}.search-status{color:var(--ink-3);font-size:.9rem}.search-offline{color:var(--ink-2);align-items:flex-start;gap:10px;font-size:.95rem;display:flex}.search-offline .icon{flex-shrink:0;margin-top:3px}.search-offline p{margin:0}.mine{gap:12px;display:grid}.link-danger{color:var(--rust)}.error-inline{color:var(--rust);margin:0;font-size:.9rem;font-weight:700}.input-grow{width:100%}.mine-status-wrap{container-type:inline-size}.mine-status{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--card);gap:3px;padding:3px;display:flex}.mine-status button{min-height:44px;color:inherit;font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:9px;flex:auto;padding:4px 10px;font-size:.95rem}.mine-status button[aria-checked=true]{background:var(--moss);color:var(--paper);font-weight:700}@container (width<=19em){.mine-status{grid-template-columns:repeat(2,1fr);display:grid}}.mine-dates{flex-wrap:wrap;align-items:center;gap:0 8px;margin-top:-8px;display:flex}.mine-dates .link{font-size:.9rem}.mine-progress{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);gap:10px;padding:14px;display:grid}.mine-progress-line{align-items:center;gap:12px;display:flex}.mine-progress-text{font-variant-numeric:tabular-nums;flex:1;min-width:0;font-weight:700}.mine-progress-text .muted{font-weight:400}.mine-page-edit{align-items:center;gap:10px;display:flex}.mine-page-edit .input{width:7.5rem}.mine-page-edit .btn{width:auto;padding-inline:20px}.mine-meter{background:var(--paper-2);border-radius:3px;height:6px;overflow:hidden}.mine-meter i{background:var(--moss);border-radius:3px;height:100%;display:block}.mine-heading{color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase;margin:0 0 4px;font-family:inherit;font-size:.8rem;font-weight:700}.mine-own-copies{margin-top:12px}.mine-copies{border-top:1px solid var(--line)}.mine-copies>p{margin:8px 0}.mine-copy{border:0;border-bottom:1px solid var(--line);width:100%;min-height:56px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;align-items:center;gap:12px;padding:8px 0;display:flex}.mine-copy-text{flex:1;min-width:0;display:grid}.mine-chevron{color:var(--ink-3)}.mine-toast{left:12px;right:12px;bottom:max(16px, env(safe-area-inset-bottom));z-index:10;border-radius:var(--radius);background:var(--ink);max-width:34rem;color:var(--paper);align-items:center;gap:12px;margin-inline:auto;padding:8px 8px 8px 16px;display:flex;position:fixed;box-shadow:0 6px 18px -6px #00000073}@media (prefers-color-scheme:dark){.mine-toast{border:1px solid var(--line);background:var(--card);color:var(--ink)}}.mine-toast span{flex:1;min-width:0}.mine-toast button{min-height:44px;color:inherit;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 12px;font-weight:700;text-decoration:underline}.sheet{background:var(--card);width:100%;max-width:34rem;max-height:88dvh;color:var(--ink);border:0;border-radius:18px 18px 0 0;margin:auto auto 0;padding:0;overflow-y:auto}.sheet::backdrop{background:#1218228c}@media (prefers-reduced-motion:no-preference){.sheet[open]{animation:.24s cubic-bezier(.2,.8,.2,1) mine-slide-up}}@keyframes mine-slide-up{0%{transform:translateY(100%)}}.sheet-body{padding:10px 16px calc(20px + env(safe-area-inset-bottom));gap:18px;display:grid}.sheet .dialog-title{margin:0}.sheet-grab{background:var(--line);border-radius:3px;justify-self:center;width:40px;height:5px}.field-group{justify-items:start;gap:8px;display:grid}.field-label{font-size:.95rem;font-weight:700}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1.5px solid var(--line);background:var(--paper);min-height:44px;color:inherit;font:inherit;cursor:pointer;border-radius:999px;padding:8px 14px;font-size:.95rem}.chip[aria-pressed=true]{border-color:var(--moss);background:var(--moss-soft);font-weight:700}.mine-new-shelf{gap:8px;width:100%;display:grid}.mine-new-shelf-row{gap:10px;display:flex}.mine-new-shelf-row .btn{width:auto;padding-inline:20px}.sheet-foot{border-top:1px solid var(--line);justify-items:start;padding-top:8px;display:grid}.sheet .dialog-title:focus{outline:none}.app-tabs{padding-bottom:calc(6rem + env(safe-area-inset-bottom))}.app-tabs .screen{min-height:calc(100dvh - 32px - 6rem - env(safe-area-inset-bottom))}.tabbar{z-index:5;padding:6px 12px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--card);gap:4px;display:flex;position:fixed;bottom:0;left:0;right:0}.tab{border-radius:var(--radius);min-height:60px;color:var(--ink-3);font:inherit;cursor:pointer;background:0 0;border:0;flex:1;grid-template-rows:40px auto;align-content:center;place-items:center;gap:3px;font-size:.78rem;font-weight:700;display:grid}.tab:focus-visible{outline:3px solid var(--moss);outline-offset:2px}.tab .icon{vertical-align:top;width:24px;height:24px;color:inherit;margin:0}.tab-ico{border-radius:16px;place-items:center;width:56px;height:32px;display:grid}.tab[aria-current=page]{color:var(--ink)}.tab[aria-current=page] .tab-ico{background:var(--moss-soft);color:var(--moss)}.tab-fab{background:var(--moss);width:40px;height:40px;color:var(--paper);border-radius:50%;place-items:center;display:grid}.tab:has(.tab-fab){color:var(--ink-2)}@media (width>=52.5em){.tabbar{border-top:0;border-right:1px solid var(--line);flex-direction:column;align-content:start;width:6rem;padding:16px 8px;top:0;right:auto}.tab{flex:none}.app-tabs{max-width:calc(40rem + 32px);padding-left:calc(6rem + 16px);padding-bottom:max(16px, env(safe-area-inset-bottom))}.app-tabs .screen{min-height:calc(100dvh - 32px)}.app-wide{max-width:64rem}.app-tabs.app-wide{max-width:calc(70rem + 32px)}.lib-head .search-form,.lib-list{max-width:34rem}}.lib-screen{gap:14px}.lib-head{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.lib-empty{justify-items:start;gap:12px;max-width:34rem;display:grid}.lib-empty p{margin:0}.lib-empty .lede{font-family:var(--f-read);color:var(--ink);font-size:1.15rem}.lib-status{scrollbar-width:none;gap:8px;margin:0 -16px;padding:2px 16px;display:flex;overflow-x:auto}.lib-status::-webkit-scrollbar{display:none}.lib-status .chip,.lib-drop{background:var(--card);white-space:nowrap;flex:none;align-items:center;gap:6px;display:inline-flex}.lib-status .chip[aria-pressed=true]{border-color:var(--moss);background:var(--moss);color:var(--paper)}.lib-n{color:var(--ink-3);font-variant-numeric:tabular-nums}.lib-status .chip[aria-pressed=true] .lib-n{color:inherit;font-weight:400}.lib-status .lib-zero{color:var(--ink-3)}.lib-status .chip:focus-visible,.lib-drop:focus-visible,.lib-views button:focus-visible,.lib-book:focus-visible,.lib-spine:focus-visible,.lib-row:focus-visible{outline:3px solid var(--moss);outline-offset:2px}.lib-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.lib-drop[data-on=true]{border-color:var(--moss);background:var(--moss-soft);font-weight:700}.icon-caret{vertical-align:baseline;stroke-width:1.8px;width:.75em;height:.75em;color:inherit;margin:0}.lib-views{border:1.5px solid var(--line);border-radius:var(--radius);background:var(--card);gap:2px;padding:2px;display:inline-flex}.lib-views button{width:44px;height:44px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;display:grid}.lib-views button[aria-pressed=true]{background:var(--moss);color:var(--paper)}.lib-views .icon{vertical-align:top;color:inherit;margin:0;font-size:1rem}.lib-summary{color:var(--ink-2);flex-wrap:wrap;align-items:center;gap:0 10px;margin:-6px 0 0;font-size:.92rem;display:flex}.lib-none{justify-items:start;gap:4px;display:grid}.lib-none p{color:var(--ink-2);margin:0}.lib-sheet-foot{justify-items:center;gap:4px}.lib-virtual{width:100%;margin:0;padding:0;list-style:none;position:relative}.lib-row-slot{width:100%;position:absolute;top:0;left:0}.lib-covers{align-items:start;gap:12px;display:grid}.lib-book{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0 0 11px;display:block;position:relative}.lib-mark{background:var(--moss);width:24px;height:24px;color:var(--paper);box-shadow:0 0 0 2px var(--paper);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:6px;right:-5px}.lib-mark .icon{vertical-align:top;width:14px;height:14px;color:inherit;stroke-width:2.6px;margin:0}.lib-prog{background:var(--line);border-radius:2px;height:4px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.lib-prog i{background:var(--moss);height:100%;display:block}.lib-plank{border-bottom:6px solid var(--plank);border-radius:0 0 3px 3px;align-items:flex-end;gap:2px;min-height:130px;padding:0 4px;display:flex}.lib-spine{background:var(--cover-bg);color:var(--cover-ink);font-family:var(--f-read);text-align:start;text-overflow:ellipsis;white-space:nowrap;writing-mode:vertical-rl;cursor:pointer;border:0;border-radius:2px;flex:none;padding:7px 0;font-size:.72rem;font-weight:600;line-height:1;display:block;overflow:hidden;transform:rotate(180deg);box-shadow:inset -2px 0 #0000002e}.lib-row{border:0;border-bottom:1px solid var(--line);width:100%;min-height:76px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;align-items:center;gap:12px;padding:8px 0;display:flex}.lib-list{border-top:1px solid var(--line)}.lib-row-text{flex:1;min-width:0;display:grid}.lib-row-text strong{font-family:var(--f-read);font-size:1.05rem;line-height:1.25}.lib-row-text span{color:var(--ink-2);font-size:.92rem}.lib-row-text .lib-row-status{color:var(--ink-3)}.mine-hint{color:var(--ink-2);margin:0;font-size:.92rem}.mine-edition-box{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);justify-self:stretch;gap:2px;padding:12px 14px;display:grid}.mine-edition-box span{color:var(--ink-2);font-size:.92rem}.mine-found{border:1.5px solid var(--moss);border-radius:var(--radius);background:var(--moss-soft);align-items:center;gap:12px;padding:12px;display:flex}.mine-found-text{flex:1;min-width:0;display:grid}.mine-found-text b{font-family:var(--f-read);font-weight:600}.mine-found-text span{color:var(--ink-2);font-size:.92rem}.mine-notice{border-radius:var(--radius);background:var(--paper-2);margin:0;padding:12px 14px}.mine-notice p{margin:0}.edition-scan{z-index:30;position:fixed;inset:0}.shelf-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.shelf-row{border:0;border-bottom:1px solid var(--line);width:100%;min-height:60px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;align-items:center;gap:12px;padding:8px 0;display:flex}.shelf-name{flex:1;min-width:0;font-weight:700}.shelf-count{color:var(--ink-3);font-size:.92rem}.sheet-form{gap:18px;display:grid}
