:root{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--bg-tertiary: #e5e5e5;--text-primary: #111827;--text-secondary: #666666;--text-muted: #999999;--accent: #3B82F6;--accent-hover: #2563eb;--success: #22c55e;--border: #e5e5e5;--shadow: rgba(0, 0, 0, .1);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, monospace;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease}@media (prefers-color-scheme: dark){:root{--bg-primary: #1a1a1a;--bg-secondary: #0d0d0d;--bg-tertiary: #2a2a2a;--text-primary: #f5f5f5;--text-secondary: #a0a0a0;--text-muted: #666666;--accent: #3B82F6;--accent-hover: #60a5fa;--success: #4ade80;--border: #333333;--shadow: rgba(0, 0, 0, .3)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);scroll-behavior:smooth}body{line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:600;color:var(--text-primary)}h1{font-size:3rem;font-weight:700;letter-spacing:-.02em}h2{font-size:2.25rem;letter-spacing:-.01em}h3{font-size:1.5rem}p{color:var(--text-secondary);font-size:1.125rem;line-height:1.7}a{color:var(--accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-hover)}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-xl)}.btn{display:inline-flex;align-items:center;gap:var(--space-sm);padding:.875rem 1.75rem;font-size:1rem;font-weight:500;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);border:none;text-decoration:none}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 4px 6px -1px var(--shadow),0 2px 4px -2px var(--shadow)}.btn-primary:hover{background:var(--accent-hover);color:#fff;transform:translateY(-2px);box-shadow:0 10px 15px -3px var(--shadow),0 4px 6px -4px var(--shadow)}.btn-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.card{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-2xl);transition:all var(--transition-base)}.card:hover{transform:translateY(-4px);box-shadow:0 20px 25px -5px var(--shadow),0 8px 10px -6px var(--shadow)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{opacity:0;animation:fadeInUp .6s ease forwards}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (max-width: 768px){h1{font-size:2.25rem}h2{font-size:1.875rem}h3{font-size:1.25rem}p{font-size:1rem}}.text-center{text-align:center}.mt-1{margin-top:var(--space-md)}.mt-2{margin-top:var(--space-lg)}.mt-3{margin-top:var(--space-xl)}.mt-4{margin-top:var(--space-2xl)}.mb-1{margin-bottom:var(--space-md)}.mb-2{margin-bottom:var(--space-lg)}.mb-3{margin-bottom:var(--space-xl)}.mb-4{margin-bottom:var(--space-2xl)}.prose{line-height:1.8;color:var(--text-secondary)}.prose h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:2rem;border-bottom:1px solid var(--border);padding-bottom:1rem}.prose h2{font-size:1.875rem;color:var(--text-primary);margin-top:3rem;margin-bottom:1.5rem}.prose h1+h2{margin-top:2rem}.prose h3{font-size:1.5rem;color:var(--text-primary);margin:2rem 0 1rem}.prose p{margin-bottom:1.5rem;line-height:1.8}.prose ol,.prose ul{margin:1.5rem 0 2rem 1.5rem;line-height:1.9}.prose li{margin-bottom:.75rem;color:var(--text-secondary)}.prose a{color:var(--accent);text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color var(--transition-fast)}.prose a:hover{text-decoration-color:var(--accent)}.prose code{background:#3b82f61a;color:var(--accent);padding:.2rem .5rem;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.875rem;white-space:nowrap}.prose pre{background:var(--bg-secondary);padding:1.5rem;border-radius:var(--radius-md);overflow-x:auto;margin:1.5rem 0;border:1px solid var(--border)}.prose pre code{background:none;padding:0;color:var(--text-primary);font-size:.9rem;white-space:pre}.prose table{width:100%;border-collapse:collapse;margin:1.5rem 0}.prose th,.prose td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border)}.prose th{background:var(--bg-secondary);font-weight:600;color:var(--text-primary)}.prose blockquote{margin:1.5rem 0;padding-left:1.5rem;border-left:4px solid var(--accent);color:var(--text-secondary);font-style:italic}.prose hr{margin:2rem 0;border:none;border-top:1px solid var(--border)}@media (max-width: 768px){.prose h1{font-size:2rem}.prose h2{font-size:1.5rem}.prose h3{font-size:1.25rem}.prose ol,.prose ul{margin-left:1rem}}header[data-astro-cid-37fxchfa]{position:sticky;top:0;z-index:100;background:var(--bg-primary);border-bottom:1px solid var(--border);backdrop-filter:blur(10px);background:#fffc}@media (prefers-color-scheme: dark){header[data-astro-cid-37fxchfa]{background:#1a1a1acc}}.nav-content[data-astro-cid-37fxchfa]{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}.logo[data-astro-cid-37fxchfa]{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;color:var(--text-primary);text-decoration:none}.logo-icon[data-astro-cid-37fxchfa]{width:1.5rem;height:1.5rem;stroke:var(--accent)}.nav-links[data-astro-cid-37fxchfa]{display:flex;gap:2rem}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{color:var(--text-secondary);font-weight:500;transition:color var(--transition-fast)}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{color:var(--accent)}footer[data-astro-cid-37fxchfa]{background:var(--bg-secondary);border-top:1px solid var(--border);margin-top:6rem;padding:3rem 0 1.5rem}.footer-content[data-astro-cid-37fxchfa]{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-bottom:2rem}.footer-section[data-astro-cid-37fxchfa] h4[data-astro-cid-37fxchfa]{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-primary);margin-bottom:1rem}.footer-section[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa],.footer-section[data-astro-cid-37fxchfa] p[data-astro-cid-37fxchfa]{display:block;color:var(--text-secondary);font-size:.95rem;margin-bottom:.5rem;text-decoration:none}.footer-section[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{color:var(--accent)}.footer-bottom[data-astro-cid-37fxchfa]{border-top:1px solid var(--border);padding-top:1.5rem;text-align:center}.footer-bottom[data-astro-cid-37fxchfa] p[data-astro-cid-37fxchfa]{color:var(--text-secondary);font-size:.875rem}@media (max-width: 768px){.nav-links[data-astro-cid-37fxchfa]{gap:1rem}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{font-size:.9rem}.footer-content[data-astro-cid-37fxchfa]{grid-template-columns:repeat(2,1fr)}}
