:root{--color-sky-50: #f0f9ff;--color-sky-100: #e0f2fe;--color-sky-200: #bae6fd;--color-sky-300: #7dd3fc;--color-sky-400: #38bdf8;--color-sky-500: #0ea5e9;--color-sky-600: #0284c7;--color-sky-700: #0369a1;--color-sky-800: #075985;--color-sky-900: #0c4a6e;--color-slate-50: #f8fafc;--color-slate-100: #f1f5f9;--color-slate-200: #e2e8f0;--color-slate-300: #cbd5e1;--color-slate-400: #94a3b8;--color-slate-500: #64748b;--color-slate-600: #475569;--color-slate-700: #334155;--color-slate-800: #1e293b;--color-slate-900: #0f172a;--color-slate-950: #020617}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,system-ui,sans-serif;color:var(--color-slate-800);background:#fff;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.container{max-width:1200px;margin:0 auto;padding:0 24px}.section{padding:96px 0}.section-alt{padding:96px 0;background:var(--color-slate-50)}.btn-primary{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;background:var(--color-sky-500);color:#fff;font-weight:600;font-size:16px;border-radius:12px;border:none;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-primary:hover{background:var(--color-sky-600);transform:translateY(-1px);box-shadow:0 4px 16px #7c3aed59}.btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;background:#fff;color:var(--color-slate-700);font-weight:600;font-size:16px;border-radius:12px;border:1px solid var(--color-slate-200);cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-secondary:hover{background:var(--color-slate-50);border-color:var(--color-slate-300)}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--color-sky-50);color:var(--color-sky-700);font-size:13px;font-weight:600;border-radius:100px;border:1px solid var(--color-sky-200)}.gradient-text{background:linear-gradient(135deg,var(--color-sky-500),var(--color-sky-700));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes fade-in-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.animate-fade-in-up{animation:fade-in-up .6s ease-out forwards}.animate-fade-in-up-delay-1{animation:fade-in-up .6s ease-out .1s forwards;opacity:0}.animate-fade-in-up-delay-2{animation:fade-in-up .6s ease-out .2s forwards;opacity:0}.animate-fade-in-up-delay-3{animation:fade-in-up .6s ease-out .3s forwards;opacity:0}.animate-float{animation:float 6s ease-in-out infinite}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:700;color:var(--color-slate-900)}.section-title{font-size:clamp(32px,4vw,48px);text-align:center;margin-bottom:16px}.section-subtitle{font-size:18px;color:var(--color-slate-500);text-align:center;max-width:640px;margin:0 auto 64px}@media(max-width:768px){.section,.section-alt{padding:64px 0}.container{padding:0 16px}}.blog-post{padding:136px 0 64px;min-height:100vh}.blog-post .container{max-width:720px}.back-link{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:var(--color-slate-500);transition:color .15s ease;margin-bottom:32px}.back-link:hover{color:var(--color-sky-600)}.post-header{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--color-slate-200)}.post-hero-image{width:100%;border-radius:16px;border:1px solid var(--color-slate-200);margin-bottom:32px;object-fit:cover;max-height:400px}.toc{background:var(--color-slate-50);border:1px solid var(--color-slate-200);border-radius:12px;padding:20px 24px;margin-bottom:40px}.toc-title{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-slate-500);margin-bottom:12px}.toc-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.toc-item a{font-size:14px;font-weight:500;color:var(--color-slate-600);text-decoration:none;transition:color .15s ease;display:block;line-height:1.5}.toc-item a:hover{color:var(--color-sky-600)}.toc-depth-3{padding-left:16px}.post-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.tag{display:inline-block;padding:4px 12px;background:var(--color-sky-50);color:var(--color-sky-700);font-size:12px;font-weight:600;border-radius:100px;border:1px solid var(--color-sky-200)}.post-title{font-size:clamp(28px,4vw,42px);line-height:1.2;letter-spacing:-.02em;color:var(--color-slate-900)}.post-meta{margin-top:12px;font-size:14px;color:var(--color-slate-500)}.meta-sep{margin:0 8px}.post-content h2{font-size:24px;font-weight:700;margin-top:40px;margin-bottom:16px;color:var(--color-slate-900)}.post-content h3{font-size:20px;font-weight:700;margin-top:32px;margin-bottom:12px;color:var(--color-slate-900)}.post-content p{font-size:16px;line-height:1.8;color:var(--color-slate-600);margin-bottom:20px}.post-content ul,.post-content ol{margin-bottom:20px;padding-left:24px}.post-content li{font-size:16px;line-height:1.8;color:var(--color-slate-600);margin-bottom:8px}.post-content a{color:var(--color-sky-600);text-decoration:underline;text-underline-offset:3px}.post-content a:hover{color:var(--color-sky-700)}.post-content blockquote{border-left:3px solid var(--color-sky-400);padding:12px 20px;margin:24px 0;background:var(--color-slate-50);border-radius:0 8px 8px 0}.post-content blockquote p{color:var(--color-slate-700);margin-bottom:0}.post-content code{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:14px;background:var(--color-slate-100);padding:2px 6px;border-radius:4px;color:var(--color-sky-700)}.post-content pre{background:var(--color-slate-900);color:var(--color-slate-200);padding:20px 24px;border-radius:12px;overflow-x:auto;margin:24px 0}.post-content pre code{background:none;padding:0;color:inherit;font-size:14px}.post-content img{border-radius:12px;border:1px solid var(--color-slate-200);margin:24px 0}.post-content hr{border:none;border-top:1px solid var(--color-slate-200);margin:40px 0}.post-content strong{color:var(--color-slate-800);font-weight:600}
