@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/plex-sans-400.BUjEsRx4.woff2)format("woff2");unicode-range:U+0,U+D,U+20-7E,U+A0-FF,U+131,U+152-153,U+2C6,U+2DA,U+2DC,U+2013-2014,U+2018-201A,U+201C-201E,U+2020-2022,U+2026,U+2030,U+2039-203A,U+2044,U+20AC,U+2122,U+2212,U+FB01-FB02}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-display:swap;src:url(/_astro/plex-sans-600.CIhZjzyK.woff2)format("woff2");unicode-range:U+0,U+D,U+20-7E,U+A0-FF,U+131,U+152-153,U+2C6,U+2DA,U+2DC,U+2013-2014,U+2018-201A,U+201C-201E,U+2020-2022,U+2026,U+2030,U+2039-203A,U+2044,U+20AC,U+2122,U+2212,U+FB01-FB02}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/plex-mono-400.DYPusg7z.woff2)format("woff2");unicode-range:U+20-7E,U+A0-FF,U+131,U+152-153,U+2C6,U+2DA,U+2DC,U+2013-2014,U+2018-201A,U+201C-201E,U+2020-2022,U+2026,U+2030,U+2039-203A,U+2044,U+20AC,U+2122,U+2212,U+FB01-FB02}@font-face{font-family:Plex Fallback;src:local(Arial),local(ArialMT),local(Liberation Sans);size-adjust:101.2%;ascent-override:101.28%;descent-override:27.17%;line-gap-override:0%}:root{color-scheme:light dark}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}@media print{:root{color-scheme:light}}.paper{color-scheme:light}:root{--font-sans:"IBM Plex Sans","Plex Fallback",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;--fs-12:12px;--lh-12:16px;--fs-13:13px;--lh-13:20px;--fs-14:14px;--lh-14:20px;--fs-16:16px;--lh-16:24px;--fs-20:20px;--lh-20:28px;--fs-24:24px;--lh-24:32px;--fw-regular:400;--fw-semibold:600;--sp-half:2px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--r-sm:4px;--r-md:6px;--r-pill:10px;--topbar-h:48px;--nav-w:232px;--rail-w:240px;--drawer-w:560px;--drawer-w-md:520px;--control-h:32px;--control-h-sm:28px;--control-h-lg:40px;--input-h:36px;--status-col:148px;--status-col-compact:132px;--z-batch:25;--z-topbar:30;--z-drawer:35;--z-navdrawer:40;--z-menu:50;--dur-fast:.1s;--dur:.16s;--ease:cubic-bezier(.2,0,0,1);--n-0:#fff;--n-25:#f9fafc;--n-50:#f4f5f7;--n-100:#ebedef;--n-150:#e3e5e6;--n-200:#d8d9db;--n-300:#bcbebf;--n-400:#8b8c8e;--n-500:#656668;--n-600:#4c4d4f;--n-700:#393b3c;--n-800:#2d2e2f;--n-900:#181a1b;--n-950:#0d0e10;--d-0:#121314;--d-1:#161718;--d-2:#1b1c1d;--d-3:#212223;--d-4:#252728;--d-5:#2d2e2f;--d-6:#393b3c;--d-7:#4c4d4f;--d-8:#7f8082;--d-9:#abacae;--d-10:#cecfd1;--d-11:#f0f2f4;--b-50:#f1f8fd;--b-100:#e4f0fa;--b-200:#cadeed;--b-300:#a5c2d9;--b-400:#779eba;--b-500:#517a97;--b-600:#355a74;--b-700:#1f3a4d;--b-800:#152b3b;--b-900:#0d1c27;--bg-page:light-dark(var(--n-0),var(--d-1));--bg-surface:light-dark(var(--n-0),var(--d-2));--bg-sunken:light-dark(var(--n-50),var(--d-0));--bg-hover:light-dark(var(--n-50),var(--d-4));--bg-selected:light-dark(var(--n-100),var(--d-5));--bg-raised:light-dark(var(--n-0),var(--d-3));--bg-scrim:light-dark(#0d0e1066,#0000008c);--text:light-dark(var(--n-900),var(--d-11));--text-2:light-dark(var(--n-600),var(--d-10));--text-3:light-dark(var(--n-500),var(--d-9));--text-disabled:light-dark(var(--n-400),var(--d-8));--border:light-dark(var(--n-150),var(--d-6));--border-strong:light-dark(var(--n-200),var(--d-7));--border-input:light-dark(var(--n-400),var(--d-8));--primary:light-dark(var(--b-700),var(--b-300));--primary-hover:light-dark(var(--b-800),var(--b-200));--primary-active:light-dark(var(--b-900),var(--b-100));--on-primary:light-dark(#fff,var(--n-950));--marker:light-dark(var(--b-700),var(--b-300));--link:light-dark(var(--b-600),var(--b-300));--bg-batch:light-dark(var(--b-800),var(--b-700));--text-on-batch:#fff;--border-batch:light-dark(var(--b-800),var(--b-500));--brand-tag:light-dark(#d97706,#fbbf24);--focus:light-dark(#2663c9,#82baff);--focus-halo:light-dark(#fff,var(--d-0));--success-text:light-dark(#1e6b3a,#86cfa0);--success-bg:light-dark(#eaf4ec,#163322);--success-border:light-dark(#b9d9c2,#2c5a3b);--success-solid:light-dark(#2f7d4a,#4fa06a);--warning-text:light-dark(#6e5200,#e3c25e);--warning-bg:light-dark(#fbf3da,#2e2610);--warning-border:light-dark(#e8d38e,#5e4c17);--warning-solid:light-dark(#a57c00,#c9a227);--danger-text:light-dark(#a4261b,#f59a8f);--danger-bg:light-dark(#fbecea,#3a1a17);--danger-border:light-dark(#efc2bc,#6e2e27);--danger-solid:light-dark(#b42318,#e0604f);--info-text:light-dark(#1f4e8c,#9cc0ec);--info-bg:light-dark(#eaf1fa,#15253a);--info-border:light-dark(#bcd0ea,#2b4a70);--info-solid:light-dark(#2b62a8,#5b8fd1);--neutral-text:var(--text-2);--neutral-bg:light-dark(var(--n-100),var(--d-5));--neutral-border:light-dark(var(--n-200),var(--d-7));--neutral-solid:light-dark(var(--n-500),var(--d-9));--cov-ok:#3f8a5b;--cov-part:var(--warning-solid);--cov-none-bg:var(--warning-bg);--cov-none-line:var(--warning-solid);--cov-before:light-dark(var(--n-100),var(--d-4));--cov-excluded:var(--neutral-bg);--chart-bar:light-dark(var(--n-600),var(--d-10));--chart-track:light-dark(var(--n-100),var(--d-5));--shadow-overlay:0 8px 24px light-dark(#0d0e1024,#0000008c), 0 1px 2px light-dark(#0d0e1014,#0006);--paper:#fff;--paper-text:#181a1b;--paper-line:#d8d9db}.batchbar,.on-dark{--focus:#82baff;--focus-halo:var(--b-900)}:root{--fs-18:18px;--lh-18:28px;--fs-32:32px;--lh-32:40px;--fs-40:40px;--lh-40:48px;--fs-48:48px;--lh-48:56px;--fs-56:56px;--lh-56:64px;--fs-display:clamp(34px, 28px + 1.7vw, 48px);--tracking-display:-.02em;--tracking-heading:-.01em;--header-h:56px;--container:1200px;--container-narrow:800px;--prose:68ch;--gutter:16px;--section-y:64px;--section-y-tight:40px;--dur-diagram:1.2s;--dur-diagram-step:.24s;--frame-bar-h:32px;--frame-border:var(--border-strong);--frame-bar-bg:var(--bg-sunken);--s-50:#eef6fc;--s-100:#ddeefa;--s-200:#bbdcf3;--s-300:#8cc3ea;--s-400:#59a4da;--s-500:#2f86c4;--s-600:#1f6ca6;--s-700:#185787;--s-800:#134468;--mk-page:light-dark(#fff,#10151a);--mk-surface:light-dark(#fff,#1a2530);--mk-tint:light-dark(#eff5fa,#151e27);--mk-border:light-dark(#dae3eb,#2a3642);--mk-border-strong:light-dark(#c6d3de,#36444f);--mk-text:light-dark(var(--n-900),var(--d-11));--mk-text-2:light-dark(var(--n-600),var(--d-10));--mk-text-3:light-dark(var(--n-500),var(--d-9));--mk-link:light-dark(var(--b-600),var(--b-300));--mk-accent:light-dark(var(--s-600),var(--s-300));--mk-primary:light-dark(var(--b-700),var(--b-300));--accent:var(--mk-accent);--accent-icon:light-dark(var(--b-500),var(--b-400));--chip-bg:light-dark(var(--s-50),#16324a);--chip-border:light-dark(var(--s-200),#24496a);--chip-text:light-dark(var(--s-700),var(--s-200));--card-rule:2px;--dg-primary-bg:light-dark(var(--b-50),#162635);--dg-part-bg:light-dark(var(--s-100),#1b3249);--dg-part-border:light-dark(var(--s-200),#2c4d6b);--dg-path:light-dark(var(--s-600),var(--s-300));--p-see:light-dark(#176a6e,#88cfd3);--p-see-tint:light-dark(#e8f7f8,#0f2728);--p-see-on-band:#88cfd3;--p-decide:light-dark(#5d5588,#c0b9ef);--p-decide-tint:light-dark(#f3f2fe,#222030);--p-decide-on-band:#c0b9ef;--p-detect:light-dark(#7f4a64,#e8adc8);--p-detect-tint:light-dark(#fdeff5,#2e1d25);--p-detect-on-band:#e8adc8;--p-prove:light-dark(#2f6386,#95c8ee);--p-prove-tint:light-dark(#eaf5fd,#152530);--p-prove-on-band:#95c8ee;--p-connect:light-dark(#545e6f,#b6c2d5);--p-connect-tint:light-dark(#f4f7fc,#1d2229);--p-connect-on-band:#b6c2d5;--band-bg:var(--b-800);--band-raised:var(--b-700);--band-text:#fff;--band-text-2:var(--b-200);--band-text-3:var(--b-300);--band-accent:var(--s-300);--band-line:#ffffff24;--band-line-strong:var(--b-400);--band-cta:light-dark(#fff,var(--b-300));--band-cta-hover:light-dark(var(--b-100),var(--b-200));--band-cta-active:light-dark(var(--b-200),var(--b-100));--band-cta-text:light-dark(var(--b-800),var(--n-950));--band-texture:repeating-linear-gradient(to bottom,transparent 0 31px,#ffffff05 31px 32px);--band-texture-mask:linear-gradient(100deg,#0000 30%,#000 60%,#000 78%,#0000 100%);--band-glow:radial-gradient(60% 80% at 85% 20%,#8cc3ea12,#8cc3ea00 70%);--card-shadow:0 1px 2px light-dark(#152b3b0f,#0000004d),0 8px 24px light-dark(#152b3b14,#00000059);--card-shadow-band:0 2px 4px #0000002e,0 16px 40px #00000047;--scroll-shadow:light-dark(#152b3b3d,#0009)}@media (width>=640px){:root{--gutter:24px}}@media (width>=960px){:root{--section-y:96px;--section-y-tight:56px}}@media (width>=1280px){:root{--gutter:32px}}@supports not (color:light-dark(#000,#fff)){:root{--bg-page:var(--n-0);--bg-surface:var(--n-0);--bg-sunken:var(--n-50);--bg-hover:var(--n-50);--bg-selected:var(--n-100);--bg-raised:var(--n-0);--bg-scrim:#0d0e1066;--text:var(--n-900);--text-2:var(--n-600);--text-3:var(--n-500);--text-disabled:var(--n-400);--border:var(--n-150);--border-strong:var(--n-200);--border-input:var(--n-400);--primary:var(--b-700);--primary-hover:var(--b-800);--primary-active:var(--b-900);--on-primary:#fff;--marker:var(--b-700);--link:var(--b-600);--bg-batch:var(--b-800);--border-batch:var(--b-800);--brand-tag:#d97706;--focus:#2663c9;--focus-halo:#fff;--success-text:#1e6b3a;--success-bg:#eaf4ec;--success-border:#b9d9c2;--success-solid:#2f7d4a;--warning-text:#6e5200;--warning-bg:#fbf3da;--warning-border:#e8d38e;--warning-solid:#a57c00;--danger-text:#a4261b;--danger-bg:#fbecea;--danger-border:#efc2bc;--danger-solid:#b42318;--info-text:#1f4e8c;--info-bg:#eaf1fa;--info-border:#bcd0ea;--info-solid:#2b62a8;--neutral-bg:var(--n-100);--neutral-border:var(--n-200);--neutral-solid:var(--n-500);--cov-before:var(--n-100);--chart-bar:var(--n-600);--chart-track:var(--n-100);--shadow-overlay:0 8px 24px #0d0e1024,0 1px 2px #0d0e1014;--mk-page:#fff;--mk-surface:#fff;--mk-tint:#eff5fa;--mk-border:#dae3eb;--mk-border-strong:#c6d3de;--mk-text:var(--n-900);--mk-text-2:var(--n-600);--mk-text-3:var(--n-500);--mk-link:var(--b-600);--mk-accent:var(--s-600);--mk-primary:var(--b-700);--accent:var(--s-600);--accent-icon:var(--b-500);--chip-bg:var(--s-50);--chip-border:var(--s-200);--chip-text:var(--s-700);--dg-primary-bg:var(--b-50);--dg-part-bg:var(--s-100);--dg-part-border:var(--s-200);--dg-path:var(--s-600);--p-see:#176a6e;--p-see-tint:#e8f7f8;--p-decide:#5d5588;--p-decide-tint:#f3f2fe;--p-detect:#7f4a64;--p-detect-tint:#fdeff5;--p-prove:#2f6386;--p-prove-tint:#eaf5fd;--p-connect:#545e6f;--p-connect-tint:#f4f7fc;--card-shadow:0 1px 2px #152b3b0f,0 8px 24px #152b3b14;--scroll-shadow:#152b3b3d;--band-cta:#fff;--band-cta-hover:var(--b-100);--band-cta-active:var(--b-200);--band-cta-text:var(--b-800)}}
