@font-face{font-family:'Literata';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/literata-cyrillic-italic-400.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:italic;font-weight:400;font-display:swap;src:url(/fonts/literata-latin-italic-400.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(/fonts/literata-cyrillic-normal-var.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(/fonts/literata-latin-normal-var.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:'PT Serif';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/ptserif-cyrillic-italic-400.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'PT Serif';font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/ptserif-latin-italic-400.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:'PT Serif';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ptserif-cyrillic-normal-400.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'PT Serif';font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ptserif-latin-normal-400.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:'PT Serif';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ptserif-cyrillic-normal-700.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'PT Serif';font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ptserif-latin-normal-700.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:'Onest';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/onest-cyrillic-normal-400.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Onest';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/onest-latin-normal-400.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:'Unbounded';font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/unbounded-cyrillic-normal-500.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'Unbounded';font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/unbounded-latin-normal-500.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}[data-season=autumn]{--l-bg:#FAF4EC;--l-bg-2:#F2E7DA;--l-surface:#FFFCF8;--l-surface-2:#F6ECE1;--l-text:#2B1D16;--l-text-2:#5A4336;--l-text-3:#755D4F;--l-accent:#AE3F1C;--l-accent-ink:#FFFFFF;--l-accent-2:#B7791A;--l-accent-soft:#F7E2D4;--l-border:#E6D5C4;--l-border-strong:#CBB29C;--d-bg:#18110E;--d-bg-2:#201713;--d-surface:#251B16;--d-surface-2:#30241D;--d-text:#F4E8DD;--d-text-2:#D2BEAE;--d-text-3:#AE9886;--d-accent:#F28C5E;--d-accent-ink:#1C120D;--d-accent-2:#E8B44E;--d-accent-soft:#3A2418;--d-border:#3A2C24;--d-border-strong:#574338}[data-season=winter]{--l-bg:#F3F6F9;--l-bg-2:#E6EDF3;--l-surface:#FCFDFE;--l-surface-2:#EDF2F7;--l-text:#16202A;--l-text-2:#3D4F61;--l-text-3:#56687A;--l-accent:#AD2339;--l-accent-ink:#FFFFFF;--l-accent-2:#3A76AA;--l-accent-soft:#F6DDE2;--l-border:#D7E0EA;--l-border-strong:#B4C3D2;--d-bg:#0E141B;--d-bg-2:#131B24;--d-surface:#17202A;--d-surface-2:#1E2935;--d-text:#E6EEF5;--d-text-2:#B4C4D3;--d-text-3:#8FA2B4;--d-accent:#F36D82;--d-accent-ink:#1A0D11;--d-accent-2:#86BBE8;--d-accent-soft:#3A1A23;--d-border:#253241;--d-border-strong:#3A4B5E}[data-season=spring]{--l-bg:#FBF6F4;--l-bg-2:#F4E9E6;--l-surface:#FFFDFC;--l-surface-2:#F8EFEC;--l-text:#271D20;--l-text-2:#55454B;--l-text-3:#6F5E65;--l-accent:#2F7445;--l-accent-ink:#FFFFFF;--l-accent-2:#C8566F;--l-accent-soft:#E2EFE2;--l-border:#EADBD7;--l-border-strong:#D2BCB6;--d-bg:#131714;--d-bg-2:#18201B;--d-surface:#1C2420;--d-surface-2:#232D28;--d-text:#EDF3EE;--d-text-2:#BCCBC1;--d-text-3:#97A99D;--d-accent:#8FD19A;--d-accent-ink:#0F1A12;--d-accent-2:#F2A6B6;--d-accent-soft:#1F3524;--d-border:#2A3730;--d-border-strong:#3E4F45}[data-season=summer]{--l-bg:#F1F7F6;--l-bg-2:#E1EEEC;--l-surface:#FBFEFD;--l-surface-2:#E9F3F1;--l-text:#0F2523;--l-text-2:#33524F;--l-text-3:#4C6A67;--l-accent:#0A746C;--l-accent-ink:#FFFFFF;--l-accent-2:#C4527A;--l-accent-soft:#D4EBE8;--l-border:#CDE0DD;--l-border-strong:#A6C6C1;--d-bg:#0B1514;--d-bg-2:#0F1F1D;--d-surface:#132321;--d-surface-2:#1A2E2B;--d-text:#E2F2EF;--d-text-2:#ABCAC5;--d-text-3:#88A9A4;--d-accent:#52D2C2;--d-accent-ink:#06201D;--d-accent-2:#F2C94C;--d-accent-soft:#113431;--d-border:#213F3B;--d-border-strong:#33564F}:root,[data-season],[data-theme=light]{--bg:var(--l-bg);--bg-2:var(--l-bg-2);--surface:var(--l-surface);--surface-2:var(--l-surface-2);--text:var(--l-text);--text-2:var(--l-text-2);--text-3:var(--l-text-3);--accent:var(--l-accent);--accent-ink:var(--l-accent-ink);--accent-2:var(--l-accent-2);--accent-soft:var(--l-accent-soft);--border:var(--l-border);--border-strong:var(--l-border-strong)}[data-theme=dark]{--bg:var(--d-bg);--bg-2:var(--d-bg-2);--surface:var(--d-surface);--surface-2:var(--d-surface-2);--text:var(--d-text);--text-2:var(--d-text-2);--text-3:var(--d-text-3);--accent:var(--d-accent);--accent-ink:var(--d-accent-ink);--accent-2:var(--d-accent-2);--accent-soft:var(--d-accent-soft);--border:var(--d-border);--border-strong:var(--d-border-strong);color-scheme:dark}@media (prefers-color-scheme:dark){[data-theme=auto]{--bg:var(--d-bg);--bg-2:var(--d-bg-2);--surface:var(--d-surface);--surface-2:var(--d-surface-2);--text:var(--d-text);--text-2:var(--d-text-2);--text-3:var(--d-text-3);--accent:var(--d-accent);--accent-ink:var(--d-accent-ink);--accent-2:var(--d-accent-2);--accent-soft:var(--d-accent-soft);--border:var(--d-border);--border-strong:var(--d-border-strong);color-scheme:dark}}:root{--font-ui: 'Onest',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;--font-display: 'Unbounded','Onest',system-ui,sans-serif;--font-literata: 'Literata',Georgia,'Times New Roman',serif;--font-ptserif: 'PT Serif',Georgia,'Times New Roman',serif;--font-onest: var(--font-ui);--fs-12: .75rem;--fs-13: .8125rem;--fs-14: .875rem;--fs-15: .9375rem;--fs-16: 1rem;--fs-18: 1.125rem;--fs-20: 1.25rem;--fs-24: 1.5rem;--fs-30: 1.875rem;--fs-38: 2.375rem;--fs-48: 3rem;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-7: 32px;--s-8: 40px;--s-9: 56px;--s-10: 72px;--s-11: 96px;--r-cover: 8px;--r-field: 10px;--r-card: 14px;--r-panel: 20px;--r-pill: 999px;--container: 1240px;--gutter: 16px;--header-h: 60px;--ease: cubic-bezier(.2,.8,.2,1);--t-fast: 120ms;--t-base: 200ms;--t-slow: 320ms;--z-particles: 1;--z-header: 50;--z-drawer: 70;--z-modal: 80;--z-toast: 90;--shadow-1: 0 1px 2px color-mix(in srgb,var(--text) 7%,transparent),0 2px 6px color-mix(in srgb,var(--text) 5%,transparent);--shadow-2: 0 4px 10px color-mix(in srgb,var(--text) 8%,transparent),0 14px 32px color-mix(in srgb,var(--text) 8%,transparent);--shadow-3: 0 18px 48px color-mix(in srgb,var(--text) 16%,transparent);--success: #2E7D4F;--warning: #9A6100;--danger: #B3261E;--scrim: 12,8,6;color-scheme: light}[data-theme=dark]{--success: #6FD39A;--warning: #F2C14E;--danger: #FF8A80}@media (prefers-color-scheme: dark){[data-theme=auto]{--success: #6FD39A;--warning: #F2C14E;--danger: #FF8A80}}@media (min-width: 768px){:root{--gutter: 24px;--header-h: 64px}}@media (min-width: 1280px){:root{--gutter: 32px}}*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;text-size-adjust: 100%;scroll-padding-top: calc(var(--header-h) + 12px)}body{margin: 0;min-height: 100dvh;display: flex;flex-direction: column;background: var(--bg);color: var(--text);font: 400 var(--fs-16)/1.55 var(--font-ui);-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility}main{flex: 1 0 auto}img,video,canvas,svg{display: block;max-width: 100%}img{height: auto}a{color: inherit;text-decoration: none}a:hover{color: var(--accent)}button,input,select,textarea{font: inherit;color: inherit}button{cursor: pointer}h1,h2,h3,h4{margin: 0;line-height: 1.2;font-weight: 600}p{margin: 0}ul,ol{margin: 0;padding: 0;list-style: none}hr{border: 0;border-top: 1px solid var(--border);margin: var(--s-6) 0}:focus-visible{outline: 2px solid var(--accent);outline-offset: 2px;border-radius: 4px}::selection{background: color-mix(in srgb,var(--accent) 26%,transparent)}[hidden]{display: none !important}.visually-hidden{position: absolute !important;width: 1px;height: 1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap}.skip-link{position: absolute;left: 8px;top: -60px;z-index: 100;background: var(--accent);color: var(--accent-ink);padding: 8px 14px;border-radius: var(--r-pill)}.skip-link:focus{top: 8px}.container{width: 100%;max-width: var(--container);margin-inline: auto;padding-inline: var(--gutter)}.icon{width: 20px;height: 20px;flex: none}.icon-sm{width: 16px;height: 16px;flex: none}.icon-lg{width: 24px;height: 24px;flex: none}.h-display{font-family: var(--font-display);font-weight: 600;letter-spacing: -.01em}.section{padding-block: var(--s-8)}@media (min-width: 768px){.section{padding-block: var(--s-9)}}.section-title{font-family: var(--font-display);font-weight: 600;font-size: var(--fs-20);letter-spacing: -.01em}@media (min-width: 768px){.section-title{font-size: var(--fs-24)}}.section-head{display: flex;align-items: baseline;justify-content: space-between;gap: var(--s-4);margin-bottom: var(--s-5)}.section-head a.more{display: inline-flex;align-items: center;gap: 4px;font-size: var(--fs-14);color: var(--text-2);white-space: nowrap}.section-head a.more:hover{color: var(--accent)}.muted{color: var(--text-2)}.faint{color: var(--text-3)}.small{font-size: var(--fs-14)}.tiny{font-size: var(--fs-13)}.nowrap{white-space: nowrap}.num{font-variant-numeric: tabular-nums}.stack>* + *{margin-top: var(--s-4)}.prose p + p{margin-top: .8em}.prose{line-height: 1.65}p>svg.icon-sm,span>svg.icon-sm,.small>svg,.badge>svg{display: inline-block;vertical-align: -3px}.site-header{position: sticky;top: 0;z-index: var(--z-header);background: color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter: saturate(140%) blur(12px);backdrop-filter: saturate(140%) blur(12px);border-bottom: 1px solid color-mix(in srgb,var(--border) 70%,transparent);transition: transform var(--t-slow) var(--ease)}.site-header.is-hidden{transform: translateY(-100%)}.header-row{height: var(--header-h);display: flex;align-items: center;gap: var(--s-4)}.logo{display: inline-flex;align-items: center;gap: 10px;font-family: var(--font-display);font-weight: 600;font-size: var(--fs-18);letter-spacing: -.01em;white-space: nowrap}.logo-mark{width: 32px;height: 32px;border-radius: 10px;display: grid;place-items: center;background: var(--accent);color: var(--accent-ink)}.logo:hover{color: var(--text)}.main-nav{display: none;gap: var(--s-1)}.main-nav a{padding: 8px 12px;border-radius: var(--r-pill);color: var(--text-2);font-weight: 500;font-size: var(--fs-15)}.main-nav a:hover{color: var(--text);background: var(--surface-2)}.main-nav a[aria-current=page]{color: var(--text);background: var(--accent-soft)}.header-search{display: none;flex: 1;max-width: 360px;margin-left: auto;position: relative}.header-search input{width: 100%;height: 40px;padding: 0 14px 0 40px;border-radius: var(--r-pill);border: 1px solid var(--border);background: var(--surface)}.header-search input::placeholder{color: var(--text-3)}.header-search .icon{position: absolute;left: 13px;top: 10px;color: var(--text-3)}.header-actions{display: flex;align-items: center;gap: var(--s-1);margin-left: auto}.header-search + .header-actions{margin-left: 0}.icon-btn{width: 40px;height: 40px;display: inline-grid;place-items: center;flex: none;border: 0;border-radius: var(--r-pill);background: transparent;color: var(--text-2);transition: background var(--t-fast),color var(--t-fast)}.icon-btn:hover{background: var(--surface-2);color: var(--text)}.icon-btn[aria-expanded=true]{background: var(--accent-soft);color: var(--text)}.avatar{width: 34px;height: 34px;border-radius: 50%;display: grid;place-items: center;background: var(--accent-soft);color: var(--text);font-weight: 600;font-size: var(--fs-14)}.only-mobile{display: inline-grid}@media (min-width: 900px){.main-nav{display: flex}.header-search{display: block}.only-mobile{display: none}}.popover-wrap{position: relative}.popover{position: absolute;right: 0;top: calc(100% + 8px);min-width: 240px;z-index: var(--z-drawer);background: var(--surface);border: 1px solid var(--border);border-radius: var(--r-card);box-shadow: var(--shadow-3);padding: var(--s-3)}@media (max-width: 600px){.popover{position: fixed;left: 8px;right: 8px;top: calc(var(--header-h) + 6px);width: auto !important;min-width: 0;max-height: calc(100dvh - var(--header-h) - 16px);overflow-y: auto}}.popover-title{font-size: var(--fs-13);color: var(--text-2);font-weight: 600;margin: 4px 6px 8px}.menu-list a,.menu-list button{display: flex;align-items: center;gap: 10px;width: 100%;padding: 9px 10px;border: 0;background: none;border-radius: var(--r-field);color: var(--text);text-align: left;font-size: var(--fs-15)}.menu-list a:hover,.menu-list button:hover{background: var(--surface-2);color: var(--text)}.menu-list .icon{color: var(--text-2)}.menu-sep{height: 1px;background: var(--border);margin: 6px 0}.seg{display: grid;grid-auto-flow: column;grid-auto-columns: 1fr;gap: 4px;background: var(--surface-2);padding: 4px;border-radius: var(--r-pill)}.seg button{display: inline-flex;align-items: center;justify-content: center;gap: 6px;min-height: 36px;padding: 0 10px;border: 0;border-radius: var(--r-pill);background: transparent;color: var(--text-2);font-size: var(--fs-14);font-weight: 500;white-space: nowrap}.seg button[aria-pressed=true]{background: var(--surface);color: var(--text);box-shadow: var(--shadow-1)}.season-grid{display: grid;grid-template-columns: 1fr 1fr;gap: 6px;margin-bottom: var(--s-3)}.season-opt{display: flex;align-items: center;gap: 8px;padding: 9px 10px;border-radius: var(--r-field);border: 1px solid var(--border);background: var(--surface);color: var(--text);font-size: var(--fs-14);text-align: left}.season-opt .swatch{width: 14px;height: 14px;border-radius: 50%;flex: none;box-shadow: inset 0 0 0 1px rgba(0,0,0,.12)}.season-opt[aria-pressed=true]{border-color: var(--accent);box-shadow: inset 0 0 0 1px var(--accent)}.season-opt.wide{grid-column: 1 / -1}.drawer-backdrop{position: fixed;inset: 0;z-index: var(--z-drawer);background: rgba(var(--scrim),.45);opacity: 0;transition: opacity var(--t-base)}.drawer-backdrop.is-open{opacity: 1}.drawer{position: fixed;top: 0;bottom: 0;right: 0;width: min(380px,88vw);z-index: calc(var(--z-drawer) + 1);background: var(--surface);box-shadow: var(--shadow-3);display: flex;flex-direction: column;transform: translateX(100%);transition: transform var(--t-slow) var(--ease)}.drawer.left{right: auto;left: 0;transform: translateX(-100%)}.drawer.is-open{transform: none}.drawer-head{display: flex;align-items: center;justify-content: space-between;gap: var(--s-3);padding: var(--s-3) var(--s-3) var(--s-3) var(--s-5);border-bottom: 1px solid var(--border)}.drawer-title{font-weight: 600;font-size: var(--fs-16)}.drawer-body{flex: 1;overflow-y: auto;padding: var(--s-4) var(--s-5) var(--s-6);overscroll-behavior: contain}.drawer-body .header-search{display: block;max-width: none;margin: 0 0 var(--s-4)}.btn{--btn-bg: var(--surface-2);--btn-fg: var(--text);--btn-bd: transparent;display: inline-flex;align-items: center;justify-content: center;gap: 8px;min-height: 44px;padding: 0 20px;border-radius: var(--r-pill);border: 1px solid var(--btn-bd);background: var(--btn-bg);color: var(--btn-fg);font-weight: 600;font-size: var(--fs-15);white-space: nowrap;transition: background var(--t-fast),border-color var(--t-fast),transform var(--t-fast),box-shadow var(--t-fast);-webkit-tap-highlight-color: transparent}.btn:hover{color: var(--btn-fg);background: color-mix(in srgb,var(--btn-bg) 88%,var(--text))}.btn:active{transform: translateY(1px)}.btn[disabled],.btn[aria-disabled=true]{opacity: .55;pointer-events: none}.btn-primary{--btn-bg: var(--accent);--btn-fg: var(--accent-ink);box-shadow: 0 6px 18px color-mix(in srgb,var(--accent) 28%,transparent)}.btn-primary:hover{background: color-mix(in srgb,var(--accent) 88%,var(--text))}.btn-outline{--btn-bg: transparent;--btn-bd: var(--border-strong)}.btn-outline:hover{background: var(--surface-2)}.btn-ghost{--btn-bg: transparent}.btn-ghost:hover{background: var(--surface-2)}.btn-danger{--btn-bg: transparent;--btn-fg: var(--danger);--btn-bd: color-mix(in srgb,var(--danger) 45%,transparent)}.btn-lg{min-height: 52px;padding: 0 26px;font-size: var(--fs-16)}.btn-sm{min-height: 36px;padding: 0 14px;font-size: var(--fs-14)}.btn-block{width: 100%}.link{color: var(--accent);text-decoration: underline;text-decoration-thickness: 1px;text-underline-offset: 3px}.link:hover{color: var(--accent);text-decoration-thickness: 2px}.btn-row{display: flex;flex-wrap: wrap;gap: var(--s-3)}.field{display: grid;gap: 6px}.field + .field{margin-top: var(--s-4)}.label{font-size: var(--fs-14);font-weight: 600;color: var(--text)}.hint{font-size: var(--fs-13);color: var(--text-2)}.error-text{font-size: var(--fs-13);color: var(--danger);font-weight: 500}.input,.select,.textarea{width: 100%;min-height: 46px;padding: 10px 14px;border-radius: var(--r-field);border: 1px solid var(--border-strong);background: var(--surface);color: var(--text);transition: border-color var(--t-fast),box-shadow var(--t-fast)}.textarea{min-height: 140px;resize: vertical;line-height: 1.5}.input::placeholder,.textarea::placeholder{color: var(--text-3)}.input:focus,.select:focus,.textarea:focus{outline: none;border-color: var(--accent);box-shadow: 0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.input[aria-invalid=true]{border-color: var(--danger)}.select{appearance: none;padding-right: 38px;background-image: linear-gradient(45deg,transparent 50%,var(--text-2) 50%),linear-gradient(135deg,var(--text-2) 50%,transparent 50%);background-position: calc(100% - 19px) 50%,calc(100% - 14px) 50%;background-size: 5px 5px;background-repeat: no-repeat}.check{display: flex;gap: 10px;align-items: flex-start;font-size: var(--fs-14);line-height: 1.45}.check input{width: 18px;height: 18px;margin: 2px 0 0;accent-color: var(--accent);flex: none}.chips{display: flex;flex-wrap: wrap;gap: 6px}.chip{display: inline-flex;align-items: center;gap: 6px;min-height: 32px;padding: 0 12px;border-radius: var(--r-pill);border: 1px solid var(--border);background: var(--surface);color: var(--text-2);font-size: var(--fs-13);font-weight: 500}a.chip:hover{color: var(--text);border-color: var(--border-strong)}.chip.is-active,.chip[aria-pressed=true]{background: var(--accent-soft);border-color: transparent;color: var(--text)}.badge{display: inline-flex;align-items: center;gap: 4px;padding: 2px 8px;border-radius: var(--r-pill);font-size: var(--fs-12);font-weight: 600;line-height: 1.5;background: var(--surface-2);color: var(--text-2);white-space: nowrap}.badge-accent{background: var(--accent);color: var(--accent-ink)}.badge-soft{background: var(--accent-soft);color: var(--text)}.badge-ok{background: color-mix(in srgb,var(--success) 16%,transparent);color: var(--text)}.cover{position: relative;aspect-ratio: 2 / 3;border-radius: var(--r-cover);overflow: hidden;background: var(--surface-2);box-shadow: var(--shadow-1);isolation: isolate}.cover img{width: 100%;height: 100%;object-fit: cover}.cover::after{content: "";position: absolute;inset: 0;border-radius: inherit;box-shadow: inset 0 0 0 1px color-mix(in srgb,var(--text) 8%,transparent);pointer-events: none}.cover-ph{position: absolute;inset: 0;display: flex;flex-direction: column;justify-content: space-between;padding: 12% 11% 10%;background: radial-gradient(120% 70% at 85% 8%,color-mix(in srgb,var(--accent-2) 55%,transparent),transparent 60%),radial-gradient(120% 80% at 10% 100%,color-mix(in srgb,var(--accent) 60%,transparent),transparent 65%),linear-gradient(160deg,hsl(var(--h,20) 32% 34%),hsl(calc(var(--h,20) + 40) 30% 18%));color: #FFF8F0}.cover-ph::before{content: "";position: absolute;inset: 6%;border: 1px solid rgba(255,248,240,.45);border-radius: 4px;pointer-events: none}.cover-ph .ph-title{position: relative;font-family: var(--font-display);font-weight: 600;line-height: 1.15;letter-spacing: -.01em;font-size: clamp(11px,2.2cqi + 6px,22px);display: -webkit-box;-webkit-line-clamp: 6;-webkit-box-orient: vertical;overflow: hidden;text-shadow: 0 1px 12px rgba(0,0,0,.35);overflow-wrap: anywhere;hyphens: auto}.cover-ph .ph-author{position: relative;font-size: clamp(9px,1.2cqi + 5px,13px);opacity: .85;overflow: hidden;white-space: nowrap;text-overflow: ellipsis}.cover{container-type: inline-size}.cover-ph .ph-initial{display: none;position: relative;margin: auto;font-family: var(--font-display);font-weight: 600;font-size: 46cqi;line-height: 1;text-shadow: 0 1px 10px rgba(0,0,0,.3)}@container (max-width: 90px){.cover-ph{padding: 0;justify-content: center}.cover-ph::before{inset: 8%}.cover-ph .ph-title,.cover-ph .ph-author{display: none}.cover-ph .ph-initial{display: block}}.book-s{display: grid;gap: 8px;width: 100%}.book-s .title{font-size: var(--fs-14);font-weight: 600;line-height: 1.3;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden}.book-s .meta{font-size: var(--fs-13);color: var(--text-2)}.book-s:hover .title{color: var(--accent)}.book-s:hover .cover{box-shadow: var(--shadow-2)}.book-s .cover{transition: box-shadow var(--t-base),transform var(--t-base) var(--ease)}@media (hover: hover){.book-s:hover .cover{transform: translateY(-3px)}}.book-m{display: grid;grid-template-columns: 92px 1fr;gap: var(--s-4);padding: var(--s-3);border-radius: var(--r-card);background: var(--surface);border: 1px solid var(--border);transition: border-color var(--t-fast),box-shadow var(--t-base)}.book-m:hover{border-color: var(--border-strong);box-shadow: var(--shadow-2);color: inherit}.book-m .body{min-width: 0;display: flex;flex-direction: column;gap: 6px}.book-m .title{font-weight: 600;font-size: var(--fs-16);line-height: 1.3;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden}.book-m:hover .title{color: var(--accent)}.book-m .orig{font-size: var(--fs-13);color: var(--text-3);white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.book-m .desc{font-size: var(--fs-14);color: var(--text-2);display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden}.book-m .meta{display: flex;flex-wrap: wrap;gap: 6px 12px;font-size: var(--fs-13);color: var(--text-2);margin-top: auto}@media (min-width: 600px){.book-m{grid-template-columns: 112px 1fr}}.book-l{display: grid;grid-template-columns: 120px 1fr;gap: var(--s-5);align-items: start}.book-l .title{font-family: var(--font-display);font-weight: 600;font-size: var(--fs-18);line-height: 1.25}.book-l .desc{color: var(--text-2);font-size: var(--fs-15);display: -webkit-box;-webkit-line-clamp: 4;-webkit-box-orient: vertical;overflow: hidden}@media (min-width: 768px){.book-l{grid-template-columns: 160px 1fr}}.grid-books{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: var(--s-5) var(--s-4)}@media (min-width: 560px){.grid-books{grid-template-columns: repeat(3,minmax(0,1fr))}}@media (min-width: 900px){.grid-books{grid-template-columns: repeat(5,minmax(0,1fr));gap: var(--s-6) var(--s-5)}}@media (min-width: 1280px){.grid-books{grid-template-columns: repeat(6,minmax(0,1fr))}}.list-books{display: grid;gap: var(--s-3)}@media (min-width: 1024px){.list-books.two{grid-template-columns: 1fr 1fr}}.shelf-scroll{display: grid;grid-auto-flow: column;grid-auto-columns: 132px;gap: var(--s-4);overflow-x: auto;scroll-snap-type: x mandatory;padding-bottom: var(--s-3);margin-inline: calc(var(--gutter) * -1);padding-inline: var(--gutter);scrollbar-width: thin}.shelf-scroll>*{scroll-snap-align: start}@media (min-width: 768px){.shelf-scroll{grid-auto-columns: 156px;gap: var(--s-5)}}.toc{border-top: 1px solid var(--border)}.toc-row{display: grid;grid-template-columns: 56px 1fr auto;align-items: center;gap: var(--s-3);min-height: 52px;padding: 8px 6px;border-bottom: 1px solid var(--border);color: var(--text)}.toc-row:hover{background: var(--surface-2);color: var(--text)}.toc-row .n{font-variant-numeric: tabular-nums;color: var(--text-2);font-size: var(--fs-14);text-align: right;padding-right: 4px}.toc-row .t{min-width: 0;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-size: var(--fs-15)}.toc-row .d{font-size: var(--fs-13);color: var(--text-3);white-space: nowrap;display: inline-flex;align-items: center;gap: 6px}.toc-row.is-read .t{color: var(--text-2)}.toc-row.is-read .n::after{content: "";display: inline-block;width: 6px;height: 6px;margin-left: 6px;border-radius: 50%;background: var(--text-3);vertical-align: middle}.toc-row.is-current{background: var(--accent-soft)}.toc-row.is-current .t{font-weight: 600}.toc-row.is-current .n{color: var(--text);font-weight: 600}.toc-row.is-locked .t{color: var(--text-2)}.toc-row .lock{color: var(--text-3)}@media (max-width: 480px){.toc-row{grid-template-columns: 46px 1fr auto}.toc-row .d .date{display: none}}.tabs{display: flex;gap: 6px;overflow-x: auto;padding-bottom: 4px;scrollbar-width: none}.tabs::-webkit-scrollbar{display: none}.tab{display: inline-flex;align-items: center;gap: 8px;min-height: 40px;padding: 0 16px;border-radius: var(--r-pill);color: var(--text-2);font-weight: 500;white-space: nowrap;border: 1px solid var(--border);background: var(--surface)}.tab .count{font-size: var(--fs-13);color: var(--text-3);font-variant-numeric: tabular-nums}.tab[aria-current=page]{background: var(--text);color: var(--bg);border-color: var(--text)}.tab[aria-current=page] .count{color: color-mix(in srgb,var(--bg) 75%,transparent)}.new-badge{position: absolute;top: 8px;right: 8px;z-index: 2}.sub-card{position: relative;overflow: hidden;border-radius: var(--r-panel);background: var(--surface);border: 1px solid var(--border);box-shadow: var(--shadow-2);display: grid}.sub-card .art{position: relative;aspect-ratio: 4 / 3;background: var(--surface-2)}.sub-card .art img{width: 100%;height: 100%;object-fit: cover;object-position: 50% 30%}.sub-card .art::after{content: "";position: absolute;inset: auto 0 0;height: 45%;background: linear-gradient(to top,var(--surface),transparent)}.sub-card .body{padding: var(--s-5) var(--s-6) var(--s-6);display: grid;gap: var(--s-4)}.sub-card h2{font-family: var(--font-display);font-weight: 600;font-size: var(--fs-20);line-height: 1.25}.sub-card .perks{display: grid;gap: 8px}.sub-card .perks li{display: flex;gap: 10px;align-items: flex-start;color: var(--text-2);font-size: var(--fs-15)}.sub-card .perks .icon{color: var(--accent);margin-top: 2px}.sub-card .price{font-size: var(--fs-15);color: var(--text-2)}.sub-card .price b{font-family: var(--font-display);font-size: var(--fs-24);color: var(--text);font-weight: 600}@media (min-width: 720px){.sub-card{grid-template-columns: 5fr 6fr}.sub-card .art{aspect-ratio: auto;min-height: 100%}.sub-card .art::after{inset: 0 0 0 auto;width: 40%;height: auto;background: linear-gradient(to left,var(--surface),transparent)}.sub-card .body{padding: var(--s-7);align-content: center}}.alert{display: flex;gap: 12px;align-items: flex-start;padding: 14px 16px;border-radius: var(--r-card);background: var(--surface-2);border: 1px solid var(--border);font-size: var(--fs-15)}.alert .icon{margin-top: 2px;color: var(--text-2)}.alert-ok{background: color-mix(in srgb,var(--success) 10%,var(--surface));border-color: color-mix(in srgb,var(--success) 30%,transparent)}.alert-ok .icon{color: var(--success)}.alert-error{background: color-mix(in srgb,var(--danger) 8%,var(--surface));border-color: color-mix(in srgb,var(--danger) 30%,transparent)}.alert-error .icon{color: var(--danger)}.alert-warn{background: color-mix(in srgb,var(--warning) 10%,var(--surface));border-color: color-mix(in srgb,var(--warning) 35%,transparent)}.alert-warn .icon{color: var(--warning)}.toast-host{position: fixed;left: 50%;bottom: 20px;transform: translateX(-50%);z-index: var(--z-toast);display: grid;gap: 8px;width: min(440px,calc(100vw - 32px));pointer-events: none}.toast{pointer-events: auto;background: var(--text);color: var(--bg);padding: 12px 16px;border-radius: var(--r-card);box-shadow: var(--shadow-3);font-size: var(--fs-15);animation: toast-in var(--t-slow) var(--ease)}@keyframes toast-in{from{opacity: 0;transform: translateY(8px)}}.modal{border: 0;padding: 0;border-radius: var(--r-panel);background: var(--surface);color: var(--text);box-shadow: var(--shadow-3);width: min(480px,calc(100vw - 32px))}.modal::backdrop{background: rgba(var(--scrim),.5)}.modal-body{padding: var(--s-6);display: grid;gap: var(--s-4)}.modal-title{font-weight: 700;font-size: var(--fs-18)}.skeleton{background: linear-gradient(90deg,var(--surface-2),color-mix(in srgb,var(--surface-2) 60%,var(--surface)),var(--surface-2));background-size: 200% 100%;animation: shimmer 1.4s linear infinite;border-radius: 6px}@keyframes shimmer{to{background-position: -200% 0}}.empty{display: grid;gap: var(--s-4);justify-items: center;text-align: center;padding: var(--s-8) var(--s-4)}.empty .art{width: min(320px,80%);aspect-ratio: 4 / 5;border-radius: var(--r-panel);overflow: hidden;background: var(--surface-2);box-shadow: var(--shadow-2)}.empty .art img{width: 100%;height: 100%;object-fit: cover;object-position: 50% 35%}.empty h2{font-family: var(--font-display);font-weight: 600;font-size: var(--fs-20)}.empty p{color: var(--text-2);max-width: 46ch}.pager{display: flex;flex-wrap: wrap;gap: 6px;align-items: center;justify-content: center;margin-top: var(--s-6)}.pager a,.pager span{min-width: 40px;height: 40px;padding: 0 12px;display: inline-grid;place-items: center;border-radius: var(--r-pill);font-variant-numeric: tabular-nums;font-size: var(--fs-14);color: var(--text-2);border: 1px solid transparent}.pager a:hover{background: var(--surface-2);color: var(--text)}.pager [aria-current=page]{background: var(--text);color: var(--bg);font-weight: 600}.pager .gap{border: 0;min-width: 20px;padding: 0}.pager .wide{border-color: var(--border)}.site-footer{margin-top: var(--s-10);border-top: 1px solid var(--border);background: var(--bg-2);padding-block: var(--s-8) var(--s-7);font-size: var(--fs-14);color: var(--text-2)}.footer-grid{display: grid;gap: var(--s-6)}.footer-grid nav{display: grid;gap: 8px;align-content: start}.footer-grid nav b{color: var(--text);font-weight: 600;margin-bottom: 4px}.footer-grid a:hover{color: var(--accent)}.footer-bottom{margin-top: var(--s-7);padding-top: var(--s-5);border-top: 1px solid var(--border);display: flex;flex-wrap: wrap;justify-content: space-between;gap: var(--s-3)}@media (min-width: 768px){.footer-grid{grid-template-columns: 2fr 1fr 1fr 1fr}}.cookie-bar{position: fixed;left: 8px;right: 8px;bottom: 8px;z-index: var(--z-toast);display: flex;align-items: center;gap: 12px;padding: 10px 10px 10px 14px;border-radius: var(--r-card);background: var(--surface);border: 1px solid var(--border);box-shadow: var(--shadow-3);font-size: var(--fs-13);line-height: 1.4;color: var(--text-2)}.cookie-bar p{flex: 1 1 auto}.cookie-bar .btn{flex: none}@media (min-width: 768px){.cookie-bar{left: auto;right: 24px;bottom: 24px;max-width: 520px}}.particles{position: absolute;inset: 0;z-index: var(--z-particles);pointer-events: none;width: 100%;height: 100%}.hero{position: relative;isolation: isolate;overflow: hidden;background: var(--bg-2)}.hero-media{position: absolute;inset: 0;z-index: -1}.hero-media img,.hero-media video{width: 100%;height: 100%;object-fit: cover;object-position: 70% 50%}.hero::after{content: "";position: absolute;inset: 0;z-index: -1;pointer-events: none;background: linear-gradient(180deg,rgba(var(--scrim),.62) 0%,rgba(var(--scrim),.36) 45%,rgba(var(--scrim),.1) 70%,rgba(var(--scrim),0) 100%)}.hero-inner{position: relative;z-index: 2;min-height: min(78dvh,640px);display: flex;flex-direction: column;justify-content: flex-start;padding-block: var(--s-8) var(--s-9);color: #FFF9F2}.hero h1{font-family: var(--font-display);font-weight: 600;font-size: clamp(1.6rem,1.1rem + 2.2vw,2.75rem);line-height: 1.14;letter-spacing: -.015em;max-width: 21ch;text-wrap: balance;text-shadow: 0 2px 24px rgba(var(--scrim),.35)}.hero .lead{margin-top: var(--s-4);font-size: var(--fs-18);line-height: 1.5;max-width: 34ch;color: rgba(255,249,242,.92);text-shadow: 0 1px 12px rgba(var(--scrim),.4)}.hero-search{margin-top: var(--s-6);display: flex;gap: 8px;width: min(520px,100%);padding: 6px;border-radius: var(--r-pill);background: rgba(255,252,248,.94);box-shadow: var(--shadow-3)}.hero-search input{flex: 1;min-width: 0;border: 0;background: transparent;padding: 0 8px 0 14px;color: #2B1D16;font-size: var(--fs-16)}.hero-search input::placeholder{color: #6E5A4E}.hero-search input:focus{outline: none}.hero-search .btn{min-height: 44px}.hero-links{margin-top: var(--s-4);display: flex;flex-wrap: wrap;gap: 6px 18px;font-size: var(--fs-15)}.hero-links a{color: #FFF9F2;text-decoration: underline;text-decoration-color: rgba(255,249,242,.45);text-underline-offset: 4px}.hero-links a:hover{text-decoration-color: currentColor;color: #FFF9F2}.hero.compact .hero-inner{min-height: 300px;padding-block: var(--s-7)}@media (min-width: 768px){.hero::after{background: linear-gradient(90deg,rgba(var(--scrim),.66) 0%,rgba(var(--scrim),.44) 32%,rgba(var(--scrim),.08) 58%,rgba(var(--scrim),0) 75%)}.hero-inner{justify-content: center;padding-block: var(--s-10)}}.continue{padding-top: var(--s-6)}.continue-list{display: grid;grid-auto-flow: column;grid-auto-columns: minmax(280px,1fr);gap: var(--s-3);overflow-x: auto;scroll-snap-type: x mandatory;padding-bottom: 6px;margin-inline: calc(var(--gutter) * -1);padding-inline: var(--gutter)}.continue-item{scroll-snap-align: start;display: grid;grid-template-columns: 56px 1fr auto;gap: var(--s-3);align-items: center;padding: 10px 12px 10px 10px;border-radius: var(--r-card);background: var(--surface);border: 1px solid var(--border)}.continue-item:hover{border-color: var(--border-strong);color: inherit;box-shadow: var(--shadow-1)}.continue-item .cover{width: 56px}.continue-item .t{font-weight: 600;font-size: var(--fs-15);line-height: 1.3;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden}.continue-item .m{font-size: var(--fs-13);color: var(--text-2);margin-top: 2px}.continue-item .go{width: 40px;height: 40px;border-radius: 50%;display: grid;place-items: center;background: var(--accent);color: var(--accent-ink)}.progress-line{height: 3px;border-radius: 2px;background: var(--border);margin-top: 8px;overflow: hidden}.progress-line i{display: block;height: 100%;background: var(--accent)}@media (min-width: 1024px){.continue-list{grid-auto-flow: row;grid-template-columns: repeat(auto-fill,minmax(280px,1fr));overflow: visible;margin: 0;padding: 0}}.home-split{display: grid;gap: var(--s-8)}@media (min-width: 1024px){.home-split{grid-template-columns: minmax(0,1.7fr) minmax(0,1fr);gap: var(--s-9)}}.feed{display: grid}.feed-item{display: grid;grid-template-columns: 52px 1fr auto;gap: var(--s-4);align-items: center;padding: 12px 0;border-bottom: 1px solid var(--border)}.feed-item:first-child{border-top: 1px solid var(--border)}.feed-item .cover{width: 52px}.feed-item .t{font-weight: 600;line-height: 1.3;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden}.feed-item .t:hover{color: var(--accent)}.feed-item .ch{font-size: var(--fs-14);color: var(--text-2);margin-top: 2px}.feed-item .ch a{color: var(--accent);text-decoration: underline;text-decoration-thickness: 1px;text-underline-offset: 3px}.feed-item time{font-size: var(--fs-13);color: var(--text-3);white-space: nowrap;align-self: start;padding-top: 2px}.rank{counter-reset: rank;display: grid;gap: 2px}.rank li a{display: grid;grid-template-columns: 34px 44px 1fr;gap: var(--s-3);align-items: center;padding: 8px 6px;border-radius: var(--r-field)}.rank li a:hover{background: var(--surface-2);color: inherit}.rank li a::before{counter-increment: rank;content: counter(rank);font-family: var(--font-display);font-weight: 600;font-size: var(--fs-20);color: var(--accent);text-align: center}.rank .cover{width: 44px}.rank .t{font-weight: 600;font-size: var(--fs-15);line-height: 1.3;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden}.rank .m{font-size: var(--fs-13);color: var(--text-2)}.promo{display: grid;gap: var(--s-6);align-items: center;padding: var(--s-6);border-radius: var(--r-panel);background: var(--accent-soft);overflow: hidden;position: relative}.promo .art{border-radius: var(--r-card);overflow: hidden;aspect-ratio: 16 / 10}.promo .art img{width: 100%;height: 100%;object-fit: cover}.promo h2{font-family: var(--font-display);font-weight: 600;font-size: var(--fs-24);line-height: 1.2}.promo p{color: var(--text-2);margin-top: var(--s-3);max-width: 44ch}@media (min-width: 900px){.promo{grid-template-columns: 1fr 1.1fr;padding: var(--s-8)}}.page-head{padding-top: var(--s-7);padding-bottom: var(--s-5)}.page-title{font-family: var(--font-display);font-weight: 600;font-size: clamp(1.5rem,1.2rem + 1.4vw,2.25rem);letter-spacing: -.015em}.page-sub{margin-top: 6px;color: var(--text-2)}.catalog-layout{display: grid;gap: var(--s-6)}.filters{display: grid;gap: var(--s-5);align-content: start}.filters .group>.label{display: block;margin-bottom: 8px}.filters-toggle{display: inline-flex}.catalog-bar{display: flex;flex-wrap: wrap;gap: var(--s-3);align-items: center;justify-content: space-between;margin-bottom: var(--s-4)}.catalog-search{position: relative;flex: 1 1 280px}.catalog-search .icon{position: absolute;left: 14px;top: 13px;color: var(--text-3)}.catalog-search .input{padding-left: 42px;border-radius: var(--r-pill)}.found{color: var(--text-2);font-size: var(--fs-14)}@media (max-width: 899px){.filters.is-collapsed{display: none}}@media (min-width: 900px){.catalog-layout{grid-template-columns: 250px minmax(0,1fr);gap: var(--s-8)}.filters{position: sticky;top: calc(var(--header-h) + 20px);max-height: calc(100dvh - var(--header-h) - 40px);overflow-y: auto;padding-right: 4px}.filters-toggle{display: none}}.book-hero{position: relative;isolation: isolate;overflow: hidden;border-bottom: 1px solid var(--border)}.book-hero .backdrop{position: absolute;inset: -40px;z-index: -2;background-size: cover;background-position: center;filter: blur(40px) saturate(1.2);opacity: .55;transform: scale(1.1)}.book-hero::after{content: "";position: absolute;inset: 0;z-index: -1;background: linear-gradient(180deg,color-mix(in srgb,var(--bg) 55%,transparent),var(--bg) 92%)}.book-head{display: grid;grid-template-columns: 120px 1fr;gap: var(--s-5);padding-block: var(--s-6) var(--s-7);align-items: start}.book-head .cover{box-shadow: var(--shadow-3)}.book-head h1{font-family: var(--font-display);font-weight: 600;font-size: clamp(1.25rem,1rem + 1.6vw,2.25rem);line-height: 1.18;letter-spacing: -.015em;overflow-wrap: anywhere}.book-head h1.is-long{font-size: clamp(1.1rem,.95rem + 1vw,1.6rem)}.book-head .orig{margin-top: 6px;color: var(--text-2);font-size: var(--fs-15);overflow-wrap: anywhere}.facts{display: flex;flex-wrap: wrap;gap: 6px 18px;margin-top: var(--s-4);font-size: var(--fs-14);color: var(--text-2)}.facts b{color: var(--text);font-weight: 600}.book-actions{display: flex;flex-wrap: wrap;gap: var(--s-3);margin-top: var(--s-5);grid-column: 1 / -1}.book-actions .btn-primary{flex: 1 1 220px}.shelf-select{position: relative}.book-body{display: grid;gap: var(--s-7);padding-top: var(--s-6)}.description{position: relative;max-width: 72ch;color: var(--text);line-height: 1.7}.description.is-clamped{max-height: 11.5em;overflow: hidden}.description.is-clamped::after{content: "";position: absolute;inset: auto 0 0;height: 4em;background: linear-gradient(transparent,var(--bg))}.toc-head{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: var(--s-3);margin-bottom: var(--s-3)}.toc-jump{display: flex;gap: 6px}.toc-jump .input{width: 120px;min-height: 40px;border-radius: var(--r-pill)}@media (min-width: 768px){.book-head{grid-template-columns: 200px 1fr;grid-template-rows: auto 1fr;column-gap: var(--s-8);row-gap: 0;padding-block: var(--s-8) var(--s-8)}.book-head>.cover{grid-row: 1 / span 2}.book-actions{grid-column: 2;align-self: start}.book-actions .btn-primary{flex: 0 0 auto}}.auth-wrap{display: grid;min-height: calc(100dvh - var(--header-h))}.auth-art{display: none;position: relative;overflow: hidden;background: var(--bg-2)}.auth-art img{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;object-position: 60% 30%}.auth-art::after{content: "";position: absolute;inset: 0;background: linear-gradient(0deg,rgba(var(--scrim),.55),transparent 45%)}.auth-art p{position: absolute;left: var(--s-8);right: var(--s-8);bottom: var(--s-8);z-index: 1;color: #FFF9F2;font-family: var(--font-display);font-weight: 600;font-size: var(--fs-24);line-height: 1.25;max-width: 18ch}.auth-main{display: grid;place-items: start center;padding: var(--s-7) var(--gutter) var(--s-9)}@media (min-width: 1024px){.auth-main{place-items: center}}.auth-card{width: min(420px,100%)}.auth-card h1{font-family: var(--font-display);font-weight: 600;font-size: var(--fs-24);margin-bottom: 6px}.auth-card .sub{color: var(--text-2);margin-bottom: var(--s-6)}.oauth{display: grid;gap: 8px;margin-bottom: var(--s-5)}.or{display: flex;align-items: center;gap: 12px;color: var(--text-3);font-size: var(--fs-13);margin: var(--s-5) 0}.or::before,.or::after{content: "";flex: 1;height: 1px;background: var(--border)}@media (min-width: 1024px){.auth-wrap{grid-template-columns: 1fr 1fr}.auth-art{display: block}}.account-grid{display: grid;gap: var(--s-6)}.panel{background: var(--surface);border: 1px solid var(--border);border-radius: var(--r-card);padding: var(--s-5)}.panel h2{font-size: var(--fs-18);font-weight: 700;margin-bottom: var(--s-4)}.sub-status{display: grid;gap: var(--s-3);justify-items: start}.sub-status .state{display: flex;align-items: center;gap: 10px;font-weight: 600;font-size: var(--fs-18)}.kv{display: grid;grid-template-columns: auto 1fr;gap: 6px 16px;font-size: var(--fs-15)}.kv dt{color: var(--text-2)}.kv dd{margin: 0}.table-wrap{overflow-x: auto}.table{width: 100%;border-collapse: collapse;font-size: var(--fs-14)}.table th{text-align: left;font-weight: 600;color: var(--text-2);padding: 8px 10px;border-bottom: 1px solid var(--border);white-space: nowrap}.table td{padding: 10px;border-bottom: 1px solid var(--border);vertical-align: top}@media (min-width: 1024px){.account-grid{grid-template-columns: minmax(0,1.25fr) minmax(0,1fr);align-items: start}}.plans{display: grid;gap: var(--s-4)}.plan{position: relative;display: grid;gap: var(--s-3);padding: var(--s-6);border-radius: var(--r-panel);background: var(--surface);border: 1px solid var(--border)}.plan.best{border-color: var(--accent);box-shadow: 0 0 0 1px var(--accent),var(--shadow-2)}.plan .name{font-weight: 700;font-size: var(--fs-18)}.plan .cost{font-family: var(--font-display);font-weight: 600;font-size: var(--fs-30);letter-spacing: -.01em}.plan .per{color: var(--text-2);font-size: var(--fs-14)}.plan .flag{position: absolute;top: -12px;left: var(--s-6)}@media (min-width: 768px){.plans{grid-template-columns: repeat(auto-fit,minmax(220px,1fr))}}.plans-hero{display: grid;gap: var(--s-6);align-items: center}.plans-hero .art{border-radius: var(--r-panel);overflow: hidden;aspect-ratio: 4 / 3;box-shadow: var(--shadow-2)}.plans-hero .art img{width: 100%;height: 100%;object-fit: cover;object-position: 50% 30%}@media (min-width: 900px){.plans-hero{grid-template-columns: 1.2fr 1fr}}.lib-card{position: relative}.lib-card .progress-line{margin-top: 6px}.legal{max-width: 72ch}.legal h2{font-size: var(--fs-20);margin: var(--s-6) 0 var(--s-3)}.error-page{display: grid;gap: var(--s-7);align-items: center;padding-block: var(--s-8) var(--s-9)}.error-page .art{border-radius: var(--r-panel);overflow: hidden;aspect-ratio: 4 / 5;max-width: 420px;box-shadow: var(--shadow-2);background: var(--surface-2)}.error-page .art img{width: 100%;height: 100%;object-fit: cover;object-position: 50% 30%}.error-page .code{font-family: var(--font-display);font-weight: 600;color: var(--accent);font-size: var(--fs-18)}.error-page h1{font-family: var(--font-display);font-weight: 600;font-size: clamp(1.5rem,1.1rem + 1.8vw,2.5rem);line-height: 1.15;margin-top: 8px}.error-page p{color: var(--text-2);margin-top: var(--s-4);max-width: 44ch}@media (min-width: 900px){.error-page{grid-template-columns: 1fr 1.1fr}.error-page .art{order: 2;justify-self: end}}.fake-pay{max-width: 460px;margin: var(--s-9) auto}[data-rbg=paper],[data-rbg=auto]{--rb: #FBF8F2;--rt: #24211D;--rm: #6B645A;--rl: #E7E0D3}[data-rbg=sepia]{--rb: #F1E6D2;--rt: #3A2E21;--rm: #6E5C47;--rl: #DDCDB1}[data-rbg=night]{--rb: #15171A;--rt: #CFCBC3;--rm: #8E8A83;--rl: #2A2D31}[data-theme=dark][data-rbg=auto]{--rb: #15171A;--rt: #CFCBC3;--rm: #8E8A83;--rl: #2A2D31}@media (prefers-color-scheme: dark){[data-theme=auto][data-rbg=auto]{--rb: #15171A;--rt: #CFCBC3;--rm: #8E8A83;--rl: #2A2D31}}body.is-reader{background: var(--rb,var(--bg))}.reader{--r-size: 18px;--r-line: 1.7;--r-width: 66ch;--r-font: var(--font-literata);background: var(--rb);color: var(--rt);min-height: calc(100dvh - var(--header-h))}.reader[data-font=ptserif]{--r-font: var(--font-ptserif)}.reader[data-font=onest]{--r-font: var(--font-onest)}.reader-bar{position: sticky;top: 0;z-index: var(--z-header);background: var(--surface);border-bottom: 1px solid var(--border);transition: transform var(--t-slow) var(--ease)}.reader-bar.is-hidden{transform: translateY(-100%)}.reader-bar .row{height: var(--header-h);display: flex;align-items: center;gap: var(--s-2)}.reader-bar .where{min-width: 0;flex: 1;display: grid;line-height: 1.25}.reader-bar .where a{font-size: var(--fs-13);color: var(--text-2);white-space: nowrap;overflow: hidden;text-overflow: ellipsis}.reader-bar .where span{font-size: var(--fs-14);font-weight: 600;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;color: var(--text)}.read-progress{position: absolute;left: 0;right: 0;bottom: -1px;height: 2px;background: transparent}.read-progress i{display: block;height: 100%;width: 0;background: var(--accent);transform-origin: left}.chapter{width: 100%;max-width: calc(var(--r-width) + 2 * var(--gutter));margin-inline: auto;padding: var(--s-7) var(--gutter) var(--s-9)}.chapter-head{margin-bottom: var(--s-7)}.chapter-head .book-link{font-size: var(--fs-14);color: var(--rm);font-family: var(--font-ui)}.chapter-head .book-link:hover{color: var(--accent)}.chapter-head h1{margin-top: var(--s-2);font-family: var(--r-font);font-weight: 600;font-size: calc(var(--r-size) * 1.45);line-height: 1.25;color: var(--rt);text-wrap: balance}.chapter-text{font-family: var(--r-font);font-size: var(--r-size);line-height: var(--r-line);color: var(--rt);font-optical-sizing: auto;overflow-wrap: break-word}.chapter-text p{margin: 0 0 .9em}.reader[data-align=justify] .chapter-text{text-align: justify;hyphens: auto;-webkit-hyphens: auto}.chapter-text p:target,.chapter-text p.is-restored{scroll-margin-top: calc(var(--header-h) + 24px)}.teaser-fade{position: relative;height: 0}.teaser-fade::before{content: "";position: absolute;left: 0;right: 0;bottom: 0;height: 7em;background: linear-gradient(transparent,var(--rb));pointer-events: none}.paywall{margin-top: var(--s-6);font-family: var(--font-ui)}.paywall .sub-card{color: var(--text)}.chapter-end{margin-top: var(--s-8);padding-top: var(--s-6);border-top: 1px solid var(--rl);display: grid;gap: var(--s-4);font-family: var(--font-ui)}.chapter-end .next{min-height: 60px;font-size: var(--fs-18);border-radius: var(--r-card)}.chapter-end .next small{font-weight: 500;opacity: .85;font-size: var(--fs-14)}.chapter-end .row{display: flex;justify-content: space-between;gap: var(--s-3);flex-wrap: wrap}.chapter-end .row a{display: inline-flex;align-items: center;gap: 6px;color: var(--rm);font-size: var(--fs-15);padding: 8px 2px}.chapter-end .row a:hover{color: var(--accent)}.chapter-end .done{text-align: center;color: var(--rm);padding: var(--s-5);border: 1px dashed var(--rl);border-radius: var(--r-card)}.toc-drawer .toc-row{grid-template-columns: 52px 1fr auto;min-height: 46px}.toc-drawer .drawer-body{padding: 0}.toc-drawer .toc-tools{padding: var(--s-4) var(--s-5);border-bottom: 1px solid var(--border);display: grid;gap: var(--s-3)}.settings-sheet{position: fixed;z-index: calc(var(--z-drawer) + 1);left: 0;right: 0;bottom: 0;background: var(--surface);border-radius: var(--r-panel) var(--r-panel) 0 0;box-shadow: var(--shadow-3);padding: var(--s-4) var(--s-5) calc(var(--s-6) + env(safe-area-inset-bottom));transform: translateY(105%);transition: transform var(--t-slow) var(--ease);max-height: 85dvh;overflow-y: auto}.settings-sheet.is-open{transform: none}.settings-sheet .grab{width: 40px;height: 4px;border-radius: 2px;background: var(--border-strong);margin: 0 auto var(--s-4)}.set-row{display: grid;gap: 8px;padding-block: 10px}.set-row + .set-row{border-top: 1px solid var(--border)}.set-row .label{font-size: var(--fs-13);color: var(--text-2);font-weight: 600}.stepper{display: grid;grid-template-columns: 48px 1fr 48px;align-items: center;background: var(--surface-2);border-radius: var(--r-pill);padding: 4px}.stepper button{height: 40px;border: 0;border-radius: var(--r-pill);background: var(--surface);color: var(--text);box-shadow: var(--shadow-1);display: grid;place-items: center}.stepper output{text-align: center;font-variant-numeric: tabular-nums;font-weight: 600}.bg-swatches{display: grid;grid-template-columns: repeat(4,1fr);gap: 8px}.bg-swatches button{min-height: 52px;border-radius: var(--r-field);border: 1px solid var(--border-strong);font-size: var(--fs-13);font-weight: 600;display: grid;place-items: center;gap: 2px}.bg-swatches button[aria-pressed=true]{box-shadow: 0 0 0 2px var(--accent);border-color: transparent}.bg-swatches [data-bg=auto]{background: linear-gradient(135deg,#FBF8F2 50%,#15171A 50%);color: #24211D;text-shadow: 0 0 6px #FBF8F2}.bg-swatches [data-bg=paper]{background: #FBF8F2;color: #24211D}.bg-swatches [data-bg=sepia]{background: #F1E6D2;color: #3A2E21}.bg-swatches [data-bg=night]{background: #15171A;color: #CFCBC3}.font-opts button{font-size: var(--fs-15)}.font-opts [data-font=literata]{font-family: var(--font-literata)}.font-opts [data-font=ptserif]{font-family: var(--font-ptserif)}.font-opts [data-font=onest]{font-family: var(--font-onest)}@media (min-width: 768px){.settings-sheet{left: auto;right: var(--s-6);bottom: auto;top: calc(var(--header-h) + 10px);width: 380px;border-radius: var(--r-panel);transform: translateY(-8px);opacity: 0;visibility: hidden;transition: opacity var(--t-base),transform var(--t-base) var(--ease),visibility 0s linear var(--t-base)}.settings-sheet.is-open{opacity: 1;visibility: visible;transform: none;transition: opacity var(--t-base),transform var(--t-base) var(--ease)}.settings-sheet .grab{display: none}}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration: .01ms !important;animation-iteration-count: 1 !important;transition-duration: .01ms !important;scroll-behavior: auto !important}.particles,.hero-media video{display: none !important}}.admin{display: grid;min-height: 100dvh;grid-template-columns: minmax(0,1fr)}.admin-side{min-width: 0;background: var(--surface);border-bottom: 1px solid var(--border);padding: var(--s-3) var(--gutter);position: sticky;top: 0;z-index: var(--z-header)}.admin-side nav{display: flex;gap: 4px;overflow-x: auto;scrollbar-width: none;margin-inline: calc(var(--gutter) * -1);padding-inline: var(--gutter)}.admin-side nav::-webkit-scrollbar{display: none}.admin-side nav a{display: inline-flex;align-items: center;gap: 8px;padding: 8px 12px;border-radius: var(--r-field);color: var(--text-2);white-space: nowrap;font-size: var(--fs-14);font-weight: 500}.admin-side nav a:hover{background: var(--surface-2);color: var(--text)}.admin-side nav a[aria-current=page]{background: var(--accent-soft);color: var(--text)}.admin-side .logo{margin-bottom: var(--s-2);font-size: var(--fs-16)}.admin-side .logo .logo-mark{width: 28px;height: 28px;border-radius: 8px}.admin-main{padding: var(--s-5) var(--gutter) var(--s-9);min-width: 0}.admin-main h1{overflow-wrap: anywhere}.admin-tools>*{max-width: 100%}.admin-tools .input[type=search],.admin-tools input[name=slug]{flex: 1 1 200px}.admin-main h1{font-family: var(--font-display);font-weight: 600;font-size: var(--fs-24);margin-bottom: var(--s-5)}.admin-main h2{font-size: var(--fs-18);font-weight: 700;margin: var(--s-6) 0 var(--s-3)}.stats{display: grid;grid-template-columns: repeat(auto-fill,minmax(170px,1fr));gap: var(--s-3)}.stat{background: var(--surface);border: 1px solid var(--border);border-radius: var(--r-card);padding: var(--s-4)}.stat .v{font-family: var(--font-display);font-weight: 600;font-size: var(--fs-24);font-variant-numeric: tabular-nums}.stat .k{color: var(--text-2);font-size: var(--fs-13);margin-top: 2px}.bars{display: flex;align-items: flex-end;gap: 4px;height: 80px;margin-top: var(--s-3)}.bars i{flex: 1;background: var(--accent);border-radius: 3px 3px 0 0;min-height: 2px;opacity: .85}.admin-tools{display: flex;flex-wrap: wrap;gap: var(--s-3);align-items: center;margin-bottom: var(--s-4)}.admin-tools .input,.admin-tools .select{width: auto;min-height: 40px}.admin .table td .btn{min-height: 32px}.row-actions{display: flex;flex-wrap: wrap;gap: 6px}.form-grid{display: grid;gap: var(--s-4);max-width: 760px}@media (min-width: 1024px){.admin{grid-template-columns: 240px minmax(0,1fr)}.admin-side{border-bottom: 0;border-right: 1px solid var(--border);padding: var(--s-5) var(--s-3);position: sticky;top: 0;height: 100dvh;overflow-y: auto}.admin-side nav{flex-direction: column;overflow: visible;margin: 0;padding: 0}.admin-main{padding: var(--s-7) var(--s-8) var(--s-9)}}.cover-upload{display: grid;grid-template-columns: 96px minmax(0,1fr);gap: 16px;align-items: start}.cover-upload .input[type=file]{min-width: 0}.admin .kv{grid-template-columns: minmax(90px,auto) minmax(0,1fr)}.admin .kv dd{overflow-wrap: anywhere}
