*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--font-manrope), Manrope, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]{display:none}.mx-auto{margin-left:auto;margin-right:auto}.mt-auto{margin-top:auto}.flex{display:flex}.contents{display:contents}.min-h-screen{min-height:100vh}.max-w-\[1600px\]{max-width:1600px}.flex-grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-border{--tw-border-opacity:1;border-color:rgb(227 226 224/var(--tw-border-opacity))}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.text-center{text-align:center}.font-sans{font-family:var(--font-manrope), Manrope, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-semibold{font-weight:600}.text-primary{--tw-text-opacity:1;color:rgb(55 53 47/var(--tw-text-opacity))}.text-secondary{--tw-text-opacity:1;color:rgb(107 107 107/var(--tw-text-opacity))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{--bg:#f6f8fb;--panel:#fff;--panel-soft:#f3f6fb;--text:#09090b;--muted:#616977;--subtle:#98a2b3;--line:#e4e7ec;--line-strong:#cbd5e1;--accent:#155eef;--accent-dark:#0f172a;--accent-soft:#e8f0ff;--good:#155eef;--warn:#9a5b00;--danger:#b42318;--radius:8px;--shadow:0 16px 44px #0f172a14}*{box-sizing:border-box}html{background:var(--bg)}body{background:var(--bg);color:var(--text);font-family:var(--font-manrope), Manrope, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}textarea,input,select{border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--text);background:#fff;outline:none;transition:border-color .16s,box-shadow .16s,background .16s}textarea{resize:vertical;min-height:240px;padding:14px;line-height:1.55}input,select{min-height:42px;padding:0 12px}input:focus,select:focus,textarea:focus{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #155eef24}a{color:inherit}.lab-shell{width:min(1480px,100vw - 32px);margin:0 auto;padding:28px 0 40px}.workspace-tabs{border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fff;border-radius:12px;gap:8px;padding:8px;display:flex;overflow-x:auto;box-shadow:inset 0 1px #ffffffb3}.workspace-tabs button{white-space:nowrap;color:var(--muted);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:650;transition:color .16s,background .16s,transform .16s;display:inline-flex}.workspace-tabs button:hover{color:var(--text);background:var(--panel-soft)}.workspace-tabs button.active{color:#fff;background:var(--accent-dark);transform:translateY(-1px)}.error-banner{border-radius:var(--radius);color:var(--danger);background:#fff4f2;border:1px solid #b4231838;margin-top:14px;padding:12px 14px;font-size:14px}.workspace-grid{grid-template-columns:minmax(330px,430px) minmax(0,1fr);gap:18px;margin-top:18px;display:grid}.control-panel,.visual-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px}.control-panel{flex-direction:column;gap:14px;padding:20px;display:flex}.control-panel h2{letter-spacing:0;margin:0;font-size:23px}.control-panel p{color:var(--muted);margin:-6px 0 2px;font-size:14px;line-height:1.5}.control-panel label:not(.text-row){color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;font-size:13px;font-weight:650;display:grid}.visual-panel{align-content:start;gap:16px;min-height:620px;padding:18px;display:grid;overflow:hidden}.provider-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);gap:10px;padding:12px;display:grid}.provider-card div{justify-content:space-between;align-items:center;gap:12px;display:flex}.provider-card span{color:var(--muted);font-size:12px;font-weight:750}.provider-card strong{color:var(--accent);font-size:13px}.primary-action{border-radius:var(--radius);background:linear-gradient(180deg, #1d6bff, var(--accent));color:#fff;border:0;justify-content:center;align-items:center;gap:8px;min-height:44px;font-weight:800;transition:transform .16s,opacity .16s,box-shadow .16s;display:inline-flex;box-shadow:0 10px 24px #155eef3d}.primary-action:hover{transform:translateY(-1px);box-shadow:0 14px 30px #155eef47}.primary-action:disabled{cursor:wait;opacity:.68;transform:none}.spin{animation:1s linear infinite spin}.hint-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);color:var(--muted);padding:12px;font-size:13px;line-height:1.45}.library-card,.query-diagnostics{border:1px solid var(--line);border-radius:var(--radius);background:var(--panel-soft);gap:12px;padding:12px;display:grid}.library-card strong,.library-card span,.query-diagnostics strong,.query-diagnostics p{display:block}.library-card strong,.query-diagnostics strong{font-size:13px;font-weight:850}.library-card span,.query-diagnostics p{color:var(--muted);margin:3px 0 0;font-size:13px;line-height:1.45}.library-card .primary-action{width:100%}.query-diagnostics.invalid{background:#fff4f2;border-color:#b423183d}.query-diagnostics.invalid strong,.query-diagnostics.invalid p{color:var(--danger)}.secondary-action,.copy-action,.icon-action{border:1px solid var(--line);border-radius:var(--radius);color:var(--text);background:#fff;justify-content:center;align-items:center;gap:7px;font-weight:800;transition:border-color .16s,color .16s,background .16s,transform .16s;display:inline-flex}.secondary-action{width:fit-content;min-height:40px;padding:0 13px}.copy-action{min-height:36px;color:var(--accent);padding:0 11px}.icon-action{width:38px;height:38px;color:var(--muted)}.secondary-action:hover,.copy-action:hover,.icon-action:hover{background:var(--accent-soft);color:var(--accent);border-color:#155eef66;transform:translateY(-1px)}.secondary-action:disabled{cursor:not-allowed;opacity:.56;transform:none}.text-rows{gap:10px;display:grid}.text-rows-head,.raw-vector-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.text-rows-head span,.raw-vector-head strong{font-size:13px;font-weight:850}.text-rows-head small,.raw-vector-head span{color:var(--muted);font-size:12px;font-weight:700}.text-row{grid-template-columns:58px 1fr auto;align-items:start;gap:8px;display:grid}.text-row span{color:var(--muted);padding-top:12px;font-size:12px;font-weight:850}.text-row textarea{resize:vertical;min-height:52px;padding:10px 12px;line-height:1.35}.text-row .icon-action{margin-top:2px}.plot-shell{border:1px solid var(--line);background-color:#fff;background-image:linear-gradient(#cbd5e18c 1px,#0000 1px),linear-gradient(90deg,#cbd5e18c 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:48px 48px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:12px;min-height:420px;position:relative;overflow:hidden}.plot-header{border-bottom:1px solid var(--line);background:#ffffffe0;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.plot-header strong,.plot-header span{display:block}.plot-header strong{font-size:14px}.plot-header span{color:var(--muted);margin-top:2px;font-size:12px}.plot-stats{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.plot-stats span{border:1px solid var(--line);color:var(--accent);background:#fff;border-radius:999px;padding:5px 8px;font-weight:800}.plot-controls{border-bottom:1px solid var(--line);background:#ffffffe6;flex-wrap:wrap;gap:6px;padding:8px 14px;display:flex}.plot-controls button{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;transition:border-color .16s,color .16s,background .16s}.plot-controls button:hover{background:var(--accent-soft);color:var(--accent);border-color:#155eef66}.plot-shell svg{cursor:grab;touch-action:none;width:100%;height:auto;min-height:420px;display:block}.axis-line{stroke:#94a3b8;stroke-width:1px;stroke-dasharray:4 6}.neighbor-line{stroke:var(--accent);stroke-width:1px;stroke-linecap:round}.query-line{stroke:#1d6bff;stroke-dasharray:7 5}.plot-axis-label{fill:var(--muted);font-size:11px;font-weight:750}.plot-point{color:var(--accent);cursor:pointer;transition:opacity .16s}.plot-point circle{fill:var(--accent-dark);stroke:#fff;stroke-width:3px;filter:drop-shadow(0 8px 14px #0f172a2e);transition:r .16s,fill .16s}.plot-point .plot-hit-area{fill:#0000;stroke:#0000;filter:none}.plot-point text{fill:var(--text);paint-order:stroke;stroke:#fff;stroke-width:4px;font-size:13px;font-weight:850}.plot-point.selected circle:not(.plot-hit-area),.plot-point:hover circle:not(.plot-hit-area){fill:var(--accent)}.query-point circle:not(.plot-hit-area){fill:#1d6bff;stroke-width:4px}.query-point text{fill:#0b3b9e}.plot-hover-card{border:1px solid var(--line);border-radius:var(--radius);pointer-events:none;background:#fffffff0;width:min(360px,100% - 28px);padding:12px;position:absolute;bottom:14px;right:14px;box-shadow:0 12px 28px #0f172a1f}.plot-hover-card div{justify-content:space-between;gap:12px;display:flex}.plot-hover-card strong{font-size:13px}.plot-hover-card span,.plot-hover-card small{color:var(--muted);font-size:12px;font-weight:750}.plot-hover-card p{color:var(--muted);margin:6px 0;font-size:13px;line-height:1.4}.result-list,.pair-grid,.pricing-table,.bm25-list{gap:10px;display:grid}.result-row,.pricing-row,.bm25-card,.pair-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:12px}.result-row,.pricing-row{grid-template-columns:1fr auto;align-items:center;gap:14px;display:grid}.result-row{width:100%;color:inherit;text-align:left;cursor:pointer;transition:border-color .16s,background .16s,transform .16s}.result-row:hover,.result-row.selected{background:var(--accent-soft);border-color:#155eef5c}.result-row:hover{transform:translateY(-1px)}.vector-detail{border:1px solid var(--line);background:#fff;border-radius:12px;gap:12px;padding:14px;display:grid}.empty-detail{min-height:190px;color:var(--muted);text-align:center;align-content:center;place-items:center}.empty-detail strong,.empty-detail p{margin:0}.empty-detail strong{color:var(--text)}.detail-head{justify-content:space-between;align-items:start;gap:14px;display:flex}.detail-head span,.detail-head strong{display:block}.detail-head span{color:var(--accent);font-size:12px;font-weight:850}.detail-head strong{margin-top:2px;font-size:18px}.selected-text{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.raw-vector{border:1px solid var(--line);border-radius:var(--radius);color:#dbeafe;white-space:pre-wrap;word-break:break-word;background:#0b1220;max-height:210px;margin:0;padding:12px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:12px;line-height:1.55;overflow:auto}.raw-vector.compact{max-height:124px}.result-row p,.pricing-row small,.bm25-card p,.bm25-card small{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.45}.metric-pair{font-variant-numeric:tabular-nums;justify-items:end;gap:2px;display:grid}.metric-pair span,.pricing-row span{font-weight:800}.metric-pair small{color:var(--muted)}.pair-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.pair-card{gap:6px;display:grid}.pair-card span{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.pair-card strong{letter-spacing:-.03em;font-size:22px}.pair-card small{color:var(--muted)}.stats-row{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stats-row div{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:12px}.stats-row strong,.stats-row span{display:block}.stats-row strong{letter-spacing:-.03em;font-size:22px}.stats-row span{color:var(--muted);margin-top:4px;font-size:12px}.token-cloud{border:1px solid var(--line);background:#fbfbfa;border-radius:12px;flex-wrap:wrap;align-content:flex-start;gap:6px;max-height:220px;padding:12px;display:flex;overflow:auto}.token-cloud span{background:var(--accent-soft);border-radius:7px;padding:4px 7px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:12px;transition:transform .16s,background .16s}.token-cloud span:hover{background:#dbeafe;transform:translateY(-1px)}.source-row{flex-wrap:wrap;gap:10px;display:flex}.source-row a{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:6px 10px;font-size:12px;text-decoration:none}.bm25-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.bm25-head span{font-variant-numeric:tabular-nums;font-weight:800}.bar-track{background:var(--panel-soft);border-radius:999px;height:8px;margin-top:10px;overflow:hidden}.bar-track div{border-radius:inherit;background:var(--accent);height:100%;transition:width .22s}mark{background:var(--accent-soft);color:var(--text);border-radius:4px;padding:0 2px}.empty-state{border:1px dashed var(--line-strong);min-height:260px;color:var(--muted);text-align:center;border-radius:12px;align-content:center;place-items:center;gap:10px;padding:24px;display:grid}.empty-state h3,.empty-state p{margin:0}.empty-state h3{color:var(--text)}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:980px){.stats-row{grid-template-columns:repeat(3,1fr)}.workspace-grid{grid-template-columns:1fr}.visual-panel{min-height:auto}}@media (max-width:640px){.lab-shell{width:min(100vw - 20px,1480px);padding-top:16px}.workspace-tabs{border-radius:12px}.workspace-tabs button{padding:9px 11px}.control-panel,.visual-panel{padding:14px}.stats-row{grid-template-columns:1fr}.text-row{grid-template-columns:1fr auto}.text-row span{grid-column:1/-1}.plot-header,.detail-head{flex-direction:column;align-items:stretch}.plot-stats{justify-content:flex-start}.result-row,.pricing-row{grid-template-columns:1fr}.metric-pair{justify-items:start}}.hover\:text-primary:hover{--tw-text-opacity:1;color:rgb(55 53 47/var(--tw-text-opacity))}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width:640px){.sm\:flex-row{flex-direction:row}.sm\:text-right{text-align:right}}
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a342834df7752944-s.3hd2l7bm32o7k.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d3fe2f289711ac3f-s.1l2zhvq5eocqf.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/58c4895d0a0ef7cc-s.2vhvl9vrvk-va.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/bfc7db5c00d21bc5-s.173xwsdme27n8.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6ab0db14f70d8ed6-s.13hnt-xgp82zk.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a343f882a40d2cc9-s.p.1sj6eobyi31rd.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Fallback;src:local(Arial);ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.0%;size-adjust:103.19%}.manrope_b7d5735e-module__suUhcW__className{font-family:Manrope,Manrope Fallback;font-style:normal}.manrope_b7d5735e-module__suUhcW__variable{--font-manrope:"Manrope", "Manrope Fallback"}
