:root{--bg-canvas:#0f172a;--bg-surface-1:#1e293b;--bg-surface-2:#243447;--bg-surface-3:#0b1120;--bg-overlay:#0f172a99;--bg-glass:#0f172a8c;--bg-card-glass:#1e293bbf;--bg-card-glass-soft:#1e293b99;--bg-card-hover-glass:#243447d9;--hairline:#334155;--hairline-strong:#475569;--hairline-soft:#33415566;--hairline-soft-strong:#33415599;--ink:#e2e8f0;--ink-strong:#f1f5f9;--ink-secondary:#cbd5e1;--ink-muted:#94a3b8;--ink-faint:#64748b;--brand:#00a8ff;--brand-fixed:#00a8ff;--brand-hover:#0086cc;--brand-light:#66c7ff;--brand-soft:#00a8ff24;--brand-border:#00a8ff66;--hover-wash:#ffffff14;--hover-wash-strong:#ffffff24;--port-border:#ffffffd9;--hero-glow:#ffffff09;--accent:#0ea5e9;--accent-soft:#0ea5e926;--accent-strong:#7dd3fc;--edge-glow:#00a8ff8c;--success:#4ade80;--warning:#fbbf24;--warning-active:#f59e0b;--warning-bg:#7c2d12;--warning-bg-soft:#451a03;--warning-text-soft:#fde68a;--danger:#ef4444;--danger-text:#fca5a5;--danger-bg:#7f1d1d;--danger-bg-soft:#450a0a;--ai-thinking:#fbbf24;--ai-generate:#4ade80;--ai-debug:#7c3aed;--ai-diagnose:#94a3b8;--fs-caption:12px;--fs-body-sm:13px;--fs-body:14px;--fs-body-lg:16px;--fs-title:18px;--fs-headline:22px;--fs-display:30px;--r-xs:4px;--r-sm:6px;--r-md:8px;--r-lg:12px;--r-xl:20px;--r-pill:9999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 20px 60px #00000080}[data-theme=linear]{--bg-canvas:#08090a;--bg-surface-1:#131517;--bg-surface-2:#1c1f23;--bg-surface-3:#050607;--bg-overlay:#08090ab3;--bg-glass:#08090ab3;--bg-card-glass:#131517d9;--bg-card-glass-soft:#131517b3;--bg-card-hover-glass:#1c1f23e6;--hairline:#23252a;--hairline-strong:#34343a;--hairline-soft:#23252a80;--hairline-soft-strong:#23252ab3;--ink:#f7f8f8;--ink-strong:#fff;--ink-secondary:#d0d6e0;--ink-muted:#8a8f98;--ink-faint:#62666d;--brand:#5e6ad2;--brand-hover:#828fff;--brand-light:#aab0ff;--brand-soft:#5e6ad226;--brand-border:#5e6ad266;--edge-glow:#5e6ad28c}[data-theme=supabase]{--bg-canvas:#1c1c1c;--bg-surface-1:#2e2e2e;--bg-surface-2:#3a3a3a;--bg-surface-3:#121212;--bg-overlay:#000000a6;--bg-glass:#1c1c1cb3;--bg-card-glass:#2e2e2ed9;--bg-card-glass-soft:#2e2e2eb3;--bg-card-hover-glass:#3a3a3ae6;--hairline:#2f2f2f;--hairline-strong:#404040;--hairline-soft:#2f2f2f80;--hairline-soft-strong:#2f2f2fb3;--ink:#ededed;--ink-strong:#fff;--ink-secondary:#d4d4d4;--ink-muted:#a0a0a0;--ink-faint:#707070;--brand:#3ecf8e;--brand-hover:#65d9a5;--brand-light:#a7f3d0;--brand-soft:#3ecf8e26;--brand-border:#3ecf8e66;--edge-glow:#3ecf8e8c}[data-theme=stripe]{--bg-canvas:#0a0e27;--bg-surface-1:#141829;--bg-surface-2:#1e2238;--bg-surface-3:#060818;--bg-overlay:#0a0e27b3;--bg-glass:#0a0e27b3;--bg-card-glass:#141829d9;--bg-card-glass-soft:#141829b3;--bg-card-hover-glass:#1e2238e6;--hairline:#262a40;--hairline-strong:#353a55;--hairline-soft:#262a4080;--hairline-soft-strong:#262a40b3;--ink:#e6e9f0;--ink-strong:#fff;--ink-secondary:#c5c9d6;--ink-muted:#8b8fa3;--ink-faint:#5d6378;--brand:#635bff;--brand-hover:#7a70ff;--brand-light:#b3acff;--brand-soft:#635bff26;--brand-border:#635bff66;--edge-glow:#635bff8c}[data-theme=paperwhite]{--bg-canvas:#f7f7f8;--bg-surface-1:#fff;--bg-surface-2:#ececec;--bg-surface-3:#f0f0f0;--bg-overlay:#0006;--bg-glass:#ffffffbf;--bg-card-glass:#ffffffd9;--bg-card-glass-soft:#ffffffb3;--bg-card-hover-glass:#f5f5f6e6;--hairline:#e5e5e5;--hairline-strong:#d4d4d4;--hairline-soft:#00000014;--hairline-soft-strong:#0000001f;--ink:#2d2d2d;--ink-strong:#0d0d0d;--ink-secondary:#5d5d5d;--ink-muted:#8e8e8e;--ink-faint:#a5a5a5;--brand:#2f2f2f;--brand-hover:#1f1f1f;--brand-light:#4a4a4a;--brand-soft:#0000000d;--brand-border:#00000026;--hover-wash:#0000000a;--hover-wash-strong:#00000014;--port-border:#0006;--hero-glow:#00000005;--accent:#6b7280;--accent-soft:#6b72801f;--accent-strong:#4b5563;--edge-glow:#00000038}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--hairline-strong) transparent;margin:0;padding:0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--hairline-strong);border-radius:var(--r-xs)}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint)}html,body,#root{width:100%;height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif}.edge-glow-band{stroke:var(--brand-light);stroke-width:2.5px;stroke-linecap:round;opacity:.5;filter:drop-shadow(0 0 5px var(--edge-glow))}.edge-glow-band.danger{stroke:var(--danger-text);opacity:.6;filter:drop-shadow(0 0 5px #ef444480)}.edge-orb-halo{fill:var(--brand-light);filter:drop-shadow(0 0 6px var(--edge-glow)) drop-shadow(0 0 16px var(--edge-glow))}.edge-orb.danger .edge-orb-halo{fill:var(--danger-text);filter:drop-shadow(0 0 6px #ef44448c)drop-shadow(0 0 14px #ef444459)}@media (prefers-reduced-motion:reduce){.edge-glow-band{filter:none;opacity:.4}.edge-orb{display:none}.app-logo{animation:none}}.progress-overlay{z-index:1000;background:var(--bg-glass);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.progress-track{background:var(--bg-surface-1);border:1px solid var(--hairline);border-radius:var(--r-lg);width:82%;max-width:820px;height:22px;position:relative;overflow:hidden;box-shadow:inset 0 0 24px #00a8ff40}.progress-fill{background:linear-gradient(90deg, transparent, var(--brand), #8b5cf6, #ec4899, transparent);border-radius:var(--r-lg);width:42%;animation:1.5s ease-in-out infinite progress-slide;position:absolute;top:0;bottom:0;left:-42%}@keyframes progress-slide{0%{left:-42%}to{left:100%}}.node-panel{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);color:var(--ink);border-right:1px solid var(--hairline-soft);flex-shrink:0;height:100%}.node-panel-title{font-size:var(--fs-body-sm);opacity:.9;margin-bottom:10px;font-weight:600}.domain-label{font-size:var(--fs-caption);color:var(--ink-muted);margin-bottom:var(--sp-1);text-transform:uppercase;letter-spacing:.5px}.node-item{align-items:center;gap:var(--sp-2);padding:6px var(--sp-2);background:var(--bg-card-glass);border:1px solid var(--hairline);border-radius:var(--r-xs);cursor:grab;font-size:var(--fs-caption);margin:3px 0;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s,opacity .18s;display:flex}.node-item:hover{border-color:var(--hairline-strong);background:var(--bg-card-hover-glass);transform:translate(4px);box-shadow:0 4px 14px #00000059}.node-icon{border-radius:var(--r-pill);width:26px;height:26px;font-size:var(--fs-body-sm);flex-shrink:0;justify-content:center;align-items:center;transition:transform .18s,background .18s;display:inline-flex}.node-item:hover .node-icon{transform:scale(1.15)rotate(-4deg)}.node-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.must-star{color:var(--danger)}.node-tooltip{z-index:2000;pointer-events:none;background:var(--bg-surface-1);border:1px solid var(--hairline-strong);border-radius:var(--r-sm);box-shadow:var(--shadow-md);white-space:nowrap;padding:6px 10px;animation:.15s tooltip-fade;position:fixed;transform:translateY(-50%)}.node-tooltip .tt-name{font-size:var(--fs-body-sm);color:var(--ink);font-weight:600}.node-tooltip .tt-desc{font-size:var(--fs-caption);color:var(--ink-muted);white-space:normal;max-width:200px;margin-top:2px}@keyframes tooltip-fade{0%{opacity:0}to{opacity:1}}.launch-root{background:radial-gradient(1000px 500px at 50% -10%, var(--hero-glow), transparent 60%), var(--bg-canvas);width:100vw;height:100vh;color:var(--ink);overflow-y:auto}.launch-inner{flex-direction:column;align-items:center;max-width:1000px;margin:0 auto;padding:64px 28px 80px;display:flex}.launch-hero{text-align:center;margin-bottom:40px}.launch-logo{justify-content:center;align-items:center;margin:0 auto 20px;display:flex}.launch-logo img{border-radius:10px}.launch-title{font-size:var(--fs-display);letter-spacing:.5px;color:var(--ink-strong);font-weight:800}.launch-slogan{font-size:var(--fs-body);color:var(--ink-muted);margin-top:10px}.launch-features{gap:var(--sp-4);width:100%;margin-bottom:40px;display:flex}.feature-card{border-radius:var(--r-lg);background:var(--bg-card-glass-soft);border:1px solid var(--hairline-soft-strong);-webkit-backdrop-filter:blur(8px);text-align:center;flex:1;min-width:0;padding:20px 18px;transition:transform .2s,border-color .2s}.feature-card:hover{border-color:var(--hairline-strong);transform:translateY(-4px)}.feature-num{border-radius:var(--r-pill);border:1px solid var(--brand);width:34px;height:34px;color:var(--brand);font-size:var(--fs-body-sm);justify-content:center;align-items:center;margin:0 auto 10px;font-family:Consolas,SF Mono,monospace;font-weight:700;display:inline-flex}.feature-step{font-size:var(--fs-caption);color:var(--ink-faint);text-transform:uppercase;letter-spacing:1px}.feature-title{font-size:var(--fs-body-lg);margin:4px 0 6px;font-weight:700}.feature-desc{font-size:var(--fs-caption);color:var(--ink-muted);line-height:1.5}@media (width<=720px){.launch-features{flex-direction:column}}.launch-new-btn{align-items:center;gap:var(--sp-2);font-size:var(--fs-body);color:#fff;cursor:pointer;background:var(--brand);border:none;border-radius:10px;padding:14px 36px;font-weight:700;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex;box-shadow:0 8px 24px #00a8ff59}.launch-new-btn:hover{background:var(--brand-hover);transform:translateY(-2px);box-shadow:0 12px 30px #00a8ff73}.launch-new-btn:active{transform:translateY(0)}.launch-pool{width:100%;margin-top:44px}.pool-header{font-size:var(--fs-body);border-bottom:1px solid var(--bg-surface-1);justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:10px;font-weight:600;display:flex}.pool-count{font-size:var(--fs-caption);color:var(--ink-faint);font-weight:400}.pool-empty{text-align:center;color:var(--ink-faint);font-size:var(--fs-body-sm);padding:40px 0}.pool-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.strategy-card{padding:var(--sp-4);background:var(--bg-card-glass);border:1px solid var(--hairline);cursor:pointer;border-radius:10px;transition:transform .18s,border-color .18s,box-shadow .18s;position:relative}.strategy-card:hover{border-color:var(--brand);transform:translateY(-3px);box-shadow:0 8px 22px #00000059}.card-name{font-size:var(--fs-body);color:var(--brand);text-overflow:ellipsis;white-space:nowrap;margin-bottom:10px;font-weight:600;overflow:hidden}.card-meta{font-size:var(--fs-caption);color:var(--ink-muted);flex-direction:column;gap:3px;display:flex}.card-actions{border-top:1px solid var(--bg-surface-1);align-items:center;gap:6px;margin-top:12px;padding-top:10px;display:flex}.card-btn{padding:3px var(--sp-2);font-size:var(--fs-caption);color:var(--ink-muted);border:1px solid var(--hairline);border-radius:var(--r-xs);cursor:pointer;background:0 0;transition:background .15s,color .15s}.card-btn:hover{background:var(--hairline);color:var(--ink)}.card-btn.danger{color:var(--danger-text);border-color:var(--danger-bg)}.card-btn.danger:hover{background:var(--danger-bg);color:#fecaca}.card-open{font-size:var(--fs-caption);color:var(--brand);margin-left:auto;font-weight:600}.card-rename-input{background:var(--bg-canvas);border:1px solid var(--brand);width:100%;color:var(--ink);border-radius:var(--r-xs);font-size:var(--fs-body);outline:none;margin-bottom:10px;padding:4px 6px;font-weight:600}.modal-mask{z-index:2000;background:var(--bg-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);justify-content:center;align-items:center;animation:.15s tooltip-fade;display:flex;position:fixed;inset:0}.modal-card{width:460px;max-width:calc(100vw - 32px);padding:var(--sp-5);border-radius:var(--r-lg);background:var(--bg-surface-1);border:1px solid var(--hairline);box-shadow:var(--shadow-lg);color:var(--ink)}.modal-title{font-size:var(--fs-title);margin-bottom:18px;font-weight:700}.modal-label{font-size:var(--fs-caption);color:var(--ink-muted);margin:14px 0 6px;display:block}.modal-input{background:var(--bg-canvas);border:1px solid var(--hairline);width:100%;color:var(--ink);border-radius:var(--r-sm);font-size:var(--fs-body);outline:none;padding:9px 12px;transition:border-color .15s}.modal-input:focus{border-color:var(--brand)}.mode-options{gap:var(--sp-3);display:flex}.mode-card{padding:var(--sp-4) var(--sp-3);background:var(--bg-canvas);border:1px solid var(--hairline);cursor:pointer;text-align:center;border-radius:10px;flex:1;transition:border-color .15s,background .15s}.mode-card:hover{border-color:var(--hairline-strong)}.mode-card.active{border-color:var(--brand);background:var(--brand-soft)}.mode-num{border-radius:var(--r-pill);border:1px solid var(--ink-faint);width:30px;height:30px;color:var(--ink-muted);font-size:var(--fs-caption);justify-content:center;align-items:center;margin:0 auto 6px;font-family:Consolas,SF Mono,monospace;font-weight:700;display:inline-flex}.mode-card.active .mode-num{border-color:var(--brand);color:var(--brand)}.mode-name{font-size:var(--fs-body-sm);margin-bottom:4px;font-weight:600}.mode-desc{font-size:var(--fs-caption);color:var(--ink-muted);line-height:1.4}.modal-err{margin-top:var(--sp-3);font-size:var(--fs-caption);color:var(--danger-text);background:var(--danger-bg-soft);padding:var(--sp-2) 10px;border-radius:var(--r-sm)}.modal-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.btn-ghost{font-size:var(--fs-body-sm);color:var(--ink-muted);border:1px solid var(--hairline);border-radius:var(--r-sm);cursor:pointer;background:0 0;padding:9px 18px}.btn-ghost:hover{background:var(--hairline);color:var(--ink)}.btn-primary{font-size:var(--fs-body-sm);color:#fff;border-radius:var(--r-sm);cursor:pointer;background:var(--brand);border:none;padding:9px 20px;font-weight:600;transition:background .15s}.btn-primary:hover{background:var(--brand-hover)}.btn-primary:disabled{opacity:.6;cursor:default}.icon-btn{border-radius:var(--r-sm);cursor:pointer;width:32px;height:32px;color:var(--ink-muted);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:inline-flex}.icon-btn:hover:not(:disabled){background:var(--hover-wash);color:var(--ink)}.icon-btn:active:not(:disabled){background:var(--hover-wash-strong)}.icon-btn:disabled{color:var(--hairline-strong);cursor:default}.node-item.highlight{border-color:var(--brand);background:var(--brand-soft);z-index:1;transform:scale(1.06);box-shadow:0 0 0 2px #00a8ff59,0 4px 14px #00000059}.node-item.highlight:hover{border-color:var(--brand-light);background:var(--brand-soft);transform:scale(1.08)}.node-item.dimmed{opacity:.35}.node-item.dimmed:hover{opacity:.35;box-shadow:none;border-color:var(--hairline);background:var(--bg-card-glass);transform:none}.doc-chips{gap:var(--sp-1);flex-wrap:wrap;margin-bottom:6px;display:flex}.doc-chip{align-items:center;gap:var(--sp-1);max-width:100%;padding:3px 4px 3px var(--sp-2);background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:var(--r-xs);font-size:var(--fs-caption);color:var(--brand-light);display:inline-flex}.doc-chip-name{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.doc-chip-x{width:16px;height:16px;color:var(--brand-light);cursor:pointer;font-size:var(--fs-body);background:0 0;border:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.doc-chip-x:hover{background:var(--brand);color:#fff}.react-flow__controls{box-shadow:none!important;border:none!important}.react-flow__controls-button{color:var(--brand)!important;background:0 0!important;border-bottom:1px solid #00a8ff26!important}.react-flow__controls-button:hover{background:var(--brand-soft)!important}.react-flow__controls-button svg{fill:var(--brand)!important}.react-flow__controls-button svg line,.react-flow__controls-button svg path{stroke:var(--brand)!important}.react-flow__attribution{display:none!important}.app-logo{filter:brightness(1.25)drop-shadow(0 0 5px #00a8ffd6)drop-shadow(0 0 12px #00a8ff5c);animation:3s ease-in-out infinite logo-blink}@keyframes logo-blink{0%,to{filter:brightness(1.25)drop-shadow(0 0 5px #00a8ffd6)drop-shadow(0 0 12px #00a8ff5c)}30%{filter:brightness(1.75)drop-shadow(0 0 9px #00a8ff)drop-shadow(0 0 22px #00a8ff99)}65%{filter:brightness(.05);opacity:.15}}.vt-badge{color:#fff;border-radius:var(--r-xs);padding:1px 5px;font-size:10px;font-weight:600;line-height:1.4;display:inline-block}.vt-act{color:var(--ink-secondary);background:var(--bg-surface-1);border:1px solid var(--hairline);border-radius:var(--r-xs);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:3px;padding:2px 8px;font-size:11px;transition:border-color .15s,color .15s;display:inline-flex}.vt-act:hover:not(:disabled){border-color:var(--hairline-strong);color:var(--ink)}.vt-act:disabled{cursor:not-allowed}.vt-act-primary{background:var(--ai-debug);border-color:var(--ai-debug);color:#fff}.vt-act-primary:hover:not(:disabled){color:#fff;opacity:.9}.qmt-modal-backdrop{z-index:2000;background:var(--bg-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);justify-content:center;align-items:center;animation:.15s tooltip-fade;display:flex;position:fixed;inset:0}.qmt-modal-card{padding:var(--sp-5);border-radius:var(--r-lg);background:var(--bg-surface-1);border:1px solid var(--hairline);box-shadow:var(--shadow-lg);color:var(--ink)}.qmt-input{background:var(--bg-canvas);border:1px solid var(--hairline);width:100%;color:var(--ink);border-radius:var(--r-sm);font-size:var(--fs-body);outline:none;padding:9px 12px;transition:border-color .15s}.qmt-input:focus{border-color:var(--brand)}.qmt-input::placeholder{color:var(--ink-muted)}.qmt-btn-primary{font-size:var(--fs-body-sm);color:#fff;border-radius:var(--r-sm);cursor:pointer;background:var(--brand);border:none;padding:9px 20px;font-weight:600;transition:background .15s,opacity .15s}.qmt-btn-primary:hover{background:var(--brand-hover)}.qmt-btn-primary:disabled{opacity:.6;cursor:default}.qmt-btn-ghost{font-size:var(--fs-body-sm);color:var(--ink-muted);border:1px solid var(--hairline);border-radius:var(--r-sm);cursor:pointer;background:0 0;padding:9px 18px;transition:background .15s,color .15s}.qmt-btn-ghost:hover{background:var(--hairline);color:var(--ink)}.qmt-btn-danger{font-size:var(--fs-body-sm);color:#fff;border-radius:var(--r-sm);cursor:pointer;background:var(--danger);border:none;padding:9px 20px;font-weight:600;transition:background .15s,opacity .15s}.qmt-btn-danger:hover{background:#dc2626}.qmt-btn-danger:disabled{opacity:.6;cursor:default}.qmt-hoverable{cursor:pointer;transition:background .15s,border-color .15s}.qmt-hoverable:hover{background:var(--bg-surface-2);border-color:var(--hairline-strong)}.brand-wordmark{font-family:Consolas,SF Mono,monospace;font-weight:700;font-size:var(--fs-body-lg);letter-spacing:.5px;color:var(--brand-fixed);white-space:nowrap;line-height:1}.brand-wordmark--lg{font-size:39px}.brand-wordmark--sm{font-size:29px}.mention-wrap{bottom:100%;left:var(--sp-2);right:var(--sp-2);margin-bottom:var(--sp-1);background:var(--bg-surface-1);border:1px solid var(--brand);border-radius:var(--r-xs);z-index:10;max-height:200px;position:absolute;overflow-y:auto;box-shadow:0 -4px 12px #0006}.mention-header{padding:var(--sp-1) 10px;font-size:var(--fs-caption);color:var(--ink-faint);border-bottom:1px solid var(--bg-canvas)}.mention-empty{padding:var(--sp-2) 10px;font-size:var(--fs-caption);color:var(--ink-faint)}.mention-item{font-size:var(--fs-caption);cursor:pointer;color:var(--ink);justify-content:space-between;gap:var(--sp-2);background:0 0;padding:4px 10px;display:flex}.mention-item.active{background:var(--brand-soft);color:var(--brand-light)}.mention-item:hover{background:var(--hairline);color:var(--ink)}.mention-item-id{opacity:.4;font-size:var(--fs-caption)}.composer-wrap-center{z-index:7;padding:var(--sp-5);pointer-events:none;flex-direction:column;align-items:center;display:flex;position:absolute;inset:0;overflow-y:auto}.composer-wrap-center.hero-hidden{justify-content:center}.composer-wrap-dock{z-index:7;padding:0 var(--sp-4);pointer-events:none;flex-direction:column;align-items:center;display:flex;position:absolute;bottom:34px;left:0;right:0}.composer-slot{pointer-events:auto;flex-shrink:0;width:72%;max-width:560px}.composer-wrap-center .composer-slot{margin:auto 0}.composer-inpanel{border-top:1px solid var(--hairline);flex-shrink:0;padding:8px 10px}.quick-add-backdrop{z-index:1499;position:fixed;inset:0}.quick-add-menu{z-index:1500;background:var(--bg-surface-1);border:1px solid var(--hairline-strong);border-radius:var(--r-md);width:260px;box-shadow:var(--shadow-lg);animation:.12s tooltip-fade;position:fixed;overflow:hidden}.quick-add-title{color:var(--ink-strong);border-bottom:1px solid var(--hairline);padding:8px 12px 6px;font-size:11px;font-weight:700}.quick-add-type{color:var(--ink-muted);font-weight:400}.quick-add-list{max-height:264px;padding:4px;overflow-y:auto}.quick-add-item{border-radius:var(--r-xs);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:6px 8px;font-family:inherit;font-size:12px;transition:background .12s;display:flex}.quick-add-item:hover{background:var(--brand-soft)}.quick-add-dot{border-radius:var(--r-pill);flex-shrink:0;width:8px;height:8px}.quick-add-name{white-space:nowrap;font-weight:600}.quick-add-star{color:var(--warning);font-weight:700}.quick-add-port{color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;max-width:96px;margin-left:auto;font-size:11px;overflow:hidden}.quick-add-hint{color:var(--ink-faint);border-top:1px solid var(--hairline);-webkit-user-select:none;user-select:none;padding:5px 12px;font-size:10px}.composer-card{padding:var(--sp-2) var(--sp-3);background:var(--bg-glass);-webkit-backdrop-filter:blur(10px);border:1px solid var(--hairline);border-radius:var(--r-xl);box-shadow:var(--shadow-md);transition:border-color .15s,box-shadow .15s;position:relative}.composer-card:focus-within{border-color:var(--brand-border);box-shadow:0 0 0 3px var(--brand-soft), var(--shadow-md)}.composer-opts{padding:2px 2px var(--sp-2);flex-wrap:wrap;gap:6px;display:flex}.composer-opt{font-size:var(--fs-caption);background:var(--bg-surface-1);color:var(--ink);border:1px solid var(--hairline);border-radius:var(--r-pill);cursor:pointer;padding:5px 12px;font-family:inherit;transition:border-color .15s,color .15s,background .15s}.composer-opt:hover:not(:disabled){border-color:var(--brand);color:var(--brand-light)}.composer-opt:disabled{opacity:.5;cursor:default}.composer-opt.ghost{color:var(--ink-faint);background:0 0}.composer-inputbox{position:relative}.composer-input{width:100%;color:var(--ink);font-size:var(--fs-body);resize:none;background:0 0;border:none;outline:none;min-height:72px;max-height:220px;padding:6px 4px 2px;font-family:inherit;line-height:1.5;display:block;overflow-y:auto}.composer-input::placeholder,.composer-input:disabled{color:var(--ink-faint)}.composer-bar{align-items:center;gap:var(--sp-2);margin-top:var(--sp-1);display:flex}.composer-bar-hint{min-width:0;font-size:var(--fs-caption);color:var(--ink-faint);white-space:nowrap;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;flex:1;overflow:hidden}.composer-bar-actions{align-items:center;gap:var(--sp-1);flex-shrink:0;display:flex}.composer-icon-btn{border-radius:var(--r-pill);width:32px;height:32px;color:var(--ink-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:inline-flex}.composer-icon-btn:hover:not(.is-disabled){background:var(--hover-wash);color:var(--ink)}.composer-icon-btn.is-disabled{opacity:.5;cursor:default}.composer-mode-trigger{border-radius:var(--r-pill);background:var(--brand-soft);height:32px;color:var(--brand-light);font-size:var(--fs-caption);cursor:pointer;white-space:nowrap;box-shadow:inset 0 0 8px var(--brand-soft), inset 0 0 3px var(--brand-border), 0 0 6px var(--brand-soft);border:none;align-items:center;gap:4px;padding:0 10px;font-family:inherit;font-weight:600;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.composer-mode-trigger:hover,.composer-mode-trigger.open{background:var(--hover-wash);color:var(--brand-light);box-shadow:inset 0 0 10px var(--brand-soft), inset 0 0 4px var(--brand-border), 0 0 10px var(--brand-soft)}.composer-mode-pop{background:var(--bg-surface-1);border:1px solid var(--hairline);border-radius:var(--r-md);min-width:220px;box-shadow:var(--shadow-lg);z-index:20;padding:6px;animation:.15s tooltip-fade;position:absolute;bottom:calc(100% + 8px);right:0}.composer-mode-item{text-align:left;border-radius:var(--r-sm);cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:stretch;gap:2px;width:100%;padding:8px 10px;font-family:inherit;transition:background .15s;display:flex}.composer-mode-item:hover{background:var(--hover-wash)}.composer-mode-head{justify-content:space-between;align-items:center;gap:var(--sp-2);width:100%;display:flex}.composer-mode-check{color:var(--brand);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.composer-mode-name{font-size:var(--fs-body-sm);color:var(--ink-strong);font-weight:600;line-height:1.4}.composer-mode-desc{font-size:var(--fs-caption);color:var(--ink-muted);line-height:1.4}.composer-mode-item.is-disabled{opacity:.45;cursor:not-allowed}.composer-mode-item.is-disabled:hover{background:0 0}.src-upload-panel{gap:var(--sp-2);padding:var(--sp-2) 0;flex-direction:column;display:flex}.src-upload-title{font-size:var(--fs-body-sm);color:var(--ink-strong);font-weight:700;line-height:1.5}.src-upload-desc{font-size:var(--fs-caption);color:var(--ink-muted);line-height:1.6}.src-upload-error{font-size:var(--fs-caption);color:var(--danger-text);background:var(--danger-bg-soft);border:1px solid var(--danger-bg);border-radius:var(--r-xs);word-break:break-all;padding:6px 8px;line-height:1.6}.src-upload-drop{justify-content:center;align-items:center;gap:var(--sp-2);margin-top:var(--sp-1);padding:var(--sp-4) var(--sp-3);border:1px dashed var(--hairline-strong);border-radius:var(--r-md);color:var(--ink-secondary);font-size:var(--fs-body-sm);cursor:pointer;background:0 0;font-family:inherit;transition:border-color .15s,color .15s,background .15s;display:flex}.src-upload-drop:hover:not(:disabled){border-color:var(--brand);color:var(--brand-light);background:var(--brand-soft)}.src-upload-drop:disabled{opacity:.5;cursor:wait}.composer-send{border-radius:var(--r-pill);background:var(--brand);color:#fff;cursor:pointer;border:none;justify-content:center;align-items:center;width:34px;height:34px;padding:0;transition:background .15s,transform .15s,box-shadow .15s,opacity .15s;display:inline-flex}.composer-send:hover:not(:disabled){background:var(--brand-hover);transform:scale(1.06);box-shadow:0 4px 12px #0000004d}.composer-send:active:not(:disabled){transform:scale(1)}.composer-send:disabled{background:var(--hairline-strong);color:var(--ink-faint);cursor:default;opacity:.6;box-shadow:none;transform:none}.composer-mini{align-items:center;gap:var(--sp-1);background:var(--bg-glass);-webkit-backdrop-filter:blur(10px);border:1px solid var(--hairline);border-radius:var(--r-pill);width:236px;box-shadow:var(--shadow-md);cursor:text;margin:0 auto;padding:4px 4px 4px 14px;transition:border-color .15s,box-shadow .15s;animation:.2s tooltip-fade;display:flex}.composer-mini:hover{border-color:var(--brand-border);box-shadow:0 0 0 3px var(--brand-soft), var(--shadow-md)}.composer-mini-text{min-width:0;font-size:var(--fs-body-sm);color:var(--ink-faint);white-space:nowrap;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;flex:1;overflow:hidden}.composer-mini .composer-send{width:28px;height:28px}.flow-path-card{text-align:left;background:var(--bg-canvas);border:1px solid var(--hairline);border-radius:var(--r-md);color:var(--ink);align-items:flex-start;gap:10px;padding:11px 12px;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.flow-path-card:disabled{cursor:default}.flow-path-card:not(:disabled){cursor:pointer}.flow-path-card:not(:disabled):hover{border-color:var(--warning-active);background:var(--bg-surface-2)}.qmt-menu-item{text-align:left;border-radius:var(--r-sm);cursor:pointer;width:100%;color:var(--ink);font-size:var(--fs-body-sm);background:0 0;border:none;padding:8px 10px;font-family:inherit;transition:background .15s;display:block}.qmt-menu-item:hover{background:var(--bg-canvas)}.qmt-menu-item.danger{color:var(--danger-text)}
