@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./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(./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(./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(./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(./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(./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(./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(./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(./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(./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(./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(./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(./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{--bg:#070709;--surface:#0d0d11;--surface-raised:#141418;--surface-hover:#1a1a20;--border:#24242e;--border-soft:#1c1c24;--border-strong:#34343f;--fg:#e2e2ea;--fg-2:#9898a8;--fg-3:#686878;--fg-quiet:#868696;--muted:#444452;--meta:#363644;--accent:#d97706;--accent-on:#070709;--accent-dim:color-mix(in oklab, var(--accent), transparent 85%);--accent-text:#d97706;--success:#10b981;--warn:#f59e0b;--danger:#ef4444;--info:#3b82f6;--success-text:#10b981;--warn-text:#f59e0b;--danger-text:#f26565;--info-text:#5d97f7;--shadow:0 8px 32px #0006;--backdrop:color-mix(in oklab, var(--bg), transparent 30%);--font-display:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, monospace;--font-body:"Inter Variable", "Inter", -apple-system, system-ui, sans-serif;--font-mono:"JetBrains Mono Variable", "JetBrains Mono", ui-monospace, monospace;--text-xs:11px;--text-sm:12px;--text-base:14px;--text-lg:16px;--text-xl:18px;--text-2xl:24px;--text-3xl:32px;--leading-body:1.5;--leading-tight:1.25;--tracking-display:-.01em;--tracking-label:.05em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:2px;--radius-md:4px;--radius-lg:6px;--motion-instant:60ms;--motion-fast:.1s;--motion-base:.15s;--motion-medium:.22s;--motion-slow:.32s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--focus-ring:0 0 0 2px var(--bg), 0 0 0 4px var(--accent);--page:1200px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#f4f4f0;--surface:#fbfbf9;--surface-raised:#fff;--surface-hover:#ecece6;--border:#d6d6ce;--border-soft:#e4e4dd;--border-strong:#bdbdb4;--fg:#1b1b21;--fg-2:#4e4e5a;--fg-3:#6e6e7a;--fg-quiet:#62626e;--muted:#9c9ca6;--meta:#c2c2c8;--accent:#b45309;--accent-on:#fff;--accent-text:#92400e;--success:#047857;--warn:#b45309;--danger:#dc2626;--info:#2563eb;--success-text:#065f46;--warn-text:#92400e;--danger-text:#991b1b;--info-text:#1d4ed8;--shadow:0 8px 32px #1b1b2124;--backdrop:oklab(22.4782% .00307859 -.0111525/.45);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root[data-theme=light]{--bg:#f4f4f0;--surface:#fbfbf9;--surface-raised:#fff;--surface-hover:#ecece6;--border:#d6d6ce;--border-soft:#e4e4dd;--border-strong:#bdbdb4;--fg:#1b1b21;--fg-2:#4e4e5a;--fg-3:#6e6e7a;--fg-quiet:#62626e;--muted:#9c9ca6;--meta:#c2c2c8;--accent:#b45309;--accent-on:#fff;--accent-text:#92400e;--success:#047857;--warn:#b45309;--danger:#dc2626;--info:#2563eb;--success-text:#065f46;--warn-text:#92400e;--danger-text:#991b1b;--info-text:#1d4ed8;--shadow:0 8px 32px #1b1b2124;--backdrop:oklab(22.4782% .00307859 -.0111525/.45);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3{font-family:var(--font-display);line-height:var(--leading-tight);letter-spacing:var(--tracking-display);text-wrap:balance;margin:0;font-weight:700}h1{font-size:var(--text-2xl);letter-spacing:-.02em}h2{font-size:var(--text-lg)}h3{font-size:var(--text-base);font-weight:600}p{text-wrap:pretty;margin:0}a{color:var(--accent-text);text-underline-offset:3px;transition:color var(--motion-instant) var(--ease-standard);text-decoration-thickness:1px}a:hover{color:var(--fg)}code,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.92em}code{border-radius:var(--radius-sm);background:var(--surface-hover);color:var(--fg);padding:1px 4px}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}::selection{background:var(--accent);color:var(--accent-on)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--fg-3)}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:34px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--fg-2);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.02em;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), opacity var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--fg-3);color:var(--fg)}.btn:not(:disabled):active{transform:scale(.97)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-on)}.btn-primary:hover:not(:disabled){border-color:var(--accent);color:var(--accent-on);opacity:.9}.btn-danger{color:var(--danger-text);border-color:var(--danger);background:0 0}.btn-danger:hover:not(:disabled){color:var(--danger-text);border-color:var(--danger);background:color-mix(in oklab, var(--danger), transparent 90%)}.btn-ghost{color:var(--fg-quiet);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){color:var(--fg);background:var(--surface-hover);border-color:#0000}.btn-small{min-height:28px;padding:var(--space-1) var(--space-3);font-size:var(--text-xs)}.field{gap:var(--space-2);align-content:start;display:grid}.field>span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-quiet);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:500}.field small{font-family:var(--font-mono);color:var(--fg-quiet);font-size:var(--text-xs);line-height:1.4}input[type=text],input[type=search],input[type=password],input[type=number],input[type=url],textarea{width:100%;min-height:38px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--fg);font-family:var(--font-mono);font-size:var(--text-base);transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard)}input:hover{border-color:var(--border-strong)}input::placeholder{color:var(--fg-3);opacity:1}input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 0 4px var(--accent-dim);border-radius:var(--radius-sm);outline:none}.table-wrap{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);position:relative;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}th{text-align:left;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--fg-quiet);padding:var(--space-2) var(--space-4);background:var(--surface-raised);border-bottom:1px solid var(--border);white-space:nowrap;font-weight:500}td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-soft);vertical-align:middle}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background-color var(--motion-instant) var(--ease-standard)}tbody tr:hover{background:var(--surface-hover)}td a{color:var(--fg);-webkit-text-decoration-color:var(--border-strong);text-decoration-color:var(--border-strong)}td a:hover{color:var(--accent-text);text-decoration-color:currentColor}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}td.num{font-family:var(--font-mono)}.tag{border-radius:var(--radius-sm);font-family:var(--font-mono);letter-spacing:var(--tracking-label);text-transform:uppercase;white-space:nowrap;vertical-align:middle;color:var(--fg-2);background:var(--surface-hover);box-shadow:inset 0 0 0 1px var(--border);align-items:center;gap:6px;padding:2px 6px;font-size:10px;font-weight:600;line-height:1.4;display:inline-flex}.tag-accent{color:var(--accent-text);background:color-mix(in oklab, var(--accent), transparent 88%);box-shadow:none}.tag-ok{color:var(--success-text);background:color-mix(in oklab, var(--success), transparent 88%);box-shadow:none}.tag-warn{color:var(--warn-text);background:color-mix(in oklab, var(--warn), transparent 88%);box-shadow:none}.tag-bad{color:var(--danger-text);background:color-mix(in oklab, var(--danger), transparent 88%);box-shadow:none}.dot{background:var(--fg-3);border-radius:999px;flex:none;width:6px;height:6px;display:inline-block}.muted{color:var(--fg-quiet)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-8);flex-wrap:wrap;display:flex}.page-head p{color:var(--fg-2);margin-top:var(--space-2);max-width:64ch}.section{margin-top:var(--space-12)}.section-head{justify-content:space-between;align-items:baseline;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.section-head p{color:var(--fg-quiet);font-size:var(--text-sm)}@media (prefers-reduced-motion:reduce){:root{--motion-instant:0s;--motion-fast:0s;--motion-base:0s;--motion-medium:0s;--motion-slow:0s}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.back{font-family:var(--font-mono);font-size:var(--text-xs);margin-bottom:var(--space-4)}.back a{color:var(--fg-quiet);text-decoration:none}.back a:before{content:"← "}.back a:hover{color:var(--fg)}.skip.svelte-w96i92{position:absolute;left:-9999px}.skip.svelte-w96i92:focus{left:var(--space-4);top:var(--space-4);z-index:100;background:var(--surface-raised);color:var(--fg);font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.bar.svelte-w96i92{z-index:20;background:color-mix(in oklab, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0}.inner.svelte-w96i92{max-width:var(--page);align-items:center;gap:var(--space-6);margin:0 auto;padding:0 clamp(16px,4vw,40px);display:flex}.bar.svelte-w96i92 .inner:where(.svelte-w96i92){min-height:56px}.brand.svelte-w96i92{align-items:center;gap:var(--space-2);color:var(--fg);flex:none;text-decoration:none;display:flex}.brand.svelte-w96i92:hover{color:var(--fg)}.mark.svelte-w96i92{color:var(--accent);display:inline-flex}.word.svelte-w96i92{font-family:var(--font-display);letter-spacing:var(--tracking-display);font-size:17px;font-weight:600}.sub.svelte-w96i92{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--fg-quiet)}.menu.svelte-w96i92{margin-left:auto;display:none}nav.svelte-w96i92{align-items:center;gap:var(--space-6);flex:1;min-width:0;display:flex}nav.svelte-w96i92 ul:where(.svelte-w96i92){gap:var(--space-1);margin:0;padding:0;list-style:none;display:flex}nav.svelte-w96i92 ul:where(.svelte-w96i92) a:where(.svelte-w96i92){padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--fg-2);font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:var(--tracking-display);transition:background-color var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard);font-weight:600;text-decoration:none;display:block;position:relative}nav.svelte-w96i92 ul:where(.svelte-w96i92) a:where(.svelte-w96i92):hover{color:var(--fg);background:var(--surface-hover)}nav.svelte-w96i92 ul:where(.svelte-w96i92) a[aria-current=page]:where(.svelte-w96i92){color:var(--accent-text)}nav.svelte-w96i92 ul:where(.svelte-w96i92) a[aria-current=page]:where(.svelte-w96i92):after{content:"";left:var(--space-3);right:var(--space-3);background:var(--accent);height:2px;position:absolute;bottom:-11px}.side.svelte-w96i92{align-items:center;gap:var(--space-3);margin-left:auto;display:flex}.theme.svelte-w96i92{width:112px}.who.svelte-w96i92{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--fg);text-overflow:ellipsis;white-space:nowrap;max-width:16ch;font-weight:600;overflow:hidden}main.svelte-w96i92{max-width:var(--page);padding:var(--space-8) clamp(16px, 4vw, 40px) var(--space-16);min-height:calc(100vh - 120px);box-shadow:none;outline:none;margin:0 auto}.foot.svelte-w96i92{border-top:1px solid var(--border-soft);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-quiet)}.foot.svelte-w96i92 .inner:where(.svelte-w96i92){justify-content:space-between;gap:var(--space-2) var(--space-6);min-height:64px;padding-top:var(--space-4);padding-bottom:var(--space-4);flex-wrap:wrap}.foot.svelte-w96i92 a:where(.svelte-w96i92){color:var(--fg-quiet)}.foot.svelte-w96i92 a:where(.svelte-w96i92):hover{color:var(--fg)}@media (width<=760px){.bar.svelte-w96i92 .inner:where(.svelte-w96i92){flex-wrap:wrap;gap:0}.menu.svelte-w96i92{display:inline-flex}nav.svelte-w96i92{align-items:stretch;gap:var(--space-3);padding:var(--space-2) 0 var(--space-4);flex-direction:column;flex-basis:100%;display:none}nav.open.svelte-w96i92{display:flex}nav.svelte-w96i92 ul:where(.svelte-w96i92){flex-direction:column}nav.svelte-w96i92 ul:where(.svelte-w96i92) a[aria-current=page]:where(.svelte-w96i92){background:var(--surface-raised);box-shadow:inset 2px 0 0 var(--accent)}nav.svelte-w96i92 ul:where(.svelte-w96i92) a[aria-current=page]:where(.svelte-w96i92):after{display:none}.side.svelte-w96i92{padding-top:var(--space-3);border-top:1px solid var(--border-soft);flex-wrap:wrap;margin-left:0}main.svelte-w96i92{padding-top:var(--space-6)}}.toaster.svelte-1kymlcg{right:var(--space-4);bottom:var(--space-4);gap:var(--space-2);z-index:50;max-width:min(420px,100vw - 32px);display:grid;position:fixed}.toast.svelte-1kymlcg{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface-raised);border:1px solid var(--border);border-left:3px solid var(--success);border-radius:0 var(--radius-sm) var(--radius-sm) 0;box-shadow:var(--shadow);font-family:var(--font-mono);font-size:var(--text-sm);animation:svelte-1kymlcg-in var(--motion-base) var(--ease-out);display:flex}.toast.bad.svelte-1kymlcg{border-left-color:var(--danger)}.toast.svelte-1kymlcg span:where(.svelte-1kymlcg){flex:1}.x.svelte-1kymlcg{border-radius:var(--radius-sm);color:var(--fg-quiet);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:18px;line-height:1}.x.svelte-1kymlcg:hover{color:var(--fg)}@keyframes svelte-1kymlcg-in{0%{opacity:0;transform:translateY(6px)}}
