*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}:where(b,strong,th){font-weight:400}:where(code,kbd,samp,pre){font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:400}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}@media(prefers-reduced-motion:reduce){*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--motion-duration-feedback: .12s;--motion-duration-exit: .18s;--motion-duration-state: .24s;--motion-duration-enter: .32s;--motion-duration-layout: .42s;--motion-duration-caret: .8s;--motion-duration-pulse: 1.4s;--motion-stagger-step: 24ms;--motion-ease-out-quart: cubic-bezier(.25, 1, .5, 1);--motion-ease-out-quint: cubic-bezier(.22, 1, .36, 1);--motion-ease-pulse: cubic-bezier(.45, 0, .55, 1)}@keyframes motion-enter{0%{opacity:0;transform:translateY(var(--motion-enter-distance, .25rem))}to{opacity:1;transform:translateY(0)}}@keyframes motion-fade-in{0%{opacity:0}to{opacity:1}}@keyframes motion-exit-up{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-.125rem)}}@keyframes motion-caret-blink{0%,48%{opacity:1}49%,to{opacity:0}}@keyframes motion-pulse{0%,to{opacity:.35}50%{opacity:.9}}@font-face{font-family:IBM Plex Mono;src:url(/cdn/_astro/IBMPlexMono-Regular.DMJ8VG8y.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/cdn/_astro/IBMPlexMono-Italic.BqAiT5Ww.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Mono Fallback;src:local("Courier New");font-weight:400;font-style:normal;size-adjust:99.9837%;ascent-override:102.5167%;descent-override:27.5045%}@font-face{font-family:IBM Plex Mono Fallback;src:local("Courier New");font-weight:400;font-style:italic;size-adjust:99.9837%;ascent-override:102.5167%;descent-override:27.5045%}@font-face{font-family:"STIX Two Math";src:url(/cdn/_astro/STIXTwoMath-Regular.BJu8nNzt.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Test Söhne;src:url(/cdn/_astro/TestSohne-Buch.9sGethcS.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono V12;src:url(/cdn/_astro/GeistMono-V12.pyAoGB9p.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--font-sans: "Test Söhne", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", "IBM Plex Mono Fallback", monospace;--font-math: "STIX Two Math", math;--font-display: var(--font-sans);--font-v12-sans: var(--font-sans);--font-v12-mono: "Geist Mono V12", monospace;--font-v12-display: var(--font-sans)}:root{--mauve-1: light-dark(#fdfcfd, #121113);--mauve-2: light-dark(#faf9fb, #1a191b);--mauve-3: light-dark(#f2eff3, #232225);--mauve-4: light-dark(#eae7ec, #2b292d);--mauve-5: light-dark(#e3dfe6, #323035);--mauve-6: light-dark(#dbd8e0, #3c393f);--mauve-7: light-dark(#d0cdd7, #49474e);--mauve-8: light-dark(#bcbac7, #625f69);--mauve-9: light-dark(#8e8c99, #6f6d78);--mauve-11: light-dark(#65636d, #b5b2bc);--mauve-12: light-dark(#211f26, #eeeef0);--page: var(--mauve-3);--raised: var(--mauve-4);--inset: var(--mauve-5);--faint: var(--mauve-9);--background: var(--mauve-2);--foreground: var(--mauve-12);--muted: var(--mauve-3);--muted-foreground: var(--mauve-11);--border: var(--mauve-6);--ring: var(--mauve-11);--tone-red: light-dark(#ce2c31, #ff9592);--tone-orange: light-dark(#cc4e00, #ffa057);--tone-yellow: light-dark(#9e6c00, #f5e147);--tone-green: light-dark(#218358, #3dd68c);--tone-cyan: light-dark(#107d98, #4ccce6);--tone-blue: light-dark(#0d74ce, #70b8ff);--tone-magenta: light-dark(#953ea3, #e796f3);color-scheme:light dark}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}img[data-scheme=dark]{display:none}@media(prefers-color-scheme:dark){img[data-scheme=light]{display:none}img[data-scheme=dark]{display:block}}:root[data-theme=light] img[data-scheme=light],:root[data-theme=dark] img[data-scheme=dark]{display:block}:root[data-theme=light] img[data-scheme=dark],:root[data-theme=dark] img[data-scheme=light]{display:none}*,:before,:after,::backdrop,::file-selector-button{border-color:var(--border);&:focus-visible{outline:2px solid var(--ring);outline-offset:.25rem;border-radius:var(--radius-sm)}}body{background-color:var(--page);color:var(--foreground)}:root{--step--1: clamp(.8889rem, .8709rem + .0877vw, .9375rem);--step-0: clamp(1rem, .9538rem + .2255vw, 1.125rem);--step-1: clamp(1.125rem, 1.0418rem + .4059vw, 1.35rem);--step-2: clamp(1.2656rem, 1.1346rem + .6392vw, 1.62rem);--step-3: clamp(1.4238rem, 1.2315rem + .9383vw, 1.944rem);--step-4: clamp(1.6018rem, 1.3315rem + 1.3186vw, 2.3328rem);--font-weight-normal: 400;--font-weight-medium: 400;--leading-offset: .5625rem;--prose-foreground: color-mix(in oklab, var(--foreground) 80%, transparent);--prose-marker: color-mix(in oklab, var(--foreground) 30%, transparent);--measure: 40rem}body{font-family:var(--font-sans);font-synthesis:none;text-wrap:pretty}:where(h1,h2,h3,h4,h5,h6){text-wrap:balance}a{text-decoration:underline;text-decoration-color:var(--underline, transparent);text-decoration-thickness:max(1px,.0625em);text-decoration-skip-ink:none;text-underline-position:under;text-underline-offset:-.06em;&:hover{text-decoration-color:currentColor}}prose-content{display:block;font-size:var(--step-0);line-height:calc(var(--leading-offset) + 1em);color:var(--foreground);text-wrap:pretty;overflow-wrap:break-word;:where(p,ul,ol,blockquote,pre,table,table-scroll,figure,hr,details,[data-callout],math-display,.expressive-code){margin-block:0 1.125em}>:first-child{margin-block-start:0}>:last-child{margin-block-end:0}:is(p,li){color:var(--prose-foreground)}}:root{--space-3xs: clamp(.25rem, .2269rem + .1127vw, .3125rem);--space-2xs: clamp(.5rem, .4769rem + .1127vw, .5625rem);--space-xs: clamp(.75rem, .7038rem + .2255vw, .875rem);--space-s: clamp(1rem, .9538rem + .2255vw, 1.125rem);--space-m: clamp(1.5rem, 1.4307rem + .3382vw, 1.6875rem);--space-l: clamp(2rem, 1.9076rem + .451vw, 2.25rem);--space-xl: clamp(3rem, 2.8613rem + .6764vw, 3.375rem);--space-s-m: clamp(1rem, .7458rem + 1.2401vw, 1.6875rem);--frame-max-width: 90rem;--grid-max-width: 75.94rem;--grid-gutter: var(--space-s-m);--grid-columns: 12;--grid-edge: max( var(--grid-gutter), (100% - var(--grid-max-width)) / 2 + var(--grid-gutter) );--grid-column-width: calc( ( min(100%, var(--grid-max-width)) - (var(--grid-columns) + 1) * var(--grid-gutter) ) / var(--grid-columns) );--bar-gutter: var(--grid-edge);--page-start-offset: calc(var(--space-xl) - var(--grid-gutter));--page-offset-top: calc( var(--bar-nav-height) + var(--bar-toc-height) + var(--grid-gutter) + var(--page-start-offset) );--page-offset-bottom: var(--space-m)}html{--bar-nav-height: calc(2rem + 2 * var(--space-2xs) + 2px);--bar-toc-height: 0px;scrollbar-gutter:stable;overflow-x:clip;scroll-padding-block-start:var(--page-offset-top);@media(width>=48rem){overscroll-behavior-y:none}@media(width<64rem){&:has(page-toc){--bar-toc-height: calc(1.5 * var(--step--1) + 2 * var(--space-2xs) + 2px)}}}:root{--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--blur-sm: 8px}[data-svg-mask]{display:inline-block;flex:none;inline-size:var(--svg-mask-size, 1em);block-size:var(--svg-mask-size, 1em);background-color:currentcolor;-webkit-mask:var(--svg-mask) center / contain no-repeat;mask:var(--svg-mask) center / contain no-repeat}page-grid>footer[data-astro-cid-sz7xmlte][data-site-footer]{margin-block-start:var(--space-xl)}footer[data-astro-cid-sz7xmlte][data-site-footer]{--footer-surface: var(--mauve-4);view-timeline-name:--site-footer;view-timeline-axis:block;position:relative;z-index:5;grid-column:1 / -1;grid-row:3;margin-inline:calc(50% - 50vw);background:var(--footer-surface);font-family:var(--font-v12-sans);landing-page &{--footer-surface: var(--mauve-3)}footer-shell{display:block;max-inline-size:var(--frame-max-width);margin-inline:auto;padding-block-start:var(--space-m);padding-inline:var(--grid-gutter);footer-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-m) var(--grid-gutter);@media(width>=64rem){grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr))}nav{font-size:var(--step--1);@media(width>=64rem){grid-column:span 2;&:first-of-type{grid-column:5 / 7}}>p{color:var(--foreground)}ul{display:flex;flex-direction:column;gap:2px;margin-block-start:2px}a{display:inline-flex;align-items:center;color:var(--muted-foreground);text-decoration-line:none;&:hover{color:var(--foreground)}}}footer-meta{grid-column:1 / -1;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2xs);@media(width>=64rem){grid-column:1 / 3}>p{font-size:var(--step--1);color:var(--muted-foreground)}}theme-switch{display:flex;align-items:center;inline-size:100%;max-inline-size:13rem;padding:2px;border-radius:var(--radius-full);background:var(--mauve-5);label{flex:1;display:flex;align-items:center;justify-content:center;min-inline-size:0;padding-block:2px;border-radius:var(--radius-full);color:var(--muted-foreground);cursor:pointer;&:has(input:checked){background:var(--mauve-6);color:var(--foreground)}&:has(input:focus-visible){outline:2px solid var(--ring);outline-offset:2px}[data-svg-mask]{inline-size:1rem;block-size:1rem}input{position:absolute;opacity:0;pointer-events:none}}}}footer-wordmark{--wordmark-start: var(--mauve-6);--wordmark-end: var(--footer-surface);display:block;margin-block-start:var(--space-m);margin-inline:calc(50% - 50vw);[data-svg-mask]{display:block;inline-size:100%;aspect-ratio:1445.35 / 327;block-size:auto;background:linear-gradient(to right,var(--wordmark-start),var(--wordmark-end))}}}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}html:has([data-site-header]){--bar-nav-height: calc(2.45rem + 2 * var(--space-xs))}header[data-astro-cid-4lunwx2e][data-site-header]{--header-fade-color: var(--page);position:sticky;inset-block-start:0;z-index:30;display:flex;align-items:center;justify-content:space-between;max-inline-size:var(--frame-max-width);margin-inline:auto;padding-block:var(--space-xs);padding-inline:var(--grid-gutter);font-family:var(--font-v12-sans);header-backdrop{position:absolute;inset-block-start:0;inset-inline-start:calc(50% - 50vw);z-index:-2;display:block;inline-size:100vw;block-size:calc(100% + var(--space-xl));pointer-events:none;background:radial-gradient(ellipse at top left,var(--header-fade-color),transparent 70%) top left / 42% 100% no-repeat,radial-gradient(ellipse at top right,var(--header-fade-color),transparent 70%) top right / 42% 100% no-repeat}@media(width>=64rem){page-grid[data-sidebar] &:before{content:"";position:absolute;inset-block:0;inset-inline-start:calc(50% - 50vw);z-index:-1;inline-size:calc(var(--frame-edge) + var(--sidebar-nav-width));background-color:var(--raised)}page-grid[data-sidebar] &:after{content:"";position:absolute;inset-block-start:100%;inset-inline-start:calc(50% - 50vw);z-index:-1;inline-size:calc(var(--frame-edge) + var(--sidebar-nav-width));block-size:var(--space-m);pointer-events:none;background:linear-gradient(to bottom,var(--raised),transparent)}}@media(width<64rem){page-grid[data-header-surface] &{--header-fade-color: var(--mauve-4)}}[data-site-brand]{display:inline-flex;align-items:center;flex-shrink:0;color:var(--foreground);text-decoration-line:none;[data-svg-mask]{aspect-ratio:88.5 / 39.2;block-size:2.45rem;inline-size:auto}}header-actions{display:flex;align-items:center;flex-shrink:0;gap:var(--space-3xs);[data-header-pill]{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3xs);padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-full);color:var(--foreground);font-size:var(--step--1);text-decoration-line:none;&:hover{background-color:color-mix(in oklab,var(--raised, var(--muted)) 60%,transparent)}&[data-solid]{padding-inline:var(--space-xs);background-color:var(--foreground);color:var(--page, var(--background));&:hover{background-color:color-mix(in oklab,var(--foreground) 85%,var(--page, var(--background)))}}&:before{content:"";position:absolute;inset-block-start:50%;inset-inline:0;block-size:2.75rem;transform:translateY(-50%)}}}}
