.appbar[data-astro-cid-xickzw2m]{z-index:50;background:var(--md-sys-color-surface);transition:background-color var(--md-sys-motion-duration-short3) var(--md-sys-motion-easing-emphasized);position:sticky;top:0}.appbar[data-astro-cid-xickzw2m][data-scrolled=true]{background:var(--md-sys-color-surface-container)}.appbar__inner[data-astro-cid-xickzw2m]{justify-content:space-between;align-items:center;gap:calc(var(--site-unit) * 4);block-size:64px;display:flex}.appbar__brand[data-astro-cid-xickzw2m]{align-items:center;gap:calc(var(--site-unit) * 2);color:var(--md-sys-color-on-surface);flex-shrink:0;text-decoration:none;display:inline-flex}.appbar__anchors[data-astro-cid-xickzw2m]{align-items:center;gap:calc(var(--site-unit) * 5);margin-inline-start:auto;display:flex}.appbar__anchor[data-astro-cid-xickzw2m]{font:var(--md-sys-typescale-label-large);color:var(--md-sys-color-on-surface-variant);padding-block:calc(var(--site-unit) * 2);transition:color var(--md-sys-motion-duration-short3) var(--md-sys-motion-easing-emphasized);text-decoration:none}@media (hover:hover) and (pointer:fine){.appbar__anchor[data-astro-cid-xickzw2m]:hover{color:var(--md-sys-color-on-surface)}}.appbar__actions[data-astro-cid-xickzw2m]{align-items:center;gap:calc(var(--site-unit) * 2);flex-shrink:0;display:flex}.appbar__cta[data-astro-cid-xickzw2m]{transition:opacity var(--md-sys-motion-duration-short3) var(--md-sys-motion-easing-emphasized), visibility var(--md-sys-motion-duration-short3) var(--md-sys-motion-easing-emphasized);padding:6px 16px;text-decoration:none}.appbar__cta[data-astro-cid-xickzw2m][data-appbar-cta=hide]{opacity:0;visibility:hidden}.appbar__lang[data-astro-cid-xickzw2m]{align-items:center;text-decoration:none;display:inline-flex}.appbar__theme[data-astro-cid-xickzw2m]{border-radius:var(--md-sys-shape-corner-full);block-size:40px;inline-size:40px;color:var(--md-sys-color-on-surface-variant);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}@media (hover:hover) and (pointer:fine){.appbar__theme[data-astro-cid-xickzw2m]:hover{background:color-mix(in srgb, var(--md-sys-color-on-surface) 8%, transparent)}}.icon-moon[data-astro-cid-xickzw2m],[data-theme=dark] .appbar[data-astro-cid-xickzw2m] .icon-sun[data-astro-cid-xickzw2m]{display:none}[data-theme=dark] .appbar[data-astro-cid-xickzw2m] .icon-moon[data-astro-cid-xickzw2m]{display:block}@media (width<=840px){.appbar__anchors[data-astro-cid-xickzw2m]{display:none}}.footer[data-astro-cid-jo6i4kqk]{background:var(--md-sys-color-surface-container);color:var(--md-sys-color-on-surface);border-block-start:1px solid var(--md-sys-color-outline-variant)}.footer__inner[data-astro-cid-jo6i4kqk]{padding-block:calc(var(--site-unit) * 16) calc(var(--site-unit) * 8)}.footer__links[data-astro-cid-jo6i4kqk]{gap:calc(var(--site-unit) * 6);flex-wrap:wrap;display:flex}.footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--md-sys-color-on-surface-variant);text-decoration:none}.footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--md-sys-color-on-surface);text-decoration:underline}.footer__meta[data-astro-cid-jo6i4kqk]{justify-content:space-between;gap:calc(var(--site-unit) * 2);color:var(--md-sys-color-on-surface-variant);font-variant-numeric:lining-nums tabular-nums;flex-wrap:wrap;margin-block-start:calc(var(--site-unit) * 10);display:flex}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/inter-cyrillic-ext-standard-normal.CfYZpDVp.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-standard-normal.BFQXbQ-f.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-standard-normal.BmPQvyvo.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-standard-normal.BM0NlUE_.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-standard-normal.Ci9T9ieq.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-standard-normal.DpK-iCPk.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-standard-normal.BwkfbSeq.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{--md-sys-color-primary:#604bbf;--md-sys-color-on-primary:#fff;--md-sys-color-primary-container:#e6deff;--md-sys-color-on-primary-container:#1c0062;--md-sys-color-secondary:#605c71;--md-sys-color-on-secondary:#fff;--md-sys-color-secondary-container:#e6dff9;--md-sys-color-on-secondary-container:#1c192b;--md-sys-color-tertiary:#7c5264;--md-sys-color-on-tertiary:#fff;--md-sys-color-tertiary-container:#ffd8e6;--md-sys-color-on-tertiary-container:#301120;--md-sys-color-error:#ba1a1a;--md-sys-color-on-error:#fff;--md-sys-color-error-container:#ffdad6;--md-sys-color-on-error-container:#410002;--md-sys-color-background:#fffbff;--md-sys-color-on-background:#1c1b1f;--md-sys-color-on-surface:#1c1b1f;--md-sys-color-surface-variant:#e6e0ec;--md-sys-color-on-surface-variant:#48454e;--md-sys-color-outline:#79757f;--md-sys-color-outline-variant:#c9c4d0;--md-sys-color-scrim:#000;--md-sys-color-inverse-surface:#313033;--md-sys-color-inverse-on-surface:#f4eff4;--md-sys-color-inverse-primary:#cabeff;--md-sys-color-surface:#fdf8ff;--md-sys-color-surface-dim:#ddd8e3;--md-sys-color-surface-bright:#fdf8ff;--md-sys-color-surface-container-lowest:#fff;--md-sys-color-surface-container-low:#f7f1fd;--md-sys-color-surface-container:#f1ecf7;--md-sys-color-surface-container-high:#ebe6f1;--md-sys-color-surface-container-highest:#e6e0ec}[data-theme=dark]{--md-sys-color-primary:#cabeff;--md-sys-color-on-primary:#31108f;--md-sys-color-primary-container:#4830a5;--md-sys-color-on-primary-container:#e6deff;--md-sys-color-secondary:#c9c3dc;--md-sys-color-on-secondary:#312e41;--md-sys-color-secondary-container:#484459;--md-sys-color-on-secondary-container:#e6dff9;--md-sys-color-tertiary:#edb8cc;--md-sys-color-on-tertiary:#482535;--md-sys-color-tertiary-container:#623b4c;--md-sys-color-on-tertiary-container:#ffd8e6;--md-sys-color-error:#ffb4ab;--md-sys-color-on-error:#690005;--md-sys-color-error-container:#93000a;--md-sys-color-on-error-container:#ffb4ab;--md-sys-color-background:#1c1b1f;--md-sys-color-on-background:#e6e1e6;--md-sys-color-on-surface:#e6e1e6;--md-sys-color-surface-variant:#48454e;--md-sys-color-on-surface-variant:#c9c4d0;--md-sys-color-outline:#938f99;--md-sys-color-outline-variant:#48454e;--md-sys-color-scrim:#000;--md-sys-color-inverse-surface:#e6e1e6;--md-sys-color-inverse-on-surface:#313033;--md-sys-color-inverse-primary:#604bbf;--md-sys-color-surface:#14121a;--md-sys-color-surface-dim:#14121a;--md-sys-color-surface-bright:#3a3841;--md-sys-color-surface-container-lowest:#0f0d15;--md-sys-color-surface-container-low:#1c1b22;--md-sys-color-surface-container:#201f27;--md-sys-color-surface-container-high:#2b2931;--md-sys-color-surface-container-highest:#36343c}:root{--md-sys-motion-duration-short1:50ms;--md-sys-motion-duration-short2:.1s;--md-sys-motion-duration-short3:.15s;--md-sys-motion-duration-short4:.2s;--md-sys-motion-duration-medium1:.25s;--md-sys-motion-duration-medium2:.3s;--md-sys-motion-duration-medium3:.35s;--md-sys-motion-duration-medium4:.4s;--md-sys-motion-duration-long1:.45s;--md-sys-motion-duration-long2:.5s;--md-sys-motion-duration-long3:.55s;--md-sys-motion-duration-long4:.6s;--md-sys-motion-duration-extra-long1:.7s;--md-sys-motion-duration-extra-long2:.8s;--md-sys-motion-duration-extra-long3:.9s;--md-sys-motion-duration-extra-long4:1s;--md-sys-motion-easing-emphasized:cubic-bezier(.2, 0, 0, 1);--md-sys-motion-easing-emphasize-decelerate:cubic-bezier(.05, .7, .1, 1);--md-sys-motion-easing-emphasize-accelerate:cubic-bezier(.3, 0, .8, .15);--site-stagger:60ms;--site-motion-standard:cubic-bezier(.23, 1, .32, 1)}@media (prefers-reduced-motion:reduce){:root{--md-sys-motion-duration-short1:0s;--md-sys-motion-duration-short2:0s;--md-sys-motion-duration-short3:0s;--md-sys-motion-duration-short4:0s;--md-sys-motion-duration-medium1:0s;--md-sys-motion-duration-medium2:0s;--md-sys-motion-duration-medium3:0s;--md-sys-motion-duration-medium4:0s;--md-sys-motion-duration-long1:0s;--md-sys-motion-duration-long2:0s;--md-sys-motion-duration-long3:0s;--md-sys-motion-duration-long4:0s;--md-sys-motion-duration-extra-long1:0s;--md-sys-motion-duration-extra-long2:0s;--md-sys-motion-duration-extra-long3:0s;--md-sys-motion-duration-extra-long4:0s;--site-stagger:0s}}:root{--md-sys-shape-corner-xs:4px;--md-sys-shape-corner-small:8px;--md-sys-shape-corner-medium:12px;--md-sys-shape-corner-large:16px;--md-sys-shape-corner-xl:28px;--md-sys-shape-corner-full:9999px;--md-sys-typescale-display-large:400 57px/64px var(--site-font-stack);--md-sys-typescale-display-medium:400 45px/52px var(--site-font-stack);--md-sys-typescale-display-small:400 36px/44px var(--site-font-stack);--md-sys-typescale-headline-large:400 32px/40px var(--site-font-stack);--md-sys-typescale-headline-medium:400 28px/36px var(--site-font-stack);--md-sys-typescale-headline-small:400 24px/32px var(--site-font-stack);--md-sys-typescale-title-large:400 22px/28px var(--site-font-stack);--md-sys-typescale-title-medium:500 16px/24px var(--site-font-stack);--md-sys-typescale-title-small:500 14px/20px var(--site-font-stack);--md-sys-typescale-body-large:400 16px/24px var(--site-font-stack);--md-sys-typescale-body-medium:400 14px/20px var(--site-font-stack);--md-sys-typescale-body-small:400 12px/16px var(--site-font-stack);--md-sys-typescale-label-large:500 14px/20px var(--site-font-stack);--md-sys-typescale-label-medium:500 12px/16px var(--site-font-stack);--md-sys-typescale-label-small:500 11px/16px var(--site-font-stack);--site-unit:4px;--site-content-col:1040px;--site-section-gap:128px;--site-section-gap-narrow:80px;--site-section-gap-small:48px;--site-band-bg:#313033;--site-band-fg:#f4eff4;--site-font-latin:"Inter Variable", Inter, sans-serif;--site-font-cjk:system-ui, "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", sans-serif;--site-font-stack:var(--site-font-latin), var(--site-font-cjk);--site-lightbox-scrim:#00000052}@media (width<=840px){:root{--site-section-gap:var(--site-section-gap-narrow)}}@media (width<=600px){:root{--site-section-gap:var(--site-section-gap-small)}}*{box-sizing:border-box}.js-only{opacity:0;visibility:hidden}html.js .js-only{opacity:1;visibility:visible}[hidden]{display:none!important}html{scroll-behavior:smooth;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}section[id]{scroll-margin-top:80px}body{font:var(--md-sys-typescale-body-large);background:var(--md-sys-color-background);color:var(--md-sys-color-on-background);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4,h5,h6,p{margin:0}img{max-width:100%;height:auto;display:block}a{color:var(--md-sys-color-primary);-webkit-text-decoration-color:color-mix(in srgb, var(--md-sys-color-primary) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--md-sys-color-primary) 40%, transparent)}::selection{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.t-display-large{font:var(--md-sys-typescale-display-large);letter-spacing:-.25px;font-family:var(--site-font-latin)}.t-display-medium{font:var(--md-sys-typescale-display-medium);font-family:var(--site-font-latin)}.t-display-small{font:var(--md-sys-typescale-display-small);font-family:var(--site-font-latin)}.t-headline-large{font:var(--md-sys-typescale-headline-large)}.t-headline-medium{font:var(--md-sys-typescale-headline-medium)}.t-headline-small{font:var(--md-sys-typescale-headline-small)}.t-title-large{font:var(--md-sys-typescale-title-large)}.t-title-medium{font:var(--md-sys-typescale-title-medium);letter-spacing:.15px}.t-title-small{font:var(--md-sys-typescale-title-small);letter-spacing:.1px}.t-body-large{font:var(--md-sys-typescale-body-large);letter-spacing:.5px}.t-body-medium{font:var(--md-sys-typescale-body-medium);letter-spacing:.25px}.t-body-small{font:var(--md-sys-typescale-body-small);letter-spacing:.4px}.t-label-large{font:var(--md-sys-typescale-label-large);letter-spacing:.1px}.t-label-medium{font:var(--md-sys-typescale-label-medium);letter-spacing:.5px}.t-label-small{font:var(--md-sys-typescale-label-small);letter-spacing:.5px}.tnum{font-variant-numeric:lining-nums tabular-nums}.gap-1{gap:calc(var(--site-unit) * 1)}.gap-2{gap:calc(var(--site-unit) * 2)}.gap-4{gap:calc(var(--site-unit) * 4)}.gap-8{gap:calc(var(--site-unit) * 8)}.pad-2{padding:calc(var(--site-unit) * 2)}.pad-4{padding:calc(var(--site-unit) * 4)}.pad-8{padding:calc(var(--site-unit) * 8)}.site-col{max-width:var(--site-content-col);padding-inline:calc(var(--site-unit) * 4);margin-inline:auto}.site-section{padding-block:var(--site-section-gap)}.site-button{border-radius:var(--md-sys-shape-corner-full);font:var(--md-sys-typescale-label-large);cursor:pointer;align-items:center;gap:calc(var(--site-unit) * 2);border:none;padding:10px 24px;text-decoration:none;display:inline-flex}.site-button--filled{background:var(--md-sys-color-primary);color:var(--md-sys-color-on-primary)}.site-button--tonal{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container)}.site-button--outlined{color:var(--md-sys-color-primary);border:1px solid var(--md-sys-color-outline);background:0 0}.site-button--text{color:var(--md-sys-color-primary);padding-inline:calc(var(--site-unit) * 4);background:0 0;border:none}.site-button--elevated{background:var(--md-sys-color-surface);color:var(--md-sys-color-on-surface);border:none;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.site-field{border:1px solid var(--md-sys-color-outline);border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-surface);font:var(--md-sys-typescale-body-medium);background:0 0;padding:10px 16px}.site-field:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:-1px}.entry-card{align-items:center;gap:calc(var(--site-unit) * 2);background:var(--md-sys-color-surface);border:1px solid var(--md-sys-color-outline);border-radius:var(--md-sys-shape-corner-full);color:var(--md-sys-color-on-surface);cursor:pointer;min-inline-size:240px;transition:border-color var(--md-sys-motion-duration-short4) var(--md-sys-motion-easing-emphasized);padding:10px 20px;display:inline-flex}.entry-card:hover{border-color:var(--md-sys-color-on-surface)}.entry-card:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:-1px}.site-chip{align-items:center;gap:calc(var(--site-unit) * 1.5);border:1px solid var(--md-sys-color-outline);color:var(--md-sys-color-on-surface-variant);border-radius:var(--md-sys-shape-corner-full);font:var(--md-sys-typescale-label-large);cursor:pointer;transition:background-color var(--md-sys-motion-duration-short3) var(--md-sys-motion-easing-emphasized), border-color var(--md-sys-motion-duration-short3) var(--md-sys-motion-easing-emphasized), color var(--md-sys-motion-duration-short3) var(--md-sys-motion-easing-emphasized);background:0 0;padding:6px 14px;display:inline-flex}.site-chip svg{flex:none;width:12px;height:12px;display:none}.site-chip[aria-pressed=true] .chip-check,.site-chip[aria-pressed=false] .chip-lead,.site-chip[aria-current=true] .chip-check{display:block}.site-chip[aria-current=true],.site-chip[aria-pressed=true]{background:var(--md-sys-color-secondary-container);color:var(--md-sys-color-on-secondary-container);border-color:#0000}.site-card{background:var(--md-sys-color-surface-container-low);border-radius:var(--md-sys-shape-corner-large)}.site-card--elevated{background:var(--md-sys-color-surface-container-low);box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.site-divider{border-bottom:1px solid var(--md-sys-color-outline-variant)}:focus-visible{outline:2px solid var(--md-sys-color-primary);outline-offset:2px}@media (hover:hover) and (pointer:fine){.site-button:hover,.site-chip:hover,.site-field:hover,.views__dot:hover,.appbar__theme:hover,a:hover{background-color:color-mix(in srgb, currentColor 8%, transparent)}}.site-button:active,.site-chip:active,.site-field:active,.views__dot:active,.appbar__theme:active,a:active{background-color:color-mix(in srgb, currentColor 10%, transparent)}.site-button--filled:is(:hover,:active){background-color:color-mix(in srgb, currentColor 8%, var(--md-sys-color-primary))}.site-button--filled:active{background-color:color-mix(in srgb, currentColor 10%, var(--md-sys-color-primary))}.site-button--tonal:is(:hover,:active){background-color:color-mix(in srgb, currentColor 8%, var(--md-sys-color-secondary-container))}.site-button--tonal:active{background-color:color-mix(in srgb, currentColor 10%, var(--md-sys-color-secondary-container))}.site-button--elevated:is(:hover,:active){background-color:color-mix(in srgb, currentColor 8%, var(--md-sys-color-surface))}.site-button--elevated:active{background-color:color-mix(in srgb, currentColor 10%, var(--md-sys-color-surface))}.site-chip[aria-pressed=true]:is(:hover,:active){background-color:color-mix(in srgb, currentColor 8%, var(--md-sys-color-secondary-container))}.site-chip[aria-pressed=true]:active{background-color:color-mix(in srgb, currentColor 10%, var(--md-sys-color-secondary-container))}.views__dot[aria-checked=true]:is(:hover,:active){background-color:color-mix(in srgb, currentColor 8%, var(--md-sys-color-secondary-container))}.views__dot[aria-checked=true]:active{background-color:color-mix(in srgb, currentColor 10%, var(--md-sys-color-secondary-container))}.skip-link:is(:hover,:active){background-color:color-mix(in srgb, currentColor 8%, var(--md-sys-color-secondary-container))}.skip-link:active{background-color:color-mix(in srgb, currentColor 10%, var(--md-sys-color-secondary-container))}.skip-link{z-index:1000;text-align:center;background:var(--md-sys-color-secondary-container);inline-size:100dvw;color:var(--md-sys-color-on-secondary-container);padding:calc(var(--site-unit) * 3) 0;text-decoration:none;position:absolute;inset-block-start:0;transform:translateY(-100%)}.skip-link:focus-visible{transform:translateY(0)}.js .reveal{opacity:0;transition:opacity var(--md-sys-motion-duration-medium4) var(--md-sys-motion-easing-emphasize-decelerate), transform var(--md-sys-motion-duration-medium4) var(--md-sys-motion-easing-emphasize-decelerate);transition-delay:calc(var(--reveal-i,0) * var(--site-stagger));transform:translateY(16px)}.js .reveal[data-revealed=true]{opacity:1;transform:none}.site-card--interactive{transition:transform var(--md-sys-motion-duration-short4) var(--md-sys-motion-easing-emphasized), box-shadow var(--md-sys-motion-duration-short4) var(--md-sys-motion-easing-emphasized)}@media (hover:hover) and (pointer:fine){.site-card--interactive:is(:hover,:focus-visible){transform:translateY(-2px);box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}}.site-button{transition:transform .16s var(--site-motion-standard)}.site-button:active{transform:scale(.97)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{transition:opacity .2s;transform:none}.reveal,[data-blob]{animation:none!important}.site-card--interactive:is(:hover,:focus-visible),.site-button:active{transform:none}.site-chip{transition:none}}
