@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-ext-wght-normal-CGKlZYBf.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-wght-normal-DLqwHbi6.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-ext-wght-normal-e3e57Shi.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-wght-normal-CO1l-giJ.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-vietnamese-wght-normal-LcSrhZ7T.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-ext-wght-normal-BnEbWgdZ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-wght-normal-DLxlUchJ.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-ext-wght-italic-DrMGjC4f.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-cyrillic-wght-italic-C2hF6zFe.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-ext-wght-italic-f6xT_0ee.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-greek-wght-italic-9BAkQpca.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-vietnamese-wght-italic-LyOFdRXZ.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-ext-wght-italic-CC1SwlwQ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata Variable;font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/literata-latin-wght-italic-Bm_GJfSc.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-ext-wght-normal-DHTKMUil.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-wght-normal-B1g8a0vD.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-greek-wght-normal-BpXpdlRW.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-vietnamese-wght-normal-BsaNuasd.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-ext-wght-normal-BVZ5su8S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-wght-normal-DMe4EKeb.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-ext-wght-italic-y6hTrs-Y.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-cyrillic-wght-italic-CRzqOTyj.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-greek-wght-italic-CUp-f2uw.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-vietnamese-wght-italic-D3EGHrWW.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-ext-wght-italic-B_cmBfNX.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/assets/source-serif-4-latin-wght-italic-B-rCj6ir.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-italic-B5xAaiFk.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-italic-DzZdc28x.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-italic-DcOpz6Lw.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-italic-CILZdfAp.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-italic-K3WlGtc8.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-italic-0pjOp8NU.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:italic;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-italic-DpCbqKDY.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Merriweather;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/merriweather-latin-400-normal-G4kZaoXi.woff2)format("woff2"),url(/assets/merriweather-latin-400-normal-CvqO63Ah.woff)format("woff")}@font-face{font-family:Merriweather;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/merriweather-latin-400-italic-CuD3zK4B.woff2)format("woff2"),url(/assets/merriweather-latin-400-italic-Cq-nJhum.woff)format("woff")}@font-face{font-family:Merriweather;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/merriweather-latin-700-normal-DoUP8Ce-.woff2)format("woff2"),url(/assets/merriweather-latin-700-normal-D4-nzrAh.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-normal-BrHNak5F.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-normal-BbWidj28.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/atkinson-hyperlegible-latin-400-italic-D-qjh7ci.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-400-italic-OoEIrRJc.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/atkinson-hyperlegible-latin-700-normal-GZI4o3u0.woff2)format("woff2"),url(/assets/atkinson-hyperlegible-latin-700-normal-BK6Glc0m.woff)format("woff")}:root{--font-ui:"Inter Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:"Literata Variable", Georgia, "Times New Roman", serif;--font-read:var(--font-display);--read-size:18px;--read-leading:1.65;--read-measure:66ch;--read-gutter:1.5rem;--radius:10px;--radius-lg:16px;--ease:cubic-bezier(.2, .7, .2, 1);--topbar-h:56px;--bg:#fbfaf7;--bg-elev:#fff;--bg-sunk:#f2efe8;--text:#22201c;--text-soft:#3d3933;--muted:#77716a;--rule:#3c32281f;--accent:#8a3b2f;--accent-soft:#8a3b2f1a;--on-accent:#fffaf2;--shadow:0 1px 2px #281e140f, 0 8px 28px #281e141a;--scrim:#1e191447;--selection:#d2a04652;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=sepia]{--bg:#f3e9d2;--bg-elev:#faf3e3;--bg-sunk:#eadcbf;--text:#3a2e20;--text-soft:#4a3c2b;--muted:#84715a;--rule:#5a411e29;--accent:#8e4a1c;--accent-soft:#8e4a1c1f;--on-accent:#fff7e8;--shadow:0 1px 2px #50371414, 0 8px 28px #50371424;--selection:#c88c3c4d}[data-theme=green]{--bg:#dce8d4;--bg-elev:#e9f1e3;--bg-sunk:#cfdcc6;--text:#22301f;--text-soft:#2f3f2b;--muted:#5d6f57;--rule:#28462329;--accent:#3d6a3a;--accent-soft:#3d6a3a1f;--on-accent:#f4faf0;--shadow:0 1px 2px #1e3c1e14, 0 8px 28px #1e3c1e1f;--selection:#8cb45a59}[data-theme=dark]{--bg:#1d1c1a;--bg-elev:#282623;--bg-sunk:#161513;--text:#ddd7ca;--text-soft:#cbc4b5;--muted:#8f897d;--rule:#e6dcc81a;--accent:#d9a273;--accent-soft:#d9a27324;--on-accent:#1d1c1a;--shadow:0 1px 2px #0000004d, 0 10px 30px #00000073;--scrim:#00000080;--selection:#d9a27347;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=black]{--bg:#000;--bg-elev:#141414;--bg-sunk:#000;--text:#c9c4b9;--text-soft:#b9b4a9;--muted:#7a766d;--rule:#ffffff17;--accent:#c98d5e;--accent-soft:#c98d5e24;--on-accent:#000;--shadow:0 0 0 1px #ffffff0f, 0 10px 30px #0009;--scrim:#0009;--selection:#c98d5e4d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-font=literata]{--font-read:"Literata Variable", Georgia, serif}[data-font=merriweather]{--font-read:"Merriweather", Georgia, serif}[data-font=source-serif]{--font-read:"Source Serif 4 Variable", Georgia, serif}[data-font=inter]{--font-read:"Inter Variable", system-ui, sans-serif}[data-font=atkinson]{--font-read:"Atkinson Hyperlegible", system-ui, sans-serif}[data-size="0"]{--read-size:14px}[data-size="1"]{--read-size:15px}[data-size="2"]{--read-size:16px}[data-size="3"]{--read-size:17px}[data-size="4"]{--read-size:18px}[data-size="5"]{--read-size:19px}[data-size="6"]{--read-size:20px}[data-size="7"]{--read-size:22px}[data-size="8"]{--read-size:24px}[data-size="9"]{--read-size:27px}[data-spacing=compact]{--read-leading:1.45}[data-spacing=normal]{--read-leading:1.65}[data-spacing=relaxed]{--read-leading:1.9}[data-margins=narrow]{--read-measure:80ch;--read-gutter:1rem}[data-margins=normal]{--read-measure:66ch;--read-gutter:1.5rem}[data-margins=wide]{--read-measure:54ch;--read-gutter:2.25rem}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--topbar-h) + 1rem)}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;transition:background-color .35s var(--ease), color .35s var(--ease);margin:0;font-size:15px;line-height:1.5}::selection{background:var(--selection)}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}h1,h2,h3{text-wrap:balance}.page{min-height:100vh;min-height:100dvh}.eyebrow{font-family:var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:600}.btn{border:1px solid var(--rule);background:var(--bg-elev);letter-spacing:.005em;cursor:pointer;transition:transform .15s var(--ease), background-color .2s, box-shadow .2s;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.2rem;font-size:.92rem;font-weight:550;text-decoration:none;display:inline-flex}.btn:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn--primary{background:var(--accent);color:var(--on-accent);border-color:#0000}.btn--block{width:100%}.icon-btn{width:40px;height:40px;color:var(--text-soft);cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;text-decoration:none;transition:background-color .2s,color .2s;display:inline-grid}.icon-btn:hover,.icon-btn.is-active{background:var(--accent-soft);color:var(--text)}.link-btn{color:var(--muted);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:.85rem;text-decoration:underline}.link-btn:hover{color:var(--text)}.icon-aa{font-family:var(--font-display);align-items:baseline;line-height:1;display:inline-flex}.icon-aa span:first-child{font-size:19px}.icon-aa span:last-child{font-size:14px}@media (hover:none){.hide-on-touch{display:none}}.topbar{z-index:20;height:var(--topbar-h);padding:0 max(.75rem, env(safe-area-inset-left));background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);border-bottom:1px solid var(--rule);transition:transform .32s var(--ease), opacity .32s var(--ease), background-color .35s;grid-template-columns:1fr minmax(0,auto) 1fr;align-items:center;gap:.75rem;display:grid;position:sticky;top:0}.topbar.is-hidden{opacity:0;pointer-events:none;transform:translateY(-100%)}.topbar__side{align-items:center;gap:.25rem;display:flex}.topbar__side--right{justify-content:flex-end}.topbar__title{text-align:center;flex-direction:column;align-items:center;min-width:0;line-height:1.2;display:flex}.topbar__book{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.7rem;font-weight:600}.topbar__book,.topbar__chapter{white-space:nowrap;text-overflow:ellipsis;max-width:min(52vw,520px);overflow:hidden}.topbar__chapter{font-family:var(--font-display);color:var(--text-soft);font-size:.92rem}.brand{font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:.5rem;padding-left:.5rem;font-size:1.1rem;font-weight:600;display:inline-flex}.progress-line{background:var(--rule);border-radius:3px;height:3px;overflow:hidden}.progress-line>span{background:var(--accent);border-radius:inherit;height:100%;display:block}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.read-progress{z-index:30;pointer-events:none;height:2px;position:fixed;inset:0 0 auto}.read-progress>span{background:var(--accent);transform-origin:0;height:100%;transition:transform .12s linear;display:block}.reader{padding:0 var(--read-gutter) 6rem}.chapter{max-width:var(--read-measure);font-family:var(--font-read);font-size:var(--read-size);line-height:var(--read-leading);color:var(--text);font-optical-sizing:auto;font-kerning:normal;font-variant-ligatures:common-ligatures;hanging-punctuation:first;margin:0 auto}.chapter__header{text-align:center;border-bottom:1px solid var(--rule);margin-bottom:2.5rem;padding:clamp(3rem,10vh,6.5rem) 0 2.25rem}.chapter__part{font-family:var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:1.75rem;font-size:.72rem;font-weight:500}.chapter__number{font-family:var(--font-display);color:var(--accent);font-size:.95em;font-style:italic}.chapter__title{max-width:20ch;font-family:var(--font-display);letter-spacing:-.018em;margin:.35em auto .6em;font-size:clamp(1.75em,1.2em + 2.2vw,2.4em);font-weight:500;line-height:1.12}.chapter__meta{font-family:var(--font-ui);color:var(--muted);font-size:.78rem}.chapter__loading{border-radius:var(--radius);background:linear-gradient(180deg, var(--bg) 0%, var(--bg-sunk) 50%, var(--bg) 100%);opacity:.6;background-size:100% 200%;height:60vh;animation:1.4s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:0 100%}to{background-position:0 -100%}}.chapter__error{color:var(--muted);text-align:center}.prose{-webkit-hyphens:manual;hyphens:manual}[data-align=justify] .prose p,[data-align=justify] .prose li{text-align:justify;-webkit-hyphens:auto;hyphens:auto}.prose>:first-child{margin-top:0}.prose p{margin:0 0 1.05em}.chapter .prose>p:first-child>em:only-child{color:var(--muted);text-align:center;margin-bottom:.6em;display:block}.chapter .prose>p:first-of-type:not(:has(>em:only-child)):first-letter{float:left;font-family:var(--font-display);color:var(--accent);margin:.06em .09em 0 0;font-size:3.3em;font-weight:500;line-height:.82}.chapter .prose>p:first-child:has(>em:only-child)+p:first-letter{float:left;font-family:var(--font-display);color:var(--accent);margin:.06em .09em 0 0;font-size:3.3em;font-weight:500;line-height:.82}.prose h2,.prose h3,.prose h4,.prose h5{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);scroll-margin-top:calc(var(--topbar-h) + 1.25rem);font-weight:600;line-height:1.25}.prose h2{margin:2.4em 0 .8em;font-size:1.32em}.prose h2:before{content:"";background:var(--accent);opacity:.55;width:2.5rem;height:1px;margin-bottom:1.4em;display:block}.prose h3{margin:2em 0 .6em;font-size:1.12em}.prose h4,.prose h5{margin:1.8em 0 .5em;font-size:1em;font-style:italic;font-weight:500}.prose a{color:var(--accent);text-underline-offset:.18em;text-decoration-thickness:1px}.prose strong{color:var(--text);font-weight:650}.prose blockquote{border-left:2px solid var(--accent);color:var(--text-soft);margin:1.6em 0;padding:.1em 0 .1em 1.25em;font-style:italic}.prose blockquote p:last-child{margin-bottom:0}.prose ul,.prose ol{margin:0 0 1.1em;padding-left:1.4em}.prose li{margin:.3em 0}.prose li::marker{color:var(--muted)}.prose hr{text-align:center;border:0;margin:2.5em auto;overflow:visible}.prose hr:after{content:"⁂";color:var(--muted);letter-spacing:.3em;font-size:1.1em}.prose code{background:var(--bg-sunk);border-radius:4px;padding:.08em .3em;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.88em}.table-wrap{border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg-elev);margin:1.6em 0;overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-family:var(--font-ui);font-size:.8em;line-height:1.45}.prose th,.prose td{text-align:left;vertical-align:top;border-bottom:1px solid var(--rule);padding:.65em .9em}.prose th{background:var(--bg-sunk);color:var(--text);font-weight:600}.prose tr:last-child td{border-bottom:0}.chapter-nav{max-width:var(--read-measure);text-align:center;gap:1rem;margin:4rem auto 0;display:grid}.chapter-nav__next{text-align:left;border-radius:var(--radius-lg);background:var(--bg-elev);border:1px solid var(--rule);box-shadow:0 1px 0 var(--rule);transition:transform .2s var(--ease), box-shadow .2s var(--ease);gap:.35rem;padding:1.6rem 3.5rem 1.6rem 1.6rem;text-decoration:none;display:grid;position:relative}.chapter-nav__next:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.chapter-nav__title{font-family:var(--font-display);font-size:1.25rem;line-height:1.3}.chapter-nav__arrow{color:var(--accent);transition:transform .2s var(--ease);position:absolute;top:50%;right:1.25rem;transform:translateY(-50%)}.chapter-nav__next:hover .chapter-nav__arrow{transform:translate(4px,-50%)}.chapter-nav__prev{color:var(--muted);justify-self:center;font-size:.85rem;text-decoration:none}.chapter-nav__prev:hover{color:var(--text)}.chapter-nav__end{font-family:var(--font-display);justify-items:center;gap:.75rem;padding:2rem 0;font-size:1.1rem;display:grid}.chapter-nav__end .cover__ornament{color:var(--accent);font-size:1.8rem}.reader-footer{z-index:15;padding:.55rem max(1rem, env(safe-area-inset-left)) calc(.55rem + env(safe-area-inset-bottom));font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--muted);background:linear-gradient(to top, var(--bg) 55%, transparent);pointer-events:none;transition:opacity .3s var(--ease);justify-content:space-between;font-size:.72rem;display:flex;position:fixed;inset:auto 0 0}.reader-footer.is-dim{opacity:.55}.cover{--cloth:#7a2e2a;--foil:#e9d9b4;aspect-ratio:2/3;color:var(--foil);background:linear-gradient(90deg, #00000047 0, #ffffff14 3.5%, #0000001a 6%, transparent 9%), repeating-linear-gradient(45deg, #ffffff06 0 2px, transparent 2px 4px), repeating-linear-gradient(-45deg, #0000000a 0 2px, transparent 2px 4px), radial-gradient(120% 90% at 30% 10%, #ffffff1f, transparent 60%), var(--cloth);border-radius:4px 10px 10px 4px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0f,0 1px 2px #0000002e,0 10px 24px -6px #00000059;container-type:inline-size}.cover--c0{--cloth:#7a2e2a}.cover--c1{--cloth:#263a5a}.cover--c2{--cloth:#2f4a3a}.cover--c3{--cloth:#8f6223;--foil:#fbefd2}.cover--c4{--cloth:#2e5458}.cover--c5{--cloth:#4f3446}.cover--c6{--cloth:#3f3a33}.cover--c7{--cloth:#5b2a2a}.cover__frame{text-align:center;border:1px solid color-mix(in srgb, var(--foil) 45%, transparent);outline:1px solid color-mix(in srgb, var(--foil) 22%, transparent);outline-offset:-2.6cqi;flex-direction:column;justify-content:center;align-items:center;gap:5cqi;padding:6cqi;display:flex;position:absolute;inset:7cqi 7cqi 7cqi 11cqi}.cover__ornament{font-family:var(--font-display);opacity:.85;font-size:11cqi;line-height:1}.cover__title{font-family:var(--font-display);letter-spacing:.01em;text-wrap:balance;text-shadow:0 1px #00000040;font-size:10.5cqi;font-weight:600;line-height:1.12}.cover__sub{font-family:var(--font-display);opacity:.82;text-wrap:balance;-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:5.6cqi;font-style:italic;line-height:1.3;display:-webkit-box;overflow:hidden}.cover__count{font-family:var(--font-ui);letter-spacing:.16em;text-transform:uppercase;opacity:.7;margin-top:auto;font-size:4.2cqi;font-weight:600}.cover--sm .cover__frame{gap:4cqi}.cover--sm .cover__title{font-size:12cqi}.cover--sm .cover__count{display:none}.library{max-width:1120px;margin:0 auto;padding:clamp(2rem,6vw,4rem) clamp(1.25rem,4vw,2.5rem) 5rem}.library__intro h1{font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-size:clamp(2rem,1.4rem + 2.4vw,3rem);font-weight:500}.library__intro p{color:var(--muted);margin:.4rem 0 0}.continue{margin-top:2.5rem}.continue__card{border-radius:var(--radius-lg);background:var(--bg-elev);border:1px solid var(--rule);transition:transform .2s var(--ease), box-shadow .25s var(--ease);grid-template-columns:92px 1fr auto;align-items:center;gap:1.5rem;padding:1.25rem 1.5rem 1.25rem 1.25rem;text-decoration:none;display:grid}.continue__card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.continue__body{gap:.3rem;min-width:0;display:grid}.continue__title{font-family:var(--font-display);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1.35rem;font-weight:500;line-height:1.2;display:-webkit-box;overflow:hidden}@media (max-width:620px){.continue__title{font-size:1.1rem}}.continue__chapter{color:var(--text-soft);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;overflow:hidden}.continue__body .progress-line{max-width:360px;margin-top:.6rem}.continue__meta{color:var(--muted);font-size:.78rem}@media (max-width:620px){.continue__card{grid-template-columns:72px 1fr}.continue__cta{grid-column:1/-1}}.shelf{grid-template-columns:repeat(auto-fill,minmax(min(168px,42vw),1fr));gap:2.5rem clamp(1.25rem,3vw,2.25rem);margin-top:3rem;display:grid}.shelf__item{gap:.9rem;text-decoration:none;display:grid}.shelf__item .cover{transition:transform .35s var(--ease), box-shadow .35s var(--ease)}.shelf__item:hover .cover{transform:translateY(-6px)rotate(-.6deg);box-shadow:inset 0 0 0 1px #ffffff0f,0 2px 4px #0000002e,0 22px 36px -10px #0000006b}.shelf__meta{gap:.3rem;display:grid}.shelf__title{font-family:var(--font-display);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1rem;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.shelf__sub,.shelf__new{color:var(--muted);font-size:.78rem}.shelf__meta .progress-line{margin-top:.3rem}.book{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:clamp(2rem,5vw,4.5rem);max-width:1080px;margin:0 auto;padding:clamp(2rem,5vw,3.5rem) clamp(1.25rem,4vw,2.5rem) 5rem;display:grid}.book__aside{top:calc(var(--topbar-h) + 2rem);gap:1.25rem;display:grid;position:sticky}.book__progress{color:var(--muted);gap:.4rem;font-size:.78rem;display:grid}.book__facts{border-top:1px solid var(--rule);grid-template-columns:repeat(3,1fr);margin:0;padding-top:1rem;display:grid}.book__facts div{gap:.15rem;display:grid}.book__facts dt{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.68rem}.book__facts dd{font-family:var(--font-display);margin:0;font-size:1.05rem}.book__header h1{font-family:var(--font-display);letter-spacing:-.022em;margin:0;font-size:clamp(1.9rem,1.3rem + 2.2vw,2.8rem);font-weight:500;line-height:1.1}.book__subtitle{font-family:var(--font-display);color:var(--text-soft);margin:.75rem 0 0;font-size:1.15rem;font-style:italic}.book__blurb{max-width:62ch;color:var(--text-soft);margin:1.25rem 0 0;font-size:1rem;line-height:1.65}.book__intro{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-top:2rem}.book__intro summary{cursor:pointer;align-items:center;gap:.6rem;padding:1rem 0;font-weight:550;list-style:none;display:flex}.book__intro summary::-webkit-details-marker{display:none}.book__intro summary:before{content:"›";color:var(--accent);transition:transform .2s var(--ease);font-size:1.3rem;line-height:1;display:inline-block}.book__intro[open] summary:before{transform:rotate(90deg)}.prose--intro{max-width:66ch;font-family:var(--font-read);font-size:calc(var(--read-size) * .95);line-height:var(--read-leading);padding-bottom:1.5rem}.contents{margin-top:2.5rem}.contents__heading{font-family:var(--font-display);margin:0 0 1rem;font-size:1.5rem;font-weight:500}.contents__part+.contents__part{margin-top:2rem}.contents__part-title{font-family:var(--font-display);gap:.25rem;margin:0 0 .5rem;font-size:1.08rem;font-weight:500;line-height:1.35;display:grid}.contents__list{margin:0;padding:0;list-style:none}.contents__item{border-radius:var(--radius);grid-template-columns:2.25rem 1fr auto;align-items:baseline;gap:.75rem;margin:0 -.75rem;padding:.7rem .75rem;text-decoration:none;transition:background-color .15s;display:grid}.contents__item:hover,.contents__item.is-current{background:var(--accent-soft)}.contents__num{font-family:var(--font-display);font-variant-numeric:oldstyle-nums;color:var(--muted);text-align:right}.contents__title{font-family:var(--font-display);font-size:1.02rem;line-height:1.35}.contents__time{color:var(--muted);white-space:nowrap;font-size:.75rem}.contents__done{color:var(--accent);display:inline-flex}@media (max-width:780px){.book{grid-template-columns:1fr}.book__aside{grid-template-columns:120px 1fr;align-items:center;position:static}.book__aside .cover{grid-row:span 3}.book__facts{grid-column:1/-1}}.not-found{text-align:center;place-content:center;justify-items:center;gap:.75rem;min-height:100vh;padding:2rem;display:grid}.not-found h1{font-family:var(--font-display);margin:0;font-weight:500}.not-found p{color:var(--muted);margin:0 0 1rem}.scrim{z-index:40;background:var(--scrim);animation:fade-in .2s var(--ease);position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}}@keyframes pop-in{0%{opacity:0;transform:translateY(-6px)scale(.98)}}@keyframes slide-in{0%{transform:translate(-100%)}}.settings-panel{z-index:50;top:calc(var(--topbar-h) + 6px);right:max(.75rem, env(safe-area-inset-right));width:min(360px,100vw - 1.5rem);max-height:calc(100dvh - var(--topbar-h) - 1.5rem);border-radius:var(--radius-lg);background:var(--bg-elev);border:1px solid var(--rule);box-shadow:var(--shadow);transform-origin:100% 0;animation:pop-in .18s var(--ease);gap:1.25rem;padding:1.25rem;display:grid;position:fixed;overflow-y:auto}.setting{gap:.55rem;min-width:0;display:grid}.setting__label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);justify-content:space-between;font-size:.7rem;font-weight:600;display:flex}.setting__value{font-variant-numeric:tabular-nums;letter-spacing:.02em;text-transform:none}.setting-row{grid-template-columns:1fr 1fr auto;gap:.75rem;display:grid}.themes{grid-template-columns:repeat(6,1fr);gap:.35rem;display:grid}.theme-swatch{cursor:pointer;background:0 0;border:0;justify-items:center;gap:.35rem;padding:0;display:grid}.theme-swatch__dot{width:42px;height:42px;font-family:var(--font-display);transition:transform .15s var(--ease), box-shadow .15s;border:1px solid #80786e59;border-radius:999px;place-items:center;font-size:.9rem;display:grid}.theme-swatch:hover .theme-swatch__dot{transform:scale(1.06)}.theme-swatch.is-active .theme-swatch__dot{box-shadow:0 0 0 2px var(--bg-elev), 0 0 0 4px var(--accent)}.theme-swatch__label{color:var(--muted);font-size:.68rem}.theme-swatch.is-active .theme-swatch__label{color:var(--text);font-weight:600}.theme-swatch--system .theme-swatch__dot{color:#0000;background:linear-gradient(135deg,#fbfaf7 50%,#1d1c1a 50%)}.theme-swatch--white .theme-swatch__dot{color:#22201c;background:#fbfaf7}.theme-swatch--sepia .theme-swatch__dot{color:#3a2e20;background:#f3e9d2}.theme-swatch--green .theme-swatch__dot{color:#22301f;background:#dce8d4}.theme-swatch--dark .theme-swatch__dot{color:#ddd7ca;background:#24221f}.theme-swatch--black .theme-swatch__dot{color:#c9c4b9;background:#000}.fonts{gap:.3rem;display:grid}.font-option{border-radius:var(--radius);background:var(--bg-sunk);cursor:pointer;text-align:left;border:1px solid #0000;justify-content:space-between;align-items:baseline;gap:1rem;padding:.55rem .75rem;transition:background-color .15s,border-color .15s;display:flex}.font-option:hover{border-color:var(--rule)}.font-option.is-active{background:var(--accent-soft);border-color:var(--accent)}.font-option__name{font-size:1.05rem}.font-option__note{font-family:var(--font-ui);color:var(--muted);font-size:.72rem}[data-font-preview=literata] .font-option__name{font-family:Literata Variable,serif}[data-font-preview=merriweather] .font-option__name{font-family:Merriweather,serif;font-size:.98rem}[data-font-preview=source-serif] .font-option__name{font-family:"Source Serif 4 Variable",serif}[data-font-preview=inter] .font-option__name{font-family:Inter Variable,sans-serif}[data-font-preview=atkinson] .font-option__name{font-family:Atkinson Hyperlegible,sans-serif}.size-control{grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;display:grid}.size-btn{border:1px solid var(--rule);background:var(--bg-sunk);width:40px;height:40px;font-family:var(--font-display);cursor:pointer;border-radius:999px;place-items:center;line-height:1;display:grid}.size-btn:disabled{opacity:.4;cursor:default}.size-btn--small{font-size:.85rem}.size-btn--large{font-size:1.35rem}.size-control input[type=range]{width:100%;accent-color:var(--accent)}.segmented{border-radius:var(--radius);background:var(--bg-sunk);padding:3px;display:flex}.segmented button{min-width:34px;height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:1;place-items:center;padding:0 .25rem;transition:background-color .15s,color .15s;display:grid}.segmented button.is-active{background:var(--bg-elev);color:var(--text);box-shadow:0 1px 2px #0000001f}.segmented span{display:grid}.settings-panel__reset{justify-self:center}.toc{z-index:50;background:var(--bg-elev);border-right:1px solid var(--rule);width:min(380px,88vw);box-shadow:var(--shadow);animation:slide-in .26s var(--ease);flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.toc__header{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:.75rem;padding:1rem .75rem 1rem 1.25rem;display:flex}.toc__book{font-family:var(--font-display);font-size:1.05rem;font-weight:500;line-height:1.3;text-decoration:none}.toc__book:hover{color:var(--accent)}.toc__list{overscroll-behavior:contain;flex:1;padding:.5rem .75rem 2rem;overflow-y:auto}.toc__part-title{font-family:var(--font-display);color:var(--text-soft);gap:.15rem;margin:1.25rem .5rem .4rem;font-size:.86rem;font-weight:500;line-height:1.35;display:grid}.toc__part-label{font-family:var(--font-ui);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.66rem;font-weight:600}.toc ol,.toc ul{margin:0;padding:0;list-style:none}.toc__chapter>a{border-radius:8px;grid-template-columns:1.75rem 1fr auto;align-items:baseline;gap:.5rem;padding:.5rem;font-size:.9rem;line-height:1.35;text-decoration:none;display:grid}.toc__chapter>a:hover{background:var(--accent-soft)}.toc__chapter.is-current>a{background:var(--accent-soft);font-weight:600}.toc__num{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right}.toc__time{color:var(--muted);white-space:nowrap;font-size:.7rem}.toc__sections{border-left:1px solid var(--rule);margin:.15rem 0 .4rem 2.25rem!important}.toc__sections button{text-align:left;width:100%;color:var(--text-soft);cursor:pointer;background:0 0;border:0;border-radius:0 6px 6px 0;padding:.35rem .75rem;font-size:.82rem;line-height:1.35;display:block}.toc__sections button:hover{color:var(--accent);background:var(--accent-soft)}.modal{z-index:50;border-radius:var(--radius-lg);background:var(--bg-elev);border:1px solid var(--rule);width:min(440px,100vw - 2rem);max-height:calc(100dvh - 2rem);box-shadow:var(--shadow);animation:fade-in .18s var(--ease);padding:1.25rem 1.5rem 1.5rem;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.modal__header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.modal__header h2{font-family:var(--font-display);margin:0;font-size:1.25rem;font-weight:500}.shortcuts{margin:0;display:grid}.shortcuts__row{border-bottom:1px solid var(--rule);grid-template-columns:7.5rem 1fr;align-items:center;gap:1rem;padding:.5rem 0;display:grid}.shortcuts__row:last-child{border-bottom:0}.shortcuts dt{gap:.3rem;display:flex}.shortcuts dd{color:var(--text-soft);margin:0;font-size:.9rem}kbd{border:1px solid var(--rule);background:var(--bg-sunk);min-width:1.8rem;font-family:var(--font-ui);text-align:center;border-bottom-width:2px;border-radius:6px;padding:.2rem .45rem;font-size:.78rem}
