:root{--fig-search: #3b82f6;--fig-search-deep: #2563eb;--fig-chat: #6366f1;--fig-chat-deep: #4f46e5;--fig-chat-link: #818cf8;--fig-audit: #2563eb;--app-bg: #09090b;--app-bg-subtle: #111113;--app-surface: #18181b;--app-surface-2: #1c1c1f;--app-hover: #27272a;--app-border: #27272a;--app-border-2: #3f3f46;--app-text: #fafafa;--app-text-2: #a1a1aa;--app-text-3: #838390;--app-primary: #3b82f6;--app-primary-text: #93c5fd;--app-critical: #ef4444;--app-serious: #f97316;--app-moderate: #eab308;--app-minor: #6b7280;--app-success: #22c55e}.wash{position:relative;overflow:hidden}.wash>.container{position:relative;z-index:1}.wash:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(52rem 30rem at 82% -8%,var(--wash-tint, rgb(59 130 246 / .07)),transparent 60%),radial-gradient(40rem 26rem at -10% 108%,var(--wash-tint-2, rgb(59 130 246 / .05)),transparent 55%)}.wash--search{--wash-tint: rgb(59 130 246 / .08);--wash-tint-2: rgb(14 165 233 / .06)}.wash--chat{--wash-tint: rgb(99 102 241 / .09);--wash-tint-2: rgb(139 92 246 / .06)}.wash--audit{--wash-tint: rgb(37 99 235 / .08);--wash-tint-2: rgb(16 185 129 / .05)}.wash.wash--search:before,.wash.wash--chat:before,.wash.wash--audit:before,.wash--dots.wash--search:after,.wash--dots.wash--chat:after,.wash--dots.wash--audit:after{display:block}.wash--dots:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(rgb(15 23 42 / .055) 1px,transparent 1px);background-size:22px 22px;-webkit-mask-image:radial-gradient(70% 90% at 50% 0%,#000,transparent 78%);mask-image:radial-gradient(70% 90% at 50% 0%,#000,transparent 78%)}.fig-stage{position:relative;display:flex;align-items:center;justify-content:center;padding:clamp(1.25rem,3vw,2.5rem);min-width:0}.fig-stage:before{content:"";position:absolute;top:6%;right:2%;bottom:6%;left:2%;border-radius:50%;pointer-events:none;background:radial-gradient(closest-side,var(--stage-tint, rgb(59 130 246 / .13)),transparent 72%);filter:blur(8px)}.fig-stage--search{--stage-tint: rgb(59 130 246 / .14)}.fig-stage--chat{--stage-tint: rgb(99 102 241 / .16)}.fig-stage--audit{--stage-tint: rgb(37 99 235 / .13)}.fig-stage>*{position:relative;z-index:1}.fig-chip{position:absolute;z-index:2;display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--border);border-radius:999px;box-shadow:0 6px 18px #0f172a1a;padding:6px 12px;font-size:.72rem;font-weight:600;color:var(--text-2);white-space:nowrap}.fig-chip code{font-family:var(--font-mono);font-size:.68rem;color:var(--text-3);background:var(--bg-subtle);border-radius:4px;padding:1px 5px}.fig-chip .fig-chip-dot{width:7px;height:7px;border-radius:50%;background:var(--chip-dot, var(--fig-search));flex-shrink:0}.fig-chip--chat{--chip-dot: var(--fig-chat)}.fig-chip--success{--chip-dot: #16a34a}@media (max-width: 860px){.fig-chip{display:none}}.fig-chip.pop{opacity:0;transform:translateY(6px) scale(.96);animation:figChipPop .5s var(--ease-out) forwards;animation-delay:var(--pop, .6s)}@keyframes figChipPop{to{opacity:1;transform:translateY(0) scale(1)}}.fig-row{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;margin-top:clamp(2.5rem,5vw,4rem)}.fig-row--flip{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.fig-row--flip .fig-row-text{order:2}.fig-row--flip .fig-row-visual{order:1}@media (max-width: 900px){.fig-row,.fig-row--flip{grid-template-columns:1fr}.fig-row--flip .fig-row-text{order:1}.fig-row--flip .fig-row-visual{order:2}}.fig-row-text .section-tag{margin-bottom:.9rem}.fig-row-text h3{font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:700;letter-spacing:-.03em;color:var(--text);margin:0 0 .8rem;line-height:1.22}.fig-row-text>p{font-size:.95rem;color:var(--text-2);line-height:1.75;margin:0 0 1.4rem;max-width:46ch}.fig-points{display:flex;flex-direction:column;border-top:1px solid var(--border)}.fig-points li{position:relative;padding:.85rem 0 .85rem 1.15rem;border-bottom:1px solid var(--border)}.fig-points li strong{display:block;font-size:.875rem;font-weight:650;color:var(--text);line-height:1.45;margin-bottom:.2rem}.fig-points li span{display:block;font-size:.85rem;color:var(--text-2);line-height:1.65}.fig-points li:before{content:"";position:absolute;left:0;top:calc(.85rem + .5em);width:6px;height:6px;border-radius:50%;background:var(--points-dot, var(--fig-search))}.fig-points--stack li strong{white-space:normal}.fig-rail{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0;margin-top:3rem;border-top:1px solid var(--border)}.fig-rail>li{padding:1.5rem 1.6rem 1.5rem 0;border-bottom:1px solid var(--border);position:relative}.fig-rail>li+li{padding-left:1.6rem}@media (min-width: 901px){.fig-rail--3{grid-template-columns:repeat(3,1fr)}.fig-rail>li:not(:first-child):before{content:"";position:absolute;left:0;top:1.5rem;bottom:1.5rem;width:1px;background:var(--border)}}@media (max-width: 900px){.fig-rail{grid-template-columns:1fr}.fig-rail>li+li{padding-left:0}}.fig-rail-kicker{font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.08em;color:var(--rail-accent, var(--fig-search-deep));display:block;margin-bottom:.55rem}.fig-rail h3{font-size:.95rem;font-weight:650;color:var(--text);margin:0 0 .45rem;line-height:1.35}.fig-rail p{font-size:.85rem;color:var(--text-2);line-height:1.68;margin:0}.ksr-modal{--ks-bg: rgba(255, 255, 255, .92);--ks-surface: rgba(248, 250, 252, .6);--ks-border: rgba(226, 232, 240, .9);--ks-text: #1e293b;--ks-text-muted: #64748b;--ks-primary: #3b82f6;--ks-primary-light: rgba(59, 130, 246, .08);width:min(560px,100%);background:var(--ks-bg);border:1px solid var(--ks-border);border-radius:16px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a,0 24px 60px -18px #0f172a2e;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--ks-text);font-family:var(--font-sans);display:flex;flex-direction:column;overflow:hidden;text-align:left}.ksr-modal--wide{width:min(640px,100%)}.ksr-modal--inline .ksr-close,.ksr-modal--inline .ksr-footer{display:none}.ksr-bar{display:flex;align-items:center;gap:14px;padding:18px 22px 12px}.ksr-bar svg{flex-shrink:0;color:var(--ks-primary);opacity:.8}.ksr-query{flex:1;font-size:clamp(15px,2vw,18px);font-weight:500;letter-spacing:-.01em;color:var(--ks-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ksr-caret{display:inline-block;width:2px;height:1.05em;background:var(--ks-primary);vertical-align:text-bottom;margin-left:2px;animation:ksrBlink 1.1s steps(1) infinite}@keyframes ksrBlink{50%{opacity:0}}.ksr-close{background:var(--ks-surface);border:1px solid var(--ks-border);color:var(--ks-text-muted);padding:7px;border-radius:12px;display:grid;place-items:center;flex-shrink:0}.ksr-tabs{display:flex;gap:4px;padding:0 16px 8px;border-bottom:1px solid var(--ks-border)}.ksr-tab{font-size:13px;font-weight:600;padding:7px 12px;color:var(--ks-text-muted);border-radius:10px}.ksr-tab.is-active{color:var(--ks-primary);background:var(--ks-primary-light)}.ksr-body{padding:12px 0 4px}.ksr-summary{margin:12px 16px 16px;padding:16px 18px;background:linear-gradient(135deg,var(--ks-primary-light),rgba(59,130,246,.03));border:1px solid rgba(59,130,246,.15);border-radius:16px;font-size:13.5px;line-height:1.65;color:var(--ks-text)}.ksr-summary-label{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--ks-primary);margin-bottom:10px}.ksr-summary-label svg{animation:ksrSparkle 2s infinite}@keyframes ksrSparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.ksr-summary-pulse{height:8px;border-radius:4px;background:var(--ks-primary);opacity:.08;margin-top:10px;animation:ksrPulse 2s infinite ease-in-out}.ksr-summary-pulse:nth-child(2){width:92%;animation-delay:.2s}.ksr-summary-pulse:nth-child(3){width:78%;animation-delay:.4s}@keyframes ksrPulse{0%,to{opacity:.05}50%{opacity:.15}}.ksr-results{display:flex;flex-direction:column;gap:4px;padding:0 12px 8px}.ksr-item{padding:12px 14px;border-radius:12px;border:1px solid var(--ks-border);background:color-mix(in srgb,var(--ks-surface) 82%,transparent);box-shadow:0 2px 8px #0f172a0a}.ksr-item.is-pinned{border-left:3px solid var(--ks-primary);background:var(--ks-primary-light)}.ksr-title{display:flex;align-items:center;gap:6px;font-size:14.5px;font-weight:600;letter-spacing:-.01em;color:var(--ks-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}.ksr-title .ksr-star{color:#fbbf24;display:inline-flex;flex-shrink:0}.ksr-url{font-size:11.5px;font-weight:500;color:var(--ks-primary);opacity:.9;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ksr-snippet{font-size:13px;color:var(--ks-text-muted);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ksr-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.ksr-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:999px;background:var(--ks-surface);border:1px solid var(--ks-border);color:var(--ks-text-muted);font-size:10.5px;font-weight:600}.ksr-chip strong{color:var(--ks-text);font-weight:700}.ksr-image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:12px 16px 16px}.ksr-image-card{border-radius:14px;overflow:hidden;border:1px solid var(--ks-border);background:var(--ks-bg);box-shadow:0 2px 4px #00000005}.ksr-image-thumb{height:84px;background:var(--thumb, linear-gradient(135deg, #dbeafe, #bfdbfe));position:relative;overflow:hidden}.ksr-image-thumb img{width:100%;height:100%;object-fit:cover;display:block}.ksr-image-thumb:not(:has(img)):after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(3.5rem 2.5rem at 30% 75%,rgb(255 255 255 / .55),transparent 70%),radial-gradient(2rem 2rem at 75% 30%,rgb(255 255 255 / .4),transparent 70%)}.ksr-image-info{padding:9px 11px}.ksr-image-title{font-size:12px;font-weight:600;color:var(--ks-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ksr-image-url{font-size:10px;color:var(--ks-text-muted);opacity:.8;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ksr-footer{padding:12px 22px;border-top:1px solid var(--ks-border);display:flex;align-items:center;justify-content:space-between;font-size:11.5px;color:var(--ks-text-muted);background:var(--ks-surface)}.ksr-footer strong{font-weight:600;color:var(--ks-text-muted)}.ksr-footer kbd{background:var(--ks-bg);border:1px solid var(--ks-border);border-radius:6px;padding:1px 6px;font-size:10px;font-family:var(--font-sans);font-weight:600;box-shadow:0 1px 2px #0000000d}.kzr-scene{position:relative;display:inline-flex;align-items:flex-end;gap:14px}.kzr-panel{width:min(340px,100%);background:#18181b;border:1px solid rgba(255,255,255,.1);border-radius:16px;box-shadow:0 8px 32px #0006,0 30px 70px -30px #18181b8c;display:flex;flex-direction:column;overflow:hidden;font-family:var(--font-sans);font-size:13px;color:#e4e4e7;text-align:left}.kzr-header{padding:13px 15px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between}.kzr-title{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:#fafafa}.kzr-avatar{width:26px;height:26px;border-radius:50%;background:#6366f126;display:grid;place-items:center;color:#818cf8;flex-shrink:0}.kzr-header-actions{display:flex;align-items:center;gap:2px;color:#a1a1aa}.kzr-header-actions span{padding:4px 6px;border-radius:6px;display:flex;align-items:center}.kzr-messages{flex:1;padding:14px;display:flex;flex-direction:column;gap:10px}.kzr-msg{max-width:88%;padding:9px 13px;border-radius:12px;line-height:1.5;font-size:12.5px}.kzr-msg--user{background:#6366f1;color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.kzr-msg--bot{background:#ffffff12;color:#e4e4e7;align-self:flex-start;border-bottom-left-radius:4px}.kzr-msg--bot strong{font-weight:600;color:#fafafa}.kzr-msg--voice{display:flex;align-items:center;gap:6px}.kzr-sources{align-self:flex-start;max-width:88%;font-size:11px;color:#71717a}.kzr-sources strong{display:block;font-size:10.5px;color:#52525b;margin-bottom:3px;font-weight:600}.kzr-sources span{color:#818cf8;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.6}.kzr-thinking{display:flex;gap:5px;align-items:center;padding:10px 14px;align-self:flex-start}.kzr-dot{width:7px;height:7px;border-radius:50%;background:#6366f1;animation:kzrBounce 1.2s infinite ease-in-out}.kzr-dot:nth-child(2){animation-delay:.2s}.kzr-dot:nth-child(3){animation-delay:.4s}@keyframes kzrBounce{0%,80%,to{transform:scale(.7);opacity:.5}40%{transform:scale(1);opacity:1}}.kzr-input-row{padding:12px;border-top:1px solid rgba(255,255,255,.08);display:flex;gap:8px;align-items:center}.kzr-input{flex:1;background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:9px 12px;color:#52525b;font-size:12px;line-height:1.4;white-space:nowrap;overflow:hidden}.kzr-mic{width:34px;height:34px;border-radius:8px;display:grid;place-items:center;color:#71717a;flex-shrink:0}.kzr-mic.is-recording{color:#f87171;animation:kzrPulse 1s infinite}@keyframes kzrPulse{0%,to{opacity:1}50%{opacity:.5}}.kzr-send{width:34px;height:34px;background:#6366f1;border-radius:8px;color:#fff;display:grid;place-items:center;flex-shrink:0}.kzr-launcher{width:52px;height:52px;border-radius:50%;background:#6366f1;color:#fff;display:grid;place-items:center;box-shadow:0 4px 16px #00000040;flex-shrink:0}@media (max-width: 480px){.kzr-scene{flex-direction:column;align-items:center}.kzr-launcher{display:none}}.app-frame{width:100%;background:var(--app-bg);border:1px solid var(--app-border-2);border-radius:14px;overflow:hidden;box-shadow:0 24px 60px -24px #09090b80;font-family:var(--font-sans);color:var(--app-text);text-align:left}.app-titlebar{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--app-bg-subtle);border-bottom:1px solid var(--app-border)}.app-titlebar-dots{display:flex;gap:5px}.app-titlebar-dots i{width:9px;height:9px;border-radius:50%;background:var(--app-hover);display:block}.app-titlebar-name{font-size:11.5px;font-weight:600;color:var(--app-text-2);display:flex;align-items:center;gap:7px}.app-titlebar-name svg{color:var(--app-primary)}.app-titlebar-crumb{color:var(--app-text-3);font-weight:500}.app-main{padding:14px;display:flex;flex-direction:column;gap:12px}.app-panel{background:var(--app-surface);border:1px solid var(--app-border);border-radius:10px;overflow:hidden}.app-panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;border-bottom:1px solid var(--app-border)}.app-panel-title{font-size:12.5px;font-weight:600;color:var(--app-text)}.app-panel-sub{font-size:10.5px;color:var(--app-text-3);margin-top:1px}.app-table{width:100%;border-collapse:collapse;font-size:11.5px}.app-table th{text-align:left;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--app-text-3);padding:8px 14px;border-bottom:1px solid var(--app-border);white-space:nowrap}.app-table td{padding:9px 14px;border-bottom:1px solid var(--app-border);color:var(--app-text-2);vertical-align:middle}.app-table tr:last-child td{border-bottom:none}.app-table td:first-child{color:var(--app-text);font-weight:500}.app-td-mono{font-family:var(--font-mono);font-size:10.5px;color:var(--app-text-3)}.app-pill{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:600;background:var(--app-hover);color:var(--app-text-2);white-space:nowrap}.app-pill--primary{background:#3b82f61f;color:var(--app-primary-text)}.app-pill--success{background:#22c55e1f;color:#4ade80}.app-pill--warn{background:#f973161f;color:#fb923c}.app-pill--zero{background:#ef44441f;color:#f87171}.app-dot{width:7px;height:7px;border-radius:50%;display:inline-block;background:var(--app-success);flex-shrink:0}.app-btn{display:inline-flex;align-items:center;gap:6px;background:var(--app-primary);color:#fff;font-size:11px;font-weight:600;padding:6px 12px;border-radius:7px;white-space:nowrap}.app-btn--quiet{background:var(--app-hover);color:var(--app-text-2)}.app-input{display:flex;align-items:center;gap:8px;background:var(--app-bg-subtle);border:1px solid var(--app-border-2);border-radius:8px;padding:7px 11px;font-size:11.5px;color:var(--app-text-3);min-width:0}.app-toggle{width:30px;height:17px;border-radius:999px;background:var(--app-hover);position:relative;flex-shrink:0}.app-toggle:after{content:"";position:absolute;top:2px;left:2px;width:13px;height:13px;border-radius:50%;background:var(--app-text-3)}.app-toggle.is-on{background:var(--app-primary)}.app-toggle.is-on:after{left:auto;right:2px;background:#fff}.app-field{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid var(--app-border);font-size:11.5px}.app-field:last-child{border-bottom:none}.app-field-label{color:var(--app-text);font-weight:500}.app-field-hint{display:block;font-size:10px;color:var(--app-text-3);margin-top:2px;font-weight:400}.app-field-value{color:var(--app-text-2);display:inline-flex;align-items:center;gap:8px}.app-weight{display:flex;align-items:center;gap:8px;min-width:120px}.app-weight-track{flex:1;height:5px;border-radius:3px;background:var(--app-hover);overflow:hidden}.app-weight-fill{display:block;height:100%;border-radius:3px;background:var(--app-primary);width:var(--w, 60%)}.app-weight-num{font-family:var(--font-mono);font-size:10px;color:var(--app-text-3);min-width:3ch;text-align:right}.flow{display:flex;align-items:stretch;gap:0;width:100%}.flow--vertical{flex-direction:column;align-items:center}.flow-node{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:.9rem 1.1rem;min-width:0;flex:1}.flow-node--tint{background:color-mix(in srgb,var(--flow-accent, var(--fig-search)) 6%,#ffffff);border-color:color-mix(in srgb,var(--flow-accent, var(--fig-search)) 25%,var(--border))}.flow-node-kicker{font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--flow-accent, var(--fig-search-deep));display:flex;align-items:center;gap:6px;margin-bottom:.45rem}.flow-node-title{font-size:.85rem;font-weight:650;color:var(--text);line-height:1.35}.flow-node-desc{font-size:.76rem;color:var(--text-2);line-height:1.55;margin-top:.3rem}.flow-link{flex:0 0 auto;display:flex;align-items:center;justify-content:center;color:var(--text-3);padding:0 .4rem;position:relative}.flow--vertical .flow-link{padding:.35rem 0;transform:rotate(90deg)}.flow-link:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:repeating-linear-gradient(90deg,var(--border-strong) 0 5px,transparent 5px 10px)}.flow-link svg{position:relative;background:var(--bg);z-index:1}@media (max-width: 760px){.flow{flex-direction:column;align-items:stretch}.flow-link{padding:.35rem 0}.flow-link:before{left:50%;right:auto;top:0;bottom:0;width:1px;height:auto;background:repeating-linear-gradient(180deg,var(--border-strong) 0 5px,transparent 5px 10px)}.flow-link svg{transform:rotate(90deg)}}.flow-srcs{display:flex;flex-wrap:wrap;gap:6px;margin-top:.6rem}.flow-src{display:inline-flex;align-items:center;gap:5px;font-size:.68rem;font-weight:600;color:var(--text-2);background:var(--bg-subtle);border:1px solid var(--border);border-radius:6px;padding:3px 8px;white-space:nowrap}.flow-src svg{color:var(--flow-accent, var(--fig-search-deep));flex-shrink:0}.flow-src .flow-sim{font-family:var(--font-mono);font-size:.62rem;color:var(--text-3);font-weight:500}.mock-code-content{font-size:.83rem;line-height:1.8;padding:1.35rem 1.5rem}.mock-code-comment{color:#94a3b8}.section-tag--search{color:var(--fig-search-deep)}.section-tag--search:before,.section-tag--search:after{background:var(--fig-search)}.section-tag--chat{color:var(--fig-chat-deep)}.section-tag--chat:before,.section-tag--chat:after{background:var(--fig-chat)}@media (prefers-reduced-motion: no-preference){html.js .reveal{opacity:.001;transform:translateY(14px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}html.js .reveal.in-view{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.ksr-caret,.ksr-summary-label svg,.ksr-summary-pulse,.kzr-dot,.kzr-mic.is-recording,.fig-chip.pop{animation:none}.fig-chip.pop{opacity:1;transform:none}}
