.auth-card{gap:var(--space-4);padding:var(--space-5) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.auth-card h1,.auth-card .muted{margin:0}.auth-form{gap:var(--space-4);flex-direction:column;display:flex}.auth-form .button--primary{inline-size:100%}.auth-links{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.auth-links a{min-block-size:var(--touch-target);align-items:center;display:inline-flex}.auth-fieldset{gap:var(--space-1);border:0;flex-direction:column;min-inline-size:0;margin:0;padding:0;display:flex}.auth-fieldset legend{font-weight:var(--weight-bold);margin-block-end:var(--space-2);padding:0}.photo-preview{object-fit:cover;border:2px solid var(--color-border);border-radius:50%;block-size:6rem;inline-size:6rem}.notice-page{padding-block-end:0}.notice-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}@media (width>=600px){.auth-card{padding:var(--space-6)}}.site-header{z-index:10;background:color-mix(in srgb, var(--color-bg) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-block-end:1px solid var(--color-border);position:sticky;inset-block-start:0}.site-header__inner{align-items:center;gap:var(--space-3);max-inline-size:var(--content-width);padding:var(--space-2) var(--space-4);flex-wrap:wrap;margin-inline:auto;display:flex}.site-header__nav{flex-basis:100%;order:3}@media (width<=767px){.site-header__nav:not(.site-header__nav--open){display:none}.site-header__nav--open .site-header__links{flex-direction:column;gap:0;padding-block-end:var(--space-2)}}@media (width>=768px){.site-header__menu-button{display:none}.site-header__nav{flex-basis:auto;order:0}}.site-header__links{gap:var(--space-4);margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.site-header__links a{min-block-size:var(--touch-target);color:var(--color-text);align-items:center;text-decoration:none;display:inline-flex}.site-header__links a[aria-current=page]{color:var(--color-accent-strong);font-weight:var(--weight-bold)}.site-header__area{font-size:var(--text-sm);color:var(--color-text-muted)}.site-header__account{align-items:center;gap:var(--space-2);margin-inline-start:auto;display:flex}.header-avatar{object-fit:cover;border-radius:50%;block-size:2.25rem;inline-size:2.25rem}.logo{min-block-size:var(--touch-target);font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:.18em;color:var(--color-text);align-items:center;text-decoration:none;display:inline-flex}.logo:hover{color:var(--color-accent-strong)}.site-main{flex:1}.site-main:focus{outline:none}.site-footer{border-block-start:1px solid var(--color-border);background:var(--color-surface-muted)}.site-footer__inner{max-inline-size:var(--content-width);padding:var(--space-5) var(--space-4);margin-inline:auto}.site-footer__inner p{margin:0}.tab-bar{max-inline-size:var(--content-width);scrollbar-width:thin;margin-inline:auto;overflow-x:auto}.tab-bar__list{gap:var(--space-1);padding:0 var(--space-4);inline-size:max-content;margin:0;list-style:none;display:flex}.tab-bar__list a{min-block-size:var(--touch-target);padding:var(--space-2) var(--space-4);color:var(--color-text-muted);font-weight:var(--weight-medium);white-space:nowrap;border-block-end:3px solid #0000;align-items:center;text-decoration:none;display:inline-flex}.tab-bar__list a:hover{color:var(--color-text)}.tab-bar__list a[aria-current=page]{border-block-end-color:var(--color-accent);color:var(--color-accent-strong)}.tool-shell{flex:1;inline-size:100%;max-inline-size:90rem;margin-inline:auto;display:flex}.tool-side{display:none}.tool-main{min-inline-size:0}.tool-nav{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.tool-nav a{min-block-size:var(--touch-target);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text);align-items:center;text-decoration:none;display:flex}.tool-nav a:hover{background:var(--color-surface-muted)}.tool-nav a[aria-current=page]{background:var(--color-accent-soft);color:var(--color-accent-strong);font-weight:var(--weight-bold)}@media (width>=960px){.tool-menu-button{display:none}.tool-side{inline-size:15rem;padding:var(--space-5) var(--space-3);border-inline-end:1px solid var(--color-border);flex:none;display:block}}.reader-main{background:var(--color-surface);flex-direction:column;min-block-size:100dvh;display:flex}.reader-main:focus{outline:none}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-vietnamese-wght-normal-CnvboYUG.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-ext-wght-normal-Ca2vKHc0.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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/fraunces-latin-wght-normal-ukD16Tqj.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:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-cyrillic-ext-wght-normal-7w74d1lj.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:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-cyrillic-wght-normal-B9hoeQUC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-vietnamese-wght-normal-BhFYcaJr.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:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-latin-ext-wght-normal-DMEAsnHD.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:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-latin-wght-normal-BWQ3gi2K.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}:root{--color-bg:#fbf7f2;--color-surface:#fff;--color-surface-muted:#f4ece6;--color-text:#3b2338;--color-text-muted:#6b5466;--color-accent:#9c4864;--color-accent-strong:#823a52;--color-accent-soft:#f6e4ea;--color-on-accent:#fff;--color-success:#3f6b4b;--color-success-soft:#e4efe6;--color-danger:#a8432c;--color-danger-soft:#fae6e0;--color-warning:#7a5a12;--color-warning-soft:#f8edd2;--color-info:#4a5a85;--color-info-soft:#e6eaf5;--color-border:#e5d8d0;--color-border-strong:#8f7a86;--color-focus:var(--color-accent);--color-overlay:#3b233873;--font-heading:"Fraunces Variable", Georgia, "Times New Roman", serif;--font-body:"Nunito Sans Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--text-xs:.8125rem;--text-sm:.9375rem;--text-md:1.0625rem;--text-lg:clamp(1.1875rem, 1.1rem + .4vw, 1.375rem);--text-xl:clamp(1.5rem, 1.3rem + .9vw, 2rem);--text-2xl:clamp(1.875rem, 1.5rem + 1.8vw, 2.75rem);--leading-tight:1.2;--leading-normal:1.55;--weight-normal:400;--weight-medium:600;--weight-bold:700;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-full:999px;--shadow-sm:0 1px 2px #3b23380f, 0 1px 3px #3b233814;--shadow-md:0 4px 12px #3b233814, 0 2px 4px #3b23380f;--shadow-lg:0 12px 32px #3b233824;--motion-fast:.12s;--motion-normal:.22s;--motion-slow:.36s;--ease-out:cubic-bezier(.22, 1, .36, 1);--touch-target:44px;--content-width:72rem;--form-width:28rem;--focus-ring:3px solid var(--color-focus);--focus-offset:2px}@media (prefers-reduced-motion:reduce){:root{--motion-fast:1ms;--motion-normal:60ms;--motion-slow:.1s}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);min-block-size:100dvh;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-md);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;margin:0}#root{flex-direction:column;min-block-size:100dvh;display:flex}h1,h2,h3,h4{margin:0 0 var(--space-4);font-family:var(--font-heading);font-weight:var(--weight-medium);line-height:var(--leading-tight);text-wrap:balance}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}p{margin:0 0 var(--space-4)}a{color:var(--color-accent);text-underline-offset:.2em}a:hover{color:var(--color-accent-strong)}img,svg,video{max-inline-size:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}[tabindex="-1"]:focus{outline:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.page{inline-size:100%;max-inline-size:var(--content-width);padding:var(--space-5) var(--space-4) var(--space-7);margin-inline:auto}.page--narrow{max-inline-size:calc(var(--form-width) + 2 * var(--space-4))}.stack{gap:var(--space-4);flex-direction:column;display:flex}.muted{color:var(--color-text-muted)}@media (width>=600px){.page{padding:var(--space-6) var(--space-5) var(--space-8)}}
