@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/DMSans-Regular.woff2) format("woff2-variations");font-weight:400 600;font-style:normal;font-display:swap}:root{--void: #08080D;--carbon: #12121A;--carbon-deep: #0E0E16;--slate: #1E1E2E;--mist: #2A2A3C;--white: #FFFFFF;--fg-primary: #FFFFFF;--fg-body: #B0B0C0;--fg-tertiary: #5A5A6E;--fg-muted: #444444;--signal: #00F0B5;--signal-hover: #00D9A3;--signal-deep: #0A5C42;--short: #FF4D6A;--data: #3B82F6;--alpha: #F59E0B;--edge: #A855F7;--border-card: .5px solid rgba(255, 255, 255, .06);--border-signal: .5px solid rgba(0, 240, 181, .3);--border-signal-soft: .5px solid rgba(0, 240, 181, .15);--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-sans: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--container-max: 1280px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{background:var(--void);color:var(--fg-body)}html{color-scheme:dark;scroll-behavior:auto}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}img{display:block;max-width:100%}::selection{background:#00f0b540;color:#fff}h1,h2,h3{font-family:var(--font-mono);color:var(--fg-primary);font-weight:700;line-height:1.15;letter-spacing:-.5px}p{font-family:var(--font-sans);color:var(--fg-body);line-height:1.6}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;background:none;border:none;color:inherit}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 24px}footer[data-astro-cid-sz7xmlte]{background:var(--void);border-top:var(--border-card);padding:56px 8vw 32px}.foot-row[data-astro-cid-sz7xmlte]{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:flex-end}.foot-brand[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:16px}.foot-brand[data-astro-cid-sz7xmlte] .logo-line[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:16px;font-weight:800;letter-spacing:-.5px}.foot-brand[data-astro-cid-sz7xmlte] .logo-line[data-astro-cid-sz7xmlte] .w[data-astro-cid-sz7xmlte]{color:#fff}.foot-brand[data-astro-cid-sz7xmlte] .logo-line[data-astro-cid-sz7xmlte] .g[data-astro-cid-sz7xmlte]{color:var(--signal)}.foot-brand[data-astro-cid-sz7xmlte] .tagline[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:11px;letter-spacing:3px;color:var(--fg-tertiary);text-transform:uppercase}.foot-links[data-astro-cid-sz7xmlte]{display:flex;gap:24px;font-family:var(--font-mono);font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--fg-tertiary)}.foot-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{transition:color .2s ease}.foot-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--fg-body)}.foot-bottom[data-astro-cid-sz7xmlte]{max-width:1280px;margin:40px auto 0;padding-top:24px;border-top:var(--border-card);display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:10px;letter-spacing:2px;color:var(--fg-muted);text-transform:uppercase}.foot-bottom[data-astro-cid-sz7xmlte] .status[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:8px}.foot-bottom[data-astro-cid-sz7xmlte] .status[data-astro-cid-sz7xmlte] .dot[data-astro-cid-sz7xmlte]{width:6px;height:6px;border-radius:50%;background:var(--signal);animation:pulse 2s ease infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}
