.particle-text{position:relative;display:block;width:100%;height:100%;min-height:240px;overflow:hidden;touch-action:none;isolation:isolate}.particle-text__canvas{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%}.particle-text__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.logoloop{position:relative;overflow-x:hidden;--logoloop-gap: 32px;--logoloop-logoHeight: 28px;--logoloop-fadeColorAuto: #ffffff}.logoloop--vertical{overflow:hidden;height:100%;display:inline-block}.logoloop--scale-hover{padding-top:calc(var(--logoloop-logoHeight) * .1);padding-bottom:calc(var(--logoloop-logoHeight) * .1)}@media(prefers-color-scheme:dark){.logoloop{--logoloop-fadeColorAuto: #0b0b0b}}.logoloop__track{display:flex;width:max-content;will-change:transform;-webkit-user-select:none;user-select:none;position:relative;z-index:0}.logoloop--vertical .logoloop__track{flex-direction:column;height:max-content;width:100%}.logoloop__list{display:flex;align-items:center}.logoloop--vertical .logoloop__list{flex-direction:column}.logoloop__item{flex:0 0 auto;margin-right:var(--logoloop-gap);font-size:var(--logoloop-logoHeight);line-height:1}.logoloop--vertical .logoloop__item{margin-right:0;margin-bottom:var(--logoloop-gap)}.logoloop__item:last-child{margin-right:var(--logoloop-gap)}.logoloop--vertical .logoloop__item:last-child{margin-right:0;margin-bottom:var(--logoloop-gap)}.logoloop__node{display:inline-flex;align-items:center}.logoloop__item img{height:var(--logoloop-logoHeight);width:auto;display:block;object-fit:contain;image-rendering:-webkit-optimize-contrast;-webkit-user-drag:none;pointer-events:none;transition:transform .3s cubic-bezier(.4,0,.2,1)}.logoloop--scale-hover .logoloop__item{overflow:visible}.logoloop--scale-hover .logoloop__item:hover img,.logoloop--scale-hover .logoloop__item:hover .logoloop__node{transform:scale(1.2);transform-origin:center center}.logoloop--scale-hover .logoloop__node{transition:transform .3s cubic-bezier(.4,0,.2,1)}.logoloop__link{display:inline-flex;align-items:center;text-decoration:none;border-radius:4px;transition:opacity .2s ease}.logoloop__link:hover{opacity:.8}.logoloop__link:focus-visible{outline:2px solid currentColor;outline-offset:2px}.logoloop--fade:before,.logoloop--fade:after{content:"";position:absolute;top:0;bottom:0;width:clamp(24px,8%,120px);pointer-events:none;z-index:10}.logoloop--fade:before{left:0;background:linear-gradient(to right,var(--logoloop-fadeColor, var(--logoloop-fadeColorAuto)) 0%,rgba(0,0,0,0) 100%)}.logoloop--fade:after{right:0;background:linear-gradient(to left,var(--logoloop-fadeColor, var(--logoloop-fadeColorAuto)) 0%,rgba(0,0,0,0) 100%)}.logoloop--vertical.logoloop--fade:before,.logoloop--vertical.logoloop--fade:after{left:0;right:0;width:100%;height:clamp(24px,8%,120px)}.logoloop--vertical.logoloop--fade:before{top:0;bottom:auto;background:linear-gradient(to bottom,var(--logoloop-fadeColor, var(--logoloop-fadeColorAuto)) 0%,rgba(0,0,0,0) 100%)}.logoloop--vertical.logoloop--fade:after{bottom:0;top:auto;background:linear-gradient(to top,var(--logoloop-fadeColor, var(--logoloop-fadeColorAuto)) 0%,rgba(0,0,0,0) 100%)}@media(prefers-reduced-motion:reduce){.logoloop__track{transform:translateZ(0)!important}.logoloop__item img,.logoloop__node{transition:none!important}}.electric-border{--electric-light-color: oklch(from var(--electric-border-color) l c h);position:relative;border-radius:inherit;overflow:visible;isolation:isolate}.eb-canvas-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:2}.eb-canvas{display:block}.eb-content{position:relative;border-radius:inherit;z-index:1}.eb-layers{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;z-index:0}.eb-glow-1,.eb-glow-2,.eb-background-glow{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;box-sizing:border-box}.eb-glow-1{border:2px solid oklch(from var(--electric-border-color) l c h / .6);filter:blur(1px)}.eb-glow-2{border:2px solid var(--electric-light-color);filter:blur(4px)}.eb-background-glow{z-index:-1;transform:scale(1.1);filter:blur(32px);opacity:.3;background:linear-gradient(-30deg,var(--electric-light-color),transparent,var(--electric-border-color))}.card-spotlight{position:relative;border-radius:1.5rem;border:1px solid #222;background-color:#111;padding:2rem;overflow:hidden;--mouse-x: 50%;--mouse-y: 50%;--spotlight-color: rgba(255, 255, 255, .05)}.card-spotlight:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at var(--mouse-x) var(--mouse-y),var(--spotlight-color),transparent 80%);opacity:0;transition:opacity .5s ease;pointer-events:none}.card-spotlight:hover:before,.card-spotlight:focus-within:before{opacity:.6}.vd-window{--vd-app-bg: #0a0b0e;--vd-surface: #0e0f13;--vd-surface-1: #101117;--vd-surface-2: #15161d;--vd-surface-3: #1a1c24;--vd-sunken: #08090b;--vd-line-soft: rgba(255, 255, 255, .045);--vd-line: rgba(255, 255, 255, .075);--vd-line-strong: rgba(255, 255, 255, .12);--vd-ink: #eef1f6;--vd-ink-2: #c2cad7;--vd-ink-muted: #8a92a2;--vd-ink-faint: #5c6473;--vd-accent: #7d9bfd;--vd-accent-solid: #4f6ef0;--vd-working: #7dd3fc;--vd-attention: #e2a951;--vd-done: #6ee7b7;--vd-danger: #f0746a;display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden;background:var(--vd-surface);color:var(--vd-ink-2);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Inter,ui-sans-serif,system-ui,Roboto,sans-serif;font-size:12px;line-height:1.45;text-align:left;-webkit-user-select:none;user-select:none}.vd-window *,.vd-window *:before,.vd-window *:after{box-sizing:border-box}.vd-window .vd-thread{transition:opacity .45s ease}.vd-window.is-fading .vd-thread{opacity:0}.vd-spin{animation:vd-rotate .9s linear infinite}@keyframes vd-rotate{to{transform:rotate(360deg)}}@keyframes vd-pulse{0%,to{opacity:1}50%{opacity:.45}}.vd-titlebar{position:relative;display:flex;height:38px;flex:none;align-items:center;gap:10px;padding:0 12px;border-bottom:1px solid var(--vd-line-soft);background:var(--vd-surface-1)}.vd-lights{display:flex;gap:7px}.vd-lights i{width:11px;height:11px;border-radius:50%}.vd-lights i:nth-child(1){background:#ff5f57}.vd-lights i:nth-child(2){background:#febc2e}.vd-lights i:nth-child(3){background:#28c840}.vd-titlebar-logo{border-radius:3px;opacity:.85}.vd-seg{position:absolute;left:50%;display:flex;gap:2px;padding:2px;border:1px solid var(--vd-line);border-radius:10px;background:var(--vd-sunken);transform:translate(-50%)}.vd-seg span{padding:3px 13px;border-radius:8px;color:var(--vd-ink-muted);font-size:11.5px;font-weight:600}.vd-seg span.is-active{background:var(--vd-surface-3);box-shadow:0 1px 2px #00000052;color:var(--vd-ink)}.vd-titlebar-icons{display:flex;align-items:center;gap:10px;margin-left:auto;color:var(--vd-ink-muted)}.vd-bolt{color:var(--vd-attention)}.vd-body{display:flex;min-height:0;flex:1}.vd-sidebar{display:flex;width:234px;flex:none;flex-direction:column;gap:4px;overflow:hidden;padding:8px 8px 10px;border-right:1px solid var(--vd-line);background:var(--vd-surface-1)}.vd-side-top{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 4px;color:var(--vd-ink-faint)}.vd-side-top-arrows{display:inline-flex;gap:8px}.vd-workspace{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:8px}.vd-workspace-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none;border:1px solid var(--vd-line);border-radius:7px;background:var(--vd-surface-2);color:var(--vd-ink-2)}.vd-workspace-text{display:flex;min-width:0;flex:1;flex-direction:column}.vd-workspace-text strong{overflow:hidden;color:var(--vd-ink);font-size:11.5px;font-weight:620;text-overflow:ellipsis;white-space:nowrap}.vd-workspace-text em{color:var(--vd-ink-faint);font-size:10px;font-style:normal}.vd-workspace-caret{color:var(--vd-ink-faint)}.vd-nav{display:flex;flex-direction:column;gap:1px;padding-bottom:6px}.vd-nav span{display:flex;align-items:center;gap:8px;padding:4.5px 8px;border-radius:7px;color:var(--vd-ink-2);font-size:11.5px;font-weight:550}.vd-nav span svg{color:var(--vd-ink-muted)}.vd-nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:15px;height:15px;margin-left:auto;border-radius:999px;background:color-mix(in srgb,var(--vd-attention) 18%,transparent);color:var(--vd-attention);font-size:9.5px;font-style:normal;font-weight:700}.vd-activity-head{display:flex;align-items:center;justify-content:space-between;padding:4px 8px 2px;color:var(--vd-ink-faint);font-size:10.5px;font-weight:650}.vd-activity-icons{display:inline-flex;gap:8px}.vd-conv-list{display:flex;min-height:0;flex:1;flex-direction:column;gap:3px;overflow:hidden}.vd-conv{display:flex;flex:none;flex-direction:column;gap:1.5px;padding:6px 8px;border:1px solid transparent;border-radius:9px}.vd-conv.is-active{border-color:var(--vd-line-strong);background:var(--vd-surface-2)}.vd-conv-l1,.vd-conv-l3{display:flex;align-items:center;gap:5px;color:var(--vd-ink-muted);font-size:10.5px}.vd-conv-l1 svg,.vd-conv-l3 svg{flex:none;color:var(--vd-ink-faint)}.vd-conv-project{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}.vd-conv-meta{display:inline-flex;align-items:center;gap:4px;color:var(--vd-ink-faint);font-size:10px}.vd-conv-status{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:650}.vd-conv.st-running .vd-conv-status,.vd-conv.is-active.st-running .vd-conv-status{color:var(--vd-working)}.vd-conv.st-running .vd-conv-status svg{color:var(--vd-working)}.vd-conv.st-done .vd-conv-status{color:var(--vd-done)}.vd-conv.st-done .vd-conv-status svg{color:var(--vd-done)}.vd-conv.st-idle .vd-conv-status{color:var(--vd-ink-faint);font-weight:500}.vd-conv-title{overflow:hidden;color:var(--vd-ink);font-size:11.5px;font-weight:550;text-overflow:ellipsis;white-space:nowrap}.vd-conv-branch{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}.vd-conv-l3 img{width:13px;height:13px;flex:none}.vd-settled{display:flex;align-items:center;justify-content:space-between;padding:5px 8px;color:var(--vd-ink-faint);font-size:10.5px;font-weight:600}.vd-side-footer{display:flex;align-items:center;gap:8px;padding:6px 6px 0;border-top:1px solid var(--vd-line-soft);color:var(--vd-ink-muted)}.vd-avatar{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:var(--vd-surface-3);color:var(--vd-ink-2);font-size:10px;font-weight:700}.vd-side-footer-name{flex:1;color:var(--vd-ink-2);font-size:11.5px;font-weight:550}.vd-side-footer-icons{display:inline-flex;gap:10px;color:var(--vd-ink-faint)}.vd-main{display:flex;min-width:0;flex:1;flex-direction:column;background:var(--vd-surface)}.vd-thread{display:flex;min-height:0;flex:1;flex-direction:column;gap:9px;overflow:hidden;padding:16px 22px 8px}.vd-user{max-width:86%;align-self:flex-end;padding:7px 11px;border:1px solid rgba(79,193,255,.2);border-radius:12px 12px 4px;background:#101820;color:var(--vd-ink);opacity:0;transform:translateY(6px);transition:opacity .32s ease,transform .32s ease}.vd-think{margin:0;overflow:hidden;color:var(--vd-ink-muted);font-size:11.5px;text-overflow:ellipsis;white-space:nowrap;opacity:0;transform:translateY(6px);transition:opacity .32s ease,transform .32s ease}.vd-toolrow{display:flex;align-items:center;gap:8px;color:var(--vd-ink-muted);font-size:11.5px;font-weight:550;opacity:0;transform:translateY(6px);transition:opacity .32s ease,transform .32s ease}.vd-toolrow-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:none;border:1px solid var(--vd-line);border-radius:6px;background:var(--vd-surface-2);color:var(--vd-ink-muted)}.vd-reply{margin:0;max-width:94%;color:var(--vd-ink);font-size:12.5px;opacity:0;transition:opacity .24s ease}.vd-user.is-on,.vd-think.is-on,.vd-toolrow.is-on,.vd-reply.is-on{opacity:1;transform:translateY(0)}.vd-planning{display:none;flex-direction:column;gap:10px;margin-top:2px;color:var(--vd-ink-muted);font-size:11.5px}.vd-planning.is-on{display:flex}.vd-planning .vd-spin{align-self:center;color:var(--vd-ink-faint)}.vd-caret{display:inline-block;width:6px;height:12px;margin-left:2px;border-radius:1.5px;background:var(--vd-accent);vertical-align:-2px;animation:vd-blink .85s steps(1) infinite}@keyframes vd-blink{50%{opacity:0}}.vd-composer{flex:none;margin:8px 16px 6px;border:1px solid var(--vd-line-strong);border-radius:14px;background:var(--vd-sunken)}.vd-input{min-height:34px;padding:10px 13px 2px;color:var(--vd-ink);font-size:12px}.vd-placeholder{color:var(--vd-ink-faint)}.vd-composer-row{display:flex;align-items:center;gap:6px;padding:6px 9px 9px}.vd-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none;border:1px solid var(--vd-line);border-radius:7px;color:var(--vd-ink-muted)}.vd-chip{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 8px;border:1px solid var(--vd-line);border-radius:8px;background:var(--vd-surface-2);color:var(--vd-ink-2);font-size:10.5px;font-weight:600;white-space:nowrap}.vd-chip img{width:12px;height:12px}.vd-chip svg{color:var(--vd-ink-muted)}.vd-composer-actions{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.vd-send{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:8px;background:var(--vd-surface-3);color:var(--vd-ink-faint);transition:background .2s ease,color .2s ease}.vd-send.is-armed{background:var(--vd-accent-solid);color:#fff}.vd-stop{display:inline-flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%;background:var(--vd-danger);color:#fff}.vd-pathbar{display:flex;height:26px;flex:none;align-items:center;justify-content:space-between;padding:0 16px 4px;color:var(--vd-ink-faint);font-size:10.5px}.vd-pathbar-path,.vd-pathbar-branch{display:inline-flex;align-items:center;gap:5px}.vd-pathbar-branch{height:18px;padding:0 7px;border:1px solid var(--vd-line);border-radius:6px;background:var(--vd-surface-2);color:var(--vd-ink-muted)}@media(max-width:760px){.vd-sidebar{display:none}}@media(prefers-reduced-motion:reduce){.vd-caret,.vd-spin{animation:none}}
