@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-vietnamese-wght-normal.Czsa-EzN.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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-ext-wght-normal.C-3rgBeH.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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-wght-normal.CCVVNp6i.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(/_astro/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(/_astro/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(/_astro/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(/_astro/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(/_astro/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(/_astro/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(/_astro/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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-ext-wght-normal.EocZY2iu.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-greek-wght-normal.Bw9x6K1M.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.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{--font-display:"Newsreader Variable", "Newsreader", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-body:"Inter Variable", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-ui:var(--font-body);--font-mono:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-caption:.75rem;--text-meta:.8125rem;--text-nav:.875rem;--text-body:1rem;--text-article:clamp(1.0625rem, 1rem + .2vw, 1.125rem);--text-lead:clamp(1.125rem, 1.05rem + .4vw, 1.375rem);--text-h4:1.0625rem;--text-h3:clamp(1.1875rem, 1.1rem + .4vw, 1.375rem);--text-h2:clamp(1.5rem, 1.3rem + .9vw, 1.9375rem);--text-h1:clamp(2rem, 1.5rem + 2.1vw, 3.125rem);--text-display:clamp(2.25rem, 1.6rem + 2.9vw, 3.875rem);--text-featured:clamp(1.75rem, 1.4rem + 1.5vw, 2.5rem);--text-xs:var(--text-caption);--text-sm:var(--text-meta);--text-ui:var(--text-nav);--text-base:var(--text-body);--text-md:var(--text-article);--text-lg:var(--text-lead);--text-xl:var(--text-h2);--text-2xl:var(--text-featured);--text-3xl:var(--text-h1);--leading-tight:1.08;--leading-snug:1.25;--leading-normal:1.5;--leading-relaxed:1.7;--tracking-display:-.015em;--tracking-tight:-.012em;--tracking-snug:-.006em;--tracking-wide:.08em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--gutter:clamp(1rem, 4vw, 2.5rem);--w-wide:76rem;--w-article:44rem;--w-toc:15rem;--header-h:3.75rem;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--ease-out:cubic-bezier(.2, 0, 0, 1);--dur-fast:.12s;--dur-base:.18s;--dur-slow:.22s;--color-canvas:#fafaf8;--color-surface:#fff;--color-surface-2:#f3f3f0;--color-ink:#18191b;--color-ink-2:#3a3c40;--color-muted:#5a5d62;--color-faint:#6c7075;--color-border:#e4e5e2;--color-border-strong:#c9cac6;--color-rule:#18191b;--color-accent:#355c7d;--color-accent-ink:#284862;--color-accent-soft:#e9eff4;--color-selection:#dde5ec;--color-focus:var(--color-accent);--color-mark:#fbf0c4;--shadow-sm:0 1px 2px #18191b0f;--shadow-md:0 8px 24px -12px #18191b38, 0 1px 2px #18191b0f;--shadow-dialog:0 24px 60px -20px #18191b59, 0 0 0 1px #18191b0f;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--color-canvas:#111214;--color-surface:#191b1e;--color-surface-2:#16181b;--color-ink:#f1f2f1;--color-ink-2:#d4d6d4;--color-muted:#a5a8ad;--color-faint:#8a8e94;--color-border:#303237;--color-border-strong:#44474d;--color-rule:#e6e7e5;--color-accent:#9cc0e3;--color-accent-ink:#b8d3eb;--color-accent-soft:#1b2630;--color-selection:#2a3a4a;--color-mark:#4a4120;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px -12px #000000b3, 0 1px 2px #0006;--shadow-dialog:0 24px 60px -20px #000c, 0 0 0 1px #ffffff0f;color-scheme:dark}}:root[data-theme=dark]{--color-canvas:#111214;--color-surface:#191b1e;--color-surface-2:#16181b;--color-ink:#f1f2f1;--color-ink-2:#d4d6d4;--color-muted:#a5a8ad;--color-faint:#8a8e94;--color-border:#303237;--color-border-strong:#44474d;--color-rule:#e6e7e5;--color-accent:#9cc0e3;--color-accent-ink:#b8d3eb;--color-accent-soft:#1b2630;--color-selection:#2a3a4a;--color-mark:#4a4120;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px -12px #000000b3, 0 1px 2px #0006;--shadow-dialog:0 24px 60px -20px #000c, 0 0 0 1px #ffffff0f;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 1.5rem);tab-size:2}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--color-canvas);min-height:100dvh;color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);font-feature-settings:"cv11", "ss01", "calt";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;margin:0;display:flex;overflow-x:clip}main{flex:1 0 auto}h1,h2,h3,h4{text-wrap:balance;overflow-wrap:anywhere;margin:0}h1,h2{font-family:var(--font-display);font-weight:500;line-height:var(--leading-tight);letter-spacing:var(--tracking-display);font-feature-settings:"kern", "liga", "onum" 0}h3,h4{font-family:var(--font-ui);font-weight:650;line-height:var(--leading-snug);letter-spacing:var(--tracking-snug)}p{margin:0}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px;text-decoration-color:var(--color-border-strong);transition:text-decoration-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out)}a:hover{text-decoration-color:currentColor}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}input,select,textarea{font:inherit;color:inherit}img,svg{max-width:100%;display:block}svg{fill:none}code,kbd,pre,samp{font-family:var(--font-mono);font-feature-settings:"liga" 0;font-size:.9em}::selection{background:var(--color-selection)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px;border-radius:var(--radius-xs)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.container{width:100%;max-width:calc(var(--w-wide) + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.container--narrow{max-width:calc(var(--w-article) + var(--gutter) * 2)}.section{padding-block:clamp(2.5rem,6vw,4.5rem)}.section+.section{border-top:1px solid var(--color-border)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;background:var(--color-ink);color:var(--color-canvas);font-size:var(--text-ui);border-radius:var(--radius-sm);transition:transform var(--dur-base) var(--ease-out);padding:.5rem .75rem;font-weight:600;text-decoration:none;position:absolute;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip-link:focus-visible{outline-offset:2px;transform:translateY(0)}.eyebrow{font-family:var(--font-ui);font-size:var(--text-caption);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-muted);align-items:center;gap:.6em;font-weight:650;display:inline-flex}.eyebrow--rule:before{content:"";background:var(--color-rule);width:1.5rem;height:1px}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--color-faint);letter-spacing:.02em}.lede{font-size:var(--text-lead);color:var(--color-ink-2);text-wrap:pretty;max-width:58ch;line-height:1.5}.meta{font-size:var(--text-meta);color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:.35rem .75rem;display:flex}.meta>*+:before{content:"·";color:var(--color-faint);margin-right:.75rem}.meta time{font-variant-numeric:tabular-nums}.section-heading{align-items:baseline;gap:var(--space-4);grid-template-columns:auto 1fr auto;margin-bottom:clamp(1.5rem,3vw,2.5rem);display:grid}.section-heading__title{font-size:var(--text-h2);align-items:baseline;gap:var(--space-3);display:flex}.section-heading__title .num{font-size:var(--text-meta)}.section-heading__rule{background:var(--color-border);align-self:center;height:1px}.section-heading__action{font-size:var(--text-ui);white-space:nowrap;font-weight:500}.link-action{font-family:var(--font-ui);font-weight:600;font-size:var(--text-nav);color:var(--color-ink);align-items:center;gap:.4em;padding-block:.25rem;text-decoration:none;display:inline-flex}.link-action .icon{width:1em;height:1em;transition:transform var(--dur-base) var(--ease-out)}.link-action:hover .icon{transform:translate(2px)}.link-action:hover{text-decoration:underline;text-decoration-color:var(--color-border-strong)}.btn{border-radius:var(--radius-md);border:1px solid var(--color-ink);background:var(--color-ink);min-height:2.75rem;color:var(--color-canvas);font-family:var(--font-ui);font-weight:600;font-size:var(--text-nav);transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;gap:.5rem;padding:.55rem 1.1rem;text-decoration:none;display:inline-flex}.btn:hover{background:var(--color-ink-2);border-color:var(--color-ink-2)}.btn--secondary{color:var(--color-ink);border-color:var(--color-border-strong);background:0 0}.btn--secondary:hover{background:var(--color-surface);border-color:var(--color-ink)}.btn .icon{width:1rem;height:1rem}.icon-btn{border-radius:var(--radius-md);width:2.5rem;height:2.5rem;color:var(--color-ink);transition:background var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--color-surface-2)}.icon-btn .icon{width:1.25rem;height:1.25rem}.icon{stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.25rem;height:1.25rem}kbd.kbd{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-width:1.4rem;height:1.4rem;color:var(--color-muted);background:var(--color-surface);border-bottom-width:2px;justify-content:center;align-items:center;padding-inline:.35rem;font-size:.7rem;font-weight:500;line-height:1;display:inline-flex}.tag{border:1px solid var(--color-border);min-height:1.75rem;font-size:var(--text-sm);color:var(--color-muted);transition:border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);border-radius:999px;align-items:center;padding:.15rem .6rem;font-weight:500;text-decoration:none;display:inline-flex}a.tag:hover{border-color:var(--color-ink);color:var(--color-ink)}.level{font-size:var(--text-sm);color:var(--color-muted);white-space:nowrap;align-items:center;gap:.4rem;font-weight:500;display:inline-flex}.level__dots{gap:2px;display:inline-flex}.level__dots i{background:var(--color-border-strong);border-radius:1px;width:5px;height:9px}.level__dots i.is-on{background:var(--color-ink)}.article-list{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.empty{padding:clamp(2rem, 5vw, 3.5rem) var(--space-4);text-align:center;border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg)}.empty h3{font-family:var(--font-display);font-weight:500;font-size:var(--text-h3);margin-bottom:var(--space-2)}.empty p{color:var(--color-muted);max-width:40ch;margin-inline:auto}.empty .actions{justify-content:center;gap:var(--space-3);margin-top:var(--space-6);flex-wrap:wrap;display:flex}mark{background:var(--color-mark);color:inherit;border-radius:2px;padding-inline:.05em}.read-progress{top:var(--header-h);transform-origin:0;background:var(--color-ink);z-index:51;pointer-events:none;width:100%;height:2px;position:fixed;left:0;transform:scaleX(0)}@media print{.site-header,.site-footer,.toc,.article-actions,.skip-link{display:none!important}body{color:#000;background:#fff}a{text-decoration:none}.prose a[href^=http]:after{content:" (" attr(href) ")";color:#555;font-size:.8em}}.card{border-bottom:1px solid var(--color-border);list-style:none}.card__inner{gap:var(--space-4);padding-block:var(--space-6);grid-template-columns:5.5rem 1fr;display:grid;position:relative}.card__side{gap:var(--space-1);flex-direction:column;padding-top:.3rem;display:flex}.card__date{font-size:var(--text-xs);color:var(--color-faint);font-variant-numeric:tabular-nums}.card__main{gap:var(--space-3);min-width:0;display:grid}.card__kind{font-family:var(--font-mono);font-size:var(--text-caption);letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted)}.card__title{font-family:var(--font-display);letter-spacing:var(--tracking-tight);font-size:clamp(1.25rem,1.15rem + .5vw,1.5rem);font-weight:500;line-height:1.2}.card__title a{text-decoration:none}.card__title a:after{content:"";position:absolute;inset:0}.card__main .meta{z-index:1;width:fit-content;position:relative}.card__inner:hover .card__title a{text-decoration:underline;text-decoration-color:var(--color-border-strong)}.card__summary{color:var(--color-muted);text-wrap:pretty;max-width:62ch}.meta__category{color:var(--color-ink);font-weight:600;text-decoration:none}.meta__category:hover{text-decoration:underline}@media (width<=640px){.card__inner{gap:var(--space-2);padding-block:var(--space-5);grid-template-columns:1fr}.card__side{align-items:baseline;gap:var(--space-3);flex-direction:row;padding-top:0}}.field{font-size:var(--text-sm);color:var(--color-muted);gap:.35rem;display:grid}.field>span{font-family:var(--font-ui);font-weight:650;font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.input,.select{border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);height:2.75rem;color:var(--color-ink);font-size:var(--text-base);width:100%;min-width:0;transition:border-color var(--dur-fast) var(--ease-out);padding:0 .85rem}.input:hover,.select:hover{border-color:var(--color-ink)}.input:focus-visible,.select:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px;border-color:var(--color-focus)}.input::placeholder{color:var(--color-faint)}.select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2362656a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .7rem center;background-repeat:no-repeat;background-size:1rem;padding-right:2.25rem}.theme-toggle[data-astro-cid-iomzzyrn]{position:relative}.theme-toggle[data-astro-cid-iomzzyrn] .icon[data-astro-cid-iomzzyrn]{transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);position:absolute}.theme-toggle__moon[data-astro-cid-iomzzyrn]{opacity:1;transform:scale(1)}.theme-toggle__sun[data-astro-cid-iomzzyrn]{opacity:0;transform:scale(.6)rotate(-30deg)}:root[data-theme=dark] .theme-toggle__moon[data-astro-cid-iomzzyrn]{opacity:0;transform:scale(.6)rotate(30deg)}:root[data-theme=dark] .theme-toggle__sun[data-astro-cid-iomzzyrn]{opacity:1;transform:scale(1)rotate(0)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-toggle__moon[data-astro-cid-iomzzyrn]{opacity:0;transform:scale(.6)rotate(30deg)}:root:not([data-theme=light]) .theme-toggle__sun[data-astro-cid-iomzzyrn]{opacity:1;transform:scale(1)rotate(0)}}.site-header[data-astro-cid-vwn3tmth]{z-index:50;background:color-mix(in srgb, var(--color-canvas) 88%, transparent);-webkit-backdrop-filter:saturate(140%)blur(10px);border-bottom:1px solid var(--color-border);position:sticky;top:0}.site-header__inner[data-astro-cid-vwn3tmth]{align-items:center;gap:var(--space-6);height:var(--header-h);display:flex}.site-header__brand[data-astro-cid-vwn3tmth]{color:var(--color-ink);padding-block:var(--space-2);margin-right:var(--space-2);align-items:center;text-decoration:none;display:inline-flex}.site-nav[data-astro-cid-vwn3tmth]{flex:1;min-width:0}.site-nav__list[data-astro-cid-vwn3tmth]{gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.site-nav__link[data-astro-cid-vwn3tmth]{border-radius:var(--radius-md);height:2.25rem;font-family:var(--font-ui);font-size:var(--text-nav);color:var(--color-muted);white-space:nowrap;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);align-items:center;padding-inline:.65rem;font-weight:600;text-decoration:none;display:inline-flex}.site-nav__link[data-astro-cid-vwn3tmth]:hover{color:var(--color-ink);background:var(--color-surface-2)}.site-nav__link[data-astro-cid-vwn3tmth][aria-current=page]{color:var(--color-ink);box-shadow:inset 0 -2px 0 var(--color-ink);border-radius:0}.site-header__controls[data-astro-cid-vwn3tmth]{align-items:center;gap:var(--space-1);margin-left:auto;display:flex}.search-trigger[data-astro-cid-vwn3tmth]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);height:2.25rem;color:var(--color-muted);font-size:var(--text-ui);transition:border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);align-items:center;gap:.5rem;padding:0 .5rem 0 .65rem;display:inline-flex}.search-trigger[data-astro-cid-vwn3tmth]:hover{border-color:var(--color-border-strong);color:var(--color-ink)}.search-trigger[data-astro-cid-vwn3tmth] .icon[data-astro-cid-vwn3tmth]{width:1rem;height:1rem}.search-trigger__text[data-astro-cid-vwn3tmth]{text-align:left;min-width:6rem}.menu-trigger[data-astro-cid-vwn3tmth]{display:none;position:relative}.menu-trigger[data-astro-cid-vwn3tmth] .icon[data-astro-cid-vwn3tmth]{transition:opacity var(--dur-fast) var(--ease-out);position:absolute}.menu-trigger__close[data-astro-cid-vwn3tmth],.menu-trigger[data-astro-cid-vwn3tmth][aria-expanded=true] .menu-trigger__open[data-astro-cid-vwn3tmth]{opacity:0}.menu-trigger[data-astro-cid-vwn3tmth][aria-expanded=true] .menu-trigger__close[data-astro-cid-vwn3tmth]{opacity:1}.mobile-nav[data-astro-cid-vwn3tmth]{border-top:1px solid var(--color-border);background:var(--color-canvas)}.mobile-nav__list[data-astro-cid-vwn3tmth]{padding:var(--space-3) 0 var(--space-5);margin:0;list-style:none}.mobile-nav__link[data-astro-cid-vwn3tmth]{align-items:baseline;gap:var(--space-4);border-bottom:1px solid var(--color-border);font-family:var(--font-display);font-size:var(--text-h3);padding:.85rem .25rem;font-weight:500;text-decoration:none;display:flex}.mobile-nav__link[data-astro-cid-vwn3tmth][aria-current=page] .num[data-astro-cid-vwn3tmth]{color:var(--color-ink)}@media (width<=1023px){.site-nav[data-astro-cid-vwn3tmth]{display:none}.menu-trigger[data-astro-cid-vwn3tmth]{display:inline-flex}.site-header__inner[data-astro-cid-vwn3tmth]{gap:var(--space-3)}}@media (width<=640px){.search-trigger[data-astro-cid-vwn3tmth]{background:0 0;border:0;justify-content:center;width:2.5rem;height:2.5rem;padding:0}.search-trigger__text[data-astro-cid-vwn3tmth],.search-trigger__kbd[data-astro-cid-vwn3tmth]{display:none}.search-trigger[data-astro-cid-vwn3tmth] .icon[data-astro-cid-vwn3tmth]{width:1.25rem;height:1.25rem}}.site-footer[data-astro-cid-qup6pdxl]{border-top:1px solid var(--color-border);padding-block:clamp(2.5rem, 5vw, 4rem) var(--space-8);font-size:var(--text-ui);color:var(--color-muted);margin-top:auto}.site-footer__ext[data-astro-cid-qup6pdxl]{color:var(--color-faint);font-size:.8em}.site-footer__grid[data-astro-cid-qup6pdxl]{gap:var(--space-10) var(--space-12);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1.2fr);display:grid}.site-footer__logo[data-astro-cid-qup6pdxl]{color:var(--color-ink);margin-bottom:var(--space-4);display:inline-block}.site-footer__tagline[data-astro-cid-qup6pdxl]{font-family:var(--font-display);font-weight:500;font-size:var(--text-h3);color:var(--color-ink);margin-bottom:var(--space-3)}.site-footer__note[data-astro-cid-qup6pdxl]{text-wrap:pretty;max-width:52ch;line-height:1.6}.site-footer__heading[data-astro-cid-qup6pdxl]{font-family:var(--font-ui);font-size:var(--text-caption);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--color-ink);margin-bottom:var(--space-4);font-weight:650}.site-footer[data-astro-cid-qup6pdxl] ul[data-astro-cid-qup6pdxl]{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.site-footer[data-astro-cid-qup6pdxl] li[data-astro-cid-qup6pdxl] a[data-astro-cid-qup6pdxl]{text-decoration:none}.site-footer[data-astro-cid-qup6pdxl] li[data-astro-cid-qup6pdxl] a[data-astro-cid-qup6pdxl]:hover{color:var(--color-ink);text-decoration:underline}.site-footer__bottom[data-astro-cid-qup6pdxl]{align-items:center;gap:var(--space-4);margin-top:var(--space-12);padding-top:var(--space-6);border-top:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-faint);display:flex}.site-footer__sep[data-astro-cid-qup6pdxl]{background:var(--color-border-strong);width:1.5rem;height:1px}@media (width<=860px){.site-footer__grid[data-astro-cid-qup6pdxl]{grid-template-columns:1fr 1fr}.site-footer__brand[data-astro-cid-qup6pdxl]{grid-column:1/-1}}@media (width<=480px){.site-footer__grid[data-astro-cid-qup6pdxl]{grid-template-columns:1fr}}.search{border-radius:var(--radius-lg);background:var(--color-surface);width:min(44rem,100vw - 2rem);max-height:min(80dvh,40rem);color:var(--color-ink);box-shadow:var(--shadow-dialog);border:0;margin:10dvh auto auto;padding:0;overflow:hidden}.search::backdrop{backdrop-filter:blur(2px);background:#0a0a0c73}.search__panel{max-height:inherit;flex-direction:column;display:flex}.search__bar{border-bottom:1px solid var(--color-border);align-items:center;gap:.75rem;padding:.5rem .75rem .5rem 1rem;display:flex}.search__icon{width:1.2rem;height:1.2rem;color:var(--color-muted)}.search__input{min-width:0;height:2.75rem;font-size:var(--text-lg);-webkit-appearance:none;background:0 0;border:0;outline:none;flex:1}.search__input::-webkit-search-cancel-button{display:none}.search__input::placeholder{color:var(--color-faint)}.search__clear{font-size:var(--text-sm);color:var(--color-muted);border-radius:var(--radius-sm);padding:.35rem .5rem}.search__clear:hover{color:var(--color-ink);background:var(--color-surface-2)}.search__close{border-radius:var(--radius-sm);padding:.25rem;display:inline-flex}.search__body{min-height:6rem;padding:.75rem;overflow-y:auto}.search__hint,.search__notice,.search__count{font-size:var(--text-sm);color:var(--color-muted);padding:.5rem}.search__notice{color:var(--color-ink)}.search__count{padding-bottom:.25rem}.search__empty{gap:.25rem;padding:1rem .5rem .75rem;display:grid}.search__empty-title{font-weight:600}.search__empty .link-action{margin-top:.5rem}.search__results{gap:2px;margin:0;padding:0;list-style:none;display:grid}.search__link{border-radius:var(--radius-md);border-left:2px solid #0000;gap:.25rem;padding:.6rem .75rem;text-decoration:none;display:grid}.search__result.is-active .search__link{background:var(--color-surface-2);border-left-color:var(--color-ink)}.search__title{font-family:var(--font-ui);font-weight:600}.search__excerpt{font-size:var(--text-sm);color:var(--color-muted);line-height:1.5}.search__meta{font-size:var(--text-xs);color:var(--color-faint);gap:.75rem;display:flex}.search__footer{border-top:1px solid var(--color-border);font-size:var(--text-xs);color:var(--color-faint);gap:1.25rem;padding:.6rem 1rem;display:flex}.search__footer span{align-items:center;gap:.3rem;display:inline-flex}@media (width<=640px){.search{width:calc(100vw - 1rem);max-height:calc(100dvh - 1rem);margin-top:.5rem}.search__footer{display:none}.search__input{font-size:1rem}}:root.dialog-open,:root.menu-open{overflow:hidden}main:focus{outline:none}
