@layer reset{*,:before,:after{box-sizing:border-box}*{margin:0}body{min-height:100dvh}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}p,h1,h2,h3,h4{overflow-wrap:break-word}h1,h2,h3,h4{text-wrap:balance}p{text-wrap:pretty}ul[role=list],ol[role=list]{padding:0;list-style:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}}
@layer tokens{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f7f8fb;--color-bg-translucent:#f7f8fbd9;--color-surface:#fff;--color-surface-raised:#f1f3f8;--color-surface-soft:#e9eefb;--color-border:#e3e7f0;--color-border-strong:#c8cfde;--color-overlay:#10141e73;--color-text:#11151f;--color-text-muted:#545e75;--color-text-subtle:#78819a;--color-accent:#2f6bff;--color-accent-hover:#1f56e0;--color-accent-text:#1d4ed8;--color-accent-contrast:#fff;--color-accent-soft:#2f6bff1a;--color-success:#12875a;--color-focus-ring:#2f6bff;--shadow-md:0 8px 24px -10px #1018282e;--shadow-lg:0 24px 64px -16px #10182838, 0 0 0 1px #1018280a;--font-sans:var(--font-inter), system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:var(--font-space-grotesk), var(--font-sans);--font-mono:ui-monospace, "SF Mono", menlo, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:clamp(1.75rem, 1.4rem + 1.5vw, 2.25rem);--text-4xl:clamp(2.25rem, 1.6rem + 3vw, 3.5rem);--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--leading-tight:1.15;--leading-normal:1.6;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:999px;--duration-fast:.12s;--duration-base:.2s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--container-max:72rem;--container-gutter:clamp(1rem, 4vw, 2rem);--bar-progress:0;--header-height:6.25rem;--header-height-scrolled:calc(var(--header-height) * .6);--z-header:10;--z-overlay:50;--z-modal:60}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#0b0d12;--color-bg-translucent:#0b0d12cc;--color-surface:#12151c;--color-surface-raised:#181c25;--color-surface-soft:#1b2436;--color-border:#232834;--color-border-strong:#313849;--color-overlay:#05060ab8;--color-text:#e8ebf2;--color-text-muted:#9aa3b5;--color-text-subtle:#6b7385;--color-accent:#2f6bff;--color-accent-hover:#4d82ff;--color-accent-text:#8fb0ff;--color-accent-contrast:#fff;--color-accent-soft:#2f6bff29;--color-success:#3ecf8e;--color-focus-ring:#7ea2ff;--shadow-md:0 8px 24px -8px #00000080;--shadow-lg:0 24px 64px -12px #0009, 0 0 0 1px #ffffff08}}
@layer base{html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height-scrolled) + var(--space-3));-webkit-font-smoothing:antialiased}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:-.02em}body>*{z-index:1;position:relative}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}::selection{background-color:var(--color-accent);color:var(--color-accent-contrast)}}
@layer reset,tokens,base;
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.03ez25a9g3i0n.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.3i9rha7jpxn0q.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.2o7ko1d-5m1xu.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.1ee5w62fj497l.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.1way2z9fj6cig.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.0szrwpqb9mkwe.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.45535valc9rzk.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_c15e96cb-module__0bjUvq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_c15e96cb-module__0bjUvq__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/32687112bd2dd8db-s.0v2ipp7s07_p9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/28868e710e86be81-s.44ks8kcggj012.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.1ii7211jqpzi_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_e6988195-module__RNs2Mq__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_e6988195-module__RNs2Mq__variable{--font-space-grotesk:"Space Grotesk", "Space Grotesk Fallback"}
.SocialLinks-module__lAGlYq__list{align-items:center;gap:var(--space-2);display:flex}.SocialLinks-module__lAGlYq__link{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--color-text-subtle);transition:border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out), translate var(--duration-fast) var(--ease-out);place-items:center;display:grid;position:relative}.SocialLinks-module__lAGlYq__link:hover{border-color:var(--color-accent);color:var(--color-accent-text);translate:0 -2px}.SocialLinks-module__lAGlYq__tooltip{bottom:calc(100% + var(--space-2));padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface);color:var(--color-text-muted);font-size:var(--text-xs);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out), translate var(--duration-fast) var(--ease-out);position:absolute;left:50%;translate:-50% 4px}.SocialLinks-module__lAGlYq__link:hover .SocialLinks-module__lAGlYq__tooltip,.SocialLinks-module__lAGlYq__link:focus-visible .SocialLinks-module__lAGlYq__tooltip{opacity:1;translate:-50%}
.SiteFooter-module__VFKzxG__footer{padding-block:var(--space-8);border-top:1px solid var(--color-border);color:var(--color-text-subtle);font-size:var(--text-sm)}.SiteFooter-module__VFKzxG__inner{justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;display:flex}.SiteFooter-module__VFKzxG__author{color:var(--color-text-muted);font-weight:var(--weight-medium)}
.GitHubLink-module__MhzuAG__link{align-items:center;gap:var(--space-2);padding-left:var(--space-3);border-left:1px solid var(--color-border);border-left-color:color-mix(in srgb, #ffffff47 calc(var(--bar-p,0) * 100%), var(--color-border));color:color-mix(in srgb, #ffffffbf calc(var(--bar-p,0) * 100%), var(--color-text-subtle));font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-regular);letter-spacing:normal;display:inline-flex}.GitHubLink-module__MhzuAG__label{flex-direction:column;line-height:1.15;display:flex}.GitHubLink-module__MhzuAG__mark{border-radius:var(--radius-full);width:1.5rem;height:1.5rem;color:color-mix(in srgb, #fff calc(var(--bar-p,0) * 100%), var(--color-text-muted));transition:color var(--duration-base) var(--ease-out), rotate var(--duration-base) var(--ease-out), scale var(--duration-base) var(--ease-out);place-items:center;display:grid;position:relative}.GitHubLink-module__MhzuAG__mark:before{border-radius:inherit;background:conic-gradient(from 0deg, transparent 0deg, var(--color-accent) 40deg, transparent 120deg, transparent 360deg);opacity:.55;content:"";animation:4.5s linear infinite GitHubLink-module__MhzuAG__orbit;position:absolute;inset:-2px}.GitHubLink-module__MhzuAG__mark:after{border-radius:inherit;background-color:color-mix(in srgb, #ffffff1f calc(var(--bar-p,0) * 100%), var(--color-bg));content:"";position:absolute;inset:0}.GitHubLink-module__MhzuAG__mark svg{z-index:1;position:relative}.GitHubLink-module__MhzuAG__name{color:color-mix(in srgb, #fff calc(var(--bar-p,0) * 100%), var(--color-text-muted));font-weight:var(--weight-medium);transition:color var(--duration-fast) var(--ease-out)}.GitHubLink-module__MhzuAG__link:hover .GitHubLink-module__MhzuAG__mark{rotate:18deg;scale:1.28}.GitHubLink-module__MhzuAG__link:hover .GitHubLink-module__MhzuAG__name{color:#8fc4ff}@keyframes GitHubLink-module__MhzuAG__orbit{to{rotate:360deg}}
.ThemeToggle-module__gv9_OW__toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-surface);width:2.25rem;height:2.25rem;color:var(--color-text-muted);transition:border-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);place-items:center;display:grid}.ThemeToggle-module__gv9_OW__toggle:hover{border-color:var(--color-border-strong);color:var(--color-text)}.ThemeToggle-module__gv9_OW__sun{display:none}.ThemeToggle-module__gv9_OW__moon{display:block}html[data-theme=dark] .ThemeToggle-module__gv9_OW__sun{display:block}html[data-theme=dark] .ThemeToggle-module__gv9_OW__moon{display:none}
