.night-and-day--icon+.night-and-day--icon{margin-left:1em}.night-and-day--switcher+.night-and-day--switcher{margin-left:1em}.night-and-day--switcher .night-and-day--caption{font-size:.75em;margin-top:-.25em;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none}html,body,body div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,figure,footer,header,menu,nav,section,time,mark,audio,video,details,summary{margin:0;padding:0;border:0;font-size:100%;line-height:1.5;font-weight:400;vertical-align:baseline;background:transparent}main,article,aside,figure,footer,header,nav,section,details,summary{display:block}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}img,object,embed{max-width:100%}html{overflow-y:scroll}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:"";content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted #000;cursor:help}table{border-collapse:separate;border-spacing:0}th{font-weight:700;vertical-align:bottom}td{font-weight:400;vertical-align:top}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}pre{white-space:pre;white-space:pre-wrap;white-space:pre-line;word-wrap:break-word}input[type=radio]{vertical-align:text-bottom}input[type=checkbox]{vertical-align:bottom}select,input,textarea{font:99% sans-serif}table{font-size:inherit;font:100%}small{font-size:85%}strong{font-weight:700}td,td img{vertical-align:top}sub,sup{font-size:75%;line-height:0;position:relative}sup{top:-.5em}sub{bottom:-.25em}pre,code,kbd,samp{font-family:monospace,sans-serif}.clickable,label,input[type=button],input[type=submit],input[type=file],button{cursor:pointer}button,input,select,textarea{margin:0}button,input[type=button]{width:auto;overflow:visible}.clearfix:after{content:" ";display:block;clear:both}.largest{font-size:2.5em}.larger{font-size:2em}.large{font-size:1.5em}.largish{font-size:1.25em}.smallish{font-size:.875em}.small{font-size:.75em}.smaller{font-size:.625em}.smallest{font-size:.5em}h1{font-size:2.5em;line-height:1.1;font-weight:400}h2{font-size:2em;line-height:1.2;font-weight:400;margin-top:3rem}h2:first-child{margin-top:0}h3{font-size:1.5em;line-height:1.3;font-weight:700}h4{font-size:1.25em;line-height:1.4;font-weight:700}p{margin:1rem 0;font-size:1rem;line-height:1.7}p.intro{font-size:1.4em}p.subintro{font-size:1.25em}ul.menu{padding:1rem;list-style:disc}li{margin-bottom:1rem}a,.link,.night-and-day--switcher{font-weight:500;color:var(--link-text);text-decoration:inherit}a:hover,.link:hover,.night-and-day--switcher:hover{color:var(--link-hover-text)}svg.night-and-day--icon{box-sizing:content-box;display:inline-block;height:1em;overflow:visible;vertical-align:-.125em}.night-and-day--icon+.night-and-day--icon{margin-left:1rem}.night-and-day--switcher{text-align:center;display:inline-block}.night-and-day--switcher+.night-and-day--switcher{margin-left:1rem}.night-and-day--switcher .night-and-day--caption{font-size:.75em;margin-top:-.25em;text-align:center}div.codeblock,div.output{position:relative;font-size:.9rem;border-radius:var(--codeblock-radius);padding:0;margin:1rem 0;box-shadow:var(--codeblock-shadow)}div.codeblock h4.caption,div.output h4.caption{position:absolute;font-size:.8rem;font-weight:400;top:.25rem;right:.75rem;margin:0;padding:0;text-align:right}div.codeblock{font-size:.9rem;padding:0;margin-bottom:2rem;box-shadow:var(--codeblock-shadow)}div.codeblock.expandable{background-color:#2b2b2b}div.codeblock pre{border-radius:var(--codeblock-radius);margin:0!important;max-height:18rem;overflow-y:scroll;overflow-x:scroll;max-width:100%;transition:all .5s}div.codeblock h4.caption{color:#fff}div.codeblock div.controls{position:absolute;bottom:0;left:0;right:0;background-color:var(--codeblock-back);background:linear-gradient(180deg,var(--codeblock-back-from) 0%,var(--codeblock-back-to) 100%);display:flex;justify-content:space-between;margin:0;border-radius:0 0 var(--codeblock-radius) var(--codeblock-radius)}div.codeblock .expand,div.codeblock .clipboard{font-size:.8rem;color:#fff;background-color:hsla(var(--brand-hue),90%,30%,.8);padding:.25em .5em;margin:0;min-width:10ch;text-align:center;transition:all 1s;-webkit-user-select:none;user-select:none}div.codeblock .expand:hover,div.codeblock .clipboard:hover{transition:all .2s;background-color:hsla(var(--brand-hue),50%,50%,.9);cursor:pointer}div.codeblock .expand{left:0%;border-radius:0 var(--codeblock-radius) 0 var(--codeblock-radius)}div.codeblock .clipboard{right:0rem;border-radius:var(--codeblock-radius) 0 var(--codeblock-radius) 0;transition:all 1s}div.codeblock .clipboard.copied{background-color:#178217e6;cursor:pointer}div.codeblock.fixed .expand{visibility:hidden}div.codeblock.expanded pre{max-height:250rem;transition:all .5s}div.output{position:relative;color:var(--output-text);border:1px solid var(--output-border);background-color:var(--output-back);box-shadow:var(--codeblock-shadow);padding:1rem 2rem;margin-bottom:2rem}div.output h4.caption{color:var(--output-text)}div.output p:first-of-type{margin-top:0}div.example:last-child .output{margin-bottom:0}code:not(.codeblock code){color:var(--code-text);background-color:var(--code-back);border:1px solid var(--code-border);padding:0 .25em;border-radius:2px}a code:not(.codeblock code){color:var(--link-text)}a:hover code:not(.codeblock code){color:var(--link-hover)}#page{--brand-hue: 20;--red-hue: 0;--brown-hue: 20;--green-hue: 90;--blue-hue: 200;--indigo-hue: 240;--violet-hue: 275;--header-back: hsl(var(--brand-hue), 30%, 70%);--header-text: hsl(var(--brand-hue), 60%, 30%);--header-hover: hsl(var(--brand-hue), 70%, 15%);--palette-back: hsl(var(--brand-hue), 25%, 80%);--swatch-hover-light: 75%;--swatch-select-light: 70%;--panel-shadow: rgba(0, 0, 0, .05);--header-shadow: var(--panel-shadow);--body-back: hsl(var(--brand-hue), 20%, 85%);--body-text: hsl(var(--brand-hue), 90%, 10%);--panel-border: hsl(var(--brand-hue), 25%, 85%);--side-text: hsl(var(--brand-hue), 50%, 10%);--side-back: hsl(var(--brand-hue), 20%, 90%);--menu-text: hsl(var(--brand-hue), 40%, 50%);--menu-back: hsl(var(--brand-hue), 20%, 93%);--menu-hover-text: hsl(var(--brand-hue), 50%, 45%);--menu-hover-back: hsl(var(--brand-hue), 20%, 95%);--menu-active-text: hsl(var(--brand-hue), 50%, 40%);--menu-active-back: hsl(var(--brand-hue), 20%, 97%);--main-text: hsl(var(--brand-hue), 90%, 10%);--main-back: hsl(var(--brand-hue), 20%, 97%);--footer-text: hsl(var(--brand-hue), 40%, 35%);--footer-hover-text: hsl(var(--brand-hue), 60%, 25%);--link-text: hsl(var(--brand-hue), 50%, 40%);--link-hover-text: hsl(var(--brand-hue), 50%, 30%);--demo-border: hsl(var(--brand-hue), 25%, 80%);--demo-back: hsl(var(--brand-hue), 25%, 99%);--button-back: hsl(var(--brand-hue), 50%, 50%);--button-hover-back: hsl(var(--brand-hue), 50%, 45%);--logo-back: hsl(var(--brand-hue), 5%, 97%);--code-text: hsl(var(--brand-hue), 90%, 30%);--code-back: hsl(var(--brand-hue), 30%, 95%);--code-hover: hsl(var(--brand-hue), 30%, 90%);--code-border: hsl(var(--brand-hue), 40%, 90%);--output-text: hsl(var(--brand-hue), 10%, 90%);--output-back: hsl(var(--brand-hue), 25%, 25%);--output-border: hsl(var(--brand-hue), 25%, 25%);--shadow-1: 2px 2px 4px rgba(0, 0, 0, .08);--shadow-2: 4px 4px 8px rgba(0, 0, 0, .06);--codeblock-radius: .25em;--codeblock-shadow: var(--shadow-1), var(--shadow-2);--codeblock-back-from: rgba(40, 19, 0, 0);--codeblock-back-to: #281300}#page{color-scheme:light dark}#page.light{color-scheme:light}#page.red{--brand-hue: var(--red-hue)}#page.green{--brand-hue: var(--green-hue)}#page.blue{--brand-hue: var(--blue-hue)}#page.indigo{--brand-hue: var(--indigo-hue)}#page.violet{--brand-hue: var(--violet-hue)}#page.dark{color-scheme:dark;--header-back: hsl(var(--brand-hue), 30%, 30%);--header-text: hsl(var(--brand-hue), 30%, 70%);--header-hover: hsl(var(--brand-hue), 70%, 80%);--palette-back: hsl(var(--brand-hue), 85%, 15%);--swatch-hover-light: 65%;--swatch-select-light: 65%;--body-back: hsl(var(--brand-hue), 20%, 10%);--body-text: hsl(var(--brand-hue), 90%, 10%);--panel-border: hsl(var(--brand-hue), 25%, 20%);--side-text: hsl(var(--brand-hue), 20%, 85%);--side-back: hsl(var(--brand-hue), 20%, 15%);--menu-text: hsl(var(--brand-hue), 20%, 60%);--menu-back: hsl(var(--brand-hue), 20%, 20%);--menu-hover-text: hsl(var(--brand-hue), 30%, 70%);--menu-hover-back: hsl(var(--brand-hue), 20%, 25%);--menu-active-text: hsl(var(--brand-hue), 50%, 80%);--menu-active-back: hsl(var(--brand-hue), 20%, 30%);--main-text: hsl(var(--brand-hue), 50%, 90%);--main-back: hsl(var(--brand-hue), 20%, 20%);--footer-text: hsl(var(--brand-hue), 45%, 70%);--footer-hover-text: hsl(var(--brand-hue), 60%, 80%);--link-text: hsl(var(--brand-hue), 60%, 70%);--link-hover-text: hsl(var(--brand-hue), 60%, 80%);--demo-border: hsl(var(--brand-hue), 25%, 15%);--demo-back: hsl(var(--brand-hue), 20%, 30%);--button-back: hsl(var(--brand-hue), 50%, 50%);--button-hover-back: hsl(var(--brand-hue), 50%, 45%);--logo-back: hsl(var(--brand-hue), 30%, 80%);--output-text: hsl(var(--brand-hue), 10%, 90%);--output-back: hsl(var(--brand-hue), 15%, 30%);--code-text: hsl(var(--brand-hue), 40%, 80%);--code-back: hsl(var(--brand-hue), 30%, 25%);--code-hover: hsl(var(--brand-hue), 30%, 30%);--code-border: hsl(var(--brand-hue), 30%, 35%);--shadow-1: 2px 2px 4px rgba(0, 0, 0, .16);--shadow-2: 4px 4px 8px rgba(0, 0, 0, .12);--codeblock-back-from: rgba(24, 11, 0, 0);--codeblock-back-to: #180b00}header.site{color:var(--header-text);background-color:var(--header-back);box-shadow:0 2px 4px var(--header-shadow)}header.site a,header.site .link,header.site .night-and-day--switcher{color:var(--header-text)}header.site a:hover,header.site .link:hover,header.site .night-and-day--switcher:hover{color:var(--header-hover)}header.site .container{height:2.5rem;min-width:480px;max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 1rem}header.site .night-and-day--switcher{font-size:1.2rem}header.site .github svg{font-size:1.2em;height:1.2em;overflow:visible;vertical-align:-.2em;margin-left:1rem}header.site .controls{display:flex;align-items:center}header.site .palette{background-color:var(--palette-back);display:inline-block;margin:0 1rem;font-size:0;padding:.25rem;border-radius:1rem}header.site .palette div{display:inline-block;width:2rem;height:1rem;border-radius:.5rem;border:.25rem solid var(--palette-back);background-color:#00f;background-color:hsl(var(--swatch-hue),65%,50%)}header.site .palette div+div{margin-left:.5rem}header.site .palette div.brown{--swatch-hue: var(--brown-hue)}header.site .palette div.red{--swatch-hue: var(--red-hue)}header.site .palette div.orange{--swatch-hue: var(--orange-hue)}header.site .palette div.green{--swatch-hue: var(--green-hue)}header.site .palette div.blue{--swatch-hue: var(--blue-hue)}header.site .palette div.indigo{--swatch-hue: var(--indigo-hue)}header.site .palette div.violet{--swatch-hue: var(--violet-hue)}header.site .palette div:hover{border-color:hsl(var(--swatch-hue),65%,var(--swatch-hover-light))}header.site .palette div.selected{border-color:hsl(var(--swatch-hue),65%,var(--swatch-select-light))}#layout{min-width:480px;max-width:1280px;margin:0 auto;padding:1rem;min-height:100vh;display:flex;flex-wrap:wrap;gap:1rem}#layout aside{flex-basis:20rem;flex-grow:1;padding:.5rem;border:1px solid var(--panel-border);color:var(--side-text);background-color:var(--side-back);display:flex;flex-direction:column;max-height:calc(100vh - 4.5rem);overflow-y:scroll;box-shadow:2px 2px 4px var(--panel-shadow)}#layout aside footer{margin-top:auto;font-size:.8rem;color:var(--footer-text)}#layout aside footer .notes{font-size:.8rem;color:var(--footer-text);display:flex;align-items:flex-end;justify-content:space-between}#layout aside footer a{font-size:0;width:6rem;color:var(--footer-text)}#layout aside footer a:hover{color:var(--footer-hover-text)}#layout aside footer a svg{height:2rem}#layout aside h4{margin-top:0;margin-bottom:.5rem}#layout aside ul.menu{padding:0;margin:0 0 2rem;list-style:none}#layout aside ul.menu li{margin:0;padding:0}#layout aside ul.menu li a{display:block;color:var(--menu-text);background-color:var(--menu-back);padding:.25rem .5rem;margin-bottom:.25rem}#layout aside ul.menu li a:hover{color:var(--menu-hover-text);background-color:var(--menu-hover-back)}#layout aside ul.menu li a.active{color:var(--menu-active-text);background-color:var(--menu-active-back)}#layout main{position:relative;flex-basis:0;flex-grow:999;padding:2rem;color:var(--main-text);background-color:var(--main-back);border:1px solid var(--panel-border);max-height:calc(100vh - 4.5rem);overflow-y:scroll;box-shadow:2px 2px 4px var(--panel-shadow)}#layout main h1:first-child{line-height:1;margin:0 0 .5em}.pic-side{display:grid;grid-template-columns:1fr 4fr;gap:2rem;margin-bottom:2rem;align-items:start}.pic-side div.logo{color:var(--logo-back);margin-top:1rem;width:100%}.pic-side>div.blurb{padding-right:2rem}@media (max-width: 1024px){#layout aside{flex-basis:12rem}#layout aside ul.menu{font-size:.875em}#layout aside footer .notes{flex-direction:column}#layout aside footer .notes>*{width:100%;text-align:center}#layout aside footer .notes a{order:3;flex-basis:100%;margin:1rem 0 .5rem}}@media (max-width: 800px){#layout{flex-direction:column}#layout aside{flex-basis:10rem;flex-grow:0}#layout main{max-height:calc(100vh - 15.5rem);padding:1rem}header.site div.palette div{width:1rem}div.codeblock,div.output{font-size:.8rem}}@media (max-width: 480px){#page{min-width:100%}#layout{width:100%;padding:.5rem;gap:.5rem;flex-direction:column}#layout aside{flex-basis:6rem;flex-grow:0}#layout main{max-height:calc(100vh - 10rem);padding:1rem}header.site div.palette div{width:1rem}div.codeblock,div.output{font-size:.7rem}}html{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Arial,sans-serif}#page{color:var(--body-text);background-color:var(--body-back)}.badger{margin-top:2rem;width:100%;padding-top:2rem;text-align:center}.badger svg{color:var(--logo-back);width:80px}.badger .caption{padding:.5rem 0 0;color:var(--footer-text);font-size:.8rem}img.logo{width:200px}a.read-on{display:block;text-align:right;font-size:1.5rem;margin-top:2rem}a.XXXgithub{position:absolute;top:1rem;right:1rem;width:2rem;height:2rem}button{background-color:var(--button-back);color:#fff;padding:.5rem 1rem;border:none;border-radius:.25rem}button:hover{background-color:var(--button-hover-back)}button.brown{background-color:#bf6a40}button.brown:hover{background-color:#ac6039}button.red{background-color:#bf4040}button.red:hover{background-color:#ac3939}button.green{background-color:#6abf40}button.blue{background-color:#4095bf}button.blue:hover{background-color:#3986ac}button.indigo{background-color:#4040bf}button.indigo:hover{background-color:#3939ac}button.violet{background-color:#8a40bf}button.violet:hover{background-color:#7c39ac}.demo{background-color:var(--demo-back);border:1px solid var(--demo-border);border-radius:.5rem;padding:2rem;box-shadow:var(--shadow-1),var(--shadow-2);margin:1rem 0 2rem}.demo p{font-size:1.2rem}.demo p:first-child{margin-top:0}div.buttons{margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
