@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:var(--font-sans);--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}:root{--bg0:#c9d2dc;--bg1:#e6ebf1;--bg2:#f3f5f8;--ink:#1c2430;--ink-soft:#5a6574;--wood:#6b4f3a;--wood-light:#8a6a4f;--wood-shine:#ffe6be2e;--paper:#fafbfd;--line:#1c24301a;--accent:#245bdb;--accent-soft:#245bdb1f;--shadow:0 18px 40px #1c24302e;--font-display:"Fraunces", Georgia, serif;--font-cyr-display:"Alegreya", "Times New Roman", serif;--font-sans:"Manrope", system-ui, sans-serif;--font-heading:var(--font-sans);--text-desc-size:.95rem;--text-desc-lh:1.5}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--ink);font-family:var(--font-sans);letter-spacing:.01em;font-feature-settings:"kern" 1, "liga" 1;background:radial-gradient(1200px 600px at 10% -10%, #ffffff8c, transparent 55%), radial-gradient(900px 500px at 90% 0%, #7896be47, transparent 50%), linear-gradient(180deg, var(--bg0), var(--bg1) 35%, var(--bg2));background-attachment:fixed;margin:0;font-size:1rem;line-height:1.5}p,.tagline,.muted,.drive-hint,.feat-card p,.stats-card-hint,.stats-card-label,.site-footer-brand p,.site-footer-signup-hint,.site-footer-note,.site-footer-copy,.site-footer-grid li,.feature-ribbon-head p,.price-card ul,.auth-switch,.local-hint{font-family:var(--font-sans);line-height:var(--text-desc-lh);letter-spacing:.01em}.tagline,.muted,.drive-hint,.feat-card p,.stats-card-hint,.site-footer-brand p,.site-footer-signup-hint,.site-footer-note,.feature-ribbon-head p{font-size:var(--text-desc-size);color:var(--ink-soft);font-weight:400}h1,h2,h3,.feature-ribbon-head h2,.feat-card h3,.stats-recent-head h2,.account-card h2,.auth-card h1,.account-main h1,.shelf-toolbar h1,.site-footer-grid h2{font-family:var(--font-heading);letter-spacing:-.015em}a{color:inherit;text-decoration:none}button,input{font:inherit}.shelf-page{max-width:min(1680px,100vw - 2rem);margin:0 auto;padding:2rem 1.25rem 3rem}.shelf-header{flex-direction:column;gap:.85rem;margin-bottom:1.25rem;display:flex}.shelf-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.25rem;width:100%;animation:.7s both rise;display:flex}.shelf-top-brand{flex:auto;min-width:0}.shelf-top .brand-lockup--nav{flex-wrap:nowrap;gap:.28em}.shelf-top .brand-lockup--nav .brand-latin{font-size:clamp(1.55rem,3.6vw,2.35rem)}.shelf-top .brand-lockup--nav .brand-cyr{font-size:clamp(1.5rem,3.5vw,2.25rem)}.shelf-top .brand-lockup--nav .brand-mark-icon img{width:clamp(1.7rem,3.4vw,2.4rem);height:clamp(1.7rem,3.4vw,2.4rem)}.shelf-auth-bar{flex-wrap:wrap;flex:0 auto;justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.shelf-auth-bar .lang-switch button,.shelf-auth-bar .theme-switch button{padding:.28rem .55rem;font-size:.76rem}.account-chip{border:1px solid var(--line);background:var(--btn-surface);color:var(--ink);white-space:nowrap;border-radius:999px;align-items:center;gap:.5rem;padding:.22rem .7rem .22rem .22rem;font-size:.84rem;text-decoration:none;display:inline-flex}.account-chip.is-on{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.account-chip.is-on{border-color:color-mix(in srgb, var(--accent) 40%, var(--line))}}.account-chip:hover{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.account-chip:hover{background:color-mix(in srgb, var(--ink) 6%, var(--paper))}}.user-avatar{background:var(--ink);border-radius:999px;place-items:center;display:grid;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.user-avatar{background:color-mix(in srgb, var(--ink) 14%, var(--paper))}}.user-avatar{color:var(--ink);flex-shrink:0}.user-avatar--sm{width:1.7rem;height:1.7rem;font-size:.62rem;font-weight:700}.user-avatar--lg{width:4.25rem;height:4.25rem;font-size:1.15rem;font-weight:700}.user-avatar img{object-fit:cover;width:100%;height:100%;display:block}.user-avatar-edit{justify-items:center;gap:.25rem;display:grid}.user-avatar-edit-btn{cursor:pointer;color:inherit;background:0 0;border:0;justify-items:center;gap:.3rem;padding:0;display:grid;position:relative}.user-avatar-edit-btn.is-busy{opacity:.65;cursor:wait;pointer-events:none}.user-avatar-file{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.user-avatar-err{text-align:center;max-width:14rem}.user-avatar-edit-label{color:var(--ink-soft);font-size:.72rem}.account-identity{align-items:center;gap:.85rem;min-width:0;display:flex}.shelf-header .tagline{max-width:36rem;margin:0;animation:.8s 50ms both rise}.shelf-actions{flex-wrap:wrap;align-items:center;gap:.55rem;animation:.8s .1s both rise;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(2.4rem,5vw,3.6rem);font-weight:600;line-height:1;animation:.7s both rise}.brand-link{color:inherit;text-decoration:none}.brand-lockup{color:var(--ink);flex-wrap:wrap;align-items:center;gap:.35em;line-height:1;display:inline-flex}.brand-mark-icon{color:var(--ink);flex-shrink:0;align-self:center;margin-right:.2em;display:inline-flex}.brand-mark-icon img{width:1.35rem;height:1.35rem;display:block}.brand-lockup--nav .brand-mark-icon img{width:1.55rem;height:1.55rem}.brand-lockup--hero .brand-mark-icon{margin-right:.12em}.brand-lockup--hero .brand-mark-icon img{width:clamp(2.6rem,5.2vw,3.8rem);height:clamp(2.6rem,5.2vw,3.8rem)}.brand-lockup--hero{animation:.7s both rise}.brand-lockup--hero .brand-latin{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(2.4rem,5vw,3.6rem);font-weight:600}.brand-lockup--hero .brand-cyr{font-family:var(--font-cyr-display);letter-spacing:-.02em;font-size:clamp(2.35rem,4.8vw,3.45rem);font-weight:600}.brand-lockup--nav .brand-latin{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.45rem;font-weight:600}.brand-lockup--nav .brand-cyr{font-family:var(--font-cyr-display);letter-spacing:-.02em;font-size:1.4rem;font-weight:600}.brand-sep{opacity:1;justify-content:center;align-self:center;align-items:center;width:.85em;display:inline-flex}.brand-dot{background:var(--ink);width:.28em;height:.28em;box-shadow:0 0 0 0 var(--accent);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.brand-dot{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 45%, transparent)}}.brand-dot{animation:2.4s ease-in-out infinite brandPulse}.brand-lockup--hero .brand-dot{width:.32em;height:.32em}@keyframes brandPulse{0%,to{opacity:.75;box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 40%, transparent);transform:scale(1)}50%{opacity:1;box-shadow:0 0 0 .35em color-mix(in srgb, var(--accent) 0%, transparent);transform:scale(1.35)}}.brand-latin{font-family:var(--font-display)}.brand-cyr{font-family:var(--font-cyr-display)}.tagline{color:var(--ink-soft);max-width:28rem;margin:.55rem 0 0;animation:.8s 50ms both rise}.drive-hint{color:var(--ink-soft);margin:0 0 1.25rem;font-size:.9rem}.drive-import{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.drive-import-link{flex-wrap:nowrap;align-items:center;gap:.4rem;width:auto;display:flex}.drive-import-link input{border:1px solid var(--line);background:var(--btn-surface);width:12.5rem;min-width:0;color:var(--ink);border-radius:999px;flex:0 0 12.5rem;padding:.48rem .85rem;font-size:.88rem}.drive-import .drive-hint{flex:1 0 100%;margin:0}.shelf-stats{margin:2rem 0 0;animation:.75s .12s both rise}.stats-grid{grid-template-columns:1fr 1fr;gap:.85rem;display:grid}.stats-grid--solo{grid-template-columns:1fr}@media (max-width:640px){.stats-grid{grid-template-columns:1fr}}.stats-toolbar{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.75rem;display:flex}.stats-toolbar-title{color:var(--ink);margin:0;font-size:.95rem;font-weight:600}.stats-notes-toggle{font:inherit;color:var(--ink-soft);cursor:pointer;text-underline-offset:.18em;background:0 0;border:none;padding:0;font-size:.86rem;text-decoration:underline}.stats-notes-toggle:hover,.stats-notes-toggle.is-on{color:var(--ink)}.stats-card{background:var(--paper);border-radius:1.15rem;margin:0;padding:1.15rem 1.2rem 1.25rem}@supports (color:color-mix(in lab, red, red)){.stats-card{background:color-mix(in srgb, var(--paper) 88%, transparent)}}.stats-card{border:1px solid var(--line);box-shadow:0 10px 28px var(--ink)}@supports (color:color-mix(in lab, red, red)){.stats-card{box-shadow:0 10px 28px color-mix(in srgb, var(--ink) 8%, transparent)}}.stats-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stats-card-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 .65rem;font-size:.78rem}.stats-card-metric{align-items:baseline;gap:.35rem;margin:0;line-height:1;display:flex}.stats-card-num{font-family:var(--font-heading);letter-spacing:-.03em;color:var(--ink);font-size:clamp(2.4rem,5vw,3rem);font-weight:600}.stats-card-unit{color:var(--ink-soft);font-size:1rem;font-weight:500}.stats-card-hint{color:var(--ink-soft);margin:.55rem 0 .9rem;font-size:.86rem}.stats-progress{background:var(--ink);border-radius:999px;height:.28rem}@supports (color:color-mix(in lab, red, red)){.stats-progress{background:color-mix(in srgb, var(--ink) 12%, transparent)}}.stats-progress{overflow:hidden}.stats-progress-fill{border-radius:inherit;background:var(--ink);height:100%;transition:width .55s}.stats-rows{flex-direction:column;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.stats-rows li{justify-content:space-between;align-items:baseline;gap:1rem;font-size:.92rem;display:flex}.stats-rows span{color:var(--ink-soft)}.stats-rows strong{font-variant-numeric:tabular-nums;color:var(--ink);font-weight:600}.stats-recent{margin:.35rem 0 1.1rem}.stats-recent-head{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.45rem;display:flex}.stats-recent-head h2{color:var(--ink-soft);letter-spacing:.01em;margin:0;font-size:.88rem;font-weight:600}.stats-recent-rail{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:.55rem;padding:.1rem .05rem .35rem;display:flex;overflow-x:auto}.stats-recent-item{scroll-snap-align:start;flex-direction:column;flex:none;gap:.28rem;width:3.75rem;display:flex}.stats-recent-cover{aspect-ratio:2/3;background:var(--ink);border-radius:.4rem;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.stats-recent-cover{background:color-mix(in srgb, var(--ink) 10%, var(--paper))}}.stats-recent-cover{box-shadow:0 4px 10px var(--ink)}@supports (color:color-mix(in lab, red, red)){.stats-recent-cover{box-shadow:0 4px 10px color-mix(in srgb, var(--ink) 12%, transparent)}}.stats-recent-cover img{object-fit:cover;width:100%;height:100%;display:block}.stats-recent-fallback{color:#f4f6f8;background:linear-gradient(155deg,#3a4658,#1c2430);width:100%;height:100%;padding:.3rem;font-size:.55rem;line-height:1.2}.stats-recent-title{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.68rem;line-height:1.2;display:-webkit-box;overflow:hidden}html[data-theme=night] .stats-card{background:#121820eb;box-shadow:0 12px 28px #00000059}html[data-theme=night] .stats-progress{background:#e8eef624}html[data-theme=night] .stats-progress-fill{background:#e8eef6}.reading-stat{color:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#141414;border-radius:28px;width:100%;margin:0;padding:1.35rem 1.4rem 1.15rem;box-shadow:0 18px 40px #14141438}.reading-stat-top{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.35rem;display:flex}.reading-stat-kicker{color:#8e8e93;margin:0 0 .35rem;font-size:.82rem}.reading-stat-metric{flex-wrap:wrap;align-items:baseline;gap:.2rem;margin:0;display:flex}.reading-stat-value{letter-spacing:-.03em;font-size:1.7rem;font-weight:700;line-height:1.15}.reading-stat-goal{color:#8e8e93;cursor:pointer;background:0 0;border:0;padding:0;font-size:1.15rem;font-weight:600}.reading-stat-goal:hover{color:#c7c7cc}.reading-stat-go{color:#141414;cursor:pointer;background:#fff;border:0;border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;text-decoration:none;display:grid}.reading-stat-go svg{display:block}.reading-stat-go:hover{background:#f2f2f7}.reading-stat-edit{color:#8e8e93;align-items:center;gap:.5rem;margin:-.35rem 0 1.1rem;font-size:.78rem;display:flex}.reading-stat-edit button{color:#fff;cursor:pointer;background:#2c2c2e;border:0;border-radius:50%;width:1.6rem;height:1.6rem}.reading-stat-edit input{color:#fff;text-align:center;appearance:textfield;background:#2c2c2e;border:0;border-radius:8px;width:3.4rem;padding:.2rem .3rem}.reading-stat-edit input::-webkit-outer-spin-button{appearance:none}.reading-stat-edit input::-webkit-inner-spin-button{appearance:none}.reading-stat-week{grid-template-columns:repeat(7,1fr);align-items:end;gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.reading-stat-week li{justify-items:center;gap:.4rem;padding-bottom:.7rem;display:grid;position:relative}.reading-stat-track{background:#2c2c2e;border-radius:999px;align-items:flex-end;width:14px;height:72px;display:flex;overflow:hidden}.reading-stat-fill{background:#fff;border-radius:999px;width:100%;min-height:0}.reading-stat-fill.is-today{background:repeating-linear-gradient(-52deg,#fff 0 3px,#0000 3px 7px)}.reading-stat-dow{color:#8e8e93;font-size:.72rem;line-height:1}.reading-stat-dot{background:#ff3b30;border-radius:50%;width:5px;height:5px;position:absolute;bottom:0}html[data-theme=night] .reading-stat{background:#121212;box-shadow:0 18px 40px #00000059}.shelf-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem;display:flex}.shelf-toolbar h1{letter-spacing:.02em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-size:1.05rem;font-weight:600}.search{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffa6;border-radius:999px;outline:none;min-width:min(100%,240px);padding:.55rem 1rem}.search:focus{box-shadow:0 0 0 3px var(--accent-soft);border-color:#245bdb73}.lang-switch{border:1px solid var(--line);background:#ffffff8c;border-radius:999px;display:inline-flex;overflow:hidden}.lang-switch button{cursor:pointer;color:var(--ink-soft);background:0 0;border:0;padding:.4rem .7rem}.lang-switch button.active{background:var(--ink);color:#fff}.btn-primary,.btn-ghost{cursor:pointer;border:0;border-radius:999px;padding:.55rem 1.05rem;transition:transform .2s,background .2s,box-shadow .2s}.btn-primary{background:var(--ink);color:#fff;box-shadow:0 8px 20px #1c243033}.btn-primary:hover:not(:disabled){transform:translateY(-1px)}.btn-primary:disabled{opacity:.65;cursor:wait}.btn-ghost{border:1px solid var(--line);color:var(--ink);background:#ffffff8c}.btn-ghost.compact{padding:.35rem .7rem;font-size:.85rem}.btn-ghost.is-on{background:var(--accent-soft);color:var(--accent);border-color:#245bdb59}.btn-ghost:disabled{opacity:.45;cursor:not-allowed}.empty-state{text-align:center;color:var(--ink-soft);justify-items:center;gap:1rem;padding:4rem 1rem;display:grid}.upload-wrap{display:inline-flex;position:relative}.upload-wrap.is-dragover .btn-primary{outline:2px solid var(--accent);outline-offset:2px;background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.upload-wrap.is-dragover .btn-primary{background:color-mix(in srgb, var(--accent) 18%, var(--paper))}}.book-drop-zone{min-height:100%;position:relative}.book-drop-overlay{z-index:80;pointer-events:none;background:var(--accent);place-items:center;display:grid;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.book-drop-overlay{background:color-mix(in srgb, var(--accent) 18%, #1c243047)}}.book-drop-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:.15s both rise}.book-drop-card{pointer-events:none;border:2px dashed var(--accent);background:var(--paper);border-radius:1.1rem;min-width:min(90vw,22rem);padding:1.4rem 1.5rem}@supports (color:color-mix(in lab, red, red)){.book-drop-card{background:color-mix(in srgb, var(--paper) 92%, white)}}.book-drop-card{box-shadow:var(--shadow);text-align:center}.book-drop-card strong{color:var(--ink);font-size:1.05rem;display:block}.book-drop-card p{color:var(--ink-soft);margin:.45rem 0 0;font-size:.9rem}html[data-theme=night] .book-drop-card{background:#121820f2}.shelf-rows{--shelf-cover-w:7.25rem;--shelf-gap-x:1rem;--shelf-pad-x:.5rem;gap:2.5rem;display:grid}.shelf-row{flex-direction:column;gap:0;display:flex;position:relative}.shelf-stage{z-index:0;position:relative}.shelf-books{--shelf-cover-w:inherit;gap:0 var(--shelf-gap-x);padding:0 var(--shelf-pad-x) .15rem;z-index:2;flex-wrap:nowrap;justify-content:start;align-items:end;display:flex;position:relative}.shelf-plank{background:linear-gradient(180deg, var(--wood-shine), transparent 55%), linear-gradient(90deg, #5a4030, var(--wood-light), #5a4030);z-index:1;border-radius:2px;flex-shrink:0;height:12px;margin:0 .5rem;position:relative;box-shadow:0 4px 10px #281c122e,inset 0 1px #ffdcb440}.shelf-captions{--shelf-cover-w:inherit;gap:0 var(--shelf-gap-x);padding:.45rem var(--shelf-pad-x) 0;z-index:0;flex-wrap:nowrap;justify-content:start;display:flex;position:relative}.book-item{width:var(--shelf-cover-w,7.25rem);min-width:0;max-width:100%;animation:.55s cubic-bezier(.2,.8,.2,1) both pop;position:relative}.book-item--cover{cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;flex-direction:column;justify-content:flex-end;display:flex}.book-item--cover .book-link{cursor:pointer}.book-item--cover .cover-img,.book-item--cover .book-link{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.book-item--cover.is-dragging{opacity:.35;cursor:grabbing}.book-item--cover.is-pressing .book-3d{transition:transform .28s cubic-bezier(.2,.8,.2,1);transform:scale(.92)}.book-item--cover.is-jiggling .book-3d{animation:.28s ease-in-out infinite book-jiggle;animation-delay:var(--jiggle-delay,0s);transform-origin:50% 90%;transition:none}.book-item--cover.is-jiggling.is-pressing .book-3d,.book-item--cover.is-jiggling.is-dragging .book-3d{animation:none}.book-item--cover.is-selected .book-face{box-shadow:inset -8px 0 16px #0000002e,0 0 0 2px #2f6fed}.book-select-mark{z-index:2;color:#fff;background:#1c243047;border:1.5px solid #ffffffeb;border-radius:999px;place-items:center;width:1.15rem;height:1.15rem;font-size:.7rem;font-weight:800;line-height:1;display:grid;position:absolute;top:.28rem;right:.28rem;box-shadow:0 1px 4px #00000047}.book-select-mark.is-on{background:#2f6fed;border-color:#2f6fed}@keyframes book-jiggle{0%{transform:rotate(-.7deg)}25%{transform:rotate(.65deg)}50%{transform:rotate(-.5deg)}75%{transform:rotate(.6deg)}to{transform:rotate(-.7deg)}}body.is-selecting-books .book-item:hover .book-3d{transform:none}.book-drag-ghost{z-index:80;aspect-ratio:2/3;pointer-events:none;border-radius:3px;width:4.6rem;position:fixed;overflow:visible;transform:translate(-50%,-70%)rotate(-8deg);box-shadow:0 12px 24px #1c243059}.book-drag-ghost .cover-img,.book-drag-ghost .cover-fallback{z-index:1;border-radius:3px;width:100%;height:100%;position:relative}.book-drag-ghost.is-stack .book-drag-ghost-back{background:var(--ink);border-radius:3px;position:absolute;inset:0}@supports (color:color-mix(in lab, red, red)){.book-drag-ghost.is-stack .book-drag-ghost-back{background:color-mix(in srgb, var(--ink) 18%, var(--paper))}}.book-drag-ghost.is-stack .book-drag-ghost-back{transform:rotate(11deg)translate(7px,5px);box-shadow:0 8px 16px #1c243033}.book-drag-count{color:#fff;background:#2f6fed;border-radius:999px;place-items:center;min-width:1.25rem;height:1.25rem;padding:0 .28rem;font-size:.7rem;font-weight:700;display:grid;position:absolute;top:-.45rem;right:-.45rem;box-shadow:0 2px 6px #1c24304d}.shelf-select-bar{z-index:40;border:1px solid var(--line);background:var(--paper);border-radius:14px;flex-wrap:wrap;align-items:center;gap:.45rem .8rem;width:min(36rem,100% - 1.5rem);margin:0;padding:.65rem .85rem;display:flex;position:fixed;bottom:1rem;left:50%}@supports (color:color-mix(in lab, red, red)){.shelf-select-bar{background:color-mix(in srgb, var(--paper) 88%, var(--ink))}}.shelf-select-bar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform:translate(-50%);box-shadow:0 10px 28px #1c243029}.shelf-select-count{margin:0;font-size:.92rem;font-weight:650}.shelf-select-hint{color:var(--ink-soft);flex:10rem;margin:0;font-size:.78rem}.shelf-select-actions{gap:.35rem;margin-left:auto;display:flex}body.is-dragging-book{cursor:grabbing;-webkit-user-select:none;user-select:none}body.is-dragging-book .library-nav-collection{pointer-events:auto}.book-item--details{display:block}.book-foot{justify-content:space-between;align-items:center;gap:.2rem;min-height:1.35rem;display:flex}.book-new-badge{color:#fff;letter-spacing:.04em;text-transform:uppercase;background:#2f6fed;border-radius:999px;align-items:center;padding:.12rem .42rem;font-size:.58rem;font-weight:700;display:inline-flex}.book-progress-label{color:var(--ink-soft);font-size:.72rem}.book-menu-btn{width:1.55rem;height:1.35rem;color:var(--ink-soft);letter-spacing:.08em;cursor:pointer;background:0 0;border:0;flex-shrink:0;margin-left:auto;padding:0;font-size:1.05rem;line-height:1}.book-menu-btn:hover{color:var(--ink)}.book-menu{z-index:90;border:1px solid var(--ink);width:248px;padding:.35rem;display:grid;position:fixed}@supports (color:color-mix(in lab, red, red)){.book-menu{border:1px solid color-mix(in srgb, var(--ink) 12%, var(--line))}}.book-menu{background:var(--paper);border-radius:.85rem}@supports (color:color-mix(in lab, red, red)){.book-menu{background:color-mix(in srgb, var(--paper) 92%, var(--ink))}}.book-menu{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 16px 40px #1c243038}.book-menu button{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.55rem;align-items:center;gap:.55rem;margin:0;padding:.55rem .6rem;font-size:.82rem;display:flex}.book-menu button:hover{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.book-menu button:hover{background:color-mix(in srgb, var(--ink) 7%, transparent)}}.book-menu button.is-on{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.book-menu button.is-on{background:color-mix(in srgb, var(--accent) 14%, transparent)}}.book-menu button.is-danger{color:#c0392b}.book-menu-ico{opacity:.75;flex-shrink:0;place-items:center;width:1.15rem;font-size:.9rem;display:grid}.book-menu-sep{background:var(--ink);height:1px;margin:.2rem .35rem}@supports (color:color-mix(in lab, red, red)){.book-menu-sep{background:color-mix(in srgb, var(--ink) 12%, transparent)}}.book-menu-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin:.25rem .75rem .1rem;font-size:.68rem;font-weight:650}.book-menu-collections{background:var(--ink);border-radius:.45rem;gap:.15rem;margin:0 .35rem .25rem;padding:.35rem;display:grid}@supports (color:color-mix(in lab, red, red)){.book-menu-collections{background:color-mix(in srgb, var(--ink) 5%, var(--paper))}}.book-menu-collections{max-height:8rem;overflow:auto}.book-details{min-height:0;margin-top:0;overflow:visible}.book-link{flex-shrink:0;width:100%;display:block}.book-3d{aspect-ratio:2/3;width:100%;transform-style:preserve-3d;filter:drop-shadow(0 10px 12px #1c243038);transition:transform .35s cubic-bezier(.2,.8,.2,1);position:relative}.book-item:hover .book-3d{transform:translateY(-10px)rotateY(-8deg)rotate(-1deg)}body.is-dragging-book .book-item:hover .book-3d{transform:none}.book-spine{background:linear-gradient(90deg,#1a1f28,#3a4454);border-radius:2px 0 0 2px;width:10px;position:absolute;inset:0 auto 0 0;transform:translate(-6px)skewY(.5deg)}.book-face{background:#222;border-radius:2px 5px 5px 2px;position:absolute;inset:0;overflow:hidden;box-shadow:inset -8px 0 16px #0000002e}.cover-img{object-fit:cover;width:100%;height:100%;display:block}.cover-fallback{color:#ffffffeb;width:100%;height:100%;font-family:var(--font-heading);align-items:flex-end;padding:1rem .85rem;font-size:.95rem;line-height:1.25;display:flex}.book-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .12rem;font-size:.82rem;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.book-meta{color:var(--ink-soft);margin:0;font-size:.72rem}.book-delete{color:#fff;cursor:pointer;opacity:0;background:#1c2430cc;border:0;border-radius:999px;width:24px;height:24px;transition:opacity .2s;position:absolute;top:-6px;right:-6px}.book-item:hover .book-delete{opacity:1}.reader-shell{background:radial-gradient(800px 400px at 50% -10%,#ffffff80,#0000),linear-gradient(#d5dde6,#eef1f5 40%,#e8ecf1);flex-direction:column;height:100dvh;display:flex;position:relative;overflow:hidden}.reader-bar{z-index:20;padding:.45rem .9rem;padding-top:max(.45rem, env(safe-area-inset-top));background:var(--paper);flex-direction:column;align-items:stretch;gap:.35rem;display:flex;position:absolute;top:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.reader-bar{background:color-mix(in srgb, var(--paper) 88%, transparent)}}.reader-bar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);transition:opacity .28s,transform .28s}.reader-bar-nav{grid-template-columns:minmax(0,1fr) auto minmax(12rem,1fr);align-items:center;gap:.75rem 1rem;display:grid}.reader-bar-start{flex:1;align-items:center;gap:.7rem;min-width:0;display:flex}.reader-bar-search{justify-self:end;width:100%;min-width:0;max-width:22rem}.reader-pager{white-space:nowrap;justify-content:center;align-items:center;gap:.3rem;display:flex}.reader-pager-label{text-align:center;font-variant-numeric:tabular-nums;min-width:8.5rem;font-size:.8rem}.reader-bar-tools{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem .6rem;padding-top:.4rem;display:flex}.reader-cluster{background:var(--ink);border-radius:999px;flex-wrap:wrap;align-items:center;gap:.2rem;padding:.18rem .22rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.reader-cluster{background:color-mix(in srgb, var(--ink) 5%, var(--paper))}}.reader-cluster{border:1px solid var(--line)}@media (max-width:960px){.reader-bar-nav{grid-template-columns:minmax(0,1fr) auto}.reader-pager{justify-self:end}.reader-bar-search{grid-column:1/-1;justify-self:stretch;max-width:none}.reader-chrome-dock{grid-column:1/-1;justify-content:flex-end;justify-self:stretch}.reader-bar-tools{justify-content:flex-start}}.reader-bar .back-link{flex-shrink:0;font-size:.78rem}.reader-bar .reader-title{text-align:start;flex:1;font-size:.92rem}.reader-bar .btn-ghost.compact{padding:.22rem .55rem;font-size:.76rem}.reader-bar .icon-btn{border-radius:6px;width:26px;height:26px;font-size:.85rem}.reader-bar .page-input{gap:.28rem;font-size:.76rem}.reader-bar .page-input input{border-radius:6px;width:3.1rem;padding:.18rem .32rem;font-size:.76rem}.reader-bar .lang-switch{margin-left:.1rem}.reader-bar .lang-switch button{padding:.24rem .48rem;font-size:.72rem}.reader-bar .color-row{gap:.18rem;margin:0 .2rem}.reader-bar .swatch{border-width:1.5px;width:15px;height:15px}.reader-bar .pen-size{font-size:.7rem}.reader-bar .pen-size input{width:58px}.reader-bar .check-pill{gap:.22rem;padding:.16rem .42rem;font-size:.7rem}.reader-bar .margin-font-row{flex-wrap:wrap;gap:.18rem;margin:0 .15rem;display:flex}.reader-bar .font-chip{border:1px solid var(--line);color:inherit;cursor:pointer;background:0 0;border-radius:.4rem;padding:.12rem .4rem;font-size:.72rem;line-height:1.2}.reader-bar .font-chip:hover,.reader-bar .font-chip.is-on{border-color:var(--accent);background:var(--accent-soft)}.reader-bar .font-chip.font-literary{font-family:var(--font-cyr-display), Georgia, serif}.reader-bar .font-chip.font-grotesque{font-family:var(--font-sans), system-ui, sans-serif}.reader-bar .font-chip.font-georgia{font-family:Georgia,Times New Roman,serif}.reader-bar .font-chip.font-verdana{font-family:Verdana,Tahoma,sans-serif}.reader-bar .margin-text-hint{color:var(--ink-soft);max-width:14rem;font-size:.68rem;line-height:1.25}.back-link{color:var(--ink-soft);font-size:.9rem}.reader-title{text-align:center;min-width:120px;font-family:var(--font-heading);white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:600;overflow:hidden}.reader-controls{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem;display:flex}.icon-btn{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;width:32px;height:32px}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.page-input{color:var(--ink-soft);align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.page-input input{border:1px solid var(--line);text-align:center;border-radius:8px;width:4rem;padding:.25rem .4rem}.color-row{gap:.25rem;margin:0 .25rem;display:inline-flex}.swatch{cursor:pointer;border:2px solid #0000;border-radius:999px;width:18px;height:18px}.swatch.on{border-color:var(--ink);transform:scale(1.1)}.reader-body{flex:1;min-height:0;display:flex}.reader-main{flex-direction:column;flex:1;min-width:0;min-height:0;padding:0;display:flex;overflow:hidden}.pdf-viewer-layout{flex:1;min-width:0;height:100%;min-height:0;display:flex}.pdf-viewer-layout .pdf-scroll{flex:1;min-width:0}.page-filmstrip{border-right:1px solid var(--line);background:var(--paper);flex:0 0 112px;width:112px}@supports (color:color-mix(in lab, red, red)){.page-filmstrip{background:color-mix(in srgb, var(--paper) 94%, transparent)}}.page-filmstrip{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:3;min-height:0;box-shadow:inset -1px 0 0 var(--ink);flex-direction:column;display:flex;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.page-filmstrip{box-shadow:inset -1px 0 0 color-mix(in srgb, var(--ink) 4%, transparent)}}.page-filmstrip-head{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;gap:.2rem;padding:.4rem .35rem .3rem .65rem;font-size:.68rem;font-weight:600;display:flex}.page-filmstrip-head .icon-btn{width:1.5rem;height:1.5rem;font-size:1.05rem;line-height:1}.page-filmstrip-scroll{scrollbar-width:thin;flex-direction:column;flex:1;gap:.55rem;min-height:0;padding:.65rem .55rem 1.25rem;display:flex;overflow:hidden auto}.page-thumb{background:var(--ink);border:2px solid #0000;border-radius:.45rem;width:100%;min-height:72px;padding:0;display:block;position:relative}@supports (color:color-mix(in lab, red, red)){.page-thumb{background:color-mix(in srgb, var(--ink) 6%, var(--paper))}}.page-thumb{cursor:pointer;box-shadow:0 4px 12px var(--ink);overflow:hidden}@supports (color:color-mix(in lab, red, red)){.page-thumb{box-shadow:0 4px 12px color-mix(in srgb, var(--ink) 10%, transparent)}}.page-thumb{aspect-ratio:1/1.35}.page-thumb img,.page-thumb-canvas{object-fit:cover;object-position:top center;background:#fff;width:100%;height:100%;display:block}.page-thumb-placeholder{width:100%;height:100%;min-height:4.5rem;color:var(--ink-soft);place-items:center;font-size:.75rem;display:grid}.page-thumb-num{color:#fff;background:#1c2430b8;border-radius:.25rem;padding:.05rem .28rem;font-size:.62rem;font-weight:600;line-height:1.2;position:absolute;bottom:.2rem;left:.25rem}.page-thumb.is-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 6px 16px var(--accent)}@supports (color:color-mix(in lab, red, red)){.page-thumb.is-active{box-shadow:0 0 0 1px var(--accent), 0 6px 16px color-mix(in srgb, var(--accent) 28%, transparent)}}.page-thumb:hover:not(.is-active){border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.page-thumb:hover:not(.is-active){border-color:color-mix(in srgb, var(--accent) 45%, transparent)}}.page-filmstrip-tab{z-index:4;border:1px solid var(--line);background:var(--paper);border-left:0;border-radius:0 .7rem .7rem 0;flex-direction:column;flex:none;align-self:center;align-items:center;gap:.45rem;width:1.7rem;margin:0;padding:.7rem .15rem .8rem;display:flex}@supports (color:color-mix(in lab, red, red)){.page-filmstrip-tab{background:color-mix(in srgb, var(--paper) 94%, transparent)}}.page-filmstrip-tab{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink-soft);box-shadow:2px 4px 14px var(--ink)}@supports (color:color-mix(in lab, red, red)){.page-filmstrip-tab{box-shadow:2px 4px 14px color-mix(in srgb, var(--ink) 10%, transparent)}}.page-filmstrip-tab{cursor:pointer;font:inherit}.page-filmstrip-tab:hover,.page-filmstrip-tab:focus-visible{color:var(--ink);background:var(--paper);outline:none}.page-filmstrip-tab-mark{font-size:1.05rem;line-height:1}.page-filmstrip-tab-label{writing-mode:vertical-rl;letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:600;transform:rotate(180deg)}.page-filmstrip-tab-num{font-variant-numeric:tabular-nums;font-size:.68rem;font-weight:600}html[data-theme=night] .page-filmstrip-tab{border-color:var(--btn-border);background:#0e1218eb}html[data-theme=night] .page-thumb{background:#141a24f2}.pdf-scroll{scroll-behavior:auto;height:100%;padding:1.25rem 1rem 3rem;overflow:auto}.pdf-scroll.tool-draw{cursor:crosshair}.pdf-scroll.tool-type{cursor:text}.pdf-column{flex-direction:column;align-items:center;gap:1.25rem;display:flex}.pdf-sheet{position:relative}.pdf-sheet-row{box-shadow:none;background:0 0;align-items:stretch;gap:16px;display:flex;position:relative;overflow:visible}.pdf-page{background:#fff;border-radius:1px;flex-shrink:0;position:relative;box-shadow:0 1px 2px #1c24300f,0 10px 28px #1c24301f}.page-margin{filter:drop-shadow(2px 4px 10px #1c243024);background:#f6f1e4;border:0;border-radius:1px 2px 2px 1px;flex-shrink:0;position:relative;-webkit-mask-image:radial-gradient(3.6px at 10px 18px,#0000 3.5px,#000 3.7px);mask-image:radial-gradient(3.6px at 10px 18px,#0000 3.5px,#000 3.7px);-webkit-mask-size:100% 38px;mask-size:100% 38px;-webkit-mask-repeat:repeat-y;mask-repeat:repeat-y}.page-margin.is-sheet{box-shadow:none;background:#f6f1e4}.margin-lines{pointer-events:none;--rule-ink:#506ea029;--rule-step:28px;position:absolute;inset:0}.paper-lines .margin-lines{background-image:repeating-linear-gradient(to bottom, transparent 0, transparent calc(var(--rule-step) - 1px), var(--rule-ink) calc(var(--rule-step) - 1px), var(--rule-ink) var(--rule-step))}.paper-grid .margin-lines,.paper-gridWide .margin-lines{background-image:repeating-linear-gradient(to bottom, transparent 0, transparent calc(var(--rule-step) - 1px), var(--rule-ink) calc(var(--rule-step) - 1px), var(--rule-ink) var(--rule-step)), repeating-linear-gradient(to right, transparent 0, transparent calc(var(--rule-step) - 1px), var(--rule-ink) calc(var(--rule-step) - 1px), var(--rule-ink) var(--rule-step))}.paper-grid .margin-lines{--rule-step:20px}.paper-gridWide .margin-lines{--rule-step:38px}.ink-overlay{z-index:2;pointer-events:none;position:absolute;inset:0}.ink-overlay.ink-drawing{z-index:5;pointer-events:auto}.ink-layer{touch-action:none;pointer-events:none;width:100%;height:100%;display:block}.ink-layer.ink-active{pointer-events:auto;cursor:crosshair}.margin-texts{z-index:3;pointer-events:none;position:absolute;top:0;bottom:0}.margin-texts.is-placing{pointer-events:auto;cursor:text}.margin-text{z-index:1;box-sizing:border-box;pointer-events:none;border-radius:2px;position:absolute}.margin-text.is-live{pointer-events:auto}.margin-text.is-on{background:var(--paper)}@supports (color:color-mix(in lab, red, red)){.margin-text.is-on{background:color-mix(in srgb, var(--paper) 78%, transparent)}}.margin-text.is-on{box-shadow:inset 0 0 0 1px}@supports (color:color-mix(in lab, red, red)){.margin-text.is-on{box-shadow:inset 0 0 0 1px color-mix(in srgb, currentColor 35%, transparent)}}.margin-text textarea{resize:none;width:100%;min-height:1.6em;color:inherit;font:inherit;caret-color:currentColor;field-sizing:content;background:0 0;border:0;outline:none;margin:0;padding:.2em .28em;line-height:1.45;display:block;overflow:hidden}.margin-text textarea::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){.margin-text textarea::placeholder{color:color-mix(in srgb, currentColor 35%, transparent)}}.margin-text-bar{background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line);z-index:2;flex-wrap:wrap;align-items:center;gap:2px;padding:3px 4px;display:flex;position:absolute;top:0;left:0;right:0}.margin-text.is-on textarea{padding-top:1.85em}.margin-text-bar button{min-width:1.35rem;height:1.35rem;color:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:0 .22rem;font-size:.72rem;line-height:1}.margin-text-bar button:hover,.margin-text-bar button.is-on{border-color:var(--accent);background:var(--accent-soft)}.margin-text-bar button.is-danger{color:#b42318;margin-left:auto}.margin-text-drag{cursor:grab;letter-spacing:-.12em;color:var(--ink-soft)}.margin-text-resize{cursor:nwse-resize;background:linear-gradient(135deg,#0000 50%,currentColor 50%);width:12px;height:12px;position:absolute;bottom:1px;right:1px}@supports (color:color-mix(in lab, red, red)){.margin-text-resize{background:linear-gradient(135deg, transparent 50%, color-mix(in srgb, currentColor 55%, transparent) 50%)}}.page-bookmark-btn{z-index:4;cursor:pointer;color:#9aa3b2;background:#ffffffeb;border:0;border-radius:999px;width:34px;height:34px;font-size:1rem;position:absolute;top:8px;left:8px;box-shadow:0 4px 12px #0000001f}.page-bookmark-btn.on,.pdf-sheet.is-bookmarked .page-bookmark-btn{color:#c9a227}.page-num-label{text-align:center;color:var(--ink-soft);margin-top:.4rem;font-size:.75rem}.page-placeholder{width:100%;height:100%;color:var(--ink-soft);font-family:var(--font-heading);background:repeating-linear-gradient(-12deg,#f3f5f8,#f3f5f8 12px,#eef1f5 12px 24px);place-items:center;font-size:1.5rem;display:grid}.page-placeholder.faint{opacity:.5;pointer-events:none;position:absolute;inset:0}.text-layer-off{-webkit-user-select:none;user-select:none;pointer-events:none!important}.text-layer-custom{pointer-events:none;-webkit-user-select:none!important;user-select:none!important}.tool-sep{background:var(--line);width:1px;height:22px;margin:0 .2rem}.pen-size{color:var(--ink-soft);align-items:center;gap:.35rem;font-size:.78rem;display:inline-flex}.pen-size input{width:72px}.check-pill{color:var(--ink-soft);border:1px solid var(--line);cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffffb3;border-radius:999px;align-items:center;gap:.3rem;padding:.25rem .55rem;font-size:.78rem;display:inline-flex}.stylus-hint{color:var(--ink-soft);text-align:right;flex-basis:100%;margin:.15rem 0 0;font-size:.72rem}.sidebar-tabs{gap:.25rem;display:flex}.sidebar-tabs button{border:1px solid var(--line);cursor:pointer;color:var(--ink-soft);background:#fff;border-radius:999px;align-items:center;gap:.25rem;padding:.28rem .55rem;font-size:.72rem;display:inline-flex}.sidebar-tabs button.on{background:var(--ink);color:#fff;border-color:var(--ink)}.tab-count{opacity:.85;font-size:.72rem}.sidebar-add{border-radius:12px;width:100%;margin-bottom:.85rem}.bookmark-list li.current .ann-link{background:var(--accent-soft);border-color:#245bdb73}.bookmark-item{align-items:center;gap:.5rem;flex-direction:row!important;display:flex!important}.bm-star{color:#c9a227}.ink-stroke-list{margin-top:.5rem}.pdf-stage{justify-content:center;display:flex}.pdf-canvas{pointer-events:none;display:block}.textLayer,.text-layer{--min-font-size:1;--user-unit:1;--scale-round-x:1px;--scale-round-y:1px;--total-scale-factor:calc(var(--scale-factor,1) * var(--user-unit));--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size));text-align:initial;letter-spacing:normal;word-spacing:normal;z-index:4;opacity:1;-webkit-user-select:text;user-select:text;cursor:text;transform-origin:0 0;caret-color:#0000;-moz-text-size-adjust:none;text-size-adjust:none;line-height:1;position:absolute;inset:0;overflow:clip}.textLayer :is(span,br),.text-layer :is(span,br){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;-webkit-user-select:text;user-select:text;position:absolute}.textLayer>:not(.markedContent),.textLayer .markedContent span:not(.markedContent),.text-layer>:not(.markedContent),.text-layer .markedContent span:not(.markedContent){z-index:1;--font-height:0;--scale-x:1;--rotate:0deg;font-size:calc(var(--text-scale-factor) * var(--font-height));transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}.textLayer .markedContent,.text-layer .markedContent{display:contents}.textLayer ::selection,.text-layer ::selection{color:#0000;background:#245bdb59}.textLayer br::selection,.text-layer br::selection{background:0 0}.page-printed{color:var(--ink-soft);font-size:.75rem}.toc-note{margin:.75rem .5rem 0;line-height:1.4}.pdf-select-layer{z-index:6;cursor:text;touch-action:pan-y;position:absolute;inset:0}.pdf-select-box{pointer-events:none;mix-blend-mode:multiply;background:#245bdb52;border-radius:1px;position:absolute}html[data-theme=night] .pdf-select-box{mix-blend-mode:screen;background:#5a96ff6b}.pdf-link-layer{z-index:5;pointer-events:none;position:absolute;inset:0}.pdf-link{cursor:pointer;pointer-events:auto;background:0 0;border:0;border-radius:2px;padding:0;position:absolute}.pdf-link:hover{background:#245bdb1f;outline:1px solid #245bdb59}.highlight-layer{pointer-events:none;z-index:1;position:absolute;inset:0}.hl-box{mix-blend-mode:multiply;border-radius:2px;position:absolute}.selection-bubble{z-index:45;pointer-events:auto;animation:.22s cubic-bezier(.22,1.05,.36,1) both selectionBubbleIn;position:fixed;transform:translate(-50%,-100%)}@keyframes selectionBubbleIn{0%{opacity:0;transform:translate(-50%,-100%)scale(.72)}to{opacity:1;transform:translate(-50%,-100%)scale(1)}}.selection-bubble-ring{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1c2430f5;border-radius:999px;grid-template-columns:repeat(5,1fr);gap:.1rem;padding:.35rem;display:grid;box-shadow:0 0 0 1px #ffffff14,0 16px 40px #00000052}.selection-bubble-btn{width:2.85rem;min-height:2.85rem;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;gap:.1rem;padding:.28rem .15rem .22rem;transition:background .15s,transform .15s;display:flex}.selection-bubble-btn:hover,.selection-bubble-btn.is-on{background:#ffffff1f;transform:translateY(-1px)}.selection-bubble-btn:first-child .selection-bubble-icon{color:var(--bubble-accent,#ffe066)}.selection-bubble-icon{place-items:center;line-height:0;display:grid}.selection-bubble-label{letter-spacing:.02em;opacity:.92;white-space:nowrap;font-size:.52rem;font-weight:600;line-height:1.1}.selection-bubble-tail{background:#1c2430f5;border-radius:2px;width:12px;height:12px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)rotate(45deg);box-shadow:2px 2px 6px #0000001f}.selection-bubble-note{color:#fff;background:#1c2430f5;border-radius:1rem;width:min(240px,100vw - 24px);margin-top:.55rem;padding:.65rem;box-shadow:0 12px 30px #00000047}.selection-bubble-note textarea{resize:vertical;color:#fff;width:100%;min-height:4.5rem;font:inherit;background:#ffffff0f;border:1px solid #ffffff24;border-radius:.65rem;padding:.55rem .65rem;font-size:.85rem}.selection-bubble-note textarea::placeholder{color:#ffffff73}.selection-bubble-note-actions{justify-content:flex-end;gap:.35rem;margin-top:.45rem;display:flex}.selection-bubble-note-actions .btn-ghost{color:#ffffffbf;font-size:.82rem}.selection-bubble-note-actions .btn-primary.compact{padding:.35rem .75rem;font-size:.82rem}.selection-bubble--note .selection-bubble-ring{border-radius:1.25rem}html[data-theme=night] .selection-bubble-ring,html[data-theme=night] .selection-bubble-note,html[data-theme=night] .selection-bubble-tail{background:#0e1218fa}@media (max-width:520px){.selection-bubble-ring{border-radius:1.25rem;grid-template-columns:repeat(2,1fr);padding:.5rem}.selection-bubble-btn{border-radius:.85rem;flex-direction:row;justify-content:flex-start;gap:.45rem;width:auto;min-height:3rem;padding:.45rem .65rem}.selection-bubble-label{font-size:.72rem}}.selection-menu{display:none}.reader-sidebar{border-left:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fafbfdeb;flex:none;width:300px;max-width:100%;font-size:.82rem;animation:.28s both slideIn;display:flex;overflow:hidden}.reader-sidebar.is-resizing{-webkit-user-select:none;user-select:none;animation:none}.sidebar-inner{flex:1;min-width:0;padding:.65rem .75rem;overflow:auto}.sidebar-grip{cursor:col-resize;touch-action:none;flex:none;width:7px;transition:background .16s;position:relative}.sidebar-grip:after{content:"";background:var(--ink-soft);opacity:0;border-radius:999px;width:3px;height:2.25rem;transition:opacity .16s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sidebar-grip:hover,.sidebar-grip:focus-visible,.is-resizing .sidebar-grip{background:#245bdb14;outline:none}.sidebar-grip:hover:after,.sidebar-grip:focus-visible:after,.is-resizing .sidebar-grip:after{opacity:.6}.reader-sidebar-tab{z-index:4;border:1px solid var(--line);background:var(--paper);border-right:0;border-radius:.7rem 0 0 .7rem;flex-direction:column;flex:none;align-self:center;align-items:center;gap:.45rem;width:1.7rem;margin:0;padding:.7rem .15rem .8rem;display:flex}@supports (color:color-mix(in lab, red, red)){.reader-sidebar-tab{background:color-mix(in srgb, var(--paper) 94%, transparent)}}.reader-sidebar-tab{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink-soft);box-shadow:-2px 4px 14px var(--ink)}@supports (color:color-mix(in lab, red, red)){.reader-sidebar-tab{box-shadow:-2px 4px 14px color-mix(in srgb, var(--ink) 10%, transparent)}}.reader-sidebar-tab{cursor:pointer;font:inherit}.reader-sidebar-tab:hover,.reader-sidebar-tab:focus-visible{color:var(--ink);background:var(--paper);outline:none}.reader-sidebar-tab-mark{font-size:1.05rem;line-height:1}.reader-sidebar-tab-label{writing-mode:vertical-rl;letter-spacing:.08em;text-transform:uppercase;font-size:.62rem;font-weight:600;transform:rotate(180deg)}html[data-theme=night] .reader-sidebar-tab{border-color:var(--btn-border);background:#0e1218eb}.toggle-row{cursor:pointer;justify-content:space-between;align-items:center;gap:.6rem;display:flex}.toggle{background:var(--line);border:1px solid var(--line);border-radius:999px;flex:none;width:2.2rem;height:1.2rem;transition:background .18s;position:relative}.toggle input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.toggle-knob{background:var(--paper);pointer-events:none;border-radius:999px;width:calc(1.2rem - 6px);height:calc(1.2rem - 6px);transition:transform .18s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000047}.toggle.is-on{background:var(--accent);border-color:var(--accent)}.toggle.is-on .toggle-knob{transform:translate(1rem)}.toggle input:focus-visible~.toggle-knob{outline:2px solid var(--accent);outline-offset:2px}.type-row.is-off{opacity:.45}.paper-pick{gap:.25rem;margin-bottom:.55rem;display:flex}.paper-chip{border:1px solid var(--line);min-width:0;color:var(--ink-soft);font:inherit;letter-spacing:.02em;cursor:pointer;background:#fff9;border-radius:.5rem;flex:1;justify-items:center;gap:.18rem;padding:.28rem .2rem;font-size:.58rem;transition:border-color .16s,background .16s,color .16s;display:grid}.paper-chip:hover{color:var(--ink);background:#fff}.paper-chip.on{border-color:var(--ink);color:var(--ink);background:#fff}.paper-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.paper-swatch{border:1px solid var(--line);background-color:#fff;border-radius:.2rem;width:100%;height:.85rem}.paper-chip.paper-lines .paper-swatch{background-image:repeating-linear-gradient(to bottom, transparent 0 3px, var(--ink-soft) 3px 4px)}.paper-chip.paper-grid .paper-swatch{background-image:repeating-linear-gradient(to bottom, transparent 0 3px, var(--ink-soft) 3px 4px), repeating-linear-gradient(to right, transparent 0 3px, var(--ink-soft) 3px 4px)}.paper-chip.paper-gridWide .paper-swatch{background-image:repeating-linear-gradient(to bottom, transparent 0 5px, var(--ink-soft) 5px 6px), repeating-linear-gradient(to right, transparent 0 5px, var(--ink-soft) 5px 6px)}.sidebar-head{justify-content:space-between;align-items:center;margin-bottom:.55rem;display:flex}.sidebar-head h2,.ai-head h2{font-family:var(--font-heading);margin:0;font-size:1rem}.notes-panel section+section{border-top:1px solid var(--line);margin-top:.75rem;padding-top:.55rem}.reader-sidebar section{margin-bottom:.35rem}.reader-sidebar h3{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:0 0 .35rem;font-size:.65rem;font-weight:600}.reader-sidebar .bookmark-list,.reader-sidebar .notes-panel ul{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.reader-sidebar .bookmark-list li,.reader-sidebar .notes-panel li{align-items:flex-start;gap:.2rem;display:flex}.toc-panel{min-width:0;margin:0}.toc-root,.toc-nested{flex-direction:column;gap:.05rem;min-width:0;margin:0;padding:0;list-style:none;display:flex}.toc-nested{border-left:1px solid var(--ink);margin:.08rem 0 .12rem;padding-left:.55rem}@supports (color:color-mix(in lab, red, red)){.toc-nested{border-left:1px solid color-mix(in srgb, var(--ink) 12%, transparent)}}.toc-item{min-width:0;display:block}.toc-row{grid-template-columns:1.05rem minmax(0,1fr);align-items:stretch;gap:.1rem;min-width:0;display:grid}.toc-twist,.toc-twist-spacer{place-items:center;width:1.05rem;height:1.7rem;display:grid}.toc-twist{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:4px;margin:0;padding:0;font-size:.62rem;line-height:1}.toc-twist:hover{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.toc-twist:hover{background:color-mix(in srgb, var(--ink) 8%, transparent)}}.toc-twist:hover{color:var(--ink)}.toc-twist.is-open{transform:rotate(90deg)}.toc-link{cursor:pointer;text-align:left;min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;border-radius:.4rem;align-items:baseline;gap:.35rem;margin:0;padding:.28rem .35rem .28rem .15rem;font-size:.78rem;line-height:1.35;display:flex}.toc-link:hover{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.toc-link:hover{background:color-mix(in srgb, var(--ink) 6%, var(--paper))}}.toc-link.is-current{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.toc-link.is-current{background:color-mix(in srgb, var(--accent) 16%, var(--paper))}}.toc-title{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.toc-leader{border-bottom:1px dotted var(--ink);flex:.75rem;min-width:.5rem}@supports (color:color-mix(in lab, red, red)){.toc-leader{border-bottom:1px dotted color-mix(in srgb, var(--ink) 28%, transparent)}}.toc-leader{transform:translateY(-.28em)}.toc-page{font-variant-numeric:tabular-nums;color:var(--ink-soft);letter-spacing:.02em;flex:none;font-size:.68rem}.ann-link{text-align:left;cursor:pointer;font:inherit;color:var(--ink);background:#ffffff8c;border:1px solid #0000;border-radius:.55rem;flex-direction:column;flex:1;gap:.12rem;padding:.35rem .45rem;font-size:.76rem;line-height:1.35;display:flex}.ann-link:hover{border-color:var(--line);background:#fff}.ann-link--compact{flex-direction:row;align-items:center;gap:.35rem}.ann-link--quote{background:#9370db14;border-left:3px solid #9370dbbf}.ann-link--note{background:#245bdb0f;border-left:3px solid #245bdba6}.ann-link .dot{border-radius:999px;flex-shrink:0;width:7px;height:7px;display:inline-block}.ann-text{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.76rem;line-height:1.35;display:-webkit-box;overflow:hidden}.ann-quote-mark{color:#9370dbd9;font-family:Georgia,serif;font-size:.95rem;line-height:1}.ann-note-body{font-size:.78rem;font-weight:500;line-height:1.4}.ann-note-excerpt{color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.7rem;line-height:1.35;display:-webkit-box;overflow:hidden}.ann-note-excerpt-label{opacity:.75;font-weight:600}.ann-page{color:var(--ink-soft);align-self:flex-end;font-size:.64rem}.ann-del{cursor:pointer;color:var(--ink-soft);background:0 0;border:0;border-radius:999px;flex-shrink:0;width:1.3rem;height:1.3rem;font-size:.95rem}.ann-del:hover{color:var(--ink);background:#0000000f}.muted.tiny{margin:.1rem 0 0;font-size:.72rem}.hl-box--quote,.hl-box--note{mix-blend-mode:multiply;border-radius:2px}.muted{color:var(--ink-soft);font-size:.9rem}blockquote{flex:1;margin:0}blockquote .note{color:var(--ink-soft);margin:.35rem 0 0;font-size:.8rem}.ai-panel{color:#f4f6f8;z-index:50;background:#1c2430f5;border-radius:16px;width:min(420px,100vw - 2rem);max-height:45vh;padding:1rem;animation:.25s both rise;position:fixed;bottom:1rem;right:1rem;overflow:auto;box-shadow:0 20px 50px #00000059}.ai-head{justify-content:space-between;gap:.75rem;margin-bottom:.75rem;display:flex}.ai-head .icon-btn{color:#fff;background:#ffffff14;border-color:#ffffff26}.ai-stub{opacity:.65;margin:.25rem 0 0;font-size:.75rem}.ai-body{white-space:pre-wrap;font-size:.95rem;line-height:1.5}.lookup-backdrop{display:none}.lookup-sheet{z-index:50;color:#f4f6f8;pointer-events:auto;background:#1c2430f7;border-radius:16px;width:min(400px,100vw - 1.5rem);max-height:min(62vh,560px);padding:.65rem 1rem 1rem;animation:.25s both rise;position:fixed;bottom:1rem;left:auto;right:1rem;overflow:auto;transform:none;box-shadow:0 20px 50px #00000059}.lookup-sheet.is-loading{min-height:120px}.lookup-handle{display:none}.lookup-toolbar{align-items:center;gap:.35rem;margin-bottom:.65rem;display:flex}.lookup-toolbar-spacer{flex:1}.lookup-lang-badge{letter-spacing:.02em;text-transform:lowercase;color:#9fd0ff;background:#6eb6ff2e;border:1px solid #6eb6ff59;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:600}.lookup-toolbar .icon-btn{color:#fff;background:#ffffff14;border-color:#ffffff26}.lookup-toolbar .icon-btn.compact{width:28px;height:28px;padding:0;font-size:.75rem}.lookup-headword{letter-spacing:-.02em;font-size:1.65rem;font-weight:700;line-height:1.15}.lookup-lemma{color:#6eb6ff;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:inline}.lookup-lemma:hover{text-decoration:underline}.lookup-ipa,.lookup-grammar,.lookup-variants-line,.lookup-related,.lookup-muted{color:#f4f6f89e;margin:.25rem 0 0;font-size:.88rem;line-height:1.4}.lookup-primary{margin-top:.75rem;font-size:1.2rem;font-weight:600}.lookup-acc{border-top:1px solid #ffffff14;margin-top:.55rem}.lookup-acc-head{width:100%;color:inherit;font:inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem 0;font-size:.78rem;font-weight:650;display:flex}.lookup-ai-star{color:#9fd0ff;margin-right:.35rem}.lookup-chevron{opacity:.55}.lookup-acc-body{padding:0 0 .75rem}.lookup-sent-label{text-transform:uppercase;letter-spacing:.04em;opacity:.55;align-items:center;gap:.35rem;margin:.35rem 0 .2rem;font-size:.75rem;display:flex}.lookup-sent-text{margin:0;font-size:.95rem;line-height:1.45}.lookup-mark{color:inherit;background:#34c75959;border-radius:3px;padding:0 .1em}.lookup-chips{flex-wrap:wrap;gap:.4rem;display:flex}.lookup-chip{color:inherit;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff24;border-radius:999px;padding:.35rem .7rem;font-size:.85rem}.lookup-chip.is-on{background:#34c75947;border-color:#34c7598c}.lookup-list,.lookup-examples{margin:0;padding-left:1.1rem;font-size:.92rem;line-height:1.45}.lookup-examples li+li{margin-top:.55rem}.lookup-ex-tr{opacity:.65;margin-top:.15rem}.lookup-etym{white-space:pre-wrap;margin:0;font-size:.92rem;line-height:1.45}.lookup-footer{border-top:1px solid #ffffff14;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.85rem;padding-top:.85rem;display:flex}.lookup-add{color:#7dcea0;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.95rem;font-weight:600}.lookup-add:hover{text-decoration:underline}.lookup-add.is-saved,.lookup-add.is-saved:hover{color:#8fdbb0;cursor:default;text-decoration:none}.lookup-passage-title{margin:0 0 .75rem;font-size:1.05rem}.lookup-passage-orig{opacity:.72;margin-bottom:.75rem}.lookup-passage-tr{white-space:pre-wrap}@media (min-width:720px){.lookup-sheet{width:min(420px,100vw - 2rem);max-height:min(70vh,640px)}}@media (max-width:560px){.lookup-sheet{width:auto;max-height:55vh;bottom:.5rem;left:.5rem;right:.5rem}}.pdf-loading,.reader-error{text-align:center;color:var(--ink-soft);padding:3rem 1.5rem}.reader-error-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin-top:1.25rem;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:none}}@keyframes slideIn{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:none}}@media (max-width:800px){.reader-body{flex-direction:column}.reader-main{order:0}.pdf-viewer-layout{flex-direction:column}.pdf-viewer-layout .page-filmstrip,.pdf-viewer-layout .page-filmstrip-tab{order:1}.pdf-viewer-layout .pdf-scroll{order:0}.page-filmstrip{border-right:0;border-top:1px solid var(--line);flex:none;order:1;width:100%;max-height:8.5rem}.page-filmstrip-head{display:none}.page-filmstrip-scroll{flex-direction:row;padding:.55rem .75rem;overflow:auto hidden}.page-thumb{aspect-ratio:1/1.35;flex:0 0 52px;width:52px}.page-filmstrip-tab{border:0;border-top:1px solid var(--line);width:100%;height:2.25rem;box-shadow:none;border-radius:0;flex-direction:row;align-self:stretch;gap:.45rem;padding:0 .85rem}.page-filmstrip-tab-label{writing-mode:horizontal-tb;transform:none}.page-filmstrip-tab-mark{transform:rotate(90deg)}.reader-sidebar{border-left:0;border-top:1px solid var(--line);order:2;max-height:40vh;width:100%!important}.reader-sidebar-tab{border:0;border-top:1px solid var(--line);width:100%;height:2.25rem;box-shadow:none;border-radius:0;flex-direction:row;order:2;align-self:stretch;gap:.45rem;padding:0 .85rem}.reader-sidebar-tab-label{writing-mode:horizontal-tb;transform:none}.reader-sidebar-tab-mark{transform:rotate(-90deg)}.sidebar-grip{display:none}.spread-grid{grid-template-columns:1fr!important}}@media (max-width:720px){.shelf-page{padding:1.15rem 1rem 3rem}.shelf-top{gap:.5rem}.shelf-top .brand-lockup--nav{gap:.2em}.shelf-top .brand-lockup--nav .brand-latin{font-size:clamp(1.25rem,6.2vw,1.65rem)}.shelf-top .brand-lockup--nav .brand-cyr{font-size:clamp(1.2rem,6vw,1.55rem)}.shelf-top .brand-lockup--nav .brand-mark-icon img{width:clamp(1.35rem,6vw,1.7rem);height:clamp(1.35rem,6vw,1.7rem)}.shelf-auth-bar .btn-ghost,.shelf-auth-bar .btn-primary{padding:.42rem .75rem;font-size:.88rem}.shelf-header .tagline{max-width:none;font-size:.9rem}.shelf-actions{width:100%}.shelf-actions .btn-ghost,.shelf-actions .btn-primary,.shelf-actions .upload-wrap{flex:auto}.shelf-toolbar{flex-direction:column;align-items:stretch;gap:.75rem}.shelf-rows{--shelf-cover-w:6.5rem;--shelf-gap-x:.75rem}.shelf-books,.shelf-captions{gap:0 var(--shelf-gap-x)}.search{width:100%;min-width:0}.feature-ribbon-head{flex-direction:column;align-items:flex-start;gap:.25rem}.feat-card{width:10.25rem}.empty-state{padding:1.5rem .5rem}.account-page{padding:1rem}.account-header{gap:.75rem}.account-header .shelf-actions{justify-content:flex-start;width:100%}.pricing-grid{grid-template-columns:1fr}.site-footer-inner{padding:1.75rem 1rem 1.5rem}}@media (max-width:420px){.shelf-rows{--shelf-cover-w:6.25rem}.shelf-top .brand-lockup--nav .brand-latin,.shelf-top .brand-lockup--nav .brand-sep{display:none}.shelf-top .brand-lockup--nav .brand-cyr{font-size:1.35rem}}html[data-theme=paper]{--bg0:#d9cfc0;--bg1:#ebe3d4;--bg2:#f4eee3;--ink:#2a241c;--ink-soft:#6b5f50;--paper:#faf6ee;--line:#2a241c1f}html[data-theme=night]{--bg0:#0e1218;--bg1:#151b24;--bg2:#1a222e;--ink:#e8eef6;--ink-soft:#a8b4c4;--paper:#121820;--line:#e8eef638;--accent:#8bbcff;--accent-soft:#8bbcff33;--shadow:0 18px 40px #00000073;--btn-surface:#2a3444;--btn-surface-hover:#354255;--btn-border:#e8eef647;--btn-primary-bg:#e8eef6;--btn-primary-fg:#121820}html[data-theme=night] .brand-mark-icon img{filter:invert()brightness(.95)}html[data-theme=night] .btn-primary:hover:not(:disabled){color:#0e1218;background:#fff}html[data-theme=night] .btn-ghost{background:var(--btn-surface);border:1px solid var(--btn-border);color:var(--ink)}html[data-theme=night] .btn-ghost:hover:not(:disabled){background:var(--btn-surface-hover);border-color:#e8eef666}html[data-theme=night] .btn-ghost.is-on{background:var(--accent-soft);border-color:var(--accent);color:#dceaff}html[data-theme=night] .lang-switch,html[data-theme=night] .theme-switch{background:var(--btn-surface);border-color:var(--btn-border)}html[data-theme=night] .lang-switch button,html[data-theme=night] .theme-switch button{color:var(--ink-soft)}html[data-theme=night] .lang-switch button.active,html[data-theme=night] .theme-switch button.active{background:var(--btn-primary-bg);color:var(--btn-primary-fg)}html[data-theme=night] .icon-btn,html[data-theme=night] .tag-chip{background:var(--btn-surface);border-color:var(--btn-border);color:var(--ink)}html[data-theme=night] .tag-chip.on{background:var(--btn-primary-bg);color:var(--btn-primary-fg);border-color:var(--btn-primary-bg)}html[data-theme=night] .tag-form input,html[data-theme=night] .search,html[data-theme=night] .page-input input,html[data-theme=night] .book-search input,html[data-theme=night] .auth-card input{background:var(--btn-surface);border-color:var(--btn-border);color:var(--ink)}html[data-theme=night] .reader-bar{border-bottom-color:var(--btn-border);background:#121820eb}html[data-theme=night] .reader-cluster{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){html[data-theme=night] .reader-cluster{background:color-mix(in srgb, var(--ink) 8%, var(--paper))}}html[data-theme=night] .reader-cluster{border-color:var(--btn-border)}html[data-theme=night] .book-search-menu{background:var(--paper);border-color:var(--btn-border)}html[data-theme=night] .reader-sidebar{border-left-color:var(--btn-border);background:#121820f5}html[data-theme=night] .paper-chip{background:var(--btn-surface);border-color:var(--btn-border);color:var(--ink-soft)}html[data-theme=night] .paper-chip:hover,html[data-theme=night] .paper-chip.on{background:var(--btn-surface-hover);border-color:var(--accent);color:var(--ink)}html[data-theme=night] .paper-swatch{background-color:#0e1218}html[data-theme=night] .ann-link,html[data-theme=night] .search-hits button,html[data-theme=night] .flashcard,html[data-theme=night] .sidebar-tabs button{background:var(--btn-surface);border-color:var(--btn-border);color:var(--ink)}html[data-theme=night] .sidebar-tabs button.on{background:var(--btn-primary-bg);color:var(--btn-primary-fg);border-color:var(--btn-primary-bg)}html[data-theme=night] .check-pill{background:var(--btn-surface);border-color:var(--btn-border);color:var(--ink)}html[data-theme=night] .chat-panel{--chat-bg:#2a2432;--chat-user:#9a8cc4;--chat-user-text:#f7f4ff;--chat-bot:#3a3344;--chat-bot-text:#ece6df;--chat-line:#e8dcd21f;--chat-shadow:0 8px 18px #00000047}html[data-theme=night] .chat-form input{background:var(--chat-bot)}@supports (color:color-mix(in lab, red, red)){html[data-theme=night] .chat-form input{background:color-mix(in srgb, var(--chat-bot) 88%, #000)}}html[data-theme=night] .chat-form input{color:var(--chat-bot-text)}html[data-theme=night] .chat-table-wrap{background:var(--chat-bot)}@supports (color:color-mix(in lab, red, red)){html[data-theme=night] .chat-table-wrap{background:color-mix(in srgb, var(--chat-bot) 70%, #000)}}html[data-theme=night] .chat-avatar{background:var(--chat-user)}@supports (color:color-mix(in lab, red, red)){html[data-theme=night] .chat-avatar{background:color-mix(in srgb, var(--chat-user) 28%, #2a2432)}}html[data-theme=night] .pdf-page{filter:invert(.92)hue-rotate(180deg)}html[data-theme=night] .epub-chapter{color:#dde3ec;background:#121820}html[data-theme=night] .epub-nav{background:#0e1218d9}html[data-theme=night] .progress-fill{background:#8bbcff}html[data-theme=paper] .page-margin,html[data-theme=paper] .page-margin.is-sheet{background:#f3ead8}html[data-theme=night] .page-margin,html[data-theme=night] .page-margin.is-sheet{filter:drop-shadow(2px 4px 12px #00000073);background:#d8d0c0}.progress-track{background:#00000040;height:4px;position:absolute;bottom:0;left:0;right:0}.progress-fill{background:#245bdb;height:100%}.format-badge{letter-spacing:.04em;color:#fff;background:#1c2430cc;border-radius:4px;padding:.15rem .4rem;font-size:.65rem;font-weight:700;position:absolute;top:8px;left:8px}.book-tags{flex-wrap:wrap;gap:.25rem;margin-top:.35rem;display:flex}.tag-chip{border:1px solid var(--line);cursor:pointer;color:var(--ink-soft);background:#ffffff8c;border-radius:999px;padding:.15rem .5rem;font-size:.72rem}.tag-chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}.tag-form input{border:1px dashed var(--line);width:4.5rem;color:var(--ink-soft);background:0 0;border-radius:999px;padding:.15rem .45rem;font-size:.72rem}.tag-filter-row{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:.4rem;margin:-.5rem 0 1.25rem;font-size:.85rem;display:flex}.book-sync{color:#fff;cursor:pointer;opacity:0;background:#1c2430bf;border:0;border-radius:999px;width:24px;height:24px;transition:opacity .2s;position:absolute;top:-6px;right:22px}.book-item:hover .book-sync{opacity:1}.spread-grid{grid-template-columns:1fr 1fr;align-items:start;gap:1rem;max-width:1400px;margin:0 auto;display:grid!important}.book-search{width:100%;display:block;position:relative}.book-search-row{align-items:center;gap:.35rem;display:flex}.book-search input{border:1px solid var(--line);background:var(--paper);border-radius:999px;flex:1;min-width:0;padding:.32rem .75rem}@supports (color:color-mix(in lab, red, red)){.book-search input{background:color-mix(in srgb, var(--paper) 82%, white)}}.book-search input{font-size:.8rem}.book-search-menu{z-index:40;background:var(--paper);border:1px solid var(--line);width:min(24rem,92vw);max-height:min(16rem,40vh);box-shadow:var(--shadow);border-radius:12px;padding:.55rem .6rem;position:absolute;top:calc(100% + .35rem);right:0;overflow:auto}.search-hits{gap:.25rem;margin:0;padding:0;list-style:none;display:grid}.search-hits button{text-align:left;border:1px solid var(--line);cursor:pointer;width:100%;color:var(--ink);background:#fff;border-radius:8px;padding:.4rem .55rem;font-size:.8rem}.sidebar-tabs.wrap{flex-wrap:wrap}.chat-panel{--chat-bg:#f2eee9;--chat-user:#8b7db3;--chat-user-text:#fff;--chat-bot:#fff;--chat-bot-text:#4a4a4a;--chat-line:#5040601f;--chat-shadow:0 8px 18px #503c5a1a;background-color:var(--chat-bg);background-image:radial-gradient(circle at 12% 18%,#8b7db312,#0000 28%),radial-gradient(circle at 88% 82%,#b4967814,#0000 32%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cg fill='none' stroke='%238b7db3' stroke-opacity='0.07' stroke-width='1'%3E%3Cpath d='M18 28c18-8 22 14 8 18'/%3E%3Cpath d='M102 22c12 10-4 24-14 12'/%3E%3Cpath d='M40 108c20 4 18-18 2-14'/%3E%3Ccircle cx='118' cy='96' r='10'/%3E%3C/g%3E%3C/svg%3E");background-size:auto,auto,140px 140px;border-radius:1.1rem;flex-direction:column;gap:.75rem;min-height:280px;margin:0 -.35rem;padding:.7rem .65rem .8rem;display:flex}.chat-row.passage{text-align:left;cursor:pointer;width:100%;color:inherit;font:inherit;background:0 0;border:0;padding:0;display:block}.chat-bubble.passage{background:var(--chat-user);max-width:100%}@supports (color:color-mix(in lab, red, red)){.chat-bubble.passage{background:color-mix(in srgb, var(--chat-user) 14%, var(--chat-bot))}}.chat-bubble.passage{color:var(--chat-bot-text);border:1px solid var(--chat-user)}@supports (color:color-mix(in lab, red, red)){.chat-bubble.passage{border:1px solid color-mix(in srgb, var(--chat-user) 22%, transparent)}}.chat-bubble.passage{border-left:3px solid var(--chat-user);box-shadow:none;border-radius:.85rem;font-size:.82rem;line-height:1.4}.chat-passage-label{letter-spacing:.03em;text-transform:uppercase;color:var(--chat-user);margin-bottom:.28rem;font-size:.68rem;font-weight:650;display:block}@supports (color:color-mix(in lab, red, red)){.chat-passage-label{color:color-mix(in srgb, var(--chat-user) 75%, #4a4a4a)}}.chat-log{flex-direction:column;flex:1;gap:.7rem;max-height:50vh;padding:.15rem .1rem .35rem;display:flex;overflow:auto}.chat-empty{color:var(--chat-bot-text);margin:.4rem .2rem}@supports (color:color-mix(in lab, red, red)){.chat-empty{color:color-mix(in srgb, var(--chat-bot-text) 55%, transparent)}}.chat-row{align-items:flex-end;gap:.4rem;max-width:100%;display:flex}.chat-row.user{justify-content:flex-end}.chat-row.assistant{justify-content:flex-start}.chat-avatar{object-fit:cover;background:var(--chat-user);border-radius:999px;flex:none;width:28px;height:28px}@supports (color:color-mix(in lab, red, red)){.chat-avatar{background:color-mix(in srgb, var(--chat-user) 18%, #fff)}}.chat-avatar{box-shadow:0 2px 8px #503c5a1f}.chat-bubble{white-space:pre-wrap;max-width:min(92%,22rem);box-shadow:var(--chat-shadow);padding:.7rem .9rem;font-size:.9rem;line-height:1.45}.chat-bubble.user{background:var(--chat-user);color:var(--chat-user-text);border-radius:1.35rem 1.35rem .4rem}.chat-bubble.assistant{background:var(--chat-bot);color:var(--chat-bot-text);border-radius:1.35rem 1.35rem 1.35rem .4rem}.chat-bubble.assistant:has(.chat-table){white-space:normal;max-width:100%}.chat-md{flex-direction:column;gap:.55rem;display:flex}.chat-md-text{white-space:pre-wrap}.chat-table-wrap{border:1px solid var(--chat-line);background:#fff;border-radius:.55rem;margin:.1rem 0;overflow-x:auto}.chat-table{border-collapse:collapse;width:100%;min-width:12rem;font-size:.78rem;line-height:1.35}.chat-table th,.chat-table td{border:1px solid var(--chat-line);text-align:left;vertical-align:top;white-space:pre-wrap;padding:.38rem .55rem}.chat-table th{background:var(--chat-user)}@supports (color:color-mix(in lab, red, red)){.chat-table th{background:color-mix(in srgb, var(--chat-user) 16%, #fff)}}.chat-table th{color:var(--chat-bot-text);font-weight:650}.chat-table tbody tr:nth-child(2n) td{background:var(--chat-user)}@supports (color:color-mix(in lab, red, red)){.chat-table tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--chat-user) 7%, #fff)}}.chat-form{gap:.4rem;display:flex}.chat-form input{border:1px solid var(--chat-line);color:var(--chat-bot-text);background:#fff;border-radius:999px;flex:1;padding:.5rem .85rem;box-shadow:0 4px 12px #503c5a0f}.chat-form input::placeholder{color:var(--chat-bot-text)}@supports (color:color-mix(in lab, red, red)){.chat-form input::placeholder{color:color-mix(in srgb, var(--chat-bot-text) 45%, transparent)}}.chat-form input:focus{border-color:var(--chat-user);outline:none}@supports (color:color-mix(in lab, red, red)){.chat-form input:focus{border-color:color-mix(in srgb, var(--chat-user) 55%, transparent)}}.chat-form input:focus{box-shadow:0 0 0 3px var(--chat-user)}@supports (color:color-mix(in lab, red, red)){.chat-form input:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--chat-user) 18%, transparent)}}.chat-form .btn-primary{background:var(--chat-user);color:#fff;box-shadow:0 6px 14px var(--chat-user);border:0}@supports (color:color-mix(in lab, red, red)){.chat-form .btn-primary{box-shadow:0 6px 14px color-mix(in srgb, var(--chat-user) 35%, transparent)}}.chat-form .btn-primary:hover:not(:disabled){filter:brightness(1.05)}.btn-primary.compact{border-radius:999px;padding:.4rem .75rem}.cards-panel{gap:.75rem;display:grid}.flashcard{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:16px;min-height:140px;padding:1rem;font-size:.95rem;line-height:1.45;box-shadow:0 8px 20px #1c243014}.flashcard.flipped{color:#fff;background:#1c2430}.card-nav{gap:.4rem;display:flex}.epub-scroll{flex-direction:column;height:100%;min-height:0;padding:.75rem .85rem 1rem;display:flex;position:relative}.epub-scroll.is-flow,.epub-scroll.is-paged{overflow:hidden}.epub-host{background:var(--paper);min-width:0;min-height:0;box-shadow:var(--shadow);border-radius:4px;flex:1;position:relative;overflow:hidden}.epub-host .epub-container{width:100%!important;height:100%!important}.epub-host iframe{background:0 0;border:0}.epub-sheet-count{color:var(--ink-soft)}.epub-foot{flex-shrink:0;justify-content:flex-end;padding:.5rem 0 .25rem;display:flex}.epub-footnote{z-index:70;background:var(--paper);width:min(22rem,100vw - 1.5rem);max-height:min(16rem,40vh);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:10px;padding:.75rem .9rem;font-size:.92rem;line-height:1.45;position:fixed;overflow:auto}.epub-footnote-body p:last-child{margin-bottom:0}.epub-footnote a{color:var(--accent)}.type-panel{z-index:60;background:var(--paper);border:1px solid var(--line);width:20rem;max-width:calc(100vw - 1rem);max-height:calc(100vh - 1rem);box-shadow:var(--shadow);border-radius:.8rem;gap:.55rem;padding:.8rem;font-size:.8rem;animation:.16s ease-out type-panel-in;display:grid;position:fixed;overflow-y:auto}@keyframes type-panel-in{0%{opacity:0;transform:translateY(-.25rem)}}.type-group{gap:.35rem;display:grid}.type-group--row{border-top:1px solid var(--line);grid-auto-flow:column;justify-content:space-between;align-items:center;padding-top:.15rem}.type-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem;display:grid}.type-choice{border:1px solid var(--line);color:inherit;cursor:pointer;background:0 0;border-radius:.5rem;padding:.35rem .5rem;font-size:.85rem;transition:background .15s,border-color .15s}.type-choice:hover{background:var(--accent-soft)}.type-choice.is-on{border-color:var(--accent);background:var(--accent-soft)}.type-choice.font-literary{font-family:var(--font-cyr-display), Georgia, serif}.type-choice.font-grotesque{font-family:var(--font-sans), system-ui, sans-serif}.type-choice.font-georgia{font-family:Georgia,Times New Roman,serif}.type-choice.font-verdana{font-family:Verdana,Tahoma,sans-serif}.type-row{grid-template-columns:1fr auto;align-items:center;gap:.15rem .5rem;display:grid}.type-row input[type=range]{width:100%;accent-color:var(--accent);grid-area:2/1/3/3}.type-row-label{color:var(--ink-soft);grid-area:1/1}.type-row-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink-soft);grid-area:1/2}.tiny{font-size:.75rem}html[data-theme=night] .reader-bar .check-pill{background:#141a24bf}html[data-theme=night] .toc-link:hover{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){html[data-theme=night] .toc-link:hover{background:color-mix(in srgb, var(--ink) 10%, var(--paper))}}html[data-theme=night] .toc-twist:hover{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){html[data-theme=night] .toc-twist:hover{background:color-mix(in srgb, var(--ink) 12%, transparent)}}.auth-page{place-items:center;min-height:100vh;padding:2rem 1rem;display:grid}.auth-card,.account-card{border:1px solid var(--line);width:min(420px,100%);box-shadow:var(--shadow);background:#ffffffb8;border-radius:18px;gap:.85rem;padding:1.5rem;display:grid}html[data-theme=night] .auth-card,html[data-theme=night] .account-card,html[data-theme=night] .price-card{background:#141a24e0}html[data-theme=night] .account-form input{color:var(--ink);background:#141a24e0}.auth-card h1,.account-main h1{font-family:var(--font-heading);margin:0;font-weight:650}.auth-card label{color:var(--ink-soft);gap:.35rem;font-size:.85rem;display:grid}.auth-card input{border:1px solid var(--line);color:var(--ink);background:#fffc;border-radius:12px;padding:.65rem .8rem}.oauth-block{gap:.65rem;display:grid}.oauth-divider{color:var(--ink-soft);grid-template-columns:1fr auto 1fr;align-items:center;gap:.65rem;font-size:.78rem;display:grid}.oauth-divider:before,.oauth-divider:after{content:"";background:var(--line);height:1px}.oauth-btn{border:1px solid var(--line);width:100%;min-height:2.6rem;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.55rem .9rem;font-size:.92rem;font-weight:560;display:inline-flex}.oauth-btn:disabled{opacity:.55;cursor:not-allowed}.oauth-btn--vk{color:#fff;background:#07f;border-color:#07f}.oauth-btn--vk:hover:not(:disabled){background:#0066db;border-color:#0066db}.oauth-btn--yandex{color:#fff;background:#fc3f1d;border-color:#fc3f1d}.oauth-btn--yandex:hover:not(:disabled){background:#e03516;border-color:#e03516}.oauth-btn--telegram{color:#fff;background:#2aabee;border-color:#2aabee}.oauth-btn--telegram:hover:not(:disabled){background:#229ed9;border-color:#229ed9}.oauth-btn-icon{letter-spacing:.02em;background:#ffffff2e;border-radius:.35rem;place-items:center;min-width:1.6rem;height:1.35rem;padding:0 .25rem;font-size:.68rem;font-weight:700;display:inline-grid}html[data-theme=night] .oauth-btn:not(.oauth-btn--vk):not(.oauth-btn--yandex):not(.oauth-btn--telegram){background:var(--btn-surface);border-color:var(--btn-border);color:var(--ink)}.password-input-wrap{display:grid;position:relative}.password-input-wrap input{width:100%;padding-right:4.5rem}.password-toggle{font:inherit;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.35rem .5rem;font-size:.78rem;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.password-toggle:hover{color:var(--ink);background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.password-toggle:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}}.auth-brand{font-family:var(--font-heading);font-size:1.4rem;font-weight:650}.auth-error{color:#c0392b;margin:0;font-size:.88rem}.auth-notice{background:var(--accent);border-radius:12px;gap:.5rem;padding:.75rem;display:grid}@supports (color:color-mix(in lab, red, red)){.auth-notice{background:color-mix(in srgb, var(--accent) 10%, var(--paper))}}.auth-notice{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.auth-notice{border:1px solid color-mix(in srgb, var(--accent) 25%, var(--line))}}.auth-notice p{color:var(--ink-soft);margin:0;font-size:.88rem}.auth-switch{color:var(--ink-soft);font-size:.9rem}.auth-switch a{text-decoration:underline}.auth-legal{color:var(--ink-soft);margin:0;font-size:.78rem;line-height:1.45}.auth-legal a{text-decoration:underline}.legal-page{max-width:720px}.legal-main{gap:.85rem;display:grid}.legal-main h1{font-family:var(--font-display);margin:0;font-size:clamp(1.8rem,4vw,2.3rem)}.legal-main h2{margin:1.1rem 0 0;font-size:1.15rem}.legal-main p,.legal-main li{color:var(--ink-soft);margin:0;line-height:1.65}.legal-main ul{gap:.55rem;margin:0;padding-left:1.2rem;display:grid}.legal-main a{text-decoration:underline}.legal-updated{font-size:.88rem}.legal-contact{margin-top:.5rem}html[data-theme=night] .legal-main h1,html[data-theme=night] .legal-main h2{color:var(--ink)}.account-page{max-width:min(1680px,100vw - 2rem);margin:0 auto;padding:1.25rem 1.25rem 2.5rem}.account-page--library{max-width:min(1680px,100vw - 2rem)}.account-page--cabinet{max-width:560px;padding:1rem 1rem 2rem}.account-page--cabinet .account-header{margin-bottom:.85rem}.account-page--cabinet .account-header .btn-ghost{padding:.28rem .65rem;font-size:.8rem}.account-page--cabinet .account-main{gap:.65rem}.account-page--cabinet .account-card{border-radius:14px;gap:.55rem;width:100%;padding:.85rem .95rem}.account-page--cabinet .account-card h1{margin:0;font-size:1.15rem}.account-page--cabinet .account-card h2{margin:0;font-size:.92rem}.account-page--cabinet .account-identity{gap:.65rem}.account-page--cabinet .user-avatar--lg{width:3.1rem;height:3.1rem;font-size:.9rem}.account-page--cabinet .user-avatar-edit-label{font-size:.65rem}.account-page--cabinet .account-form{gap:.45rem}.account-page--cabinet .account-form label{gap:.2rem;font-size:.78rem}.account-page--cabinet .account-form input,.account-page--cabinet .password-input-wrap input{border-radius:10px;padding:.42rem .65rem;font-size:.85rem}.account-page--cabinet .password-toggle{font-size:.7rem}.account-page--cabinet .btn-primary,.account-page--cabinet .account-card .btn-ghost{width:fit-content;box-shadow:none;padding:.32rem .7rem;font-size:.8rem}.account-page--cabinet .account-actions{gap:.4rem;margin-top:.35rem}.account-page--cabinet .account-settings-row{gap:.4rem;padding:0}.account-page--cabinet .account-sub-line{margin:0;font-size:.85rem}.account-page--cabinet .account-support{margin:.15rem 0 0}.library-layout{grid-template-columns:minmax(210px,260px) minmax(0,1fr);align-items:start;gap:1.25rem 1.75rem;width:100%;display:grid}.library-main{min-width:0}body.is-selecting-books .library-main{padding-bottom:5.5rem}.library-main-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem 1.25rem;margin-bottom:1rem;display:flex}.library-main-head h1{margin:0;font-size:1.45rem}.library-main-head .search{flex:16rem;max-width:22rem}.library-main-actions{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.75rem;font-size:.8rem;display:flex}.library-main-actions .btn-primary,.library-main-actions .btn-ghost{box-shadow:none;padding:.32rem .72rem;font-size:.8rem}.library-main-actions .drive-import-link input{flex-basis:11rem;width:11rem;padding:.32rem .7rem;font-size:.8rem}.library-main-actions .drive-import{flex:0 auto;gap:.35rem}.library-main-actions .drive-hint{font-size:.76rem}.cloud-disks{margin:0 0 1.1rem}.cloud-disks-row{flex-wrap:wrap;gap:.4rem;display:flex}.cloud-disk-chip{border:1px solid var(--line);background:var(--btn-surface);border-radius:999px;align-items:center;gap:.35rem;padding:.22rem .35rem .22rem .55rem;font-size:.78rem;display:inline-flex}.cloud-disk-dot{background:var(--ink-soft);opacity:.4;border-radius:50%;width:.45rem;height:.45rem}.cloud-disk-dot.is-on{opacity:1;background:#3c9d5a}.cloud-disk-name{font-weight:550}.cloud-disk-chip .btn-ghost{box-shadow:none;padding:.2rem .55rem;font-size:.76rem}.cloud-disk-picker{border:1px solid var(--line);background:var(--btn-surface);border-radius:12px;margin-top:.55rem;padding:.7rem .85rem}.cloud-disk-picker p{margin:0 0 .4rem;font-size:.85rem}.cloud-disk-picker ul{flex-direction:column;gap:.25rem;max-height:12rem;margin:0 0 .5rem;padding:0;list-style:none;display:flex;overflow:auto}.cloud-disk-picker .btn-ghost{text-align:left;justify-content:flex-start;width:100%}.cloud-disk-picker-actions{flex-wrap:wrap;gap:.45rem;display:flex}.library-main .drive-import-link{width:auto;max-width:none}.library-sidebar{background:var(--ink);border-radius:.85rem;padding:.85rem .65rem;position:sticky;top:1rem}@supports (color:color-mix(in lab, red, red)){.library-sidebar{background:color-mix(in srgb, var(--ink) 6%, var(--paper))}}.library-sidebar{border:1px solid var(--ink)}@supports (color:color-mix(in lab, red, red)){.library-sidebar{border:1px solid color-mix(in srgb, var(--ink) 10%, transparent)}}.library-sidebar-section+.library-sidebar-section{border-top:1px solid var(--ink);margin-top:1.15rem;padding-top:1rem}@supports (color:color-mix(in lab, red, red)){.library-sidebar-section+.library-sidebar-section{border-top:1px solid color-mix(in srgb, var(--ink) 10%, transparent)}}.library-sidebar-title{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 .55rem;padding:0 .45rem;font-size:.78rem;font-weight:700}.library-sync{margin:0 .45rem .65rem}.library-sync-line{color:var(--ink-soft);align-items:center;gap:.4rem;font-size:.75rem;display:flex}.library-sync-dot{background:var(--ink-soft);border-radius:50%;flex-shrink:0;width:.45rem;height:.45rem}.library-sync-dot.is-syncing{background:#2aabee;animation:1s ease-in-out infinite library-sync-pulse}.library-sync-dot.is-ok{background:#34c759}.library-sync-dot.is-error{background:#ff3b30}@keyframes library-sync-pulse{50%{opacity:.35}}.library-sync-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.library-sync-btn{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:.72rem;text-decoration:underline}.library-sync-btn:disabled{opacity:.5;cursor:default}.library-sync-track{background:var(--ink);border-radius:99px;height:3px;margin-top:.35rem}@supports (color:color-mix(in lab, red, red)){.library-sync-track{background:color-mix(in srgb, var(--ink) 12%, transparent)}}.library-sync-track{overflow:hidden}.library-sync-bar{border-radius:inherit;background:#2aabee;width:0;height:100%;transition:width .25s}.library-sync-track.is-indeterminate .library-sync-bar{width:40%;animation:1.1s ease-in-out infinite library-sync-indeterminate}@keyframes library-sync-indeterminate{0%{transform:translate(-120%)}to{transform:translate(280%)}}.library-sync-book{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;margin:.3rem 0 0;font-size:.68rem;overflow:hidden}.library-nav{gap:.15rem;margin:0;padding:0;list-style:none;display:grid}.library-nav-btn{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.55rem;align-items:center;gap:.55rem;padding:.48rem .55rem;font-size:.88rem;display:flex}a.library-nav-btn{box-sizing:border-box;text-decoration:none}.library-nav-btn:hover{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.library-nav-btn:hover{background:color-mix(in srgb, var(--ink) 8%, transparent)}}.library-nav-btn.is-on{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.library-nav-btn.is-on{background:color-mix(in srgb, var(--ink) 14%, var(--paper))}}.library-nav-btn.is-on{font-weight:600}.library-nav-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.library-nav-count{color:var(--ink-soft);font-size:.72rem}.library-nav-collection{border-radius:.55rem;grid-template-columns:1fr auto;align-items:center;gap:.15rem;transition:background .15s,box-shadow .15s;display:grid}.library-sidebar.is-receiving .library-collections.is-drop-zone{outline:2px dashed var(--accent);outline-offset:2px;background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.library-sidebar.is-receiving .library-collections.is-drop-zone{background:color-mix(in srgb, var(--accent) 10%, var(--paper))}}.library-drop-hint{color:var(--accent);margin:0 0 .45rem;padding:0 .45rem;font-size:.78rem;font-weight:600}.library-sidebar.is-receiving .library-nav-collection{box-shadow:inset 0 0 0 1px var(--accent)}@supports (color:color-mix(in lab, red, red)){.library-sidebar.is-receiving .library-nav-collection{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 45%, transparent)}}.library-sidebar.is-receiving .library-nav-collection{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.library-sidebar.is-receiving .library-nav-collection{background:color-mix(in srgb, var(--accent) 6%, transparent)}}.library-nav-collection.is-drop-target{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.library-nav-collection.is-drop-target{background:color-mix(in srgb, var(--accent) 22%, var(--paper))}}.library-nav-collection.is-drop-target{box-shadow:inset 0 0 0 2px var(--accent)}.library-nav-remove{width:1.5rem;height:1.5rem;color:var(--ink-soft);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:999px}.library-nav-collection:hover .library-nav-remove,.library-nav-remove:focus{opacity:1}.library-new-collection-btn{width:100%;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:.55rem;align-items:center;gap:.45rem;margin-top:.45rem;padding:.48rem .55rem;font-size:.86rem;display:flex}.library-new-collection-btn:hover{color:var(--ink);background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.library-new-collection-btn:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}}.library-new-collection{gap:.45rem;margin-top:.45rem;display:grid}.library-new-collection input{border:1px solid var(--line);background:var(--btn-surface);width:100%;color:var(--ink);border-radius:.55rem;padding:.45rem .6rem;font-size:.86rem}.library-new-collection-actions{gap:.35rem;display:flex}.book-actions-row{flex-wrap:wrap;gap:.25rem;margin-bottom:.2rem;display:flex}.book-status-btn{border:1px solid var(--line);background:var(--btn-surface);min-width:1.55rem;height:1.55rem;color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:0 .35rem;font-size:.72rem}.book-status-btn.is-on{color:var(--ink);border-color:var(--ink)}@supports (color:color-mix(in lab, red, red)){.book-status-btn.is-on{border-color:color-mix(in srgb, var(--ink) 25%, var(--line))}}.book-status-btn.is-on{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.book-status-btn.is-on{background:color-mix(in srgb, var(--ink) 10%, var(--paper))}}.book-status-btn--collections{padding:0 .45rem;font-size:.65rem}.book-collection-chips{flex-wrap:wrap;gap:.2rem;margin-bottom:.15rem;display:flex}.tag-chip--static{pointer-events:none;font-size:.65rem}.book-collection-picker{border:1px solid var(--line);background:var(--btn-surface);border-radius:.45rem;gap:.2rem;max-height:6.5rem;padding:.35rem;display:grid;overflow:auto}.book-collection-option{color:var(--ink);cursor:pointer;align-items:center;gap:.35rem;font-size:.68rem;display:flex}.book-collection-empty{color:var(--ink-soft);margin:0;font-size:.68rem}.format-badge--done{background:#34c759d9;left:.35rem;right:auto}.format-badge--cloud{letter-spacing:.02em;background:#282828c7;font-size:.58rem;bottom:1.35rem;left:.35rem;right:auto}.account-card--inline{margin-top:2rem}.shelf-page--library{width:100%;max-width:none;min-height:100dvh;padding:0 0 env(safe-area-inset-bottom);flex-direction:column;display:flex}.shelf-page--library .shelf-header{padding:.55rem 1.15rem;padding-top:max(.55rem, env(safe-area-inset-top));padding-left:max(1.15rem, env(safe-area-inset-left));padding-right:max(1.15rem, env(safe-area-inset-right));border-bottom:1px solid var(--line);background:var(--paper);margin-bottom:0}@supports (color:color-mix(in lab, red, red)){.shelf-page--library .shelf-header{background:color-mix(in srgb, var(--paper) 78%, transparent)}}.shelf-page--library .shelf-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:8;position:sticky;top:0}.shelf-page--library .shelf-top{animation:none}.shelf-page--library .library-layout{flex:1;grid-template-columns:minmax(200px,248px) minmax(0,1fr);align-items:stretch;gap:0;margin-top:0}.shelf-page--library .library-sidebar{border:0;border-right:1px solid var(--ink);border-radius:0;align-self:stretch;min-height:calc(100dvh - 4.25rem);position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.shelf-page--library .library-sidebar{border-right:1px solid color-mix(in srgb, var(--ink) 10%, transparent)}}.shelf-page--library .library-sidebar{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.shelf-page--library .library-sidebar{background:color-mix(in srgb, var(--ink) 5%, var(--paper))}}.shelf-page--library .library-sidebar{padding:1.1rem .7rem 2.5rem}.shelf-page--library .library-main{padding:1.15rem 1.6rem 3.5rem;padding-right:max(1.6rem, env(safe-area-inset-right))}.shelf-page--library .shelf-rows{--shelf-cover-w:8.6rem;--shelf-gap-x:1.15rem}.shelf-page--library .library-main-head{align-items:center}.shelf-page--library .library-main-head h1{letter-spacing:-.03em;font-size:1.85rem;font-weight:650}.shelf-nav-search{width:min(20rem,42vw);max-width:22rem;margin-right:.15rem}@media (max-width:860px){.library-layout{grid-template-columns:1fr}.library-sidebar{position:static}}@media (min-width:740px){.shelf-page--library .library-layout{grid-template-columns:minmax(200px,248px) minmax(0,1fr)}.shelf-page--library .library-sidebar{min-height:calc(100dvh - 4.25rem);position:sticky;top:0}}.account-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.account-main{gap:1rem;display:grid}.account-card{width:100%}.account-card h1{font-family:var(--font-heading);margin:0 0 1rem;font-size:1.45rem;font-weight:650}.account-card h2{font-family:var(--font-heading);margin:0 0 .5rem;font-size:1.15rem;font-weight:650}.account-identity-name{margin:0 0 .2rem;font-size:1.05rem;font-weight:600}.account-form{gap:.75rem;display:grid}.account-form label{color:var(--ink-soft);gap:.35rem;font-size:.85rem;display:grid}.account-form input{border:1px solid var(--line);color:var(--ink);background:#fffc;border-radius:12px;padding:.65rem .8rem}.account-form input:disabled{opacity:.7}.account-settings-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.65rem;padding:.35rem 0;display:flex}.account-settings-row span{color:var(--ink-soft);font-size:.9rem}.pricing-main{gap:1.25rem;display:grid}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.pricing-lead{max-width:36rem;margin:-.35rem 0 1.25rem}.account-actions{flex-wrap:wrap;gap:.65rem;margin-top:.85rem;display:flex}.price-card{border:1px solid var(--line);background:#ffffffb3;border-radius:18px;gap:.75rem;padding:1.25rem;display:grid}.price-card.featured{border-color:#245bdb73;box-shadow:0 12px 30px #245bdb1f}.price-card .price{font-size:1.8rem;font-family:var(--font-heading);letter-spacing:-.02em;margin:0;font-weight:700}.price-card .price span{color:var(--ink-soft);font-size:.9rem}.price-card ul{color:var(--ink-soft);margin:0;padding-left:1.1rem;line-height:1.5}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-shell-main{flex:1 0 auto}.site-footer{border-top:1px solid var(--line);background:var(--paper);margin-top:3rem}@supports (color:color-mix(in lab, red, red)){.site-footer{background:color-mix(in srgb, var(--paper) 78%, transparent)}}.site-footer{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.site-footer-inner{max-width:min(1680px,100vw - 2rem);margin:0 auto;padding:2.25rem 1.25rem 1.75rem}.site-footer-brand{margin-bottom:1.75rem}.site-footer-brand p{max-width:28rem;color:var(--ink-soft);margin:.55rem 0 0;font-size:.92rem}.site-footer-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem 1.25rem;display:grid}@media (max-width:900px){.site-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.site-footer-grid{grid-template-columns:1fr}}.site-footer-grid h2{letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin:0 0 .85rem;font-size:.78rem;font-weight:700}.site-footer-grid ul{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.site-footer-grid li{color:var(--ink-soft);padding-left:.9rem;font-size:.9rem;position:relative}.site-footer-grid li:before{content:"";background:var(--ink);border-radius:50%;width:.28rem;height:.28rem;position:absolute;top:.55em;left:0}@supports (color:color-mix(in lab, red, red)){.site-footer-grid li:before{background:color-mix(in srgb, var(--ink) 55%, transparent)}}.site-footer-grid a,.site-footer-grid span{color:inherit}.site-footer-grid a:hover{color:var(--ink)}.site-footer-signup-hint{color:var(--ink-soft);margin:0 0 .75rem;font-size:.86rem;line-height:1.4}.site-footer-signup{border:1px solid var(--line);background:var(--paper);border-radius:.55rem;align-items:center;gap:.35rem;display:flex}@supports (color:color-mix(in lab, red, red)){.site-footer-signup{background:color-mix(in srgb, var(--paper) 92%, white)}}.site-footer-signup{padding:.2rem .35rem .2rem .75rem}.site-footer-signup input{min-width:0;color:var(--ink);background:0 0;border:0;outline:none;flex:1;padding:.55rem 0}.site-footer-signup input::placeholder{color:var(--ink-soft)}@supports (color:color-mix(in lab, red, red)){.site-footer-signup input::placeholder{color:color-mix(in srgb, var(--ink-soft) 80%, transparent)}}.site-footer-signup button{color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:.4rem;padding:.45rem .55rem;font-size:1.05rem;line-height:1}.site-footer-signup button:hover{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.site-footer-signup button:hover{background:color-mix(in srgb, var(--ink) 8%, transparent)}}.site-footer-note{color:var(--ink-soft);margin:.55rem 0 0;font-size:.82rem}.site-footer-copy{border-top:1px solid var(--line);color:var(--ink-soft);margin:2rem 0 0;padding-top:1rem;font-size:.8rem}html[data-theme=night] .site-footer{background:#0e1218b8}html[data-theme=night] .site-footer-signup{background:#121820eb}.feature-ribbon{margin:.5rem 0 2rem;animation:.8s .15s both rise}.feature-ribbon-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;margin-bottom:.85rem;display:flex}.feature-ribbon-head h2{font-family:var(--font-heading);color:var(--ink);margin:0;font-size:1.25rem;font-weight:600}.feature-ribbon-head p{color:var(--ink-soft);margin:0;font-size:.88rem}.feature-ribbon-viewport{border:1px solid var(--line);background:var(--paper);border-radius:1.1rem;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000);mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000)}@supports (color:color-mix(in lab, red, red)){.feature-ribbon-viewport{background:color-mix(in srgb, var(--paper) 70%, transparent)}}.feature-ribbon-viewport{padding:.85rem 0}.feature-ribbon-track{will-change:transform;gap:.85rem;width:max-content;padding:0 .85rem;animation:42s linear infinite ribbonScroll;display:flex}.feature-ribbon-viewport:hover .feature-ribbon-track{animation-play-state:paused}@keyframes ribbonScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.feature-ribbon-track{flex-wrap:wrap;justify-content:flex-start;width:100%;animation:none}.feature-ribbon-viewport{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}.feat-card{background:var(--paper);border-radius:.95rem;flex:none;width:11.5rem;padding:.85rem .9rem 1rem}@supports (color:color-mix(in lab, red, red)){.feat-card{background:color-mix(in srgb, var(--paper) 92%, transparent)}}.feat-card{border:1px solid var(--line);box-shadow:0 8px 20px var(--ink)}@supports (color:color-mix(in lab, red, red)){.feat-card{box-shadow:0 8px 20px color-mix(in srgb, var(--ink) 6%, transparent)}}.feat-visual{height:4.2rem;color:var(--ink);place-items:center;margin-bottom:.55rem;display:grid}.feat-svg{width:5.5rem;height:4rem}.feat-card h3{color:var(--ink);margin:0 0 .3rem;font-size:.92rem;font-weight:650}.feat-card p{color:var(--ink-soft);margin:0;font-size:.78rem;line-height:1.35}html[data-theme=night] .feature-ribbon-viewport,html[data-theme=night] .feat-card{background:#121820e0}.app-shell:has(.shelf-page--library){min-height:100dvh}.app-shell:has(.reader-shell){min-height:100dvh}.app-shell:has(.reader-shell) .app-shell-main{min-height:100dvh}.book-copy{flex:1;min-width:0}.book-item--details .book-foot{align-items:flex-start;min-height:2.8rem;padding-top:.15rem}.add-book-btn{background:var(--accent);color:#fff;cursor:pointer;box-shadow:0 8px 18px var(--accent);border:0;border-radius:999px;align-items:center;gap:.35rem;padding:.42rem .85rem;font-size:.88rem;font-weight:600;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.add-book-btn{box-shadow:0 8px 18px color-mix(in srgb, var(--accent) 28%, transparent)}}.add-book-btn span{font-size:1.15rem;line-height:1}.add-book-sheet-backdrop{z-index:70;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#12161c61;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.add-book-sheet{background:var(--paper);border-radius:1.15rem;width:min(32rem,100%);max-height:min(36rem,100dvh - 2rem);padding:1.1rem 1.15rem 1.25rem;overflow:auto}@supports (color:color-mix(in lab, red, red)){.add-book-sheet{background:color-mix(in srgb, var(--paper) 94%, var(--ink))}}.add-book-sheet{box-shadow:0 24px 60px #12161c47}.add-book-sheet-head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;display:flex}.add-book-sheet-head h2{margin:0;font-size:1.15rem}.add-book-sheet section+section{border-top:1px solid var(--line);margin-top:1.1rem;padding-top:.9rem}.add-book-sheet h3{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 .55rem;font-size:.78rem;font-weight:700}.reading-now{gap:1.1rem;margin:0 0 1.75rem;display:grid}.reading-now-hero{background:var(--ink);border-radius:1.15rem;grid-template-columns:7.5rem minmax(0,1fr);align-items:center;gap:1.1rem 1.25rem;padding:.85rem 1rem;display:grid}@supports (color:color-mix(in lab, red, red)){.reading-now-hero{background:color-mix(in srgb, var(--ink) 5%, var(--paper))}}.reading-now-hero{border:1px solid var(--ink)}@supports (color:color-mix(in lab, red, red)){.reading-now-hero{border:1px solid color-mix(in srgb, var(--ink) 8%, transparent)}}.reading-now-cover{aspect-ratio:2/3;border-radius:.35rem .55rem .55rem .35rem;overflow:hidden;box-shadow:0 14px 28px #1c243038}.reading-now-cover img,.reading-now-fallback{object-fit:cover;width:100%;height:100%;display:block}.reading-now-fallback{color:#fff;font-family:var(--font-heading);background:linear-gradient(155deg,#3a4454,#1a1f28);padding:.7rem;font-size:.82rem}.reading-now-copy h2{letter-spacing:-.03em;margin:.1rem 0 .2rem;font-size:1.35rem;font-weight:650}.reading-now-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin:0;font-size:.72rem;font-weight:700}.reading-now-author{color:var(--ink-soft);margin:0;font-size:.92rem}.reading-now-progress{background:var(--ink);border-radius:999px;height:4px;margin:.7rem 0 .75rem}@supports (color:color-mix(in lab, red, red)){.reading-now-progress{background:color-mix(in srgb, var(--ink) 10%, transparent)}}.reading-now-progress{overflow:hidden}.reading-now-progress span{background:var(--accent);border-radius:inherit;height:100%;display:block}.reading-now-go{background:var(--accent);color:#fff;border-radius:999px;padding:.32rem .8rem;font-size:.82rem;font-weight:600;display:inline-flex}.reading-now-rail{scroll-snap-type:x mandatory;gap:.85rem;padding:.15rem .1rem .45rem;display:flex;overflow-x:auto}.reading-now-rail-item{scroll-snap-align:start;flex:0 0 4.6rem;gap:.35rem;display:grid}.reading-now-rail-cover{aspect-ratio:2/3;border-radius:.3rem;overflow:hidden;box-shadow:0 8px 16px #1c24302e}.reading-now-rail-cover img,.reading-now-rail-item .reading-now-fallback{object-fit:cover;width:100%;height:100%}.reading-now-rail-item span{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.72rem;line-height:1.25;display:-webkit-box;overflow:hidden}.reader-chrome-bottom{z-index:20;padding:.4rem .75rem;padding-bottom:max(.55rem, env(safe-area-inset-bottom));background:var(--paper);gap:.4rem;display:grid;position:absolute;bottom:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.reader-chrome-bottom{background:color-mix(in srgb, var(--paper) 88%, transparent)}}.reader-chrome-bottom{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-top:1px solid var(--line);transition:opacity .28s,transform .28s}.reader-chrome-dock{flex-wrap:wrap;justify-content:flex-end;justify-self:end;align-items:center;gap:.25rem .45rem;display:flex}.reader-chrome-dock .btn-ghost.compact{height:2.55rem;box-shadow:none;background:0 0;border:0;border-radius:.7rem}.reader-chrome-dock .reader-pager{flex:0 auto}.reader-icon-btn{width:2.55rem;height:2.55rem;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:.7rem;font-size:1.05rem}.reader-icon-btn:hover,.reader-icon-btn.is-on{background:var(--ink)}@supports (color:color-mix(in lab, red, red)){.reader-icon-btn:hover,.reader-icon-btn.is-on{background:color-mix(in srgb, var(--ink) 10%, transparent)}}.reader-bookmark-btn{font-size:1.25rem}.reader-markup-tray{flex-wrap:wrap;align-items:center;gap:.35rem .5rem;padding:.15rem .15rem .35rem;display:flex}.reader-page-slider{flex:1;align-items:center;gap:.45rem;min-width:0;display:flex}.reader-page-slider input[type=range]{min-width:5rem;accent-color:var(--accent);flex:1}.reader-search-panel{width:min(26rem,100vw - 1.5rem)}.reader-appearance-panel{gap:.7rem;width:min(22rem,100vw - 1.5rem);display:grid}.reader-shell.chrome-off .reader-chrome-top{opacity:0;pointer-events:none;transform:translateY(-12px)}.reader-shell.chrome-off .reader-chrome-bottom{opacity:0;pointer-events:none;transform:translateY(12px)}.reader-shell.chrome-off .reader-sidebar-tab,.reader-shell.chrome-off .page-filmstrip-tab{opacity:0;pointer-events:none}@media (min-width:1100px){.shelf-page--library .shelf-rows{--shelf-cover-w:9.6rem}.reading-now-hero{grid-template-columns:8.6rem minmax(0,1fr)}}@media (max-width:720px){.reading-now-hero{grid-template-columns:5.6rem minmax(0,1fr)}.shelf-nav-search{flex-basis:100%;order:5;width:100%;max-width:none}.reader-chrome-dock{justify-content:flex-start;justify-self:stretch}.reader-chrome-dock .reader-pager{flex-basis:auto;justify-content:center}}html[data-theme=night] .reader-chrome-bottom{border-top-color:var(--btn-border);background:#121820eb}html[data-theme=night] .reading-now-hero,html[data-theme=night] .add-book-sheet{background:#121820f0}.vocab-page{max-width:42rem;padding-bottom:3rem}.vocab-main{gap:1.15rem;display:grid}.vocab-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.vocab-head h1{font-family:var(--font-heading);letter-spacing:-.03em;margin:0 0 .35rem;font-size:1.85rem;font-weight:650}.vocab-head .muted{max-width:32rem;margin:0}.vocab-search{width:100%}.vocab-empty{justify-items:start;gap:.85rem;padding:1.5rem 0;display:grid}.vocab-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.vocab-row{background:var(--ink);border-radius:14px;grid-template-columns:1fr auto;align-items:start;gap:.75rem;padding:.85rem .95rem;display:grid}@supports (color:color-mix(in lab, red, red)){.vocab-row{background:color-mix(in srgb, var(--ink) 5%, var(--paper))}}.vocab-row{border:1px solid var(--ink)}@supports (color:color-mix(in lab, red, red)){.vocab-row{border:1px solid color-mix(in srgb, var(--ink) 10%, transparent)}}.vocab-word{margin:0;font-size:1.05rem;font-weight:650}.vocab-lemma{color:var(--ink-soft);font-weight:500}.vocab-tr{color:var(--ink);margin:.2rem 0 0}.vocab-ctx{color:var(--ink-soft);margin:.35rem 0 0;font-size:.85rem;line-height:1.4}.vocab-study{justify-items:stretch;gap:1rem;display:grid}.vocab-study-meta{color:var(--ink-soft);margin:0;font-size:.88rem}.vocab-card{text-align:center;border:1px solid var(--ink);align-content:center;justify-items:center;gap:.45rem;min-height:16rem;padding:1.75rem 1.25rem;display:grid}@supports (color:color-mix(in lab, red, red)){.vocab-card{border:1px solid color-mix(in srgb, var(--ink) 12%, transparent)}}.vocab-card{background:var(--paper);color:var(--ink);box-shadow:0 16px 40px var(--ink);border-radius:18px}@supports (color:color-mix(in lab, red, red)){.vocab-card{box-shadow:0 16px 40px color-mix(in srgb, var(--ink) 10%, transparent)}}.vocab-card{cursor:pointer;font:inherit}.vocab-card-kicker,.vocab-card-hint,.vocab-card-ipa,.vocab-card-pos{color:var(--ink-soft);font-size:.82rem}.vocab-card-front,.vocab-card-back{font-family:var(--font-heading);letter-spacing:-.03em;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:650;line-height:1.15}.vocab-card-ctx{max-width:28rem;color:var(--ink-soft);font-size:.92rem;line-height:1.45}.vocab-card-hint{margin-top:.75rem}.vocab-study-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.65rem;display:flex}.vocab-grade-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;width:100%;display:grid}.vocab-grade{color:#fff;cursor:pointer;font:inherit;border:0;border-radius:12px;justify-items:center;gap:.12rem;padding:.55rem .25rem .62rem;display:grid}.vocab-grade:disabled{opacity:.38;cursor:not-allowed}.vocab-grade-label{letter-spacing:.01em;font-size:.78rem;font-weight:700}.vocab-grade-ivl{opacity:.9;font-size:.72rem}.vocab-grade-again{background:#b4453d}.vocab-grade-hard{background:#c4842a}.vocab-grade-good{background:#2f8a56}.vocab-grade-easy{background:#2f5fbd}.vocab-stats{color:var(--ink-soft);flex-wrap:wrap;gap:.45rem .85rem;margin:0;font-size:.85rem;display:flex}.vocab-row-due{color:var(--ink-soft);margin:.3rem 0 0;font-size:.78rem}.vocab-study-done{justify-items:start;padding:1rem 0 2rem}@media (max-width:480px){.vocab-grade-label{font-size:.7rem}.vocab-grade-ivl{font-size:.66rem}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
