/*! 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{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;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;-webkit-text-decoration:underline dotted;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:-.25em}sup{top:-.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}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;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]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;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}[hidden],template{display:none}code[class*=language-],pre[class*=language-]{color:#393a34;font-family:Consolas,Bitstream Vera Sans Mono,Courier New,Courier,monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;font-size:.9em;line-height:1.2em;-moz-tab-size:4;-webkit-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}pre>code[class*=language-]{font-size:1em}code[class*=language-]::-moz-selection,code[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection{background:#b3d4fc}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#b3d4fc}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border:1px solid #ddd;background-color:#fff}:not(pre)>code[class*=language-]{padding:1px .2em;background:#f8f8f8;border:1px solid #ddd}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#998;font-style:italic}.token.namespace{opacity:.7}.token.attr-value,.token.string{color:#e3116c}.token.operator,.token.punctuation{color:#393a34}.token.boolean,.token.constant,.token.entity,.token.inserted,.token.number,.token.property,.token.regex,.token.symbol,.token.url,.token.variable{color:#36acaa}.language-autohotkey .token.selector,.token.atrule,.token.attr-name,.token.keyword{color:#00a4db}.language-autohotkey .token.tag,.token.deleted,.token.function{color:#9a050f}.language-autohotkey .token.keyword,.token.selector,.token.tag{color:#00009f}.token.bold,.token.function,.token.important{font-weight:700}.token.italic{font-style:italic}:root{--bg:#faf8f4;--surface:#fff;--ink:#23262b;--muted:#5f6570;--faint:#8a8f98;--line:#e7dfcf;--line-soft:#efe9db;--accent:#005fcc;--accent-hover:#00479f;--accent-soft:#e7effe;--code-bg:#f4f1e8;--code-border:#e2dac6;--radius:12px;--content-width:44rem;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Arial,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}body,html{padding:0;margin:0;font-family:var(--font-sans);line-height:1.65;font-size:18px;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}::-moz-selection{background:#cfe2f6}::selection{background:#cfe2f6}article{margin-bottom:2em}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover);text-decoration:underline;text-underline-offset:3px}:focus-visible{outline:3px solid rgba(0,95,204,.55);outline-offset:2px;border-radius:4px}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4{line-height:1.25;letter-spacing:-.02em;text-wrap:balance}h1{font-size:1.6em}.skipLink{position:absolute;left:1rem;top:-4rem;z-index:1031;background:var(--ink);color:#fff;padding:.6rem 1rem;border-radius:8px;font-size:.9rem;font-weight:700;-webkit-transition:top .15s ease-in-out;-moz-transition:top .15s ease-in-out;transition:top .15s ease-in-out}.skipLink:focus{top:.75rem;color:#fff;text-decoration:none}.navbar-custom{background:hsla(40,37%,97%,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.navbar-custom .navbar-brand{font-weight:800;letter-spacing:-.02em;text-transform:none;font-size:17px;color:var(--ink)}.navbar-custom .nav li a{text-transform:uppercase;font-size:12.5px;font-weight:700;letter-spacing:.08em;color:var(--muted)}.navbar-custom .navbar-brand:focus,.navbar-custom .navbar-brand:hover,.navbar-custom .nav li a:focus,.navbar-custom .nav li a:hover{color:var(--accent);background-color:transparent}.navbar-custom .navbar-toggle{border-color:var(--line)}.navbar-custom .navbar-toggle .icon-bar{background-color:var(--ink)}.navbar-custom .navbar-toggle:focus,.navbar-custom .navbar-toggle:hover{background-color:var(--accent-soft)}@media only screen and (max-width:767px){.navbar-custom .navbar-collapse.in,.navbar-custom .navbar-collapse.isOpen,.navbar-custom .navbar-collapse.show{display:block;background:var(--surface);border:1px solid var(--line);border-radius:12px;margin:0 12px 12px;padding:6px 8px;-webkit-box-shadow:0 12px 28px rgba(35,38,43,.1);box-shadow:0 12px 28px rgba(35,38,43,.1)}.navbar-custom .navbar-nav{margin:0}.navbar-custom .navbar-nav li a{padding:10px 12px;border-radius:8px}.navbar-custom .navbar-nav li a:focus,.navbar-custom .navbar-nav li a:hover{background:var(--accent-soft);text-decoration:none}}@media only screen and (min-width:768px){.navbar-custom{-moz-transition:background .5s ease-in-out,padding .5s ease-in-out;-webkit-transition:background .5s ease-in-out,padding .5s ease-in-out;transition:background .5s ease-in-out,padding .5s ease-in-out}.navbar-custom.top-nav-short{padding:0}}.articleBody{font-size:1rem;line-height:1.75;color:var(--ink);overflow-wrap:break-word}.articleBody>:first-child{margin-top:0}.articleBody p{margin:0 0 1.25em}.articleBody a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;-webkit-text-decoration-color:rgba(0,95,204,.75);text-decoration-color:rgba(0,95,204,.75)}.articleBody a:hover{text-decoration-thickness:2px;-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.articleBody h2,.articleBody h3,.articleBody h4{margin:2em 0 .65em}.articleBody h2{font-size:1.45rem}.articleBody h3{font-size:1.2rem}.articleBody h4{font-size:1.05rem}.articleBody ol,.articleBody ul{margin:0 0 1.25em;padding-left:1.45rem}.articleBody li{margin-bottom:.4em}.articleBody li::marker{color:var(--accent)}.articleBody blockquote{margin:0 0 1.4em;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--line-soft);border-left:3px solid var(--accent);border-radius:0 10px 10px 0;color:#3a3f47}.articleBody blockquote p:last-child{margin-bottom:0}.articleBody hr{border:0;border-top:1px solid var(--line);margin:2.25rem auto;max-width:12rem}.articleBody img{border-radius:var(--radius);border:1px solid var(--line);margin:1.5rem auto;-webkit-box-shadow:0 10px 30px rgba(35,38,43,.08);box-shadow:0 10px 30px rgba(35,38,43,.08)}.articleBody embed,.articleBody iframe,.articleBody object,.articleBody video{max-width:100%}.articleBody iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:var(--radius);background:#000}.articleBody :not(pre)>code,.articleBody code:not([class*=language-]){font-family:var(--font-mono);font-size:.84em;line-height:1.5;background:#ece7d8;border:1px solid var(--code-border);border-radius:6px;padding:.14em .38em;color:#1f2937;white-space:break-spaces}.articleBody pre,.articleBody pre[class*=language-]{font-family:var(--font-mono);font-size:.84rem;line-height:1.65;background:var(--code-bg);border:1px solid var(--code-border);border-radius:var(--radius);padding:1rem 1.15rem;margin:0 0 1.5em;overflow:auto;-webkit-overflow-scrolling:touch;-webkit-box-shadow:inset 0 1px 0 hsla(0,0%,100%,.7);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.7)}.articleBody pre[class*=language-] code,.articleBody pre code{font-family:inherit;font-size:inherit;background:transparent;border:0;padding:0;border-radius:0;color:#2b2f36;text-shadow:none;white-space:pre}.articleBody pre .token.cdata,.articleBody pre .token.comment,.articleBody pre .token.doctype,.articleBody pre .token.prolog{color:#6b6f76}.tableWrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:0 0 1.5em}.tableWrapper table{width:100%;margin:0;border:0;border-spacing:0;border-collapse:collapse;font-size:.92rem;line-height:1.55}.tableWrapper td,.tableWrapper th{border:0;border-bottom:1px solid var(--line-soft);text-align:left;margin:0;padding:.65rem .9rem;vertical-align:top}.tableWrapper thead th{background:#f5f1e6;font-weight:750;white-space:nowrap}.tableWrapper tbody tr:nth-child(2n){background:#fcfaf5}.tableWrapper tbody tr:last-child td,.tableWrapper tbody tr:last-child th{border-bottom:0}.articleBody>table{display:block;max-width:100%;overflow-x:auto}.tagLink{color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:rgba(0,95,204,.5);text-decoration-color:rgba(0,95,204,.5);text-underline-offset:3px}.tagLink:hover{color:var(--accent-hover);-webkit-text-decoration-color:currentColor;text-decoration-color:currentColor}.tagPills{display:-moz-box;display:flex;flex-wrap:wrap;grid-gap:.5rem;gap:.5rem}.tagPills .tagLink{display:inline-block;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.22rem .75rem;font-size:.86rem;line-height:1.5;text-decoration:none}.tagPills .tagLink:hover{border-color:var(--accent);background:var(--accent-soft);text-decoration:none}.postListMeta{color:var(--muted);font-size:.9rem}.footer-links a{display:inline-block;border-radius:50%}.footer-links .fa-circle{color:#2f353d;-webkit-transition:color .15s ease-in-out,-webkit-transform .15s ease-in-out;transition:color .15s ease-in-out,-webkit-transform .15s ease-in-out;-moz-transition:color .15s ease-in-out,transform .15s ease-in-out,-moz-transform .15s ease-in-out;transition:color .15s ease-in-out,transform .15s ease-in-out;transition:color .15s ease-in-out,transform .15s ease-in-out,-webkit-transform .15s ease-in-out,-moz-transform .15s ease-in-out}.footer-links a:focus .fa-circle,.footer-links a:hover .fa-circle{color:var(--accent)}.footer-links a:focus,.footer-links a:hover{text-decoration:none}#disqus_thread{margin-top:2.5rem;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:1.25rem}.gcse-searchbox,.gcse-searchresults{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:1rem;margin-bottom:1rem}@media only screen and (max-width:640px){body,html{font-size:17px}.articleBody{line-height:1.7}.articleBody pre,.articleBody pre[class*=language-]{font-size:.8rem;margin-left:-.25rem;margin-right:-.25rem}#disqus_thread{padding:.9rem}}