code .ts-constant{color:#ffa066}code span[class^=ts-keyword]{color:#957fb8;font-style:italic}code .ts-keyword-import{color:#e46876}code .ts-constructor,code .ts-function,code .ts-function-method{color:#7e9cd8}code .ts-property,code .ts-variable-member{color:#e6c384}code .ts-variable-parameter{color:#b8b4d0}code .ts-keyword-operator{color:#c0a36e;font-style:normal;font-weight:700}code .ts-boolean{color:#ffa066;font-weight:700}code .ts-number{color:#d27e99}code .ts-punctuation,code .ts-punctuation-delimiter{color:#9cabca}code .ts-character{color:#6a9589}code .ts-string{color:#98bb6c}code .ts-string-escape{color:#c0a36e;font-weight:700}code .ts-string-special,code .ts-punctuation-special,code .ts-constant-builtin,code .ts-function-builtin,code .ts-type-builtin,code .ts-variable-parameter-builtin{color:#7fb4ca}code .ts-comment{color:#727169;font-style:italic}code .ts-operator{color:#c0a36e}code .ts-type{color:#6a9589}code .ts-tag{color:#7fb4ca}code{font-feature-settings:"cv01", "cv02", "cv31", "ss07", "ss01" on, "ss03" off, "ss05";color:#9cabca;text-size-adjust:100%;background-color:#1f1f28;border:1px solid #54546d;border-radius:3px;padding-left:1px;padding-right:1px;font-family:Maple Mono,monospace;font-weight:400}pre{scrollbar-color:#ffffff4d transparent;background-color:#1f1f28;transition:all .2s;overflow-x:auto}pre:hover{background-color:#23232d;border-color:#54546d}pre>code{color:unset;background-color:#0000;width:100%;padding:8px;line-height:1.3;display:grid;overflow-x:auto}pre>code .line{min-height:1lh}pre>code .hl-light{background-color:#ffffff26;min-width:max-content;margin-left:-8px;margin-right:-8px;padding-left:8px;padding-right:8px}pre>code .hl-blur{filter:blur(1.2px);min-width:max-content;margin-left:-8px;margin-right:-8px;padding-left:8px;padding-right:8px;transition:filter .2s}pre>code .hl-blur:hover,pre>code .hl-blur.revealed{filter:blur()}pre>code details{background-color:#0003;border:none;margin-left:-8px;margin-right:-8px;padding:0 8px}pre>code details .line{filter:brightness(90%)}pre>code details summary{color:unset;margin-left:-8px;margin-right:-8px;padding-left:8px;padding-right:8px;list-style:none}pre>code details summary::-webkit-details-marker{display:none}pre>code details summary:before{content:attr(data-indent) "▶ "}pre>code details[open] summary{padding-bottom:unset;background-color:#ffffff14;border-bottom:none}pre>code details[open] summary:before{content:attr(data-indent) "▼ "}pre>code details[open]{padding-bottom:5px}pre>code details:hover .line{filter:none}pre>code details:hover{background-color:#ffffff08}.code-wrapper{flex:1;width:100%;display:flex;position:relative;overflow:auto}.code-wrapper .copy-btn{-webkit-backdrop-filter:blur(8px);z-index:1;cursor:pointer;opacity:0;color:inherit;background-color:#ffffff1a;border:none;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;transition:opacity .2s;position:absolute;top:.25rem;right:.25rem}.code-wrapper .copy-btn:hover{background-color:#fff3}.code-wrapper:hover .copy-btn{opacity:1}.alert{border-left:3px solid;flex-direction:column;gap:10px;padding-left:10px;display:flex}.alert .alert-title .alert-icon{width:1em;height:1em}.alert .alert-title{align-items:center;gap:5px;font-size:1.1em;font-weight:600;display:flex}.alert.note{background-color:#223249;border-left-color:#7e9cd8}.alert.note .alert-title{color:#7e9cd8}.alert.tip{background-color:#2b3328;border-left-color:#98bb6c}.alert.tip .alert-title{color:#98bb6c}.alert.warning{background-color:#49443c;border-left-color:#e6c384}.alert.warning .alert-title{color:#e6c384}.alert.important{background-color:#252535;border-left-color:#957fb8}.alert.important .alert-title{color:#957fb8}.alert.caution{background-color:#43242b;border-left-color:#e46876}.alert.caution .alert-title{color:#e46876}article{flex-direction:column;align-self:center;justify-items:center;gap:0;max-width:min(800px,95%);display:flex}article article-header{flex-direction:column;align-self:center;width:100%;font-family:Inter Tight Variable,sans-serif;display:flex}article article-header article-title{color:#98bb6c;padding-bottom:10px;font-size:2.4rem;font-weight:800;line-height:1.3}article article-header article-info{flex-direction:column;gap:10px;font-weight:500;display:flex}article article-header article-info article-meta{flex-direction:row;gap:10px;display:flex}article article-header hr{width:100%;margin-top:15px}article details{border:2px solid #b8b4d0;border-radius:5px;width:102%;margin-left:-2%;padding:5px}article details>summary{color:#b8b4d0;padding-left:.5em}article details[open]>summary{border-bottom:2px solid #b8b4d0;padding-bottom:5px}article-date{flex-direction:row;place-items:center;gap:3px;max-height:100%;display:flex}article-date .date-icon{color:#d27e99;width:1.2em;height:1.2em;margin-bottom:3px}article-tags{flex-direction:row;gap:10px;max-height:1em;display:flex}#main-menu{z-index:100;pointer-events:none;user-select:none;justify-content:center;width:100%;display:flex;position:fixed;top:0}#main-menu nav{-webkit-backdrop-filter:blur(12px);pointer-events:initial;align-items:center;align-content:strech;background-color:#1f1f284d;border:4px solid #363646;border-top-style:none;border-bottom-right-radius:10px;border-bottom-left-radius:10px;width:min(60%,200px);height:40px;font-family:Inter Tight Variable,sans-serif;font-size:1.1rem;font-weight:500;display:flex;overflow:hidden}#main-menu nav a{justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:hidden}#main-menu nav a:link,#main-menu nav a:visited{color:#dcd7ba;text-decoration:none}#main-menu nav a{transition:all .2s ease-in-out}#main-menu nav a:hover,#main-menu nav a:visited:hover{letter-spacing:.05em;color:#ff5d62;background-color:#2a2a37b3;font-weight:700}#main-menu nav a:first-child{border-right:2px solid #363646}#main-menu nav a:last-child{border-left:2px solid #363646}a{color:#a3d4d5}a:visited{color:#6a9589}a:hover{color:#16161d;background-color:#dcd7ba}a code{color:inherit;background-color:inherit}a code:hover{color:#16161d;background-color:#dcd7ba}a.article-tag{color:#a3d4d5;flex-direction:row;align-items:center;gap:3px;height:1em;display:flex}a.article-tag .tag-icon{color:#e6c384;width:1em;height:1em;margin-top:3px}a.article-tag:hover,a.article-tag:hover .tag-icon{color:#16161d;background-color:#dcd7ba}h1 a[href^=\#],h2 a[href^=\#],h3 a[href^=\#],h4 a[href^=\#],h5 a[href^=\#],h6 a[href^=\#]{color:inherit;text-decoration:underline}h1 a[href^=\#]:visited,h2 a[href^=\#]:visited,h3 a[href^=\#]:visited,h4 a[href^=\#]:visited,h5 a[href^=\#]:visited,h6 a[href^=\#]:visited{color:inherit}h1 a[href^=\#]:hover,h2 a[href^=\#]:hover,h3 a[href^=\#]:hover,h4 a[href^=\#]:hover,h5 a[href^=\#]:hover,h6 a[href^=\#]:hover{color:#16161d;background-color:#dcd7ba}:target{max-width:fit-content;max-height:fit-content}.target-flash{border-radius:5px;animation:.5s ease-out forwards target-flash}@keyframes target-flash{0%,65%{color:#16161d;background-color:#ff9e3b;box-shadow:0 0 30px 10px #ff9e3be6}}a[data-footnote-ref]:visited,.data-footnote-backref:visited{color:#a3d4d5}a[data-footnote-ref]:hover,.data-footnote-backref:hover{color:#16161d;background-color:#dcd7ba}.footnotes ol>li :first-child{margin-top:0}.footnotes ol>li :last-child{margin-bottom:0}table{border-collapse:collapse}table thead{background-color:#363646}table thead th{padding:5px}table thead th:not(:first-child):not(:last-child){border-left:1px solid #dcd7ba;border-right:1px solid #dcd7ba}table tr:not(:last-child){border-bottom:1px dotted #dcd7ba}table tr:nth-child(2n){background-color:#2a2a37}table tr td{text-align:center;margin:0;padding:0}table tr td:not(:first-child):not(:last-child){border-left:1px solid #dcd7ba;border-right:1px solid #dcd7ba}main{align-items:center}main .posts{flex-direction:column;gap:15px;margin-top:20px;display:flex}main .posts .post-listing-group article-date{border-bottom:2px solid #54546d;transition:all .15s ease-in-out}main .posts .post-listing-group:hover article-date{color:#ff5d62;border-bottom:2px solid #d27e99}main .posts .post-listing-group .post-listing-entry{background-color:#957fb81a;border-left:2px solid #54546d;flex-direction:column;max-width:550px;margin:5px;padding:5px;display:flex}main .posts .post-listing-group .post-listing-entry .post{color:#98bb6c;font-size:1.3rem;font-weight:700}main .posts .post-listing-group .post-listing-entry .post:hover{color:#16161d}main .posts .post-listing-group .post-listing-entry article-tags{flex-direction:row;padding-top:5px;padding-bottom:5px;display:flex}svg.typst-doc{font-size:1.3em}svg.typst-doc .typst-text,svg.typst-doc .typst-shape{fill:currentColor}p svg.typst-doc{font-size:1.1em}img{cursor:zoom-in}.image-overlay{z-index:9999;cursor:zoom-out;backdrop-filter:saturate(50%)blur(2px);background:#000000bf;justify-content:center;align-items:center;animation:.1s forwards overlay-fade-in;display:flex;position:fixed;inset:0}.image-overlay img{cursor:zoom-out}.image-overlay .expanded{min-width:min(1000px,95%);animation:.1s forwards image-scale-in}.image-overlay .expanded *{min-width:min(1000px,95%)}.image-overlay.closing{animation:.1s forwards overlay-fade-out}.image-overlay.closing .expanded{animation:.1s forwards image-scale-out}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}@keyframes overlay-fade-out{0%{opacity:1}to{opacity:0}}@keyframes image-scale-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes image-scale-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}html{color-scheme:dark;color:#dcd7ba;background-color:#16161d;flex-direction:column;align-items:center;width:100%;height:100%;font-weight:400;display:flex}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}html{scroll-padding-top:max(80px,20vh)}html body{width:100%;height:100%;margin:0;padding:0;font-family:Lexend Variable,sans-serif;transition:background-color .2s,color .2s;overflow-x:hidden}html body strong{color:oklch(from currentColor calc(l * 1.1) c h)}html body{flex-direction:column;align-items:center;line-height:1.7;display:flex}html body main:focus{outline:none}html body main{flex-direction:column;max-width:min(850px,92%);padding-top:50px;padding-bottom:20px;display:flex}html body main blockquote{background-color:#36364633;border-left:4px solid #54546d;border-top-right-radius:8px;border-bottom-right-radius:8px;margin-left:max(2%,4px);margin-right:max(2%,4px);padding:2px 8px}html body main img{background:linear-gradient(90deg,#ffffff05 25%,#ffffff0a 50%,#ffffff0f 75%) 0 0/200% 100%;border-radius:4px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}html body main img{content-visibility:auto;animation:2.6s infinite shimmer}html body main img.loaded{background:0 0;animation:none}html body main img{max-width:100%}html li::marker{color:#ffa066}html h1,html h2,html h3,html h4,html h5,html h6{margin:0;font-family:Inter Tight Variable,sans-serif;font-weight:800}html h1{color:#7e9cd8;font-size:25.5pt}html h2{color:#e6c384}html h3{color:#ff5d62}html h4{color:#ff9e3b}html h5{color:#b8b4d0}html h6{color:#d27e99}html ::selection{color:#16161d;background-color:#d27e99}html footer{background-color:#223249;flex-direction:row;justify-content:center;align-self:flex-end;align-items:center;gap:15px;width:100%;min-height:80px;margin-top:auto;display:flex}summary{cursor:pointer}
