:root{--frontmark-color-000: #000;--frontmark-color-000713: #000713;--frontmark-color-001522: #001522;--frontmark-color-00b0ff: #00b0ff;--frontmark-color-00bfa5: #00bfa5;--frontmark-color-00c853: #00c853;--frontmark-color-05070a: #05070a;--frontmark-color-062b42: #062b42;--frontmark-color-067282: #067282;--frontmark-color-073047: #073047;--frontmark-color-0b1117: #0b1117;--frontmark-color-0d6f84: #0d6f84;--frontmark-color-111827: #111827;--frontmark-color-12c6d8: #12c6d8;--frontmark-color-1f2937: #1f2937;--frontmark-color-28c840: #28c840;--frontmark-color-448aff: #448aff;--frontmark-color-64dd17: #64dd17;--frontmark-color-75d5f0: #75d5f0;--frontmark-color-7c4dff: #7c4dff;--frontmark-color-86efac: #86efac;--frontmark-color-9e9e9e: #9e9e9e;--frontmark-color-9ec2d0: #9ec2d0;--frontmark-color-a94c5b: #a94c5b;--frontmark-color-b7f7fb: #b7f7fb;--frontmark-color-b9d2dc: #b9d2dc;--frontmark-color-c6e8ed: #c6e8ed;--frontmark-color-cdd3de: #cdd3de;--frontmark-color-d7e3f4: #d7e3f4;--frontmark-color-e2fbff: #e2fbff;--frontmark-color-e6edf3: #e6edf3;--frontmark-color-f3fbff: #f3fbff;--frontmark-color-f50057: #f50057;--frontmark-color-f87171: #f87171;--frontmark-color-f8fdff: #f8fdff;--frontmark-color-fecaca: #fecaca;--frontmark-color-ff1744: #ff1744;--frontmark-color-ff5252: #ff5252;--frontmark-color-ff5f57: #ff5f57;--frontmark-color-ff9100: #ff9100;--frontmark-color-ffbd2e: #ffbd2e;--frontmark-color-ffcc28: #ffcc28;--frontmark-color-ffd166: #ffd166;--frontmark-color-fff: #fff;--frontmark-color-ffffff: #ffffff;--frontmark-color-rgba-0-0-0-0-22: rgba(0, 0, 0, .22);--frontmark-color-rgba-0-0-0-0-24: rgba(0, 0, 0, .24);--frontmark-color-rgba-0-0-0-0-25: rgba(0, 0, 0, .25);--frontmark-color-rgba-0-0-0-0-34: rgba(0, 0, 0, .34);--frontmark-color-rgba-0-0-0-0-35: rgba(0, 0, 0, .35);--frontmark-color-rgba-0-21-34-0-08: rgba(0, 21, 34, .08);--frontmark-color-rgba-0-21-34-0-18: rgba(0, 21, 34, .18);--frontmark-color-rgba-0-21-34-0-34: rgba(0, 21, 34, .34);--frontmark-color-rgba-0-211-230-0-08: rgba(0, 211, 230, .08);--frontmark-color-rgba-0-211-230-0-1: rgba(0, 211, 230, .1);--frontmark-color-rgba-0-211-230-0-12: rgba(0, 211, 230, .12);--frontmark-color-rgba-0-211-230-0-14: rgba(0, 211, 230, .14);--frontmark-color-rgba-0-211-230-0-16: rgba(0, 211, 230, .16);--frontmark-color-rgba-0-211-230-0-2: rgba(0, 211, 230, .2);--frontmark-color-rgba-0-211-230-0-42: rgba(0, 211, 230, .42);--frontmark-color-rgba-0-24-36-0-66: rgba(0, 24, 36, .66);--frontmark-color-rgba-0-36-60-0-54: rgba(0, 36, 60, .54);--frontmark-color-rgba-0-7-19-0-22: rgba(0, 7, 19, .22);--frontmark-color-rgba-117-213-240-0-16: rgba(117, 213, 240, .16);--frontmark-color-rgba-117-213-240-0-42: rgba(117, 213, 240, .42);--frontmark-color-rgba-12-16-22-0-46: rgba(12, 16, 22, .46);--frontmark-color-rgba-12-16-22-0-58: rgba(12, 16, 22, .58);--frontmark-color-rgba-12-16-22-0-72: rgba(12, 16, 22, .72);--frontmark-color-rgba-12-16-22-0-86: rgba(12, 16, 22, .86);--frontmark-color-rgba-12-16-22-0-88: rgba(12, 16, 22, .88);--frontmark-color-rgba-125-235-242-0-2: rgba(125, 235, 242, .2);--frontmark-color-rgba-127-29-29-0-22: rgba(127, 29, 29, .22);--frontmark-color-rgba-18-198-216-0-18: rgba(18, 198, 216, .18);--frontmark-color-rgba-18-198-216-0-22: rgba(18, 198, 216, .22);--frontmark-color-rgba-18-198-216-0-28: rgba(18, 198, 216, .28);--frontmark-color-rgba-18-198-216-0-34: rgba(18, 198, 216, .34);--frontmark-color-rgba-183-247-251-0-28: rgba(183, 247, 251, .28);--frontmark-color-rgba-183-247-251-0-55: rgba(183, 247, 251, .55);--frontmark-color-rgba-20-28-38-0-92: rgba(20, 28, 38, .92);--frontmark-color-rgba-237-242-247-0-025: rgba(237, 242, 247, .025);--frontmark-color-rgba-237-242-247-0-045: rgba(237, 242, 247, .045);--frontmark-color-rgba-237-242-247-0-08: rgba(237, 242, 247, .08);--frontmark-color-rgba-237-242-247-0-1: rgba(237, 242, 247, .1);--frontmark-color-rgba-237-242-247-0-12: rgba(237, 242, 247, .12);--frontmark-color-rgba-237-242-247-0-14: rgba(237, 242, 247, .14);--frontmark-color-rgba-237-242-247-0-16: rgba(237, 242, 247, .16);--frontmark-color-rgba-237-242-247-0-18: rgba(237, 242, 247, .18);--frontmark-color-rgba-237-242-247-0-22: rgba(237, 242, 247, .22);--frontmark-color-rgba-237-242-247-0-25: rgba(237, 242, 247, .25);--frontmark-color-rgba-237-242-247-0-45: rgba(237, 242, 247, .45);--frontmark-color-rgba-255-214-102-0-14: rgba(255, 214, 102, .14);--frontmark-color-rgba-255-255-255-0-35: rgba(255, 255, 255, .35);--frontmark-color-rgba-255-255-255-0-92: rgba(255, 255, 255, .92);--frontmark-color-rgba-5-7-10-0-62: rgba(5, 7, 10, .62);--frontmark-color-rgba-8-12-18-0-72: rgba(8, 12, 18, .72);color-scheme:var(--frontmark-color-scheme, dark);--mkdocs-text-scale: 1.24;--mkdocs-heading-scale: var(--mkdocs-text-scale, 1.24);--frontmark-ink: var(--frontmark-theme-ink, var(--frontmark-color-000713));--frontmark-night: var(--frontmark-theme-night, var(--frontmark-color-001522));--frontmark-deep: var(--frontmark-theme-deep, var(--frontmark-color-062b42));--frontmark-panel: var(--frontmark-theme-panel, var(--frontmark-color-073047));--frontmark-panel-soft: var(--frontmark-theme-panel-soft, var(--frontmark-color-0d6f84));--frontmark-cyan: var(--frontmark-theme-accent, var(--frontmark-color-12c6d8));--frontmark-cyan-bright: var(--frontmark-theme-accent-bright, var(--frontmark-color-75d5f0));--frontmark-cyan-soft: var(--frontmark-theme-accent-soft, var(--frontmark-color-b7f7fb));--frontmark-steel: var(--frontmark-theme-steel, var(--frontmark-color-9ec2d0));--frontmark-text: var(--frontmark-theme-text, var(--frontmark-color-f3fbff));--frontmark-muted: var(--frontmark-theme-muted, var(--frontmark-color-b9d2dc));--frontmark-header: var(--frontmark-theme-header, var(--frontmark-color-c6e8ed));--frontmark-body-line-height: var(--frontmark-theme-body-line-height, 1.75);--frontmark-yellow: var(--frontmark-theme-warning, var(--frontmark-color-ffcc28));--frontmark-danger: var(--frontmark-theme-danger, var(--frontmark-color-a94c5b));--frontmark-toolbar-background: var(--frontmark-theme-toolbar-background, var(--frontmark-color-rgba-12-16-22-0-86));--frontmark-toolbar-border: var(--frontmark-theme-toolbar-border, var(--frontmark-color-rgba-183-247-251-0-28));--frontmark-toolbar-group-background: var(--frontmark-theme-toolbar-group-background, var(--frontmark-color-rgba-20-28-38-0-92));--frontmark-toolbar-group-border: var(--frontmark-theme-toolbar-group-border, var(--frontmark-color-rgba-237-242-247-0-14));--frontmark-toolbar-group-text: var(--frontmark-theme-toolbar-group-text, var(--frontmark-muted));--frontmark-toolbar-button-background: var(--frontmark-theme-toolbar-button-background, var(--frontmark-color-f8fdff));--frontmark-toolbar-button-text: var(--frontmark-theme-toolbar-button-text, var(--frontmark-night));--frontmark-toolbar-button-border: var(--frontmark-theme-toolbar-button-border, var(--frontmark-color-rgba-0-21-34-0-18));--frontmark-toolbar-button-hover-background: var(--frontmark-theme-toolbar-button-hover-background, var(--frontmark-color-e2fbff));--frontmark-toolbar-active-background: var(--frontmark-theme-toolbar-active-background, var(--frontmark-color-e2fbff));--frontmark-toolbar-active-border: var(--frontmark-theme-toolbar-active-border, var(--frontmark-color-067282));--frontmark-page-tools-background: var(--frontmark-theme-page-tools-background, color-mix(in srgb, var(--frontmark-panel) 72%, var(--frontmark-ink) 28%));--frontmark-page-tools-border: var(--frontmark-theme-page-tools-border, color-mix(in srgb, var(--frontmark-cyan) 26%, transparent));--frontmark-page-tools-text: var(--frontmark-theme-page-tools-text, var(--frontmark-muted));--frontmark-page-tools-qr-background: var(--frontmark-theme-page-tools-qr-background, #ffffff);--frontmark-page-tools-qr-foreground: var(--frontmark-theme-page-tools-qr-foreground, #111827);--frontmark-page-tools-action-background: var(--frontmark-theme-page-tools-action-background, color-mix(in srgb, var(--frontmark-panel) 78%, var(--frontmark-ink) 22%));--frontmark-page-tools-action-border: var(--frontmark-theme-page-tools-action-border, color-mix(in srgb, var(--frontmark-cyan) 30%, transparent));--frontmark-page-tools-action-text: var(--frontmark-theme-page-tools-action-text, var(--frontmark-text));--frontmark-page-tools-action-hover-background: var(--frontmark-theme-page-tools-action-hover-background, color-mix(in srgb, var(--frontmark-cyan) 16%, var(--frontmark-page-tools-action-background)));--frontmark-page-tools-action-hover-text: var(--frontmark-theme-page-tools-action-hover-text, var(--frontmark-cyan-soft));--frontmark-surface: var(--frontmark-theme-surface, color-mix(in srgb, var(--frontmark-panel) 90%, var(--frontmark-night) 10%));--frontmark-surface-soft: var(--frontmark-theme-surface-soft, color-mix(in srgb, var(--frontmark-panel-soft) 74%, var(--frontmark-panel) 26%));--frontmark-surface-strong: var(--frontmark-theme-surface-strong, color-mix(in srgb, var(--frontmark-panel) 82%, var(--frontmark-ink) 18%));--frontmark-border-subtle: var(--frontmark-theme-border-subtle, color-mix(in srgb, var(--frontmark-cyan) 30%, transparent));--frontmark-readable-link: var(--frontmark-theme-readable-link, var(--frontmark-cyan-soft));--mkdocs-code-font-size: .94rem;--mkdocs-code-title-font-size: .82rem;--mkdocs-code-line-height: 1.45;font-family:var(--frontmark-font-text, Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);background:var(--frontmark-ink);color:var(--frontmark-text)}.site-shell{margin:0;min-height:100vh;background:var( --frontmark-body-background, radial-gradient(circle at 86% 10%, var(--frontmark-color-rgba-18-198-216-0-28), transparent 26rem), radial-gradient(circle at 18% 16%, var(--frontmark-color-rgba-117-213-240-0-16), transparent 34rem), linear-gradient(135deg, var(--frontmark-ink) 0%, var(--frontmark-night) 38%, var(--frontmark-deep) 100%) )}html:has(body.site-shell),body.site-shell{overflow-x:clip}.site-main{width:min(var(--frontmark-astro-main-width, var(--frontmark-astro-max-width, 1120px)),var(--frontmark-astro-max-width, var(--frontmark-astro-main-width, 1120px)),calc(100% - var(--frontmark-astro-page-gutter, 40px)));margin:0 auto;padding:var(--frontmark-astro-main-padding, 72px) 0}.content-main{width:min(var(--frontmark-astro-content-width, var(--frontmark-astro-max-width, 1100px)),var(--frontmark-astro-max-width, var(--frontmark-astro-content-width, 1100px)),calc(100% - var(--frontmark-astro-page-gutter, 40px)));margin:0 auto;padding:var(--frontmark-astro-content-padding, 64px) 0;overflow-x:clip}.back-link{display:inline-block;margin-bottom:28px;color:var(--frontmark-readable-link);font-weight:700;text-decoration:none}.hero{min-height:48vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(16rem,.82fr);align-items:center;gap:clamp(2rem,6vw,5rem)}.eyebrow{margin:0 0 16px;color:var(--frontmark-readable-link);font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.hero h1{margin:0;color:var(--frontmark-text);font-family:var(--frontmark-font-menu, inherit);font-size:7.2rem;line-height:.9;letter-spacing:0}.frontmark-wordmark{display:inline-block;line-height:normal;background:linear-gradient(90deg,var(--frontmark-text),var(--frontmark-cyan-bright) 58%,var(--frontmark-cyan));background-clip:text;color:transparent}.lead{max-width:760px;margin:56px 0 0;color:var(--frontmark-muted);font-size:1.32rem;line-height:1.55}.hero-visual{position:relative;display:grid;place-items:center;min-height:clamp(18rem,42vw,31rem)}.hero-visual picture{display:grid;place-items:center;width:100%}.hero-visual p{width:100%;margin:0}.hero-visual img{position:relative;display:block;width:min(100%,25rem);height:auto;border-radius:8px;filter:brightness(1.32) contrast(1.06) saturate(1.18) drop-shadow(0 1.6rem 4rem var(--frontmark-color-rgba-0-0-0-0-34))}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.actions a{color:var(--frontmark-ink);background:linear-gradient(180deg,var(--frontmark-cyan-bright),var(--frontmark-cyan));border:1px solid var(--frontmark-color-rgba-183-247-251-0-55);border-radius:6px;padding:12px 16px;font-weight:700;text-decoration:none;box-shadow:inset 0 1px var(--frontmark-color-rgba-255-255-255-0-35),0 .6rem 1.6rem var(--frontmark-color-rgba-18-198-216-0-18)}.actions a.secondary{color:var(--frontmark-text);background:color-mix(in srgb,var(--frontmark-surface) 82%,transparent);border-color:var(--frontmark-border-subtle)}.mkdocs-toolbar-controls{position:fixed;right:1rem;bottom:1rem;z-index:30;display:inline-flex;align-items:center;gap:.65rem;border:1px solid var(--frontmark-toolbar-border);border-radius:.75rem;padding:.38rem;background:var(--frontmark-toolbar-background);box-shadow:0 .75rem 2rem var(--frontmark-color-rgba-0-0-0-0-24);white-space:nowrap;transform:translateZ(0);backface-visibility:hidden;contain:layout paint}.mkdocs-toolbar-controls.mkdocs-toolbar-inline{position:static;right:auto;bottom:auto;z-index:auto;display:flex;flex-wrap:wrap;gap:.42rem;max-width:100%;border-radius:.5rem;padding:.22rem;box-shadow:none;white-space:normal;transform:none}.mkdocs-toolbar-controls.mkdocs-toolbar-inline .mkdocs-i18n-switcher,.mkdocs-toolbar-controls.mkdocs-toolbar-inline .mkdocs-text-scale{gap:.18rem;border-radius:.34rem;padding:.14rem;box-shadow:none}.mkdocs-toolbar-controls.mkdocs-toolbar-inline .mkdocs-i18n-switcher button,.mkdocs-toolbar-controls.mkdocs-toolbar-inline .mkdocs-text-scale button{width:var(--frontmark-toolbar-inline-button-width, 2.55rem);min-width:var(--frontmark-toolbar-inline-button-width, 2.55rem);height:var(--frontmark-toolbar-inline-button-height, 2.35rem);border-radius:var(--frontmark-toolbar-inline-button-radius, .3rem);padding:0 .35rem;font-size:.9rem}.mkdocs-toolbar-controls.mkdocs-toolbar-inline .mkdocs-i18n-flag{font-size:var(--frontmark-toolbar-inline-flag-size, 1.35rem)}.mkdocs-i18n-switcher,.mkdocs-text-scale{display:inline-flex;align-items:center;gap:.2rem;border:1px solid var(--frontmark-toolbar-group-border);border-radius:.4rem;padding:.18rem;background:var(--frontmark-toolbar-group-background);color:var(--frontmark-toolbar-group-text);font-size:.8rem;font-weight:800;line-height:1}.mkdocs-i18n-switcher{gap:.48rem;border-color:var(--frontmark-toolbar-group-border);border-radius:.68rem;padding:.34rem;background:var(--frontmark-toolbar-group-background);box-shadow:0 .75rem 1.8rem var(--frontmark-color-rgba-0-7-19-0-22),inset 0 1px var(--frontmark-color-rgba-255-255-255-0-92)}.mkdocs-i18n-switcher button,.mkdocs-text-scale button{display:inline-grid;place-items:center;box-sizing:border-box;border:1px solid transparent;border-radius:.3rem;min-width:1.85rem;height:1.85rem;margin:0;padding:0 .35rem;background:transparent;color:var(--frontmark-text);font:inherit;line-height:1;cursor:pointer}.mkdocs-i18n-switcher button{min-width:2.9rem;height:2.75rem;border-color:var(--frontmark-toolbar-button-border);background:var(--frontmark-toolbar-button-background);color:var(--frontmark-toolbar-button-text);font-size:1.72rem;filter:saturate(1.28) contrast(1.12);box-shadow:0 .18rem .5rem var(--frontmark-color-rgba-0-21-34-0-08)}.mkdocs-i18n-flag{display:block;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:2.05rem;line-height:1;transform:translateY(.02em)}.mkdocs-text-scale button{min-width:2.55rem;height:2.35rem;border-color:var(--frontmark-toolbar-button-border);background:var(--frontmark-toolbar-button-background);color:var(--frontmark-toolbar-button-text);font-size:.9rem;font-weight:950;box-shadow:0 .18rem .5rem var(--frontmark-color-rgba-0-21-34-0-08)}.mkdocs-i18n-switcher button:hover,.mkdocs-i18n-switcher button:focus-visible,.mkdocs-text-scale button:hover,.mkdocs-text-scale button:focus-visible{background:var(--frontmark-toolbar-button-hover-background)}.mkdocs-i18n-switcher button.is-active,.mkdocs-text-scale button.is-active{border-color:var(--frontmark-toolbar-active-border);background:var(--frontmark-toolbar-active-background)}.mkdocs-text-scale button.is-active{border-color:var(--frontmark-toolbar-active-border);background:var(--frontmark-toolbar-active-background);box-shadow:0 0 0 2px var(--frontmark-color-rgba-18-198-216-0-28),0 .35rem .9rem var(--frontmark-color-rgba-18-198-216-0-18)}.mkdocs-i18n-switcher button.is-active{border-color:var(--frontmark-toolbar-active-border);background:var(--frontmark-toolbar-active-background);box-shadow:0 0 0 2px var(--frontmark-color-rgba-18-198-216-0-34),0 .4rem 1rem var(--frontmark-color-rgba-18-198-216-0-22)}.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu){align-items:center;gap:var(--frontmark-toolbar-inline-icon-gap, .45rem);border:0;border-radius:0;padding:0;background:transparent;box-shadow:none}.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu) .mkdocs-i18n-switcher,.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu) .mkdocs-text-scale{align-items:center;gap:var(--frontmark-toolbar-inline-icon-gap, .45rem);border:0;border-radius:0;padding:0;background:transparent;box-shadow:none;color:inherit}.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu) .mkdocs-i18n-switcher button,.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu) .mkdocs-text-scale button{aspect-ratio:1;box-sizing:border-box;inline-size:var(--frontmark-toolbar-inline-icon-size, var(--frontmark-footer-social-size, 2.45rem));block-size:var(--frontmark-toolbar-inline-icon-size, var(--frontmark-footer-social-size, 2.45rem));min-inline-size:var(--frontmark-toolbar-inline-icon-size, var(--frontmark-footer-social-size, 2.45rem));width:var(--frontmark-toolbar-inline-icon-size, var(--frontmark-footer-social-size, 2.45rem));min-width:var(--frontmark-toolbar-inline-icon-size, var(--frontmark-footer-social-size, 2.45rem));height:var(--frontmark-toolbar-inline-icon-size, var(--frontmark-footer-social-size, 2.45rem));border:var(--frontmark-toolbar-inline-icon-border, 0);border-radius:var(--frontmark-toolbar-inline-icon-radius, var(--frontmark-footer-social-radius, 6px));padding:0;background:var(--frontmark-toolbar-inline-icon-background, transparent);box-shadow:none;color:inherit;opacity:.82}.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu) .mkdocs-i18n-switcher button:hover,.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu) .mkdocs-i18n-switcher button:focus-visible,.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu) .mkdocs-i18n-switcher button.is-active,.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu) .mkdocs-text-scale button:hover,.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu) .mkdocs-text-scale button:focus-visible,.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu) .mkdocs-text-scale button.is-active{border-color:var(--frontmark-toolbar-inline-icon-hover-border, transparent);background:var(--frontmark-toolbar-inline-icon-hover-background, var(--frontmark-toolbar-inline-icon-background, transparent));box-shadow:none;opacity:1}.mkdocs-toolbar-controls.mkdocs-toolbar-inline:is(.mkdocs-toolbar-footer,.mkdocs-toolbar-menu) .mkdocs-i18n-flag{font-size:var(--frontmark-toolbar-inline-flag-size, 1.35rem)}html[data-frontmark-footer-enabled=false] .frontmark-footer,html[data-frontmark-i18n-visibility=false] .mkdocs-toolbar-controls{display:none!important}.mkdocs-i18n-status,#mkdocs-google-translate-host,.skiptranslate,.goog-te-banner-frame,.goog-te-balloon-frame{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}html.mkdocs-i18n-active body{top:0!important}@media(max-width:64rem){.mkdocs-toolbar-controls{right:.85rem;bottom:.85rem;gap:.45rem;border-radius:.62rem;padding:.28rem}.frontmark-style-switcher{inset-inline-end:.85rem;inset-block-end:5.75rem}.mkdocs-i18n-switcher,.mkdocs-text-scale{gap:.28rem;border-radius:.52rem;padding:.24rem}.mkdocs-i18n-switcher button{min-width:2.45rem;height:2.35rem}.mkdocs-i18n-flag{font-size:1.72rem}.mkdocs-text-scale button{min-width:2.2rem;height:2.1rem;font-size:.8rem}}@media(max-width:36rem){.mkdocs-toolbar-controls{right:.55rem;bottom:.55rem;gap:.24rem;border-radius:.5rem;padding:.2rem}.frontmark-style-switcher{inset-inline-end:.55rem;inset-block-end:calc(.55rem + 4.6rem);max-width:calc(100vw - 1.1rem)}.mkdocs-i18n-switcher,.mkdocs-text-scale{gap:.16rem;border-radius:.42rem;padding:.16rem}.mkdocs-i18n-switcher button{min-width:2rem;height:1.95rem;padding:0 .22rem}.mkdocs-i18n-flag{font-size:1.42rem}.mkdocs-text-scale button{min-width:1.85rem;height:1.8rem;padding:0 .2rem;font-size:.7rem}.mkdocs-text-scale button[data-mkdocs-text-scale=small]{display:none}}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}.feature-grid article{border:1px solid var(--frontmark-border-subtle);border-radius:8px;padding:22px;background:var(--frontmark-surface);box-shadow:0 .9rem 2.2rem color-mix(in srgb,var(--frontmark-ink) 12%,transparent)}.feature-grid h2{margin:0 0 10px;font-size:1.05rem}.feature-grid p{margin:0;color:var(--frontmark-steel);line-height:1.55}.home-feature-content{margin-top:32px}.home-feature-content.prose .mkdocs-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.home-section{margin-top:clamp(56px,9vw,104px)}.home-section>h2{max-width:840px;margin:0;color:var(--frontmark-text);font-size:3.6rem;line-height:1;letter-spacing:0}.home-section .feature-grid h3{margin:0 0 10px;color:var(--frontmark-text);font-size:1.05rem;line-height:1.2}.pipeline-list,.principles-list{display:flex;flex-wrap:wrap;gap:.75rem;margin:28px 0 0;padding:0;list-style:none}.pipeline-list{counter-reset:pipeline}.pipeline-list li,.principles-list li{border:1px solid var(--frontmark-border-subtle);border-radius:999px;padding:.65rem .85rem;background:var(--frontmark-surface);color:var(--frontmark-muted);font-weight:750;line-height:1}.pipeline-list li:before{counter-increment:pipeline;content:counter(pipeline,decimal-leading-zero) " ";color:var(--frontmark-cyan-soft);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.84em}.home-final-cta{border:1px solid var(--frontmark-color-rgba-125-235-242-0-2);border-radius:8px;padding:clamp(24px,5vw,48px);background:linear-gradient(135deg,var(--frontmark-color-rgba-0-211-230-0-1),transparent 44%),var(--frontmark-color-rgba-0-24-36-0-66)}.home-tag-strip{margin-top:56px;border:1px solid var(--frontmark-border-subtle);border-radius:8px;padding:clamp(24px,5vw,48px);background:linear-gradient(135deg,var(--frontmark-color-rgba-0-211-230-0-08),transparent 45%),var(--frontmark-surface);box-shadow:0 1rem 2.4rem color-mix(in srgb,var(--frontmark-ink) 12%,transparent)}.home-tag-strip h2{margin:0 0 22px;color:var(--frontmark-text);font-size:2.2rem;line-height:1}.home-tag-strip .tag-cloud{align-items:center;justify-content:center;gap:clamp(.35rem,1.5vw,1rem);margin:0;min-height:18rem}.home-tag-strip .tag-cloud a{transform:translateY(calc(var(--tag-shift, 0) * .35rem));border-color:color-mix(in srgb,var(--frontmark-cyan) 18%,transparent);padding:.25rem .55rem;background:color-mix(in srgb,var(--frontmark-surface-strong) 52%,transparent);color:color-mix(in srgb,var(--frontmark-cyan-soft) calc(58% + var(--tag-weight, 1) * 9%),var(--frontmark-text));font-size:calc(.95rem + var(--tag-weight, 1) * .28rem);line-height:1.05}.home-tag-strip .tag-cloud a.secondary{border-color:var(--frontmark-border-subtle);padding:.55rem .8rem;background:var(--frontmark-surface-strong);color:var(--frontmark-text);font-size:.95rem}.home-tag-strip .tag-cloud small{opacity:.72;font-size:.58em}.home-tag-strip .tag-cloud a:hover,.home-tag-strip .tag-cloud a:focus-visible{transform:translateY(calc(var(--tag-shift, 0) * .35rem - .12rem));background:var(--frontmark-color-rgba-0-211-230-0-1)}.prose{color:var(--frontmark-muted);font-size:calc(1.05rem * var(--mkdocs-text-scale, 1));line-height:var(--frontmark-body-line-height, 1.75)}.sl-markdown-content{overflow-x:clip;line-height:var(--frontmark-body-line-height, 1.75)}.prose h1{margin:0;color:var(--frontmark-text);font-size:clamp(calc(2.75rem * var(--mkdocs-heading-scale, 1.24)),8vw,calc(5.25rem * var(--mkdocs-heading-scale, 1.24)));line-height:.95;letter-spacing:0}.prose h2{margin:2.25rem 0 .75rem;color:var(--frontmark-text);font-size:calc(1.68rem * var(--mkdocs-heading-scale, 1.24));letter-spacing:0}.prose p,.prose ul,.prose ol,.prose pre{margin:1rem 0 0}.prose a{color:var(--frontmark-cyan-soft)}.prose code{border-radius:4px;padding:.15rem .3rem;background:var(--frontmark-color-rgba-237-242-247-0-1);color:var(--frontmark-text)}.prose pre{overflow-x:auto;border:1px solid var(--frontmark-color-rgba-237-242-247-0-14);border-radius:8px;padding:1rem;background:var(--frontmark-color-rgba-12-16-22-0-72)}.prose pre.github-dark{font-size:var(--mkdocs-code-font-size);line-height:var(--mkdocs-code-line-height)}.prose pre code{padding:0;background:transparent}.prose .mkdocs-form{margin:1.5rem 0;border:1px solid var(--frontmark-border-subtle);border-radius:8px;background:var(--frontmark-surface);overflow:hidden}.prose .mkdocs-form-header{display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--frontmark-border-subtle);padding:.9rem 1rem;background:var(--frontmark-surface-strong)}.prose .mkdocs-form-header>span{display:inline-grid;place-items:center;flex:0 0 auto;width:2.15rem;height:2.15rem;border-radius:6px;background:var(--frontmark-color-rgba-0-211-230-0-14);color:var(--frontmark-cyan-soft)}.prose .mkdocs-form-header .mkdocs-icon{width:1.2rem;height:1.2rem;margin:0}.prose .mkdocs-form-header strong,.prose .mkdocs-form-header span{display:block}.prose .mkdocs-form-header strong{color:var(--frontmark-text);font-size:1rem}.prose .mkdocs-form-header div>span{margin-top:.15rem;color:var(--frontmark-muted);font-family:var(--frontmark-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);font-size:.8rem}.prose .mkdocs-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:1rem}.prose .mkdocs-form-field,.prose .mkdocs-form-group{display:grid;gap:.45rem;min-width:0;margin:0;border:0;padding:0}.prose .mkdocs-form-field:has(textarea),.prose .mkdocs-form-group{grid-column:1 / -1}.prose .mkdocs-form-label,.prose .mkdocs-form-group legend{display:inline-flex;align-items:center;gap:.4rem;color:var(--frontmark-text);font-weight:800}.prose .mkdocs-form-label strong,.prose .mkdocs-form-group legend strong,.prose .mkdocs-form-check strong{margin-inline:.1rem;color:var(--frontmark-color-f87171)}.prose .mkdocs-form :where(input:not([type=checkbox],[type=radio],[type=hidden]),textarea,select){width:100%;border:1px solid var(--frontmark-border-subtle);border-radius:6px;padding:.72rem .8rem;background:var(--frontmark-surface-strong);color:var(--frontmark-text);font:inherit}.prose .mkdocs-form textarea{min-height:8rem;resize:vertical}.prose .mkdocs-form :where(input,textarea,select):focus-visible{border-color:var(--frontmark-cyan-soft);outline:2px solid var(--frontmark-color-rgba-0-211-230-0-2);outline-offset:2px}.prose .mkdocs-form-help{display:inline-grid;place-items:center;color:var(--frontmark-cyan-soft);cursor:help}.prose .mkdocs-form-help .mkdocs-icon{width:.95rem;height:.95rem;margin:0}.prose .mkdocs-form-note{color:var(--frontmark-muted);font-size:.82rem;line-height:1.45}.prose .mkdocs-form-check{display:flex;align-items:flex-start;gap:.65rem;min-width:0;color:var(--frontmark-muted)}.prose .mkdocs-form-check input{flex:0 0 auto;width:1.05rem;height:1.05rem;margin-top:.2rem;accent-color:var(--frontmark-cyan)}.prose .mkdocs-form-group{gap:.65rem;padding:.85rem;border:1px solid var(--frontmark-border-subtle);border-radius:6px;background:var(--frontmark-color-rgba-237-242-247-0-05, rgba(237, 242, 247, .05))}.prose .mkdocs-form-actions{display:grid;grid-template-columns:repeat(2,minmax(0,8rem));justify-content:flex-end;align-items:stretch;gap:.65rem;border-top:1px solid var(--frontmark-border-subtle);padding:.85rem 1rem;background:var(--frontmark-surface-strong)}.prose .mkdocs-form-actions button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border:1px solid var(--frontmark-border-subtle);border-radius:6px;inline-size:100%;block-size:2.75rem;margin:0;padding:0 1rem;color:var(--frontmark-text);font:inherit;font-weight:800;line-height:1;cursor:pointer}.prose .mkdocs-form-actions .mkdocs-icon{width:1rem;height:1rem;margin:0}.prose .mkdocs-form-reset{background:var(--frontmark-surface)}.prose .mkdocs-form-submit{border-color:var(--frontmark-cyan-soft);background:var(--frontmark-cyan);color:var(--frontmark-ink)!important}.prose .mkdocs-form-actions button:hover,.prose .mkdocs-form-actions button:focus-visible{border-color:var(--frontmark-cyan-soft)}@media(max-width:42rem){.prose .mkdocs-form-fields,.prose .mkdocs-form-actions{grid-template-columns:1fr}}.prose .mkdocs-asciinema,.prose .mkdocs-video{overflow-x:auto;margin:1.5rem 0;border:1px solid var(--frontmark-color-rgba-237-242-247-0-14);border-radius:8px;background:var(--frontmark-color-0b1117)}.prose .mkdocs-asciinema-player{overflow:hidden;border-radius:inherit;background:var(--frontmark-color-000)}.prose .mkdocs-asciinema-caption{border-bottom:1px solid var(--frontmark-color-rgba-237-242-247-0-14);padding:.65rem .85rem;color:var(--frontmark-text);background:var(--frontmark-color-111827);font-size:.875rem;font-weight:800;line-height:1.3}.prose .mkdocs-asciinema-player .ap-wrapper{width:100%;min-height:16rem}.prose .mkdocs-asciinema-player .ap-player{max-width:100%}.prose .mkdocs-asciinema-toolbar{--mkdocs-player-control-size: 2rem;display:grid;grid-template-columns:minmax(8rem,1fr) minmax(18rem,2fr) minmax(6.75rem,1fr);align-items:center;gap:.75rem;border-bottom:1px solid var(--frontmark-color-rgba-237-242-247-0-14);padding:.5rem .75rem;color:var(--frontmark-muted);font-size:.875rem;line-height:1}.prose .mkdocs-asciinema-title{overflow:hidden;min-width:0;height:var(--mkdocs-player-control-size);color:var(--frontmark-muted);line-height:var(--mkdocs-player-control-size);text-overflow:ellipsis;white-space:nowrap}.prose .mkdocs-asciinema-controls{display:grid;grid-template-columns:auto minmax(8rem,1fr) auto;align-items:center;justify-content:center;gap:.5rem;min-width:0;height:var(--mkdocs-player-control-size)}.prose .mkdocs-asciinema-actions,.prose .mkdocs-asciinema-button-group{display:inline-grid;grid-auto-flow:column;grid-auto-columns:var(--mkdocs-player-control-size);align-items:center;gap:.25rem;height:var(--mkdocs-player-control-size)}.prose .mkdocs-asciinema-actions{justify-self:end}.prose .mkdocs-asciinema-toolbar button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border:1px solid var(--frontmark-color-rgba-237-242-247-0-25);border-radius:6px;width:var(--mkdocs-player-control-size);height:var(--mkdocs-player-control-size);margin:0;padding:0;color:var(--frontmark-text);background:var(--frontmark-color-1f2937);line-height:0;cursor:pointer}.prose .mkdocs-asciinema-toolbar button:hover,.prose .mkdocs-asciinema-toolbar button:focus-visible{border-color:var(--frontmark-cyan-soft);color:var(--frontmark-cyan-soft)}.prose .mkdocs-asciinema-toolbar button:disabled{cursor:wait;opacity:.7}.prose .mkdocs-asciinema-toolbar button svg{display:block;flex:0 0 auto;width:1.1rem;height:1.1rem;fill:currentColor}.prose .mkdocs-asciinema-toolbar button.is-done{border-color:var(--frontmark-color-86efac);color:var(--frontmark-color-86efac)}.prose .mkdocs-asciinema-toolbar button.is-error{border-color:var(--frontmark-color-f87171);color:var(--frontmark-color-f87171)}.prose .mkdocs-asciinema-toolbar input[type=range]{display:block;min-width:6rem;width:100%;height:var(--mkdocs-player-control-size);margin:0;accent-color:var(--frontmark-cyan-soft)}.prose .mkdocs-asciinema-clock{min-width:6.5rem;height:var(--mkdocs-player-control-size);line-height:var(--mkdocs-player-control-size);text-align:end;font-variant-numeric:tabular-nums}@media(max-width:54rem){.prose .mkdocs-asciinema-toolbar{grid-template-columns:minmax(0,1fr) auto}.prose .mkdocs-asciinema-title{grid-column:1 / 2}.prose .mkdocs-asciinema-controls{grid-column:1 / -1;grid-row:2}.prose .mkdocs-asciinema-actions{grid-column:2}}.prose .mkdocs-asciinema-terminal{overflow:auto;padding:1rem;color:var(--frontmark-color-d7e3f4)}.prose .mkdocs-asciinema-terminal pre{min-height:calc(var(--asciinema-rows, 10) * 1.35em);margin:0;border:0;padding:0;background:transparent;font-size:.875rem;line-height:1.35;white-space:pre-wrap}.prose .mkdocs-video iframe,.prose .mkdocs-video video{display:block;width:min(100%,calc((100vh / 3) * 16 / 9));max-width:100%;max-height:33vh;margin-inline:auto;aspect-ratio:16 / 9;border:0;object-fit:contain}.prose .mkdocs-page-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;min-width:0;margin:2rem 0 1rem;border:1px solid var(--frontmark-page-tools-border);border-radius:8px;padding:1rem;background:var(--frontmark-page-tools-background)}.prose .mkdocs-page-tools-qr{display:inline-flex;flex:1 1 18rem;align-items:center;gap:.85rem;min-width:0;max-width:100%;color:var(--frontmark-page-tools-text);font-size:.875rem;line-height:1.35}.prose .mkdocs-page-tools-qr svg{display:block;flex:0 0 auto;width:5.5rem;height:5.5rem;border-radius:6px;background:var(--frontmark-page-tools-qr-background);color:var(--frontmark-page-tools-qr-foreground);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--frontmark-page-tools-qr-foreground) 16%,transparent)}.prose .mkdocs-page-tools-qr svg path[fill]{fill:transparent}.prose .mkdocs-page-tools-qr svg path[stroke]{stroke:currentColor}.prose .mkdocs-page-tools-qr span{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.prose .mkdocs-page-tools-actions{display:inline-flex;align-items:center;gap:.5rem}.prose .mkdocs-page-tools-actions a{display:inline-grid;place-items:center;border:1px solid var(--frontmark-page-tools-action-border);border-radius:6px;width:2.25rem;height:2.25rem;color:var(--frontmark-page-tools-action-text);background:var(--frontmark-page-tools-action-background)}.prose .mkdocs-page-tools-actions a:hover,.prose .mkdocs-page-tools-actions a:focus-visible{border-color:var(--frontmark-page-tools-action-hover-text);background:var(--frontmark-page-tools-action-hover-background);color:var(--frontmark-page-tools-action-hover-text)}.prose .mkdocs-page-tools-actions .mkdocs-icon{width:1.1rem;height:1.1rem;margin-inline-end:0}.prose .expressive-code{margin:1.5rem 0!important}.prose .expressive-code figure.frame{--ec-codeBg: var(--frontmark-color-05070a) !important;--ec-codeFg: var(--frontmark-color-e6edf3) !important;--ec-frm-edBg: var(--frontmark-color-05070a) !important;--ec-frm-trmBg: var(--frontmark-color-05070a) !important;overflow:hidden!important;border:1px solid var(--frontmark-color-rgba-237-242-247-0-14)!important;border-radius:8px!important;background:var(--frontmark-color-05070a)!important;box-shadow:none!important}.prose .expressive-code pre{border:0!important;border-radius:0!important;background:var(--frontmark-color-05070a)!important;font-size:var(--mkdocs-code-font-size)!important;line-height:var(--mkdocs-code-line-height)!important}.prose .expressive-code pre>code{padding-block:.75rem 1rem!important}.prose .expressive-code .ec-line :where(span[style^=--]:not([class])){color:var(--0, var(--frontmark-color-e6edf3))!important}.prose .expressive-code figure.frame figcaption.header{position:relative;display:flex!important;align-items:center;justify-content:flex-start!important;border:0!important;border-bottom:1px solid var(--frontmark-color-rgba-237-242-247-0-14)!important;border-radius:0!important;min-height:2.35rem!important;padding-block:0!important;padding-inline-start:4rem!important;background:var(--frontmark-color-111827)!important}.prose .expressive-code figure.frame figcaption.header:before,.prose .expressive-code figure.frame.is-terminal figcaption.header:before{content:"";position:absolute;top:.8rem;left:1rem;border-radius:999px;width:.72rem;height:.72rem;background:var(--frontmark-color-ff5f57)!important;box-shadow:1.05rem 0 0 var(--frontmark-color-ffbd2e),2.1rem 0 0 var(--frontmark-color-28c840)!important;opacity:1!important;mask-image:none!important;-webkit-mask-image:none!important;pointer-events:none}.prose .expressive-code figure.frame figcaption.header:after,.prose .expressive-code figure.frame.is-terminal figcaption.header:after{content:none!important}.prose .expressive-code .copy [aria-live]{clip:rect(0 0 0 0);position:absolute;width:1px;height:1px;overflow:hidden;white-space:nowrap}.prose .expressive-code .copy button:after{content:none!important}.prose .expressive-code .copy{inset-block-start:.55rem!important;inset-inline-end:.55rem!important}.prose .expressive-code .copy button{display:inline-grid!important;place-items:center!important;border:1px solid var(--frontmark-color-rgba-237-242-247-0-25)!important;border-radius:6px!important;width:2rem!important;height:2rem!important;margin:0!important;padding:0!important;color:var(--frontmark-text)!important;background:var(--frontmark-color-rgba-12-16-22-0-88)!important;opacity:1!important}.prose .expressive-code .copy button:hover,.prose .expressive-code .copy button:focus-visible{border-color:var(--frontmark-cyan-soft)!important;color:var(--frontmark-cyan-soft)!important}.prose .expressive-code .copy button:before,.prose .expressive-code .copy button div{content:none!important;display:none!important}.prose .expressive-code .copy button.is-done div{background:currentColor!important;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m9 16.2-3.5-3.5L4 14.2 9 19 20 8l-1.5-1.5L9 16.2Z'/%3E%3C/svg%3E") center / 1.1rem 1.1rem no-repeat!important}.prose .mkdocs-admonition{--mkdocs-admonition-color: var(--frontmark-cyan-soft);overflow-x:auto;margin:1.5rem 0;border:1px solid var(--frontmark-color-rgba-237-242-247-0-14);border-left:.25rem solid var(--mkdocs-admonition-color);border-radius:8px;padding:1rem;background:color-mix(in srgb,var(--mkdocs-admonition-color) 12%,var(--frontmark-color-rgba-12-16-22-0-72))}.prose .mkdocs-admonition-title,.prose .mkdocs-admonition summary{display:flex;align-items:center;gap:.45rem;margin:0 0 .5rem;color:color-mix(in srgb,var(--mkdocs-admonition-color) 82%,var(--frontmark-text));font-weight:800;line-height:1.35}.prose .mkdocs-admonition-title .mkdocs-icon,.prose .mkdocs-admonition summary .mkdocs-icon{flex:0 0 auto;margin-inline-end:0;vertical-align:middle}.prose .mkdocs-admonition-title .mkdocs-annotation-tooltip,.prose .mkdocs-admonition summary .mkdocs-annotation-tooltip{top:calc(100% + .55rem);bottom:auto}.prose .mkdocs-admonition summary{cursor:pointer}.prose .mkdocs-admonition summary::marker{color:var(--mkdocs-admonition-color)}.prose .mkdocs-admonition p{margin:.5rem 0 0}.prose .mkdocs-annotation{position:relative;z-index:1;display:inline-flex;align-items:center;vertical-align:.05em}.prose .mkdocs-annotation-marker{display:inline-grid;place-items:center;border:1px solid var(--frontmark-cyan-soft);border-radius:999px;width:1.35em;height:1.35em;margin-inline:.18em;color:var(--frontmark-ink);background:var(--frontmark-cyan-soft);font-size:.72em;font-weight:800;line-height:1;cursor:help}.prose .mkdocs-annotation-tooltip{position:absolute;left:0;bottom:calc(100% + .55rem);z-index:100000;visibility:hidden;opacity:0;transform:translateY(.25rem);transition:opacity .14s ease,transform .14s ease,visibility .14s ease;border:1px solid var(--frontmark-color-rgba-237-242-247-0-14);border-radius:8px;width:max-content;max-width:min(24rem,80vw);padding:.75rem;color:var(--frontmark-text);background:var(--frontmark-color-111827);box-shadow:0 18px 48px var(--frontmark-color-rgba-0-0-0-0-35);font-size:.875rem;line-height:1.45}.prose .mkdocs-annotation-tooltip p{margin:0}.prose .mkdocs-annotation:hover .mkdocs-annotation-tooltip,.prose .mkdocs-annotation:focus .mkdocs-annotation-tooltip,.prose .mkdocs-annotation:focus-within .mkdocs-annotation-tooltip{visibility:visible;opacity:1;transform:translateY(0)}.prose .mkdocs-annotation:hover,.prose .mkdocs-annotation:focus,.prose .mkdocs-annotation:focus-within{z-index:100001}.prose .mkdocs-admonition-no-title{padding-top:.75rem}.prose .mkdocs-admonition .mkdocs-admonition{margin:1rem 0 0}.prose .mkdocs-admonition-inline{float:left;clear:left;max-width:min(20rem,45%);margin:.25rem 1.25rem 1rem 0}.prose .mkdocs-admonition-inline-end{float:right;clear:right;margin:.25rem 0 1rem 1.25rem}@media(max-width:40rem){.prose .mkdocs-admonition-inline,.prose .mkdocs-admonition-inline-end{float:none;clear:both;max-width:100%;margin:1.5rem 0}}.prose .mkdocs-root-code,.prose .mkdocs-tabbed-code{overflow-x:auto;margin:1.5rem 0;border:1px solid var(--frontmark-color-rgba-237-242-247-0-14);border-radius:8px;background:var(--frontmark-color-rgba-12-16-22-0-72)}.prose .mkdocs-tabbed-code{overflow:visible}.prose .mkdocs-root-code{border-color:var(--frontmark-color-f87171);background:var(--frontmark-color-rgba-127-29-29-0-22)}.prose .mkdocs-tabbed-input{position:absolute;opacity:0;pointer-events:none}.prose .mkdocs-tabbed-labels{display:flex;overflow-x:auto;align-items:end;gap:.25rem;border-bottom:1px solid var(--frontmark-color-rgba-237-242-247-0-14);padding:.45rem .5rem 0}.prose .mkdocs-tabbed-label{display:inline-grid;grid-template-columns:1fr;place-items:center;align-items:center;border:1px solid transparent;border-bottom:0;border-radius:8px 8px 0 0;height:2.55rem;padding:.45rem .75rem;color:var(--frontmark-muted);font-size:.875rem;font-weight:800;line-height:1.2;margin:0!important;white-space:nowrap;cursor:pointer}.prose .mkdocs-tabbed-label-inner{display:inline-grid;grid-template-columns:1.65rem max-content;align-items:center;justify-content:center;column-gap:.5rem;min-height:1.65rem;line-height:1.35rem;white-space:nowrap}.prose .mkdocs-tabbed-label-inner-text-only{grid-template-columns:max-content}.prose .mkdocs-tabbed-icon-wrap{display:inline-grid;place-items:center;width:1.65rem;height:1.65rem;line-height:0}.prose .mkdocs-tabbed-label-text{min-width:0;line-height:1.35rem}.prose .mkdocs-tabbed-icon-wrap .mkdocs-icon{display:block;width:1.35rem;height:1.35rem;margin-inline-end:0}.prose .mkdocs-root-code figcaption,.prose .mkdocs-tabbed-code figcaption{display:flex;align-items:center;gap:.45rem;border-bottom:1px solid var(--frontmark-color-rgba-237-242-247-0-14);padding:.5rem .75rem;color:var(--frontmark-text);font-size:.875rem;font-weight:800}.prose .mkdocs-root-code figcaption{position:relative;min-height:2.35rem;padding:0 5.5rem 0 4rem;color:var(--frontmark-color-fecaca);text-transform:uppercase}.prose .mkdocs-root-code figcaption:before{content:"";position:absolute;top:.8rem;left:1rem;border-radius:999px;width:.72rem;height:.72rem;background:var(--frontmark-color-ff5f57);box-shadow:1.05rem 0 0 var(--frontmark-color-ffbd2e),2.1rem 0 0 var(--frontmark-color-28c840)}.prose .mkdocs-root-code-skull{position:absolute;top:50%!important;right:3.15rem!important;left:auto!important;transform:translateY(-50%)!important;font-size:1.15rem!important;line-height:1!important}.prose .mkdocs-tabbed-panel{display:none}.prose .mkdocs-tabbed-content{display:flow-root;padding:.9rem 1rem 1rem}.prose .mkdocs-tabbed-content>:first-child{margin-top:0}.prose .mkdocs-tabbed-content>:last-child{margin-bottom:0}.prose .mkdocs-code-block{position:relative;background:var(--frontmark-color-05070a)}.prose .mkdocs-code-block-titled{padding-top:2.35rem}.prose .mkdocs-tabbed-panel .mkdocs-code-block-titled{padding-top:0}.prose .mkdocs-tabbed-panel .mkdocs-code-title{display:none}.prose .mkdocs-code-title{position:absolute;top:0;right:0;left:0;overflow:hidden;border-bottom:1px solid var(--frontmark-color-rgba-237-242-247-0-12);min-height:2.35rem;padding:.55rem 3rem .45rem .85rem;color:var(--frontmark-text);background:var(--frontmark-ink);font-size:var(--mkdocs-code-title-font-size);font-weight:800;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.prose .mkdocs-code-block pre.shiki{overflow-x:auto;margin:0;border:0;border-radius:0;padding:.75rem 1rem 1rem;color:var(--frontmark-color-e6edf3)!important;background:var(--frontmark-color-05070a)!important;font-size:var(--mkdocs-code-font-size);line-height:var(--mkdocs-code-line-height)}.prose .mkdocs-tabbed-panel:has(.mkdocs-annotation:hover,.mkdocs-annotation:focus,.mkdocs-annotation:focus-within),.prose .mkdocs-code-block:has(.mkdocs-annotation:hover,.mkdocs-annotation:focus,.mkdocs-annotation:focus-within){position:relative;z-index:10000}.prose .mkdocs-code-block pre.shiki:has(.mkdocs-annotation:hover,.mkdocs-annotation:focus,.mkdocs-annotation:focus-within){overflow:visible}.prose .mkdocs-code-block .mkdocs-annotation-tooltip{right:auto;left:0;width:min(20rem,calc(100vw - 2rem));max-width:calc(100vw - 2rem);overflow-wrap:anywhere;transform:translateY(.25rem);white-space:normal}.prose .mkdocs-code-block .mkdocs-annotation:hover .mkdocs-annotation-tooltip,.prose .mkdocs-code-block .mkdocs-annotation:focus .mkdocs-annotation-tooltip,.prose .mkdocs-code-block .mkdocs-annotation:focus-within .mkdocs-annotation-tooltip{transform:translateY(0)}.prose .mkdocs-code-block code{display:block;min-width:max-content}.prose .mkdocs-code-block[data-linenums] code{counter-reset:mkdocs-code-line calc(var(--mkdocs-code-line-start, 1) - 1);line-height:1!important}.prose .mkdocs-code-block[data-linenums] pre.shiki,.prose .mkdocs-code-block[data-linenums] .line{line-height:1!important}.prose .mkdocs-code-line{counter-increment:mkdocs-code-line;display:block;min-height:0;line-height:1!important;margin-inline:-1rem;padding-inline:1rem}.prose .mkdocs-code-block[data-linenums] .mkdocs-code-line:before{content:counter(mkdocs-code-line);display:inline-block;width:1ch;margin-right:.25rem;color:var(--frontmark-color-rgba-237-242-247-0-45);font-variant-numeric:tabular-nums;text-align:right;user-select:none}.prose .mkdocs-code-line-highlighted{background:var(--frontmark-color-rgba-255-214-102-0-14);box-shadow:inset .18rem 0 0 var(--frontmark-color-ffd166)}.prose .mkdocs-code-copy{position:absolute;top:.55rem;right:.55rem;z-index:2;display:inline-grid;place-items:center;border:1px solid var(--frontmark-color-rgba-237-242-247-0-25);border-radius:6px;width:2rem;height:2rem;margin:0;padding:0;color:var(--frontmark-text);background:var(--frontmark-color-rgba-12-16-22-0-88);cursor:pointer}.prose .mkdocs-code-copy:hover,.prose .mkdocs-code-copy:focus-visible{border-color:var(--frontmark-cyan-soft);color:var(--frontmark-cyan-soft)}.prose .mkdocs-code-copy svg{display:block;width:1.05rem;height:1.05rem;fill:currentColor}.prose .mkdocs-code-copy.is-done{border-color:var(--frontmark-color-86efac);color:var(--frontmark-color-86efac)}.prose .mkdocs-code-copy.is-error{border-color:var(--frontmark-color-f87171);color:var(--frontmark-color-f87171)}.prose .expressive-code .copy button svg{display:block;position:absolute;inset:.45rem;width:calc(100% - .9rem);height:calc(100% - .9rem);fill:currentColor}.prose .mkdocs-root-code pre,.prose .mkdocs-root-code pre.shiki,.prose .mkdocs-tabbed-code pre{margin:0;border:0;border-radius:0;background:transparent;font-size:var(--mkdocs-code-font-size);line-height:var(--mkdocs-code-line-height)}.prose .mkdocs-root-code pre,.prose .mkdocs-root-code pre.shiki{padding:.75rem 1rem 1rem;background:var(--frontmark-color-05070a)!important}.prose .mkdocs-root-code .mkdocs-code-copy{top:.55rem;right:.55rem}.prose .obsidian-link{text-decoration-style:dashed}.prose .md-button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border:1px solid var(--frontmark-cyan-soft);border-radius:6px;min-height:2.35rem;margin:.25rem .25rem .25rem 0;padding:.5rem .85rem;color:var(--frontmark-cyan-soft);background:var(--frontmark-color-rgba-0-211-230-0-08);font-weight:800;line-height:1.2;text-decoration:none;vertical-align:middle}.prose .md-button:hover,.prose .md-button:focus-visible{color:var(--frontmark-ink);background:var(--frontmark-cyan-soft)}.prose .md-button--primary,.prose .mkdocsmdbuttonprimary,.prose a[class="md-button md-button"]{border-color:var(--frontmark-color-000);color:var(--frontmark-color-fff)!important;background:var(--frontmark-color-000);box-shadow:0 0 0 1px var(--frontmark-color-rgba-0-0-0-0-25),0 10px 24px var(--frontmark-color-rgba-0-0-0-0-22)}.prose .md-button--primary:hover,.prose .md-button--primary:focus-visible,.prose .mkdocsmdbuttonprimary:hover,.prose .mkdocsmdbuttonprimary:focus-visible,.prose a[class="md-button md-button"]:hover,.prose a[class="md-button md-button"]:focus-visible{border-color:var(--frontmark-color-111827);color:var(--frontmark-color-fff)!important;background:var(--frontmark-color-111827)}.prose .md-button .mkdocs-icon{margin-inline-end:0;font-size:1.05em}.prose .mkdocs-icon{display:inline-flex;align-items:center;justify-content:center;margin-inline-end:.28em;color:currentColor;vertical-align:-.12em}.prose .mkdocs-tabbed-code figcaption .mkdocs-icon{flex:0 0 auto;margin-inline-end:0;font-size:1.45rem;vertical-align:middle}.prose .mkdocs-icon-fallback{display:inline-flex;align-items:center;border:1px solid var(--frontmark-color-rgba-237-242-247-0-14);border-radius:999px;padding:.05rem .45rem;color:var(--frontmark-cyan-soft);background:var(--frontmark-color-rgba-12-16-22-0-58);font-size:.78em;font-weight:700;vertical-align:.08em}.prose .mkdocs-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0 1.5rem}.prose .mkdocs-tag{display:inline-flex;align-items:center;border:1px solid var(--frontmark-tag-border, var(--frontmark-color-rgba-237-242-247-0-14));border-radius:999px;padding:.15rem .55rem;color:var(--frontmark-tag-text, var(--frontmark-cyan-soft));background:var(--frontmark-tag-background, var(--frontmark-color-rgba-12-16-22-0-58));font-size:.78rem;font-weight:700;text-decoration:none}.prose .mkdocs-tag:hover,.prose .mkdocs-tag:focus-visible{border-color:var(--frontmark-tag-hover-border, var(--frontmark-cyan-soft));background:var(--frontmark-tag-hover-background, var(--frontmark-color-rgba-0-211-230-0-14));color:var(--frontmark-tag-hover-text, var(--frontmark-text))}.tag-page{max-width:var(--frontmark-astro-content-width, 1100px)}.tag-hero{margin-bottom:32px}.tag-search{display:grid;gap:.55rem;margin:0 0 24px;border:1px solid var(--frontmark-border-subtle);border-radius:8px;padding:1rem;background:var(--frontmark-surface)}.tag-search label{color:var(--frontmark-text);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.tag-search input{width:100%;border:1px solid var(--frontmark-border-subtle);border-radius:8px;padding:.85rem 1rem;background:var(--frontmark-surface-strong);color:var(--frontmark-text);font:inherit}.tag-search input:focus{border-color:var(--frontmark-cyan-soft);outline:2px solid var(--frontmark-color-rgba-0-211-230-0-2)}.tag-search-keywords{display:inline-flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin:0;color:var(--frontmark-cyan-soft);font-size:.9rem;font-weight:800}.tag-search-keywords[hidden]{display:none}.tag-search-keywords:before,.tag-cloud a.is-keyword-match:before{content:"#";display:inline-grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:999px;background:var(--frontmark-cyan);color:var(--frontmark-ink);font-size:.82rem;font-weight:900}.tag-syntax{margin:0 0 28px;border:1px solid var(--frontmark-border-subtle);border-radius:8px;padding:18px;background:var(--frontmark-surface)}.tag-syntax h2{margin:0 0 .5rem;font-size:1rem}.tag-syntax p{margin:0 0 .85rem;color:var(--frontmark-steel)}.tag-syntax pre{overflow-x:auto;margin:0;border:1px solid var(--frontmark-color-rgba-237-242-247-0-14);border-radius:8px;padding:1rem;background:var(--frontmark-color-rgba-8-12-18-0-72);color:var(--frontmark-text)}.tag-cloud{display:flex;flex-wrap:wrap;gap:.65rem;margin:0 0 32px}.tag-cloud a,.tag-card-tags a{display:inline-flex;align-items:center;gap:.45rem;border:1px solid var(--frontmark-border-subtle);border-radius:999px;background:var(--frontmark-surface);color:var(--frontmark-cyan-soft);text-decoration:none}.tag-cloud a{padding:.45rem .75rem;font-weight:800}.tag-cloud small{color:var(--frontmark-muted);font-size:.75rem}.tag-cloud a.is-keyword-match{border-color:var(--frontmark-cyan);background:color-mix(in srgb,var(--frontmark-cyan) 22%,transparent);color:var(--frontmark-text)}.tag-cloud a:hover,.tag-cloud a:focus-visible,.tag-card-tags a:hover,.tag-card-tags a:focus-visible{border-color:var(--frontmark-cyan-soft);background:var(--frontmark-color-rgba-0-211-230-0-14);color:var(--frontmark-text)}.tag-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tag-result-card{border:1px solid var(--frontmark-border-subtle);border-radius:8px;padding:20px;background:var(--frontmark-surface);box-shadow:0 .9rem 2rem color-mix(in srgb,var(--frontmark-ink) 10%,transparent)}.tag-result-card[hidden],.tag-cloud a[hidden]{display:none}.tag-result-card p{margin:0 0 .65rem;color:var(--frontmark-cyan-soft);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.tag-result-card h2{margin:0;font-size:1.2rem;line-height:1.25;letter-spacing:0}.tag-result-card h2 a{color:var(--frontmark-text);text-decoration:none}.tag-result-card h2 a:hover,.tag-result-card h2 a:focus-visible{color:var(--frontmark-cyan-soft)}.tag-result-card>span{display:block;margin-top:.75rem;color:var(--frontmark-steel);line-height:1.55}.tag-card-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}.tag-card-tags a{padding:.2rem .55rem;font-size:.78rem;font-weight:700}.prose .mkdocs-admonition-note,.prose .mkdocs-admonition-info{--mkdocs-admonition-color: var(--frontmark-color-448aff)}.prose .mkdocs-admonition-abstract{--mkdocs-admonition-color: var(--frontmark-color-00b0ff)}.prose .mkdocs-admonition-tip{--mkdocs-admonition-color: var(--frontmark-color-00bfa5)}.prose .mkdocs-admonition-success{--mkdocs-admonition-color: var(--frontmark-color-00c853)}.prose .mkdocs-admonition-question{--mkdocs-admonition-color: var(--frontmark-color-64dd17)}.prose .mkdocs-admonition-warning{--mkdocs-admonition-color: var(--frontmark-color-ff9100)}.prose .mkdocs-admonition-failure{--mkdocs-admonition-color: var(--frontmark-color-ff5252)}.prose .mkdocs-admonition-danger{--mkdocs-admonition-color: var(--frontmark-color-ff1744)}.prose .mkdocs-admonition-bug{--mkdocs-admonition-color: var(--frontmark-color-f50057)}.prose .mkdocs-admonition-example{--mkdocs-admonition-color: var(--frontmark-color-7c4dff)}.prose .mkdocs-admonition-quote{--mkdocs-admonition-color: var(--frontmark-color-9e9e9e)}.prose .mkdocs-card-grid{clear:both;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:1rem;width:100%;margin:1.5rem 0}.prose .mkdocs-card-grid article{display:flex;flex-direction:column;min-width:0;height:100%;margin:0!important;border:1px solid var(--frontmark-color-rgba-237-242-247-0-14);border-radius:8px;padding:1rem;background-color:var(--frontmark-color-rgba-12-16-22-0-58);background:linear-gradient(180deg,color-mix(in srgb,var(--frontmark-color-rgba-12-16-22-0-58) 90%,var(--frontmark-cyan) 10%),var(--frontmark-color-rgba-12-16-22-0-58));overflow-wrap:anywhere}:root:not([data-frontmark-style=sigmax]) .prose .mkdocs-card-grid article{border-color:color-mix(in srgb,var(--frontmark-theme-border-subtle, var(--frontmark-cyan)) 72%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--frontmark-panel) 94%,white 6%),color-mix(in srgb,var(--frontmark-panel-soft) 96%,var(--frontmark-panel) 4%));color:var(--frontmark-text);box-shadow:0 .7rem 1.4rem color-mix(in srgb,var(--frontmark-cyan) 12%,transparent);overflow-wrap:break-word}.prose .mkdocs-card-grid h3{display:flex;align-items:center;min-height:3rem;margin:0 0 .85rem!important;border-bottom:1px solid var(--frontmark-color-rgba-237-242-247-0-16);padding-bottom:.7rem;color:var(--frontmark-text);font-size:1rem;line-height:1.25;overflow-wrap:anywhere}:root:not([data-frontmark-style=sigmax]) .prose .mkdocs-card-grid h3{border-bottom-color:color-mix(in srgb,var(--frontmark-theme-border-subtle, var(--frontmark-cyan)) 70%,transparent);color:var(--frontmark-cyan-bright);overflow-wrap:break-word}.prose .mkdocs-card-title-inner{display:grid;grid-template-columns:1.65rem minmax(0,1fr);align-items:center;column-gap:.5rem;min-height:1.65rem;min-width:0;width:100%;line-height:1.35rem;white-space:normal}.prose .mkdocs-card-title-inner-text-only{grid-template-columns:minmax(0,1fr)}.prose .mkdocs-card-icon-wrap{display:inline-grid;place-items:center;width:1.65rem;height:1.65rem;line-height:0}.prose .mkdocs-card-title-text{min-width:0;line-height:1.35rem;overflow-wrap:anywhere;word-break:normal}.prose .mkdocs-card-icon-wrap .mkdocs-icon{display:block;width:1.35rem;height:1.35rem;margin-inline-end:0}.prose .mkdocs-card-grid p{flex:1;margin:0!important;font-size:.875rem;line-height:1.5;overflow-wrap:anywhere}.prose .mkdocs-image-block,.prose .mkdocs-image-figure{display:flow-root;margin:1.5rem 0}.prose .mkdocs-image-block.mkdocs-image-align-left,.prose .mkdocs-image-block.mkdocs-image-align-right{display:block;max-width:min(20rem,45%);margin-top:.85rem!important;margin-bottom:1rem!important}.prose .mkdocs-image-block.mkdocs-image-align-left{float:left;margin-right:1.25rem!important}.prose .mkdocs-image-block.mkdocs-image-align-right{float:right;margin-left:1.25rem!important}.prose :is(h1,h2,h3,h4,h5,h6){clear:both}.prose .sl-heading-wrapper{clear:both;margin-bottom:.85rem}.prose :is(h1,h2,h3,h4,h5,h6){margin-bottom:.85rem}.prose .mkdocs-image-block img,.prose .mkdocs-image-figure img{display:block;max-width:100%;height:auto;border:0}.prose img[align=left],.prose img[align=right]{max-width:min(20rem,45%)}.prose img[align=left]{float:left;margin:.25rem 1.25rem 1rem 0}.prose img[align=right]{float:right;margin:.25rem 0 1rem 1.25rem}.prose .mkdocs-image-align-left img,.prose .mkdocs-image-align-right img{float:none!important;max-width:100%;margin:0!important}.prose .mkdocs-image-figure{width:fit-content;max-width:100%;margin-inline:auto;text-align:center}.prose .mkdocs-image-figure img{margin-inline:auto}.prose .mkdocs-image-figure figcaption{margin-top:.55rem;color:var(--frontmark-steel);font-size:.875rem;line-height:1.45}html[data-theme=light] .prose img[src$="#only-dark"],html[data-theme=light] .prose img[src$="#gh-dark-mode-only"],html:not([data-theme=light]) .prose img[src$="#only-light"],html:not([data-theme=light]) .prose img[src$="#gh-light-mode-only"]{display:none!important}.prose table{display:block;overflow-x:auto;border:1px solid var(--frontmark-color-rgba-237-242-247-0-14);border-radius:8px;width:max-content;max-width:100%;margin:1.5rem 0;border-spacing:0;table-layout:auto;background:transparent}.prose table thead{background:var(--frontmark-color-rgba-237-242-247-0-08)}.prose table th,.prose table td{border:0;border-bottom:1px solid var(--frontmark-color-rgba-237-242-247-0-12);padding:.85rem 1.15rem!important;vertical-align:middle!important;width:max-content;min-width:max-content;white-space:nowrap!important}.prose table th>*,.prose table td>*{display:inline-flex;align-items:center;white-space:nowrap!important}.prose table .mkdocs-icon{display:inline-block!important}.prose table th{background:var(--frontmark-color-rgba-237-242-247-0-08)}.prose table td{background:var(--frontmark-color-rgba-237-242-247-0-025)}.prose table th{color:var(--frontmark-text);font-size:.82rem;font-weight:850;text-align:left}.prose table tbody tr:last-child td{border-bottom:0}.prose table tbody tr:nth-child(2n){background:transparent}.prose table tbody tr:nth-child(2n) td{background:var(--frontmark-color-rgba-237-242-247-0-045)}.prose table tbody tr:hover{background:var(--frontmark-color-rgba-0-211-230-0-08)}.prose table code{border:1px solid var(--frontmark-color-rgba-237-242-247-0-12);border-radius:4px;padding:.12rem .28rem;background:var(--frontmark-color-rgba-237-242-247-0-08);font-size:.9em;white-space:nowrap!important}.prose table .mkdocs-icon{display:inline-block!important;margin-inline-end:.35em;vertical-align:-.13em}.prose .kroki-diagram{overflow-x:auto;margin:1.5rem 0;border:1px solid var(--frontmark-color-rgba-237-242-247-0-14);border-radius:8px;padding:1rem;background:var(--frontmark-color-rgba-12-16-22-0-72)}.prose .kroki-diagram svg{display:block;width:var(--mkdocs-diagram-width, auto);height:var(--mkdocs-diagram-height, auto);max-width:100%;margin:0 auto}.prose .kroki-diagram[data-mkdocs-diagram-size="1200"],.prose .kroki-diagram[data-mkdocs-diagram-size="1200px"],.prose .kroki-diagram[data-mkdocs-diagram-size="1320"],.prose .kroki-diagram[data-mkdocs-diagram-size="1320px"],.prose .kroki-diagram[data-mkdocs-diagram-size="1400"],.prose .kroki-diagram[data-mkdocs-diagram-size="1400px"],.prose .kroki-diagram[data-mkdocs-diagram-size="1800"],.prose .kroki-diagram[data-mkdocs-diagram-size="1800px"],.prose .kroki-diagram[data-mkdocs-diagram-size="3000"],.prose .kroki-diagram[data-mkdocs-diagram-size="3000px"],.kroki-diagram[data-mkdocs-diagram-size="1200"],.kroki-diagram[data-mkdocs-diagram-size="1200px"],.kroki-diagram[data-mkdocs-diagram-size="1320"],.kroki-diagram[data-mkdocs-diagram-size="1320px"],.kroki-diagram[data-mkdocs-diagram-size="1400"],.kroki-diagram[data-mkdocs-diagram-size="1400px"],.kroki-diagram[data-mkdocs-diagram-size="1800"],.kroki-diagram[data-mkdocs-diagram-size="1800px"],.kroki-diagram[data-mkdocs-diagram-size="3000"],.kroki-diagram[data-mkdocs-diagram-size="3000px"]{justify-content:flex-start}.prose .kroki-diagram[data-mkdocs-diagram-size="1200"] svg,.prose .kroki-diagram[data-mkdocs-diagram-size="1200px"] svg,.prose .kroki-diagram[data-mkdocs-diagram-size="1320"] svg,.prose .kroki-diagram[data-mkdocs-diagram-size="1320px"] svg,.prose .kroki-diagram[data-mkdocs-diagram-size="1400"] svg,.prose .kroki-diagram[data-mkdocs-diagram-size="1400px"] svg,.prose .kroki-diagram[data-mkdocs-diagram-size="1800"] svg,.prose .kroki-diagram[data-mkdocs-diagram-size="1800px"] svg,.prose .kroki-diagram[data-mkdocs-diagram-size="3000"] svg,.prose .kroki-diagram[data-mkdocs-diagram-size="3000px"] svg{max-width:none;margin-left:0;margin-right:0}.kroki-diagram[data-mkdocs-diagram-size="1200"] svg,.kroki-diagram[data-mkdocs-diagram-size="1200px"] svg,.kroki-diagram[data-mkdocs-diagram-size="1320"] svg,.kroki-diagram[data-mkdocs-diagram-size="1320px"] svg,.kroki-diagram[data-mkdocs-diagram-size="1400"] svg,.kroki-diagram[data-mkdocs-diagram-size="1400px"] svg,.kroki-diagram[data-mkdocs-diagram-size="1800"] svg,.kroki-diagram[data-mkdocs-diagram-size="1800px"] svg,.kroki-diagram[data-mkdocs-diagram-size="3000"] svg,.kroki-diagram[data-mkdocs-diagram-size="3000px"] svg{width:var(--mkdocs-diagram-width, auto)!important;max-width:none!important;margin-left:0;margin-right:0}.prose .kroki-diagram-mermaid svg foreignObject p{color:inherit!important}.prose .kroki-diagram-mermaid svg,.kroki-diagram-mermaid svg{overflow:visible}.prose .kroki-diagram-mermaid svg:not([width="100%"]),.kroki-diagram-mermaid svg:not([width="100%"]){max-width:none!important}.prose .kroki-diagram-mermaid svg foreignObject,.prose .kroki-diagram-mermaid svg foreignObject div,.prose .kroki-diagram-mermaid svg foreignObject span,.prose .kroki-diagram-mermaid svg foreignObject p,.kroki-diagram-mermaid svg foreignObject,.kroki-diagram-mermaid svg foreignObject div,.kroki-diagram-mermaid svg foreignObject span,.kroki-diagram-mermaid svg foreignObject p{overflow:visible!important;text-overflow:clip!important;box-sizing:border-box}.prose .kroki-diagram-mermaid svg foreignObject div,.kroki-diagram-mermaid svg foreignObject div{display:flex!important;align-items:center;justify-content:center;flex-direction:column;vertical-align:middle;width:100%;height:100%;min-width:100%;min-height:100%;max-width:100%!important;padding:0!important;font-size:12px!important;line-height:1.04!important;white-space:normal!important;overflow-wrap:normal;word-break:normal;text-align:center}.prose .kroki-diagram-mermaid svg foreignObject span,.kroki-diagram-mermaid svg foreignObject span,.prose .kroki-diagram-mermaid svg foreignObject p,.kroki-diagram-mermaid svg foreignObject p{display:inline-block;max-width:100%;margin:0!important;padding:0!important;font-size:12px!important;line-height:1.04!important;white-space:normal!important;overflow-wrap:normal;word-break:normal;text-align:center}.prose .kroki-diagram-mermaid svg foreignObject br+br,.kroki-diagram-mermaid svg foreignObject br+br{display:none}.prose .kroki-diagram-mermaid svg .cluster-label foreignObject div,.prose .kroki-diagram-mermaid svg .cluster-label foreignObject span,.prose .kroki-diagram-mermaid svg .cluster-label foreignObject p,.kroki-diagram-mermaid svg .cluster-label foreignObject div,.kroki-diagram-mermaid svg .cluster-label foreignObject span,.kroki-diagram-mermaid svg .cluster-label foreignObject p{color:var(--frontmark-mermaid-cluster-label, var(--sl-color-white))!important;font-weight:800!important;text-shadow:0 1px 2px rgb(0 0 0 / 45%)}.prose .kroki-diagram-mermaid svg foreignObject p:empty,.prose .kroki-diagram-mermaid svg foreignObject span:empty,.kroki-diagram-mermaid svg foreignObject p:empty,.kroki-diagram-mermaid svg foreignObject span:empty{display:none!important}.prose sup[id^=user-content-fnref],.prose sup[id^=fnref]{margin-inline:.08em;font-size:.72em;line-height:0}.prose sup[id^=user-content-fnref] a,.prose sup[id^=fnref] a{display:inline-flex;align-items:center;justify-content:center;min-width:1.35em;height:1.35em;border:1px solid var(--frontmark-color-rgba-0-211-230-0-42);border-radius:999px;background:var(--frontmark-color-rgba-0-211-230-0-12);color:var(--frontmark-cyan-soft);font-weight:800;text-decoration:none}.prose section[data-footnotes],.prose .footnotes{margin-top:2.25rem;border-top:1px solid var(--frontmark-color-rgba-237-242-247-0-16);padding-top:1rem;color:var(--frontmark-color-cdd3de);font-size:.92rem}.prose section[data-footnotes]:before,.prose .footnotes:before{content:"Footnotes";display:block;margin-bottom:.75rem;color:var(--frontmark-text);font-size:.78rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.prose section[data-footnotes] ol,.prose .footnotes ol{margin:0;padding-inline-start:1.45rem}.prose section[data-footnotes] li,.prose .footnotes li{padding-inline-start:.35rem}.prose section[data-footnotes] li::marker,.prose .footnotes li::marker{color:var(--frontmark-cyan-soft);font-weight:800}.prose section[data-footnotes] li+li,.prose .footnotes li+li{margin-top:.75rem}.prose section[data-footnotes] p,.prose .footnotes p{margin:.35rem 0}.prose [data-footnote-backref],.prose .data-footnote-backref,.prose .footnote-backref{margin-inline-start:.25rem;color:var(--frontmark-cyan-soft);text-decoration:none}@media(max-width:72rem){:root{--mkdocs-code-font-size: .86rem;--mkdocs-code-title-font-size: .78rem}.prose .mkdocs-card-grid,.home-feature-content.prose .mkdocs-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-tag-strip .tag-cloud a:nth-of-type(n+37){display:none}.home-tag-strip .tag-cloud{min-height:14rem}}@media(max-width:40rem){.prose .mkdocs-image-align-left img,.prose .mkdocs-image-align-right img,.prose img[align=left],.prose img[align=right]{float:none;max-width:100%;margin:0 auto 1rem!important}.prose .mkdocs-image-block.mkdocs-image-align-left,.prose .mkdocs-image-block.mkdocs-image-align-right{float:none;max-width:100%;margin:.85rem auto 1rem!important}}@media(max-width:36rem){.prose .mkdocs-card-grid,.home-feature-content.prose .mkdocs-card-grid{grid-template-columns:1fr}}@media(max-width:760px){:root{--mkdocs-code-font-size: .78rem;--mkdocs-code-title-font-size: .74rem}.site-main{width:min(100% - var(--frontmark-astro-mobile-gutter, 28px),var(--frontmark-astro-main-width, var(--frontmark-astro-max-width, 1120px)),var(--frontmark-astro-max-width, var(--frontmark-astro-main-width, 1120px)));padding:var(--frontmark-astro-mobile-main-padding, 44px) 0}.content-main{width:min(100% - var(--frontmark-astro-mobile-gutter, 28px),var(--frontmark-astro-content-width, var(--frontmark-astro-max-width, 1100px)),var(--frontmark-astro-max-width, var(--frontmark-astro-content-width, 1100px)));padding:var(--frontmark-astro-mobile-content-padding, 44px) 0}.hero{grid-template-columns:1fr;min-height:auto}.hero-visual{order:-1;min-height:13rem}.hero-visual img{width:min(64vw,16rem)}.hero h1{font-size:4.4rem}.lead{font-size:1.12rem}.home-section>h2{font-size:2.35rem}.home-tag-strip h2{font-size:1.6rem}.home-tag-strip .tag-cloud{justify-content:flex-start;min-height:0}.home-tag-strip .tag-cloud a:nth-of-type(n+19){display:none}.feature-grid,.tag-results{grid-template-columns:1fr}}.frontmark-style-switcher{position:fixed;inset-inline-start:auto;inset-inline-end:1rem;inset-block-end:6.2rem;z-index:1050;display:flex;gap:.5rem;align-items:center;border:1px solid color-mix(in srgb,var(--frontmark-cyan) 42%,transparent);border-radius:.45rem;padding:.55rem .65rem;background:color-mix(in srgb,var(--frontmark-ink) 88%,transparent);box-shadow:0 .7rem 1.8rem color-mix(in srgb,var(--frontmark-ink) 38%,transparent);color:var(--frontmark-text);font-size:.82rem;backdrop-filter:blur(14px)}html:has(.frontmark-footer-always-on-top) .frontmark-style-switcher{inset-block-end:calc(var(--frontmark-footer-fixed-height, var(--frontmark-footer-fixed-fallback-height, 9rem)) + 1rem)}html:has(.frontmark-footer-always-on-top) .mkdocs-toolbar-controls.mkdocs-toolbar-dedicated{bottom:calc(var(--frontmark-footer-fixed-height, var(--frontmark-footer-fixed-fallback-height, 9rem)) + 1rem)}@media(max-height:36rem){html:has(.frontmark-footer-always-on-top) .frontmark-style-switcher{display:none}}.frontmark-style-switcher label{font-weight:800}.frontmark-style-switcher select{min-width:8rem;border:1px solid color-mix(in srgb,var(--frontmark-cyan) 46%,transparent);border-radius:.35rem;padding:.35rem .5rem;background:var(--frontmark-ink);color:var(--frontmark-text);font:inherit}.mkdocs-cookie-consent{position:fixed;right:1rem;bottom:1rem;z-index:2147483000;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;max-width:min(42rem,calc(100vw - 2rem));border:1px solid color-mix(in srgb,var(--frontmark-cyan) 32%,transparent);border-radius:.5rem;padding:1rem;background:color-mix(in srgb,var(--frontmark-panel) 94%,transparent);box-shadow:0 1rem 2.5rem color-mix(in srgb,var(--frontmark-ink) 28%,transparent);color:var(--frontmark-text);backdrop-filter:blur(14px);transform:translateZ(0);backface-visibility:hidden;contain:layout paint}.mkdocs-cookie-consent strong{display:block;color:var(--frontmark-text)}.mkdocs-cookie-consent p{margin:.25rem 0 0;color:var(--frontmark-muted)}.mkdocs-cookie-consent-policy{display:inline-flex;margin-block-start:.45rem;color:var(--frontmark-cyan-soft);font-weight:800}.mkdocs-cookie-consent-actions{display:inline-flex;align-items:center;gap:.5rem}.mkdocs-cookie-consent button,.mkdocs-encrypt-form button{border:1px solid color-mix(in srgb,var(--frontmark-cyan) 34%,transparent);border-radius:.35rem;padding:.55rem .75rem;background:var(--frontmark-panel-soft);color:var(--frontmark-text);font:inherit;font-weight:800;cursor:pointer}.mkdocs-cookie-consent button[data-cookie-action=accept],.mkdocs-encrypt-form button{border-color:var(--frontmark-cyan);background:color-mix(in srgb,var(--frontmark-cyan) 24%,var(--frontmark-panel))}.mkdocs-encrypted-content{margin:1.5rem 0;border:1px solid color-mix(in srgb,var(--frontmark-cyan) 28%,transparent);border-radius:.5rem;padding:1rem;background:var(--frontmark-panel)}.mkdocs-encrypt-form{display:grid;gap:.85rem}.mkdocs-encrypt-form p{margin:0}.mkdocs-encrypt-form label{display:grid;gap:.35rem;color:var(--frontmark-muted);font-weight:700}.mkdocs-encrypt-form input{border:1px solid color-mix(in srgb,var(--frontmark-cyan) 26%,transparent);border-radius:.35rem;padding:.65rem .75rem;background:var(--frontmark-ink);color:var(--frontmark-text);font:inherit}.mkdocs-encrypt-form small{color:var(--frontmark-danger)}.mkdocs-image-lightbox-trigger{display:inline-block;max-width:100%;cursor:zoom-in}.mkdocs-image-lightbox-trigger img{display:block}.mkdocs-lightbox[hidden]{display:none}.mkdocs-lightbox{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:clamp(1rem,4vw,3rem);background:color-mix(in srgb,var(--frontmark-ink) 82%,transparent);backdrop-filter:blur(16px)}.mkdocs-lightbox-dialog{position:relative;display:grid;gap:.75rem;max-width:min(92vw,72rem);max-height:88vh;border:1px solid color-mix(in srgb,var(--frontmark-cyan) 34%,transparent);border-radius:.65rem;padding:.9rem;background:var(--frontmark-ink);box-shadow:0 1rem 3rem color-mix(in srgb,var(--frontmark-ink) 55%,transparent)}.mkdocs-lightbox-image{max-width:100%;max-height:calc(88vh - 5.5rem);border-radius:.45rem;object-fit:contain}.mkdocs-lightbox-caption{margin:0;color:var(--frontmark-muted);text-align:center}.mkdocs-lightbox-close{position:absolute;inset-block-start:-.75rem;inset-inline-end:-.75rem;display:grid;place-items:center;width:2.35rem;height:2.35rem;border:1px solid color-mix(in srgb,var(--frontmark-cyan) 38%,transparent);border-radius:999px;background:var(--frontmark-header);color:var(--frontmark-night);font-size:1.35rem;font-weight:900;cursor:pointer}
