@font-face{font-family:"TASA Orbiter";src:url("../fonts/TASAOrbiter-Regular.woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"TASA Orbiter";src:url("../fonts/TASAOrbiter-Bold.woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Jost";src:url("../fonts/Jost-Bold.woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Sligoil Micro";src:url("../fonts/Sligoil-Micro.woff2");font-weight:400;font-style:normal;font-display:swap}*,*::after,*::before{box-sizing:inherit}*::selection{background:oklch(from oklch(47.1% 0.059 181.208deg) l c h/0.1);text-decoration:underline;text-decoration-style:wavy;color:oklch(.471 .059 181.208)}:root{--color-text: oklch(28.45% 0.0047 355.06deg);--color-background: oklch(94% 0.003 354.695deg);--text-step--2: clamp(0.7813rem, 0.7469rem + 0.1717vw, 0.88rem);--text-step--1: clamp(0.9375rem, 0.881rem + 0.2826vw, 1.1rem);--text-step--0: clamp(1.125rem, 1.038rem + 0.4348vw, 1.375rem);--blockquote-decoration-font-size: clamp(4.0311rem, 3.2418rem + 3.508vw, 5.9605rem);--font-size-h1: clamp(2.7994rem, 2.3135rem + 2.4292vw, 4.1962rem);--font-size-h2: clamp(2.3328rem, 1.9766rem + 1.7811vw, 3.3569rem);--font-size-h3: clamp(1.944rem, 1.6861rem + 1.2896vw, 2.6855rem);--font-size-h4: clamp(1.62rem, 1.4362rem + 0.919vw, 2.1484rem);--font-size-h5: clamp(1.35rem, 1.2217rem + 0.6413vw, 1.7188rem);--font-size-h6: clamp(1.125rem, 1.038rem + 0.4348vw, 1.375rem);--spacing-xs: clamp(0.75rem, 0.6818rem + 0.3409vw, 0.9375rem);--spacing-sm: clamp(1rem, 0.9091rem + 0.4545vw, 1.25rem);--spacing-md: clamp(1.5rem, 1.3636rem + 0.6818vw, 1.875rem);--spacing-lg: clamp(2rem, 1.8182rem + 0.9091vw, 2.5rem);--spacing-xl: clamp(3rem, 2.7273rem + 1.3636vw, 3.75rem);--spacing-2xl: clamp(4rem, 3.6364rem + 1.8182vw, 5rem);--max-width-xs: 40rem;--max-width-sm: 54rem;--max-width-md: 72rem;--max-width-lg: 80rem;--line-height: 1.5;--line-height-caption: 1.6;--line-height-heading: 1;--letter-spacing-normal: 0;--letter-spacing-condensed: -0.02em;--letter-spacing-relaxed: 0.01em;--border-radius-xs: 4px;--border-radius-sm: 8px;--border-radius-md: 12px;--border-radius-lg: 16px;--border-radius-full: 9999px;--font-weight-normal: 400;--font-weight-bold: 700;--ease-out-fast: cubic-bezier(0.42, 0.77, 0.01, 1);--ease-out-slow: cubic-bezier(0.265, 0.747, 0.68, 1);--duration-fast: 200ms;--duration-medium: 400ms;--duration-slow: 600ms}html{box-sizing:border-box;scroll-behavior:smooth;-webkit-text-size-adjust:none;text-size-adjust:none;-webkit-font-smoothing:antialiased}@media(prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{margin:0;padding:0;padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);height:100vh;color:var(--color-text);background-color:var(--color-background);font-family:"TASA Orbiter",-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,"Helvetica Neue","Arial Nova","Nimbus Sans",Arial,sans-serif;font-size:var(--text-step--0)}@supports(font-size: round(1px, 2px)){body{font-size:round(var(--text-step--0),2px)}}body{text-rendering:optimizeLegibility;line-height:var(--line-height);-webkit-font-smoothing:antialiased;text-decoration-skip-ink:auto;font-optical-sizing:auto;font-variant-ligatures:common-ligatures no-discretionary-ligatures no-historical-ligatures contextual;font-kerning:normal}@media(prefers-reduced-motion: no-preference){body{transition:all var(--duration-fast) var(--ease-out-slow)}}body body,body h1,body h2,body h3,body h4,body h5,body h6,body address,body p,body hr,body pre,body blockquote,body ol,body ul,body li,body dl,body dt,body dd,body figure,body figcaption,body div,body table,body caption,body form,body fieldset{margin:0}body h1,body h2,body h3,body h4,body h5,body h6{font-family:"Jost",ISeravek,"Gill Sans Nova",Ubuntu,Calibri,"DejaVu Sans",source-sans-pro,sans-serif;line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-condensed);font-weight:var(--font-weight-bold);font-variant-caps:titling-caps;text-wrap:balance}body h1{font-size:var(--font-size-h1)}body h2{font-size:var(--font-size-h2)}body h3{font-size:var(--font-size-h3)}body h4{font-size:var(--font-size-h4)}body h5{font-size:var(--font-size-h5)}body h6{font-size:var(--font-size-h6)}@supports(text-wrap: balance){body p{text-wrap:pretty}}body p{letter-spacing:var(--letter-spacing-relaxed)}body a{color:inherit;text-decoration:none}body strong,body b,body th{font-weight:700}body ul,body ol{list-style:none;padding:0;margin:0}body mark{background-color:oklch(.698 .196 46.055);color:oklch(.915 .004 354.698)}body figure{margin:0;padding:0}body svg{display:block;stroke:currentColor}body kbd{border:1.5px solid oklch(.713 .146 73.758);border-bottom-width:4px;padding-inline:.2rem}body img,body picture{display:block;max-width:100%}body code{font-family:"Sligoil Micro",ui-monospace,Menlo,Monaco,"Cascadia Mono","Segoe UI Mono","Roboto Mono","Oxygen Mono","Ubuntu Mono","Source Code Pro","Fira Mono","Droid Sans Mono","Consolas","Courier New",monospace;padding-inline:.2rem;border:1px solid oklch(.8 .004 .125)}body pre{overflow-x:auto;padding:var(--spacing-sm)}[data-theme=dark]{--color-text: oklch(91.5% 0.004 354.698deg);--color-background: oklch(22.1% 0.01 355.876deg)}[data-theme=dark] ::selection{background-color:oklch(from oklch(47.1% 0.059 181.208deg) l c h/0.1);color:oklch(.783 .077 179.891)}[data-theme=dark] mark{background-color:oklch(.803 .146 64.595);color:oklch(.2845 .0047 355.06)}[data-theme=dark] kbd{border-color:oklch(.858 .096 65.952)}[data-theme=dark] code{border-color:oklch(.598 .015 .578)}.stack{display:flex;flex-direction:column;justify-content:flex-start}.flow>*+*{margin-top:var(--flow-space, var(--spacing-xs))}.wrapper{padding-inline:var(--spacing-md);padding-block:var(--spacing-2xl)}.box{padding:var(--box-padding, var(--spacing-md));border-radius:var(--border-radius-sm);background-color:var(--box-background-color, oklch(95.9% 0.004 359.998deg));border:1px solid var(--box-border-color, oklch(80% 0.004 0.125deg))}.center{box-sizing:content-box;margin-inline:auto;max-inline-size:var(--measure, 48rem)}.cluster{display:flex;flex-wrap:wrap;gap:var(--spacing-md, 1rem)}.flex-grid{display:flex;flex-wrap:wrap}.flex-grid>*{flex:1 1 60ch}.grid{display:grid;gap:var(--grid-space, 0)}@supports(width: min(20rem, 100%)){.grid{grid-template-columns:repeat(auto-fit, minmax(min(250px, 100%), 1fr))}}@media(width < 680px){.grid{grid-template-columns:repeat(auto-fit, minmax(150px, 1fr))}}.switcher{display:flex;flex-wrap:wrap;gap:var(--gap-space)}.switcher>*{flex-grow:1;flex-basis:calc((30rem - 100%)*999)}.switcher>:nth-last-child(n+3),.switcher>:nth-last-child(n+3)~*{flex-basis:100%}.icon{height:1em;width:1em}.with-icon{display:inline-flex;align-items:baseline}.with-icon .icon{margin-inline-end:var(--space, 0.25em)}[data-theme=dark] .box{background-color:var(--box-background-color, oklch(27.5% 0.013 353.401deg));border:1px solid var(--box-border-color, oklch(42.2% 0.012 352.859deg))}.project-page header{margin-block-end:var(--spacing-xl)}.project-page--content{padding-block-start:var(--spacing-2xl);padding-block-end:var(--spacing-xl)}.project-summary{--flow-space: var(--spacing-sm)}.feature-content p{margin:0}@view-transition{navigation:auto}@media(prefers-reduced-motion: reduce){@view-transition{animation:none}}@keyframes fade-out-up{from{transform:translateY(0);opacity:1}to{transform:translateY(-20px);opacity:0}}@keyframes fade-in-up{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}::view-transition-old(root){animation:.15s cubic-bezier(0.13, 0.52, 0.57, 1.09) both fade-out-up}::view-transition-new(root){animation:.2s cubic-bezier(0.31, -0.15, 0.38, 0.88) both fade-in-up;animation-delay:.1s}.header{view-transition-name:header}.header-logo{display:flex;align-items:center}.header-logo span{display:inline-block;line-height:1;margin-inline-start:.5rem;font-family:"Sligoil Micro",ui-monospace,Menlo,Monaco,"Cascadia Mono","Segoe UI Mono","Roboto Mono","Oxygen Mono","Ubuntu Mono","Source Code Pro","Fira Mono","Droid Sans Mono","Consolas","Courier New",monospace}.header-logo img{display:block;width:100%;height:auto;position:relative;top:-4px}.header-logo:hover{opacity:.8}.header-wrapper{display:flex;justify-content:space-between;padding:var(--spacing-sm);align-items:center;--measure: 1600px}.navigation-wrapper{align-items:center;flex:1}.desktop-nav{display:none}@media(min-width: 70em){.desktop-nav{display:block}.mobile-nav{display:none}}.navigation-menu{display:flex;gap:var(--spacing-md);align-items:center;margin-inline-start:2rem}.navigation-menu a{position:relative;display:inline-block;transition:font-weight var(--duration-fast) var(--ease-out-fast)}.navigation-menu a::before{position:absolute;bottom:0;left:0;content:"";display:block;width:100%;height:3px;transform:scaleX(0);transform-origin:left center;background-color:oklch(.2845 .0047 355.06);transition:transform var(--duration-fast),background-color var(--duration-fast) var(--ease-out-fast)}@media(prefers-reduced-motion: reduce){.navigation-menu a::before{transition:none}}.navigation-menu a:hover::before{transform:scaleX(1);transform-origin:left center}@media(prefers-reduced-motion: reduce){.navigation-menu a:hover::before{transition:none}}.navigation-menu a:hover{font-weight:700}.navigation-menu a:focus-visible{outline:3px solid oklch(.607 .137 25.221);outline-offset:3px}.navigation-menu a[aria-current=page]{color:oklch(.607 .137 25.221);font-weight:700}.navigation-menu a[aria-current=page]::before{transform:scaleX(1);background-color:oklch(.607 .137 25.221)}#dark-mode-toggle{align-items:center;background:none;border:none;cursor:pointer;color:inherit;padding:.5rem;width:auto;transition:background-color 200ms ease-out,backdrop-filter 200ms ease-out}@media(prefers-reduced-motion: reduce){#dark-mode-toggle{transition:none}}#dark-mode-toggle:hover{background-color:oklch(.909 .007 354.811);transition:200ms ease-in}#dark-mode-toggle:focus-visible{outline:1px solid oklch(.607 .137 25.221)}#dark-mode-toggle svg{width:24px;height:24px}#dark-mode-toggle svg:active{scale:.92}.cs-sun{display:block}.cs-moon{display:none}[data-theme=dark] #dark-mode-toggle:hover{background-color:oklch(.356 .015 357.829)}[data-theme=dark] #dark-mode-toggle:focus-visible{outline-color:oklch(.861 .039 19.928)}[data-theme=dark] .cs-sun{display:none}[data-theme=dark] .cs-moon{display:block}[data-theme=dark] .navigation-menu a::before{background-color:oklch(.915 .004 354.698)}[data-theme=dark] .navigation-menu a:hover::before{transform:scaleX(1);transition:transform 200ms ease-in}[data-theme=dark] .navigation-menu a:focus-visible{outline-color:oklch(.861 .039 19.928)}[data-theme=dark] .navigation-menu a[aria-current=page]{color:oklch(.861 .039 19.928)}[data-theme=dark] .navigation-menu a[aria-current=page]::before{background-color:oklch(.861 .039 19.928)}.site_footer{width:100%;border-top:1px solid oklch(.9 .002 .125);view-transition-name:footer}.footer__wrapper{padding-block:var(--spacing-sm);--flow-space: var(--spacing-md);line-height:1}.footer-container_contacts a{text-underline-offset:2px;text-decoration:underline}.footer-container_contacts a:hover{color:oklch(.607 .137 25.221);font-weight:var(--font-weight-bold)}.footer-container_contacts a:focus-visible{color:oklch(.607 .137 25.221);outline:2px solid oklch(.607 .137 25.221)}.footer-container_web-badges{--measure: 40rem;gap:var(--spacing-xs);justify-content:center;align-items:center}.footer-container_web-badges a:focus-visible{outline:4px dashed oklch(.607 .137 25.221)}.footer-container_web-badges img{display:block;image-rendering:pixelated;aspect-ratio:auto 88/31}.footer-container_web-badges img:hover{filter:brightness(1.2)}.footer-container_author{font-size:var(--text-step--1);color:oklch(.411 .006 355)}.footer-container_ribbon{height:.25em;background:linear-gradient(90deg, #ea392f 0% 9.091%, #f28917 9.091% 18.182%, #eecb12 18.182% 27.273%, #78b82a 27.273% 36.364%, #4375ca 36.364% 45.455%, #c346e3 45.455% 54.545%, #7bcce5 54.545% 63.636%, #eaeaea 63.636% 72.727%, #f4aec8 72.727% 81.818%, #000 81.818% 90.909%, #945516 90.909% 100%)}[data-theme=dark] .site_footer{border-top:1px solid oklch(.315 .009 355.305)}[data-theme=dark] .footer-container_contacts a:hover{color:oklch(.861 .039 19.928)}[data-theme=dark] .footer-container_contacts a:focus-visible{color:oklch(.861 .039 19.928);outline-color:oklch(.861 .039 19.928)}[data-theme=dark] .footer-container_web-badges a:focus-visible{outline-color:oklch(.861 .039 19.928)}[data-theme=dark] .footer-container_author{color:oklch(.824 .009 .185)}@counter-style --fleurons{system:cyclic;symbols:✤ ✥ ✻ ✽ ✾ ❃;suffix:"";speak-as:bullets}.prose{text-align:start;--gap: var(--spacing-lg);--full: minmax(0, 1fr);--content: min(48rem, 100%);--popout: minmax(0, 6rem);--feature: minmax(0, 12rem);--flow-space: var(--spacing-md);display:grid;grid-template-columns:[full-start] var(--full) [feature-start] var(--feature) [popout-start] var(--popout) [content-start] var(--content) [content-end] var(--popout) [popout-end] var(--feature) [feature-end] var(--full) [full-end]}@media(width < 860px){.prose{grid-template-columns:[full-start feature-start popout-start content-start] minmax(0, 100%) [content-end popout-end feature-end full-end]}}.prose>*{grid-column:content}.prose .popout{grid-column:popout}.prose .feature{grid-column:feature}.prose .full{grid-column:full}.prose h1:target,.prose h2:target,.prose h3:target,.prose h4:target,.prose h5:target,.prose h6:target{scroll-margin-top:2ex;animation:highlightFade 2s var(--ease-out-slow)}@media(prefers-reduced-motion: reduce){.prose h1:target,.prose h2:target,.prose h3:target,.prose h4:target,.prose h5:target,.prose h6:target{animation:none}}.prose h2 a,.prose h3 a,.prose h4 a,.prose h5 a,.prose h6 a{text-decoration:none;text-decoration-skip-ink:none}@media(hover: hover)and (pointer: fine){.prose h2 a:hover,.prose h3 a:hover,.prose h4 a:hover,.prose h5 a:hover,.prose h6 a:hover{text-decoration:underline;text-decoration-color:oklch(.411 .006 355)}}.prose h2 a:focus-visible,.prose h3 a:focus-visible,.prose h4 a:focus-visible,.prose h5 a:focus-visible,.prose h6 a:focus-visible{outline:3px solid currentColor;outline-offset:3px}.prose>:is(h1,h2,h3,h4,h5,h6)+:is(p,ul,ol,blockquote){--flow-space: var(--spacing-md)}.prose>:is(p,ul,ol,blockquote,hr,figure)+:is(h1,h2,h3,h4,h5,h6),.prose>:is(ul,ol,figure)+:is(p:not(:empty),ul,ol,blockquote){--flow-space: var(--spacing-xl)}.prose a[href^="https://"],.prose a[href^="mailto:"]{position:relative}.prose a[href^="https://"]:link,.prose a[href^="mailto:"]:link{color:oklch(.607 .137 25.221);text-decoration:underline;text-decoration-thickness:.1em;text-decoration-skip-ink:none;transition:text-decoration-color var(--duration-fast) var(--ease-out-fast),text-decoration-thickness var(--duration-fast) var(--ease-out-fast)}.prose a[href^="https://"]:hover,.prose a[href^="mailto:"]:hover{text-decoration-thickness:.3em;text-underline-offset:.3em}.prose a[href^="https://"]:focus-visible,.prose a[href^="mailto:"]:focus-visible{outline:3px solid oklch(.607 .137 25.221)}.prose a[href^="https://"]:active,.prose a[href^="mailto:"]:active{outline:3px dashed currentColor}.prose a[href^="https://"]:visited,.prose a[href^="mailto:"]:visited{color:oklch(.488 .073 315.769)}.prose a[href^="https://"]:after,.prose a[href^="mailto:"]:after{content:"↗";line-height:1;text-decoration:none;margin-inline-start:.1em}@media(prefers-reduced-motion: reduce){.prose a[href^="https://"],.prose a[href^="mailto:"]{transition:none}}.prose ol{counter-reset:orderedList;padding-inline-start:1.75ch}.prose ol li{margin-block-end:var(--spacing-sm);padding-inline-start:.5em;position:relative}.prose ol li::before{position:absolute;inset-inline-start:0;counter-increment:orderedList;content:counter(orderedList);width:1.5rem;inset-block-start:0;inset-inline-start:-1.75lh;padding-block:.25em;text-box:trim-start cap alphabetic;text-align:center;line-height:1;border-radius:.25em}.prose ul{list-style:none;padding-inline-start:1.75ch;line-height:1.25em}.prose ul li{margin-block-end:var(--spacing-sm);padding-inline-start:.5em;position:relative;text-box:trim-start cap alphabetic}.prose ul li::before{position:absolute;inset-block-start:0;inset-inline-start:-1.25em;inline-size:1em;text-box:trim-start cap alphabetic;text-align:end;font-size:1.25em;line-height:1;font-weight:bold;color:oklch(.607 .137 25.221);content:counter(list-item, --fleurons)}.prose figure{display:grid;grid-template-columns:subgrid;grid-column:full}.prose figure.popout>:not(figcaption){grid-column:popout}@media(width < 860px){.prose figure.popout>:not(figcaption){grid-column:full}}.prose figure.feature>:not(figcaption){grid-column:feature}@media(width < 860px){.prose figure.feature>:not(figcaption){grid-column:full}}.prose figure.full>:not(figcaption){grid-column:full}.prose figure img{display:grid;grid-template-columns:subgrid;width:100%;height:auto;outline-color:oklch(.85 .003 .125);background-color:oklch(.959 .004 359.998);aspect-ratio:auto}.prose figure img::before{grid-column:content}.prose figure figcaption{margin-block-start:var(--spacing-xs);font-size:var(--text-step--1);line-height:var(--line-height-caption);grid-column:content}.prose blockquote:not([class])::before{content:"❝";font-size:var(--blockquote-decoration-font-size);line-height:.8;position:absolute;top:var(--spacing-sm);left:var(--spacing-md)}.prose blockquote:not([class]){border-inline-start:1px solid currentColor;padding-inline:var(--spacing-md);padding-block:var(--spacing-2xl) var(--spacing-sm);position:relative}.prose hr{border:0;text-align:center;color:oklch(.599 .107 2.655)}.prose hr::before{content:"✿ ❀ ✿";display:block}.prose .heading-anchor{width:.75em;height:.75em;color:currentColor;opacity:.5}.prose .heading-anchor:hover{opacity:1}[data-theme=dark] .prose a[href^="https://"],[data-theme=dark] .prose a[href^="mailto:"]{color:oklch(.861 .039 19.928)}[data-theme=dark] .prose a[href^="https://"]:focus-visible,[data-theme=dark] .prose a[href^="mailto:"]:focus-visible{outline-color:oklch(.861 .039 19.928)}[data-theme=dark] .prose a[href^="https://"]:visited,[data-theme=dark] .prose a[href^="mailto:"]:visited{color:oklch(.758 .062 315.43)}@media(hover: hover)and (pointer: fine){[data-theme=dark] .prose h2 a:hover,[data-theme=dark] .prose h3 a:hover,[data-theme=dark] .prose h4 a:hover,[data-theme=dark] .prose h5 a:hover,[data-theme=dark] .prose h6 a:hover{text-decoration-color:oklch(.824 .009 .185)}}[data-theme=dark] .prose h2 a:focus-visible,[data-theme=dark] .prose h3 a:focus-visible,[data-theme=dark] .prose h4 a:focus-visible,[data-theme=dark] .prose h5 a:focus-visible,[data-theme=dark] .prose h6 a:focus-visible{outline-color:currentColor}[data-theme=dark] .prose figure img{outline-color:oklch(.422 .012 352.859);background-color:oklch(.275 .013 353.401)}[data-theme=dark] .prose ul li::before{color:oklch(.861 .039 19.928)}[data-theme=dark] .prose hr{color:oklch(.86 .023 .62)}.bg{color:#cad3f5;background-color:#24273a}.chroma{color:#cad3f5;background-color:#24273a;-webkit-text-size-adjust:none}.chroma .x{color:#cad3f5}.chroma .err{color:#ed8796}.chroma .cl{color:#cad3f5}.chroma .lnlinks{outline:none;text-decoration:none;color:inherit}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}.chroma .hl{background-color:#494d64}.chroma .lnt{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em 0 .4em;color:#8087a2}.chroma .ln{white-space:pre;-webkit-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em 0 .4em;color:#8087a2}.chroma .line{display:flex}.chroma .k{color:#c6a0f6}.chroma .kc{color:#f5a97f}.chroma .kd{color:#ed8796}.chroma .kn{color:#8bd5ca}.chroma .kp{color:#c6a0f6}.chroma .kr{color:#c6a0f6}.chroma .kt{color:#ed8796}.chroma .na{color:#8aadf4}.chroma .nc{color:#eed49f}.chroma .no{color:#eed49f}.chroma .nd{color:#8aadf4;font-weight:bold}.chroma .ni{color:#8bd5ca}.chroma .ne{color:#f5a97f}.chroma .nl{color:#91d7e3}.chroma .nn{color:#f5a97f}.chroma .nx{color:#cad3f5}.chroma .py{color:#f5a97f}.chroma .nt{color:#c6a0f6}.chroma .nb{color:#91d7e3}.chroma .bp{color:#91d7e3}.chroma .nv{color:#f4dbd6}.chroma .vc{color:#f4dbd6}.chroma .vg{color:#f4dbd6}.chroma .vi{color:#f4dbd6}.chroma .vm{color:#f4dbd6}.chroma .nf{color:#8aadf4}.chroma .fm{color:#8aadf4}.chroma .ld{color:#cad3f5}.chroma .s{color:#a6da95}.chroma .sa{color:#ed8796}.chroma .sb{color:#a6da95}.chroma .sc{color:#a6da95}.chroma .dl{color:#8aadf4}.chroma .sd{color:#6e738d}.chroma .s2{color:#a6da95}.chroma .se{color:#8aadf4}.chroma .sh{color:#6e738d}.chroma .si{color:#a6da95}.chroma .sx{color:#a6da95}.chroma .sr{color:#8bd5ca}.chroma .s1{color:#a6da95}.chroma .ss{color:#a6da95}.chroma .m{color:#f5a97f}.chroma .mb{color:#f5a97f}.chroma .mf{color:#f5a97f}.chroma .mh{color:#f5a97f}.chroma .mi{color:#f5a97f}.chroma .il{color:#f5a97f}.chroma .mo{color:#f5a97f}.chroma .o{color:#91d7e3;font-weight:bold}.chroma .ow{color:#91d7e3;font-weight:bold}.chroma .or{color:#91d7e3;font-weight:bold}.chroma .c{color:#6e738d;font-style:italic}.chroma .ch{color:#5b6078;font-style:italic}.chroma .cm{color:#6e738d;font-style:italic}.chroma .c1{color:#6e738d;font-style:italic}.chroma .cs{color:#6e738d;font-style:italic}.chroma .cp{color:#6e738d;font-style:italic}.chroma .cpf{color:#6e738d;font-weight:bold;font-style:italic}.chroma .gd{color:#ed8796;background-color:#363a4f}.chroma .ge{font-style:italic}.chroma .gr{color:#ed8796}.chroma .gh{color:#f5a97f;font-weight:bold}.chroma .gi{color:#a6da95;background-color:#363a4f}.chroma .go{color:#cad3f5}.chroma .gp{color:#cad3f5}.chroma .gs{font-weight:bold}.chroma .gu{color:#f5a97f;font-weight:bold}.chroma .gt{color:#ed8796}.chroma .gl{text-decoration:underline}.text-center{text-align:center}.text-align-end{text-align:end}.mono-font{font-family:"Sligoil Micro",ui-monospace,Menlo,Monaco,"Cascadia Mono","Segoe UI Mono","Roboto Mono","Oxygen Mono","Ubuntu Mono","Source Code Pro","Fira Mono","Droid Sans Mono","Consolas","Courier New",monospace}.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;overflow:hidden}.text-h1{font-size:var(--font-size-h1)}.text-h2{font-size:var(--font-size-h2)}.text-h3{font-size:var(--font-size-h3)}.text-h4{font-size:var(--font-size-h4)}.text-h5{font-size:var(--font-size-h5)}.text-h6{font-size:var(--font-size-h6)}@keyframes slideDownAndFadeIn{0%{opacity:0;transform:translateY(-100%);filter:blur(0px)}50%{filter:blur(4px)}100%{opacity:1;transform:translateY(0);filter:blur(0px)}}@keyframes slideUpAndFadeIn{0%{opacity:0;transform:translateY(100%);filter:blur(16px)}50%{filter:blur(8px)}100%{opacity:1;transform:translateY(0);filter:blur(0px)}}@keyframes highlightFade{from{background-color:oklch(from oklch(69.8% 0.196 46.055deg) l c h/0.5)}to{background-color:rgba(0,0,0,0)}}@keyframes fadeInScroll{0%{opacity:0;filter:blur(0px)}50%{filter:blur(4px)}100%{opacity:1;filter:blur(0px)}}@keyframes slideInScroll{0%{transform:translateY(100%)}100%{transform:translateY(0)}}@keyframes scaleUpScroll{0%{transform:scale(0.95)}100%{transform:scale(1)}}.feature-showcase{margin-block-start:var(--spacing-lg);--gap-space: var(--spacing-lg)}.hamburger-btn{background-color:oklch(.94 .003 354.695);color:inherit;cursor:pointer;align-items:center;padding:.5rem;border:none;margin-inline-end:var(--spacing-xs);transition:background-color 200ms ease}.hamburger-btn::-webkit-details-marker{display:none}.hamburger-btn:hover{background-color:oklch(.909 .007 354.811)}.hamburger-btn:focus-visible{outline:2px solid oklch(.607 .137 25.221)}.hamburger-btn .hamburger-icon{margin-inline-end:.25rem}.close-btn{background-color:rgba(0,0,0,0);border:none;color:oklch(.2845 .0047 355.06)}.mobile-popover-menu{pointer-events:auto;overflow-y:auto;overscroll-behavior:none;touch-action:pan-y;block-size:100dvh;inline-size:100dvw;background-color:oklch(.94 .003 354.695);border:none;text-align:center}.mobile-popover-menu ul{flex-direction:column;gap:var(--spacing-md);margin-block:var(--spacing-md)}.mobile-popover-menu li{inline-size:100%}.mobile-popover-menu li a{display:block;color:oklch(.2845 .0047 355.06);padding:var(--spacing-xs);text-decoration:none}.mobile-popover-menu li a:hover{background-color:oklch(.909 .007 354.811);font-weight:700}.mobile-popover-menu li a:focus-visible{outline:2px solid oklch(.607 .137 25.221)}.mobile-popover-menu li a[aria-current=page]{font-weight:bold;color:oklch(.607 .137 25.221)}.mobile-popover-menu li a[aria-current=page]::before{transform:scaleX(1);background-color:oklch(.607 .137 25.221)}[data-theme=dark] .hamburger-btn{background-color:oklch(.221 .01 355.876)}[data-theme=dark] .hamburger-btn:hover{background-color:oklch(.356 .015 357.829)}[data-theme=dark] .close-btn{color:oklch(.915 .004 354.698)}[data-theme=dark] .mobile-popover-menu{background-color:oklch(.221 .01 355.876)}[data-theme=dark] .mobile-popover-menu a{color:oklch(.915 .004 354.698)}[data-theme=dark] .mobile-popover-menu a:hover{background-color:oklch(.356 .015 357.829)}[data-theme=dark] .mobile-popover-menu a[aria-current=page]{color:oklch(.861 .039 19.928)}[data-theme=dark] .mobile-popover-menu a[aria-current=page]::before{background-color:oklch(.861 .039 19.928)}.project-info{border-block:1px solid oklch(.85 .003 .125);--measure: 48rem;--box-padding: var(--spacing-sm)}.project-info>*+*{--flow-space: var(--spacing-md)}.project-info--block{--gap-space: var(--spacing-xs);font-size:92%;line-height:var(--line-height-caption)}.project-info--block dt{font-weight:var(--font-weight-bold);max-width:140px}.project-info--block dd{flex:1}.project-info--block dd ul{gap:.5rem}.project-info--block dd ul li:not(:last-child)::after{content:",";color:inherit}.project-info--block dd ul .collaborator{position:relative;display:inline;padding-inline-start:calc(var(--spacing-lg) - var(--spacing-xs));text-decoration:underline;color:oklch(.411 .006 355);text-decoration-color:oklch(.411 .006 355);transition:color var(--duration-fast) var(--ease-out-fast),text-decoration-color var(--duration-fast) var(--ease-out-fast)}@media(hover: hover){.project-info--block dd ul .collaborator:hover,.project-info--block dd ul .collaborator:focus{color:oklch(.2845 .0047 355.06);text-decoration-color:oklch(.2845 .0047 355.06)}}.project-info--block dd ul .collaborator:focus-visible{outline:2px solid currentColor;outline-offset:2px}.project-info--block dd ul .collaborator:active{outline:2px dashed currentColor;outline-offset:2px}.project-info--block dd ul .collaborator .avatar{background:oklch(.959 .004 359.998);outline:oklch(.9 .002 .125);width:var(--spacing-sm);height:var(--spacing-sm);border-radius:var(--border-radius-full);position:absolute;top:50%;transform:translateY(-50%)}[data-theme=dark] .project-info{border-color:oklch(.422 .012 352.859)}[data-theme=dark] .project-info dd .collaborator{color:oklch(.824 .009 .185);text-decoration-color:oklch(.702 .02 356.685)}@media(hover: hover){[data-theme=dark] .project-info dd .collaborator:hover,[data-theme=dark] .project-info dd .collaborator:focus{color:oklch(.915 .004 354.698);text-decoration-color:oklch(.915 .004 354.698)}}[data-theme=dark] .project-info dd .collaborator:focus-visible{outline-color:currentColor;outline-offset:2px}[data-theme=dark] .project-info dd .collaborator .avatar{background:oklch(.275 .013 353.401);outline:oklch(.315 .009 355.305)}.skip-link:focus-visible{position:relative;top:0;width:auto;height:auto;clip:unset;overflow:visible;outline:3px solid oklch(.607 .137 25.221)}[data-theme=dark] .skip-link:focus-visible{outline-color:oklch(.861 .039 19.928)}.page-404{--measure: 70rem;padding-block:var(--spacing-2xl)}.text-404 a{color:oklch(.607 .137 25.221);text-decoration:underline}.text-404 a:hover{text-underline-offset:2px;text-decoration-thickness:4px}.text-404 a:focus-visible{outline:2px solid oklch(.607 .137 25.221);border-radius:.75em}.image-404 img{max-width:100%;height:auto}[data-theme=dark] .text-404 a{color:oklch(.861 .039 19.928)}[data-theme=dark] .text-404 a:focus-visible{outline-color:oklch(.861 .039 19.928)}.about-article{--measure: var(--max-width-xs)}.about-article--content{--flow-space: var(--spacing-lg)}.about-article--content>*{--flow-space: var(--spacing-xs)}.about-article--content p{align-self:flex-start;padding:8px 12px;border-radius:var(--border-radius-md);background-color:oklch(.909 .007 354.811);max-inline-size:60%;overflow-wrap:break-word}@media(prefers-reduced-motion: no-preference){@supports(animation-timeline: view()){.about-article--content p,.about-article--content blockquote{animation:fadeInScroll var(--duration-fast) linear forwards,slideInScroll var(--duration-fast) linear forwards;animation-timeline:view();animation-range-start:entry 0%;animation-range-end:cover 50%}.about-article--content p:nth-child(n),.about-article--content blockquote:nth-child(n){animation-delay:calc((n - 1)*.1s)}}}.about-article--content a{color:oklch(.607 .137 25.221);text-decoration:underline;text-decoration-thickness:.1em;text-decoration-skip-ink:none;transition:text-decoration-thickness var(--duration-fast) var(--ease-out-fast)}.about-article--content a:hover{text-decoration-thickness:.3em}.about-article--content a:focus-visible{outline:3px solid oklch(.607 .137 25.221)}.about-article--content a:active{outline:3px dashed currentColor}.about-article--content a:visited{color:oklch(.488 .073 315.769)}@media(prefers-reduced-motion: reduce){.about-article--content a{transition:none}}.about-article--content blockquote{align-self:end;padding:0;border-radius:var(--border-radius-md);max-inline-size:60%}.about-article--content blockquote>p{background-color:oklch(.8816 .0413 235.75);max-width:100%}[data-theme=dark] .about-article--content p{background-color:oklch(.356 .015 357.829)}[data-theme=dark] .about-article--content a{color:oklch(.861 .039 19.928)}[data-theme=dark] .about-article--content a:focus-visible{outline-color:oklch(.861 .039 19.928)}[data-theme=dark] .about-article--content a:visited{color:oklch(.758 .062 315.43)}[data-theme=dark] .about-article--content blockquote>p{background-color:oklch(.396 .042 230.038)}.badges-wrapper{--flow-space: var(--spacing-xl)}.badges-notes h2{margin-bottom:var(--spacing-md)}.badges-notes .box{--flow-space: var(--spacing-lg)}.badges-notes .box>p{margin-top:var(--spacing-xs)}.badges-container{gap:var(--spacing-xs);justify-content:center;align-items:center}.badges-container a:focus-visible{outline:4px dashed oklch(.607 .137 25.221)}.badges-container img{display:block;image-rendering:pixelated;aspect-ratio:auto 88/31}.badges-container img:hover{filter:brightness(1.2)}[data-theme=dark] .badges-container a:focus-visible{outline-color:oklch(.861 .039 19.928)}.blog-list{--flow-space: var(--spacing-lg)}.blog-list .blog-box{display:block;--flow-space: var(--spacing-xs);transition:all var(--duration-fast) var(--ease-out-fast)}@media(prefers-reduced-motion: reduce){.blog-list .blog-box{transition:none}}.blog-list .blog-box--metadata{font-size:var(--text-step--1);color:oklch(.411 .006 355)}.blog-list .blog-box::before{content:"";border-radius:inherit;position:absolute;z-index:-2;top:0;left:0;width:100%;height:100%;box-shadow:16px 16px 0 0 oklch(.607 .137 25.221);opacity:0;transition:all var(--duration-fast) var(--ease-out-fast);-webkit-transition:all var(--duration-fast) var(--ease-out-fast)}.blog-list .blog-box::after{content:"";border-radius:inherit;position:absolute;z-index:-1;top:0;left:0;width:100%;height:100%;box-shadow:8px 8px 0 0 oklch(.861 .039 19.928);opacity:0;transition:all var(--duration-fast) var(--ease-out-fast);-webkit-transition:all var(--duration-fast) var(--ease-out-fast)}.blog-list .blog-box:hover{transform:scale(1.02, 1.02);transform:translate(-8px, -8px)}.blog-list .blog-box:hover::after{opacity:1}.blog-list .blog-box:hover::before{opacity:1}.blog-list .blog-box:focus-visible{outline:3px solid oklch(.607 .137 25.221);text-decoration:underline}.blog-list .blog-box:active{scale:.97}[data-theme=dark] .blog-box--metadata{color:oklch(.824 .009 .185)}[data-theme=dark] .blog-box:focus-visible{outline-color:oklch(.861 .039 19.928)}[data-theme=dark] .blog-box:focus-within h2{color:oklch(.861 .039 19.928);text-decoration-color:oklch(.861 .039 19.928)}.blog-article{--flow-space: var(--spacing-lg);--measure: 48rem}.blog-article_header{--flow-space: var(--spacing-sm)}.blog-article_content{--flow-space: var(--spacing-lg)}.blog-article_nav{--gap-space: var(--spacing-sm);border:0;border-top:1px dashed oklch(.8 .004 .125);padding-block-start:var(--spacing-md)}.blog-article_nav .box{--box-padding: var(--spacing-xs);transition:border-color .15s ease-out}.blog-article_nav .box span{font-size:var(--step--1);color:oklch(.411 .006 355)}.blog-article_nav .box:hover{border:1px solid oklch(.607 .137 25.221);color:oklch(.607 .137 25.221)}.blog-article_nav .box:focus-visible{outline:3px solid oklch(.607 .137 25.221)}.blog-article_nav .box:focus-within p{text-decoration:underline}[data-theme=dark] .blog-article_nav{border-color:oklch(.422 .012 352.859)}[data-theme=dark] .blog-article_nav .box span{color:oklch(.824 .009 .185)}[data-theme=dark] .blog-article_nav .box:hover{border-color:oklch(.861 .039 19.928);color:oklch(.861 .039 19.928)}[data-theme=dark] .blog-article_nav .box:focus-visible{outline-color:oklch(.861 .039 19.928)}.colophon-article header{margin-block-end:var(--spacing-lg)}.colophon-article header>img{height:auto}.homepage{--flow-space: var(--spacing-2xl)}.homepage section>*{--flow-space: var(--spacing-md)}.homepage section #greeting{font-size:var(--text-step--1);color:oklch(.411 .006 355)}.homepage section #greeting i{margin-inline-start:4px}.homepage__webring-textLink{text-decoration:underline;text-decoration-color:oklch(from oklch(28.45% 0.0047 355.06deg) l c h/0.4);text-decoration-thickness:.1em;transition:text-decoration-color var(--duration-fast) var(--ease-out-fast),text-decoration-thickness var(--duration-fast) var(--ease-out-fast)}.homepage__webring-textLink:hover{text-decoration-color:currentColor;text-decoration-thickness:.3em}.homepage__webring-textLink:focus-visible{outline:3px solid oklch(.607 .137 25.221)}.homepage__projects>*{--flow-space: var(--spacing-2xl)}.homepage__projects-card{display:block;--flow-space: var(--spacing-sm);--box-padding: var(--spacing-lg);transition:all var(--duration-fast) var(--ease-out-fast)}@media(prefers-reduced-motion: reduce){.homepage__projects-card{transition:none}}.homepage__projects-card::before{content:"";border-radius:inherit;position:absolute;z-index:-2;top:0;left:0;width:100%;height:100%;box-shadow:16px 16px 0 0 oklch(.607 .137 25.221);opacity:0;transition:all var(--duration-fast) var(--ease-out-fast);-webkit-transition:all var(--duration-fast) var(--ease-out-fast)}.homepage__projects-card::after{content:"";border-radius:inherit;position:absolute;z-index:-1;top:0;left:0;width:100%;height:100%;box-shadow:8px 8px 0 0 oklch(.861 .039 19.928);opacity:0;transition:all var(--duration-fast) var(--ease-out-fast);-webkit-transition:all var(--duration-fast) var(--ease-out-fast)}@media(hover: hover)and (pointer: fine){.homepage__projects-card:hover{transform:scale(1.02, 1.02);transform:translate(-8px, -8px)}.homepage__projects-card:hover::after{opacity:1}.homepage__projects-card:hover::before{opacity:1}}.homepage__projects-card:focus-visible{outline:3px solid oklch(.607 .137 25.221)}.homepage__projects-card:active{transform:scale(0.97)}.homepage__projects-card:focus-within h3,.homepage__projects-card:focus-within p{text-decoration:underline;text-underline-offset:2px}.homepage__projects-card-image img{border-radius:calc(var(--border-radius-sm) - var(--box-padding));aspect-ratio:16/9}.homepage__projects-card-info-year,.homepage__projects-card-info-category{text-transform:capitalize;border-radius:var(--border-radius-xs);font-size:var(--text-step--1);border:1px solid oklch(.9 .002 .125);background-color:oklch(.94 .003 354.695);padding:3px 9px;font-family:"Sligoil Micro",ui-monospace,Menlo,Monaco,"Cascadia Mono","Segoe UI Mono","Roboto Mono","Oxygen Mono","Ubuntu Mono","Source Code Pro","Fira Mono","Droid Sans Mono","Consolas","Courier New",monospace;color:oklch(.411 .006 355)}[data-theme=dark] .homepage #greeting{color:oklch(.824 .009 .185)}[data-theme=dark] .homepage__webring-textLink{text-decoration-color:oklch(from oklch(91.5% 0.004 354.698deg) l c h/0.4)}[data-theme=dark] .homepage__webring-textLink:hover{text-decoration-color:currentColor}[data-theme=dark] .homepage__projects-card{background-color:oklch(.275 .013 353.401)}[data-theme=dark] .homepage__projects-card:focus-visible{outline-color:oklch(.861 .039 19.928)}[data-theme=dark] .homepage__projects-card-info-year,[data-theme=dark] .homepage__projects-card-info-category{background-color:oklch(.356 .015 357.829);border:1px solid oklch(.315 .009 355.305);color:oklch(.824 .009 .185)}.reading-wrapper{--flow-space: var(--spacing-lg);max-inline-size:48rem}.reading-wrapper .reading-list{--flow-space: var(--spacing-xl)}.reading-wrapper .reading-item .reading-content>*{--flow-space: var(--spacing-lg)}.reading-wrapper .reading-item .reading-content footer{justify-content:space-between;padding-top:var(--spacing-xs);border-top:1px solid oklch(.8 .004 .125);font-size:var(--step--1)}.reading-wrapper .reading-pagination{display:flex;justify-content:space-between;align-items:center;font-size:var(--step--1)}.post-content{--flow-space: var(--spacing-lg)}.post-content footer{justify-content:space-between;padding-top:var(--spacing-xs);border-top:1px solid oklch(.8 .004 .125);font-size:var(--step--1)}[data-theme=dark] .reading-item .reading-content footer{border-top-color:oklch(.422 .012 352.859)}[data-theme=dark] .post-content footer{border-top:1px solid oklch(.422 .012 352.859)}.songs{--measure: var(--max-width-lg);--flow-space: var(--spacing-lg)}.songs .grid{--grid-space: var(--spacing-md)}.songs .grid .song{--base: 16px;--flow-space: var(--spacing-sm);background-color:oklch(.959 .004 359.998);container-type:inline-size;outline:1px solid oklch(from oklch(28.45% 0.0047 355.06deg) calc(l - 0.8) c h/0.2);position:relative;grid-area:1/1;overflow:hidden;height:round(down,100%,var(--base))}.songs .grid .song[data-genre=Pop]{outline-color:oklch(from oklch(59.9% 0.107 2.655deg) calc(l - 0.1) c h/0.5)}.songs .grid .song[data-genre=Blues]{outline-color:oklch(from oklch(47.7% 0.039 248.644deg) calc(l - 0.1) c h/0.5)}.songs .grid .song[data-genre="Heavy Metal"]{outline-color:oklch(from oklch(50.9% 0.087 215.073deg) calc(l - 0.1) c h/0.5)}.songs .grid .song[data-genre=Jazz]{outline-color:oklch(from oklch(69.8% 0.196 46.055deg) calc(l - 0.1) c h/0.5)}.songs .grid .song[data-genre=Soundtrack]{outline-color:oklch(from oklch(47.1% 0.059 181.208deg) calc(l - 0.1) c h/0.5)}.songs .grid .song__metadata{--flow-space: var(--spacing-xs)}@media(hover: none)and (pointer: coarse){.songs .grid .song__metadata{padding:var(--spacing-xs);background-color:oklch(.959 .004 359.998);max-width:100%;opacity:1;filter:none;position:relative;transform:none}}@media(hover: hover)and (pointer: fine){.songs .grid .song__metadata{position:absolute;top:50%;left:50%;transform:translateX(-50%);opacity:0;width:max-content;max-inline-size:75%;background-color:oklch(.959 .004 359.998);padding:var(--spacing-sm);outline:1px solid oklch(from oklch(28.45% 0.0047 355.06deg) calc(l - 0.8) c h/0.1);border-radius:var(--border-radius-xs);filter:blur(8px)}}.songs .grid .song__metadata{transition:opacity var(--duration-slow) var(--ease-out-fast),filter var(--duration-slow) var(--ease-out-fast),transform var(--duration-slow) var(--ease-out-fast)}.songs .grid .song__metadata-artist,.songs .grid .song__metadata-album{line-height:var(--line-height-heading)}@media(hover: none)and (pointer: coarse){.songs .grid .song__metadata-artist,.songs .grid .song__metadata-album{font-size:var(--text-step--1)}}.songs .grid .song__metadata-artist{color:oklch(from oklch(28.45% 0.0047 355.06deg) l c h/0.85)}.songs .grid .song__metadata-album{color:oklch(.411 .006 355)}.songs .grid .song__cover{width:100%;height:auto;object-fit:cover;aspect-ratio:1/1}@media(hover: hover)and (pointer: fine){.songs .grid .song{transition:all var(--duration-medium) var(--ease-out-fast)}.songs .grid .song:hover{scale:.9;transform:rotate(3deg)}.songs .grid .song:hover .song__metadata{opacity:1;transform:translateX(-50%) translateY(-50%);filter:blur(0px)}}[data-theme=dark] .songs .song{background-color:oklch(.275 .013 353.401);outline-color:oklch(from oklch(91.5% 0.004 354.698deg) l c h/0.2)}[data-theme=dark] .songs .song[data-genre=Pop]{outline-color:oklch(from oklch(86% 0.023 0.62deg) calc(l - 0.1) c h/0.5)}[data-theme=dark] .songs .song[data-genre=Blues]{outline-color:oklch(from oklch(84.6% 0.041 250.606deg) calc(l - 0.1) c h/0.5)}[data-theme=dark] .songs .song[data-genre="Heavy Metal"]{outline-color:oklch(from oklch(71.4% 0.044 232.833deg) calc(l - 0.1) c h/0.5)}[data-theme=dark] .songs .song[data-genre=Jazz]{outline-color:oklch(from oklch(80.3% 0.146 64.595deg) calc(l - 0.1) c h/0.5)}[data-theme=dark] .songs .song[data-genre=Soundtrack]{outline-color:oklch(from oklch(78.3% 0.077 179.891deg) calc(l - 0.1) c h/0.5)}[data-theme=dark] .songs .song__metadata{background-color:oklch(.275 .013 353.401);outline-color:oklch(from oklch(91.5% 0.004 354.698deg) calc(l - 0.8) c h/0.1)}[data-theme=dark] .songs .song__metadata-artist{color:oklch(from oklch(91.5% 0.004 354.698deg) l c h/0.85)}[data-theme=dark] .songs .song__metadata-album{color:oklch(.824 .009 .185)}.now-container>*+*{--flow-space: var(--spacing-lg)}.now-box>*{--flow-space: var(--spacing-xs)}.now-box>h2{margin-top:0}.now-box{background-color:oklch(.959 .004 359.998)}.now-box--time{display:inline-flex;font-family:"Sligoil Micro",ui-monospace,Menlo,Monaco,"Cascadia Mono","Segoe UI Mono","Roboto Mono","Oxygen Mono","Ubuntu Mono","Source Code Pro","Fira Mono","Droid Sans Mono","Consolas","Courier New",monospace;font-size:var(--text-step--1)}[data-theme=dark] .now-box{background-color:oklch(.275 .013 353.401)}.slashes-list{--flow-space: var(--spacing-md)}.slash-entry{position:relative;--box-padding: var(--spacing-sm);transition:transform var(--duration-fast) var(--ease-out-fast)}@media(prefers-reduced-motion: reduce){.slash-entry{transition:none}}.slash-entry span{font-size:var(--text-step--1)}.slash-entry>*{--flow-space: var(--spacing-xs)}.slash-entry::before{content:"";border-radius:inherit;position:absolute;z-index:-2;top:0;left:0;width:100%;height:100%;box-shadow:16px 16px 0 0 oklch(.607 .137 25.221);opacity:0;transition:all var(--duration-fast) var(--ease-out-fast);-webkit-transition:all var(--duration-fast) var(--ease-out-fast)}.slash-entry::after{content:"";border-radius:inherit;position:absolute;z-index:-1;top:0;left:0;width:100%;height:100%;box-shadow:8px 8px 0 0 oklch(.861 .039 19.928);opacity:0;transition:all var(--duration-fast) var(--ease-out-fast);-webkit-transition:all var(--duration-fast) var(--ease-out-fast)}.slash-entry:hover{transform:scale(1.02, 1.02);transform:translate(-8px, -8px)}.slash-entry:hover::after{opacity:1}.slash-entry:hover::before{opacity:1}.slash-entry:focus-visible{outline:3px solid oklch(.607 .137 25.221)}.slash-entry:active{scale:.97}.slash-entry:focus-within{color:oklch(.607 .137 25.221);text-decoration:underline}[data-theme=dark] .slash-entry:hover{outline-color:oklch(.861 .039 19.928)}[data-theme=dark] .slash-entry:focus-visible{outline-color:oklch(.861 .039 19.928)}[data-theme=dark] .slash-entry:focus-within{color:oklch(.861 .039 19.928)}.webring-page{--flow-space: var(--spacing-md)}.webring-page--introduction>*{--flow-space: var(--spacing-sm)}.webring-page--container>*{--flow-space: var(--spacing-md)}.webring-page--nav{display:flex;--box-padding: 0;--box-border-color: none;--webring-border-dark: oklch(from var(--webring-accent) calc(l * 0.5) c h);--webring-border-light: var(--webring-accent);--webring-bg-dark: oklch(from var(--webring-accent) calc(l * 0.32) c h);--webring-bg-light: oklch(from var(--webring-accent) l c h / 0.5);--webring-bg-light-hover: oklch(from var(--webring-accent) l c h / 0.6);--webring-bg-dark-hover: oklch(from var(--webring-accent) calc(l * 0.4) c h );--webring-text-dark: oklch( from var(--webring-accent) calc(l * 1.1) c h );--webring-text-light: oklch( from var(--webring-accent) calc(l * 0.32) c h );background-color:var(--webring-bg-light);color:var(--webring-text-light)}.webring-page--nav a:active{scale:.96}.webring-page--nav--link{flex-grow:1;align-items:center;justify-content:center;padding:var(--spacing-sm)}.webring-page--nav--link h2{text-decoration:underline}.webring-page--nav--link p{margin-top:var(--spacing-xs);font-size:var(--step--1)}.webring-page--nav--link:hover{background-color:var(--webring-bg-light-hover)}.webring-page--nav--link:focus-visible{outline:3px solid currentColor}.webring-page--nav .prev,.webring-page--nav .next{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:56px}.webring-page--nav .prev:hover,.webring-page--nav .next:hover{background-color:var(--webring-bg-light-hover)}.webring-page--nav .prev:focus-visible,.webring-page--nav .next:focus-visible{outline:3px solid currentColor}.webring-page--nav .prev .icon,.webring-page--nav .next .icon{display:block;max-inline-size:100%}.webring-page--nav .prev{border-inline-end:1px solid var(--webring-border-light)}.webring-page--nav .next{border-inline-start:1px solid var(--webring-border-light)}[data-theme=dark] .webring-page--nav{background-color:var(--webring-bg-dark);color:var(--webring-text-dark)}[data-theme=dark] .webring-page--nav--link:hover{background-color:var(--webring-bg-dark-hover)}[data-theme=dark] .webring-page--nav .prev:hover,[data-theme=dark] .webring-page--nav .next:hover{background-color:var(--webring-bg-dark-hover)}[data-theme=dark] .webring-page--nav .prev:focus-visible,[data-theme=dark] .webring-page--nav .next:focus-visible{outline-color:currentColor}[data-theme=dark] .webring-page--nav .prev{border-color:var(--webring-border-dark)}[data-theme=dark] .webring-page--nav .next{border-color:var(--webring-border-dark)}