/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}@font-face{font-family:"Open Sans";src:url("OpenSans-VariableFont_wdth,wght.ttf") format("opentype")}@font-face{font-family:"Open Sans";font-style:italic;src:url("OpenSans-Italic-VariableFont_wdth,wght.ttf") format("opentype")}:root{--font-weight: 400;--font-width: 100;--gap: 18px;--font-normal: "Open Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif;--font-headline: var(--font-normal);--font-mono: monospace;--100vh: 100vh;--font-0: 14px;--font-1: 16px;--font-2: 18px;--font-3: 22px;--font-4: 28px;--font-5: 36px;--font-6: 36px}@media only screen and (min-width: 800px){:root{--gap: 24px}}:root{--color-white: #FFFFFF;--color-gray-0: #F0F0F0;--color-gray-1: #E0E0E0;--color-gray-2: #C0C0C0;--color-gray-3: #909090;--color-gray-0-transparent: rgba(0, 0, 0, 0.0588);--color-gray-1-transparent: rgba(0, 0, 0, 0.1216);--color-gray-2-transparent: rgba(0, 0, 0, 0.2471);--color-gray-3-transparent: rgba(0, 0, 0, 0.4353);--color-black: #000000;--color-link: #0000EE;--color-link-visited: #551A8B}@media(prefers-color-scheme: dark){:root{--color-white: #080808;--color-gray-0: #101010;--color-gray-1: #181818;--color-gray-2: #303030;--color-gray-3: #808080;--color-gray-0-transparent: rgba(238, 238, 238, 0.0588);--color-gray-1-transparent: rgba(238, 238, 238, 0.1216);--color-gray-2-transparent: rgba(238, 238, 238, 0.2471);--color-gray-3-transparent: rgba(238, 238, 238, 0.4353);--color-black: #EEEEEE;--color-link: #0087FF;--color-link-visited: #9B5BCC}}html{font-size:var(--font-1);min-height:100%;background-color:var(--color-white);color:var(--color-black);font-family:var(--font-normal);font-variant-numeric:tabular-nums}*{font-variation-settings:"wght" var(--font-weight),"wdth" var(--font-width)}b,strong{--font-weight: 900}:link{color:var(--color-link)}:visited{color:var(--color-link-visited)}h1,h2,h3,h4,h5,h6{font-family:var(--font-headline)}h1{font-size:var(--font-4);--font-weight: 300;--font-width: 85}h2{font-size:var(--font-3);--font-weight: 900;text-transform:uppercase;--font-width: 100}h3{font-size:var(--font-2);--font-weight: 800;--font-width: 90}h4{font-size:var(--font-1);--font-weight: 700;--font-width: 100}h5{font-size:var(--font-1);--font-weight: 500;--font-width: 85}h6{font-size:var(--font-1);--font-weight: 300;--font-width: 80}h1,h2,h3,h4,h5,h6,p,pre,marquee,table,fieldset,legend,.chroma{margin:var(--gap) 0}hr+h1,hr+h2,hr+h3,hr+h4,hr+h5,hr+h6,hr+p,hr+pre,hr+marquee,hr+table,hr+fieldset,hr+legend,hr+.chroma{margin-top:var(--gap)}ul,ol{margin:0}fieldset{box-shadow:0px 0px 0px 1px var(--color-black)}fieldset legend{box-shadow:0px 0px 0px 1px var(--color-black);padding:calc(var(--gap)/4) calc(var(--gap)/2);background-color:var(--color-gray-0)}table{border-collapse:collapse}th,td{border:thin var(--color-black) solid}thead td{border:none}th{background-color:var(--color-gray-0)}li ul:first-child,li ul:last-child ol:first-child,li ol:last-child{margin-top:0;margin-bottom:0}article{flex:1 0 auto}article>p,article>pre,article>h1,article>h2,article>h3,article>h4,article>h5,article>h6,article>table{margin-left:var(--gap);margin-right:var(--gap)}input[type=text],input[type=password],input[type=search]{border-radius:0;border:none;padding:4px;outline:1px var(--color-black) solid;background-color:var(--color-white)}input[type=text]:hover,input[type=password]:hover,input[type=search]:hover{background-color:var(--color-gray-0)}input[type=text]:focus,input[type=password]:focus,input[type=search]:focus{outline:3px var(--color-black) solid;background-color:var(--color-gray-0)}hr{width:100%;height:1px;border:none;background-color:var(--color-black);margin:0;padding:0}code,pre{font-family:var(--font-mono);line-height:inherit;background-color:var(--color-gray-0)}pre{overflow-x:auto}p>code{padding:0 .5ex}button{cursor:pointer;border-radius:0;background-color:var(--color-gray-1-transparent);color:var(--color-black);border:none;box-shadow:0px 0px 0px 1px var(--color-black);height:calc(var(--gap)*1.5);padding:0 var(--gap)}button:active{background-color:var(--color-gray-2-transparent)}button:focus{outline:none;box-shadow:0px 0px 0px 1px var(--color-black),inset 0px 0px 0px 1px var(--color-black);position:relative;z-index:1}button+button{border-left:none}button:disabled{background-color:var(--color-gray-1-transparent);color:var(--color-gray-3);box-shadow:0px 0px 0px 1px var(--color-gray-3)}.chroma .hll{background-color:#ffc}.chroma{background:#fff}.chroma .c{color:#888}.chroma .k{color:#080;font-weight:bold}.chroma .ch{color:#888}.chroma .cm{color:#888}.chroma .cp{color:#c00;font-weight:bold}.chroma .cpf{color:#888}.chroma .c1{color:#888}.chroma .cs{color:#c00;font-weight:bold;background-color:#fff0f0}.chroma .gd{color:#000;background-color:#fdd}.chroma .ge{font-style:italic}.chroma .gr{color:#a00}.chroma .gh{color:#333}.chroma .gi{color:#000;background-color:#dfd}.chroma .go{color:#888}.chroma .gp{color:#555}.chroma .gs{font-weight:bold}.chroma .gu{color:#666}.chroma .gt{color:#a00}.chroma .kc{color:#080;font-weight:bold}.chroma .kd{color:#080;font-weight:bold}.chroma .kn{color:#080;font-weight:bold}.chroma .kp{color:#080}.chroma .kr{color:#080;font-weight:bold}.chroma .kt{color:#228}.chroma .m{color:#00d;font-weight:bold}.chroma .s{color:#d20}.chroma .na{color:#369}.chroma .nb{color:#038}.chroma .nc{color:#b06;font-weight:bold}.chroma .no{color:#036;font-weight:bold}.chroma .nd{color:#555}.chroma .ne{color:#b06;font-weight:bold}.chroma .nf{color:#06b;font-weight:bold}.chroma .nl{color:#369;font-style:italic}.chroma .nn{color:#b06;font-weight:bold}.chroma .py{color:#369;font-weight:bold}.chroma .nt{color:#b06;font-weight:bold}.chroma .nv{color:#369}.chroma .ow{color:#080}.chroma .w{color:#bbb}.chroma .mb{color:#00d;font-weight:bold}.chroma .mf{color:#00d;font-weight:bold}.chroma .mh{color:#00d;font-weight:bold}.chroma .mi{color:#00d;font-weight:bold}.chroma .mo{color:#00d;font-weight:bold}.chroma .sa{color:#d20}.chroma .sb{color:#d20}.chroma .sc{color:#d20}.chroma .dl{color:#d20}.chroma .sd{color:#d20}.chroma .s2{color:#d20}.chroma .se{color:#04d}.chroma .sh{color:#d20}.chroma .si{color:#33b}.chroma .sx{color:#2b2}.chroma .sr{color:#080}.chroma .s1{color:#d20}.chroma .ss{color:#a60}.chroma .bp{color:#038}.chroma .fm{color:#06b;font-weight:bold}.chroma .vc{color:#369}.chroma .vg{color:#d70}.chroma .vi{color:#33b}.chroma .vm{color:#369}.chroma .il{color:#00d;font-weight:bold}@media(prefers-color-scheme: dark){.chroma .c{color:#75715e}.chroma .k{color:#66d9ef}.chroma .l{color:#ae81ff}.chroma .n{color:#f8f8f2}.chroma .o{color:#f92672}.chroma .p{color:#f8f8f2}.chroma .ch{color:#75715e}.chroma .cm{color:#75715e}.chroma .cp{color:#75715e}.chroma .cpf{color:#75715e}.chroma .c1{color:#75715e}.chroma .cs{color:#75715e}.chroma .gd{color:#f92672}.chroma .ge{font-style:italic}.chroma .gi{color:#a6e22e}.chroma .gs{font-weight:bold}.chroma .gu{color:#75715e}.chroma .kc{color:#66d9ef}.chroma .kd{color:#66d9ef}.chroma .kn{color:#f92672}.chroma .kp{color:#66d9ef}.chroma .kr{color:#66d9ef}.chroma .kt{color:#66d9ef}.chroma .ld{color:#e6db74}.chroma .m{color:#ae81ff}.chroma .s{color:#e6db74}.chroma .na{color:#a6e22e}.chroma .nb{color:#f8f8f2}.chroma .nc{color:#a6e22e}.chroma .no{color:#66d9ef}.chroma .nd{color:#a6e22e}.chroma .ni{color:#f8f8f2}.chroma .ne{color:#a6e22e}.chroma .nf{color:#a6e22e}.chroma .nl{color:#f8f8f2}.chroma .nn{color:#f8f8f2}.chroma .nx{color:#a6e22e}.chroma .py{color:#f8f8f2}.chroma .nt{color:#f92672}.chroma .nv{color:#f8f8f2}.chroma .ow{color:#f92672}.chroma .w{color:#f8f8f2}.chroma .mb{color:#ae81ff}.chroma .mf{color:#ae81ff}.chroma .mh{color:#ae81ff}.chroma .mi{color:#ae81ff}.chroma .mo{color:#ae81ff}.chroma .sa{color:#e6db74}.chroma .sb{color:#e6db74}.chroma .sc{color:#e6db74}.chroma .dl{color:#e6db74}.chroma .sd{color:#e6db74}.chroma .s2{color:#e6db74}.chroma .se{color:#ae81ff}.chroma .sh{color:#e6db74}.chroma .si{color:#e6db74}.chroma .sx{color:#e6db74}.chroma .sr{color:#e6db74}.chroma .s1{color:#e6db74}.chroma .ss{color:#e6db74}.chroma .bp{color:#f8f8f2}.chroma .fm{color:#a6e22e}.chroma .vc{color:#f8f8f2}.chroma .vg{color:#f8f8f2}.chroma .vi{color:#f8f8f2}.chroma .vm{color:#f8f8f2}.chroma .il{color:#ae81ff}}.chroma{position:relative;color:var(--color-black);border:thin var(--color-black) solid;background-color:rgba(0,0,0,0);width:min(100% - var(--gap)*2,50em);font-size:var(--font-0)}@media only screen and (min-width: 800px){.chroma{font-size:var(--font-1)}}.chroma .chroma__code{padding:var(--gap);overflow:auto}.chroma .chroma__language{position:absolute;top:calc(-1*var(--gap)*3/4);right:var(--gap);padding:calc(var(--gap)/4) calc(var(--gap)/2);background-color:var(--color-gray-0);border:thin var(--color-black) solid}.chroma code,.chroma pre{background-color:rgba(0,0,0,0)}.chroma *{box-shadow:none !important}.chroma:focus{box-shadow:0px 0px 0px 1px var(--color-black)}.apinav{margin-right:1px}.apinav__dropdown{display:flex;align-items:center;padding:var(--gap)}.apinav__dropdown select{flex:1 0 0;min-width:0}.apinav__search{display:none;align-items:center;padding:var(--gap)}.apinav__search input{flex:1 0 auto}.apinav__section_list{display:none;font-weight:normal;list-style:none;margin:0;padding:0}.apinav__section_list code{background-color:rgba(0,0,0,0)}.apinav__section_list summary{list-style:none}@media only screen and (min-width: 800px){.apinav__search{display:flex}.apinav__dropdown{display:none}.apinav__section_list{display:block}}.apinav__section{margin:0;padding:0}.apinav__section_head{font-size:var(--font-2)}.apinav__section_head .apinav__section_item{text-decoration:none}.apinav__section_items{list-style:none;margin:0;padding:0}.apinav__section_item{display:block;color:var(--color-black);text-decoration:none;cursor:pointer;padding:calc(var(--gap)/2) var(--gap)}.apinav__section_item:active,.apinav__section_item:visited{color:var(--color-black)}.apinav__section_item.active{background-color:var(--color-gray-1)}.apinav__section_item:hover,.apinav__section_item:focus{background-color:var(--color-gray-0)}.apinav__section_anchor{display:block;color:var(--color-black);text-decoration:none}.apinav__section_anchor:target{text-decoration:underline}.svg_diagram{display:block;border:thin var(--color-black) solid;padding:var(--gap);max-width:50em;background-color:var(--color-gray-0);margin-top:0;margin-bottom:var(--gap)}.svg_diagram:last-child{margin-bottom:0}.svg_diagram svg{width:100%;height:auto}.svg_diagram svg [stroke="#000"],.svg_diagram svg [style*="stroke:#000"]{stroke:var(--color-black) !important}.svg_diagram svg [stroke="#fff"],.svg_diagram svg [style*="stroke:#fff"]{stroke:var(--color-white) !important}.svg_diagram svg [fill="#000"],.svg_diagram svg [style*="fill:#000"]{fill:var(--color-black) !important}.svg_diagram svg [fill="#fff"],.svg_diagram svg [style*="fill:#fff"]{fill:var(--color-white) !important}.main_nav{z-index:1;flex:0 0 auto;border-bottom:thin var(--color-black) solid;display:flex;flex-direction:row;position:sticky;top:0;left:0;height:calc(var(--gap)*2);background-color:var(--color-white)}.main_nav .main_nav__jump{position:absolute;left:-1000px}.main_nav .main_nav__jump:focus{left:0}.main_nav>a{font-size:var(--font-2);line-height:calc(var(--gap)*2);padding:0 var(--gap);text-align:center;--box-shadow-color: transparent;box-shadow:-1px 0px 0px 0px var(--box-shadow-color),1px 0px 0px 0px var(--box-shadow-color)}@media only screen and (min-width: 800px){.main_nav>a{font-size:var(--font-3)}}.main_nav>a:link,.main_nav>a:visited,.main_nav>a:hover,.main_nav>a:focus,.main_nav>a:active{text-decoration:none;color:var(--color-black);outline:none}.main_nav>a:hover,.main_nav>a:focus{background-color:var(--color-gray-1);--box-shadow-color: var(--color-black)}.main_nav>a.current{background-color:var(--color-gray-2);--box-shadow-color: var(--color-black)}.sidenav{display:grid;grid-template-rows:auto 1fr;grid-template-columns:1fr;grid-template-areas:"sidenav__nav" "sidenav__body";width:100%}@media only screen and (min-width: 800px){.sidenav{grid-template-rows:1fr;grid-template-columns:320px 1fr;grid-template-areas:"sidenav__nav sidenav__body"}}.sidenav__nav{grid-area:sidenav__nav;position:sticky;--sidenav__nav__offset: calc(var(--gap) * 2 + 1px);top:var(--sidenav__nav__offset);height:calc(var(--gap)*3);overflow-y:hidden;box-shadow:0px 1px 0px 0px var(--color-black);background-color:var(--color-white);z-index:1}@media only screen and (min-width: 800px){.sidenav__nav{height:calc(var(--100vh) - var(--sidenav__nav__offset));box-shadow:none;overflow-y:auto}}.sidenav__body{grid-area:sidenav__body;box-shadow:-1px 0px 0px 0px var(--color-black);overflow:hidden;padding-bottom:var(--gap)}.sidenav__body>p,.sidenav__body>pre,.sidenav__body>.chroma,.sidenav__body>h1,.sidenav__body>h2,.sidenav__body>h3,.sidenav__body>h4,.sidenav__body>h5,.sidenav__body>h6,.sidenav__body>table,.sidenav__body>ul,.sidenav__body>ol,.sidenav__body>.svg_diagram{margin-left:var(--gap);margin-right:var(--gap)}.sidenav__body [id]{scroll-margin-top:calc(var(--gap)*6 + 1px)}@media only screen and (min-width: 800px){.sidenav__body [id]{scroll-margin-top:calc(var(--gap)*3)}}.example{margin:0 auto var(--gap) var(--gap);border:thin var(--color-black) solid;width:min(100% - var(--gap)*2,50em)}.example .chroma{width:auto}.example__code .chroma{margin:0;border:none}.example__code .chroma .chroma__code{max-height:20em;overflow:auto}.example__output{overflow:hidden;padding:0 var(--gap) var(--gap);box-shadow:0px -1px 0px 0px var(--color-black)}.tabs{margin:0 var(--gap) var(--gap) var(--gap)}.tabs__list{display:flex;width:fit-content}.tabs__tab{background-color:var(--color-white);border-bottom:none}.tabs__tab[aria-selected=true]{background-color:var(--color-gray-1)}.tabs__panel{display:none}.tabs__panel .example{margin:0}.tabs__panel.tabs__panel--active{display:block}.row{display:flex;flex-direction:row}.col{display:flex;flex-direction:column}.row>hr{display:block;margin:0;padding:0;background-color:var(--color-black);align-self:stretch;width:1px;height:auto;border:none}.col>hr{display:block;margin:0;padding:0;background-color:var(--color-black);align-self:stretch;height:1px;width:auto;border:none}.align-center{align-items:center}.justify-center{justify-content:center}.fill-up{flex-grow:1}.fill-even{flex-grow:1;flex-basis:0}.fill-trunc{flex-shrink:1}.fill-none{flex-basis:auto}.max-width-100{max-width:100%}.bt{border-top:thin var(--color-black) solid}.bb{border-bottom:thin var(--color-black) solid}.by{border-top:thin var(--color-black) solid;border-bottom:thin var(--color-black) solid}.bl{border-left:thin var(--color-black) solid}.br{border-right:thin var(--color-black) solid}.bx{border-left:thin var(--color-black) solid;border-right:thin var(--color-black) solid}.st{box-shadow:0px -1px 0px 0px var(--color-black)}.sb{box-shadow:0px 1px 0px 0px var(--color-black)}.sl{box-shadow:-1px 0px 0px 0px var(--color-black)}.sr{box-shadow:1px 0px 0px 0px var(--color-black)}.sy{box-shadow:0px -1px 0px 0px var(--color-black),0px 1px 0px 0px var(--color-black)}.sx{box-shadow:-1px 0px 0px 0px var(--color-black),1px 0px 0px 0px var(--color-black)}.m-0{margin:calc(var(--gap)*0)}.ml-0{margin-left:calc(var(--gap)*0)}.mr-0{margin-right:calc(var(--gap)*0)}.mx-0{margin-left:calc(var(--gap)*0);margin-right:calc(var(--gap)*0)}.mt-0{margin-top:calc(var(--gap)*0)}.mb-0{margin-bottom:calc(var(--gap)*0)}.my-0{margin-top:calc(var(--gap)*0);margin-bottom:calc(var(--gap)*0)}.p-0{padding:calc(var(--gap)*0)}.pl-0{padding-left:calc(var(--gap)*0)}.pr-0{padding-right:calc(var(--gap)*0)}.px-0{padding-left:calc(var(--gap)*0);padding-right:calc(var(--gap)*0)}.pt-0{padding-top:calc(var(--gap)*0)}.pb-0{padding-bottom:calc(var(--gap)*0)}.py-0{padding-top:calc(var(--gap)*0);padding-bottom:calc(var(--gap)*0)}.m-1{margin:calc(var(--gap)*1)}.ml-1{margin-left:calc(var(--gap)*1)}.mr-1{margin-right:calc(var(--gap)*1)}.mx-1{margin-left:calc(var(--gap)*1);margin-right:calc(var(--gap)*1)}.mt-1{margin-top:calc(var(--gap)*1)}.mb-1{margin-bottom:calc(var(--gap)*1)}.my-1{margin-top:calc(var(--gap)*1);margin-bottom:calc(var(--gap)*1)}.p-1{padding:calc(var(--gap)*1)}.pl-1{padding-left:calc(var(--gap)*1)}.pr-1{padding-right:calc(var(--gap)*1)}.px-1{padding-left:calc(var(--gap)*1);padding-right:calc(var(--gap)*1)}.pt-1{padding-top:calc(var(--gap)*1)}.pb-1{padding-bottom:calc(var(--gap)*1)}.py-1{padding-top:calc(var(--gap)*1);padding-bottom:calc(var(--gap)*1)}.m-2{margin:calc(var(--gap)*2)}.ml-2{margin-left:calc(var(--gap)*2)}.mr-2{margin-right:calc(var(--gap)*2)}.mx-2{margin-left:calc(var(--gap)*2);margin-right:calc(var(--gap)*2)}.mt-2{margin-top:calc(var(--gap)*2)}.mb-2{margin-bottom:calc(var(--gap)*2)}.my-2{margin-top:calc(var(--gap)*2);margin-bottom:calc(var(--gap)*2)}.p-2{padding:calc(var(--gap)*2)}.pl-2{padding-left:calc(var(--gap)*2)}.pr-2{padding-right:calc(var(--gap)*2)}.px-2{padding-left:calc(var(--gap)*2);padding-right:calc(var(--gap)*2)}.pt-2{padding-top:calc(var(--gap)*2)}.pb-2{padding-bottom:calc(var(--gap)*2)}.py-2{padding-top:calc(var(--gap)*2);padding-bottom:calc(var(--gap)*2)}.m-3{margin:calc(var(--gap)*3)}.ml-3{margin-left:calc(var(--gap)*3)}.mr-3{margin-right:calc(var(--gap)*3)}.mx-3{margin-left:calc(var(--gap)*3);margin-right:calc(var(--gap)*3)}.mt-3{margin-top:calc(var(--gap)*3)}.mb-3{margin-bottom:calc(var(--gap)*3)}.my-3{margin-top:calc(var(--gap)*3);margin-bottom:calc(var(--gap)*3)}.p-3{padding:calc(var(--gap)*3)}.pl-3{padding-left:calc(var(--gap)*3)}.pr-3{padding-right:calc(var(--gap)*3)}.px-3{padding-left:calc(var(--gap)*3);padding-right:calc(var(--gap)*3)}.pt-3{padding-top:calc(var(--gap)*3)}.pb-3{padding-bottom:calc(var(--gap)*3)}.py-3{padding-top:calc(var(--gap)*3);padding-bottom:calc(var(--gap)*3)}.text-center{text-align:center}.text-left{text-align:left}@media only screen and (min-width: 800px){.show-mobile{display:none}}@media only screen and (max-width: 800px){.hide-mobile{display:none}}