
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:var(--font-mono);--font-mono:"JetBrains Mono Variable", "JetBrains Mono", "JetBrains Mono Fallback Consolas", "JetBrains Mono Fallback Menlo", ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg:#060908;--color-surface:#0b0f0d;--color-raised:#111714;--color-fg-strong:#f2f5f3;--color-fg:#d8ddda;--color-muted:#8d9691;--color-subtle:#7e8782;--color-dim:#56605b;--color-line-faint:#121916;--color-line:#1f2824;--color-line-strong:#34403a;--color-accent:#50d890;--color-accent-dim:#2b7a52;--color-accent-ghost:#50d8901a;--color-alert:#f0b44c;--color-error:#ff8a7a;--color-scrim:#060908db;--text-micro:clamp(10px, calc(10px * var(--system-scale)), 13px);--text-micro--line-height:1.5;--text-label:clamp(10px, calc(11.5px * var(--system-scale)), 15px);--text-label--line-height:1.55;--text-body:clamp(11px, calc(13.5px * var(--system-scale)), 18px);--text-body--line-height:1.6;--text-reading:clamp(15px, calc(16.5px * var(--system-scale)), 20px);--text-reading--line-height:1.75;--text-lead:clamp(12.5px, calc(17px * var(--system-scale)), 23px);--text-lead--line-height:1.5;--text-role:clamp(12px, calc(17px * var(--system-scale)), 24px);--text-role--line-height:1.3;--text-title:clamp(22px, calc(32px * var(--system-scale)), 52px);--text-title--line-height:1.08;--text-headline:clamp(32px, calc(60px * var(--system-scale)), 104px);--text-headline--line-height:.98;--text-display:clamp(40px, calc(var(--display-base) * var(--system-scale)), 176px);--text-display--line-height:.92;--text-mega:clamp(46px, calc(9.2vw * var(--mega-factor)), 216px);--text-mega--line-height:.9;--tracking-label:.08em;--tracking-caps:.12em;--tracking-display:-.02em;--shadow-glow:0 0 1px #d8dddae6, 0 0 14px #d8ddda47, 0 0 42px #d8ddda1f;--shadow-glow-soft:0 0 18px #d8ddda29;--shadow-glow-accent:0 0 10px #50d89073;--shadow-panel:0 24px 80px -24px #000000e6, 0 0 0 1px var(--color-line-strong);--radius-none:0;--radius-full:9999px;--ease-system:cubic-bezier(.22, 1, .36, 1);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-step:steps(6, end)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{background:var(--color-bg);color:var(--color-fg);font-family:var(--font-mono);font-size:var(--text-body);line-height:var(--text-body--line-height);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-variant-ligatures:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent;interpolate-size:allow-keywords}body{background:var(--color-bg);min-height:100svh;color:var(--color-fg);isolation:isolate;overflow-x:clip}body:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(90deg,#d8ddda06 1px,#0000 1px),linear-gradient(#d8ddda06 1px,#0000 1px),radial-gradient(at 50% 38%,#50d89009,#0000 60%);background-size:48px 48px,48px 48px,100% 100%;position:fixed;inset:0;-webkit-mask-image:radial-gradient(at 50% 45%,#000 30%,#0000 85%);mask-image:radial-gradient(at 50% 45%,#000 30%,#0000 85%)}body:after{content:"";z-index:-1;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .6 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}::selection{color:var(--color-fg-strong);background:#50d89047}a{color:inherit;text-decoration:none}:where(h1,h2,h3,h4){text-wrap:balance}:where(p,li,dd,figcaption,blockquote){text-wrap:pretty}:where(img,video,svg,canvas){max-width:100%}:where(button,input,select,textarea){font:inherit;letter-spacing:inherit;color:inherit}:where(button){cursor:pointer}:where(code,kbd,samp,pre){font-family:var(--font-mono);font-variant-ligatures:none}:where(hr){border:0;border-top:1px solid var(--color-line)}:where(abbr[title]){-webkit-text-decoration:underline dotted var(--color-dim);-webkit-text-decoration:underline dotted var(--color-dim);text-decoration:underline dotted var(--color-dim);text-underline-offset:.2em;cursor:help}:focus-visible{outline:1px solid var(--color-accent);outline-offset:3px;box-shadow:0 0 0 4px #50d89029}:focus:not(:focus-visible){outline:none}:where([tabindex="-1"]):focus-visible{box-shadow:none;outline:none}::placeholder{color:var(--color-subtle);opacity:1}*{scrollbar-color:var(--color-line-strong) transparent;scrollbar-width:thin}}@layer components{.sr-only-soft{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:var(--gutter);z-index:100;font-size:var(--text-label);letter-spacing:var(--tracking-label);color:var(--color-bg);background:var(--color-fg);padding:.5em 1em;position:fixed;top:.6em;translate:0 -200%}.skip-link:focus-visible{translate:0}.label{font-size:var(--text-label);line-height:var(--text-label--line-height);letter-spacing:var(--tracking-label);text-transform:uppercase}.caps{letter-spacing:var(--tracking-caps);text-transform:uppercase}.eyebrow{font-size:var(--text-label);line-height:var(--text-label--line-height);letter-spacing:var(--tracking-label);color:var(--color-muted);flex-wrap:wrap;align-items:baseline;gap:.4em 1.6ch;margin:0;display:flex}.eyebrow>:where(.eyebrow__cmd){text-transform:none;letter-spacing:.02em;color:var(--color-subtle)}.display{letter-spacing:var(--tracking-display);color:var(--color-fg);text-transform:uppercase;text-wrap:balance;margin:0;font-weight:600;line-height:.92}.glow{text-shadow:var(--shadow-glow)}.tnum{font-variant-numeric:tabular-nums}.prompt,.prompt--muted{color:var(--color-subtle)}.cursor-block{vertical-align:-.02em;width:.6em;height:.86em;box-shadow:var(--shadow-glow);background:currentColor;margin-left:.06em;animation:1.06s step-end infinite cursor-blink;display:inline-block}@keyframes cursor-blink{50%{opacity:0}}.link{color:var(--color-fg);text-decoration:underline;-webkit-text-decoration-color:var(--color-line-strong);-webkit-text-decoration-color:var(--color-line-strong);text-decoration-color:var(--color-line-strong);text-underline-offset:.22em;transition:color var(--dur-fast) var(--ease-system), text-decoration-color var(--dur-fast) var(--ease-system);text-decoration-thickness:1px}.link:is(:hover,:focus-visible){color:var(--color-fg-strong);text-decoration-color:currentColor}.shell{width:100%;max-width:calc(var(--content-max) + 2 * var(--gutter));padding-inline:max(var(--gutter), env(safe-area-inset-left)) max(var(--gutter), env(safe-area-inset-right));margin-inline:auto}.grid-12{grid-template-columns:repeat(var(--grid-cols), minmax(0, 1fr));column-gap:var(--grid-gap);row-gap:var(--space-l);display:grid}.grid-lines{isolation:isolate;position:relative}.grid-lines:before{content:"";inset:0 calc(-1 * var(--grid-gap)) 0 0;z-index:-1;pointer-events:none;background:linear-gradient(var(--color-line-faint), var(--color-line-faint)) calc(100% - var(--grid-gap)) 0 / 1px 100% no-repeat, linear-gradient(to right, var(--color-line-faint) 1px, transparent 1px) 0 0 / calc(100% / var(--grid-cols)) 100%;position:absolute}.section-y{padding-block:var(--section-y)}.hairline{background:var(--tick-img) 0 0 / 9px 9px no-repeat, var(--tick-img) 100% 0 / 9px 9px no-repeat, linear-gradient(var(--color-line), var(--color-line)) 0 4px / 100% 1px no-repeat;border:0;height:9px;margin:0;display:block;position:relative;translate:0 -4px}.hairline--strong{background:var(--tick-img) 0 0 / 9px 9px no-repeat, var(--tick-img) 100% 0 / 9px 9px no-repeat, linear-gradient(var(--color-line-strong), var(--color-line-strong)) 0 4px / 100% 1px no-repeat}.frame{border:1px solid var(--color-line);position:relative}.frame:before,.frame:after{content:"";background:var(--tick-img) center / 9px 9px no-repeat;pointer-events:none;width:9px;height:9px;position:absolute}.frame:before{top:-5px;left:-5px}.frame:after{bottom:-5px;right:-5px}.kv{border-top:1px solid var(--color-line);margin:0;display:grid}.kv>div{border-bottom:1px solid var(--color-line);grid-template-columns:minmax(8ch,.32fr) minmax(0,1fr);gap:.3em 2ch;padding:.7em 0;display:grid}.kv dt{color:var(--color-subtle)}.kv dd{color:var(--color-fg);min-width:0;margin:0}.cmd-link{border:1px solid var(--color-line-strong);min-height:2.9em;font-size:var(--text-label);letter-spacing:.06em;text-align:center;color:var(--color-fg);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-system), background-color var(--dur-fast) var(--ease-system), color var(--dur-fast) var(--ease-system);background:0 0;justify-content:center;align-items:center;padding:0 1.6ch;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.cmd-link--compact{min-height:2.4em;padding:0 1.2ch}.cmd-link--large{min-height:3.4em;font-size:var(--text-body);padding:0 2.2ch}.cmd-link--block{width:100%;display:flex}.cta-row{align-items:center;gap:var(--space-xs) var(--space-s);flex-wrap:wrap;display:flex}@media (width<=479.98px){.cta-row{grid-template-columns:minmax(0,1fr);display:grid}.cta-row>*{width:100%;display:flex}}.cmd-link--compact .cmd-link__arrow{display:none}.cmd-link--solid{background:var(--color-fg);border-color:var(--color-fg);color:var(--color-bg)}.cmd-link--bare{border-color:#0000;min-height:0;padding:.2em 0}.cmd-link:is(:hover,:focus-visible){border-color:var(--color-muted)}.cmd-link--bare:is(:hover,:focus-visible){border-color:#0000}.cmd-link:is(.cmd-link--ghost,.cmd-link--bare):is(:hover,:focus-visible){color:var(--color-fg-strong)}.cmd-link--solid:is(:hover,:focus-visible){background:var(--color-fg-strong);border-color:var(--color-fg-strong)}.cmd-link__labels{justify-items:center;display:grid}.cmd-link__label{white-space:nowrap;grid-area:1/1;align-items:center;gap:1.5ch;display:inline-flex}.cmd-link__label[data-state=command],.cmd-link__label[data-state=active],.cmd-link__label[data-state=done],.cmd-link[data-mode=active] .cmd-link__label[data-state=idle],.cmd-link[data-mode=done] .cmd-link__label[data-state=idle],.cmd-link:is(:hover,:focus-visible) .cmd-link__label[data-state=idle]{opacity:0}.cmd-link__label[data-state=command]{clip-path:inset(0 100% 0 0);gap:0}.cmd-link:is(:hover,:focus-visible):not([data-mode],:disabled,[aria-disabled=true]) .cmd-link__label[data-state=command]{opacity:1;clip-path:inset(0);transition:clip-path calc(var(--n,12) * 12ms) steps(var(--n,12), end)}.cmd-link[data-mode=active] .cmd-link__label[data-state=active],.cmd-link[data-mode=done] .cmd-link__label[data-state=done]{opacity:1}.cmd-link[data-mode=active]{cursor:progress;border-color:var(--color-accent);color:var(--color-accent)}.cmd-link[data-mode=done]{border-color:var(--color-accent);color:var(--color-accent)}.cmd-link--bare:is([data-mode=active],[data-mode=done]){border-color:#0000}.cmd-link--solid:is([data-mode=active],[data-mode=done]){background:var(--color-accent);border-color:var(--color-accent);color:var(--color-bg)}.cmd-link:is(:disabled,[aria-disabled=true]){border-style:dashed;border-color:var(--color-line-strong);color:var(--color-subtle);cursor:not-allowed;background:0 0}.cmd-link:is(:disabled,[aria-disabled=true]) .cmd-link__label[data-state=idle]{opacity:1}.cmd-link:is(:disabled,[aria-disabled=true]) .cmd-link__label:not([data-state=idle]){opacity:0}.cmd-link__caret{vertical-align:-.15em;background:currentColor;width:.55em;height:1.05em;margin-left:.4ch;display:inline-block}@media (prefers-reduced-motion:no-preference){.cmd-link:is(:hover,:focus-visible):not([data-mode]) .cmd-link__caret{animation:.9s step-end .3s infinite cursor-blink}}.cmd-link__arrow{flex:none;width:1.15em;height:.75em}@media (pointer:coarse){.cmd-link,.cmd-link--compact{min-height:max(2.9em,44px)}.cmd-link--bare{min-height:44px}}.prose{counter-reset:prose-h2;max-width:var(--measure);font-size:var(--text-reading);line-height:var(--text-reading--line-height);letter-spacing:0;hanging-punctuation:first allow-end;color:#cbd0cd}@supports (color:color-mix(in lab, red, red)){.prose{color:color-mix(in srgb, var(--color-fg) 94%, var(--color-bg))}}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}.prose :where(p){margin:0 0 1.15em}.prose--lede>p:first-of-type{color:var(--color-fg);font-size:1.12em;line-height:1.6}.prose :where(h2){--ph-row:calc(var(--text-label) * 1.4);counter-increment:prose-h2;margin:var(--space-2xl) 0 .7em;padding-top:calc(var(--ph-row) + var(--space-s));background:var(--tick-img) 100% calc(var(--ph-row) / 2 - 4px) / 9px 9px no-repeat, linear-gradient(var(--color-line), var(--color-line)) 0 calc(var(--ph-row) / 2) / calc(100% - 4px) 1px no-repeat;font-size:var(--text-title);font-weight:600;line-height:var(--text-title--line-height);letter-spacing:-.01em;text-wrap:balance;color:var(--color-fg);position:relative}.prose :where(h2):before{content:"[" counter(prose-h2, decimal-leading-zero) "]";background:var(--color-bg);font-size:var(--text-label);letter-spacing:var(--tracking-label);font-variant-numeric:tabular-nums;color:var(--color-fg);padding-right:1.4ch;font-weight:400;line-height:1.4;position:absolute;top:0;left:0}.prose>:where(h2):first-child{margin-top:0}.prose :where(h3){text-indent:-3ch;color:var(--color-fg);margin:2.2em 0 .8em;padding-left:3ch;font-size:1em;font-weight:600;line-height:1.4}.prose :where(h3):before{content:"// ";color:var(--color-dim);font-weight:400}.prose :where(h4){font-size:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-muted);margin:1.8em 0 .6em;font-weight:500}.prose :where(a){color:var(--color-fg);text-decoration:underline;-webkit-text-decoration-color:var(--color-line-strong);-webkit-text-decoration-color:var(--color-line-strong);text-decoration-color:var(--color-line-strong);text-underline-offset:.22em;transition:color var(--dur-fast) var(--ease-system), text-decoration-color var(--dur-fast) var(--ease-system);text-decoration-thickness:1px}.prose :where(a):is(:hover,:focus-visible){color:var(--color-fg-strong);text-decoration-color:currentColor}.prose :where(strong,b){color:var(--color-fg-strong);font-weight:600}.prose :where(em,i){color:var(--color-fg-strong);font-style:normal;font-weight:550}.prose :where(ul,ol){margin:0 0 1.3em;padding:0;list-style:none}.prose :where(li){margin:0 0 .65em;padding-left:2.6ch;position:relative}.prose :where(ul)>li:before{content:">";color:var(--color-subtle);position:absolute;left:0}.prose :where(ol){counter-reset:prose-ol}.prose :where(ol)>li{counter-increment:prose-ol;padding-left:5.2ch}.prose :where(ol)>li:before{content:"[" counter(prose-ol, decimal-leading-zero) "]";color:var(--color-subtle);font-variant-numeric:tabular-nums;position:absolute;left:0}.prose :where(li)>:where(ul,ol){margin:.6em 0 0}.prose :where(li)>:where(p){margin:0 0 .5em}.prose :where(code):not(pre code),.prose :where(kbd){border:1px solid var(--color-line);background:var(--color-surface);color:var(--color-fg);overflow-wrap:anywhere;padding:.04em .45ch;font-size:.88em}.prose :where(kbd){border-color:var(--color-line-strong);border-bottom-width:2px}.prose :where(pre){border:1px solid var(--color-line);background:var(--color-surface);tab-size:2;color:var(--color-fg);margin:1.6em 0;padding:1.1em 1.4ch;font-size:.86em;line-height:1.65;position:relative;overflow-x:auto}.prose :where(pre code){font-size:inherit;background:0 0;border:0;padding:0}.prose :where(blockquote){border-left:1px solid var(--color-line-strong);color:var(--color-fg);margin:1.8em 0;padding:.2em 0 .2em 2ch}.prose :where(blockquote)>:where(p):before{content:"> ";color:var(--color-subtle)}.prose :where(blockquote) :where(cite,footer){font-size:var(--text-label);color:var(--color-subtle);margin-top:.6em;font-style:normal;display:block}.prose :where(hr){background:var(--tick-img) 50% 0 / 9px 9px no-repeat, linear-gradient(var(--color-line), var(--color-line)) 0 4px / 100% 1px no-repeat;border:0;height:9px;margin:2.6em 0}.prose :where(table){border-collapse:collapse;font-variant-numeric:tabular-nums;width:max-content;max-width:100%;margin:1.8em 0;font-size:.88em;display:block;overflow-x:auto}.prose :where(th,td){border-bottom:1px solid var(--color-line);text-align:left;vertical-align:top;padding:.6em 2ch .6em 0}.prose :where(th){font-size:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-subtle);border-bottom-color:var(--color-line-strong);white-space:nowrap;font-weight:500}.prose :where(mark){background:var(--color-accent-ghost);color:var(--color-fg-strong);padding:0 .2ch}.prose :where(figure){margin:2.2em 0;position:relative}.prose :where(figure img),.prose>:where(p)>:where(img){border:1px solid var(--color-line);background:radial-gradient(circle, var(--color-line) 1px, transparent 1.5px) 0 0 / 12px 12px, var(--color-surface);width:100%;height:auto;display:block}.prose :where(figure):before,.prose :where(figure):after{content:"";z-index:1;background:var(--tick-img) center / 9px 9px no-repeat;pointer-events:none;width:9px;height:9px;position:absolute}.prose :where(figure):before{top:-4px;left:-4px}.prose :where(figure):after{top:-4px;right:-4px}.prose :where(figcaption){font-size:var(--text-label);color:var(--color-subtle);grid-template-columns:auto minmax(0,1fr);column-gap:1.6ch;margin-top:.9em;line-height:1.6;display:grid}.prose :where(figcaption) :where(.fig-n){color:var(--color-muted);font-variant-numeric:tabular-nums}.prose [data-zoomable],[data-lightbox] [data-zoomable]{cursor:zoom-in}@media (width>=1100px){.prose--breakout :where(figure){margin-inline:calc(-1 * var(--space-xl)) calc(-1 * var(--space-xl))}}.page{flex-direction:column;min-height:100svh;display:flex;position:relative}.page__nav{padding:env(safe-area-inset-top) max(var(--gutter), env(safe-area-inset-right)) 0 max(var(--gutter), env(safe-area-inset-left))}.page__main{flex:1 0 auto}.page__main:focus{outline:none}.lb-wrap{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.lb-wrap:focus-visible{outline-offset:2px}.lb-wrap{position:relative}.lb-wrap:after{content:"[ + ]";top:var(--space-xs);right:var(--space-xs);border:1px solid var(--color-line-strong);background:var(--color-scrim);font-size:var(--text-micro);letter-spacing:.06em;color:var(--color-fg);opacity:0;transition:opacity var(--dur-fast) var(--ease-system), translate var(--dur-fast) var(--ease-system);pointer-events:none;padding:.35em .8ch;line-height:1.4;position:absolute;translate:0 -2px}.lb-wrap:is(:hover,:focus-visible):after{opacity:1;border-color:var(--color-muted);translate:0}@media (hover:none){.lb-wrap:after{opacity:.85;translate:0}}@media print{.lb-wrap:after{display:none}}.lb{width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--color-fg);background:#030504f5;border:0;margin:0;padding:0;overflow:hidden}.lb[open]{grid-template-rows:auto minmax(0,1fr);display:grid}.lb::backdrop{background:#030504e6}.lb__bar{padding:max(var(--space-s), env(safe-area-inset-top)) var(--gutter) var(--space-s);border-bottom:1px solid var(--color-line);font-size:var(--text-label);letter-spacing:var(--tracking-label);color:var(--color-muted);align-items:center;gap:2ch;display:flex}.lb__count{font-variant-numeric:tabular-nums;margin:0}.lb__fig{color:var(--color-fg)}.lb__hint{color:var(--color-subtle);margin:0 0 0 auto}.lb[data-single] .lb__hint,.lb[data-single] .lb__nav{display:none}.lb__close{min-height:44px;color:var(--color-fg);cursor:pointer;background:0 0;border:0;align-items:center;margin-left:auto;padding:0 0 0 1ch;display:inline-flex}.lb__hint+.lb__close{margin-left:0}.lb__close:is(:hover,:focus-visible){color:var(--color-fg-strong)}.lb__stage{justify-items:center;gap:var(--space-s);min-height:0;padding:var(--space-m) var(--gutter) max(var(--space-m), env(safe-area-inset-bottom));grid-template-rows:minmax(0,1fr) auto;margin:0;display:grid}.lb__img{object-fit:contain;border:1px solid var(--color-line-strong);background:#000;align-self:center;width:auto;max-width:100%;height:auto;max-height:100%}.lb__cap{max-width:80ch;font-size:var(--text-label);text-align:center;color:var(--color-muted);line-height:1.6}.lb__nav{min-height:44px;font-size:var(--text-label);color:var(--color-muted);cursor:pointer;background:0 0;border:0;padding:1em 1ch;position:absolute;top:50%;translate:0 -50%}.lb__nav--prev{left:max(4px, calc(var(--gutter) * .25))}.lb__nav--next{right:max(4px, calc(var(--gutter) * .25))}.lb__nav:is(:hover,:focus-visible){color:var(--color-fg-strong)}@media (width<=639.98px){.lb__hint{display:none}.lb__hint+.lb__close{margin-left:auto}.lb__nav{top:auto;bottom:max(var(--space-xs), env(safe-area-inset-bottom));translate:none}.lb__stage{padding-bottom:calc(44px + var(--space-s) + max(var(--space-xs), env(safe-area-inset-bottom)))}.lb[data-single] .lb__stage{padding-bottom:max(var(--space-m), env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:no-preference){.lb[open][data-animate] .lb__img{animation:.42s steps(7,end) both lb-on}.lb[open][data-animate]{animation:lb-fade var(--dur-fast) var(--ease-system) both}.lb[open][data-closing] .lb__img{animation:.2s steps(4,end) both lb-off}.lb[open][data-closing]{animation:lb-fade-out var(--dur-base) var(--ease-system) both}}@keyframes lb-on{0%{clip-path:inset(49.5% 0)}to{clip-path:inset(0)}}@keyframes lb-fade{0%{opacity:0}}@keyframes lb-off{0%{clip-path:inset(0)}to{clip-path:inset(49.5% 0)}}@keyframes lb-fade-out{to{opacity:0}}.md-fig{margin:1.8em 0}.md-fig>figcaption{font-size:var(--text-label);color:var(--color-subtle);grid-template-columns:auto minmax(0,1fr);column-gap:1.6ch;margin-top:.9em;line-height:1.6;display:grid}.md-fig .fig-n{color:var(--color-muted);font-variant-numeric:tabular-nums}}@layer utilities{.\@container{container-type:inline-size}.\!visible{visibility:visible!important}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded-full{border-radius:var(--radius-full)}.border{border-style:var(--tw-border-style);border-width:1px}.text-headline{font-size:var(--text-headline);line-height:var(--tw-leading,var(--text-headline--line-height))}.text-mega{font-size:var(--text-mega);line-height:var(--tw-leading,var(--text-mega--line-height))}.text-wrap{text-wrap:wrap}.lowercase{text-transform:lowercase}.underline{text-decoration-line:underline}.accent-dim{accent-color:var(--color-dim)}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-greek-wght-normal.Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback Consolas;src:local(Consolas);size-adjust:109.1%;ascent-override:93.5%;descent-override:27.5%;line-gap-override:0%}@font-face{font-family:JetBrains Mono Fallback Menlo;src:local(Menlo);size-adjust:99.7%;ascent-override:102.3%;descent-override:30.1%;line-gap-override:0%}:root{--system-scale:1;--vw:1vw;--vh:1vh;--display-base:64px;--mega-factor:1;--ascii-size:clamp(8px, calc(13px * var(--system-scale)), 16px);--color-ascii-hi:#e6ebe8;--color-ascii-lo:#688676;--gutter:clamp(16px, calc(36px * var(--system-scale)), 64px);--gap:clamp(10px, calc(24px * var(--system-scale)), 40px);--panel-pad:clamp(10px, calc(18px * var(--system-scale)), 28px);--nav-h:clamp(44px, calc(60px * var(--system-scale)), 84px);--tick:7px;--space-3xs:clamp(2px, calc(4px * var(--system-scale)), 6px);--space-2xs:clamp(4px, calc(8px * var(--system-scale)), 12px);--space-xs:clamp(6px, calc(12px * var(--system-scale)), 18px);--space-s:clamp(10px, calc(16px * var(--system-scale)), 24px);--space-m:clamp(14px, calc(24px * var(--system-scale)), 36px);--space-l:clamp(20px, calc(36px * var(--system-scale)), 56px);--space-xl:clamp(28px, calc(56px * var(--system-scale)), 88px);--space-2xl:clamp(40px, calc(88px * var(--system-scale)), 136px);--space-3xl:clamp(56px, calc(136px * var(--system-scale)), 208px);--section-y:var(--space-2xl);--grid-cols:12;--grid-gap:clamp(12px, calc(24px * var(--system-scale)), 40px);--content-max:1760px;--measure:68ch;--measure-narrow:52ch;--dur-instant:80ms;--dur-fast:.16s;--dur-base:.24s;--dur-slow:.48s;--dur-slower:.8s;--tick-img:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9'%3E%3Cpath d='M4.5 0v9M0 4.5h9' stroke='%238d9691' stroke-width='1'/%3E%3C/svg%3E");color-scheme:dark;accent-color:var(--color-accent)}@media (width>=640px) and (height>=480px),(width>=960px){:root{--display-base:88px;--ascii-size:clamp(5px, calc(6px * var(--system-scale)), 7px)}}@media (width>=900px){:root{--mega-factor:.82}}@media (width>=1200px) and (height>=560px){:root{--display-base:104px;--ascii-size:clamp(5px, calc(6.5px * var(--system-scale)), 7.5px)}}@media (prefers-reduced-motion:no-preference){html[data-fx-ready]:not(.boot-fallback) [data-fx]:not([data-fx-done]),html.js:not(.boot-fallback) [data-entrance]:not([data-played]) [data-fx]:not([data-fx-done]){opacity:0}html[data-fx-ready]:not(.boot-fallback) [data-fx]:not([data-fx-done]):focus-within{opacity:1}html[data-fx-ready]:not(.boot-fallback) [data-fx=rule]:not([data-fx-done]),html.js:not(.boot-fallback) [data-entrance]:not([data-played]) [data-fx=rule]:not([data-fx-done]){opacity:1;transform-origin:0;transform:scaleX(0)}}[data-fx=rule]{transform-origin:0}html:not(.js) :is([data-js-only],[data-palette-open]),html.js [data-no-js-only]{display:none!important}html[data-settled] .cursor-block,html[data-settled] .nav__cursor,html[data-settled] .boot__summary-caret{opacity:0;transition:opacity var(--dur-slow) var(--ease-system);animation:none}html[data-automation] :is(.cursor-block,.nav__cursor,.cmd-link__caret,.dot,.art-slot__canvas,.mq__track){animation:none!important}html[data-leaving] .page>:not(.page__nav){opacity:0;transition:opacity var(--dur-slow) var(--ease-system)}.transition-canvas,canvas[data-handoff]{z-index:60;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}html body .page>.page__nav{top:calc(-1 * var(--announce-h,0px));z-index:50;transition:background-color var(--dur-base) var(--ease-system), box-shadow var(--dur-base) var(--ease-system);position:sticky}html body .page>.page__nav[data-stuck]{background:#060908f2}@supports (color:color-mix(in lab, red, red)){html body .page>.page__nav[data-stuck]{background:color-mix(in srgb, var(--color-bg) 95%, transparent)}}html body .page>.page__nav[data-stuck]{backdrop-filter:blur(8px);box-shadow:0 1px 0 var(--color-line)}html{scroll-padding-top:calc(var(--sticky-h,var(--nav-h)) + 12px)}html:has(dialog[open][data-scroll-lock]){overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.cursor-block{animation:none}[data-fx]{clip-path:none!important;transform:none!important}}@media print{@page{margin:16mm 15mm 18mm}:root{color-scheme:light;--color-fg:#000;--color-fg-strong:#000;--color-muted:#333;--color-subtle:#444;--color-dim:#777;--color-line:#bbb;--color-line-faint:#ddd;--color-line-strong:#888;--color-accent:#000;--system-scale:1;--mega-factor:.5;--gutter:0px;--section-y:18pt;--sticky-h:0px}html,body{font-size:10pt;color:#000!important;background:#fff!important}*,:before,:after{box-shadow:none!important;text-shadow:none!important;transition:none!important;animation:none!important}body:before,body:after,canvas,dialog,[data-art-slot],[data-swarm-overlay],.transition-canvas,.skip-link,.page>.page__nav,[data-print=hide],pre[aria-hidden=true],.cmd-link{display:none!important}[data-fx],[data-entrance] *,[data-seq]{visibility:visible!important;clip-path:none!important;opacity:1!important;transform:none!important}.page,.page__main{height:auto!important;min-height:0!important;display:block!important;overflow:visible!important}.page__main :where(header,section,article,div){min-height:0!important}.page__main :where(header,section){margin-block-end:12pt;padding-block:0!important}.page__main:before{content:"wesli.dev  —  Wesli Miggels, AI developer / product engineer";letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #000;margin-bottom:14pt;padding-bottom:6pt;font-size:8pt;display:block}h1,h2,h3{break-after:avoid;color:#000!important}p,li{orphans:3;widows:3}img,figure,pre,blockquote,table,tr{break-inside:avoid}img{object-fit:contain;max-width:100%!important;max-height:120mm!important}.prose{max-width:none;font-size:10.5pt;line-height:1.55}.prose pre{white-space:pre-wrap;border-color:#999}.prose :where(code),img,figure,picture{background:0 0!important}.prose :where(code){border-color:#999}main a[href^=http]:not(.cmd-link):after{content:" <" attr(href) ">";color:#444;overflow-wrap:anywhere;font-size:.85em}main a[href^=\/]:not(.cmd-link):after{content:" <https://wesli.dev" attr(href) ">";color:#444;font-size:.85em}footer{break-before:avoid;border-top:1px solid #000}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.kbd-group[data-astro-cid-tga3kidj]{vertical-align:middle;font-size:var(--text-micro);white-space:nowrap;align-items:center;gap:.5ch;line-height:1;display:inline-flex}.kbd-combo[data-astro-cid-tga3kidj]{gap:.3ch;display:inline-flex}.kbd[data-astro-cid-tga3kidj]{border:1px solid var(--color-line-strong);background:var(--color-surface);min-width:2.2ch;height:1.9em;font:inherit;letter-spacing:.04em;text-transform:lowercase;color:var(--color-fg);border-bottom-width:2px;place-items:center;padding:0 .55ch;font-size:1em;display:inline-grid}.kbd-group--small[data-astro-cid-tga3kidj] .kbd[data-astro-cid-tga3kidj]{min-width:2ch;height:1.7em;padding:0 .45ch}.kbd-then[data-astro-cid-tga3kidj]{color:var(--color-subtle);letter-spacing:.04em}.kbd__cmd[data-astro-cid-tga3kidj]{width:1.15em;height:1.15em;display:none}html[data-platform=apple] .kbd__cmd[data-astro-cid-tga3kidj]{display:block}html[data-platform=apple] [data-astro-cid-tga3kidj][data-kbd-mod-text],html[data-platform=apple] .kbd-sr-other[data-astro-cid-tga3kidj],html:not([data-platform=apple]) .kbd-sr-apple[data-astro-cid-tga3kidj]{display:none}.pal{width:min(760px, calc(100vw - 2 * var(--gutter)));max-width:none;max-height:min(680px,100dvh - 18vh);color:var(--color-fg);background:0 0;border:0;margin:12vh auto auto;padding:0;overflow:visible}.pal[open]{display:flex}.pal::backdrop{backdrop-filter:blur(3px);background:#030504b8}.pal__frame{width:100%;max-height:inherit;border:1px solid var(--color-line-strong);background:color-mix(in srgb, var(--color-surface) 96%, transparent);grid-template-rows:auto minmax(0,1fr) auto;display:grid;position:relative;box-shadow:0 30px 120px -20px #000000f2,0 0 0 1px #0009}.pal__tick{z-index:2;width:1ch;font-size:var(--text-micro);text-align:center;color:var(--color-muted);pointer-events:none;line-height:1;position:absolute;translate:-50% -50%}.pal__tick--tl{top:0;left:0}.pal__tick--tr{top:0;left:100%}.pal__tick--bl{top:100%;left:0}.pal__tick--br{top:100%;left:100%}.pal__head{border-bottom:1px solid var(--color-line);align-items:center;gap:1.4ch;padding:0 1.4ch 0 2ch;display:flex}.pal__prompt{font-size:var(--text-lead);color:var(--color-subtle);flex:none}.pal__input{min-width:0;height:3.6em;font-size:var(--text-lead);letter-spacing:.01em;color:var(--color-fg-strong);caret-color:var(--color-accent);background:0 0;border:0;outline:none;flex:auto;padding:0}.pal__input:focus-visible{box-shadow:none;outline:none}.pal__close{min-height:44px;font-size:var(--text-label);letter-spacing:var(--tracking-label);color:var(--color-subtle);background:0 0;border:0;flex:none;align-items:center;padding:0 .4ch;display:inline-flex}.pal__close:is(:hover,:focus-visible){color:var(--color-fg-strong)}.pal__close-touch{display:none}@media (pointer:coarse){.pal__close-key{display:none}.pal__close-touch{display:inline}}.pal__body{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:min(19em,46dvh);overflow-y:auto}.pal__body:focus{outline:none}.pal__list{padding:.6em 0 .8em}.pal__group{font-size:var(--text-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-subtle);align-items:center;gap:1.4ch;padding:.9em 2ch .4em;display:flex}.pal__group:after{content:"";background:var(--color-line-faint);flex:auto;height:1px}.pal__opt{font-size:var(--text-body);color:var(--color-muted);cursor:pointer;grid-template-columns:4ch minmax(0,1fr) auto 1.5ch;align-items:baseline;column-gap:1.6ch;padding:.62em 1.2ch .62em 2ch;scroll-margin:2.4em 0;line-height:1.4;display:grid;position:relative}.pal__opt[aria-selected=true]{color:var(--color-fg-strong);background:linear-gradient(90deg,#50d89014,#0000 75%)}.pal__opt[aria-selected=true]:before{content:"";background:var(--color-accent);width:2px;box-shadow:var(--shadow-glow-accent);position:absolute;top:.35em;bottom:.35em;left:0}.pal__i{color:var(--color-subtle);font-variant-numeric:tabular-nums}.pal__opt[aria-selected=true] .pal__i{color:var(--color-muted)}.pal__t{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pal__t mark{color:var(--color-fg-strong);text-decoration:underline;text-decoration-color:var(--color-muted);text-underline-offset:.2em;background:0 0}.pal__pre{color:var(--color-subtle);margin-right:.6ch}.pal__p{font-size:var(--text-label);color:var(--color-subtle);margin-left:1.4ch}.pal__x{font-size:var(--text-label);white-space:normal;color:var(--color-subtle);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:.2em;line-height:1.5;display:-webkit-box;overflow:hidden}.pal__x mark{color:var(--color-fg);text-decoration:underline;text-decoration-color:var(--color-muted);text-underline-offset:.2em;background:0 0}.pal__c{font-size:var(--text-label);letter-spacing:.02em;color:var(--color-subtle);white-space:nowrap}.pal__opt[aria-selected=true] .pal__c{color:var(--color-fg)}.pal__enter{font-size:var(--text-label);color:#0000}.pal__opt[aria-selected=true] .pal__enter{color:var(--color-fg)}.pal__empty{font-size:var(--text-body);color:var(--color-subtle);padding:1.4em 2ch 1.6em}.pal__empty strong{color:var(--color-fg);font-weight:500}.pal__reply{color:var(--color-alert)}.pal__out{font-size:var(--text-body);white-space:normal;color:var(--color-alert);margin:0;padding:.1em 2ch .9em 7.6ch;line-height:1.55}.pal__out:before{content:"> ";color:var(--color-subtle)}@media (prefers-reduced-motion:no-preference){.pal__list[data-typed] .pal__opt{animation:.12s steps(4,end) both pal-row}.pal__out{animation:pal-row calc(var(--n,30) * 12ms) steps(var(--n,30), end) both}}@keyframes pal-row{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.pal__keys{padding:1em 2ch 1.4em}.pal__keys-title{font-size:var(--text-label);letter-spacing:var(--tracking-label);color:var(--color-muted);margin:0 0 1em}.pal__keys-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,38ch),1fr));gap:0 4ch;margin:0;display:grid}.pal__keys-list>div{border-bottom:1px solid var(--color-line-faint);font-size:var(--text-body);grid-template-columns:13ch minmax(0,1fr);align-items:center;gap:1.4ch;padding:.55em 0;display:grid}.pal__keys-list dd{color:var(--color-muted);margin:0}.pal__keys-note{font-size:var(--text-label);color:var(--color-subtle);margin:1.2em 0 0}.pal__foot{border-top:1px solid var(--color-line);font-size:var(--text-micro);letter-spacing:.04em;color:var(--color-subtle);justify-content:space-between;align-items:center;gap:2ch;padding:.7em 2ch;display:flex}.pal__hints{white-space:nowrap;flex-wrap:nowrap;gap:.4em 2.4ch;margin:0;display:flex}.pal__hints span{align-items:center;gap:.6ch;display:inline-flex}@media (width<=899.98px){.pal__hint-move{display:none!important}}.pal__hints kbd{border:1px solid var(--color-line-strong);min-width:2ch;height:1.7em;font:inherit;color:var(--color-fg);border-bottom-width:2px;place-items:center;padding:0 .45ch;display:inline-grid}.pal__status{text-align:right;letter-spacing:var(--tracking-label);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.pal__status[data-tone=done]{color:var(--color-accent)}.pal__status[data-tone=alert]{color:var(--color-alert)}@media (prefers-reduced-motion:no-preference){.pal[open][data-animate] .pal__frame{animation:.26s steps(6,end) both pal-build}.pal[open][data-animate]::backdrop{animation:pal-fade var(--dur-base) var(--ease-system) both}.pal[open][data-closing] .pal__frame{animation:.16s steps(4,end) both pal-fold}.pal[open][data-closing]::backdrop{animation:pal-fade-out var(--dur-fast) var(--ease-system) both}}@keyframes pal-build{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes pal-fade{0%{opacity:0}}@keyframes pal-fold{0%{clip-path:inset(0)}to{clip-path:inset(0 0 100%)}}@keyframes pal-fade-out{to{opacity:0}}@media (width<=639.98px){.pal{width:100%;height:100dvh;max-height:none;margin:0}.pal__frame{height:100%;padding-top:env(safe-area-inset-top);background:var(--color-bg);border:0}.pal__tick,.pal__hints{display:none}.pal__opt{grid-template-columns:3.4ch minmax(0,1fr) 2ch;min-height:44px}.pal__c{display:none}.pal__keys-list>div{grid-template-columns:11ch minmax(0,1fr)}}.kbd-hud{z-index:70;left:max(var(--gutter), env(safe-area-inset-left));bottom:max(var(--gutter), env(safe-area-inset-bottom));border:1px solid var(--color-line-strong);background:var(--color-scrim);backdrop-filter:blur(6px);font-size:var(--text-label);letter-spacing:.04em;color:var(--color-muted);padding:.6em 1.4ch;position:fixed}.kbd-hud b{color:var(--color-fg-strong);font-weight:500}.kbd-hud em{color:var(--color-subtle);font-style:normal}.dot[data-astro-cid-2aqc6l7l]{vertical-align:.08em;border-radius:50%;flex:none;width:.5em;height:.5em;display:inline-block}.dot[data-astro-cid-2aqc6l7l][data-state=active]{background:var(--color-accent);box-shadow:var(--shadow-glow-accent)}.dot[data-astro-cid-2aqc6l7l][data-state=idle]{border:1px solid var(--color-muted)}.dot[data-astro-cid-2aqc6l7l][data-state=muted]{background:var(--color-dim)}.dot[data-astro-cid-2aqc6l7l][data-state=alert]{background:var(--color-alert);box-shadow:0 0 10px #f0b44c66}@media (prefers-reduced-motion:no-preference){.dot[data-astro-cid-2aqc6l7l][data-pulse]{animation:dot-pulse 2.4s var(--ease-in-out) 6}}@keyframes dot-pulse{0%,70%,to{opacity:1}80%{opacity:.35}}.announce[data-astro-cid-mtlrhmpq]{--a-bg:var(--color-accent);--a-fg:var(--color-bg);--a-glow:#50d89052;min-height:2.6em;margin:calc(-1 * env(safe-area-inset-top)) calc(-1 * max(var(--gutter), env(safe-area-inset-right))) 0 calc(-1 * max(var(--gutter), env(safe-area-inset-left)));padding:env(safe-area-inset-top) max(var(--gutter), env(safe-area-inset-right)) 0 max(var(--gutter), env(safe-area-inset-left));font-size:var(--text-label);letter-spacing:.06em;color:var(--a-fg);background:repeating-linear-gradient(-45deg, #06090812 0 2px, transparent 2px 7px), var(--a-bg);box-shadow:0 0 22px var(--a-glow);align-items:center;gap:1.4ch;font-weight:600;line-height:1.4;display:flex;position:relative}.announce[data-astro-cid-mtlrhmpq][data-tone=alert]{--a-bg:var(--color-alert);--a-glow:#f0b44c4d}.announce[data-astro-cid-mtlrhmpq][hidden]{display:none}.announce[data-astro-cid-mtlrhmpq][data-closing]{opacity:0;transition:opacity .18s steps(3,end)}.announce__prefix[data-astro-cid-mtlrhmpq]{flex:none;font-weight:700;animation:1.06s step-end infinite cursor-blink}.announce__msg[data-astro-cid-mtlrhmpq]{flex:auto;min-width:0;margin:0;padding-block:.5em}@media (prefers-reduced-motion:no-preference){html.js .announce__msg[data-astro-cid-mtlrhmpq]{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}html.js .announce__msg[data-astro-cid-mtlrhmpq][data-marquee]{text-overflow:clip;mask-image:linear-gradient(90deg,#0000,#000 2ch calc(100% - 2ch),#0000)}.announce__msg[data-astro-cid-mtlrhmpq][data-marquee] .announce__track[data-astro-cid-mtlrhmpq]{animation:announce-ticker var(--ticker-s,30s) linear infinite;display:inline-flex}.announce__msg[data-astro-cid-mtlrhmpq][data-marquee]:is(:hover,:focus-within) .announce__track[data-astro-cid-mtlrhmpq]{animation-play-state:paused}}.announce__msg[data-astro-cid-mtlrhmpq][data-marquee] .announce__text[data-astro-cid-mtlrhmpq]{padding-right:6ch}@keyframes announce-ticker{to{transform:translate(-50%)}}.announce__cta[data-astro-cid-mtlrhmpq]{white-space:pre;color:var(--a-fg);transition:background-color var(--dur-fast) var(--ease-system), color var(--dur-fast) var(--ease-system);border:1px solid;flex:none;align-items:center;gap:.2ch;padding:.3em 1ch;display:inline-flex}.announce__arrow[data-astro-cid-mtlrhmpq]{width:1.1em;height:.7em;margin-left:.8ch}.announce__cta[data-astro-cid-mtlrhmpq]:is(:hover,:focus-visible){color:var(--a-bg);background:var(--a-fg)}.announce__close[data-astro-cid-mtlrhmpq]{font:inherit;letter-spacing:inherit;color:var(--a-fg);cursor:pointer;background:0 0;border:0;flex:none;margin-right:-.6ch;padding:.45em .6ch}.announce__close[data-astro-cid-mtlrhmpq]:is(:hover,:focus-visible){color:var(--a-bg);background:var(--a-fg)}.announce[data-astro-cid-mtlrhmpq] [data-astro-cid-mtlrhmpq]:is(a,button):focus-visible{outline:2px solid var(--a-fg);outline-offset:2px;box-shadow:none}@media (width<=639.98px){.announce[data-astro-cid-mtlrhmpq]{gap:1ch}.announce__arrow[data-astro-cid-mtlrhmpq]{display:none}}.glyph[data-astro-cid-4hqlmac2]{vertical-align:-.12em;flex:none;width:1em;height:1em;display:inline-block}.clock[data-astro-cid-7huy3iqy]{font-variant-numeric:tabular-nums;white-space:nowrap;gap:1ch;display:inline-flex}.clock__prefix[data-astro-cid-7huy3iqy]{color:var(--color-subtle)}.progress[data-astro-cid-jgapfgnb]{align-items:center;gap:1.6ch;min-width:0;max-width:100%;display:inline-flex}.progress__track[data-astro-cid-jgapfgnb]{flex:auto;gap:.16em;min-width:0;display:inline-flex}.progress__track[data-astro-cid-jgapfgnb]>span[data-astro-cid-jgapfgnb]{min-width:2px;max-width:var(--cell-max,.62em);background:var(--color-fg);opacity:.1;flex:1 1 0;height:.9em}.progress__track[data-astro-cid-jgapfgnb]>span[data-astro-cid-jgapfgnb][data-on]{opacity:var(--lvl,1)}.progress__value[data-astro-cid-jgapfgnb]{text-align:right;min-width:4ch;color:var(--color-fg);font-variant-numeric:tabular-nums}.caf[data-astro-cid-dp5fum5o]{white-space:nowrap;flex-wrap:wrap;align-items:center;gap:.4em 1.2ch;max-width:100%;display:inline-flex}.caf[data-astro-cid-dp5fum5o][data-state=caffeinated],.caf[data-astro-cid-dp5fum5o][data-state=absorbing]{color:var(--color-accent)}.caf[data-astro-cid-dp5fum5o] .caf__meter{width:7em}.nav[data-astro-cid-keaqg2jk]{min-height:var(--nav-h);font-size:var(--text-label);letter-spacing:var(--tracking-label);justify-content:space-between;align-items:center;column-gap:1.2ch;padding-block:.6em;display:flex;position:relative}.nav__id[data-astro-cid-keaqg2jk]{flex:none;align-items:center;gap:1.2ch;min-width:0;display:flex}.nav__brand[data-astro-cid-keaqg2jk]{min-height:2.4em;font-size:var(--text-body);letter-spacing:.06em;white-space:nowrap;color:var(--color-fg);align-items:center;font-weight:600;display:inline-flex}@media (pointer:coarse){.nav__brand[data-astro-cid-keaqg2jk]{min-height:44px}}.nav__cursor[data-astro-cid-keaqg2jk]{background:var(--color-fg);width:.55em;height:1em;margin-left:.5ch;animation:1.06s step-end infinite cursor-blink;display:inline-block}.nav__sys[data-astro-cid-keaqg2jk]{white-space:nowrap;color:var(--color-accent);cursor:default;transition:color .4s var(--ease-system);align-items:center;gap:1ch;margin:0;display:inline-flex;position:relative}.nav__state[data-astro-cid-keaqg2jk]{display:none}.nav__tip[data-astro-cid-keaqg2jk]{z-index:5;font-size:var(--text-micro);white-space:nowrap;color:var(--color-muted);background:var(--color-surface);border:1px solid var(--color-line-strong);opacity:0;visibility:hidden;transition:visibility 0s linear var(--dur-fast), opacity var(--dur-fast) var(--ease-system);grid-template-columns:auto auto auto auto;justify-content:start;column-gap:1ch;padding:.45em .8em;display:none;position:absolute;top:calc(100% + 1.1em);left:-.8em}.nav__tip[data-astro-cid-keaqg2jk]:before{content:"";height:1.2em;position:absolute;bottom:100%;left:0;right:0}.nav__tip-state[data-astro-cid-keaqg2jk]{color:var(--color-accent)}.nav__tip-sep[data-astro-cid-keaqg2jk]{color:var(--color-dim)}.nav__tip-num[data-astro-cid-keaqg2jk]{color:var(--color-fg)}.nav__tip-log[data-astro-cid-keaqg2jk]{max-width:min(56ch, calc(100vw - 2 * var(--gutter) - 2em));white-space:normal;text-wrap:pretty;color:var(--color-subtle);grid-column:1/-1}.nav__tip-log[data-astro-cid-keaqg2jk]:before{content:"$ git log -1: ";color:var(--color-subtle)}.nav__sys[data-astro-cid-keaqg2jk]:hover:not([data-dismissed]) .nav__tip[data-astro-cid-keaqg2jk]{visibility:visible;opacity:1;transition-delay:0s}.nav__links[data-astro-cid-keaqg2jk]{display:none}.nav__links[data-astro-cid-keaqg2jk] ol[data-astro-cid-keaqg2jk]{gap:2.2ch;margin:0;padding:0;list-style:none;display:flex}.nav__links[data-astro-cid-keaqg2jk] li[data-astro-cid-keaqg2jk]{align-items:center;display:flex;position:relative}.nav__links[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk]{color:var(--color-muted);transition:color var(--dur-fast) var(--ease-system);align-items:center;gap:.8ch;padding:.5em .3ch;display:inline-flex}.nav__index[data-astro-cid-keaqg2jk]{color:var(--color-subtle);transition:color var(--dur-fast) var(--ease-system)}.nav__links[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible),.nav__links[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk][aria-current],.nav__links[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible) .nav__index[data-astro-cid-keaqg2jk],.nav__links[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk][aria-current] .nav__index[data-astro-cid-keaqg2jk]{color:var(--color-fg)}.nav__cmd[data-astro-cid-keaqg2jk]{z-index:2;border:1px solid var(--color-line);background:var(--color-bg);font-size:var(--text-micro);letter-spacing:.04em;white-space:pre;color:var(--color-muted);opacity:0;pointer-events:none;transition:opacity var(--dur-fast) var(--ease-system);padding:.35em .9ch;position:absolute;top:calc(100% + .6em);left:0}.nav__links[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible) .nav__cmd[data-astro-cid-keaqg2jk]{opacity:1}.nav__links[data-astro-cid-keaqg2jk] li[data-astro-cid-keaqg2jk]:has(>a[aria-current]):after{content:"";background:var(--color-fg);width:2.2em;height:1px;position:absolute;bottom:-.5px;left:50%;translate:-50%;box-shadow:0 0 6px #d8ddda80}.nav__actions[data-astro-cid-keaqg2jk]{justify-content:flex-end;align-items:center;gap:.6ch;display:flex}.nav__actions[data-astro-cid-keaqg2jk]>.nav__cta{font-size:var(--text-label);letter-spacing:var(--tracking-label)}.nav__actions[data-astro-cid-keaqg2jk]>.nav__cta--secondary{display:none}.nav__search[data-astro-cid-keaqg2jk]{border:1px solid var(--color-line);min-height:2.4em;font:inherit;letter-spacing:inherit;color:var(--color-subtle);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-system), color var(--dur-fast) var(--ease-system);background:0 0;align-items:center;gap:1.2ch;padding:0 1ch 0 1.2ch;display:none}.nav__search-label[data-astro-cid-keaqg2jk]{white-space:nowrap;display:none}.nav__search-idle[data-astro-cid-keaqg2jk],.nav__search-cmd[data-astro-cid-keaqg2jk]{grid-area:1/1}.nav__search-glyph[data-astro-cid-keaqg2jk]{font-size:1.15em;display:inline-flex}.nav__search-glyph[data-astro-cid-keaqg2jk] svg{width:1em;height:1em}.nav__search[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible) .nav__search-glyph[data-astro-cid-keaqg2jk]{color:var(--color-fg-strong)}.nav__search-cmd[data-astro-cid-keaqg2jk]{color:var(--color-fg);opacity:0;clip-path:inset(0 100% 0 0)}.nav__search-prompt[data-astro-cid-keaqg2jk]{color:var(--color-subtle)}.nav__search[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible){border-color:var(--color-muted);color:var(--color-fg)}.nav__search[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible) .nav__search-idle[data-astro-cid-keaqg2jk]{opacity:0}.nav__search[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible) .nav__search-cmd[data-astro-cid-keaqg2jk]{opacity:1;clip-path:inset(0);transition:clip-path .12s steps(10,end)}.nav__menu-btn[data-astro-cid-keaqg2jk]{min-height:44px;font:inherit;letter-spacing:inherit;white-space:pre;color:var(--color-fg);cursor:pointer;background:0 0;border:0;align-items:center;padding:0 0 0 .6em;display:none}html.js .nav__menu-btn[data-astro-cid-keaqg2jk]{display:inline-flex}html:not(.js) .nav[data-astro-cid-keaqg2jk]{flex-wrap:wrap}html:not(.js) .nav__links[data-astro-cid-keaqg2jk]{flex-basis:100%;order:3;padding-bottom:.3em;display:block}.nav[data-astro-cid-keaqg2jk][data-phase=boot] .nav__sys[data-astro-cid-keaqg2jk]{color:var(--color-subtle)}.nav[data-astro-cid-keaqg2jk][data-phase=boot] .dot{background:var(--color-dim);box-shadow:none}@media (prefers-reduced-motion:no-preference){.nav[data-astro-cid-keaqg2jk][data-phase=boot] .dot{animation:.9s steps(2,jump-none) infinite nav-boot-pulse}}@keyframes nav-boot-pulse{50%{opacity:.3}}@media (prefers-reduced-motion:no-preference){html.js:not(.boot-fallback) .nav[data-astro-cid-keaqg2jk]:not([data-played]) [data-astro-cid-keaqg2jk][data-nav-brand-text]{clip-path:inset(0 100% 0 0)}html.js:not(.boot-fallback) .nav[data-astro-cid-keaqg2jk]:not([data-played]) [data-astro-cid-keaqg2jk][data-nav-label]{visibility:hidden}html.js:not(.boot-fallback) .nav[data-astro-cid-keaqg2jk]:not([data-played]) .nav__rule[data-astro-cid-keaqg2jk]{transform:scaleX(0)}}.nav__rule[data-astro-cid-keaqg2jk]{background:var(--color-line-strong);transform-origin:50%;height:1px;position:absolute;bottom:0;left:0;right:0}.nav__rule[data-astro-cid-keaqg2jk] span[data-astro-cid-keaqg2jk]{font-size:var(--text-micro);color:var(--color-muted);line-height:1;position:absolute;top:0;translate:-50% -50%}.nav__rule[data-astro-cid-keaqg2jk] [data-astro-cid-keaqg2jk][data-tick=l]{left:0}.nav__rule[data-astro-cid-keaqg2jk] [data-astro-cid-keaqg2jk][data-tick=r]{left:100%}.menu[data-astro-cid-keaqg2jk]{width:100%;max-width:none;height:100%;max-height:none;padding:max(var(--gutter), env(safe-area-inset-top)) var(--gutter) var(--gutter);color:var(--color-fg);background:linear-gradient(to right, #d8ddda06 1px, transparent 1px) 0 0 / 48px 48px, var(--color-bg);font-size:var(--text-body);border:0;margin:0}.menu[data-astro-cid-keaqg2jk][open]{flex-direction:column;display:flex}.menu[data-astro-cid-keaqg2jk]::backdrop{background:#060908d9}@media (prefers-reduced-motion:no-preference){.menu[data-astro-cid-keaqg2jk][open]{animation:.26s steps(6,end) both menu-build}.menu[data-astro-cid-keaqg2jk][open][data-closing]{animation:.18s steps(4,end) both menu-fold}}@keyframes menu-build{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes menu-fold{0%{clip-path:inset(0)}to{clip-path:inset(0 0 100%)}}.menu__head[data-astro-cid-keaqg2jk]{border-bottom:1px solid var(--color-line-strong);justify-content:space-between;align-items:center;padding-bottom:.9em;display:flex}.menu__title[data-astro-cid-keaqg2jk]{font-size:var(--text-label);letter-spacing:var(--tracking-label);color:var(--color-muted);margin:0}.menu__prompt[data-astro-cid-keaqg2jk]{color:var(--color-subtle)}.menu__close[data-astro-cid-keaqg2jk]{min-height:44px;font:inherit;font-size:var(--text-label);letter-spacing:var(--tracking-label);color:var(--color-fg);cursor:pointer;background:0 0;border:0;align-items:center;padding:0 0 0 .8em;display:inline-flex}.menu__search[data-astro-cid-keaqg2jk]{border:1px solid var(--color-line-strong);background:var(--color-surface);width:100%;font:inherit;text-align:left;color:var(--color-fg);cursor:pointer;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"p t"".h";align-items:baseline;column-gap:1.4ch;margin-top:1.2em;padding:.85em 1.4ch;display:grid}.menu__search-prompt[data-astro-cid-keaqg2jk]{color:var(--color-subtle);grid-area:p}.menu__search-text[data-astro-cid-keaqg2jk]{grid-area:t}.menu__search-hint[data-astro-cid-keaqg2jk]{font-size:var(--text-micro);letter-spacing:var(--tracking-label);color:var(--color-subtle);grid-area:h}.menu__search[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible){border-color:var(--color-muted)}.menu__more[data-astro-cid-keaqg2jk] ul[data-astro-cid-keaqg2jk]{flex-wrap:wrap;gap:0 2.6ch;margin:1.2em 0 0;padding:0;list-style:none;display:flex}.menu__more[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk]{min-height:44px;font-size:var(--text-label);letter-spacing:var(--tracking-label);color:var(--color-muted);align-items:center;gap:.8ch;display:inline-flex}.menu__more[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible,[aria-current]){color:var(--color-fg)}.menu__more-index[data-astro-cid-keaqg2jk]{color:var(--color-subtle)}.menu__list[data-astro-cid-keaqg2jk]{margin:1.2em 0 0;padding:0;list-style:none}.menu__list[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk]{border-bottom:1px solid var(--color-line);color:color-mix(in srgb, var(--color-fg) 80%, var(--color-bg));grid-template-columns:auto 1fr;grid-template-areas:"index label"".cmd";column-gap:1.4ch;padding:.9em 0;display:grid;position:relative}.menu__list[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk][aria-current]:before{content:"";left:calc(-1 * var(--gutter));background:var(--color-accent);width:2px;box-shadow:var(--shadow-glow-accent);position:absolute;top:.9em;bottom:.9em}.menu__index[data-astro-cid-keaqg2jk]{color:var(--color-subtle);font-size:var(--text-label);grid-area:index;align-self:center}.menu__label[data-astro-cid-keaqg2jk]{letter-spacing:.04em;grid-area:label;font-size:1.6em;font-weight:600;line-height:1.2}.menu__cmd[data-astro-cid-keaqg2jk]{font-size:var(--text-micro);color:var(--color-subtle);grid-area:cmd}.menu__cmd[data-astro-cid-keaqg2jk]:before{content:"$ "}.menu__list[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible,[aria-current]){color:var(--color-fg-strong)}.menu__list[data-astro-cid-keaqg2jk] a[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible) .menu__cmd[data-astro-cid-keaqg2jk]{color:var(--color-muted)}.menu__cta[data-astro-cid-keaqg2jk]{border:1px solid var(--color-line-strong);font-size:var(--text-label);letter-spacing:var(--tracking-label);color:var(--color-fg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4em 2ch;margin-top:1.6em;padding:.9em 1.4ch;display:flex}.menu__cta-cmd[data-astro-cid-keaqg2jk]{color:var(--color-subtle)}@media (pointer:coarse){.menu__cta[data-astro-cid-keaqg2jk]{min-height:44px}}.menu__cta[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible){border-color:var(--color-muted)}.menu__cta[data-astro-cid-keaqg2jk]:is(:hover,:focus-visible) .menu__cta-cmd[data-astro-cid-keaqg2jk]{color:var(--color-muted)}.menu__live[data-astro-cid-keaqg2jk]{font-size:var(--text-label);letter-spacing:var(--tracking-label);margin:auto 0 0;padding-top:1.6em;display:grid}.menu__live[data-astro-cid-keaqg2jk]>div[data-astro-cid-keaqg2jk]{border-top:1px solid var(--color-line-faint);grid-template-columns:8ch minmax(0,1fr);align-items:center;min-height:2.6em;display:grid}.menu__live[data-astro-cid-keaqg2jk] dt[data-astro-cid-keaqg2jk]{color:var(--color-subtle)}.menu__live[data-astro-cid-keaqg2jk] dd[data-astro-cid-keaqg2jk]{min-width:0;color:var(--color-fg);align-items:center;gap:1ch;margin:0;display:flex}.menu__evo[data-astro-cid-keaqg2jk]{min-height:44px;color:var(--color-fg);text-decoration:underline;text-decoration-color:var(--color-line-strong);text-underline-offset:.25em;align-items:center;display:inline-flex}@media (width>=640px) and (height>=480px),(width>=960px){.nav[data-astro-cid-keaqg2jk],html:not(.js) .nav[data-astro-cid-keaqg2jk]{flex-wrap:nowrap;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.nav__id[data-astro-cid-keaqg2jk]{justify-self:start}.nav__tip[data-astro-cid-keaqg2jk]{display:grid}html.js .nav__menu-btn[data-astro-cid-keaqg2jk]{display:none}.nav__search[data-astro-cid-keaqg2jk]{display:inline-flex}.nav__links[data-astro-cid-keaqg2jk],html:not(.js) .nav__links[data-astro-cid-keaqg2jk]{order:0;align-self:stretch;margin-block:-.6em;padding:0;display:block}.nav__links[data-astro-cid-keaqg2jk] ol[data-astro-cid-keaqg2jk]{gap:2.2ch;height:100%}.nav[data-astro-cid-keaqg2jk],html:not(.js) .nav[data-astro-cid-keaqg2jk]{column-gap:var(--gap)}.nav__actions[data-astro-cid-keaqg2jk]{justify-self:end;gap:1.2ch}}@media (width>=640px) and (width<=1099.98px){.nav__links[data-astro-cid-keaqg2jk] .nav__index[data-astro-cid-keaqg2jk]{display:none}.nav__links[data-astro-cid-keaqg2jk] ol[data-astro-cid-keaqg2jk]{gap:1.6ch}}@media (width>=1100px) and (height>=480px){.nav__actions[data-astro-cid-keaqg2jk]>.nav__cta--secondary{display:inline-flex}}@media (width>=1200px) and (height>=560px){.nav__links[data-astro-cid-keaqg2jk] ol[data-astro-cid-keaqg2jk]{gap:4ch}.nav__state[data-astro-cid-keaqg2jk]{display:inline}}@media (width>=760px) and (width<=1099.98px),(width>=1380px) and (height>=560px){.nav__search-label[data-astro-cid-keaqg2jk]{display:inline-grid}.nav__search-glyph[data-astro-cid-keaqg2jk]{display:none}}@media (width>=1600px) and (height>=860px){.nav__links[data-astro-cid-keaqg2jk] ol[data-astro-cid-keaqg2jk]{gap:5ch}}.wm[data-astro-cid-jwiehn46]{user-select:none;width:100%}.wm__box[data-astro-cid-jwiehn46]{width:100%;container-type:inline-size}.wm__pre[data-astro-cid-jwiehn46]{font-size:calc(100cqi / (var(--wm-cols) * .6));letter-spacing:0;white-space:pre;margin:0;line-height:1.15;overflow:hidden}.wm__pre[data-astro-cid-jwiehn46] .wm__row{display:block}.wm__pre--narrow[data-astro-cid-jwiehn46]{display:none}@container (width<=560px){.wm--responsive[data-astro-cid-jwiehn46] .wm__pre--wide[data-astro-cid-jwiehn46]{display:none}.wm--responsive[data-astro-cid-jwiehn46] .wm__pre--narrow[data-astro-cid-jwiehn46]{display:block}}.wm__pre[data-astro-cid-jwiehn46] .wm__lit{color:color-mix(in srgb, var(--color-fg) calc(46% - var(--wm-r,0) * 4%), var(--color-bg))}.wm__pre--narrow[data-astro-cid-jwiehn46] .wm__lit{color:color-mix(in srgb, var(--color-fg) calc(74% - var(--wm-r,0) * 5%), var(--color-bg));font-weight:800}.wm__pre[data-astro-cid-jwiehn46] .wm__off{background:radial-gradient(circle at 50% 54%, var(--color-line) .075em, transparent .1em) 0 0 / .6em 100%}.wm__pre[data-astro-cid-jwiehn46] .wm__hot{color:var(--color-fg-strong);text-shadow:0 0 8px #d8ddda59}.foot[data-astro-cid-ybezn5ct]{z-index:1;padding:var(--space-xl) 0 max(var(--space-m), env(safe-area-inset-bottom));font-size:var(--text-label);color:var(--color-muted);background:linear-gradient(#0000,#03050499 40%);margin-top:auto;line-height:1.6;position:relative}.foot__rule[data-astro-cid-ybezn5ct]{margin-bottom:var(--space-xl)}.foot__grid[data-astro-cid-ybezn5ct]{gap:var(--space-xl) var(--grid-gap);grid-template-columns:minmax(0,1fr);display:grid}.foot__map[data-astro-cid-ybezn5ct]{gap:var(--space-l) var(--grid-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.foot__id[data-astro-cid-ybezn5ct]{align-content:start;justify-items:start;gap:var(--space-xs);display:grid}.foot__h[data-astro-cid-ybezn5ct]{font-size:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;white-space:nowrap;color:var(--color-fg);margin:0 0 1em;font-weight:500;line-height:1.4}.foot__role[data-astro-cid-ybezn5ct]{white-space:normal;margin:0}.foot__line[data-astro-cid-ybezn5ct]{max-width:38ch;margin:0 0 var(--space-xs);font-size:var(--text-body);color:var(--color-subtle)}.foot__col[data-astro-cid-ybezn5ct]{min-width:0}.foot__col[data-astro-cid-ybezn5ct] ul[data-astro-cid-ybezn5ct]{gap:.1em;margin:0;padding:0;list-style:none;display:grid}.foot__col[data-astro-cid-ybezn5ct] a[data-astro-cid-ybezn5ct]{font-size:var(--text-body);letter-spacing:.01em;color:var(--color-muted);transition:color var(--dur-fast) var(--ease-system);align-items:baseline;gap:1.2ch;padding:.25em 0;display:inline-flex;position:relative}.foot__i[data-astro-cid-ybezn5ct]{font-size:var(--text-label);color:var(--color-subtle);font-variant-numeric:tabular-nums;transition:color var(--dur-fast) var(--ease-system)}.foot__ext[data-astro-cid-ybezn5ct]{color:var(--color-subtle)}.foot__cmd[data-astro-cid-ybezn5ct]{font-size:var(--text-label);white-space:nowrap;letter-spacing:.02em;color:var(--color-subtle);opacity:0;pointer-events:none;clip-path:inset(0 100% 0 0);display:none;position:absolute;left:calc(100% + 1.4ch)}.foot__col[data-astro-cid-ybezn5ct] a[data-astro-cid-ybezn5ct]:is(:hover,:focus-visible){color:var(--color-fg-strong)}.foot__col[data-astro-cid-ybezn5ct] a[data-astro-cid-ybezn5ct]:is(:hover,:focus-visible) .foot__i[data-astro-cid-ybezn5ct]{color:var(--color-fg)}@media (hover:hover) and (width>=1200px){.foot__cmd[data-astro-cid-ybezn5ct]{display:inline}.foot__col[data-astro-cid-ybezn5ct] a[data-astro-cid-ybezn5ct]:is(:hover,:focus-visible) .foot__cmd[data-astro-cid-ybezn5ct]{opacity:1;clip-path:inset(0);transition:clip-path .16s steps(12,end)}}.foot__hint[data-astro-cid-ybezn5ct]{color:var(--color-subtle);flex-wrap:wrap;align-items:center;gap:.6em 1ch;margin:1.4em 0 0;display:flex}.foot__hint-item[data-astro-cid-ybezn5ct]{white-space:nowrap;align-items:center;gap:.8ch;display:inline-flex}.foot__hint-item[data-astro-cid-ybezn5ct]+.foot__hint-item[data-astro-cid-ybezn5ct]:before{content:"·";color:var(--color-dim);margin-right:.4ch}@media (width<=639.98px){.foot__hint[data-astro-cid-ybezn5ct]{flex-direction:column;align-items:flex-start;gap:.5em}.foot__hint-item[data-astro-cid-ybezn5ct]+.foot__hint-item[data-astro-cid-ybezn5ct]:before{content:none}}@media (pointer:coarse){.foot__hint[data-astro-cid-ybezn5ct]{display:none}}.foot__status[data-astro-cid-ybezn5ct]{margin-top:var(--space-xl);padding:var(--space-s) 0;border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line)}.foot__sys[data-astro-cid-ybezn5ct]{letter-spacing:.04em;font-variant-numeric:tabular-nums;flex-direction:column;gap:.5em;margin:0;padding:0;list-style:none;display:flex}.foot__sys[data-astro-cid-ybezn5ct]>li[data-astro-cid-ybezn5ct]{align-items:center;min-width:0;display:flex}.foot__online[data-astro-cid-ybezn5ct]{letter-spacing:var(--tracking-label);color:var(--color-accent);gap:1ch}.foot__evo[data-astro-cid-ybezn5ct]{letter-spacing:var(--tracking-label);color:var(--color-muted);transition:color var(--dur-fast) var(--ease-system);align-items:center;gap:.8ch;display:inline-flex}.foot__evo-n[data-astro-cid-ybezn5ct]{color:var(--color-fg)}.foot__evo[data-astro-cid-ybezn5ct]:is(:hover,:focus-visible),.foot__evo[data-astro-cid-ybezn5ct]:is(:hover,:focus-visible) .foot__evo-n[data-astro-cid-ybezn5ct]{color:var(--color-fg-strong)}.foot__deploy[data-astro-cid-ybezn5ct]{color:var(--color-subtle);gap:.8ch}.foot[data-astro-cid-ybezn5ct]>.shell[data-astro-cid-ybezn5ct]>.foot__wm{margin-top:var(--space-l)}.foot__base[data-astro-cid-ybezn5ct]{gap:.4em var(--grid-gap);margin-top:var(--space-s);color:var(--color-subtle);grid-template-columns:minmax(0,1fr);display:grid}.foot__base[data-astro-cid-ybezn5ct] p[data-astro-cid-ybezn5ct]{margin:0}.foot__colophon[data-astro-cid-ybezn5ct]{color:var(--color-fg);white-space:nowrap;text-decoration:underline;text-decoration-color:var(--color-line-strong);text-underline-offset:.25em;transition:color var(--dur-fast) var(--ease-system), text-decoration-color var(--dur-fast) var(--ease-system);margin-left:1ch}.foot__colophon[data-astro-cid-ybezn5ct]:is(:hover,:focus-visible){color:var(--color-fg-strong);text-decoration-color:currentColor}.foot__end[data-astro-cid-ybezn5ct]{justify-content:space-between;align-items:center;gap:2ch;display:flex}.foot__hash[data-astro-cid-ybezn5ct]{font-variant-numeric:tabular-nums}.foot__top[data-astro-cid-ybezn5ct]{min-height:2.4em;letter-spacing:var(--tracking-label);color:var(--color-fg);transition:color var(--dur-fast) var(--ease-system);background:0 0;border:0;align-items:center;gap:.8ch;padding:0;display:inline-flex}.foot__top[data-astro-cid-ybezn5ct] svg[data-astro-cid-ybezn5ct]{width:1em;height:1em;transition:translate var(--dur-fast) var(--ease-system)}.foot__top[data-astro-cid-ybezn5ct]:is(:hover,:focus-visible){color:var(--color-fg-strong)}.foot__top[data-astro-cid-ybezn5ct]:is(:hover,:focus-visible) svg[data-astro-cid-ybezn5ct]{translate:0 -2px}@media (pointer:coarse){.foot__col[data-astro-cid-ybezn5ct] a[data-astro-cid-ybezn5ct],.foot__evo[data-astro-cid-ybezn5ct],.foot__colophon[data-astro-cid-ybezn5ct],.foot__top[data-astro-cid-ybezn5ct]{align-items:center;min-height:44px;display:inline-flex}.foot__col[data-astro-cid-ybezn5ct] ul[data-astro-cid-ybezn5ct]{gap:0}}@media (width>=640px){.foot__map[data-astro-cid-ybezn5ct]{grid-template-columns:repeat(4,minmax(0,1fr))}.foot__sys[data-astro-cid-ybezn5ct]{flex-flow:wrap;align-items:center;gap:.5em 0}.foot__sys[data-astro-cid-ybezn5ct]>li[data-astro-cid-ybezn5ct]+li[data-astro-cid-ybezn5ct]:before{content:"/";color:var(--color-dim);margin-inline:1.6ch}.foot__base[data-astro-cid-ybezn5ct]{justify-content:space-between;align-items:center;gap:.4em var(--space-m);flex-wrap:wrap;display:flex}.foot__end[data-astro-cid-ybezn5ct]{justify-content:flex-end}}@media (width>=1200px){.foot__grid[data-astro-cid-ybezn5ct],.foot__base[data-astro-cid-ybezn5ct]{grid-template-columns:repeat(12,minmax(0,1fr));display:grid}.foot__id[data-astro-cid-ybezn5ct]{grid-column:1/span 4}.foot__map[data-astro-cid-ybezn5ct]{grid-column:5/-1}.foot__copy[data-astro-cid-ybezn5ct]{grid-column:1/span 4}.foot__built[data-astro-cid-ybezn5ct]{grid-column:5/span 6}.foot__end[data-astro-cid-ybezn5ct]{grid-column:11/-1}}
