:root{--bg: #fafaf9;--surface: #ffffff;--inset: #f5f5f4;--ink: #1c1917;--text: #44403c;--muted: #78716c;--line: #e7e5e4;--accent: #5b3fe4;--accent-soft: #efecfd;--code-bg: #1c1917;--code-text: #e7e5e4;--code-muted: #a8a29e;--code-accent: #b9adf7;--radius: 14px;--wrap: 1080px;--narrow: 720px;--section: 136px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.65 Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block}h1,h2,h3{font-family:Outfit,Inter,sans-serif;color:var(--ink);margin:0;letter-spacing:-.02em;line-height:1.12}h1{font-size:clamp(40px,6vw,64px);font-weight:700}h2{font-size:clamp(30px,4vw,40px);font-weight:600}h3{font-size:20px;font-weight:600;letter-spacing:-.01em}p{margin:0}code,pre{font-family:JetBrains Mono,ui-monospace,monospace}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}.narrow{max-width:calc(var(--narrow) + 64px)}.center{text-align:center;justify-content:center}.section{padding:var(--section) 0}.section+.section{border-top:1px solid var(--line)}.section-head{max-width:640px;margin-bottom:72px}.section-head.center{margin-left:auto;margin-right:auto}.section-head p{margin-top:20px}.eyebrow{font-size:14px;font-weight:600;color:var(--accent);letter-spacing:.02em;margin-bottom:20px}.lead{font-size:20px;line-height:1.6;color:var(--text)}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:0 24px;border-radius:999px;background:var(--ink);color:#fff;font-size:16px;font-weight:500;border:1px solid var(--ink);transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.btn:hover{background:#292524}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btn-ghost:hover{background:var(--surface);border-color:#d6d3d1}.btn-small{height:38px;padding:0 18px;font-size:14px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}.link{color:var(--accent);font-weight:500}.link:hover{text-decoration:underline;text-underline-offset:3px}.nav{position:sticky;top:0;z-index:20;height:72px;display:flex;align-items:center;background:#fafaf9e0;backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .2s}.nav.scrolled{border-color:var(--line)}.nav-inner{width:100%;display:flex;align-items:center;gap:40px}.brand{display:inline-flex;align-items:center;gap:10px;font-family:Outfit,sans-serif;font-weight:700;font-size:20px;color:var(--ink);letter-spacing:-.01em}.nav-links{display:flex;gap:32px;font-size:15px;font-weight:500}.nav-links a{color:var(--muted);transition:color .15s}.nav-links a:hover,.nav-links a.router-link-active{color:var(--ink)}.nav-cta{margin-left:auto}.nav-links .nav-mobile-cta,.nav-toggle{display:none}.hero{padding:120px 0 var(--section)}.hero h1{max-width:820px}.hero .lead{max-width:620px;margin-top:28px}.hero-example{margin-top:96px;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}.input-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:32px;display:flex;flex-direction:column;gap:16px}.input-card .label{font-size:13px;font-weight:600;color:var(--muted);letter-spacing:.02em}.input-card .post{font-size:20px;line-height:1.5;color:var(--ink)}.input-card .meta{margin-top:auto;font-size:14px;color:var(--muted)}.code{margin:0;background:var(--code-bg);border-radius:var(--radius);overflow:hidden}.code figcaption{padding:14px 24px;font:500 13px/1 JetBrains Mono,monospace;color:var(--code-muted);border-bottom:1px solid #292524}.code pre{margin:0;padding:24px;overflow-x:auto;font-size:13.5px;line-height:1.75;color:var(--code-text);white-space:pre-wrap;overflow-wrap:anywhere}.code .k{color:var(--code-accent)}.code .c{color:var(--code-muted)}.grid{display:grid;gap:64px 56px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.item h3{margin-bottom:12px}.item p{color:var(--text)}.item .num{display:inline-block;font:600 14px/1 Outfit,sans-serif;color:var(--accent);margin-bottom:20px}.item .link{display:inline-block;margin-top:16px;font-size:15px}.row{display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:center}.row+.row{margin-top:128px}.row h2{margin-bottom:20px}.row .eyebrow{margin-bottom:16px}.row ul{margin:24px 0 0;padding:0;list-style:none}.row li{position:relative;padding-left:22px;margin-top:10px}.row li:before{content:"";position:absolute;left:0;top:.7em;width:8px;height:8px;border-radius:50%;background:var(--accent);opacity:.6}.compare{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.compare>div{padding:40px}.compare>div+div{border-left:1px solid var(--line);background:var(--accent-soft)}.compare h3{margin-bottom:20px}.compare ul{margin:0;padding:0;list-style:none}.compare li+li{margin-top:12px}.page-head{padding:112px 0 96px}.page-head .lead{margin-top:28px}.chips{display:flex;flex-wrap:wrap;gap:10px}.chip{padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:15px;color:var(--ink)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}.stat strong{display:block;font:600 44px/1 Outfit,sans-serif;color:var(--ink);letter-spacing:-.02em}.stat span{display:block;margin-top:12px;color:var(--muted);font-size:15px}.table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;font-size:16px}.table th,.table td{text-align:left;padding:20px 24px;border-bottom:1px solid var(--line);vertical-align:top}.table tr:last-child td{border-bottom:0}.table th{font-size:13px;font-weight:600;color:var(--muted);letter-spacing:.02em;background:var(--inset)}.table td:first-child{color:var(--ink);font-weight:500}.table code{font-size:14px;color:var(--accent)}.table-wrap{overflow-x:auto}.badge{display:inline-block;font-size:13px;font-weight:500;padding:2px 10px;border-radius:999px;background:#ecfdf5;color:#047857}.badge.soon{background:var(--inset);color:var(--muted)}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}.plan{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:40px 36px;display:flex;flex-direction:column}.plan.featured{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.plan h3{font-size:22px}.plan .for{margin-top:8px;color:var(--muted);font-size:15px}.plan .price{margin:32px 0 4px;font:600 48px/1 Outfit,sans-serif;color:var(--ink);letter-spacing:-.02em}.plan .per{color:var(--muted);font-size:15px}.plan ul{margin:32px 0 40px;padding:0;list-style:none;font-size:16px}.plan li{padding:10px 0;border-top:1px solid var(--line)}.plan .btn{margin-top:auto}.faq{max-width:var(--narrow);margin:0 auto}.faq details{border-bottom:1px solid var(--line);padding:28px 0}.faq summary{cursor:pointer;font:600 19px/1.4 Outfit,sans-serif;color:var(--ink);list-style:none;display:flex;justify-content:space-between;gap:24px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--muted);font-weight:400}.faq details[open] summary:after{content:"–"}.faq details p{margin-top:16px}.cta{padding:var(--section) 0;border-top:1px solid var(--line)}.cta .lead{margin-top:20px}.footer{border-top:1px solid var(--line);padding:80px 0 48px;font-size:15px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}.footer-brand p{margin-top:16px;color:var(--muted)}.footer nav{display:flex;flex-direction:column;gap:12px}.footer nav strong{color:var(--ink);font-weight:600;margin-bottom:4px}.footer nav a{color:var(--muted)}.footer nav a:hover{color:var(--ink)}.footer-base{margin-top:72px;color:var(--muted);font-size:14px}.not-found{padding:200px 0}.hero-example.top{align-items:start}.examples{margin-top:88px}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.tab{height:38px;padding:0 18px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--muted);font:500 14px/1 Inter,sans-serif;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.tab:hover{color:var(--ink);background:var(--surface)}.tab.active{background:var(--ink);border-color:var(--ink);color:#fff}.examples .hero-example{margin-top:0;grid-template-columns:2fr 3fr}.input-card .meta{display:flex;flex-direction:column;gap:4px}.input-card .meta{margin-top:0}.input-card .request{margin:auto 0 0;padding:16px 18px;background:var(--inset);border-radius:10px;font-size:13px;line-height:1.7;white-space:pre-wrap;color:var(--text)}.input-card .request .k{color:var(--accent)}.code .j-key{color:var(--code-text)}.apis{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.api{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;gap:10px;transition:border-color .15s}.api:hover{border-color:#d6d3d1}.api-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.api code{font-size:13px;color:var(--accent)}.api p{font-size:16px}.flow{--good: #5b3fe4;--mid: #a8a29e;--weak: #e0642c;--muted-dot: #d6d3d1}.flow-steps{list-style:none;margin:0 0 24px;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.flow-steps button{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:6px;width:100%;height:100%;padding:20px 4px 0;border-top:2px solid var(--line);transition:border-color .3s}.flow-steps button:focus-visible{outline:2px solid var(--accent)}.flow-steps .num{font:600 14px/1 Outfit,sans-serif;color:var(--muted)}.flow-steps strong{font:600 18px/1.3 Outfit,sans-serif;color:var(--muted);transition:color .3s}.flow-steps span:last-child{font-size:15px;color:var(--muted)}.flow-steps .done button{border-color:#c4b8f5}.flow-steps .active button{border-color:var(--accent)}.flow-steps .active .num,.flow-steps .done .num{color:var(--accent)}.flow-steps .active strong,.flow-steps .done strong{color:var(--ink)}.flow-card{display:grid;grid-template-columns:1fr 300px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.flow-chart{position:relative;padding:24px 24px 12px}.flow-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;font-size:14px}.flow-head strong{color:var(--ink);font-weight:600}.legend{display:flex;gap:16px;color:var(--text);transition:opacity .4s}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:10px;height:10px;border-radius:50%}.flow svg{display:block;width:100%;height:auto;margin-top:8px}.flow .hidden{opacity:0}.flow .axes{transition:opacity .6s}.flow .weekend{fill:var(--inset)}.flow .grid{stroke:var(--line);stroke-width:1}.flow .tick{font:400 12px Inter,sans-serif;fill:var(--muted)}.flow .dot{stroke:var(--surface);stroke-width:2;transition:transform .9s cubic-bezier(.2,.7,.2,1),fill .6s,opacity .5s,r .2s}.flow .dot.near{r:7.5px}.flow .hit{fill:transparent;cursor:default}.flow .knn{stroke:var(--ink);stroke-width:1.5;stroke-dasharray:3 4;opacity:.5}.flow .you{transition:transform .4s cubic-bezier(.2,.7,.2,1);animation:drop .5s ease-out}.flow .you circle{fill:var(--surface);stroke:var(--ink);stroke-width:3}.flow .you text{font:600 13px Inter,sans-serif;fill:var(--ink);paint-order:stroke;stroke:var(--surface);stroke-width:4px}@keyframes drop{0%{opacity:0}}.tip{position:absolute;transform:translate(-50%,calc(-100% - 14px));margin-left:24px;margin-top:40px;background:var(--ink);color:#fff;border-radius:8px;padding:8px 12px;font-size:13px;line-height:1.4;pointer-events:none;white-space:nowrap;display:flex;flex-direction:column}.tip span{color:#d6d3d1}.flow-side{border-left:1px solid var(--line);background:var(--inset);padding:28px 24px;display:flex;flex-direction:column;gap:20px}.flow-side .label{font-size:13px;font-weight:600;color:var(--muted);letter-spacing:.02em}.field{display:flex;flex-direction:column;gap:8px}.field-label{font-size:14px;font-weight:500;color:var(--ink);display:flex;justify-content:space-between}.field-label b{font-weight:500;color:var(--muted)}.seg{display:flex;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:3px}.seg button{flex:1;border:0;background:transparent;border-radius:7px;height:32px;font:500 13px/1 Inter,sans-serif;color:var(--muted);cursor:pointer}.seg button.on{background:var(--ink);color:#fff}.field input[type=range]{width:100%;accent-color:var(--accent)}.prediction{margin-top:auto;padding-top:20px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:4px;transition:opacity .4s}.prediction strong{font:600 32px/1.1 Outfit,sans-serif;color:var(--ink);letter-spacing:-.02em}.prediction .muted{font-size:14px}.prediction ul{margin:12px 0 0;padding:0;list-style:none;font-size:15px;line-height:1.5;color:var(--ink)}.prediction li+li{margin-top:8px}.flow-note{margin-top:20px;font-size:15px}@media(max-width:900px){.apis,.flow-steps{grid-template-columns:1fr 1fr}.flow-card{grid-template-columns:1fr}.flow-side{border-left:0;border-top:1px solid var(--line)}.flow-chart{padding:20px 12px 8px}.examples{margin-top:64px}.examples .hero-example{grid-template-columns:1fr}}@media(max-width:560px){.apis,.flow-steps{grid-template-columns:1fr}.flow .tick{font-size:16px}}@media(max-width:900px){:root{--section: 88px}.wrap{padding:0 20px}.hero{padding-top:72px}.hero-example,.row,.compare,.grid-2,.grid-3,.plans{grid-template-columns:1fr}.hero-example{margin-top:64px}.row{gap:40px}.row+.row{margin-top:96px}.grid{gap:48px}.compare>div+div{border-left:0;border-top:1px solid var(--line)}.compare>div{padding:28px}.stats,.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1 / -1}.page-head{padding:72px 0 56px}.section-head{margin-bottom:48px}.nav-cta{display:none}.nav-toggle{display:flex;flex-direction:column;gap:6px;margin-left:auto;background:none;border:0;padding:10px;cursor:pointer}.nav-toggle span{width:22px;height:2px;background:var(--ink);border-radius:2px}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:8px 20px 24px}.nav-links.open{display:flex}.nav-links a{padding:14px 0;font-size:17px}.nav-links .nav-mobile-cta{display:inline-flex;margin-top:12px;color:#fff}.table th,.table td{padding:16px}}.api-example{display:flex;flex-direction:column;gap:12px;min-width:0}.api-example .switch{align-self:flex-start;display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.api-example .switch button{border:0;background:none;font:600 13px/1 Inter,sans-serif;color:var(--muted);padding:7px 12px;border-radius:7px;cursor:pointer}.api-example .switch button.on{background:var(--ink);color:#fff}.api-example .dev{display:flex;flex-direction:column;gap:12px}.api-ui{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;gap:12px;font-size:15px}.api-ui .quote{margin:0;color:var(--ink);font-weight:500}.api-ui .tag{font-size:11px;font-weight:700;background:var(--inset);color:var(--muted);padding:2px 6px;border-radius:6px;vertical-align:middle}.api-ui .note{margin:0;font-size:13px;color:var(--muted)}.api-ui .chips{display:flex;flex-wrap:wrap;gap:6px}.api-ui .chip{font-size:13px;padding:4px 10px;border-radius:999px;background:var(--inset);color:var(--text)}.api-ui .chip.accent{background:var(--accent-soft);color:var(--accent);font-weight:600}.api-ui .meter,.api-ui .bar-row,.api-ui .lift-row{display:grid;grid-template-columns:minmax(0,1fr) 40% 44px;align-items:center;gap:10px;font-size:14px}.api-ui .meter{grid-template-columns:70px 1fr 60px}.api-ui .meter span{color:var(--muted);font-size:13px}.api-ui i{display:block;height:8px;border-radius:99px;background:var(--inset);overflow:hidden}.api-ui i b{display:block;height:100%;border-radius:99px;background:var(--accent);max-width:100%}.api-ui em{font-style:normal;font-size:13px;font-weight:600;color:var(--ink);text-align:right}.api-ui .name{display:flex;flex-direction:column;min-width:0}.api-ui .name strong{color:var(--ink);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.api-ui .name small{color:var(--muted);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.api-ui .vector{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.api-ui .cell{position:relative;border-radius:8px;overflow:hidden;padding:8px;min-height:58px;display:flex;flex-direction:column;justify-content:space-between}.api-ui .cell b{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent)}.api-ui .cell span,.api-ui .cell em{position:relative;font-size:11px;color:var(--ink);text-align:left}.api-ui .cell em{font-size:14px}.api-ui .lift-row span{color:var(--ink)}.api-ui b.up{background:#10b981}.api-ui b.down{background:#f43f5e}.api-ui em.up,.api-ui .lift.up{color:#047857}.api-ui em.down,.api-ui .down{color:#be123c}.api-ui .expected{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;padding-bottom:10px;border-bottom:1px solid var(--line)}.api-ui .expected strong{font-size:34px;line-height:1;color:var(--ink)}.api-ui .expected span{color:var(--muted)}.api-ui .expected em{margin-left:auto;text-align:left}.api-ui .api-tip{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:500}.api-ui .lift{font-size:12px;font-weight:700;background:#d1fae5;padding:3px 8px;border-radius:6px;min-width:48px;text-align:center}.api-ui .product{display:flex;align-items:center;gap:8px;color:var(--ink);padding-bottom:10px;border-bottom:1px solid var(--line)}.api-ui .product span{margin-left:auto;color:var(--muted)}@media(max-width:560px){.api-ui .vector{grid-template-columns:repeat(2,1fr)}.api-ui .bar-row,.api-ui .lift-row{grid-template-columns:minmax(0,1fr) 30% 40px}}.example-narrow{max-width:640px;margin:0 auto}
