.mf-front{--f-ground:#fbf6ef;--f-ink:#16181a;--f-ink-2:#16181aa8;--f-ink-3:#16181a70;--f-line:#16181a1a;--f-glass:#ffffff8f;--f-glass-hi:#fffc;--f-glass-edge:#fffc;--f-raised:#ffffffeb;--f-code-bg:#1d1f21;--f-code-fg:#f1ece3;--f-shadow:0 1px 2px #16181a0a, 0 12px 34px -22px #16181a61;--f-shadow-lg:0 2px 6px #16181a0d, 0 48px 100px -44px #16181a7a;--f-solid:#16181a;--f-on-solid:#fbf6ef;--f-alive:#2ea06b;--f-bloom-amber:#f5a83c80;--f-bloom-pink:#f7a8c87a;--f-bloom-green:#55d64b57;--f-bloom-peach:#f3a98775;--f-display:var(--font-display), "Instrument Serif", Georgia, serif;--f-sans:var(--font-reading), -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Noto Sans SC", sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;isolation:isolate;background:var(--f-ground);min-height:100dvh;color:var(--f-ink);font-family:var(--f-sans);-webkit-font-smoothing:antialiased;flex-direction:column;font-size:16px;line-height:1.5;display:flex;position:relative;overflow-x:clip}body[data-theme=dark] .mf-front{--f-ground:#14120f;--f-ink:#f4eee4;--f-ink-2:#f4eee4ad;--f-ink-3:#f4eee46b;--f-line:#f4eee41a;--f-glass:#ffffff0e;--f-glass-hi:#ffffff1a;--f-glass-edge:#ffffff17;--f-raised:#2e2a26f0;--f-code-bg:#ffffff0f;--f-code-fg:#f4eee4;--f-shadow:0 1px 2px #0000004d, 0 16px 40px -24px #000000bf;--f-shadow-lg:0 2px 6px #0000004d, 0 48px 110px -40px #000000e6;--f-solid:#fbf6ef;--f-on-solid:#16181a;--f-bloom-amber:#f5a83c33;--f-bloom-pink:#f7a8c829;--f-bloom-green:#55d64b1c;--f-bloom-peach:#f3a98729;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){body:not([data-theme=light]) .mf-front{--f-ground:#14120f;--f-ink:#f4eee4;--f-ink-2:#f4eee4ad;--f-ink-3:#f4eee46b;--f-line:#f4eee41a;--f-glass:#ffffff0e;--f-glass-hi:#ffffff1a;--f-glass-edge:#ffffff17;--f-raised:#2e2a26f0;--f-code-bg:#ffffff0f;--f-code-fg:#f4eee4;--f-shadow:0 1px 2px #0000004d, 0 16px 40px -24px #000000bf;--f-shadow-lg:0 2px 6px #0000004d, 0 48px 110px -40px #000000e6;--f-solid:#fbf6ef;--f-on-solid:#16181a;--f-bloom-amber:#f5a83c33;--f-bloom-pink:#f7a8c829;--f-bloom-green:#55d64b1c;--f-bloom-peach:#f3a98729;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}body:has(.mf-front):after{display:none}:is(html:has(.mf-front),body:has(.mf-front)){background:#fbf6ef}html:has(body[data-theme=dark] .mf-front){background:#14120f}body[data-theme=dark]:has(.mf-front){background:#14120f}@media (prefers-color-scheme:dark){html:has(body:not([data-theme=light]) .mf-front){background:#14120f}body:not([data-theme=light]):has(.mf-front){background:#14120f}}.front-ground{z-index:-1;pointer-events:none;background:var(--f-ground);position:fixed;inset:0;overflow:hidden}.front-ground:before{content:"";background:radial-gradient(42% 38% at 12% 8%, var(--f-bloom-amber) 0%, transparent 70%), radial-gradient(44% 40% at 90% 6%, var(--f-bloom-pink) 0%, transparent 70%), radial-gradient(46% 42% at 88% 92%, var(--f-bloom-green) 0%, transparent 70%), radial-gradient(44% 40% at 8% 88%, var(--f-bloom-peach) 0%, transparent 70%);position:absolute;inset:-18%}.front-wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 32px}.front-header{justify-content:space-between;align-items:center;padding-top:28px;padding-bottom:28px;display:flex}.front-lockup{color:var(--f-ink);align-items:flex-end;gap:13px;text-decoration:none;display:inline-flex}.front-lockup img{border-radius:22%;width:48px;height:48px;display:block;box-shadow:0 1px 3px #0000001a}.front-lockup span{font-family:var(--f-display);font-size:40px;line-height:1;position:relative;top:-2px}.front-footer{color:var(--f-ink-3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:40px;padding-bottom:32px;font:12px/1.55 system-ui,-apple-system,sans-serif;display:flex}.front-footer nav{flex-wrap:wrap;align-items:center;gap:6px 10px;display:flex}.front-footer nav a{color:var(--f-ink-2);text-decoration:none}.front-footer nav a:hover{color:var(--f-ink)}.front-footer nav i{opacity:.6;font-style:normal}.front-social{gap:8px;display:flex}.front-social a{background:var(--f-glass);border:1px solid var(--f-glass-edge);-webkit-backdrop-filter:blur(10px)saturate(1.5);backdrop-filter:blur(10px)saturate(1.5);width:40px;height:40px;box-shadow:var(--f-shadow);color:var(--f-ink-2);border-radius:999px;place-items:center;display:grid}.front-social a:hover{color:var(--f-ink);background:var(--f-glass-hi)}.front-social svg{fill:currentColor}.front-pill{background:var(--f-glass);border:1px solid var(--f-glass-edge);-webkit-backdrop-filter:blur(10px)saturate(1.6);backdrop-filter:blur(10px)saturate(1.6);height:48px;box-shadow:var(--f-shadow);color:var(--f-ink);font:500 16px/1 var(--f-sans);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 24px;text-decoration:none;transition:background-color .15s;display:inline-flex}.front-pill:hover{background:var(--f-glass-hi)}.front-pill.is-sm{height:36px;padding:0 16px;font-size:14px}.front-btn{background:var(--f-solid);height:56px;color:var(--f-on-solid);font:500 17px/1 var(--f-sans);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:0 30px;text-decoration:none;transition:transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 1px 2px #16181a24,0 16px 32px -16px #16181a8c}.front-btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px #16181a24,0 20px 40px -18px #16181a99}.front-btn:active{transform:none}.front-btn svg{flex:none;width:18px;height:18px}.front-card{background:var(--f-glass);border:1px solid var(--f-glass-edge);-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);box-shadow:var(--f-shadow);border-radius:24px}.mf-front :focus-visible{outline:2px solid color-mix(in srgb, var(--f-alive) 70%, transparent);outline-offset:3px}.front-display{font-family:var(--f-display);letter-spacing:-.012em;color:var(--f-ink);margin:0;font-weight:400}.front-h1{font-size:clamp(52px,7.4vw,96px);line-height:.98}.front-h2{font-size:clamp(36px,4.4vw,56px);line-height:1.02}.front-h3{font-size:28px;line-height:1.12}.front-lede{color:var(--f-ink-2);margin:0;font-size:clamp(18px,1.55vw,21px);line-height:1.5}.front-chip{background:var(--f-glass);border:1px solid var(--f-glass-edge);height:30px;box-shadow:var(--f-shadow);font:500 13.5px/1 var(--f-sans);color:var(--f-ink-2);border-radius:999px;align-items:center;padding:0 13px;display:inline-flex}.front-faq{padding:6px 30px}.front-faq details+details{border-top:1px solid var(--f-line)}.front-faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-size:17px;font-weight:500;list-style:none;display:flex}.front-faq summary::-webkit-details-marker{display:none}.front-faq summary:after{content:"+";color:var(--f-ink-3);flex:none;font-size:24px;font-weight:300;line-height:1;transition:rotate .2s}.front-faq details[open] summary:after{rotate:45deg}.front-faq details p{max-width:720px;color:var(--f-ink-2);margin:-6px 0 22px}.front-faq b,.front-faq strong{color:var(--f-ink);font-weight:500}.front-faq a{color:var(--f-ink);text-underline-offset:3px;text-decoration:underline}.front-article{max-width:780px;padding-top:48px}.front-article-head{flex-direction:column;align-items:flex-start;margin-bottom:52px;display:flex}.front-article-head .front-chip{margin-bottom:22px}.front-article-head .front-h1{font-size:clamp(46px,6vw,76px)}.front-article-meta{color:var(--f-ink-3);margin:16px 0 0;font-size:15px}.front-prose{color:var(--f-ink);word-spacing:.08em;font-size:17px;line-height:1.72}:where(.front-prose,.front-prose>article)>*{margin:0}:where(.front-prose,.front-prose>article)>*+*{margin-top:1.05em}.front-prose h1,.front-prose h2{font-family:var(--f-display);letter-spacing:-.012em;font-weight:400}.front-prose h1{font-size:clamp(40px,5vw,56px);line-height:1.02}.front-prose h2{margin-top:2.1em;font-size:clamp(28px,3vw,34px);line-height:1.15}.front-prose h3{margin-top:1.9em;font-size:19px;font-weight:600;line-height:1.35}.front-prose h4{margin-top:1.6em;font-size:17px;font-weight:600}.front-prose :is(h2,h3,h4)+*{margin-top:.55em}.front-prose :is(h1,h2,h3,h4) a{color:inherit;text-decoration:none}.front-prose a{color:var(--f-ink);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--f-ink) 32%, transparent);text-decoration-color:color-mix(in srgb, var(--f-ink) 32%, transparent);text-underline-offset:3px;transition:text-decoration-color .15s}.front-prose a:hover{text-decoration-color:currentColor}.front-prose strong{font-weight:600}.front-prose :is(ul,ol){padding-left:1.3em}.front-prose ul{list-style:outside}.front-prose ol{list-style:decimal}.front-prose li+li,.front-prose li>:is(ul,ol){margin-top:.5em}.front-prose li::marker{color:var(--f-ink-3)}.front-prose code{font-family:var(--font-jbm), ui-monospace, SFMono-Regular, Menlo, monospace;background:var(--f-glass-hi);border:1px solid var(--f-line);border-radius:7px;padding:.1em .42em;font-size:.86em}.front-prose pre{background:var(--f-code-bg);border:1px solid var(--f-glass-edge);color:var(--f-code-fg);border-radius:16px;margin-top:1.5em;padding:18px 22px;font-size:14px;line-height:1.65;overflow-x:auto}.front-prose pre code{color:inherit;font-size:inherit;background:0 0;border:0;border-radius:0;padding:0}.front-prose blockquote{color:var(--f-ink-2);border-left:3px solid #f3a987;padding-left:1.1em}.front-prose hr{border:0;border-top:1px solid var(--f-line);margin:2.4em 0}.front-prose img{border-radius:14px;max-width:100%;height:auto}.front-table{overflow-x:auto}.front-prose table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.55}.front-prose :is(th,td){text-align:left;vertical-align:top;border-bottom:1px solid var(--f-line);padding:.65em 1.1em .65em 0}.front-prose th{color:var(--f-ink-2);font-size:13.5px;font-weight:600}.front-prose :is(h1,h2,h3,h4)[id]{scroll-margin-top:28px}html:has(.mf-front){scroll-padding-top:0}.front-anchor{color:var(--f-ink-3);opacity:0;margin-left:.35em;transition:opacity .15s}.front-prose :is(h1,h2,h3,h4):hover .front-anchor{opacity:1}.front-callout{--callout:transparent;background:color-mix(in srgb, var(--callout) 9%, var(--f-glass));border:1px solid var(--f-glass-edge);box-shadow:var(--f-shadow);border-radius:16px;padding:16px 20px;font-size:15.5px;line-height:1.65}:where(.front-prose,.front-prose>article)>.front-callout,:where(.front-prose,.front-prose>article)>.front-callout+*{margin-top:1.5em}.front-callout[data-type=info]{--callout:#e58bb0}.front-callout[data-type=warning]{--callout:#f0a030}.front-callout[data-type=success]{--callout:#2ea06b}.front-callout[data-type=error]{--callout:#e5484d}.front-callout-title{align-items:center;gap:9px;margin:0 0 4px;font-size:15px;font-weight:600;display:flex}.front-callout-title:before{content:"";background:var(--callout);border-radius:50%;flex:none;width:8px;height:8px}.front-callout[data-type=card] .front-callout-title:before{display:none}.front-callout-body>*{margin:0}.front-callout-body>*+*{margin-top:.7em}.front-reading{grid-template-columns:minmax(0,780px) 220px;justify-content:space-between;gap:56px;padding-top:40px;display:grid}.front-reading>aside{align-self:start;padding-top:6px;position:sticky;top:32px}.front-back{margin-bottom:36px}.front-toc{border-left:1px solid var(--f-line);padding-left:16px;font-size:14px}.front-toc p{color:var(--f-ink-3);margin:0 0 12px;font-size:13px}.front-toc ul{margin:0;padding:0;list-style:none}.front-toc li+li{margin-top:9px}.front-toc li[data-level="3"]{padding-left:12px}.front-toc a{color:var(--f-ink-2);line-height:1.4;text-decoration:none}.front-toc a:hover{color:var(--f-ink)}@media (max-width:1024px){.front-reading{grid-template-columns:minmax(0,1fr)}.front-reading>aside{display:none}}@media (max-width:720px){.front-wrap{padding:0 20px}.front-header{padding-top:20px;padding-bottom:20px}.front-lockup{gap:10px}.front-lockup img{width:32px;height:32px}.front-lockup span{font-size:28px;top:-1px}.front-pill{height:40px;padding:0 18px;font-size:15px}.front-footer{flex-direction:column-reverse;align-items:flex-start}.front-faq{padding:2px 20px}.front-faq summary{padding:18px 0;font-size:16px}.front-article{padding-top:24px}.front-reading{padding-top:20px}.front-back{margin-bottom:28px}.front-article-head{margin-bottom:36px}.front-prose{font-size:16.5px}}
