.navigation-wrapper{min-height:3.2em}.subnav{background-color:#eee}.subnav .container{margin-top:.5em;margin-bottom:.5em}.latest-flashlight .container{margin-top:.5em;margin-bottom:.5em}.content{margin-top:.5rem}@media only screen and (max-width:768px){.content .post .post-meta .date span{display:block}}.content article hr{margin-top:4em;margin-bottom:4em;width:30%}.content article p{text-justify:none;text-align:left}.content article blockquote{margin-inline-start:1em;margin-inline-end:2em;line-height:2.8rem;padding-left:.7em}.content article blockquote p{padding-right:1em;font-style:normal}.content article img.page-img{border:1px solid #dedede;padding:.3em;display:block;margin-left:auto;margin-right:auto;margin-bottom:.5em}.content article img.page-img+em{text-align:center;display:block;font-size:.9em}.content article .ui-diagram{text-align:center;display:block}.content article .ui-diagram em{display:block;font-size:.9em}.content article pre{padding:0}.content article pre>code{padding:1em;background-color:#272822;color:#f8f8f2;display:block;overflow-x:auto}.content article iframe{display:block;margin:0 auto}.content article header{margin-top:1.4rem}.content article header h1{font-size:3rem;line-height:3.2rem}.content article footer{margin-top:5em}.content article li>a{line-height:1.8em}.embeddable-buttondown-form{display:block;width:80%;text-align:center;margin-top:2em;margin-left:auto;margin-right:auto;border:1px solid #ccc;padding:2em}@media only screen and (max-width:768px){.embeddable-buttondown-form{width:100%}}.embeddable-buttondown-form label{display:block;margin-bottom:1em}.embeddable-buttondown-form input[type=email]{padding:.75em 1em;display:block;border-radius:4px;border:1px solid #ccc;box-sizing:border-box;width:100%;margin-bottom:1em}.embeddable-buttondown-form input[type=submit]{padding:.75em 1em;display:block;width:100%;background:#ffb968;border-radius:.25em;color:#191716;outline:0;border:0;font-weight:700;font-family:Arial}.cc-license p{text-align:center!important}.search-form{font-family:Arial}.search-form input[type=text]{padding:.4em;border:1px solid #ccc;border-radius:4px}.search-form input[type=submit]{padding:.4em .8em;border:none;border-radius:4px;background-color:#ffb968}body.colorscheme-dark .navigation{background-color:#212121}body.colorscheme-dark .navigation .navigation-title span{color:#ff8902}body.colorscheme-dark table tr:first-child th{background-color:#424242}body.colorscheme-dark article pre>code{background-color:#272822}body.colorscheme-dark .subnav{background-color:#424242}body.colorscheme-dark .infobox{background-color:#424242}body.colorscheme-dark .infobox.warning{background-color:#9a444d}body.colorscheme-dark .card-nav .item{background-color:#424242}body.colorscheme-dark #table-of-contents-box{background-color:#424242}body.colorscheme-dark footer.footer{background-color:#424242}body.colorscheme-dark footer.footer .code-container>code{background-color:#ccc;color:#000}body.colorscheme-dark span.title a,body.colorscheme-dark span.title a:active{color:#dadada}body.colorscheme-dark .article-nav a span,body.colorscheme-dark .article-nav a:active span{color:#ff8902}body.colorscheme-dark .article-nav a span.title,body.colorscheme-dark .article-nav a:active span.title{color:#e0e0e0}body.colorscheme-dark .quote-post .main-quote{background-color:rgba(255,137,2,.1)}body.colorscheme-dark .quote-post .main-quote .quote-attribution{color:#aaa}body.colorscheme-dark .link-post .link-commentary p:first-child{color:#bbb}@media(prefers-color-scheme:dark){body.colorscheme-auto .navigation{background-color:#212121}body.colorscheme-auto .navigation .navigation-title span{color:#ff8902}body.colorscheme-auto table tr:first-child th{background-color:#424242}body.colorscheme-auto article pre>code{background-color:#272822}body.colorscheme-auto .subnav{background-color:#424242}body.colorscheme-auto .infobox{background-color:#424242}body.colorscheme-auto .infobox.warning{background-color:#9a444d}body.colorscheme-auto .card-nav .item{background-color:#424242}body.colorscheme-auto #table-of-contents-box{background-color:#424242}body.colorscheme-auto footer.footer{background-color:#424242}body.colorscheme-auto footer.footer .code-container>code{background-color:#ccc;color:#000}body.colorscheme-auto span.title a,body.colorscheme-auto span.title a:active{color:#dadada}body.colorscheme-auto .article-nav a span,body.colorscheme-auto .article-nav a:active span{color:#ff8902}body.colorscheme-auto .article-nav a span.title,body.colorscheme-auto .article-nav a:active span.title{color:#e0e0e0}body.colorscheme-auto .quote-post .main-quote{background-color:rgba(255,137,2,.1)}body.colorscheme-auto .quote-post .main-quote .quote-attribution{color:#aaa}body.colorscheme-auto .link-post .link-commentary p:first-child{color:#bbb}}.navigation{position:fixed;background-color:#fafafa;z-index:999;height:5rem}.navigation .navigation-title span{color:#ff8902}.navigation #search-toggle{display:none}.navigation #search-toggle:checked+label.search-button{display:none}.navigation #search-toggle:checked~label.unsearch-button{display:block}.navigation #search-toggle:checked~.menu-button{display:none}.navigation #search-toggle:checked~.navigation-list{display:none}.navigation #search-toggle:checked~#nav-search-form{display:inline-block}.navigation .search-button,.navigation .unsearch-button{font-size:2rem;font-weight:400;cursor:pointer}.navigation .search-button{margin-left:.8em}.navigation .unsearch-button{display:none;margin-left:.3em}.navigation #nav-search-form{display:none;margin-left:2em;float:right}@media only screen and (max-width:768px){.navigation #nav-search-form{margin-left:.5em}.navigation #nav-search-form #nav-search-query{max-width:8em}}@media only screen and (max-width:768px){.navigation .navigation-list{top:1rem}}.imgur-wrapper{display:flex;justify-content:center}.video-embed-container{position:relative;padding-bottom:56.25%;padding-top:30px;margin:3em;height:0;overflow:hidden}@media only screen and (max-width:768px){.video-embed-container{margin:3em 0}}.video-embed-container iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:1px solid #dedede;padding:.3em}table{display:block;overflow-x:auto;max-width:fit-content}.compact-table+table th,.compact-table+table td{padding:.8rem;font-size:.8em;overflow-wrap:break-word;vertical-align:top}.center-table+table{margin-left:auto;margin-right:auto}table tr:first-child th{background-color:#e0e0e0}table tr:first-child th{border-top:2px solid #000}table tr:last-child td{border-bottom:2px solid #000}table tr td:first-child,table tr th:first-child{border-left:2px solid #000}table tr td:last-child,table tr th:last-child{border-right:2px solid #000}.infobox{padding:.5em 1.5em;border:1px solid #aaa;background-color:#eee;margin-bottom:2em;margin-top:2em;line-height:27px}.infobox.warning{background-color:#f7af88}.infobox.left{text-align:left}.infobox p{margin:.5em 0}.infobox ul{margin:.5em 0}.revisions span.revision-nav{margin-left:1em}.revisions .doc-revision{display:none}footer.footer{background-color:#ccc;margin-bottom:0;padding-bottom:3em}footer.footer .search-form input[type=input]{background-color:#e0e0e0}footer.footer .code-container>code{background-color:#424242;color:#fff}.thoughts-footer>div{text-align:center;margin-left:auto;margin-right:auto}.thoughts-footer .copyright{text-align:center;padding:1em}.thoughts-footer .donate{margin-top:1em;margin-bottom:2em;margin-left:auto;margin-right:auto;line-height:1em;width:80%}.thoughts-footer .donate span{font-size:.7em}.thoughts-footer .donate .code-container{overflow-x:auto;overflow-y:hidden;line-height:1em}.thoughts-footer .donate .code-container code{font-size:.6em}span.title{letter-spacing:.1rem;text-transform:uppercase}span.title a,span.title a:active{color:#212121;text-decoration:none}.footer-nav{display:flex;flex-wrap:wrap;column-gap:1.5em;row-gap:3em;padding-top:2em;padding-bottom:2em}.footer-nav>div{flex-grow:1;text-align:left}.footer-nav>div span{display:inline-block;margin:.4em 0}.footer-nav>div.search-container{margin:.5em;text-align:center}.footer-nav ul{margin:0;padding:0}.footer-nav ul li{list-style:none;line-height:1.5em}#table-of-contents-box{padding:1.2em;border:1px solid #aaa;background-color:#eee}nav#TableOfContents>ul{list-style-type:none;padding:0;margin-top:.5em;margin-bottom:0}nav#TableOfContents>ul>li>ul{list-style-type:square;padding-left:1.5em}nav#TableOfContents>ul li{font-size:1em;line-height:1.5em}.tag-list h1{margin-bottom:2em}.tag-list ul li{display:block!important}.tag-list ul li .title{font-size:1.2em}.tag-list ul li .details{margin:.5em 0 3em}.tag-list ul li .details-thumb{display:flex}@media only screen and (max-width:768px){.tag-list ul li .details-thumb{flex-direction:column-reverse}}.tag-list ul li .details-thumb .thumbnail{overflow:hidden;width:125px;height:125px;border:1px solid #dedede;padding:.3em;margin:.5em 0 3em 1em}@media only screen and (max-width:768px){.tag-list ul li .details-thumb .thumbnail{margin-bottom:0;margin-left:0;width:100%;height:180px}}.tag-list ul li .details-thumb .thumbnail img{width:100%;height:100%;object-fit:cover}.tag-list ul li .details-thumb p{margin:.5em 0}@media only screen and (max-width:768px){.tag-list ul li .details-thumb p{margin-bottom:3em}}.flex{display:flex}.flex.flex-wrap{flex-wrap:wrap}.flex.flex-gap{gap:.5em}.emitter-chart{padding:1.5em .1em 1.5em .8em;width:14.5em;text-align:center;border:1px solid #dedede}@media only screen and (max-width:768px){.emitter-chart{margin:auto}}h1,h2,h3,h4,h5,h6{scroll-margin-top:6rem;margin-top:60px}@media only screen and (max-width:768px){.float-container{bottom:5rem}}input[type=text],input[type=email]{background-color:#e0e0e0;color:#191716}header .tags{line-height:2em}.mermaid-container{display:flex;margin:2em 1em}@media only screen and (max-width:768px){.mermaid-container{margin:0}}.mermaid-container .mermaid{border:1px solid #dedede;padding:0 1em;max-width:100%}@media only screen and (max-width:768px){.mermaid-container .mermaid{max-width:400px}}.mermaid-container .mermaid .label{line-height:1.2em;font-size:1.3rem}iframe{color-scheme:light}.card-nav{display:flex;flex-flow:row;gap:.5em}.card-nav .item{width:100%;background-color:#eee;padding:1em;border:1px solid #aaa;line-height:1.4em;font-size:1.8rem;display:flex;justify-content:center;align-items:center;text-align:center}.card-nav .item div{margin-bottom:.5em}.article-nav{display:flex;flex-wrap:wrap;margin-bottom:5em}.article-nav .previous,.article-nav .next{flex-basis:50%}.article-nav .previous span,.article-nav .next span{padding-left:2px;padding-right:2px}.article-nav .previous span.title,.article-nav .next span.title{display:block}.article-nav .previous a,.article-nav .previous a:hover>span.title,.article-nav .next a,.article-nav .next a:hover>span.title{text-decoration:none}.article-nav .previous a span.title,.article-nav .previous a:active span.title,.article-nav .next a span.title,.article-nav .next a:active span.title{color:#212121}.article-nav .previous a:hover>span,.article-nav .next a:hover>span{text-decoration:underline}.article-nav .next{text-align:right;padding-left:.5em}.revision-meta .revision-nav{display:flex;flex-wrap:wrap;padding-top:1em;padding-bottom:1em}.revision-meta .previous-revision,.revision-meta .next-revision{flex:50%}.revision-meta .next-revision{text-align:right}.quote-post .quote-header{margin-bottom:1rem}.quote-post .main-quote{font-size:1.3em;font-style:italic;border-left:4px solid #ff8902;padding-left:1.5rem;margin:2rem 0;background-color:rgba(255,137,2,5%);padding:1.5rem;border-radius:0 4px 4px 0}.quote-post .main-quote .quote-text{margin:0 0 1rem;font-weight:400;line-height:1.6}.quote-post .main-quote .quote-attribution{display:block;font-style:normal;font-size:.9em;color:#666;font-weight:500}.quote-post .quote-commentary{margin-top:1.5rem;font-size:.95em}.quote-post .quote-commentary h3,.quote-post .quote-commentary h4{margin-top:1.5rem}.link-post .link-header{margin-bottom:1.5rem}.link-post .link-title{font-size:3.2rem;line-height:3.6rem;margin:4rem 0 2.5rem;font-weight:600;color:#ff8902}@media only screen and (max-width:768px){.link-post .link-title{font-size:3rem;line-height:3.4rem}}.link-post .link-title a{color:inherit;text-decoration:none}.link-post .link-title a:hover{text-decoration:underline}.link-post .external-link-icon{font-size:.7em;opacity:.7;margin-left:.3em;vertical-align:middle;position:relative;top:-.2em}.link-post .link-commentary{margin-top:1rem;font-size:1.8rem}.link-post .link-commentary p:first-child{font-size:1.1em;color:#555}.tshirt-section{display:flex;flex-direction:column;align-items:center;margin:2em 0}.tshirt-img{max-width:300px;width:100%;border:1px solid #dedede;border-radius:8px;margin-bottom:.8em;box-shadow:0 2px 8px rgba(0,0,0,5%)}.tshirt-links{text-align:center}.tshirt-links h2{margin-top:.3em;margin-bottom:.5em}.tshirt-links ul{list-style:none;padding:0;margin-top:0;margin-bottom:.2em;display:flex;flex-wrap:wrap;justify-content:center;gap:.2em .7em}.tshirt-links li{margin:0}.tshirt-links a{color:#26b;background:0 0;font-weight:500;text-decoration:none;padding:0;border:none;border-radius:0;box-shadow:none;transition:color .18s;display:inline-block;font-size:1em;letter-spacing:.01em}.tshirt-links a:hover{color:#136;text-decoration:underline;background:0 0;border:none}.tshirt-divider{border:none;border-top:2px solid rgba(120,120,120,.18);margin:3em auto 2em;width:60%;opacity:1}