@font-face{font-family:RobotoMono;src:url(/fonts/RobotoMono-VariableFont_wght.woff2) format("woff2");font-display:swap}@font-face{font-family:RedHatText;src:url(/fonts/RedHatText-VariableFont_wght.woff2) format("woff2");font-display:swap}:root{--bg-light: 220, 220, 220;--bg-dark: 15, 15, 15;--bg-raw: var(--bg-light);--background-color: rgb(var(--bg-raw));--text-light: 180, 180, 180;--text-dark: 15, 15, 15;--text-raw: var(--text-dark);--text-color: rgb(var(--text-raw));--text-accent: rgb(9, 206, 251);--font-sans: "RedHatText", system-ui, -apple-system, sans-serif;--font-mono: "RobotoMono", "SFMono-Regular", monospace;--step--1: clamp(.79rem, .76rem + .13vw, .89rem);--step-0: clamp(.97rem, .94rem + .18vw, 1.13rem);--step-1: clamp(1.25rem, 1.2rem + .25vw, 1.44rem);--step-2: clamp(1.56rem, 1.5rem + .31vw, 1.8rem);--step-3: clamp(1.95rem, 1.88rem + .39vw, 2.25rem);--step-4: clamp(2.44rem, 2.35rem + .49vw, 2.81rem);--step-5: clamp(3.05rem, 2.94rem + .61vw, 3.52rem);--space-xs: .5rem;--space-s: .75rem;--space-m: 1rem;--space-l: 2rem;color-scheme:light}*{margin:0;box-sizing:border-box}body{padding:0;margin:0;background-color:var(--background-color);color:var(--text-color);font-family:var(--font-sans);font-size:var(--step-0);line-height:1.5;text-align:left;word-wrap:break-word;overflow-wrap:break-word;overflow-x:hidden;width:100dvw;min-height:100dvh}h1{font-size:var(--step-5);line-height:1.15;margin-bottom:var(--space-m)}h2{font-size:var(--step-4);line-height:1.2;margin-top:var(--space-l);margin-bottom:var(--space-xs)}h3{font-size:var(--step-3);line-height:1.25;margin-top:var(--space-l);margin-bottom:var(--space-xs)}h4{font-size:var(--step-2);line-height:1.3;margin-top:var(--space-m);margin-bottom:var(--space-xs)}h5,h6{font-size:var(--step-1);line-height:1.35;margin-top:var(--space-m);margin-bottom:var(--space-xs)}strong,b{font-weight:700}p{margin-bottom:var(--space-s);max-width:60ch}code{font-family:var(--font-mono, ui-monospace, monospace);font-size:.9em;font-weight:400;padding:0 .5em;letter-spacing:-.05em;background:color-mix(in oklab,var(--text-color) 10%,transparent);border-radius:.2em;white-space:nowrap;color:color-mix(in oklab,var(--text-accent) 40%,var(--text-color))}a{position:relative;width:fit-content;color:currentColor;text-decoration:none;font-family:var(--font-mono);letter-spacing:3px;font-weight:500}a[aria-disabled=true],label[aria-disabled=true]{color:currentColor;pointer-events:none;user-select:none;text-decoration:none;opacity:.25}a:not(:has(>svg:only-child)):before{position:absolute;content:"";bottom:0;left:0;width:0;transition:width .2s ease-in-out;will-change:width;height:1px;background-color:var(--text-color)}a:not(:has(>svg:only-child)):after{--size: 4px;position:absolute;content:"";bottom:calc((var(--size) / 2) * -1);right:-10%;transform:rotate(45deg);border-top:1px solid;border-right:1px solid;width:var(--size);height:var(--size);opacity:0;will-change:opacity}a:not(:has(>svg:only-child)):hover:before{width:110%}a:not(:has(>svg:only-child)):hover:after{opacity:1;transition:opacity .2s ease-in-out .2s}svg{width:100%;height:100%}svg.animate{stroke-dasharray:5000;stroke-dashoffset:5000;animation:animateDash 1.5s ease-in-out forwards}.highlight{color:color-mix(in srgb,var(--text-accent) 50%,var(--text-color))}hr{border:none;height:1px;background-color:var(--text-color);opacity:.5}ul{padding-inline-start:1.25em}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar,.hide-scrollbar::-webkit-scrollbar-button{display:none}.icon-link{position:relative;width:2em;aspect-ratio:1/1;display:grid;place-content:center;transform-origin:bottom center;transform:scale(1);will-change:transform;transition:transform .2s cubic-bezier(0,.49,.94,1.98)}.icon-link:hover{transform:scale(1.1)}@keyframes animateDash{to{stroke-dashoffset:0}}.sr-only{border:0;padding:0;margin:0;position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap}.gradient-mask{--p-x: calc(var(--pointer-x, 0) * 1%);--p-y: calc(var(--pointer-y, 0) * 1%);mask-image:url(/gradient-mask.webp);--size: var(--mask-size, 200px);mask-size:var(--size) var(--size);mask-repeat:no-repeat;--bias-x: calc(var(--pointer-x) / 100 + .5 - 1);--bias-y: calc(var(--pointer-y) / 100 + .5 - 1);--x: calc(var(--p-x) + var(--size) * var(--bias-x));--y: calc(var(--p-y) + var(--size) * var(--bias-y));mask-position:var(--x) var(--y);contain:paint}.force-gpu{transform:translateZ(0)}.tilt{--tilt-max: var(--tilt-max-angle, 10deg);--nx: calc((var(--local-pointer-x, 50) - 50) / 50);--ny: calc((var(--local-pointer-y, 50) - 50) / 50);--tilt-x: calc(var(--ny) * var(--tilt-max) * -1);--tilt-y: calc(var(--nx) * var(--tilt-max));transform-style:preserve-3d;backface-visibility:hidden;transform:rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transform-origin:center;will-change:transform;transition:transform .15s linear;contain:paint}:root[data-theme=dark]{color-scheme:dark;--bg-raw: var(--bg-dark);--text-raw: var(--text-light);.highlight{color:color-mix(in srgb,var(--text-accent) 30%,var(--text-color))}}@media (prefers-reduced-motion: reduce){.tilt{will-change:none;transform:none}.icon-link{will-change:none;transition:none}.icon-link:hover{transform:none}}
