.pagefind-ui__result.svelte-j9e30.svelte-j9e30{list-style-type:none;display:flex;align-items:flex-start;gap:min(calc(40px * var(--pagefind-ui-scale)),3%);padding:calc(30px * var(--pagefind-ui-scale)) 0 calc(40px * var(--pagefind-ui-scale));border-top:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result.svelte-j9e30.svelte-j9e30:last-of-type{border-bottom:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result-thumb.svelte-j9e30.svelte-j9e30{width:min(30%,calc((30% - (100px * var(--pagefind-ui-scale))) * 100000));max-width:calc(120px * var(--pagefind-ui-scale));margin-top:calc(10px * var(--pagefind-ui-scale));aspect-ratio:var(--pagefind-ui-image-box-ratio);position:relative}.pagefind-ui__result-image.svelte-j9e30.svelte-j9e30{display:block;position:absolute;left:50%;transform:translate(-50%);font-size:0;width:auto;height:auto;max-width:100%;max-height:100%;border-radius:var(--pagefind-ui-image-border-radius)}.pagefind-ui__result-inner.svelte-j9e30.svelte-j9e30{flex:1;display:flex;flex-direction:column;align-items:flex-start;margin-top:calc(10px * var(--pagefind-ui-scale))}.pagefind-ui__result-title.svelte-j9e30.svelte-j9e30{display:inline-block;font-weight:700;font-size:calc(21px * var(--pagefind-ui-scale));margin-top:0;margin-bottom:0}.pagefind-ui__result-title.svelte-j9e30 .pagefind-ui__result-link.svelte-j9e30{color:var(--pagefind-ui-text);text-decoration:none}.pagefind-ui__result-title.svelte-j9e30 .pagefind-ui__result-link.svelte-j9e30:hover{text-decoration:underline}.pagefind-ui__result-excerpt.svelte-j9e30.svelte-j9e30{display:inline-block;font-weight:400;font-size:calc(16px * var(--pagefind-ui-scale));margin-top:calc(4px * var(--pagefind-ui-scale));margin-bottom:0;min-width:calc(250px * var(--pagefind-ui-scale))}.pagefind-ui__loading.svelte-j9e30.svelte-j9e30{color:var(--pagefind-ui-text);background-color:var(--pagefind-ui-text);border-radius:var(--pagefind-ui-border-radius);opacity:.1;pointer-events:none}.pagefind-ui__result-tags.svelte-j9e30.svelte-j9e30{list-style-type:none;padding:0;display:flex;gap:calc(20px * var(--pagefind-ui-scale));flex-wrap:wrap;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__result-tag.svelte-j9e30.svelte-j9e30{padding:calc(4px * var(--pagefind-ui-scale)) calc(8px * var(--pagefind-ui-scale));font-size:calc(14px * var(--pagefind-ui-scale));border-radius:var(--pagefind-ui-border-radius);background-color:var(--pagefind-ui-tag)}.pagefind-ui__result.svelte-4xnkmf.svelte-4xnkmf{list-style-type:none;display:flex;align-items:flex-start;gap:min(calc(40px * var(--pagefind-ui-scale)),3%);padding:calc(30px * var(--pagefind-ui-scale)) 0 calc(40px * var(--pagefind-ui-scale));border-top:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result.svelte-4xnkmf.svelte-4xnkmf:last-of-type{border-bottom:solid var(--pagefind-ui-border-width) var(--pagefind-ui-border)}.pagefind-ui__result-nested.svelte-4xnkmf.svelte-4xnkmf{display:flex;flex-direction:column;padding-left:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__result-nested.svelte-4xnkmf.svelte-4xnkmf:first-of-type{padding-top:calc(10px * var(--pagefind-ui-scale))}.pagefind-ui__result-nested.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf{font-size:.9em;position:relative}.pagefind-ui__result-nested.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf:before{content:"⤷ ";position:absolute;top:0;right:calc(100% + .1em)}.pagefind-ui__result-thumb.svelte-4xnkmf.svelte-4xnkmf{width:min(30%,calc((30% - (100px * var(--pagefind-ui-scale))) * 100000));max-width:calc(120px * var(--pagefind-ui-scale));margin-top:calc(10px * var(--pagefind-ui-scale));aspect-ratio:var(--pagefind-ui-image-box-ratio);position:relative}.pagefind-ui__result-image.svelte-4xnkmf.svelte-4xnkmf{display:block;position:absolute;left:50%;transform:translate(-50%);font-size:0;width:auto;height:auto;max-width:100%;max-height:100%;border-radius:var(--pagefind-ui-image-border-radius)}.pagefind-ui__result-inner.svelte-4xnkmf.svelte-4xnkmf{flex:1;display:flex;flex-direction:column;align-items:flex-start;margin-top:calc(10px * var(--pagefind-ui-scale))}.pagefind-ui__result-title.svelte-4xnkmf.svelte-4xnkmf{display:inline-block;font-weight:700;font-size:calc(21px * var(--pagefind-ui-scale));margin-top:0;margin-bottom:0}.pagefind-ui__result-title.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf{color:var(--pagefind-ui-text);text-decoration:none}.pagefind-ui__result-title.svelte-4xnkmf .pagefind-ui__result-link.svelte-4xnkmf:hover{text-decoration:underline}.pagefind-ui__result-excerpt.svelte-4xnkmf.svelte-4xnkmf{display:inline-block;font-weight:400;font-size:calc(16px * var(--pagefind-ui-scale));margin-top:calc(4px * var(--pagefind-ui-scale));margin-bottom:0;min-width:calc(250px * var(--pagefind-ui-scale))}.pagefind-ui__loading.svelte-4xnkmf.svelte-4xnkmf{color:var(--pagefind-ui-text);background-color:var(--pagefind-ui-text);border-radius:var(--pagefind-ui-border-radius);opacity:.1;pointer-events:none}.pagefind-ui__result-tags.svelte-4xnkmf.svelte-4xnkmf{list-style-type:none;padding:0;display:flex;gap:calc(20px * var(--pagefind-ui-scale));flex-wrap:wrap;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__result-tag.svelte-4xnkmf.svelte-4xnkmf{padding:calc(4px * var(--pagefind-ui-scale)) calc(8px * var(--pagefind-ui-scale));font-size:calc(14px * var(--pagefind-ui-scale));border-radius:var(--pagefind-ui-border-radius);background-color:var(--pagefind-ui-tag)}legend.svelte-1v2r7ls.svelte-1v2r7ls{position:absolute;clip:rect(0 0 0 0)}.pagefind-ui__filter-panel.svelte-1v2r7ls.svelte-1v2r7ls{min-width:min(calc(260px * var(--pagefind-ui-scale)),100%);flex:1;display:flex;flex-direction:column;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__filter-group.svelte-1v2r7ls.svelte-1v2r7ls{border:0;padding:0}.pagefind-ui__filter-block.svelte-1v2r7ls.svelte-1v2r7ls{padding:0;display:block;border-bottom:solid calc(2px * var(--pagefind-ui-scale)) var(--pagefind-ui-border);padding:calc(20px * var(--pagefind-ui-scale)) 0}.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls{font-size:calc(16px * var(--pagefind-ui-scale));position:relative;display:flex;align-items:center;list-style:none;font-weight:700;cursor:pointer;height:calc(24px * var(--pagefind-ui-scale))}.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls::-webkit-details-marker{display:none}.pagefind-ui__filter-name.svelte-1v2r7ls.svelte-1v2r7ls:after{position:absolute;content:"";right:calc(6px * var(--pagefind-ui-scale));top:50%;width:calc(8px * var(--pagefind-ui-scale));height:calc(8px * var(--pagefind-ui-scale));border:solid calc(2px * var(--pagefind-ui-scale)) currentColor;border-right:0;border-top:0;transform:translateY(-70%) rotate(-45deg)}.pagefind-ui__filter-block[open].svelte-1v2r7ls .pagefind-ui__filter-name.svelte-1v2r7ls:after{transform:translateY(-70%) rotate(-225deg)}.pagefind-ui__filter-group.svelte-1v2r7ls.svelte-1v2r7ls{display:flex;flex-direction:column;gap:calc(20px * var(--pagefind-ui-scale));padding-top:calc(30px * var(--pagefind-ui-scale))}.pagefind-ui__filter-value.svelte-1v2r7ls.svelte-1v2r7ls{position:relative;display:flex;align-items:center;gap:calc(8px * var(--pagefind-ui-scale))}.pagefind-ui__filter-value.svelte-1v2r7ls.svelte-1v2r7ls:before{position:absolute;content:"";top:50%;left:calc(8px * var(--pagefind-ui-scale));width:0px;height:0px;border:solid 1px #fff;opacity:0;transform:translate(calc(4.5px * var(--pagefind-ui-scale) * -1),calc(.8px * var(--pagefind-ui-scale))) skew(-5deg) rotate(-45deg);transform-origin:top left;border-top:0;border-right:0;pointer-events:none}.pagefind-ui__filter-value.pagefind-ui__filter-value--checked.svelte-1v2r7ls.svelte-1v2r7ls:before{opacity:1;width:calc(9px * var(--pagefind-ui-scale));height:calc(4px * var(--pagefind-ui-scale));transition:width .1s ease-out .1s,height .1s ease-in}.pagefind-ui__filter-checkbox.svelte-1v2r7ls.svelte-1v2r7ls{margin:0;width:calc(16px * var(--pagefind-ui-scale));height:calc(16px * var(--pagefind-ui-scale));border:solid 1px var(--pagefind-ui-border);appearance:none;-webkit-appearance:none;border-radius:calc(var(--pagefind-ui-border-radius) / 2);background-color:var(--pagefind-ui-background);cursor:pointer}.pagefind-ui__filter-checkbox.svelte-1v2r7ls.svelte-1v2r7ls:checked{background-color:var(--pagefind-ui-primary);border:solid 1px var(--pagefind-ui-primary)}.pagefind-ui__filter-label.svelte-1v2r7ls.svelte-1v2r7ls{cursor:pointer;font-size:calc(16px * var(--pagefind-ui-scale));font-weight:400}.pagefind-ui--reset *:where(:not(html,iframe,canvas,img,svg,video):not(svg *,symbol *)){all:unset;display:revert;outline:revert}.pagefind-ui--reset *,.pagefind-ui--reset *:before,.pagefind-ui--reset *:after{box-sizing:border-box}.pagefind-ui--reset a,.pagefind-ui--reset button{cursor:revert}.pagefind-ui--reset ol,.pagefind-ui--reset ul,.pagefind-ui--reset menu{list-style:none}.pagefind-ui--reset img{max-width:100%}.pagefind-ui--reset table{border-collapse:collapse}.pagefind-ui--reset input,.pagefind-ui--reset textarea{-webkit-user-select:auto}.pagefind-ui--reset textarea{white-space:revert}.pagefind-ui--reset meter{-webkit-appearance:revert;appearance:revert}.pagefind-ui--reset ::placeholder{color:unset}.pagefind-ui--reset :where([hidden]){display:none}.pagefind-ui--reset :where([contenteditable]:not([contenteditable=false])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}.pagefind-ui--reset :where([draggable=true]){-webkit-user-drag:element}.pagefind-ui--reset mark{all:revert}:root{--pagefind-ui-scale:.8;--pagefind-ui-primary:#393939;--pagefind-ui-text:#393939;--pagefind-ui-background:#ffffff;--pagefind-ui-border:#eeeeee;--pagefind-ui-tag:#eeeeee;--pagefind-ui-border-width:2px;--pagefind-ui-border-radius:8px;--pagefind-ui-image-border-radius:8px;--pagefind-ui-image-box-ratio:3 / 2;--pagefind-ui-font:system, -apple-system, "BlinkMacSystemFont", ".SFNSText-Regular", "San Francisco", "Roboto", "Segoe UI", "Helvetica Neue", "Lucida Grande", "Ubuntu", "arial", sans-serif}.pagefind-ui.svelte-e9gkc3{width:100%;color:var(--pagefind-ui-text);font-family:var(--pagefind-ui-font)}.pagefind-ui__hidden.svelte-e9gkc3{display:none!important}.pagefind-ui__suppressed.svelte-e9gkc3{opacity:0;pointer-events:none}.pagefind-ui__form.svelte-e9gkc3{position:relative}.pagefind-ui__form.svelte-e9gkc3:before{background-color:var(--pagefind-ui-text);width:calc(18px * var(--pagefind-ui-scale));height:calc(18px * var(--pagefind-ui-scale));top:calc(23px * var(--pagefind-ui-scale));left:calc(20px * var(--pagefind-ui-scale));content:"";position:absolute;display:block;opacity:.7;-webkit-mask-image:url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.7549 11.255H11.9649L11.6849 10.985C12.6649 9.845 13.2549 8.365 13.2549 6.755C13.2549 3.165 10.3449 0.255005 6.75488 0.255005C3.16488 0.255005 0.254883 3.165 0.254883 6.755C0.254883 10.345 3.16488 13.255 6.75488 13.255C8.36488 13.255 9.84488 12.665 10.9849 11.685L11.2549 11.965V12.755L16.2549 17.745L17.7449 16.255L12.7549 11.255ZM6.75488 11.255C4.26488 11.255 2.25488 9.245 2.25488 6.755C2.25488 4.26501 4.26488 2.255 6.75488 2.255C9.24488 2.255 11.2549 4.26501 11.2549 6.755C11.2549 9.245 9.24488 11.255 6.75488 11.255Z' fill='%23000000'/%3E%3C/svg%3E%0A");mask-image:url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.7549 11.255H11.9649L11.6849 10.985C12.6649 9.845 13.2549 8.365 13.2549 6.755C13.2549 3.165 10.3449 0.255005 6.75488 0.255005C3.16488 0.255005 0.254883 3.165 0.254883 6.755C0.254883 10.345 3.16488 13.255 6.75488 13.255C8.36488 13.255 9.84488 12.665 10.9849 11.685L11.2549 11.965V12.755L16.2549 17.745L17.7449 16.255L12.7549 11.255ZM6.75488 11.255C4.26488 11.255 2.25488 9.245 2.25488 6.755C2.25488 4.26501 4.26488 2.255 6.75488 2.255C9.24488 2.255 11.2549 4.26501 11.2549 6.755C11.2549 9.245 9.24488 11.255 6.75488 11.255Z' fill='%23000000'/%3E%3C/svg%3E%0A");-webkit-mask-size:100%;mask-size:100%;z-index:9;pointer-events:none}.pagefind-ui__search-input.svelte-e9gkc3{height:calc(64px * var(--pagefind-ui-scale));padding:0 calc(70px * var(--pagefind-ui-scale)) 0 calc(54px * var(--pagefind-ui-scale));background-color:var(--pagefind-ui-background);border:var(--pagefind-ui-border-width) solid var(--pagefind-ui-border);border-radius:var(--pagefind-ui-border-radius);font-size:calc(21px * var(--pagefind-ui-scale));position:relative;appearance:none;-webkit-appearance:none;display:flex;width:100%;box-sizing:border-box;font-weight:700}.pagefind-ui__search-input.svelte-e9gkc3::placeholder{opacity:.2}.pagefind-ui__search-clear.svelte-e9gkc3{position:absolute;top:calc(3px * var(--pagefind-ui-scale));right:calc(3px * var(--pagefind-ui-scale));height:calc(58px * var(--pagefind-ui-scale));padding:0 calc(15px * var(--pagefind-ui-scale)) 0 calc(2px * var(--pagefind-ui-scale));color:var(--pagefind-ui-text);font-size:calc(14px * var(--pagefind-ui-scale));cursor:pointer;background-color:var(--pagefind-ui-background);border-radius:var(--pagefind-ui-border-radius)}.pagefind-ui__drawer.svelte-e9gkc3{gap:calc(60px * var(--pagefind-ui-scale));display:flex;flex-direction:row;flex-wrap:wrap}.pagefind-ui__results-area.svelte-e9gkc3{min-width:min(calc(400px * var(--pagefind-ui-scale)),100%);flex:1000;margin-top:calc(20px * var(--pagefind-ui-scale))}.pagefind-ui__results.svelte-e9gkc3{padding:0}.pagefind-ui__message.svelte-e9gkc3{box-sizing:content-box;font-size:calc(16px * var(--pagefind-ui-scale));height:calc(24px * var(--pagefind-ui-scale));padding:calc(20px * var(--pagefind-ui-scale)) 0;display:flex;align-items:center;font-weight:700;margin-top:0}.pagefind-ui__button.svelte-e9gkc3{margin-top:calc(40px * var(--pagefind-ui-scale));border:var(--pagefind-ui-border-width) solid var(--pagefind-ui-border);border-radius:var(--pagefind-ui-border-radius);height:calc(48px * var(--pagefind-ui-scale));padding:0 calc(12px * var(--pagefind-ui-scale));font-size:calc(16px * var(--pagefind-ui-scale));color:var(--pagefind-ui-primary);background:var(--pagefind-ui-background);width:100%;text-align:center;font-weight:700;cursor:pointer}.pagefind-ui__button.svelte-e9gkc3:hover{border-color:var(--pagefind-ui-primary);color:var(--pagefind-ui-primary);background:var(--pagefind-ui-background)}:root{--pagefind-ui-font: inherit;--pagefind-ui-primary: var(--accent);--pagefind-ui-text: var(--foreground);--pagefind-ui-background: var(--background);--pagefind-ui-border: var(--stroke);--pagefind-ui-border-width: 3px;--pagefind-ui-border-radius: 0}site-search.site-search{margin:0 12px}site-search.site-search>button{border-width:var(--bw);padding:5px 12px;line-height:1.2;font-size:calc(var(--font-size) * .85)}site-search.site-search dialog{width:min(900px,calc(100vw - 32px));max-height:min(80vh,700px);background:var(--background);color:var(--foreground);border:var(--bw-thick) solid var(--stroke);border-radius:0;box-shadow:var(--sh-3) var(--sh-3) 0 0 var(--accent);padding:0;margin:48px auto}site-search.site-search dialog::backdrop{background:#000000d1}.search-dialog-frame{position:relative;overflow:auto;padding:20px}.search-dev-note{margin:28px 0 8px;font-weight:700}.pagefind-ui__search-input{border-radius:0!important;font-weight:700!important}.pagefind-ui__search-clear{border-radius:0!important}.pagefind-ui__result{border-top:var(--bw-thin) solid var(--stroke-2)!important;padding-top:14px!important}.pagefind-ui__result-title{font-weight:800!important}.pagefind-ui__result-inner mark{background-color:var(--accent)!important;color:var(--accent-ink)!important;padding:0 3px!important}.pagefind-ui__button{border-radius:0!important;border:var(--bw) solid var(--stroke)!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.08em}@media (max-width: 684px){site-search.site-search{margin:0 6px}site-search.site-search>button{padding:5px 9px;font-size:calc(var(--font-size) * .78);letter-spacing:.04em;white-space:nowrap}}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/JetBrainsMono-Variable-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/JetBrainsMono-Variable-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/fonts/JetBrainsMono-Variable-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--background: #0e0e0e;--surface: #161616;--surface-2: #1e1e1e;--foreground: #dce4e0;--text: #abb4af;--muted: #7c8781;--accent: #2cad81;--accent-soft: #5fc7a3;--accent-ink: #051a12;--accent-dim: #1d7358;--secondary: #ffd93d;--secondary-ink: #1a1608;--hot: #ff5c4d;--hot-ink: #1c0806;--stroke: #6e7f78;--stroke-2: #363e3a;--border: var(--stroke-2);--accent-muted: var(--accent-dim);--bw: 3px;--bw-thin: 2px;--bw-thick: 4px;--radius: 0;--sh-1: 4px;--sh-2: 6px;--sh-3: 10px;--grid-line: rgba(220, 228, 224, .05);--grid-size: 44px;--font-size: 1.0625rem;--line-height: 1.7;--content-width: 68ch;--tracking-label: .12em;--dur: .1s;--ease: linear}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(to right,var(--grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line) 1px,transparent 1px);background-size:var(--grid-size) var(--grid-size)}:where(a,button,summary,input,select,textarea,[tabindex]):focus-visible{outline:var(--bw) solid var(--secondary);outline-offset:3px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit;margin:0;padding:0}body{font-family:JetBrains Mono,monospace;font-size:var(--font-size);font-weight:400;line-height:var(--line-height);letter-spacing:.005em;background-color:var(--background);color:var(--text);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-overflow-scrolling:touch;-webkit-text-size-adjust:100%;margin:0;padding:0}.custom-font{font-family:JetBrains Mono,monospace}.custom-scrollbar{scrollbar-width:thin;direction:rtl;scrollbar-color:var(--accent) var(--background);overflow:auto;overflow-y:scroll;scrollbar-gutter:stable}.reset-scrollbar{direction:ltr}.custom-scrollbar::-webkit-scrollbar{width:10px;height:10px}.custom-scrollbar::-webkit-scrollbar-track{background:var(--surface)}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:var(--accent);border-radius:0;border:2px solid var(--background)}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--accent)}h1,h2,h3,h4,h5,h6{color:var(--foreground);line-height:1.14;font-weight:800;letter-spacing:-.015em;margin-top:2em;margin-bottom:.7em}h1{font-size:clamp(2rem,1.6rem + 1.6vw,2.75rem);text-transform:uppercase;letter-spacing:-.02em}h2{font-size:calc(var(--font-size) * 1.45)}h3{font-size:calc(var(--font-size) * 1.2);font-weight:700}h4,h5,h6{font-size:calc(var(--font-size) * 1.02);font-weight:700;text-transform:uppercase;letter-spacing:var(--tracking-label)}h1,h2,h3,h4,h5,h6,p,ul,ol,img,figure,video,table{margin:25px 0}a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:2px}a:hover{color:var(--foreground)}button{position:relative;font:inherit;font-weight:700;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;text-align:center;background:var(--background);color:var(--foreground);padding:7px 16px;border:var(--bw) solid var(--stroke);border-radius:var(--radius);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--accent);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease),color var(--dur) var(--ease);appearance:none;cursor:pointer;outline:none}button:hover{background:var(--accent);color:var(--accent-ink);transform:translate(-2px,-2px);box-shadow:calc(var(--sh-1) + 2px) calc(var(--sh-1) + 2px) 0 0 var(--stroke)}button:active{transform:translate(var(--sh-1),var(--sh-1));box-shadow:none}fieldset{display:inline-block;border:var(--bw) solid var(--stroke);border-radius:var(--radius);padding:16px;box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--accent-dim)}fieldset *:first-child{margin-top:0}fieldset input,fieldset select,fieldset textarea,fieldset label,fieldset button{margin-top:calc(var(--line-height) * .5);width:100%}label{display:inline-block;font-weight:700;text-transform:uppercase;letter-spacing:var(--tracking-label);font-size:calc(var(--font-size) * .85)}label input{margin-top:0}input,textarea,select{background:var(--surface);color:var(--foreground);border:var(--bw) solid var(--stroke);border-radius:var(--radius);padding:12px;font:inherit;font-weight:700;appearance:none;transition:background var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}input::placeholder,textarea::placeholder{color:var(--muted);font-weight:400}input[type=checkbox]{width:auto}input:focus-visible,textarea:focus-visible,select:focus-visible{background:var(--surface-2);border-color:var(--secondary);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--secondary);outline:none}select{background-image:linear-gradient(45deg,transparent 50%,var(--accent) 50%),linear-gradient(135deg,var(--accent) 50%,transparent 50%);background-position:calc(100% - 20px),calc(100% - 14px);background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:40px}select option{background:var(--background)}input[type=checkbox],input[type=radio]{vertical-align:middle;padding:10px;box-shadow:inset 0 0 0 3px var(--background)}input[type=radio]{display:inline-block;width:12px!important;height:12px!important;border-radius:0}input[type=checkbox]:checked,input[type=radio]:checked{background:var(--accent)}img{display:block;max-width:100%;height:auto;border:0;border-radius:var(--radius);padding:0;overflow:hidden}picture{display:block}figure{border:var(--bw) solid var(--stroke);background:var(--surface);box-shadow:var(--sh-2) var(--sh-2) 0 0 var(--accent-dim)}figure img,figure video{margin-bottom:0}figure figcaption{background:var(--accent);color:var(--accent-ink);text-align:center;font-size:calc(var(--font-size) * .85);font-weight:700;text-transform:uppercase;letter-spacing:var(--tracking-label);border-top:var(--bw) solid var(--stroke);margin-top:0;border-radius:0}ul,ol{margin-left:4ch;padding:0}ul ul,ul ol,ol ul,ol ol{margin-top:0}li::marker{color:var(--accent);font-weight:700}ul li,ol li{position:relative}code,kbd{font-family:JetBrains Mono,Monaco,Consolas,Ubuntu Mono,monospace!important;font-feature-settings:normal;background:var(--surface-2);color:var(--accent);padding:1px 6px;margin:0 2px;font-size:.92em;font-weight:700}code{border:var(--bw-thin) solid var(--stroke-2)}kbd{border:var(--bw-thin) solid var(--stroke);border-bottom-width:5px;border-radius:0;color:var(--foreground)}code code{background:transparent;padding:0;margin:0;border:none}pre{tab-size:4;background:var(--surface)!important;color:var(--foreground);padding:18px 14px;font-size:.92em!important;overflow:auto;border-radius:var(--radius);border:var(--bw) solid var(--stroke)}pre code{background:none!important;margin:0;padding:0;font-size:inherit;font-weight:400;border:none;color:inherit}sup{line-height:0;top:-.25em}sub{bottom:-.25em}abbr{position:relative;text-decoration-style:wavy;text-decoration-color:var(--accent);cursor:help}mark{background:var(--secondary);color:var(--secondary-ink);padding:0 4px;font-weight:700}blockquote{position:relative;background:var(--surface);border:var(--bw) solid var(--stroke-2);border-left:8px solid var(--accent);margin:25px 0;padding:20px 22px 20px 40px;color:var(--foreground)}blockquote:before{content:">";display:block;position:absolute;left:16px;top:18px;color:var(--accent);font-weight:800;line-height:1}blockquote p:first-child{margin-top:0}blockquote p:last-child{margin-bottom:0}table{table-layout:auto;border-collapse:collapse;border:var(--bw) solid var(--stroke);width:100%}th,td{border:var(--bw-thin) solid var(--stroke-2);padding:10px 12px}th{background:var(--accent);color:var(--accent-ink);border-color:var(--stroke);text-align:left;font-weight:800;text-transform:uppercase;letter-spacing:var(--tracking-label)}tbody tr:nth-child(2n){background:var(--surface)}hr{width:100%;border:none;background:var(--accent);height:5px;margin:40px 0}h1,h2,h3,h4,h5,h6,b,strong,th,button{font-weight:800}b,strong{color:var(--foreground)}.font-light{font-weight:300}.font-regular{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.uppercase{text-transform:uppercase;letter-spacing:.04em}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.text-xs{font-size:calc(var(--font-size) * .75)}.text-sm{font-size:calc(var(--font-size) * .875)}.text-base{font-size:var(--font-size)}.text-lg{font-size:calc(var(--font-size) * 1.125)}.text-xl{font-size:calc(var(--font-size) * 1.25)}.text-2xl{font-size:calc(var(--font-size) * 1.5)}.skip-link{position:absolute;left:-9999px;top:0;z-index:100;padding:10px 16px;background:var(--accent);color:var(--accent-ink);border:var(--bw) solid var(--stroke);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--stroke);font-weight:800;text-transform:uppercase;letter-spacing:var(--tracking-label);text-decoration:none}.skip-link:focus{left:12px;top:12px}.content:focus{outline:none}.container{position:relative;z-index:1;display:flex;flex-direction:column;padding:40px;max-width:900px;min-height:100vh;margin:0 auto;border-right:var(--bw-thin) solid var(--stroke-2)}.container.full,.container.center{border:none;margin:0 auto}.container.full{max-width:100%}.content{display:flex;flex-direction:column;flex:1}.index-content{margin-bottom:40px}.index-content.framed{margin-bottom:60px}.framed{border:var(--bw-thick) solid var(--stroke);background:var(--surface);box-shadow:var(--sh-3) var(--sh-3) 0 0 var(--accent);padding:24px}figure{display:inline-block;margin:30px auto;padding:0;text-align:center;width:fit-content;max-width:100%}figure img{display:block;margin-bottom:0!important}figure figcaption{margin-top:0!important;padding:10px 20px!important;background:var(--accent)!important;color:var(--accent-ink)!important;font-weight:700!important;text-align:center!important;text-transform:uppercase;letter-spacing:var(--tracking-label);border:none!important;border-top:var(--bw) solid var(--stroke)!important;border-radius:0!important;position:relative}figure figcaption p{margin:0}.page{max-width:100%;margin:0 auto}.page h1,article h1{position:relative;color:var(--foreground);margin-top:0!important;margin-bottom:28px!important;padding-bottom:16px;border-bottom:var(--bw-thick) solid var(--stroke);text-transform:uppercase}.page h1:after,article h1:after{content:"";position:absolute;bottom:calc(var(--bw-thick) * -1);left:0;display:block;width:96px;height:var(--bw-thick);background:var(--accent);border-bottom:none}@media (max-width: 684px){.container{padding:20px}.content{margin-top:20px}.framed{box-shadow:var(--sh-2) var(--sh-2) 0 0 var(--accent);padding:18px}}@media print{.container,.content{display:initial}body:before{display:none}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.float-left{float:left}.float-right{float:right}.mb-0{margin-bottom:0!important}.mt-0{margin-top:0!important}.clearfix:after{content:"";display:table;clear:both}ul{list-style:none}ul li{position:relative}ul li:not(:empty):before{content:"";position:absolute;left:-22px;top:.62em;width:9px;height:9px;background:var(--accent)}ul ul{margin-left:20px}::selection{background:var(--accent);color:var(--accent-ink)}::-moz-selection{background:var(--accent);color:var(--accent-ink)}.header{display:flex;flex-direction:column;position:relative;margin-bottom:8px}.header__inner{display:flex;align-items:center;justify-content:space-between;gap:12px}.header__logo{display:flex;flex:1;align-items:center;min-width:0}.header__logo:after{content:"";background:repeating-linear-gradient(90deg,var(--accent) 0 4px,transparent 4px 14px);display:block;width:100%;height:32px;margin-left:16px}.header__logo a{flex:none;max-width:100%;text-decoration:none}.logo{display:flex;align-items:center;text-decoration:none;background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:calc(var(--font-size) * 1.05);text-transform:uppercase;letter-spacing:.04em;padding:6px 14px;border:var(--bw) solid var(--stroke);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--stroke);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease)}.header__logo a:hover .logo{background:var(--secondary);color:var(--secondary-ink);transform:translate(-2px,-2px);box-shadow:calc(var(--sh-1) + 2px) calc(var(--sh-1) + 2px) 0 0 var(--stroke)}.header__logo a:active .logo{transform:translate(var(--sh-1),var(--sh-1));box-shadow:none}@media (max-width: 684px){.header__inner{flex-direction:row;align-items:center;justify-content:space-between;width:100%}.header__logo{margin-bottom:0;flex:1}.header__logo:after{display:block;width:auto;flex:1 1 0;min-width:0;margin-left:8px;margin-right:8px;height:20px}.logo{font-size:calc(var(--font-size) * .9);padding:5px 9px;letter-spacing:.02em;white-space:nowrap}}@media (max-width: 400px){.header__inner{gap:6px}.header__logo:after{display:none}}.navigation-menu{display:flex;align-items:flex-start;justify-content:space-between;margin:22px 0 18px}.navigation-menu__inner{display:flex;flex:1;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}.navigation-menu__inner>li{flex:none;white-space:nowrap}.navigation-menu__inner>li:not(:last-of-type){margin-right:0}.navigation-menu__inner>li>a{display:inline-block;padding:5px 12px;border:var(--bw-thin) solid var(--stroke-2);color:var(--foreground);text-decoration:none;font-weight:700;font-size:calc(var(--font-size) * .9);text-transform:uppercase;letter-spacing:.08em;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.navigation-menu__inner>li>a:hover,.navigation-menu__inner>li>a:focus-visible{background:var(--accent);border-color:var(--stroke);color:var(--accent-ink);transform:translate(-2px,-2px);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--stroke)}.navigation-menu__inner>li>a:active{transform:translate(2px,2px);box-shadow:none}.navigation-menu__inner>li>a[aria-current=page]{background:var(--accent);border-color:var(--stroke);color:var(--accent-ink);box-shadow:none;transform:none;cursor:default}.navigation-menu__inner>li>a[aria-current=page]:hover{transform:none;box-shadow:none}.menu__dropdown>li>a[aria-current=page]{background:var(--accent);border-color:var(--stroke);color:var(--accent-ink)}.menu{display:flex;flex-direction:column;position:relative;list-style:none;padding:0;margin:0}.menu ul,.navigation-menu ul,.header ul{list-style:none;margin:0;padding:0}.menu li:before,.navigation-menu li:before,.header li:before,.menu__dropdown li:before,.navigation-menu__inner li:before{content:none!important}.menu--mobile>li{display:flex}.menu__trigger{font:inherit;appearance:none;border:none;background:none;margin-right:0!important;color:var(--foreground);font-weight:700;text-transform:uppercase;letter-spacing:.08em;user-select:none;cursor:pointer}.menu__dropdown{display:none;flex-direction:column;position:absolute;background:var(--surface);box-shadow:var(--sh-2) var(--sh-2) 0 0 var(--accent);color:var(--foreground);border:var(--bw) solid var(--stroke);margin:0;padding:10px;top:calc(100% + 8px);left:0;list-style:none;z-index:99;gap:6px}.open .menu__dropdown{display:flex}.menu__dropdown>li:not(:last-of-type){margin-bottom:0}.menu__dropdown>li>a{display:flex;padding:6px 10px;border:var(--bw-thin) solid var(--stroke-2);color:var(--foreground);text-decoration:none;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:calc(var(--font-size) * .9);transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.menu__dropdown>li>a:hover{background:var(--accent);border-color:var(--stroke);color:var(--accent-ink)}.menu--mobile{display:none;list-style:none;margin:0;padding:0;flex:0 0 auto}.menu--mobile .menu__trigger{color:var(--foreground);background:var(--background);border:var(--bw) solid var(--stroke);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--accent);margin-left:0;height:100%;padding:5px 10px;margin-bottom:0!important;position:relative;cursor:pointer;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.menu--mobile.open .menu__trigger{transform:translate(var(--sh-1),var(--sh-1));box-shadow:none}.menu--language-selector .menu__trigger{color:var(--foreground);border:var(--bw) solid var(--stroke);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--accent);margin-left:10px;padding:5px 10px}@media (max-width: 684px){.navigation-menu{margin:0}.menu--desktop{display:none}.menu--mobile{display:flex}.menu--mobile .menu__trigger{padding:5px 9px;font-size:calc(var(--font-size) * .85);letter-spacing:.04em;white-space:nowrap}.menu--mobile .menu__dropdown{left:auto;right:0;top:calc(100% + 10px);margin-top:0}.menu--language-selector .menu__dropdown{left:auto;right:0}}.ticker{position:relative;overflow:hidden;margin:0 0 34px;padding:7px 0;border-top:var(--bw) solid var(--stroke-2);border-bottom:var(--bw) solid var(--stroke-2);background:var(--surface);user-select:none}.ticker__track{display:flex;width:max-content;animation:ticker-scroll 42s linear infinite}.ticker__group{display:flex;flex:none}.ticker__item{flex:none;padding:0 18px;color:var(--accent);font-size:calc(var(--font-size) * .72);font-weight:800;text-transform:uppercase;letter-spacing:var(--tracking-label);white-space:nowrap}.ticker__item:after{content:"";display:inline-block;width:6px;height:6px;margin-left:18px;vertical-align:middle;background:var(--stroke)}@keyframes ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.ticker:hover .ticker__track{animation-play-state:paused}@media (prefers-reduced-motion: reduce){.ticker__track{animation:none}}@media (max-width: 684px){.ticker{margin-bottom:24px}}.footer{margin:70px -40px -40px;padding:22px 40px;flex-grow:0;background:var(--accent);color:var(--accent-ink);border-top:var(--bw-thick) solid var(--stroke);font-size:calc(var(--font-size) * .85);font-weight:700}.footer__inner{display:flex;align-items:center;justify-content:space-between;margin:0;max-width:100%}.footer a{color:var(--accent-ink);text-decoration:none;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border:var(--bw-thin) solid transparent;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.footer a:hover{background:var(--accent-ink);border-color:var(--accent-ink);color:var(--accent)}.footer .copyright{display:flex;flex-flow:row wrap;flex:1;align-items:center;justify-content:center;gap:4px}.footer .copyright--user{margin:auto;text-align:center}.footer .copyright>*:first-child:not(:only-child){margin-right:6px}.footer .copyright span{white-space:nowrap}.footer .copyright .separator{color:var(--accent-dim);font-weight:800}@media (max-width: 900px){.footer__inner{flex-direction:column}}@media (max-width: 684px){.footer{margin:44px -20px -20px;padding:18px 20px}.footer__inner{padding:0}.copyright{flex-wrap:wrap;text-align:center;gap:8px}.copyright span{font-size:13px;line-height:1.6;white-space:normal}.copyright .separator{display:none}.copyright span:not(.separator){display:block;width:100%}.footer a{display:inline-block}}.buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:40px 0}.button{position:relative;display:inline-flex;align-items:center;justify-content:center;font:inherit;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:calc(var(--font-size) * .9);text-decoration:none;text-align:center;background:var(--background);color:var(--foreground);padding:8px 16px;border:var(--bw) solid var(--stroke);border-radius:var(--radius);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--accent);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease),color var(--dur) var(--ease);appearance:none;cursor:pointer;outline:none}.button:hover{background:var(--accent);color:var(--accent-ink);transform:translate(-2px,-2px);box-shadow:calc(var(--sh-1) + 2px) calc(var(--sh-1) + 2px) 0 0 var(--stroke)}.button:active{transform:translate(var(--sh-1),var(--sh-1));box-shadow:none}.button.primary{background:var(--accent);color:var(--accent-ink);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--stroke)}.button.primary:hover{background:var(--secondary);color:var(--secondary-ink)}.button.hot{background:var(--hot);color:var(--hot-ink);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--stroke)}.button.outline{background:transparent;box-shadow:none;padding:8px 16px;border-color:var(--stroke-2)}.button.outline:hover{background:transparent;border-color:var(--accent);color:var(--accent);transform:none;box-shadow:none}.button.link,.button.inline{background:transparent;border:none;padding:0 2px;box-shadow:inset 0 -3px 0 0 var(--accent-dim);color:var(--accent);font-size:inherit;text-transform:none;letter-spacing:0;text-decoration:none;transform:none}.button.link:hover,.button.inline:hover{background:var(--accent);color:var(--accent-ink);box-shadow:inset 0 -3px 0 0 var(--accent-ink);transform:none;text-decoration:none}.button.link:active,.button.inline:active{transform:none;box-shadow:inset 0 -3px 0 0 var(--accent-ink)}.button.small{font-size:calc(var(--font-size) * .78);padding:5px 12px}.button.wide{min-width:200px;padding:14px 24px}.read-more{display:inline-block;text-decoration:none;font-weight:700;color:var(--accent);margin-top:12px}.posts{width:100%}.post{width:100%;text-align:left;padding:30px 0}.post.on-list{position:relative;border:var(--bw) solid var(--stroke);background:var(--surface);box-shadow:var(--sh-2) var(--sh-2) 0 0 var(--accent-dim);padding:22px 24px;margin:28px 0;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.post-index{position:absolute;top:2px;right:16px;z-index:0;font-size:4.2rem;font-weight:800;line-height:1;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:2px var(--stroke-2);pointer-events:none;transition:-webkit-text-stroke-color var(--dur) var(--ease)}.post.on-list:hover .post-index{-webkit-text-stroke-color:var(--accent-dim)}.post.on-list:hover{transform:translate(-3px,-3px);box-shadow:calc(var(--sh-2) + 3px) calc(var(--sh-2) + 3px) 0 0 var(--accent)}.post:not(:last-of-type){border-bottom:none}.post-meta{font-size:calc(var(--font-size) * .82);margin-bottom:12px;color:var(--muted);text-transform:uppercase;letter-spacing:var(--tracking-label);font-weight:700}.post-author:before{content:" :: ";display:inline;color:var(--accent)}.post-badge{display:inline-block;margin-left:10px;padding:1px 8px;background:var(--secondary);color:var(--secondary-ink);border:var(--bw-thin) solid var(--stroke);font-size:calc(var(--font-size) * .72);font-weight:800;letter-spacing:var(--tracking-label);text-transform:uppercase;transform:rotate(-2deg)}.post-title{position:relative;color:var(--foreground);font-weight:800;letter-spacing:-.015em;margin-top:0!important;margin-bottom:18px!important;padding-bottom:14px;border-bottom:var(--bw) solid var(--stroke-2);text-decoration:none!important}.post-title:after{content:"";position:absolute;bottom:calc(var(--bw) * -1);left:0;display:block;width:72px;height:var(--bw);background:var(--accent);border-bottom:none}.post.on-list .post-title{position:relative;z-index:1;font-size:calc(var(--font-size) * 1.3);padding-right:84px}.post-title a{color:inherit;text-decoration:none}.post-title a:hover{color:var(--accent)}article>.post-title{font-size:clamp(1.9rem,1.5rem + 1.6vw,2.6rem);text-transform:uppercase;border-bottom-width:var(--bw-thick);border-bottom-color:var(--stroke)}article>.post-title:after{bottom:calc(var(--bw-thick) * -1);height:var(--bw-thick);width:96px}.post-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;font-size:calc(var(--font-size) * .78);color:var(--accent)}.post-tags a{display:inline-block;color:var(--accent);text-decoration:none;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:1px 8px;border:var(--bw-thin) solid var(--accent-dim);transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur) var(--ease)}.post-tags a:before{content:"#"}.post-tags a:not(:last-child):after{content:none}.post-tags a:nth-child(odd){transform:rotate(-1deg)}.post-tags a:nth-child(2n){transform:rotate(1deg)}.post-tags a:hover{background:var(--accent);border-color:var(--stroke);color:var(--accent-ink);transform:rotate(0)}.post-tags a.post-tags__more{color:var(--muted);border-color:var(--stroke-2);border-style:dashed;transform:none}.post-tags a.post-tags__more:before{content:none}.post-tags a.post-tags__more:hover{color:var(--foreground);border-color:var(--stroke);background:transparent}.post-cover{margin:24px 0}.post-cover img{border:0;background:transparent;padding:0}.post ul{list-style:none}.post ul li{position:relative}.post ul li:not(:empty):before{content:"";position:absolute;left:-22px;top:.62em;width:9px;height:9px;background:var(--accent)}.post-content{margin-top:26px}.post.on-list .post-content{margin-top:4px;color:var(--text)}.post-content img:not(.post-image--plain):not(.image-lightbox__img){border:var(--bw) solid var(--stroke);background:var(--surface)}.post-content img.post-image--plain{border:0;padding:0;border-radius:0}.post-content img.post-image--zoomable{cursor:zoom-in}.post-content img.post-image--mermaid{display:block;width:100%;height:auto;margin:18px 0}.post-content .mermaid text,.post-content .mermaid foreignObject,.post-content .mermaid foreignObject div,.post-content .mermaid foreignObject span{color:var(--text)!important;fill:var(--text)!important}.post-content .mermaid .edgePath .path,.post-content .mermaid .flowchart-link,.post-content .mermaid .messageLine0,.post-content .mermaid .messageLine1,.post-content .mermaid .actor-line,.post-content .mermaid line,.post-content .mermaid path{stroke:var(--accent)!important}.post-content .mermaid marker path{fill:var(--accent)!important;stroke:var(--accent)!important}.post-content .mermaid .node rect,.post-content .mermaid .node polygon,.post-content .mermaid .node circle,.post-content .mermaid .node ellipse{stroke:var(--accent)!important}.post-content .mermaid{overflow-x:auto}.post-content .mermaid svg{display:block;height:auto;min-width:720px}@media (max-width: 820px){.post-content .mermaid svg{min-width:620px}}.post-content h2{border-left:8px solid var(--accent);padding-left:14px;margin-top:2.2em}.post-content h3{padding-left:14px;border-left:var(--bw) solid var(--stroke-2)}.post-reading-layout{display:flex;flex-direction:column;position:relative}.post-reading-main{min-width:0}.post-reading-sidebar{order:-1;margin-top:0;margin-bottom:18px}@media (min-width: 1340px){.post-reading-layout{display:flex;flex-direction:row;align-items:flex-start}.post-reading-main{flex:1;min-width:0}.post-reading-sidebar{order:0;position:sticky;top:24px;flex:0 0 0;width:0;overflow:visible;margin-top:0;margin-bottom:0}.post-reading-sidebar .toc{width:min(300px,calc(50vw - 460px));margin-left:24px;max-height:calc(100vh - 48px);overflow:auto}}.toc{margin:0;border:var(--bw) solid var(--stroke-2);background:var(--surface);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--accent-dim);padding:14px 16px}.toc__title{cursor:pointer;color:var(--foreground);font-weight:800;text-transform:uppercase;letter-spacing:var(--tracking-label);font-size:calc(var(--font-size) * .82)}.toc__title::marker{color:var(--accent)}.toc__nav{margin-top:12px;padding-top:12px;border-top:var(--bw-thin) solid var(--stroke-2)}.toc__list{margin:0;padding-left:34px;list-style-position:outside;font-size:calc(var(--font-size) * .88)}.toc__item{margin:6px 0}.toc__item a{text-decoration:none;color:var(--text)}.toc__item a:hover{color:var(--accent-ink);background:var(--accent)}.toc__item--depth-3{margin-left:16px}.toc__item--depth-4{margin-left:28px}.image-lightbox{border:var(--bw-thick) solid var(--stroke);background:var(--background);box-shadow:var(--sh-3) var(--sh-3) 0 0 var(--accent);padding:16px;width:min(96vw,1400px);max-width:min(96vw,1400px);max-height:94vh;margin:auto}.image-lightbox::backdrop{background:#000000db}.image-lightbox__close{display:block;margin:0 0 12px auto}.image-lightbox__img{display:block;width:100%;max-width:min(92vw,1320px);max-height:calc(92vh - 52px);height:auto;object-fit:contain;border:0}.post-nav{display:flex;justify-content:space-between;gap:20px;margin-top:80px;padding-top:25px;border-top:var(--bw) solid var(--stroke-2)}.post-nav-prev,.post-nav-next{display:flex;flex-direction:column;flex:1}.post-nav-next{text-align:right}article time{color:var(--muted)}.video-wrapper{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;margin:25px 0;border:var(--bw-thick) solid var(--stroke);box-shadow:var(--sh-2) var(--sh-2) 0 0 var(--accent);background:var(--background)}.video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.twitter-tweet{margin:25px auto!important;max-width:550px!important}iframe[src*=spotify],iframe[src*="google.com/maps"],iframe[src*=soundcloud],iframe[src*=codepen]{border:var(--bw-thick) solid var(--stroke)!important;border-radius:0!important;box-shadow:var(--sh-2) var(--sh-2) 0 0 var(--accent);margin:25px 0}.posts-list{list-style:none;padding:0;margin:0}.posts-list li{margin-bottom:30px}.posts-title{position:relative;color:var(--foreground);text-transform:uppercase;margin-top:0!important;margin-bottom:0!important;padding-bottom:16px;border-bottom:var(--bw-thick) solid var(--stroke)}.posts-title:after{content:"";position:absolute;bottom:calc(var(--bw-thick) * -1);left:0;display:block;width:96px;height:var(--bw-thick);background:var(--accent);border-bottom:none}.footnotes{margin-top:60px;padding-top:30px;border-top:var(--bw-thick) solid var(--accent)}.footnotes h2{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.footnotes ol{margin-left:0;padding-left:3ch;list-style-type:decimal}.footnotes li{margin-bottom:10px;color:var(--text)}.footnotes li::marker{color:var(--accent);font-weight:800}.footnotes li p{margin:0;display:inline}sup[data-footnote-ref]{font-weight:800}sup[data-footnote-ref] a{text-decoration:none;color:var(--accent);padding:0 3px;border:var(--bw-thin) solid var(--accent-dim)}sup[data-footnote-ref] a:hover{background:var(--accent);color:var(--accent-ink)}.data-footnote-backref{text-decoration:none;margin-left:5px;font-size:.9em}@media (max-width: 684px){.post.on-list{padding:18px;box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--accent-dim)}.post-index{font-size:2.6rem;right:12px}.post.on-list .post-title{padding-right:56px}.post-nav{flex-direction:column}.post-nav-next{text-align:left}}.pagination{margin-top:70px}.pagination__title{display:flex;text-align:center;position:relative;margin:24px 0 28px;align-items:center}.pagination__title-h{text-align:center;margin:0 auto;padding:6px 14px;background:var(--background);border:var(--bw) solid var(--stroke);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--accent);color:var(--foreground);font-size:calc(var(--font-size) * .8);font-weight:800;text-transform:uppercase;text-decoration:none;letter-spacing:var(--tracking-label);z-index:1}.pagination__title hr{position:absolute;left:0;right:0;width:100%;margin:0;z-index:0;height:var(--bw);background:var(--stroke-2);border:none}.pagination__buttons{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;text-align:center}.button.previous,.button.next{position:relative}.button.previous{margin-right:auto}.button.next{margin-left:auto}.pagination__buttons .button.inline.prev,.pagination__buttons .button.inline.next{margin:0}.button.number{font-weight:800;min-width:44px;padding:6px 10px}.button.number.active{background:var(--accent);color:var(--accent-ink);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--stroke)}.pagination-info{text-align:center;margin:20px 0;color:var(--muted);font-size:calc(var(--font-size) * .85);text-transform:uppercase;letter-spacing:var(--tracking-label)}.pagination-simple{display:flex;justify-content:space-between;align-items:center;margin:50px 0;gap:16px}.pagination-simple .prev,.pagination-simple .next{flex:1}.pagination-simple .prev{text-align:left}.pagination-simple .next{text-align:right}@media (max-width: 684px){.pagination__buttons{flex-direction:column}.button.previous,.button.next{margin:0;width:100%}}.highlight{position:relative;margin:28px 0;border:var(--bw) solid var(--stroke);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--accent-dim);background:var(--surface)}.code-title{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--accent);border-bottom:var(--bw) solid var(--stroke);color:var(--accent-ink);text-transform:uppercase;letter-spacing:var(--tracking-label);font-size:calc(var(--font-size) * .74);font-weight:800;padding:6px 10px;line-height:1.4}.copy-button{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:2px 10px;text-decoration:none;text-align:center;font-size:calc(var(--font-size) * .72);font-weight:800;letter-spacing:.08em;text-transform:uppercase;border:var(--bw-thin) solid var(--stroke);border-radius:0;appearance:none;cursor:pointer;outline:none;background:var(--background);color:var(--foreground);box-shadow:none;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),transform var(--dur) var(--ease)}.copy-button:hover{background:var(--stroke);color:var(--background);transform:none;box-shadow:none}.copy-button:active{transform:translate(2px,2px);box-shadow:none}.collapsible{position:relative;margin:40px 0}.collapsible-title{position:relative;padding:12px 14px;background:var(--surface);border:var(--bw) solid var(--stroke);border-radius:var(--radius);font-weight:800;text-transform:uppercase;letter-spacing:var(--tracking-label);font-size:calc(var(--font-size) * .85);cursor:pointer;user-select:none}.collapsible-title:after{content:"▶";position:absolute;right:12px;color:var(--accent);transition:transform var(--dur) var(--ease)}.collapsible.open .collapsible-title:after{transform:rotate(90deg)}.collapsible-content{display:none;margin-top:calc(var(--bw) * -1);border:var(--bw) solid var(--stroke);border-top:none;border-radius:0}.collapsible.open .collapsible-content{display:block}.line-numbers{position:relative;padding-left:3.8em!important;counter-reset:linenumber}.line-numbers>code{position:relative;white-space:inherit}.line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:0;font-size:100%;left:-3.8em;width:3em;letter-spacing:-1px;border-right:var(--bw-thin) solid var(--stroke-2);user-select:none}.line-numbers-rows>span{display:block;counter-increment:linenumber}.line-numbers-rows>span:before{content:counter(linenumber);color:var(--muted);display:block;padding-right:.8em;text-align:right}:root{--astro-code-color-text: var(--foreground);--astro-code-color-background: var(--surface);--astro-code-foreground: var(--foreground);--astro-code-token-constant: var(--foreground);--astro-code-token-string: var(--foreground);--astro-code-token-comment: var(--muted);--astro-code-token-keyword: var(--accent);--astro-code-token-parameter: var(--foreground);--astro-code-token-function: var(--accent-soft);--astro-code-token-string-expression: var(--accent);--astro-code-token-punctuation: var(--foreground);--astro-code-token-link: var(--accent);--astro-code-token-namespace: var(--foreground);--astro-code-token-tag: var(--accent);--astro-code-token-selector: var(--accent);--astro-code-token-attribute: var(--foreground);--astro-code-token-attribute-name: var(--accent);--astro-code-token-variable: var(--foreground);--astro-code-token-literal: var(--foreground);--astro-code-token-number: var(--foreground);--astro-code-token-unit: var(--foreground);--astro-code-token-symbol: var(--foreground);--astro-code-token-regex: var(--accent);--astro-code-token-boolean: var(--accent);--astro-code-token-important: var(--accent);--code-border: var(--stroke);--comment: var(--muted)}.astro-code{background:var(--surface)!important;border:var(--bw) solid var(--stroke)!important;padding:18px 14px!important}.highlight .astro-code{border:none!important}.astro-code,.astro-code span,.astro-code span[style*=--astro-code-foreground],.astro-code span[style*=--astro-code-token-punctuation],.astro-code span[style*=--astro-code-token-constant],.astro-code span[style*=--astro-code-token-string],.astro-code span[style*=--astro-code-token-parameter],.astro-code span[style*=--astro-code-token-variable],.astro-code span[style*=--astro-code-token-literal],.astro-code span[style*=--astro-code-token-number]{color:var(--foreground)!important}.astro-code span[style*=--astro-code-token-keyword],.astro-code span[style*=--astro-code-token-string-expression],.astro-code span[style*=--astro-code-token-tag],.astro-code span[style*=--astro-code-token-selector],.astro-code span[style*=--astro-code-token-regex],.astro-code span[style*=--astro-code-token-boolean],.astro-code span[style*=--astro-code-token-important]{color:var(--accent)!important}.astro-code span[style*=--astro-code-token-function]{color:var(--accent-soft)!important}.astro-code span[style*=--astro-code-token-comment]{color:var(--comment)!important}.highlight-line{display:block;margin:0 -14px;padding:0 14px;background:var(--surface-2);border-left:var(--bw) solid var(--accent)}.token.deleted{color:var(--hot)!important;background:#ff5c4d1f}.token.inserted{color:var(--accent)!important;background:#2cad811f}.post-content code,.page code{word-break:break-word}.code-toolbar{position:relative}.code-toolbar .toolbar{position:absolute;top:10px;right:10px;display:flex;gap:5px}.code-toolbar .toolbar-item button{background:var(--background);border:var(--bw-thin) solid var(--stroke);color:var(--foreground);padding:2px 10px;font-size:calc(var(--font-size) * .75);font-weight:800;text-transform:uppercase;box-shadow:none;cursor:pointer;transition:background var(--dur) var(--ease),color var(--dur) var(--ease)}.code-toolbar .toolbar-item button:hover{background:var(--stroke);color:var(--background);transform:none;box-shadow:none}.gist{font-size:calc(var(--font-size) * .9)!important}.gist .gist-file{border:var(--bw) solid var(--stroke)!important;border-radius:var(--radius)!important;margin-bottom:1em!important}.gist .gist-data{background-color:var(--background)!important;border-bottom:none!important}.gist table,.gist .highlight{background:var(--background)!important}.gist td.blob-num{background:var(--background)!important;border-right:var(--bw-thin) solid var(--stroke-2)!important}.gist td.blob-code{background:var(--background)!important}.gist .gist-meta{background-color:var(--accent)!important;color:var(--accent-ink)!important;padding:10px!important;border-top:var(--bw) solid var(--stroke)!important;text-transform:uppercase;letter-spacing:var(--tracking-label)}.gist .gist-meta a{color:var(--accent-ink)!important;text-decoration:none!important;font-weight:800!important}.gist .gist-meta a:hover{text-decoration:underline!important}.gist .blob-num{background:var(--background)!important;color:var(--muted)!important;border:none!important}.gist .blob-code{background:var(--background)!important;color:var(--foreground)!important}.gist .blob-code-inner{color:var(--foreground)!important}.gist .pl-c{color:var(--muted)!important;font-style:italic!important}.gist .pl-k,.gist .pl-s,.gist .pl-e,.gist .pl-en,.gist .pl-v,.gist .pl-bu,.gist .pl-ii,.gist .pl-c1,.gist .pl-ml,.gist .pl-mh,.gist .pl-ms,.gist .pl-mi,.gist .pl-mb,.gist .pl-md,.gist .pl-mi1,.gist .pl-mc,.gist .pl-sr,.gist .pl-sra,.gist .pl-sre{color:var(--accent)!important}.gist .gist-footer{display:none!important}.terms{display:flex;flex-direction:column;gap:20px;max-width:100%}.terms h3{font-size:calc(var(--font-size) * 1.2);text-transform:uppercase;letter-spacing:var(--tracking-label)}.terms__list{display:flex;flex-flow:row wrap;gap:14px;list-style:none;padding:0;margin:0}.terms__item{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:150px;padding:12px 20px;background:var(--surface);border:var(--bw) solid var(--stroke);box-shadow:var(--sh-1) var(--sh-1) 0 0 var(--accent-dim);border-radius:var(--radius);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease),background var(--dur) var(--ease)}.terms__item:hover{background:var(--surface-2);transform:translate(-2px,-2px);box-shadow:calc(var(--sh-1) + 2px) calc(var(--sh-1) + 2px) 0 0 var(--accent)}.terms__item a{color:var(--accent);text-decoration:none;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.terms__item .count{color:var(--muted);font-size:calc(var(--font-size) * .85)}.terms-cloud{display:flex;flex-wrap:wrap;gap:12px;align-items:baseline;justify-content:center;margin:40px 0}.terms-cloud a{text-decoration:none;color:var(--accent);font-weight:700;padding:2px 8px;border:var(--bw-thin) solid var(--accent-dim);transition:background var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.terms-cloud a:hover{background:var(--accent);border-color:var(--stroke);color:var(--accent-ink);text-decoration:none}.terms-cloud .size-1{font-size:calc(var(--font-size) * .8)}.terms-cloud .size-2{font-size:calc(var(--font-size) * .9)}.terms-cloud .size-3{font-size:calc(var(--font-size) * 1)}.terms-cloud .size-4{font-size:calc(var(--font-size) * 1.1)}.terms-cloud .size-5{font-size:calc(var(--font-size) * 1.2)}.terms-cloud .size-6{font-size:calc(var(--font-size) * 1.3)}.term-posts{margin-top:40px}.term-posts h2{color:var(--foreground);text-transform:uppercase;border-bottom:var(--bw) solid var(--accent);padding-bottom:10px}.archives{list-style:none;padding:0;margin:0}.archives__year{margin-top:40px}.archives__year:first-child{margin-top:0}.archives__year-header{font-size:calc(var(--font-size) * 1.2);color:var(--accent-ink);background:var(--accent);display:inline-block;padding:4px 12px;border:var(--bw) solid var(--stroke);font-weight:800;margin-bottom:20px}.archives__month{margin-left:20px;margin-bottom:20px}.archives__month-header{font-weight:800;text-transform:uppercase;letter-spacing:var(--tracking-label);margin-bottom:10px}.archives__posts{list-style:none;padding:0;margin-left:20px}.archives__post{display:flex;align-items:baseline;margin-bottom:10px}.archives__post-date{flex-shrink:0;color:var(--muted);margin-right:12px}.archives__post-title{flex:1}.archives__post-title a{color:var(--foreground);text-decoration:none;font-weight:700}.archives__post-title a:hover{color:var(--accent-ink);background:var(--accent)}
