@import url("https://fonts.googleapis.com/css?family=Montserrat&display=swap");.search-container{display:inline-block;position:relative;width:300px;margin-left:2em}.search-container input{width:100%;padding:.5rem;background:var(--background-alt-color);border:1px var(--background-alt-color)}.search-container ::placeholder{color:var(--foreground-color);opacity:1}.search-results{display:none;position:absolute;background:var(--background-color);color:var(--foreground-color);padding:1rem;box-shadow:2px 2px 2px 0 rgba(0,0,0,.5);max-height:500px;overflow:auto;width:150%;right:0}.search-results__items{list-style:none}.search-results li{margin-top:1rem;border-bottom:1px solid #ccc;font-size:.9rem}.search-results li:first-of-type{margin-top:0}.search-results__item{margin-bottom:1rem}.search-results__item a{font-size:1.2rem;display:inline-block;margin-bottom:.5rem}.callout{border:1px solid var(--border);background-color:var(--bg);border-radius:5px;padding:0 1rem;overflow-y:hidden;transition:max-height .3s ease;box-sizing:border-box;--callout-icon-note: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="2" x2="22" y2="6"></line><path d="M7.5 20.5 19 9l-4-4L3.5 16.5 2 22z"></path></svg>');--callout-icon-abstract: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="8" y="2" width="8" height="4" rx="1" ry="1"></rect><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><path d="M12 11h4"></path><path d="M12 16h4"></path><path d="M8 11h.01"></path><path d="M8 16h.01"></path></svg>');--callout-icon-info: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="16" x2="12" y2="12"></line><line x1="12" y1="8" x2="12.01" y2="8"></line></svg>');--callout-icon-todo: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10z"></path><path d="m9 12 2 2 4-4"></path></svg>');--callout-icon-tip: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z"></path></svg> ');--callout-icon-success: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg> ');--callout-icon-question: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><line x1="12" y1="17" x2="12.01" y2="17"></line></svg> ');--callout-icon-warning: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>');--callout-icon-failure: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg> ');--callout-icon-danger: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"></polygon></svg> ');--callout-icon-bug: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect width="8" height="14" x="8" y="6" rx="4"></rect><path d="m19 7-3 2"></path><path d="m5 7 3 2"></path><path d="m19 19-3-2"></path><path d="m5 19 3-2"></path><path d="M20 13h-4"></path><path d="M4 13h4"></path><path d="m10 4 1 2"></path><path d="m14 4-1 2"></path></svg>');--callout-icon-example: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="8" y1="6" x2="21" y2="6"></line><line x1="8" y1="12" x2="21" y2="12"></line><line x1="8" y1="18" x2="21" y2="18"></line><line x1="3" y1="6" x2="3.01" y2="6"></line><line x1="3" y1="12" x2="3.01" y2="12"></line><line x1="3" y1="18" x2="3.01" y2="18"></line></svg> ');--callout-icon-quote: url('data:image/svg+xml; utf8, <svg xmlns="http://www.w3.org/2000/svg" width="100%" height="100%" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 21c3 0 7-1 7-8V5c0-1.25-.756-2.017-2-2H4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2 1 0 1 0 1 1v1c0 1-1 2-2 2s-1 .008-1 1.031V20c0 1 0 1 1 1z"></path><path d="M15 21c3 0 7-1 7-8V5c0-1.25-.757-2.017-2-2h-4c-1.25 0-2 .75-2 1.972V11c0 1.25.75 2 2 2h.75c0 2.25.25 4-2.75 4v3c0 1 0 1 1 1z"></path></svg>');--callout-icon-fold: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"%3E%3Cpolyline points="6 9 12 15 18 9"%3E%3C/polyline%3E%3C/svg%3E')}.callout>*:nth-child(2){margin-top:0}.callout[data-callout]{--color: #448aff;--border: #448aff44;--bg: #448aff10;--callout-icon: var(--callout-icon-note)}.callout[data-callout=abstract]{--color: #00b0ff;--border: #00b0ff44;--bg: #00b0ff10;--callout-icon: var(--callout-icon-abstract)}.callout[data-callout=info],.callout[data-callout=todo]{--color: #00b8d4;--border: #00b8d444;--bg: #00b8d410;--callout-icon: var(--callout-icon-info)}.callout[data-callout=todo]{--callout-icon: var(--callout-icon-todo)}.callout[data-callout=tip]{--color: #00bfa5;--border: #00bfa544;--bg: #00bfa510;--callout-icon: var(--callout-icon-tip)}.callout[data-callout=success]{--color: #09ad7a;--border: #09ad7144;--bg: #09ad7110;--callout-icon: var(--callout-icon-success)}.callout[data-callout=question]{--color: #dba642;--border: #dba64244;--bg: #dba64210;--callout-icon: var(--callout-icon-question)}.callout[data-callout=warning]{--color: #db8942;--border: #db894244;--bg: #db894210;--callout-icon: var(--callout-icon-warning)}.callout[data-callout=failure],.callout[data-callout=danger],.callout[data-callout=bug]{--color: #db4242;--border: #db424244;--bg: #db424210;--callout-icon: var(--callout-icon-failure)}.callout[data-callout=bug]{--callout-icon: var(--callout-icon-bug)}.callout[data-callout=danger]{--callout-icon: var(--callout-icon-danger)}.callout[data-callout=example]{--color: #7a43b5;--border: #7a43b544;--bg: #7a43b510;--callout-icon: var(--callout-icon-example)}.callout[data-callout=quote]{--color: var(--secondary);--border: var(--lightgray);--callout-icon: var(--callout-icon-quote)}.callout.is-collapsed>.callout-title>.fold-callout-icon{transform:rotateZ(-90deg)}.callout-title{display:flex;align-items:flex-start;gap:5px;padding:1rem 0;color:var(--color);--icon-size: 18px}.callout-title .fold-callout-icon{transition:transform .15s ease;opacity:.8;cursor:pointer;--callout-icon: var(--callout-icon-fold)}.callout-title>.callout-title-inner>p{color:var(--color);margin:0}.callout-title .callout-icon,.callout-title .fold-callout-icon{width:var(--icon-size);height:var(--icon-size);flex:0 0 var(--icon-size);background-size:var(--icon-size) var(--icon-size);background-position:center;background-color:var(--color);mask-image:var(--callout-icon);mask-size:var(--icon-size) var(--icon-size);mask-position:center;mask-repeat:no-repeat;padding:.2rem 0}.callout-title .callout-title-inner{font-weight:700}html{font-family:-apple-system,BlinkMacSystemFont,"Montserrat","Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}.transition{-webkit-transition:background-color 300ms linear;-ms-transition:background-color 300ms linear;transition:background-color 300ms linear}body{margin:0;background:var(--background-color, #2d283e);color:var(--foreground-color, #d1d7e0);font-size:18px;line-height:1.5;-webkit-font-smoothing:antialiased}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}.container{max-width:42em;margin:0 auto}main{outline:none}h1{font-size:1.35em}h2{font-size:1.2em}h3{font-size:1.1em}a{color:var(--highlight-color, #dec1ff);text-decoration:none}a:active,a:hover{outline:0}a:hover,a:focus{color:var(--foreground-color, #d1d7e0);border-bottom:1px solid var(--foreground-color, #d1d7e0)}a:active{color:var(--highlight-color-alt, #ed254e);opacity:.9;border-bottom:1px solid var(--highlight-color-alt, #ed254e)}a.active{color:var(--highlight-color-alt, #ed254e)}a.skip-main{left:-999px;position:absolute;top:auto;width:1px;height:1px;overflow:hidden;z-index:-999}a.skip-main:focus,a.skip-main:active{left:auto;top:0px;width:auto;height:auto;overflow:auto;z-index:999;padding:4px 6px 4px 6px;text-decoration:underline;border:none}.table-wrapper{overflow-x:auto}table{max-width:100%;border-spacing:0}thead{background:lightgrey}th,td{padding:.5em 1em;border:1px double lightgrey}pre{padding:1em;background-color:#f1f1f1;max-width:100%;overflow:auto;white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;}code,pre,kbd{font-family:monospace;font-size:.9em;line-height:154%}blockquote{border-left:2px solid #ccc;padding:.1em 1em;margin-left:.75em}p{margin-top:.5em;margin-bottom:.5em}hr{height:1px;border:0;border-top:1px solid #ccc}ul ol,ol ol,ul ul{margin:0em 2em}header{display:flex;justify-content:space-between}header h1{font-size:1em;margin-top:1em;margin-bottom:0;font-weight:normal}header h2{font-size:1em;margin:0;font-weight:normal}header nav{margin-top:1em;max-width:100%;text-align:right;margin-bottom:1em}header nav a{margin-left:2em}header a{color:var(--highlight-color, #dec1ff)}.site-header{white-space:nowrap}main h1{margin-top:1em;font-weight:normal;line-height:1.1em;margin-bottom:.5em;font-weight:600}.post-short-list:first-of-type{margin-top:1em}article:not(:last-of-type){border-bottom:thin solid var(--foreground-color, #d1d7e0);padding-bottom:2em}article header h1{font-size:1.35em;line-height:1.1em;margin-bottom:.5em;font-weight:600}article header h1 a{border:none;text-decoration:none;color:var(--highlight-color, #dec1ff)}.article-info{font-size:.75em;color:grey;margin-top:1em}.article-info a{color:grey}.article-info a:hover{color:var(--highlight-color-alt, #ed254e)}.post-short-list .article-info{margin-top:0;margin-bottom:1.5em}.article-taxonomies{display:inline}.article-date{white-space:nowrap}.article-categories{display:inline;list-style-type:none;padding:0}.article-categories li{display:inline;margin-right:1em}.article-tags{display:inline;list-style-type:none;padding:0;margin:0}.article-tags li{display:inline;margin-right:1em}article img{max-width:100%;display:block;height:auto;margin:0 auto .5em}.read-more{font-size:.85em}.divider{display:block;height:1px;border:0;border-top:thin solid var(--foreground-color, #d1d7e0);width:25%;margin:1em auto}.post-summary{margin-top:.5em;display:block}.post-summary>p{display:block}.terms{list-style-type:none;padding:0;line-height:2em}.pagination{display:flex;justify-content:space-between;margin-top:3em}.pagination{text-align:center}.pagination-item{background:var(--foreground-color, #d1d7e0);padding:.75em .75em}.disabled{visibility:hidden}.pagination-item a{color:var(--background-color, #2d283e)}.pagination-item a:hover,.pagination-item a:focus{color:var(--highlight-color-alt, #ed254e);border-bottom:0}footer{border-top:thin solid #f1f1f1;margin-top:3em;font-size:16px}ul.language-select{padding-left:0;list-style:none;display:flex}ul.language-select>li{margin-right:1em}@media (max-width: 840px){.main-wrapper{margin:0;max-width:none;overflow-x:hidden;padding-left:25px;padding-right:25px}.container{max-width:90%;margin:0 auto}.pagination-item{padding:.5em .5em;font-size:14px}header{display:block}.site-header{text-align:center}header nav{margin-top:1em;max-width:100%;text-align:center;padding:.5em 0}header nav a:first-of-type{margin-left:0}header nav a{margin-left:5%}}.toc{position:fixed;left:3em;top:5em;padding:1em;width:14em;line-height:2}@media screen and (max-width: 768px){.toc{position:static}}.toc ul{list-style:none;padding:0;margin:0}.toc ul ul{padding-left:2em}.toc li a{display:inline-block;color:var(--highlight-color, #dec1ff);text-decoration:none;transition:all .3s cubic-bezier(.23, 1, .32, 1)}.toc li.visible>a{color:var(--highlight-color-alt, #ed254e);transform:translate(5px)}.toc-marker{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1}.toc-marker path{transition:all .3s ease;stroke:var(--foreground-color, #d1d7e0)}details[data-popover]{position:fixed}details[data-popover]>div{position:fixed;bottom:0px;left:0px;width:100%}.swatch{height:40px;width:40px;display:flex;margin:5px}.swatch-container{display:flex;flex:1;background-color:var(--foreground-color, #d1d7e0)}.swatch-child{flex:1;display:flex;justify-content:center}.paint-roller{height:30px;fill:var(--foreground-color, #d1d7e0)}