header{flex-direction:row;align-items:center;gap:1.5rem;margin:2rem 0;display:flex}header h1{flex:auto;margin:0}.clipboard-button{float:right;color:var(--gray);border-color:var(--dark);background-color:var(--light);opacity:0;border:1px solid;border-radius:5px;margin:.3rem;padding:.4rem;transition:all .2s;display:flex;position:absolute;right:0}.clipboard-button:hover{cursor:pointer;border-color:var(--secondary)}.clipboard-button:focus{outline:0}pre:hover>.clipboard-button{opacity:1;transition:all .2s}.l3-drawer-bar{box-sizing:border-box;z-index:35;border-bottom:1px solid var(--l3-line);background:#fff;align-items:center;gap:12px;width:100%;height:56px;padding:0 16px;display:none;position:fixed;top:0;left:0;right:0}.l3-drawer-bar__mark{letter-spacing:-.01em;color:var(--l3-ink);flex:none;align-items:center;gap:12px;font-size:15px;font-weight:800;text-decoration:none;display:flex}.l3-drawer-bar__cell{border:1.4px solid var(--l3-ink);letter-spacing:-.05em;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:900;display:flex;position:relative}.l3-drawer__toggle{appearance:none;cursor:pointer;width:40px;height:40px;color:var(--l3-ink);background:0 0;border:0;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;margin:0;padding:0;display:flex}.l3-drawer__toggle>span{background:currentColor;width:18px;height:1.4px;display:block}.l3-drawer__item a{font-family:var(--l3-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--l3-ink-3);padding:12px 0;font-size:10.5px;text-decoration:none;display:block}.l3-drawer__item a[aria-current=page]{color:var(--l3-ink)}@media (max-width:800px){.l3-nav{display:none!important}.l3-drawer-bar{display:flex!important}}@media (min-width:801px){.l3-drawer-bar,.l3-drawer{display:none!important}}.l3-article-header--home{padding:60px 52px 0}.l3-tagrow--empty{padding-bottom:20px}.l3-hero-eyebrow{font-family:var(--l3-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--l3-accent-ink);border:1px solid var(--l3-accent);background:var(--l3-accent-tint);align-items:center;gap:10px;padding:6px 12px;font-size:11px;display:inline-flex}.l3-hero-eyebrow__dot{background:var(--l3-accent);flex:none;width:6px;height:6px}.l3-hero-h1{letter-spacing:-.035em;text-wrap:balance;max-width:15ch;margin:24px 0 0;font-size:clamp(34px,5.2vw,60px);font-weight:900;line-height:.98}.l3-hero-lede{color:var(--l3-ink-2);max-width:58ch;margin:26px 0 0;font-size:18px;line-height:1.55}.l3-explorer{height:calc(100vh - 56px);padding:22px 0 40px;position:sticky;top:56px;overflow-y:auto}.l3-explorer__label{font-family:var(--l3-mono);letter-spacing:.14em;color:var(--l3-ink-3);padding:0 20px 12px;font-size:9px}.l3-folder__row{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:9px;padding:8px 20px;display:flex}.l3-folder__caret{width:8px;font-family:var(--l3-mono);color:var(--l3-silver);flex:none;font-size:9px}.l3-folder__name{font-family:var(--l3-mono);letter-spacing:.12em;text-transform:uppercase;color:#3a3f45;flex:1;font-size:10px}.l3-folder__count{font-family:var(--l3-mono);color:var(--l3-silver);text-align:right;flex:none;font-size:9px}.l3-folder__list{display:none}.l3-folder.l3-folder--open>.l3-folder__list{display:block}.l3-file{color:#3a3f45;border-left:2px solid #0000;margin-left:20px;padding:6px 12px 6px 18px;font-size:13px;line-height:1.5;text-decoration:none;transition:background .12s,color .12s;display:block}.l3-file:hover{background:var(--l3-raised);color:var(--l3-ink)}.l3-file.l3-file--active,.l3-file[aria-current=page]{color:var(--l3-ink);background:var(--l3-accent-tint);border-left:2px solid var(--l3-accent);font-weight:500}@media (max-width:800px){.l3-explorer{display:none}}.l3-folder .l3-folder{margin-bottom:0;margin-left:20px}.l3-folder .l3-folder>.l3-folder__row{padding-left:12px}ul.section-ul{margin-top:2em;padding-left:0;list-style:none}li.section-li>.section{grid-template-columns:fit-content(8em) 3fr 1fr;display:grid}@media (max-width:800px){li.section-li>.section>.tags{display:none}}li.section-li>.section .meta{opacity:.6;margin:0 1em 0 0}.popover .section{grid-template-columns:fit-content(8em) 1fr!important}.popover .section>.tags{display:none}.section h3,.section>.tags{margin:0}:root{--l3-carbon:#101317;--l3-vapor:#edeff1;--l3-silver:#aeb4bc;--l3-paper:#fff;--l3-surface:#f4f5f6;--l3-raised:#e3e6e9;--l3-accent:#3e8a4f;--l3-accent-ink:#2f6b3d;--l3-accent-tint:#3e8a4f14;--l3-ink:#101317;--l3-ink-2:#3a3f45;--l3-ink-3:#6e757f;--l3-line:#d6dade;--l3-line-strong:#c4cacf;--l3-field:28px;--l3-field-line:#1013170e;--l3-sans:"Archivo", sans-serif;--l3-mono:"JetBrains Mono", monospace;--l3-fast:.12s;--l3-base:.2s;--l3-ease:cubic-bezier(.2, .8, .2, 1)}:root[saved-theme=dark]{--l3-paper:#1a1e22;--l3-surface:#101317;--l3-raised:#0e1013;--l3-ink:#edeff1;--l3-ink-2:#c4cacf;--l3-ink-3:#8b919a;--l3-line:#2a2f35;--l3-line-strong:#3a4046;--l3-field-line:#edeff10d}article h3{margin:1.75rem 0 .5rem;font-size:1.15rem;font-weight:700}article strong{color:var(--l3-ink);font-weight:700}article table{border:1px solid var(--l3-line);border-collapse:collapse;font-size:14.5px}article th{font-family:var(--l3-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--l3-ink-3);text-align:left;background:var(--l3-surface);font-size:10px}article th,article td{border:1px solid var(--l3-line);padding:.5rem .75rem}article code{font-family:var(--l3-mono);background:var(--l3-surface);border:1px solid var(--l3-line);border-radius:0;padding:.1em .35em;font-size:.875em}article pre{border:1px solid var(--l3-line);background:var(--l3-surface);border-radius:0}article pre>code{background:0 0;border:0}.explorer{max-height:none}.explorer>button{font-family:var(--l3-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--l3-ink-3);padding:0 0 .75rem;font-size:9px}.graph{z-index:25;width:286px;margin:0;position:fixed;bottom:24px;right:24px}.graph>h3{font-family:var(--l3-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--l3-ink-3);background:color-mix(in srgb, var(--l3-surface) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--l3-line);border-bottom:0;align-items:baseline;margin:0;padding:6px 10px;font-size:9px;display:flex}.graph>#graph-container{border:1px solid var(--l3-line);background:var(--l3-paper);background-image:linear-gradient(to right, var(--l3-field-line) 1px, transparent 1px), linear-gradient(to bottom, var(--l3-field-line) 1px, transparent 1px);background-size:18px 18px;height:214px;box-shadow:0 8px 24px #1013171a}.graph>.global-graph-icon{color:var(--l3-ink-3);position:absolute;top:6px;right:10px}.graph>.global-graph-icon:hover{color:var(--l3-accent)}@media (max-width:1200px){.graph{display:none}}.l3-yaml-outer>h3{font-family:var(--l3-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--l3-ink-3);margin:0 0 .5rem;font-size:9px}#global-graph-outer{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1013176b}#global-graph-container{border:1.5px solid var(--l3-ink);background:var(--l3-paper);border-radius:0}.toc>button>h3,.toc>h3,.backlinks>button>h3,.backlinks>h3{font-family:var(--l3-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--l3-ink-3);font-size:9px}.toc .in-view{color:var(--l3-ink);font-weight:500}.search>#search-button{background:var(--l3-paper);border:1px solid var(--l3-line-strong);font-family:var(--l3-mono);letter-spacing:.06em;color:var(--l3-ink-3);border-radius:0;padding:7px 11px;font-size:11px}#search-container .search-space{border:1px solid var(--l3-ink);background:var(--l3-paper);border-radius:0;box-shadow:0 8px 24px #1013171a}#search-container .search-space>input{font-family:var(--l3-mono);background:var(--l3-surface);border-radius:0;font-size:13px}#search-container .search-space .result-card{border-left:2px solid #0000;border-radius:0}#search-container .search-space .result-card:hover,#search-container .search-space .result-card:focus-visible{background:var(--l3-accent-tint);border-left-color:var(--l3-accent)}.content-meta{font-family:var(--l3-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--l3-ink-3);border-bottom:1px solid var(--l3-line);opacity:1;margin-top:.5rem;padding-bottom:1.25rem;font-size:9.5px}footer>.page-links{gap:1.25rem}.l3-rows>ul>li>code:last-child{letter-spacing:.1em;text-transform:uppercase;color:var(--l3-ink-3);background:0 0;border:0;flex:none;padding:0;font-size:9.5px}@media print{@page{margin:18mm}}@media (prefers-reduced-motion:reduce){:root{--l3-fast:0s;--l3-base:0s}}:root{--dc-accent:#3e8a4f;--dc-carbon:#101317;--dc-grid:28px;--dc-radius:0;--dc-display:"Archivo", sans-serif;--dc-mono:"JetBrains Mono", monospace}body{box-sizing:border-box;background-color:revert;color:revert;margin:0;font-family:revert}p{color:revert;fill:revert;overflow-wrap:revert;text-wrap:revert;line-height:revert}ul,text{color:revert;fill:revert;overflow-wrap:revert;text-wrap:revert}a{color:inherit;fill:revert;overflow-wrap:revert;text-wrap:revert;font-weight:revert;text-decoration:none;transition:revert}tr,td{color:revert;fill:revert;overflow-wrap:revert;text-wrap:revert}li{color:revert;fill:revert;overflow-wrap:revert;text-wrap:revert;line-height:revert}ol,.katex,.math,.typst-doc,g[class~=typst-text]{color:revert;fill:revert;overflow-wrap:revert;text-wrap:revert}article>mjx-container.MathJax>svg{margin-left:revert;margin-right:revert}article blockquote>div>mjx-container.MathJax>svg{margin-left:revert;margin-right:revert;margin-top:revert;margin-bottom:revert}a:hover{color:inherit}a.internal{background-color:revert;padding:revert;border-radius:revert;line-height:revert;text-decoration:none}a.internal.broken{color:inherit;opacity:revert;transition:revert}a.internal.broken:hover{opacity:revert}a.internal:has(>img){background-color:revert;border-radius:revert;padding:revert}a.internal.tag-link:before{content:revert}.page{max-width:revert;margin:revert}.page article>h1{font-size:revert}.page article li:has(>input[type=checkbox]){list-style-type:revert;padding-left:revert}.page article li:has(>input[type=checkbox]:checked){-webkit-text-decoration:revert;text-decoration:revert;-webkit-text-decoration-color:revert;text-decoration-color:revert;color:revert}.page>#quartz-body{display:revert;grid-template-columns:revert;grid-template-rows:revert;column-gap:revert;row-gap:revert;grid-template-areas:revert;padding:revert;margin:revert}.page>#quartz-body .sidebar{gap:revert;top:revert;box-sizing:border-box;padding:revert;display:revert;height:revert;position:revert}.page>#quartz-body .sidebar.left{z-index:revert;grid-area:revert;flex-direction:revert;gap:revert;align-items:revert;position:revert;display:revert;height:revert;padding:revert;padding-top:revert}.page>#quartz-body .sidebar.right{grid-area:revert;margin-right:revert;flex-direction:revert;margin-left:revert;position:revert;height:revert;width:revert;padding:revert}.page>#quartz-body .page-header{margin-top:revert;grid-area:revert;margin:revert;padding:revert}.page>#quartz-body .page-footer{margin-top:revert}.page>#quartz-body .center>article{grid-area:revert}.page>#quartz-body footer{grid-area:revert;max-width:revert;min-width:revert;margin-left:revert;margin-right:revert}.page>#quartz-body .center{max-width:revert;min-width:revert;margin-left:revert;margin-right:revert}blockquote{margin:revert;border-left:revert;padding-left:revert;transition:revert}h1,h2{color:revert;font-family:revert;font-weight:revert;margin-bottom:revert;font-size:revert;margin-top:revert}h3,h4,h5,h6,thead{color:revert;font-family:revert;font-weight:revert;margin-bottom:revert}article>h1>a[role=anchor],article>h2>a[role=anchor],article>h3>a[role=anchor],article>h4>a[role=anchor],article>h5>a[role=anchor],article>h6>a[role=anchor],article>thead>a[role=anchor]{color:inherit;background-color:revert}h1[id]>a[href^=\#],h2[id]>a[href^=\#],h3[id]>a[href^=\#],h4[id]>a[href^=\#],h5[id]>a[href^=\#],h6[id]>a[href^=\#]{margin:revert;opacity:revert;transform:revert;user-select:revert;font-family:revert;transition:revert}h1[id]:hover>a,h2[id]:hover>a,h3[id]:hover>a,h4[id]:hover>a,h5[id]:hover>a,h6[id]:hover>a{opacity:revert}h1:not([id])>a[role=anchor],h2:not([id])>a[role=anchor],h3:not([id])>a[role=anchor],h4:not([id])>a[role=anchor],h5:not([id])>a[role=anchor],h6:not([id])>a[role=anchor]{display:revert}tbody{line-height:revert}img{max-width:revert;border-radius:revert;margin:revert;content-visibility:revert}hr{width:revert;margin:revert;height:revert;border:revert;background-color:revert}ul.overflow,ol.overflow{max-height:revert;overflow-y:revert;width:revert;margin-bottom:revert;content:revert;clear:revert}ul.overflow>li.overflow-end,ol.overflow>li.overflow-end{height:revert;margin:revert}ul.overflow.gradient-active,ol.overflow.gradient-active{-webkit-mask-image:revert;mask-image:revert}.transclude ul{padding-left:revert}.backlinks>ul.overflow{list-style:revert;padding:revert;margin:revert;max-height:revert;overscroll-behavior:revert}.backlinks>ul.overflow>li>a{background-color:revert}.breadcrumb-element p{margin:revert;margin-left:revert;padding:revert;line-height:revert}.clipboard-button>svg{fill:revert;filter:revert}.darkmode svg{position:revert;width:revert;height:revert;top:revert;fill:revert;transition:revert}.page>#quartz-body .sidebar.left:has(.explorer){box-sizing:border-box;position:revert;background-color:revert;padding:revert;margin:revert}.explorer svg{pointer-events:revert;transition:revert}button.mobile-explorer h2,button.desktop-explorer h2{font-size:revert;display:revert;margin:revert}.explorer-content ul{list-style:revert;margin:revert;padding:revert}.explorer-content ul.explorer-ul{overscroll-behavior:revert}.explorer-content ul li>a{color:inherit;opacity:revert;pointer-events:revert}.explorer-content ul li>a.active{opacity:revert;color:inherit}.explorer-content .folder-outer>ul{overflow:revert;margin-left:revert;padding-left:revert;border-left:revert}.folder-container div>a{color:inherit;font-family:revert;font-size:revert;font-weight:revert;line-height:revert;display:revert}.folder-container div>a:hover{color:inherit}.folder-container div>button span{font-size:revert;display:revert;color:revert;font-weight:revert;margin:revert;line-height:revert;pointer-events:revert}li:has(>.folder-outer:not(.open))>.folder-container>svg{transform:revert}footer{text-align:revert;margin-bottom:revert;opacity:revert}footer ul{list-style:revert;margin:revert;padding:revert;display:revert;flex-direction:revert;gap:revert;margin-top:revert}details.toc ul{list-style:revert;margin:revert;padding:revert}ul.section-ul{list-style:revert;margin-top:revert;padding-left:revert}li.section-li{margin-bottom:revert}li.section-li>.section>.desc>h3>a{background-color:revert}.expand-button>svg{fill:revert;filter:revert}#mermaid-container>#mermaid-space>.mermaid-content svg{max-width:revert;height:revert}.popover>.popover-inner[data-content-type][data-content-type*=image] img{margin:revert;border-radius:revert;display:revert}.popover h1{font-size:revert}.readermode svg{position:revert;width:revert;height:revert;top:revert;fill:revert;stroke:revert;transition:revert}:root[reader-mode=on] .sidebar.left,:root[reader-mode=on] .sidebar.right{opacity:revert;transition:revert}:root[reader-mode=on] .sidebar.left:hover,:root[reader-mode=on] .sidebar.right:hover{opacity:revert}.recent-notes>ul.recent-ul{list-style:revert;margin-top:revert;padding-left:revert}.recent-notes>ul.recent-ul>li{margin:revert}.recent-notes>ul.recent-ul>li .section>.desc>h3>a{background-color:revert}.search>.search-button>p{display:revert;color:revert;text-wrap:revert}.search>.search-button svg{cursor:revert;width:revert;min-width:revert;margin:revert}.search>.search-container>.search-space>.search-layout[data-preview] .result-card>p.preview{display:revert}.search>.search-container>.search-space>.search-layout>.preview-container a[role=anchor]{background-color:revert}.search>.search-container>.search-space>.search-layout>.results-container .result-card>p.card-description{display:revert}.search>.search-container>.search-space>.search-layout>.results-container .result-card>ul.tags{margin-top:revert;margin-bottom:revert}.search>.search-container>.search-space>.search-layout>.results-container .result-card>ul>li>p{border-radius:revert;background-color:revert;padding:revert;margin:revert;line-height:revert;font-weight:revert;color:revert}.search>.search-container>.search-space>.search-layout>.results-container .result-card>ul>li>p.match-tag{color:revert}.search>.search-container>.search-space>.search-layout>.results-container .result-card>p{margin-bottom:revert}ul.toc-content.overflow{list-style:revert;position:revert;margin:revert;padding:revert;max-height:revert;overscroll-behavior:revert}ul.toc-content.overflow>li>a{color:inherit;opacity:revert;transition:revert}ul.toc-content.overflow>li>a.in-view{opacity:revert}header{display:revert;flex-direction:revert;align-items:revert;margin:revert;gap:revert}header h1{margin:revert;flex:revert}.tags>li{display:revert;white-space:revert;margin:revert;overflow-wrap:revert}a.internal.tag-link{border-radius:revert;background-color:revert;padding:revert;margin:revert}article>h1>a[role=anchor],article>h2>a[role=anchor],article>h3>a[role=anchor],article>h4>a[role=anchor],article>h5>a[role=anchor],article>h6>a[role=anchor],article>thead>a[role=anchor],h1[id]>a[href^=\#],h2[id]>a[href^=\#],h3[id]>a[href^=\#],h4[id]>a[href^=\#],h5[id]>a[href^=\#],h6[id]>a[href^=\#],h1:not([id])>a[role=anchor],h2:not([id])>a[role=anchor],h3:not([id])>a[role=anchor],h4:not([id])>a[role=anchor],h5:not([id])>a[role=anchor],h6:not([id])>a[role=anchor],.search>.search-container>.search-space>.search-layout>.preview-container a[role=anchor]{display:none}.l3-yaml-outer{display:revert}.l3-article-header{max-width:revert}.l3-explorer{position:revert;top:revert;height:revert;overflow-y:revert;padding:revert;display:revert}.l3-footer{background:revert;color:revert}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}body a:hover,body a:hover *{color:#2f6b3d!important}.l3-drawer::-webkit-scrollbar{width:8px;height:8px}.page>#quartz-body>.left.sidebar::-webkit-scrollbar{width:8px;height:8px}.page>#quartz-body>.right.sidebar::-webkit-scrollbar{width:8px;height:8px}.l3-drawer::-webkit-scrollbar-thumb{background:#c4cacf}.page>#quartz-body>.left.sidebar::-webkit-scrollbar-thumb{background:#c4cacf}.page>#quartz-body>.right.sidebar::-webkit-scrollbar-thumb{background:#c4cacf}.l3-drawer::-webkit-scrollbar-track{background:0 0}.page>#quartz-body>.left.sidebar::-webkit-scrollbar-track{background:0 0}.page>#quartz-body>.right.sidebar::-webkit-scrollbar-track{background:0 0}@media (max-width:1200px){.page>#quartz-body{grid-template-columns:262px minmax(0,1fr)!important}.page>#quartz-body>.right.sidebar{display:none!important}}@media (max-width:800px){.page>#quartz-body{grid-template-columns:minmax(0,1fr)!important}.page>#quartz-body>.left.sidebar{display:none!important}}@media (max-width:1200px){.l3-graph{display:none!important}.l3-sharecite{padding-bottom:64px!important}.l3-footer__inner{padding-right:24px!important}}@media (max-width:800px){.l3-nav{display:none!important}.l3-drawer-bar{display:flex!important}.l3-footer__inner{white-space:normal!important;flex-wrap:wrap!important;row-gap:8px!important}}@media (min-width:801px){.l3-drawer-bar{display:none!important}}body{color:#101317;background-color:#f4f5f6;background-image:linear-gradient(90deg,#1013170e 1px,#0000 1px),linear-gradient(#1013170e 1px,#0000 1px);background-size:28px 28px;font-family:Archivo,sans-serif}.l3-nav{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f4f5f6f0;border-bottom:1px solid #d6dade;align-items:center;gap:20px;height:56px;padding:0 24px;display:flex}.l3-nav__mark{flex:none;align-items:center;gap:12px;display:flex}.l3-nav__cell{letter-spacing:-.05em;border:1.4px solid #101317;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:900;display:flex;position:relative}.l3-nav__cell:after{content:"";background:#3e8a4f;width:6px;height:6px;position:absolute;top:-3px;left:-3px}.l3-nav__mark>span:last-child{letter-spacing:-.01em;font-size:15px;font-weight:800}.l3-nav__domain{color:#3e8a4f}.l3-nav__links{align-items:center;gap:2px;min-width:0;display:flex;overflow:hidden}.l3-nav__links>*{flex:none;display:flex}.l3-nav__links a{white-space:nowrap;letter-spacing:.1em;text-transform:uppercase;color:#6e757f;border-bottom:2px solid #0000;flex:none;padding:8px 11px;font-family:JetBrains Mono,monospace;font-size:10.5px}.l3-nav__links a:hover,.l3-nav__links a:hover *{color:#3e8a4f}.l3-nav__links a[aria-current=page]{white-space:nowrap;letter-spacing:.1em;text-transform:uppercase;color:#101317;border-bottom:2px solid #3e8a4f;flex:none;padding:8px 11px;font-family:JetBrains Mono,monospace;font-size:10.5px}.l3-nav__spacer{flex:1}.l3-nav__git{white-space:nowrap;letter-spacing:.1em;color:#101317;border:1px solid #101317;flex:none;align-items:center;gap:8px;padding:6px 12px;font-family:JetBrains Mono,monospace;font-size:10.5px;display:flex}.l3-nav__git:hover{color:#edeff1;background:#101317}.l3-nav__git:hover *{color:#edeff1}.l3-nav__git img,.l3-nav__git svg{width:14px;height:14px}.l3-drawer-bar{background:#fff;border-bottom:1px solid #d6dade;align-items:center;gap:12px;height:56px;padding:0 16px;display:none}.l3-drawer-bar__mark{flex:none;align-items:center;gap:12px;display:flex}.l3-drawer-bar__cell{letter-spacing:-.05em;border:1.4px solid #101317;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:900;display:flex;position:relative}.l3-drawer-bar__cell:after{content:"";background:#3e8a4f;width:6px;height:6px;position:absolute;top:-3px;left:-3px}.l3-drawer-bar__mark>span:last-child{letter-spacing:-.01em;font-size:15px;font-weight:800}.l3-drawer-bar__domain{color:#3e8a4f}.l3-drawer-bar__spacer{flex:1}.l3-drawer__toggle{appearance:none;font:inherit;color:#101317;text-align:inherit;line-height:inherit;cursor:pointer;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;width:40px;height:40px;margin:0;padding:0;display:flex}.l3-drawer__toggle:hover,.l3-drawer__toggle:hover *{color:#3e8a4f}.l3-drawer__toggle>span:first-child,.l3-drawer__toggle>span:nth-child(2),.l3-drawer__toggle>span:nth-child(3){background:currentColor;width:18px;height:1.4px;display:block}.l3-drawer{z-index:40;background:#fff;padding:24px;position:fixed;inset:56px 0 0;overflow-y:auto}.l3-drawer__nav{flex-direction:column;display:flex}.l3-drawer__item{border-bottom:1px solid #d6dade;display:block}.l3-drawer__item a{letter-spacing:.1em;text-transform:uppercase;color:#6e757f;padding:12px 0;font-family:JetBrains Mono,monospace;font-size:10.5px;display:block}.l3-drawer__item a:hover,.l3-drawer__item a:hover *{color:#3e8a4f}.l3-drawer__item a[aria-current=page]{letter-spacing:.1em;text-transform:uppercase;color:#101317;padding:12px 0;font-family:JetBrains Mono,monospace;font-size:10.5px;display:block}.l3-drawer__tree{border-top:1px solid #d6dade;margin-top:24px;padding-top:24px}.l3-drawer__tree .l3-explorer__label{letter-spacing:.14em;color:#6e757f;padding:0 20px 12px;font-family:JetBrains Mono,monospace;font-size:9px}.l3-drawer__tree .l3-folder{margin-bottom:8px}.l3-drawer__tree .l3-folder__row{cursor:pointer;align-items:center;gap:9px;padding:8px 20px;display:flex}.l3-drawer__tree .l3-folder__caret{color:#aeb4bc;width:8px;font-family:JetBrains Mono,monospace;font-size:9px}.l3-drawer__tree .l3-folder__name{letter-spacing:.12em;text-transform:uppercase;color:#3a3f45;flex:1;font-family:JetBrains Mono,monospace;font-size:10px}.l3-drawer__tree .l3-folder__count{color:#aeb4bc;font-family:JetBrains Mono,monospace;font-size:9px}.l3-drawer__tree .l3-file{color:#3a3f45;border-left:2px solid #0000;margin-left:20px;padding:6px 12px 6px 18px;font-size:13px;line-height:1.5;display:block}.l3-drawer__tree .l3-file:hover{color:#101317;background:#e3e6e9}.l3-drawer__tree .l3-file:hover *{color:#101317}.l3-drawer__tree .l3-file.l3-file--active{color:#101317;background:#3e8a4f14;border-left:2px solid #3e8a4f;margin-left:20px;padding:6px 12px 6px 18px;font-size:13px;font-weight:500;line-height:1.5;display:block}.page>#quartz-body{grid-template-columns:262px minmax(0,1fr) auto;align-items:start;display:grid}.page>#quartz-body>.left.sidebar{height:calc(100vh - 56px);padding:22px 0 40px;position:sticky;top:56px;overflow-y:auto}.l3-explorer__label{letter-spacing:.14em;color:#6e757f;padding:0 20px 12px;font-family:JetBrains Mono,monospace;font-size:9px}.l3-folder{margin-bottom:8px}.l3-folder__row{cursor:pointer;align-items:center;gap:9px;padding:8px 20px;display:flex}.l3-folder__caret{color:#aeb4bc;width:8px;font-family:JetBrains Mono,monospace;font-size:9px}.l3-folder__name{letter-spacing:.12em;text-transform:uppercase;color:#3a3f45;flex:1;font-family:JetBrains Mono,monospace;font-size:10px}.l3-folder__count{color:#aeb4bc;font-family:JetBrains Mono,monospace;font-size:9px}.l3-file{color:#3a3f45;border-left:2px solid #0000;margin-left:20px;padding:6px 12px 6px 18px;font-size:13px;line-height:1.5;display:block}.l3-file:hover{color:#101317;background:#e3e6e9}.l3-file:hover *{color:#101317}.l3-file.l3-file--active{color:#101317;background:#3e8a4f14;border-left:2px solid #3e8a4f;margin-left:20px;padding:6px 12px 6px 18px;font-size:13px;font-weight:500;line-height:1.5;display:block}.page>#quartz-body>.center{background:#fff;border-left:1px solid #d6dade;border-right:1px solid #d6dade;min-height:calc(100vh - 56px)}.center>article.l3-home{max-width:812px;padding:60px 52px 72px}.l3-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:#2f6b3d;background:#3e8a4f14;border:1px solid #3e8a4f;align-items:center;gap:10px;padding:6px 12px;font-family:JetBrains Mono,monospace;font-size:11px;display:inline-flex}.l3-eyebrow:before{content:"";background:#3e8a4f;width:6px;height:6px}.center>article>h1:not(.l3-eyebrow *):not(.l3-cards *):not(.l3-crumbs *):not(.l3-note-title *):not(.l3-tagrow *):not(.l3-tagchip *){letter-spacing:-.035em;text-wrap:balance;max-width:15ch;margin:24px 0 0;font-size:clamp(34px,5.2vw,60px);font-weight:900;line-height:.98}.center>article>h1+p:not(.l3-eyebrow *):not(.l3-cards *):not(.l3-crumbs *):not(.l3-note-title *):not(.l3-tagrow *):not(.l3-tagchip *){color:#3a3f45;max-width:58ch;margin:26px 0 0;font-size:18px;line-height:1.55}.l3-cards{background:#d6dade;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;margin-top:36px;display:grid}.page .center>article .l3-cards li{background:#fff;border-left:2px solid #0000;margin:0;padding:24px;list-style:none;display:block}.page .center>article .l3-cards li:hover{background:#f4f5f6;border-left-color:#3e8a4f}.page .center>article .l3-cards li{color:#3a3f45;font-size:14px;line-height:1.6}.page .center>article .l3-cards li>a{color:#101317;letter-spacing:-.01em;font-size:19px;font-weight:700;text-decoration:none;display:block}.center>article:not(.l3-home){max-width:812px}.l3-crumbs{letter-spacing:.14em;text-transform:uppercase;color:#aeb4bc;font-family:JetBrains Mono,monospace;font-size:10px}.l3-note-title{letter-spacing:-.035em;margin:14px 0 12px;font-size:clamp(30px,3.4vw,40px);font-weight:900;line-height:1.04}.l3-tagrow{border-bottom:1px solid #d6dade;flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:20px;display:flex}.l3-tagchip{white-space:nowrap;letter-spacing:.1em;text-transform:uppercase;color:#2f6b3d;background:#3e8a4f14;border:1px solid #3e8a4f;flex:none;padding:4px 9px;font-family:JetBrains Mono,monospace;font-size:9.5px}.center>article>p:first-of-type:not(.l3-eyebrow *):not(.l3-cards *):not(.l3-crumbs *):not(.l3-note-title *):not(.l3-tagrow *):not(.l3-tagchip *){color:#3a3f45;margin:26px 0 0;font-size:16px;line-height:1.6}.center>article p:not(.l3-eyebrow *):not(.l3-cards *):not(.l3-crumbs *):not(.l3-note-title *):not(.l3-tagrow *):not(.l3-tagchip *){color:#3a3f45;margin:18px 0 0;font-size:16px;line-height:1.6}.center>article blockquote:not(.l3-eyebrow *):not(.l3-cards *):not(.l3-crumbs *):not(.l3-note-title *):not(.l3-tagrow *):not(.l3-tagchip *){color:#101317;background:#f4f5f6;border:1px solid #d6dade;border-left:2px solid #3e8a4f;margin:24px 0 0;padding:14px 18px;font-size:15px;line-height:1.6}.center>article h2:not(.l3-eyebrow *):not(.l3-cards *):not(.l3-crumbs *):not(.l3-note-title *):not(.l3-tagrow *):not(.l3-tagchip *){letter-spacing:-.02em;border-top:1px solid #d6dade;margin:40px 0 12px;padding-top:20px;font-size:24px;font-weight:800}.center>article ul:not(.l3-eyebrow *):not(.l3-cards *):not(.l3-crumbs *):not(.l3-note-title *):not(.l3-tagrow *):not(.l3-tagchip *){margin:0;padding-left:20px}.center>article li:not(.l3-eyebrow *):not(.l3-cards *):not(.l3-crumbs *):not(.l3-note-title *):not(.l3-tagrow *):not(.l3-tagchip *){color:#3a3f45;font-size:16px;line-height:1.8}.center>article a:not(.l3-eyebrow *):not(.l3-cards *):not(.l3-crumbs *):not(.l3-note-title *):not(.l3-tagrow *):not(.l3-tagchip *){color:#2f6b3d;border-bottom:1px solid #3e8a4f33}.center>article a:not(.l3-eyebrow *):not(.l3-cards *):not(.l3-crumbs *):not(.l3-note-title *):not(.l3-tagrow *):not(.l3-tagchip *):hover{border-bottom-color:#3e8a4f}.l3-sharecite{border-top:1px solid #d6dade;max-width:820px;margin:12px 0 0;padding:22px 52px 300px}.l3-sharecite__row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.l3-sharecite__row:nth-of-type(2){align-items:center;gap:10px;margin-top:20px;display:flex}.l3-sharecite__label{letter-spacing:.14em;color:#6e757f;margin-right:4px;font-family:JetBrains Mono,monospace;font-size:9px}.l3-sharecite__btn{white-space:nowrap;letter-spacing:.1em;color:#101317;border:1px solid #c4cacf;flex:none;align-items:center;gap:7px;padding:6px 10px;font-family:JetBrains Mono,monospace;font-size:9.5px;display:inline-flex}.l3-sharecite__btn:hover{color:#edeff1;background:#101317;border-color:#101317}.l3-sharecite__btn:hover *{color:#edeff1}.l3-sharecite__btn img,.l3-sharecite__btn svg{opacity:.85;width:13px;height:13px}.l3-sharecite__btn.l3-sharecite__btn--accent{appearance:none;font:inherit;color:#2f6b3d;text-align:inherit;line-height:inherit;cursor:pointer;white-space:nowrap;letter-spacing:.1em;cursor:pointer;background:#3e8a4f14;border:1px solid #3e8a4f;flex:none;align-items:center;gap:7px;margin:0;padding:6px 10px;font-family:JetBrains Mono,monospace;font-size:9.5px;display:inline-flex}.l3-sharecite__btn.l3-sharecite__btn--accent:hover{color:#edeff1;background:#3e8a4f}.l3-sharecite__btn.l3-sharecite__btn--accent:hover *{color:#edeff1}.l3-sharecite__tab{appearance:none;font:inherit;color:#6e757f;text-align:inherit;line-height:inherit;cursor:pointer;letter-spacing:.1em;cursor:pointer;background:0 0;border:1px solid #c4cacf;margin:0;padding:6px 12px;font-family:JetBrains Mono,monospace;font-size:9.5px;display:inline-block}.l3-sharecite__tab:hover{color:#101317;border-color:#101317}.l3-sharecite__tab:hover *{color:#101317}.l3-sharecite__tab[aria-pressed=true]{appearance:none;font:inherit;color:#edeff1;text-align:inherit;line-height:inherit;cursor:pointer;letter-spacing:.1em;cursor:pointer;background:#101317;border:1px solid #101317;margin:0;padding:6px 12px;font-family:JetBrains Mono,monospace;font-size:9.5px;display:inline-block}.l3-sharecite__out{background:#f4f5f6;border:1px solid #d6dade;align-items:flex-start;gap:16px;margin-top:10px;padding:14px 16px;display:flex}.l3-sharecite__text{color:#101317;word-break:break-word;flex:1;min-width:0;font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.7}.l3-sharecite__copy{appearance:none;font:inherit;color:#6e757f;text-align:inherit;line-height:inherit;cursor:pointer;letter-spacing:.1em;cursor:pointer;white-space:nowrap;background:0 0;border:0;flex:none;margin:0;padding:0;font-family:JetBrains Mono,monospace;font-size:9.5px}.l3-sharecite__copy:hover,.l3-sharecite__copy:hover *{color:#3e8a4f}.page>#quartz-body>.right.sidebar{width:320px;height:calc(100vh - 56px);padding:26px 24px 40px;position:sticky;top:56px;overflow-y:auto}.l3-yaml{background:#f4f5f6;border:1px solid #d6dade;padding:12px 14px}.l3-yaml__fence{letter-spacing:.06em;color:#aeb4bc;margin-bottom:6px;font-family:JetBrains Mono,monospace;font-size:10px}.l3-yaml__row{gap:6px;font-family:JetBrains Mono,monospace;font-size:11px;line-height:1.7;display:flex}.l3-yaml__key{color:#6e757f;white-space:nowrap}.l3-yaml__val{color:#101317;word-break:break-word;min-width:0}.l3-toc__label{letter-spacing:.14em;color:#6e757f;margin:28px 0 8px;font-family:JetBrains Mono,monospace;font-size:9px}.l3-toc__list{flex-direction:column;gap:6px;display:flex}.l3-toc__link{color:#6e757f;font-size:13px;line-height:1.5;text-decoration:none}.l3-toc__link:first-child{color:#101317;font-size:13px;font-weight:500;line-height:1.5;text-decoration:none}.l3-backlinks__label{letter-spacing:.14em;color:#6e757f;margin:28px 0 8px;font-family:JetBrains Mono,monospace;font-size:9px}.l3-backlinks__list{flex-direction:column;gap:6px;display:flex}.l3-backlinks__link{color:#6e757f;font-size:13px;line-height:1.5}.l3-backlinks__link:hover,.l3-backlinks__link:hover *{color:#3e8a4f}.l3-graph{z-index:25;width:286px;position:fixed;bottom:24px;right:24px}.l3-graph__strip{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f4f5f6f0;border:1px solid #d6dade;border-bottom:0;justify-content:space-between;align-items:baseline;padding:6px 10px;display:flex}.l3-graph__label{letter-spacing:.14em;color:#6e757f;font-family:JetBrains Mono,monospace;font-size:9px}.l3-graph__expand{appearance:none;font:inherit;color:#6e757f;text-align:inherit;line-height:inherit;cursor:pointer;letter-spacing:.1em;cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-family:JetBrains Mono,monospace;font-size:9px}.l3-graph__expand:hover,.l3-graph__expand:hover *{color:#3e8a4f}.l3-graph__frame{background-color:#fff;background-image:linear-gradient(90deg,#1013170d 1px,#0000 1px),linear-gradient(#1013170d 1px,#0000 1px);background-size:18px 18px;border:1px solid #d6dade;height:214px;position:relative;overflow:hidden;box-shadow:0 8px 24px #1013171a}.l3-graph__frame .graph-container{width:100%;height:100%;display:block;position:absolute;inset:0}.l3-graph-overlay{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#1013176b;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.l3-graph-overlay__panel{background-color:#fff;background-image:linear-gradient(90deg,#1013170d 1px,#0000 1px),linear-gradient(#1013170d 1px,#0000 1px);background-size:28px 28px;border:1.5px solid #101317;width:min(1000px,86vw);height:min(660px,82vh);position:relative}.l3-graph-overlay__panel .graph-container{width:100%;height:100%;display:block;position:absolute;inset:0}.l3-graph-overlay__label{letter-spacing:.14em;color:#6e757f;font-family:JetBrains Mono,monospace;font-size:9px;position:absolute;top:12px;left:14px}.l3-graph-overlay__close{appearance:none;font:inherit;color:#6e757f;text-align:inherit;line-height:inherit;cursor:pointer;letter-spacing:.1em;cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-family:JetBrains Mono,monospace;font-size:9.5px;position:absolute;top:10px;right:12px}.l3-graph-overlay__close:hover,.l3-graph-overlay__close:hover *{color:#3e8a4f}.page>#quartz-body>.l3-footer{color:#edeff1;background:#101317}.l3-footer__inner{white-space:nowrap;letter-spacing:.08em;justify-content:space-between;align-items:center;gap:24px;padding:40px 334px 40px 24px;font-family:JetBrains Mono,monospace;font-size:10.5px;display:flex}.l3-footer__links{color:#8b919a}.l3-nav{box-sizing:border-box;z-index:30;width:100%;position:fixed;top:0;left:0;right:0}.page>#quartz-body>.center>.page-header{background:0 0;border:0;max-width:none;margin:0;padding:0;display:block}.page>#quartz-body>.center>.page-header>header{background:0 0;border:0;max-width:none;height:0;min-height:0;margin:0;padding:0;display:block}.l3-drawer-bar{box-sizing:border-box;z-index:35;width:100%;position:fixed;top:0;left:0;right:0}.l3-drawer{max-width:none;margin:0}.l3-drawer[data-open="0"]{display:none}.l3-drawer[data-open="1"]{display:block}@media (min-width:801px){.l3-drawer{display:none!important}}.page>#quartz-body{box-sizing:border-box;gap:0;width:100%;max-width:none;margin:0;padding-top:56px}.page>#quartz-body>.left.sidebar,.page>#quartz-body>.center,.page>#quartz-body>.right.sidebar{grid-area:auto;min-width:0}.l3-article-header--note{max-width:812px;margin:0;padding:44px 52px 0}.center>article:not(.l3-home){padding:0 52px 72px}.center>article:not(.l3-home) img,.center>article:not(.l3-home) video,.center>article:not(.l3-home) iframe,.center>article:not(.l3-home) canvas,.center>article:not(.l3-home) svg:not(.l3-cards svg){max-width:100%;height:auto}.center>article:not(.l3-home) pre,.center>article:not(.l3-home) table,.center>article:not(.l3-home) .table-container{min-width:0;max-width:100%;overflow-x:auto}.center>article:not(.l3-home) :not(pre)>code,.center>article:not(.l3-home) a{overflow-wrap:anywhere}.center>article.l3-home{min-width:0}.center>article.l3-home img,.center>article.l3-home video,.center>article.l3-home iframe,.center>article.l3-home canvas,.center>article.l3-home svg:not(.l3-cards svg){max-width:100%;height:auto}.center>article.l3-home pre,.center>article.l3-home table,.center>article.l3-home .table-container{min-width:0;max-width:100%;overflow-x:auto}.center>article.l3-home :not(pre)>code,.center>article.l3-home a{overflow-wrap:anywhere}.center>article.l3-home>p:first-child{margin:0;display:contents}.page .center>article .l3-cards>ul{margin:0;padding:0;list-style:none;display:contents}.page>#quartz-body>.center>hr{display:none}.page>#quartz-body>.center>.page-footer{border:0;max-width:none;margin:0;padding:0}.l3-graph,.l3-graph-overlay{margin:0}.page>#quartz-body>.l3-footer{grid-column:1/-1;width:100%;max-width:none;margin:0}@media (max-width:1200px){.page>#quartz-body{grid-template-columns:262px minmax(0,1fr)!important}.page>#quartz-body>.right.sidebar{display:none!important}}@media (max-width:800px){.page>#quartz-body{grid-template-columns:minmax(0,1fr)!important}.page>#quartz-body>.left.sidebar{display:none!important}}@media (max-width:1200px){.l3-graph{display:none!important}.l3-sharecite{padding-bottom:64px!important}.l3-footer__inner{padding-right:24px!important}}@media (max-width:800px){.l3-nav{display:none!important}.l3-drawer-bar{display:flex!important}.l3-footer__inner{white-space:normal!important;flex-wrap:wrap!important;row-gap:8px!important}}@media (min-width:801px){.l3-drawer-bar{display:none!important}}:root{--light:#f4f5f6;--lightgray:#d6dade;--gray:#aeb4bc;--darkgray:#3a3f45;--dark:undefined;--secondary:#3e8a4f;--tertiary:#2f6b3d;--highlight:#3e8a4f14;--textHighlight:#3e8a4f40;--titleFont:"Archivo", system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--headerFont:"Archivo", system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--bodyFont:"Archivo", system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--codeFont:"JetBrains Mono", ui-monospace, SFMono-Regular, SF Mono, Menlo, monospace}:root[saved-theme=dark]{--light:#101317;--lightgray:#2a2f35;--gray:#6e757f;--darkgray:#c4cacf;--dark:undefined;--secondary:#3e8a4f;--tertiary:#57a86a;--highlight:#3e8a4f1a;--textHighlight:#3e8a4f4d}