h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6{line-height:1.25;margin-block:clamp(.75rem,1vw,1rem) clamp(.5rem,.8vw,.75rem);text-rendering:optimizeLegibility;letter-spacing:-.01em;overflow-wrap:break-word}.dotted-separator{margin-inline:.5rem;border-bottom:.125rem dotted var(--color-border-muted);flex-grow:1}.post-content,.accordion-header,.alert-dismiss .icon-times,.rouge-table .gutter{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.series-description,.post-description{display:-webkit-box;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical}.categories-list .post-title,.timeline-right,.text-truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero-content .hero-highlight,a:hover{text-decoration:underline;-webkit-text-decoration:underline;text-underline-offset:.25rem}@keyframes scrollTopBounceIn{0%{opacity:0;transform:translateY(20px) scale(.95);visibility:hidden}60%{opacity:1;transform:translateY(-5px) scale(1.05);visibility:visible}to{transform:translateY(0) scale(1);visibility:visible}}@keyframes scrollTopBounceOut{0%{opacity:1;transform:translateY(0) scale(1);visibility:visible}to{opacity:0;transform:translateY(20px) scale(.95);visibility:hidden}}[data-theme=light]{color-scheme:light;--color-bg-default: hsl(0, 0%, 100%);--color-bg-muted: hsl(210, 29%, 97%);--color-bg-neutral-muted: hsla(212, 9%, 55%, .12);--color-bg-neutral-emphasis: hsl(212, 9%, 39%);--color-bg-disabled: hsl(210, 21%, 94%);--color-bg-transparent: hsla(0, 0%, 100%, 0);--color-bg-accent-emphasis: hsl(212, 92%, 43%);--color-bg-accent-muted: hsl(203, 100%, 94%);--color-bg-success-emphasis: hsl(135, 64%, 33%);--color-bg-success-muted: hsl(138, 74%, 92%);--color-bg-danger-emphasis: hsl(356, 71%, 47%);--color-bg-danger-muted: hsl(3, 100%, 93%);--color-bg-attention-emphasis: hsl(25, 100%, 37%);--color-bg-attention-muted: hsl(24, 100%, 95%);--color-fg-default: hsl(222, 22%, 5%);--color-fg-muted: hsl(225, 15%, 50%);--color-fg-neutral: hsl(212, 9%, 39%);--color-fg-on-emphasis: hsl(0, 0%, 100%);--color-fg-link: hsl(212, 92%, 43%);--color-fg-link-hover: hsl(205, 100%, 31%);--color-fg-link-visited: hsl(275, 100%, 25%);--color-fg-link-focus: hsl(205, 100%, 31%);--color-fg-disabled: hsl(212, 9%, 55%);--color-fg-white: hsl(0, 0%, 100%);--color-fg-accent: hsl(212, 92%, 43%);--color-fg-accent-muted: hsl(200, 40%, 27%);--color-fg-success: hsl(137, 66%, 30%);--color-fg-danger: hsl(357, 71%, 48%);--color-fg-attention: hsl(25, 100%, 37%);--color-border-default: hsl(210, 21%, 88%);--color-border-muted: hsla(210, 21%, 88%, .7);--color-border-neutral-muted: hsla(210, 21%, 88%, .7);--color-border-disabled: hsla(212, 9%, 55%, .1);--color-border-transparent: hsla(0, 0%, 100%, 0);--color-border-accent-emphasis: hsl(212, 92%, 43%);--color-border-accent-muted: hsla(207, 100%, 66%, .4);--color-border-success-emphasis: hsl(137, 66%, 30%);--color-border-success-muted: hsla(138, 53%, 54%, .4);--color-border-danger-emphasis: hsl(356, 71%, 47%);--color-border-danger-muted: hsla(3, 100%, 75%, .4);--color-border-attention-emphasis: hsl(25, 100%, 37%);--color-border-attention-muted: hsla(25, 96%, 63%, .4);--color-outline-focus: hsl(212, 92%, 43%);--color-bg-control: hsl(210, 29%, 97%);--color-bg-control-hover: hsl(210, 21%, 94%);--color-fg-control: hsl(216, 12%, 16%);--color-border-control: hsl(210, 21%, 88%);--color-bg-control-disabled: hsl(210, 21%, 94%);--color-fg-control-disabled: hsl(212, 9%, 55%);--color-border-control-disabled: hsla(212, 9%, 55%, .1);--color-bg-control-active: hsl(211, 22%, 91%);--color-bg-control-transparent: hsla(0, 0%, 100%, 0);--color-border-control-transparent: hsla(0, 0%, 100%, 0);--color-bg-control-transparent-hover: hsla(212, 9%, 55%, .1);--color-border-control-transparent-hover: hsla(0, 0%, 100%, 0);--color-bg-control-transparent-active: hsla(212, 9%, 55%, .15);--color-border-control-transparent-active: hsla(0, 0%, 100%, 0);--color-bg-overlay: hsl(0, 0%, 100%);--color-border-overlay: hsla(210, 21%, 88%, .5);--color-code-syntax-comment: hsl(210, 9%, 45%);--color-code-syntax-error-text: hsl(0, 71%, 60%);--color-code-syntax-error-bg: hsl(357, 100%, 95%);--color-code-syntax-keyword: hsl(354, 68%, 53%);--color-code-syntax-namespace: hsl(261, 49%, 51%);--color-code-syntax-number: hsl(211, 100%, 39%);--color-code-syntax-string: hsl(216, 92%, 19%);--color-code-syntax-name: hsl(135, 60%, 33%);--color-code-syntax-builtin: hsl(356, 71%, 44%);--color-code-syntax-decorator: hsl(258, 72%, 75%);--color-code-syntax-entity: hsl(20, 29%, 38%);--color-code-syntax-function: hsl(211, 100%, 39%);--color-code-syntax-tag: hsl(135, 60%, 33%);--color-code-syntax-symbol: hsl(28, 91%, 47%);--color-code-syntax-subtle: hsl(210, 12%, 83%);--color-code-syntax-heading: hsl(215, 13%, 15%);--color-code-syntax-inserted-bg: hsl(135, 100%, 92%);--color-code-syntax-inserted-text: hsl(135, 60%, 33%);--color-code-syntax-deleted-bg: hsl(357, 100%, 95%);--color-code-syntax-deleted-text: hsl(356, 71%, 44%);--color-code-syntax-output: hsl(210, 9%, 36%);--color-code-syntax-meta: hsl(214, 12%, 30%);--color-bg-selection: hsl(50, 100%, 78%);--color-fg-selection: hsl(222, 22%, 5%);--color-bg-scrollbar: hsl(0, 0%, 100%);--color-bg-scrollbar-thumb: hsl(210, 30%, 55%);--color-bg-scrollbar-thumb-hover: hsl(225, 7%, 60%);--color-bg-retro-counter: hsl(213, 80%, 95%);--color-retro-counter-segment-active: hsl(225, 27%, 40%);--color-retro-counter-segment-inactive: hsl(212, 39%, 87%);--color-bg-cloud-100: hsl(203, 60%, 95%);--color-bg-cloud-300: hsl(202, 68%, 92%);--color-bg-cloud-400: hsl(201, 60%, 86%);--color-bg-cloud-500: hsl(200, 80%, 83%);--color-bg-sky-from: hsl(200, 70%, 78%);--color-bg-sky-to: hsl(200, 70%, 70%);--color-bg-sky-subtle: hsl(200, 90%, 88%);--color-bg-sky-bottom: hsl(200, 79%, 83%);--color-typed-text: hsl(37, 100%, 50%);--box-shadow-floating-legacy: 0px 6px 12px -3px hsl(216 12% 16% / .04), 0px 6px 18px 0px hsl(216 12% 16% / .12);--box-shadow-floating-sm: 0px 0px 0px 1px hsl(210 21% 88% / .5), 0px 6px 12px -3px hsl(216 12% 16% / .04), 0px 6px 18px 0px hsl(216 12% 16% / .12);--box-shadow-xs: 0 0 2px 0 hsla(0, 0%, 0%, .06);--box-shadow-sm: 0 0 4px 0 hsla(0, 0%, 0%, .08);--box-shadow-md: 0 0 8px 1px hsla(0, 0%, 0%, .12);--box-shadow-lg: 0 0 12px 2px hsla(0, 0%, 0%, .16);--box-shadow-xl: 0 0 20px 4px hsla(0, 0%, 0%, .2);--box-shadow-xxl: 0 0 35px 6px hsla(0, 0%, 0%, .25);--text-shadow-contrast-soft: 0 1px 1px hsla(0, 0%, 0%, .2);--gradient-bg-shimmer: radial-gradient(circle, hsla(211, 79%, 51%, 0) 0%, hsla(211, 79%, 51%, .05) 35%, hsla(211, 79%, 51%, .1) 50%, hsla(211, 79%, 51%, .05) 65%, hsla(211, 79%, 51%, 0) 100%);--gradient-bg-shimmer-pseudo: linear-gradient(90deg, hsla(211, 79%, 51%, 0) 0%, hsla(211, 79%, 51%, .1) 50%, hsla(211, 79%, 51%, 0) 100%)}[data-theme=dark]{color-scheme:dark;--color-bg-default: hsl(210, 15%, 6%);--color-bg-muted: hsl(213, 20%, 10%);--color-bg-neutral-muted: hsla(213, 8%, 43%, .25);--color-bg-neutral-emphasis: hsl(213, 8%, 43%);--color-bg-disabled: hsl(213, 15%, 14%);--color-bg-transparent: hsla(0, 0%, 0%, 0);--color-bg-accent-emphasis: hsl(213, 80%, 54%);--color-bg-accent-muted: hsla(213, 90%, 60%, .15);--color-bg-success-emphasis: hsl(140, 55%, 38%);--color-bg-success-muted: hsla(140, 50%, 40%, .15);--color-bg-danger-emphasis: hsl(2, 70%, 50%);--color-bg-danger-muted: hsla(2, 85%, 62%, .1);--color-bg-attention-emphasis: hsl(21, 73%, 43%);--color-bg-attention-muted: hsla(23, 71%, 51%, .1);--color-fg-default: hsl(210, 10%, 90%);--color-fg-muted: hsl(210, 12%, 60%);--color-fg-neutral: hsl(215, 8%, 60%);--color-fg-on-emphasis: hsl(0, 0%, 100%);--color-fg-link: hsl(213, 85%, 60%);--color-fg-link-hover: hsl(210, 100%, 35%);--color-fg-link-visited: hsl(275, 100%, 25%);--color-fg-link-focus: hsl(210, 100%, 35%);--color-fg-disabled: hsl(213, 8%, 48%);--color-fg-white: hsl(0, 0%, 100%);--color-fg-accent: hsl(213, 85%, 60%);--color-fg-accent-muted: hsl(199, 42%, 78%);--color-fg-success: hsl(140, 45%, 48%);--color-fg-danger: hsl(2, 85%, 62%);--color-fg-attention: hsl(23, 71%, 51%);--color-border-default: hsl(213, 12%, 24%);--color-border-muted: hsla(213, 12%, 24%, .7);--color-border-neutral-muted: hsla(213, 12%, 24%, .7);--color-border-disabled: hsla(213, 8%, 43%, .1);--color-border-transparent: hsla(0, 0%, 0%, 0);--color-border-accent-emphasis: hsl(213, 80%, 54%);--color-border-accent-muted: hsla(213, 90%, 60%, .4);--color-border-success-emphasis: hsl(140, 55%, 38%);--color-border-success-muted: hsla(140, 50%, 40%, .4);--color-border-danger-emphasis: hsl(2, 70%, 50%);--color-border-danger-muted: hsla(2, 85%, 62%, .4);--color-border-attention-emphasis: hsl(21, 73%, 43%);--color-border-attention-muted: hsla(23, 71%, 51%, .4);--color-outline-focus: hsl(213, 80%, 54%);--color-bg-control: hsl(213, 18%, 15%);--color-bg-control-hover: hsl(219, 17%, 18%);--color-fg-control: hsl(210, 10%, 90%);--color-border-control: hsl(213, 12%, 24%);--color-bg-control-disabled: hsl(213, 15%, 14%);--color-fg-control-disabled: hsl(213, 8%, 48%);--color-border-control-disabled: hsla(213, 8%, 43%, .1);--color-bg-control-active: hsl(217, 17%, 19%);--color-bg-control-transparent: hsla(0, 0%, 0%, 0);--color-border-control-transparent: hsla(0, 0%, 0%, 0);--color-bg-control-transparent-hover: hsla(213, 8%, 43%, .2);--color-border-control-transparent-hover: hsla(0, 0%, 0%, 0);--color-bg-control-transparent-active: hsla(213, 8%, 43%, .25);--color-border-control-transparent-active: hsla(0, 0%, 0%, 0);--color-bg-overlay: hsl(210, 30%, 4%);--color-border-overlay: hsla(213, 12%, 24%, .7);--color-code-syntax-comment: hsl(211, 11%, 56%);--color-code-syntax-error-text: hsl(3, 85%, 70%);--color-code-syntax-error-bg: hsla(359, 66%, 35%, .2);--color-code-syntax-keyword: hsl(3, 85%, 70%);--color-code-syntax-namespace: hsl(258, 72%, 78%);--color-code-syntax-number: hsl(210, 100%, 74%);--color-code-syntax-string: hsl(207, 100%, 85%);--color-code-syntax-name: hsl(120, 52%, 60%);--color-code-syntax-builtin: hsl(32, 92%, 67%);--color-code-syntax-decorator: hsl(276, 73%, 86%);--color-code-syntax-entity: hsl(38, 59%, 68%);--color-code-syntax-function: hsl(210, 100%, 74%);--color-code-syntax-tag: hsl(120, 52%, 60%);--color-code-syntax-symbol: hsl(32, 92%, 67%);--color-code-syntax-subtle: hsl(214, 11%, 38%);--color-code-syntax-heading: hsl(210, 32%, 88%);--color-code-syntax-inserted-bg: hsl(137, 92%, 15%);--color-code-syntax-inserted-text: hsl(120, 52%, 60%);--color-code-syntax-deleted-bg: hsla(359, 66%, 35%, .2);--color-code-syntax-deleted-text: hsl(3, 85%, 70%);--color-code-syntax-output: hsl(211, 11%, 56%);--color-code-syntax-meta: hsl(211, 17%, 75%);--color-bg-selection: hsl(217, 24%, 24%);--color-fg-selection: hsl(0, 0%, 90%);--color-bg-scrollbar: hsl(216, 14%, 6%);--color-bg-scrollbar-thumb: hsl(215, 23%, 20%);--color-bg-scrollbar-thumb-hover: hsl(215, 23%, 35%);--color-bg-retro-counter: hsl(210, 15%, 12%);--color-retro-counter-segment-active: hsl(209, 18%, 70%);--color-retro-counter-segment-inactive: hsl(214, 29%, 20%);--color-bg-cloud-100: hsl(210, 15%, 6%);--color-bg-cloud-300: hsl(212, 40%, 9%);--color-bg-cloud-400: hsl(213, 40%, 10%);--color-bg-cloud-500: hsl(213, 40%, 12%);--color-bg-sky-from: hsl(214, 40%, 11%);--color-bg-sky-to: hsl(200, 50%, 30%);--color-bg-sky-subtle: hsl(210, 40%, 16%);--color-bg-sky-bottom: hsla(212, 32%, 8%, .5);--color-typed-text: hsl(40, 100%, 50%);--box-shadow-floating-legacy: 0px 6px 12px -3px hsl(210 30% 4% / .45), 0px 6px 18px 0px hsl(210 30% 4% / .45);--box-shadow-floating-sm: 0px 0px 0px 1px hsl(217 12% 22%), 0px 6px 12px -3px hsl(210 30% 4% / .45), 0px 6px 18px 0px hsl(210 30% 4% / .45);--box-shadow-xs: 0 0 2px 0 hsla(210, 30%, 96%, .04);--box-shadow-sm: 0 0 4px 0 hsla(210, 30%, 96%, .06);--box-shadow-md: 0 0 8px 1px hsla(210, 30%, 96%, .08);--box-shadow-lg: 0 0 12px 2px hsla(210, 30%, 96%, .12);--box-shadow-xl: 0 0 20px 4px hsla(210, 30%, 96%, .15);--box-shadow-xxl: 0 0 35px 6px hsla(210, 30%, 96%, .2);--text-shadow-contrast-soft: 0 1px 1px hsla(210, 30%, 96%, .2);--gradient-bg-shimmer: radial-gradient(circle, hsla(210, 77%, 77%, 0) 0%, hsla(210, 77%, 77%, .05) 35%, hsla(210, 77%, 77%, .1) 50%, hsla(210, 77%, 77%, .05) 65%, hsla(210, 77%, 77%, 0) 100%);--gradient-bg-shimmer-pseudo: linear-gradient(90deg, hsla(210, 77%, 77%, 0) 0%, hsla(210, 77%, 77%, .1) 50%, hsla(210, 77%, 77%, 0) 100%)}[data-theme=soft-dark]{color-scheme:soft-dark;--color-bg-default: hsl(212, 18%, 16%);--color-bg-muted: hsl(218, 17%, 18%);--color-bg-neutral-emphasis: hsl(215, 8%, 43%);--color-bg-neutral-muted: hsla(215, 8%, 43%, .2);--color-bg-disabled: hsl(217, 18%, 20%);--color-bg-transparent: hsla(0, 0%, 0%, 0);--color-bg-accent-emphasis: hsl(216, 61%, 49%);--color-bg-accent-muted: hsla(215, 75%, 57%, .102);--color-bg-success-emphasis: hsl(124, 41%, 35%);--color-bg-success-muted: hsla(123, 36%, 43%, .149);--color-bg-danger-emphasis: hsl(2, 57%, 50%);--color-bg-danger-muted: hsla(3, 75%, 60%, .102);--color-bg-attention-emphasis: hsl(22, 67%, 41%);--color-bg-attention-muted: hsla(24, 65%, 49%, .1);--color-fg-default: hsl(216, 19%, 85%);--color-fg-muted: hsl(214, 8%, 60%);--color-fg-neutral: hsl(214, 8%, 60%);--color-fg-on-emphasis: hsl(210, 67%, 96%);--color-fg-link: hsl(214, 76%, 59%);--color-fg-link-hover: hsl(205, 100%, 31%);--color-fg-link-visited: hsl(275, 100%, 25%);--color-fg-link-focus: hsl(205, 100%, 31%);--color-fg-disabled: hsl(215, 8%, 43%);--color-fg-white: hsl(210, 32%, 85%);--color-fg-accent: hsl(214, 76%, 59%);--color-fg-accent-muted: hsl(210, 100%, 82%);--color-fg-success: hsl(122, 33%, 51%);--color-fg-danger: hsl(3, 75%, 60%);--color-fg-attention: hsl(24, 65%, 49%);--color-border-default: hsl(214, 12%, 27%);--color-border-muted: hsla(214, 12%, 27%, .702);--color-border-neutral-muted: hsla(214, 12%, 27%, .702);--color-border-disabled: hsla(215, 8%, 43%, .102);--color-border-transparent: hsla(0, 0%, 0%, 0);--color-border-accent-emphasis: hsl(216, 61%, 49%);--color-border-accent-muted: hsla(215, 75%, 57%, .4);--color-border-success-emphasis: hsl(124, 41%, 35%);--color-border-success-muted: hsla(123, 36%, 43%, .4);--color-border-danger-emphasis: hsl(2, 57%, 50%);--color-border-danger-muted: hsla(3, 75%, 60%, .4);--color-border-attention-emphasis: hsl(22, 67%, 41%);--color-border-attention-muted: hsla(24, 65%, 49%, .4);--color-outline-focus: hsl(216, 61%, 49%);--color-bg-control: hsl(217, 18%, 20%);--color-bg-control-hover: hsl(215, 17%, 22%);--color-fg-control: hsl(216, 19%, 85%);--color-border-control: hsl(214, 12%, 27%);--color-bg-control-disabled: hsl(217, 18%, 20%);--color-fg-control-disabled: hsl(215, 8%, 43%);--color-border-control-disabled: hsla(215, 8%, 43%, .102);--color-bg-control-active: hsl(214, 12%, 27%);--color-bg-control-transparent: hsla(0, 0%, 0%, 0);--color-border-control-transparent: hsla(0, 0%, 0%, 0);--color-bg-control-transparent-hover: hsla(215, 8%, 43%, .149);--color-border-control-transparent-hover: hsla(0, 0%, 0%, 0);--color-bg-control-transparent-active: hsla(215, 8%, 43%, .2);--color-border-control-transparent-active: hsla(0, 0%, 0%, 0);--color-bg-overlay: hsl(217, 18%, 20%);--color-border-overlay: hsla(214, 12%, 27%, .702);--color-code-syntax-comment: hsl(211, 11%, 51%);--color-code-syntax-error-text: hsl(3, 85%, 68%);--color-code-syntax-error-bg: hsla(359, 66%, 29%, .2);--color-code-syntax-keyword: hsl(3, 85%, 68%);--color-code-syntax-namespace: hsl(258, 72%, 75%);--color-code-syntax-number: hsl(210, 100%, 71%);--color-code-syntax-string: hsl(207, 100%, 79%);--color-code-syntax-name: hsl(120, 52%, 56%);--color-code-syntax-builtin: hsl(32, 92%, 64%);--color-code-syntax-decorator: hsl(276, 73%, 86%);--color-code-syntax-entity: hsl(38, 59%, 66%);--color-code-syntax-function: hsl(210, 100%, 71%);--color-code-syntax-tag: hsl(120, 52%, 56%);--color-code-syntax-symbol: hsl(32, 92%, 64%);--color-code-syntax-subtle: hsl(214, 11%, 30%);--color-code-syntax-heading: hsl(210, 32%, 85%);--color-code-syntax-inserted-bg: hsl(137, 92%, 11%);--color-code-syntax-inserted-text: hsl(120, 52%, 56%);--color-code-syntax-deleted-bg: hsla(359, 66%, 29%, .2);--color-code-syntax-deleted-text: hsl(3, 85%, 68%);--color-code-syntax-output: hsl(211, 11%, 51%);--color-code-syntax-meta: hsl(211, 17%, 70%);--color-bg-selection: hsl(220, 25%, 24%);--color-fg-selection: hsl(216, 19%, 85%);--color-bg-scrollbar: hsl(215, 19%, 15%);--color-bg-scrollbar-thumb: hsl(220, 21%, 30%);--color-bg-scrollbar-thumb-hover: hsl(220, 20%, 38%);--color-bg-retro-counter: hsl(220, 23%, 13%);--color-retro-counter-segment-active: hsl(209, 18%, 70%);--color-retro-counter-segment-inactive: hsl(220, 25%, 24%);--color-bg-cloud-100: hsl(212, 18%, 16%);--color-bg-cloud-300: hsl(212, 22%, 20%);--color-bg-cloud-400: hsl(213, 25%, 24%);--color-bg-cloud-500: hsl(213, 28%, 28%);--color-bg-sky-from: hsl(212, 28%, 18%);--color-bg-sky-to: hsl(200, 45%, 30%);--color-bg-sky-subtle: hsl(210, 28%, 22%);--color-bg-sky-bottom: hsla(212, 20%, 14%, .5);--color-typed-text: hsl(48, 100%, 50%);--box-shadow-floating-legacy: 0px 6px 12px -3px hsl(210 67% 1% / .4), 0px 6px 18px 0px hsl(210 67% 1% / .4);--box-shadow-floating-sm: 0px 0px 0px 1px hsl(217 12% 27%), 0px 6px 12px -3px hsl(210 67% 1% / .4), 0px 6px 18px 0px hsl(210 67% 1% / .4);--box-shadow-xs: 0 0 2px 0 hsla(0, 0%, 100%, .04);--box-shadow-sm: 0 0 4px 0 hsla(0, 0%, 100%, .06);--box-shadow-md: 0 0 8px 1px hsla(0, 0%, 100%, .08);--box-shadow-lg: 0 0 12px 2px hsla(0, 0%, 100%, .12);--box-shadow-xl: 0 0 20px 4px hsla(0, 0%, 100%, .15);--box-shadow-xxl: 0 0 35px 6px hsla(0, 0%, 100%, .2);--text-shadow-contrast-soft: 0 1px 1px hsla(0, 0%, 100%, .1);--gradient-bg-shimmer: radial-gradient(circle, hsla(210, 77%, 77%, 0) 0%, hsla(210, 77%, 77%, .05) 35%, hsla(210, 77%, 77%, .1) 50%, hsla(210, 77%, 77%, .05) 65%, hsla(210, 77%, 77%, 0) 100%);--gradient-bg-shimmer-pseudo: linear-gradient(90deg, hsla(210, 77%, 77%, 0) 0%, hsla(210, 77%, 77%, .1) 50%, hsla(210, 77%, 77%, 0) 100%)}:focus,:focus-visible{outline:.125rem solid var(--color-outline-focus);outline-offset:.125rem}:focus:not(:focus-visible){outline:none;box-shadow:none}:disabled,.disabled,[aria-disabled=true]{box-shadow:none;cursor:not-allowed!important;pointer-events:none}#mask{position:fixed;inset:0;height:100%;width:100%;z-index:998;opacity:0;pointer-events:none;transition:background-color .3s cubic-bezier(.6,0,.2,1),opacity .3s cubic-bezier(.6,0,.2,1);will-change:background-color,opacity}.series-nav .series-nav-links,.recently-updated-posts .recently-updated-list,.tags,.header-drawer .drawer-navigation .nav-list,.drawer-footer .footer-links,.nav-links,.list-group,.timeline-posts,.list-unstyled{list-style:none;padding:0;margin:0}.float-left{float:left;margin:.75rem 1rem 1rem 0!important}.float-right{float:right;margin:.75rem 0 1rem 1rem!important}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}hr{border:none;height:1px;background:linear-gradient(to right,transparent,var(--color-border-default),transparent);margin-block:clamp(.75rem,1vw,1rem)}.accordion-header .accordion-title:after,.clearfix:after{content:" ";display:table;clear:both}.middle-dot-separator:not(:last-child):after{content:"";display:inline-block;width:.25rem;height:.25rem;background:currentColor;border-radius:624.9375rem;margin-inline:.75rem;opacity:.5;vertical-align:middle}.required:after{color:var(--color-fg-danger);content:"*";margin-left:.25rem;top:-2px;font-weight:700}@media (prefers-reduced-motion: reduce){*{transition:none;animation:none}}.visually-hidden{width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:none!important}.visually-hidden:not(caption){position:absolute!important}.visually-hidden *{overflow:hidden!important}.skip-link{position:absolute;top:2rem;left:2rem;z-index:9999;padding:.5rem .75rem;opacity:0;pointer-events:none;transform:translateY(-100vh);border:.0625rem solid var(--color-border-control);border-radius:.375rem;transition:transform .15s cubic-bezier(.25,.1,.25,1),opacity .15s cubic-bezier(.25,.1,.25,1);will-change:transform,opacity}.skip-link:focus{color:var(--color-fg-control);background-color:var(--color-bg-control-hover);border-color:var(--color-border-control);transform:translateY(0);opacity:1;pointer-events:auto;text-decoration:none}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}*{scrollbar-color:var(--color-bg-scrollbar-thumb) var(--color-bg-scrollbar)}::-webkit-scrollbar{width:9px;height:9px;background-color:var(--color-bg-scrollbar)}html::-webkit-scrollbar,body::-webkit-scrollbar{width:12px;height:12px;background-color:var(--color-bg-scrollbar)}::-webkit-scrollbar-thumb{background-color:var(--color-bg-scrollbar-thumb);border-radius:10px;border:2px solid var(--color-bg-scrollbar)}::-webkit-scrollbar-thumb:hover{background-color:var(--color-bg-scrollbar-thumb-hover)}::-webkit-scrollbar-track{border-radius:3px;background-color:var(--color-bg-scrollbar)}::-webkit-scrollbar-corner{background-color:var(--color-bg-scrollbar)}mark{background-color:var(--color-bg-attention-muted);color:var(--color-fg-default)}abbr[title]{text-decoration:underline dotted;cursor:help;border-bottom:none}.lead{font-size:clamp(1.125rem,2.4vw,1.25rem);font-weight:300;line-height:1.625}.note{min-height:17px;margin:.25rem 0 .1875rem;font-size:.875rem;color:var(--color-fg-muted)}.initialism{font-size:.75rem;text-transform:uppercase}small{font-size:.75rem;line-height:1.25}::selection{background-color:var(--color-bg-selection);color:var(--color-fg-selection)}blockquote{padding-inline:1em;color:var(--color-fg-muted);border-left:.25rem solid var(--color-border-default);margin-bottom:1rem;line-height:1.625;overflow-wrap:break-word;word-break:break-word;hyphens:auto}blockquote p{padding:.5rem}blockquote:first-child{margin-bottom:0}blockquote:last-child{margin-top:0}h1,.h1{font-size:clamp(1.75rem,3.5vw,2.25rem);font-weight:700}h1,.h1{text-wrap:pretty}h2,.h2{font-size:clamp(1.5rem,3.2vw,2rem);font-weight:600}h2,.h2{text-wrap:balance}h3,.h3{font-size:clamp(1.25rem,2.6vw,1.75rem);font-weight:500}h3,.h3{text-wrap:balance}h4,.h4{font-size:clamp(1.125rem,2.2vw,1.5rem);font-weight:500}h4,.h4{text-wrap:balance}h5,.h5{font-size:clamp(1.0625rem,1.8vw,1.375rem);font-weight:400}h5,.h5{text-wrap:balance}h6,.h6{font-size:clamp(1rem,1.6vw,1.25rem);font-weight:400}h6,.h6{text-wrap:balance}a{color:var(--color-fg-link);text-decoration:none}a:hover{text-decoration-color:var(--color-fg-link)}ul,ol{margin-block:.5rem;padding-left:2em;line-height:1.5}ul li,ol li{margin-bottom:.5rem;overflow-wrap:break-word;word-break:break-word;hyphens:auto}li:last-of-type{margin-bottom:0}dl{padding:0;margin-top:0;margin-bottom:1rem;line-height:1.5}dl dt{padding:0;margin-top:1rem;font-style:italic;font-weight:600}dl dd{padding-inline:1rem;margin-bottom:1rem}dl dd>*{overflow-wrap:break-word;word-break:break-word;hyphens:auto}p{margin-block:clamp(.5rem,.8vw,.75rem);line-height:1.75}table{display:block;margin-bottom:1rem;width:max-content;max-width:100%;border-collapse:collapse;overflow:auto}table th{font-weight:600;line-height:1.25}table td{line-height:1.375}table td,table th{padding:.5rem .75rem;border:.0625rem solid var(--color-border-default);text-align:inherit}table tr{background-color:var(--color-bg-default);border-top:.0625rem solid var(--color-border-muted)}table tr:nth-child(2n){background-color:var(--color-bg-muted)}.rouge-table{table-layout:fixed;margin-bottom:0;width:100%}.rouge-table tr{border-top:none;background-color:var(--color-bg-default)}.rouge-table td{vertical-align:top;padding:0;border:none}.rouge-table .gutter{position:sticky;left:0;text-align:right;z-index:1;background-color:var(--color-bg-muted);color:var(--color-fg-muted)}.rouge-table .code{width:100%;background-color:var(--color-bg-default)}.footnotes{font-size:.75rem;color:var(--color-fg-muted);border-top:.0625rem solid var(--color-border-default)}.footnote-list{padding-left:clamp(1rem,1.25vw,1.5rem)}.footnote-list .footnote-list-item{position:relative}.footnote-list .footnote-list-item:target{color:var(--color-fg-default)}.footnote-list .footnote-list-item:target:before{position:absolute;pointer-events:none;content:"";border:.125rem solid var(--color-border-accent-emphasis);border-radius:.375rem;inset:-.25rem .0625rem -.25rem -1.5rem}.footnote{font-size:.75rem}.footnote:before{content:"["}.footnote:after{content:"]"}a.reverse-footnote{font-size:.75rem;line-height:1.25;position:relative;bottom:.25em;margin-left:.25em;border-bottom-style:none!important;text-decoration:none}details{margin-block:1rem}details summary{display:flex;align-items:center;gap:.5rem;list-style:none;cursor:pointer;font-weight:500}details summary::-webkit-details-marker,details summary::marker{display:none}details summary p{margin:0}details[open] summary{font-weight:600}figure{display:block;margin-block:1rem;margin-inline:auto;max-width:100%;border:.0625rem solid var(--color-border-default);border-radius:.375rem}figure img{border-start-start-radius:.375rem;border-start-end-radius:.375rem}figure figcaption{font-size:.75rem;color:var(--color-fg-muted);font-style:italic;line-height:1.375;padding:.75rem}img{object-fit:cover}.img-fluid{max-width:100%;height:auto}.img-link{color:var(--color-bg-transparent);display:inline-flex}.markdown-img-wrapper{overflow:auto}svg{display:block;text-decoration:inherit;text-rendering:auto;text-transform:none;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;speak:none;vertical-align:middle;overflow:visible}.avatar{width:3rem;height:3rem;object-fit:contain}code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem;white-space:pre;border-radius:.375rem;line-height:1.6}code.highlighter-rouge,.alert code{font-size:inherit;background-color:var(--color-bg-neutral-muted);padding:.2em .4em .1em;line-height:1.5}code.filepath{background-color:inherit;font-weight:600;padding:0}figure.highlight,.highlight{background-color:var(--color-bg-muted)}figure.highlight code,.highlight code{display:block;width:100%}pre:not(:has(.rouge-table)){padding:1rem;overflow-x:auto}kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem;display:inline-block;padding:.125rem .25rem;line-height:1.25;color:var(--color-fg-default);vertical-align:middle;background-color:var(--color-bg-muted);border:.0625rem solid var(--color-border-muted);border-radius:.375rem;box-shadow:inset 0 -2px 0 var(--color-border-muted)}.hero{padding:clamp(.75rem,1vw,1rem);min-height:330px;display:flex;align-items:center;justify-content:center}.hero-content{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.5rem}@media (max-width: 48rem){.hero-content{align-items:flex-start}}.hero-content .hero-heading{font-size:clamp(1.5rem,4vw,2rem);line-height:1.1;margin-bottom:.5rem;font-weight:600}.hero-content .hero-subheading{font-size:clamp(1.125rem,2.4vw,1.25rem);font-weight:400;line-height:1.625;color:var(--color-fg-muted)}.hero-content .hero-typed{font-size:1.25rem;font-weight:500;color:var(--color-typed-text)}.hero-content .hero-highlight{letter-spacing:1px;background-color:var(--color-typed-text);background-image:linear-gradient(-268.67deg,var(--color-typed-text),var(--color-fg-attention));background-size:100%;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;text-decoration-color:var(--color-typed-text)}.hero-content .hero-typed .typed-cursor{color:var(--color-typed-text)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.shimmer{position:relative;overflow:hidden;background:var(--gradient-bg-shimmer)}.shimmer:before{content:"";position:absolute;inset:0;background:var(--gradient-bg-shimmer-pseudo);animation:shimmer 1s cubic-bezier(0,0,1,1) infinite;border-radius:inherit;pointer-events:none;z-index:1}.lazy-wrapper{transition:background-color .3s cubic-bezier(.25,.1,.25,1);will-change:background-color}.lazy-wrapper img{z-index:2}.lazy-wrapper img.shadow{box-shadow:var(--box-shadow-md)}.lazy-wrapper img[data-lqip=true].lazy-loading{filter:blur(.25rem)}.lazy-wrapper img[data-lqip=true].lazy-loaded,.lazy-wrapper img[data-lqip=true].lazy-error{filter:none;animation:fade-in .3s cubic-bezier(.7,.1,.75,.9)}.lazy-wrapper img:not([data-lqip=true]).lazy-loading{opacity:0;transition:opacity .3s cubic-bezier(.25,.1,.25,1);will-change:opacity}.lazy-wrapper img:not([data-lqip=true]).lazy-loaded,.lazy-wrapper img:not([data-lqip=true]).lazy-error{background-color:transparent!important;animation:fade-in .3s cubic-bezier(.7,.1,.75,.9)}.link-muted{color:var(--color-fg-muted)}.link-muted:hover{color:var(--color-fg-link)}.task-list .task-list-item{list-style-type:none}.task-list .task-list-item+.task-list-item{margin-top:.25rem}.task-list .task-list-item-checkbox{margin:0 .5em .25em -1.4em;vertical-align:middle}.card{display:flex;flex-direction:column;background:var(--color-bg-muted);border:.0625rem solid var(--color-border-muted);color:var(--color-fg-default);border-radius:.375rem;overflow:hidden;height:100%;padding-inline:1rem;padding-block:1rem}.card-header{margin-block-end:.5rem}.card-title{font-size:1.25rem;margin:0}.card-title .card-link{color:inherit;text-decoration:none}.card-body{flex:1 1 auto;margin-block-end:.5rem}.card-footer{font-size:.875rem;margin-block-start:.5rem}.alert{position:relative;display:flex;align-items:center;padding:1rem;border:.0625rem solid var(--color-border-neutral-muted);border-radius:.375rem;font-size:1rem;background-image:linear-gradient(var(--color-bg-neutral-muted),var(--color-bg-neutral-muted));color:var(--color-fg-default);gap:1rem;margin-bottom:.5rem;line-height:1.625;transition:opacity .3s cubic-bezier(.6,0,.2,1),transform .3s cubic-bezier(.6,0,.2,1),visibility .3s cubic-bezier(.6,0,.2,1);will-change:opacity,transform,visibility}.alert-success{background-image:linear-gradient(var(--color-bg-success-muted),var(--color-bg-success-muted));border-color:var(--color-border-success-emphasis)}.alert-success.alert-outlined{background-color:var(--color-bg-transparent);background-image:none;color:var(--color-fg-success);border-color:var(--color-border-success-emphasis)}.alert-success .alert-icon .icon{fill:var(--color-bg-success-emphasis)}.alert-danger{background-image:linear-gradient(var(--color-bg-danger-muted),var(--color-bg-danger-muted));border-color:var(--color-border-danger-emphasis)}.alert-danger.alert-outlined{background-color:var(--color-bg-transparent);background-image:none;color:var(--color-fg-danger);border-color:var(--color-border-danger-emphasis)}.alert-danger .alert-icon .icon{fill:var(--color-bg-danger-emphasis)}.alert-attention{background-image:linear-gradient(var(--color-bg-attention-muted),var(--color-bg-attention-muted));border-color:var(--color-border-attention-emphasis)}.alert-attention.alert-outlined{background-color:var(--color-bg-transparent);background-image:none;color:var(--color-fg-attention);border-color:var(--color-border-attention-emphasis)}.alert-attention .alert-icon .icon{fill:var(--color-bg-attention-emphasis)}.alert-accent{background-image:linear-gradient(var(--color-bg-accent-muted),var(--color-bg-accent-muted));border-color:var(--color-border-accent-emphasis)}.alert-accent.alert-outlined{background-color:var(--color-bg-transparent);background-image:none;color:var(--color-fg-accent);border-color:var(--color-border-accent-emphasis)}.alert-accent .alert-icon .icon{fill:var(--color-bg-accent-emphasis)}.alert.fade-out{opacity:0;transform:translateY(-.5rem);pointer-events:none;visibility:hidden}.alert-heading{font-weight:600;margin-block:.25rem;font-size:clamp(1rem,2vw,1.125rem)}.alert-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;color:inherit}.alert-content{flex:1}.alert-content p{margin-block:.5rem}.alert-dismiss{background-color:var(--color-bg-transparent);border:none;color:inherit;padding:0;line-height:1;flex-shrink:0}.alert-dismiss .icon-times{will-change:transform}.alert-dismiss:hover,.alert-dismiss:focus{background-color:var(--color-bg-transparent)}.badge{display:inline-block;padding:.25rem .5rem;font-size:clamp(.6875rem,1.2vw,.75rem);font-weight:500;line-height:1.25;text-align:center;white-space:nowrap;vertical-align:middle;background-color:var(--color-bg-muted);color:var(--color-fg-muted);border:.0625rem solid var(--color-border-muted);border-radius:.375rem}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;cursor:pointer;border:none;background:none;color:inherit;font:inherit;line-height:inherit;padding:0;margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem;background-color:var(--color-bg-control-transparent);border:.0625rem solid var(--color-border-control-transparent);font-size:clamp(.8125rem,1.4vw,.875rem);font-weight:600;border-radius:.375rem;transition:background-color .15s cubic-bezier(.6,0,.2,1),color .15s cubic-bezier(.6,0,.2,1),border-color .15s cubic-bezier(.6,0,.2,1);will-change:background-color,color,border-color}.btn:hover,.btn:focus{background-color:var(--color-bg-control-transparent-hover);border-color:var(--color-border-control-transparent-hover)}.btn.active{background-color:var(--color-bg-control-transparent-active);border-color:var(--color-border-control-transparent-active)}.btn .btn-text{margin:0 auto;flex:1;text-align:center}.btn .icon-left{margin-right:auto}.btn .icon-right{margin-left:auto}.btn:has(.icon-left),.btn:has(.icon-right){gap:0}.btn-secondary{background-color:var(--color-bg-control);color:var(--color-fg-control);border:.0625rem solid var(--color-border-control)}.btn-secondary:hover,.btn-secondary:focus{background-color:var(--color-bg-control-hover);border-color:var(--color-border-control)}.btn-secondary.active{background-color:var(--color-bg-control-active)}.btn-secondary:disabled,.btn-secondary.disabled,.btn-secondary[aria-disabled=true]{background-color:var(--color-bg-control-disabled);color:var(--color-fg-control-disabled);border-color:var(--color-border-control-disabled);cursor:not-allowed}.btn-sm{padding:.25rem;font-size:clamp(.6875rem,1.2vw,.75rem);border-radius:.1875rem}.tooltip{position:absolute;background-color:var(--color-bg-overlay);border:.0625rem solid var(--color-border-overlay);box-shadow:var(--box-shadow-floating-legacy);padding:.25rem .5rem;border-radius:.375rem;font-size:.75rem;z-index:1000;pointer-events:none;opacity:0;transform:scale(.95);max-width:250px;width:max-content;white-space:normal;text-align:center;transition:opacity .15s cubic-bezier(.16,1,.3,1);will-change:opacity}.tooltip.show{opacity:1;pointer-events:auto}.tooltip.hide{opacity:0;pointer-events:none}@media (max-width: 48rem){.tooltip{max-width:180px}}.tooltip-arrow{position:absolute;pointer-events:none;width:1rem;height:1rem}.tooltip-arrow:before,.tooltip-arrow:after{content:"";position:absolute;width:0;height:0;border:.5rem solid var(--color-border-transparent);z-index:-1}[data-popper-placement^=top]>.tooltip-arrow{bottom:-1rem}[data-popper-placement^=top]>.tooltip-arrow:before{border-top-color:var(--color-border-overlay);bottom:0;left:50%;transform:translate(-50%)}[data-popper-placement^=top]>.tooltip-arrow:after{border-top-color:var(--color-bg-overlay);bottom:.09375rem;left:50%;transform:translate(-50%)}[data-popper-placement^=bottom]>.tooltip-arrow{top:-1rem}[data-popper-placement^=bottom]>.tooltip-arrow:before{border-bottom-color:var(--color-border-overlay);top:0;left:50%;transform:translate(-50%)}[data-popper-placement^=bottom]>.tooltip-arrow:after{border-bottom-color:var(--color-bg-overlay);top:.09375rem;left:50%;transform:translate(-50%)}[data-popper-placement^=left]>.tooltip-arrow{right:-1rem}[data-popper-placement^=left]>.tooltip-arrow:before{border-left-color:var(--color-border-overlay);right:0;top:50%;transform:translateY(-50%)}[data-popper-placement^=left]>.tooltip-arrow:after{border-left-color:var(--color-bg-overlay);right:.09375rem;top:50%;transform:translateY(-50%)}[data-popper-placement^=right]>.tooltip-arrow{left:-1rem}[data-popper-placement^=right]>.tooltip-arrow:before{border-right-color:var(--color-border-overlay);left:0;top:50%;transform:translateY(-50%)}[data-popper-placement^=right]>.tooltip-arrow:after{border-right-color:var(--color-bg-overlay);left:.09375rem;top:50%;transform:translateY(-50%)}.collapse{margin-block:1.5rem}.collapse .collapse-toggle{display:flex;align-items:center;gap:.5rem;padding:0;background:none;border:0;font-size:1rem;font-weight:600;width:100%}.collapse .collapse-toggle .icon{width:1.5rem;height:1.5rem}.collapse .collapse-content{padding-left:2rem;overflow:hidden;opacity:0;height:0;transform:translateY(-15px);will-change:transform,opacity}.timeline-wrapper{display:flex;flex-direction:column}.timeline-year,.timeline-post{display:flex;align-items:center;position:relative;gap:.5rem;padding-inline:.5rem;padding-block:.5rem;border-radius:.375rem;border:.0625rem solid var(--color-border-transparent);z-index:2}.timeline-post{background-image:linear-gradient(var(--color-bg-accent-muted),var(--color-bg-accent-muted));border-color:var(--color-border-accent-muted);margin-bottom:1rem;box-shadow:var(--box-shadow-sm);transition:box-shadow .3s cubic-bezier(.25,.1,.25,1);will-change:box-shadow}@media (max-width: 48rem){.timeline-post .timeline-left{font-size:.85rem}}.timeline-post:hover{box-shadow:var(--box-shadow-md)}.timeline-left{flex:0 0 5.5rem;text-align:right;font-weight:500;font-variant-numeric:tabular-nums;color:var(--color-fg-muted);white-space:nowrap}@media (max-width: 48rem){.timeline-left{flex:0 0 4rem}}.timeline-year .timeline-left{color:var(--color-fg-default);margin-block:.5rem}.timeline-year .timeline-seperator:before{width:1rem;height:1rem;background:var(--color-bg-accent-emphasis);box-shadow:0 0 8px 2px var(--color-fg-accent)}.timeline-seperator{flex:0 0 2rem;display:flex;justify-content:center;align-items:center;position:relative;z-index:1}.timeline-seperator:before{content:"";width:.75rem;height:.75rem;background:var(--color-fg-accent);border:.125rem solid var(--color-border-default);box-shadow:0 0 8px 1px var(--color-fg-accent);border-radius:624.9375rem;z-index:2}.timeline-seperator:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:.125rem;height:4rem;background:var(--color-border-default);z-index:1}.timeline-year:first-of-type .timeline-seperator:after{transform:translate(-50%);height:2rem}.timeline-year:last-of-type+.timeline-posts li:last-child .timeline-seperator:after{transform:translate(-50%,-100%);height:2rem}.timeline-right{flex:1;font-weight:500}.dropdown{position:relative;display:inline-block}.dropdown-menu{position:absolute;display:none;background-color:var(--color-bg-overlay);border:.0625rem solid var(--color-border-overlay);box-shadow:var(--box-shadow-floating-sm);border-radius:.375rem;z-index:999;pointer-events:none;list-style:none;width:max-content;min-width:10rem;padding:.5rem}.dropdown-menu.show{display:block;pointer-events:auto}.dropdown-arrow{position:absolute;pointer-events:none;width:1rem;height:1rem}.dropdown-arrow:before,.dropdown-arrow:after{content:"";position:absolute;width:0;height:0;border:.5rem solid var(--color-border-transparent);z-index:-1}[data-popper-placement^=top]>.dropdown-arrow{bottom:-1rem}[data-popper-placement^=top]>.dropdown-arrow:before{border-top-color:var(--color-border-overlay);bottom:0;left:50%;transform:translate(-50%)}[data-popper-placement^=top]>.dropdown-arrow:after{border-top-color:var(--color-bg-overlay);bottom:.09375rem;left:50%;transform:translate(-50%)}[data-popper-placement^=bottom]>.dropdown-arrow{top:-1rem}[data-popper-placement^=bottom]>.dropdown-arrow:before{border-bottom-color:var(--color-border-overlay);top:0;left:50%;transform:translate(-50%)}[data-popper-placement^=bottom]>.dropdown-arrow:after{border-bottom-color:var(--color-bg-overlay);top:.09375rem;left:50%;transform:translate(-50%)}[data-popper-placement^=left]>.dropdown-arrow{right:-1rem}[data-popper-placement^=left]>.dropdown-arrow:before{border-left-color:var(--color-border-overlay);right:0;top:50%;transform:translateY(-50%)}[data-popper-placement^=left]>.dropdown-arrow:after{border-left-color:var(--color-bg-overlay);right:.09375rem;top:50%;transform:translateY(-50%)}[data-popper-placement^=right]>.dropdown-arrow{left:-1rem}[data-popper-placement^=right]>.dropdown-arrow:before{border-right-color:var(--color-border-overlay);left:0;top:50%;transform:translateY(-50%)}[data-popper-placement^=right]>.dropdown-arrow:after{border-right-color:var(--color-bg-overlay);left:.09375rem;top:50%;transform:translateY(-50%)}.dropdown-item{display:grid;grid-template-columns:auto 1fr;grid-template-rows:max-content;align-items:center;gap:.5rem;color:var(--color-fg-control);font-weight:500;padding-block:.25rem;padding-inline:.5rem;background-color:var(--color-bg-control-transparent);border-radius:.1875rem;width:100%;-webkit-tap-highlight-color:transparent;text-align:left;touch-action:manipulation;line-height:1.25;transition:background-color .15s cubic-bezier(.6,0,.2,1);will-change:background-color}.dropdown-item:hover,.dropdown-item:focus{color:var(--color-fg-control);background-color:var(--color-bg-control-transparent-hover);text-decoration:none}.dropdown-item-selected{position:relative}.dropdown-item-selected:after{content:"";position:absolute;right:.5rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;display:inline-block;width:clamp(1.25em,2.5vw,1.35em);height:clamp(1.25em,2.5vw,1.35em);background-color:var(--color-fg-success);mask-image:url("./check-circle-J7UAEKWQ.svg");mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-image:url("./check-circle-J7UAEKWQ.svg");-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center}.accordion{display:flex;flex-direction:column;gap:clamp(1rem,1.25vw,1.5rem)}.accordion-item{border:.0625rem solid var(--color-border-accent-muted);border-radius:.375rem;overflow:hidden;transition:box-shadow .3s cubic-bezier(.25,.1,.25,1);will-change:box-shadow}.accordion-item[data-expanded]{box-shadow:var(--box-shadow-md)}.accordion-toggle{border-radius:624.9375rem;padding:.25rem}.accordion-toggle .icon-arrow-down{transition:transform .3s cubic-bezier(.25,.1,.25,1);will-change:transform}.accordion-item[data-expanded] .accordion-toggle .icon-arrow-down{transform:rotate(-180deg)}.accordion-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem;background-image:linear-gradient(var(--color-bg-accent-muted),var(--color-bg-accent-muted))}.accordion-header .accordion-title{display:inline-flex;align-items:center;gap:.5rem}.accordion-header .accordion-title .icon{flex-shrink:0}.accordion-body{height:0;overflow:hidden;display:block;background-color:var(--color-bg-default);transition:height .3s cubic-bezier(.25,.1,.25,1);will-change:height}.navigation{display:flex;flex-direction:column;margin-top:clamp(1.5rem,2vw,2rem)}@media (min-width: 48rem){.navigation{flex-direction:row;justify-content:space-between}}.navigation-link{display:block;position:relative;flex:1;padding:clamp(.75rem,1vw,1rem);border:.0625rem solid var(--color-border-control);border-radius:.375rem;background-color:var(--color-bg-control);text-align:center;transition:background-color .15s cubic-bezier(.25,.1,.25,1),border-color .15s cubic-bezier(.25,.1,.25,1),box-shadow .15s cubic-bezier(.25,.1,.25,1);will-change:background-color,border-color,box-shadow}.navigation-link:hover,.navigation-link:focus{background-color:var(--color-bg-control-hover);box-shadow:var(--box-shadow-sm);text-decoration:none}.navigation-link.disabled{background-color:var(--color-bg-control-disabled);color:var(--color-fg-control-disabled);border-color:var(--color-border-control-disabled)}.navigation-link.disabled .label,.navigation-link.disabled .title{color:var(--color-fg-control-disabled)}.navigation-link .label{color:var(--color-fg-control);display:block;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.navigation-link .title{font-size:.9em;line-height:1.75}.navigation-link:first-child{border-radius:.375rem .375rem 0 0;inset:0 0 -1px}.navigation-link:last-child{border-radius:0 0 .375rem .375rem;inset:-1px 0 0}@media (min-width: 48rem){.navigation-link:first-child{border-radius:.375rem 0 0 .375rem;inset:0 0 0 1px}.navigation-link:last-child{border-radius:0 .375rem .375rem 0;inset:0 1px 0 0}}.pagination-wrapper{display:flex;justify-content:center;flex-direction:row;margin-block:clamp(1rem,1.25vw,1.5rem)}.pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem}.page-link{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem .75rem;background-color:var(--color-bg-control);color:var(--color-fg-control);border:.0625rem solid var(--color-border-default);border-radius:.1875rem}.page-link:hover{background-color:var(--color-bg-control-hover);border-color:var(--color-border-control);text-decoration:none}.list-group-item{position:relative;display:flex;align-items:center;gap:.5rem;padding-block:.75rem;padding-inline:1rem;margin-block:0;border-top:.0625rem solid var(--color-border-default)}.list-group-item:hover{background-color:var(--color-bg-muted)}.scroll-top{position:fixed;bottom:2rem;right:1rem;z-index:1000;width:3rem;height:3rem;border-radius:624.9375rem;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(20px);transition:right .15s cubic-bezier(.6,0,.2,1),background-color .15s cubic-bezier(.6,0,.2,1),color .15s cubic-bezier(.6,0,.2,1),border-color .15s cubic-bezier(.6,0,.2,1);will-change:right,background-color,color,border-color}@media (max-width: 48rem){.scroll-top{right:.75rem}}.scroll-top[data-state=visible]{animation:scrollTopBounceIn .5s both;pointer-events:auto;opacity:1}.scroll-top[data-state=hidden]{animation:scrollTopBounceOut .5s both;pointer-events:none;opacity:0}.toc-wrapper{grid-area:toc;position:sticky;top:6.5rem;max-height:calc(100vh - 6.5rem);padding-inline:.5rem;align-self:start;font-size:.875rem;overflow-y:auto;scrollbar-width:thin}@media (max-width: 64rem){.toc-wrapper{display:none}}.toc-wrapper .toc-heading{font-size:1rem;margin-block-end:1rem;font-weight:500;text-transform:uppercase;letter-spacing:2px}.toc-wrapper .toc-link{color:var(--color-fg-muted);text-decoration:none}.toc-wrapper .toc-link.active{color:var(--color-fg-link);font-weight:600}.toc-level-2,.toc-level-3,.toc-level-4{list-style:none}.toc-level-2{padding:0}.toc-level-3,.toc-level-4{padding-inline-start:1rem}.hero-banner{position:absolute;inset:5rem 0 auto;isolation:isolate;background:var(--color-bg-sky-from);overflow:hidden;overflow:clip;margin-top:-7.75rem;padding-top:7.75rem;width:100vw;z-index:0;pointer-events:none}.sky-layer{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;overflow:hidden;overflow:clip;transition:background .85s cubic-bezier(.41,.1,.13,1);will-change:background}.sky-layer-back.sky-layer{background:linear-gradient(to bottom,var(--color-bg-sky-from),var(--color-bg-sky-to));margin-top:-32px}.sky-layer-front.sky-layer{position:absolute;z-index:3;inset:auto 0 0}.sky-svg{display:block;max-width:revert;min-width:320rem;transform:translateZ(0) translateY(1px)}@media (max-width: 48rem){.sky-svg{--magic-number: calc(-50vw + 25rem) ;margin-top:-1rem;transform:translateZ(0) translate(var(--magic-number),1px)}}.cloud-background{fill:var(--color-bg-cloud-500);transition:fill .47s cubic-bezier(.41,.1,.13,1);will-change:fill}.cloud-midground{fill:var(--color-bg-cloud-300);transition:fill .59s cubic-bezier(.41,.1,.13,1);will-change:fill}.cloud-foreground{fill:var(--color-bg-default);transition:fill .35s cubic-bezier(.41,.1,.13,1);will-change:fill}.star{fill:#fff}.sky-banner-top{display:flex;flex-direction:column;isolation:isolate;overflow:hidden;overflow:clip;max-height:100vh;pointer-events:none}.sky-banner-top .cloud-layers{position:absolute;inset:0 0 auto;padding-top:3rem;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;background:linear-gradient(to bottom,var(--color-bg-sky-from),var(--color-bg-sky-to));overflow:hidden;overflow:clip;z-index:-1;transition:background .85s cubic-bezier(.41,.1,.13,1);will-change:background}.sky-banner-top .cloud-layers.inner{background:linear-gradient(to bottom,hsl(from var(--color-bg-sky-subtle) h s l/.925),var(--color-bg-sky-subtle))}.sky-banner-top .cloud-layers .cloud-shapes{display:block;max-width:revert;min-width:5120px;overflow:visible;transform:translateZ(0) translateY(1px)}@media (min-width: 30rem) and (max-width: 48rem){.sky-banner-top .cloud-layers .cloud-shapes{min-width:670vw}}.sky-banner-top .cloud-layers .cloud-shapes .background-clouds{fill:var(--color-bg-cloud-500);transition:fill .47s cubic-bezier(.41,.1,.13,1);will-change:fill}.sky-banner-top .cloud-layers .cloud-shapes .midground-clouds{fill:var(--color-bg-cloud-300);transition:fill .59s cubic-bezier(.41,.1,.13,1);will-change:fill}.sky-banner-top .cloud-layers .cloud-shapes .foreground-clouds{fill:var(--color-bg-default);transition:fill .35s cubic-bezier(.41,.1,.13,1);will-change:fill}.sky-banner-bottom{position:absolute;inset:auto 0 0;height:350px;z-index:-1;pointer-events:none;overflow:hidden;overflow:clip;background:linear-gradient(to top,hsl(from var(--color-bg-sky-subtle) h s l/.925),var(--color-bg-sky-subtle));transition:background .85s cubic-bezier(.41,.1,.13,1);will-change:background}.sky-banner-bottom .cloud-layers-top-overlay{display:block;position:absolute;inset:auto 50% 0 auto;z-index:1;transform:translateZ(0)}.sky-banner-bottom .cloud-layers-top-overlay .bottom-cloud-overlay{fill:var(--color-bg-sky-bottom);transition:fill .47s cubic-bezier(.41,.1,.13,1);will-change:fill}@media (min-width: 30rem) and (max-width: 48rem){.sky-banner-bottom .cloud-layers-top-overlay{transform:translate(80px)}}.sky-banner-bottom .cloud-layers-bottom{position:absolute;inset:0 0 auto;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;overflow:hidden;overflow:clip;margin-top:-1px}.sky-banner-bottom .cloud-layers-bottom .cloud-shapes-bottom{display:block;margin-top:-1px;max-width:revert;min-width:5120px;overflow:visible;transform:translateZ(0)}.sky-banner-bottom .cloud-layers-bottom .cloud-shapes-bottom .bottom-background-clouds{fill:var(--color-bg-default);transition:fill .35s cubic-bezier(.41,.1,.13,1);will-change:fill}@keyframes slide-down{0%{transform:translateY(-50%)}to{transform:translateY(0)}}.retro-counter-container{display:inline-flex;gap:.75rem;align-items:center;color:var(--color-fg-muted);text-align:center;margin-top:clamp(1rem,1.25vw,1.5rem);font-size:clamp(1.125rem,2.4vw,1.25rem)}.retro-counter{display:flex;gap:.25rem;background:var(--color-bg-retro-counter);border-radius:.375rem;border:5px solid var(--color-bg-retro-counter)}.retro-counter .segment{width:1.5rem;height:2rem;animation:fade-in .3s cubic-bezier(.25,.1,.25,1) both,slide-down .3s cubic-bezier(.25,.1,.25,1) both}.retro-counter .segment:nth-child(1){animation-delay:0ms}.retro-counter .segment:nth-child(2){animation-delay:.1s}.retro-counter .segment:nth-child(3){animation-delay:.2s}.retro-counter .segment:nth-child(4){animation-delay:.3s}.retro-counter .segment:nth-child(5){animation-delay:.4s}.retro-counter .segment:nth-child(6){animation-delay:.5s}use.on{fill:var(--color-retro-counter-segment-active)}use.off{fill:var(--color-retro-counter-segment-inactive)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 48rem){.form-row{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column}.form-label{font-weight:600;vertical-align:middle;margin-bottom:.5rem;color:var(--color-fg-default)}.form-control{border:1px solid var(--color-border-default);background:transparent;padding:.75rem 1rem;border-radius:.375rem;font-size:.875rem;color:var(--color-fg-default);transition:border-color .15s cubic-bezier(.25,.1,.25,1),box-shadow .15s cubic-bezier(.25,.1,.25,1);will-change:border-color,box-shadow}.form-control:focus{outline:none;border-color:var(--color-border-accent-emphasis);box-shadow:0 0 0 .25rem hsl(from var(--color-bg-accent-emphasis) h s l/.25)}textarea{resize:vertical;min-height:150px}.full-width{grid-column:1/-1}.heading-anchor{margin-left:.5em;font-size:.8em;text-decoration:none;color:var(--color-fg-muted);opacity:0;transition:color .3s cubic-bezier(.6,0,.2,1),opacity .3s cubic-bezier(.6,0,.2,1);will-change:color,opacity}.heading-anchor:hover{color:var(--color-fg-link)}h2:hover .heading-anchor,h2:focus-within .heading-anchor{opacity:1}h3:hover .heading-anchor,h3:focus-within .heading-anchor{opacity:1}h4:hover .heading-anchor,h4:focus-within .heading-anchor{opacity:1}h5:hover .heading-anchor,h5:focus-within .heading-anchor{opacity:1}h6:hover .heading-anchor,h6:focus-within .heading-anchor{opacity:1}.code-block{background-color:var(--color-bg-default);border:.0625rem solid var(--color-border-default);border-radius:.375rem;overflow:hidden;font-size:.875rem;box-shadow:var(--box-shadow-floating-legacy);margin-block:clamp(.75rem,1vw,1rem)}.code-block figure{margin-block:0;border:none;border-radius:0;background-color:var(--color-bg-default)}.code-block-header{display:flex;align-items:center;justify-content:space-between;background-color:var(--color-bg-muted);border-bottom:.0625rem solid var(--color-border-muted);padding:.5rem .75rem}.code-block-header .code-block-button-group{display:flex;gap:.25rem}.code-block-header .code-lang{display:flex;align-items:center;justify-content:center;gap:.25rem;flex-grow:1;font-weight:500;color:var(--color-fg-muted)}.code-block-header .code-actions{display:flex;align-items:center;gap:.5rem}.code-actions .btn-copy,.code-actions .btn-toggle-lines{display:inline-flex;align-items:center}[data-line-numbers=off] .gutter{display:none}[data-line-numbers=on] .icon-hash{stroke:hsl(from var(--color-fg-attention) h s l/.55)}.gutter .lineno{border-radius:0;border-right:.0625rem solid var(--color-border-default)}.code-block-button-group .code-block-action .icon-circle-fill{width:1em;height:1em}.code-block-button-group .code-close .icon-circle-fill{fill:var(--color-bg-danger-emphasis)}.code-block-button-group .code-minimize .icon-circle-fill{fill:var(--color-bg-attention-emphasis)}.code-block-button-group .code-maximize .icon-circle-fill,[data-copy-code] #icon-check,[data-copy-link] #icon-check,[data-copy-target] #icon-check{fill:var(--color-bg-success-emphasis)}html{height:100%;width:100%;scrollbar-width:thin;scrollbar-gutter:stable;scroll-behavior:smooth;scroll-padding-top:5rem;overflow-x:hidden}html[data-drawer=open]{overflow:hidden;touch-action:none;scrollbar-width:none;overscroll-behavior:contain;-ms-touch-action:none}html[data-drawer=open]::-webkit-scrollbar{display:none}body{min-height:100vh;width:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Noto Sans,Liberation Sans,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-size:clamp(.9375rem,1.8vw,1rem);font-weight:400;line-height:1.5;color:var(--color-fg-default);background:var(--color-bg-default);-webkit-font-smoothing:antialiased;position:relative;transition:background .35s cubic-bezier(.41,.1,.13,1),color .35s cubic-bezier(.41,.1,.13,1);will-change:background,color}.page-wrapper{position:relative;display:flex;flex-direction:column;min-height:100dvh;z-index:1}.main-content{flex:1;padding:clamp(.75rem,1vw,1rem);max-width:100dvw}.container{width:100%;max-width:clamp(var(--min-width, 37.5rem),90%,var(--max-width, 75rem));margin-inline:auto}.content-wrapper{width:100%;max-width:65ch;margin-inline:auto;padding-inline:1rem}@keyframes scooch-left{0%{transform:translate(6px)}to{transform:translate(0)}}@keyframes scooch-right{0%{transform:translate(-6px)}to{transform:translate(0)}}@keyframes self-draw{to{stroke-dashoffset:0}}@keyframes drop-icon{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.site-header{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;position:sticky;inset:0 0 auto;z-index:10;height:5rem;padding:clamp(.75rem,1vw,1rem);background:var(--color-bg-transparent);color:var(--color-fg-accent-muted);gap:.75rem;transition:background .35s cubic-bezier(.41,.1,.13,1),backdrop-filter .35s cubic-bezier(.41,.1,.13,1);will-change:background,backdrop-filter}@media (max-width: 48rem){.site-header{gap:.5rem;justify-content:space-between;min-height:5rem;height:auto}}.glassy-backdrop{--glass-color: hsl(from var(--color-bg-sky-from) h s l / var(--glass-opacity, $opacity-none));background:var(--glass-color);backdrop-filter:blur(var(--blur-amount, 0))}[data-is-over-threshold]{--glass-color: hsl(from var(--color-bg-default) h s l / var(--glass-opacity, $opacity-none))}.site-logo{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.125rem;color:inherit}.site-logo:hover{color:var(--color-fg-default);text-decoration:none}.site-logo .first-name{animation:scooch-left .3s cubic-bezier(.27,.22,.44,1.03) .3s both}.site-logo .last-name{animation:scooch-right .3s cubic-bezier(.27,.22,.44,1.03) .5s both}.site-logo .middle-name-initial{stroke-dasharray:100;stroke-dashoffset:100;animation:self-draw 1s cubic-bezier(.27,.22,.44,1.03) .8s both}.nav-items{display:flex;gap:.5rem;flex:1 1 auto}@media (max-width: 48rem){.nav-items{display:none}}.nav-links li{margin-block-end:0}.nav-links .nav-link{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;font-size:.875rem;color:inherit;padding-block:.25rem;padding-inline:.5rem}.nav-links .nav-link:hover{color:var(--color-fg-default)}.header-actions,.nav-links{display:flex;align-items:center;gap:.5rem}.header-action{padding:.5rem;border-radius:624.9375rem;background-color:var(--color-bg-control-transparent);color:inherit;border:.0625rem solid var(--color-border-control-transparent);font-size:clamp(.8125rem,1.4vw,.875rem);font-weight:600;animation:drop-icon calc(.5s + var(--index) * .1s) cubic-bezier(.17,.67,.2,1) both;animation-delay:calc(var(--index) * .1s)}.header-action:hover,.header-action:focus{background-color:var(--color-bg-control-transparent);border-color:var(--color-border-control-transparent-hover)}.header-action:nth-child(1){--index: 1}.header-action:nth-child(2){--index: 2}.header-action:nth-child(3){--index: 3}.header-action:nth-child(4){--index: 4}.header-action:nth-child(5){--index: 5}.header-action:nth-child(6){--index: 6}.toggle-menu{display:none}@media (max-width: 48rem){.toggle-menu{display:block}}.toggle-menu .icon-hamburger{transition:transform .3s cubic-bezier(.6,0,.2,1);will-change:transform}[data-drawer=open] .toggle-menu .icon-hamburger{transform:scale(1.5)}.dropdown.header-action{display:inline-flex}.site-footer{background:var(--color-bg-transparent);color:var(--color-fg-accent-muted);font-size:.875rem;padding:clamp(.75rem,1vw,1rem);margin-block-start:1rem}.site-footer .footer-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);grid-template-areas:"misc social" "legal credits";gap:.75rem;align-items:center}@media (max-width: 48rem){.site-footer .footer-grid{grid-template-columns:1fr;grid-template-areas:"misc" "legal" "social" "credits"}}.site-footer .footer-section{display:flex;gap:1rem;flex-wrap:wrap}@media (max-width: 48rem){.site-footer .footer-section{justify-content:center}}.site-footer .footer-links{grid-area:misc}.site-footer .footer-social{grid-area:social;justify-content:end;gap:1rem}@media (max-width: 48rem){.site-footer .footer-social{justify-content:center}}.site-footer .footer-legal{grid-area:legal}.site-footer .footer-credits{grid-area:credits;justify-content:end}@media (max-width: 48rem){.site-footer .footer-credits{justify-content:center}}.site-footer .footer-link{color:inherit;text-decoration:none;padding-block:.1875rem}.site-footer .footer-link:hover{color:var(--color-fg-default)}.post-content h1,.post-content h2,.section{border-bottom:.0625rem solid var(--color-border-default);padding-bottom:.25rem}.header-drawer{position:fixed;display:flex;flex-direction:column;inset:5rem .5rem .5rem;z-index:999;box-shadow:var(--box-shadow-md);box-sizing:border-box;border-radius:.375rem;padding-inline:clamp(.75rem,1vw,1rem);background:var(--color-bg-default);color:var(--color-fg-accent-muted);overflow-y:auto;pointer-events:none;opacity:0;transform:translate(25%)}[data-drawer=open] .header-drawer{pointer-events:auto}.header-drawer .drawer-container{display:flex;flex:1 1 auto;flex-direction:column;gap:.75rem;overflow-y:auto;-ms-overflow-style:none;scrollbar-width:none}.header-drawer .drawer-container::-webkit-scrollbar{display:none}.header-drawer .drawer-navigation{display:flex;flex-direction:column;line-height:1.25}.header-drawer .drawer-navigation .nav-item{padding-block:.25rem;margin-bottom:0;border-bottom:.0625rem solid var(--color-border-muted)}.header-drawer .drawer-navigation .nav-link{display:flex;align-items:center;gap:.5rem;padding-block:.75rem;padding-inline:.5rem;font-size:.875rem;color:inherit;text-decoration:none}.drawer-visuals{position:relative;border-radius:.375rem;overflow:hidden;overflow:clip;aspect-ratio:18/10;max-height:250px;background:linear-gradient(to top,var(--color-bg-sky-to) 30%,var(--color-bg-sky-from) 100%);margin-block-start:auto}.drawer-visuals .visual-cloud-shape,.drawer-visuals .visual-base-shape{max-width:revert;position:absolute}.drawer-visuals .visual-cloud-shape{min-width:475px;width:85%;height:14rem;inset:auto -1px -1px auto}.drawer-visuals .visual-base-shape{width:calc(100% + 3px);height:50%;inset:auto -1px -1px -1.5px}.drawer-visuals .visual-cloud-path{fill:var(--color-bg-sky-subtle)}.drawer-visuals .visual-base-path{fill:var(--color-bg-default)}.quick-links{position:absolute;right:.5rem;display:flex;flex-direction:column;gap:0;padding:0 0 6%;list-style-type:none}.drawer-footer .footer-links{display:flex;justify-content:space-evenly;font-size:.75rem}.drawer-footer .footer-links .footer-item{position:relative;margin-bottom:0}.drawer-footer .footer-links .footer-link{display:block;padding:.5rem;color:inherit;font-weight:500;text-align:center}.drawer-footer .footer-links .footer-link:hover{-webkit-text-decoration:none;text-decoration:none}.quick-link{display:block;padding:.5rem;color:inherit;font-size:.875rem;text-align:right}.quick-link:hover{-webkit-text-decoration:none;text-decoration:none}.tags{display:flex;flex-wrap:wrap;gap:clamp(.75rem,1vw,1rem)}.tags .tag{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:var(--color-bg-muted);border:.0625rem solid var(--color-border-default);border-radius:624.9375rem;font-size:.875rem;margin-bottom:0;transition:background-color .15s cubic-bezier(.6,0,.2,1);will-change:background-color}.tags .tag:hover{background-color:var(--color-bg-control-transparent-hover)}.tags .tag .tag-name{font-weight:500}.tags .tag .tag-count{display:inline-block;min-width:1.6em;padding:.1875rem var(space-sm);background-color:var(--color-bg-neutral-muted);color:var(--color-fg-neutral);font-size:.875rem;border-radius:50rem;border:.0625rem solid var(--color-border-neutral-muted);text-align:center}.tag-link{color:var(--color-fg-muted)}.tag-link:hover{color:var(--color-fg-accent)}.page-title{text-shadow:var(--text-shadow-contrast-soft);letter-spacing:.5px;margin-block-start:0;transition:text-shadow .3s cubic-bezier(.6,0,.2,1);will-change:text-shadow}.page-content{margin-block-start:1.5rem}.page-excerpt{font-size:1.0625rem;font-weight:500;line-height:1.625;color:var(--color-fg-accent-muted);margin-block-end:.5rem}.page-signoff{margin-block-start:clamp(2rem,3vw,3rem)}.signoff-wave{max-width:100px;margin-inline:auto;margin-block:2rem}.content-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,auto);grid-template-areas:"pinned-posts pinned-posts" "featured-posts featured-posts" "trending-tags popular-categories" "recently-updated recently-updated";gap:clamp(.5rem,.8vw,.75rem) clamp(1rem,1.25vw,1.5rem);align-items:start;box-sizing:border-box}@media (max-width: 48rem){.content-grid{grid-template-columns:1fr;grid-template-areas:"pinned-posts" "featured-posts" "trending-tags" "popular-categories" "recently-updated"}}.pinned-posts{grid-area:pinned-posts}.featured-posts{grid-area:featured-posts}.trending-tags{grid-area:trending-tags}.popular-categories{grid-area:popular-categories}.popular-categories .posts-count{font-size:.95em;color:var(--color-fg-muted)}.popular-categories .popular-category{display:flex;justify-content:space-between;align-items:center}.recently-updated-posts{grid-area:recently-updated}.recently-updated-posts .recently-updated-list{color:var(--color-fg-muted)}.recently-updated-posts .recently-updated-post{display:flex;align-items:center;gap:.5rem}.page-meta{font-size:.875rem;color:var(--color-fg-muted)}.page-meta-item{display:inline-flex;align-items:center;gap:.25rem;flex-wrap:wrap}.page-meta-primary{display:inline-grid;grid-auto-flow:column;grid-auto-columns:max-content;justify-content:start;align-items:center;gap:clamp(.5rem,.8vw,.75rem) clamp(.75rem,1vw,1rem)}@media (max-width: 64rem){.page-meta-primary{display:grid;grid-auto-flow:initial;grid-template-columns:repeat(2,1fr)}.page-meta-primary>.page-meta-item:nth-child(2n){justify-self:end}}@media (max-width: 30rem){.page-meta-primary{grid-template-columns:1fr}.page-meta-primary>.page-meta-item{justify-self:start}}.page-meta-secondary{display:flex;align-items:start;flex-direction:column;flex-wrap:wrap;row-gap:.5rem;margin-block:clamp(1.5rem,2vw,2rem)}.post-layout{display:grid;grid-template-columns:80ch 1fr;grid-template-areas:"post-content toc";column-gap:2rem;margin-top:1rem}@media (max-width: 80rem){.post-layout{grid-template-columns:70ch 1fr;column-gap:.75rem}}@media (max-width: 64rem){.post-layout{grid-template-columns:1fr;grid-template-areas:"toc" "post-content"}}.post-layout:not(:has(.toc-wrapper)){grid-template-columns:1fr!important;grid-template-areas:"post-content"}.post-content{grid-area:post-content;overflow-x:hidden;min-width:0}.posts{display:flex;flex-direction:column;gap:clamp(1rem,1.25vw,1.5rem);margin:0;padding:0}.post-preview .post-series{font-size:.875rem;color:var(--color-fg-muted);margin-top:clamp(.5rem,.8vw,.75rem)}.post-header{display:flex;flex-direction:column;gap:clamp(.5rem,.8vw,.75rem)}.post-title{margin:0}.post-excerpt{color:var(--color-fg-muted);font-weight:500;font-size:1.0625rem;margin-block:.75rem}.post-description{margin:0}.post-footer .post-footer-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-block-start:clamp(1.5rem,2vw,2rem);font-size:.875rem;color:var(--color-fg-muted)}.post-footer .post-footer-content .copyright{flex:1 1 auto}.post-footer .post-footer-content .share-icons{display:flex;gap:clamp(.25rem,.4vw,.5rem);align-items:center}.post-footer .post-footer-content .share-icons .share-link{display:inline-flex;align-items:center;justify-content:center;padding:clamp(.25rem,.4vw,.5rem);color:var(--color-fg-muted);font-size:1em;transition:color .3s cubic-bezier(.6,0,.2,1);will-change:color}.post-footer .post-footer-content .share-icons .share-link:hover,.post-footer .post-footer-content .share-icons .share-link:focus{background-color:var(--color-bg-transparent);color:var(--color-fg-default)}@media (max-width: 48rem){.post-footer .post-footer-content{flex-direction:column;align-items:flex-start;text-align:left;gap:1rem}}.related-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.75rem,1vw,1rem)}@media (max-width: 768px){.related-posts{grid-template-columns:1fr}}.related-posts .related-post{margin-bottom:0}.error-page{width:100%;max-width:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;animation:fade-in .75s ease-in .2s both}.error-title{font-size:clamp(1.5rem,4vw,2rem);color:var(--color-fg-danger);margin-block:1rem;line-height:1.1}.error-icon svg{width:6rem;height:6rem;fill:var(--color-bg-danger-emphasis)}.error-desc{color:var(--color-fg-muted)}.series-list{display:flex;flex-direction:column;gap:clamp(1rem,1.25vw,1.5rem);margin:0;padding:0}.series-title,.series-description{margin:0}.series-excerpt{color:var(--color-fg-muted);font-weight:500;font-size:1.0625rem;margin-block:.75rem}.series-nav{font-size:.9375em;margin-top:clamp(1rem,1.25vw,1.5rem);padding:clamp(.5rem,.8vw,.75rem);border:1px dotted var(--color-border-muted);border-radius:.1875rem}.series-nav .series-nav-header{margin-bottom:1rem;color:var(--color-fg-muted)}.series-nav .series-nav-links{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:space-between}.series-nav .series-nav-item{margin-bottom:0}.contact-layout{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr;grid-template-areas:"contact-intro contact-questions" "contact-section contact-questions";gap:1.5rem}@media (max-width: 48rem){.contact-layout{grid-template-columns:1fr;grid-template-areas:"contact-intro" "contact-questions" "contact-section"}}.contact-intro{grid-area:contact-intro}.contact-intro .below-text{display:none}@media (max-width: 48rem){.contact-intro .below-text{display:inline}}.contact-intro .right-text{display:inline}@media (max-width: 48rem){.contact-intro .right-text{display:none}}.contact-section{grid-area:contact-section;position:sticky;top:6rem;align-self:start}.contact-form-container{border:.5rem solid var(--color-border-transparent);background:linear-gradient(var(--color-bg-muted),var(--color-bg-muted)) padding-box,repeating-linear-gradient(45deg,var(--color-bg-danger-emphasis) 0 15px,var(--color-bg-default) 15px 25px,var(--color-bg-accent-emphasis) 25px 40px,var(--color-bg-default) 40px 50px) border-box;border-radius:.75rem}.contact-form{display:flex;flex-direction:column;gap:1rem;background:var(--color-bg-default);padding:.75rem}.recaptcha-disclaimer{font-size:.875rem;color:var(--color-fg-accent-muted);margin-top:2rem}.contact-faq{grid-area:contact-questions;background:var(--color-bg-cloud-300);border-radius:.375rem;padding:1rem;border:1px solid var(--color-border-muted)}.contact-faq h2{font-size:1.25rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;letter-spacing:1px;margin-block:0 1rem}.goodies-list{display:grid;grid-auto-flow:row;grid-gap:1rem;margin-block-start:1rem}@media (min-width: 48rem){.goodies-list{grid-template-columns:repeat(2,1fr)}}@media (min-width: 64rem){.goodies-list{grid-template-columns:repeat(3,1fr)}}.goodie{background:var(--color-bg-muted);border:.0625rem solid var(--color-border-muted);border-radius:.375rem;margin-block-end:0}.goodie a{display:flex;align-items:center;column-gap:1rem;padding-block:.5rem;padding-inline:1rem;text-decoration:none;color:var(--color-fg-default);height:100%}.goodie-icon .icon{width:4rem;height:4rem}.goodie-name{font-size:1.25rem;margin-block:.5rem;color:var(--color-fg-accent)}.snippets-list{display:grid;grid-auto-flow:row;grid-gap:1rem;margin-block-start:1rem}@media (min-width: 48rem){.snippets-list{grid-template-columns:repeat(2,1fr)}}@media (min-width: 64rem){.snippets-list{grid-template-columns:repeat(3,1fr)}}.snippet{background:var(--color-bg-default);border:.0625rem solid var(--color-border-default);border-radius:.375rem;margin-block-end:0}.snippet a{display:flex;flex-direction:column;row-gap:.5rem;padding:1rem;text-decoration:none;color:var(--color-fg-default);height:100%}.snippet-header{display:flex;flex-direction:column;gap:.75rem}.snippet-name{font-size:1.25rem;margin-block:0;color:var(--color-fg-accent)}.snippet-meta{display:flex;flex-direction:column;padding:.5rem 1rem;background:var(--color-bg-muted);border-radius:.1875rem;color:var(--color-fg-accent-muted)}.snippet-meta-item{font-size:.875rem}.snippet-meta-item:not(:last-child){margin-block-end:.5rem}.changelog-title{font-size:1rem;margin-block-end:1rem;font-weight:500;text-transform:uppercase;letter-spacing:2px}.changelog-entry{font-size:.875rem;color:var(--color-fg-muted)}.changelog-entry time{color:var(--color-fg-default)}.categories-list .category-title{font-weight:500}.categories-list .post-title{font-size:.875rem;font-weight:400}.categories-list .post-published-at,.categories-list .post-count{font-size:.875rem;color:var(--color-fg-muted);text-align:end}.categories-list .post-published-at{flex:0 0 auto}.categories-list .post-count{flex:1 1 auto}.categories-list .accordion-item .accordion-header .icon-folder-open{display:none}.categories-list .accordion-item .accordion-header .icon-folder{display:block}.categories-list .accordion-item[data-expanded] .accordion-header .icon-folder{display:none}.categories-list .accordion-item[data-expanded] .accordion-header .icon-folder-open{display:block}.highlight{border-radius:.375rem;overflow-x:auto;border:.0625rem solid var(--color-border-muted)}.highlight .c,.highlight .cm,.highlight .c1{color:var(--color-code-syntax-comment);font-style:italic}.highlight .cp,.highlight .cs{color:var(--color-code-syntax-comment);font-style:italic;font-weight:700}.highlight .err{color:var(--color-code-syntax-error-text);background-color:var(--color-code-syntax-error-bg)}.highlight .k,.highlight .kc,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .ow{color:var(--color-code-syntax-keyword);font-weight:700}.highlight .kt{color:var(--color-code-syntax-namespace);font-weight:700}.highlight .m,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo,.highlight .il{color:var(--color-code-syntax-number)}.highlight .s,.highlight .sb,.highlight .sc,.highlight .sd,.highlight .s2,.highlight .se,.highlight .sh,.highlight .si,.highlight .sx,.highlight .sr,.highlight .s1{color:var(--color-code-syntax-string)}.highlight .ss{color:var(--color-code-syntax-symbol)}.highlight .na,.highlight .no,.highlight .nv,.highlight .vc,.highlight .vg,.highlight .vi{color:var(--color-code-syntax-name)}.highlight .nb,.highlight .bp{color:var(--color-code-syntax-builtin)}.highlight .nc{color:var(--color-code-syntax-namespace);font-weight:700}.highlight .nd{color:var(--color-code-syntax-decorator);font-weight:700}.highlight .ni,.highlight .nn{color:var(--color-code-syntax-entity)}.highlight .ne,.highlight .nf,.highlight .nl{color:var(--color-code-syntax-function);font-weight:700}.highlight .nt{color:var(--color-code-syntax-tag)}.highlight .gu{color:var(--color-code-syntax-heading)}.highlight .gd{color:var(--color-code-syntax-deleted-text);background-color:var(--color-code-syntax-deleted-bg)}.highlight .gi{color:var(--color-code-syntax-inserted-text);background-color:var(--color-code-syntax-inserted-bg)}.highlight .go{color:var(--color-code-syntax-output)}.highlight .gp{color:var(--color-code-syntax-meta)}.highlight .gs{font-weight:700}.highlight .ge{font-style:italic}.highlight .w{color:var(--color-code-syntax-subtle)}
