.admonition{position:relative;margin:1rem 0 1.5rem 0;border-left:.25rem solid #a580e2;box-shadow:5px 5px 10px -5px rgba(0,0,0,.5);border-radius:0 8px 8px 0;overflow:auto}.admonition .admonition-title{padding:.25rem .5rem;border-bottom:1px solid #341e35;background-color:rgba(52,30,53,.1);color:#a580e2}.admonition .admonition-title .icon{display:inline-block;padding:0 10px 0 0;font-size:.85rem;color:#a580e2}.admonition .admonition-content{padding:.25rem .5rem}.admonition.note{border-left-color:#a580e2}.admonition.note .admonition-title{color:#a580e2}.admonition.note .icon{color:#a580e2}.admonition.info{border-left-color:#368aeb}.admonition.info .admonition-title{color:#368aeb}.admonition.info .icon{color:#368aeb}.admonition.tip{border-left-color:#3fc5b7}.admonition.tip .admonition-title{color:#3fc5b7}.admonition.tip .icon{color:#3fc5b7}.admonition.success{border-left-color:#70b433}.admonition.success .admonition-title{color:#70b433}.admonition.success .icon{color:#70b433}.admonition.warning{border-left-color:#dbb32d}.admonition.warning .admonition-title{color:#dbb32d}.admonition.warning .icon{color:#dbb32d}.admonition.failure{border-left-color:#ed4a46}.admonition.failure .admonition-title{color:#ed4a46}.admonition.failure .icon{color:#ed4a46}.admonition.danger{border-left-color:#ed4a46}.admonition.danger .admonition-title{color:#ed4a46}.admonition.danger .icon{color:#ed4a46}.admonition.bug{border-left-color:#eb6eb7}.admonition.bug .admonition-title{color:#eb6eb7}.admonition.bug .icon{color:#eb6eb7}.admonition.note{background-color:#341e35}.admonition.note .admonition-title{border-bottom-color:#341e35;background-color:rgba(52,30,53,.1)}.admonition.info{background-color:#162e18}.admonition.info .admonition-title{border-bottom-color:#162e18;background-color:rgba(22,46,24,.1)}.admonition.tip{background-color:#3b3b3b}.admonition.tip .admonition-title{border-bottom-color:#3b3b3b;background-color:rgba(59,59,59,.1)}.admonition.success{background-color:#162e18}.admonition.success .admonition-title{border-bottom-color:#162e18;background-color:rgba(22,46,24,.1)}.admonition.warning{background-color:#3d1d1c}.admonition.warning .admonition-title{border-bottom-color:#3d1d1c;background-color:rgba(61,29,28,.1)}.admonition.failure{background-color:#3d1d1c}.admonition.failure .admonition-title{border-bottom-color:#3d1d1c;background-color:rgba(61,29,28,.1)}.admonition.danger{background-color:#3d1d1c}.admonition.danger .admonition-title{border-bottom-color:#3d1d1c;background-color:rgba(61,29,28,.1)}.admonition.bug{background-color:#3d1d1c}.admonition.bug .admonition-title{border-bottom-color:#3d1d1c;background-color:rgba(61,29,28,.1)}.reset{color:#b9b9b9}.bg-reset{background-color:#181818}.inverted{color:#181818}.bg-inverted{background-color:#b9b9b9}.dimgray{color:#777}.red{color:#ed4a46}.green{color:#70b433}.yellow{color:#dbb32d}.blue{color:#368aeb}.purple{color:#a580e2}.cyan{color:#3fc5b7}.white{color:#dedede}.bg-black{background-color:#181818}.bg-red{background-color:#ed4a46}.bg-green{background-color:#70b433}.bg-yellow{background-color:#dbb32d}.bg-blue{background-color:#368aeb}.bg-purple{background-color:#a580e2}.bg-cyan{background-color:#3fc5b7}.bg-white{background-color:#b9b9b9}.underline{text-decoration:underline}.bold{font-weight:bold}.italic{font-style:italic}.blink{text-decoration:blink}.crossed-out{text-decoration:line-through}.highlighted{filter:contrast(70%) brightness(190%)}/*!
 * animate.css - https://animate.style/
 * Version - 4.1.1
 * Licensed under the MIT license - https://opensource.org/licenses/MIT
 *
 * Copyright (c) 2025 Animate.css
 */:root{--animate-duration: 1s;--animate-delay: 1s;--animate-repeat: 1}.animate__animated{animation-duration:1s;animation-duration:var(--animate-duration);animation-fill-mode:both}.animate__animated.animate__infinite{animation-iteration-count:infinite}.animate__animated.animate__repeat-1{animation-iteration-count:1;animation-iteration-count:var(--animate-repeat)}.animate__animated.animate__repeat-2{animation-iteration-count:2;animation-iteration-count:calc(var(--animate-repeat)*2)}.animate__animated.animate__repeat-3{animation-iteration-count:3;animation-iteration-count:calc(var(--animate-repeat)*3)}.animate__animated.animate__delay-1s{animation-delay:1s;animation-delay:var(--animate-delay)}.animate__animated.animate__delay-2s{animation-delay:2s;animation-delay:calc(var(--animate-delay)*2)}.animate__animated.animate__delay-3s{animation-delay:3s;animation-delay:calc(var(--animate-delay)*3)}.animate__animated.animate__delay-4s{animation-delay:4s;animation-delay:calc(var(--animate-delay)*4)}.animate__animated.animate__delay-5s{animation-delay:5s;animation-delay:calc(var(--animate-delay)*5)}.animate__animated.animate__faster{animation-duration:.5s;animation-duration:calc(var(--animate-duration)/2)}.animate__animated.animate__fast{animation-duration:.8s;animation-duration:calc(var(--animate-duration)*.8)}.animate__animated.animate__slow{animation-duration:2s;animation-duration:calc(var(--animate-duration)*2)}.animate__animated.animate__slower{animation-duration:3s;animation-duration:calc(var(--animate-duration)*3)}@media print,(prefers-reduced-motion: reduce){.animate__animated{animation-duration:1ms !important;transition-duration:1ms !important;animation-iteration-count:1 !important}.animate__animated[class*=Out]{opacity:0}}@keyframes bounceIn{from,20%,40%,60%,80%,to{animation-timing-function:cubic-bezier(0.215, 0.61, 0.355, 1)}0%{opacity:0;transform:scale3d(0.3, 0.3, 0.3)}20%{transform:scale3d(1.1, 1.1, 1.1)}40%{transform:scale3d(0.9, 0.9, 0.9)}60%{opacity:1;transform:scale3d(1.03, 1.03, 1.03)}80%{transform:scale3d(0.97, 0.97, 0.97)}to{opacity:1;transform:scale3d(1, 1, 1)}}.animate__bounceIn{animation-duration:.75s;animation-duration:calc(var(--animate-duration)*.75);animation-name:bounceIn}@keyframes bounceInDown{from,60%,75%,90%,to{animation-timing-function:cubic-bezier(0.215, 0.61, 0.355, 1)}0%{opacity:0;transform:translate3d(0, -3000px, 0) scaleY(3)}60%{opacity:1;transform:translate3d(0, 25px, 0) scaleY(0.9)}75%{transform:translate3d(0, -10px, 0) scaleY(0.95)}90%{transform:translate3d(0, 5px, 0) scaleY(0.985)}to{transform:translate3d(0, 0, 0)}}.animate__bounceInDown{animation-name:bounceInDown}@keyframes bounceInLeft{from,60%,75%,90%,to{animation-timing-function:cubic-bezier(0.215, 0.61, 0.355, 1)}0%{opacity:0;transform:translate3d(-3000px, 0, 0) scaleX(3)}60%{opacity:1;transform:translate3d(25px, 0, 0) scaleX(1)}75%{transform:translate3d(-10px, 0, 0) scaleX(0.98)}90%{transform:translate3d(5px, 0, 0) scaleX(0.995)}to{transform:translate3d(0, 0, 0)}}.animate__bounceInLeft{animation-name:bounceInLeft}@keyframes bounceInRight{from,60%,75%,90%,to{animation-timing-function:cubic-bezier(0.215, 0.61, 0.355, 1)}from{opacity:0;transform:translate3d(3000px, 0, 0) scaleX(3)}60%{opacity:1;transform:translate3d(-25px, 0, 0) scaleX(1)}75%{transform:translate3d(10px, 0, 0) scaleX(0.98)}90%{transform:translate3d(-5px, 0, 0) scaleX(0.995)}to{transform:translate3d(0, 0, 0)}}.animate__bounceInRight{animation-name:bounceInRight}@keyframes bounceInUp{from,60%,75%,90%,to{animation-timing-function:cubic-bezier(0.215, 0.61, 0.355, 1)}from{opacity:0;transform:translate3d(0, 3000px, 0) scaleY(5)}60%{opacity:1;transform:translate3d(0, -20px, 0) scaleY(0.9)}75%{transform:translate3d(0, 10px, 0) scaleY(0.95)}90%{transform:translate3d(0, -5px, 0) scaleY(0.985)}to{transform:translate3d(0, 0, 0)}}.animate__bounceInUp{animation-name:bounceInUp}@keyframes bounceOut{20%{transform:scale3d(0.9, 0.9, 0.9)}50%,55%{opacity:1;transform:scale3d(1.1, 1.1, 1.1)}to{opacity:0;transform:scale3d(0.3, 0.3, 0.3)}}.animate__bounceOut{animation-duration:.75s;animation-duration:calc(var(--animate-duration)*.75);animation-name:bounceOut}@keyframes bounceOutDown{20%{transform:translate3d(0, 10px, 0) scaleY(0.985)}40%,45%{opacity:1;transform:translate3d(0, -20px, 0) scaleY(0.9)}to{opacity:0;transform:translate3d(0, 2000px, 0) scaleY(3)}}.animate__bounceOutDown{animation-name:bounceOutDown}@keyframes bounceOutLeft{20%{opacity:1;transform:translate3d(20px, 0, 0) scaleX(0.9)}to{opacity:0;transform:translate3d(-2000px, 0, 0) scaleX(2)}}.animate__bounceOutLeft{animation-name:bounceOutLeft}@keyframes bounceOutRight{20%{opacity:1;transform:translate3d(-20px, 0, 0) scaleX(0.9)}to{opacity:0;transform:translate3d(2000px, 0, 0) scaleX(2)}}.animate__bounceOutRight{animation-name:bounceOutRight}@keyframes bounceOutUp{20%{transform:translate3d(0, -10px, 0) scaleY(0.985)}40%,45%{opacity:1;transform:translate3d(0, 20px, 0) scaleY(0.9)}to{opacity:0;transform:translate3d(0, -2000px, 0) scaleY(3)}}.animate__bounceOutUp{animation-name:bounceOutUp}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.animate__fadeIn{animation-name:fadeIn}@keyframes fadeOut{from{opacity:1}to{opacity:0}}.animate__fadeOut{animation-name:fadeOut}@keyframes slideInDown{from{transform:translate3d(0, -100%, 0);visibility:visible}to{transform:translate3d(0, 0, 0)}}.animate__slideInDown{animation-name:slideInDown}@keyframes slideInLeft{from{transform:translate3d(-100%, 0, 0);visibility:visible}to{transform:translate3d(0, 0, 0)}}.animate__slideInLeft{animation-name:slideInLeft}@keyframes slideInRight{from{transform:translate3d(100%, 0, 0);visibility:visible}to{transform:translate3d(0, 0, 0)}}.animate__slideInRight{animation-name:slideInRight}@keyframes slideInUp{from{transform:translate3d(0, 100%, 0);visibility:visible}to{transform:translate3d(0, 0, 0)}}.animate__slideInUp{animation-name:slideInUp}@keyframes slideOutDown{from{transform:translate3d(0, 0, 0)}to{visibility:hidden;transform:translate3d(0, 100%, 0)}}.animate__slideOutDown{animation-name:slideOutDown}@keyframes slideOutLeft{from{transform:translate3d(0, 0, 0)}to{visibility:hidden;transform:translate3d(-100%, 0, 0)}}.animate__slideOutLeft{animation-name:slideOutLeft}@keyframes slideOutRight{from{transform:translate3d(0, 0, 0)}to{visibility:hidden;transform:translate3d(100%, 0, 0)}}.animate__slideOutRight{animation-name:slideOutRight}@keyframes slideOutUp{from{transform:translate3d(0, 0, 0)}to{visibility:hidden;transform:translate3d(0, -100%, 0)}}.animate__slideOutUp{animation-name:slideOutUp}@font-face{font-family:"Inter";font-style:normal;font-display:auto;font-weight:400;src:url("/fonts/Inter-Regular.woff2") format("woff2"),url("/fonts/Inter-Regular.woff") format("woff")}@font-face{font-family:"Inter";font-style:italic;font-display:auto;font-weight:400;src:url("/fonts/Inter-Italic.woff2") format("woff2"),url("/fonts/Inter-Italic.woff") format("woff")}@font-face{font-family:"Inter";font-style:normal;font-display:auto;font-weight:600;src:url("/fonts/Inter-Medium.woff2") format("woff2"),url("/fonts/Inter-Medium.woff") format("woff")}@font-face{font-family:"Inter";font-style:italic;font-display:auto;font-weight:600;src:url("/fonts/Inter-MediumItalic.woff2") format("woff2"),url("/fonts/Inter-MediumItalic.woff") format("woff")}@font-face{font-family:"Inter";font-style:normal;font-display:auto;font-weight:800;src:url("/fonts/Inter-Bold.woff2") format("woff2"),url("/fonts/Inter-Bold.woff") format("woff")}@font-face{font-family:"Inter";font-style:italic;font-display:auto;font-weight:800;src:url("/fonts/Inter-BoldItalic.woff2") format("woff2"),url("/fonts/Inter-BoldItalic.woff") format("woff")}.lightbox_overlay{visibility:hidden;position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;justify-content:center;align-items:center;background-color:#181818}.lightbox_overlay:target,.lightbox_overlay.is-active{visibility:visible}.lightbox_grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:4px}.lightbox_grid>div{aspect-ratio:1/1;line-height:1}.lightbox>a>img{width:100%;height:100%;border-radius:8px;object-fit:cover}.lightbox_content{max-height:100%}:target>.lightbox_content,.is-active>.lightbox_content{animation:.2s ease-out .1s both;animation-name:inherit}.lightbox_figure{display:none}:target>.lightbox_figure,.is-active>.lightbox_figure{margin-left:2.5vh;display:grid;grid-template-columns:1fr}@media(min-aspect-ratio: 1.1/1){:target>.lightbox_figure,.is-active>.lightbox_figure{grid-template-columns:2fr 1fr}}.lightbox_figure a{justify-self:end}.lightbox_figure img{max-height:90vh;max-width:90vw;display:block;object-fit:scale-down}.lightbox_figcaption{color:#b9b9b9;padding-left:1em;padding-right:3em}.lightbox_image{max-width:100%}.lightbox_control{position:absolute;opacity:.5;transition:opacity .1s;width:3em;height:3em;background-position:center center;background-size:cover;text-indent:-999em}.lightbox_control:hover,.lightbox_control:focus{opacity:1}.lightbox_close{top:1em;right:1em;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20x%3D%220%22%20y%3D%220%22%20viewBox%3D%220%200%2032%2032%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M21.7%2010.3c-0.4-0.4-1-0.4-1.4%200l-4.3%204.3-4.2-4.2c-0.4-0.4-1-0.4-1.4%200-0.4%200.4-0.4%201%200%201.4l4.2%204.2-4.3%204.3c-0.4%200.4-0.4%201%200%201.4%200.4%200.4%201%200.4%201.4%200l4.3-4.3%204.2%204.2c0.4%200.4%201%200.4%201.4%200%200.4-0.4%200.4-1%200-1.4l-4.2-4.2%204.3-4.3C22.1%2011.3%2022.1%2010.7%2021.7%2010.3zM16%200C7.2%200%200%207.2%200%2016s7.2%2016%2016%2016c8.8%200%2016-7.2%2016-16S24.8%200%2016%200zM16%2030C8.3%2030%202%2023.7%202%2016S8.3%202%2016%202s14%206.3%2014%2014S23.7%2030%2016%2030z%22%2F%3E%3C%2Fsvg%3E")}.lightbox_prev{left:2em;transform:rotate(180deg)}.lightbox_next{right:2em}.lightbox_prev,.lightbox_next{top:50%;margin-top:-1.5em;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2244.1%22%20height%3D%2294.7%22%20viewBox%3D%220%200%2044.1%2094.7%22%20enable-background%3D%22new%200%200%2044.088%2094.67%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M44.1%2047.3L1.5%2094.7%200%2093.3l41.4-46L0%201.3%201.5%200%2044.1%2047.3z%22%2F%3E%3C%2Fsvg%3E")}:where(html){line-height:1.15;-webkit-text-size-adjust:100%;text-size-adjust:100%}:where(h1){font-size:2em;margin-block-end:.67em;margin-block-start:.67em}:where(dl,ol,ul) :where(dl,ol,ul){margin-block-end:0;margin-block-start:0}:where(hr){box-sizing:content-box;color:inherit;height:0}:where(abbr[title]){text-decoration:underline;text-decoration:underline dotted}:where(b,strong){font-weight:bolder}:where(code,kbd,pre,samp){font-family:monospace,monospace;font-size:1em}:where(small){font-size:80%}:where(table){border-color:currentColor;text-indent:0}:where(button,input,select){margin:0}:where(button){text-transform:none}:where(button,input:is([type=button i],[type=reset i],[type=submit i])){-webkit-appearance:button}:where(progress){vertical-align:baseline}:where(select){text-transform:none}:where(textarea){margin:0}:where(input[type=search i]){-webkit-appearance:textfield;outline-offset:-2px}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}:where(button,input:is([type=button i],[type=color i],[type=reset i],[type=submit i]))::-moz-focus-inner{border-style:none;padding:0}:where(button,input:is([type=button i],[type=color i],[type=reset i],[type=submit i]))::-moz-focusring{outline:1px dotted ButtonText}:where(:-moz-ui-invalid){box-shadow:none}:where(dialog){background-color:white;border:solid;color:black;height:-moz-fit-content;height:fit-content;left:0;margin:auto;padding:1em;position:absolute;right:0;width:-moz-fit-content;width:fit-content}:where(dialog:not([open])){display:none}:where(summary){display:list-item}.chroma{color:#b9b9b9;background-color:#181818}.chroma .err{color:#ed4a46;background-color:#252525}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0;width:auto;overflow:auto;display:block}.chroma .hl{display:block;width:100%;background-color:#252525}.chroma .lnt{margin-right:.4em;padding:0 .4em 0 .4em}.chroma .ln{margin-right:.4em;padding:0 .4em 0 .4em}.chroma .k{color:#3fc5b7}.chroma .kc{color:#3fc5b7}.chroma .kd{color:#3fc5b7}.chroma .kn{color:#eb6eb7}.chroma .kp{color:#3fc5b7}.chroma .kr{color:#3fc5b7}.chroma .kt{color:#3fc5b7}.chroma .na{color:#70b433}.chroma .nc{color:#70b433}.chroma .no{color:#3fc5b7}.chroma .nd{color:#70b433}.chroma .ne{color:#70b433}.chroma .nf{color:#70b433}.chroma .nx{color:#70b433}.chroma .nt{color:#eb6eb7}.chroma .l{color:#a580e2}.chroma .ld{color:#dbb32d}.chroma .s{color:#dbb32d}.chroma .sa{color:#dbb32d}.chroma .sb{color:#dbb32d}.chroma .sc{color:#dbb32d}.chroma .dl{color:#dbb32d}.chroma .sd{color:#dbb32d}.chroma .s2{color:#dbb32d}.chroma .se{color:#a580e2}.chroma .sh{color:#dbb32d}.chroma .si{color:#dbb32d}.chroma .sx{color:#dbb32d}.chroma .sr{color:#dbb32d}.chroma .s1{color:#dbb32d}.chroma .ss{color:#dbb32d}.chroma .m{color:#a580e2}.chroma .mb{color:#a580e2}.chroma .mf{color:#a580e2}.chroma .mh{color:#a580e2}.chroma .mi{color:#a580e2}.chroma .il{color:#a580e2}.chroma .mo{color:#a580e2}.chroma .o{color:#eb6eb7}.chroma .ow{color:#eb6eb7}.chroma .c{color:#777}.chroma .ch{color:#777}.chroma .cm{color:#777}.chroma .c1{color:#777}.chroma .cs{color:#777}.chroma .cp{color:#777}.chroma .cpf{color:#777}.chroma .gd{color:#eb6eb7}.chroma .ge{font-style:italic}.chroma .gi{color:#70b433}.chroma .gs{font-weight:bold}.chroma .gu{color:#777}::selection{background:#3b3b3b}html{background:#252525;line-height:1.6;letter-spacing:.06em;scroll-behavior:smooth}body,button,input,select,textarea{color:#b9b9b9;font-family:Inter,sans-serif}pre,code,pre tt{font-family:Consolas,"Andale Mono WT","Andale Mono",Menlo,Monaco,"Lucida Console","Lucida Sans Typewriter","DejaVu Sans Mono","Bitstream Vera Sans Mono","Liberation Mono","Nimbus Mono L","Courier New",Courier,"YaHei Consolas Hybrid",monospace,"Segoe UI Emoji","PingFang SC","Microsoft YaHei"}pre{padding:.7em 1.1em;font-size:.9em;line-height:1.5;letter-spacing:normal;white-space:pre;color:#b9b9b9;background:#181818;overflow-x:auto}pre code{padding:0;margin:0;color:#b9b9b9;background:rgba(0,0,0,0)}code{color:#b9b9b9;background:#181818;border-radius:3px;padding:0 3px;margin:0 4px;word-wrap:break-word;letter-spacing:normal}blockquote{border-left:.25em solid;margin:1em;padding:0 1em;font-style:italic}blockquote cite{font-weight:bold;font-style:normal}blockquote cite::before{content:"—— "}a{color:#b9b9b9;text-decoration:none;border:none;transition-property:color;transition-duration:.4s;transition-timing-function:ease-out}a:hover{color:#fff;text-shadow:0 0 1px #fff}hr{opacity:.2;border-width:0 0 5px 0;border-style:dashed;background:rgba(0,0,0,0);width:50%;margin:1.8em auto}h1,h2,h3,h4,h5,h6{transform:skewY(-1deg)}table{border-collapse:collapse;border-spacing:0;empty-cells:show;width:100%;max-width:100%}table th,table td{padding:.6em;border:1px solid}table th{font-weight:700;vertical-align:bottom}.section-inner{margin:0 auto;max-width:1200px;width:93%}.thin{max-width:720px;margin:auto}.feather{display:inline-block;vertical-align:-0.125em;width:1em;height:1em}.sub-menu{font-size:.7em}.desktop-only,.desktop-only-ib{display:none}.highlight{position:relative}.highlight div,.highlight pre{overflow-x:auto;border-radius:4px}.highlight-copy-btn{position:absolute;bottom:7px;right:7px;border:0;border-radius:4px;padding:1px;font-size:.7em;line-height:1.8;color:#252525;background-color:#777;opacity:.6;min-width:55px;text-align:center}.highlight-copy-btn:hover{background-color:#b9b9b9}#site-header{position:fixed;z-index:1;bottom:0;width:100%;box-sizing:border-box;box-shadow:-1px -2px 3px #181818;background-color:#3b3b3b;animation-duration:.3s}.hdr-wrapper{display:flex;justify-content:space-between;align-items:center;padding:.5em 0;font-size:1.2rem}.hdr-wrapper .site-branding{display:inline-block;margin-right:.8em;font-size:1.2em}.hdr-wrapper .site-nav{display:inline-block;font-size:1.1em;opacity:.8}.hdr-wrapper .site-nav .has-children{padding-right:.5em;border-right:2px solid #777}.hdr-wrapper .site-nav .sub-menu>a{margin-left:.3em}.hdr-wrapper .site-nav a{margin-left:.8em}.hdr-icons{font-size:1.2em}.hdr-social{display:inline-block;margin-left:.6em}.hdr-social>a{margin-left:.4em}.hdr-btn{border:none;background:none;padding:0;margin-left:.4em;cursor:pointer}#menu-btn{display:none;margin-left:.6em;cursor:pointer}#mobile-menu{position:fixed;bottom:4.8em;right:4.5em;display:none;padding:.6em 1.8em;z-index:1;box-sizing:border-box;box-shadow:-1px -2px 3px 0px #181818;background-color:#3b3b3b}#mobile-menu ul{list-style:none;margin:0;padding:0;line-height:2;font-size:1.2em}#site-footer{text-align:center;font-size:.9rem;margin-bottom:96px;margin-top:64px;opacity:.6}#site-footer p{margin:0}#spotlight{display:flex;min-height:100vh;flex-direction:column;align-items:center;justify-content:center;max-width:93%;margin:auto;font-size:1.5rem}#spotlight.error-404{flex-direction:row;line-height:normal}p.img-404{margin:0}p.img-404 svg{width:180px;max-width:100%;height:auto}.banner-404{margin-left:2em}.banner-404 h1{font-size:3em;margin:.5rem 0}.banner-404 p{margin-top:0}.banner-404 .btn-404{font-size:.8em}.banner-404 .btn-404 a{display:inline-block;border:2px solid #b9b9b9;border-radius:5px;padding:5px;transition-property:color,border-color}.banner-404 .btn-404 a:first-child{margin-right:1em}.banner-404 .btn-404 a:hover{border-color:#181818}.banner-404 .btn-404 a svg{margin-right:.5em}#home-center{display:flex;flex-grow:1;flex-direction:column;justify-content:center}#home-title{margin:0;text-align:center}#home-subtitle{margin-top:0;margin-bottom:1.5em;text-align:center;line-height:normal;font-size:.7em;font-style:italic;opacity:.9}#home-social{font-size:1.4em;text-align:center;opacity:.8}#home-social a{margin:0 .2em}#home-nav{opacity:.8}#home-nav a{display:block;text-align:center;margin-top:.5em}.posts-group{display:flex;margin-bottom:1.9em;line-height:normal}.posts-group .post-year{padding-top:6px;margin-right:1.8em;font-size:1.6em;transform:skewY(-1deg);opacity:.6}.posts-group .post-year:hover{cursor:pointer}.posts-group .posts-list{flex-grow:1;margin:0;padding:0;list-style:none}.posts-group .post-item{border-bottom:1px #777 dashed}.posts-group .post-item a{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0}.posts-group .post-day{flex-shrink:0;margin-left:1em;opacity:.6}.posts-group .post-description{font-size:x-small;flex-shrink:0;opacity:.6}.pinned-posts-group{display:flex;margin-bottom:1.9em;line-height:normal;border-bottom:2px #777 solid}.pinned-posts-group .pinned-posts-list{flex-grow:1;margin:0;padding:0;list-style:none}.pinned-posts-group .pinned-post-item{display:flex;justify-content:start;align-items:baseline;padding:12px 0}.pinned-posts-group .pinned-post-item a{padding-left:12px}.bg-img{width:100vw;height:100vh;opacity:.03;z-index:-1;position:fixed;top:0;background-attachment:fixed;background-repeat:no-repeat;background-size:cover;background-position:center;transition:opacity .5s}.show-bg-img{z-index:100;opacity:1;cursor:pointer}.post-header{margin-top:1.2em;line-height:normal}.post-header .post-meta{font-size:.9em;letter-spacing:normal;opacity:.6}.post-header h1{margin-top:.1em}hr.post-end{width:50%;margin-top:1.6em;margin-bottom:.8em;margin-left:0;border-style:solid;border-bottom-width:4px}.content a{word-wrap:break-word;border:none;box-shadow:inset 0 -2px 0 #777;transition-property:box-shadow;transition-duration:.1s}.content a:hover{box-shadow:inset 0 -1em 0 #777}.content figure{max-width:100%;height:auto;margin:0;text-align:center}.content figure p{font-size:.8em;font-style:italic;opacity:.6}.content figure.left{float:left;margin-right:1.5em;max-width:50%}.content figure.right{float:right;margin-left:1.5em;max-width:50%}.content figure.big{max-width:100vw}.content img{display:block;max-width:100%;height:auto;margin:auto;border-radius:4px}.content ul,.content ol{padding:0;margin-left:1.8em}.content a.anchor{float:left;margin-left:-20px;padding-right:6px;box-shadow:none;opacity:.8}.content a.anchor:hover{background:none;color:#b9b9b9;opacity:1}.content a.anchor svg{display:inline-block;width:14px;height:14px;vertical-align:baseline;visibility:hidden}.content a.anchor:focus svg{visibility:visible}.content h1:hover a.anchor svg,.content h2:hover a.anchor svg,.content h3:hover a.anchor svg,.content h4:hover a.anchor svg,.content h5:hover a.anchor svg,.content h6:hover a.anchor svg{visibility:visible}.footnotes{font-size:.85em}.footnotes a{box-shadow:none;text-decoration:underline;transition-property:color}.footnotes a:hover{background:rgba(0,0,0,0)}.footnotes a.footnote-backref{text-decoration:none}.footnotes ol{line-height:1.8}a.footnote-ref{box-shadow:none;text-decoration:none;padding:2px;border-radius:2px;background-color:#181818}a.footnote-ref:hover{box-shadow:none;background-color:#b9b9b9;transition-property:background-color}.post-info{font-size:.8rem;line-height:normal;opacity:.6}.post-info p{margin:.8em 0}.post-info a:hover{border-bottom:1px solid #b9b9b9}.post-info svg{margin-right:.8em}.post-info .tag{margin-right:.5em}.post-info .tag::before{content:"#"}.post-info .category{margin-right:.5em}.post-info .category::before{content:"⊲"}#toc{position:fixed;left:50%;top:0;display:none}.toc-title{margin-left:1em;margin-bottom:.5em;font-size:.8em;font-weight:bold}#TableOfContents{font-size:.8em;opacity:.6}#TableOfContents ul{padding-left:1em;margin:0}#TableOfContents>ul{list-style-type:none}#TableOfContents>ul ul ul{font-size:.9em}#TableOfContents a:hover{border-bottom:#b9b9b9 1px solid}.post-nav{display:flex;justify-content:space-between;margin-top:1.5em;margin-bottom:2.5em;font-size:1.2em}.post-nav a{flex-basis:50%;flex-grow:1}.post-nav .next-post{text-align:left;padding-right:5px}.post-nav .prev-post{text-align:right;padding-left:5px}.post-nav .post-nav-label{font-size:.8em;opacity:.8;text-transform:uppercase}.related-posts{padding:.8em;margin-top:1.5em;font-size:.8rem;border:3px dashed hsla(0,0%,100%,.2);border-radius:5px}.related-posts h2{margin:0;line-height:normal}.related-posts ul{margin-top:.5em;margin-bottom:0}@media(min-width: 800px){.site-main{margin-top:3em}hr.post-end{width:40%}}@media(min-width: 960px){.site-main{margin-top:6em}}@media(min-width: 1300px){.site-main{margin-top:8em}.desktop-only,#toc.show-toc{display:block}.desktop-only-ib{display:inline-block}figure.left{margin-left:-240px}figure.left p{text-align:left}figure.right{margin-right:-240px}figure.right p{text-align:right}figure.big{width:1200px;margin-left:-240px}hr.post-end{width:30%}#toc{top:13em;margin-left:370px;max-width:220px}}@media(min-width: 1800px){.site-main{margin-top:10em}.section-inner{max-width:1600px}.thin{max-width:960px}figure.left{max-width:75%;margin-left:-320px}figure.right{max-width:75%;margin-right:-320px}figure.big{width:1600px;margin-left:-320px}hr.post-end{width:30%}#toc{top:15em;margin-left:490px;max-width:300px}}@media(max-width: 760px){.hide-in-mobile,.site-nav.hide-in-mobile{display:none}#menu-btn{display:inline-block}.posts-group{display:block}.posts-group .post-year{margin:-6px 0 4px}#spotlight.error-404{flex-direction:column;text-align:center}#spotlight.error-404 .banner-404{margin:0}}@media(max-width: 520px){.content figure.left,.content figure.right{float:unset;max-width:100%;margin:0}hr.post-end{width:60%}#mobile-menu{right:4.2em}#home-subtitle{font-size:.5em}}.human{display:flex;justify-content:flex-end}