.skip-link[data-astro-cid-4svbv52e]{position:absolute;top:calc(-1 * var(--space-10));left:var(--space-2);z-index:var(--z-skip-link);padding:var(--space-2);background:var(--color-bg-inverted);color:var(--color-text-inverted);text-decoration:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}@media (prefers-reduced-motion: no-preference){.skip-link[data-astro-cid-4svbv52e]{transition:top var(--duration-slow) var(--ease-default)}}.skip-link[data-astro-cid-4svbv52e]:focus{top:var(--space-2)}.skip-link[data-astro-cid-4svbv52e]:hover,.skip-link[data-astro-cid-4svbv52e]:focus{background:var(--color-neutral-700);outline:var(--focus-ring-width) solid var(--color-text-inverted);outline-offset:var(--focus-ring-offset)}.theme-toggle[data-astro-cid-efubawbo]{display:flex;align-items:center;justify-content:center;padding:var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--color-text-secondary);border:none;cursor:pointer}@media (prefers-reduced-motion: no-preference){.theme-toggle[data-astro-cid-efubawbo]{transition:var(--transition-colors)}}.theme-toggle[data-astro-cid-efubawbo]:hover,.theme-toggle[data-astro-cid-efubawbo]:focus-visible{background-color:var(--color-bg-hover);color:var(--color-text-primary)}.icon[data-astro-cid-efubawbo]{width:20px;height:20px}.icon-sun[data-astro-cid-efubawbo]{display:none}.icon-moon[data-astro-cid-efubawbo],[data-theme=dark] .icon-sun[data-astro-cid-efubawbo]{display:block}[data-theme=dark] .icon-moon[data-astro-cid-efubawbo]{display:none}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) .icon-sun[data-astro-cid-efubawbo]{display:block}:root:not([data-theme=light]) .icon-moon[data-astro-cid-efubawbo]{display:none}}.nav[data-astro-cid-afdttjsk]{background-color:var(--color-bg-secondary);border-block-end:var(--border-width-thin) solid var(--color-border-primary);position:sticky;inset-block-start:0;z-index:var(--z-sticky)}.nav-container[data-astro-cid-afdttjsk]{max-inline-size:var(--max-width-container);margin-inline:auto;padding-block:var(--space-responsive-sm);padding-inline:var(--space-container-padding);display:flex;justify-content:space-between;align-items:center;gap:clamp(var(--space-4),3vw,var(--space-8))}.nav-logo[data-astro-cid-afdttjsk]{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);text-decoration:none}@media (prefers-reduced-motion: no-preference){.nav-logo[data-astro-cid-afdttjsk]{transition:var(--transition-colors)}}.nav-logo[data-astro-cid-afdttjsk]:hover,.nav-logo[data-astro-cid-afdttjsk]:focus{color:var(--color-interactive-primary)}.nav-actions[data-astro-cid-afdttjsk]{display:flex;align-items:center;gap:var(--space-2)}.nav-toggle[data-astro-cid-afdttjsk]{display:none;background:none;border:none;cursor:pointer;padding-block:var(--space-2);padding-inline:var(--space-2);position:relative;inline-size:40px;block-size:40px}.nav-toggle-icon[data-astro-cid-afdttjsk],.nav-toggle-icon[data-astro-cid-afdttjsk]:before,.nav-toggle-icon[data-astro-cid-afdttjsk]:after{display:block;inline-size:24px;block-size:2px;background-color:var(--color-text-primary);position:absolute;inset-inline-start:50%;transform:translate(-50%)}.nav-toggle-icon[data-astro-cid-afdttjsk]{inset-block-start:50%;transform:translate(-50%,-50%)}.nav-toggle-icon[data-astro-cid-afdttjsk]:before,.nav-toggle-icon[data-astro-cid-afdttjsk]:after{content:""}.nav-toggle-icon[data-astro-cid-afdttjsk]:before{inset-block-start:-8px}.nav-toggle-icon[data-astro-cid-afdttjsk]:after{inset-block-start:8px}.nav-menu[data-astro-cid-afdttjsk]{display:flex;list-style:none;margin:0;padding:0;gap:clamp(var(--space-1),1vw,var(--space-2));align-items:center;flex:1;justify-content:flex-end}.nav-menu-mobile[data-astro-cid-afdttjsk]{display:none}.nav-item[data-astro-cid-afdttjsk]{margin:0}.nav-link[data-astro-cid-afdttjsk]{display:block;padding-block:var(--space-2);padding-inline:clamp(var(--space-3),2vw,var(--space-4));color:var(--color-text-secondary);text-decoration:none;font-weight:var(--font-weight-medium);font-size:var(--font-size-base);border-radius:var(--radius-md);position:relative;white-space:nowrap}@media (prefers-reduced-motion: no-preference){.nav-link[data-astro-cid-afdttjsk]{transition:var(--transition-all)}}.nav-link[data-astro-cid-afdttjsk]:hover,.nav-link[data-astro-cid-afdttjsk]:focus{color:var(--color-interactive-primary);background-color:var(--color-bg-hover)}.nav-link[data-astro-cid-afdttjsk].active{color:var(--color-interactive-primary);background-color:var(--color-bg-active)}.nav[data-astro-cid-afdttjsk].minimal{background-color:transparent;border-block-end:none}.nav-dialog[data-astro-cid-afdttjsk]{border:none;padding:0;inline-size:100%;max-inline-size:100%;block-size:100dvh;max-block-size:100dvh;margin:0;inset:0;background-color:var(--color-bg-secondary);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}@media (prefers-reduced-motion: no-preference){.nav-dialog[data-astro-cid-afdttjsk]{animation:fadeIn var(--duration-normal) var(--ease-default)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.nav-dialog[data-astro-cid-afdttjsk]::backdrop{background-color:#000c}@media (prefers-reduced-motion: no-preference){.nav-dialog[data-astro-cid-afdttjsk]::backdrop{animation:backdropFadeIn var(--duration-normal)}}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}.nav-dialog-header[data-astro-cid-afdttjsk]{display:flex;justify-content:space-between;align-items:center;padding-block:var(--space-responsive-sm);padding-inline:var(--space-container-padding);border-block-end:var(--border-width-thin) solid var(--color-border-primary)}.nav-dialog-spacer[data-astro-cid-afdttjsk]{inline-size:auto}.nav-dialog-close[data-astro-cid-afdttjsk]{background:none;border:none;cursor:pointer;padding-block:var(--space-2);padding-inline:var(--space-2);inline-size:40px;block-size:40px;position:relative;border-radius:var(--radius-md)}@media (prefers-reduced-motion: no-preference){.nav-dialog-close[data-astro-cid-afdttjsk]{transition:background-color var(--duration-normal) var(--ease-default)}}.nav-dialog-close[data-astro-cid-afdttjsk]:hover,.nav-dialog-close[data-astro-cid-afdttjsk]:focus{background-color:var(--color-bg-hover)}.nav-dialog-close-icon[data-astro-cid-afdttjsk],.nav-dialog-close-icon[data-astro-cid-afdttjsk]:before{display:block;inline-size:24px;block-size:2px;background-color:var(--color-text-primary);position:absolute;inset-inline-start:50%;inset-block-start:50%}.nav-dialog-close-icon[data-astro-cid-afdttjsk]{transform:translate(-50%,-50%) rotate(45deg)}.nav-dialog-close-icon[data-astro-cid-afdttjsk]:before{content:"";transform:translate(-50%,-50%) rotate(90deg)}.nav-menu-mobile[data-astro-cid-afdttjsk]{display:flex;flex-direction:column;padding-block:var(--space-responsive-lg);padding-inline:var(--space-container-padding);gap:var(--space-2);align-items:stretch;justify-content:flex-start}.nav-menu-mobile[data-astro-cid-afdttjsk] .nav-item[data-astro-cid-afdttjsk]{inline-size:100%;max-inline-size:100%}.nav-menu-mobile[data-astro-cid-afdttjsk] .nav-link[data-astro-cid-afdttjsk]{display:block;padding-block:clamp(var(--space-4),3vh,var(--space-5));padding-inline:clamp(var(--space-4),3vw,var(--space-6));border-radius:var(--radius-lg);border-block-end:none;font-size:var(--font-size-xl);text-align:center}.nav-menu-mobile[data-astro-cid-afdttjsk] .nav-link[data-astro-cid-afdttjsk]:hover,.nav-menu-mobile[data-astro-cid-afdttjsk] .nav-link[data-astro-cid-afdttjsk]:focus{background-color:var(--color-bg-hover)}.nav-menu-mobile[data-astro-cid-afdttjsk] .nav-link[data-astro-cid-afdttjsk].active{background-color:var(--color-bg-active)}@media (max-width: 48rem){.nav-toggle[data-astro-cid-afdttjsk]{display:block}.nav-menu-desktop[data-astro-cid-afdttjsk]{display:none}}.footer[data-astro-cid-35ed7um5]{background-color:var(--color-bg-inverted);color:var(--color-neutral-300);margin-block-start:auto}.footer-container[data-astro-cid-35ed7um5]{max-inline-size:var(--max-width-container);margin-inline:auto;padding-block-start:var(--space-responsive-xl);padding-block-end:var(--space-responsive-md);padding-inline:var(--space-container-padding)}.footer-content[data-astro-cid-35ed7um5]{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:var(--space-responsive-xl);margin-block-end:var(--space-responsive-lg);padding-block-end:var(--space-responsive-lg);border-block-end:var(--border-width-thin) solid var(--color-border-inverted)}.footer-section[data-astro-cid-35ed7um5]{display:flex;flex-direction:column;gap:var(--space-responsive-sm)}.footer-brand[data-astro-cid-35ed7um5]{max-inline-size:350px;grid-column:1 / -1}@media (min-width: 48rem){.footer-content[data-astro-cid-35ed7um5]{grid-template-columns:2fr 1fr 1fr}.footer-brand[data-astro-cid-35ed7um5]{grid-column:auto}}.footer-logo[data-astro-cid-35ed7um5]{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-inverted);text-decoration:none;display:inline-block;margin-block-end:var(--space-2)}@media (prefers-reduced-motion: no-preference){.footer-logo[data-astro-cid-35ed7um5]{transition:var(--transition-colors)}}.footer-logo[data-astro-cid-35ed7um5]:hover,.footer-logo[data-astro-cid-35ed7um5]:focus{color:var(--color-interactive-secondary)}.footer-description[data-astro-cid-35ed7um5]{font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-neutral-400);margin:0}.footer-heading[data-astro-cid-35ed7um5]{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-inverted);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin-block-start:0;margin-block-end:var(--space-3);margin-inline:0}.footer-links[data-astro-cid-35ed7um5],.footer-social[data-astro-cid-35ed7um5]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.footer-link[data-astro-cid-35ed7um5]{color:var(--color-neutral-300);text-decoration:none;font-size:var(--font-size-sm);display:inline-block}@media (prefers-reduced-motion: no-preference){.footer-link[data-astro-cid-35ed7um5]{transition:var(--transition-colors)}}.footer-link[data-astro-cid-35ed7um5]:hover,.footer-link[data-astro-cid-35ed7um5]:focus{color:var(--color-interactive-secondary)}.footer-social-link[data-astro-cid-35ed7um5]{color:var(--color-neutral-300);text-decoration:none;font-size:var(--font-size-sm);display:inline-flex;align-items:center;gap:var(--space-2)}@media (prefers-reduced-motion: no-preference){.footer-social-link[data-astro-cid-35ed7um5]{transition:var(--transition-colors)}}.footer-social-link[data-astro-cid-35ed7um5]:hover,.footer-social-link[data-astro-cid-35ed7um5]:focus{color:var(--color-interactive-secondary)}.footer-bottom[data-astro-cid-35ed7um5]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-responsive-sm);padding-block-start:var(--space-responsive-sm)}.footer-copyright[data-astro-cid-35ed7um5],.footer-credits[data-astro-cid-35ed7um5]{font-size:var(--font-size-sm);color:var(--color-neutral-400);margin:0}.footer-credits[data-astro-cid-35ed7um5] a[data-astro-cid-35ed7um5]{color:var(--color-interactive-secondary);text-decoration:none;font-weight:var(--font-weight-medium)}@media (prefers-reduced-motion: no-preference){.footer-credits[data-astro-cid-35ed7um5] a[data-astro-cid-35ed7um5]{transition:var(--transition-colors)}}.footer-credits[data-astro-cid-35ed7um5] a[data-astro-cid-35ed7um5]:hover,.footer-credits[data-astro-cid-35ed7um5] a[data-astro-cid-35ed7um5]:focus{color:var(--color-interactive-secondary-hover)}@media (max-width: 30rem){.footer-bottom[data-astro-cid-35ed7um5]{flex-direction:column;text-align:center;gap:var(--space-2)}}@layer tokens,theme,base,utilities;@layer tokens{:root{--color-neutral-50: #f8fafc;--color-neutral-100: #f1f5f9;--color-neutral-200: #e2e8f0;--color-neutral-300: #cbd5e1;--color-neutral-400: #94a3b8;--color-neutral-500: #64748b;--color-neutral-600: #475569;--color-neutral-700: #334155;--color-neutral-800: #1e293b;--color-neutral-900: #0f172a;--color-neutral-950: #020617;--color-primary-50: #eef2ff;--color-primary-100: #e0e7ff;--color-primary-200: #c7d2fe;--color-primary-300: #a5b4fc;--color-primary-400: #818cf8;--color-primary-500: #6366f1;--color-primary-600: #4f46e5;--color-primary-700: #4338ca;--color-primary-800: #3730a3;--color-primary-900: #312e81;--color-accent-50: #fffbeb;--color-accent-100: #fef3c7;--color-accent-200: #fde68a;--color-accent-500: #f59e0b;--color-accent-600: #d97706;--color-accent-700: #b45309;--color-accent-800: #92400e;--color-success-500: #22c55e;--color-error-500: #ef4444;--color-error-600: #dc2626;--font-family-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;--font-size-xs: clamp(.75rem, 1vw + .25rem, .75rem);--font-size-sm: clamp(.8125rem, 1.5vw + .25rem, .875rem);--font-size-base: clamp(.9375rem, 1.5vw + .25rem, 1rem);--font-size-lg: clamp(1rem, 2vw + .25rem, 1.125rem);--font-size-xl: clamp(1.125rem, 2vw + .5rem, 1.25rem);--font-size-2xl: clamp(1.25rem, 2.5vw + .5rem, 1.5rem);--font-size-3xl: clamp(1.5rem, 3vw + .5rem, 2rem);--font-size-4xl: clamp(1.875rem, 4vw + .5rem, 2.5rem);--font-size-5xl: clamp(2.25rem, 5vw + .5rem, 3rem);--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.2;--line-height-snug: 1.3;--line-height-normal: 1.5;--line-height-relaxed: 1.6;--line-height-loose: 1.8;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .05em;--space-0: 0;--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;--space-responsive-sm: clamp(.75rem, 2vw, 1rem);--space-responsive-md: clamp(1rem, 3vw, 1.5rem);--space-responsive-lg: clamp(1.5rem, 4vw, 2rem);--space-responsive-xl: clamp(2rem, 5vw, 3rem);--space-responsive-2xl: clamp(3rem, 6vw, 4rem);--space-container-padding: clamp(1rem, 4vw, 2rem);--space-section-gap: clamp(2rem, 5vw, 4rem);--max-width-prose: 65ch;--max-width-content: 800px;--max-width-container: 1200px;--max-width-wide: 1400px;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--border-width-thin: 1px;--border-width-medium: 2px;--border-width-thick: 4px;--duration-fast: .15s;--duration-normal: .2s;--duration-slow: .3s;--duration-slower: .5s;--ease-default: cubic-bezier(.4, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--transition-colors: color var(--duration-normal) var(--ease-default), background-color var(--duration-normal) var(--ease-default), border-color var(--duration-normal) var(--ease-default);--transition-transform: transform var(--duration-normal) var(--ease-default);--transition-all: all var(--duration-normal) var(--ease-default);--z-dropdown: 50;--z-sticky: 100;--z-modal: 200;--z-popover: 300;--z-tooltip: 400;--z-skip-link: 1000;--focus-ring-offset: 2px;--focus-ring-width: 2px}}:root{--color-bg-primary: var(--color-neutral-50);--color-bg-secondary: #ffffff;--color-bg-tertiary: var(--color-neutral-100);--color-bg-inverted: var(--color-neutral-900);--color-bg-hover: var(--color-neutral-100);--color-bg-active: var(--color-primary-50);--color-bg-code: var(--color-neutral-100);--color-bg-code-block: var(--color-neutral-800);--color-text-primary: var(--color-neutral-900);--color-text-secondary: var(--color-neutral-600);--color-text-tertiary: var(--color-neutral-500);--color-text-inverted: #ffffff;--color-text-muted: var(--color-neutral-400);--color-text-link: var(--color-primary-600);--color-text-link-hover: var(--color-primary-700);--color-text-code: #e11d48;--color-border-primary: var(--color-neutral-200);--color-border-secondary: var(--color-neutral-300);--color-border-focus: var(--color-primary-600);--color-border-hover: var(--color-primary-600);--color-border-inverted: var(--color-neutral-700);--color-interactive-primary: var(--color-primary-600);--color-interactive-primary-hover: var(--color-primary-700);--color-interactive-secondary: var(--color-primary-400);--color-interactive-secondary-hover: var(--color-primary-300);--color-status-warning-bg: var(--color-accent-100);--color-status-warning-text: var(--color-accent-800);--color-status-error-bg: #fef2f2;--color-status-error-text: var(--color-error-600);--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--focus-ring-color: var(--color-primary-600)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--color-bg-primary: var(--color-neutral-950);--color-bg-secondary: var(--color-neutral-900);--color-bg-tertiary: var(--color-neutral-800);--color-bg-inverted: var(--color-neutral-900);--color-bg-hover: var(--color-neutral-800);--color-bg-active: var(--color-neutral-800);--color-bg-code: var(--color-neutral-800);--color-bg-code-block: var(--color-neutral-900);--color-text-primary: var(--color-neutral-50);--color-text-secondary: var(--color-neutral-300);--color-text-tertiary: var(--color-neutral-400);--color-text-inverted: var(--color-neutral-50);--color-text-muted: var(--color-neutral-500);--color-text-link: var(--color-primary-400);--color-text-link-hover: var(--color-primary-300);--color-text-code: #f472b6;--color-border-primary: var(--color-neutral-700);--color-border-secondary: var(--color-neutral-600);--color-border-focus: var(--color-primary-500);--color-border-hover: var(--color-primary-500);--color-border-inverted: var(--color-neutral-200);--color-interactive-primary: var(--color-primary-300);--color-interactive-primary-hover: var(--color-primary-200);--color-interactive-secondary: var(--color-primary-300);--color-interactive-secondary-hover: var(--color-primary-300);--color-status-warning-bg: var(--color-accent-800);--color-status-warning-text: var(--color-accent-100);--color-status-error-bg: #450a0a;--color-status-error-text: #fecaca;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -2px rgb(0 0 0 / .3);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -4px rgb(0 0 0 / .3);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .5), 0 8px 10px -6px rgb(0 0 0 / .4);--focus-ring-color: var(--color-primary-500)}}[data-theme=dark]{--color-bg-primary: var(--color-neutral-950);--color-bg-secondary: var(--color-neutral-900);--color-bg-tertiary: var(--color-neutral-800);--color-bg-inverted: var(--color-neutral-900);--color-bg-hover: var(--color-neutral-800);--color-bg-active: var(--color-neutral-800);--color-bg-code: var(--color-neutral-800);--color-bg-code-block: var(--color-neutral-900);--color-text-primary: var(--color-neutral-50);--color-text-secondary: var(--color-neutral-300);--color-text-tertiary: var(--color-neutral-400);--color-text-inverted: var(--color-neutral-50);--color-text-muted: var(--color-neutral-500);--color-text-link: var(--color-primary-400);--color-text-link-hover: var(--color-primary-300);--color-text-code: #f472b6;--color-border-primary: var(--color-neutral-700);--color-border-secondary: var(--color-neutral-600);--color-border-focus: var(--color-primary-400);--color-border-hover: var(--color-primary-500);--color-border-inverted: var(--color-neutral-200);--color-interactive-primary: var(--color-primary-300);--color-interactive-primary-hover: var(--color-primary-400);--color-interactive-secondary: var(--color-primary-400);--color-interactive-secondary-hover: var(--color-primary-300);--color-status-warning-bg: var(--color-accent-800);--color-status-warning-text: var(--color-accent-100);--color-status-error-bg: #450a0a;--color-status-error-text: #fecaca;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -2px rgb(0 0 0 / .3);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -4px rgb(0 0 0 / .3);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .5), 0 8px 10px -6px rgb(0 0 0 / .4);--focus-ring-color: var(--color-primary-500)}@layer base{*,*:before,*:after{box-sizing:border-box}*{margin:0}html{scroll-behavior:smooth;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%;color-scheme:light dark}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}[data-theme=light]{color-scheme:light}[data-theme=dark]{color-scheme:dark}body{font-family:var(--font-family-sans);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--color-text-primary);background-color:var(--color-bg-primary);min-height:100vh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text-primary);text-wrap:balance}h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}p{text-wrap:pretty}a{color:var(--color-text-link);text-decoration-skip-ink:auto}@media (prefers-reduced-motion: no-preference){a{transition:var(--transition-colors)}}a:hover,a:focus{color:var(--color-text-link-hover)}img,picture,video,canvas,svg{display:block;max-width:100%}img{height:auto}[data-icon]{width:1em;height:1em;fill:none;stroke:currentColor}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none}code,kbd,samp,pre{font-family:var(--font-family-mono)}code{background-color:var(--color-bg-code);color:var(--color-text-code);padding:.125rem .375rem;border-radius:var(--radius-sm);font-size:.875em}pre{background-color:var(--color-bg-code-block);color:var(--color-text-inverted);padding:var(--space-6);border-radius:var(--radius-lg);overflow-x:auto;font-size:var(--font-size-sm);line-height:var(--line-height-loose)}pre code{background:none;color:inherit;padding:0;font-size:inherit}*:focus{outline:none}*:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}::selection{background-color:var(--color-primary-200);color:var(--color-neutral-900)}[data-theme=dark] ::selection{background-color:var(--color-primary-700);color:var(--color-neutral-50)}@supports (scrollbar-width: thin){*{scrollbar-width:thin;scrollbar-color:var(--color-neutral-400) transparent}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}}@layer utilities{.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.link{color:var(--color-text-link);text-decoration:underline;text-decoration-skip-ink:auto;text-underline-offset:.15em}@media (prefers-reduced-motion: no-preference){.link{transition:var(--transition-colors)}}.link:hover,.link:focus{color:var(--color-text-link-hover)}.link-nav{color:var(--color-text-secondary);text-decoration:none;font-weight:var(--font-weight-medium)}@media (prefers-reduced-motion: no-preference){.link-nav{transition:var(--transition-colors)}}.link-nav:hover,.link-nav:focus{color:var(--color-interactive-primary)}.link-button{display:inline-block;padding-block:var(--space-2);padding-inline:var(--space-4);color:var(--color-text-secondary);text-decoration:none;font-weight:var(--font-weight-medium);border-radius:var(--radius-md)}@media (prefers-reduced-motion: no-preference){.link-button{transition:var(--transition-all)}}.link-button:hover,.link-button:focus{color:var(--color-interactive-primary);background-color:var(--color-bg-hover)}.link-button.active{color:var(--color-interactive-primary);background-color:var(--color-bg-active)}.link-inverted{color:var(--color-neutral-300);text-decoration:none}@media (prefers-reduced-motion: no-preference){.link-inverted{transition:var(--transition-colors)}}.link-inverted:hover,.link-inverted:focus{color:var(--color-interactive-secondary)}.link-brand{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);text-decoration:none}@media (prefers-reduced-motion: no-preference){.link-brand{transition:var(--transition-colors)}}.link-brand:hover,.link-brand:focus{color:var(--color-interactive-primary)}.link-brand-inverted{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-inverted);text-decoration:none}@media (prefers-reduced-motion: no-preference){.link-brand-inverted{transition:var(--transition-colors)}}.link-brand-inverted:hover,.link-brand-inverted:focus{color:var(--color-interactive-secondary)}.link-card{text-decoration:none;color:inherit;display:block}.link-back{color:var(--color-interactive-primary);text-decoration:none;font-weight:var(--font-weight-medium);display:inline-flex;align-items:center}@media (prefers-reduced-motion: no-preference){.link-back{transition:var(--transition-colors)}}.link-back:hover,.link-back:focus{color:var(--color-interactive-primary-hover);text-decoration:underline}.link-cta{color:var(--color-interactive-primary);text-decoration:none;font-weight:var(--font-weight-medium)}@media (prefers-reduced-motion: no-preference){.link-cta{transition:var(--transition-colors)}}.link-cta:hover,.link-cta:focus{color:var(--color-interactive-primary-hover);text-decoration:underline}.link-external:after{content:" ↗";font-size:.8em}.container{width:100%;max-width:var(--max-width-container);margin-inline:auto;padding-inline:var(--space-container-padding)}.container--narrow{max-width:var(--max-width-content)}.container--prose{max-width:var(--max-width-prose)}.flow>*+*{margin-block-start:var(--flow-space, var(--space-6))}main{flex:1;display:grid;grid-template-columns:[full-start] minmax(var(--space-container-padding),1fr) [content-start] min(100% - var(--space-container-padding) * 2,calc(var(--max-width-container) - var(--space-container-padding) * 2)) [content-end] minmax(var(--space-container-padding),1fr) [full-end]}main>*{grid-column:content}main>.full-bleed{grid-column:full}}[data-theme=light] .astro-code{background-color:var(--color-neutral-400)}
