code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.block-comment,.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#999}.token.punctuation{color:#ccc}.token.attr-name,.token.deleted,.token.namespace,.token.tag{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.function,.token.number{color:#f08d49}.token.class-name,.token.constant,.token.property,.token.symbol{color:#f8c555}.token.atrule,.token.builtin,.token.important,.token.keyword,.token.selector{color:#cc99cd}.token.attr-value,.token.char,.token.regex,.token.string,.token.variable{color:#7ec699}.token.entity,.token.operator,.token.url{color:#67cdcc}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}:root{--primary-color:#9d41e0;--header-height:53px;--primary-bg:#faf7fe;--secondary-bg:#dd4b39;--primary-link-color:#4916d7;--border-color:#ece4f5;--success-bg:rgba(157,65,224,0.3);--space:10px;--space-x2:20px;--code-color:#1e1e1e;--code-color-block:#1e1e1e;--mz-hero-1:#1d0a26;--mz-hero-2:#2e1040;--mz-hero-3:#4a1a5e;--mz-glow-1:157,65,224;--mz-header-gradient:radial-gradient(42% 420% at 74% 100%,rgba(var(--mz-glow-1),.5) 0,rgba(var(--mz-glow-1),.2) 45%,rgba(var(--mz-glow-1),0) 75%),linear-gradient(100deg,var(--mz-hero-1),var(--mz-hero-2) 45%,var(--mz-hero-3));--mz-button-gradient:linear-gradient(135deg,#9333ea,#7c3aed 50%,#5b21b6);--mz-button-gradient-hover:linear-gradient(135deg,#a855f7,#7c3aed 50%,#5b21b6);--mz-button-shadow:0 8px 20px -8px rgba(168,85,247,0.7),inset 0 1px 0 hsla(0,0%,100%,0.25)}.flex{display:flex;align-items:center;flex-wrap:wrap}.flex>:last-child{margin-left:0;margin-right:0}.flex--center{justify-content:center}.flex--align-equal{align-items:stretch}.flex--align-equal>*{align-self:stretch}.flex--no-wrap{flex-wrap:no-wrap}.flex--space-between{justify-content:space-between}.gap-15>*{margin-right:15px}.gap-20>*{margin-right:20px}.gap-30>*{margin-right:30px}.gap-60>*{margin-right:60px}.flex-fit{flex:1}.flex-space-between{justify-content:space-between}.flex-align-top{align-items:flex-start}.grid-cols{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:calc(var(--space)*3)}.grid-cols--gap-small{grid-gap:calc(var(--space))}.grid-cols--2{grid-template-columns:repeat(2,1fr)}.grid-cols--4{grid-template-columns:repeat(4,1fr)}@media screen and (max-width:750px){.grid-cols{grid-template-columns:repeat(2,1fr)}}@media screen and (max-width:550px){.grid-cols{grid-template-columns:repeat(1,1fr)}}body,html{background-color:#fff;touch-action:manipulation;width:100%}*,:after,:before{box-sizing:inherit}img,svg{vertical-align:middle;max-width:100%}hr{opacity:.3}::-moz-selection{background:var(--border-color)}::selection{background:var(--border-color)}td,th{vertical-align:top}tr:last-child td{border-bottom:none}#app blockquote{margin:0 0 2em;padding:0 1.5em;border-left:.25em solid var(--border-color);font-size:1.1rem}a{color:#000;text-decoration:none;transition:color .3s,opacity .3s,background .3s;display:inline-block;position:relative;font-weight:500;border-radius:99px}.post a:not(.button){background:linear-gradient(180deg,transparent 60%,var(--success-bg) 0,var(--success-bg) 87%,transparent 0)}.post a:not(.button):hover{background:linear-gradient(180deg,transparent,var(--success-bg) 60%,var(--success-bg) 87%,transparent 0);text-decoration:underline}a.active--exact{color:var(--primary-link-color);text-decoration:underline}a:hover:not(.active){opacity:1}.markdown{width:100%}@media screen and (min-width:750px){.markdown{box-shadow:-10px -8px 12px 0 rgba(0,23,40,.08);padding-left:60px}}.container{max-width:1280px;width:100%}.container,.container-full,.container-md,.container-mini,.container-sm{padding:0 var(--space);margin-left:auto;margin-right:auto;width:100%}.container-md{max-width:720px}.container-sm{max-width:630px}.container-mini{max-width:460px}.container--push{margin-left:-15px;margin-right:-15px}.container--framed{box-shadow:1px 1px 15px rgba(0,0,0,.1);padding:var(--space-x2);background-color:#fff}.container .container{padding-left:0;padding-right:0}.container-main{flex-direction:column;flex-wrap:nowrap}@media screen and (min-width:750px){.container-main{flex-direction:row}}.sidebar{order:2;z-index:10;overflow:auto;position:relative;-webkit-overflow-scrolling:touch}@media screen and (min-width:750px){.sidebar{position:sticky;border-right:1px solid var(--border-color);top:var(--header-height);height:calc(100vh + var(--header-height)*-1);padding:0 0 50px .5rem;width:260px;order:0}}.sidebar h3{font-size:.75rem;text-transform:uppercase;letter-spacing:1px;margin:30px 0 15px}.sidebar p{margin-bottom:5px;font-size:.9rem}.sidebar a{color:currentColor;opacity:1;font-weight:400;display:flex}.sidebar a:hover{opacity:.6;text-decoration:underline}.sidebar a.active--exact{color:var(--primary-link-color)}.sidebar .menu-link{margin:0;padding:.2rem 0;font-size:.95rem}.sidebar .menu-link.active--exact{color:var(--primary-link-color);opacity:1;font-weight:600;position:relative;padding-left:.8rem;text-decoration:underline}.sidebar .menu-link.active--exact:before{content:" ";width:8px;height:8px;border-radius:10px;position:absolute;left:-1px;top:50%;margin-top:-5px;background-color:var(--primary-link-color);animation:scaleIn .7s forwards}.sidebar .submenu{list-style:none;margin:.5rem 0 .5rem .1rem;font-size:.85rem;opacity:.9;padding-left:.6rem;border-left:3px solid var(--border-color)}.sidebar .submenu__item{margin-bottom:0;padding:.1rem 0}@media screen and (max-width:750px){.sidebar{width:240px;padding-bottom:40px;display:none}.sidebar+.section{margin-left:0;width:100%}}@font-face{font-family:Jost;src:url(/assets/fonts/Jost-400-Book.fcace8bb.otf);font-weight:400;font-display:swap}@font-face{font-family:Jost;src:url(/assets/fonts/Jost-500-Medium.7c7be1b3.otf);font-weight:700;font-display:swap}@media screen and (max-width:750px){html{font-size:99%}}.lead{font-size:1.2rem}.small{font-size:.8em}.lead,h1,h2{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}p{letter-spacing:-.15px}p:last-child{margin:0}li{letter-spacing:-.15px}.uppercase{text-transform:uppercase}@keyframes scaleIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}@keyframes pulse{0%{box-shadow:0 0 0 0 var(--primary-link-color)}70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}@keyframes pulseSvg{0%{filter:drop-shadow(0 0 10px transparent)}70%{filter:drop-shadow(0 0 10px var(--primary-link-color))}to{filter:drop-shadow(0 0 10px transparent)}}@keyframes pulseAlt{0%{box-shadow:0 0 0 0 #e535ab}70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}@keyframes stroke{to{stroke-dashoffset:-20}}@keyframes stroke-invert{to{stroke-dashoffset:20}}.menu-item{display:block;transition:all .3s}.menu-item-enter,.menu-item-leave-to{opacity:0!important}.menu-item-leave-active{position:absolute}.button{display:inline-flex;align-items:center;padding:.34rem 1rem;font-weight:700;letter-spacing:.5px;position:relative;border-radius:5px}.button:after{content:" ";top:0;bottom:0;left:0;right:0;position:absolute;border:1px solid;border-radius:5px;transition:opacity .3s;opacity:.6}.button:hover:after{opacity:1}.button.primary{color:#fff;background-image:var(--mz-button-gradient);box-shadow:var(--mz-button-shadow)}.button.primary:after{border-color:rgba(0,0,0,.1)}.button.primary:hover{color:#fff;background-image:var(--mz-button-gradient-hover);box-shadow:0 12px 26px -8px rgba(168,85,247,.85),inset 0 1px 0 hsla(0,0%,100%,.25)}.button--small{font-size:.85rem;padding:.35rem .7rem}.button--large{font-size:1.2rem;padding:.4rem 1.2rem}.button+.button{margin-left:var(--space)}.bullet-list{list-style:none;margin-bottom:0;margin-left:.2rem}.bullet-list svg{vertical-align:middle;margin-top:-2px;color:var(--primary-color)}input{width:100%;padding:.34rem .8rem;border-radius:5px;border:1px solid var(--border-color)}input:focus{outline:0;border-color:rgba(0,0,0,.3)}input[type=search]{padding-right:1rem;background:93% 48% no-repeat #fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="%23CCC" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>')}.mz-outer-nav::-webkit-scrollbar,.sidebar::-webkit-scrollbar{width:5px;position:fixed;right:0}.mz-outer-nav::-webkit-scrollbar-thumb,.sidebar::-webkit-scrollbar-thumb{background:transparent;-webkit-transition:background-color 2s;transition:background-color 2s}.mz-outer-nav::-webkit-scrollbar-thumb:hover,.mz-outer-nav:hover::-webkit-scrollbar-thumb,.sidebar::-webkit-scrollbar-thumb:hover,.sidebar:hover::-webkit-scrollbar-thumb{background:var(--border-color)}#app language-js,#app pre{font-family:Space Mono,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.75rem;background-color:var(--code-color);border-radius:5px;font-feature-settings:"liga" 0;box-shadow:2px 5px 15px 0 rgba(0,0,0,.65)}#app pre{border:1px solid rgba(0,0,0,.05);background-color:var(--code-color-block)}#app pre code{background-color:transparent}#app pre{padding:1em 0 1em 1em;margin-bottom:2em;overflow-x:auto}#app code{overflow-wrap:break-word;word-wrap:break-word}h1 code,h2 code,h3 code,h4 code{font-size:.85em}nav a{letter-spacing:.5px;font-size:.85rem;font-weight:500;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;padding:5px}nav a svg{margin:3px 6px}nav a.active{color:currentColor;text-decoration:none}nav a.active svg{opacity:1}nav a:hover{color:var(--primary-color)}nav a:not(.active):not(:hover):not(.button){color:currentColor;opacity:.7}nav .has-dropdown{position:relative;display:inline-block}nav .has-dropdown:hover .dropdown{pointer-events:inherit;visibility:visible;opacity:1;transform:translateY(0)}nav .dropdown{background-color:var(--primary-bg);pointer-events:none;visibility:hidden;z-index:10;color:#111;position:absolute;top:100%;right:0;width:180px;border-radius:3px;padding:10px 20px 20px;box-shadow:1px 1px 5px rgba(0,0,0,.3);transform:translateY(-5px);opacity:0;transition:opacity .3s,transform .3s cubic-bezier(.19,1,.22,1)}nav .dropdown__title{padding:5px;font-size:12px;text-transform:uppercase;letter-spacing:1px;font-weight:700;opacity:.3;display:block;margin-top:10px}nav .dropdown a{justify-content:flex-start}nav.tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}nav.tabs a{background-color:var(--primary-bg);border-radius:5px;padding-left:10px;padding-right:10px;white-space:nowrap}nav.tabs a.active{color:#fff;background-color:var(--primary-color);background:var(--primary-color);box-shadow:var(--shadow)}@media screen and (max-width:750px){nav.tabs{justify-content:flex-start}}.dots-bg{background-position:0 100%;background-repeat:repeat-x;background-size:16px;background-image:url('data:image/svg+xml;utf8,<svg width="20" height="317" viewBox="0 0 20 317" fill="none" xmlns="http://www.w3.org/2000/svg"> <g opacity="0.1"> <path d="M4.45203 256.184C2.54551 256.184 1 254.648 1 252.753C1 250.858 2.54551 249.322 4.45203 249.322C6.35854 249.322 7.9043 250.858 7.9043 252.753C7.9043 254.648 6.35854 256.184 4.45203 256.184Z" fill="url(%23paint0_linear)"/> <path d="M4.45203 275.789C2.54551 275.789 1 274.253 1 272.359C1 270.464 2.54551 268.928 4.45203 268.928C6.35854 268.928 7.9043 270.464 7.9043 272.359C7.9043 274.253 6.35854 275.789 4.45203 275.789Z" fill="url(%23paint1_linear)"/> <path d="M4.45203 295.395C2.54551 295.395 1 293.859 1 291.964C1 290.069 2.54551 288.533 4.45203 288.533C6.35854 288.533 7.9043 290.069 7.9043 291.964C7.9043 293.859 6.35854 295.395 4.45203 295.395Z" fill="url(%23paint2_linear)"/> <path d="M4.45203 315C2.54551 315 1 313.464 1 311.569C1 309.674 2.54551 308.138 4.45203 308.138C6.35854 308.138 7.9043 309.674 7.9043 311.569C7.9043 313.464 6.35854 315 4.45203 315Z" fill="url(%23paint3_linear)"/> <path d="M4.45203 179.724C2.54551 179.724 1 178.188 1 176.293C1 174.398 2.54551 172.862 4.45203 172.862C6.35854 172.862 7.9043 174.398 7.9043 176.293C7.9043 178.188 6.35854 179.724 4.45203 179.724Z" fill="url(%23paint4_linear)"/> <path d="M4.45203 199.329C2.54551 199.329 1 197.793 1 195.898C1 194.003 2.54551 192.467 4.45203 192.467C6.35854 192.467 7.9043 194.003 7.9043 195.898C7.9043 197.793 6.35854 199.329 4.45203 199.329Z" fill="url(%23paint5_linear)"/> <path d="M4.45203 218.934C2.54551 218.934 1 217.398 1 215.503C1 213.608 2.54551 212.072 4.45203 212.072C6.35854 212.072 7.9043 213.608 7.9043 215.503C7.9043 217.398 6.35854 218.934 4.45203 218.934Z" fill="url(%23paint6_linear)"/> <path d="M4.45203 238.539C2.54551 238.539 1 237.003 1 235.109C1 233.214 2.54551 231.678 4.45203 231.678C6.35854 231.678 7.9043 233.214 7.9043 235.109C7.9043 237.003 6.35854 238.539 4.45203 238.539Z" fill="url(%23paint7_linear)"/> <path d="M4.45203 100.322C2.54551 100.322 1 98.7863 1 96.8914C1 94.9966 2.54551 93.4605 4.45203 93.4605C6.35854 93.4605 7.9043 94.9966 7.9043 96.8914C7.9043 98.7863 6.35854 100.322 4.45203 100.322Z" fill="url(%23paint8_linear)"/> <path d="M4.45203 119.928C2.54551 119.928 1 118.392 1 116.497C1 114.602 2.54551 113.066 4.45203 113.066C6.35854 113.066 7.9043 114.602 7.9043 116.497C7.9043 118.392 6.35854 119.928 4.45203 119.928Z" fill="url(%23paint9_linear)"/> <path d="M4.45203 139.533C2.54551 139.533 1 137.997 1 136.102C1 134.207 2.54551 132.671 4.45203 132.671C6.35854 132.671 7.9043 134.207 7.9043 136.102C7.9043 137.997 6.35854 139.533 4.45203 139.533Z" fill="url(%23paint10_linear)"/> <path d="M4.45203 159.138C2.54551 159.138 1 157.602 1 155.707C1 153.812 2.54551 152.276 4.45203 152.276C6.35854 152.276 7.9043 153.812 7.9043 155.707C7.9043 157.602 6.35854 159.138 4.45203 159.138Z" fill="url(%23paint11_linear)"/> <path d="M4.45203 23.8618C2.54551 23.8618 1 22.3258 1 20.4309C1 18.5361 2.54551 17 4.45203 17C6.35854 17 7.9043 18.5361 7.9043 20.4309C7.9043 22.3258 6.35854 23.8618 4.45203 23.8618Z" fill="url(%23paint12_linear)"/> <path d="M4.45203 43.4671C2.54551 43.4671 1 41.931 1 40.0362C1 38.1413 2.54551 36.6053 4.45203 36.6053C6.35854 36.6053 7.9043 38.1413 7.9043 40.0362C7.9043 41.931 6.35854 43.4671 4.45203 43.4671Z" fill="url(%23paint13_linear)"/> <path d="M4.45203 63.0724C2.54551 63.0724 1 61.5363 1 59.6414C1 57.7466 2.54551 56.2105 4.45203 56.2105C6.35854 56.2105 7.9043 57.7466 7.9043 59.6414C7.9043 61.5363 6.35854 63.0724 4.45203 63.0724Z" fill="url(%23paint14_linear)"/> <path d="M4.45203 82.6776C2.54551 82.6776 1 81.1415 1 79.2467C1 77.3519 2.54551 75.8158 4.45203 75.8158C6.35854 75.8158 7.9043 77.3519 7.9043 79.2467C7.9043 81.1415 6.35854 82.6776 4.45203 82.6776Z" fill="url(%23paint15_linear)"/> </g> <defs> <linearGradient id="paint0_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint1_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint2_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint3_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint4_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint5_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint6_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint7_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint8_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint9_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint10_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint11_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint12_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint13_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint14_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> <linearGradient id="paint15_linear" x1="374.764" y1="315" x2="374.098" y2="-37.5446" gradientUnits="userSpaceOnUse"> <stop stop-color="%234a1a5e"/> <stop offset="1" stop-color="%23D2DAD7" stop-opacity="0"/> </linearGradient> </defs> </svg>')}.dots-bg--animated{animation:animatedDots .6s linear infinite}.text-center{text-align:center}.no-wrap{white-space:no-wrap;flex-wrap:no-wrap;display:inline-block}.mb{margin-bottom:var(--space-x2)!important}.pb{padding-bottom:var(--space-x2)!important}.ml{margin-left:10px!important}.show-for-small{display:none}@media screen and (max-width:750px){.hide-for-small{display:none!important}.show-for-small{display:inherit}}.docs-page .post{max-width:100%;min-height:calc(100vh - 103px)}.docs-page .post ul li{margin-bottom:.2rem}.docs-page .post p>img{margin-bottom:0}.docs-page .post img{box-shadow:2px 5px 15px 0 rgba(0,0,0,.65)}.docs-page .post h1,.docs-page .post h2,.docs-page .post h3{padding-top:6rem;margin-top:-5rem}.docs-page .post h1 a,.docs-page .post h2 a,.docs-page .post h3 a{float:left;top:.12em;margin-left:-1.2em;font-size:.85em;text-align:center;width:.8em;opacity:0;color:var(--primary-link-color);box-shadow:none;background:none}.docs-page .post h1 a:before,.docs-page .post h2 a:before,.docs-page .post h3 a:before{content:" ";position:absolute;top:0;height:100%;width:calc(100% + .5em)}.docs-page .post h1 a:after,.docs-page .post h2 a:after,.docs-page .post h3 a:after{display:none}.docs-page .post h1:hover a,.docs-page .post h2:hover a,.docs-page .post h3:hover a{opacity:1}.docs-page .post h2:before{content:" ";display:block;margin-bottom:1.5rem;border-top:1px solid var(--border-color)}.docs-page .post h3{opacity:.9}.docs-page .post h4,.docs-page .post h5,.docs-page .post h6{opacity:.8}.docs-page .post h1 a,.docs-page .post h4 a,.docs-page .post h5 a,.docs-page .post h6 a{display:none}.docs-page .post p,.docs-page .post ul{position:relative;z-index:1}.docs-page .post ul>li>p{font-weight:400}.github-edit-link{font-size:.9rem;font-weight:400;display:flex;align-items:center;padding-top:1rem}.github-edit-link:not(:hover){color:var(--primary-link-color)}.github-edit-link svg{margin-right:.5rem}.docs-nav{display:flex;justify-content:space-between;padding-top:var(--space);padding-bottom:var(--space);border-top:1px solid var(--border-color)}.docs-nav__title{margin:0;font-size:.75em}.docs-nav__link{padding:0;color:var(--primary-link-color)}.logo{max-width:32px;height:auto;margin-bottom:0}.main-nav{margin-top:3px}.main-nav svg{display:none}.main-nav__label{font-size:1.2rem}@media screen and (max-width:750px){.main-nav{display:none}}.header-search{display:inline-block;margin-bottom:0;margin-right:.5rem;font-size:.9rem}.header-search .header-search__input{color:#fff;border-radius:5px;width:170px;background-color:hsla(0,0%,100%,.15);border-color:transparent;padding:.3rem .6rem .27rem;transition:padding .2s,width .2s,opacity .3s,background-color .3s;margin-bottom:.5px}.header-search .header-search__input:focus{background-color:hsla(0,0%,100%,.1)}.algolia-autocomplete .algolia-docsearch-suggestion--wrapper{padding-top:0}.mz-burger-button[data-v-ff6c233e]{cursor:pointer;display:none;height:18px;position:relative;top:4px;width:28px;z-index:21;opacity:.7}.mz-burger-bars[data-v-ff6c233e]{background:#fff}.mz-line-style[data-v-ff6c233e]{height:20%;left:0;position:absolute;right:0}@media screen and (max-width:750px){.mz-burger-button[data-v-ff6c233e]{display:inline-block}}.header{z-index:20;position:relative;top:0;background-color:var(--mz-hero-2);background-image:var(--mz-header-gradient);color:#fff;border-bottom:1px solid transparent;flex-wrap:nowrap;position:sticky;box-shadow:0 3px 4px 0 rgba(0,0,0,.19),0 3px 3px -2px rgba(0,0,0,.13),0 1px 8px 0 rgba(0,0,0,.11)}.header .header-inner{min-height:var(--header-height)}.header nav a:hover{color:#e9d5ff}@media screen and (max-width:750px){header .logo{margin-right:0}.header-actions{margin-left:auto!important;font-size:.9rem}}footer{font-size:.75rem;background-color:var(--primary-bg);padding:15px;color:#444;border-top:1px solid var(--border-color)}.mz-drawer{max-width:350px}.mz-drawer.sidebar .ch-drawer__content{padding:0 0 0 20px}.link-button{position:relative;z-index:1;display:inline-block;vertical-align:middle;padding:10px 20px;outline:0;font-family:inherit;font-weight:500;line-height:1.2222222;text-align:center;text-decoration:none;border:none;border-radius:4px;cursor:pointer;background:var(--mz-button-gradient);color:#fff;transform:translateY(0);transition:transform .2s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-shadow:var(--mz-button-shadow)}.link-button:focus,.link-button:hover{text-decoration:none;color:#fff;background:var(--mz-button-gradient-hover);transform:translateY(-1px);border-bottom:0}.link-button--dark{background:hsla(0,0%,100%,.12);color:#fff;box-shadow:inset 0 0 0 1px rgba(196,181,253,.35)}.link-button--dark:focus,.link-button--dark:hover{color:#fff;background:hsla(0,0%,100%,.2)}.link-button-wrapper{display:inline-block;margin-bottom:10px;margin-right:5px}@font-face{font-family:League Spartan;font-style:normal;font-display:swap;font-weight:700;src:local("League Spartan Bold normal"),local("League Spartan-Boldnormal"),url(/assets/fonts/league-spartan-700.60638dc8.woff2) format("woff2"),url(/assets/fonts/league-spartan-700.c671ee31.woff) format("woff")}:host,:root{--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free";--fa-font-light:normal 300 1em/1 "Font Awesome 6 Pro";--fa-font-thin:normal 100 1em/1 "Font Awesome 6 Pro";--fa-font-duotone:normal 900 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-regular:normal 400 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-light:normal 300 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-thin:normal 100 1em/1 "Font Awesome 6 Duotone";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands";--fa-font-sharp-solid:normal 900 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-regular:normal 400 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-light:normal 300 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-thin:normal 100 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-duotone-solid:normal 900 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-regular:normal 400 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-light:normal 300 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-thin:normal 100 1em/1 "Font Awesome 6 Sharp Duotone"}svg.svg-inline--fa:not(:host),svg.svg-inline--fa:not(:root){overflow:visible;box-sizing:content-box}.svg-inline--fa{display:var(--fa-display,inline-block);height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0}.svg-inline--fa.fa-sm{vertical-align:-.07143em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left{margin-right:var(--fa-pull-margin,.3em);width:auto}.svg-inline--fa.fa-pull-right{margin-left:var(--fa-pull-margin,.3em);width:auto}.svg-inline--fa.fa-li{width:var(--fa-li-width,2em);top:.25em}.svg-inline--fa.fa-fw{width:var(--fa-fw-width,1.25em)}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{transform-origin:center center}.fa-layers-text{left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center center}.fa-layers-counter{background-color:var(--fa-counter-background-color,#ff253a);border-radius:var(--fa-counter-border-radius,1em);box-sizing:border-box;color:var(--fa-inverse,#fff);line-height:var(--fa-counter-line-height,1);max-width:var(--fa-counter-max-width,5em);min-width:var(--fa-counter-min-width,1.5em);overflow:hidden;padding:var(--fa-counter-padding,.25em .5em);right:var(--fa-right,0);text-overflow:ellipsis;top:var(--fa-top,0);transform:scale(var(--fa-counter-scale,.25));transform-origin:top right}.fa-layers-bottom-right{bottom:var(--fa-bottom,0);right:var(--fa-right,0);top:auto;transform:scale(var(--fa-layers-scale,.25));transform-origin:bottom right}.fa-layers-bottom-left{bottom:var(--fa-bottom,0);left:var(--fa-left,0);right:auto;top:auto;transform:scale(var(--fa-layers-scale,.25));transform-origin:bottom left}.fa-layers-top-right{top:var(--fa-top,0);right:var(--fa-right,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:top right}.fa-layers-top-left{left:var(--fa-left,0);right:auto;top:var(--fa-top,0);transform:scale(var(--fa-layers-scale,.25));transform-origin:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0deg)}}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;vertical-align:middle;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;z-index:var(--fa-stack-z-index,auto)}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color,currentColor);opacity:var(--fa-primary-opacity,1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color,currentColor)}.svg-inline--fa .fa-secondary,.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity,.4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity,1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}.home-teaser .logo{margin-bottom:10px}.home-teaser__npm{font-size:2.5em;margin:-.75em 0;vertical-align:middle}.flex-grid-thirds{display:flex;justify-content:space-between}.flex-grid-thirds .col{width:32%}.home-teaser{background-image:url(/images/background.svg);width:100%;background-size:cover;background-position:bottom;height:370px;text-align:left;padding-top:30px;background-repeat:no-repeat}@media(max-width:600px){.home-teaser{padding-top:0}.flex-grid-thirds{display:block}.flex-grid-thirds .col{width:100%;margin:0 0 10px}}.home.container{max-width:none;padding:0}.home-teaser__inner{max-width:1000px;padding:20px;margin:0 auto}.home-teaser__title{padding:20px 0;color:#fff;margin:0;font-weight:300;font-size:32px;letter-spacing:4px}.home-teaser__subtitle{color:#fff;font-weight:300;font-size:1em}.home-bottom{padding:20px 20px 0}.post a:not(.button).gif-player{background:none}.docs-page .post img.play{width:100px}.docs-page .post img.loading,.docs-page .post img.play{position:absolute;top:calc(50% - 55px);left:calc(50% - 55px);box-shadow:none}.custom-block.warning{background-color:rgba(255,229,100,.3);color:#6b5900;padding:.5rem 1.5rem;border-left:.5rem solid;border-color:#e7c000;margin:1rem 0}.custom-block.warning .custom-block-title{color:#b29400}.custom-block .custom-block-title{font-weight:600;margin-bottom:.2rem}.custom-block.tip{background-color:var(--primary-bg);padding:.5rem 1.5rem;border-left:.5rem solid;border-color:var(--primary-color);margin:1rem 0}