@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/55c55f0601d81cf3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/26a46d62cd723877-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/97e0cb1ae144a2a9-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/581909926a08bbc8-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_e8ce0c{font-family:Inter,Inter Fallback;font-style:normal}@tailwind base;@tailwind components;@tailwind utilities;@font-face{font-family:Inter var;font-style:normal;font-weight:100 900;font-display:block;src:url(/fonts/Inter-roman.latin.var.woff2) format("woff2")}@font-face{font-family:Inter var;font-style:italic;font-weight:100 900;font-display:block;src:url(/fonts/Inter-italic.latin.var.woff2) format("woff2");font-named-instance:"Italic"}.article-content img,.prose img{max-width:100%;height:auto;border-radius:.375rem;margin:1.5rem 0;display:block;box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}.article-content .image-load-error,.prose .image-load-error{position:relative;min-height:200px;background-color:#f3f4f6;border:1px dashed #d1d5db;display:flex;align-items:center;justify-content:center}.article-content .image-load-error:before,.prose .image-load-error:before{content:attr(alt);position:absolute;color:#6b7280;font-style:italic;padding:1rem;text-align:center}@media (prefers-color-scheme:dark){.article-content .image-load-error,.prose .image-load-error{background-color:#1f2937;border-color:#4b5563}.article-content .image-load-error:before,.prose .image-load-error:before{color:#9ca3af}}:root{--foreground-rgb:0,0,0;--background-start-rgb:214,219,220;--background-end-rgb:255,255,255}@media (prefers-color-scheme:dark){:root{--foreground-rgb:255,255,255;--background-start-rgb:0,0,0;--background-end-rgb:0,0,0}}body{color:rgb(var(--foreground-rgb));background:rgb(var(--background-start-rgb),var(--background-end-rgb));font-family:Inter var,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;-webkit-font-smoothing:subpixel-antialiased;font-feature-settings:"case" 1,"cpsp" 1,"dlig" 1,"cv01" 1,"cv02","cv03" 1,"cv04" 1;font-variation-settings:"wght" 450;font-variant:common-ligatures contextual;letter-spacing:-.02em}aside.sticky{position:sticky;height:calc(100vh - 5rem);top:5rem;z-index:10}.theme-admonition{margin:1.5rem 0;padding:0 1rem;border-left-width:4px;border-radius:.375rem;overflow:hidden}.theme-admonition-header{display:flex;align-items:center;margin-top:.75rem;margin-bottom:.75rem}.theme-admonition-icon{display:inline-flex;margin-right:.5rem}.theme-admonition-icon svg{width:1.5rem;height:1.5rem}.theme-admonition-title{font-weight:600;text-transform:uppercase;font-size:.875rem}.theme-admonition-content{margin-bottom:.75rem}.theme-admonition-note{background-color:#f8fafc;border-left-color:#e2e8f0}.theme-admonition-note .theme-admonition-icon svg{color:#64748b}.theme-admonition-note .theme-admonition-title{color:#475569}.theme-admonition-tip{background-color:#f0fdf4;border-left-color:#dcfce7}.theme-admonition-tip .theme-admonition-icon svg{color:#22c55e}.theme-admonition-tip .theme-admonition-title{color:#16a34a}.theme-admonition-info{background-color:#f0f9ff;border-left-color:#e0f2fe}.theme-admonition-info .theme-admonition-icon svg{color:#0ea5e9}.theme-admonition-info .theme-admonition-title{color:#0284c7}.theme-admonition-caution,.theme-admonition-warning{background-color:#fffbeb;border-left-color:#fef3c7}.theme-admonition-caution .theme-admonition-icon svg,.theme-admonition-warning .theme-admonition-icon svg{color:#f59e0b}.theme-admonition-caution .theme-admonition-title,.theme-admonition-warning .theme-admonition-title{color:#d97706}.theme-admonition-danger{background-color:#fef2f2;border-left-color:#fee2e2}.theme-admonition-danger .theme-admonition-icon svg{color:#ef4444}.theme-admonition-danger .theme-admonition-title{color:#dc2626}@media (prefers-color-scheme:dark){.theme-admonition-note{background-color:#1e293b;border-left-color:#334155}.theme-admonition-note .theme-admonition-title{color:#94a3b8}.theme-admonition-tip{background-color:#022c22;border-left-color:#064e3b}.theme-admonition-info{background-color:#082f49;border-left-color:#0c4a6e}.theme-admonition-caution,.theme-admonition-warning{background-color:#422006;border-left-color:#713f12}.theme-admonition-danger{background-color:#450a0a;border-left-color:#7f1d1d}}b,h3,h4,h5,h6,strong{font-variation-settings:"wght" 650}h1{font-variation-settings:"wght" 850}h2{font-variation-settings:"wght" 750}@media screen and (-webkit-min-device-pixel-ratio:1.5),screen and (min-device-pixel-ratio:1.5),screen and (min-resolution:1.5dppx){body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}@layer utilities{.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}}details summary{cursor:pointer}img.next-image{margin:0}.bg-gray-50{background-color:#f9fafb!important}.dark .bg-gray-900{background-color:#111827!important}.text-gray-900{color:#111827!important}.dark .text-gray-100{color:#f3f4f6!important}.bg-white{background-color:#ffffff!important}.dark .bg-gray-800{background-color:#1f2937!important}.border-gray-200{border-color:#e5e7eb!important}.dark .border-gray-700{border-color:#374151!important}.text-gray-600{color:#4b5563!important}.dark .text-gray-300{color:#d1d5db!important}.text-blue-600{color:#2563eb!important}.dark .text-blue-400{color:#60a5fa!important}.hover\:text-blue-600:hover{color:#2563eb!important}.dark .hover\:text-blue-400:hover{color:#60a5fa!important}.flex{display:flex!important}.flex-col{flex-direction:column!important}.flex-row{flex-direction:row!important}.flex-1{flex:1 1 0%!important}.min-h-screen{min-height:100vh!important}.w-full{width:100%!important}.max-w-6xl{max-width:72rem!important}.mx-auto{margin-left:auto!important;margin-right:auto!important}.px-4{padding-left:1rem!important;padding-right:1rem!important}.py-8{padding-top:2rem!important;padding-bottom:2rem!important}.rounded-lg{border-radius:.5rem!important}.shadow-md{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)!important}.border{border-width:1px!important}.prose{max-width:65ch;color:inherit}.prose-blue{--tw-prose-links:#2563eb;--tw-prose-invert-links:#60a5fa}.prose-lg{font-size:1.125rem;line-height:1.75}.max-w-none{max-width:none}.dark .prose-invert{--tw-prose-body:#d1d5db;--tw-prose-headings:#f3f4f6;--tw-prose-links:#60a5fa;--tw-prose-code:#f3f4f6;--tw-prose-quotes:#f3f4f6}.prose-headings\:scroll-mt-20 :is(:where(h1,h2,h3,h4,h5,h6):not(:where([class~=not-prose] *))){scroll-margin-top:5rem}.prose-headings\:font-semibold :is(:where(h1,h2,h3,h4,h5,h6):not(:where([class~=not-prose] *))){font-weight:600}.prose-headings\:text-gray-900 :is(:where(h1,h2,h3,h4,h5,h6):not(:where([class~=not-prose] *))){color:#111827}.dark .prose-headings\:text-white :is(:where(h1,h2,h3,h4,h5,h6):not(:where([class~=not-prose] *))){color:#ffffff}.prose-p\:text-gray-700 :is(:where(p):not(:where([class~=not-prose] *))){color:#374151}.dark .prose-p\:text-gray-300 :is(:where(p):not(:where([class~=not-prose] *))){color:#d1d5db}.prose-img\:rounded-lg :is(:where(img):not(:where([class~=not-prose] *))){border-radius:.5rem}.prose-a\:text-blue-600 :is(:where(a):not(:where([class~=not-prose] *))){color:#2563eb}.dark .prose-a\:text-blue-400 :is(:where(a):not(:where([class~=not-prose] *))){color:#60a5fa}.prose-a\:font-medium :is(:where(a):not(:where([class~=not-prose] *))){font-weight:500}.prose-a\:no-underline :is(:where(a):not(:where([class~=not-prose] *))){text-decoration:none}.hover\:prose-a\:underline :is(:where(a):not(:where([class~=not-prose] *))):hover{text-decoration:underline}.article-content{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.6;color:#333}.article-content pre{background-color:#f5f5f5;border-radius:6px;padding:1rem;overflow-x:auto;margin:1.5rem 0;border:1px solid #e0e0e0}.article-content pre>code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.9rem;line-height:1.5;color:#333;display:block;padding:0}.article-content code.language-javascript,.article-content code[data-language=javascript]{color:#333}.article-content code.language-bash,.article-content code[data-language=bash]{color:#3c3c3c}.article-content .mermaid{margin:2rem 0;text-align:center;background-color:white;padding:1rem;border-radius:6px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.article-content h1>code,.article-content h2>code,.article-content h3>code,.article-content h4>code,.article-content li>code,.article-content p>code{background-color:#f0f0f0;padding:.2em .4em;border-radius:3px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.85em;color:#e01e5a}.article-content ol,.article-content ul{padding-left:1.5rem;margin:1rem 0;list-style-position:outside}.article-content ul{list-style-type:disc}.article-content ol{list-style-type:decimal}.article-content ul ul{list-style-type:circle;margin-top:.5rem}.article-content ol ol,.article-content ul ol{list-style-type:lower-alpha;margin-top:.5rem}.article-content ol ul,.article-content ul ul{list-style-type:circle;margin-top:.5rem}.article-content li{margin-bottom:.5rem;padding-left:.5rem}.article-content h1,.article-content h2,.article-content h3,.article-content h4,.article-content h5,.article-content h6{margin-top:2rem;margin-bottom:1rem;font-weight:600;line-height:1.25}.article-content h1{font-size:2rem}.article-content h2{font-size:1.5rem;border-bottom:1px solid #eaecef;padding-bottom:.3rem}.article-content h3{font-size:1.25rem}.article-content a{color:#0366d6;text-decoration:none}.article-content a:hover{text-decoration:underline}.article-content blockquote{border-left:4px solid #dfe2e5;padding:0 1rem;color:#6a737d;margin:1rem 0}.article-content table{border-collapse:collapse;width:100%;margin:1rem 0}.article-content table td,.article-content table th{padding:.5rem 1rem;border:1px solid #dfe2e5}.article-content table th{background-color:#f6f8fa;font-weight:600}.article-content img{max-width:100%;height:auto;margin:1rem 0;border-radius:4px}.article-content iframe{max-width:100%;margin:1.5rem 0;border-radius:6px;border:1px solid #e0e0e0}@media (min-width:768px){.sticky-sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;padding-top:0;margin-top:0;z-index:20}}@media (min-width:768px) and (max-width:1023px){.sticky-sidebar{width:12rem}}@media (min-width:1024px){.sticky-sidebar{width:16rem}}.admonition{margin:1.5rem 0;padding:1rem;border-radius:.5rem;border-left:4px solid}.admonition-title{font-weight:700;margin-bottom:.5rem}.admonition.note{background-color:#f0f7ff;border-color:#3b82f6}.admonition.tip{background-color:#f0fdf4;border-color:#22c55e}.admonition.info{background-color:#f0fdff;border-color:#06b6d4}.admonition.caution{background-color:#fffbeb;border-color:#f59e0b}.admonition.danger{background-color:#fef2f2;border-color:#ef4444}.dark .admonition.note{background-color:rgba(59,130,246,.1);border-color:#3b82f6}.dark .admonition.tip{background-color:rgba(34,197,94,.1);border-color:#22c55e}.dark .admonition.info{background-color:rgba(6,182,212,.1);border-color:#06b6d4}.dark .admonition.caution{background-color:rgba(245,158,11,.1);border-color:#f59e0b}.dark .admonition.danger{background-color:rgba(239,68,68,.1);border-color:#ef4444}