@font-face{font-family:Golos Text;font-style:normal;font-weight:400 600;font-display:swap;src:url(./golos-text-cyrillic-ext-hICkpzq7.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Golos Text;font-style:normal;font-weight:400 600;font-display:swap;src:url(./golos-text-cyrillic-mKek_fSS.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Golos Text;font-style:normal;font-weight:400 600;font-display:swap;src:url(./golos-text-latin-BS5oQT7X.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Literata;font-style:normal;font-weight:400 700;font-display:swap;src:url(./literata-cyrillic-ext-ft8wJ_oX.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata;font-style:normal;font-weight:400 700;font-display:swap;src:url(./literata-cyrillic-DNk1XsNi.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Literata;font-style:normal;font-weight:400 700;font-display:swap;src:url(./literata-latin-Cedbco83.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-book: "Literata", Georgia, "Times New Roman", serif;--font-ui: "Golos Text", "Segoe UI", system-ui, sans-serif;--step--2: .6875rem;--step--1: .8125rem;--step-0: .9375rem;--step-1: 1.0625rem;--step-2: 1.25rem;--step-3: 1.5rem;--step-4: 1.9375rem;--step-5: 2.5rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 40px;--space-9: 56px;--radius-sm: 3px;--radius-md: 6px;--radius-lg: 12px;--shell-max: 1160px;--header-h: 56px;--ease: cubic-bezier(.2, .7, .3, 1)}:root,[data-ui-theme=light]{color-scheme:light;--bg: #fafafa;--bg-raised: #ffffff;--bg-sunken: #efeff0;--bg-hover: #eaeaeb;--ink: #383a42;--ink-2: #5d606b;--ink-3: #7c7f89;--rule: #e2e2e4;--rule-strong: #cfcfd3;--cloth: #3e8a3d;--cloth-hover: #33733a;--cloth-soft: #e2efe1;--on-cloth: #fafafa;--foil: #a86f00;--foil-soft: #f6ead0;--alarm: #c8453a;--alarm-soft: #fae3e0;--shadow-1: 0 1px 2px rgb(56 58 66 / .1), 0 2px 8px rgb(56 58 66 / .06);--shadow-2: 0 2px 6px rgb(56 58 66 / .12), 0 12px 28px rgb(56 58 66 / .14);--cover-edge: inset -1px 0 0 rgb(255 255 255 / .12), inset 1px 0 0 rgb(0 0 0 / .18)}[data-ui-theme=dark]{color-scheme:dark;--bg: #282c34;--bg-raised: #2f343e;--bg-sunken: #21252b;--bg-hover: #353b45;--ink: #dcdfe4;--ink-2: #a3aab8;--ink-3: #7f8694;--rule: #3a404b;--rule-strong: #4b5263;--cloth: #98c379;--cloth-hover: #aad38c;--cloth-soft: #313b30;--on-cloth: #21252b;--foil: #e5c07b;--foil-soft: #3a3628;--alarm: #e06c75;--alarm-soft: #3d2a2f;--shadow-1: 0 1px 2px rgb(0 0 0 / .35), 0 2px 8px rgb(0 0 0 / .25);--shadow-2: 0 2px 6px rgb(0 0 0 / .4), 0 12px 28px rgb(0 0 0 / .45);--cover-edge: inset -1px 0 0 rgb(255 255 255 / .08), inset 1px 0 0 rgb(0 0 0 / .35)}[data-read-theme=paper],[data-read-theme=sepia]{color-scheme:light}[data-read-theme=night],[data-read-theme=terminal]{color-scheme:dark}[data-read-theme=paper]{--read-bg: #fafafa;--read-ink: #383a42;--read-ink-2: #6a6d77;--read-rule: #e2e2e4;--read-accent: #0184bc}[data-read-theme=sepia]{--read-bg: #e9dcc3;--read-ink: #3c2f21;--read-ink-2: #7a6549;--read-rule: #d2c1a1;--read-accent: #6b4a24}[data-read-theme=night]{--read-bg: #121211;--read-ink: #c9c3b6;--read-ink-2: #857e71;--read-rule: #2c2a26;--read-accent: #9ecab1}[data-read-theme=terminal]{--read-bg: #282c34;--read-ink: #dcdfe4;--read-ink-2: #9da5b4;--read-rule: #3e4451;--read-accent: #e5c07b}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-size:var(--step-0);line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}h1,h2,h3,h4{font-family:var(--font-ui);font-weight:600;line-height:1.18;letter-spacing:-.012em;margin:0}p{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--cloth);text-decoration-thickness:1px;text-underline-offset:2px}ul,ol{margin:0;padding:0;list-style:none}:focus-visible{outline:2px solid var(--cloth);outline-offset:2px;border-radius:var(--radius-sm)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.only-wide{display:none}@media(min-width:720px){.only-narrow{display:none}.only-wide{display:inline}}.skip-link{position:absolute;left:var(--space-3);top:-60px;z-index:100;padding:var(--space-2) var(--space-4);background:var(--bg-raised);border:1px solid var(--rule-strong);border-radius:var(--radius-md);transition:top .15s var(--ease)}.skip-link:focus{top:var(--space-3)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:42px;padding:0 var(--space-4);border:1px solid var(--rule-strong);border-radius:var(--radius-md);background:var(--bg-raised);color:var(--ink);font-size:var(--step-0);font-weight:500;letter-spacing:-.005em;text-decoration:none;transition:background .14s var(--ease),border-color .14s var(--ease)}.btn:hover:not(:disabled){background:var(--bg-hover)}.btn:disabled{opacity:.5;cursor:default}.btn--primary{background:var(--cloth);border-color:var(--cloth);color:var(--on-cloth)}.btn--primary:hover:not(:disabled){background:var(--cloth-hover);border-color:var(--cloth-hover)}.btn--quiet{border-color:transparent;background:transparent}.btn--quiet:hover:not(:disabled){background:var(--bg-hover)}.btn--danger{color:var(--alarm);border-color:var(--rule-strong)}.btn--danger:hover:not(:disabled){background:var(--alarm-soft);border-color:var(--alarm)}.btn--block{width:100%}.btn--large{min-height:48px;font-size:var(--step-1)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--ink-2);transition:background .14s var(--ease),color .14s var(--ease)}.icon-btn:hover{background:var(--bg-hover);color:var(--ink)}.icon-btn[aria-pressed=true]{background:var(--cloth-soft);color:var(--cloth)}.field{display:block}.field__label{display:block;margin-bottom:var(--space-2);color:var(--ink-2);font-size:var(--step--1);font-weight:500}.field__control,.input,.select{width:100%;min-height:44px;padding:0 var(--space-3);border:1px solid var(--rule-strong);border-radius:var(--radius-md);background:var(--bg-raised);color:var(--ink);transition:border-color .14s var(--ease),box-shadow .14s var(--ease)}.input:hover,.select:hover{border-color:var(--ink-3)}.input:focus,.select:focus{outline:none;border-color:var(--cloth);box-shadow:0 0 0 3px var(--cloth-soft)}.input::placeholder{color:var(--ink-3)}.select{appearance:none;padding-right:var(--space-7);background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 17px) 50%,calc(100% - 12px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.field__hint{margin-top:var(--space-2);color:var(--ink-3);font-size:var(--step--1)}.field__error{margin-top:var(--space-2);color:var(--alarm);font-size:var(--step--1)}.chip{display:inline-flex;align-items:center;gap:var(--space-2);min-height:34px;padding:0 var(--space-3);border:1px solid var(--rule);border-radius:999px;background:transparent;color:var(--ink-2);font-size:var(--step--1);white-space:nowrap;transition:background .14s var(--ease),border-color .14s var(--ease),color .14s var(--ease)}.chip:hover{border-color:var(--ink-3);color:var(--ink)}.chip[aria-pressed=true]{background:var(--cloth);border-color:var(--cloth);color:var(--on-cloth)}.chip__count{color:inherit;opacity:.6;font-variant-numeric:tabular-nums}.segmented{display:inline-flex;padding:3px;border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--bg-sunken)}.segmented button{flex:1;min-height:34px;padding:0 var(--space-3);border:0;border-radius:4px;background:transparent;color:var(--ink-2);font-size:var(--step--1);white-space:nowrap}.segmented button[aria-pressed=true]{background:var(--bg-raised);color:var(--ink);box-shadow:var(--shadow-1)}.spinner{display:inline-block;width:16px;height:16px;border:2px solid var(--rule-strong);border-top-color:var(--cloth);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.bar{position:relative;height:3px;border-radius:2px;background:var(--bg-sunken);overflow:hidden}.bar__fill{position:absolute;inset:0 auto 0 0;background:var(--cloth);transition:width .3s var(--ease)}.app{display:flex;min-height:100%;flex-direction:column}.shell{width:100%;max-width:var(--shell-max);margin:0 auto;padding:0 max(var(--space-4),env(safe-area-inset-right)) var(--space-9) max(var(--space-4),env(safe-area-inset-left))}@media(min-width:900px){.shell{padding:0 var(--space-6) var(--space-9)}}.topbar{position:sticky;top:0;padding:env(safe-area-inset-top) env(safe-area-inset-right) 0 env(safe-area-inset-left);z-index:20;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule)}.topbar__inner{display:flex;align-items:center;gap:var(--space-2);width:100%;max-width:var(--shell-max);min-height:var(--header-h);margin:0 auto;padding:0 var(--space-3)}@media(min-width:900px){.topbar__inner{padding:0 var(--space-6)}}.topbar__lead{flex:1;min-width:0;margin-right:var(--space-2)}.topbar__title{font-size:var(--step-1);font-weight:600}.page-head{padding:var(--space-5) 0 var(--space-4)}.page-head h1{font-size:var(--step-3)}.page-head__note{margin-top:var(--space-2);color:var(--ink-3);font-size:var(--step--1)}.cover{position:relative;container-type:inline-size;aspect-ratio:2 / 3;border-radius:2px 5px 5px 2px;background:var(--bg-sunken);box-shadow:var(--shadow-1);overflow:hidden;isolation:isolate}.cover__image{display:block;width:100%;height:100%;object-fit:cover}.cover__made{position:absolute;inset:0;background:var(--cloth-face)}.cover__weave{position:absolute;inset:0;opacity:.5;background-image:repeating-linear-gradient(0deg,rgb(255 255 255 / .05) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgb(0 0 0 / .07) 0 1px,transparent 1px 3px)}.cover__band{position:absolute;inset:0 auto 0 0;width:7.5%;background:var(--cloth-edge);box-shadow:inset -1px 0 #ffffff1f}.cover__plate{position:absolute;inset:11% 8% 11% 15%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4cqw;padding:6cqw 4cqw;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cloth-foil) 55%,transparent);text-align:center}.cover__title{display:flex;flex-direction:column;max-width:100%;color:var(--cloth-ink);font-family:var(--font-book);font-size:var(--cloth-size, 9cqw);font-weight:600;line-height:1.22;letter-spacing:-.01em;overflow-wrap:break-word}.cover__hair{width:26%;height:1px;background:var(--cloth-foil);opacity:.8}.cover__author{max-width:100%;color:var(--cloth-foil);font-family:var(--font-ui);font-size:4.4cqw;line-height:1.35;letter-spacing:.05em;text-transform:uppercase;overflow-wrap:break-word}.cover__edge{position:absolute;inset:0;pointer-events:none;box-shadow:var(--cover-edge);border-radius:inherit}.cover__ribbon{position:absolute;top:0;right:15%;width:5.5cqw;min-width:6px;max-width:13px;height:var(--ribbon-length, 0%);background:linear-gradient(180deg,#c7573f,#a8402f);clip-path:polygon(0 0,100% 0,100% 100%,50% calc(100% - 5px),0 100%);box-shadow:1px 0 3px #0000004d}.cover__badge{position:absolute;left:0;right:0;bottom:0;padding:5px 6px;background:color-mix(in srgb,var(--bg-sunken) 85%,transparent);color:var(--ink);font-size:var(--step--2);letter-spacing:.02em;text-align:center;backdrop-filter:blur(4px)}.continue{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-3) 0 0;padding:var(--space-2) 0 var(--space-3);border-bottom:1px solid var(--rule);color:var(--ink-2);font-size:var(--step--1);text-decoration:none}.continue__cover{flex:none;width:28px}.continue__cover .cover{box-shadow:none}.continue__text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.continue__title{color:var(--ink);font-family:var(--font-book);font-size:var(--step-0);font-weight:600}.continue:hover .continue__title{text-decoration:underline;text-underline-offset:3px}.continue__percent{flex:none;font-variant-numeric:tabular-nums}.filters{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-3) 0 var(--space-5)}.search{position:relative;max-width:560px}.search .input{min-height:40px;padding-left:38px;border-color:transparent;background:var(--bg-sunken)}.search .input:focus{border-color:var(--rule-strong);background:var(--bg-raised)}.search__icon{position:absolute;left:12px;top:50%;translate:0 -50%;color:var(--ink-3);pointer-events:none}.search__clear{position:absolute;right:4px;top:50%;translate:0 -50%}.shelf-row{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-1);scrollbar-width:none;scroll-snap-type:x proximity}.shelf-row::-webkit-scrollbar{display:none}@media(max-width:719px){.shelf-row{mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 28px),transparent 100%)}}.shelf-row button{flex:none;min-height:36px;padding:0 var(--space-1);border:0;border-bottom:2px solid transparent;background:none;color:var(--ink-2);font-size:var(--step-0);white-space:nowrap;scroll-snap-align:start}.shelf-row button+button{margin-left:var(--space-3)}.shelf-row button:hover{color:var(--ink)}.shelf-row button[aria-pressed=true]{border-bottom-color:var(--ink);color:var(--ink);font-weight:500}.filters__line{display:flex;align-items:center;gap:var(--space-3)}.filters__line label:last-child{margin-left:auto}.filters__select{min-height:36px;padding:0 var(--space-5) 0 0;border:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%238a8272'%3E%3Cpath d='m12 15.4-6-6L7.4 8l4.6 4.6L16.6 8 18 9.4l-6 6Z'/%3E%3C/svg%3E") right center / 16px no-repeat;color:var(--ink-2);font:inherit;font-size:var(--step--1);appearance:none;cursor:pointer}.filters__select:hover,.filters__select:focus-visible{color:var(--ink)}.filters__found{color:var(--ink-3);font-size:var(--step--1)}.sync{margin:0 0 var(--space-3);color:var(--ink-3);font-size:var(--step--1)}.count{color:var(--ink-3);font-size:var(--step--1);font-variant-numeric:tabular-nums}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(144px,1fr));gap:var(--space-5) var(--space-4)}@media(min-width:720px){.grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--space-7) var(--space-5)}}.tile{display:flex;flex-direction:column;gap:var(--space-3);padding:0;border:0;background:none;color:inherit;text-align:left;text-decoration:none}.tile .cover{transition:transform .18s var(--ease),box-shadow .18s var(--ease)}.tile:hover .cover{transform:translateY(-3px);box-shadow:var(--shadow-2)}.tile__title{font-family:var(--font-book);font-size:var(--step-0);font-weight:600;line-height:1.25;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.tile__author{margin-top:2px;color:var(--ink-3);font-size:var(--step--1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tile__progress{margin-top:2px;color:var(--ink-3);font-size:var(--step--1);font-variant-numeric:tabular-nums}.empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);max-width:420px;margin:var(--space-8) auto;padding:var(--space-7) var(--space-5);border:1px dashed var(--rule-strong);border-radius:var(--radius-lg);text-align:center}.empty h2{font-size:var(--step-2)}.empty p{color:var(--ink-2)}.notice{display:flex;align-items:flex-start;gap:var(--space-3);margin:var(--space-4) 0;padding:var(--space-3) var(--space-4);border:1px solid var(--rule-strong);border-left:3px solid var(--alarm);border-radius:var(--radius-md);background:var(--bg-raised);color:var(--ink);font-size:var(--step--1)}.login{display:flex;flex-direction:column;min-height:100%;padding:max(var(--space-6),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-right)) max(var(--space-8),env(safe-area-inset-bottom)) max(var(--space-4),env(safe-area-inset-left))}.login__inner{width:100%;max-width:380px;margin:auto}.login__top{display:flex;justify-content:flex-end}.login h1{font-size:var(--step-3)}.login form{margin-top:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.login__advanced{margin-top:var(--space-5);border-top:1px solid var(--rule);padding-top:var(--space-4)}.login__advanced summary{color:var(--ink-2);font-size:var(--step--1);cursor:pointer;list-style:none}.login__advanced summary::-webkit-details-marker{display:none}.login__advanced summary:before{content:"+ ";color:var(--ink-3)}.login__advanced[open] summary:before{content:"− "}.login__advanced .field{margin-top:var(--space-4)}.detail{display:grid;gap:var(--space-6);padding-top:var(--space-5)}@media(min-width:840px){.detail{grid-template-columns:260px 1fr;gap:var(--space-8);align-items:start}}.detail__cover{width:min(190px,52vw);margin:0 auto}@media(min-width:840px){.detail__cover{width:100%;margin:0}}.detail__actions{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-5)}.detail__head h1{font-family:var(--font-book);font-size:var(--step-4);text-wrap:balance}.detail__author{margin-top:var(--space-2);color:var(--ink-2);font-size:var(--step-1)}.detail__meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--rule);color:var(--ink-3);font-size:var(--step--1)}.detail__form{display:flex;flex-direction:column;gap:var(--space-4);max-width:620px;margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--rule)}.detail__head,.detail__meta{max-width:720px}.detail__pair{display:grid;gap:var(--space-4)}@media(min-width:620px){.detail__pair{grid-template-columns:1fr 1fr}}.detail__save{display:flex;align-items:center;gap:var(--space-3)}.detail__danger{margin-top:var(--space-7);padding-top:var(--space-5);border-top:1px solid var(--rule)}.upload__drop{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-5);border:2px dashed var(--rule-strong);border-radius:var(--radius-lg);background:var(--bg-raised);text-align:center;transition:border-color .16s var(--ease),background .16s var(--ease)}.upload__drop[data-over=true]{border-color:var(--cloth);background:var(--cloth-soft)}.upload__drop h2{font-size:var(--step-2)}.upload__drop p{color:var(--ink-3);font-size:var(--step--1)}.upload__list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-6)}.upload__item{display:grid;grid-template-columns:1fr auto;gap:var(--space-2) var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--rule);border-radius:var(--radius-md);background:var(--bg-raised)}.upload__name{min-width:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload__state{color:var(--ink-3);font-size:var(--step--1);font-variant-numeric:tabular-nums;white-space:nowrap}.upload__item .bar{grid-column:1 / -1}.upload__note{grid-column:1 / -1;min-width:0;color:var(--ink-3);font-size:var(--step--1);overflow-wrap:break-word}.upload__item[data-state=error]{border-color:var(--alarm)}.upload__item[data-state=error] .upload__state,.upload__item[data-state=error] .upload__note{color:var(--alarm)}.upload__item[data-state=duplicate] .upload__state{color:var(--foil)}.upload__item[data-state=done] .upload__state,.upload__item[data-state=done] .upload__note{color:var(--cloth)}.upload__shelf{margin-top:var(--space-5)}.overlay{position:fixed;inset:0;z-index:60;display:flex;align-items:flex-end;justify-content:center;padding:0;background:#14100a6b;animation:fade .15s var(--ease)}@media(min-width:620px){.overlay{align-items:center;padding:var(--space-5)}}.dialog{width:100%;max-width:420px;padding:var(--space-6) var(--space-5) var(--space-5);border:1px solid var(--rule-strong);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--bg-raised);box-shadow:var(--shadow-2)}@media(min-width:620px){.dialog{border-radius:var(--radius-lg)}}.dialog h2{font-size:var(--step-2)}.dialog p{margin-top:var(--space-3);color:var(--ink-2)}.dialog__actions{display:flex;gap:var(--space-3);margin-top:var(--space-6)}.dialog__actions .btn{flex:1}@keyframes fade{0%{opacity:0}}.toasts{position:fixed;left:50%;bottom:var(--space-5);z-index:80;translate:-50% 0;display:flex;flex-direction:column;gap:var(--space-2);width:calc(100% - var(--space-8));max-width:420px;pointer-events:none}.toast{padding:var(--space-3) var(--space-4);border:1px solid var(--rule-strong);border-radius:var(--radius-md);background:var(--bg-raised);box-shadow:var(--shadow-2);font-size:var(--step--1);animation:rise .18s var(--ease)}.toast[data-kind=error]{border-left:3px solid var(--alarm)}.toast[data-kind=ok]{border-left:3px solid var(--cloth)}.update{position:fixed;top:max(var(--space-3),env(safe-area-inset-top));left:50%;z-index:90;translate:-50% 0;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border:1px solid var(--rule-strong);border-radius:999px;background:var(--bg-raised);box-shadow:var(--shadow-2);color:var(--ink);font-size:var(--step--1);white-space:nowrap;animation:rise .18s var(--ease)}.update__btn{min-height:32px;padding-block:0;border-radius:999px}@keyframes rise{0%{opacity:0;translate:0 8px}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--bg-sunken) 25%,var(--bg-hover) 50%,var(--bg-sunken) 75%);background-size:200% 100%;animation:shimmer 1.3s linear infinite}@keyframes shimmer{to{background-position:-200% 0}}.library-foot{margin-top:var(--space-9);padding-top:var(--space-4);border-top:1px solid var(--rule);font-size:var(--step--1);text-align:center}.library-foot a{color:var(--ink-3)}.library-foot a:hover{color:var(--cloth)}.news{max-width:720px;padding-top:var(--space-5)}.news__day{margin-bottom:var(--space-7)}.news__date{margin:0 0 var(--space-3);color:var(--ink-3);font-size:var(--step--1);font-weight:500;font-variant-numeric:tabular-nums}.news__entry{margin-bottom:var(--space-3);padding:var(--space-4);border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--bg-raised)}.news__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.news__title{font-family:var(--font-book);font-size:var(--step-1)}.news__time{flex:none;color:var(--ink-3);font-size:var(--step--1);font-variant-numeric:tabular-nums}.news__kind{margin:var(--space-3) 0 var(--space-1);color:var(--ink-3);font-size:var(--step--2);font-weight:600;letter-spacing:.08em;text-transform:uppercase}.news__section[data-tone=added] .news__kind{color:var(--cloth)}.news__section[data-tone=fixed] .news__kind{color:var(--foil)}.news__section[data-tone=removed] .news__kind{color:var(--alarm)}.news__items{display:flex;flex-direction:column;gap:var(--space-1);padding-left:var(--space-4);color:var(--ink-2)}.news__items b{margin-right:.35em;color:var(--ink);font-weight:600}.news__items b:after{content:":"}.reader{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--read-bg);color:var(--read-ink);overflow:hidden;scrollbar-color:color-mix(in srgb,var(--read-ink) 26%,transparent) transparent}.pdf,.sheet,.ask__thread{scrollbar-width:thin}.reader__float,.reader__dock{position:absolute;z-index:10;border:1px solid color-mix(in srgb,var(--read-rule) 70%,transparent);background:color-mix(in srgb,var(--read-bg) 82%,transparent);backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 6px 24px #0000002e;color:var(--read-ink);transition:translate .24s var(--ease),opacity .24s var(--ease),visibility 0s linear 0s}.reader__float{display:grid;place-items:center;width:44px;height:44px;padding:0;border-radius:999px;cursor:pointer}.reader__float:hover{background:color-mix(in srgb,var(--read-bg) 70%,var(--read-ink) 8%)}.reader__back{top:max(var(--space-3),env(safe-area-inset-top));left:max(var(--space-3),env(safe-area-inset-left))}.reader__float[aria-pressed=true]{border-color:color-mix(in srgb,var(--read-accent) 60%,transparent);color:var(--read-accent)}.reader__corner{position:absolute;top:max(var(--space-3),env(safe-area-inset-top));right:max(var(--space-3),env(safe-area-inset-right));z-index:10;display:flex;gap:var(--space-2)}.reader__corner .reader__float{position:static}.reader__float.reader__full:has(span){display:flex;align-items:center;gap:var(--space-2);width:auto;padding:0 var(--space-4) 0 var(--space-3);font:inherit;font-size:.9375rem;font-weight:500}@media(min-width:720px){.reader[data-panel=ask] .reader__corner{right:calc(400px + var(--space-3))}}.reader__dock{left:50%;bottom:max(var(--space-4),calc(env(safe-area-inset-bottom) + var(--space-2)));translate:-50% 0;display:flex;align-items:center;gap:var(--space-2);width:min(560px,calc(100% - 2 * var(--space-3)));padding:4px 4px 4px var(--space-3);border-radius:999px}.reader__return{position:absolute;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));z-index:11;translate:-50% 0;display:inline-flex;align-items:center;gap:var(--space-2);max-width:calc(100% - 2 * var(--space-3));min-height:40px;padding:0 var(--space-4);border:1px solid var(--read-rule);border-radius:999px;background:var(--read-bg);color:var(--read-ink);font-size:var(--step--1);box-shadow:var(--shadow-1);white-space:nowrap}.sheet__ago{display:block;margin-top:2px;color:var(--read-ink-2);font-family:var(--font-ui);font-size:var(--step--1)}.reader[data-chrome=false] .reader__float,.reader[data-chrome=false] .reader__return,.reader[data-chrome=false] .reader__dock{opacity:0;visibility:hidden;pointer-events:none;transition:translate .24s var(--ease),opacity .24s var(--ease),visibility 0s linear .24s}.reader[data-chrome=false] .reader__back,.reader[data-chrome=false] .reader__corner .reader__float{translate:0 -16px}.reader[data-chrome=false] .reader__dock{translate:-50% 16px}.reader__dock .icon-btn{flex:none;border-radius:999px}.reader__scrub{flex:1;min-width:0;height:28px;margin:0 var(--space-1);background:transparent;cursor:pointer;appearance:none;-webkit-appearance:none}.reader__scrub:disabled{cursor:default;opacity:.5}.reader__scrub::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:linear-gradient(to right,var(--read-accent) var(--fill, 0%),color-mix(in srgb,var(--read-ink) 16%,transparent) var(--fill, 0%))}.reader__scrub::-moz-range-track{height:4px;border-radius:999px;background:color-mix(in srgb,var(--read-ink) 16%,transparent)}.reader__scrub::-moz-range-progress{height:4px;border-radius:999px;background:var(--read-accent)}.reader__scrub::-webkit-slider-thumb{width:16px;height:16px;margin-top:-6px;border:2px solid var(--read-bg);border-radius:50%;background:var(--read-accent);appearance:none;-webkit-appearance:none;transition:scale .15s var(--ease)}.reader__scrub::-moz-range-thumb{width:12px;height:12px;border:2px solid var(--read-bg);border-radius:50%;background:var(--read-accent)}.reader__scrub:active::-webkit-slider-thumb{scale:1.25}.reader__line{position:absolute;left:0;right:0;bottom:0;z-index:9;height:2px;background:color-mix(in srgb,var(--read-ink) 8%,transparent);pointer-events:none}.reader__line span{display:block;height:100%;background:color-mix(in srgb,var(--read-accent) 75%,transparent);transition:width .3s var(--ease)}.reader .icon-btn{color:var(--read-ink-2)}.reader .icon-btn:hover{background:color-mix(in srgb,var(--read-ink) 8%,transparent);color:var(--read-ink)}.reader .icon-btn[aria-pressed=true]{background:color-mix(in srgb,var(--read-accent) 18%,transparent);color:var(--read-accent)}.reader__stage{position:relative;flex:1;min-height:0;margin:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.reader__message{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);height:100%;padding:var(--space-6);color:var(--read-ink-2)}.reader__stat{flex:none;min-width:4.5em;color:var(--read-ink-2);font-size:var(--step--1);font-variant-numeric:tabular-nums;text-align:center;white-space:nowrap}.pdf{position:absolute;inset:0;overflow:auto;padding:var(--space-3) 0 var(--space-6);background:color-mix(in srgb,var(--read-bg) 90%,#000 10%);touch-action:pan-x pan-y pinch-zoom;overscroll-behavior:contain;outline:none}.pdf__list{display:flex;flex-direction:column;gap:16px;margin:0 auto}.pdf__page{position:relative;background:#fff;box-shadow:0 1px 2px #0003,0 6px 20px #00000029}.pdf__page canvas{display:block;width:100%;height:100%}.pdf__page canvas[data-theme=sepia]{filter:sepia(.24) saturate(.9) brightness(.98)}.pdf__page canvas[data-theme=night]{filter:invert(1) hue-rotate(180deg) brightness(.88) contrast(.92)}.pdf__page:has(canvas[data-theme=night]){background:#16161a}.pdf__page canvas[data-theme=terminal]{filter:url(#pdf-terminal)}.pdf__page:has(canvas[data-theme=terminal]){background:#282c34;box-shadow:0 0 0 1px #3e4451}.pdf__filters{position:absolute;width:0;height:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}.pdf__mark{position:absolute;pointer-events:none;background:#f5c542;opacity:.4;mix-blend-mode:multiply;border-radius:2px}.pdf__page:has(canvas[data-theme=night]) .pdf__mark,.pdf__page:has(canvas[data-theme=terminal]) .pdf__mark{mix-blend-mode:screen;opacity:.35}.pdf__folio{position:absolute;left:50%;bottom:-14px;translate:-50% 0;color:var(--read-ink-2);font-size:var(--step--2);font-variant-numeric:tabular-nums;opacity:.7}.pdf__reset{position:absolute;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));z-index:6;translate:-50% 0;padding:var(--space-2) var(--space-4);border:1px solid var(--read-rule);border-radius:999px;background:var(--read-bg);color:var(--read-ink);font-size:var(--step--1);box-shadow:var(--shadow-1)}.epub{position:absolute;inset:0}.epub__view{display:block;width:100%;height:100%}.sheet{position:absolute;left:0;right:0;bottom:0;z-index:30;max-height:76%;overflow-y:auto;padding:var(--space-4) var(--space-4) max(var(--space-6),env(safe-area-inset-bottom));border-top:1px solid var(--read-rule);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--read-bg);box-shadow:0 -8px 40px #00000038;animation:sheet-in .2s var(--ease)}@media(min-width:900px){.sheet{left:auto;top:0;width:360px;max-height:none;border-top:0;border-left:1px solid var(--read-rule);border-radius:0;animation:sheet-side .2s var(--ease)}}@keyframes sheet-in{0%{translate:0 16px;opacity:0}}@keyframes sheet-side{0%{translate:16px 0;opacity:0}}.sheet__scrim{position:absolute;inset:0;z-index:20;border:0;background:#00000047}.sheet__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.sheet__head .sheet__tabs{flex:1;display:flex;max-width:320px}.sheet__tabs button{flex:1}.sheet__wide{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;border-color:var(--read-rule);background:transparent;color:var(--read-ink)}.sheet__toc{display:flex;flex-direction:column}.sheet__toc button{width:100%;padding:var(--space-3) var(--space-2);border:0;border-bottom:1px solid var(--read-rule);border-radius:var(--radius-sm);background:transparent;color:var(--read-ink);font-family:var(--font-book);font-size:var(--step-0);text-align:left}.sheet__toc button:hover{background:color-mix(in srgb,var(--read-ink) 6%,transparent)}.sheet__empty{padding:var(--space-4) 0;color:var(--read-ink-2);font-size:var(--step--1)}.sheet__group{margin-bottom:var(--space-5)}.sheet__group .field__label{color:var(--read-ink-2)}.sheet__group .segmented{display:flex;width:100%}.sheet .segmented{border-color:var(--read-rule);background:color-mix(in srgb,var(--read-ink) 6%,transparent)}.sheet .segmented button{color:var(--read-ink-2)}.sheet .segmented button[aria-pressed=true]{background:var(--read-bg);color:var(--read-ink)}.reader :focus-visible{outline-color:var(--read-accent)}.sheet__jump{display:flex;align-items:flex-end;gap:var(--space-3);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--read-rule)}.sheet__jump .field{flex:1}.sheet__jump .input{background:var(--read-bg);border-color:var(--read-rule);color:var(--read-ink)}.sheet__jump .btn--primary{background:var(--read-accent);border-color:var(--read-accent);color:var(--read-bg)}.theme-row{display:flex;gap:var(--space-2)}.theme-swatch{flex:1;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-2);border:1px solid var(--read-rule);border-radius:var(--radius-md);background:transparent;color:var(--read-ink-2);font-size:var(--step--1)}.theme-swatch span{display:flex;align-items:center;justify-content:center;width:100%;height:40px;border-radius:var(--radius-sm);font-family:var(--font-book);font-size:var(--step-1)}.theme-swatch[data-theme=auto] span{background:linear-gradient(135deg,#fafafa 0 50%,#282c34 50% 100%);box-shadow:inset 0 0 0 1px var(--read-rule);color:#7f8694}.theme-swatch[data-theme=paper] span{background:#fafafa;box-shadow:inset 0 0 0 1px #e2e2e4;color:#383a42}.theme-swatch[data-theme=sepia] span{background:#e9dcc3;color:#3c2f21}.theme-swatch[data-theme=night] span{background:#121211;color:#c9c3b6}.theme-swatch[data-theme=terminal] span{background:#282c34;color:#dcdfe4}.theme-swatch[aria-pressed=true]{border-color:var(--read-accent);color:var(--read-ink);box-shadow:0 0 0 1px var(--read-accent)}.stepper{display:flex;align-items:center;gap:var(--space-3)}.stepper__value{min-width:64px;color:var(--read-ink);font-variant-numeric:tabular-nums;text-align:center}.stepper .btn{background:transparent;border-color:var(--read-rule);color:var(--read-ink)}.textLayer{position:absolute;inset:0;overflow:clip;line-height:1;text-align:initial;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;caret-color:var(--read-ink);z-index:1}.textLayer :is(span,br){position:absolute;color:transparent;white-space:pre;cursor:text;transform-origin:0% 0%}.textLayer span.markedContent{top:0;height:0}.textLayer ::selection{background:color-mix(in srgb,var(--read-accent) 32%,transparent)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;inset:100% 0 0;z-index:0;cursor:default;user-select:none}.pdf:not([data-selecting]) .textLayer,.pdf:not([data-selecting]) .textLayer :is(span,br){-webkit-user-select:none;user-select:none}@media(hover:hover)and (pointer:fine){.pdf:not([data-selecting]) .textLayer,.pdf:not([data-selecting]) .textLayer :is(span,br){cursor:default}}.reader__picks{position:absolute;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));z-index:12;translate:-50% 0;display:flex;gap:var(--space-2);max-width:calc(100% - 2 * var(--space-3))}.reader__ask{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border:0;border-radius:var(--radius-md);background:var(--read-ink);color:var(--read-bg);font-size:var(--step-0);font-weight:500;box-shadow:var(--shadow-2)}.ask{position:absolute;left:0;right:0;bottom:0;z-index:30;display:flex;flex-direction:column;height:min(64dvh,560px);border-top:1px solid var(--read-rule);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--read-bg);color:var(--read-ink);box-shadow:0 -8px 40px #00000038;animation:sheet-in .2s var(--ease)}@media(min-width:900px){.ask{left:auto;top:0;width:400px;height:auto;border-top:0;border-left:1px solid var(--read-rule);border-radius:0;box-shadow:none;animation:sheet-side .2s var(--ease)}.reader[data-panel=ask] .reader__stage{margin-right:400px}.reader[data-panel=ask] .reader__dock{left:calc((100% - 400px)/2);width:min(560px,calc(100% - 400px - 2 * var(--space-3)))}.reader[data-panel=ask] .reader__line{right:400px}}.ask__head{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border-bottom:1px solid var(--read-rule)}.ask__head h2{flex:1;font-size:var(--step-0);font-weight:600}.ask__clear{padding:var(--space-2);border:0;background:transparent;color:var(--read-ink-2);font-size:var(--step--1)}.ask__clear:hover{color:var(--read-ink)}.ask__thread{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-3) var(--space-4)}.ask__hint{color:var(--read-ink-2);font-size:var(--step--1);line-height:1.5}.ask__turn+.ask__turn{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--read-rule)}.ask__question{color:var(--read-ink-2);font-size:var(--step--1);line-height:1.45}.ask__question blockquote{margin:0 0 var(--space-2);padding-left:var(--space-3);border-left:2px solid var(--read-rule);font-family:var(--font-book);font-style:italic}.ask__page{margin-right:var(--space-2);font-variant-numeric:tabular-nums}.ask__answer{margin-top:var(--space-2);font-family:var(--font-book);font-size:var(--step-0);line-height:1.55}.ask__answer>*+*{margin-top:var(--space-2)}.ask__answer :is(ul,ol){padding-left:var(--space-5)}.ask__answer ul{list-style:disc}.ask__answer ol{list-style:decimal}.ask__answer li+li{margin-top:var(--space-1)}.ask__answer strong{font-weight:600}.ask__answer code{font-size:.92em}.ask__status{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);color:var(--read-ink-2);font-size:var(--step--1);font-variant-numeric:tabular-nums}.ask__status .spinner{width:14px;height:14px}.ask__error{margin-top:var(--space-2);color:var(--alarm);font-size:var(--step--1)}.ask__retry{padding:0;border:0;background:none;color:var(--read-ink);font-size:inherit;text-decoration:underline;text-underline-offset:2px}.ask__composer{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-3) max(var(--space-3),env(safe-area-inset-bottom));border-top:1px solid var(--read-rule)}.ask__quote{display:flex;align-items:flex-start;gap:var(--space-2)}.ask__quote p{flex:1;display:-webkit-box;padding-left:var(--space-3);border-left:2px solid var(--read-accent);overflow:hidden;color:var(--read-ink);font-family:var(--font-book);font-size:var(--step--1);font-style:italic;line-height:1.4;-webkit-box-orient:vertical;-webkit-line-clamp:3}.ask__quote .icon-btn{width:32px;height:32px}.ask__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ask__actions button{min-height:36px;padding:0 var(--space-3);border:1px solid var(--read-rule);border-radius:var(--radius-md);background:transparent;color:var(--read-ink);font-size:var(--step--1)}.ask__actions button:hover:not(:disabled){background:color-mix(in srgb,var(--read-ink) 6%,transparent)}.ask__actions button:disabled{opacity:.5}.ask__input{display:flex;align-items:flex-end;gap:var(--space-2)}.ask__input textarea{flex:1;min-height:44px;max-height:140px;padding:11px var(--space-3);border:1px solid var(--read-rule);border-radius:var(--radius-md);background:color-mix(in srgb,var(--read-ink) 4%,var(--read-bg));color:var(--read-ink);font:inherit;font-size:var(--step-0);line-height:1.4;resize:none;field-sizing:content}.ask__input textarea:focus-visible{outline:2px solid var(--read-accent);outline-offset:-1px}.ask__send{flex:none;width:44px;height:44px}.reader .ask__send:not(:disabled){background:var(--read-accent);color:var(--read-bg)}.reader .ask__send:hover:not(:disabled){background:var(--read-accent);color:var(--read-bg);opacity:.9}.ask__mic{flex:none;width:44px;height:44px}.reader .ask__mic[data-state=recording]{background:var(--alarm);color:var(--read-bg)}.ask__mic .spinner{width:16px;height:16px}.ask__voice{color:var(--read-ink-2);font-size:var(--step--1);font-variant-numeric:tabular-nums}.ask__voice--error{color:var(--alarm)}.reader__listen{position:absolute;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));z-index:11;translate:-50% 0;display:flex;align-items:center;gap:2px;max-width:calc(100% - 2 * var(--space-3));padding:4px;border:1px solid color-mix(in srgb,var(--read-rule) 70%,transparent);border-radius:999px;background:color-mix(in srgb,var(--read-bg) 82%,transparent);backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 6px 24px #0000002e;color:var(--read-ink);transition:translate .24s var(--ease),opacity .24s var(--ease),visibility 0s linear 0s}.reader__listen .icon-btn{flex:none;border-radius:999px}.reader__listen-play{background:var(--read-ink);color:var(--read-bg)}.reader__listen-rate{flex:none;min-width:48px;height:40px;padding:0 var(--space-2);border:0;border-radius:999px;background:transparent;color:var(--read-ink);font-size:var(--step--1);font-variant-numeric:tabular-nums;cursor:pointer}.reader__listen-back{display:inline-flex;align-items:center;gap:var(--space-1);height:40px;padding:0 var(--space-3);border:0;border-radius:999px;background:color-mix(in srgb,var(--read-ink) 10%,transparent);color:var(--read-ink);font-size:var(--step--1);white-space:nowrap;cursor:pointer}.reader[data-chrome=false][data-listening=playing] .reader__listen{opacity:0;visibility:hidden;pointer-events:none;translate:-50% 16px;transition:translate .24s var(--ease),opacity .24s var(--ease),visibility 0s linear .24s}.reader[data-listening] .reader__picks{bottom:calc(140px + env(safe-area-inset-bottom))}.sheet__note{margin:0 0 var(--space-2);color:var(--read-ink-2);font-size:var(--step--1)}
