:root{--primary-color: #6366f1;--secondary-color: #a855f7;--bg-color: #0f172a;--text-color: #f8fafc;--card-bg: #1e293b;--muted-text: #94a3b8;--accent-color: #f43f5e;font-family:Outfit,Inter,system-ui,-apple-system,sans-serif}body{margin:0;background-color:var(--bg-color);color:var(--text-color);line-height:1.7;-webkit-font-smoothing:antialiased}.layout{max-width:900px;margin:0 auto;padding:2rem;min-height:100vh;display:flex;flex-direction:column}.main-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 0;margin-bottom:3rem;border-bottom:1px solid rgba(255,255,255,.1)}.site-title{text-decoration:none}.main-header h1{font-size:1.8rem;font-weight:800;margin:0;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;transition:opacity .3s}.main-header h1:hover{opacity:.8}nav a{margin-left:2rem;color:var(--text-color);text-decoration:none;font-weight:600;font-size:1rem;transition:color .2s cubic-bezier(.4,0,.2,1);position:relative}nav a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--primary-color);transition:width .3s}nav a:hover:after{width:100%}nav a:hover{color:var(--primary-color)}.blog-list h1{font-size:2.5rem;font-weight:800;margin-bottom:2.5rem;letter-spacing:-.025em}.post-preview{background:#1e293b80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem;border-radius:16px;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.05);transition:all .3s cubic-bezier(.4,0,.2,1)}.post-preview:hover{transform:translateY(-4px) scale(1.01);background:#1e293bcc;border-color:#6366f166;box-shadow:0 20px 25px -5px #0000004d,0 10px 10px -5px #0003}.post-preview h2{margin:0 0 .75rem;font-size:1.5rem;color:var(--text-color);font-weight:700}.post-preview a{text-decoration:none}.post-preview p{color:var(--muted-text);margin-bottom:1.5rem;font-size:1.05rem}.post-preview time{font-size:.875rem;color:var(--primary-color);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.blog-post header{margin-bottom:3rem;text-align:center}.blog-post h1{font-size:3.5rem;font-weight:800;line-height:1.1;margin-bottom:1rem;letter-spacing:-.05em}.blog-post .subtitle{font-size:1.4rem;color:var(--muted-text);margin-bottom:1.5rem;max-width:700px;margin-left:auto;margin-right:auto}.blog-post time{font-size:1rem;color:var(--secondary-color);font-weight:600;display:block}.content{font-size:1.15rem;color:#e2e8f0}.content h1,.content h2,.content h3{color:#fff;margin-top:2.5rem;margin-bottom:1rem;font-weight:700}.content h2{font-size:1.8rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.5rem}.content p{margin-bottom:1.5rem}.content blockquote{border-left:4px solid var(--primary-color);padding:.5rem 0 .5rem 1.5rem;margin:1.5rem 0;background:#6366f11a;font-style:italic;color:#cbd5e1}.content code{background:#0000004d;padding:.2rem .4rem;border-radius:4px;font-family:Fira Code,monospace;font-size:.9em}.content pre{background:#000;padding:1.5rem;border-radius:12px;overflow-x:auto;margin:2rem 0;border:1px solid rgba(255,255,255,.1)}.content pre code{background:transparent;padding:0}.loading,.error{text-align:center;padding:4rem;font-size:1.25rem;color:var(--muted-text)}.main-footer{margin-top:6rem;padding:3rem 0;text-align:center;border-top:1px solid rgba(255,255,255,.1);color:var(--muted-text);font-size:.9rem}#root{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}
