:root{--neutral-0: #ffffff;--neutral-50: #fafafa;--neutral-100: #f4f4f4;--neutral-150: #ededed;--neutral-200: #e5e5e5;--neutral-300: #d4d4d4;--neutral-400: #a3a3a3;--neutral-500: #737373;--neutral-600: #525252;--neutral-700: #404040;--neutral-800: #262626;--neutral-850: #1a1a1a;--neutral-900: #151515;--neutral-950: #111111;--neutral-1000: #0a0a0a;--mint-50: #ECFAF4;--mint-100: #D6F5E8;--mint-200: #B0EDD3;--mint-300: #84E1BB;--mint-400: #5DCAA5;--mint-500: #3BB68C;--mint-600: #2A9A75;--mint-700: #1F7A5E;--mint-800: #166049;--mint-900: #0E4A37;--mint-950: #07291E;--blue-50: #eff6ff;--blue-100: #dbeafe;--blue-200: #bfdbfe;--blue-300: #93c5fd;--blue-400: #60a5fa;--blue-500: #3b82f6;--blue-600: #2563eb;--blue-700: #1d4ed8;--blue-800: #1e40af;--blue-900: #1e3a8a;--blue-950: #172554;--green-50: #f0fdf4;--green-100: #dcfce7;--green-200: #bbf7d0;--green-300: #86efac;--green-400: #4ade80;--green-500: #22c55e;--green-600: #16a34a;--green-700: #15803d;--green-800: #166534;--green-900: #14532d;--green-950: #052e16;--amber-50: #fffbeb;--amber-100: #fef3c7;--amber-200: #fde68a;--amber-300: #fcd34d;--amber-400: #fbbf24;--amber-500: #f59e0b;--amber-600: #d97706;--amber-700: #b45309;--amber-800: #92400e;--amber-900: #78350f;--amber-950: #451a03;--red-50: #fef2f2;--red-100: #fee2e2;--red-200: #fecaca;--red-300: #fca5a5;--red-400: #f87171;--red-500: #ef4444;--red-600: #dc2626;--red-700: #b91c1c;--red-800: #991b1b;--red-900: #7f1d1d;--red-950: #450a0a;--purple-50: #faf5ff;--purple-100: #f3e8ff;--purple-200: #e9d5ff;--purple-300: #d8b4fe;--purple-400: #c084fc;--purple-500: #a855f7;--purple-600: #9333ea;--purple-700: #7e22ce;--purple-800: #6b21a8;--purple-900: #581c87;--purple-950: #3b0764;--orange-50: #fff7ed;--orange-100: #ffedd5;--orange-200: #fed7aa;--orange-300: #fdba74;--orange-400: #fb923c;--orange-500: #f97316;--orange-600: #ea580c;--orange-700: #c2410c;--orange-800: #9a3412;--orange-900: #7c2d12;--orange-950: #431407}:root{--font-display: "Geist", -apple-system, BlinkMacSystemFont, "SF Pro Display", system-ui, sans-serif;--font-body: "Geist", -apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-serif: "Source Serif Pro", Charter, "Iowan Old Style", "Times New Roman", serif;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-base: 15px;--text-md: 17px;--text-lg: 20px;--text-xl: 24px;--text-2xl: 32px;--text-3xl: 40px;--text-4xl: 48px;--text-5xl: 64px;--text-6xl: 88px;--text-display-sm: clamp(28px, 3.6vw, 40px);--text-display-md: clamp(32px, 4.2vw, 56px);--text-display-lg: clamp(44px, 6.2vw, 88px);--text-display-xl: clamp(56px, 8vw, 112px);--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--weight-extrabold: 800;--leading-tight: 1.05;--leading-snug: 1.25;--leading-normal: 1.55;--leading-relaxed: 1.75;--tracking-tighter: -.04em;--tracking-tight: -.02em;--tracking-normal: 0;--tracking-wide: .02em;--tracking-widest: .08em;--font-features-default: "ss01", "cv11";--font-features-numeric: "tnum";--font-features-display: "ss01", "cv11", "ss03"}:root{--space-0: 0;--space-px: 1px;--space-half: 2px;--space-1: 4px;--space-1h: 6px;--space-2: 8px;--space-2h: 10px;--space-3: 12px;--space-3h: 14px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-9: 36px;--space-10: 40px;--space-11: 44px;--space-12: 48px;--space-14: 56px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--space-28: 112px;--space-32: 128px;--gap-tight: var(--space-2);--gap-default: var(--space-3);--gap-comfortable: var(--space-5);--gap-loose: var(--space-8);--gap-section: var(--space-16);--container-xs: 480px;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1180px;--container-2xl: 1280px;--container-prose: 680px;--sidebar-width: 260px;--sidebar-width-collapsed: 56px;--header-height: 56px;--header-height-compact: 44px;--z-base: 0;--z-dropdown: 10;--z-sticky: 20;--z-fixed: 30;--z-banner: 40;--z-overlay: 50;--z-modal: 60;--z-popover: 70;--z-tooltip: 80;--z-toast: 90;--z-debug: 9999;--bp-sm: 640px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1180px;--bp-2xl: 1280px}:root{--radius-none: 0;--radius-xs: 4px;--radius-sm: 6px;--radius: 10px;--radius-md: 12px;--radius-lg: 14px;--radius-xl: 20px;--radius-2xl: 24px;--radius-3xl: 32px;--radius-pill: 9999px;--bw-thin: .5px;--bw-default: 1px;--bw-thick: 2px;--ring-width: 2px;--ring-offset: 2px;--ring-color: var(--border-focus);--ring-color-error: var(--red-500);--shadow-xs: 0 1px 1px rgba(10, 10, 10, .02);--shadow-sm: 0 1px 2px rgba(10, 10, 10, .04);--shadow-md: 0 4px 16px rgba(10, 10, 10, .06);--shadow-lg: 0 16px 48px rgba(10, 10, 10, .08);--shadow-xl: 0 24px 60px rgba(10, 10, 10, .1);--shadow-2xl: 0 32px 80px rgba(10, 10, 10, .14);--shadow-inner-sm: inset 0 1px 2px rgba(10, 10, 10, .04);--shadow-inner-md: inset 0 2px 6px rgba(10, 10, 10, .06);--glow-accent: 0 0 0 3px rgba(93, 202, 165, .32);--glow-success: 0 0 0 3px rgba(34, 197, 94, .32);--glow-warning: 0 0 0 3px rgba(245, 158, 11, .32);--glow-danger: 0 0 0 3px rgba(239, 68, 68, .32);--glow-info: 0 0 0 3px rgba(59, 130, 246, .32)}[data-theme=dark]{--shadow-xs: 0 1px 1px rgba(0, 0, 0, .32);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 8px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 24px 60px rgba(0, 0, 0, .45);--shadow-xl: 0 32px 80px rgba(0, 0, 0, .55);--shadow-2xl: 0 40px 100px rgba(0, 0, 0, .65);--shadow-inner-sm: inset 0 1px 2px rgba(0, 0, 0, .32);--shadow-inner-md: inset 0 2px 6px rgba(0, 0, 0, .4);--glow-accent: 0 0 0 3px rgba(93, 202, 165, .42);--glow-success: 0 0 0 3px rgba(74, 222, 128, .42);--glow-warning: 0 0 0 3px rgba(251, 191, 36, .42);--glow-danger: 0 0 0 3px rgba(248, 113, 113, .42);--glow-info: 0 0 0 3px rgba(96, 165, 250, .42)}:root{--duration-instant: 75ms;--duration-fast: .15s;--duration-base: .2s;--duration-slow: .3s;--duration-slower: .5s;--ease-linear: linear;--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);--ease-spring: cubic-bezier(.16, 1, .3, 1);--ease-snap: cubic-bezier(.7, 0, .84, 0);--animation-fade-in: fadeIn var(--duration-base) var(--ease-out);--animation-fade-out: fadeOut var(--duration-fast) var(--ease-in);--animation-slide-up: slideUp var(--duration-base) var(--ease-spring);--animation-slide-down: slideDown var(--duration-base) var(--ease-spring);--animation-scale-in: scaleIn var(--duration-fast) var(--ease-spring);--animation-scale-out: scaleOut var(--duration-fast) var(--ease-in);--animation-skeleton-shimmer: skeletonShimmer 1.6s linear infinite;--spring-stiffness-default: 260;--spring-damping-default: 28;--spring-stiffness-bouncy: 400;--spring-damping-bouncy: 18;--spring-stiffness-stiff: 500;--spring-damping-stiff: 40;--reduced-motion-duration: .01ms}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}@keyframes skeletonShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadein{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){:root{--duration-instant: var(--reduced-motion-duration);--duration-fast: var(--reduced-motion-duration);--duration-base: var(--reduced-motion-duration);--duration-slow: var(--reduced-motion-duration);--duration-slower: var(--reduced-motion-duration)}}:root,[data-theme=light]{--bg: var(--neutral-50);--bg-subtle: var(--neutral-100);--bg-elev: var(--neutral-0);--bg-card: var(--neutral-0);--bg-sunken: var(--neutral-100);--bg-overlay: var(--neutral-0);--bg-inverted: var(--neutral-1000);--bg-translucent: rgba(255, 255, 255, .72);--bg-selection: rgba(93, 202, 165, .18);--fg: var(--neutral-1000);--fg-dim: var(--neutral-700);--fg-muted: var(--neutral-500);--fg-faint: var(--neutral-400);--fg-on-accent: var(--neutral-1000);--fg-on-inverted: var(--neutral-50);--fg-link: var(--neutral-1000);--fg-link-hover: var(--mint-600);--fg-disabled: var(--neutral-400);--fg-placeholder: var(--neutral-400);--line: rgba(10, 10, 10, .08);--line-strong: rgba(10, 10, 10, .16);--border-subtle: rgba(10, 10, 10, .04);--border-default: var(--line);--border-strong: var(--line-strong);--border-focus: var(--neutral-1000);--border-disabled: rgba(10, 10, 10, .06);--border-error: var(--red-500);--border-thin: .5px;--border-width: 1px;--border-thick: 2px;--accent: var(--mint-400);--accent-ink: var(--neutral-1000);--accent-dim: rgba(93, 202, 165, .12);--accent-1-base: var(--accent);--accent-1-fg: var(--neutral-1000);--accent-1-ink: var(--neutral-1000);--accent-1-dim: var(--accent-dim);--accent-1-border: var(--mint-500);--accent-1-hover: var(--mint-500);--accent-1-active: var(--mint-600);--accent-1-muted: var(--mint-100);--accent-2-base: var(--blue-500);--accent-2-fg: var(--neutral-0);--accent-2-ink: var(--neutral-1000);--accent-2-dim: rgba(59, 130, 246, .12);--accent-2-border: var(--blue-600);--accent-2-hover: var(--blue-600);--accent-2-active: var(--blue-700);--accent-2-muted: var(--blue-100);--accent-3-base: var(--purple-500);--accent-3-fg: var(--neutral-0);--accent-3-ink: var(--neutral-1000);--accent-3-dim: rgba(168, 85, 247, .12);--accent-3-border: var(--purple-600);--accent-3-hover: var(--purple-600);--accent-3-active: var(--purple-700);--accent-3-muted: var(--purple-100);--success: var(--green-500);--success-base: var(--success);--success-fg: var(--neutral-0);--success-ink: var(--green-900);--success-dim: rgba(34, 197, 94, .12);--success-border: var(--green-600);--success-hover: var(--green-600);--success-active: var(--green-700);--success-muted: var(--green-100);--warning: var(--amber-500);--warning-base: var(--warning);--warning-fg: var(--neutral-1000);--warning-ink: var(--amber-900);--warning-dim: rgba(245, 158, 11, .12);--warning-border: var(--amber-600);--warning-hover: var(--amber-600);--warning-active: var(--amber-700);--warning-muted: var(--amber-100);--danger: var(--red-500);--danger-base: var(--danger);--danger-fg: var(--neutral-0);--danger-ink: var(--red-900);--danger-dim: rgba(239, 68, 68, .12);--danger-border: var(--red-600);--danger-hover: var(--red-600);--danger-active: var(--red-700);--danger-muted: var(--red-100);--info: var(--blue-500);--info-base: var(--info);--info-fg: var(--neutral-0);--info-ink: var(--blue-900);--info-dim: rgba(59, 130, 246, .12);--info-border: var(--blue-600);--info-hover: var(--blue-600);--info-active: var(--blue-700);--info-muted: var(--blue-100);--chart-1: var(--mint-400);--chart-2: var(--blue-500);--chart-3: var(--purple-500);--chart-4: var(--amber-500);--chart-5: var(--red-500);--chart-6: var(--green-500);--chart-7: var(--orange-500);--chart-8: var(--mint-700);--chart-9: var(--blue-700);--chart-10: var(--purple-700);--chart-11: var(--amber-700);--chart-12: var(--neutral-500);--state-hover: rgba(10, 10, 10, .04);--state-active: rgba(10, 10, 10, .08);--state-selected: var(--accent-dim);--state-disabled-bg: var(--neutral-100);--state-disabled-fg: var(--neutral-400);--state-focus-ring: var(--neutral-1000);--selection-bg: var(--bg-selection);--selection-fg: var(--fg);--scrollbar-thumb: rgba(10, 10, 10, .18);--scrollbar-thumb-hover: rgba(10, 10, 10, .32);--scrollbar-track: transparent;--code-bg: var(--neutral-100);--code-fg: var(--neutral-1000);--syntax-keyword: #7e22ce;--syntax-string: #15803d;--syntax-number: #b45309;--syntax-comment: var(--neutral-500);--syntax-function: #1d4ed8;--syntax-punctuation: var(--neutral-700);color-scheme:light}[data-theme=dark]{--bg: var(--neutral-1000);--bg-subtle: var(--neutral-950);--bg-elev: var(--neutral-950);--bg-card: var(--neutral-900);--bg-sunken: #070707;--bg-overlay: var(--neutral-900);--bg-inverted: var(--neutral-50);--bg-translucent: rgba(10, 10, 10, .72);--bg-selection: rgba(93, 202, 165, .24);--fg: #f5f5f5;--fg-dim: var(--neutral-400);--fg-muted: var(--neutral-500);--fg-faint: var(--neutral-600);--fg-on-accent: var(--neutral-1000);--fg-on-inverted: var(--neutral-1000);--fg-link: #f5f5f5;--fg-link-hover: var(--mint-300);--fg-disabled: var(--neutral-600);--fg-placeholder: var(--neutral-600);--line: rgba(255, 255, 255, .08);--line-strong: rgba(255, 255, 255, .14);--border-subtle: rgba(255, 255, 255, .04);--border-default: var(--line);--border-strong: var(--line-strong);--border-focus: #f5f5f5;--border-disabled: rgba(255, 255, 255, .06);--border-error: var(--red-500);--accent: var(--mint-400);--accent-ink: var(--neutral-1000);--accent-dim: rgba(93, 202, 165, .18);--accent-1-base: var(--accent);--accent-1-fg: var(--neutral-1000);--accent-1-ink: var(--neutral-1000);--accent-1-dim: var(--accent-dim);--accent-1-border: var(--mint-500);--accent-1-hover: var(--mint-300);--accent-1-active: var(--mint-500);--accent-1-muted: rgba(93, 202, 165, .18);--accent-2-base: var(--blue-400);--accent-2-fg: var(--neutral-1000);--accent-2-dim: rgba(96, 165, 250, .18);--accent-2-border: var(--blue-500);--accent-2-hover: var(--blue-300);--accent-2-active: var(--blue-500);--accent-2-muted: rgba(96, 165, 250, .18);--accent-3-base: var(--purple-400);--accent-3-fg: var(--neutral-1000);--accent-3-dim: rgba(192, 132, 252, .18);--accent-3-border: var(--purple-500);--accent-3-hover: var(--purple-300);--accent-3-active: var(--purple-500);--accent-3-muted: rgba(192, 132, 252, .18);--success: var(--green-400);--success-base: var(--success);--success-fg: var(--neutral-1000);--success-ink: var(--green-100);--success-dim: rgba(74, 222, 128, .18);--success-border: var(--green-500);--success-hover: var(--green-300);--success-active: var(--green-500);--success-muted: rgba(74, 222, 128, .18);--warning: var(--amber-400);--warning-base: var(--warning);--warning-fg: var(--neutral-1000);--warning-ink: var(--amber-100);--warning-dim: rgba(251, 191, 36, .18);--warning-border: var(--amber-500);--warning-hover: var(--amber-300);--warning-active: var(--amber-500);--warning-muted: rgba(251, 191, 36, .18);--danger: var(--red-400);--danger-base: var(--danger);--danger-fg: var(--neutral-1000);--danger-ink: var(--red-100);--danger-dim: rgba(248, 113, 113, .18);--danger-border: var(--red-500);--danger-hover: var(--red-300);--danger-active: var(--red-500);--danger-muted: rgba(248, 113, 113, .18);--info: var(--blue-400);--info-base: var(--info);--info-fg: var(--neutral-1000);--info-ink: var(--blue-100);--info-dim: rgba(96, 165, 250, .18);--info-border: var(--blue-500);--info-hover: var(--blue-300);--info-active: var(--blue-500);--info-muted: rgba(96, 165, 250, .18);--chart-1: var(--mint-400);--chart-2: var(--blue-400);--chart-3: var(--purple-400);--chart-4: var(--amber-400);--chart-5: var(--red-400);--chart-6: var(--green-400);--chart-7: var(--orange-400);--chart-8: var(--mint-200);--chart-9: var(--blue-200);--chart-10: var(--purple-200);--chart-11: var(--amber-200);--chart-12: var(--neutral-400);--state-hover: rgba(255, 255, 255, .06);--state-active: rgba(255, 255, 255, .12);--state-selected: var(--accent-dim);--state-disabled-bg: var(--neutral-900);--state-disabled-fg: var(--neutral-600);--state-focus-ring: #f5f5f5;--selection-bg: var(--bg-selection);--selection-fg: var(--fg);--scrollbar-thumb: rgba(255, 255, 255, .18);--scrollbar-thumb-hover: rgba(255, 255, 255, .32);--scrollbar-track: transparent;--code-bg: var(--neutral-950);--code-fg: #f5f5f5;--syntax-keyword: var(--purple-400);--syntax-string: var(--green-400);--syntax-number: var(--amber-400);--syntax-comment: var(--neutral-500);--syntax-function: var(--blue-400);--syntax-punctuation: var(--neutral-400);color-scheme:dark}:root{--icon-xs: 12px;--icon-sm: 14px;--icon-md: 16px;--icon-lg: 20px;--icon-xl: 24px;--icon-2xl: 32px;--icon-stroke-thin: 1;--icon-stroke-default: 1.5;--icon-stroke-bold: 2;--icon-fg: var(--fg);--icon-muted: var(--fg-muted);--icon-accent: var(--accent);--button-primary-bg: var(--neutral-1000);--button-primary-fg: var(--neutral-0);--button-primary-border: transparent;--button-primary-bg-hover: var(--neutral-800);--button-primary-bg-active: var(--neutral-700);--button-primary-shadow: var(--shadow-sm);--button-secondary-bg: var(--bg-card);--button-secondary-fg: var(--fg);--button-secondary-border: var(--border-default);--button-secondary-bg-hover: var(--state-hover);--button-secondary-bg-active: var(--state-active);--button-secondary-shadow: none;--button-ghost-bg: transparent;--button-ghost-fg: var(--fg);--button-ghost-border: transparent;--button-ghost-bg-hover: var(--state-hover);--button-ghost-bg-active: var(--state-active);--button-ghost-shadow: none;--button-destructive-bg: var(--danger);--button-destructive-fg: var(--danger-fg);--button-destructive-border: transparent;--button-destructive-bg-hover: var(--danger-hover);--button-destructive-bg-active: var(--danger-active);--button-accent-bg: var(--accent);--button-accent-fg: var(--accent-ink);--button-accent-border: transparent;--button-accent-bg-hover: var(--accent-1-hover);--button-accent-bg-active: var(--accent-1-active);--button-sm-height: 32px;--button-sm-padding-x: 12px;--button-sm-font-size: var(--text-sm);--button-sm-radius: var(--radius-sm);--button-md-height: 40px;--button-md-padding-x: 16px;--button-md-font-size: var(--text-base);--button-md-radius: var(--radius);--button-lg-height: 48px;--button-lg-padding-x: 24px;--button-lg-font-size: var(--text-md);--button-lg-radius: var(--radius-md);--card-bg: var(--bg-elev);--card-fg: var(--fg);--card-border: var(--border-default);--card-padding: 24px;--card-radius: var(--radius-lg);--card-shadow: none;--card-shadow-hover: var(--shadow-sm);--input-height-sm: 32px;--input-height: 40px;--input-height-lg: 48px;--input-padding-x: 14px;--input-radius: var(--radius);--input-bg: var(--bg);--input-bg-disabled: var(--state-disabled-bg);--input-fg: var(--fg);--input-border: var(--border-default);--input-border-hover: var(--border-strong);--input-border-focus: var(--border-focus);--input-border-error: var(--border-error);--input-placeholder: var(--fg-placeholder);--input-font-size: var(--text-base);--dialog-bg: var(--bg-overlay);--dialog-fg: var(--fg);--dialog-overlay: rgba(10, 10, 10, .4);--dialog-border: var(--border-default);--dialog-radius: var(--radius-xl);--dialog-padding: 32px;--dialog-shadow: var(--shadow-xl);--dialog-max-width: 560px;--popover-bg: var(--bg-overlay);--popover-fg: var(--fg);--popover-border: var(--border-default);--popover-radius: var(--radius);--popover-shadow: var(--shadow-md);--popover-padding: 12px;--tooltip-bg: var(--neutral-1000);--tooltip-fg: var(--neutral-0);--tooltip-border: transparent;--tooltip-radius: var(--radius-sm);--tooltip-padding: 6px 10px;--tooltip-font-size: var(--text-xs);--tooltip-shadow: var(--shadow-md);--sidebar-bg: var(--bg-elev);--sidebar-fg: var(--fg-dim);--sidebar-fg-active: var(--fg);--sidebar-border: var(--border-default);--sidebar-item-bg-hover: var(--accent-dim);--sidebar-item-bg-active: var(--accent-dim);--sidebar-item-fg: var(--fg-dim);--sidebar-item-fg-active: var(--fg);--sidebar-section-fg: var(--fg-muted);--table-header-bg: var(--bg-subtle);--table-header-fg: var(--fg-muted);--table-row-bg: transparent;--table-row-bg-alt: var(--bg-subtle);--table-row-bg-hover: var(--state-hover);--table-border: var(--border-default);--table-cell-padding: 12px 16px;--tabs-bg: transparent;--tabs-fg: var(--fg-dim);--tabs-fg-active: var(--fg);--tabs-indicator: var(--fg);--tabs-padding: 7px 12px;--tabs-bg-active: var(--accent-dim);--badge-bg: var(--bg-elev);--badge-fg: var(--fg-dim);--badge-border: var(--border-default);--badge-radius: var(--radius-pill);--badge-padding: 4px 10px;--badge-font-size: var(--text-xs);--avatar-bg: var(--bg-card);--avatar-fg: var(--fg);--avatar-border: var(--border-default);--avatar-size-xs: 24px;--avatar-size-sm: 32px;--avatar-size-md: 40px;--avatar-size-lg: 48px;--avatar-size-xl: 64px;--avatar-size-2xl: 96px;--skeleton-bg: var(--bg-subtle);--skeleton-shimmer: linear-gradient( 90deg, transparent 0%, rgba(10, 10, 10, .06) 50%, transparent 100% );--toast-bg: var(--bg-overlay);--toast-fg: var(--fg);--toast-border: var(--border-default);--toast-shadow: var(--shadow-lg);--toast-radius: var(--radius);--toast-padding: 16px 20px;--disabled-opacity: .5;--high-contrast-border-multiplier: 1.5}[data-theme=dark]{--button-primary-bg: #f5f5f5;--button-primary-fg: var(--neutral-1000);--button-primary-bg-hover: var(--neutral-200);--button-primary-bg-active: var(--neutral-300);--button-secondary-bg: var(--bg-card);--button-secondary-fg: var(--fg);--tooltip-bg: #f5f5f5;--tooltip-fg: var(--neutral-1000);--dialog-overlay: rgba(0, 0, 0, .6);--skeleton-shimmer: linear-gradient( 90deg, transparent 0%, rgba(255, 255, 255, .06) 50%, transparent 100% )}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-weight:var(--weight-regular);overflow-x:hidden;line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:var(--font-features-default);transition:background-color var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}img,svg{display:block;max-width:100%}input,textarea{font-family:inherit}::selection{background:var(--selection-bg);color:var(--selection-fg)}section{position:relative;z-index:var(--z-base)}.wrap{max-width:var(--container-xl);margin:0 auto;padding:0 32px}@media(max-width:720px){.wrap{padding:0 20px}}.eyebrow{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-regular);letter-spacing:var(--tracking-normal);color:var(--fg-muted);margin-bottom:20px}.h1{font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--text-display-lg);line-height:.98;letter-spacing:var(--tracking-tighter);color:var(--fg)}.h2{font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--text-display-md);line-height:1.02;letter-spacing:-.035em;color:var(--fg)}.h3{font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--text-xl);letter-spacing:var(--tracking-tight);color:var(--fg)}.lead{font-size:var(--text-md);color:var(--fg-dim);line-height:var(--leading-normal);font-weight:var(--weight-regular);letter-spacing:-.01em}.mono{font-family:var(--font-mono);font-size:.92em;color:var(--fg-muted)}.muted{color:var(--fg-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:var(--accent-ink);padding:14px 26px;border-radius:var(--radius-pill);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);letter-spacing:-.01em;transition:transform var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out);white-space:nowrap}.btn:hover{opacity:.88;transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn svg{transition:transform var(--duration-base) var(--ease-out)}.btn:hover svg{transform:translate(3px)}.btn-lg{padding:18px 32px;font-size:var(--text-md)}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 22px;background:transparent;color:var(--fg);border:1px solid var(--line-strong);border-radius:var(--radius-pill);font-size:var(--text-base);font-weight:var(--weight-medium);letter-spacing:-.01em;transition:border-color var(--duration-fast),background var(--duration-fast)}.btn-ghost:hover{border-color:var(--fg);background:var(--accent-dim)}.btn-sm{display:inline-flex;align-items:center;gap:6px;background:var(--accent);color:var(--accent-ink);padding:9px 18px;border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:-.01em;transition:opacity var(--duration-fast),transform var(--duration-fast)}.btn-sm:hover{opacity:.88;transform:translateY(-1px)}.badge{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-regular);color:var(--fg-dim);letter-spacing:var(--tracking-normal)}.badge-dot{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px #22c55e26}.line{width:100%;height:1px;background:var(--line);position:relative;z-index:var(--z-base)}.card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-lg);transition:border-color var(--duration-base),transform var(--duration-base)}.card:hover{border-color:var(--line-strong)}.fos-prose{max-width:760px;margin:0 auto;font-family:var(--font-body);font-size:17px;line-height:1.7;color:var(--fg)}.fos-prose>:first-child{margin-top:0}.fos-prose h1{font-family:var(--font-display);font-weight:500;font-size:clamp(32px,4.5vw,48px);letter-spacing:-.03em;line-height:1.1;margin:0 0 24px;color:var(--fg)}.fos-prose h2{font-family:var(--font-display);font-weight:500;font-size:26px;letter-spacing:-.02em;margin:48px 0 16px;color:var(--fg)}.fos-prose h3{font-family:var(--font-display);font-weight:500;font-size:20px;letter-spacing:-.02em;margin:32px 0 12px;color:var(--fg)}.fos-prose h4{font-weight:600;font-size:16px;margin:24px 0 10px}.fos-prose p{margin:0 0 18px}.fos-prose ul,.fos-prose ol{margin:0 0 18px;padding-left:24px}.fos-prose li{margin:6px 0}.fos-prose a{color:var(--fg);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:4px}.fos-prose a:hover{text-decoration-color:var(--fg)}.fos-prose strong{color:var(--fg);font-weight:600}.fos-prose em{font-style:italic}.fos-prose blockquote{border-left:3px solid var(--line-strong);padding-left:18px;margin:24px 0;color:var(--fg-dim);font-style:italic}.fos-prose hr{border:none;border-top:1px solid var(--line);margin:40px 0}.fos-prose code{font-family:var(--font-mono);font-size:14px;background:var(--bg-elev);border:1px solid var(--line);padding:2px 6px;border-radius:4px}.fos-prose pre{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px;overflow-x:auto;margin:24px 0}.fos-prose pre code{border:none;padding:0;background:transparent}.fos-prose img{max-width:100%;border-radius:var(--radius-lg);margin:24px 0}.fos-prose table{width:100%;border-collapse:collapse;margin:24px 0;font-size:15px}.fos-prose th,.fos-prose td{border:1px solid var(--line);padding:10px 12px;text-align:left}.fos-prose th{background:var(--bg-elev);font-weight:600}img[src$="/logo-fos.svg"],img[src$="/logo-fos.png"]{transition:filter var(--duration-base) var(--ease-out)}[data-theme=dark] img[src$="/logo-fos.svg"],[data-theme=dark] img[src$="/logo-fos.png"]{filter:invert(1)}html[data-theme=light]{color-scheme:light}.section-head{max-width:760px;margin-bottom:64px}.section-head>.eyebrow{margin-bottom:20px}.section-head>.h2{margin:0}.section-head>.lead{margin-top:22px;max-width:620px}@media(max-width:720px){.section-head{margin-bottom:44px}.section-head>.lead{margin-top:16px}}.js-reveal [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .65s cubic-bezier(.2,.7,.2,1),transform .65s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}.js-reveal [data-reveal].in-view{opacity:1;transform:none}.js-reveal [data-reveal][data-reveal-delay="1"]{transition-delay:.06s}.js-reveal [data-reveal][data-reveal-delay="2"]{transition-delay:.12s}.js-reveal [data-reveal][data-reveal-delay="3"]{transition-delay:.18s}.js-reveal [data-reveal][data-reveal-delay="4"]{transition-delay:.24s}.js-reveal [data-reveal][data-reveal-delay="5"]{transition-delay:.3s}[data-count-to]{font-variant-numeric:tabular-nums}.lang-switch[data-astro-cid-a2mxz4y6]{display:inline-flex;gap:2px;border:1px solid var(--line);border-radius:9999px;padding:2px;align-items:center}.lang-link[data-astro-cid-a2mxz4y6]{font-family:var(--font-mono, ui-monospace, monospace);font-size:11px;letter-spacing:.04em;padding:4px 9px;border-radius:9999px;color:var(--fg-muted);transition:background .15s,color .15s}.lang-link[data-astro-cid-a2mxz4y6]:hover{color:var(--fg)}.lang-link[data-astro-cid-a2mxz4y6].active{background:var(--fg);color:var(--bg)}.logo-mark[data-astro-cid-tvrurpns]{display:inline-flex;width:var(--size, 22px);height:var(--size, 22px)}.logo-mark[data-astro-cid-tvrurpns] img[data-astro-cid-tvrurpns]{width:100%;height:100%;display:block;border-radius:calc(var(--size, 22px) * .18)}.logo-lockup[data-astro-cid-tvrurpns]{display:inline-flex;align-items:center}.logo-lockup[data-astro-cid-tvrurpns] img[data-astro-cid-tvrurpns]{height:var(--height, 22px);width:auto;display:block}.nav[data-astro-cid-dmqpwcec]{position:fixed;top:0;left:0;right:0;z-index:100;backdrop-filter:blur(20px) saturate(180%);background:color-mix(in oklab,var(--bg) 80%,transparent);border-bottom:1px solid var(--line)}.nav-inner[data-astro-cid-dmqpwcec]{max-width:1180px;margin:0 auto;padding:14px 32px;display:flex;align-items:center;justify-content:space-between}.logo-link[data-astro-cid-dmqpwcec]{display:inline-flex;align-items:center}.nav-right[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:18px}.nav-links[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:28px;margin-right:8px}.nav-links[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]{font-size:14px;color:var(--fg-dim);font-weight:400;letter-spacing:-.01em;transition:color .18s}.nav-links[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]:hover{color:var(--fg)}.btn-sm[data-astro-cid-dmqpwcec]{display:inline-flex;align-items:center;padding:8px 16px;background:var(--fg);color:var(--bg);border-radius:9999px;font-size:13px;font-weight:500;transition:opacity .18s,transform .18s}.btn-sm[data-astro-cid-dmqpwcec]:hover{opacity:.88;transform:translateY(-1px)}.btn-outline[data-astro-cid-dmqpwcec]{display:inline-flex;align-items:center;padding:8px 16px;background:transparent;color:var(--fg);border:1px solid var(--line-strong);border-radius:9999px;font-size:13px;font-weight:500;transition:background .18s,border-color .18s,transform .18s}.btn-outline[data-astro-cid-dmqpwcec]:hover{background:var(--bg-sunken);border-color:var(--fg-dim);transform:translateY(-1px)}.burger[data-astro-cid-dmqpwcec]{display:none;width:40px;height:40px;border:1px solid var(--line);border-radius:9999px;background:transparent;color:var(--fg-dim);flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;transition:border-color .18s,color .18s,background .18s}.burger[data-astro-cid-dmqpwcec]:hover{border-color:var(--line-strong);color:var(--fg)}.burger[data-astro-cid-dmqpwcec] span[data-astro-cid-dmqpwcec]{display:block;width:16px;height:1.5px;background:currentColor;border-radius:2px;transition:transform .25s,opacity .25s}body.drawer-open .burger[data-astro-cid-dmqpwcec] span[data-astro-cid-dmqpwcec]:nth-child(1){transform:translateY(5.5px) rotate(45deg)}body.drawer-open .burger[data-astro-cid-dmqpwcec] span[data-astro-cid-dmqpwcec]:nth-child(2){opacity:0}body.drawer-open .burger[data-astro-cid-dmqpwcec] span[data-astro-cid-dmqpwcec]:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}.drawer-backdrop[data-astro-cid-dmqpwcec]{position:fixed;inset:0;z-index:200;background:#0006;opacity:0;pointer-events:none;transition:opacity .25s}body.drawer-open .drawer-backdrop[data-astro-cid-dmqpwcec]{opacity:1;pointer-events:auto}.drawer[data-astro-cid-dmqpwcec]{position:fixed;top:0;right:0;bottom:0;width:min(340px,88vw);z-index:201;background:var(--bg-elev);border-left:1px solid var(--line);box-shadow:-24px 0 48px -16px #0000002e;display:flex;flex-direction:column;transform:translate(100%);transition:transform .28s cubic-bezier(.2,.7,.2,1);overscroll-behavior:contain}body.drawer-open .drawer[data-astro-cid-dmqpwcec]{transform:translate(0)}.drawer-head[data-astro-cid-dmqpwcec]{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--line)}.drawer-eyebrow[data-astro-cid-dmqpwcec]{font-size:11px;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.08em}.drawer-close[data-astro-cid-dmqpwcec]{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:9999px;color:var(--fg-dim);background:transparent;cursor:pointer;transition:border-color .18s,color .18s}.drawer-close[data-astro-cid-dmqpwcec]:hover{border-color:var(--line-strong);color:var(--fg)}.drawer-scroll[data-astro-cid-dmqpwcec]{flex:1;overflow-y:auto;padding:14px 12px 8px}.drawer-links[data-astro-cid-dmqpwcec]{display:flex;flex-direction:column;margin-bottom:8px}.drawer-links[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]{display:flex;align-items:center;padding:12px 14px;border-radius:10px;color:var(--fg);font-family:var(--font-display);font-size:18px;font-weight:500;letter-spacing:-.01em;transition:background .15s,color .15s}.drawer-links[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]:hover{background:var(--bg-sunken)}.drawer-row[data-astro-cid-dmqpwcec]{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;margin:4px 0 16px;background:var(--bg-card);border:1px solid var(--line);border-radius:10px}.drawer-section[data-astro-cid-dmqpwcec]{display:flex;flex-direction:column;padding:14px 14px 8px;border-top:1px solid var(--line);margin-top:4px}.drawer-section[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]{display:block;padding:8px 0;color:var(--fg-dim);font-size:14px;transition:color .15s}.drawer-section[data-astro-cid-dmqpwcec] a[data-astro-cid-dmqpwcec]:hover{color:var(--fg)}.drawer-foot-label[data-astro-cid-dmqpwcec]{font-size:11px;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.drawer-foot[data-astro-cid-dmqpwcec]{padding:14px 22px 24px;border-top:1px solid var(--line)}.drawer-buttons[data-astro-cid-dmqpwcec]{display:flex;flex-direction:column;gap:8px}.drawer-btn[data-astro-cid-dmqpwcec]{display:flex;text-align:center;justify-content:center;padding:14px 16px;font-size:14px}@media(max-width:900px){.nav-links[data-astro-cid-dmqpwcec],.nav-lang[data-astro-cid-dmqpwcec],.nav-login[data-astro-cid-dmqpwcec]{display:none}.burger[data-astro-cid-dmqpwcec]{display:inline-flex}}@media(max-width:720px){.nav-inner[data-astro-cid-dmqpwcec]{padding:12px 20px}.nav-right[data-astro-cid-dmqpwcec]{gap:10px}}body.drawer-open{overflow:hidden}.footer[data-astro-cid-sz7xmlte]{padding:100px 0 40px;border-top:1px solid var(--line);margin-top:120px}.footer-grid[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:1.2fr 2fr;gap:80px;padding-bottom:60px}.logo-link[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;margin-bottom:16px}.footer-brand[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{font-size:14px;color:var(--fg-muted);max-width:280px;line-height:1.55}.footer-cols[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.footer-cols[data-astro-cid-sz7xmlte] h4[data-astro-cid-sz7xmlte]{font-family:var(--font-mono);font-size:12px;font-weight:400;color:var(--fg-muted);margin-bottom:18px}.footer-cols[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{display:block;font-size:14px;color:var(--fg-dim);margin-bottom:10px;transition:color .18s}.footer-cols[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--fg)}.footer-bottom[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;padding-top:30px;border-top:1px solid var(--line);font-size:12px;color:var(--fg-faint)}@media(max-width:720px){.footer-grid[data-astro-cid-sz7xmlte]{grid-template-columns:1fr;gap:50px}.footer-cols[data-astro-cid-sz7xmlte]{grid-template-columns:repeat(2,1fr)}.footer-bottom[data-astro-cid-sz7xmlte]{flex-direction:column;gap:8px}}
