@font-face{font-family:"PT Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/714d82e54f24199a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:"PT Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/ad0b0f5eced76de2-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:"PT Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/60eee1370df18e27-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:"PT Serif";font-style:italic;font-weight:400;font-display:swap;src:url(/_next/static/media/55f9d8744277143a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:"PT Serif";font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/c39b9f522743f76b-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:"PT Serif";font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/ac2e45838ac6e189-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:"PT Serif";font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/e2e3aafd0f0382ca-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:"PT Serif";font-style:italic;font-weight:700;font-display:swap;src:url(/_next/static/media/2b419e8fb2fec4ad-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:"PT Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/42ca72de112410a0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:"PT Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3457c9d168662d42-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:"PT Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c6d85f2f9bf6fcef-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:"PT Serif";font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/886f446b96dc7734-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:"PT Serif";font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/5c5fd9d3e848a7f8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:"PT Serif";font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b0fec32b86be83d8-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:"PT Serif";font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8c6f66cf306d9ee4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:"PT Serif";font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e693e841d50dcf2f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:"PT Serif Fallback";src:local("Times New Roman");ascent-override:94.22%;descent-override:25.93%;line-gap-override:0.00%;size-adjust:110.28%}.__className_c3d3ae{font-family:"PT Serif","PT Serif Fallback"}.__variable_c3d3ae{--font-body:"PT Serif","PT Serif Fallback"}:root{color-scheme:light;--bg:#d8d2c6;--surface:#faf8f3;--surface-2:#f0ece4;--surface-3:#e5dfd6;--surface-4:#d8d2c8;--border:rgba(100,80,40,0.09);--border-md:rgba(100,80,40,0.16);--border-strong:rgba(100,80,40,0.26);--ink:#1c1710;--muted:#7a6e5a;--faint:#bdb6aa;--gold:#9e7414;--gold-light:#b8902c;--gold-dim:rgba(158,116,20,0.12);--gold-mid:rgba(158,116,20,0.22);--gold-glow:rgba(158,116,20,0.35);--paper:#f6f0e4;--paper-mid:#eae3cf;--paper-dark:#ddd5be;--paper-ink:#1a1510;--paper-muted:#5c5245;--paper-border:rgba(100,80,40,0.2);--accent:var(--gold);--accent-ink:#7a5c18;--line:var(--border-md);--panel:var(--surface-2)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body,"PT Serif"),"PT Serif",Georgia,serif;font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}.error-screen,.loading-screen{min-height:100vh;display:grid;place-items:center;padding:24px;color:var(--muted);font-size:15px;letter-spacing:.04em}.reader-error-screen{display:grid;place-items:center;min-height:80vh}.reader-error-panel{max-width:380px;text-align:center;padding:40px 32px;background:var(--surface);border:1px solid var(--border-strong);border-radius:12px}.reader-error-title{margin:0 0 8px;font-size:18px;font-weight:700;color:var(--ink)}.reader-error-body{margin:0 0 20px;font-size:14px;color:var(--muted);line-height:1.55}.reader-error-back{display:inline-block;padding:9px 18px;background:var(--surface-3);border:1px solid var(--border-strong);border-radius:7px;font-size:14px;font-weight:600;color:var(--ink);transition:background .12s}.reader-error-back:hover{background:var(--surface-4)}@keyframes shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}.skel{border-radius:4px;background:linear-gradient(90deg,var(--surface-3) 25%,var(--surface-2) 50%,var(--surface-3) 75%);background-size:1200px 100%;animation:shimmer 1.6s linear infinite}.skel-sm{height:14px;width:80px}.skel-title{height:18px;width:180px}.skel-line{height:15px;width:100%;margin-bottom:18px}.skel-short{width:62%}.reader-skeleton-topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 0 24px;gap:16px}.reader-skeleton-spread{pointer-events:none}.reader-skeleton-col{padding:32px 28px}.app-shell{min-height:100vh;padding:24px 18px 108px}.reader-shell{padding-bottom:100px}.app-nav{position:fixed;left:50%;bottom:18px;z-index:40;transform:translateX(-50%);display:flex;justify-content:center;gap:3px;min-height:52px;padding:5px;background:rgba(250,248,243,.97);border:1px solid var(--border-strong);box-shadow:0 8px 32px rgba(0,0,0,.14),0 2px 8px rgba(0,0,0,.08);backdrop-filter:blur(20px)}.app-nav,.nav-link{align-items:center;border-radius:999px}.nav-link{display:inline-flex;gap:7px;min-height:42px;padding:0 18px;color:var(--muted);font-size:14px;font-weight:600;letter-spacing:.03em;transition:color .12s,background .12s}.nav-link.active,.nav-link:hover{background:var(--surface-3);color:var(--ink)}.nav-link.active{color:var(--gold-light)}.learning-shell,.library-shell{max-width:1220px;margin:0 auto}.page-head{display:flex;align-items:end;justify-content:space-between;gap:18px;min-height:118px;padding:10px 0 24px;border-bottom:1px solid var(--border-md)}.page-head p{margin:0;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.page-head h1{margin:6px 0 0;font-size:clamp(34px,5vw,58px);line-height:1;letter-spacing:-.01em}.page-head>span{color:var(--muted);font-size:13px;font-weight:600}.library-hero{display:flex;align-items:end;justify-content:space-between;gap:18px;min-height:200px;padding:32px 0 28px;border-bottom:1px solid var(--border-md)}.book-card-body p,.detail-summary>p:first-child,.library-hero p{margin:0;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.library-hero h1{max-width:680px;margin:10px 0 0;font-size:clamp(40px,6.5vw,80px);line-height:.93;letter-spacing:-.02em}.reader-back,.reader-tool-button{height:40px;padding:0 16px;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface-3);color:var(--ink);font-size:14px;font-weight:600;letter-spacing:.02em;transition:background .12s,border-color .12s}.reader-back:hover,.reader-tool-button:hover{background:var(--surface-4);border-color:var(--border-strong)}.library-section{padding:28px 0 10px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}.section-heading h2{margin:0;font-size:24px;letter-spacing:-.01em}.section-heading span{color:var(--muted);font-size:13px}.library-add-more{display:flex;justify-content:center;padding:32px 0 8px}.library-add-more-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface);color:var(--muted);font-size:14px;font-weight:600;transition:background .12s,color .12s,border-color .12s}.library-add-more-btn:hover{background:var(--surface-3);color:var(--ink);border-color:var(--border-strong)}.book-grid,.continue-row,.shelf-row{display:grid;gap:16px}.continue-row{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.shelf-row{display:flex;overflow-x:auto;padding:2px 2px 14px;scroll-snap-type:x proximity;scrollbar-width:none}.shelf-row::-webkit-scrollbar{display:none}.shelf-row .book-card{width:min(380px,78vw);flex:0 0 auto;scroll-snap-align:start}.book-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.book-card{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;min-height:154px;padding:14px;background:var(--surface);border:1px solid var(--border-md);border-radius:10px;box-shadow:0 8px 28px rgba(0,0,0,.28);transition:border-color .14s,box-shadow .14s}.book-card:hover{border-color:var(--border-strong);box-shadow:0 12px 40px rgba(0,0,0,.4)}.book-card-large{grid-template-columns:130px minmax(0,1fr);min-height:200px}.book-grid .book-card{grid-template-columns:1fr;grid-template-rows:220px auto;gap:0;padding:0;min-height:0;overflow:hidden}.book-grid .book-card .book-cover{border-radius:10px 10px 0 0;min-height:0;height:100%}.book-grid .book-card .book-card-body{padding:12px 14px 14px}.catalogue-search{display:flex;align-items:center;gap:10px;max-width:440px;margin:18px 0 4px;padding:10px 14px;background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;color:var(--muted)}.catalogue-search input{flex:1;background:transparent;border:0;outline:none;font-size:15px;color:var(--ink);min-width:0}.catalogue-search input::-moz-placeholder{color:var(--faint)}.catalogue-search input::placeholder{color:var(--faint)}.catalogue-search-clear{display:flex;align-items:center;background:none;border:none;color:var(--muted);padding:0;line-height:1;cursor:pointer}.catalogue-search-clear:hover{color:var(--ink)}.carousel-section{margin:28px 0 0}.carousel-heading{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}.carousel-heading h2{margin:0;font-size:19px;font-weight:700;letter-spacing:-.01em;color:var(--ink)}.carousel-heading span{font-size:13px;color:var(--muted)}.carousel-track{display:flex;gap:12px;overflow-x:auto;padding-bottom:12px;margin-left:-2px;padding-left:2px;scrollbar-width:none;-ms-overflow-style:none}.carousel-track::-webkit-scrollbar{display:none}.catalog-card{flex:0 0 148px;border-radius:8px;overflow:hidden;background:var(--surface);border:1px solid var(--border);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease;text-align:left;display:flex;flex-direction:column}.catalog-card:hover{transform:translateY(-4px);box-shadow:0 14px 36px rgba(0,0,0,.16);border-color:var(--border-md)}.catalog-card-cover{position:relative;height:194px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1),inset 0 -4px 16px rgba(0,0,0,.35)}.catalog-card-cover>span{font-size:54px;font-family:var(--font-body,"PT Serif"),"PT Serif",Georgia,serif;color:rgba(255,255,255,.8);text-shadow:0 2px 12px rgba(0,0,0,.5);-webkit-user-select:none;-moz-user-select:none;user-select:none}.catalog-card-read{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:6px;padding:11px 10px;background:rgba(0,0,0,.65);backdrop-filter:blur(6px);color:rgba(255,255,255,.95);font-size:13px;font-weight:600;opacity:0;transition:opacity .16s;text-decoration:none;letter-spacing:.01em}.catalog-card:hover .catalog-card-read{opacity:1}.catalog-card-owned-badge,.catalog-card-readable-badge{position:absolute;top:9px;right:9px;padding:3px 7px;background:rgba(0,0,0,.55);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.18);border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.88)}.catalog-card-owned-badge{border-color:rgba(255,255,255,.1);color:rgba(255,255,255,.55)}.catalog-card-body{padding:10px 11px 13px;flex:1;display:flex;flex-direction:column;gap:3px}.catalog-card-author{margin:0;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catalog-card-title{margin:0;font-size:13px;font-weight:700;color:var(--ink);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.catalog-card-length{margin:0;font-size:11px;color:var(--faint)}.book-cover{position:relative;width:100%;min-height:126px;display:grid;place-items:center;border:0;border-radius:7px;color:rgba(255,255,255,.9);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),inset 0 -3px 12px rgba(0,0,0,.3)}.book-cover span{font-size:38px;font-family:var(--font-body,"PT Serif"),"PT Serif",Georgia,serif;text-shadow:0 2px 8px rgba(0,0,0,.4)}.cover-green{background:linear-gradient(145deg,#0d3320,#1a5c42)}.cover-blue{background:linear-gradient(145deg,#0f1f3d,#163052)}.cover-red{background:linear-gradient(145deg,#3d0f0f,#6b1515)}.cover-amber{background:linear-gradient(145deg,#2d1a06,#5c3810)}.cover-slate{background:linear-gradient(145deg,#1a2030,#2a3348)}.cover-plum{background:linear-gradient(145deg,#1e0a2e,#3a1255)}.book-card-body{min-width:0;display:flex;flex-direction:column}.book-title-row,.detail-title-row{display:flex;align-items:start;justify-content:space-between;gap:10px}.book-card-body h3{min-width:0;margin:5px 0 2px;font-size:19px;line-height:1.2;letter-spacing:-.01em}.language-code-badge,.language-flag{flex:0 0 auto;margin-top:7px}.language-flag{width:28px;height:18px;overflow:hidden;border:1px solid rgba(255,245,225,.15);border-radius:2px;box-shadow:0 1px 3px rgba(0,0,0,.3)}.language-flag span{display:block;width:100%;height:100%}.flag-ru span{background:linear-gradient(180deg,#ffffff 0 33.333%,#1d4ed8 33.333% 66.666%,#dc2626 66.666% 100%)}.flag-fr span{background:linear-gradient(90deg,#1d4ed8 0 33.333%,#ffffff 33.333% 66.666%,#dc2626 66.666% 100%)}.flag-es span{background:linear-gradient(180deg,#b91c1c 0 25%,#facc15 25% 75%,#b91c1c 75% 100%)}.language-code-badge{min-width:34px;padding:3px 6px;border:1px solid var(--border-md);border-radius:4px;background:var(--surface-3);color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;text-align:center}.book-card-body>span{color:var(--muted);font-size:13px}.book-meta-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.book-meta-row small{padding:3px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.04em}.progress-shell{height:3px;margin:auto 0 12px;background:var(--surface-3);border-radius:999px;overflow:hidden}.progress-shell div{height:100%;background:var(--gold)}.book-actions{margin-top:auto}.book-actions a,.book-actions button,.detail-primary{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;padding:0 14px;border:1px solid transparent;background:var(--gold);color:#0e0c0a;border-radius:6px;font-size:14px;font-weight:700;letter-spacing:.02em;transition:background .12s}.book-actions a:hover,.book-actions button:hover,.detail-primary:not(.detail-remove):hover{background:var(--gold-light)}.book-actions button:disabled,.detail-primary:disabled,.detail-secondary{background:var(--surface-3);border-color:var(--border-md);color:var(--muted)}.detail-remove{background:var(--surface-3);border-color:var(--border-strong);color:var(--muted)}.detail-remove:hover{background:#f5e8e8;border-color:#c9a0a0;color:#7a2020}.detail-sample{margin:10px 0 0;padding:10px 14px;border-left:3px solid var(--border-strong);font-family:var(--font-body,"PT Serif"),"PT Serif",Georgia,serif;font-size:17px;font-style:italic;color:var(--ink);line-height:1.55;background:var(--surface-2);border-radius:0 6px 6px 0}.browse-lane{margin-top:24px}.browse-lane h3{margin:0 0 12px;font-size:17px;font-weight:600;color:var(--muted);letter-spacing:.04em}.detail-backdrop{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.72);backdrop-filter:blur(6px)}.book-detail{position:relative;width:min(940px,100%);display:grid;grid-template-columns:220px minmax(0,1fr) 220px;gap:26px;padding:28px;background:var(--surface);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 40px 120px rgba(0,0,0,.7)}.detail-close{position:absolute;top:14px;right:14px;display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid var(--border-md);border-radius:6px;background:var(--surface-3);color:var(--muted);transition:background .12s,color .12s}.detail-close:hover{background:var(--surface-4);color:var(--ink)}.detail-cover{min-height:300px}.detail-summary h2{min-width:0;margin:10px 0 4px;font-size:36px;line-height:1.1;letter-spacing:-.01em}.detail-title-row .language-code-badge,.detail-title-row .language-flag{margin-top:15px}.detail-summary>span{color:var(--muted);font-size:14px}.detail-summary>p:not(:first-child){margin-top:20px;line-height:1.7;color:var(--ink);opacity:.85}.mood-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.mood-row span{padding:5px 10px;background:var(--surface-3);border:1px solid var(--border-md);border-radius:999px;font-size:12px;color:var(--muted)}.mode-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.mode-list span{padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--muted);font-size:12px;font-weight:600}.detail-stats{display:flex;flex-direction:column;justify-content:space-between;gap:16px}.detail-stats dl{display:grid;gap:14px;margin:0}.detail-stats div{padding-bottom:12px;border-bottom:1px solid var(--border)}.detail-stats dt{color:var(--muted);font-size:12px;letter-spacing:.04em}.detail-stats dd{margin:3px 0 0;font-weight:700;font-size:15px}.reader-shell{max-width:1440px;margin:0 auto}.topbar{min-height:76px;display:flex;justify-content:space-between;gap:16px}.reader-topbar,.topbar{align-items:center;border-bottom:1px solid var(--border-md)}.reader-topbar{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:18px;min-height:72px}.reader-topbar p{margin:0;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.reader-topbar h1{margin:3px 0 0;font-size:24px;letter-spacing:-.01em}.reader-page-position{display:block;margin-top:4px;font-size:11px;font-weight:600;letter-spacing:.07em;color:var(--faint);text-transform:uppercase}.reader-back,.reader-tool-button{display:inline-flex;align-items:center;gap:8px}.topbar p,.topbar span{margin:0;color:var(--muted);font-size:13px}.topbar h1{margin:3px 0;font-size:24px;line-height:1.1;letter-spacing:-.01em}.collection-list h3,.feedback-bar,.panel-title,.popup-actions,.popup-head,.rights-badge,.segmented-control,.topbar-actions{display:flex;align-items:center}.topbar-actions{gap:10px}.rights-badge{display:flex;align-items:center;gap:6px;height:28px;padding:0 9px;border:1px solid var(--border);background:transparent;color:var(--faint);border-radius:6px;font-size:11px;font-weight:600;letter-spacing:.04em;cursor:default}.segmented-control{display:flex;align-items:center;border:1px solid var(--border-md);background:var(--surface-2);border-radius:7px;padding:3px;gap:2px}.icon-button,.segmented-control button{display:inline-grid;place-items:center;width:34px;height:30px;border:0;background:transparent;color:var(--muted);border-radius:5px;transition:background .12s,color .12s}.icon-button:hover,.segmented-control button:hover{color:var(--ink)}.segmented-control button.active{background:var(--surface-4);color:var(--ink);box-shadow:0 1px 4px rgba(0,0,0,.3)}.book-spread,.reader-lines,.reader-pages{display:grid;gap:16px}.book-spread{margin-top:22px;padding-bottom:80px}.reader-paragraph-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);-moz-column-gap:clamp(30px,4.5vw,64px);column-gap:clamp(30px,4.5vw,64px);row-gap:12px;align-content:start;height:clamp(600px,calc(100vh - 180px),92vh);min-height:66vh;overflow:hidden;padding:clamp(28px,3vw,48px) clamp(32px,4vw,56px);background:var(--paper);border:1px solid var(--paper-border);border-radius:6px;box-shadow:0 2px 6px rgba(0,0,0,.08),0 10px 36px rgba(0,0,0,.16);background-image:linear-gradient(90deg,transparent calc(50% - .5px),rgba(160,140,100,.18) calc(50% - .5px),rgba(160,140,100,.18) calc(50% + .5px),transparent calc(50% + .5px))}.reader-paragraph-page .page-label{margin-bottom:20px}.reader-line-cell,.reader-line-cell.source-page,.reader-line-cell.translation-page{min-height:0;padding:0;border:0;background:transparent;box-shadow:none}.reader-line-cell.source-page,.reader-line-cell.translation-page{border-radius:0}.reader-line-cell p{margin:0;font-family:var(--font-body,"PT Serif"),"PT Serif",Georgia,serif;font-size:20px;line-height:1.62;color:var(--paper-ink)}.book-spread.line-mode .reader-paragraph-pair{grid-template-columns:1fr}.book-spread.line-mode .reader-paragraph-page{grid-template-columns:1fr;row-gap:0}.page-label{display:flex;align-items:center;gap:7px;margin-bottom:22px;font-family:Georgia,Times New Roman,serif;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.page-label,.reader-line-cell.translation-page p{color:var(--paper-muted)}.paragraph-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:stretch}.source-page,.translation-page{min-height:52vh;background:var(--paper);border:1px solid var(--paper-border);border-radius:6px;padding:clamp(22px,3vw,44px);box-shadow:0 16px 50px rgba(0,0,0,.4)}.reader-paragraph-pair .source-page p,.reader-paragraph-pair .translation-page p{margin:0 0 18px;font-family:var(--font-body,"PT Serif"),"PT Serif",Georgia,serif;font-size:21px;line-height:1.88;color:var(--paper-ink)}.reader-line-cell.translation-page p,.translation-page p{color:var(--paper-muted)}.reader-lines .paragraph-row{grid-template-columns:1fr}.reader-lines .source-page,.reader-lines .translation-page{min-height:auto}.page-turner{display:flex;gap:10px;width:-moz-fit-content;width:fit-content;margin:32px auto 0;padding:6px;background:rgba(250,248,243,.97);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.12)}.page-turner,.page-turner button{align-items:center;justify-content:center}.page-turner button{display:inline-flex;width:36px;height:36px;padding:0;border:1px solid var(--border-strong);background:var(--surface-3);color:var(--ink);border-radius:6px;transition:background .12s,border-color .12s}.page-turner button:hover{background:var(--surface-4)}.page-turner button:disabled{cursor:not-allowed;background:var(--surface-2);border-color:var(--border);color:var(--faint)}.page-turner span{min-width:88px;color:var(--muted);font-size:13px;font-weight:500;text-align:center;letter-spacing:.03em}.reader-token{display:inline;border:0;padding:1px 3px;margin:0 -1px;background:transparent;color:inherit;font-family:inherit;font-size:inherit;line-height:inherit;letter-spacing:0;transition:background 80ms}.reader-token,.reader-token.is-clickable{border-radius:3px}.reader-token.is-clickable:hover{background:var(--gold-mid);cursor:pointer}.reader-token.token-hot,.reader-token:hover{background:var(--gold-mid);border-radius:3px}.translation-hot{background:rgba(196,162,74,.22);border-radius:3px;box-shadow:0 0 0 2px rgba(196,162,74,.22)}.translation-token-chip{display:block;width:-moz-fit-content;width:fit-content;margin-top:10px;padding:5px 9px;font-family:Georgia,Times New Roman,serif;font-size:13px;line-height:1.25;color:var(--paper-ink);background:rgba(196,162,74,.12);border:1px solid rgba(196,162,74,.3);border-radius:6px}.morpheme{font-weight:inherit}.case-ending{padding:0 1px;border-radius:2px}.case-nominative{color:inherit;box-shadow:none}.case-accusative{color:#b03030}.case-genitive{color:#1a7345}.case-dative{color:#1560a0}.case-instrumental{color:#6430c0}.case-prepositional{color:#b85010}.case-ambiguous{color:#806010;background:transparent;box-shadow:inset 0 -2px 0 rgba(200,160,20,.5)}.prefix-box{padding:0 2px;border-radius:3px;background:rgba(180,160,120,.18);box-shadow:inset 0 0 0 1px rgba(120,100,60,.4);color:var(--paper-ink)}.signpost-perfective{font-weight:800;box-shadow:inset 0 -2.5px 0 rgba(88,140,110,.38)}.signpost-imperfective{display:inline-block;font-style:normal;transform:skew(-7deg);transform-origin:bottom left;box-shadow:inset 0 -2.5px 0 rgba(196,140,60,.38)}.signpost-nominative:before{content:"[";color:var(--paper-muted);opacity:.5}.signpost-nominative:after{content:"]";color:var(--paper-muted);opacity:.5}.signpost-gender-masculine{text-decoration-color:rgba(30,100,200,.55)}.signpost-gender-feminine,.signpost-gender-masculine{text-decoration-line:underline;text-decoration-thickness:2px;text-underline-offset:5px}.signpost-gender-feminine{text-decoration-color:rgba(190,60,120,.55)}.signpost-gender-neuter{text-decoration-line:underline;text-decoration-color:rgba(200,100,20,.55);text-decoration-thickness:2px;text-underline-offset:5px}.workspace-grid{display:grid;grid-template-columns:minmax(248px,320px) minmax(0,1fr);gap:18px;margin-top:18px}aside{display:flex;flex-direction:column;gap:14px}.reader-panel{background:var(--surface);border:1px solid var(--border-md);border-radius:10px;box-shadow:0 8px 28px rgba(0,0,0,.28)}.bank-panel,.settings-panel{padding:14px}.panel-title{gap:9px;justify-content:space-between;margin-bottom:12px}.panel-title h2{flex:1;margin:0;font-size:15px;font-weight:600}.settings-grid{display:grid;gap:8px}.toggle-row{display:flex;align-items:center;gap:9px;min-height:30px;color:var(--ink);font-size:13px}.toggle-row input{width:16px;height:16px;accent-color:var(--gold)}.popup-shell{position:fixed;right:22px;bottom:92px;width:min(420px,calc(100vw - 32px));max-height:min(580px,calc(100vh - 120px));overflow-y:auto;background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;padding:16px;box-shadow:0 24px 80px rgba(0,0,0,.7),0 0 0 1px rgba(255,245,225,.04);z-index:10}.drawer-backdrop,.popup-backdrop{position:fixed;inset:0;border:0;background:transparent}.popup-backdrop{z-index:9}.drawer-backdrop{z-index:24;background:rgba(0,0,0,.45);backdrop-filter:blur(3px)}.popup-head{justify-content:space-between;gap:12px}.popup-head strong{display:block;font-size:22px;letter-spacing:-.01em;color:var(--ink)}.popup-head span{color:var(--muted);font-size:13px}.popup-word{display:block;font-size:24px;font-weight:700;letter-spacing:-.01em;color:var(--ink);line-height:1.15}.popup-sub{display:block;margin-top:3px;color:var(--muted);font-size:13px;font-weight:400;letter-spacing:.01em}.popup-meaning{margin:12px 0 4px;padding:12px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:7px}.popup-gloss{margin:0;font-size:16px;font-weight:600;color:var(--ink);line-height:1.4}.popup-dict{margin:5px 0 0;font-size:13px;color:var(--muted);line-height:1.45}.popup-note{margin:6px 0 0;font-size:12px;color:var(--muted);font-style:italic;line-height:1.4}.popup-detail{margin:8px 0;border:1px solid var(--border);border-radius:7px;overflow:hidden}.popup-detail-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:9px 12px;background:var(--surface-2);border:0;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);transition:background .12s}.popup-detail-toggle:hover{background:var(--surface-3);color:var(--ink)}.popup-detail-body{padding:10px 12px 12px;background:var(--surface);border-top:1px solid var(--border)}.chevron{transition:transform .2s ease;flex-shrink:0}.chevron.open{transform:rotate(180deg)}.dictionary-box{margin:12px 0;padding:12px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:7px}.dictionary-box strong{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}.word-form-grid{display:grid;gap:8px;margin:8px 0 0}.word-form-grid div{display:grid;grid-template-columns:116px minmax(0,1fr);gap:10px}.word-form-grid dd,.word-form-grid dt{margin:0;line-height:1.4}.word-form-grid dt{color:var(--muted);font-size:12px;font-weight:600}.dictionary-box p,.word-form-grid dd{color:var(--ink);font-size:14px}.dictionary-box p{margin:5px 0 0;line-height:1.5}.dictionary-box small{display:block;margin-top:7px;color:var(--muted);font-size:12px;line-height:1.4}.compact-box{margin-top:-4px}.span-list{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.span-pill{padding:4px 9px;background:var(--gold-dim);border:1px solid rgba(196,162,74,.25);border-radius:999px;font-size:12px;font-weight:600;color:var(--gold-light);letter-spacing:.03em}.explanation{margin:12px 0;padding:12px 14px;background:var(--surface-2);border-left:3px solid var(--gold);border-radius:0 6px 6px 0}.explanation strong{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-light);margin-bottom:4px}.explanation p{margin:6px 0;line-height:1.55;font-size:14px;color:var(--ink)}.empty-state,.explanation small,.popup-sentence{color:var(--muted)}.prefix-explanation{border-left-color:var(--muted)}.explain-choice-box{margin:12px 0;padding:12px 14px;background:var(--surface-2);border:1px solid var(--border-md);border-radius:7px}.explain-choice-box strong{display:block;margin-bottom:9px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.explain-choice-box div{display:flex;flex-wrap:wrap;gap:7px}.explain-choice-box button{height:30px;padding:0 11px;border:1px solid var(--border-md);background:var(--surface-3);border-radius:999px;color:var(--ink);font-size:13px;transition:background .12s,border-color .12s}.explain-choice-box button:hover{background:var(--surface-4);border-color:var(--border-strong)}.popup-actions{flex-wrap:wrap;gap:8px;margin-top:4px}.popup-actions button{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 13px;border:1px solid var(--border-strong);background:var(--surface-3);color:var(--ink);border-radius:6px;font-size:13px;font-weight:600;transition:background .12s,border-color .12s}.popup-actions button:hover{background:var(--surface-4)}.popup-actions button:disabled{opacity:.5;cursor:not-allowed}.popup-sentence{margin:12px 0 0;font-family:var(--font-body,"PT Serif"),"PT Serif",Georgia,serif;font-size:18px;line-height:1.6}.signpost-drawer{position:fixed;top:0;right:0;z-index:25;width:min(440px,100vw);height:100vh;overflow:auto;padding:20px;background:var(--surface);border-left:1px solid var(--border-strong);box-shadow:-30px 0 90px rgba(0,0,0,.55);transform:translateX(105%);transition:transform .2s ease;scrollbar-width:thin;scrollbar-color:var(--surface-4) transparent}.signpost-drawer.open{transform:translateX(0)}.drawer-head,.drawer-head>div{display:flex;align-items:center}.drawer-head{justify-content:space-between;gap:12px;margin-bottom:20px}.drawer-head>div{gap:10px}.drawer-head h2{margin:0;font-size:22px;letter-spacing:-.01em}.drawer-count{margin-left:auto;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.06em}.signpost-primer{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.primer-item{display:flex;align-items:center;gap:9px;min-height:42px;padding:9px 10px;background:var(--surface-2);border:1px solid var(--border-md);border-radius:7px;color:var(--muted);font-size:12px}.feature-sample,.primer-sample{display:inline-grid;place-items:center;flex:0 0 auto;min-width:30px;height:28px;font-family:var(--font-body,"PT Serif"),"PT Serif",Georgia,serif;font-size:19px;line-height:1}.signpost-group{padding:8px 0;border-top:1px solid var(--border)}.signpost-group-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:52px;padding:8px 0;border:0;background:transparent;color:var(--ink);text-align:left;transition:color .12s}.signpost-group-toggle:hover{color:var(--gold-light)}.signpost-group-toggle small,.signpost-group-toggle span,.signpost-group-toggle strong{display:block}.signpost-group-toggle strong{font-size:15px;font-weight:600}.signpost-group-toggle small{margin-top:3px;color:var(--muted);font-size:12px;line-height:1.35}.signpost-group-toggle svg{flex:0 0 auto;color:var(--muted);transition:transform .16s ease}.signpost-group.expanded .signpost-group-toggle svg{transform:rotate(180deg)}.signpost-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.signpost-group h3{margin:0;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.signpost-group p{margin:4px 0 12px;color:var(--muted);font-size:13px;line-height:1.5}.mini-actions{display:flex;gap:6px}.mini-actions button{height:27px;padding:0 9px;border:1px solid var(--border-md);background:var(--surface-2);border-radius:5px;color:var(--muted);font-size:12px;transition:background .12s,color .12s}.mini-actions button:hover{background:var(--surface-3);color:var(--ink)}.signpost-card-grid{display:grid;gap:7px}.signpost-card{display:grid;grid-template-columns:18px 36px minmax(0,1fr);align-items:center;gap:9px;min-height:58px;padding:9px;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);transition:border-color .12s,background .12s}.signpost-card.enabled{background:var(--surface-3);border-color:var(--border-md)}.signpost-card input{width:16px;height:16px;accent-color:var(--gold)}.signpost-card small,.signpost-card strong{display:block}.signpost-card strong{font-size:13px;font-weight:600}.signpost-card small{margin-top:2px;color:var(--muted);font-size:12px;line-height:1.3}.feature-sample.aspect-perfective{font-weight:800;box-shadow:inset 0 -3px 0 rgba(100,180,140,.45)}.feature-sample.aspect-imperfective{font-style:normal;transform:skew(-7deg);box-shadow:inset 0 -3px 0 rgba(220,150,70,.45)}.feature-sample.case-nominative:before{content:"[";color:var(--muted)}.feature-sample.case-nominative:after{content:"]";color:var(--muted)}.feature-sample.gender-masculine{text-decoration-color:rgba(80,150,240,.65)}.feature-sample.gender-feminine,.feature-sample.gender-masculine{text-decoration-line:underline;text-decoration-thickness:2px;text-underline-offset:4px}.feature-sample.gender-feminine{text-decoration-color:rgba(230,100,160,.65)}.feature-sample.gender-neuter{text-decoration-line:underline;text-decoration-color:rgba(230,140,40,.65);text-decoration-thickness:2px;text-underline-offset:4px}.toast{position:fixed;right:22px;bottom:96px;z-index:40;max-width:360px;padding:11px 16px;background:var(--surface-3);border:1px solid var(--border-strong);color:var(--gold-light);border-radius:8px;font-size:14px;font-weight:600;box-shadow:0 20px 56px rgba(0,0,0,.55)}.learning-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}.learning-stats article{min-height:96px;padding:18px;background:var(--surface);border:1px solid var(--border-md);border-radius:10px;box-shadow:0 6px 24px rgba(0,0,0,.25)}.learning-stats span{display:block;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.learning-stats strong{display:block;margin-top:8px;font-size:36px;line-height:1;letter-spacing:-.02em}.learning-list-grid,.learning-review-grid{display:grid;gap:16px;margin-top:16px}.learning-review-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.learning-list-grid{grid-template-columns:minmax(0,1fr) 290px}.learning-panel{min-height:360px;padding:18px;background:var(--surface);border:1px solid var(--border-md);border-radius:10px;box-shadow:0 6px 24px rgba(0,0,0,.25)}.learning-group{margin-top:18px}.learning-group h3{display:flex;justify-content:space-between;gap:8px;margin:0 0 8px;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.learning-group h3 span{color:var(--muted);font-size:13px;font-weight:400;letter-spacing:0;text-transform:none}.srs-gate{padding:14px;margin-bottom:14px;background:var(--gold-dim);border-left:3px solid var(--gold);border-radius:0 6px 6px 0}.srs-gate p{margin:5px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.srs-card{display:grid;gap:12px;margin-bottom:14px;padding:16px;background:var(--surface-2);border:1px solid var(--border-md);border-radius:8px}.primary-card{min-height:260px;align-content:center}.srs-card h3{margin:0;font-size:15px;font-weight:600;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.srs-front{display:block;font-family:var(--font-body,"PT Serif"),"PT Serif",Georgia,serif;font-size:38px;line-height:1.1;letter-spacing:-.01em}.srs-back small,.srs-back span{display:block;color:var(--muted)}.srs-back p{margin:6px 0;font-size:20px}.srs-back small{line-height:1.5;font-size:13px}.srs-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.srs-actions button{height:36px;padding:0 14px;border:1px solid var(--border-md);border-radius:6px;background:var(--surface-3);color:var(--ink);font-size:14px;font-weight:600;transition:background .12s,border-color .12s}.srs-actions button:hover{background:var(--surface-4)}.srs-actions button:first-child{border-color:rgba(160,60,60,.35);color:#b03030}.srs-actions button:first-child:hover{background:rgba(160,60,60,.1)}.srs-actions button:last-child{border-color:rgba(196,162,74,.4);color:var(--gold-light)}.srs-actions button:last-child:hover{background:var(--gold-dim)}.reveal-button{height:36px;padding:0 16px;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface-3);color:var(--ink);font-size:14px;font-weight:600;transition:background .12s}.reveal-button:hover{background:var(--surface-4)}.vault-list{display:grid;gap:8px;max-height:620px;overflow:auto;padding-right:4px;scrollbar-width:thin;scrollbar-color:var(--surface-4) transparent}.vault-search{width:100%;height:38px;margin-bottom:12px;padding:0 11px;border:1px solid var(--border-md);border-radius:6px;background:var(--surface-2);color:var(--ink);outline:0;transition:border-color .12s}.vault-search:focus{border-color:var(--gold)}.secondary-action{height:36px;margin-top:12px;padding:0 14px;border:1px solid var(--border-strong);border-radius:6px;background:var(--surface-3);color:var(--ink);font-size:14px;font-weight:600;transition:background .12s}.secondary-action:hover{background:var(--surface-4)}.collection-columns{display:grid;gap:16px}.collection-columns h3{display:flex;gap:7px;margin:0 0 8px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.collection-list{display:grid;gap:8px}.entry-card{padding:11px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);transition:border-color .12s}.entry-card:hover{border-color:var(--border-md)}.entry-card span,.entry-card strong{display:block}.entry-card strong{font-size:15px}.entry-card span{margin-top:1px}.entry-card p,.entry-card span{color:var(--muted);font-size:12px}.entry-card p{margin:7px 0 0;line-height:1.45}.games-panel{display:flex;flex-direction:column;gap:10px}.games-panel button{height:40px;border:1px solid var(--border-md);border-radius:6px;background:var(--surface-2);color:var(--muted);font-size:14px;transition:background .12s,color .12s}.games-panel button:hover{background:var(--surface-3);color:var(--ink)}.feedback-bar{position:fixed;left:18px;right:18px;bottom:18px;gap:8px;padding:10px;background:rgba(250,248,243,.97);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.1);backdrop-filter:blur(16px);z-index:9}.feedback-bar button{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 13px;border:1px solid var(--border-strong);background:var(--surface-3);color:var(--ink);border-radius:6px;font-size:13px;font-weight:600;transition:background .12s}.feedback-bar button:hover{background:var(--surface-4)}.feedback-bar input,.feedback-bar select{height:36px;border:1px solid var(--border-md);border-radius:6px;background:var(--surface-2);color:var(--ink);outline:0;transition:border-color .12s}.feedback-bar input:focus,.feedback-bar select:focus{border-color:var(--gold)}.feedback-bar select{width:142px;padding:0 8px}.feedback-bar input{min-width:0;flex:1;padding:0 10px}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:980px){.book-detail,.learning-list-grid,.learning-review-grid,.learning-stats,.paragraph-row,.reader-paragraph-pair,.reader-topbar,.workspace-grid{grid-template-columns:1fr}aside{order:2}.reader-topbar{align-items:start;padding:12px 0}}@media (max-width:640px){.app-shell{padding:12px 12px 118px}.reader-shell{padding-bottom:120px}.topbar{align-items:flex-start;flex-direction:column;padding-bottom:12px}.topbar-actions{width:100%;justify-content:space-between}.source-page,.translation-page{padding:18px}.page-turner{width:auto}.reader-paragraph-page{height:auto;min-height:62vh;overflow:visible}.source-page p,.translation-page p{font-size:18px;line-height:1.78}.feedback-bar{align-items:stretch;flex-direction:column}.feedback-bar button,.feedback-bar input,.feedback-bar select{width:100%}.library-hero,.page-head,.topbar-actions{align-items:stretch;flex-direction:column}.page-head h1{font-size:42px}.book-grid,.continue-row{grid-template-columns:1fr}.shelf-row{display:flex;overflow-x:auto}.shelf-row .book-card{width:auto}.app-nav{left:12px;right:12px;transform:none}.nav-link{flex:1;justify-content:center;padding:0 10px}.book-card,.book-card-large{grid-template-columns:92px minmax(0,1fr)}.book-grid .book-card{grid-template-columns:1fr}.popup-shell{left:0;right:0;bottom:0;width:100%;max-height:82vh;border-radius:16px 16px 0 0;border-left:0;border-right:0;border-bottom:0;padding-top:20px}.popup-shell:before{content:"";display:block;width:36px;height:4px;background:var(--border-strong);border-radius:999px;margin:-10px auto 14px}.learning-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}