@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--color-global-bg:oklch(98.48% 0 0);--color-global-text:oklch(26.99% .0096 235.05);--color-muted:oklch(44.6% .03 256.802);--color-link:oklch(55.44% .0431 185.69);--color-accent:oklch(55.27% .195 19.06);--color-accent-2:oklch(18.15% 0 0);--color-quote:oklch(55.27% .195 19.06)}*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--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-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-content:"";--tw-leading:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-500:oklch(63.7% .237 25.331);--color-orange-400:oklch(75% .183 55.934);--color-lime-500:oklch(76.8% .233 130.85);--color-blue-400:oklch(70.7% .165 254.624);--color-purple-400:oklch(71.4% .203 305.504);--color-zinc-800:oklch(27.4% .006 286.033);--spacing:.25rem;--text-sm:.875rem;--text-base:1rem;--text-base--line-height: 1.5 ;--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-semibold:600;--font-weight-bold:700;--leading-tight:1.25;--radius-md:.375rem;--radius-xl:.75rem;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--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-global-bg:oklch(98.48% 0 0);--color-global-text:oklch(26.99% .0096 235.05);--color-muted:oklch(44.6% .03 256.802);--color-link:oklch(55.44% .0431 185.69);--color-accent:oklch(55.27% .195 19.06);--color-accent-2:oklch(18.15% 0 0);--color-quote:oklch(55.27% .195 19.06)}}@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,ui-sans-serif, system-ui, 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]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color: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{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{color-scheme:light dark;accent-color:var(--color-accent);scrollbar-gutter:stable}html[data-theme=light]{color-scheme:light}html[data-theme=dark]{color-scheme:dark;--color-global-bg:oklch(23.64% .0045 248);--color-global-text:oklch(83.54% 0 264);--color-muted:oklch(70.7% .022 261.325);--color-link:oklch(70.44% .1133 349);--color-accent:oklch(70.91% .1415 163.7);--color-accent-2:oklch(94.66% 0 0);--color-quote:oklch(94.8% .106 136.49)}html{--color-mode-transition-duration:.3s;--color-mode-transition-easing:ease-in-out;transition:--color-global-bg var(--color-mode-transition-duration) var(--color-mode-transition-easing),--color-global-text var(--color-mode-transition-duration) var(--color-mode-transition-easing),--color-muted var(--color-mode-transition-duration) var(--color-mode-transition-easing),--color-link var(--color-mode-transition-duration) var(--color-mode-transition-easing),--color-accent var(--color-mode-transition-duration) var(--color-mode-transition-easing),--color-accent-2 var(--color-mode-transition-duration) var(--color-mode-transition-easing),--color-quote var(--color-mode-transition-duration) var(--color-mode-transition-easing)}:target{scroll-margin-block:5ex}@view-transition{navigation:auto}:where([data-astro-image]){object-fit:var(--fit);object-position:var(--pos)}[data-astro-image=full-width]{width:100%}[data-astro-image=constrained]{max-width:100%}}@layer pagefind;@layer components{.admonition{--admonition-color:var(--tw-prose-quotes);border-inline-start-style:var(--tw-border-style);border-inline-start-width:2px;border-color:var(--admonition-color);padding-block:calc(var(--spacing) * 4);padding-inline-start:calc(var(--spacing) * 4)}.admonition .admonition-title{align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold);color:var(--admonition-color);text-transform:capitalize;display:flex;margin-block:calc(var(--spacing) * 0)!important}.admonition .admonition-title:before{height:calc(var(--spacing) * 4);width:calc(var(--spacing) * 4);background-color:var(--admonition-color);vertical-align:middle;--tw-content:"";content:var(--tw-content);flex-shrink:0;display:inline-block;overflow:visible;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.admonition .admonition-content>:last-child{margin-bottom:calc(var(--spacing) * 0)!important}.admonition[data-admonition-type=note]{--admonition-color:var(--color-blue-400);background-color:#54a2ff0d}@supports (color:color-mix(in lab,red,red)){.admonition[data-admonition-type=note]{background-color:color-mix(in oklab,var(--color-blue-400) 5%,transparent)}}.admonition[data-admonition-type=note] .admonition-title:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath fill='var(--admonitions-color-tip)' d='M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath fill='var(--admonitions-color-tip)' d='M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E")}.admonition[data-admonition-type=tip]{--admonition-color:var(--color-lime-500);background-color:#80cd000d}@supports (color:color-mix(in lab,red,red)){.admonition[data-admonition-type=tip]{background-color:color-mix(in oklab,var(--color-lime-500) 5%,transparent)}}.admonition[data-admonition-type=tip] .admonition-title:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z'%3E%3C/path%3E%3C/svg%3E")}.admonition[data-admonition-type=important]{--admonition-color:var(--color-purple-400);background-color:#c07eff0d}@supports (color:color-mix(in lab,red,red)){.admonition[data-admonition-type=important]{background-color:color-mix(in oklab,var(--color-purple-400) 5%,transparent)}}.admonition[data-admonition-type=important] .admonition-title:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E")}.admonition[data-admonition-type=caution]{--admonition-color:var(--color-orange-400);background-color:#ff8b1a0d}@supports (color:color-mix(in lab,red,red)){.admonition[data-admonition-type=caution]{background-color:color-mix(in oklab,var(--color-orange-400) 5%,transparent)}}.admonition[data-admonition-type=caution] .admonition-title:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z'%3E%3C/path%3E%3C/svg%3E")}.admonition[data-admonition-type=warning]{--admonition-color:var(--color-red-500);background-color:#fb2c360d}@supports (color:color-mix(in lab,red,red)){.admonition[data-admonition-type=warning]{background-color:color-mix(in oklab,var(--color-red-500) 5%,transparent)}}.admonition[data-admonition-type=warning] .admonition-title:before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' width='16' height='16' aria-hidden='true'%3E%3Cpath d='M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z'%3E%3C/path%3E%3C/svg%3E")}.github-card{border-radius:var(--radius-md);background-color:#22272a0d}@supports (color:color-mix(in lab,red,red)){.github-card{background-color:color-mix(in oklab,var(--color-global-text) 5%,transparent)}}.github-card{padding-inline:calc(var(--spacing) * 4);padding-block:calc(var(--spacing) * 3)}.github-card .gh-title{align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));display:flex;position:relative}.github-card .gh-title .gh-avatar{height:calc(var(--spacing) * 6);width:calc(var(--spacing) * 6);background-color:#22272a33;border-radius:3.40282e38px;flex:none}@supports (color:color-mix(in lab,red,red)){.github-card .gh-title .gh-avatar{background-color:color-mix(in oklab,var(--color-global-text) 20%,transparent)}}.github-card .gh-title .gh-avatar{background-image:none;background-position:50%;background-size:cover}.github-card .gh-title .gh-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.github-card .gh-title .gh-text:after{inset:calc(var(--spacing) * 0);--tw-content:"";content:var(--tw-content);position:absolute}.github-card .gh-title .gh-icon{pointer-events:none;height:calc(var(--spacing) * 6);width:calc(var(--spacing) * 6);background-color:var(--color-global-text);flex:none;margin-inline-start:auto;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='31' height='32' viewBox='0 0 496 512'><path fill='%23a1f7cb' d='M165.9 397.4c0 2-2.3 3.6-5.2 3.6c-3.3.3-5.6-1.3-5.6-3.6c0-2 2.3-3.6 5.2-3.6c3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9c2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9c.3 2 2.9 3.3 5.9 2.6c2.9-.7 4.9-2.6 4.6-4.6c-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2c12.8 2.3 17.3-5.6 17.3-12.1c0-6.2-.3-40.4-.3-61.4c0 0-70 15-84.7-29.8c0 0-11.4-29.1-27.8-36.6c0 0-22.9-15.7 1.6-15.4c0 0 24.9 2 38.6 25.8c21.9 38.6 58.6 27.5 72.9 20.9c2.3-16 8.8-27.1 16-33.7c-55.9-6.2-112.3-14.3-112.3-110.5c0-27.5 7.6-41.3 23.6-58.9c-2.6-6.5-11.1-33.3 2.6-67.9c20.9-6.5 69 27 69 27c20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27c13.7 34.7 5.2 61.4 2.6 67.9c16 17.7 25.8 31.5 25.8 58.9c0 96.5-58.9 104.2-114.8 110.5c9.2 7.9 17 22.9 17 46.4c0 33.7-.3 75.4-.3 83.6c0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252C496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2c1.6 1.6 3.9 2.3 5.2 1c1.3-1 1-3.3-.7-5.2c-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9c1.6 1 3.6.7 4.3-.7c.7-1.3-.3-2.9-2.3-3.9c-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2c2.3 2.3 5.2 2.6 6.5 1c1.3-1.3.7-4.3-1.3-6.2c-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9c1.6 2.3 4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2c-1.4-2.3-4-3.3-5.6-2'/%3E%3C/svg%3E") 50%/24px no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='31' height='32' viewBox='0 0 496 512'><path fill='%23a1f7cb' d='M165.9 397.4c0 2-2.3 3.6-5.2 3.6c-3.3.3-5.6-1.3-5.6-3.6c0-2 2.3-3.6 5.2-3.6c3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9c2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9c.3 2 2.9 3.3 5.9 2.6c2.9-.7 4.9-2.6 4.6-4.6c-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2c12.8 2.3 17.3-5.6 17.3-12.1c0-6.2-.3-40.4-.3-61.4c0 0-70 15-84.7-29.8c0 0-11.4-29.1-27.8-36.6c0 0-22.9-15.7 1.6-15.4c0 0 24.9 2 38.6 25.8c21.9 38.6 58.6 27.5 72.9 20.9c2.3-16 8.8-27.1 16-33.7c-55.9-6.2-112.3-14.3-112.3-110.5c0-27.5 7.6-41.3 23.6-58.9c-2.6-6.5-11.1-33.3 2.6-67.9c20.9-6.5 69 27 69 27c20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27c13.7 34.7 5.2 61.4 2.6 67.9c16 17.7 25.8 31.5 25.8 58.9c0 96.5-58.9 104.2-114.8 110.5c9.2 7.9 17 22.9 17 46.4c0 33.7-.3 75.4-.3 83.6c0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252C496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2c1.6 1.6 3.9 2.3 5.2 1c1.3-1 1-3.3-.7-5.2c-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9c1.6 1 3.6.7 4.3-.7c.7-1.3-.3-2.9-2.3-3.9c-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2c2.3 2.3 5.2 2.6 6.5 1c1.3-1.3.7-4.3-1.3-6.2c-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9c1.6 2.3 4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2c-1.4-2.3-4-3.3-5.6-2'/%3E%3C/svg%3E") 50%/24px no-repeat}.github-card .gh-description{margin-top:calc(var(--spacing) * 4);--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.github-card .gh-chips{margin-top:calc(var(--spacing) * 4);align-items:center;gap:calc(var(--spacing) * 4);flex-wrap:wrap;display:flex}.github-card .gh-chips .gh-stars,.github-card .gh-chips .gh-forks,.github-card .gh-chips .gh-license,.github-card .gh-chips .gh-followers,.github-card .gh-chips .gh-repositories{align-items:center;column-gap:calc(var(--spacing) * 1);display:flex}:is(.github-card .gh-chips .gh-stars,.github-card .gh-chips .gh-forks,.github-card .gh-chips .gh-license,.github-card .gh-chips .gh-followers,.github-card .gh-chips .gh-repositories):before{height:calc(var(--spacing) * 5);width:calc(var(--spacing) * 5);background-color:var(--color-global-text);--tw-content:"";content:var(--tw-content);-webkit-mask:var(--chip-image) center center / 16px auto no-repeat;mask:var(--chip-image) center center / 16px auto no-repeat;display:block}.github-card .gh-chips .gh-stars{--chip-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' height='16' viewBox='0 0 16 16' version='1.1' width='16'><path d='M8 .25a.75.75 0 0 1 .673.418l1.882 3.815 4.21.612a.75.75 0 0 1 .416 1.279l-3.046 2.97.719 4.192a.751.751 0 0 1-1.088.791L8 12.347l-3.766 1.98a.75.75 0 0 1-1.088-.79l.72-4.194L.818 6.374a.75.75 0 0 1 .416-1.28l4.21-.611L7.327.668A.75.75 0 0 1 8 .25Zm0 2.445L6.615 5.5a.75.75 0 0 1-.564.41l-3.097.45 2.24 2.184a.75.75 0 0 1 .216.664l-.528 3.084 2.769-1.456a.75.75 0 0 1 .698 0l2.77 1.456-.53-3.084a.75.75 0 0 1 .216-.664l2.24-2.183-3.096-.45a.75.75 0 0 1-.564-.41L8 2.694Z'/></svg>")}.github-card .gh-chips .gh-forks{--chip-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' height='16' viewBox='0 0 16 16' version='1.1' width='16'><path d='M5 5.372v.878c0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75v-.878a2.25 2.25 0 1 1 1.5 0v.878a2.25 2.25 0 0 1-2.25 2.25h-1.5v2.128a2.251 2.251 0 1 1-1.5 0V8.5h-1.5A2.25 2.25 0 0 1 3.5 6.25v-.878a2.25 2.25 0 1 1 1.5 0ZM5 3.25a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Zm6.75.75a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Zm-3 8.75a.75.75 0 1 0-1.5 0 .75.75 0 0 0 1.5 0Z'/></svg>")}.github-card .gh-chips .gh-license{--chip-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' height='16' viewBox='0 0 16 16' version='1.1' width='16'><path d='M8.75.75V2h.985c.304 0 .603.08.867.231l1.29.736c.038.022.08.033.124.033h2.234a.75.75 0 0 1 0 1.5h-.427l2.111 4.692a.75.75 0 0 1-.154.838l-.53-.53.529.531-.001.002-.002.002-.006.006-.006.005-.01.01-.045.04c-.21.176-.441.327-.686.45C14.556 10.78 13.88 11 13 11a4.498 4.498 0 0 1-2.023-.454 3.544 3.544 0 0 1-.686-.45l-.045-.04-.016-.015-.006-.006-.004-.004v-.001a.75.75 0 0 1-.154-.838L12.178 4.5h-.162c-.305 0-.604-.079-.868-.231l-1.29-.736a.245.245 0 0 0-.124-.033H8.75V13h2.5a.75.75 0 0 1 0 1.5h-6.5a.75.75 0 0 1 0-1.5h2.5V3.5h-.984a.245.245 0 0 0-.124.033l-1.289.737c-.265.15-.564.23-.869.23h-.162l2.112 4.692a.75.75 0 0 1-.154.838l-.53-.53.529.531-.001.002-.002.002-.006.006-.016.015-.045.04c-.21.176-.441.327-.686.45C4.556 10.78 3.88 11 3 11a4.498 4.498 0 0 1-2.023-.454 3.544 3.544 0 0 1-.686-.45l-.045-.04-.016-.015-.006-.006-.004-.004v-.001a.75.75 0 0 1-.154-.838L2.178 4.5H1.75a.75.75 0 0 1 0-1.5h2.234a.249.249 0 0 0 .125-.033l1.288-.737c.265-.15.564-.23.869-.23h.984V.75a.75.75 0 0 1 1.5 0Zm2.945 8.477c.285.135.718.273 1.305.273s1.02-.138 1.305-.273L13 6.327Zm-10 0c.285.135.718.273 1.305.273s1.02-.138 1.305-.273L3 6.327Z'/></svg>")}.github-card .gh-chips .gh-followers{--chip-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' text='muted' height='16' viewBox='0 0 16 16' version='1.1' width='16'><path d='M2 5.5a3.5 3.5 0 1 1 5.898 2.549 5.508 5.508 0 0 1 3.034 4.084.75.75 0 1 1-1.482.235 4 4 0 0 0-7.9 0 .75.75 0 0 1-1.482-.236A5.507 5.507 0 0 1 3.102 8.05 3.493 3.493 0 0 1 2 5.5ZM11 4a3.001 3.001 0 0 1 2.22 5.018 5.01 5.01 0 0 1 2.56 3.012.749.749 0 0 1-.885.954.752.752 0 0 1-.549-.514 3.507 3.507 0 0 0-2.522-2.372.75.75 0 0 1-.574-.73v-.352a.75.75 0 0 1 .416-.672A1.5 1.5 0 0 0 11 5.5.75.75 0 0 1 11 4Zm-5.5-.5a2 2 0 1 0-.001 3.999A2 2 0 0 0 5.5 3.5Z'/></svg>")}.github-card .gh-chips .gh-repositories{--chip-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' height='16' viewBox='0 0 16 16' version='1.1' width='16'><path d='M2 2.5A2.5 2.5 0 0 1 4.5 0h8.75a.75.75 0 0 1 .75.75v12.5a.75.75 0 0 1-.75.75h-2.5a.75.75 0 0 1 0-1.5h1.75v-2h-8a1 1 0 0 0-.714 1.7.75.75 0 1 1-1.072 1.05A2.495 2.495 0 0 1 2 11.5Zm10.5-1h-8a1 1 0 0 0-1 1v6.708A2.486 2.486 0 0 1 4.5 9h8ZM5 12.25a.25.25 0 0 1 .25-.25h3.5a.25.25 0 0 1 .25.25v3.25a.25.25 0 0 1-.4.2l-1.45-1.087a.249.249 0 0 0-.3 0L5.4 15.7a.25.25 0 0 1-.4-.2Z'/></svg>")}.github-card .gh-chips .gh-language,.github-card .gh-chips .gh-region{margin-inline-start:auto}.github-card.gh-loading .gh-title .gh-avatar,.github-card.gh-loading .gh-description,.github-card.gh-loading .gh-chips span{animation:var(--animate-pulse);border-radius:var(--radius-xl);background-color:#22272a80}@supports (color:color-mix(in lab,red,red)){.github-card.gh-loading .gh-title .gh-avatar,.github-card.gh-loading .gh-description,.github-card.gh-loading .gh-chips span{background-color:color-mix(in oklab,var(--color-global-text) 50%,transparent)}}.github-card.gh-loading .gh-title .gh-avatar,.github-card.gh-loading .gh-description,.github-card.gh-loading .gh-chips span{color:#0000}.github-card.gh-loading .gh-chips span:before{background-color:#0000}.github-card.gh-error .gh-avatar,.github-card.gh-error .gh-description,.github-card.gh-error .gh-chips{display:none}.cactus-link{text-underline-offset:2px;text-decoration-line:underline}@media(hover:hover){.cactus-link:hover{-webkit-text-decoration-color:var(--color-link);text-decoration-color:var(--color-link);text-decoration-thickness:2px}}.title{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--color-accent-2)}}@layer utilities{.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}.my-0{margin-block:calc(var(--spacing) * 0)}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-underline-offset:2px;font-weight:500;text-decoration:underline}@media(hover:hover){.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)):hover{-webkit-text-decoration-color:var(--color-link);text-decoration-color:var(--color-link);text-decoration-thickness:2px}}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:700}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-style:dashed;border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";border-left-width:0;margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)):where([data-theme=dark],[data-theme=dark] *){background:var(--color-global-text)}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);border:1px dotted #666;border-radius:2px;font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:none;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;border-bottom:1px dashed #666;padding-inline-start:.571429em;font-weight:700}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:none;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders);border-top:1px dashed #666}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose :where(sup):not(:where([class~=not-prose],[class~=not-prose] *)){margin-inline-start:calc(var(--spacing) * .5)}.prose :where(sup):not(:where([class~=not-prose],[class~=not-prose] *)) a:after{content:"]"}.prose :where(sup):not(:where([class~=not-prose],[class~=not-prose] *)) a:before{content:"["}@media(hover:hover){.prose :where(sup):not(:where([class~=not-prose],[class~=not-prose] *)) a:hover{color:var(--color-link)}}.prose :where(th[align=center],td[align=center]):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:center}.prose :where(th[align=right],td[align=right]):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:right}.prose :where(th[align=left],td[align=left]):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:left}.prose :where(.expressive-code,.admonition,.github-card):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:calc(var(--spacing)*4);margin-bottom:calc(var(--spacing)*4)}.-ms-2{margin-inline-start:calc(var(--spacing) * -2)}.ms-auto{margin-inline-start:auto}.me-auto{margin-inline-end:auto}.prose-sm{font-size:.875rem;line-height:1.71429}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.888889em;margin-bottom:.888889em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em;margin-bottom:1.33333em;padding-inline-start:1.11111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:.8em;font-size:2.14286em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6em;margin-bottom:.8em;font-size:1.42857em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.55556em;margin-bottom:.444444em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.42857em;margin-bottom:.571429em;line-height:1.42857}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.142857em;padding-inline-end:.357143em;padding-bottom:.142857em;border-radius:.3125rem;padding-inline-start:.357143em;font-size:.857143em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-sm);font-weight:400}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;border-radius:.25rem;margin-top:1.66667em;margin-bottom:1.66667em;padding-inline-start:1em;font-size:.857143em;line-height:1.66667}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em;padding-inline-start:1.57143em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;margin-bottom:.285714em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.428571em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;padding-inline-start:1.57143em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.85714em;margin-bottom:2.85714em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.857143em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.666667em;font-size:.857143em;line-height:1.33333}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.mt-0{margin-top:calc(var(--spacing) * 0)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-0{margin-bottom:calc(var(--spacing) * 0)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-6{-webkit-line-clamp:6;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-grid{display:inline-grid}.table{display:table}.h-5{height:calc(var(--spacing) * 5)}.h-8{height:calc(var(--spacing) * 8)}.h-12{height:calc(var(--spacing) * 12)}.w-5{width:calc(var(--spacing) * 5)}.w-8{width:calc(var(--spacing) * 8)}.w-12{width:calc(var(--spacing) * 12)}.max-w-none{max-width:none}.min-w-30{min-width:calc(var(--spacing) * 30)}.flex-1{flex:1}.flex-auto{flex:auto}.shrink-0{flex-shrink:0}.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}.list-none{list-style-type:none}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.gap-3{gap:calc(var(--spacing) * 3)}:where(.space-y-10>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 10) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-5{column-gap:calc(var(--spacing) * 5)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-global-text\/20>:not(:last-child)){border-color:#22272a33}@supports (color:color-mix(in lab,red,red)){:where(.divide-global-text\/20>:not(:last-child)){border-color:color-mix(in oklab,var(--color-global-text) 20%,transparent)}}.overflow-hidden{overflow:hidden}.rounded-full{border-radius:3.40282e38px}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-solid{--tw-border-style:solid;border-style:solid}.bg-global-text\/5{background-color:#22272a0d}@supports (color:color-mix(in lab,red,red)){.bg-global-text\/5{background-color:color-mix(in oklab,var(--color-global-text) 5%,transparent)}}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-5{padding-block:calc(var(--spacing) * 5)}.ps-0{padding-inline-start:calc(var(--spacing) * 0)}.ps-2{padding-inline-start:calc(var(--spacing) * 2)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[word-break\:break-word\]{word-break:break-word}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent{color:var(--color-accent)}.text-accent-2{color:var(--color-accent-2)}.text-muted{color:var(--color-muted)}.text-red-500{color:var(--color-red-500)}.italic{font-style:italic}.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-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + 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)}.ring-global-text{--tw-ring-color:var(--color-global-text)}.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,)}.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))}.prose{--tw-prose-body:var(--color-global-text);--tw-prose-bold:var(--color-global-text);--tw-prose-bullets:var(--color-global-text);--tw-prose-code:var(--color-global-text);--tw-prose-headings:var(--color-accent-2);--tw-prose-hr:.5px dashed #666;--tw-prose-links:var(--color-global-text);--tw-prose-quotes:var(--color-quote);--tw-prose-th-borders:#666}.before\:hidden:before{content:var(--tw-content);display:none}@media(hover:hover){.hover\:z-10:hover{z-index:10}.hover\:text-accent:hover{color:var(--color-accent)}.hover\:text-link:hover{color:var(--color-link)}.hover\:ring-4:hover{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + 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)}.hover\:ring-link:hover{--tw-ring-color:var(--color-link)}}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}.focus\:fixed:focus{position:fixed}.focus\:start-1:focus{inset-inline-start:calc(var(--spacing) * 1)}.focus\:top-1\.5:focus{top:calc(var(--spacing) * 1.5)}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:ring-4:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + 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)}.focus-visible\:ring-link:focus-visible{--tw-ring-color:var(--color-link)}@media(min-width:40rem){.sm\:flex-initial{flex:0 auto}}.\[\&\>p\:last-of-type\]\:mb-0>p:last-of-type{margin-bottom:calc(var(--spacing) * 0)}}@property --color-global-bg{syntax:"<color>";inherits:true;initial-value:oklch(98.48% 0 0)}@property --color-global-text{syntax:"<color>";inherits:true;initial-value:oklch(26.99% .0096 235.05)}@property --color-muted{syntax:"<color>";inherits:true;initial-value:oklch(44.6% .03 256.802)}@property --color-link{syntax:"<color>";inherits:true;initial-value:oklch(55.44% .0431 185.69)}@property --color-accent{syntax:"<color>";inherits:true;initial-value:oklch(55.27% .195 19.06)}@property --color-accent-2{syntax:"<color>";inherits:true;initial-value:oklch(18.15% 0 0)}@property --color-quote{syntax:"<color>";inherits:true;initial-value:oklch(55.27% .195 19.06)}.prose code:before,.prose code:after{content:none}#the-complete-exploit-chain+p+.expressive-code pre>code{flex:none;width:max-content;min-width:max-content;margin-inline:auto}#the-complete-exploit-chain+p+.expressive-code .ec-line .code{padding-inline:1rem}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@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-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-content{syntax:"*";inherits:false;initial-value:""}@property --tw-leading{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}@layer pagefind{:root{--pf-text: #1a1a1a;--pf-text-secondary: #666;--pf-text-muted: #767676;--pf-background: #fff;--pf-border: #e0e0e0;--pf-border-focus: #999;--pf-skeleton: #eee;--pf-skeleton-shine: #f5f5f5;--pf-hover: #f5f5f5;--pf-mark: #1a1a1a;--pf-scroll-shadow: rgba(0, 0, 0, .08);--pf-shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--pf-shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--pf-shadow-lg: 0 16px 48px rgba(0, 0, 0, .2);--pf-error-bg: #fef2f2;--pf-error-border: #fecaca;--pf-error-text: #dc2626;--pf-error-text-secondary: #b91c1c;--pf-outline-focus: #0969da;--pf-outline-width: 2px;--pf-outline-offset: 2px;--pf-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--pf-input-height: 36px;--pf-input-font-size: 16px;--pf-summary-font-size: 12px;--pf-result-title-font-size: 14px;--pf-result-excerpt-font-size: 13px;--pf-modal-backdrop: rgba(0, 0, 0, .5);--pf-results-display: flex;--pf-results-flex-direction: column;--pf-results-flex-wrap: nowrap;--pf-results-columns: none;--pf-results-gap: 8px;--pf-border-radius: 6px;--pf-image-width: 64px;--pf-image-height: 48px;--pf-icon-search: url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.7549 11.255H11.9649L11.6849 10.985C12.6649 9.845 13.2549 8.365 13.2549 6.755C13.2549 3.165 10.3449 0.255005 6.75488 0.255005C3.16488 0.255005 0.254883 3.165 0.254883 6.755C0.254883 10.345 3.16488 13.255 6.75488 13.255C8.36488 13.255 9.84488 12.665 10.9849 11.685L11.2549 11.965V12.755L16.2549 17.745L17.7449 16.255L12.7549 11.255ZM6.75488 11.255C4.26488 11.255 2.25488 9.245 2.25488 6.755C2.25488 4.26501 4.26488 2.255 6.75488 2.255C9.24488 2.255 11.2549 4.26501 11.2549 6.755C11.2549 9.245 9.24488 11.255 6.75488 11.255Z' fill='%23000000'/%3E%3C/svg%3E%0A");--pf-icon-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23000' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--pf-dropdown-z-index: 9999;--pf-modal-max-width: 560px;--pf-modal-max-height: min(80dvh, 800px);--pf-modal-top: 10dvh;--pf-searchbox-max-width: 480px;--pf-searchbox-dropdown-max-height: 320px;--pf-dropdown-max-height: 280px}[data-pf-theme=dark]{--pf-text: #e5e5e5;--pf-text-secondary: #a0a0a0;--pf-text-muted: #949494;--pf-background: #1a1a1a;--pf-border: #333;--pf-border-focus: #555;--pf-skeleton: #2a2a2a;--pf-skeleton-shine: #333;--pf-hover: #252525;--pf-mark: #e5e5e5;--pf-scroll-shadow: rgba(255, 255, 255, .1);--pf-outline-focus: #58a6ff;--pf-shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--pf-shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--pf-shadow-lg: 0 16px 48px rgba(0, 0, 0, .5);--pf-error-bg: #2a1a1a;--pf-error-border: #5c2828;--pf-error-text: #f87171;--pf-error-text-secondary: #ef4444;--pf-modal-backdrop: rgba(0, 0, 0, .7)}pagefind-config,pagefind-filter-dropdown,pagefind-filter-pane,pagefind-input,pagefind-keyboard-hints,pagefind-modal,pagefind-modal-body,pagefind-modal-footer,pagefind-modal-header,pagefind-modal-trigger,pagefind-results,pagefind-searchbox,pagefind-summary{all:initial;display:block;box-sizing:border-box;font-family:var(--pf-font, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:16px;line-height:1.5;color:CanvasText;contain:layout style}pagefind-searchbox,pagefind-filter-dropdown{position:relative}pagefind-searchbox:has(.pf-searchbox.open),pagefind-filter-dropdown:has(.pf-dropdown-trigger.open){z-index:var(--pf-dropdown-z-index)}pagefind-config{display:none}pagefind-modal-trigger{display:inline-block}:is(*,#\#):is(*,#\#) :is([class^=pf-],[class*=" pf-"]):not(svg,svg *){all:revert;box-sizing:border-box}:is(*,#\#):is(*,#\#) :is([class^=pf-],[class*=" pf-"]):not(svg,svg *):before,:is(*,#\#):is(*,#\#) :is([class^=pf-],[class*=" pf-"]):not(svg,svg *):after{box-sizing:border-box}:is(*,#\#):is(*,#\#):is(*,#\#) [class^=pf-][hidden],:is(*,#\#):is(*,#\#):is(*,#\#) [class*=" pf-"][hidden]{display:none}[data-pf-hidden]{display:none!important}[data-pf-suppressed]{opacity:0!important;pointer-events:none!important}[data-pf-sr-hidden]{clip:rect(0 0 0 0)!important;-webkit-clip-path:inset(100%)!important;clip-path:inset(100%)!important;height:1px!important;overflow:hidden!important;position:absolute!important;white-space:nowrap!important;width:1px!important}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input:focus,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input:focus,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input-clear:focus,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input-clear:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-link:focus,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-link:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-link:focus,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-link:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-checkbox-input:focus,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-checkbox-input:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-trigger:focus,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-trigger:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-trigger-btn:focus,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-trigger-btn:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-close:focus,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-close:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-result:focus,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-result:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-options:focus,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-options:focus-visible{outline:none}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input-clear:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-trigger:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-clear:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-trigger-btn:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-close:focus-visible{outline:var(--pf-outline-width) solid var(--pf-outline-focus);outline-offset:var(--pf-outline-offset)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-key,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-trigger-key,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-footer-key,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-keyboard-key,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-footer-key{display:inline-flex;align-items:center;justify-content:center;padding:0 4px;background:var(--pf-hover);border:1px solid var(--pf-border);border-radius:3px;font-weight:500;color:var(--pf-text-secondary);font-family:var(--pf-font)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-key--sm,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-footer-key{min-width:16px;height:16px;font-size:9px;padding:0 3px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input-wrapper{position:relative}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input-wrapper:before,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input-wrapper:before{content:"";position:absolute;background-color:var(--pf-text-muted);width:14px;height:14px;top:calc((var(--pf-input-height) - 14px) / 2);inset-inline-start:10px;-webkit-mask-image:var(--pf-icon-search);mask-image:var(--pf-icon-search);-webkit-mask-size:100%;mask-size:100%;pointer-events:none}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input-wrapper:before{z-index:1}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input{width:100%;height:var(--pf-input-height);background-color:var(--pf-background);border:1px solid var(--pf-border);border-radius:var(--pf-border-radius);font-family:var(--pf-font, inherit);font-size:var(--pf-input-font-size);color:var(--pf-text);box-sizing:border-box}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input{padding:0;padding-inline-start:32px;padding-inline-end:36px;font-weight:400}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input:focus-visible{border-color:var(--pf-outline-focus);box-shadow:0 0 0 var(--pf-outline-width) var(--pf-outline-focus)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input::placeholder,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input::placeholder{color:var(--pf-text-muted)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input::-webkit-search-decoration,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input::-webkit-search-cancel-button,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input::-webkit-search-results-button,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input::-webkit-search-results-decoration{display:none;appearance:none;-webkit-appearance:none}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input-clear{position:absolute;inset-inline-end:2px;top:50%;transform:translateY(-50%);height:calc(100% - 4px);min-width:44px;padding:0 8px;background:none;border:none;font-size:12px;color:var(--pf-text-muted);cursor:pointer;border-radius:4px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input-clear:hover{background:var(--pf-hover);color:var(--pf-text-secondary)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input-clear[data-pf-suppressed]{display:none}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-summary{font-size:var(--pf-summary-font-size);color:var(--pf-text-muted)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-results{list-style:none;padding:0;margin:0;display:var(--pf-results-display);flex-direction:var(--pf-results-flex-direction);flex-wrap:var(--pf-results-flex-wrap);grid-template-columns:var(--pf-results-columns);gap:var(--pf-results-gap)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result{display:flex;flex-direction:column;gap:8px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-card{position:relative;display:flex;gap:12px;padding:12px;background:var(--pf-background);border:1px solid var(--pf-border);border-radius:var(--pf-border-radius);transition:border-color .15s,box-shadow .15s}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-card:hover{border-color:var(--pf-border-focus);box-shadow:var(--pf-shadow-sm)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-card:has(.pf-result-link:focus-visible){border-color:var(--pf-outline-focus);box-shadow:0 0 0 var(--pf-outline-width) var(--pf-outline-focus)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-card:has([data-pf-selected]){border-color:var(--pf-border-focus);background:var(--pf-hover)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-image{width:var(--pf-image-width);height:var(--pf-image-height);border-radius:4px;object-fit:cover;background:var(--pf-skeleton);flex-shrink:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-content{flex:1;min-width:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-title{font-size:var(--pf-result-title-font-size);font-weight:500;margin:0;line-height:1.4}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-link{color:var(--pf-text);text-decoration:none}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-link:after{content:"";position:absolute;inset:0;border-radius:inherit}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-link:hover{text-decoration:underline}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-excerpt{font-size:var(--pf-result-excerpt-font-size);color:var(--pf-text-secondary);margin:4px 0 0;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-excerpt mark,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-excerpt mark,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-result-excerpt mark{background:transparent;font-weight:500;color:var(--pf-mark)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-skeleton{background:var(--pf-skeleton);border-radius:4px}@media(prefers-reduced-motion:no-preference){:is(*,#\#):is(*,#\#):is(*,#\#) .pf-skeleton{background:linear-gradient(90deg,var(--pf-skeleton) 25%,var(--pf-skeleton-shine) 50%,var(--pf-skeleton) 75%);background-size:200% 100%;animation:pf-shimmer 1.5s infinite}@keyframes pf-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-skeleton-title{height:14px;width:60%;margin-bottom:8px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-skeleton-excerpt{height:13px;width:90%}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-skeleton-image{width:var(--pf-image-width);height:var(--pf-image-height);flex-shrink:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-empty{text-align:center;padding:32px 16px;color:var(--pf-text-muted)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-empty-icon{font-size:24px;margin-bottom:8px;opacity:.4}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-empty-text{font-size:14px;margin:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-error{padding:12px 16px;background:var(--pf-error-bg);border:1px solid var(--pf-error-border);border-radius:var(--pf-border-radius);color:var(--pf-error-text);font-size:13px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-error strong{font-weight:600}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-error small{display:block;margin-top:4px;color:var(--pf-error-text-secondary);font-size:12px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-chips{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;padding-inline-start:12px;list-style:none}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-chip{display:inline-flex;flex-direction:column;gap:2px;padding:8px 10px;background:var(--pf-background);border:1px solid var(--pf-border);border-radius:6px;font-size:12px;transition:border-color .15s,box-shadow .15s;position:relative}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-chip:hover{border-color:var(--pf-border-focus)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-chip:has(.pf-heading-link:focus-visible){border-color:var(--pf-outline-focus);box-shadow:0 0 0 var(--pf-outline-width) var(--pf-outline-focus)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-chip:has([data-pf-selected]){border-color:var(--pf-border-focus);background:var(--pf-hover)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-link{color:var(--pf-text);font-weight:500;text-decoration:none;line-height:1.3}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-link:before{content:"#";color:var(--pf-text-muted);margin-inline-end:4px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-link:after{content:"";position:absolute;inset:0;border-radius:inherit}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-link:hover{text-decoration:underline}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-excerpt{margin:0;font-size:12px;color:var(--pf-text-secondary);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-pane{display:flex;flex-direction:column;gap:20px;padding:16px;background:var(--pf-skeleton);border-radius:var(--pf-border-radius);border:1px solid var(--pf-border);overflow:hidden}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-group{display:flex;flex-direction:column;gap:8px;border:none;padding:0;margin:0}:is(*,#\#):is(*,#\#):is(*,#\#) details.pf-filter-group{display:block}:is(*,#\#):is(*,#\#):is(*,#\#) details.pf-filter-group>.pf-filter-options{margin-top:8px}:is(*,#\#):is(*,#\#):is(*,#\#) details.pf-filter-group>.pf-filter-fieldset{margin-top:8px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-fieldset{border:none;padding:0;margin:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-group-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--pf-text-muted);margin:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-group-name,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-trigger-label,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}:is(*,#\#):is(*,#\#):is(*,#\#) summary.pf-filter-group-title{cursor:pointer;list-style:none;display:flex;align-items:center;padding:4px 0;margin:-4px 0}:is(*,#\#):is(*,#\#):is(*,#\#) summary.pf-filter-group-title::-webkit-details-marker{display:none}:is(*,#\#):is(*,#\#):is(*,#\#) summary.pf-filter-group-title:after{content:"";width:10px;height:6px;flex-shrink:0;margin-inline-start:8px;background:var(--pf-text-muted);-webkit-mask-image:var(--pf-icon-arrow);mask-image:var(--pf-icon-arrow);-webkit-mask-size:100% 100%;mask-size:100% 100%;transition:transform .15s}:is(*,#\#):is(*,#\#):is(*,#\#) details.pf-filter-group:not([open])>summary.pf-filter-group-title:after{transform:rotate(-90deg)}:is(*,#\#):is(*,#\#):is(*,#\#) [dir=rtl] details.pf-filter-group:not([open])>summary.pf-filter-group-title:after{transform:rotate(90deg)}:is(*,#\#):is(*,#\#):is(*,#\#) summary.pf-filter-group-title:hover{color:var(--pf-text-secondary)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-group-count,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-selected-badge{display:inline-flex;align-items:center;justify-content:center;background:var(--pf-text);color:var(--pf-background);font-size:11px;font-weight:500;height:18px;min-width:18px;padding:0 5px;border-radius:9px;flex-shrink:0;box-sizing:border-box;font-variant-numeric:tabular-nums}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-group-count{margin-inline-start:auto;text-transform:none}:is(*,#\#):is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-group-count[data-pf-hidden],:is(*,#\#):is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-selected-badge[data-pf-hidden]{display:inline-flex!important;visibility:hidden}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-options{display:flex;flex-direction:column;gap:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-checkbox{display:flex;align-items:center;gap:8px;min-height:30px;cursor:pointer;font-size:13px;color:var(--pf-text-secondary)}@media(pointer:coarse){:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-checkbox{min-height:44px}}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-checkbox:hover{color:var(--pf-text)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-checkbox-input{width:16px;height:16px;margin:0;accent-color:var(--pf-text);cursor:pointer;color-scheme:light}:is(*,#\#):is(*,#\#):is(*,#\#) [data-pf-theme=dark] .pf-checkbox-input{color-scheme:dark}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-checkbox:has(.pf-checkbox-input:focus-visible){outline:var(--pf-outline-width) solid var(--pf-outline-focus);outline-offset:var(--pf-outline-offset);border-radius:4px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-checkbox-count{margin-inline-start:auto;font-size:11px;color:var(--pf-text-muted)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-wrapper{position:relative;display:inline-flex;align-items:center}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-trigger{display:inline-flex;align-items:center;gap:8px;height:var(--pf-input-height);padding:0 12px;background:var(--pf-background);border:1px solid var(--pf-border);border-radius:var(--pf-border-radius);font-size:13px;color:var(--pf-text-secondary);cursor:pointer;transition:border-color .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-trigger:hover{border-color:var(--pf-border-focus)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-trigger.open{border-color:var(--pf-border-focus)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-trigger.wrap{height:auto;min-height:var(--pf-input-height);padding-top:6px;padding-bottom:6px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-trigger-label.wrap,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option-label.wrap{white-space:normal;line-height:1.3}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-arrow{width:10px;height:6px;flex-shrink:0;background:var(--pf-text-muted);-webkit-mask-image:var(--pf-icon-arrow);mask-image:var(--pf-icon-arrow);-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-trigger.open .pf-dropdown-arrow{transform:rotate(180deg)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-menu{position:absolute;top:calc(100% + 4px);inset-inline-start:0;min-width:180px;max-height:var(--pf-dropdown-max-height);overflow-y:auto;border:1px solid var(--pf-border);border-radius:var(--pf-border-radius);box-shadow:var(--pf-shadow-md);padding:4px;z-index:100;background:linear-gradient(var(--pf-background) 30%,transparent) center top,linear-gradient(transparent,var(--pf-background) 70%) center bottom,linear-gradient(var(--pf-scroll-shadow),transparent) center top,linear-gradient(transparent,var(--pf-scroll-shadow)) center bottom,var(--pf-background);background-size:100% 40px,100% 40px,100% 14px,100% 14px,100% 100%;background-repeat:no-repeat;background-attachment:local,local,scroll,scroll,scroll}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option{display:flex;align-items:center;gap:8px;padding:12px 10px;min-height:44px;font-size:13px;color:var(--pf-text-secondary);border-radius:4px;cursor:pointer;box-sizing:border-box}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option:hover{background:var(--pf-hover)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option.pf-dropdown-option-focused{outline:var(--pf-outline-width) solid var(--pf-outline-focus);outline-offset:-2px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option.wrap{align-items:flex-start}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-checkbox{width:16px;height:16px;flex-shrink:0;border:1px solid var(--pf-border);border-radius:3px;background:var(--pf-background);position:relative}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option.wrap .pf-dropdown-checkbox{margin-top:2px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option[aria-selected=true] .pf-dropdown-checkbox{background:var(--pf-text);border-color:var(--pf-text)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option[aria-selected=true] .pf-dropdown-checkbox:after{content:"";position:absolute;inset-inline-start:5px;top:2px;width:4px;height:8px;border:solid var(--pf-background);border-width:0 2px 2px 0;transform:rotate(45deg)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option-label{flex:1}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option-count{margin-inline-start:auto;font-size:11px;color:var(--pf-text-muted);flex-shrink:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option.wrap .pf-dropdown-option-count{margin-top:2px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option-loading{pointer-events:none}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option-loading .pf-dropdown-checkbox{width:16px;height:16px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option-loading .pf-dropdown-option-label{height:13px;border-radius:4px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-error{padding:12px 10px;font-size:13px;color:var(--pf-error-text)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-clear{display:inline-flex;align-items:center;height:44px;padding:0 10px;margin-inline-start:4px;background:transparent;border:1px solid transparent;border-radius:var(--pf-border-radius);font-size:12px;color:var(--pf-text-secondary);cursor:pointer}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-clear:hover:not([aria-disabled=true]){background:var(--pf-hover);border-color:var(--pf-border);color:var(--pf-text)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-clear[aria-disabled=true]{color:var(--pf-text-muted);cursor:default;opacity:.4}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-options{max-height:var(--pf-dropdown-max-height);overflow-y:auto}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-trigger-btn{display:inline-flex;align-items:center;gap:8px;width:100%;height:var(--pf-input-height);padding:0 14px;background:var(--pf-background);border:1px solid var(--pf-border);border-radius:var(--pf-border-radius);font-size:14px;color:var(--pf-text-muted);cursor:pointer;transition:border-color .15s,box-shadow .15s}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-trigger-btn:hover{border-color:var(--pf-border-focus)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-trigger-icon{width:14px;height:14px;background:var(--pf-text-muted);-webkit-mask-image:var(--pf-icon-search);mask-image:var(--pf-icon-search);-webkit-mask-size:100%;mask-size:100%;flex-shrink:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-trigger-text{flex:1;text-align:start;color:var(--pf-text-muted)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-trigger-shortcut{display:inline-flex;align-items:center;gap:2px;margin-inline-start:8px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-trigger-key{min-width:20px;height:18px;font-size:11px;border-radius:4px}:is(*,#\#):is(*,#\#):is(*,#\#) dialog.pf-modal{position:fixed;width:100%;max-width:var(--pf-modal-max-width);max-height:var(--pf-modal-max-height);margin:var(--pf-modal-top) auto;padding:0;background:var(--pf-background);border:none;border-radius:12px;box-shadow:var(--pf-shadow-lg);flex-direction:column;overflow:hidden;overscroll-behavior:contain}:is(*,#\#):is(*,#\#):is(*,#\#) dialog.pf-modal::backdrop{background:var(--pf-modal-backdrop);overflow:hidden;overscroll-behavior:contain}:is(*,#\#):is(*,#\#):is(*,#\#) dialog.pf-modal[open]{display:flex}@media(prefers-reduced-motion:no-preference){:is(*,#\#):is(*,#\#):is(*,#\#) dialog.pf-modal[open]{animation:pf-modal-appear .15s ease-out}@keyframes pf-modal-appear{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}}@media(max-width:640px){:is(*,#\#):is(*,#\#):is(*,#\#) dialog.pf-modal[open]{top:0;left:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border-radius:0;animation:none}:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-modal-header,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-header{padding-top:max(16px,env(safe-area-inset-top));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-modal-body,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-body{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-modal-footer,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-footer{padding-bottom:max(12px,env(safe-area-inset-bottom));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}}:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-modal-header,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-header{display:flex;align-items:center;gap:8px;padding:16px;border-bottom:1px solid var(--pf-border);flex-shrink:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-header-content{flex:1;min-width:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-close{display:none;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:none;border-radius:8px;color:var(--pf-text-secondary);cursor:pointer;flex-shrink:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-close:hover{background:var(--pf-hover);color:var(--pf-text)}@media(max-width:640px){:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-close{display:flex}}:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-modal-header .pf-input-wrapper:before,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-header .pf-input-wrapper:before{top:50%;transform:translateY(-50%)}:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-modal-header .pf-input,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-header .pf-input{border:none;background:transparent;font-size:var(--pf-input-font-size);height:40px}:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-modal-body,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:8px 16px 16px}:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-modal-body .pf-summary,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-body .pf-summary{margin-bottom:8px}:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-modal-body .pf-result-card:has([data-pf-selected]),:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-body .pf-result-card:has([data-pf-selected]){background:var(--pf-skeleton)}:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-modal-footer,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-footer{padding:10px 16px;border-top:1px solid var(--pf-border);display:flex;align-items:center;gap:16px;font-size:12px;color:var(--pf-text-muted);flex-shrink:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-footer-hint,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-keyboard-hint{display:flex;align-items:center;gap:6px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-footer-key,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-keyboard-key{min-width:18px;height:18px;font-size:10px}:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-keyboard-hints,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-keyboard-hints{display:flex;flex-wrap:wrap;align-items:center;gap:16px;font-size:12px;color:var(--pf-text-muted);min-height:20px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox{position:relative;display:inline-block;width:100%;max-width:var(--pf-searchbox-max-width)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input-wrapper{position:relative}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input-wrapper .pf-trigger-shortcut{position:absolute;inset-inline-end:12px;top:50%;transform:translateY(-50%);pointer-events:none;margin-inline-start:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input{padding:0;padding-inline-start:32px;padding-inline-end:12px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input-wrapper:has(.pf-trigger-shortcut) .pf-searchbox-input{padding-inline-end:72px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input:focus~.pf-trigger-shortcut{display:none}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input:focus{padding-inline-end:12px;border-color:var(--pf-border-focus)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox.open .pf-searchbox-input{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-color:var(--pf-border)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-dropdown{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--pf-background);border:1px solid var(--pf-border);border-top:none;border-radius:0 0 var(--pf-border-radius) var(--pf-border-radius);box-shadow:var(--pf-shadow-md);max-height:var(--pf-searchbox-dropdown-max-height);z-index:100}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox.open .pf-searchbox-dropdown{display:flex}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-results{list-style:none;padding:4px;margin:0;flex:1;overflow-y:auto}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-result{display:block;padding:12px 10px;min-height:44px;border-radius:4px;cursor:pointer;text-decoration:none;color:inherit;box-sizing:border-box}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-result:hover{background:var(--pf-hover)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-placeholder{cursor:default;pointer-events:none}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-placeholder:hover{background:transparent}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-result[data-pf-selected]{background:var(--pf-hover);outline:var(--pf-outline-width) solid var(--pf-outline-focus);outline-offset:-2px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-result-title{font-size:13px;font-weight:500;color:var(--pf-text);margin:0;line-height:1.3}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-result-excerpt{font-size:12px;color:var(--pf-text-secondary);margin:2px 0 0;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-subresult{padding-inline-start:20px;border-inline-start:2px solid var(--pf-border);margin-inline-start:10px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-result-meta{display:flex;align-items:center;gap:6px;margin-top:4px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-footer{padding:8px 10px;border-top:1px solid var(--pf-border);display:flex;align-items:center;justify-content:flex-end;gap:12px;font-size:11px;color:var(--pf-text-muted);flex-shrink:0}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-footer-hint{display:flex;align-items:center;gap:4px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-empty{padding:20px 10px;text-align:center;color:var(--pf-text-muted);font-size:13px}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-loading{padding:16px 10px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--pf-text-muted);font-size:13px}@media(forced-colors:active){:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-input:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-input-clear:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-trigger-btn:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-close:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-trigger:focus-visible,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-result-card:has(.pf-result-link:focus-visible),:is(*,#\#):is(*,#\#):is(*,#\#) .pf-heading-chip:has(.pf-heading-link:focus-visible),:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-checkbox:has(.pf-checkbox-input:focus-visible),:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-option.pf-dropdown-option-focused,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-result[data-pf-selected]{outline:2px solid CanvasText;outline-offset:2px}}@media(hover:none){:is(*,#\#):is(*,#\#):is(*,#\#) pagefind-keyboard-hints,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-keyboard-hints,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-footer,:is(*,#\#):is(*,#\#):is(*,#\#) .pf-modal-footer-hint{display:none}}@media(max-width:640px){:is(*,#\#):is(*,#\#):is(*,#\#) .pf-dropdown-menu{min-width:unset;width:max(180px,calc(100vw - 32px));max-width:calc(100vw - 32px);inset-inline-start:unset;left:50%;transform:translate(-50%);max-height:min(var(--pf-dropdown-max-height),50vh)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-searchbox-dropdown{max-height:min(var(--pf-searchbox-dropdown-max-height),60vh)}:is(*,#\#):is(*,#\#):is(*,#\#) .pf-filter-pane{padding:12px;gap:16px}}}:root{--pf-text-muted: var(--color-global-text);--pf-background: var(--color-global-bg);--pf-border-focus: var(--color-accent-2);--pf-outline-focus: var(--color-accent);--pf-outline-offset: none;--pf-font: var(--font-mono);--pf-text: var(--color-global-text);--pf-text-secondary: var(--color-muted);--pf-skeleton: var(--color-global-bg);--pf-icon-search: url("data:image/svg+xml,%3Csvg fill='none' height='16' width='16' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' %3E%3Cpath d='M0 0h24v24H0z' stroke='none'%3E%3C/path%3E%3Cpath d='M3 10a7 7 0 1 0 14 0 7 7 0 1 0-14 0M21 21l-6-6'%3E%3C/path%3E%3C/svg%3E")}.pf-trigger-btn{--pf-background: #0000;--pf-border-focus: #0000;--pf-hover: var(--color-accent);display:flex;justify-content:center;align-items:center;width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9);padding:8px;accent-color:var(--color-accent);border:0;border-radius:0;&:hover{@media(hover:hover){--pf-text-muted: var(--color-accent);color:var(--color-accent)}}&:focus-visible{outline:auto}.pf-trigger-icon{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}}dialog.pf-modal::backdrop{backdrop-filter:blur(8px)}.pf-modal-body{--pf-hover: var(--color-global-bg);.pf-result-link,.pf-heading-link{background-size:100% 6px;background-position:bottom;background-repeat:repeat-x;background-image:linear-gradient(transparent,transparent 5px,var(--color-global-text) 5px,var(--color-global-text));&:hover{text-decoration:none;background-image:linear-gradient(transparent,transparent 4px,var(--color-link) 4px,var(--color-link))}}.pf-heading-link{align-self:flex-start}.pf-heading-excerpt{mark{--pf-mark: var(--color-accent-2);font-weight:var(--font-weight-semibold)}}}.pf-keyboard-hints{kbd{color:var(--color-zinc-800)}}:root[data-theme=dark]{--color-global-bg: #111613;--color-global-text: #d6ded7;--color-muted: #9bab9e;--color-accent: #a1ce96;--color-accent-2: #eff3ee;--color-link: #a1ce96;--color-quote: #a1ce96;--panel: #171e19;--line: #2c3930;--soft: #223025;--code: #151c17;color-scheme:dark}:root[data-theme=light]{--color-global-bg: #f5f7f2;--color-global-text: #354239;--color-muted: #617267;--color-accent: #366e43;--color-accent-2: #17261c;--color-link: #366e43;--color-quote: #366e43;--panel: #edf1e9;--line: #d2ddcf;--soft: #e2ecdd;--code: #edf1e9;color-scheme:light}:root[data-palette=teal]{--palette-hue: 168;--palette-saturation: 43%}:root[data-palette]:not([data-palette=sage])[data-theme=dark]{--color-global-bg: hsl(var(--palette-hue) 14% 8%);--color-global-text: hsl(var(--palette-hue) 14% 85%);--color-muted: hsl(var(--palette-hue) 13% 65%);--color-accent: hsl(var(--palette-hue) var(--palette-saturation) 73%);--color-accent-2: hsl(var(--palette-hue) 16% 94%);--panel: hsl(var(--palette-hue) 16% 11%);--line: hsl(var(--palette-hue) 16% 23%);--soft: hsl(var(--palette-hue) 19% 17%);--code: hsl(var(--palette-hue) 16% 10%)}:root[data-palette]:not([data-palette=sage])[data-theme=light]{--color-global-bg: hsl(var(--palette-hue) 24% 97%);--color-global-text: hsl(var(--palette-hue) 18% 24%);--color-muted: hsl(var(--palette-hue) 15% 41%);--color-accent: hsl(var(--palette-hue) var(--palette-saturation) 32%);--color-accent-2: hsl(var(--palette-hue) 23% 13%);--panel: hsl(var(--palette-hue) 22% 93%);--line: hsl(var(--palette-hue) 19% 81%);--soft: hsl(var(--palette-hue) 25% 88%);--code: hsl(var(--palette-hue) 22% 93%)}:root[data-palette]{--color-link: var(--color-accent);--color-quote: var(--color-accent)}.sidebar-tags{display:flex;flex-wrap:wrap;gap:7px 12px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line);color:var(--color-accent);font:11px/1.8 ui-monospace,monospace;overflow-wrap:anywhere}html{scroll-behavior:smooth;scroll-padding-top:115px}body.research-site{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--color-global-bg);color:var(--color-global-text);font:17px/1.8 system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;transition:background-color .2s,color .2s}.site-container{width:100%;max-width:1207px;margin-inline:auto;padding-inline:48px;min-width:0}.page-content{width:100%;margin-inline:auto;min-width:0}main.site-container{flex:1;padding-bottom:36px}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:5px;border-radius:2px}button,summary{cursor:pointer}::selection{background:var(--color-accent);color:var(--color-global-bg)}.site-header{position:sticky;top:0;z-index:30;background:var(--color-global-bg);border-bottom:1px solid var(--line)}.header-inner{height:90px;display:flex;align-items:center;gap:36px}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--color-accent-2);font-size:20px;letter-spacing:-.6px;font-weight:650;white-space:nowrap;text-decoration:none}.brand-mark{width:36px;height:36px;flex-shrink:0;color:var(--color-accent);overflow:visible}.brand-copy{display:flex;flex-direction:column;gap:3px;line-height:1.3}.brand-description{font-size:11px;font-weight:400;letter-spacing:0;color:var(--color-muted);white-space:normal}.aperture-half{transform-origin:24px 24px;animation:aperture-from-left .95s cubic-bezier(.16,1,.3,1) backwards}.aperture-half:last-child{animation-name:aperture-from-right}.brand:hover .aperture-half:first-child{transform:translate(-1px,-1px)}.brand:hover .aperture-half:last-child{transform:translate(1px,1px)}.aperture-half{transition:transform .25s}.primary-nav{display:flex;align-items:center;gap:30px;margin-left:auto;font-size:14px}.primary-nav a{position:relative;padding:11px 0;color:var(--color-muted);text-decoration:none}.primary-nav a:hover,.primary-nav a[aria-current]{color:var(--color-accent)}.primary-nav a:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:var(--color-accent);transform:scaleX(0);transform-origin:left;transition:transform .2s}.primary-nav a:hover:after,.primary-nav a[aria-current]:after{transform:scaleX(1)}.header-tools{display:flex;align-items:center;gap:12px}.theme-button{position:relative;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;color:var(--color-global-text);background:var(--panel);display:grid;place-items:center;flex-shrink:0}.theme-button:hover{border-color:var(--color-accent);color:var(--color-accent)}.theme-button svg{width:18px;height:18px;grid-area:1 / 1}[data-theme=dark] .theme-moon,[data-theme=light] .theme-sun{display:none}.reading-progress{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--color-accent);transform:scaleX(0);transform-origin:left;pointer-events:none}.shell-bar{margin:32px 0 28px;min-height:0;padding:0;display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--color-global-text);border-radius:6px;font:11px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace}.shell-user{color:var(--color-accent);white-space:nowrap}.shell-directory{color:var(--color-muted);white-space:nowrap}.shell-command{min-width:0;overflow-wrap:anywhere}.shell-cursor{display:inline-block;width:7px;height:13px;margin-left:5px;vertical-align:-2px;background:var(--color-accent);animation:cursor-blink 1s step-end 4}.title{font-size:clamp(32px,4vw,48px);font-weight:620;line-height:1.17;letter-spacing:-1.4px;color:var(--color-accent-2)}.eyebrow,.article-tags,.article-meta,.post-date,.footer-note{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.eyebrow{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--color-accent);margin-bottom:14px}.home-intro{max-width:850px;padding:24px 0 12px}.home-intro .title{font-size:clamp(38px,5vw,60px);margin-bottom:22px}.home-intro .prose{font-size:19px;color:var(--color-muted);max-width:730px}.home-intro .social-links{margin-top:22px}:where(.home-intro .social-links) p{font-size:13px;color:var(--color-muted)}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:0}.section-heading h1,.section-heading h2{font-size:23px;color:var(--color-accent-2);font-weight:580;letter-spacing:-.5px}.section-heading>a,.section-links{font-size:12px;color:var(--color-accent)}.section-links{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:flex-end}@media(max-width:480px){.section-heading{flex-wrap:wrap;gap:10px}.section-links{justify-content:flex-start}}.post-list{list-style:none;padding:0;margin:0}.post-row{display:grid;grid-template-columns:105px minmax(0,1fr);gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.post-date{font-size:11px;color:var(--color-muted);padding-top:6px}.editorial-intro{padding:32px 0 38px}.editorial-intro h1{margin:0 0 12px;max-width:900px;font-size:clamp(26px,2.6vw,32px);font-weight:590;line-height:1.2;letter-spacing:-1.1px;color:var(--color-accent-2);text-wrap:balance}.editorial-intro>p{margin:0;font-size:16px;color:var(--color-muted);line-height:1.7}.editorial-intro .shell-bar{margin:0 0 19px}.latest-label{display:block;width:fit-content;margin:0 0 7px;color:var(--color-accent);font:10px/1.5 ui-monospace,monospace;letter-spacing:1px;text-transform:uppercase}.post-latest{position:relative}.post-latest:before{content:"";position:absolute;left:-13px;top:30px;height:28px;width:2px;background:var(--color-accent)}.post-row.post-latest h2{font-size:21px}@media(max-width:650px){.editorial-intro{padding:25px 0 30px}.editorial-intro>p{font-size:14px}.post-latest .post-date{display:flex;align-items:center;gap:12px}.latest-label{margin:0}.post-row.post-latest h2{font-size:21px}}.post-row h2,.post-row h3{font-size:20px;line-height:1.4;letter-spacing:-.6px;font-weight:590;color:var(--color-accent-2);margin:0 0 10px}.post-row h2 a,.post-row h3 a{text-decoration:none;transition:color .15s}.post-row h2 a:hover,.post-row h3 a:hover{color:var(--color-accent)}.post-row p{font-size:15px;line-height:1.75;color:var(--color-muted);margin:0;max-width:850px}.post-tags{display:flex;flex-wrap:wrap;gap:6px 14px;margin:14px 0 0;padding:0;list-style:none}.post-tags li{font:10px/1.6 ui-monospace,monospace;color:var(--color-accent)}.archive-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin:22px 0 28px}.archive-heading a{font:12px ui-monospace,monospace;color:var(--color-accent)}.research-areas{margin-top:65px}.research-areas>.title{font-size:23px;letter-spacing:-.5px}.research-areas li{border-color:var(--line);background:var(--panel);border-radius:5px}.research-areas h3{font-size:15px}.research-areas p{font-size:14px;line-height:1.75}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 205px;gap:0 56px;align-items:start;min-width:0}.article-head{grid-column:1;grid-row:1;border-bottom:1px solid var(--line);padding-bottom:30px;margin-bottom:32px;min-width:0}.article-title{text-wrap:balance;font-size:clamp(32px,3.4vw,48px);line-height:1.15;letter-spacing:-1.5px;font-weight:620;color:var(--color-accent-2);margin:16px 0 22px;overflow-wrap:break-word}.article-tags{display:flex;flex-wrap:wrap;gap:5px 14px;color:var(--color-accent);font-size:10px;letter-spacing:.4px}.article-meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:11px;color:var(--color-muted);line-height:1.8}.article-deck{font-size:18px;line-height:1.7;color:var(--color-muted);margin:23px 0 0}.article-cover{width:100%;height:auto;max-height:520px;object-fit:contain;margin-top:28px;border:1px solid var(--line);border-radius:6px}.article-body{grid-column:1;grid-row:2;min-width:0;max-width:none;overflow-wrap:anywhere}.article-toc{grid-column:2;grid-row:1 / span 2;position:sticky;top:122px;max-height:calc(100vh - 150px);overflow:auto;border-left:1px solid var(--line);padding:0 0 0 21px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.article-toc summary{font:11px/1.6 ui-monospace,monospace;text-transform:uppercase;letter-spacing:1px;color:var(--color-muted);list-style:none;margin-bottom:20px;user-select:none}.article-toc summary::-webkit-details-marker{display:none}.article-toc ol{list-style:none;padding:0;margin:0}.article-toc .toc-child{margin-left:12px}.article-toc a{display:block;font-size:12px;line-height:1.6;margin:12px 0;color:var(--color-muted);text-decoration:none;border-left:2px solid transparent;padding-left:9px}.article-toc .toc-child a{font-size:11px}.article-toc a:hover,.article-toc a[aria-current]{color:var(--color-accent)}.article-toc a[aria-current]{border-left-color:var(--color-accent)}.research-site .prose{--tw-prose-body: var(--color-global-text);--tw-prose-headings: var(--color-accent-2);--tw-prose-bold: var(--color-accent-2);--tw-prose-links: var(--color-accent);--tw-prose-code: var(--color-global-text);font-size:16px;line-height:1.85}.research-site .prose h2{font-size:25px;font-weight:590;line-height:1.4;letter-spacing:-.6px;margin-top:42px;margin-bottom:18px;scroll-margin-top:120px}.research-site .prose h3{font-size:20px;font-weight:580;line-height:1.45;letter-spacing:-.3px;scroll-margin-top:120px}.research-site .prose h2:first-child{margin-top:0}.research-site .prose p{margin:0 0 23px}.research-site .prose p:last-child{margin-bottom:0}.research-site .prose a{color:var(--color-accent);text-underline-offset:4px}.research-site .prose h2 a,.research-site .prose h3 a{color:inherit;text-decoration:none}.research-site .prose h2 a:hover,.research-site .prose h3 a:hover{color:var(--color-accent)}.research-site .prose :not(pre)>code{background:var(--soft);border-radius:3px;padding:2px 4px;font-size:.84em;font-weight:400;color:var(--color-global-text);white-space:normal;overflow-wrap:anywhere}.research-site .prose code:before,.research-site .prose code:after{content:none}.research-site .prose pre{background:var(--code);border:1px solid var(--line);border-radius:6px;padding:20px;font-size:12px;line-height:1.85;color:var(--color-global-text);overflow:auto;max-width:100%}.research-site .expressive-code{margin:25px 0;max-width:100%;min-width:0;font-size:12px}.research-site .expressive-code pre{border:0;padding:16px 0}.research-site .expressive-code .frame{border:1px solid var(--line);border-radius:6px;overflow:hidden}.research-site .prose table{display:block;max-width:100%;overflow:auto;font-size:13px;line-height:1.7;border-collapse:collapse;margin:25px 0}.research-site .prose th,.research-site .prose td{padding:12px 14px;border-bottom:1px solid var(--line);min-width:110px;text-align:left}.research-site .prose th{background:var(--panel);color:var(--color-accent-2)}.research-site .prose blockquote{border-left:2px solid var(--color-accent);background:var(--panel);padding:15px 20px;font-style:normal;font-weight:400}.research-site .prose img,.research-site .prose video{max-width:100%;height:auto;border-radius:6px;margin:28px 0;border:1px solid var(--line)}.about-content{max-width:750px;margin-inline:0}.about-content .prose{max-width:none}.research-site .about-content pre{overflow-wrap:normal}.back-top{position:fixed;right:24px;bottom:24px;display:grid;place-items:center;width:40px;height:40px;color:var(--color-accent);background:var(--panel);border:1px solid var(--line);border-radius:50%;font-size:20px;z-index:20}.back-top[hidden]{display:none}.back-top:hover{border-color:var(--color-accent)}.site-footer{margin-top:55px;border-top:1px solid var(--line);padding:26px 0 32px;color:var(--color-muted);font-size:11px}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-inner>div{display:flex;gap:22px}.footer-inner a:hover{color:var(--color-accent)}.footer-note{font-size:10px}.research-site .pf-trigger-btn{width:36px;height:36px;padding:8px}.research-site .pf-trigger-btn .pf-trigger-icon{width:20px;height:20px}:root{--pf-font: system-ui, sans-serif}@keyframes aperture-from-left{0%{opacity:0;transform:translate(-32px,18px)}35%{opacity:1}to{opacity:1;transform:translate(0)}}@keyframes aperture-from-right{0%{opacity:0;transform:translate(32px,-18px)}35%{opacity:1}to{opacity:1;transform:translate(0)}}@keyframes cursor-blink{50%{opacity:0}}@media(max-width:1050px){.site-container{padding-inline:30px}.article-layout{grid-template-columns:minmax(0,1fr)}.article-head{grid-row:1}.article-toc{grid-row:2;grid-column:1;position:static;max-height:none;border:1px solid var(--line);padding:14px 18px;border-radius:5px;margin-bottom:30px}.article-toc summary{margin:0;display:flex;justify-content:space-between}.article-toc summary:after{content:"+"}.article-toc[open] summary:after{content:"−"}.article-toc[open] nav{max-height:300px;overflow:auto;margin-top:16px}.article-body{grid-row:3}.article-title{font-size:42px}}@media(max-width:650px){.site-container{padding-inline:20px}.header-inner{height:76px;gap:18px;flex-wrap:wrap;align-content:center}.brand{font-size:17px;gap:8px}.brand-mark{width:29px;height:29px}.primary-nav{gap:18px;font-size:13px}.header-tools{gap:5px}.theme-button{width:33px;height:33px}.header-tools .pf-trigger-btn{width:31px;height:33px}.shell-bar{margin:25px 0 28px}.shell-directory{display:none}.shell-user{font-size:10px}.article-title{font-size:33px;letter-spacing:-1px}.article-deck{font-size:17px}.article-tags{font-size:9px;gap:5px 10px}.article-meta{font-size:10px}.research-site .prose{font-size:16px;line-height:1.85}.research-site .prose h2{font-size:23px}.post-row{grid-template-columns:1fr;gap:9px;padding:23px 0}.post-row h2,.post-row h3{font-size:20px}.post-date{padding:0}.home-intro{padding-top:10px}.home-intro .prose{font-size:17px}.footer-inner{align-items:start;flex-direction:column;gap:12px}.footer-note{display:none}.back-top{right:14px;bottom:14px}.section-heading h1,.section-heading h2,.research-areas>.title{font-size:21px}}@media(max-width:480px){.brand-copy{max-width:140px}.brand-description{font-size:10px}.header-inner{height:105px;column-gap:10px;row-gap:3px}.brand{margin-right:auto}.header-tools{order:2}.primary-nav{order:3;width:100%;margin-left:0;gap:25px}.primary-nav a{padding:3px 0 7px}.shell-user{display:none}.article-title{font-size:30px}.article-toc{padding:12px}.home-intro .title{font-size:38px}.research-site .prose pre{font-size:11px}.article-toc,.research-site .prose h2,.research-site .prose h3{scroll-margin-top:130px}}@media(min-width:481px)and (max-width:1000px){.header-inner{height:105px;flex-wrap:wrap;align-content:center;gap:3px 18px}.brand{margin-right:auto}.header-tools{order:2}.primary-nav{order:3;width:100%;margin-left:0;gap:25px}.primary-nav a{padding:3px 0 7px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
