html{scroll-behavior:smooth}@font-face{font-family:Merriweather;src:url(/articles/fonts/Merriweather-VariableFont_opsz,wdth,wght.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Merriweather;src:url(/articles/fonts/Merriweather-Italic-VariableFont_opsz,wdth,wght.ttf) format("truetype");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:Inter;src:url(/articles/fonts/Inter.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/articles/fonts/Inter-Italic.ttf) format("truetype");font-weight:100 900;font-style:italic;font-display:swap}.blog-content{font-family:Merriweather,serif}.blog-content h1,.blog-content h2,.blog-content h3,.blog-content h4,.blog-content h5,.blog-content h6{margin:0 0 1rem;line-height:1.2;font-weight:700;letter-spacing:-.02em;color:var(--prose-text);font-family:Inter,sans-serif;scroll-margin-top:7rem}.blog-content h1{font-size:2em;background:linear-gradient(90deg,var(--brand-from),var(--brand-via),var(--brand-to));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% auto;animation:shimmer 4s linear infinite}.blog-content h2{font-size:1.675em;position:relative;padding-bottom:.3em}.blog-content h3{font-size:1.15em;color:#3a3a6e}.blog-content h4{font-size:1em;color:#4a4a7e}.blog-content h5{font-size:.875em;color:#5a5a8e}.blog-content strong,.blog-content b{font-weight:700;color:var(--prose-text)}.blog-content p{margin-bottom:1.25em!important;color:var(--prose-text);line-height:1.75;font-size:.875em}.blog-content .prose p{margin-bottom:2em}.blog-content a{position:relative;font-weight:500;text-decoration:none;background:linear-gradient(90deg,var(--brand-from),var(--brand-via),var(--brand-to));background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;transition:background-position .4s ease}.blog-content a:after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:1.5px;border-radius:99px;background:linear-gradient(90deg,var(--brand-from),var(--brand-via),var(--brand-to));background-size:200% auto;transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.4,0,.2,1),background-position .4s ease}.blog-content a:hover{background-position:right center;cursor:pointer}.blog-content a:hover:after{transform:scaleX(1);background-position:right center}.blog-content code{font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-size:.875em;padding:.15em .45em;border-radius:6px;background:linear-gradient(135deg,#4776e61a,#8e54e91a);border:1px solid rgba(142,84,233,.25);color:#7c3aed;font-weight:500}.blog-content pre{position:relative;padding:1.5em 1.75em;margin:0 0 1.5em;border-radius:14px;background:var(--code-bg);border:1px solid var(--code-border);overflow:auto;box-shadow:0 0 0 1px #4776e626,0 8px 32px #4776e61f,inset 0 1px #ffffff0a}.blog-content pre:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:14px 14px 0 0;background:linear-gradient(90deg,var(--brand-from),var(--brand-via),var(--brand-to));background-size:200% auto;animation:shimmer 4s linear infinite}.blog-content pre>code{all:unset;font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-size:.9em;color:var(--code-text);line-height:1.7}.blog-content blockquote{position:relative;padding:.9em 1.4em;margin:0 0 1.5em;border-left:3px solid #1a1a1a;border-radius:0 6px 6px 0;font-size:.9em;color:inherit;background:#6464640a}.blog-content blockquote:before{content:none}.blog-content blockquote p{margin:0!important}.blog-content blockquote strong:first-child{display:block;font-size:.75em;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.3em;color:#1a1a1a}.blog-content hr{border:none;height:2px;background:linear-gradient(90deg,transparent,var(--brand-from),var(--brand-via),var(--brand-to),transparent);margin:2em 0;border-radius:99px;opacity:.25}.blog-content table{width:100%;border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden;border:1px solid var(--prose-border);margin:1.5em 0}.blog-content thead tr{background:linear-gradient(90deg,var(--brand-from),var(--brand-via))}.blog-content thead th{padding:.75em 1em;font-size:.8em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff;text-align:left}.blog-content tbody tr:nth-child(2n){background:#4776e60a}.blog-content tbody td{padding:.7em 1em;color:var(--prose-text);border-top:1px solid var(--prose-border);font-size:.95em}.blog-content ul,.blog-content ol{padding-left:.5em;margin-bottom:1em;color:var(--prose-text);line-height:1.75}.blog-content ul li,.blog-content ol li{font-size:.8em;margin-bottom:.5em}.blog-content ul li::marker{color:var(--brand-via)}.blog-content ol li::marker{color:var(--brand-from);font-weight:700}.blog-content img{max-width:100%;height:auto;border-radius:12px;box-shadow:0 4px 24px #4776e626}.blog-content textarea{width:100%;font-size:16px}.blog-content input{font-size:16px}.layout{display:flex;gap:2rem;align-items:flex-start}.blog-content{flex:1;min-width:0}.toc{position:sticky;top:2rem;width:220px;flex-shrink:0;font-size:.875em}.toc-title{font-weight:700;font-size:.75em;letter-spacing:.08em;text-transform:uppercase;color:var(--prose-muted);margin-bottom:.75em}.toc ul{list-style:none;padding:0;margin:0}.toc li{margin-bottom:.4em}.toc a{color:var(--prose-muted);text-decoration:none;transition:color .2s}.toc a:hover{color:var(--brand-via)}@media(max-width:1024px){.toc{display:none}}@keyframes shimmer{0%{background-position:0% center}to{background-position:200% center}}@media(max-width:720px){.blog-content{font-size:18px}.blog-content h1{font-size:2.2em}.blog-content h2{font-size:1.8em}.blog-content pre{padding:1em;font-size:.85em}}
