﻿body,html{width:100%;margin:0;padding:0}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:flex;flex-direction:column;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}html{background-color:var(--color-background);scroll-behavior:smooth}*{box-sizing:border-box}body{font-size:var(--font-size-base);font-family:Inter,system-ui,sans-serif;font-weight:400;line-height:1.7;letter-spacing:-0.01em}h1{line-height:.98;font-size:var(--font-size-xxxl);letter-spacing:-0.04em;font-weight:700}h2{line-height:1.05;font-size:var(--font-size-xxl);letter-spacing:-0.03em;font-weight:700}h3{line-height:1.15;font-size:var(--font-size-xl);letter-spacing:-0.02em;font-weight:650}h4{line-height:1.2;font-size:var(--font-size-l);font-weight:650}h6{font-size:var(--font-size-xs);color:inherit;letter-spacing:.08em;font-weight:600;text-transform:uppercase}pre code{font-size:var(--font-size-s)}pre[class^=language]{position:relative;border:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent);background:color-mix(in srgb, var(--color-background) 96%, var(--color-foreground) 4%);color:var(--color-foreground);padding:var(--code-padding, var(--space));border-radius:var(--border-radius-s);overflow:scroll}pre[class^=language]::before{content:"";display:block;background-color:rgba(0,0,0,0);color:inherit;position:absolute;right:var(--space-s);top:var(--code-label-offset, var(--space-xs));padding:0;line-height:1;font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;opacity:.45}pre[class^=language].language-json::before{content:"json"}pre[class^=language].language-bash::before{content:"bash"}pre[class^=language].language-ejs::before{content:"ejs"}pre[class^=language].language-scss::before{content:"scss"}pre[class^=language].language-ts::before{content:"ts"}pre[class^=language].language-scss::before{content:"scss"}pre[class^=language].language-js::before{content:"js"}pre[class^=language].language-vue::before{content:"vue"}pre[class^=language].language-css::before{content:"css"}pre[class^=language].language-markdown::before{content:"markdown"}:not(pre)>code{font-size:var(--font-size-s);background:color-mix(in srgb, var(--color-primary), transparent 75%);border:var(--border-width-s) solid color-mix(in srgb, var(--color-primary), transparent 25%);color:inherit;padding:var(--space-xxs) var(--space-xs);border-radius:var(--border-radius-s);white-space:normal}a code::after{content:"↗";display:inline-block;margin-left:.35em;font-size:.85em;line-height:1;text-decoration:none}code[class*=language-]{font-family:Consolas,Monaco,"Andale Mono","Ubuntu Mono",monospace;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{font-family:Consolas,Monaco,"Andale Mono","Ubuntu Mono",monospace;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;overflow:auto}:root{--code-token-comment: color-mix( in srgb, var(--color-foreground) 42%, var(--color-background) 58% );--code-token-punctuation: color-mix( in srgb, var(--color-foreground) 70%, var(--color-background) 30% );--code-token-keyword: color-mix( in srgb, var(--color-primary) 82%, var(--color-foreground) 18% );--code-token-name: color-mix( in srgb, var(--color-secondary) 76%, var(--color-foreground) 24% );--code-token-string: color-mix( in srgb, var(--color-success) 78%, var(--color-foreground) 22% );--code-token-number: color-mix( in srgb, var(--color-warning) 84%, var(--color-foreground) 16% );--code-token-accent: color-mix( in srgb, var(--color-info) 74%, var(--color-foreground) 26% );--code-token-strong: color-mix( in srgb, var(--color-foreground) 88%, var(--color-primary) 12% )}.token.content{all:unset}.token.comment{color:var(--code-token-comment);opacity:1}.token.prolog{color:var(--code-token-comment);opacity:1}.token.doctype{color:var(--code-token-comment);opacity:1}.token.cdata{color:var(--code-token-comment);opacity:1}.token.punctuation{color:var(--code-token-punctuation);opacity:1}.token.namespace{opacity:.7}.token.property{color:var(--code-token-name)}.token.tag{color:var(--code-token-keyword)}.token.boolean{color:var(--code-token-number)}.token.number{color:var(--code-token-number)}.token.constant{color:var(--code-token-number)}.token.symbol{color:var(--code-token-number)}.token.deleted{color:var(--color-error)}.token.selector{color:var(--code-token-name)}.token.attr-name{color:var(--code-token-name)}.token.string{color:var(--code-token-string)}.token.char{color:var(--code-token-string)}.token.builtin{color:var(--code-token-accent)}.token.inserted{color:var(--color-success)}.token.operator{color:var(--code-token-punctuation)}.token.entity{color:var(--code-token-accent);cursor:help}.token.url{color:var(--code-token-accent)}.token .language-css.string{color:var(--code-token-string)}.token .style.string{color:var(--code-token-string)}.token.atrule{color:var(--code-token-keyword)}.token.attr-value{color:var(--code-token-string)}.token.keyword{color:var(--code-token-keyword)}.token.function{color:var(--code-token-accent)}.token.class-name{color:var(--code-token-strong)}.token.regex{color:var(--code-token-string)}.token.important{color:var(--code-token-strong);font-weight:bold}.token.variable{color:var(--code-token-name)}.token.bold{font-weight:bold}.token.italic{font-style:italic}main .section .container{width:min(100%,var(--layout-width));margin:0 auto;padding:0 var(--space)}main .section{padding:var(--space-xxl) 0;background-color:var(--section-background-color, transparent);color:var(--section-text-color, currentColor)}.content{max-width:var(--content-width);margin:0 auto}main .section.archive .container,main .section.tags .container{width:min(100%,var(--layout-width))}.page-container{flex:1 0 auto;display:flex;flex-direction:column}.main{flex:1 0 auto;view-transition-name:site-main}body{background-color:var(--color-background);color:var(--color-foreground)}:root[color-mode=dark]{color-scheme:dark;--color-dark: #0a0a0a;--color-dark-contrast: var(--color-light);--color-light: #ffffff;--color-light-contrast: var(--color-dark);--color-red: #c44747;--color-red-contrast: var(--color-light);--color-blue: #3f63dd;--color-blue-contrast: var(--color-light);--color-green: #3f8f5b;--color-green-contrast: var(--color-light);--color-yellow: #d1ab36;--color-yellow-contrast: var(--color-light);--color-orange: #d57b28;--color-orange-contrast: var(--color-light);--color-purple: #7655d8;--color-purple-contrast: var(--color-light);--color-pink: #d668a4;--color-pink-contrast: var(--color-light);--color-lime: #8bab2a;--color-lime-contrast: var(--color-light);--color-brown: #8c6343;--color-brown-contrast: var(--color-light);--color-gray: #767676;--color-gray-contrast: var(--color-light);--color-magenta: #b64cb0;--color-magenta-contrast: var(--color-light);--color-beige: #d7c1a2;--color-beige-contrast: var(--color-dark);--color-primary: var(--color-red);--color-primary-contrast: var(--color-red-contrast);--color-secondary: var(--color-blue);--color-secondary-contrast: var(--color-blue-contrast);--color-background: var(--color-dark);--color-background-contrast: var(--color-dark-contrast);--color-foreground: var(--color-light);--color-foreground-contrast: var(--color-light-contrast);--color-error: var(--color-red);--color-error-contrast: var(--color-red-contrast);--color-info: var(--color-blue);--color-info-contrast: var(--color-blue-contrast);--color-warning: var(--color-orange);--color-warning-contrast: var(--color-orange-contrast);--color-success: var(--color-green);--color-success-contrast: var(--color-green-contrast);}:root[color-mode=light]{color-scheme:light;--color-dark: #0a0a0a;--color-dark-contrast: var(--color-light);--color-light: #ffffff;--color-light-contrast: var(--color-dark);--color-red: #c44747;--color-red-contrast: var(--color-light);--color-blue: #3f63dd;--color-blue-contrast: var(--color-light);--color-green: #3f8f5b;--color-green-contrast: var(--color-light);--color-yellow: #d1ab36;--color-yellow-contrast: var(--color-light);--color-orange: #d57b28;--color-orange-contrast: var(--color-light);--color-purple: #7655d8;--color-purple-contrast: var(--color-light);--color-pink: #d668a4;--color-pink-contrast: var(--color-light);--color-lime: #8bab2a;--color-lime-contrast: var(--color-light);--color-brown: #8c6343;--color-brown-contrast: var(--color-light);--color-gray: #767676;--color-gray-contrast: var(--color-light);--color-magenta: #b64cb0;--color-magenta-contrast: var(--color-light);--color-beige: #d7c1a2;--color-beige-contrast: var(--color-dark);--color-primary: var(--color-red);--color-primary-contrast: var(--color-red-contrast);--color-secondary: var(--color-blue);--color-secondary-contrast: var(--color-blue-contrast);--color-background: var(--color-light);--color-background-contrast: var(--color-light-contrast);--color-foreground: var(--color-dark);--color-foreground-contrast: var(--color-dark-contrast);--color-error: var(--color-red);--color-error-contrast: var(--color-red-contrast);--color-info: var(--color-blue);--color-info-contrast: var(--color-blue-contrast);--color-warning: var(--color-orange);--color-warning-contrast: var(--color-orange-contrast);--color-success: var(--color-green);--color-success-contrast: var(--color-green-contrast);}@media(prefers-color-scheme: dark){:root:not([color-mode]){color-scheme:dark;--color-dark: #0a0a0a;--color-dark-contrast: var(--color-light);--color-light: #ffffff;--color-light-contrast: var(--color-dark);--color-red: #c44747;--color-red-contrast: var(--color-light);--color-blue: #3f63dd;--color-blue-contrast: var(--color-light);--color-green: #3f8f5b;--color-green-contrast: var(--color-light);--color-yellow: #d1ab36;--color-yellow-contrast: var(--color-light);--color-orange: #d57b28;--color-orange-contrast: var(--color-light);--color-purple: #7655d8;--color-purple-contrast: var(--color-light);--color-pink: #d668a4;--color-pink-contrast: var(--color-light);--color-lime: #8bab2a;--color-lime-contrast: var(--color-light);--color-brown: #8c6343;--color-brown-contrast: var(--color-light);--color-gray: #767676;--color-gray-contrast: var(--color-light);--color-magenta: #b64cb0;--color-magenta-contrast: var(--color-light);--color-beige: #d7c1a2;--color-beige-contrast: var(--color-dark);--color-primary: var(--color-red);--color-primary-contrast: var(--color-red-contrast);--color-secondary: var(--color-blue);--color-secondary-contrast: var(--color-blue-contrast);--color-background: var(--color-dark);--color-background-contrast: var(--color-dark-contrast);--color-foreground: var(--color-light);--color-foreground-contrast: var(--color-light-contrast);--color-error: var(--color-red);--color-error-contrast: var(--color-red-contrast);--color-info: var(--color-blue);--color-info-contrast: var(--color-blue-contrast);--color-warning: var(--color-orange);--color-warning-contrast: var(--color-orange-contrast);--color-success: var(--color-green);--color-success-contrast: var(--color-green-contrast);}}@media(prefers-color-scheme: light){:root:not([color-mode]){color-scheme:light;--color-dark: #0a0a0a;--color-dark-contrast: var(--color-light);--color-light: #ffffff;--color-light-contrast: var(--color-dark);--color-red: #c44747;--color-red-contrast: var(--color-light);--color-blue: #3f63dd;--color-blue-contrast: var(--color-light);--color-green: #3f8f5b;--color-green-contrast: var(--color-light);--color-yellow: #d1ab36;--color-yellow-contrast: var(--color-light);--color-orange: #d57b28;--color-orange-contrast: var(--color-light);--color-purple: #7655d8;--color-purple-contrast: var(--color-light);--color-pink: #d668a4;--color-pink-contrast: var(--color-light);--color-lime: #8bab2a;--color-lime-contrast: var(--color-light);--color-brown: #8c6343;--color-brown-contrast: var(--color-light);--color-gray: #767676;--color-gray-contrast: var(--color-light);--color-magenta: #b64cb0;--color-magenta-contrast: var(--color-light);--color-beige: #d7c1a2;--color-beige-contrast: var(--color-dark);--color-primary: var(--color-red);--color-primary-contrast: var(--color-red-contrast);--color-secondary: var(--color-blue);--color-secondary-contrast: var(--color-blue-contrast);--color-background: var(--color-light);--color-background-contrast: var(--color-light-contrast);--color-foreground: var(--color-dark);--color-foreground-contrast: var(--color-dark-contrast);--color-error: var(--color-red);--color-error-contrast: var(--color-red-contrast);--color-info: var(--color-blue);--color-info-contrast: var(--color-blue-contrast);--color-warning: var(--color-orange);--color-warning-contrast: var(--color-orange-contrast);--color-success: var(--color-green);--color-success-contrast: var(--color-green-contrast);}}:root{--font-size-base: 18px;--spacing: clamp(2em, 6vw, 8em);--space: 1em;--space-xxs: calc(var(--space) * 0.25);--space-xs: calc(var(--space) * 0.5);--space-s: calc(var(--space) * 0.75);--space-l: calc(var(--space) * 1.5);--space-xl: calc(var(--space) * 2.5);--space-xxl: calc(var(--space) * 4);--font-size: 1em;--font-size-xs: calc(var(--font-size) * 0.75);--font-size-s: calc(var(--font-size) * 0.875);--font-size-l: calc(var(--font-size) * 1.125);--font-size-xl: calc(var(--font-size) * 1.35);--font-size-xxl: calc(var(--font-size) * 2.4);--font-size-xxxl: calc(var(--font-size) * 4.5);--font-size-lead: calc(var(--font-size) * 1.4);--border-radius: 0.5em;--border-radius-s: calc(var(--border-radius) * 0.5);--border-radius-m: var(--border-radius);--border-radius-l: calc(var(--border-radius) * 2);--border-radius-round: 999px;--border-width: 1px;--border-width-s: var(--border-width);--border-width-m: calc(var(--border-width) * 2);--layout-width: calc(var(--font-size) * 82);--content-width: 72ch}.header{position:sticky;top:0;z-index:30;view-transition-name:site-header;background-color:var(--color-background);border-bottom:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent);backdrop-filter:blur(18px)}.header__container{position:static;width:min(100%,var(--layout-width));margin:0 auto;padding:var(--header-padding-y, var(--space-s)) var(--header-padding-x, var(--space));display:flex;justify-content:space-between;align-items:center;color:var(--color-foreground);gap:var(--header-gap, var(--space-l))}@media screen and (max-width: 960px){.header__container{gap:var(--space-s)}}.footer{view-transition-name:site-footer;border-top:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent);background-color:color-mix(in srgb, var(--color-background) 94%, var(--color-foreground) 6%)}.footer__container{width:min(100%,var(--layout-width));margin:0 auto;padding:var(--footer-padding-y, var(--space-xl)) var(--footer-padding-x, var(--space));display:grid;gap:var(--space)}.footer__navigation{width:100%;padding-bottom:var(--space-s);border-bottom:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent)}.footer__bar{display:flex;justify-content:space-between;align-items:center;gap:var(--space);flex-wrap:wrap}.footer__bar--end{justify-content:flex-end}.footer__controls{display:flex;justify-content:flex-end;flex-wrap:wrap;align-items:center;gap:var(--footer-gap, var(--space));margin-left:auto}.footer__brand{display:flex;align-items:center}.footer__control{display:flex;align-items:center;gap:var(--space-xs)}.footer__label{font-size:var(--font-size-xs);letter-spacing:.08em;opacity:.6}.footer__meta{padding-top:var(--space-s);border-top:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent);display:flex;justify-content:space-between;align-items:center;gap:var(--space);flex-wrap:wrap}.footer .copyright{font-size:var(--font-size-s);opacity:.65}.footer .navigation{width:100%;margin-left:0}.footer .navigation__list{justify-content:flex-start}@media screen and (max-width: 720px){.footer__bar{align-items:flex-start}.footer__controls{width:100%;justify-content:space-between;margin-left:0}}.socials{list-style-type:none;margin:0;padding:0;display:flex;gap:var(--space-s)}.socials__link{font-size:var(--font-size-s);color:inherit;text-decoration:none;opacity:.75;border-bottom:var(--border-width-s) solid rgba(0,0,0,0)}.socials__link:hover{opacity:1;border-bottom-color:currentColor}.color-mode-toggle{--switch-segment-height: calc(var(--space) * 1.7);position:relative;display:inline-flex;align-items:center;gap:var(--color-mode-gap, var(--space-xs));padding:var(--space-xxs);border:none;border-radius:var(--border-radius-m);background:color-mix(in srgb, var(--color-foreground) 16%, var(--color-background));color:inherit;cursor:pointer;font:inherit;opacity:1;transition:box-shadow .2s ease}.color-mode-toggle:focus-visible{outline:none;box-shadow:0 0 0 var(--border-width-m) color-mix(in srgb, var(--color-primary) 24%, transparent)}.color-mode-toggle__option{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;min-width:var(--switch-segment-height);min-height:var(--switch-segment-height);padding:0;color:color-mix(in srgb, var(--color-foreground) 68%, transparent);transition:color .2s ease,background-color .2s ease}.color-mode-toggle__option:hover{color:var(--color-foreground)}.color-mode-toggle__icon{display:inline-flex;align-items:center;justify-content:center;width:var(--color-mode-icon-size, 1em);height:var(--color-mode-icon-size, 1em)}.color-mode-toggle__icon-asset{display:block;width:100%;height:100%}.color-mode-toggle__track{position:absolute;inset:var(--space-xxs);display:grid;grid-template-columns:1fr 1fr;pointer-events:none}.color-mode-toggle__thumb{grid-column:1;border-radius:var(--border-radius-s);background:var(--color-background);box-shadow:0 .2em .75em color-mix(in srgb, var(--color-foreground) 18%, transparent);transition:transform .2s ease,background-color .2s ease}.color-mode-toggle[data-color-mode=light] .color-mode-toggle__option:first-child,.color-mode-toggle[data-color-mode=dark] .color-mode-toggle__option:last-child{color:var(--color-foreground)}.color-mode-toggle[data-color-mode=dark] .color-mode-toggle__thumb{transform:translateX(100%)}.navigation{font-size:var(--font-size)}.navigation__list,.navigation__item,.navigation__groups,.navigation__group{list-style-type:none;margin:0;padding:0}.navigation__entry{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:calc(var(--space)*1.9);padding:calc(var(--space-xxs) + .1em) calc(var(--space-s) + .1em);border-radius:var(--border-radius-m);transition:background-color .2s ease,color .2s ease}.navigation__mobile-toggle{display:none;align-items:center;gap:var(--space-xs);padding:0;border:none;background:rgba(0,0,0,0);color:inherit;font:inherit;font-weight:600;cursor:pointer}.navigation__mobile-toggle-icon{position:relative;display:inline-block;width:var(--space);height:calc(var(--space)*.75);border-top:var(--border-width-s) solid currentColor;border-bottom:var(--border-width-s) solid currentColor}.navigation__mobile-toggle-icon::before{content:"";position:absolute;top:50%;left:0;width:100%;border-top:var(--border-width-s) solid currentColor;transform:translateY(-50%)}.navigation__link{display:inline-flex;align-items:center;gap:var(--space-xs);padding:0;color:inherit;text-decoration:none;opacity:.92;font-weight:600;line-height:1.2;transition:color .2s ease,opacity .2s ease}.navigation__link:hover{opacity:1}.navigation__item:hover>.navigation__entry,.navigation__item:focus-within>.navigation__entry{background-color:color-mix(in srgb, var(--color-secondary) 22%, transparent)}.navigation__item:hover>.navigation__entry>.navigation__link,.navigation__item:focus-within>.navigation__entry>.navigation__link{color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}.navigation__item--current>.navigation__entry,.navigation__item--parent>.navigation__entry,.navigation__item--open>.navigation__entry{background-color:color-mix(in srgb, var(--color-secondary) 30%, transparent)}.navigation__item--current>.navigation__entry>.navigation__link,.navigation__item--parent>.navigation__entry>.navigation__link,.navigation__item--open>.navigation__entry>.navigation__link{opacity:1;color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}.navigation__toggle{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:var(--space-s);height:var(--space-s);padding:0;border:none;background:rgba(0,0,0,0);color:inherit;cursor:pointer;opacity:.55;transition:opacity .2s ease,transform .2s ease}.navigation__toggle:hover,.navigation__toggle:focus-visible{opacity:1}.navigation__toggle::before{content:"";width:.5em;height:.5em;border-right:var(--border-width-s) solid currentColor;border-bottom:var(--border-width-s) solid currentColor;transform:translateY(-12%) rotate(45deg)}.navigation__item--open>.navigation__entry>.navigation__toggle{opacity:1}.navigation__item--open>.navigation__entry>.navigation__toggle::before{transform:translateY(12%) rotate(-135deg)}.navigation__panel,.navigation__list--sub{display:none}.navigation__groups{display:grid;gap:var(--space-xxs)}.navigation__group{display:grid;gap:var(--space-xxs);align-content:start}.navigation__group-link{width:fit-content;display:inline-flex;align-items:center;gap:var(--space-xs);color:inherit;text-decoration:none;padding:.3em .5em;border-radius:var(--border-radius-s);opacity:.88;font-weight:500;transition:opacity .2s ease,background-color .2s ease,color .2s ease}.navigation__group-link:hover{opacity:1;background-color:color-mix(in srgb, var(--color-secondary) 18%, transparent);color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}.navigation__group-link--heading,.navigation__group--current>.navigation__group-link,.navigation__group--parent>.navigation__group-link{opacity:1}.navigation__group--current>.navigation__group-link,.navigation__group--parent>.navigation__group-link{background-color:color-mix(in srgb, var(--color-secondary) 24%, transparent);color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}.navigation__group-link--heading{font-size:var(--font-size);line-height:1.2;font-weight:600}.navigation__icon{width:var(--navigation-icon-size, 1em);height:var(--navigation-icon-size, 1em);flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center}.navigation__icon-asset,.navigation__icon-asset>svg{display:block;width:100%;height:100%}.navigation--header{margin-left:auto;position:relative;display:flex;align-items:center;justify-content:flex-end;gap:var(--space-s)}.navigation--header .navigation__list{position:relative;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--navigation-gap, var(--space-s));view-transition-name:navigation-links}.navigation--header .navigation__item{position:relative}.navigation--header .navigation__active-pill{display:none}.navigation--header .navigation__entry{position:relative;z-index:1}.navigation--header .navigation__item--current>.navigation__entry,.navigation--header .navigation__item--parent>.navigation__entry{anchor-name:--navigation-active}.navigation--header .navigation__item--current>.navigation__entry>.navigation__link,.navigation--header .navigation__item--parent>.navigation__entry>.navigation__link{view-transition-name:navigation-label}.navigation--header .navigation__panel{position:absolute;top:calc(100% + var(--space-xs));left:0;right:auto;z-index:20;width:max-content;min-width:0;max-width:min(28em,100vw - var(--space)*2);border-radius:var(--border-radius-l);background-color:var(--color-background);box-shadow:0 var(--space-xs) var(--space) color-mix(in srgb, var(--color-foreground) 8%, transparent);opacity:0;transform:translateY(calc(var(--space-xs) * -1)) scale(0.98);transform-origin:top left;transition:opacity .18s ease,transform .18s ease}.navigation--header .navigation__item--align-end>.navigation__panel{left:auto;right:0;transform-origin:top right}.navigation--header .navigation__item--open>.navigation__panel,.navigation--header .navigation__panel[data-state=open],.navigation--header .navigation__panel[data-state=opening]{display:block;opacity:1;transform:translateY(0) scale(1)}.navigation--header .navigation__panel-inner{width:fit-content;max-width:100%;margin:0;padding:calc(var(--space-xs) + .2em)}.navigation--header .navigation__groups--level-1{width:fit-content;grid-template-columns:repeat(2, max-content);gap:calc(var(--space-xxs) + .1em) var(--space-xs)}.navigation--header .navigation__groups--compact-column{grid-template-columns:max-content}.navigation--header .navigation__groups--level-1 .navigation__group-link:not(.navigation__group-link--heading){font-size:var(--font-size-s)}.navigation--header .navigation__groups--level-2,.navigation--header .navigation__groups--level-3,.navigation--header .navigation__groups--level-4,.navigation--header .navigation__groups--level-5{gap:calc(var(--space-xxs) + .1em)}@supports(position-anchor: --navigation-active) and (anchor-name: --navigation-active){.navigation--header .navigation__active-pill{position:absolute;position-anchor:--navigation-active;position-area:center;display:block;width:anchor-size(width);height:anchor-size(height);border-radius:var(--border-radius-m);background-color:color-mix(in srgb, var(--color-secondary) 30%, transparent);pointer-events:none;z-index:0;view-transition-name:navigation-pill}.navigation--header .navigation__item--current>.navigation__entry,.navigation--header .navigation__item--parent>.navigation__entry,.navigation--header .navigation__item--open>.navigation__entry{background-color:rgba(0,0,0,0)}.navigation--header .navigation__panel{top:anchor(bottom);left:anchor(left);margin-top:var(--space-xs)}.navigation--header .navigation__item--align-end>.navigation__panel{left:auto;right:anchor(right)}}@media screen and (max-width: 960px){.navigation--header .navigation__active-pill{display:none}.navigation--header .navigation__panel{position:static;width:100%;min-width:0;max-width:none;margin-top:0;border:none;border-radius:0;box-shadow:none;background:rgba(0,0,0,0);opacity:1;transform:none;transition:none}.navigation--header .navigation__panel-inner{width:100%;padding:var(--space-xs) 0 0 calc(var(--space)*.65)}.navigation--header .navigation__groups--level-1{grid-template-columns:1fr;gap:var(--space-s)}}@media screen and (max-width: 960px){.navigation--header.navigation--mobile-panel .navigation__mobile-toggle{display:inline-flex}.navigation--header.navigation--mobile-panel .navigation__list{display:none;position:fixed;inset:0;z-index:100;overflow-y:auto;padding:var(--space-l) var(--space);background-color:var(--color-background);flex-direction:column;align-items:stretch;gap:var(--space-xxs)}.navigation--header.navigation--mobile-panel.navigation--mobile-open .navigation__mobile-toggle{position:fixed;top:var(--space);right:var(--space);z-index:101}.navigation--header.navigation--mobile-panel.navigation--mobile-open .navigation__list{display:flex}.navigation--header.navigation--mobile-panel .navigation__item{width:100%}.navigation--header.navigation--mobile-panel .navigation__entry{width:100%;justify-content:space-between;padding:var(--space-xs) calc(var(--space-s) + .1em)}.navigation--header.navigation--mobile-panel .navigation__link{width:100%;padding:0}}@media screen and (max-width: 960px){.navigation--mobile-inline .navigation__list{width:auto;justify-content:flex-end;flex-direction:row;align-items:center;gap:var(--space-xs)}.navigation--mobile-inline .navigation__entry{width:auto;justify-content:flex-start}}.navigation--footer{width:100%;margin-left:0}.navigation--footer .navigation__footer-list,.navigation--footer .navigation__footer-item{list-style-type:none;margin:0;padding:0}.navigation--footer .navigation__footer-list--level-0{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-xl)}.navigation--footer .navigation__footer-item{width:fit-content}.navigation--footer .navigation__footer-list--level-1,.navigation--footer .navigation__footer-list--level-2,.navigation--footer .navigation__footer-list--level-3,.navigation--footer .navigation__footer-list--level-4,.navigation--footer .navigation__footer-list--level-5{display:grid;gap:var(--space-xs);margin-top:var(--space-s)}.navigation--footer .navigation__footer-link{width:fit-content;display:inline-flex;align-items:center;gap:var(--space-xs);padding:.3em .5em;border-radius:var(--border-radius-s);color:inherit;text-decoration:none;opacity:.78;transition:opacity .2s ease,background-color .2s ease,color .2s ease}.navigation--footer .navigation__footer-link:hover{opacity:1;background-color:color-mix(in srgb, var(--color-secondary) 18%, transparent);color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}.navigation--footer .navigation__footer-link--heading{opacity:1;font-weight:600}.navigation--footer .navigation__footer-item--current>.navigation__footer-link,.navigation--footer .navigation__footer-item--parent>.navigation__footer-link{opacity:1;background-color:color-mix(in srgb, var(--color-secondary) 24%, transparent);color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}@media screen and (max-width: 960px){.navigation--footer .navigation__footer-list--level-0{grid-template-columns:1fr;gap:var(--space-l)}}.logo{color:inherit;text-decoration:none;display:inline-flex;align-items:center}.logo__text{font-size:var(--font-size-s);font-weight:700;letter-spacing:.18em;text-transform:uppercase}.logo--image-only svg{display:block;width:auto;max-width:var(--logo-max-width, calc(var(--space) * 6.5));height:var(--logo-height, calc(var(--space) * 1.1))}.logo--image-only svg path,.logo--image-only svg rect,.logo--image-only svg circle,.logo--image-only svg text{fill:var(--color-foreground)}.logo img{display:block;width:auto;max-width:var(--logo-max-width, calc(var(--space) * 6.5));height:var(--logo-height, calc(var(--space) * 1.1))}.logo--footer.logo--image-only svg{max-width:var(--footer-logo-max-width, calc(var(--space) * 6));height:var(--footer-logo-height, calc(var(--space) * 1.05));opacity:.92}.logo--footer img{max-width:var(--footer-logo-max-width, calc(var(--space) * 6));height:var(--footer-logo-height, calc(var(--space) * 1.05));opacity:.92}.content ol,.content ul:not([class]),.content li:not([class]){list-style-type:none;padding:0}.content ol:not([class]){counter-reset:list}.content ol:not([class]) li{position:relative;counter-increment:list;padding-left:var(--list-indent, var(--space-l))}.content ol:not([class]) li::before{position:absolute;left:0;width:var(--list-marker-width, var(--space));content:counter(list) ".";opacity:.45}.content ol:not([class]) li+li{margin-top:var(--list-item-gap, var(--space-s))}.content ul:not([class]) li{position:relative;padding-left:var(--list-indent, var(--space-l))}.content ul:not([class]) li::before{position:absolute;left:0;width:var(--list-marker-width, var(--space));content:"—";opacity:.45}.content ul:not([class]) li+li{margin-top:var(--list-item-gap, var(--space-s))}.content table{width:100%;margin-left:0;font-size:var(--font-size-s);border-collapse:collapse}.content table th,.content table td{padding:var(--space-s) var(--space);vertical-align:top}@media screen and (min-width: 720px){.content table tr td{border-top:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent)}}@media screen and (max-width: 720px){.content table tr{border-top:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent)}}.content table thead th{text-align:left;color:inherit}@media screen and (max-width: 720px){.content table thead{display:none}}@media screen and (max-width: 720px){.content table tbody tr{display:flex;flex-direction:column;width:100%}.content table tbody tr+tr{margin-top:var(--space)}.content table tbody td{margin:0;width:100%;display:flex}.content table tbody td::before{display:block;content:attr(data-label);color:inherit;opacity:.55;width:33.33%}}:root{--form-accent-color: var(--color-primary);--form-width: min(100%, 42em);--form-gap: var(--space);--form-help-font-size: var(--font-size-s);--form-help-opacity: 0.68;--form-fieldset-padding: calc(var(--space-s) + var(--space-xs));--form-fieldset-gap: var(--space-s);--form-fieldset-border-color: color-mix(in srgb, currentColor 12%, transparent);--form-fieldset-radius: var(--border-radius-m);--form-fieldset-background: color-mix(in srgb, currentColor 2%, transparent);--form-legend-padding-x: var(--space-xs);--form-legend-font-weight: 650;--form-label-gap: var(--space-xs);--form-label-inline-gap: var(--form-label-gap);--form-label-font-weight: 600;--form-inline-control-width: 14em;--form-inline-range-width: 12em;--form-choice-gap: var(--space-s);--form-choice-font-weight: 500;--form-control-width: min(100%, 42em);--form-input-line-height: 1.4;--form-input-padding: var(--space-xs);--form-input-padding-y: var(--form-input-padding);--form-input-padding-x: var(--form-input-padding);--form-control-line-height: var(--form-input-line-height);--form-control-padding: var(--form-input-padding);--form-control-padding-y: var(--form-input-padding-y);--form-control-padding-x: var(--form-input-padding-x);--form-control-color: var(--color-foreground);--form-control-border-color: color-mix(in srgb, currentColor 14%, transparent);--form-control-radius: var(--border-radius-m);--form-control-background: var(--color-background);--form-control-transition-duration: 160ms;--form-control-transition-easing: ease;--form-control-transition: border-color var(--form-control-transition-duration) var(--form-control-transition-easing), box-shadow var(--form-control-transition-duration) var(--form-control-transition-easing), color var(--form-control-transition-duration) var(--form-control-transition-easing);--form-number-width: 8em;--form-select-padding-right: calc(var(--space-xl) + var(--space-s));--form-select-indicator-color: var(--form-control-color);--form-select-indicator-size: 0.35em;--form-select-indicator-offset-y: calc(50% - 0.12em);--form-select-indicator-first-offset-x: 1em;--form-select-indicator-second-offset-x: 0.65em;--form-multiselect-min-height: 9em;--form-multiselect-padding: var(--space-xs);--form-multiselect-background: var(--form-control-background);--form-multiselect-option-padding-y: calc(var(--space-xxs) + 1px);--form-multiselect-option-padding-x: var(--space-s);--form-multiselect-selected-background: color-mix( in srgb, var(--color-primary) 18%, var(--color-background) );--form-textarea-min-height: 8em;--form-color-input-size: var(--space);--form-color-input-padding: 0;--form-color-input-radius: var(--border-radius-round);--form-color-input-background: transparent;--form-color-input-transition: border-color var(--form-control-transition-duration) var(--form-control-transition-easing), box-shadow var(--form-control-transition-duration) var(--form-control-transition-easing), background-color var(--form-control-transition-duration) var(--form-control-transition-easing);--form-range-track-height: 0.45em;--form-range-track-background: color-mix(in srgb, currentColor 14%, transparent);--form-range-thumb-size: 1em;--form-range-thumb-offset: -0.275em;--form-range-thumb-border-color: var(--color-primary);--form-range-thumb-background: var(--color-background);--form-range-thumb-transition: box-shadow var(--form-control-transition-duration) var(--form-control-transition-easing), border-color var(--form-control-transition-duration) var(--form-control-transition-easing);--form-choice-size: 1.15em;--form-choice-border-color: color-mix(in srgb, currentColor 22%, transparent);--form-choice-background: var(--color-background);--form-choice-transition: border-color var(--form-control-transition-duration) var(--form-control-transition-easing), box-shadow var(--form-control-transition-duration) var(--form-control-transition-easing), background-color var(--form-control-transition-duration) var(--form-control-transition-easing);--form-checkbox-radius: calc(var(--border-radius-s) + 1px);--form-checkmark-width: 0.6em;--form-checkmark-height: 0.35em;--form-checkmark-stroke: 0.14em;--form-checkmark-color: var(--color-primary);--form-checkmark-offset-y: -0.03em;--form-checkmark-transition: transform var(--form-control-transition-duration) var(--form-control-transition-easing);--form-radio-dot-size: 0.5em;--form-radio-dot-color: var(--color-primary);--form-radio-transition: transform var(--form-control-transition-duration) var(--form-control-transition-easing);--form-choice-checked-border-color: var(--color-primary);--form-choice-file-width: min(100%, 42em);--form-choice-file-padding: 0.3em;--form-choice-file-border-color: var(--form-control-border-color);--form-choice-file-radius: var(--form-control-radius);--form-choice-file-background: var(--form-control-background);--form-button-line-height: 1.2;--form-button-padding: var(--space-xs);--form-button-padding-y: var(--form-button-padding);--form-button-padding-x: var(--form-button-padding);--form-button-radius: var(--border-radius-round);--form-button-background: var(--color-primary);--form-button-border-color: var(--color-primary);--form-button-color: var(--color-primary-contrast);--form-button-font-weight: 650;--form-button-transition: border-color var(--form-control-transition-duration) var(--form-control-transition-easing), box-shadow var(--form-control-transition-duration) var(--form-control-transition-easing), color var(--form-control-transition-duration) var(--form-control-transition-easing), background-color var(--form-control-transition-duration) var(--form-control-transition-easing);--form-output-line-height: var(--form-control-line-height);--form-output-padding: var(--space-xs);--form-output-padding-y: var(--form-output-padding);--form-output-padding-x: var(--form-output-padding);--form-output-border-color: color-mix(in srgb, currentColor 12%, transparent);--form-output-radius: var(--border-radius-m);--form-output-background: color-mix(in srgb, currentColor 3%, transparent);--form-output-color: var(--form-control-color);--form-output-font-weight: 600;--form-focus-border-color: var(--color-primary);--form-focus-ring-width: calc(var(--border-width-m) + 1px);--form-focus-ring-color: color-mix(in srgb, var(--color-primary) 22%, transparent);--form-placeholder-color: color-mix(in srgb, currentColor 42%, transparent);--form-disabled-opacity: 0.56}:where(button,input,select,textarea,progress,meter){accent-color:var(--form-accent-color)}:where(button,input,select,textarea,output){font:inherit}form:not([class]){width:var(--form-width);display:grid;gap:var(--form-gap)}form:not([class]) :where(p:not([class]),ul:not([class]),ol:not([class])){max-width:none}form:not([class]) :where(small:not([class])){display:block;font-size:var(--form-help-font-size);opacity:var(--form-help-opacity)}form:not([class]),form:not([class]) :not([class]),fieldset:not([class]),legend:not([class]),label:not([class]){margin-top:0}fieldset:not([class]){min-inline-size:0;margin:0;padding:var(--form-fieldset-padding);display:grid;gap:var(--form-fieldset-gap);border:var(--border-width-s) solid var(--form-fieldset-border-color);border-radius:var(--form-fieldset-radius);background-color:var(--form-fieldset-background)}legend:not([class]){padding:0 var(--form-legend-padding-x);font-weight:var(--form-legend-font-weight)}label:not([class]){font-weight:var(--form-label-font-weight)}label:not([class]):has(>:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class]))){display:grid;gap:var(--form-label-gap)}label:not([class]):has(+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class]))){display:block;margin-bottom:var(--form-label-inline-gap)}label:not([class]):has(>span:first-child+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class]))){width:min(100%,var(--form-control-width));max-width:100%;display:grid;grid-template-columns:minmax(0, max-content) minmax(0, 1fr);align-items:center;gap:var(--form-label-inline-gap)}label:not([class]):has(>span:first-child+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class])))>span:first-child{min-inline-size:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}label:not([class]):has(>span:first-child+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class])))>:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class])){width:100%;min-inline-size:0}label:not([class]):has(>span:first-child+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class]))+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class]))){width:min(100%,var(--form-control-width));max-width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:var(--form-label-inline-gap)}label:not([class]):has(>span:first-child+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class]))+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class])))>span:first-child{flex:0 1 auto;min-inline-size:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}label:not([class]):has(>span:first-child+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class]))+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class])))>:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]),select:not([class]),textarea:not([class])){flex:1 1 var(--form-inline-control-width);width:auto;min-inline-size:0}label:not([class]):has(>span:first-child+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class]))+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class])))>input[type=range]:not([class]){flex:1 1 var(--form-inline-range-width);width:auto;min-inline-size:0}label:not([class]):has(>span:first-child+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class]))+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class])))>:where(output:not([class])){flex:0 0 auto;width:auto}label:not([class]):has(>span:first-child+input[type=color]:not([class])+output:not([class]))>input[type=color]:not([class]){flex:0 0 var(--form-color-input-size);width:var(--form-color-input-size);min-inline-size:var(--form-color-input-size)}label:not([class]):has(>span:first-child+input[type=color]:not([class])+output:not([class]))>output:not([class]){flex:1 1 auto;min-inline-size:0}label:not([class]):has(>span:first-child+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class]))+:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class])))>input[type=number]:not([class]){flex:0 0 min(100%,var(--form-number-width));width:min(100%,var(--form-number-width))}label:not([class]):has(>input[type=checkbox]:not([class])),label:not([class]):has(>input[type=radio]:not([class])){display:grid;grid-template-columns:auto 1fr;align-items:start;gap:var(--form-choice-gap);font-weight:var(--form-choice-font-weight)}label:not([class]):has(>input[type=checkbox]:not([class]))>:not([class]):not(input),label:not([class]):has(>input[type=radio]:not([class]))>:not([class]):not(input){display:grid;gap:var(--form-label-gap)}:where(input:not([class]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]),select:not([class]),textarea:not([class])){width:var(--form-control-width);line-height:var(--form-control-line-height);padding:var(--form-control-padding-y) var(--form-control-padding-x);border:var(--border-width-s) solid var(--form-control-border-color);border-radius:var(--form-control-radius);background-color:var(--form-control-background);color:var(--form-control-color);transition:var(--form-control-transition)}select:not([class]){appearance:none;padding-right:var(--form-select-padding-right);background-image:linear-gradient(45deg, transparent 50%, var(--form-select-indicator-color) 50%),linear-gradient(135deg, var(--form-select-indicator-color) 50%, transparent 50%);background-position:calc(100% - var(--form-select-indicator-first-offset-x)) var(--form-select-indicator-offset-y),calc(100% - var(--form-select-indicator-second-offset-x)) var(--form-select-indicator-offset-y);background-size:var(--form-select-indicator-size) var(--form-select-indicator-size),var(--form-select-indicator-size) var(--form-select-indicator-size);background-repeat:no-repeat}select[multiple]:not([class]){appearance:auto;min-height:var(--form-multiselect-min-height);padding:var(--form-multiselect-padding);padding-right:var(--form-multiselect-padding);background-image:none;background-color:var(--form-multiselect-background);line-height:1.35}select[multiple]:not([class]) option{padding:var(--form-multiselect-option-padding-y) var(--form-multiselect-option-padding-x);border-radius:var(--border-radius-s);background:rgba(0,0,0,0)}select[multiple]:not([class]) option:checked{background:var(--form-multiselect-selected-background);color:inherit}textarea:not([class]){min-height:var(--form-textarea-min-height);resize:vertical}input[type=number]:not([class]){width:min(100%,var(--form-number-width));font-variant-numeric:tabular-nums}input[type=color]:not([class]){appearance:none;-webkit-appearance:none;box-sizing:border-box;inline-size:var(--form-color-input-size);block-size:var(--form-color-input-size);padding:var(--form-color-input-padding);border:var(--border-width-s) solid var(--form-control-border-color);border-radius:var(--form-color-input-radius);background-color:var(--form-color-input-background);overflow:hidden;cursor:pointer;justify-self:start;box-shadow:0 0 0 0 color-mix(in srgb, var(--color-primary) 0%, transparent);transition:var(--form-color-input-transition)}input[type=color]:not([class])::-webkit-color-swatch-wrapper{padding:0;border-radius:inherit}input[type=color]:not([class])::-webkit-color-swatch,input[type=color]:not([class])::-moz-color-swatch{border:none;border-radius:inherit}input[type=range]:not([class]){width:var(--form-control-width);margin:0;padding:0;appearance:none;border:none;background:rgba(0,0,0,0);cursor:pointer}input[type=range]:not([class])::-webkit-slider-runnable-track{height:var(--form-range-track-height);border-radius:var(--border-radius-round);background-color:var(--form-range-track-background)}input[type=range]:not([class])::-webkit-slider-thumb{appearance:none;inline-size:var(--form-range-thumb-size);block-size:var(--form-range-thumb-size);margin-top:var(--form-range-thumb-offset);border:var(--border-width-s) solid var(--form-range-thumb-border-color);border-radius:50%;background-color:var(--form-range-thumb-background);box-shadow:0 0 0 0 color-mix(in srgb, var(--color-primary) 0%, transparent);transition:var(--form-range-thumb-transition)}input[type=range]:not([class])::-moz-range-track{height:var(--form-range-track-height);border:none;border-radius:var(--border-radius-round);background-color:var(--form-range-track-background)}input[type=range]:not([class])::-moz-range-thumb{inline-size:var(--form-range-thumb-size);block-size:var(--form-range-thumb-size);border:var(--border-width-s) solid var(--form-range-thumb-border-color);border-radius:50%;background-color:var(--form-range-thumb-background);box-shadow:0 0 0 0 color-mix(in srgb, var(--color-primary) 0%, transparent);transition:var(--form-range-thumb-transition)}input[type=checkbox]:not([class]),input[type=radio]:not([class]){appearance:none;-webkit-appearance:none;inline-size:var(--form-choice-size);block-size:var(--form-choice-size);margin:0;border:var(--border-width-s) solid var(--form-choice-border-color);background-color:var(--form-choice-background);display:grid;place-content:center;cursor:pointer;transition:var(--form-choice-transition)}input[type=checkbox]:not([class]){border-radius:var(--form-checkbox-radius)}input[type=radio]:not([class]){border-radius:50%}input[type=checkbox]:not([class])::before{content:"";width:var(--form-checkmark-width);height:var(--form-checkmark-height);border-left:var(--form-checkmark-stroke) solid var(--form-checkmark-color);border-bottom:var(--form-checkmark-stroke) solid var(--form-checkmark-color);transform:translateY(var(--form-checkmark-offset-y)) rotate(-45deg) scale(0);transform-origin:center;transition:var(--form-checkmark-transition)}input[type=radio]:not([class])::before{content:"";width:var(--form-radio-dot-size);height:var(--form-radio-dot-size);border-radius:50%;background-color:var(--form-radio-dot-color);transform:scale(0);transition:var(--form-radio-transition)}input[type=checkbox]:not([class]):checked,input[type=radio]:not([class]):checked{border-color:var(--form-choice-checked-border-color)}input[type=checkbox]:not([class]):checked::before,input[type=radio]:not([class]):checked::before{transform:translateY(var(--form-checkmark-offset-y)) rotate(-45deg) scale(1)}input[type=radio]:not([class]):checked::before{transform:scale(1)}input[type=file]:not([class]){width:var(--form-choice-file-width);padding:var(--form-choice-file-padding);border:var(--border-width-s) solid var(--form-choice-file-border-color);border-radius:var(--form-choice-file-radius);background-color:var(--form-choice-file-background);color:var(--form-control-color)}input[type=file]:not([class])::file-selector-button,:where(button:not([class]),input[type=submit]:not([class]),input[type=button]:not([class]),input[type=reset]:not([class])){line-height:var(--form-button-line-height);padding:var(--form-button-padding-y) var(--form-button-padding-x);border:var(--border-width-s) solid var(--form-button-border-color);border-radius:var(--form-button-radius);background-color:var(--form-button-background);color:var(--form-button-color);font-weight:var(--form-button-font-weight);cursor:pointer;transition:var(--form-button-transition)}:where(button:not([class]),input[type=submit]:not([class]),input[type=button]:not([class]),input[type=reset]:not([class])){justify-self:start}output:not([class]){display:inline-flex;align-items:center;line-height:var(--form-output-line-height);padding:var(--form-output-padding-y) var(--form-output-padding-x);border:var(--border-width-s) solid var(--form-output-border-color);border-radius:var(--form-output-radius);background-color:var(--form-output-background);color:var(--form-output-color);font-weight:var(--form-output-font-weight)}:where(button:not([class]),input:not([class]):not([type=hidden]),select:not([class]),textarea:not([class]),output:not([class])):focus-visible{outline:none;border-color:var(--form-focus-border-color);box-shadow:0 0 0 var(--form-focus-ring-width) var(--form-focus-ring-color)}input[type=range]:not([class]):focus-visible::-webkit-slider-thumb,input[type=range]:not([class]):focus-visible::-moz-range-thumb{box-shadow:0 0 0 var(--form-focus-ring-width) var(--form-focus-ring-color)}:where(button:not([class]),input:not([class]),select:not([class]),textarea:not([class]))::placeholder{color:var(--form-placeholder-color);opacity:1}:where(button:not([class]),input:not([class]),select:not([class]),textarea:not([class])):disabled{cursor:not-allowed;opacity:var(--form-disabled-opacity)}.header__actions{display:flex;align-items:center;gap:var(--space-xs);flex:0 0 auto}.search-toggle{width:calc(var(--space)*1.85);height:calc(var(--space)*1.85);display:inline-flex;align-items:center;justify-content:center;padding:0;border:var(--border-width-s) solid color-mix(in srgb, currentColor 12%, transparent);border-radius:var(--border-radius-round);background:color-mix(in srgb, var(--color-background) 92%, var(--color-primary) 8%);color:inherit;cursor:pointer;transition:background-color 160ms ease,border-color 160ms ease,transform 160ms ease}.search-toggle:hover,.search-toggle:focus-visible{background:color-mix(in srgb, var(--color-primary) 14%, var(--color-background));border-color:color-mix(in srgb, var(--color-primary) 22%, transparent);transform:translateY(-1px)}.search-toggle__icon{width:.9rem;height:.9rem;display:inline-flex}.search-toggle__icon-asset{width:100%;height:100%}.search-shell{position:fixed;inset:0;z-index:80;display:grid;place-items:start center;padding:clamp(var(--space),5vh,var(--space-xl)*1.4) var(--space)}.search-shell[hidden]{display:none}.search-shell__backdrop{position:absolute;inset:0;border:0;background:color-mix(in srgb, var(--color-foreground) 18%, transparent);backdrop-filter:blur(10px);cursor:default}.search-shell__dialog{position:relative;width:min(100%,44rem)}.search-shell__panel{margin:0;display:grid;gap:var(--space-s);padding:clamp(var(--space),2vw,var(--space) + var(--space-xs));border:var(--border-width-s) solid color-mix(in srgb, currentColor 12%, transparent);border-radius:calc(var(--border-radius-l) + var(--border-radius-s));background:color-mix(in srgb, var(--color-background) 94%, var(--color-primary) 6%);box-shadow:0 calc(var(--space-xs) + var(--space-xxs)) calc(var(--space-xl)*1.4) color-mix(in srgb, var(--color-foreground) 12%, transparent)}.search-shell__title{margin:0;font-size:var(--font-size-s);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, currentColor 58%, transparent)}.search-shell__field{display:grid;grid-template-columns:auto minmax(0, 1fr) auto;align-items:center;gap:var(--space-xs);margin:0;padding:var(--space-xs) var(--space-s);border:var(--border-width-s) solid color-mix(in srgb, currentColor 12%, transparent);border-radius:calc(var(--border-radius-l) + var(--border-radius-s));background:color-mix(in srgb, var(--color-background) 96%, transparent)}.search-shell__field:focus-within{border-color:color-mix(in srgb, var(--color-primary) 26%, transparent);box-shadow:0 0 0 calc(var(--border-width-m) + 1px) color-mix(in srgb, var(--color-primary) 16%, transparent)}.search-shell__field-icon{width:1rem;height:1rem;display:inline-flex;color:color-mix(in srgb, currentColor 60%, transparent)}.search-shell__field-icon-asset{width:100%;height:100%}.search-shell__input{width:100%;min-width:0;padding:0;border:0;background:rgba(0,0,0,0);color:inherit;font:inherit;font-size:clamp(var(--font-size),1rem + .45vw,var(--font-size-h4));line-height:1.2;outline:none}.search-shell__input::placeholder{color:color-mix(in srgb, currentColor 42%, transparent)}.search-shell__close{width:calc(var(--space-xl) + var(--space-xxs));height:calc(var(--space-xl) + var(--space-xxs));display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--border-radius-round);background:rgba(0,0,0,0);color:color-mix(in srgb, currentColor 62%, transparent);cursor:pointer;transition:background-color 160ms ease,color 160ms ease}.search-shell__close:hover,.search-shell__close:focus-visible{background:color-mix(in srgb, currentColor 8%, transparent);color:inherit}.search-shell__close-icon{position:relative;width:.9rem;height:.9rem}.search-shell__close-icon::before,.search-shell__close-icon::after{content:"";position:absolute;top:calc(50% - var(--border-width-s)/2);left:0;width:100%;border-top:var(--border-width-s) solid currentColor}.search-shell__close-icon::before{transform:rotate(45deg)}.search-shell__close-icon::after{transform:rotate(-45deg)}.search-shell__hint{margin:0;font-size:var(--font-size-s);color:color-mix(in srgb, currentColor 62%, transparent)}.search-shell__results{min-height:0}.search-results{margin:0;padding:var(--space-xxs);border:var(--border-width-s) solid color-mix(in srgb, currentColor 10%, transparent);border-radius:var(--border-radius-l);background:color-mix(in srgb, var(--color-background) 98%, transparent)}.search-results__list{list-style:none;margin:0;padding:0;display:grid;gap:calc(var(--space-xxs) + 1px)}.search-results__item{margin:0}.search-results__link{display:grid;gap:calc(var(--space-xxs) + 1px);padding:var(--space-xs) var(--space-s);border-radius:var(--border-radius-m);color:inherit;text-decoration:none;background:rgba(0,0,0,0);transition:background-color 160ms ease,transform 160ms ease}.search-results__link:hover,.search-results__link:focus-visible{background:color-mix(in srgb, var(--color-primary) 10%, transparent);transform:translateY(-1px)}.search-results__title{font-weight:650}.search-results__excerpt{color:color-mix(in srgb, currentColor 70%, transparent);font-size:var(--font-size-s);line-height:1.5}.search-results__empty{margin:0;padding:var(--space-xs) var(--space-s);color:color-mix(in srgb, currentColor 70%, transparent)}html.search-open,body.search-open{overflow:hidden}@media screen and (max-width: 720px){.search-shell{padding:var(--space-s);align-items:start}.search-shell__panel{padding:var(--space-s)}.search-shell__field{padding:var(--space-xs);grid-template-columns:auto minmax(0, 1fr)}.search-shell__close{grid-column:2;justify-self:end;margin-top:var(--space-xxs)}.search-shell__hint{margin-top:calc(var(--space-xxs)*-1)}}.content{padding:0}.content :where(h1,h2,h3,h4,h5,h6,p,blockquote,figure,pre,article,ul,ol,dl,table,details,form,hr,img){margin:0}.content :where(h1,h2,h3,h4,h5,h6,p,blockquote,figure,pre,article,ul,ol,dl,table,details,form,hr,img)+:where(h1,h2,h3,h4,h5,h6,p,blockquote,figure,pre,article,ul,ol,dl,table,details,form,hr,img){margin-top:1em}.content :where(h1,h2,h3,h4,h5,h6,p,blockquote,figure,pre,ul,ol,dl,table,details,form,hr,img)+:where(h2,h3,h4){margin-top:var(--space-xl)}.content hr{margin:var(--space-xxl) 0;color:color-mix(in srgb, var(--color-foreground) 12%, transparent);background-color:color-mix(in srgb, var(--color-foreground) 12%, transparent);border:none;height:var(--border-width-s)}.content dl dt{font-weight:bold}.content dl dd{margin-top:var(--space-xs)}.content svg rect:not([fill]):not([style]):not([class]),.content svg path:not([fill]):not([style]):not([class]),.content svg circle:not([fill]):not([style]):not([class]){fill:currentColor}.content a{color:var(--color-foreground);text-decoration-line:underline;text-decoration-color:color-mix(in srgb, var(--color-secondary) 50%, transparent);text-decoration-thickness:2px;text-underline-offset:.16em}.content a:hover{color:var(--color-secondary)}.content a code{color:var(--color-foreground);text-decoration:none}.content a:has(>code){text-decoration:none}.content p:first-of-type:has(+p){font-size:var(--font-size-lead);line-height:1.4;max-width:var(--content-lead-width, 42ch)}.content p{max-width:var(--content-copy-width, 72ch);opacity:.9}.content h1+p,.content h1+figure+p{margin-top:var(--content-inline-gap, var(--space-l))}.content h6+h1,.content h6+h2,.content h6+h3,.content h6+h4,.content h6+h5{margin-top:0}.content img{max-width:100%;margin-left:0;border-radius:0}.content h1{margin:0}.content pre{margin-left:0;margin-right:0;overflow:auto}.content blockquote{margin-left:0;padding-left:var(--space);border-left:var(--border-width-m) solid var(--color-foreground)}.content article{padding:var(--space-l);border:var(--border-width-s) solid color-mix(in srgb, currentColor 12%, transparent);border-radius:var(--border-radius-m);background-color:color-mix(in srgb, currentColor 2%, transparent)}.content article>:first-child{margin-top:0}.content .article-block{--article-background-default: color-mix( in srgb, currentColor 2%, transparent );--article-text-default: inherit;background-color:var(--article-color, var(--article-background-default));color:var(--article-color-contrast, var(--article-text-default));border-color:color-mix(in srgb, currentColor 12%, transparent)}.content .article-block a{color:inherit;text-decoration-color:color-mix(in srgb, currentColor 32%, transparent)}.content .article-block__header{display:grid;gap:var(--space-xs);margin-bottom:var(--space)}.content .article-block__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs) var(--space-s);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;opacity:.82}.content .article-block__type,.content .article-block__subtitle,.content .article-block__date,.content .article-block__description{margin:0}.content .article-block__type{padding:.3em .7em;border-radius:999px;background-color:color-mix(in srgb, currentColor 14%, transparent);font-weight:700;opacity:1}.content .article-block__title{margin:0;line-height:1.1}.content .article-block__description{max-width:var(--content-copy-width, 72ch);opacity:.88}.content .article-block__content>:first-child{margin-top:0}.content details{padding:calc(var(--space-s) + var(--space-xs)) var(--space);border:var(--border-width-s) solid color-mix(in srgb, currentColor 12%, transparent);border-radius:var(--border-radius-m);background-color:color-mix(in srgb, currentColor 2%, transparent)}.content details>:first-child{margin-top:0}.content details>:not(summary){margin-top:var(--space)}.content summary{list-style:none;display:flex;align-items:center;gap:var(--space-s);cursor:pointer;font-weight:650}.content summary::-webkit-details-marker{display:none}.content summary::before{content:"";width:.55em;height:.55em;flex:0 0 auto;border-right:var(--border-width-s) solid currentColor;border-bottom:var(--border-width-s) solid currentColor;transform:translateY(-0.08em) rotate(45deg);opacity:.7;transition:transform 160ms ease,opacity 160ms ease}.content details[open]>summary::before{transform:translateY(0.08em) rotate(225deg);opacity:1}.content mark{padding:.1em .25em;border-radius:var(--border-radius-s);background-color:color-mix(in srgb, var(--color-primary) 24%, transparent);color:inherit}.content kbd{display:inline-block;padding:.1em .4em;border:var(--border-width-s) solid color-mix(in srgb, currentColor 16%, transparent);border-bottom-width:var(--border-width-m);border-radius:var(--border-radius-s);background-color:color-mix(in srgb, currentColor 4%, transparent);font-size:var(--font-size-s);line-height:1.2;font-family:Consolas,Monaco,"Andale Mono","Ubuntu Mono",monospace}.content abbr[title]{cursor:help;text-decoration:underline dotted color-mix(in srgb, currentColor 35%, transparent);text-underline-offset:.16em}.content sup,.content sub{font-size:.75em;line-height:0}.content figure{margin-left:0;margin-right:0}.content figure>:first-child{margin-top:0}.content figcaption{font-size:var(--font-size-s);opacity:.72}.content progress,.content meter{width:min(100%,20em);height:.75em}.language{--switch-segment-height: calc(var(--space) * 1.7)}.language,.language__item{list-style-type:none;margin:0;padding:0}.language{display:flex;align-items:center;gap:var(--language-gap, var(--space-xxs));padding:var(--space-xxs);border-radius:var(--border-radius-m);background:color-mix(in srgb, var(--color-foreground) 16%, var(--color-background))}.language__item{display:flex}.language__item--active .language__link{opacity:1;background:var(--color-background);color:var(--color-foreground);box-shadow:0 .2em .75em color-mix(in srgb, var(--color-foreground) 18%, transparent)}.language__link{display:inline-flex;align-items:center;justify-content:center;line-height:1.2;color:inherit;font-weight:600;font-size:var(--font-size-xs);text-decoration:none;text-transform:uppercase;text-align:center;opacity:1;border-radius:var(--border-radius-s);color:color-mix(in srgb, var(--color-foreground) 68%, transparent);min-width:2.5em;padding:0 var(--space-xs);min-height:var(--switch-segment-height);transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}.language__link:hover{color:var(--color-foreground)}.archive--section{padding:var(--space-xxl) 0 0;border-top:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent)}.archive-grid{list-style:none;margin:var(--space-xl) 0 0;padding:0;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:var(--space) var(--space)}.archive-grid--blog{grid-template-columns:repeat(auto-fit, minmax(var(--archive-column-min-width, calc(var(--font-size) * 20)), 1fr));gap:var(--space-xl)}@media screen and (max-width: 840px){.archive-grid{grid-template-columns:1fr}}.section--related .content{margin-bottom:var(--space-xl)}.archive-card{--archive-card-background-default: color-mix( in srgb, var(--color-background) 95%, var(--color-foreground) 5% );--archive-card-text-color: var(--section-text-color, var(--color-foreground));--archive-card-background: var( --section-background-color, var(--archive-card-background-default) );--archive-card-background-hover: color-mix( in srgb, var(--archive-card-background) 92%, var(--archive-card-text-color) 8% );margin:0;border:none;border-radius:var(--border-radius-m);background-color:var(--archive-card-background);color:var(--archive-card-text-color);overflow:hidden;box-shadow:0 var(--space-xxs) var(--space-s) color-mix(in srgb, var(--color-foreground) 8%, transparent);transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease}.archive-card__link{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:var(--card-gap, var(--space));height:100%;padding:var(--card-padding, var(--space));text-decoration:none;color:var(--section-text-color);transition:background-color .2s ease,opacity .2s ease}.archive-card:hover{background-color:var(--archive-card-background-hover);box-shadow:0 var(--space-xs) calc(var(--space)*1.1) color-mix(in srgb, var(--color-foreground) 12%, transparent);transform:translateY(calc(var(--space-xxs) * -1))}.archive-card__link:hover{opacity:1}.archive-card__media{display:flex;align-items:center;justify-content:center}.archive-card__media--icon{width:var(--card-icon-size, calc(var(--space) * 4.5));height:var(--card-icon-size, calc(var(--space) * 4.5));border-radius:var(--border-radius-m);background-color:color-mix(in srgb, currentColor 12%, transparent)}.archive-card__media--image{min-height:var(--card-media-min-height, calc(var(--space) * 12));overflow:hidden;margin-bottom:var(--space)}.archive-card__icon{width:var(--card-icon-inner-size, calc(var(--space) * 1.6));height:var(--card-icon-inner-size, calc(var(--space) * 1.6));object-fit:contain;opacity:1}.archive-card__icon,.archive-card__icon>svg{display:block;width:var(--card-icon-inner-size, calc(var(--space) * 1.6));height:var(--card-icon-inner-size, calc(var(--space) * 1.6))}.archive-card__image{display:block;width:100%;height:100%;object-fit:cover}.archive-card__body{display:grid;gap:var(--card-row-gap, var(--space-xs));padding:0}.archive-card__title,.archive-card__meta,.archive-card__excerpt{margin:0}.archive-card__title{font-size:var(--font-size-l);line-height:1.2;color:inherit}.archive-card__meta{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;opacity:.6}.archive-card__excerpt{opacity:.84;max-width:var(--card-copy-width, 60ch);color:color-mix(in srgb, currentColor, transparent 18%)}.archive-card--blog{border:none;background:rgba(0,0,0,0)}.archive-card--blog .archive-card__link{grid-template-columns:1fr;gap:var(--card-blog-gap, var(--space))}.archive-card--blog .archive-card__media--image{justify-content:flex-start}.archive-card--blog .archive-card__body{gap:var(--space-xs)}.section.tags{background-color:color-mix(in srgb, var(--color-background) 94%, var(--color-foreground) 6%);padding:var(--space-xl) 0}.tag__list{display:flex;align-items:center;justify-content:center;list-style-type:none;margin:0;padding:0;flex-wrap:wrap;gap:var(--space-s)}.tag__link{text-decoration:none;border-bottom:var(--border-width-s) solid rgba(0,0,0,0);padding:var(--tag-padding-y, var(--space-xxs)) 0;color:inherit;font-size:var(--font-size-s)}.tag__link::before{content:"#";opacity:.55}.tag__link:hover{border-bottom-color:currentColor}@view-transition{navigation:auto}@keyframes view-enter{from{opacity:0;transform:translateY(1rem) scale(0.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes view-exit{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-0.75rem) scale(0.99)}}::view-transition-group(root){animation-duration:320ms;animation-timing-function:cubic-bezier(0.22, 1, 0.36, 1)}::view-transition-group(site-header),::view-transition-group(site-footer),::view-transition-group(navigation-links),::view-transition-old(site-header),::view-transition-new(site-header),::view-transition-old(site-footer),::view-transition-new(site-footer),::view-transition-old(navigation-links),::view-transition-new(navigation-links){animation:none}::view-transition-old(site-main){animation:view-exit 180ms ease both}::view-transition-new(site-main){animation:view-enter 280ms cubic-bezier(0.22, 1, 0.36, 1) both}::view-transition-group(navigation-pill){animation-duration:420ms;animation-timing-function:cubic-bezier(0.23, 1, 0.32, 1.1);overflow:clip;border-radius:var(--border-radius-m)}::view-transition-old(navigation-label),::view-transition-new(navigation-label){animation-duration:180ms}@media(prefers-reduced-motion: reduce){::view-transition-group(root),::view-transition-group(site-main),::view-transition-group(navigation-pill),::view-transition-old(site-main),::view-transition-new(site-main),::view-transition-old(navigation-label),::view-transition-new(navigation-label){animation:none}}.task-list{list-style-type:none;margin:0;padding:0}.task-list__label{align-items:center;display:flex}.task-list__label::before{content:"";display:block;width:1.5em;height:1.5em;border-radius:var(--border-radius-round);border:var(--border-width-m) solid color-mix(in srgb, var(--color-foreground) 25%, transparent);margin:var(--space-s);text-align:center;line-height:1.5em}.task-list__input{width:0;height:0;position:absolute}.task-list__input:checked~.task-list__label::before{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-contrast);content:"✓"}
