:root{--paper:#f5f4ef;--ink:#23241e;--muted:#62645a;--line:#d8d9ce;--yellow:#f3cf66;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.75 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;word-break:keep-all}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,input{font:inherit}button{cursor:pointer}button,a,input,summary{outline-offset:5px}:focus-visible{outline:2px solid #81610d}p{color:var(--muted)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.35;letter-spacing:-.05em}h2{font-size:34px}h3{font-size:25px}.header{height:88px;max-width:1240px;margin:auto;padding:0 38px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:48px}.brand{font:800 28px var(--mono);letter-spacing:-2px}.brand span{color:#9b7209}.header nav{display:flex;gap:32px;font-size:14px}.header nav [aria-current]{font-weight:700}.small-cta{margin-left:auto;font-size:13px;border:1px solid var(--ink);padding:7px 15px}.small-cta span{margin-left:22px}main{max-width:1164px;margin:auto}.release{padding:18px 0;display:flex;gap:10px;align-items:center;font-size:12px;border-bottom:1px solid var(--line);color:var(--muted)}.release a{margin-left:auto}.dot{width:6px;height:6px;background:#60774e;border-radius:50%}.hero{max-width:880px;margin:auto;text-align:center;padding:76px 0 46px}.eyebrow,.section-label{font:11px/1.7 var(--mono);letter-spacing:1.4px;color:var(--muted)}.hero h1{font-size:clamp(40px,5vw,65px);font-weight:650;margin:22px 0}.accent{color:#a27d20}.intro{font-size:18px;line-height:1.9}.frameworks{font:12px var(--mono);letter-spacing:1px;margin:32px 0}.frameworks span{padding:0 18px;color:#acae9f}.installer{max-width:680px;margin:36px auto 16px;text-align:left;border:1px solid var(--line);background:#eeeee5}.install-tabs{display:flex;border-bottom:1px solid var(--line);align-items:center}.install-tabs button{border:0;border-right:1px solid var(--line);padding:12px 20px;background:none;font-size:13px}.install-tabs button[aria-selected=true]{background:var(--ink);color:white}.install-tabs>span{margin-left:auto;padding:0 16px;font:10px var(--mono);color:var(--muted)}.code{position:relative;min-width:0;background:#eeeee5;border:1px solid var(--line);margin:22px 0}.installer .code{border:0;margin:0}.code pre{margin:0;padding:25px 74px 25px 22px;overflow:auto;font:13px/1.85 var(--mono);word-break:normal}.code button{position:absolute;right:12px;top:14px;border:1px solid #c6c8ba;background:var(--paper);padding:4px 9px;font-size:11px}.installer p{padding:0 22px 15px;margin:0;font-size:12px}.read-link{font-size:13px}.read-link span{margin-left:14px}.terminal-section{max-width:920px;margin:12px auto 90px}.section-label{display:flex;justify-content:space-between;margin-bottom:22px}.terminal{background:#1d201d;color:#e5e8dc;border:1px solid #393e35;box-shadow:0 18px 40px #181c1612}.terminal-top{border-bottom:1px solid #3a4035;padding:12px 22px;display:flex;justify-content:space-between;font:11px var(--mono);color:#919a86}.terminal-content{padding:24px 35px;font:13px/1.8 var(--mono)}.terminal-content p{color:#d0d6c7}.terminal-meta{font-weight:bold}.terminal-meta span{font-weight:400;color:#7f8976;padding-left:18px}.user{background:#30372d;padding:9px 14px;margin:28px 0 22px 30px;max-width:670px}.terminal-label{color:#f3cf66!important;font-weight:700}.diff{border-left:2px solid #626d56;padding-left:16px;margin:18px 0}.diff span{font-size:11px;color:#9ba790}.diff p{margin:0;color:#a2be90}.diff p:first-of-type{color:#c49b91}.checks{display:flex;gap:25px;color:#c6d7af;margin-bottom:30px}.composer{background:#292e26;border:1px solid #535d48;padding:15px 18px;color:#929c86}.composer>div{display:flex;justify-content:space-between;margin-top:20px;font-size:12px}.composer b{background:#e9eadc;color:#20251b;padding:0 9px}.caption{font-size:11px;text-align:center;margin-top:18px}.workflow{border-top:1px solid var(--line);padding:45px 0 75px}.workflow h2{margin-bottom:42px}.steps{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.steps article{padding:32px;border-right:1px solid var(--line)}.steps article:last-child{border:0}.number{font:12px var(--mono);color:#7c806d}.steps h3{margin:30px 0 14px}.steps p{font-size:14px;min-height:75px}.steps a{font:13px var(--mono)}.doc-entry{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:55px 0 75px;border-top:1px solid var(--line)}.doc-entry p{font-size:14px}.solid{display:inline-block;padding:12px 22px;background:var(--ink);color:white;font-size:13px;margin-top:12px}.doc-links a{border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:24px 0;font-size:15px}.faq{border-top:1px solid var(--line);padding:45px 0 75px;max-width:1164px}.faq details{border-bottom:1px solid var(--line)}summary{cursor:pointer}.faq summary{padding:20px 0;font-size:15px}.faq details p{font-size:14px;max-width:800px}footer{max-width:1164px;margin:auto;border-top:1px solid var(--line);padding:30px 0 45px;display:flex;align-items:center;gap:25px;font-size:12px}footer p{margin:0 auto 0 0}.docs-layout{max-width:1240px;display:grid;grid-template-columns:230px minmax(0,1fr) 185px;gap:46px;padding:50px 38px 90px}.sidebar,.on-this-page{position:sticky;top:28px;align-self:start}.sidebar summary{font-size:12px;font-weight:700;list-style:none;margin-bottom:20px}.search{display:block;font-size:11px;color:var(--muted)}.search input{display:block;width:100%;border:1px solid var(--line);background:transparent;padding:9px;margin:7px 0 27px;font-size:13px}.sidebar nav{display:flex;flex-direction:column}.sidebar nav a{padding:5px 10px;font-size:13px;border-left:1px solid var(--line)}.sidebar nav a.active{border-color:#896509;background:#e9e7db;color:#6c5010}.nav-group{font-size:11px;font-weight:700;margin:23px 0 9px;color:#333}.on-this-page{font-size:11px;border-left:1px solid var(--line);padding-left:20px}.on-this-page>span{font:10px var(--mono);color:var(--muted)}.on-this-page a{display:block;margin:16px 0}.on-this-page p{margin-top:30px;line-height:1.9}.document{min-width:0}.document>h1{font-size:39px;margin:15px 0}.doc-lead{font-size:15px}.doc-section{padding:42px 0 15px;border-top:1px solid var(--line);margin-top:38px;scroll-margin-top:30px}.doc-section h2{font-size:27px;margin:9px 0 24px}.doc-section h3{font-size:19px;margin-top:25px}.doc-section p,.doc-section li{font-size:14px;line-height:1.95}.doc-section li{margin-bottom:14px;color:var(--muted)}p code,li code{background:#eaeade;padding:2px 5px;font-size:12px;overflow-wrap:anywhere}.doc-section a{text-decoration:underline}.notice{border-left:3px solid #b6984e;background:#ede9dc;padding:16px 20px;font-size:13px;margin:24px 0}table{border-collapse:collapse;width:100%;font-size:13px}td,th{padding:12px 8px;border-bottom:1px solid var(--line);text-align:left}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip{position:fixed;top:-100px;padding:12px;background:var(--yellow);z-index:10}.skip:focus{top:5px}[hidden]{display:none!important}
@media(max-width:1000px){main,footer{margin-inline:28px}.docs-layout{grid-template-columns:190px minmax(0,1fr);gap:30px;margin:0;padding-inline:28px}.on-this-page{display:none}.doc-entry{gap:35px}.hero{padding-top:55px}.terminal-section{margin-bottom:65px}}
@media(max-width:650px){html{scroll-padding-top:25px}.header{padding:0 20px;height:72px;gap:20px}.brand{font-size:25px}.header nav{margin-left:auto;gap:18px;font-size:12px}.header nav a:nth-child(2),.small-cta{display:none}main,footer{margin-inline:20px}.release{font-size:10px;gap:6px}.hero{padding-top:45px}.eyebrow{font-size:9px}.hero h1{font-size:38px;letter-spacing:-2px}.intro{font-size:15px}.frameworks{font-size:10px}.frameworks span{padding:0 10px}.install-tabs>span{font-size:9px}.install-tabs button{padding:11px 14px}.code pre{font-size:11px;padding-left:14px}.installer p{padding-left:14px;font-size:11px}.terminal-top{padding:12px;font-size:9px}.terminal-content{padding:20px 15px;font-size:11px}.terminal-meta span{display:none}.user{margin-left:0}.checks{gap:10px;font-size:10px;flex-wrap:wrap}.caption{font-size:10px}.steps{grid-template-columns:1fr}.steps article{border-right:0;border-bottom:1px solid var(--line);padding:25px}.steps h3{margin-top:15px}.steps p{min-height:0}.doc-entry{grid-template-columns:1fr;gap:25px}h2{font-size:28px}.section-label{font-size:10px}.workflow,.faq{padding-top:30px;padding-bottom:45px}footer{flex-wrap:wrap;gap:18px}footer p{width:calc(100% - 130px);font-size:11px}.docs-layout{display:block;padding:25px 20px;margin:0}.sidebar{position:static;margin-bottom:38px;border-bottom:1px solid var(--line);padding-bottom:15px}.sidebar summary{list-style:revert;margin-bottom:14px}.sidebar nav{display:grid;grid-template-columns:1fr 1fr}.nav-group{grid-column:1/-1}.search input{margin-bottom:0}.document>h1{font-size:33px}.doc-section{scroll-margin-top:25px}.doc-section .code pre{font-size:11px}.doc-section td{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.sidebar{max-height:calc(100vh - 56px);overflow-y:auto;overscroll-behavior:contain;padding-right:6px}
.doc-highlight{font-weight:650}.doc-highlight small{display:inline-block;font:10px/1.6 var(--mono);border:1px solid #bfa968;padding:2px 6px;margin-left:8px;color:#695016;vertical-align:middle}
.guide-jump{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:24px 0}.guide-jump a{font-size:12px;padding:12px;border:1px solid var(--line);text-decoration:none}.guide-jump a:hover{background:#eae8dd}
.guide-preview{margin:26px 0}.guide-preview img{display:block;width:100%;height:auto;border:1px solid var(--line)}.guide-preview figcaption{font-size:11px;color:var(--muted);margin-top:8px}
.doc-section .code-label{font:11px/1.6 var(--mono);margin:24px 0 8px;color:var(--muted)}.code-label+.code{margin-top:0}
.table-scroll{max-width:100%;overflow-x:auto;margin:24px 0}.table-scroll table{min-width:450px}.table-scroll caption{text-align:left;font-size:12px;color:var(--muted);padding-bottom:10px}.table-scroll code{font:11px var(--mono);white-space:nowrap}
.guide-details{border-bottom:1px solid var(--line)}.guide-details summary{font-size:14px;padding:15px 0}.guide-details[open]{padding-bottom:12px}.guide-more{font-size:13px}.notice code{font-size:12px;overflow-wrap:anywhere}
@media(max-width:650px){.sidebar{max-height:none;overflow:visible;padding-right:0}.guide-jump{grid-template-columns:1fr}.guide-preview figcaption{font-size:10px}}

/* Homepage workflow and optional routing feature. */
.steps-four{grid-template-columns:repeat(4,minmax(0,1fr))}.steps-four article{min-width:0;padding:26px 22px}.steps-four h3{font-size:21px}.steps-four p{min-height:110px}.steps-four a{overflow-wrap:anywhere}.routing-feature{display:grid;grid-template-columns:1fr 1fr;gap:64px;border-top:1px solid var(--line);padding:48px 0 65px}.routing-feature p{font-size:14px}.routing-detail{align-self:center;border:1px solid var(--line);padding:28px;background:#eeeee5}.routing-detail h3{font-size:21px;margin:20px 0 14px}.routing-badge{font-size:11px;color:#46563c;border:1px solid #bec8b4;padding:5px 9px;display:inline-block}.routing-detail .routing-note{font-size:12px;margin-bottom:0}.caption a{text-decoration:underline}.doc-links small{font-size:10px;color:var(--muted);margin-left:8px}
@media(min-width:651px) and (max-width:1000px){.steps-four{grid-template-columns:repeat(2,minmax(0,1fr))}.steps-four article:nth-child(2){border-right:0}.steps-four article:nth-child(-n+2){border-bottom:1px solid var(--line)}.steps-four p{min-height:65px}}
@media(max-width:650px){.hero h1{font-size:clamp(29px,7.8vw,38px)}.desktop-break{display:none}.release{flex-wrap:wrap}.release a{margin-left:12px}.steps-four{grid-template-columns:1fr}.steps-four p{min-height:0}.routing-feature{grid-template-columns:1fr;gap:20px;padding:30px 0 45px}.routing-detail{padding:22px}.terminal-content{overflow-wrap:anywhere}}

.language-select{font:inherit;color:inherit;background:transparent;border:1px solid var(--line);border-radius:6px;padding:6px 8px;min-height:36px;max-width:110px;cursor:pointer}.language-select:focus-visible{outline:2px solid currentColor;outline-offset:3px}.header nav{align-items:center}

.guide-disclosure{min-width:0;align-self:start;border-top:1px solid var(--line)}.guide-disclosure>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;list-style:none;padding:20px 0;cursor:pointer;font-weight:600;min-height:56px}.guide-disclosure>summary::-webkit-details-marker{display:none}.guide-disclosure>summary small{font-weight:400;font-size:12px;color:var(--muted);margin-left:12px}.guide-disclosure .guide-collapse{display:none}.guide-disclosure[open] .guide-expand{display:none}.guide-disclosure[open] .guide-collapse{display:inline}.guide-indicator{font-size:24px;font-weight:400}.guide-disclosure[open] .guide-indicator{transform:rotate(45deg)}

.ml-shot{margin:28px 0 32px}.ml-shot img{display:block;width:100%;height:auto;border:1px solid #d8d8d0;border-radius:6px}.ml-shot figcaption{font-size:12px;color:#67675d;line-height:1.7;margin-top:12px}
