.prose{color:#374151;font-size:1.0625rem;line-height:1.75}html.dark .prose{color:#e5e7eb}.prose>*+*{margin-top:1.5em}.prose p{margin:0 0 1.5em}.prose h2{font-family:Inter,system-ui,sans-serif;font-size:clamp(1.75rem,3vw,2.125rem);font-weight:600;letter-spacing:-.025em;line-height:1.15;margin:2.5em 0 .75em;color:#0a0a0a}html.dark .prose h2{color:#fff}.prose h3{font-family:Inter,system-ui,sans-serif;font-size:clamp(1.375rem,2vw,1.625rem);font-weight:600;letter-spacing:-.02em;line-height:1.2;margin:2em 0 .5em;color:#0a0a0a}html.dark .prose h3{color:#fff}.prose a{color:#7c3aed;text-decoration:underline;text-decoration-color:#7c3aed59;text-underline-offset:3px;transition:text-decoration-color .15s,color .15s}html.dark .prose a{color:#a78bfa;text-decoration-color:#a78bfa66}.prose a:hover{color:#6d28d9;text-decoration-color:#7c3aed}html.dark .prose a:hover{color:#c4b5fd;text-decoration-color:#a78bfa}.prose strong{color:#0a0a0a;font-weight:600}html.dark .prose strong{color:#fff}.prose ul,.prose ol{margin:1.5em 0;padding-left:1.5em}.prose ul{list-style-type:disc}.prose ol{list-style-type:decimal}.prose li{margin:.5em 0}.prose li::marker{color:#9ca3af}html.dark .prose li::marker{color:#6b7280}.prose blockquote{border-left:2px solid #7c3aed;padding-left:1.25em;margin:2em 0;font-style:italic;color:#4b5563}html.dark .prose blockquote{border-left-color:#a78bfa;color:#9ca3af}.prose code{font-family:JetBrains Mono,ui-monospace,monospace;background:#7c3aed14;color:#6d28d9;padding:.15em .4em;border-radius:.35em;font-size:.875em;border:1px solid rgba(124,58,237,.15)}html.dark .prose code{background:transparent;color:#c4b5fd;border-color:#a78bfa33}.prose .blog-code-frame{position:relative;margin:2.25em 0;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:.6rem;background:transparent;box-shadow:0 16px 42px #0000002e}.prose .blog-code-frame--compact{min-height:2.25rem}html.dark .prose .blog-code-frame{border-color:#ffffff1a;box-shadow:0 18px 48px #00000047}.prose .blog-code-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:2.9rem;padding:.7rem .85rem .7rem 1.1rem;border-bottom:1px solid rgba(255,255,255,.1);background:transparent}.prose .blog-code-label{display:flex;min-width:0;align-items:center;gap:.7rem;font-family:Inter,system-ui,sans-serif;font-size:.86rem;line-height:1}.prose .blog-code-title{overflow:hidden;color:#d1d2d3;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.prose .blog-code-file-icon{display:inline-flex;flex:none;align-items:center;justify-content:center;width:1.05rem;height:1.05rem;border-radius:.12rem;background:transparent;color:#ecb22e;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.55rem;font-weight:700;letter-spacing:-.08em;line-height:1}.prose .blog-code-copy{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;opacity:0;border:0;border-radius:.35rem;background:transparent;color:#9ca3af;cursor:pointer;transition:opacity .15s ease,background-color .15s ease,color .15s ease}.prose .blog-code-frame:hover .blog-code-copy,.prose .blog-code-frame:focus-within .blog-code-copy{opacity:1}.prose .blog-code-copy svg{width:1.05rem;height:1.05rem}.prose .blog-code-copy--floating{position:absolute;top:.55rem;right:.55rem;z-index:2;background:transparent}.prose .blog-code-copy:hover,.prose .blog-code-copy:focus-visible{background:transparent;color:#36c5f0;outline:none}.prose .blog-code-copy[data-copied=true]{background:transparent;color:#2bac76}.prose pre{background:transparent;color:#d1d2d3;padding:0;overflow-x:auto;margin:0;border:0;border-radius:0;font-size:.8125em;line-height:1.78;letter-spacing:-.01em;scrollbar-color:rgba(148,163,184,.45) transparent}.prose pre code{display:block;width:-moz-max-content;width:max-content;min-width:100%;background:transparent;color:inherit;padding:0;border:none;font-size:inherit}.prose pre .code-line{display:grid;grid-template-columns:3.1rem minmax(0,1fr);align-items:start;min-height:1.78em;padding:0 1.4rem 0 0;border-left:3px solid transparent;transition:background-color .15s ease,color .15s ease}.prose pre .code-line-number{color:#868686;font-variant-numeric:tabular-nums;padding-right:1rem;text-align:right;-webkit-user-select:none;-moz-user-select:none;user-select:none}.prose pre .code-line-content{min-width:0}.prose .blog-code-frame--compact pre .code-line{grid-template-columns:minmax(0,1fr);min-height:2.25rem;align-items:center;padding:0 3rem 0 1.1rem}.prose .blog-code-frame--compact pre .code-line-number{display:none}.prose pre .code-line:empty:after{content:" "}.prose pre .code-line.is-highlighted{border-left-color:#36c5f0;background:transparent}.prose pre .code-line.is-added{border-left-color:#2bac76;background:transparent}.prose pre .code-line.is-deleted{border-left-color:#e01e5a;background:transparent}.prose pre::-webkit-scrollbar{height:.45rem}.prose pre::-webkit-scrollbar-track{background:transparent}.prose pre::-webkit-scrollbar-thumb{background:#94a3b861;border-radius:999px}.prose pre .token.comment,.prose pre .token.prolog,.prose pre .token.doctype,.prose pre .token.cdata{color:#868686}.prose pre .token.punctuation{color:#d1d2d3}.prose pre .token.property,.prose pre .token.tag,.prose pre .token.boolean,.prose pre .token.number,.prose pre .token.constant,.prose pre .token.symbol{color:#ecb22e}.prose pre .token.selector,.prose pre .token.attr-name,.prose pre .token.string,.prose pre .token.char,.prose pre .token.builtin,.prose pre .token.inserted{color:#2bac76}.prose pre .token.operator,.prose pre .token.entity,.prose pre .token.url,.prose pre .token.variable{color:#36c5f0}.prose pre .token.atrule,.prose pre .token.attr-value,.prose pre .token.keyword{color:#e01e5a}.prose pre .token.function,.prose pre .token.class-name{color:#ecb22e}.prose pre .token.regex,.prose pre .token.important{color:#f2c744}.prose hr{border:0;border-top:1px solid rgba(0,0,0,.1);margin:3em 0}html.dark .prose hr{border-top-color:#ffffff1a}.prose img{border-radius:.75rem;border:1px solid rgba(0,0,0,.1)}html.dark .prose img{border-color:#ffffff1a}.prose.scrape-prose{color:#ffffffb8;font-size:1.08rem;line-height:1.82}.prose.scrape-prose h2,.prose.scrape-prose h3,.prose.scrape-prose strong{color:#fff}.prose.scrape-prose h2{scroll-margin-top:7rem}.prose.scrape-prose h3{scroll-margin-top:7rem;color:#ffffffeb}.prose.scrape-prose a{color:#a78bfa;text-decoration-color:#a78bfa66}.prose.scrape-prose a:hover{color:#c4b5fd;text-decoration-color:#a78bfa}.prose.scrape-prose blockquote{border-left-color:#a78bfa;color:#ffffff9e}.prose.scrape-prose code:not(pre code){background:#ffffff0f;border-color:#ffffff1a;color:#ddd6fe}.prose.scrape-prose hr{border-top-color:#ffffff1a}.prose.scrape-prose img{border-color:#ffffff1f}.toc-more[open] summary svg{transform:rotate(180deg)}.article-faq section{padding-left:0;padding-right:0}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
