:root{--background:#1a170f;--foreground:#eceae5;--accent:#eec35e;--font-size:1rem;--line-height:1.54em;--radius:0;color-scheme:dark light}[data-theme=terminal-light]{--background:#ffffff;--foreground:#454545;--accent:#b9975c}[data-theme=tahiti-gold]{--background:#fffbf7;--foreground:#45372b;--accent:#df7020}[data-theme=hopbush]{--background:#fff6f6;--foreground:#462d2d;--accent:#cc6099}[data-theme=studio]{--background:#f7f4ff;--foreground:#403352;--accent:#6f49ab}[data-theme=teal]{--background:#1a170f;--foreground:#eceae5;--accent:#32858b}[data-theme=heliotrope]{--background:#25062a;--foreground:#f7e9f9;--accent:#e575f8}[data-theme=viking]{--background:#0e1923;--foreground:#d6e8ee;--accent:#5accf0}[data-theme=white-black]{--background:#ffffff;--foreground:#000000;--accent:#000000}[data-theme=black-white]{--background:#000000;--foreground:#ffffff;--accent:#ffffff}[data-theme=matrix]{--background:#000000;--foreground:#4eee85;--accent:#4eee85}[data-theme=pink-panther]{--background:#1a170f;--foreground:#eceae5;--accent:#ee82cf}[data-theme=blue-screen-of-death]{--background:#153489;--foreground:#eceae5;--accent:#5ea5ee}[data-theme=vanilla-sky]{--background:#fff4f2;--foreground:#424140;--accent:#8f6a5e}[data-theme=tomato]{--background:#fff7f1;--foreground:#45372b;--accent:#ff6347}[data-theme=pistachio]{--background:#1d2021;--foreground:#ebdbb2;--accent:#8ec07c}html{box-sizing:border-box}*,:after,:before{box-sizing:inherit;word-break:break-word}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--font-size);line-height:var(--line-height);background-color:var(--background);color:var(--foreground);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-webkit-overflow-scrolling:touch;text-size-adjust:100%}h1{font-size:calc(var(--font-size) * 1.45)}h1,h2{letter-spacing:0;color:var(--accent)}h2{font-size:calc(var(--font-size) * 1.35)}h3{font-size:calc(var(--font-size) * 1.15);color:var(--accent)}h3,h4,h5,h6{letter-spacing:0}h4,h5,h6{font-size:calc(var(--font-size) * 1)}h1,h2,h3,h4,h5,h6{text-wrap:balance}figure,h1,h2,h3,h4,h5,h6,img,ol,p,table,ul,video{margin:25px 0}a{color:var(--accent)}a:hover{text-decoration-thickness:2px}.skip-link{position:absolute;left:10px;top:10px;padding:8px 12px;background:var(--background);color:var(--accent);border:2px solid var(--accent);transform:translateY(-150%);z-index:1000}.skip-link:focus-visible{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button{position:relative;font:inherit;font-weight:700;text-decoration:none;text-align:center;background:transparent;color:var(--accent);padding:5px 18px;border:4px solid var(--accent);border-radius:var(--radius);transition:background .15s linear;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;touch-action:manipulation}button:hover{background:color-mix(in srgb,var(--accent) 15%,transparent)}a:focus-visible,button:focus-visible{outline:1px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){button{transition:none}}fieldset{display:inline-block;border:2px solid var(--foreground);border-radius:calc(var(--radius) * 1.6);padding:10px}fieldset :first-child{margin-top:0}fieldset button,fieldset input,fieldset label,fieldset select,fieldset textarea{margin-top:calc(var(--line-height) * .5);width:100%}label{display:inline-block}label input{margin-top:0}input,select,textarea{background:transparent;color:var(--foreground);border:1px solid var(--foreground);border-radius:var(--radius);padding:10px;font:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=checkbox]{width:auto}input:active,input:focus-visible,select:active,select:focus-visible,textarea:active,textarea:focus-visible{border-color:var(--accent);outline:1px solid var(--accent);outline-offset:2px}input:active,select:active,textarea:active{box-shadow:none}select{background-image:linear-gradient(45deg,transparent 50%,var(--foreground) 50%),linear-gradient(135deg,var(--foreground) 50%,transparent 50%);background-position:calc(100% - 20px),calc(100% - 1em);background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:40px}select option{background:var(--background)}input[type=checkbox]{vertical-align:middle;padding:10px;box-shadow:inset 0 0 0 3px var(--background)}input[type=checkbox]:checked{background:var(--accent)}img{display:block;max-width:100%;border:8px solid var(--accent);border-radius:var(--radius);padding:8px;overflow:hidden}img.center,img.left{margin-right:auto}img.center,img.right{margin-left:auto}figure{width:-moz-fit-content;width:fit-content}figure.center,figure.left{margin-right:auto}figure.center,figure.right{margin-left:auto}figure img,figure video{margin-bottom:0}figure figcaption{background:var(--accent);color:var(--background);text-align:center;font-size:var(--font-size);font-weight:400;margin-top:-8px;padding:0 8px;border-radius:0 0 var(--radius) var(--radius)}figure figcaption p:first-child{margin-top:0}ol,ul{margin-left:4ch;padding:0}ol ol,ol ul,ul ol,ul ul{margin-top:0}li::marker{color:var(--accent)}ol li,ul li{position:relative}code,kbd{font-family:Monaco,Consolas,Ubuntu Mono,monospace!important;font-feature-settings:normal;background:color-mix(in srgb,var(--foreground) 5%,transparent);border:1px solid var(--code-border);padding:1px 6px;margin:0 2px;font-size:calc(var(--font-size) * .95)}kbd{border-top:1px solid color-mix(in srgb,var(--accent) 25%,transparent);border-left:1px solid var(--accent);border-right:1px solid var(--accent);border-bottom:4px solid var(--accent);border-radius:4px}code code{background:transparent;padding:0;margin:0}pre{-moz-tab-size:4;tab-size:4;background:color-mix(in srgb,var(--foreground) 5%,transparent)!important;color:var(--foreground);padding:20px 10px;font-size:calc(var(--font-size) * .95)!important;overflow:auto;border-radius:var(--radius);border:1px solid color-mix(in srgb,var(--foreground) 10%,transparent)}pre code{background:none!important;margin:0;padding:0}sup{line-height:0}abbr{position:relative;-webkit-text-decoration-style:wavy;text-decoration-style:wavy;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);cursor:help}sub{bottom:-.25em}sup{top:-.25em}mark{background:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--foreground)}blockquote{position:relative;border-top:1px solid var(--accent);border-bottom:1px solid var(--accent);margin:0;padding:25px}blockquote:before{content:">";display:block;position:absolute;left:0;color:var(--accent)}blockquote p:first-child{margin-top:0}blockquote p:last-child{margin-bottom:0}table{table-layout:auto;border-collapse:collapse}table,td,th{border:2px solid var(--foreground);padding:10px}th{border-style:solid;color:var(--foreground);text-align:left;text-transform:uppercase;letter-spacing:.04em}hr{width:100%;border:none;background:var(--accent);height:2px}.headings--one-size h1,.headings--one-size h2,.headings--one-size h3,.headings--one-size h4,.headings--one-size h5,.headings--one-size h6{font-size:1.4rem;line-height:1.3;margin:20px 0}.headings--one-size~h1:first-child,.headings--one-size~h2:first-child,.headings--one-size~h3:first-child,.headings--one-size~h4:first-child,.headings--one-size~h5:first-child,.headings--one-size~h6:first-child{margin-top:20px}blockquote.twitter-tweet{position:relative;background:var(--background);font:inherit;color:inherit;border:1px solid var(--accent);padding-top:60px}blockquote.twitter-tweet a{color:var(--accent);text-decoration:underline}blockquote.twitter-tweet:before{content:"> From X:";position:absolute;top:20px;left:20px;color:var(--accent);font-weight:700}.container{display:flex;flex-direction:column;padding:40px;max-width:864px;min-height:100vh;margin:0 auto;border-right:1px solid color-mix(in srgb,var(--accent) 10%,transparent);border-left:1px solid color-mix(in srgb,var(--accent) 10%,transparent)}.container.center,.container.full{border:none;margin:0 auto}.container.center{border-right:1px solid color-mix(in srgb,var(--accent) 10%,transparent);border-left:1px solid color-mix(in srgb,var(--accent) 10%,transparent)}.container.full{max-width:100%}.content{display:flex;flex-direction:column}.hidden{display:none}.__h_video{position:relative;overflow:visible!important;height:auto!important;padding-bottom:0!important}.__h_video a{position:relative;display:block;width:100%}.__h_video a img{width:100%}.__h_video a .play{position:absolute;top:0;left:0;right:0;bottom:0;margin:auto;width:60px;height:60px}iframe[src*="youtube.com"]{border:8px solid var(--accent)!important;padding:8px!important}@media (max-width:684px){:root{--font-size:0.95rem}.container{padding:20px}}@media print{.container,.content{display:initial}}.header{display:flex;flex-direction:column;position:relative}.header__inner{display:flex;align-items:center;justify-content:space-between}.header__logo{display:flex;flex:1 1;min-width:0;margin:0;font-size:16px}.header__logo:after{content:"";background:repeating-linear-gradient(90deg,var(--accent),var(--accent) 2px,transparent 0,transparent 10px);display:block;width:100%;right:10px}.header__logo a{flex:0 0 auto;max-width:100%;text-decoration:none}.logo{display:flex;align-items:center;text-decoration:none;background:var(--accent);color:var(--background);font-weight:700;padding:5px 10px}@media print{.header{display:none}}.navigation-menu{display:flex;align-items:flex-start;justify-content:space-between;margin:20px 1px}.navigation-menu__inner{display:flex;flex:1 1;flex-wrap:wrap;list-style:none;margin:0;padding:0}.navigation-menu__inner>li{flex:0 0 auto;margin-bottom:10px;white-space:nowrap}.navigation-menu__inner>li:not(:last-of-type){margin-right:20px}.navigation-menu .spacer{flex-grow:1!important}.menu{display:flex;flex-direction:column;position:relative;list-style:none;padding:0;margin:0}.menu__trigger{margin-right:0!important;color:var(--accent);font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer}.menu__dropdown{display:none;flex-direction:column;position:absolute;background:var(--background);box-shadow:0 10px var(--background),-10px 10px var(--background),10px 10px var(--background);color:var(--accent);border:2px solid var(--accent);margin:0;padding:10px;top:10px;left:0;list-style:none;z-index:99}.open .menu__dropdown{display:flex}.menu__dropdown>li{flex:0 0 auto}.menu__dropdown>li:not(:last-of-type){margin-bottom:10px}.menu__dropdown-item,.menu__dropdown>li a{display:flex;padding:5px}.menu__dropdown-item{width:100%;border:0;background:transparent;color:inherit;font:inherit;text-align:left;white-space:nowrap;cursor:pointer;touch-action:manipulation}.menu__dropdown-item:focus-visible,.menu__dropdown-item:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.menu--mobile .menu__trigger{color:var(--accent);border:2px solid;margin-left:10px;height:100%;padding:3px 8px;margin-bottom:0!important;position:relative;cursor:pointer;display:none}.menu--mobile li{flex:0 0 auto}.menu--mobile li:not(:last-of-type){margin-bottom:10px}.menu--theme-selector .menu__trigger{color:var(--accent);border:2px solid var(--accent);margin-left:5px;height:100%;padding:3px 8px;margin-bottom:0!important;position:relative;cursor:pointer;display:flex;align-items:center}.menu--theme-selector .menu__dropdown{left:auto;right:0}@media (max-width:684px){.navigation-menu{margin:0}.navigation-menu__inner{flex-direction:column;align-items:flex-start;padding:0}.navigation-menu__inner li{margin:0;padding:5px}.menu--desktop{display:none}.menu--mobile .menu__trigger{display:block}.menu--mobile .menu__dropdown{left:auto;right:0}.menu--theme-selector.menu--desktop{display:flex}.menu--theme-selector .menu__dropdown{left:auto;right:0}}.button-container{display:table;margin-left:auto;margin-right:auto}.button,a.button,button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:8px 18px;text-decoration:none;text-align:center;font:inherit;font-weight:700;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;touch-action:manipulation}.button:focus-visible,a.button:focus-visible,button:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.button.outline,a.button.outline,button.outline{background:transparent;box-shadow:none;padding:8px 18px}.button.outline :hover,a.button.outline :hover,button.outline :hover{transform:none;box-shadow:none}.button.link,a.button.link,button.link{background:none;font-size:var(--font-size)}.button.small,a.button.small,button.small{font-size:calc(var(--font-size) * .8)}.button.wide,a.button.wide,button.wide{min-width:200px;padding:14px 24px}a.button.inline{background:none;color:var(--accent);padding:initial;margin:initial;border:initial;font-weight:400;text-decoration:none}a.button.inline:active,a.button.inline:hover{background:none}a.read-more,a.read-more:active,a.read-more:hover{display:inline-flex;border:none;background:none;box-shadow:none;padding:0;max-width:100%;text-decoration:none}.index-content{margin:25px 0}.index-content p{white-space:pre-wrap}.framed{border:1px solid var(--accent);padding:20px}.framed :first-child{margin-top:0}.framed :last-child{margin-bottom:0}.post,.posts{width:100%}.post{text-align:left;padding:30px 0}.post:not(:last-of-type){border-bottom:1px solid color-mix(in srgb,var(--foreground) 10%,transparent)}.post-meta{font-size:inherit;margin-bottom:10px;color:color-mix(in srgb,var(--foreground) 65%,transparent)}.post-meta>:not(:first-child):before{content:"::";display:inline-block;margin:0 8px}.post-title{position:relative;color:var(--accent);margin-top:0!important;margin-bottom:15px!important;padding-bottom:15px;text-decoration:none!important}.post-title,.post-title:after{border-bottom:3px dotted var(--accent)}.post-title:after{content:"";position:absolute;bottom:2px;display:block;width:100%}.post-title a{text-decoration:none}.post-tags{display:flex;flex-wrap:wrap;list-style:none;margin:0 0 20px;padding:0;font-size:inherit;color:var(--accent)}.post-tag{margin-right:10px}.post .post-tags li:not(:empty):before{content:none}.table-of-contents{margin:40px 0}.post-content{margin-top:25px}.post-content img{width:100%;height:auto}.post-cover{margin:25px 0}.post ul{list-style:none}.post ul li:not(:empty):before{content:"-";position:absolute;left:-20px;color:var(--accent)}.post--regulation h1,.post--regulation h2{justify-content:center}.post--regulation h2{margin-bottom:10px}.post--regulation h2+h2{margin-top:-10px;margin-bottom:20px}.hanchor{position:absolute;color:var(--accent);text-decoration:none;margin-left:10px;scroll-margin-top:calc(var(--line-height) * 2);opacity:0;pointer-events:none}.hanchor:focus-visible,h1:focus-within .hanchor,h1:hover .hanchor,h2:focus-within .hanchor,h2:hover .hanchor,h3:focus-within .hanchor,h3:hover .hanchor,h4:focus-within .hanchor,h4:hover .hanchor,h5:focus-within .hanchor,h5:hover .hanchor,h6:focus-within .hanchor,h6:hover .hanchor{opacity:1;pointer-events:auto}.footnotes{color:color-mix(in srgb,var(--foreground) 50%,transparent)}.footnotes hr{background:color-mix(in srgb,var(--foreground) 50%,transparent)}@media (max-width:684px){.post-cover{padding:10px;border-width:10px}}:root{--code-border:color-mix(in srgb,var(--foreground) 10%,transparent)}pre:not(.chroma){padding:10px}pre.chroma{margin:0;padding:10px 0}pre code,pre.chroma{color:var(--foreground)}pre code{border:none}code{color:var(--accent);text-size-adjust:100%;-ms-text-size-adjust:100%;-moz-text-size-adjust:100%;-webkit-text-size-adjust:100%}.highlight{position:relative;margin:20px 0;border:1px solid var(--code-border)}.highlight pre{border:none}.code-title{display:flex;align-items:center;justify-content:space-between;background:color-mix(in srgb,var(--foreground) 5%,transparent);border-bottom:1px solid var(--code-border);color:var(--comment);text-transform:uppercase;font-size:calc(var(--font-size) * .8);padding:6px 10px;line-height:1}.copy-button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;text-decoration:none;text-align:center;font-size:13px;font-weight:500;border:1px solid color-mix(in srgb,var(--accent) 15%,transparent);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.copy-button:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.code-title .copy-button{z-index:1;background:color-mix(in srgb,var(--foreground) 5%,var(--background))}.code-title:hover .copy-button{display:inline-block}.code-title .copy-button:hover{background:color-mix(in srgb,var(--accent) 10%,var(--background))}.collapsable-code{position:relative;width:100%;margin:20px 0;border:1px solid var(--accent);.highlight{margin:0}}.collapsable-code__title{display:inline-flex;align-items:center;flex:1 1;color:var(--accent);padding:3px 10px;font-size:calc(var(--font-size) * .9);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.collapsable-code__language{color:var(--accent);border:1px solid var(--accent);border-bottom:none;text-transform:uppercase;padding:3px 10px}.collapsable-code summary{color:var(--accent);padding:0 10px;cursor:pointer}.collapsable-code summary:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.collapsable-code pre{margin-top:0}.collapsable-code pre:first-line{line-height:0}:root{--first-tone:var(--accent);--second-tone:color-mix(in srgb,var(--accent) 70%,transparent);--comment:color-mix(in srgb,var(--foreground) 50%,transparent)}.chroma{overflow:auto}.chroma .lnlinks{text-decoration:none;color:inherit}.chroma .lntd{width:100%;vertical-align:top;padding:0;margin:0;border:0}.chroma .lntd:first-child{width:auto}.chroma .lntd code{display:grid}.chroma .lntable{width:100%;border-spacing:0;padding:0;margin:0;border:0}.chroma .hl{background-color:color-mix(in srgb,var(--foreground) 5%,transparent)!important}.chroma .lnt{padding:0 10px}.chroma .ln,.chroma .lnt{color:var(--comment);white-space:pre;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chroma .ln{margin-right:.8em;padding:0 .4em 0 0}.chroma .line{display:flex;padding:0 10px}.chroma .k,.chroma .kc,.chroma .kd,.chroma .kn,.chroma .kp,.chroma .kr,.chroma .kt{color:var(--second-tone)}.chroma .n{color:var(--first-tone)}.chroma .na{color:var(--second-tone)}.chroma .bp,.chroma .nb{color:var(--first-tone)}.chroma .nc{color:var(--foreground)}.chroma .fm,.chroma .nd,.chroma .ne,.chroma .nf,.chroma .ni,.chroma .nl,.chroma .nn,.chroma .no,.chroma .nt,.chroma .nv,.chroma .nx,.chroma .py,.chroma .vc,.chroma .vg,.chroma .vi,.chroma .vm{color:var(--first-tone)}.chroma .dl,.chroma .s,.chroma .s1,.chroma .s2,.chroma .sa,.chroma .sb,.chroma .sc,.chroma .sd,.chroma .se,.chroma .sh,.chroma .si,.chroma .sr,.chroma .ss,.chroma .sx{color:var(--foreground)}.chroma .il,.chroma .m,.chroma .mb,.chroma .mf,.chroma .mh,.chroma .mi,.chroma .mo{color:var(--first-tone)}.chroma .o,.chroma .ow,.chroma .p{color:var(--foreground)}.chroma .c,.chroma .c1,.chroma .ch,.chroma .cm,.chroma .cp,.chroma .cpf,.chroma .cs{color:var(--comment)}.chroma .gd{color:var(--first-tone)}.chroma .gi{color:var(--second-tone)}.chroma .language-php .cp{color:var(--foreground)}.pagination__title{display:flex;text-align:center;position:relative;margin:20px 0}.pagination__title-h{text-align:center;margin:0 auto;padding:5px 10px;background:var(--background);color:color-mix(in srgb var(--foreground) 30%,transparent);font-size:calc(var(--font-size) * .8);text-transform:uppercase;text-decoration:none;letter-spacing:.1em;z-index:1}.pagination__title hr{position:absolute;left:0;right:0;width:100%;margin-top:15px;z-index:0}.pagination__buttons{display:flex;align-items:center;justify-content:center;flex-flow:row wrap;gap:10px}.pagination__buttons a{max-width:100%;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-decoration:none}.button,.pagination__buttons a{display:inline-flex;min-width:0}.button{position:relative;align-items:center;font-size:inherit;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.button,.button a{justify-content:center}.button a{display:flex;min-width:0;flex:1 1;padding:8px 16px}.button__text{min-width:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.next .button__icon{margin-left:8px}.prev .button__icon{margin-right:8px}@media print{.pagination{display:none}}.footer{padding:40px 0;flex-grow:0;opacity:.65}.footer__inner{display:flex;align-items:center;justify-content:space-between;margin:0;max-width:100%}.footer a{color:inherit}.footer .copyright{display:flex;flex-flow:row wrap;flex:1 1;align-items:center;justify-content:center}.footer .copyright--user{margin:auto;text-align:center}.footer .copyright>:first-child:not(:only-child){margin-right:10px}.footer .copyright span{white-space:nowrap}@media (max-width:900px){.footer__inner{flex-direction:column}}