body,html{width:100%;margin:0;padding:0}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:flex;flex-direction:column;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}html{background-color:var(--color-background);scroll-behavior:smooth}*{box-sizing:border-box}body{font-size:var(--font-size-base);font-family:Inter,system-ui,sans-serif;font-weight:400;line-height:1.7;letter-spacing:0}:where(.nizel-content,[data-nizel-content],.nizel-prose){--nizel-foreground: var(--foreground, #1f2328);--nizel-background: var(--background, transparent);--nizel-primary: var(--primary, #2563eb);--nizel-secondary: var(--secondary, #7c3aed);--nizel-accent: var(--accent, var(--nizel-primary));--nizel-success: var(--success, #1a7f37);--nizel-warning: var(--warning, #9a6700);--nizel-error: var(--error, #b42318);--nizel-info: var(--info, #0969da);--nizel-muted: var(--muted, color-mix(in srgb, var(--nizel-foreground) 68%, transparent));--nizel-border: var(--border, color-mix(in srgb, var(--nizel-foreground) 14%, transparent));--nizel-surface: var(--surface, color-mix(in srgb, var(--nizel-foreground) 4%, transparent));--nizel-surface-raised: var(--surface-raised, color-mix(in srgb, var(--nizel-foreground) 7%, transparent));--nizel-code-foreground: var(--code-foreground, var(--nizel-foreground));--nizel-code-background: var(--code-background, color-mix(in srgb, var(--nizel-foreground) 7%, transparent));--nizel-selection-background: var(--selection-background, color-mix(in srgb, var(--nizel-primary) 22%, transparent));--nizel-selection-foreground: var(--selection-foreground, var(--nizel-foreground));--nizel-font-body: var(--font-body, -apple-system, BlinkMacSystemFont, "SF Pro Text", Inter, system-ui, sans-serif);--nizel-font-heading: var(--font-heading, var(--nizel-font-body));--nizel-font-code: var(--font-code, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", monospace);--nizel-font-size: var(--font-size, 1em);--nizel-line-height: var(--line-height, 1.66);--nizel-content-width: var(--content-width, 72ch);--nizel-wide-width: var(--wide-width, 100%);--nizel-space-xxs: 0.25em;--nizel-space-xs: 0.5em;--nizel-space-s: 0.75em;--nizel-space: 1em;--nizel-space-l: 1.35em;--nizel-space-xl: 2em;--nizel-space-xxl: 3em;--nizel-radius-sm: 0.3125em;--nizel-radius-md: 0.5em;--nizel-radius-lg: 0.75em;--nizel-image-radius: var(--nizel-radius-sm);--nizel-alert-radius: var(--nizel-radius-md);color:var(--nizel-foreground)}@media(prefers-color-scheme: dark){:where(.nizel-content,[data-nizel-content],.nizel-prose){--nizel-foreground: var(--foreground, #f0f3f6);--nizel-background: var(--background, transparent);--nizel-primary: var(--primary, #79c0ff);--nizel-secondary: var(--secondary, #d2a8ff);--nizel-success: var(--success, #7ee787);--nizel-warning: var(--warning, #d29922);--nizel-error: var(--error, #ff7b72);--nizel-info: var(--info, #79c0ff)}}:where(.nizel-content,[data-nizel-content],.nizel-prose):where([data-nizel-theme=light],.nizel-theme-light),:where([data-nizel-theme=light],.nizel-theme-light) :where(.nizel-content,[data-nizel-content],.nizel-prose){--nizel-foreground: var(--foreground, #1f2328);--nizel-background: var(--background, #ffffff);--nizel-primary: var(--primary, #2563eb);--nizel-secondary: var(--secondary, #7c3aed);--nizel-success: var(--success, #1a7f37);--nizel-warning: var(--warning, #9a6700);--nizel-error: var(--error, #b42318);--nizel-info: var(--info, #0969da)}:where(.nizel-content,[data-nizel-content],.nizel-prose):where([data-nizel-theme=dark],.nizel-theme-dark),:where([data-nizel-theme=dark],.nizel-theme-dark) :where(.nizel-content,[data-nizel-content],.nizel-prose){--nizel-foreground: var(--foreground, #f0f3f6);--nizel-background: var(--background, #0d1117);--nizel-primary: var(--primary, #79c0ff);--nizel-secondary: var(--secondary, #d2a8ff);--nizel-success: var(--success, #7ee787);--nizel-warning: var(--warning, #d29922);--nizel-error: var(--error, #ff7b72);--nizel-info: var(--info, #79c0ff)}:where(.nizel-content,[data-nizel-content],.nizel-prose){color:var(--nizel-foreground);font-family:var(--nizel-font-body);font-size:var(--nizel-font-size);line-height:var(--nizel-line-height);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}:where(.nizel-content,[data-nizel-content],.nizel-prose) *,:where(.nizel-content,[data-nizel-content],.nizel-prose) *::before,:where(.nizel-content,[data-nizel-content],.nizel-prose) *::after{box-sizing:border-box}:where(.nizel-content,[data-nizel-content],.nizel-prose)::selection{color:var(--nizel-selection-foreground);background:var(--nizel-selection-background)}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(h1,h2,h3,h4,h5,h6,p,blockquote,figure,pre,ul,ol,dl,table,details,form,hr,img){margin:0}:where(.nizel-content,[data-nizel-content],.nizel-prose)>*{margin-top:0;margin-bottom:0}:where(.nizel-content,[data-nizel-content],.nizel-prose)>*+*{margin-top:var(--nizel-flow-space, var(--nizel-space-l))}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(h1,h2,h3,h4,h5,h6,p,blockquote,figure,pre,ul,ol,dl,table,details,form,hr,img)+:where(h1,h2,h3,h4,h5,h6,p,blockquote,figure,pre,ul,ol,dl,table,details,form,hr,img){margin-top:var(--nizel-space-l)}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(p,blockquote,figure,pre,ul,ol,dl,table,details,form,hr,img)+:where(h2,h3,h4){margin-top:var(--nizel-space-xxl)}:where(.nizel-content,[data-nizel-content],.nizel-prose)>*+:where(h2,h3,h4){margin-top:var(--nizel-section-space, var(--nizel-space-xxl))}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(h1,h2,h3,h4,h5,h6){color:var(--nizel-heading, var(--nizel-foreground));font-family:var(--nizel-font-heading);font-weight:680;line-height:1.14;overflow-wrap:anywhere}:where(.nizel-content,[data-nizel-content],.nizel-prose) h1{font-size:2.15em;line-height:1.04}:where(.nizel-content,[data-nizel-content],.nizel-prose) h2{font-size:1.58em}:where(.nizel-content,[data-nizel-content],.nizel-prose) h3{font-size:1.28em}:where(.nizel-content,[data-nizel-content],.nizel-prose) h4{font-size:1.125em}:where(.nizel-content,[data-nizel-content],.nizel-prose) h5{font-size:1em}:where(.nizel-content,[data-nizel-content],.nizel-prose) h6{color:var(--nizel-muted);font-size:.78em;font-weight:700;letter-spacing:.08em;text-transform:uppercase}:where(.nizel-content,[data-nizel-content],.nizel-prose) p{max-width:var(--nizel-copy-width, var(--nizel-content-width))}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(h1,h2)+p{font-size:var(--nizel-lead-font-size, 1.1em);line-height:var(--nizel-lead-line-height, 1.5)}:where(.nizel-content,[data-nizel-content],.nizel-prose) a{color:var(--nizel-link, var(--nizel-primary));text-decoration-line:underline;text-decoration-color:color-mix(in srgb, currentColor 36%, transparent);text-decoration-thickness:.08em;text-underline-offset:.18em}:where(.nizel-content,[data-nizel-content],.nizel-prose) a:hover{color:var(--nizel-link-hover, var(--nizel-secondary));text-decoration-thickness:.12em}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(strong,b){font-weight:700}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(em,i){font-style:italic}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(ul,ol){padding-left:calc(var(--nizel-space-l) + var(--nizel-space-xxs))}:where(.nizel-content,[data-nizel-content],.nizel-prose) ul{list-style:none}:where(.nizel-content,[data-nizel-content],.nizel-prose) ul>li{position:relative}:where(.nizel-content,[data-nizel-content],.nizel-prose) ul>li::before{content:"";position:absolute;top:var(--nizel-space-s);left:calc(var(--nizel-space)*-1);width:var(--nizel-space-xs);height:var(--nizel-space-xs);border-radius:999px;background:color-mix(in srgb, var(--nizel-foreground) 44%, transparent);transform:translateY(-50%)}:where(.nizel-content,[data-nizel-content],.nizel-prose) li+li{margin-top:var(--nizel-space-xxs)}:where(.nizel-content,[data-nizel-content],.nizel-prose) dl{display:grid;gap:var(--nizel-space-xs) var(--nizel-space)}:where(.nizel-content,[data-nizel-content],.nizel-prose) dt{font-weight:700}:where(.nizel-content,[data-nizel-content],.nizel-prose) dd{margin:0;color:var(--nizel-muted)}:where(.nizel-content,[data-nizel-content],.nizel-prose) blockquote{color:var(--nizel-muted);padding-left:var(--nizel-space);border-left:3px solid color-mix(in srgb, var(--nizel-foreground) 26%, transparent)}:where(.nizel-content,[data-nizel-content],.nizel-prose) hr{height:1px;margin:var(--nizel-space-xxl) 0;border:0;background:var(--nizel-border)}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(code,kbd,samp,pre){font-family:var(--nizel-font-code)}:where(.nizel-content,[data-nizel-content],.nizel-prose) :not(pre)>code{color:var(--nizel-code-foreground);padding:calc(var(--nizel-space-xxs)/2) var(--nizel-space-xxs);border-radius:var(--nizel-radius-sm);background:var(--nizel-code-background);font-size:.9em}:where(.nizel-content,[data-nizel-content],.nizel-prose) pre{overflow:auto;padding:var(--nizel-space);border:1px solid var(--nizel-border);border-radius:var(--nizel-radius-lg);background:var(--nizel-code-block-background, var(--nizel-code-background));color:var(--nizel-code-foreground);font-size:.92em;line-height:1.62}:where(.nizel-content,[data-nizel-content],.nizel-prose) pre code{padding:0;border-radius:0;background:transparent;color:inherit;font-size:inherit}:where(.nizel-content,[data-nizel-content],.nizel-prose) img,:where(.nizel-content,[data-nizel-content],.nizel-prose) video,:where(.nizel-content,[data-nizel-content],.nizel-prose) canvas,:where(.nizel-content,[data-nizel-content],.nizel-prose) svg{max-width:100%;height:auto}:where(.nizel-content,[data-nizel-content],.nizel-prose) img{display:block;border-radius:var(--nizel-image-radius)}:where(.nizel-content,[data-nizel-content],.nizel-prose) figure{max-width:var(--nizel-wide-width)}:where(.nizel-content,[data-nizel-content],.nizel-prose) figcaption{margin-top:var(--nizel-space-xs);color:var(--nizel-muted);font-size:.9em;line-height:1.45}:where(.nizel-content,[data-nizel-content],.nizel-prose) table{width:100%;border-collapse:collapse;font-size:.94em}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(th,td){padding:var(--nizel-space-s) var(--nizel-space);border:1px solid var(--nizel-border);text-align:left;vertical-align:top}:where(.nizel-content,[data-nizel-content],.nizel-prose) th{background:var(--nizel-surface);font-weight:700}:where(.nizel-content,[data-nizel-content],.nizel-prose) :focus-visible{outline:2px solid var(--nizel-focus, var(--nizel-primary));outline-offset:var(--nizel-space-xxs)}:where(.nizel-content,[data-nizel-content],.nizel-prose) abbr[title]{cursor:help;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:color-mix(in srgb, currentColor 48%, transparent);text-decoration-thickness:.08em;text-underline-offset:.18em}:where(.nizel-content,[data-nizel-content],.nizel-prose) .alert{--nizel-alert-color: var(--nizel-info);display:grid;gap:var(--nizel-space-xs);padding:var(--nizel-space);border:1px solid color-mix(in srgb, var(--nizel-alert-color) 32%, transparent);border-left-width:4px;border-radius:var(--nizel-alert-radius);background:color-mix(in srgb, var(--nizel-alert-color) 9%, transparent);color:var(--nizel-foreground)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .alert--note{--nizel-alert-color: var(--nizel-info)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .alert--tip{--nizel-alert-color: var(--nizel-success)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .alert--important{--nizel-alert-color: var(--nizel-secondary)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .alert--warning{--nizel-alert-color: var(--nizel-warning)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .alert--caution{--nizel-alert-color: var(--nizel-error)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .alert__title{margin:0;color:var(--nizel-alert-color);font-family:var(--nizel-font-heading);font-weight:720;line-height:1.3}:where(.nizel-content,[data-nizel-content],.nizel-prose) .alert__content>:first-child{margin-top:0}:where(.nizel-content,[data-nizel-content],.nizel-prose) .alert__content>:last-child{margin-bottom:0}:where(.nizel-content,[data-nizel-content],.nizel-prose) .citation{color:var(--nizel-secondary);font-size:.88em;font-weight:650;text-decoration:none}:where(.nizel-content,[data-nizel-content],.nizel-prose) .citation:hover{text-decoration:underline;text-underline-offset:.18em}:where(.nizel-content,[data-nizel-content],.nizel-prose) .citations{padding-top:var(--nizel-space-l);border-top:1px solid var(--nizel-border);color:var(--nizel-muted);font-size:.92em}:where(.nizel-content,[data-nizel-content],.nizel-prose) .citations ol{margin:0;padding-left:var(--nizel-space-l)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-code-copy{position:relative;overflow:hidden;border:1px solid var(--nizel-border);border-radius:var(--nizel-radius-lg);background:var(--nizel-code-block-background, var(--nizel-code-background))}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-code-copy>figcaption{margin:0;padding:var(--nizel-space-s) calc(var(--nizel-space-xxl) + var(--nizel-space-xl)) var(--nizel-space-s) var(--nizel-space);border-bottom:1px solid var(--nizel-border);color:var(--nizel-muted);font-family:var(--nizel-font-code);font-size:.78em}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-code-copy pre{margin:0;border:0;border-radius:0;background:transparent}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-code-copy__button{appearance:none;position:absolute;top:var(--nizel-space-xs);right:var(--nizel-space-xs);min-height:calc(var(--nizel-space) + var(--nizel-space-s));padding:0 var(--nizel-space-s);border:1px solid var(--nizel-border);border-radius:var(--nizel-radius-sm);background:var(--nizel-surface-raised);color:var(--nizel-foreground);font:600 .78em/1 var(--nizel-font-body);cursor:pointer}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-code-copy__button:hover{border-color:color-mix(in srgb, var(--nizel-primary) 44%, var(--nizel-border));color:var(--nizel-primary)}:where(.nizel-content,[data-nizel-content],.nizel-prose) dl:not(.frontmatter){padding:var(--nizel-space);border:1px solid var(--nizel-border);border-radius:var(--nizel-radius-lg);background:var(--nizel-surface)}:where(.nizel-content,[data-nizel-content],.nizel-prose) dl:not(.frontmatter) dt+dd{margin-top:calc(var(--nizel-space-xxs)*-1)}:where(.nizel-content,[data-nizel-content],.nizel-prose) details.details{padding:0;border:1px solid var(--nizel-border);border-radius:var(--nizel-radius-lg);background:var(--nizel-surface)}:where(.nizel-content,[data-nizel-content],.nizel-prose) details.details>summary{cursor:pointer;padding:var(--nizel-space-s) var(--nizel-space);color:var(--nizel-foreground);font-family:var(--nizel-font-heading);font-weight:680}:where(.nizel-content,[data-nizel-content],.nizel-prose) details.details>summary:hover{color:var(--nizel-primary)}:where(.nizel-content,[data-nizel-content],.nizel-prose) details.details[open]>summary{border-bottom:1px solid var(--nizel-border)}:where(.nizel-content,[data-nizel-content],.nizel-prose) details.details>:not(summary){margin:var(--nizel-space)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .mermaid{overflow:auto;padding:var(--nizel-space);border:1px solid var(--nizel-border);border-radius:var(--nizel-radius-lg);background:var(--nizel-surface);color:var(--nizel-foreground);text-align:center}:where(.nizel-content,[data-nizel-content],.nizel-prose) .mermaid svg{display:inline-block;max-width:100%;height:auto}:where(.nizel-content,[data-nizel-content],.nizel-prose) .mermaid :where(.edgePaths path,.flowchart-link,.messageLine0,.messageLine1,.relationshipLine){stroke:var(--nizel-diagram-line, var(--nizel-primary)) !important;stroke-width:2px !important}:where(.nizel-content,[data-nizel-content],.nizel-prose) .mermaid :where(marker path,marker polygon){fill:var(--nizel-diagram-line, var(--nizel-primary)) !important;stroke:var(--nizel-diagram-line, var(--nizel-primary)) !important}:where(.nizel-content,[data-nizel-content],.nizel-prose) .mermaid :where(.edgeLabel,.labelBkg){background-color:var(--nizel-surface) !important}:where(.nizel-content,[data-nizel-content],.nizel-prose) .mermaid :where(.edgeLabel rect,.labelBkg){fill:var(--nizel-surface) !important}:where(.nizel-content,[data-nizel-content],.nizel-prose) .mermaid :where(.node rect,.node circle,.node ellipse,.node polygon,.node path){fill:var(--nizel-diagram-node-background, color-mix(in srgb, var(--nizel-primary) 10%, var(--nizel-background))) !important;stroke:var(--nizel-diagram-node-border, color-mix(in srgb, var(--nizel-primary) 46%, var(--nizel-border))) !important}:where(.nizel-content,[data-nizel-content],.nizel-prose) .mermaid :where(.nodeLabel,.label,text,tspan){fill:var(--nizel-diagram-text, var(--nizel-foreground)) !important;color:var(--nizel-diagram-text, var(--nizel-foreground)) !important}:where(.nizel-content,[data-nizel-content],.nizel-prose) .footnote-ref{display:inline-flex;min-width:1.1em;height:1.1em;align-items:center;justify-content:center;border-radius:999px;background:color-mix(in srgb, var(--nizel-primary) 12%, transparent);color:var(--nizel-primary);font-size:.72em;font-weight:700;line-height:1;text-decoration:none}:where(.nizel-content,[data-nizel-content],.nizel-prose) .footnotes{padding-top:var(--nizel-space-l);border-top:1px solid var(--nizel-border);color:var(--nizel-muted);font-size:.92em}:where(.nizel-content,[data-nizel-content],.nizel-prose) .footnotes ol{margin:0;padding-left:var(--nizel-space-l)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .footnotes__backref{color:var(--nizel-primary);text-decoration:none}:where(.nizel-content,[data-nizel-content],.nizel-prose) .frontmatter{display:grid;grid-template-columns:max-content minmax(0, 1fr);gap:var(--nizel-space-xs) var(--nizel-space);padding:var(--nizel-space);border:1px solid var(--nizel-border);border-radius:var(--nizel-radius-lg);background:var(--nizel-surface);font-size:.92em}:where(.nizel-content,[data-nizel-content],.nizel-prose) .frontmatter dt{color:var(--nizel-muted);font-weight:700}:where(.nizel-content,[data-nizel-content],.nizel-prose) .frontmatter dd{color:var(--nizel-foreground)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .heading-anchor{display:inline-flex;width:.9em;height:.9em;margin-left:var(--nizel-space-xxs);align-items:center;justify-content:center;border-radius:999px;color:color-mix(in srgb, currentColor 42%, transparent);font-size:.62em;line-height:1;opacity:0;text-decoration:none;transform:translateY(-0.05em);transition:color 160ms ease,background-color 160ms ease,opacity 160ms ease}:where(.nizel-content,[data-nizel-content],.nizel-prose) .heading-anchor::before{content:"#";font-weight:760}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(h1,h2,h3,h4,h5,h6):hover .heading-anchor,:where(.nizel-content,[data-nizel-content],.nizel-prose) .heading-anchor:focus-visible{opacity:1}:where(.nizel-content,[data-nizel-content],.nizel-prose) .heading-anchor:hover{background:color-mix(in srgb, currentColor 10%, transparent);color:currentColor}:where(.nizel-content,[data-nizel-content],.nizel-prose) .math{font-family:var(--nizel-font-code)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .math-inline{padding:calc(var(--nizel-space-xxs)/2) var(--nizel-space-xxs);border-radius:var(--nizel-radius-sm);background:color-mix(in srgb, var(--nizel-secondary) 10%, transparent);color:var(--nizel-secondary);font-size:.92em}:where(.nizel-content,[data-nizel-content],.nizel-prose) .math-display{overflow:auto;padding:var(--nizel-space);border:1px solid color-mix(in srgb, var(--nizel-secondary) 24%, var(--nizel-border));border-radius:var(--nizel-radius-lg);background:color-mix(in srgb, var(--nizel-secondary) 7%, transparent);color:var(--nizel-foreground);text-align:center}:where(.nizel-content,[data-nizel-content],.nizel-prose) .media-figure{max-width:var(--nizel-wide-width)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .media-figure img{display:block;width:auto;max-width:100%;margin:0;border-radius:var(--nizel-image-radius)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .media-figure figcaption{max-width:var(--nizel-copy-width, var(--nizel-content-width));color:var(--nizel-muted)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .shiki,:where(.nizel-content,[data-nizel-content],.nizel-prose) pre.shiki{overflow:auto;padding:var(--nizel-space);border:1px solid var(--nizel-border);border-radius:var(--nizel-radius-lg);background:var(--nizel-code-block-background, var(--nizel-code-background));color:var(--nizel-code-foreground)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .shiki code{display:block;min-width:max-content;padding:0;background:transparent;color:inherit}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(.hl-keyword,.hl-operator){color:var(--nizel-shiki-keyword, var(--nizel-error))}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(.hl-string,.hl-value){color:var(--nizel-shiki-string, var(--nizel-info))}:where(.nizel-content,[data-nizel-content],.nizel-prose) .hl-comment{color:var(--nizel-shiki-comment, var(--nizel-muted));font-style:italic}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(.hl-number,.hl-property,.hl-type){color:var(--nizel-shiki-number, var(--nizel-primary))}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(.hl-function,.hl-builtin,.hl-attr){color:var(--nizel-shiki-function, var(--nizel-secondary))}:where(.nizel-content,[data-nizel-content],.nizel-prose) .hl-tag{color:var(--nizel-shiki-tag, var(--nizel-success))}:where(.nizel-content,[data-nizel-content],.nizel-prose) .hl-punctuation{color:var(--nizel-shiki-punctuation, var(--nizel-foreground))}:where(.nizel-content,[data-nizel-content],.nizel-prose) li:has(.nizel-task-list__label)::before{content:none}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__label{display:inline-grid;grid-template-columns:auto minmax(0, 1fr);gap:var(--nizel-task-gap, var(--nizel-space-s));align-items:start;max-inline-size:var(--nizel-copy-width, var(--nizel-content-width));cursor:pointer}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__content{min-inline-size:0}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__checkbox{appearance:none;-webkit-appearance:none;display:grid;place-content:center;flex:0 0 auto;inline-size:var(--nizel-task-size, 1.15em);block-size:var(--nizel-task-size, 1.15em);margin:var(--nizel-task-offset-y, 0.16em) 0 0;border:1px solid var(--nizel-task-border, color-mix(in srgb, var(--nizel-foreground) 22%, transparent));border-radius:var(--nizel-task-radius, var(--nizel-radius-sm));background:var(--nizel-task-background, var(--nizel-background));color:var(--nizel-task-checkmark, var(--nizel-primary));font:inherit;cursor:pointer;box-shadow:0 0 0 0 color-mix(in srgb, var(--nizel-primary) 0%, transparent);transition:background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease,transform 160ms ease}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__checkbox::before{content:"";inline-size:var(--nizel-task-checkmark-width, 0.6em);block-size:var(--nizel-task-checkmark-height, 0.35em);border-left:var(--nizel-task-checkmark-stroke, 0.14em) solid currentColor;border-bottom:var(--nizel-task-checkmark-stroke, 0.14em) solid currentColor;transform:translateY(var(--nizel-task-checkmark-offset-y, -0.03em)) rotate(-45deg) scale(0);transform-origin:center;transition:transform 160ms ease}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__checkbox:where(:hover,:focus-visible){border-color:var(--nizel-task-hover-border, var(--nizel-primary));box-shadow:0 0 0 .22em var(--nizel-task-ring, color-mix(in srgb, var(--nizel-primary) 18%, transparent))}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__checkbox:active{transform:scale(0.94)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__checkbox:checked{border-color:var(--nizel-task-checked-border, var(--nizel-primary));background:var(--nizel-task-checked-background, color-mix(in srgb, var(--nizel-primary) 12%, var(--nizel-background)))}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__checkbox:checked::before{transform:translateY(var(--nizel-task-checkmark-offset-y, -0.03em)) rotate(-45deg) scale(1)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__checkbox:disabled{cursor:default}:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__checkbox:disabled:where(:hover,:focus-visible){box-shadow:none}@media(prefers-reduced-motion: reduce){:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__checkbox,:where(.nizel-content,[data-nizel-content],.nizel-prose) .nizel-task-list__checkbox::before{transition:none}}:where(.nizel-content,[data-nizel-content],.nizel-prose) .toc{padding:var(--nizel-space);border:1px solid var(--nizel-border);border-radius:var(--nizel-radius-lg);background:var(--nizel-surface)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .toc ol{display:grid;gap:var(--nizel-space-xs);margin:0;padding-left:0;list-style:none}:where(.nizel-content,[data-nizel-content],.nizel-prose) .toc li{margin:0;padding-left:0}:where(.nizel-content,[data-nizel-content],.nizel-prose) .toc li[data-depth="3"]{padding-left:var(--nizel-space)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .toc li[data-depth="4"]{padding-left:var(--nizel-space-xl)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .toc li[data-depth="5"]{padding-left:var(--nizel-space-xxl)}:where(.nizel-content,[data-nizel-content],.nizel-prose) .toc li[data-depth="6"]{padding-left:calc(var(--nizel-space-xl) + var(--nizel-space-xl))}:where(.nizel-content,[data-nizel-content],.nizel-prose) .toc li::before{content:none}:where(.nizel-content,[data-nizel-content],.nizel-prose) .toc a{color:var(--nizel-foreground);text-decoration:none}:where(.nizel-content,[data-nizel-content],.nizel-prose) .toc a:hover{color:var(--nizel-primary);text-decoration:underline;text-underline-offset:.18em}:where(.nizel-content,[data-nizel-content],.nizel-prose) mark{padding:calc(var(--nizel-space-xxs)/2) var(--nizel-space-xxs);border-radius:var(--nizel-radius-sm);background:color-mix(in srgb, var(--nizel-warning) 22%, transparent);color:var(--nizel-foreground)}:where(.nizel-content,[data-nizel-content],.nizel-prose) :where(sub,sup){font-size:.72em;line-height:0}.nizel-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.125em .5em;font-size:.85em;line-height:1.4;font-weight:600;white-space:nowrap;vertical-align:baseline;background:color-mix(in srgb, currentColor 10%, transparent)}.nizel-badge[data-tone=neutral]{color:currentColor}.nizel-badge[data-tone=info],.nizel-badge[data-tone=blue]{color:#175cd3}.nizel-badge[data-tone=success],.nizel-badge[data-tone=green]{color:#16794c}.nizel-badge[data-tone=warning],.nizel-badge[data-tone=yellow]{color:#946200}.nizel-badge[data-tone=danger],.nizel-badge[data-tone=red]{color:#b42318}.nizel-badge[data-tone=purple]{color:#6941c6}.nizel-kbd-group{display:inline-flex;align-items:center;gap:.2em;white-space:nowrap;vertical-align:baseline}.nizel-kbd{display:inline-flex;align-items:center;justify-content:center;min-width:1.6em;padding:.12em .38em;border:1px solid color-mix(in srgb, currentColor 28%, transparent);border-radius:.35em;font:inherit;font-size:.85em;line-height:1.35;background:color-mix(in srgb, currentColor 6%, transparent)}.nizel-kbd-separator{opacity:.65;font-size:.85em}.nizel-open-icon{display:inline-flex;width:1em;height:1em;vertical-align:-0.125em;line-height:1}.nizel-open-icon svg{width:1em;height:1em;display:block}.nizel-open-icon--missing{outline:1px dashed currentColor;opacity:.5}@media print{.nizel-pagebreak{display:block;break-after:page;page-break-after:always}.nizel-pagebreak-before{break-before:page;page-break-before:always}.nizel-pagebreak-after{break-after:page;page-break-after:always}.nizel-keep{break-inside:avoid;page-break-inside:avoid}.nizel-print-only{display:block}.nizel-screen-only,.nizel-no-print{display:none !important}.nizel-print-wide{width:100%;max-width:none}}@media screen{.nizel-print-only{display:none !important}}main .section .container{width:min(100%,var(--layout-width));margin:0 auto;padding:0 var(--space)}main .section{padding:var(--space-xxl) 0;background-color:var(--section-background-color, transparent);color:var(--section-text-color, currentColor)}.content{max-width:var(--content-width);margin:0 auto}main .section.archive .container,main .section.tags .container{width:min(100%,var(--layout-width))}.page-container{flex:1 0 auto;display:flex;flex-direction:column}.main{flex:1 0 auto;view-transition-name:site-main}body{background-color:var(--color-background);color:var(--color-foreground)}:root[color-mode=dark]{color-scheme:dark;--color-dark: #0a0a0a;--color-dark-contrast: var(--color-light);--color-light: #ffffff;--color-light-contrast: var(--color-dark);--color-red: #c44747;--color-red-contrast: var(--color-light);--color-blue: #3f63dd;--color-blue-contrast: var(--color-light);--color-green: #3f8f5b;--color-green-contrast: var(--color-light);--color-yellow: #d1ab36;--color-yellow-contrast: var(--color-light);--color-orange: #d57b28;--color-orange-contrast: var(--color-light);--color-purple: #7655d8;--color-purple-contrast: var(--color-light);--color-pink: #d668a4;--color-pink-contrast: var(--color-light);--color-lime: #8bab2a;--color-lime-contrast: var(--color-light);--color-brown: #8c6343;--color-brown-contrast: var(--color-light);--color-gray: #767676;--color-gray-contrast: var(--color-light);--color-magenta: #b64cb0;--color-magenta-contrast: var(--color-light);--color-beige: #d7c1a2;--color-beige-contrast: var(--color-dark);--color-primary: var(--color-red);--color-primary-contrast: var(--color-red-contrast);--color-secondary: var(--color-blue);--color-secondary-contrast: var(--color-blue-contrast);--color-background: var(--color-dark);--color-background-contrast: var(--color-dark-contrast);--color-foreground: var(--color-light);--color-foreground-contrast: var(--color-light-contrast);--color-error: var(--color-red);--color-error-contrast: var(--color-red-contrast);--color-info: var(--color-blue);--color-info-contrast: var(--color-blue-contrast);--color-warning: var(--color-orange);--color-warning-contrast: var(--color-orange-contrast);--color-success: var(--color-green);--color-success-contrast: var(--color-green-contrast);}:root[color-mode=light]{color-scheme:light;--color-dark: #0a0a0a;--color-dark-contrast: var(--color-light);--color-light: #ffffff;--color-light-contrast: var(--color-dark);--color-red: #c44747;--color-red-contrast: var(--color-light);--color-blue: #3f63dd;--color-blue-contrast: var(--color-light);--color-green: #3f8f5b;--color-green-contrast: var(--color-light);--color-yellow: #d1ab36;--color-yellow-contrast: var(--color-light);--color-orange: #d57b28;--color-orange-contrast: var(--color-light);--color-purple: #7655d8;--color-purple-contrast: var(--color-light);--color-pink: #d668a4;--color-pink-contrast: var(--color-light);--color-lime: #8bab2a;--color-lime-contrast: var(--color-light);--color-brown: #8c6343;--color-brown-contrast: var(--color-light);--color-gray: #767676;--color-gray-contrast: var(--color-light);--color-magenta: #b64cb0;--color-magenta-contrast: var(--color-light);--color-beige: #d7c1a2;--color-beige-contrast: var(--color-dark);--color-primary: var(--color-red);--color-primary-contrast: var(--color-red-contrast);--color-secondary: var(--color-blue);--color-secondary-contrast: var(--color-blue-contrast);--color-background: var(--color-light);--color-background-contrast: var(--color-light-contrast);--color-foreground: var(--color-dark);--color-foreground-contrast: var(--color-dark-contrast);--color-error: var(--color-red);--color-error-contrast: var(--color-red-contrast);--color-info: var(--color-blue);--color-info-contrast: var(--color-blue-contrast);--color-warning: var(--color-orange);--color-warning-contrast: var(--color-orange-contrast);--color-success: var(--color-green);--color-success-contrast: var(--color-green-contrast);}@media(prefers-color-scheme: dark){:root:not([color-mode]){color-scheme:dark;--color-dark: #0a0a0a;--color-dark-contrast: var(--color-light);--color-light: #ffffff;--color-light-contrast: var(--color-dark);--color-red: #c44747;--color-red-contrast: var(--color-light);--color-blue: #3f63dd;--color-blue-contrast: var(--color-light);--color-green: #3f8f5b;--color-green-contrast: var(--color-light);--color-yellow: #d1ab36;--color-yellow-contrast: var(--color-light);--color-orange: #d57b28;--color-orange-contrast: var(--color-light);--color-purple: #7655d8;--color-purple-contrast: var(--color-light);--color-pink: #d668a4;--color-pink-contrast: var(--color-light);--color-lime: #8bab2a;--color-lime-contrast: var(--color-light);--color-brown: #8c6343;--color-brown-contrast: var(--color-light);--color-gray: #767676;--color-gray-contrast: var(--color-light);--color-magenta: #b64cb0;--color-magenta-contrast: var(--color-light);--color-beige: #d7c1a2;--color-beige-contrast: var(--color-dark);--color-primary: var(--color-red);--color-primary-contrast: var(--color-red-contrast);--color-secondary: var(--color-blue);--color-secondary-contrast: var(--color-blue-contrast);--color-background: var(--color-dark);--color-background-contrast: var(--color-dark-contrast);--color-foreground: var(--color-light);--color-foreground-contrast: var(--color-light-contrast);--color-error: var(--color-red);--color-error-contrast: var(--color-red-contrast);--color-info: var(--color-blue);--color-info-contrast: var(--color-blue-contrast);--color-warning: var(--color-orange);--color-warning-contrast: var(--color-orange-contrast);--color-success: var(--color-green);--color-success-contrast: var(--color-green-contrast);}}@media(prefers-color-scheme: light){:root:not([color-mode]){color-scheme:light;--color-dark: #0a0a0a;--color-dark-contrast: var(--color-light);--color-light: #ffffff;--color-light-contrast: var(--color-dark);--color-red: #c44747;--color-red-contrast: var(--color-light);--color-blue: #3f63dd;--color-blue-contrast: var(--color-light);--color-green: #3f8f5b;--color-green-contrast: var(--color-light);--color-yellow: #d1ab36;--color-yellow-contrast: var(--color-light);--color-orange: #d57b28;--color-orange-contrast: var(--color-light);--color-purple: #7655d8;--color-purple-contrast: var(--color-light);--color-pink: #d668a4;--color-pink-contrast: var(--color-light);--color-lime: #8bab2a;--color-lime-contrast: var(--color-light);--color-brown: #8c6343;--color-brown-contrast: var(--color-light);--color-gray: #767676;--color-gray-contrast: var(--color-light);--color-magenta: #b64cb0;--color-magenta-contrast: var(--color-light);--color-beige: #d7c1a2;--color-beige-contrast: var(--color-dark);--color-primary: var(--color-red);--color-primary-contrast: var(--color-red-contrast);--color-secondary: var(--color-blue);--color-secondary-contrast: var(--color-blue-contrast);--color-background: var(--color-light);--color-background-contrast: var(--color-light-contrast);--color-foreground: var(--color-dark);--color-foreground-contrast: var(--color-dark-contrast);--color-error: var(--color-red);--color-error-contrast: var(--color-red-contrast);--color-info: var(--color-blue);--color-info-contrast: var(--color-blue-contrast);--color-warning: var(--color-orange);--color-warning-contrast: var(--color-orange-contrast);--color-success: var(--color-green);--color-success-contrast: var(--color-green-contrast);}}:root{--font-size-base: 18px;--spacing: clamp(2em, 6vw, 8em);--space: 1em;--space-xxs: calc(var(--space) * 0.25);--space-xs: calc(var(--space) * 0.5);--space-s: calc(var(--space) * 0.75);--space-l: calc(var(--space) * 1.5);--space-xl: calc(var(--space) * 2.5);--space-xxl: calc(var(--space) * 4);--font-size: 1em;--font-size-xs: calc(var(--font-size) * 0.75);--font-size-s: calc(var(--font-size) * 0.875);--font-size-l: calc(var(--font-size) * 1.125);--font-size-xl: calc(var(--font-size) * 1.35);--font-size-xxl: calc(var(--font-size) * 2.4);--font-size-xxxl: calc(var(--font-size) * 4.5);--font-size-lead: calc(var(--font-size) * 1.4);--border-radius: 0.5em;--border-radius-s: calc(var(--border-radius) * 0.5);--border-radius-m: var(--border-radius);--border-radius-l: calc(var(--border-radius) * 2);--border-radius-round: 999px;--border-width: 1px;--border-width-s: var(--border-width);--border-width-m: calc(var(--border-width) * 2);--layout-width: calc(var(--font-size) * 82);--content-width: 72ch}.header{position:sticky;top:0;z-index:30;view-transition-name:site-header;background-color:var(--color-background);border-bottom:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent);backdrop-filter:blur(18px)}.header__container{position:static;width:min(100%,var(--layout-width));margin:0 auto;padding:var(--header-padding-y, var(--space-s)) var(--header-padding-x, var(--space));display:flex;justify-content:space-between;align-items:center;color:var(--color-foreground);gap:var(--header-gap, var(--space-l))}@media screen and (max-width: 960px){.header__container{gap:var(--space-s)}}.footer{view-transition-name:site-footer;border-top:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent);background-color:color-mix(in srgb, var(--color-background) 94%, var(--color-foreground) 6%)}.footer__container{width:min(100%,var(--layout-width));margin:0 auto;padding:var(--footer-padding-y, var(--space-xl)) var(--footer-padding-x, var(--space));display:grid;gap:var(--space)}.footer__navigation{width:100%;padding-bottom:var(--space-s);border-bottom:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent)}.footer__bar{display:flex;justify-content:space-between;align-items:center;gap:var(--space);flex-wrap:wrap}.footer__bar--end{justify-content:flex-end}.footer__controls{display:flex;justify-content:flex-end;flex-wrap:wrap;align-items:center;gap:var(--footer-gap, var(--space));margin-left:auto}.footer__brand{display:flex;align-items:center}.footer__control{display:flex;align-items:center;gap:var(--space-xs)}.footer__label{font-size:var(--font-size-xs);letter-spacing:.08em;opacity:.6}.footer__meta{padding-top:var(--space-s);border-top:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent);display:flex;justify-content:space-between;align-items:center;gap:var(--space);flex-wrap:wrap}.footer .copyright{font-size:var(--font-size-s);opacity:.65}.footer .navigation{width:100%;margin-left:0}.footer .navigation__list{justify-content:flex-start}@media screen and (max-width: 720px){.footer__bar{align-items:flex-start}.footer__controls{width:100%;justify-content:space-between;margin-left:0}}.socials{list-style-type:none;margin:0;padding:0;display:flex;gap:var(--space-s)}.socials__link{font-size:var(--font-size-s);color:inherit;text-decoration:none;opacity:.75;border-bottom:var(--border-width-s) solid rgba(0,0,0,0)}.socials__link:hover{opacity:1;border-bottom-color:currentColor}.color-mode-toggle{--switch-segment-height: calc(var(--space) * 1.7);position:relative;display:inline-flex;align-items:center;gap:var(--color-mode-gap, var(--space-xs));padding:var(--space-xxs);border:none;border-radius:var(--border-radius-m);background:color-mix(in srgb, var(--color-foreground) 16%, var(--color-background));color:inherit;cursor:pointer;font:inherit;opacity:1;transition:box-shadow .2s ease}.color-mode-toggle:focus-visible{outline:none;box-shadow:0 0 0 var(--border-width-m) color-mix(in srgb, var(--color-primary) 24%, transparent)}.color-mode-toggle__option{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;min-width:var(--switch-segment-height);min-height:var(--switch-segment-height);padding:0;color:color-mix(in srgb, var(--color-foreground) 68%, transparent);transition:color .2s ease,background-color .2s ease}.color-mode-toggle__option:hover{color:var(--color-foreground)}.color-mode-toggle__icon{display:inline-flex;align-items:center;justify-content:center;width:var(--color-mode-icon-size, 1em);height:var(--color-mode-icon-size, 1em)}.color-mode-toggle__icon-asset{display:block;width:100%;height:100%}.color-mode-toggle__track{position:absolute;inset:var(--space-xxs);display:grid;grid-template-columns:1fr 1fr;pointer-events:none}.color-mode-toggle__thumb{grid-column:1;border-radius:var(--border-radius-s);background:var(--color-background);box-shadow:0 .2em .75em color-mix(in srgb, var(--color-foreground) 18%, transparent);transition:transform .2s ease,background-color .2s ease}.color-mode-toggle[data-color-mode=light] .color-mode-toggle__option:first-child,.color-mode-toggle[data-color-mode=dark] .color-mode-toggle__option:last-child{color:var(--color-foreground)}.color-mode-toggle[data-color-mode=dark] .color-mode-toggle__thumb{transform:translateX(100%)}.navigation{font-size:var(--font-size)}.navigation__list,.navigation__item,.navigation__groups,.navigation__group{list-style-type:none;margin:0;padding:0}.navigation__entry{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:calc(var(--space)*1.9);padding:calc(var(--space-xxs) + .1em) calc(var(--space-s) + .1em);border-radius:var(--border-radius-m);transition:background-color .2s ease,color .2s ease}.navigation__mobile-toggle{display:none;align-items:center;gap:var(--space-xs);padding:0;border:none;background:rgba(0,0,0,0);color:inherit;font:inherit;font-weight:600;cursor:pointer}.navigation__mobile-toggle-icon{position:relative;display:inline-block;width:var(--space);height:calc(var(--space)*.75);border-top:var(--border-width-s) solid currentColor;border-bottom:var(--border-width-s) solid currentColor}.navigation__mobile-toggle-icon::before{content:"";position:absolute;top:50%;left:0;width:100%;border-top:var(--border-width-s) solid currentColor;transform:translateY(-50%)}.navigation__link{display:inline-flex;align-items:center;gap:var(--space-xs);padding:0;color:inherit;text-decoration:none;opacity:.92;font-weight:600;line-height:1.2;transition:color .2s ease,opacity .2s ease}.navigation__link:hover{opacity:1}.navigation__item:hover>.navigation__entry,.navigation__item:focus-within>.navigation__entry{background-color:color-mix(in srgb, var(--color-secondary) 22%, transparent)}.navigation__item:hover>.navigation__entry>.navigation__link,.navigation__item:focus-within>.navigation__entry>.navigation__link{color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}.navigation__item--current>.navigation__entry,.navigation__item--parent>.navigation__entry,.navigation__item--open>.navigation__entry{background-color:color-mix(in srgb, var(--color-secondary) 30%, transparent)}.navigation__item--current>.navigation__entry>.navigation__link,.navigation__item--parent>.navigation__entry>.navigation__link,.navigation__item--open>.navigation__entry>.navigation__link{opacity:1;color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}.navigation__toggle{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:var(--space-s);height:var(--space-s);padding:0;border:none;background:rgba(0,0,0,0);color:inherit;cursor:pointer;opacity:.55;transition:opacity .2s ease,transform .2s ease}.navigation__toggle:hover,.navigation__toggle:focus-visible{opacity:1}.navigation__toggle::before{content:"";width:.5em;height:.5em;border-right:var(--border-width-s) solid currentColor;border-bottom:var(--border-width-s) solid currentColor;transform:translateY(-12%) rotate(45deg)}.navigation__item--open>.navigation__entry>.navigation__toggle{opacity:1}.navigation__item--open>.navigation__entry>.navigation__toggle::before{transform:translateY(12%) rotate(-135deg)}.navigation__panel,.navigation__list--sub{display:none}.navigation__groups{display:grid;gap:var(--space-xxs)}.navigation__group{display:grid;gap:var(--space-xxs);align-content:start}.navigation__group-link{width:fit-content;display:inline-flex;align-items:center;gap:var(--space-xs);color:inherit;text-decoration:none;padding:.3em .5em;border-radius:var(--border-radius-s);opacity:.88;font-weight:500;transition:opacity .2s ease,background-color .2s ease,color .2s ease}.navigation__group-link:hover{opacity:1;background-color:color-mix(in srgb, var(--color-secondary) 18%, transparent);color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}.navigation__group-link--heading,.navigation__group--current>.navigation__group-link,.navigation__group--parent>.navigation__group-link{opacity:1}.navigation__group--current>.navigation__group-link,.navigation__group--parent>.navigation__group-link{background-color:color-mix(in srgb, var(--color-secondary) 24%, transparent);color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}.navigation__group-link--heading{font-size:var(--font-size);line-height:1.2;font-weight:600}.navigation__icon{width:var(--navigation-icon-size, 1em);height:var(--navigation-icon-size, 1em);flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center}.navigation__icon-asset,.navigation__icon-asset>svg{display:block;width:100%;height:100%}.navigation--header{margin-left:auto;position:relative;display:flex;align-items:center;justify-content:flex-end;gap:var(--space-s)}.navigation--header .navigation__list{position:relative;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:var(--navigation-gap, var(--space-s));view-transition-name:navigation-links}.navigation--header .navigation__item{position:relative}.navigation--header .navigation__active-pill{display:none}.navigation--header .navigation__entry{position:relative;z-index:1}.navigation--header .navigation__item--current>.navigation__entry,.navigation--header .navigation__item--parent>.navigation__entry{anchor-name:--navigation-active}.navigation--header .navigation__item--current>.navigation__entry>.navigation__link,.navigation--header .navigation__item--parent>.navigation__entry>.navigation__link{view-transition-name:navigation-label}.navigation--header .navigation__panel{position:absolute;top:calc(100% + var(--space-xs));left:0;right:auto;z-index:20;width:max-content;min-width:0;max-width:min(28em,100vw - var(--space)*2);border-radius:var(--border-radius-l);background-color:var(--color-background);box-shadow:0 var(--space-xs) var(--space) color-mix(in srgb, var(--color-foreground) 8%, transparent);opacity:0;transform:translateY(calc(var(--space-xs) * -1)) scale(0.98);transform-origin:top left;transition:opacity .18s ease,transform .18s ease}.navigation--header .navigation__item--align-end>.navigation__panel{left:auto;right:0;transform-origin:top right}.navigation--header .navigation__item--open>.navigation__panel,.navigation--header .navigation__panel[data-state=open],.navigation--header .navigation__panel[data-state=opening]{display:block;opacity:1;transform:translateY(0) scale(1)}.navigation--header .navigation__panel-inner{width:fit-content;max-width:100%;margin:0;padding:calc(var(--space-xs) + .2em)}.navigation--header .navigation__groups--level-1{width:fit-content;grid-template-columns:repeat(2, max-content);gap:calc(var(--space-xxs) + .1em) var(--space-xs)}.navigation--header .navigation__groups--compact-column{grid-template-columns:max-content}.navigation--header .navigation__groups--level-1 .navigation__group-link:not(.navigation__group-link--heading){font-size:var(--font-size-s)}.navigation--header .navigation__groups--level-2,.navigation--header .navigation__groups--level-3,.navigation--header .navigation__groups--level-4,.navigation--header .navigation__groups--level-5{gap:calc(var(--space-xxs) + .1em)}@supports(position-anchor: --navigation-active) and (anchor-name: --navigation-active){.navigation--header .navigation__active-pill{position:absolute;position-anchor:--navigation-active;position-area:center;display:block;width:anchor-size(width);height:anchor-size(height);border-radius:var(--border-radius-m);background-color:color-mix(in srgb, var(--color-secondary) 30%, transparent);pointer-events:none;z-index:0;view-transition-name:navigation-pill}.navigation--header .navigation__item--current>.navigation__entry,.navigation--header .navigation__item--parent>.navigation__entry,.navigation--header .navigation__item--open>.navigation__entry{background-color:rgba(0,0,0,0)}.navigation--header .navigation__panel{top:anchor(bottom);left:anchor(left);margin-top:var(--space-xs)}.navigation--header .navigation__item--align-end>.navigation__panel{left:auto;right:anchor(right)}}@media screen and (max-width: 960px){.navigation--header .navigation__active-pill{display:none}.navigation--header .navigation__panel{position:static;width:100%;min-width:0;max-width:none;margin-top:0;border:none;border-radius:0;box-shadow:none;background:rgba(0,0,0,0);opacity:1;transform:none;transition:none}.navigation--header .navigation__panel-inner{width:100%;padding:var(--space-xs) 0 0 calc(var(--space)*.65)}.navigation--header .navigation__groups--level-1{grid-template-columns:1fr;gap:var(--space-s)}}@media screen and (max-width: 960px){.navigation--header.navigation--mobile-panel .navigation__mobile-toggle{display:inline-flex}.navigation--header.navigation--mobile-panel .navigation__list{display:none;position:fixed;inset:0;z-index:100;overflow-y:auto;padding:var(--space-l) var(--space);background-color:var(--color-background);flex-direction:column;align-items:stretch;gap:var(--space-xxs)}.navigation--header.navigation--mobile-panel.navigation--mobile-open .navigation__mobile-toggle{position:fixed;top:var(--space);right:var(--space);z-index:101}.navigation--header.navigation--mobile-panel.navigation--mobile-open .navigation__list{display:flex}.navigation--header.navigation--mobile-panel .navigation__item{width:100%}.navigation--header.navigation--mobile-panel .navigation__entry{width:100%;justify-content:space-between;padding:var(--space-xs) calc(var(--space-s) + .1em)}.navigation--header.navigation--mobile-panel .navigation__link{width:100%;padding:0}}@media screen and (max-width: 960px){.navigation--mobile-inline .navigation__list{width:auto;justify-content:flex-end;flex-direction:row;align-items:center;gap:var(--space-xs)}.navigation--mobile-inline .navigation__entry{width:auto;justify-content:flex-start}}.navigation--footer{width:100%;margin-left:0}.navigation--footer .navigation__footer-list,.navigation--footer .navigation__footer-item{list-style-type:none;margin:0;padding:0}.navigation--footer .navigation__footer-list--level-0{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-xl)}.navigation--footer .navigation__footer-item{width:fit-content}.navigation--footer .navigation__footer-list--level-1,.navigation--footer .navigation__footer-list--level-2,.navigation--footer .navigation__footer-list--level-3,.navigation--footer .navigation__footer-list--level-4,.navigation--footer .navigation__footer-list--level-5{display:grid;gap:var(--space-xs);margin-top:var(--space-s)}.navigation--footer .navigation__footer-link{width:fit-content;display:inline-flex;align-items:center;gap:var(--space-xs);padding:.3em .5em;border-radius:var(--border-radius-s);color:inherit;text-decoration:none;opacity:.78;transition:opacity .2s ease,background-color .2s ease,color .2s ease}.navigation--footer .navigation__footer-link:hover{opacity:1;background-color:color-mix(in srgb, var(--color-secondary) 18%, transparent);color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}.navigation--footer .navigation__footer-link--heading{opacity:1;font-weight:600}.navigation--footer .navigation__footer-item--current>.navigation__footer-link,.navigation--footer .navigation__footer-item--parent>.navigation__footer-link{opacity:1;background-color:color-mix(in srgb, var(--color-secondary) 24%, transparent);color:color-mix(in srgb, var(--color-secondary), var(--color-foreground) 50%)}@media screen and (max-width: 960px){.navigation--footer .navigation__footer-list--level-0{grid-template-columns:1fr;gap:var(--space-l)}}.logo{color:inherit;text-decoration:none;display:inline-flex;align-items:center}.logo__text{font-size:var(--font-size-s);font-weight:700;letter-spacing:.18em;text-transform:uppercase}.logo--image-only svg{display:block;width:auto;max-width:var(--logo-max-width, calc(var(--space) * 6.5));height:var(--logo-height, calc(var(--space) * 1.1))}.logo--image-only svg path,.logo--image-only svg rect,.logo--image-only svg circle,.logo--image-only svg text{fill:var(--color-foreground)}.logo img{display:block;width:auto;max-width:var(--logo-max-width, calc(var(--space) * 6.5));height:var(--logo-height, calc(var(--space) * 1.1))}.logo--footer.logo--image-only svg{max-width:var(--footer-logo-max-width, calc(var(--space) * 6));height:var(--footer-logo-height, calc(var(--space) * 1.05));opacity:.92}.logo--footer img{max-width:var(--footer-logo-max-width, calc(var(--space) * 6));height:var(--footer-logo-height, calc(var(--space) * 1.05));opacity:.92}.header__actions{display:flex;align-items:center;gap:var(--space-xs);flex:0 0 auto}.search-toggle{width:calc(var(--space)*1.85);height:calc(var(--space)*1.85);display:inline-flex;align-items:center;justify-content:center;padding:0;border:var(--border-width-s) solid color-mix(in srgb, currentColor 12%, transparent);border-radius:var(--border-radius-round);background:color-mix(in srgb, var(--color-background) 92%, var(--color-primary) 8%);color:inherit;cursor:pointer;transition:background-color 160ms ease,border-color 160ms ease,transform 160ms ease}.search-toggle:hover,.search-toggle:focus-visible{background:color-mix(in srgb, var(--color-primary) 14%, var(--color-background));border-color:color-mix(in srgb, var(--color-primary) 22%, transparent);transform:translateY(-1px)}.search-toggle__icon{width:.9rem;height:.9rem;display:inline-flex}.search-toggle__icon-asset{width:100%;height:100%}.search-shell{position:fixed;inset:0;z-index:80;display:grid;place-items:start center;padding:clamp(var(--space),5vh,var(--space-xl)*1.4) var(--space)}.search-shell[hidden]{display:none}.search-shell__backdrop{position:absolute;inset:0;border:0;background:color-mix(in srgb, var(--color-foreground) 18%, transparent);backdrop-filter:blur(10px);cursor:default}.search-shell__dialog{position:relative;width:min(100%,44rem)}.search-shell__panel{margin:0;display:grid;gap:var(--space-s);padding:clamp(var(--space),2vw,var(--space) + var(--space-xs));border:var(--border-width-s) solid color-mix(in srgb, currentColor 12%, transparent);border-radius:calc(var(--border-radius-l) + var(--border-radius-s));background:color-mix(in srgb, var(--color-background) 94%, var(--color-primary) 6%);box-shadow:0 calc(var(--space-xs) + var(--space-xxs)) calc(var(--space-xl)*1.4) color-mix(in srgb, var(--color-foreground) 12%, transparent)}.search-shell__title{margin:0;font-size:var(--font-size-s);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, currentColor 58%, transparent)}.search-shell__field{display:grid;grid-template-columns:auto minmax(0, 1fr) auto;align-items:center;gap:var(--space-xs);margin:0;padding:var(--space-xs) var(--space-s);border:var(--border-width-s) solid color-mix(in srgb, currentColor 12%, transparent);border-radius:calc(var(--border-radius-l) + var(--border-radius-s));background:color-mix(in srgb, var(--color-background) 96%, transparent)}.search-shell__field:focus-within{border-color:color-mix(in srgb, var(--color-primary) 26%, transparent);box-shadow:0 0 0 calc(var(--border-width-m) + 1px) color-mix(in srgb, var(--color-primary) 16%, transparent)}.search-shell__field-icon{width:1rem;height:1rem;display:inline-flex;color:color-mix(in srgb, currentColor 60%, transparent)}.search-shell__field-icon-asset{width:100%;height:100%}.search-shell__input{width:100%;min-width:0;padding:0;border:0;background:rgba(0,0,0,0);color:inherit;font:inherit;font-size:clamp(var(--font-size),1rem + .45vw,var(--font-size-h4));line-height:1.2;outline:none}.search-shell__input::placeholder{color:color-mix(in srgb, currentColor 42%, transparent)}.search-shell__close{width:calc(var(--space-xl) + var(--space-xxs));height:calc(var(--space-xl) + var(--space-xxs));display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--border-radius-round);background:rgba(0,0,0,0);color:color-mix(in srgb, currentColor 62%, transparent);cursor:pointer;transition:background-color 160ms ease,color 160ms ease}.search-shell__close:hover,.search-shell__close:focus-visible{background:color-mix(in srgb, currentColor 8%, transparent);color:inherit}.search-shell__close-icon{position:relative;width:.9rem;height:.9rem}.search-shell__close-icon::before,.search-shell__close-icon::after{content:"";position:absolute;top:calc(50% - var(--border-width-s)/2);left:0;width:100%;border-top:var(--border-width-s) solid currentColor}.search-shell__close-icon::before{transform:rotate(45deg)}.search-shell__close-icon::after{transform:rotate(-45deg)}.search-shell__hint{margin:0;font-size:var(--font-size-s);color:color-mix(in srgb, currentColor 62%, transparent)}.search-shell__results{min-height:0}.search-results{margin:0;padding:var(--space-xxs);border:var(--border-width-s) solid color-mix(in srgb, currentColor 10%, transparent);border-radius:var(--border-radius-l);background:color-mix(in srgb, var(--color-background) 98%, transparent)}.search-results__list{list-style:none;margin:0;padding:0;display:grid;gap:calc(var(--space-xxs) + 1px)}.search-results__item{margin:0}.search-results__link{display:grid;gap:calc(var(--space-xxs) + 1px);padding:var(--space-xs) var(--space-s);border-radius:var(--border-radius-m);color:inherit;text-decoration:none;background:rgba(0,0,0,0);transition:background-color 160ms ease,transform 160ms ease}.search-results__link:hover,.search-results__link:focus-visible{background:color-mix(in srgb, var(--color-primary) 10%, transparent);transform:translateY(-1px)}.search-results__title{font-weight:650}.search-results__excerpt{color:color-mix(in srgb, currentColor 70%, transparent);font-size:var(--font-size-s);line-height:1.5}.search-results__empty{margin:0;padding:var(--space-xs) var(--space-s);color:color-mix(in srgb, currentColor 70%, transparent)}html.search-open,body.search-open{overflow:hidden}@media screen and (max-width: 720px){.search-shell{padding:var(--space-s);align-items:start}.search-shell__panel{padding:var(--space-s)}.search-shell__field{padding:var(--space-xs);grid-template-columns:auto minmax(0, 1fr)}.search-shell__close{grid-column:2;justify-self:end;margin-top:var(--space-xxs)}.search-shell__hint{margin-top:calc(var(--space-xxs)*-1)}}.content{--foreground: currentColor;--background: transparent;--primary: var(--color-primary);--secondary: var(--color-secondary);--accent: var(--color-secondary);--success: var(--color-success);--warning: var(--color-warning);--error: var(--color-error);--info: var(--color-info);--font-body: Inter, system-ui, sans-serif;--font-heading: Inter, system-ui, sans-serif;--font-code: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;--line-height: 1.7;--content-width: var(--content-copy-width, 72ch);--wide-width: 100%;padding:0}.content>svg rect:not([fill]):not([style]):not([class]),.content>svg path:not([fill]):not([style]):not([class]),.content>svg circle:not([fill]):not([style]):not([class]){fill:currentColor}.content .article-block{--article-background-default: color-mix( in srgb, currentColor 2%, transparent );--article-text-default: inherit;background-color:var(--article-color, var(--article-background-default));color:var(--article-color-contrast, var(--article-text-default));border-color:color-mix(in srgb, currentColor 12%, transparent)}.content .article-block a{color:inherit;text-decoration-color:color-mix(in srgb, currentColor 32%, transparent)}.content .article-block__header{display:grid;gap:var(--space-xs);margin-bottom:var(--space)}.content .article-block__meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs) var(--space-s);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;opacity:.82}.content .article-block__type,.content .article-block__subtitle,.content .article-block__date,.content .article-block__description{margin:0}.content .article-block__type{padding:.3em .7em;border-radius:999px;background-color:color-mix(in srgb, currentColor 14%, transparent);font-weight:700;opacity:1}.content .article-block__title{margin:0;line-height:1.1}.content .article-block__description{max-width:var(--content-copy-width, 72ch);opacity:.88}.content .article-block__content>:first-child{margin-top:0}.language{--switch-segment-height: calc(var(--space) * 1.7)}.language,.language__item{list-style-type:none;margin:0;padding:0}.language{display:flex;align-items:center;gap:var(--language-gap, var(--space-xxs));padding:var(--space-xxs);border-radius:var(--border-radius-m);background:color-mix(in srgb, var(--color-foreground) 16%, var(--color-background))}.language__item{display:flex}.language__item--active .language__link{opacity:1;background:var(--color-background);color:var(--color-foreground);box-shadow:0 .2em .75em color-mix(in srgb, var(--color-foreground) 18%, transparent)}.language__link{display:inline-flex;align-items:center;justify-content:center;line-height:1.2;color:inherit;font-weight:600;font-size:var(--font-size-xs);text-decoration:none;text-transform:uppercase;text-align:center;opacity:1;border-radius:var(--border-radius-s);color:color-mix(in srgb, var(--color-foreground) 68%, transparent);min-width:2.5em;padding:0 var(--space-xs);min-height:var(--switch-segment-height);transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}.language__link:hover{color:var(--color-foreground)}.archive--section{padding:var(--space-xxl) 0 0;border-top:var(--border-width-s) solid color-mix(in srgb, var(--color-foreground) 12%, transparent)}.archive-grid{list-style:none;margin:var(--space-xl) 0 0;padding:0;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:var(--space) var(--space)}.archive-grid--blog{grid-template-columns:repeat(auto-fit, minmax(var(--archive-column-min-width, calc(var(--font-size) * 20)), 1fr));gap:var(--space-xl)}@media screen and (max-width: 840px){.archive-grid{grid-template-columns:1fr}}.section--related .content{margin-bottom:var(--space-xl)}.archive-card{--archive-card-background-default: color-mix( in srgb, var(--color-background) 95%, var(--color-foreground) 5% );--archive-card-text-color: var(--section-text-color, var(--color-foreground));--archive-card-background: var( --section-background-color, var(--archive-card-background-default) );--archive-card-background-hover: color-mix( in srgb, var(--archive-card-background) 92%, var(--archive-card-text-color) 8% );margin:0;border:none;border-radius:var(--border-radius-m);background-color:var(--archive-card-background);color:var(--archive-card-text-color);overflow:hidden;box-shadow:0 var(--space-xxs) var(--space-s) color-mix(in srgb, var(--color-foreground) 8%, transparent);transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease}.archive-card__link{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:var(--card-gap, var(--space));height:100%;padding:var(--card-padding, var(--space));text-decoration:none;color:var(--section-text-color);transition:background-color .2s ease,opacity .2s ease}.archive-card:hover{background-color:var(--archive-card-background-hover);box-shadow:0 var(--space-xs) calc(var(--space)*1.1) color-mix(in srgb, var(--color-foreground) 12%, transparent);transform:translateY(calc(var(--space-xxs) * -1))}.archive-card__link:hover{opacity:1}.archive-card__media{display:flex;align-items:center;justify-content:center}.archive-card__media--icon{width:var(--card-icon-size, calc(var(--space) * 4.5));height:var(--card-icon-size, calc(var(--space) * 4.5));border-radius:var(--border-radius-m);background-color:color-mix(in srgb, currentColor 12%, transparent)}.archive-card__media--image{min-height:var(--card-media-min-height, calc(var(--space) * 12));overflow:hidden;margin-bottom:var(--space)}.archive-card__icon{width:var(--card-icon-inner-size, calc(var(--space) * 1.6));height:var(--card-icon-inner-size, calc(var(--space) * 1.6));object-fit:contain;opacity:1}.archive-card__icon,.archive-card__icon>svg{display:block;width:var(--card-icon-inner-size, calc(var(--space) * 1.6));height:var(--card-icon-inner-size, calc(var(--space) * 1.6))}.archive-card__image{display:block;width:100%;height:100%;object-fit:cover}.archive-card__body{display:grid;gap:var(--card-row-gap, var(--space-xs));padding:0}.archive-card__title,.archive-card__meta,.archive-card__excerpt{margin:0}.archive-card__title{font-size:var(--font-size-l);line-height:1.2;color:inherit}.archive-card__meta{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;opacity:.6}.archive-card__excerpt{opacity:.84;max-width:var(--card-copy-width, 60ch);color:color-mix(in srgb, currentColor, transparent 18%)}.archive-card--blog{border:none;background:rgba(0,0,0,0)}.archive-card--blog .archive-card__link{grid-template-columns:1fr;gap:var(--card-blog-gap, var(--space))}.archive-card--blog .archive-card__media--image{justify-content:flex-start}.archive-card--blog .archive-card__body{gap:var(--space-xs)}.section.tags{background-color:color-mix(in srgb, var(--color-background) 94%, var(--color-foreground) 6%);padding:var(--space-xl) 0}.tag__list{display:flex;align-items:center;justify-content:center;list-style-type:none;margin:0;padding:0;flex-wrap:wrap;gap:var(--space-s)}.tag__link{text-decoration:none;border-bottom:var(--border-width-s) solid rgba(0,0,0,0);padding:var(--tag-padding-y, var(--space-xxs)) 0;color:inherit;font-size:var(--font-size-s)}.tag__link::before{content:"#";opacity:.55}.tag__link:hover{border-bottom-color:currentColor}@view-transition{navigation:auto}@keyframes view-enter{from{opacity:0;transform:translateY(1rem) scale(0.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes view-exit{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-0.75rem) scale(0.99)}}::view-transition-group(root){animation-duration:320ms;animation-timing-function:cubic-bezier(0.22, 1, 0.36, 1)}::view-transition-group(site-header),::view-transition-group(site-footer),::view-transition-group(navigation-links),::view-transition-old(site-header),::view-transition-new(site-header),::view-transition-old(site-footer),::view-transition-new(site-footer),::view-transition-old(navigation-links),::view-transition-new(navigation-links){animation:none}::view-transition-old(site-main){animation:view-exit 180ms ease both}::view-transition-new(site-main){animation:view-enter 280ms cubic-bezier(0.22, 1, 0.36, 1) both}::view-transition-group(navigation-pill){animation-duration:420ms;animation-timing-function:cubic-bezier(0.23, 1, 0.32, 1.1);overflow:clip;border-radius:var(--border-radius-m)}::view-transition-old(navigation-label),::view-transition-new(navigation-label){animation-duration:180ms}@media(prefers-reduced-motion: reduce){::view-transition-group(root),::view-transition-group(site-main),::view-transition-group(navigation-pill),::view-transition-old(site-main),::view-transition-new(site-main),::view-transition-old(navigation-label),::view-transition-new(navigation-label){animation:none}}
