@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(../media/inter-cyrillic-ext-400-normal.3vm4r-qr3_yee.woff2)format("woff2"),url(../media/inter-cyrillic-ext-400-normal.2e4vdgi7dy-n4.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(../media/inter-cyrillic-400-normal.1nwx-p2ngx2yg.woff2)format("woff2"),url(../media/inter-cyrillic-400-normal.2jms6gqb5gbhf.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(../media/inter-greek-ext-400-normal.2gr4b827yb2_q.woff2)format("woff2"),url(../media/inter-greek-ext-400-normal.38g6916w0wpxs.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(../media/inter-greek-400-normal.402ep76-j03q8.woff2)format("woff2"),url(../media/inter-greek-400-normal.2x8hqgpakc599.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(../media/inter-vietnamese-400-normal.1sl-kw9vnef9y.woff2)format("woff2"),url(../media/inter-vietnamese-400-normal.3206qgbkgsfc6.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(../media/inter-latin-ext-400-normal.1aowtwjb6jex7.woff2)format("woff2"),url(../media/inter-latin-ext-400-normal.0zt1v0rj9tqox.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(../media/inter-latin-400-normal.2qdljeg3s-lsl.woff2)format("woff2"),url(../media/inter-latin-400-normal.102grxki9ek3x.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(../media/inter-cyrillic-ext-500-normal.451fj7ly9889_.woff2)format("woff2"),url(../media/inter-cyrillic-ext-500-normal.0_c2ylqj08xb6.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(../media/inter-cyrillic-500-normal.3zacfqz4x1vrc.woff2)format("woff2"),url(../media/inter-cyrillic-500-normal.05wrgophr2f13.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(../media/inter-greek-ext-500-normal.3k6j2t6znom4a.woff2)format("woff2"),url(../media/inter-greek-ext-500-normal.3qwacgs2d7zx0.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(../media/inter-greek-500-normal.2ofy8orayc7fk.woff2)format("woff2"),url(../media/inter-greek-500-normal.2irgx7vnqhmdq.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(../media/inter-vietnamese-500-normal.1csmxjt29l4d6.woff2)format("woff2"),url(../media/inter-vietnamese-500-normal.315hfdijg963m.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(../media/inter-latin-ext-500-normal.0qn8fxo3_-rz7.woff2)format("woff2"),url(../media/inter-latin-ext-500-normal.39_ak3tg9vcce.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(../media/inter-latin-500-normal.1d14jwmkqqa0f.woff2)format("woff2"),url(../media/inter-latin-500-normal.3mx_ru0c2nzc3.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/inter-cyrillic-ext-600-normal.341-hvs74ljp4.woff2)format("woff2"),url(../media/inter-cyrillic-ext-600-normal.1of5i9-_e5ga4.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/inter-cyrillic-600-normal.0tppy39gl-lzn.woff2)format("woff2"),url(../media/inter-cyrillic-600-normal.3jalm3505289h.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/inter-greek-ext-600-normal.20m9kgz843wth.woff2)format("woff2"),url(../media/inter-greek-ext-600-normal.3vzrk1-4zat7v.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/inter-greek-600-normal.2ove9n9b8_3hb.woff2)format("woff2"),url(../media/inter-greek-600-normal.3aakp9m92tg2m.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/inter-vietnamese-600-normal.0m_wd36g8rw-r.woff2)format("woff2"),url(../media/inter-vietnamese-600-normal.0dwa77f5pp57q.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/inter-latin-ext-600-normal.1zn8rwi8y9u6i.woff2)format("woff2"),url(../media/inter-latin-ext-600-normal.1pfmybho54-ry.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(../media/inter-latin-600-normal.2dov6rjg62vru.woff2)format("woff2"),url(../media/inter-latin-600-normal.2mum3nstrlzrd.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(../media/inter-cyrillic-ext-700-normal.3ckkpi--x2os1.woff2)format("woff2"),url(../media/inter-cyrillic-ext-700-normal.3dxmsbxujhx46.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(../media/inter-cyrillic-700-normal.0gg1d0-0b9ut0.woff2)format("woff2"),url(../media/inter-cyrillic-700-normal.2axi65e8cn602.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(../media/inter-greek-ext-700-normal.24op6t-yeckl-.woff2)format("woff2"),url(../media/inter-greek-ext-700-normal.0u773jmkidix4.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(../media/inter-greek-700-normal.3vfem_i2rj42n.woff2)format("woff2"),url(../media/inter-greek-700-normal.3q6n5k1zguxil.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(../media/inter-vietnamese-700-normal.0b-htgf_q_fie.woff2)format("woff2"),url(../media/inter-vietnamese-700-normal.2c7g6fvsrqi3p.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(../media/inter-latin-ext-700-normal.2yxivqwrhow2d.woff2)format("woff2"),url(../media/inter-latin-ext-700-normal.0g4_n0pq31d8c.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(../media/inter-latin-700-normal.4421omqeymgmp.woff2)format("woff2"),url(../media/inter-latin-700-normal.2u2w-uf8g45lc.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Noto Sans Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/noto-sans-mono-cyrillic-ext-400-normal.3p751eg93y6rp.woff2)format("woff2"),url(../media/noto-sans-mono-cyrillic-ext-400-normal.0ro1q6w8m00r9.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Noto Sans Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/noto-sans-mono-cyrillic-400-normal.1twsxxrp-2he9.woff2)format("woff2"),url(../media/noto-sans-mono-cyrillic-400-normal.36c1t_kzs00fo.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Noto Sans Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/noto-sans-mono-greek-ext-400-normal.2e5sajc6hb9h5.woff2)format("woff2"),url(../media/noto-sans-mono-greek-ext-400-normal.3rdza8m90fdz9.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Noto Sans Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/noto-sans-mono-greek-400-normal.3nli_yc6zh0d4.woff2)format("woff2"),url(../media/noto-sans-mono-greek-400-normal.0sz8c35l_nkie.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Noto Sans Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/noto-sans-mono-vietnamese-400-normal.1_-glx748eu13.woff2)format("woff2"),url(../media/noto-sans-mono-vietnamese-400-normal.2z1uc17r_9w25.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Noto Sans Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/noto-sans-mono-latin-ext-400-normal.3l-l4xwk4q3ss.woff2)format("woff2"),url(../media/noto-sans-mono-latin-ext-400-normal.15xd5w7xl6_u5.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Mono;font-style:normal;font-display:swap;font-weight:400;src:url(../media/noto-sans-mono-latin-400-normal.0tmwvkuud_0bm.woff2)format("woff2"),url(../media/noto-sans-mono-latin-400-normal.0bmfefr87qems.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Noto Sans;src:url(/assets/fonts/NotoSans-Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Noto Sans;src:url(/assets/fonts/NotoSans-Bold.ttf)format("truetype");font-style:normal;font-weight:700;font-display:swap}:root{--background:#07090d;--background-deep:#05070a;--surface:#0b0f15;--surface-raised:#0f141c;--surface-soft:#111720;--line:#1c2530;--line-soft:#141c25;--line-bright:#2a3745;--text:#d9e1e9;--text-strong:#f2f6f8;--muted:#7e8996;--dim:#525e6b;--green:#3ce887;--green-soft:#3ce8871a;--cyan:#72d8ee;--magenta:#cf5fd3;--warning:#e2c45a;--header-height:60px;--sidebar-width:276px;--toc-width:240px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 30px);background:var(--background)}body{background:radial-gradient(circle at 51% -20%, #38756714, transparent 38rem), var(--background);min-width:320px;min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:Noto Sans,system-ui,sans-serif;font-size:15px;overflow-x:hidden}body:before{z-index:-1;content:"";pointer-events:none;opacity:.23;background-image:linear-gradient(#7a97a707 1px,#0000 1px),linear-gradient(90deg,#7a97a707 1px,#0000 1px);background-size:64px 64px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 72%);mask-image:linear-gradient(#000,#0000 72%)}::selection{color:#fff;text-shadow:none;background:#176b45}a{color:inherit;text-decoration:none}button,input{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline-offset:2px;outline:2px solid #19ad5d94}svg{display:block}.docs-app{--navigation-width:var(--sidebar-width);min-height:100vh}.topbar{z-index:80;height:var(--header-height);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(20px)saturate(110%);background:#07090de0;align-items:center;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 10px 36px #0000002e}.topbar-brand{width:var(--navigation-width);border-right:1px solid var(--line-soft);flex:none;align-items:center;height:100%;padding:0 22px;display:flex}.brand-link{align-items:center;min-height:38px;display:inline-flex}.brand-word{color:var(--text-strong);letter-spacing:-.04em;white-space:nowrap;font-family:Noto Sans Mono,monospace;font-size:16px}.brand-word span{color:var(--green)}.brand-divider{background:var(--line-bright);width:1px;height:17px;margin:0 11px}.brand-context{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font:10px/1 Noto Sans Mono,monospace}.search-trigger{border:1px solid var(--line);width:min(440px,100vw - 780px);min-width:280px;height:36px;color:var(--muted);cursor:pointer;background:#0d1219e0;border-radius:7px;align-items:center;gap:10px;margin-left:30px;padding:0 10px 0 12px;transition:border-color .14s,background .14s,color .14s;display:flex}.search-trigger:hover{border-color:var(--line-bright);background:var(--surface-raised);color:var(--text)}.search-trigger svg,.search-field svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.6px;flex:none;width:16px;height:16px}.search-trigger span{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}kbd{border:1px solid var(--line-bright);min-width:36px;height:22px;color:var(--dim);background:#0a0e13;border-radius:4px;place-items:center;padding:0 6px;font:10px/1 Noto Sans Mono,monospace;display:inline-grid;box-shadow:inset 0 -1px #ffffff06}.top-links{align-items:center;gap:4px;height:100%;margin-left:auto;padding-right:20px;display:flex}.top-links a{min-height:34px;color:var(--muted);letter-spacing:.05em;text-transform:uppercase;border-radius:5px;align-items:center;gap:5px;padding:0 10px;font:10px/1 Noto Sans Mono,monospace;transition:color .14s,background .14s;display:inline-flex}.top-links svg{fill:none;stroke:currentColor;stroke-linecap:square;stroke-width:1.4px;width:13px;height:13px}.icon-button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:6px;place-items:center;width:36px;height:36px;padding:0;display:grid}.icon-button svg{fill:none;stroke:currentColor;stroke-linecap:square;stroke-width:1.5px;width:18px;height:18px}.mobile-menu-button,.sidebar-mobile-head{display:none}.sidebar{z-index:60;top:var(--header-height);width:var(--navigation-width);border-right:1px solid var(--line);scrollbar-color:#25303c transparent;scrollbar-width:thin;background:#080b10eb;padding:26px 15px 40px;position:fixed;bottom:0;left:0;overflow-y:auto}.documentation-nav{gap:23px;display:grid}.nav-group{margin:0}.nav-group-label{color:#66727e;letter-spacing:.11em;text-transform:uppercase;align-items:center;gap:9px;min-height:23px;padding:0 10px;font:9px/1 Noto Sans Mono,monospace;display:flex}.nav-group ul{margin:3px 0 0;padding:0;list-style:none;display:grid}.nav-group li{min-width:0}.nav-group a{color:#8d98a4;border-radius:5px;align-items:center;min-height:34px;padding:7px 10px 7px 29px;font-size:13px;line-height:1.35;transition:color .13s,background .13s;display:flex;position:relative}.nav-group a:before{content:"";background:#3e4a56;width:5px;height:1px;transition:width .13s,background .13s,box-shadow .13s;position:absolute;left:12px}.nav-group a.is-active{color:var(--text-strong);background:linear-gradient(90deg,#3ce88717,#3ce88705)}.nav-group a.is-active:before{background:var(--green);width:8px;box-shadow:0 0 10px #3ce88773}.sidebar-scrim{display:none}.main-column{min-width:0;min-height:100vh;margin-left:var(--navigation-width);margin-right:var(--toc-width);padding-top:var(--header-height)}.article-frame{width:min(900px,100%);margin:0 auto;padding:58px 62px 96px}.article-kicker{border-bottom:1px solid var(--line-soft);min-height:28px;color:var(--dim);letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:11px;margin-bottom:31px;padding-bottom:12px;font:9px/1.4 Noto Sans Mono,monospace;display:flex}.article-kicker span{color:var(--cyan)}.article-kicker span:after{content:"/";color:#394551;margin-left:11px}.article-kicker code{color:#65717d;font:inherit;text-overflow:ellipsis;text-transform:none;white-space:nowrap;overflow:hidden}.doc-article{color:#bdc7d0;font-size:15px;line-height:1.78}.doc-article>div>:first-child{margin-top:0}.doc-article h1,.doc-article h2,.doc-article h3,.doc-article h4{color:var(--text-strong);letter-spacing:-.025em;text-wrap:balance;font-weight:700}.doc-article h1{max-width:760px;margin:0 0 24px;font-size:clamp(36px,4vw,48px);line-height:1.08}.doc-article h2{margin:66px 0 19px;padding-top:6px;font-size:25px;line-height:1.22}.doc-article h2:before{content:"";background:var(--green);width:16px;height:2px;margin-bottom:13px;display:block;box-shadow:0 0 10px #3ce88740}.doc-article h3{margin:42px 0 14px;font-size:18px;line-height:1.32}.doc-article h4{margin:32px 0 12px;font-size:15px}.doc-article p{margin:0 0 20px}.doc-article h1+p strong{color:var(--green);letter-spacing:.035em;text-transform:uppercase;font-family:Noto Sans Mono,monospace;font-size:13px;font-weight:400}.doc-article strong{color:#edf2f5;font-weight:700}.doc-article a{color:var(--cyan);text-underline-offset:4px;-webkit-text-decoration:underline #72d8ee4d;text-decoration:underline #72d8ee4d;text-decoration-thickness:1px;transition:color .12s,text-decoration-color .12s}.doc-article a:hover{color:#a7ecfa;text-decoration-color:currentColor}.doc-article ul,.doc-article ol{margin:0 0 24px;padding-left:24px}.doc-article li{margin:7px 0;padding-left:5px}.doc-article li::marker{color:var(--green);font-family:Noto Sans Mono,monospace}.doc-article blockquote{border:1px solid var(--line);border-left:2px solid var(--green);color:#b4bec8;background:#0e141ba8;border-radius:0 7px 7px 0;margin:30px 0;padding:17px 20px}.doc-article blockquote p:last-child{margin-bottom:0}.doc-article :not(pre)>code{color:#a7ddec;overflow-wrap:anywhere;background:#72d8ee0e;border:1px solid #72d8ee1a;border-radius:4px;padding:2px 5px;font:.88em/1.5 Noto Sans Mono,monospace}.code-block{border:1px solid var(--line);background:var(--background-deep);border-radius:8px;margin:27px 0;overflow:hidden;box-shadow:0 12px 30px #00000021}.code-toolbar{border-bottom:1px solid var(--line-soft);height:35px;color:var(--dim);letter-spacing:.08em;text-transform:uppercase;background:#0c1117;align-items:center;padding:0 8px 0 13px;font:9px/1 Noto Sans Mono,monospace;display:flex}.code-toolbar:before{content:"";background:var(--green);opacity:.65;border-radius:50%;width:5px;height:5px;margin-right:8px}.code-toolbar button{color:#64717e;height:25px;font:inherit;letter-spacing:inherit;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:4px;margin-left:auto;padding:0 8px}.code-block pre{color:#c5d0d9;scrollbar-color:#25303c transparent;scrollbar-width:thin;margin:0;padding:18px 20px 20px;overflow-x:auto}.code-block code{tab-size:2;font:12.5px/1.7 Noto Sans Mono,monospace}.doc-article table{border-spacing:0;border-collapse:separate;border:1px solid var(--line);border-radius:7px;width:100%;margin:27px 0 31px;font-size:13px;line-height:1.5;overflow:hidden}.doc-article th,.doc-article td{border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:top;min-width:110px;padding:11px 13px}.doc-article th:last-child,.doc-article td:last-child{border-right:0}.doc-article tr:last-child td{border-bottom:0}.doc-article thead th{color:#8b98a4;letter-spacing:.06em;text-transform:uppercase;background:#0d131a;font:9px/1.45 Noto Sans Mono,monospace}.doc-article hr{background:var(--line);border:0;height:1px;margin:48px 0}.doc-article img{border:1px solid var(--line);background:#090d12;border-radius:8px;width:auto;max-width:100%;height:auto;margin:28px auto 35px;display:block;box-shadow:0 25px 60px #0000003d}.page-neighbors{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:80px;padding-top:22px;display:grid}.neighbor{border:1px solid var(--line);background:#0b0f159e;border-radius:7px;flex-direction:column;justify-content:center;min-height:82px;padding:15px 17px;transition:border-color .14s,background .14s;display:flex}.neighbor:hover{border-color:var(--line-bright);background:var(--surface-raised)}.neighbor span{color:var(--dim);letter-spacing:.1em;text-transform:uppercase;margin-bottom:7px;font:8px/1 Noto Sans Mono,monospace}.neighbor strong{color:#cbd4dc;font-size:13px;font-weight:400;line-height:1.4}.neighbor.next{text-align:right;align-items:flex-end}.neighbor.previous strong:before{content:"←";color:var(--green);margin-right:8px}.neighbor.next strong:after{content:"→";color:var(--green);margin-left:8px}.article-footer{border-top:1px solid var(--line-soft);color:#485460;letter-spacing:.07em;text-transform:uppercase;justify-content:space-between;gap:30px;margin-top:62px;padding-top:16px;font:8px/1.5 Noto Sans Mono,monospace;display:flex}.toc{z-index:20;top:var(--header-height);width:var(--toc-width);border-left:1px solid var(--line-soft);scrollbar-width:none;background:#070a0ea8;padding:56px 24px 30px 25px;position:fixed;bottom:0;right:0;overflow-y:auto}.toc::-webkit-scrollbar{display:none}.toc-label{color:#596570;letter-spacing:.09em;text-transform:uppercase;margin-bottom:15px;font:9px/1 Noto Sans Mono,monospace}.toc nav{gap:2px;display:grid}.toc a{color:#697682;padding:6px 0 6px 14px;font-size:11px;line-height:1.45;transition:color .12s;display:block;position:relative}.toc a:before{content:"";background:#26323d;width:1px;transition:background .12s,box-shadow .12s;position:absolute;top:8px;bottom:8px;left:0}.toc a:hover{color:#b9c3cc}.toc a.is-active{color:var(--text)}.toc a.is-nested{color:#596570;padding-left:23px}.toc a.is-nested:before{left:9px}.toc>p{color:var(--dim);font-size:11px}.search-layer{z-index:200;-webkit-backdrop-filter:blur(11px);background:#030508c7;justify-content:center;padding:min(13vh,120px) 20px 40px;animation:.12s ease-out layer-in;display:flex;position:fixed;inset:0}.search-dialog{background:#0a0e13;border:1px solid #2a3642;border-radius:10px;align-self:flex-start;width:min(690px,100%);max-height:min(720px,100vh - 100px);animation:.15s ease-out dialog-in;overflow:hidden;box-shadow:0 36px 120px #0000008c}.search-field{border-bottom:1px solid var(--line);height:58px;color:var(--green);align-items:center;gap:12px;padding:0 13px 0 18px;display:flex}.search-field input{min-width:0;height:100%;color:var(--text-strong);background:0 0;border:0;outline:0;flex:1;font-size:15px}.search-field button{border:1px solid var(--line-bright);background:var(--surface);height:27px;color:var(--dim);cursor:pointer;border-radius:4px;padding:0 8px;font:9px/1 Noto Sans Mono,monospace}.search-meta{border-bottom:1px solid var(--line-soft);color:#4c5864;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;height:34px;padding:0 16px;font:8px/1 Noto Sans Mono,monospace;display:flex}.search-results{scrollbar-color:#2a3540 transparent;scrollbar-width:thin;max-height:min(600px,100vh - 220px);padding:7px;overflow-y:auto}.search-results>a{border:1px solid #0000;border-radius:6px;min-height:92px;padding:13px 120px 13px 14px;transition:border-color .11s,background .11s;display:block;position:relative}.search-results>a:hover{border-color:var(--line);background:var(--surface-raised)}.result-section{color:var(--cyan);letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px;font:8px/1 Noto Sans Mono,monospace;display:block}.search-results strong{color:#d7dfe6;font-size:14px;font-weight:400}.search-results p{color:#747f8a;text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-size:11px;line-height:1.45;overflow:hidden}.result-path{color:#47535f;text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:110px;font:8px/1.3 Noto Sans Mono,monospace;position:absolute;top:17px;right:13px;overflow:hidden}.empty-search{min-height:180px;color:var(--muted);text-align:center;place-content:center;gap:7px;display:grid}.empty-search strong{color:var(--text);font-size:14px;font-weight:400}.empty-search span{font-size:11px}.not-found{flex-direction:column;justify-content:center;width:min(680px,100% - 40px);min-height:100vh;margin:0 auto;display:flex}.not-found>span{color:var(--green);letter-spacing:.08em;font:10px/1 Noto Sans Mono,monospace}.not-found h1{color:var(--text-strong);margin:20px 0;font-size:clamp(32px,5vw,54px);line-height:1.12}.not-found p{max-width:560px;color:var(--muted);line-height:1.7}.not-found a{width:fit-content;color:var(--cyan);text-transform:uppercase;margin-top:22px;font:11px/1 Noto Sans Mono,monospace}:root{--background:#f4f5f6;--background-deep:#f7f8f9;--surface:#fff;--surface-raised:#fff;--surface-soft:#f6f7f8;--line:#e2e4e7;--line-soft:#eceef0;--line-bright:#cdd1d6;--text:#4f5660;--text-strong:#171a1f;--muted:#737a84;--dim:#9ca2aa;--green:#19ad5d;--green-soft:#e9f8ef;--cyan:#168f57;--magenta:#914a98;--warning:#9b741c;--header-height:64px}html{background:var(--background)}body{background:var(--background);color:var(--text);scrollbar-color:#aeb4bb transparent;scrollbar-width:thin;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body:before{display:none}*{scrollbar-color:#aeb4bb transparent;scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#aeb4bb padding-box padding-box;border:3px solid #0000;border-radius:999px;min-height:42px}::-webkit-scrollbar-thumb:hover{background:#989fa7 padding-box padding-box}.sidebar,.search-results,.code-block pre,.doc-article table{scrollbar-color:#aeb4bb transparent}.topbar{border-bottom-color:var(--line-soft);-webkit-backdrop-filter:blur(18px)saturate(112%);background:#fffffff0;box-shadow:0 3px 16px #1e242d09}.topbar-brand{border-right-color:var(--line-soft)}.brand-word{color:var(--text-strong);letter-spacing:-.025em;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;font-weight:700}.brand-divider{background:var(--line)}.brand-context{color:#8b9199;font-weight:400}.icon-button{color:#262a2f;box-shadow:none;background:#f2f3f4;border-color:#0000}.icon-button:hover{background:#e9ebed}.search-trigger{color:#777e87;background:#f3f4f5;border-color:#0000;border-radius:999px;height:40px;box-shadow:inset 0 0 0 1px #1f262f04}.search-trigger:hover{color:#383d43;background:#eceef0;border-color:#0000}kbd{color:#8e949c;background:#fff;border-color:#d9dce0;box-shadow:0 1px 2px #191f270a}.top-links a{color:#646b74}.sidebar{border-right-color:var(--line-soft);background:#fbfbfc}.nav-group-label{color:#8d949d;font-weight:400}.nav-group-label span{color:#bdc1c6}.nav-group a{color:#606873;font-weight:400}.nav-group a:before{background:#c7cbd0}.nav-group a:hover{color:#1f2328;background:#f0f1f2}.nav-group a.is-active{background:var(--green-soft);color:#126f40;font-weight:700;box-shadow:inset 0 0 0 1px #19ad5d09}.nav-group a.is-active:before{background:var(--green);box-shadow:none}.article-frame{width:min(1020px,100%);padding-top:43px}.article-kicker{color:#a2a7ae;border-bottom-color:#e2e4e7;margin:0 10px 20px;padding:0 4px 12px}.article-kicker span{color:#168f57;font-weight:700}.article-kicker span:after{color:#c8ccd0}.article-kicker code{color:#979da5}.doc-article{color:#4d5560;background:#fff;border:1px solid #1c222a0e;border-radius:18px;padding:52px 60px 62px;box-shadow:0 16px 42px #1d242d0d,0 2px 7px #1d242d06}.doc-article h1,.doc-article h2,.doc-article h3,.doc-article h4{color:#181b20}.doc-article h1{font-size:clamp(36px,4vw,47px)}.doc-article h2:before{background:var(--green);box-shadow:none}.doc-article h1+p{color:#4c545f}.doc-article h1+p strong{color:#148d4d;letter-spacing:.02em;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:700}.doc-article strong{color:#20242a}.doc-article em{color:#3e454e}.doc-article a{color:#128b4b;text-decoration-color:#128b4b45}.doc-article a:hover{color:#0b6f3b}.doc-article li::marker{color:var(--green)}.doc-article blockquote{border-color:#dfe4e1;border-left-color:var(--green);color:#505962;background:#f7faf8}.doc-article :not(pre)>code{color:#176d43;background:#f0f8f3;border-color:#dce9e1}.code-block{background:#f8f9fa;border-color:#e0e3e6;box-shadow:0 8px 22px #1e252d0b}.code-toolbar{color:#8d949c;background:#f1f3f4;border-bottom-color:#e3e5e8}.code-toolbar:before{background:var(--green)}.code-toolbar button{color:#7d848c}.code-toolbar button:hover{color:#25292e;background:#e7e9eb}.code-block pre{color:#333941}.doc-article table{background:#fff;border-color:#e1e4e7;box-shadow:0 5px 18px #1e252d06}.doc-article th,.doc-article td{border-color:#e9ebed}.doc-article thead th{color:#737b84;background:#f4f5f6;font-weight:700}.doc-article tbody tr:nth-child(2n){background:#fafbfb}.doc-article tbody tr:hover{background:#f2faf5}.doc-article hr{background:#e5e7e9}.doc-article img{background:#f7f8f9;border-color:#e0e3e6;box-shadow:0 18px 42px #1e242c17}.page-neighbors{border-top:0;margin-top:24px;padding-top:0}.neighbor{background:#fff;border-color:#1c222a0f;border-radius:14px;min-height:88px;box-shadow:0 9px 26px #1d242d0b,0 1px 3px #1d242d06}.neighbor:hover{background:#fff;border-color:#19ad5d33;box-shadow:0 12px 30px #1d242d11,0 0 0 3px #19ad5d0b}.neighbor span{color:#9aa0a8}.neighbor strong{color:#333940}.neighbor.previous strong:before,.neighbor.next strong:after{color:var(--green)}.article-footer{color:#a1a6ad;border-top-color:#dee1e4}.toc{background:#f4f5f6;border-left:0;padding-top:92px}.toc-label{color:#8e959d;font-weight:700}.toc nav{background:#fff;border:1px solid #1c222a0d;border-radius:12px;padding:8px;box-shadow:0 9px 28px #1e252d0a}.toc a{color:#747c85;border-radius:7px}.toc a:before{background:#dde0e3}.toc a:hover{color:#25292e;background:#f3f4f5}.toc a.is-active:before{background:var(--green);box-shadow:none}.toc a.is-nested{color:#8d949c}.toc>p{color:#9ba1a8}.search-layer{-webkit-backdrop-filter:blur(12px);background:#e8ebeec7}.search-dialog{background:#fff;border-color:#1f262f14;border-radius:16px;box-shadow:0 34px 95px #1f262f2e,0 3px 12px #1f262f0f}.search-field{color:var(--green);border-bottom-color:#e5e7e9}.search-field input{color:#1d2025}.search-field input::placeholder{color:#9aa0a8}.search-field button{color:#7f868e;background:#f3f4f5;border-color:#dadddf}.search-meta{color:#9aa0a8;background:#fafbfb;border-bottom-color:#eceef0}.search-results>a:hover{background:#f5faf7;border-color:#e1e5e3}.result-section{color:#168f57;font-weight:700}.search-results strong{color:#25292e}.search-results p{color:#737b84}.result-path{color:#a0a6ad}.empty-search{color:#8d949c}.empty-search strong{color:#24282d}.not-found>span,.not-found a{color:var(--green)}.not-found h1{color:var(--text-strong)}.not-found p{color:var(--muted)}:root{--header-height:62px;--sidebar-width:258px;--toc-width:228px;--control-border:#1e262e1a;--control-highlight:#ffffffeb;--shadow-control:0 1px 2px #181f260e, 0 5px 14px #181f2609;--shadow-card:0 1px 2px #181f260b, 0 15px 38px #181f260e}.topbar{border-bottom:1px solid #1c222a13;box-shadow:0 1px #ffffffe6,0 8px 26px #1c222a0b}.topbar-brand{border-right-color:#1c222a0b;padding:0 17px}.brand-link,.mobile-brand{align-items:center;gap:9px;display:inline-flex}.brand-mark{border:1px solid #0c281b38;border-radius:8px;flex:none;width:27px;height:27px;display:block;box-shadow:inset 0 1px #ffffff38,0 1px 2px #0d241833,0 5px 13px #162d2221}.brand-mark img{border-radius:inherit;width:100%;height:100%;display:block}.brand-word{letter-spacing:-.03em;font-size:17.5px;font-weight:700}.brand-divider{background:#e5e7e9;height:20px;margin:0 10px}.brand-context{color:#858c95;letter-spacing:0;text-transform:none;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:11px;font-weight:500}.search-trigger{border:1px solid var(--control-border);color:#737a83;width:min(460px,100vw - 745px);min-width:290px;height:42px;box-shadow:inset 0 1px var(--control-highlight), inset 0 -1px #1c222a05, var(--shadow-control);background:linear-gradient(#f8f9f9 0%,#f1f3f3 100%);gap:11px;margin-left:24px;padding:0 11px 0 15px;font-size:13px}.search-trigger:hover{color:#216443;box-shadow:inset 0 1px var(--control-highlight), 0 0 0 3px #19ad5d0b, var(--shadow-control);background:linear-gradient(#f9fbfa 0%,#edf5f0 100%);border-color:#128b4b33}.search-trigger:active{transform:translateY(1px);box-shadow:inset 0 1px 3px #1c222a14}.icon-button{border:1px solid var(--control-border);color:#343a41;box-shadow:inset 0 1px var(--control-highlight), var(--shadow-control);background:linear-gradient(#fafbfb 0%,#eff1f2 100%);border-radius:9px;transition:border-color .14s,background .14s,box-shadow .14s,color .14s,transform .1s}.icon-button:hover{color:#126f40;box-shadow:inset 0 1px var(--control-highlight), 0 0 0 3px #19ad5d0b, var(--shadow-control);background:linear-gradient(#fbfdfc 0%,#edf6f1 100%);border-color:#128b4b33}.icon-button:active{transform:translateY(1px);box-shadow:inset 0 1px 3px #1c222a1a}.search-trigger kbd{color:#9399a0;background:#fff;border:0;border-radius:7px;min-width:39px;height:24px;box-shadow:0 1px 3px #1b212814,inset 0 0 0 1px #1b21280f}.top-links{gap:4px;padding-right:16px}.top-links a{color:#5e656e;letter-spacing:0;text-transform:none;border-radius:9px;min-height:36px;padding:0 11px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12.5px;font-weight:500}.top-links a:hover{color:#146f40;background:#f1f3f2}.language-switcher{position:relative}.language-switcher summary{color:#5e656e;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-width:48px;min-height:36px;padding:0 9px;font-size:11.5px;font-weight:600;line-height:1;list-style:none;display:inline-flex}.language-switcher summary::-webkit-details-marker{display:none}.language-switcher summary::marker{content:""}.language-switcher summary:hover,.language-switcher[open] summary{border-color:var(--control-border);color:#146f40;box-shadow:var(--shadow-control);background:linear-gradient(#fafbfb 0%,#eff2f0 100%)}.language-switcher summary svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.35px;width:12px;height:12px;transition:transform .15s}.language-switcher[open] summary svg{transform:rotate(180deg)}.language-menu{z-index:160;-webkit-backdrop-filter:blur(18px)saturate(120%);background:#fffffffa;border:1px solid #1c222a1c;border-radius:13px;gap:3px;width:184px;padding:7px;display:grid;position:absolute;top:calc(100% + 9px);right:0;box-shadow:inset 0 1px #fffffff0,0 20px 52px #191f2726,0 3px 10px #191f2711}.language-menu a{border-radius:8px;grid-template-columns:42px 1fr;gap:2px;min-height:40px;padding:0 10px;display:grid}.language-menu a span{color:#8a9199;letter-spacing:.03em;font-size:10px;font-weight:600}.language-menu a strong{color:#343a41;font-size:13px;font-weight:500}.language-menu a.is-active{background:#e7f6ed}.language-menu a.is-active span,.language-menu a.is-active strong{color:#10703e}.mobile-language{display:none}.sidebar{background:#fbfbfc;border-right-color:#1c222a0b;padding:28px 13px 40px;transition:width .18s cubic-bezier(.2,.8,.2,1)}.documentation-nav{gap:2px;margin-top:32px;transition:opacity .12s}.nav-group-label{color:#3d444c;letter-spacing:.025em;text-align:left;cursor:pointer;width:100%;min-height:35px;box-shadow:none;background:0 0;border:1px solid #0000;border-radius:6px;gap:6px;padding:0 7px 0 5px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:11.5px;font-weight:650;line-height:1;transition:border-color .14s,background .14s,color .14s,box-shadow .14s}.nav-group-label>span{min-width:0;color:inherit;flex:1}.nav-group-label>svg:first-child{fill:none;stroke:#737c85;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.75px;flex:none;width:13px;height:13px}.nav-group-label .folder-glyph{filter:drop-shadow(0 1px 1px #653d0e3d)drop-shadow(0 2px 3px #653d0e14);flex:none;width:19px;height:19px}.folder-glyph .folder-shadow{fill:#8d5716;opacity:.3}.folder-glyph .folder-tab{fill:#d98b24;stroke:#a35f12;stroke-linejoin:round;stroke-width:.75px}.folder-glyph .folder-tab-highlight{fill:none;stroke:#ffeeb5eb;stroke-linecap:round;stroke-linejoin:round;stroke-width:.72px}.folder-glyph .folder-face{fill:#efb03b;stroke:#ad6917;stroke-linejoin:round;stroke-width:.75px}.folder-glyph.is-open .folder-face{fill:#f3bb4b}.folder-glyph .folder-face-highlight{fill:none;stroke:#ffe18bf2;stroke-linecap:round;stroke-width:.72px}.folder-glyph .folder-slot{fill:none;stroke:#b36a16;stroke-linecap:round;stroke-width:.9px}.nav-group-label:hover{color:#1f252b;box-shadow:none;background:#f3f1eb;border-color:#825b1d14}.nav-group.is-open>.nav-group-label{color:#242a30;font-weight:700}.nav-group ul{gap:0;margin:0 0 4px 12px;padding:1px 0 4px 21px;position:relative}.nav-group ul:before{content:"";border-left:1px solid #cbd0cd;position:absolute;top:-1px;bottom:18px;left:7px}.nav-group li{position:relative}.nav-group li:before{z-index:1;content:"";border-top:1px solid #cbd0cd;width:14px;position:absolute;top:17px;left:-13px}.nav-group a{color:#434b54;border:1px solid #0000;border-radius:6px;gap:8px;min-height:34px;padding:7px 9px 7px 7px;font-size:13px;line-height:1.35}.nav-group a .file-glyph{filter:drop-shadow(0 1px 1px #23272f1f);flex:none;width:16px;height:16px}.file-glyph .file-shadow{fill:#899198;opacity:.32}.file-glyph .file-page{fill:#fff;stroke:#7f8991;stroke-linejoin:round;stroke-width:.8px}.file-glyph .file-fold{fill:#e6e9ea;stroke:#879097;stroke-linejoin:round;stroke-width:.7px}.file-glyph .file-highlight{fill:none;stroke:#ffffffe0;stroke-linecap:round;stroke-width:.75px}.file-glyph .file-line{fill:none;stroke:#707a82;stroke-linecap:round;stroke-width:.75px}.nav-group a>span{min-width:0}.nav-group a:before{display:none}.nav-group a:hover{color:#20252a;box-shadow:none;background:#f0f2f1;border-color:#1c222a09}.nav-group a.is-active{color:#10703e;background:#e5f5eb;border-color:#128b4b21;font-weight:600;box-shadow:inset 0 1px #ffffffbd,0 1px 2px #12673909}.nav-group a.is-active .file-glyph{filter:drop-shadow(0 1px 1px #23272f1f)drop-shadow(0 0 3px #128b4b1f)}.nav-group a.is-active .file-page{stroke:#4c9870}.nav-group a.is-active .file-line{stroke:#2e8060}.sidebar-collapse-button{z-index:76;top:calc(var(--header-height) + 14px);left:calc(var(--navigation-width) - 48px);color:#697079;cursor:pointer;background:linear-gradient(#fff 0%,#eff2f0 100%);border:1px solid #1c222a1c;border-radius:8px;place-items:center;width:30px;height:30px;padding:0;transition:left .18s cubic-bezier(.2,.8,.2,1),border-color .14s,color .14s,box-shadow .14s;display:grid;position:fixed;box-shadow:inset 0 1px #fffffff2,0 2px 7px #1b212813}.sidebar-collapse-button:hover{color:#10703e;border-color:#128b4b38;box-shadow:inset 0 1px #fffffff2,0 3px 10px #128b4b1a}.sidebar-collapse-button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:15px;height:15px}.topbar-brand,.main-column{transition:width .18s cubic-bezier(.2,.8,.2,1),margin-left .18s cubic-bezier(.2,.8,.2,1)}@media (min-width:941px){.docs-app.is-sidebar-collapsed{--navigation-width:48px}.docs-app.is-sidebar-collapsed .sidebar{padding-inline:0;overflow:hidden}.docs-app.is-sidebar-collapsed .sidebar-collapse-button{left:9px}.docs-app.is-sidebar-collapsed .documentation-nav{opacity:0;visibility:hidden;pointer-events:none}.docs-app.is-sidebar-collapsed .topbar-brand{justify-content:center;padding-inline:0}.docs-app.is-sidebar-collapsed .topbar-brand .brand-word{display:none}}.main-column{background:#f4f5f6}.article-frame{width:min(1040px,100%);padding:37px 42px 88px}.article-kicker{color:#9ba1a8;letter-spacing:0;text-transform:none;border-bottom:0;gap:10px;min-height:30px;margin:0 7px 17px;padding:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:11px;font-weight:500;line-height:1.4}.article-kicker span{color:#137a46;background:#e8f6ed;border-radius:999px;padding:5px 9px;font-weight:600}.article-kicker span:after{display:none}.article-kicker code{color:#969ca4;font:10.5px/1.4 Noto Sans Mono,monospace}.article-kicker code:before{content:"/";color:#c4c8cd;margin-right:10px}.doc-article{color:#474f59;box-shadow:inset 0 1px #fffffff0, var(--shadow-card);border:1px solid #1c222a13;border-radius:18px;padding:55px 60px 66px;font-size:15.5px;line-height:1.76}.doc-article h1{color:#30363d;letter-spacing:-.035em;max-width:760px;text-shadow:none;background:0 0;margin-bottom:26px;padding:0;font-size:clamp(35px,3.6vw,44px);font-weight:700;line-height:1.1}.doc-article h1+p{color:#414952;font-size:16.5px;line-height:1.7}.doc-article h2{letter-spacing:-.035em;font-size:26px}.doc-article h2:before{display:none}.code-block{background:#fafbfb;border-color:#1c222a1c;border-radius:11px;box-shadow:inset 0 1px #ffffffe6,0 1px 2px #1c222a09,0 10px 25px #1c222a0b}.code-toolbar{background:linear-gradient(#f6f7f7 0%,#eef0f1 100%);height:44px;padding:0 7px 0 14px}.code-toolbar button{color:#6b737c;background:linear-gradient(#fff 0%,#f2f4f4 100%);border:1px solid #1c222a17;border-radius:8px;min-width:64px;height:34px;padding:0 10px;transition:border-color .13s,background .13s,color .13s,transform .1s;box-shadow:inset 0 1px #fffffff2,0 1px 2px #1c222a0e}.code-toolbar button:hover{color:#126f40;background:linear-gradient(#fbfdfc 0%,#eaf5ee 100%);border-color:#128b4b33}.code-toolbar button:active{transform:translateY(1px)}.doc-article table{border-color:#1c222a1b;border-radius:10px;box-shadow:inset 0 1px #ffffffe6,0 1px 2px #1c222a06,0 8px 22px #1c222a09}.doc-article thead th{color:#626b75;letter-spacing:.025em;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:12px;font-weight:650;line-height:1.35}.neighbor{background:linear-gradient(#fff 0%,#fbfcfc 100%);border:1px solid #1c222a13;box-shadow:inset 0 1px #fffffff0,0 1px 2px #1b21290a,0 10px 27px #1b21290b}.neighbor span{letter-spacing:0;text-transform:none;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:10.5px;font-weight:600}.neighbor strong{font-size:13.5px;font-weight:500}.article-footer{color:#969ca4;letter-spacing:0;text-transform:none;border-top-color:#e1e4e6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:10.5px;font-weight:500}.toc{padding:83px 15px 30px}.toc-label{color:#7e858e;letter-spacing:0;text-transform:none;margin:0 9px 12px;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:11px;font-weight:600;line-height:1}.toc nav{border:1px solid #1c222a12;border-radius:14px;padding:8px;box-shadow:inset 0 1px #fffffff0,0 1px 2px #1b212908,0 10px 27px #1b21290a}.toc a{color:#69717b;border-radius:8px;padding:8px 10px;font-size:12px;line-height:1.35}.toc a:before{display:none}.toc a:hover{background:#f3f5f4}.toc a.is-active{color:#10703e;background:#e9f6ee;font-weight:600}.toc a.is-nested{padding-left:20px}@keyframes layer-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(-7px)scale(.992)}}@media (max-width:1240px){:root{--toc-width:0px}.toc{display:none}.article-frame{width:min(940px,100%)}.search-trigger{width:min(420px,100vw - 650px);min-width:230px}}@media (max-width:940px){:root{--sidebar-width:0px}.topbar{gap:12px;padding:0 14px}.topbar-brand{border-right:0;width:auto;padding:0}.mobile-menu-button{margin-right:9px;display:grid}.search-trigger{flex:1;width:auto;min-width:0;max-width:360px;margin-left:auto}.top-links{margin-left:0;padding-right:0}.top-links a{padding-inline:7px}.top-links .top-site-link{display:none}.sidebar{z-index:110;width:min(310px,100vw - 44px);padding-top:78px;transition:transform .18s cubic-bezier(.2,.8,.2,1);top:0;transform:translate(-102%)}.sidebar-collapse-button{display:none}.documentation-nav{margin-top:0}.sidebar.is-open{transform:translate(0)}.sidebar-mobile-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:60px;padding:0 15px 0 21px;display:flex;position:absolute;top:0;left:0;right:0}.sidebar-scrim{z-index:100;opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#020407b8;transition:opacity .18s;display:block;position:fixed;inset:0}.sidebar-scrim.is-visible{opacity:1;pointer-events:auto}.article-frame{max-width:820px;padding-inline:40px}}@media (max-width:680px){:root{--header-height:56px}.topbar{gap:8px;padding:0 10px}.mobile-language{flex:none;margin-left:auto;display:block}.mobile-language .language-switcher summary{border-color:var(--control-border);min-width:44px;min-height:34px;box-shadow:var(--shadow-control);background:linear-gradient(#fafbfb 0%,#eff2f0 100%);padding-inline:8px}.mobile-language .language-menu{left:auto;right:0}.mobile-menu-button{width:34px;height:34px;margin-right:5px}.brand-word{font-size:15.5px}.brand-divider,.brand-context{display:none}.search-trigger{flex:0 0 36px;place-items:center;width:36px;height:34px;margin-left:0;padding:0;display:grid}.search-trigger span,.search-trigger kbd,.top-links{display:none}.article-frame{padding:34px 12px 68px}.doc-article{border-radius:15px;padding:30px 20px 36px;box-shadow:inset 0 1px #fffffff0,0 1px 2px #181f260a,0 10px 28px #181f260d}.article-kicker{margin-bottom:24px}.article-kicker code,.article-kicker span:after{display:none}.doc-article{font-size:14px;line-height:1.72}.doc-article h1{margin-bottom:21px;font-size:clamp(26px,7vw,33px)}.doc-article h1+p{font-size:15px}.doc-article h2{margin-top:52px;font-size:20px}.doc-article h3{margin-top:36px;font-size:16px}.doc-article h1,.doc-article h2,.doc-article h3,.doc-article h4{-webkit-hyphens:auto;hyphens:auto;overflow-wrap:anywhere;text-wrap:pretty;word-break:break-word;max-width:100%}.doc-article table{white-space:normal;scrollbar-color:#25303c transparent;scrollbar-width:thin;display:block;overflow-x:auto}.doc-article th,.doc-article td{min-width:145px}.code-block{margin-left:-7px;margin-right:-7px}.code-block pre{padding:16px}.code-block code{font-size:11.5px}.page-neighbors{grid-template-columns:1fr;margin-top:60px}.neighbor.next{text-align:left;align-items:flex-start}.article-footer{flex-direction:column;gap:6px;margin-top:48px}.search-layer{align-items:stretch;padding:0}.search-dialog{border:0;border-radius:0;width:100%;min-height:100dvh;max-height:100dvh}.search-results{max-height:calc(100dvh - 92px)}.search-results>a{padding-right:14px}.result-path{display:none}}.doc-article .math-display{color:#1f2b25;text-align:center;scrollbar-color:#aab3ad transparent;scrollbar-width:thin;background:linear-gradient(#fff 0%,#fafcfb 100%);border:1px solid #dfe6e2;border-radius:12px;margin:32px 0;padding:24px 28px;overflow:auto hidden;box-shadow:inset 0 1px #ffffffe6,0 1px 2px #1b212906,0 8px 24px #1b212909}.top-external-links{align-items:center;gap:3px;display:flex}.top-links .github-link{color:#30363d;background:linear-gradient(#fff 0%,#f4f6f5 100%);border:1px solid #d9dddb;min-height:34px;margin-left:2px;padding-inline:11px;box-shadow:inset 0 1px #fffffff2,0 1px 2px #161d220f,0 5px 14px #161d2209}.top-links .github-link:hover{background:linear-gradient(#fff 0%,#eef4f0 100%);border-color:#c8d1cc;box-shadow:inset 0 1px #fffffff2,0 1px 2px #161d2212,0 6px 16px #161d220d}.top-links .github-link svg{width:15px;height:15px}.sidebar-external-links{display:none}@media (max-width:940px){.top-external-links{display:none}.sidebar-external-links{border-top:1px solid #e2e5e3;grid-template-columns:1fr;gap:7px;margin-top:27px;padding:20px 1px 4px;display:grid}.sidebar-external-links a{color:#49525a;background:linear-gradient(#fff 0%,#f5f7f6 100%);border:1px solid #dde2df;border-radius:10px;align-items:center;gap:9px;min-height:42px;padding:0 13px;font-size:12.5px;font-weight:600;display:flex;box-shadow:inset 0 1px #fffffff2,0 1px 2px #181f260b,0 6px 16px #181f2609}.sidebar-external-links a:hover{color:#11713f;background:linear-gradient(#fff 0%,#eff6f2 100%);border-color:#cdd9d2}.sidebar-external-links a>span{flex:1}.sidebar-external-links svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.6px;flex:none;width:15px;height:15px}.sidebar-external-links .github-link svg{fill:currentColor;stroke:none;order:-1}}.doc-article .math-display .katex-display{margin:0;padding:2px 0}.doc-article .math-display .katex{font-size:1.08em}.doc-article .katex{color:#17231d}.doc-article .katex-display>.katex{white-space:nowrap}.doc-article .math-display::-webkit-scrollbar{height:8px}.doc-article .math-display::-webkit-scrollbar-track{background:0 0}.doc-article .math-display::-webkit-scrollbar-thumb{background:#aab3ad;border-radius:999px}@media (max-width:720px){.doc-article .math-display{margin:26px -6px;padding:20px 16px}.doc-article .math-display .katex{font-size:1em}}body.repository-gate-open{overflow:hidden}.repository-gate-layer{z-index:320;-webkit-backdrop-filter:blur(14px)saturate(108%);background:#e5e9ebc7;place-items:center;padding:20px;animation:.15s ease-out layer-in;display:grid;position:fixed;inset:0}.repository-gate-dialog{background:radial-gradient(circle at 96% 0,#19ad5d17,#0000 14rem),#fff;border:1px solid #1c26221c;border-radius:18px;width:min(460px,100%);padding:34px 35px 30px;animation:.18s ease-out dialog-in;position:relative;overflow:hidden;box-shadow:0 34px 95px #1f262f2b,0 3px 12px #1f262f0e,inset 0 1px #fffffff2}.repository-gate-dialog:before{content:"";pointer-events:none;opacity:.4;background-image:linear-gradient(#19ad5d09 1px,#0000 1px),linear-gradient(90deg,#19ad5d09 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(135deg,#000,#0000 70%);mask-image:linear-gradient(135deg,#000,#0000 70%)}.repository-gate-dialog>*{position:relative}.repository-gate-close{z-index:1;color:#9299a1;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;place-items:center;width:36px;height:36px;padding:0;transition:color .15s,border-color .15s,background .15s;display:grid;position:absolute;top:12px;right:12px}.repository-gate-close:hover{color:#13854b;background:#f1f8f4;border-color:#dce8e1}.repository-gate-close svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;width:15px;height:15px}.repository-gate-eyebrow{color:#168f57;letter-spacing:.11em;text-transform:uppercase;margin:0 0 12px;font:700 10px/1.2 Noto Sans Mono,monospace}.repository-gate-dialog h2{color:#171a1f;letter-spacing:-.035em;max-width:370px;margin:0;font-size:clamp(25px,3vw,31px);line-height:1.12}.repository-gate-copy{color:#68717a;margin:17px 0 20px;font-size:14px;line-height:1.65}.repository-gate-meta{color:#59636c;letter-spacing:.045em;text-transform:uppercase;border-top:1px solid #e3ebe6;border-bottom:1px solid #e3ebe6;gap:7px;margin:0 0 22px;padding:13px 0;font:700 10px/1.35 Noto Sans Mono,monospace;display:grid}.repository-gate-meta p{margin:0}.repository-gate-meta a{color:#148d4d;text-decoration:none}.repository-gate-meta a:hover{text-underline-offset:3px;text-decoration:underline}.repository-gate-dismiss{color:#fff;cursor:pointer;background:linear-gradient(#20b964,#17a758);border:1px solid #159a53;border-radius:11px;min-width:108px;min-height:42px;padding:0 18px;font-size:13px;font-weight:700;transition:transform .15s,box-shadow .15s;box-shadow:inset 0 1px #ffffff38,0 10px 24px #14924e29}.repository-gate-dismiss:hover{transform:translateY(-1px);box-shadow:inset 0 1px #ffffff3d,0 14px 30px #14924e33}@media (max-width:520px){.repository-gate-layer{padding:14px}.repository-gate-dialog{border-radius:15px;padding:30px 24px 25px}.repository-gate-copy{font-size:13px}.repository-gate-meta{letter-spacing:.025em;font-size:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.topbar,.sidebar,.toc,.page-neighbors,.article-footer{display:none!important}body{color:#111;background:#fff}body:before{display:none}.main-column{margin:0;padding:0}.article-frame{width:100%;padding:0}.article-kicker{color:#555}.doc-article,.doc-article h1,.doc-article h2,.doc-article h3,.doc-article strong{color:#111}.doc-article h1{text-shadow:none;background:0 0;padding:0}}
@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(../media/KaTeX_AMS-Regular.25ieegmnh38ts.woff2)format("woff2"),url(../media/KaTeX_AMS-Regular.10y3kupq4t663.woff)format("woff"),url(../media/KaTeX_AMS-Regular.418dr7cz3fo2x.ttf)format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(../media/KaTeX_Caligraphic-Bold.06b-ya9t43ioz.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Bold.2vmk2hva4ctha.woff)format("woff"),url(../media/KaTeX_Caligraphic-Bold.40ltxhe834pns.ttf)format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(../media/KaTeX_Caligraphic-Regular.2eph4dlhid_m9.woff2)format("woff2"),url(../media/KaTeX_Caligraphic-Regular.3gxeetazf831f.woff)format("woff"),url(../media/KaTeX_Caligraphic-Regular.07-7u27-nhn_r.ttf)format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(../media/KaTeX_Fraktur-Bold.2sasz-d-jtw8y.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Bold.1alcy76__wdj2.woff)format("woff"),url(../media/KaTeX_Fraktur-Bold.19yqa_tc9d_gx.ttf)format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(../media/KaTeX_Fraktur-Regular.2d10y4xmjvzlf.woff2)format("woff2"),url(../media/KaTeX_Fraktur-Regular.110oo81prr9n5.woff)format("woff"),url(../media/KaTeX_Fraktur-Regular.2qhy34r6a05dn.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(../media/KaTeX_Main-Bold.3-rowy8o6_4ky.woff2)format("woff2"),url(../media/KaTeX_Main-Bold.0v1esh257kqpe.woff)format("woff"),url(../media/KaTeX_Main-Bold.0us_n0tnxlxu7.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(../media/KaTeX_Main-BoldItalic.14r2naom8mrec.woff2)format("woff2"),url(../media/KaTeX_Main-BoldItalic.13355ck5zr48q.woff)format("woff"),url(../media/KaTeX_Main-BoldItalic.3x_u9cepaced0.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(../media/KaTeX_Main-Italic.0lig0v9j0700p.woff2)format("woff2"),url(../media/KaTeX_Main-Italic.0afv392dj4w59.woff)format("woff"),url(../media/KaTeX_Main-Italic.2hkw3230mfwcv.ttf)format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(../media/KaTeX_Main-Regular.1ryvsdzh2w1_e.woff2)format("woff2"),url(../media/KaTeX_Main-Regular.15u8r3b2y7fv4.woff)format("woff"),url(../media/KaTeX_Main-Regular.0symfa7dqj6jd.ttf)format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(../media/KaTeX_Math-BoldItalic.1oopuu636h4il.woff2)format("woff2"),url(../media/KaTeX_Math-BoldItalic.12pl58orkw9rg.woff)format("woff"),url(../media/KaTeX_Math-BoldItalic.0y5w36a5aq__2.ttf)format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(../media/KaTeX_Math-Italic.32405s1aq8vas.woff2)format("woff2"),url(../media/KaTeX_Math-Italic.0w0b1ugh62cfr.woff)format("woff"),url(../media/KaTeX_Math-Italic.2vkekfblmz5nb.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(../media/KaTeX_SansSerif-Bold.0h3wi2z_eouyg.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Bold.1ovw5p-yjp56g.woff)format("woff"),url(../media/KaTeX_SansSerif-Bold.2d03q85pwxpti.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(../media/KaTeX_SansSerif-Italic.0wkjc4dm2kcit.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Italic.1qavw__2zz8gk.woff)format("woff"),url(../media/KaTeX_SansSerif-Italic.3i-q087b23-m8.ttf)format("truetype")}@font-face{font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(../media/KaTeX_SansSerif-Regular.2peiewu59z3d-.woff2)format("woff2"),url(../media/KaTeX_SansSerif-Regular.1i4afx8nk8n4r.woff)format("woff"),url(../media/KaTeX_SansSerif-Regular.31pbu25feko_c.ttf)format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(../media/KaTeX_Script-Regular.11h14300o9pd0.woff2)format("woff2"),url(../media/KaTeX_Script-Regular.3110jb9c-bxna.woff)format("woff"),url(../media/KaTeX_Script-Regular.28p_x7iz71ofe.ttf)format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size1-Regular.03lhvx36ekcou.woff2)format("woff2"),url(../media/KaTeX_Size1-Regular.1slf4bh0hc6vm.woff)format("woff"),url(../media/KaTeX_Size1-Regular.1y57-ck23ey8c.ttf)format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size2-Regular.14s5gg-puz6h-.woff2)format("woff2"),url(../media/KaTeX_Size2-Regular.0-kwyvx03omo8.woff)format("woff"),url(../media/KaTeX_Size2-Regular.2u0s-b07k2o9m.ttf)format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size3-Regular.1n1rgzz84z8r9.woff2)format("woff2"),url(../media/KaTeX_Size3-Regular.04o9a_02gu_e8.woff)format("woff"),url(../media/KaTeX_Size3-Regular.1pkn-dge4q0fv.ttf)format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(../media/KaTeX_Size4-Regular.2sgotkdv3dcyv.woff2)format("woff2"),url(../media/KaTeX_Size4-Regular.3p2r1l7xmebxv.woff)format("woff"),url(../media/KaTeX_Size4-Regular.2uelkfk2yna5e.ttf)format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(../media/KaTeX_Typewriter-Regular.11gr2d2wuwz77.woff2)format("woff2"),url(../media/KaTeX_Typewriter-Regular.12f8myjij3617.woff)format("woff"),url(../media/KaTeX_Typewriter-Regular.3nee9kjfy6nm8.ttf)format("truetype")}.katex{text-indent:0;text-rendering:auto;font:1.21em/1.2 KaTeX_Main,Times New Roman,serif}.katex *{border-color:currentColor;-ms-high-contrast-adjust:none!important}.katex .katex-version:after{content:"0.16.22"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.katex .katex-html>.newline{display:block}.katex .base{white-space:nowrap;width:min-content;position:relative}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;table-layout:fixed;display:inline-table}.katex .vlist-r{display:table-row}.katex .vlist{vertical-align:bottom;display:table-cell;position:relative}.katex .vlist>span{height:0;display:block;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{width:0;overflow:hidden}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{vertical-align:bottom;width:2px;min-width:2px;font-size:1px;display:table-cell}.katex .vbox{flex-direction:column;align-items:baseline;display:inline-flex}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{flex-direction:row;display:inline-flex}.katex .thinbox{width:0;max-width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{width:0;position:relative}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;width:100%;display:inline-block}.katex .hdashline{border-bottom-style:dashed;width:100%;display:inline-block}.katex .sqrt>.root{margin-left:.277778em;margin-right:-.555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.833333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.16667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.33333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.66667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.45667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.14667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.714286em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.857143em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.14286em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.28571em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.42857em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.71429em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.05714em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.46857em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.96286em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.55429em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.11111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.33333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.30444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.76444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.416667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.583333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.833333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.72833em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.07333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.347222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.416667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.486111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.694444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.833333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.44028em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.72778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.289352em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.347222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.405093em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.520833em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.578704em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.694444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.833333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.20023em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.43981em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.24108em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.289296em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.385728em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.433944em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.48216em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.578592em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.694311em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.833173em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.19961em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.200965em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.241158em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.281351em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.321543em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.361736em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.401929em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.482315em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.694534em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.833601em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{width:.12em;display:inline-block}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{min-width:1px;display:inline-block}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;height:inherit;width:100%;display:block;position:absolute}.katex svg path{stroke:none}.katex img{border-style:none;min-width:0;max-width:none;min-height:0;max-height:none}.katex .stretchy{width:100%;display:block;position:relative;overflow:hidden}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{width:100%;position:relative;overflow:hidden}.katex .halfarrow-left{width:50.2%;position:absolute;left:0;overflow:hidden}.katex .halfarrow-right{width:50.2%;position:absolute;right:0;overflow:hidden}.katex .brace-left{width:25.1%;position:absolute;left:0;overflow:hidden}.katex .brace-center{width:50%;position:absolute;left:25%;overflow:hidden}.katex .brace-right{width:25.1%;position:absolute;right:0;overflow:hidden}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{box-sizing:border-box;border:.04em solid}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{box-sizing:border-box;border-top:.049em solid;border-right:.049em solid;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{text-align:left;display:inline-block;position:absolute;right:calc(50% + .3em)}.katex .cd-label-right{text-align:right;display:inline-block;position:absolute;left:calc(50% + .3em)}.katex-display{text-align:center;margin:1em 0;display:block}.katex-display>.katex{text-align:center;white-space:nowrap;display:block}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{text-align:left;padding-left:2em}body{counter-reset:katexEqnNo mmlEqnNo}
