@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Serif:wght@400;500;600&display=swap";:root{--font-primary:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-title:"IBM Plex Serif",Georgia,"Times New Roman",serif;--body-color:#111;--body-bg:#fdfdfc;--heading-color:#111;--hyperlink-color:#2480ed;--selection-color:#111;--selection-bg:#ededed;--focus-color:rgba(0,122,255,.5)}*{outline:0;padding:0;margin:0;border:0;box-sizing:border-box}::selection{color:var(--selection-color);background:var(--selection-bg)}:focus-visible{outline:2px solid var(--focus-color)}html{background:var(--body-bg);color:var(--body-color)}html,html body{min-height:100%}body{overflow-y:scroll;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--font-primary)}h1,h2,h3,h4,h5,h6{color:rgba(0,0,0,.85);position:relative}h1{font-family:var(--font-title);font-size:1.25rem;font-weight:500;line-height:1.4;letter-spacing:-.01rem}.sketchy-underline{--marker-color:#4c74ff;display:inline;margin:-.04em -.06em;padding:.04em .06em;border-radius:.2em .15em;background:transparent;box-decoration-break:clone;-webkit-box-decoration-break:clone;background-image:linear-gradient(75deg,color-mix(in srgb,var(--marker-color),transparent 50%),color-mix(in srgb,var(--marker-color),transparent 85%) 4%,color-mix(in srgb,var(--marker-color),transparent 70%) 96%,color-mix(in srgb,var(--marker-color),transparent 40%))}.pen-underline{display:inline;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 100 12'%3E%3Cpath d='M2 8 Q50 4 98 7' stroke='%23f4694c' stroke-width='4' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:0 calc(100% - 2px);background-size:100% 8px;padding-bottom:2px}h2{font-size:.8125rem;font-weight:550;line-height:normal;letter-spacing:-.005rem;margin-bottom:1.125rem;color:rgba(0,0,0,.78);display:flex;align-items:center;gap:.75rem}h2:after{content:"";flex:1 1;height:1px;background:rgba(0,0,0,.08)}h3{font-size:.8125rem;font-weight:500;line-height:normal;letter-spacing:-.005rem;color:rgba(0,0,0,.7)}a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}img,svg{display:inline-block;max-width:100%;height:auto}button{cursor:pointer;background:none;font-family:var(--font-primary);-webkit-tap-highlight-color:rgba(0,0,0,0)}button:disabled{pointer-events:none;cursor:not-allowed}.styled-link{position:relative;display:inline;color:var(--hyperlink-color);font-weight:inherit;line-height:inherit;transition:all .2s ease}.styled-link:hover{color:#74b1fd}.side-nav{position:fixed;top:3.75rem;bottom:1.5rem;left:calc(50% - 18rem - 11rem);display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}.side-nav::-webkit-scrollbar{display:none}.side-nav .side-nav-logo{font-size:.875rem;font-weight:500;color:rgba(0,0,0,.85);margin-bottom:1rem;display:flex;flex-direction:column;align-items:flex-start;cursor:default}.side-nav .nav-links{display:flex;flex-direction:column;gap:.5rem;cursor:pointer}.side-nav .nav-link{font-size:.75rem;font-variation-settings:"wght" 450;color:rgba(0,0,0,.35);transition:color .15s ease,font-variation-settings .25s ease;display:flex;align-items:center;gap:.375rem}.side-nav .nav-link:hover{color:rgba(0,0,0,.55);font-variation-settings:"wght" 550}.side-nav .nav-link.active{color:rgba(0,0,0,.8);font-variation-settings:"wght" 550}.side-nav .nav-badge{font-size:.5625rem;color:#3b82f6;font-weight:500;font-variation-settings:"wght" 500;text-transform:uppercase;letter-spacing:.02em;transform:translateY(.5px)}.side-nav .nav-section{font-size:.625rem;font-variation-settings:"wght" 500;color:rgba(0,0,0,.25);margin-top:.75rem;margin-bottom:.125rem;cursor:default}.side-nav .nav-meta{display:flex;align-items:center;gap:.25rem;margin-top:.75rem;animation:navVersionFadeIn .4s ease-out forwards}.side-nav .nav-version{font-size:.625rem;color:rgba(0,0,0,.25);font-weight:450;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-underline-offset:2px;transition:color .15s ease}.side-nav .nav-version:hover{color:rgba(0,0,0,.4)}.side-nav .nav-dot{font-size:.625rem;color:rgba(0,0,0,.2)}.side-nav .nav-github{display:flex;color:rgba(0,0,0,.2);transition:color .15s ease}.side-nav .nav-github:hover{color:rgba(0,0,0,.4)}@keyframes navVersionFadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:980px){.side-nav{display:none}}.article{display:flex;flex-direction:column;gap:.875rem;max-width:36rem;margin:0 auto;padding:4rem 1.5rem 3rem}@media(max-width:980px){.article{padding-top:2rem}}.article header{display:flex;flex-direction:column;gap:.25rem;padding-bottom:.75rem}.article header .heading-container{display:flex;justify-content:space-between;align-items:last baseline}@media(max-width:500px){.article header .heading-container{flex-direction:column;align-items:flex-start;row-gap:8px;margin-bottom:12px}}.article header .tagline{color:rgba(0,0,0,.65);font-size:.875rem;font-weight:450}.article header time{color:rgba(0,0,0,.4);font-size:.625rem;font-weight:450;letter-spacing:.02rem;text-transform:uppercase}.article section{margin-top:.75rem}.article section h3{margin-top:1rem;margin-bottom:.375rem}.article section h3:first-child{margin-top:.5rem}.article section+section{margin-top:1.5rem}.article p{font-size:.875rem;font-weight:450;line-height:1.45rem;letter-spacing:-.005rem;color:rgba(0,0,0,.8)}.article p+p{margin-top:.75rem}.article blockquote{border-left:2px solid #e0e0e0;padding-left:1rem;margin:.5rem 0;color:rgba(0,0,0,.6);font-style:italic}.article ol,.article ul{padding-left:1rem;display:flex;flex-direction:column;gap:.25rem}.article ol li,.article ul li{font-size:.875rem;font-weight:450;line-height:1.45rem;letter-spacing:-.005rem;color:rgba(0,0,0,.8)}.article ol li strong,.article ul li strong{font-weight:550}.article ol li::marker,.article ul li::marker{color:rgba(0,0,0,.25)}.article ol ul,.article ul ul{margin-top:.25rem;gap:.125rem}.article ol ul li,.article ul ul li{font-size:.8125rem;color:rgba(0,0,0,.6)}.article p+ol,.article p+ul{margin-top:.5rem}.article ol+p,.article ul+p{margin-top:.625rem}.article code{font-size:.8125rem;background:rgba(0,0,0,.04);padding:.1rem .35rem;border-radius:.25rem;color:rgba(0,0,0,.75)}.article .code-block,.article code{font-family:SF Mono,SFMono-Regular,ui-monospace,Consolas,monospace}.article .code-block{font-size:.75rem;line-height:1.55;background:#f8f8f8;color:#333;padding:.875rem 1rem;border-radius:.5rem;border:1px solid rgba(0,0,0,.06);overflow-x:hidden;white-space:pre-wrap;word-break:break-word;margin:.625rem 0}.article li a,.article p a,.article td a{color:var(--hyperlink-color);transition:color .15s ease}.article li a:hover,.article p a:hover,.article td a:hover{color:#74b1fd}.article .format-toggle{display:inline-flex;gap:0;margin:.5rem 0;border-radius:.375rem;overflow:hidden}.article .format-toggle button{padding:.375rem .75rem;font-size:.75rem;font-weight:500;background:#fff;color:rgba(0,0,0,.5);border:1px solid rgba(0,0,0,.1);margin-left:-1px;cursor:pointer;transition:all .15s ease}.article .format-toggle button:first-child{margin-left:0;border-radius:.375rem 0 0 .375rem}.article .format-toggle button:last-child{border-radius:0 .375rem .375rem 0}.article .format-toggle button:hover:not(.active){background:rgba(0,0,0,.03);color:rgba(0,0,0,.7)}.article .format-toggle button.active{color:#fff;border-color:transparent;position:relative;z-index:1}.article .format-toggle button:first-child.active{background:#6b7280}.article .format-toggle button:nth-child(2).active{background:#16a34a}.article .format-toggle button:nth-child(3).active{background:#2563eb}.article .format-toggle button:nth-child(4).active{background:#dc2626}.agents-section{margin-top:1.5rem!important;padding:1.25rem 0 .5rem;border-top:1px solid rgba(0,0,0,.06)}.agents-section .agents-label{font-size:.75rem;font-weight:450;color:rgba(0,0,0,.4);margin-bottom:1rem}.agents-section .agents-logos{display:flex;align-items:center;gap:0}.agents-section .agents-logos a{display:flex;padding:.375rem;border-radius:.375rem;transition:background .15s ease}.agents-section .agents-logos a:hover{background:rgba(0,0,0,.04)}.agents-section .agents-logos svg{width:56px;height:56px;color:rgba(0,0,0,.18);transition:color .15s ease}.agents-section .agents-logos a:hover svg{color:rgba(0,0,0,.4)}.demo-section{padding:2rem 0 0;margin-top:1.5rem;display:flex;flex-direction:column;gap:.75rem}.demo-section h2{margin-bottom:.25rem}.demo-section p{margin-bottom:.5rem}.demo-elements{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.button-group{display:flex;gap:.5rem;flex-wrap:wrap}.demo-button{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;font-size:.8125rem;font-weight:500;border-radius:.375rem;background:#111;color:#fff;transition:background .15s ease}.demo-button:hover{background:#333}.demo-button.secondary{background:#fff;color:#111;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12);transition:background .15s ease,box-shadow .15s ease}.demo-button.secondary:hover{background:#fafafa;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}.demo-card{background:rgba(0,0,0,.03);padding:.5rem 1rem .75rem;border-radius:.5rem}.demo-card h3{margin-bottom:.25rem;font-size:.8125rem;font-weight:500}.demo-card p{font-size:.8125rem;color:rgba(0,0,0,.5);margin-bottom:0;line-height:1.5}.demo-input{width:100%;padding:.5rem .75rem;font-size:.875rem;border:1px solid rgba(0,0,0,.1);border-radius:.375rem;transition:border-color .15s ease}.demo-input:focus{border-color:#3c82f7;outline:none}.demo-input::placeholder{color:rgba(0,0,0,.35)}.animation-demo{padding:1.5rem 0;margin-top:.5rem}.progress-bar-demo{width:100%;height:4px;background:rgba(0,0,0,.06);border-radius:2px;overflow:hidden}.progress-bar{position:relative;height:100%;width:30%;background:linear-gradient(90deg,#4c74ff,#7b9fff);border-radius:2px;animation:progress-move 1.4s ease-in-out infinite alternate}@keyframes progress-move{0%{left:0;width:18%}50%{width:30%}to{left:82%;width:18%}}.footer{max-width:36rem;margin:0 auto;padding:1rem 1.5rem 3rem;border-top:1px solid rgba(0,0,0,.06);text-align:left;color:rgba(0,0,0,.4);font-size:.75rem}.footer a{color:rgba(0,0,0,.5);text-decoration:underline;text-underline-offset:2px}.footer a:hover{color:rgba(0,0,0,.7)}@media(max-width:980px){.hide-on-mobile{display:none!important}}.mobile-notice{display:none;align-items:center;justify-content:center;gap:.5rem;background:linear-gradient(135deg,#f8f9fa,#f0f1f3);border-bottom:1px solid rgba(0,0,0,.06);padding:.625rem 1rem;font-size:.75rem;font-weight:500;color:rgba(0,0,0,.5);letter-spacing:.01em}@media(max-width:980px){.mobile-notice{display:flex}}.mobile-notice .mobile-notice-icon{display:flex;align-items:center;opacity:.6}.mobile-nav{display:none}@media(max-width:980px){.mobile-nav{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.5rem .375rem}}.mobile-nav .mobile-nav-header{display:flex;align-items:center;justify-content:space-between}.mobile-nav .mobile-nav-toggle{width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;margin-left:-.125rem}.mobile-nav .mobile-nav-icon{width:.75rem;height:.5rem;display:flex;flex-direction:column;justify-content:space-between}.mobile-nav .mobile-nav-icon span{display:block;width:100%;height:1.5px;background:#999;border-radius:1px;transition:transform .2s ease;transform-origin:center}.mobile-nav .mobile-nav-toggle.open .mobile-nav-icon span:first-child{transform:translateY(3.25px) rotate(45deg)}.mobile-nav .mobile-nav-toggle.open .mobile-nav-icon span:last-child{transform:translateY(-3.25px) rotate(-45deg)}.mobile-nav .mobile-nav-links{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s ease;margin-top:.5rem}.mobile-nav .mobile-nav-links.open{grid-template-rows:1fr}.mobile-nav .mobile-nav-links-inner{overflow:hidden;display:flex;flex-direction:column;gap:.5rem}.mobile-nav .mobile-nav-link{font-size:.75rem;font-variation-settings:"wght" 450;color:rgba(0,0,0,.35);transition:color .15s ease,font-variation-settings .25s ease}.mobile-nav .mobile-nav-link:hover{color:rgba(0,0,0,.55)}.mobile-nav .mobile-nav-link.active{color:rgba(0,0,0,.8);font-variation-settings:"wght" 550}@keyframes mobileTypeChar{0%{opacity:0}to{opacity:1}}@keyframes mobileBunnyFadeIn{0%{opacity:0}to{opacity:1}}.mobile-typed-char{opacity:0;display:inline-block;animation:mobileTypeChar .1s ease-out forwards}.mobile-bunny-container{width:32px;height:32px;margin-right:.375rem;display:flex;align-items:center;justify-content:center;opacity:0}.mobile-bunny-container.show{animation:mobileBunnyFadeIn .4s ease-out forwards}.mobile-typed-logo{display:flex;align-items:center;font-size:.875rem;font-weight:500;color:rgba(0,0,0,.85);min-height:32px}.mobile-typed-logo>div:last-child{transform:translateY(1px)}[data-toc-title]{display:block;font-size:.6875rem;font-weight:550;color:rgba(0,0,0,.4);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.75rem}[data-toc-list]{position:relative;list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.375rem;box-sizing:content-box;-webkit-padding-before:.375rem;padding-block-start:.375rem;-webkit-padding-start:.75rem;padding-inline-start:.75rem;font-size:.75rem;line-height:1.33}[data-toc-list]:before{inset-block:.375rem 0;inset-inline-start:0;background:rgba(0,0,0,.08)}[data-toc-list]:after,[data-toc-list]:before{content:"";position:absolute;width:1.5px;border-radius:9999px}[data-toc-list]:after{inset-block:0;inset-inline-start:0;background:rgba(0,0,0,.8);transform:translateY(var(--active-top,.375rem));height:var(--active-height,1rem);transition:.26s cubic-bezier(.25,.46,.45,.94);transition-property:transform,height}[data-toc-item][data-level="2"]{-webkit-padding-start:.75rem;padding-inline-start:.75rem}[data-toc-item] a{display:block;line-height:1rem;color:rgba(0,0,0,.4);text-decoration:none;transition:.12s cubic-bezier(.25,.46,.45,.94);transition-property:color,font-variation-settings}[data-toc-item] a:hover{font-variation-settings:"wght" 500;color:rgba(0,0,0,.55)}[data-toc-item] a[aria-current=true]{font-weight:500;color:rgba(0,0,0,.85)}.nav-item-wrapper{display:flex;flex-direction:column}.nav-toc{margin-top:.375rem;padding-left:.125rem;padding-bottom:.5rem}.install-snippet{display:flex;align-items:center;gap:.5rem;position:relative;background:none;border:none;cursor:pointer;font-family:SF Mono,SFMono-Regular,ui-monospace,Consolas,monospace;font-size:.6875rem;color:rgba(0,0,0,.4);transition:color .15s ease}.install-snippet:before{content:"";position:absolute;inset:-.25rem -.5rem}.install-snippet:hover{color:rgba(0,0,0,.7)}.install-snippet code{background:none;padding:0;font-size:inherit;color:inherit}.install-snippet svg{flex-shrink:0;opacity:.7}.quickstart-links{margin-top:2rem!important;padding-top:1.5rem;border-top:1px solid rgba(0,0,0,.06);font-size:.8125rem}.quickstart-links p{margin:.5rem 0;color:rgba(0,0,0,.5)}.quickstart-links p:first-child{margin-top:0}.quickstart-links .arrow{display:inline-block;transition:transform .15s ease}.quickstart-links a:hover .arrow{transform:translateX(3px)}.blog-post-card{display:block;text-decoration:none;color:inherit;border-radius:.5rem;overflow:hidden;border:1px solid rgba(0,0,0,.08);transition:border-color .15s ease,background-color .15s ease}.blog-post-card:hover{border-color:rgba(0,0,0,.12);background-color:rgba(0,0,0,.02)}.announcement-banner{display:block;margin-bottom:1rem;font-size:.6875rem;color:rgba(0,0,0,.4);text-decoration:none;white-space:nowrap;transition:color .15s ease}.announcement-banner:hover{color:rgba(0,0,0,.55)}.pulse-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#4a9eff;margin-right:.5rem;vertical-align:1px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.show-on-mobile{display:none}@media(max-width:600px){.hide-on-mobile{display:none}.show-on-mobile{display:inline}}