coding-tool-x 3.6.7 → 3.6.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/web/assets/{Analytics-CKycBI0G.js → Analytics-BuBlsbcI.js} +1 -1
  2. package/dist/web/assets/{ConfigTemplates-CACLQb8e.js → ConfigTemplates-DQczxuOX.js} +1 -1
  3. package/dist/web/assets/Home-BvAzzWnB.js +1 -0
  4. package/dist/web/assets/Home-CIua-b-o.css +1 -0
  5. package/dist/web/assets/{PluginManager-CQJl_uso.js → PluginManager-C8gAlaps.js} +1 -1
  6. package/dist/web/assets/{ProjectList-DSkvQFEP.js → ProjectList-nqgi6_cR.js} +1 -1
  7. package/dist/web/assets/{SessionList-Czjs1GN1.js → SessionList-D8AxMYy6.js} +1 -1
  8. package/dist/web/assets/{SkillManager-Cg1xZ5Cv.js → SkillManager-BDbNbNkK.js} +1 -1
  9. package/dist/web/assets/{WorkspaceManager-COjYeKvN.js → WorkspaceManager-DGGaGW2c.js} +1 -1
  10. package/dist/web/assets/index-Dsh4Q5Cg.css +1 -0
  11. package/dist/web/assets/index-y-eEayxR.js +2 -0
  12. package/dist/web/assets/{naive-ui-DM897mIP.js → naive-ui-kcWDeJwl.js} +1 -1
  13. package/dist/web/index.html +3 -3
  14. package/package.json +1 -1
  15. package/src/commands/stats.js +1 -1
  16. package/src/config/channel-preset-websites.js +2 -1
  17. package/src/config/paths.js +8 -0
  18. package/src/server/api/agents.js +16 -54
  19. package/src/server/api/claude-hooks.js +1 -1
  20. package/src/server/api/claude-statistics.js +57 -0
  21. package/src/server/api/commands.js +16 -54
  22. package/src/server/api/dashboard.js +2 -2
  23. package/src/server/api/gemini-channels.js +2 -0
  24. package/src/server/api/hooks.js +4 -1
  25. package/src/server/api/plugins.js +46 -69
  26. package/src/server/api/skills.js +21 -77
  27. package/src/server/api/validation-errors.js +34 -0
  28. package/src/server/gemini-proxy-server.js +205 -21
  29. package/src/server/index.js +1 -0
  30. package/src/server/services/agents-service.js +166 -75
  31. package/src/server/services/base/base-channel-service.js +15 -0
  32. package/src/server/services/base/response-usage-parser.js +44 -0
  33. package/src/server/services/channel-balance.js +86 -1
  34. package/src/server/services/claude-statistics-service.js +139 -0
  35. package/src/server/services/commands-service.js +203 -121
  36. package/src/server/services/config-artifact-paths.js +116 -0
  37. package/src/server/services/config-export-service.js +7 -6
  38. package/src/server/services/config-registry-service.js +2 -2
  39. package/src/server/services/config-sync-manager.js +45 -11
  40. package/src/server/services/config-templates-service.js +21 -19
  41. package/src/server/services/format-converter.js +42 -4
  42. package/src/server/services/gemini-channels.js +30 -1
  43. package/src/server/services/gemini-sessions.js +347 -61
  44. package/src/server/services/mcp-client.js +236 -49
  45. package/src/server/services/mcp-service.js +51 -64
  46. package/src/server/services/notification-hooks.js +659 -88
  47. package/src/server/services/opencode-channels.js +15 -0
  48. package/src/server/services/plugins-service.js +1137 -86
  49. package/src/server/services/repo-scanner-base.js +6 -29
  50. package/src/server/services/skill-service.js +198 -65
  51. package/dist/web/assets/Home-BeGkC4bb.css +0 -1
  52. package/dist/web/assets/Home-Bk6sP5Ed.js +0 -1
  53. package/dist/web/assets/index-0isNzXNY.css +0 -1
  54. package/dist/web/assets/index-fWgvlZQx.js +0 -2
@@ -1 +0,0 @@
1
- .channel-column[data-v-849862db]{display:flex;flex-direction:column;height:100%;min-height:0;background:linear-gradient(180deg,#ffffffeb,#f7faf8fa);border:1px solid rgba(216,225,222,.92);border-radius:22px;overflow:hidden;box-shadow:0 22px 52px #0f171d1a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.channel-header[data-v-849862db]{display:flex;align-items:center;gap:10px;padding:12px 14px;background:linear-gradient(180deg,#ffffffd1,#ffffff8c);position:relative}.drag-handle[data-v-849862db]{cursor:grab;color:var(--text-tertiary);display:flex;align-items:center;padding:4px;margin:-4px 0 -4px -4px;border-radius:4px;transition:all .2s}.drag-handle[data-v-849862db]:hover{color:var(--text-secondary);background:var(--bg-tertiary)}.drag-handle[data-v-849862db]:active{cursor:grabbing}.channel-header[data-v-849862db]:after{content:"";position:absolute;bottom:0;left:18px;right:18px;height:2px;border-radius:1px}.channel-header.claude[data-v-849862db]{background:linear-gradient(135deg,rgba(24,160,88,.08) 0%,transparent 100%)}.channel-header.claude[data-v-849862db]:after{background:linear-gradient(90deg,#18a058,#18a0584d)}.channel-header.codex[data-v-849862db]{background:linear-gradient(135deg,rgba(59,130,246,.08) 0%,transparent 100%)}.channel-header.codex[data-v-849862db]:after{background:linear-gradient(90deg,#3b82f6,#3b82f64d)}.channel-header.gemini[data-v-849862db]{background:linear-gradient(135deg,rgba(168,85,247,.08) 0%,transparent 100%)}.channel-header.gemini[data-v-849862db]:after{background:linear-gradient(90deg,#a855f7,#a855f74d)}.channel-header.opencode[data-v-849862db]{background:linear-gradient(135deg,rgba(234,88,12,.08) 0%,transparent 100%)}.channel-header.opencode[data-v-849862db]:after{background:linear-gradient(90deg,#ea580c,#ea580c4d)}.header-icon[data-v-849862db]{width:36px;height:36px;border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px #0f171d24}.channel-header.claude .header-icon[data-v-849862db]{background:linear-gradient(135deg,#18a058,#15803d);color:#fff}.channel-header.codex .header-icon[data-v-849862db]{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.channel-header.gemini .header-icon[data-v-849862db]{background:linear-gradient(135deg,#a855f7,#9333ea);color:#fff}.channel-header.opencode .header-icon[data-v-849862db]{background:linear-gradient(135deg,#ea580c,#c2410c);color:#fff}.channel-title[data-v-849862db]{font-size:13px;font-weight:700;margin:0;color:var(--text-primary);letter-spacing:.3px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.channel-content[data-v-849862db]{flex:1;min-height:0;overflow:hidden;padding:10px;display:flex;flex-direction:column;gap:6px}.card[data-v-849862db]{background:linear-gradient(180deg,#fffffff0,#f7faf8f5);border:1px solid rgba(216,225,222,.92);border-radius:18px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 10px 28px #0f171d0f;position:relative}.card[data-v-849862db]:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);opacity:0;transition:opacity .3s ease}.card[data-v-849862db]:hover{box-shadow:0 18px 38px #0f171d1a;border-color:#c3d0cbf2}.card[data-v-849862db]:hover:before{opacity:1}.card.clickable[data-v-849862db]{cursor:pointer}.card.clickable[data-v-849862db]:hover{border-color:#18a058;transform:translateY(-2px);box-shadow:0 8px 24px #18a0582e}.card.clickable[data-v-849862db]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(24,160,88,.02) 0%,transparent 100%);opacity:0;transition:opacity .3s ease;pointer-events:none}.card.clickable[data-v-849862db]:hover:after{opacity:1}.card-header[data-v-849862db]{display:flex;align-items:center;gap:8px;padding:9px 12px;background:linear-gradient(180deg,#f4f7f8f5,#ffffffd6);border-bottom:1px solid rgba(216,225,222,.9);position:relative;min-height:24px}.card-header.compact[data-v-849862db]{padding:8px 12px}.card-header .n-icon[data-v-849862db]{color:var(--text-tertiary);transition:color .2s ease}.card:hover .card-header .n-icon[data-v-849862db]{color:var(--text-secondary)}.card-title[data-v-849862db]{font-size:11px;font-weight:700;margin:0;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px}.runtime-badge[data-v-849862db]{display:inline-flex;align-items:center;padding:3px 8px;margin-left:8px;font-size:10px;font-weight:600;color:#10b981;background:linear-gradient(135deg,#10b9811a,#34d3991a);border:1px solid rgba(16,185,129,.2);border-radius:999px;white-space:nowrap;animation:pulse-runtime-849862db 2s ease-in-out infinite}@keyframes pulse-runtime-849862db{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.98)}}.card-body[data-v-849862db]{padding:8px 10px;background:transparent}.card-body.compact[data-v-849862db]{padding:7px 10px}.proxy-control[data-v-849862db]{display:flex;justify-content:space-between;align-items:center;gap:16px}.proxy-info[data-v-849862db]{display:flex;flex-direction:column;gap:4px}.proxy-info-row[data-v-849862db]{display:flex;align-items:center;justify-content:space-between}.proxy-status[data-v-849862db]{display:flex;align-items:center;gap:6px}.proxy-port[data-v-849862db]{font-size:11px;color:var(--text-secondary);margin-left:6px}.channel-selector[data-v-849862db]{display:flex;align-items:center;padding:4px 8px;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%);border:1px solid var(--border-primary);border-radius:4px;color:var(--text-secondary);transition:all .2s ease}.channel-selector[data-v-849862db]:hover{background:var(--hover-bg);border-color:var(--border-secondary);color:var(--text-primary)}.channel-selector[data-v-849862db]:disabled{opacity:.5;cursor:not-allowed}.channel-name[data-v-849862db]{font-size:11px;font-weight:500;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-dot[data-v-849862db]{width:8px;height:8px;border-radius:50%;background:var(--border-secondary);transition:all .3s ease}.status-dot.active[data-v-849862db]{background:#18a058;box-shadow:0 0 8px #18a05880}.quick-stats[data-v-849862db]{display:flex;gap:16px;padding:4px 0}.stat-item[data-v-849862db]{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 0}.stat-divider[data-v-849862db]{width:1px;background:linear-gradient(180deg,transparent 0%,var(--border-primary) 50%,transparent 100%)}.quick-access-list[data-v-849862db]{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.access-card[data-v-849862db]{display:flex;align-items:center;gap:5px;padding:7px 8px;border-radius:14px;background:#f4f7f8e0;border:1px solid rgba(216,225,222,.9);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;min-height:44px;overflow:hidden}.access-card[data-v-849862db]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .3s ease;pointer-events:none}.access-icon[data-v-849862db]{width:28px;height:28px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .3s ease}.access-content[data-v-849862db]{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0;overflow:hidden}.access-card-projects .access-icon[data-v-849862db]{background:linear-gradient(135deg,#6366f126,#8b5cf626);color:#6366f1}.access-card-projects[data-v-849862db]:before{background:linear-gradient(135deg,#6366f114,#8b5cf614)}.access-card-projects:hover .access-icon[data-v-849862db]{background:linear-gradient(135deg,#6366f140,#8b5cf640);transform:scale(1.1) rotate(-5deg)}.access-card-sessions .access-icon[data-v-849862db]{background:linear-gradient(135deg,#10b98126,#05966926);color:#10b981}.access-card-sessions[data-v-849862db]:before{background:linear-gradient(135deg,#10b98114,#05966914)}.access-card-sessions:hover .access-icon[data-v-849862db]{background:linear-gradient(135deg,#10b98140,#05966940);transform:scale(1.1) rotate(5deg)}.access-card-goto .access-icon[data-v-849862db]{background:linear-gradient(135deg,#f59e0b26,#fb923c26);color:#f59e0b}.access-card-goto[data-v-849862db]:before{background:linear-gradient(135deg,#f59e0b14,#fb923c14)}.access-card-goto:hover .access-icon[data-v-849862db]{background:linear-gradient(135deg,#f59e0b40,#fb923c40);transform:scale(1.1) translate(3px)}.access-card.clickable[data-v-849862db]:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000001a;border-color:var(--border-secondary)}.access-card.clickable[data-v-849862db]:hover:before{opacity:1}.access-card.clickable[data-v-849862db]:active{transform:translateY(0)}.access-label[data-v-849862db]{display:block;font-size:8px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;line-height:1.1}.access-value[data-v-849862db]{display:block;font-size:13px;font-weight:800;color:var(--text-primary);line-height:1;white-space:nowrap}.access-goto[data-v-849862db]{display:block;font-size:9px;font-weight:700;color:var(--text-primary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stats-inline[data-v-849862db]{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.stats-inline.stats-3col[data-v-849862db]{grid-template-columns:repeat(3,1fr)}.stat-inline-item[data-v-849862db]{display:flex;align-items:center;gap:8px;padding:10px;background:#f4f7f8e6;border-radius:14px;border:1px solid rgba(216,225,222,.88);transition:all .2s ease}.stat-inline-item[data-v-849862db]:hover{border-color:var(--border-secondary);background:var(--hover-bg)}.stat-icon-dot[data-v-849862db]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.stat-icon-dot.requests[data-v-849862db]{background:#3b82f6;box-shadow:0 0 6px #3b82f680}.stat-icon-dot.tokens[data-v-849862db]{background:#18a058;box-shadow:0 0 6px #18a05880}.stat-icon-dot.cost[data-v-849862db]{background:#f59e0b;box-shadow:0 0 6px #f59e0b80}.stat-info[data-v-849862db]{display:flex;flex-direction:column;gap:1px;min-width:0}.stat-label[data-v-849862db]{font-size:10px;color:var(--text-tertiary);font-weight:500;text-transform:uppercase;letter-spacing:.2px}.stat-value[data-v-849862db]{font-size:16px;font-weight:700;color:var(--text-primary);line-height:1.2;transition:all .3s ease}.stat-value.animating[data-v-849862db]{animation:numberChange-849862db .6s ease}@keyframes numberChange-849862db{0%{transform:translateY(-6px);opacity:.5}50%{transform:translateY(0);opacity:1;color:var(--primary-color)}to{transform:translateY(0);opacity:1}}.stats-card[data-v-849862db],.chart-card[data-v-849862db]{border-left:2px solid transparent}.stats-card-claude[data-v-849862db],.chart-card[data-v-849862db]:has(+.stats-card-claude),.card[data-v-849862db]:has(.panel-card):nth-child(4){border-left-color:#18a058}.chart-card.chart-card-claude[data-v-849862db]{border-left-color:#18a058}.stats-card-codex[data-v-849862db],.chart-card[data-v-849862db]:has(+.stats-card-codex),.card[data-v-849862db]:has(.panel-card):nth-child(4){border-left-color:#3b82f6}.chart-card.chart-card-codex[data-v-849862db]{border-left-color:#3b82f6}.stats-card-gemini[data-v-849862db],.chart-card[data-v-849862db]:has(+.stats-card-gemini),.card[data-v-849862db]:has(.panel-card):nth-child(4){border-left-color:#a855f7}.chart-card.chart-card-gemini[data-v-849862db]{border-left-color:#a855f7}.stats-card-opencode[data-v-849862db],.chart-card[data-v-849862db]:has(+.stats-card-opencode),.card[data-v-849862db]:has(.panel-card):nth-child(4){border-left-color:#ea580c}.chart-card.chart-card-opencode[data-v-849862db]{border-left-color:#ea580c}.chart-card[data-v-849862db]{padding:0;overflow:hidden}.chart-card[data-v-849862db] .panel-card{border:none;border-radius:0;box-shadow:none;background:transparent}.stat-requests .stat-value[data-v-849862db]{color:#3b82f6}.stat-input .stat-value[data-v-849862db]{color:#18a058}.stat-output .stat-value[data-v-849862db]{color:#f59e0b}.token-label[data-v-849862db]{display:flex;align-items:center;gap:8px}.token-dot[data-v-849862db]{width:8px;height:8px;border-radius:50%}.logs-card[data-v-849862db]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(216,225,222,.88);border-radius:18px}.logs-card-body[data-v-849862db]{flex:1;min-height:0;display:flex;flex-direction:column;padding:0}.logs-card .card-header[data-v-849862db]{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%)}.logs-table-wrapper[data-v-849862db]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-primary)}.logs-table-header[data-v-849862db]{display:flex;padding:8px 12px;background:linear-gradient(180deg,#edf3f1f5,#f4f7f8eb);border-bottom:1px solid rgba(216,225,222,.92);font-size:11px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.6px;flex-shrink:0}.logs-header-claude .log-col[data-v-849862db]{color:#18a058b3;font-weight:600}.logs-header-codex .log-col[data-v-849862db]{color:#3b82f6b3;font-weight:600}.logs-header-gemini .log-col[data-v-849862db]{color:#a855f7b3;font-weight:600}.logs-header-opencode .log-col[data-v-849862db]{color:#ea580cb3;font-weight:600}[data-theme=dark] .logs-header-claude .log-col[data-v-849862db]{color:#34d399a6}[data-theme=dark] .logs-header-codex .log-col[data-v-849862db]{color:#60a5faa6}[data-theme=dark] .logs-header-gemini .log-col[data-v-849862db]{color:#c084fca6}[data-theme=dark] .logs-header-opencode .log-col[data-v-849862db]{color:#fb923ca6}[data-theme=dark] .channel-column[data-v-849862db]{background:linear-gradient(180deg,#111b20f5,#0d161bfa);border-color:#2b424ae6;box-shadow:0 24px 56px #00000047}[data-theme=dark] .channel-header[data-v-849862db]{background:linear-gradient(180deg,#162329e6,#111b20c7)}[data-theme=dark] .card[data-v-849862db],[data-theme=dark] .access-card[data-v-849862db],[data-theme=dark] .stat-inline-item[data-v-849862db]{background:linear-gradient(180deg,#111b20f2,#0f1a1ffa);border-color:#2b424ae6}.logs-container[data-v-849862db]{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.logs-container[data-v-849862db]::-webkit-scrollbar{width:4px}.logs-container[data-v-849862db]::-webkit-scrollbar-thumb{background:#18a0584d;border-radius:2px}.logs-container[data-v-849862db]::-webkit-scrollbar-thumb:hover{background:#18a05880}.empty-logs[data-v-849862db]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:var(--text-tertiary);min-height:200px;text-align:center}.log-row[data-v-849862db]{display:flex;align-items:center;padding:10px 12px;min-height:40px;border-bottom:1px solid var(--border-primary);font-size:12px;transition:all .2s ease;background:var(--bg-primary);position:relative}.log-row[data-v-849862db]:nth-child(2n){background:var(--bg-secondary)}.log-row[data-v-849862db]:hover{background:var(--hover-bg);transform:translate(2px)}.log-row.new-log[data-v-849862db]{animation:newLogPulse-849862db 4.5s cubic-bezier(.25,.46,.45,.94) forwards;border-left:3px solid #18a058}@keyframes newLogPulse-849862db{0%{background:linear-gradient(90deg,#18a05826,#18a0580f);box-shadow:0 0 8px #18a05833}5%{background:linear-gradient(90deg,#18a0582e,#18a05814);box-shadow:0 0 12px 1px #18a05840}15%{background:linear-gradient(90deg,#18a05829,#18a05812);box-shadow:0 0 10px 1px #18a05833}30%{background:linear-gradient(90deg,#18a0581f,#18a0580d);box-shadow:0 0 6px #18a05826}50%{background:linear-gradient(90deg,#18a05814,#18a05808);box-shadow:0 0 4px #18a0581a}70%{background:linear-gradient(90deg,#18a0580a,#18a05804);box-shadow:0 0 2px #18a0580f}85%{background:linear-gradient(90deg,#18a05805,#18a05802);box-shadow:0 0 1px #18a05808}to{background:transparent;box-shadow:0 0 #18a05800;border-left-color:transparent}}[data-theme=dark] .log-row.new-log[data-v-849862db]{animation:newLogPulseDark-849862db 4.5s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes newLogPulseDark-849862db{0%{background:linear-gradient(90deg,#18a05833,#18a05814);box-shadow:0 0 10px #18a05840}5%{background:linear-gradient(90deg,#18a0583d,#18a0581a);box-shadow:0 0 14px 2px #18a0584d}15%{background:linear-gradient(90deg,#18a05836,#18a05817);box-shadow:0 0 12px 1px #18a05840}30%{background:linear-gradient(90deg,#18a05829,#18a05812);box-shadow:0 0 8px 1px #18a0582e}50%{background:linear-gradient(90deg,#18a0581c,#18a0580b);box-shadow:0 0 5px #18a0581f}70%{background:linear-gradient(90deg,#18a0580f,#18a05806);box-shadow:0 0 3px #18a05814}85%{background:linear-gradient(90deg,#18a05808,#18a05803);box-shadow:0 0 1px #18a0580a}to{background:transparent;box-shadow:0 0 #18a05800;border-left-color:transparent}}.log-row.new-log.action-row[data-v-849862db]{border-left:3px solid #18a058}.log-row.action-row[data-v-849862db]{background:linear-gradient(90deg,#18a0581f,#18a0580a);border-left:3px solid #18a058;padding-left:8px}.log-row.error-row[data-v-849862db]{background:linear-gradient(90deg,#d0305024,#d030500a);border-left:3px solid #d03050;padding-left:8px}.log-row.action-row[data-v-849862db]:hover{background:linear-gradient(90deg,#18a0582e,#18a05814)}.log-row.error-row[data-v-849862db]:hover{background:linear-gradient(90deg,#d0305033,#d0305014)}.action-content[data-v-849862db]{display:flex;align-items:center;gap:8px;width:100%}.action-msg[data-v-849862db]{flex:1;font-size:11px;color:#18a058;font-weight:600;letter-spacing:.2px}.action-msg.error-msg[data-v-849862db]{color:#d03050}.action-time[data-v-849862db]{font-size:10px;font-family:SF Mono,Monaco,monospace;color:var(--text-tertiary);background:#18a0581a;padding:2px 6px;border-radius:4px}.action-time.error-time[data-v-849862db]{background:#d030501f}.log-col[data-v-849862db]{display:flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-channel[data-v-849862db]{min-width:0}.col-channel .n-tag[data-v-849862db]{max-width:100%;font-size:11px;font-weight:600;border-radius:4px;padding:3px 10px}.col-token[data-v-849862db]{justify-content:center;font-family:SF Mono,Monaco,Consolas,monospace;font-size:12px;font-weight:600;color:var(--text-secondary);background:#00000008;padding:4px 8px;border-radius:4px;margin:0 3px}[data-theme=dark] .col-token[data-v-849862db]{background:#ffffff0f}.col-time[data-v-849862db]{justify-content:flex-end;font-family:SF Mono,Monaco,Consolas,monospace;font-size:11px;font-weight:500;color:var(--text-tertiary);padding-right:2px;opacity:.85}.log-row:hover .col-time[data-v-849862db]{opacity:1;color:var(--text-secondary)}.col-channel-claude[data-v-849862db]{flex:2 1 60px;min-width:50px}.col-token-claude[data-v-849862db]{flex:1 1 40px;min-width:35px}.col-time-claude[data-v-849862db]{flex:1.5 1 55px;min-width:50px}.col-channel-codex[data-v-849862db]{flex:2 1 60px;min-width:50px}.col-token-codex[data-v-849862db]{flex:1 1 40px;min-width:35px}.col-time-codex[data-v-849862db]{flex:1.5 1 55px;min-width:50px}.col-channel-gemini[data-v-849862db]{flex:2.5 1 70px;min-width:55px}.col-token-gemini[data-v-849862db]{flex:1.2 1 45px;min-width:40px}.col-time-gemini[data-v-849862db]{flex:1.8 1 60px;min-width:55px}.col-channel-opencode[data-v-849862db]{flex:2.5 1 70px;min-width:55px}.col-token-opencode[data-v-849862db]{flex:1.2 1 45px;min-width:40px}.col-time-opencode[data-v-849862db]{flex:1.8 1 60px;min-width:55px}.claude-extra-area[data-v-849862db]{display:flex;align-items:center;gap:6px;margin-left:auto}.mcp-count-tag[data-v-849862db],.skills-count-tag[data-v-849862db]{font-size:10px;font-weight:500;padding:0 8px;height:22px;line-height:22px;border-radius:4px;cursor:pointer;transition:all .2s ease}.mcp-count-tag.clickable[data-v-849862db]:hover,.skills-count-tag.clickable[data-v-849862db]:hover{transform:scale(1.03);filter:brightness(1.1)}.mcp-quick-panel[data-v-849862db],.skills-quick-panel[data-v-849862db]{padding:2px 0}.mcp-quick-panel .panel-title[data-v-849862db],.skills-quick-panel .panel-title[data-v-849862db]{display:flex;justify-content:space-between;align-items:center;padding:6px 10px 8px;border-bottom:1px solid var(--border-primary);margin-bottom:4px}.mcp-quick-panel .panel-title span[data-v-849862db]:first-child,.skills-quick-panel .panel-title span[data-v-849862db]:first-child{font-size:13px;font-weight:600;color:var(--text-primary)}.no-items[data-v-849862db]{padding:16px 10px;text-align:center}.mcp-quick-list[data-v-849862db],.skills-quick-list[data-v-849862db]{max-height:300px;overflow-y:auto;padding:0 4px 4px}.mcp-quick-item[data-v-849862db],.skill-quick-item[data-v-849862db]{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:5px;margin-bottom:4px;background:var(--bg-secondary);transition:all .2s ease}.mcp-quick-item[data-v-849862db]:hover,.skill-quick-item[data-v-849862db]:hover{background:var(--hover-bg)}.mcp-item-icon[data-v-849862db],.skill-item-icon[data-v-849862db]{width:24px;height:24px;border-radius:5px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mcp-item-icon[data-v-849862db]{background:linear-gradient(135deg,#3b82f626,#3b82f60d);color:#3b82f6}.skill-item-icon[data-v-849862db]{background:linear-gradient(135deg,#18a05826,#18a0580d);color:#18a058}.mcp-item-info[data-v-849862db],.skill-item-info[data-v-849862db]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.mcp-item-name[data-v-849862db],.skill-item-name[data-v-849862db]{font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mcp-item-type[data-v-849862db]{font-size:10px;color:var(--text-tertiary);text-transform:uppercase}.skill-item-desc[data-v-849862db]{font-size:10px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mcp-item-status[data-v-849862db]{flex-shrink:0}.mcp-item-status .status-dot[data-v-849862db]{width:8px;height:8px;border-radius:50%;background:var(--border-secondary)}.mcp-item-status.online .status-dot[data-v-849862db]{background:#18a058;box-shadow:0 0 6px #18a05880}.mcp-item-status.error .status-dot[data-v-849862db]{background:#d03050;box-shadow:0 0 6px #d0305080}.mcp-quick-list[data-v-849862db]::-webkit-scrollbar,.skills-quick-list[data-v-849862db]::-webkit-scrollbar{width:4px}.mcp-quick-list[data-v-849862db]::-webkit-scrollbar-thumb,.skills-quick-list[data-v-849862db]::-webkit-scrollbar-thumb{background:#00000026;border-radius:2px}[data-theme=dark] .mcp-quick-list[data-v-849862db]::-webkit-scrollbar-thumb,[data-theme=dark] .skills-quick-list[data-v-849862db]::-webkit-scrollbar-thumb{background:#ffffff26}.skills-button[data-v-849862db]{padding:6px!important;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:5px;background:var(--bg-secondary);border:1px solid var(--border-primary);transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000000d}.skills-button .n-icon[data-v-849862db]{color:var(--text-color-3);transition:all .25s ease}.skills-button[data-v-849862db]:hover{background:linear-gradient(135deg,#18a0581a,#18a0580d);border-color:#18a0584d;box-shadow:0 4px 12px #18a05826;transform:translateY(-1px)}.skills-button:hover .n-icon[data-v-849862db]{color:#18a058;transform:scale(1.1)}.skills-button[data-v-849862db]:active{transform:translateY(0);box-shadow:0 2px 4px #0000000d}.lock-button[data-v-849862db]{margin-left:6px;padding:6px!important;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:5px;background:var(--bg-secondary);border:1px solid var(--border-primary);transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000000d}.lock-button .n-icon[data-v-849862db]{color:var(--text-color-3);transition:all .25s ease}.lock-button[data-v-849862db]:hover{background:linear-gradient(135deg,#6b72801a,#6b72800d);border-color:#6b72804d;box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.lock-button:hover .n-icon[data-v-849862db]{color:var(--text-color-1);transform:scale(1.1)}.lock-button[data-v-849862db]:active{transform:translateY(0);box-shadow:0 2px 4px #0000000d}.locked-overlay[data-v-849862db]{flex:1;display:flex;align-items:center;justify-content:center;border-radius:6px;margin:10px;position:relative;overflow:hidden;background:var(--bg-secondary);border:1px solid var(--border-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.locked-overlay[data-v-849862db]:before{content:"";position:absolute;width:400px;height:400px;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.4;filter:blur(60px);pointer-events:none}.locked-claude[data-v-849862db]{background:linear-gradient(135deg,rgba(24,160,88,.03) 0%,var(--bg-secondary) 50%,rgba(24,160,88,.02) 100%)}.locked-claude[data-v-849862db]:before{background:radial-gradient(circle,rgba(24,160,88,.15) 0%,transparent 70%)}.locked-codex[data-v-849862db]{background:linear-gradient(135deg,rgba(59,130,246,.03) 0%,var(--bg-secondary) 50%,rgba(59,130,246,.02) 100%)}.locked-codex[data-v-849862db]:before{background:radial-gradient(circle,rgba(59,130,246,.15) 0%,transparent 70%)}.locked-gemini[data-v-849862db]{background:linear-gradient(135deg,rgba(168,85,247,.03) 0%,var(--bg-secondary) 50%,rgba(168,85,247,.02) 100%)}.locked-gemini[data-v-849862db]:before{background:radial-gradient(circle,rgba(168,85,247,.15) 0%,transparent 70%)}.locked-opencode[data-v-849862db]{background:linear-gradient(135deg,rgba(234,88,12,.03) 0%,var(--bg-secondary) 50%,rgba(234,88,12,.02) 100%)}.locked-opencode[data-v-849862db]:before{background:radial-gradient(circle,rgba(234,88,12,.15) 0%,transparent 70%)}.locked-content[data-v-849862db]{display:flex;flex-direction:column;align-items:center;gap:20px;padding:60px 40px;text-align:center;position:relative;z-index:1}.lock-icon[data-v-849862db]{width:96px;height:96px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--bg-primary);border:2px solid var(--border-primary);margin-bottom:8px;position:relative;box-shadow:0 8px 24px #0000001f;animation:lock-float-849862db 3s ease-in-out infinite}@keyframes lock-float-849862db{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.lock-icon[data-v-849862db]:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:20px;opacity:.6;filter:blur(12px)}.locked-claude .lock-icon[data-v-849862db]{background:linear-gradient(135deg,rgba(24,160,88,.12) 0%,var(--bg-primary) 100%);border-color:#18a05840;box-shadow:0 8px 24px #18a05826,0 0 0 1px #18a0581a inset}.locked-claude .lock-icon[data-v-849862db]:before{background:radial-gradient(circle,rgba(24,160,88,.3) 0%,transparent 60%)}.locked-claude .lock-icon .n-icon[data-v-849862db]{color:#18a058;filter:drop-shadow(0 2px 4px rgba(24,160,88,.3))}.locked-codex .lock-icon[data-v-849862db]{background:linear-gradient(135deg,rgba(59,130,246,.12) 0%,var(--bg-primary) 100%);border-color:#3b82f640;box-shadow:0 8px 24px #3b82f626,0 0 0 1px #3b82f61a inset}.locked-codex .lock-icon[data-v-849862db]:before{background:radial-gradient(circle,rgba(59,130,246,.3) 0%,transparent 60%)}.locked-codex .lock-icon .n-icon[data-v-849862db]{color:#3b82f6;filter:drop-shadow(0 2px 4px rgba(59,130,246,.3))}.locked-gemini .lock-icon[data-v-849862db]{background:linear-gradient(135deg,rgba(168,85,247,.12) 0%,var(--bg-primary) 100%);border-color:#a855f740;box-shadow:0 8px 24px #a855f726,0 0 0 1px #a855f71a inset}.locked-gemini .lock-icon[data-v-849862db]:before{background:radial-gradient(circle,rgba(168,85,247,.3) 0%,transparent 60%)}.locked-gemini .lock-icon .n-icon[data-v-849862db]{color:#a855f7;filter:drop-shadow(0 2px 4px rgba(168,85,247,.3))}.locked-opencode .lock-icon[data-v-849862db]{background:linear-gradient(135deg,rgba(234,88,12,.12) 0%,var(--bg-primary) 100%);border-color:#ea580c40;box-shadow:0 8px 24px #ea580c26,0 0 0 1px #ea580c1a inset}.locked-opencode .lock-icon[data-v-849862db]:before{background:radial-gradient(circle,rgba(234,88,12,.3) 0%,transparent 60%)}.locked-opencode .lock-icon .n-icon[data-v-849862db]{color:#ea580c;filter:drop-shadow(0 2px 4px rgba(234,88,12,.3))}.lock-icon .n-icon[data-v-849862db]{opacity:.85;position:relative;z-index:1}.locked-title[data-v-849862db]{font-size:17px;font-weight:600;color:var(--text-color-1);margin:0;letter-spacing:.3px}.locked-hint[data-v-849862db]{font-size:13px;color:var(--text-color-3);max-width:220px;line-height:1.7;opacity:.9}.channel-status[data-v-849862db]{cursor:pointer;padding:4px 8px!important;border-radius:4px;transition:all .2s ease}.channel-status[data-v-849862db]:hover{background:var(--hover-bg)}.channel-quick-panel[data-v-849862db]{padding:4px 0}.panel-title[data-v-849862db]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px 12px;border-bottom:1px solid var(--border-primary);margin-bottom:8px}.panel-title span[data-v-849862db]:first-child{font-size:13px;font-weight:600;color:var(--text-primary)}.no-channels[data-v-849862db]{padding:24px 12px;text-align:center}.channel-quick-list[data-v-849862db]{max-height:360px;overflow-y:auto}.channel-quick-item[data-v-849862db]{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border-radius:6px;margin:0 4px 6px;background:var(--bg-secondary);transition:all .2s ease}.channel-quick-item[data-v-849862db]:hover{background:var(--hover-bg)}.channel-quick-item.disabled[data-v-849862db]{opacity:.6}.channel-quick-info[data-v-849862db]{display:flex;align-items:center;gap:8px;width:100%}.channel-quick-name[data-v-849862db]{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-metrics[data-v-849862db]{display:flex;gap:6px;width:100%}.channel-metrics .metric-item[data-v-849862db]{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;background:var(--bg-primary);border-radius:4px;border:1px solid var(--border-primary)}.channel-metrics .metric-label[data-v-849862db]{font-size:10px;color:var(--text-tertiary);font-weight:500}.channel-metrics .metric-value[data-v-849862db]{font-size:12px;font-weight:700;color:var(--text-primary);font-family:SF Mono,Monaco,monospace}.channel-metrics .metric-value.active[data-v-849862db]{color:#f59e0b}.channel-switching-tip[data-v-849862db]{font-size:11px;color:var(--text-tertiary);padding:0 2px}.channel-quick-item.disabled .channel-metrics .metric-value[data-v-849862db]{color:var(--text-tertiary)}.channel-quick-list[data-v-849862db]::-webkit-scrollbar{width:4px}.channel-quick-list[data-v-849862db]::-webkit-scrollbar-thumb{background:#00000026;border-radius:2px}[data-theme=dark] .channel-quick-list[data-v-849862db]::-webkit-scrollbar-thumb{background:#ffffff26}@media (max-width: 1024px){.channel-column[data-v-849862db]{border-radius:6px}.card-header[data-v-849862db]{padding:8px 10px}.card-title[data-v-849862db]{font-size:13px}.stats-inline[data-v-849862db]{gap:6px}.stat-inline-item[data-v-849862db]{padding:8px}.stat-value[data-v-849862db]{font-size:14px}.stat-label[data-v-849862db]{font-size:9px}.logs-table-header[data-v-849862db]{padding:8px 10px;font-size:10px}.log-row[data-v-849862db]{padding:8px 10px;font-size:11px}}@media (max-width: 768px){.channel-column[data-v-849862db]{border-radius:6px;min-height:300px;height:auto;max-height:400px}.card-header[data-v-849862db]{padding:8px;gap:6px}.card-title[data-v-849862db]{font-size:12px}.stats-inline[data-v-849862db]{gap:4px}.stat-inline-item[data-v-849862db]{padding:6px;gap:6px}.stat-icon-dot[data-v-849862db]{width:6px;height:6px}.stat-value[data-v-849862db]{font-size:13px}.stat-label[data-v-849862db]{font-size:8px}.logs-card[data-v-849862db]{min-height:150px}.logs-table-header[data-v-849862db]{padding:6px 8px;font-size:9px}.log-row[data-v-849862db]{padding:6px 8px;font-size:10px;min-height:32px}.col-token[data-v-849862db]{font-size:10px;padding:2px 4px}.col-time[data-v-849862db]{font-size:9px}.mcp-count-tag[data-v-849862db],.skills-count-tag[data-v-849862db]{font-size:9px;padding:0 6px;height:18px;line-height:18px}.skills-button[data-v-849862db]{padding:4px 8px;font-size:10px;gap:4px}.lock-button[data-v-849862db]{width:26px;height:26px}}@media (max-width: 640px){.channel-column[data-v-849862db]{min-height:250px;max-height:350px}.card-header[data-v-849862db]{padding:6px;gap:4px;flex-wrap:wrap}.card-title[data-v-849862db]{font-size:11px}.stats-card .card-content[data-v-849862db]{padding:6px}.stats-inline[data-v-849862db]{gap:3px;flex-wrap:wrap}.stat-inline-item[data-v-849862db]{padding:5px;gap:4px;min-width:calc(33% - 3px);flex:1 1 auto}.stat-icon-dot[data-v-849862db]{width:5px;height:5px}.stat-value[data-v-849862db]{font-size:12px}.stat-label[data-v-849862db]{font-size:7px}.logs-card[data-v-849862db]{min-height:120px}.logs-table-header[data-v-849862db]{padding:5px 6px;font-size:8px;letter-spacing:.3px}.log-row[data-v-849862db]{padding:5px 6px;font-size:9px;min-height:28px}.col-channel .n-tag[data-v-849862db]{font-size:9px;padding:2px 6px}.col-token[data-v-849862db]{font-size:9px;padding:2px 3px;margin:0 1px}.col-time[data-v-849862db]{font-size:8px}.claude-extra-area[data-v-849862db]{gap:4px}.mcp-count-tag[data-v-849862db],.skills-count-tag[data-v-849862db]{font-size:8px;padding:0 4px;height:16px;line-height:16px}.skills-button[data-v-849862db]{padding:3px 6px;font-size:9px;gap:3px}.skills-button .n-icon[data-v-849862db]{font-size:12px!important}.lock-button[data-v-849862db]{width:24px;height:24px;margin-left:4px}.lock-button .n-icon[data-v-849862db]{font-size:12px!important}.locked-content[data-v-849862db]{padding:30px 20px;gap:12px}.lock-icon[data-v-849862db]{width:64px;height:64px}.lock-icon .n-icon[data-v-849862db]{font-size:28px!important}.lock-title[data-v-849862db]{font-size:14px}.lock-subtitle[data-v-849862db]{font-size:10px}.unlock-btn[data-v-849862db]{padding:8px 16px;font-size:11px}}@media (max-width: 480px){.channel-column[data-v-849862db]{min-height:220px;max-height:300px}.card-header[data-v-849862db]{padding:5px}.card-title[data-v-849862db]{font-size:10px}.stats-inline[data-v-849862db]{gap:2px}.stat-inline-item[data-v-849862db]{padding:4px;gap:3px}.stat-value[data-v-849862db]{font-size:11px}.stat-label[data-v-849862db]{font-size:6px}.logs-table-header[data-v-849862db]{padding:4px 5px;font-size:7px}.log-row[data-v-849862db]{padding:4px 5px;font-size:8px;min-height:24px}.col-token[data-v-849862db]{font-size:8px}.col-time[data-v-849862db]{font-size:7px}}.card[data-v-849862db]:not(.logs-card) .n-collapse{background:transparent}.card[data-v-849862db]:not(.logs-card) .n-collapse-item{background:transparent}.card[data-v-849862db] .n-collapse-item__header{padding:12px 16px;background:transparent;transition:all .3s ease}.card[data-v-849862db] .n-collapse-item__header:hover{background:#00000005}.card[data-v-849862db] .n-collapse-item__header-main{width:100%}.card[data-v-849862db]:not(.logs-card) .n-collapse-item__content-wrapper{padding:0 16px 12px}.card[data-v-849862db]:not(.logs-card) .n-collapse-item__content-inner{padding-top:0}.chart-card[data-v-849862db]:has(.n-collapse){padding:0}.dashboard-container[data-v-a6410dd2]{height:100%;background:var(--gradient-bg);overflow:hidden;padding:18px;box-sizing:border-box;display:flex;flex-direction:column}.dashboard-toolbar[data-v-a6410dd2]{display:flex;justify-content:flex-end;margin-bottom:8px;flex-shrink:0}.analytics-link[data-v-a6410dd2]{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--primary-color, #18a058);text-decoration:none;padding:4px 10px;border-radius:4px;background:#18a05814;transition:background .2s}.analytics-link[data-v-a6410dd2]:hover{background:#18a05826}.analytics-link-icon[data-v-a6410dd2]{font-size:14px}.dashboard-grid[data-v-a6410dd2]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;flex:1;min-height:0;overflow:hidden;box-sizing:border-box;align-items:stretch}.dashboard-grid[data-v-a6410dd2] .sortable-ghost{opacity:.4}.dashboard-grid[data-v-a6410dd2] .sortable-chosen{box-shadow:0 8px 24px #00000026}@media (max-width: 1240px){.dashboard-grid[data-v-a6410dd2]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 960px){.dashboard-grid[data-v-a6410dd2]{grid-template-columns:repeat(2,1fr)}}@media (max-width: 1024px){.dashboard-container[data-v-a6410dd2]{padding:14px}.dashboard-grid[data-v-a6410dd2]{gap:12px}}@media (max-width: 900px){.dashboard-grid[data-v-a6410dd2]{grid-template-columns:1fr}}@media (max-width: 768px){.dashboard-container[data-v-a6410dd2]{padding:10px;overflow-y:auto}.dashboard-grid[data-v-a6410dd2]{gap:10px;overflow:visible;min-height:auto}}@media (max-width: 640px){.dashboard-container[data-v-a6410dd2]{padding:6px}.dashboard-grid[data-v-a6410dd2]{gap:6px}}@media (max-width: 480px){.dashboard-container[data-v-a6410dd2]{padding:4px}.dashboard-grid[data-v-a6410dd2]{gap:4px}}
@@ -1 +0,0 @@
1
- import{d as e}from"./vendors-DQA4Hw9v.js";import{a8 as a,f as l,r as n,w as s,h as c,K as t,a7 as o,c as i,o as u,a as d,W as r,X as v,Y as p,N as h,a0 as y,a3 as g,_ as m,p as f,L as k,F as T,$ as b,Z as x,v as w}from"./vue-vendor-B5RqjEjQ.js";import{_ as C,u as $,a as _,R as q,g as z,b as S,c as L,d as I,e as j,f as M,h as O,i as N,j as A,k as F,l as D,s as P}from"./index-fWgvlZQx.js";import{E as U,o as E,n as V,m as J,aq as K,ar as R,as as B,at as G,au as Z,a9 as H,i as W,A as X,av as Y,aw as Q,T as ee,a as ae,b as le}from"./icons-QFXzEgqM.js";import{L as ne,N as se,B as ce,s as te,b as oe,c as ie,a as ue,Z as de}from"./naive-ui-DM897mIP.js";import"./markdown-BNJfEgCA.js";const re={class:"channel-column"},ve={class:"drag-handle",title:"拖拽排序"},pe={class:"header-icon"},he={class:"channel-title"},ye={key:0,class:"claude-extra-area"},ge={key:0,class:"channel-content"},me={class:"card"},fe={class:"card-header"},ke={key:0,class:"runtime-badge"},Te={class:"card-body",style:{padding:"6px 10px"}},be={class:"proxy-info-row"},xe={class:"proxy-status"},we={class:"proxy-port"},Ce={class:"channel-name"},$e={class:"channel-quick-panel"},_e={class:"panel-title"},qe={key:0,class:"no-channels"},ze={key:1,class:"channel-quick-list"},Se={class:"channel-quick-info"},Le={class:"channel-quick-name"},Ie={key:0,class:"channel-switching-tip"},je={class:"channel-metrics"},Me={class:"metric-item"},Oe={class:"metric-value"},Ne={class:"metric-item"},Ae={class:"metric-value"},Fe={class:"metric-item"},De={class:"metric-value"},Pe={class:"metric-item"},Ue={class:"card"},Ee={class:"card-header compact"},Ve={class:"card-body",style:{padding:"8px 10px"}},Je={class:"quick-access-list"},Ke={class:"access-icon"},Re={class:"access-content"},Be={class:"access-value"},Ge={class:"access-icon"},Ze={class:"access-content"},He={class:"access-value"},We={class:"access-icon"},Xe={class:"access-content"},Ye={class:"access-goto"},Qe={class:"card-header compact"},ea={class:"card-body",style:{padding:"8px 10px"}},aa={class:"stats-inline stats-3col"},la={class:"stat-inline-item stat-requests"},na={class:"stat-info"},sa={class:"stat-inline-item stat-input"},ca={class:"stat-info"},ta={class:"stat-inline-item stat-output"},oa={class:"stat-info"},ia={key:1,class:"card logs-card"},ua={class:"card-header compact"},da={class:"card-body logs-card-body"},ra={class:"logs-table-wrapper"},va={key:0,class:"empty-logs"},pa=["title"],ha={key:0,class:"action-content"},ya={class:"action-msg"},ga={class:"action-time"},ma={key:1,class:"action-content"},fa={class:"action-msg error-msg"},ka={class:"action-time error-time"},Ta={class:"locked-content"},ba={class:"lock-icon"},xa="channelLocks",wa=C({__name:"ChannelColumn",props:{channelType:{type:String,required:!0,validator:e=>["claude","codex","gemini","opencode"].includes(e)}},setup(e){const C=e,D=a(),P=ne(),{claudeProxy:wa,codexProxy:Ca,geminiProxy:$a,opencodeProxy:_a,claudeChannels:qa,codexChannels:za,geminiChannels:Sa,opencodeChannels:La,schedulerState:Ia,getProxyState:ja,startProxy:Ma,stopProxy:Oa,getLogs:Na,clearLogsForSource:Aa,loadChannels:Fa,logLimit:Da,statsInterval:Pa}=$(),{dashboardData:Ua,loadDashboard:Ea}=_(),Va={claude:{title:"ClaudeCode",subtitle:"智能编程助手",icon:J},codex:{title:"Codex-CLI",subtitle:"高效代码生成",icon:V},gemini:{title:"Gemini-CLI",subtitle:"多模态AI助手",icon:E},opencode:{title:"OpenCode",subtitle:"AI 代码助手",icon:U}},Ja=l(()=>Va[C.channelType].title);l(()=>Va[C.channelType].subtitle);const Ka=l(()=>Va[C.channelType].icon),Ra=l(()=>"claude"===C.channelType?wa.value:"codex"===C.channelType?Ca.value:"gemini"===C.channelType?$a.value:"opencode"===C.channelType?_a.value:{}),Ba=l(()=>"claude"===C.channelType?"Claude":"codex"===C.channelType?"Codex":"gemini"===C.channelType?"Gemini":"opencode"===C.channelType?"OpenCode":""),Ga=n({projects:0,sessions:0}),Za=n({requests:0,tokens:0,cost:0}),Ha=n({requests:0,tokens:0,cost:0}),Wa={requests:0,tokens:0,cost:3};let Xa={requests:null,tokens:null,cost:null};const Ya=n({requests:!1,tokens:!1,cost:!1}),Qa=l(()=>{var e,a,l;const n="claude"===C.channelType?"claude":"codex"===C.channelType?"codex":"opencode"===C.channelType?"opencode":"gemini";return(null==(l=null==(a=null==(e=Ua.value)?void 0:e.todayStats)?void 0:a[n])?void 0:l.byModel)||{}});function el(e,a,l,n=600){Xa[e]&&cancelAnimationFrame(Xa[e]),Ya.value[e]=!0;const s=Date.now(),c=()=>{const t=Date.now()-s,o=Math.min(t/n,1),i=1-Math.pow(1-o,2),u=a+(l-a)*i,d=Wa[e]??0,r=Math.pow(10,d),v=d>0?Math.round(u*r)/r:Math.round(u);Ha.value[e]=v,o<1?Xa[e]=requestAnimationFrame(c):Ya.value[e]=!1};Xa[e]=requestAnimationFrame(c)}const al=n(!1);function ll(e){try{const a=localStorage.getItem(xa),l=a?JSON.parse(a):{};l[C.channelType]=e,localStorage.setItem(xa,JSON.stringify(l))}catch(a){}}const nl=n(function(){try{const e=localStorage.getItem(xa);if(e){return JSON.parse(e)[C.channelType]||!1}}catch(e){}return!1}());async function sl(){nl.value=!nl.value,ll(nl.value);try{if(await F("channelLocks",C.channelType,nl.value),Ua.value){const e=Ua.value.uiConfig||{},a={...e.channelLocks||{}};a[C.channelType]=nl.value,Ua.value={...Ua.value,uiConfig:{...e,channelLocks:a}}}}catch(e){}}const cl=n(!0);function tl(e){e.detail&&void 0!==e.detail.showLogs&&(cl.value=e.detail.showLogs)}const ol=n(Date.now()),il=l(()=>{if(!Ra.value.running)return"";const e=Ra.value.startTime;if(!e)return"";const a=ol.value-e;if(a<=0)return"";const l=Math.floor(a/1e3),n=Math.floor(l/3600),s=Math.floor(l%3600/60),c=l%60;let t="已运行 ";return n>0&&(t+=`${n}小时`),s>0&&(t+=`${s}分`),(c>0||0===n&&0===s)&&(t+=`${c}秒`),t}),ul=n(null),dl=l(()=>Da.value),rl={claude:Na("claude"),codex:Na("codex"),gemini:Na("gemini"),opencode:Na("opencode")},vl=l(()=>((rl[C.channelType]||rl.claude).value||[]).slice(0,dl.value));let pl=null,hl=null,yl=null,gl=!1,ml=null;const fl=l(()=>{let e=[];"claude"===C.channelType?e=qa.value||[]:"codex"===C.channelType?e=za.value||[]:"gemini"===C.channelType?e=Sa.value||[]:"opencode"===C.channelType&&(e=La.value||[]);return[...e.filter(e=>!1!==e.enabled),...e.filter(e=>!1===e.enabled)]});function kl(e){const a=Ia[C.channelType];if(!a||!a.channels)return 0;const l=a.channels.find(a=>a.id===e);return l?l.inflight:0}const Tl=l(()=>{var e;const a=fl.value.filter(e=>!1!==e.enabled).length;return(null==(e=Ra.value.proxy)?void 0:e.running)?`${a}个渠道调度中`:fl.value.length>0?`${a}个渠道已启用`:"无渠道"}),bl=n({});function xl(e){return bl.value[e]||{requests:0,tokens:0,cost:0}}async function wl(){var e;try{let a;if("claude"===C.channelType?a=await z():"codex"===C.channelType?a=await S():"gemini"===C.channelType?a=await L():"opencode"===C.channelType&&(a=await I()),a&&a.byChannel){const l={};for(const[n,s]of Object.entries(a.byChannel))l[n]={requests:s.requests||0,tokens:(null==(e=s.tokens)?void 0:e.total)||0,cost:s.cost||0};bl.value=l}}catch(a){}}function Cl(e,a){var l;return(null==e?void 0:e.usageMissing)?"--":(null==(l=null==e?void 0:e.tokens)?void 0:l[a])||0}function $l(e){if(!e||"action"===e.type||"error"===e.status)return"";const a=[];return e.model&&a.push(`模型: ${e.model}`),e.originalModel&&e.originalModel!==e.model&&a.push(`重定向: ${e.originalModel} -> ${e.model}`),e.usageMissing&&a.push("上游响应未返回 usage,当前无法计算 token。"),a.join("\n")}async function _l(e){var a,l;const n=ja(C.channelType);n.value.loading=!0;try{let a;a=e?await Ma(C.channelType):await Oa(C.channelType,{refreshChannelsDrawer:!0}),!1!==a.success?P.success(e?`${Ja.value} 代理已启动`:`${Ja.value} 代理已停止`):(P.error(a.error||"操作失败"),n.value.running=!e)}catch(s){P.error((null==(l=null==(a=s.response)?void 0:a.data)?void 0:l.error)||s.message||"操作失败"),n.value.running=!e}finally{n.value.loading=!1}}function ql(){D.push({name:`${C.channelType}-projects`})}function zl(){D.push({name:`${C.channelType}-projects`})}s(vl,e=>{var a;const l=(null==(a=e[0])?void 0:a.id)||null;if(!l||l===pl)return void(pl=l);pl=l,ml&&clearTimeout(ml),ml=setTimeout(()=>{wl()},5e3);(!ul.value||ul.value.scrollTop<20)&&w(()=>{ul.value&&(ul.value.scrollTop=0)})}),s(()=>Za.value.requests,e=>{el("requests",Ha.value.requests,e,600)}),s(()=>Za.value.tokens,e=>{el("tokens",Ha.value.tokens,e,600)}),s(()=>Za.value.cost,e=>{el("cost",Ha.value.cost,e,600)}),s(()=>C.channelType,()=>{var e;pl=(null==(e=vl.value[0])?void 0:e.id)||null}),s(()=>{var e,a;return null==(a=null==(e=Ua.value)?void 0:e.counts)?void 0:a[C.channelType]},()=>{jl()}),s(Pa,()=>{gl&&function(){hl&&(clearInterval(hl),hl=null);const e=Pa.value||30,a=Math.max(1e3*e,1e4);hl=setInterval(()=>{Ml(),wl()},a)}()});const Sl=n({});function Ll(e){return!!Sl.value[e]}function Il(e,a){e&&(Sl.value={...Sl.value,[e]:!!a})}function jl(){var e,a;const l=null==(a=null==(e=Ua.value)?void 0:e.counts)?void 0:a[C.channelType];Ga.value.projects=(null==l?void 0:l.projectCount)||0,Ga.value.sessions=(null==l?void 0:l.sessionCount)||0}async function Ml(){if(Ua.value&&Ua.value.todayStats){const e=Ua.value.todayStats[C.channelType];e&&(Za.value.requests=e.requests||0,Za.value.tokens=e.tokens||0,Za.value.cost=e.cost||0)}jl()}function Ol(){Aa(C.channelType)}function Nl(){window.dispatchEvent(new CustomEvent("open-skills-drawer",{detail:{platform:C.channelType}}))}return c(async()=>{await Promise.all([Ea().then(()=>Ml()),wl()]),async function(){var e,a;try{if(Ua.value&&Ua.value.uiConfig)cl.value=!1!==(null==(e=Ua.value.uiConfig.panelVisibility)?void 0:e.showLogs);else{const e=await j();e.success&&e.config&&(cl.value=!1!==(null==(a=e.config.panelVisibility)?void 0:a.showLogs))}}catch(l){}}(),async function(){var e,a;try{let l=!1;if(Ua.value&&Ua.value.uiConfig)l=(null==(e=Ua.value.uiConfig.channelLocks)?void 0:e[C.channelType])||!1;else{const e=await j();e.success&&e.config&&(l=(null==(a=e.config.channelLocks)?void 0:a[C.channelType])||!1)}nl.value=l,ll(l)}catch(l){}}(),window.addEventListener("panel-visibility-change",tl),Ha.value={...Za.value},gl=!0,yl=setInterval(()=>{ol.value=Date.now()},1e3)}),t(()=>{gl=!1,hl&&clearInterval(hl),yl&&clearInterval(yl),ml&&clearTimeout(ml),window.removeEventListener("panel-visibility-change",tl),Object.values(Xa).forEach(e=>{e&&cancelAnimationFrame(e)})}),(a,l)=>{const n=o("n-collapse");return u(),i("div",re,[d("div",{class:k(["channel-header",e.channelType])},[d("div",ve,[v(h(se),{size:16},{default:p(()=>[v(h(K))]),_:1})]),d("div",pe,[v(h(se),{size:20},{default:p(()=>[(u(),y(g(Ka.value)))]),_:1})]),d("h2",he,m(Ja.value),1),["claude","codex","gemini","opencode"].includes(e.channelType)?(u(),i("div",ye,[v(h(te),{trigger:"hover"},{trigger:p(()=>[v(h(ce),{text:"",class:"skills-button",onClick:Nl,title:"Skills 技能管理"},{icon:p(()=>[v(h(se),{size:18},{default:p(()=>[v(h(U))]),_:1})]),_:1})]),default:p(()=>[l[3]||(l[3]=f(" Skills 技能管理 ",-1))]),_:1})])):r("",!0),v(h(ce),{text:"",class:"lock-button",onClick:sl,title:nl.value?"解锁此列":"锁定此列"},{icon:p(()=>[v(h(se),{size:18},{default:p(()=>[nl.value?(u(),y(h(R),{key:0})):(u(),y(h(B),{key:1}))]),_:1})]),_:1},8,["title"])],2),nl.value?r("",!0):(u(),i("div",ge,[d("div",me,[d("div",fe,[v(h(se),{size:16},{default:p(()=>[v(h(G))]),_:1}),l[4]||(l[4]=d("h3",{class:"card-title"},"代理控制",-1)),Ra.value.running&&il.value?(u(),i("span",ke,m(il.value),1)):r("",!0),v(h(oe),{value:Ra.value.running,"onUpdate:value":[l[0]||(l[0]=e=>Ra.value.running=e),_l],loading:Ra.value.loading,size:"small",style:{"margin-left":"auto"}},null,8,["value","loading"])]),d("div",Te,[d("div",be,[d("div",xe,[d("div",{class:k(["status-dot",{active:Ra.value.running}])},null,2),v(h(ie),{type:Ra.value.running?"success":"default",style:{"font-size":"12px"}},{default:p(()=>[f(m(Ra.value.running?"运行中":"已停止"),1)]),_:1},8,["type"]),d("span",we,"端口: "+m(Ra.value.port),1)]),v(h(de),{trigger:"click",placement:"bottom",width:320,class:"channel-popover"},{trigger:p(()=>[v(h(ce),{text:"",size:"tiny",class:"channel-status"},{default:p(()=>[d("span",Ce,m(Tl.value),1)]),_:1})]),default:p(()=>[d("div",$e,[d("div",_e,[l[6]||(l[6]=d("span",null,"渠道快捷管理",-1)),v(h(ie),{depth:"3",style:{"font-size":"11px"}},{default:p(()=>[...l[5]||(l[5]=[f("点击开关切换状态",-1)])]),_:1})]),0===fl.value.length?(u(),i("div",qe,[v(h(ie),{depth:"3"},{default:p(()=>[...l[7]||(l[7]=[f("暂无配置渠道",-1)])]),_:1})])):(u(),i("div",ze,[(u(!0),i(T,null,b(fl.value,e=>{var a,n;return u(),i("div",{key:e.id,class:k(["channel-quick-item",{disabled:!1===e.enabled}])},[d("div",Se,[d("span",Le,m(e.name),1),"frozen"===(null==(a=e.health)?void 0:a.status)?(u(),y(h(ue),{key:0,size:"tiny",type:"error",bordered:!1},{default:p(()=>[...l[8]||(l[8]=[f(" 冻结 ",-1)])]),_:1})):r("",!0),v(h(oe),{size:"small",value:!1!==e.enabled,"onUpdate:value":a=>async function(e,a){if(e&&!Ll(e.id)){Il(e.id,!0);try{let l;"claude"===C.channelType?l=M:"codex"===C.channelType?l=O:"gemini"===C.channelType?l=N:"opencode"===C.channelType&&(l=A),l&&(await l(e.id,{enabled:a}),P.success(a?`渠道「${e.name}」已启用`:`渠道「${e.name}」已停用`),await Fa())}catch(l){P.error("操作失败: "+l.message)}finally{Il(e.id,!1)}}}(e,a),loading:Ll(e.id),disabled:Ll(e.id),style:{"margin-left":"auto"}},null,8,["value","onUpdate:value","loading","disabled"])]),Ll(e.id)?(u(),i("div",Ie," 正在切换渠道状态... ")):r("",!0),d("div",je,[d("span",Me,[l[9]||(l[9]=d("span",{class:"metric-label"},"请求",-1)),d("span",Oe,m(xl(e.id).requests),1)]),d("span",Ne,[l[10]||(l[10]=d("span",{class:"metric-label"},"Tokens",-1)),d("span",Ae,m((n=xl(e.id).tokens,n>=1e6?(n/1e6).toFixed(1)+"M":n>=1e3?(n/1e3).toFixed(1)+"K":n.toString())),1)]),d("span",Fe,[l[11]||(l[11]=d("span",{class:"metric-label"},"权重",-1)),d("span",De,m(e.weight||1),1)]),d("span",Pe,[l[12]||(l[12]=d("span",{class:"metric-label"},"并发",-1)),d("span",{class:k(["metric-value",{active:kl(e.id)>0}])},m(kl(e.id))+m(e.maxConcurrency?`/${e.maxConcurrency}`:""),3)])])],2)}),128))]))])]),_:1})])])]),d("div",Ue,[d("div",Ee,[v(h(se),{size:14},{default:p(()=>[v(h(Z))]),_:1}),l[13]||(l[13]=d("h3",{class:"card-title"},"快速访问",-1))]),d("div",Ve,[d("div",Je,[d("div",{class:"access-card access-card-projects clickable",onClick:ql},[d("div",Ke,[v(h(se),{size:16},{default:p(()=>[v(h(H))]),_:1})]),d("div",Re,[l[14]||(l[14]=d("span",{class:"access-label"},"项目",-1)),d("span",Be,m(Ga.value.projects),1)])]),d("div",{class:"access-card access-card-sessions clickable",onClick:l[1]||(l[1]=e=>al.value=!0)},[d("div",Ge,[v(h(se),{size:16},{default:p(()=>[v(h(W))]),_:1})]),d("div",Ze,[l[15]||(l[15]=d("span",{class:"access-label"},"最新对话",-1)),d("span",He,m(Ga.value.sessions),1)])]),d("div",{class:"access-card access-card-goto clickable",onClick:zl},[d("div",We,[v(h(se),{size:16},{default:p(()=>[v(h(X))]),_:1})]),d("div",Xe,[l[16]||(l[16]=d("span",{class:"access-label"},"前往",-1)),d("span",Ye,m(Ba.value),1)])])])])]),d("div",{class:k(["card stats-card",`stats-card-${e.channelType}`])},[d("div",Qe,[v(h(se),{size:14},{default:p(()=>[v(h(Y))]),_:1}),l[17]||(l[17]=d("h3",{class:"card-title"},"今日数据",-1))]),d("div",ea,[d("div",aa,[d("div",la,[l[19]||(l[19]=d("div",{class:"stat-icon-dot requests"},null,-1)),d("div",na,[l[18]||(l[18]=d("span",{class:"stat-label"},"请求",-1)),d("span",{class:k(["stat-value",{animating:Ya.value.requests}])},m(Ha.value.requests),3)])]),d("div",sa,[l[21]||(l[21]=d("div",{class:"stat-icon-dot tokens"},null,-1)),d("div",ca,[l[20]||(l[20]=d("span",{class:"stat-label"},"总 Tokens",-1)),d("span",{class:k(["stat-value",{animating:Ya.value.tokens}])},m((c=Ha.value.tokens,c>=1e6?(c/1e6).toFixed(1)+"M":c>=1e3?(c/1e3).toFixed(1)+"K":c.toString())),3)])]),d("div",ta,[l[23]||(l[23]=d("div",{class:"stat-icon-dot cost"},null,-1)),d("div",oa,[l[22]||(l[22]=d("span",{class:"stat-label"},"成本 / USD",-1)),d("span",{class:k(["stat-value",{animating:Ya.value.cost}])},m((s=Ha.value.cost,!s||Number.isNaN(s)?"$0":"$"+Number(s).toFixed(3))),3)])])])])],2),Object.keys(Qa.value).length>0?(u(),i("div",{key:0,class:k(["card chart-card",`chart-card-${e.channelType}`])},[v(n,{"default-expanded-names":[],accordion:""})],2)):r("",!0),cl.value?(u(),i("div",ia,[d("div",ua,[v(h(se),{size:14},{default:p(()=>[v(h(Q))]),_:1}),l[24]||(l[24]=d("h3",{class:"card-title"},"实时日志",-1)),v(h(ce),{text:"",size:"tiny",onClick:x(Ol,["stop"]),style:{"margin-left":"auto"},title:"清空日志"},{icon:p(()=>[v(h(se),{size:14},{default:p(()=>[v(h(ee))]),_:1})]),_:1})]),d("div",da,[d("div",ra,[d("div",{class:k(["logs-table-header",`logs-header-${e.channelType}`])},[d("div",{class:k(["log-col col-channel",`col-channel-${e.channelType}`])},"渠道",2),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"请求",2),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"回复",2),"claude"===e.channelType?(u(),i(T,{key:0},[d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"写入",2),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"命中",2)],64)):"codex"===e.channelType?(u(),i(T,{key:1},[d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"推理",2),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"缓存",2),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"总计",2)],64)):"gemini"===e.channelType?(u(),i(T,{key:2},[d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"缓存",2),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"总计",2)],64)):"opencode"===e.channelType?(u(),i(T,{key:3},[d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"推理",2),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"缓存",2),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},"总计",2)],64)):r("",!0),d("div",{class:k(["log-col col-time",`col-time-${e.channelType}`])},"时间",2)],2),d("div",{class:"logs-container",ref_key:"logsContainer",ref:ul},[0===vl.value.length?(u(),i("div",va,[v(h(se),{size:32,depth:"3",style:{"margin-bottom":"8px"}},{default:p(()=>[v(h(Q))]),_:1}),v(h(ie),{depth:"3",style:{"font-size":"12px","font-weight":"500"}},{default:p(()=>[...l[25]||(l[25]=[f("暂无实时日志",-1)])]),_:1}),v(h(ie),{depth:"3",style:{"font-size":"11px","margin-top":"4px"}},{default:p(()=>[...l[26]||(l[26]=[f("开启代理后将显示请求记录",-1)])]),_:1})])):r("",!0),(u(!0),i(T,null,b(vl.value,a=>(u(),i("div",{key:a.id,class:k(["log-row",{"action-row":"action"===a.type,"error-row":"error"===a.status,"new-log":a.isNew}]),title:$l(a)},["action"===a.type?(u(),i("div",ha,[v(h(se),{size:12,color:"#18a058"},{default:p(()=>[v(h(ae))]),_:1}),d("span",ya,m(a.message),1),d("span",ga,m(a.time),1)])):"error"===a.status?(u(),i("div",ma,[v(h(se),{size:12,color:"#d03050"},{default:p(()=>[v(h(le))]),_:1}),d("span",fa,m(a.channel)+": "+m(a.error||a.message||"请求失败"),1),d("span",ka,m(a.time),1)])):(u(),i(T,{key:2},[d("div",{class:k(["log-col col-channel",`col-channel-${e.channelType}`])},[v(h(ue),{size:"tiny",type:"success"},{default:p(()=>[f(m(a.channel),1)]),_:2},1024)],2),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"input")),3),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"output")),3),"claude"===e.channelType?(u(),i(T,{key:0},[d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"cacheCreation")),3),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"cacheRead")),3)],64)):"codex"===e.channelType?(u(),i(T,{key:1},[d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"reasoning")),3),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"cached")),3),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"total")),3)],64)):"gemini"===e.channelType?(u(),i(T,{key:2},[d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"cached")),3),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"total")),3)],64)):"opencode"===e.channelType?(u(),i(T,{key:3},[d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"reasoning")),3),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"cached")),3),d("div",{class:k(["log-col col-token",`col-token-${e.channelType}`])},m(Cl(a,"total")),3)],64)):r("",!0),d("div",{class:k(["log-col col-time",`col-time-${e.channelType}`])},m(a.time),3)],64))],10,pa))),128))],512)])])])):r("",!0)])),nl.value?(u(),i("div",{key:1,class:k(["locked-overlay",`locked-${e.channelType}`])},[d("div",Ta,[d("div",ba,[v(h(se),{size:48},{default:p(()=>[v(h(R))]),_:1})]),l[28]||(l[28]=d("h3",{class:"locked-title"},"该渠道已锁定",-1)),v(h(ie),{depth:"3",class:"locked-hint"},{default:p(()=>[...l[27]||(l[27]=[f(" 点击上方按钮解锁以查看内容 ",-1)])]),_:1})])],2)):r("",!0),v(q,{visible:al.value,"onUpdate:visible":l[2]||(l[2]=e=>al.value=e),channel:e.channelType},null,8,["visible","channel"])]);var s,c}}},[["__scopeId","data-v-849862db"]]),Ca=n({theme:"light",panelVisibility:{showChannels:!0,showLogs:!0},channelBalance:{showRemaining:!1},channelLocks:{claude:!1,codex:!1,gemini:!1},channelCollapse:{claude:[],codex:[],gemini:[]},channelOrder:{claude:[],codex:[],gemini:[]}});let $a=!1,_a=null;async function qa(){return $a?Ca.value:_a||(_a=(async()=>{try{const e=await j();e.success&&e.config&&(Ca.value=e.config,$a=!0)}catch(e){}finally{_a=null}return Ca.value})(),_a)}const za={class:"dashboard-container"},Sa="dashboardChannelOrder",La=C({__name:"Home",setup(a){const l=["claude","codex","gemini","opencode"],{uiConfig:s,updateConfig:t,loadUIConfig:o}=($a||qa(),{uiConfig:Ca,loadUIConfig:qa,saveConfig:async function(e){try{const a=await P(e);return!!a.success&&(Ca.value=a.config,!0)}catch(a){return!1}},updateConfig:async function(e,a){try{const l=await D(e,a);return!!l.success&&(Ca.value=l.config,!0)}catch(l){return!1}},updateNestedConfig:async function(e,a,l){try{const n=await F(e,a,l);return!!n.success&&(Ca.value=n.config,!0)}catch(n){return!1}}});function d(e){try{localStorage.setItem(Sa,JSON.stringify(e))}catch(a){}}const r=n(function(){try{const e=localStorage.getItem(Sa);if(e){const a=JSON.parse(e);if(Array.isArray(a)&&4===a.length)return a}}catch(e){}return l}().map(e=>({type:e})));async function g(){const e=r.value.map(e=>e.type);d(e),await t("dashboardChannelOrder",e)}return c(async()=>{if(await o(),s.value.dashboardChannelOrder&&Array.isArray(s.value.dashboardChannelOrder)&&4===s.value.dashboardChannelOrder.length){const e=s.value.dashboardChannelOrder;r.value=e.map(e=>({type:e})),d(e)}}),(a,l)=>(u(),i("div",za,[v(h(e),{modelValue:r.value,"onUpdate:modelValue":l[0]||(l[0]=e=>r.value=e),class:"dashboard-grid","item-key":"type",animation:200,handle:".drag-handle",onEnd:g},{item:p(({element:e})=>[(u(),y(wa,{"channel-type":e.type,key:e.type},null,8,["channel-type"]))]),_:1},8,["modelValue"])]))}},[["__scopeId","data-v-a6410dd2"]]);export{La as default};
@@ -1 +0,0 @@
1
- .channel-card[data-v-f0498a5c]{border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-primary);transition:all .2s}.channel-card[data-v-f0498a5c]:hover{border-color:var(--border-secondary)}.channel-header[data-v-f0498a5c]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-primary)}.channel-title[data-v-f0498a5c]{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.channel-name[data-v-f0498a5c]{font-weight:600;color:var(--text-primary);font-size:14px}.collapse-btn[data-v-f0498a5c]{flex-shrink:0}.collapse-btn .n-icon.collapsed[data-v-f0498a5c]{transform:rotate(-90deg)}.channel-actions[data-v-f0498a5c]{display:flex;align-items:center;gap:8px;flex-shrink:0}.test-result[data-v-f0498a5c]{padding:10px 16px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.test-result.success[data-v-f0498a5c]{background:#18a0580f;border-left:3px solid #18a058}.test-result.failed[data-v-f0498a5c]{background:#f56c6c0f;border-left:3px solid #f56c6c}.test-result-header[data-v-f0498a5c]{display:flex;align-items:center;gap:12px}.test-result-status[data-v-f0498a5c]{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500}.test-result.success .test-result-status[data-v-f0498a5c]{color:#18a058}.test-result.failed .test-result-status[data-v-f0498a5c]{color:#f56c6c}.test-result-info[data-v-f0498a5c]{display:flex;align-items:center;gap:10px;flex:1}.test-result-info .latency[data-v-f0498a5c]{font-size:13px;font-family:SF Mono,Monaco,monospace;font-weight:600;color:var(--text-primary);background:var(--bg-tertiary);padding:2px 8px;border-radius:4px}.test-result-info .status-code[data-v-f0498a5c]{font-size:11px;font-family:SF Mono,Monaco,monospace;color:var(--text-tertiary)}.test-result-error[data-v-f0498a5c]{margin-top:8px;padding:8px 10px;background:#f56c6c14;border-radius:4px;font-size:12px;color:#f56c6c;line-height:1.4;word-break:break-word}.channel-info[data-v-f0498a5c]{padding:12px 16px}.info-main[data-v-f0498a5c]{display:flex;flex-direction:column;gap:8px}.info-row[data-v-f0498a5c]{display:flex;align-items:center;gap:12px}.info-row .label[data-v-f0498a5c]{min-width:80px;font-size:13px}.info-row .value[data-v-f0498a5c]{flex:1;font-size:13px}.info-row .value.mono[data-v-f0498a5c]{font-family:SF Mono,Monaco,monospace}.info-footer[data-v-f0498a5c]{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:8px;border-top:1px solid var(--border-primary)}.footer-spacer[data-v-f0498a5c]{flex:1}.channel-meta[data-v-f0498a5c]{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;font-size:12px}.balance-meta-tag[data-v-f0498a5c]{cursor:pointer;flex-shrink:0;max-width:140px}.balance-meta-tag[data-v-f0498a5c] .n-tag__content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meta-item[data-v-f0498a5c]{color:var(--text-tertiary);white-space:nowrap}.meta-value[data-v-f0498a5c]{color:var(--text-secondary);font-weight:500}.meta-active[data-v-f0498a5c]{color:#18a058}@media (max-width: 1024px){.channel-header[data-v-f0498a5c],.channel-info[data-v-f0498a5c]{padding:10px 12px}.channel-actions[data-v-f0498a5c]{gap:6px}.info-row[data-v-f0498a5c]{gap:8px}.info-row .label[data-v-f0498a5c]{min-width:70px;font-size:12px}.info-row .value[data-v-f0498a5c]{font-size:12px}.channel-meta[data-v-f0498a5c]{gap:12px}}@media (max-width: 768px){.channel-header[data-v-f0498a5c]{flex-direction:column;align-items:stretch;gap:8px;padding:8px 10px}.channel-title[data-v-f0498a5c]{font-size:13px}.channel-actions[data-v-f0498a5c]{justify-content:space-between}.channel-actions[data-v-f0498a5c] .n-button{font-size:12px;padding:0 8px}.channel-info[data-v-f0498a5c]{padding:8px 10px}.info-row[data-v-f0498a5c]{flex-direction:column;align-items:flex-start;gap:4px}.info-row .label[data-v-f0498a5c]{min-width:auto}.info-footer[data-v-f0498a5c]{flex-direction:column;align-items:flex-start;gap:8px;margin-top:8px}.channel-meta[data-v-f0498a5c]{align-self:stretch;justify-content:flex-start;gap:8px 12px}}@media (max-width: 640px){.channel-card[data-v-f0498a5c]{border-radius:6px}.channel-header[data-v-f0498a5c]{padding:6px 8px}.channel-name[data-v-f0498a5c]{font-size:12px}.channel-title[data-v-f0498a5c] .n-tag{font-size:10px}.channel-info[data-v-f0498a5c]{padding:6px 8px}.info-row .label[data-v-f0498a5c],.info-row .value[data-v-f0498a5c]{font-size:11px}.channel-actions[data-v-f0498a5c] .n-button{font-size:11px;padding:0 6px;height:24px}.channel-meta[data-v-f0498a5c]{font-size:11px}}@media (max-width: 480px){.channel-header[data-v-f0498a5c],.channel-info[data-v-f0498a5c]{padding:4px 6px}.channel-actions[data-v-f0498a5c]{gap:4px}.channel-actions[data-v-f0498a5c] .n-button{font-size:10px;padding:0 4px;height:22px;min-width:0}}.model-redirect-editor[data-v-8ebdcad0]{width:100%}.redirect-row[data-v-8ebdcad0]{display:flex;align-items:center;gap:8px;margin-bottom:8px}.redirect-input[data-v-8ebdcad0]{flex:1;min-width:0}.redirect-arrow[data-v-8ebdcad0]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px}.add-btn[data-v-8ebdcad0]{width:100%;margin-top:4px}.loading-container{display:flex;align-items:center;justify-content:center;padding:80px 0}.empty-state{display:flex;justify-content:center;align-items:center;min-height:200px}.channels-list{display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden}.channel-card{border:1px solid var(--n-divider-color);border-radius:6px;padding:10px 12px;background:var(--bg-secondary);transition:all .2s ease;box-shadow:0 1px 2px #0000000a;border-left:3px solid #18a058}.channel-card.active{border-color:var(--n-primary-color);background:var(--n-primary-color-suppl, rgba(24, 160, 88, .08));box-shadow:0 2px 8px #18a0581a}.channel-card:hover{border-color:var(--n-border-color);box-shadow:0 2px 8px #00000014}.channel-card.disabled{opacity:.6;border-left-color:#909399}.channel-card.status-frozen{border-left-color:#d03050;background:linear-gradient(90deg,rgba(208,48,80,.08) 0%,transparent 100%)}.channel-card.status-checking{border-left-color:#f0a020;background:linear-gradient(90deg,rgba(240,160,32,.08) 0%,transparent 100%)}.channel-card.collapsed .channel-info{display:none}.channel-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.channel-title{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.channel-name{font-weight:600;font-size:13px;color:var(--n-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channel-actions{display:flex;gap:6px;align-items:center;flex-shrink:0}.channel-actions .apply-btn{opacity:0;transition:opacity .2s ease}.channel-card:hover .channel-actions .apply-btn{opacity:1}.channel-actions :deep(.n-switch){margin-left:2px}.channel-info{margin-top:8px;padding-top:8px;border-top:1px dashed var(--n-border-color)}.info-main{display:flex;flex-direction:column;gap:4px}.info-row{display:flex;align-items:center;gap:8px}.label{font-size:11px;color:var(--n-text-color-3);flex-shrink:0;width:56px}.value{font-size:12px;color:var(--n-text-color-2);word-break:break-word;flex:1}.value.mono{font-family:IBM Plex Mono,SFMono-Regular,Consolas,monospace}.info-footer{margin-top:6px;padding-top:6px;border-top:1px dashed var(--n-border-color);display:flex;align-items:center;gap:8px}.footer-spacer{flex:1}.channel-meta{display:flex;gap:12px;flex-shrink:0}.meta-item{font-size:11px;color:var(--n-text-color-3);white-space:nowrap}.meta-value{color:#18a058;font-weight:600}.meta-value.meta-active{color:#f0a020;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.collapse-btn{padding:0;display:flex;align-items:center}.collapse-btn .n-icon{transition:transform .2s ease}.collapse-btn .n-icon.collapsed{transform:rotate(-90deg)}.dialog-footer{display:flex;justify-content:flex-end;gap:8px}.channel-form{padding:0}.form-section{background:var(--n-color);border-radius:6px;padding:12px;margin-bottom:10px;border:1px solid var(--n-border-color)}.form-section:last-child{margin-bottom:0}.section-title{font-size:12px;font-weight:600;color:var(--n-text-color);margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--n-border-color);display:flex;align-items:center;gap:6px}.section-desc{font-size:11px;font-weight:400;color:var(--n-text-color-3)}.form-section.collapsible{background:var(--n-color-hover)}.channel-form :deep(.n-radio-group){width:100%}.channel-form :deep(.n-radio-group .n-space){width:100%;display:flex;gap:16px}.channel-form :deep(.n-radio){padding:8px 16px;border-radius:6px;border:1px solid var(--n-border-color);transition:all .2s ease;flex:1;display:flex;justify-content:center}.channel-form :deep(.n-radio:hover){border-color:var(--n-primary-color);background:var(--n-primary-color-suppl, rgba(24, 160, 88, .08))}.channel-form :deep(.n-radio.n-radio--checked){border-color:var(--n-primary-color);background:var(--n-primary-color-suppl, rgba(24, 160, 88, .08))}.channel-form :deep(.n-form-item){margin-bottom:10px}.channel-form :deep(.n-form-item:last-child){margin-bottom:0}.channel-form :deep(.n-form-item-label){font-size:12px;padding-bottom:0}.proxy-logs[data-v-dc95d405]{display:flex;flex-direction:column;height:100%;background:#fff;border-top:1px solid #e5e7eb}[data-theme=dark] .proxy-logs[data-v-dc95d405]{background:var(--bg-secondary);border-top:1px solid var(--border-primary)}.logs-header[data-v-dc95d405]{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e5e7eb}[data-theme=dark] .logs-header[data-v-dc95d405]{border-bottom:1px solid var(--border-primary)}.header-left[data-v-dc95d405]{display:flex;align-items:center;gap:12px}.title[data-v-dc95d405]{margin:0;font-size:14px;font-weight:600;color:#18181b}[data-theme=dark] .title[data-v-dc95d405]{color:var(--text-primary)}.today-stats[data-v-dc95d405]{display:flex;align-items:center;gap:6px}.today-stats[data-v-dc95d405] .n-tag{font-size:11px;font-weight:600;padding:2px 8px}.logs-table[data-v-dc95d405]{flex:1;display:flex;flex-direction:column;overflow:hidden}.table-header[data-v-dc95d405]{flex-shrink:0;display:flex;padding:8px 12px;background:#f9fafb;border-bottom:1px solid #e5e7eb;font-size:11px;font-weight:600;color:#6b7280;white-space:nowrap}[data-theme=dark] .table-header[data-v-dc95d405]{background:#ffffff05;border-bottom:1px solid var(--border-primary);color:var(--text-tertiary)}.table-body[data-v-dc95d405]{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-bottom:40px;scroll-padding-bottom:40px}.table-row[data-v-dc95d405]{display:flex;padding:8px 12px;border-bottom:1px solid #f3f4f6;font-size:12px;transition:background-color .2s;cursor:pointer;position:relative}[data-theme=dark] .table-row[data-v-dc95d405]{border-bottom:1px solid rgba(255,255,255,.04)}.table-row[data-v-dc95d405]:hover{background:#f9fafb}[data-theme=dark] .table-row[data-v-dc95d405]:hover{background:#ffffff0a}.table-row.new-log[data-v-dc95d405],.action-row.new-log[data-v-dc95d405]{animation:newLogPulse-dc95d405 4.5s cubic-bezier(.25,.46,.45,.94) forwards;border-left:3px solid #18a058;padding-left:9px}@keyframes newLogPulse-dc95d405{0%{background:linear-gradient(90deg,#18a05826,#18a0580f);box-shadow:0 0 8px #18a05833}5%{background:linear-gradient(90deg,#18a0582e,#18a05814);box-shadow:0 0 12px 1px #18a05840}15%{background:linear-gradient(90deg,#18a05829,#18a05812);box-shadow:0 0 10px 1px #18a05833}30%{background:linear-gradient(90deg,#18a0581f,#18a0580d);box-shadow:0 0 6px #18a05826}50%{background:linear-gradient(90deg,#18a05814,#18a05808);box-shadow:0 0 4px #18a0581a}70%{background:linear-gradient(90deg,#18a0580a,#18a05804);box-shadow:0 0 2px #18a0580f}85%{background:linear-gradient(90deg,#18a05805,#18a05802);box-shadow:0 0 1px #18a05808}to{background:transparent;box-shadow:0 0 #18a05800;border-left-color:transparent}}[data-theme=dark] .table-row.new-log[data-v-dc95d405],[data-theme=dark] .action-row.new-log[data-v-dc95d405]{animation:newLogPulseDark-dc95d405 4.5s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes newLogPulseDark-dc95d405{0%{background:linear-gradient(90deg,#18a05833,#18a05814);box-shadow:0 0 10px #18a05840}5%{background:linear-gradient(90deg,#18a0583d,#18a0581a);box-shadow:0 0 14px 2px #18a0584d}15%{background:linear-gradient(90deg,#18a05836,#18a05817);box-shadow:0 0 12px 1px #18a05840}30%{background:linear-gradient(90deg,#18a05829,#18a05812);box-shadow:0 0 8px 1px #18a0582e}50%{background:linear-gradient(90deg,#18a0581c,#18a0580b);box-shadow:0 0 5px #18a0581f}70%{background:linear-gradient(90deg,#18a0580f,#18a05806);box-shadow:0 0 3px #18a05814}85%{background:linear-gradient(90deg,#18a05808,#18a05803);box-shadow:0 0 1px #18a0580a}to{background:transparent;box-shadow:0 0 #18a05800;border-left-color:transparent}}.table-row-content[data-v-dc95d405]{display:flex;width:100%}.action-row[data-v-dc95d405]{display:flex;align-items:center;padding:10px 12px;border-bottom:1px solid #f3f4f6;background:#f0fdf4;font-size:13px;color:#166534;border-left:3px solid #18a058}[data-theme=dark] .action-row[data-v-dc95d405]{border-bottom:1px solid rgba(255,255,255,.04);background:#18a0581f;color:#4ade80}.error-row[data-v-dc95d405]{display:flex;align-items:center;padding:10px 12px;border-bottom:1px solid #f3f4f6;background:#fef2f2;font-size:13px;color:#b42318;border-left:3px solid #d03050}[data-theme=dark] .error-row[data-v-dc95d405]{border-bottom:1px solid rgba(255,255,255,.04);background:#d030501f;color:#fda4af}.action-message[data-v-dc95d405]{flex:1;font-weight:500}.action-time[data-v-dc95d405]{font-size:11px;font-family:monospace;color:#6b7280;margin-left:12px;margin-right:22px}[data-theme=dark] .action-time[data-v-dc95d405]{color:var(--text-tertiary)}.col[data-v-dc95d405]{display:flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.col-channel-claude[data-v-dc95d405]{flex:0 0 90px;min-width:0;overflow:hidden}.col-token-claude[data-v-dc95d405]{flex:0 0 68px;justify-content:center;min-width:0}.col-time-claude[data-v-dc95d405]{flex:0 0 100px;min-width:100px;font-family:monospace;font-size:11px;justify-content:flex-end;padding-left:10px;padding-right:6px}.col-channel-codex[data-v-dc95d405]{flex:0 0 75px;min-width:0;overflow:hidden}.col-token-codex[data-v-dc95d405]{flex:0 0 58px;justify-content:center;min-width:0}.col-time-codex[data-v-dc95d405]{flex:0 0 92px;min-width:92px;font-family:monospace;font-size:11px;justify-content:flex-end;padding-left:10px;padding-right:6px}.col-channel-gemini[data-v-dc95d405]{flex:0 0 90px;min-width:0;overflow:hidden}.col-token-gemini[data-v-dc95d405]{flex:0 0 68px;justify-content:center;min-width:0}.col-time-gemini[data-v-dc95d405]{flex:0 0 100px;min-width:100px;font-family:monospace;font-size:11px;justify-content:flex-end;padding-left:10px;padding-right:6px}.col-channel-opencode[data-v-dc95d405]{flex:0 0 75px;min-width:0;overflow:hidden}.col-token-opencode[data-v-dc95d405]{flex:0 0 58px;justify-content:center;min-width:0}.col-time-opencode[data-v-dc95d405]{flex:0 0 92px;min-width:92px;font-family:monospace;font-size:11px;justify-content:flex-end;padding-left:10px;padding-right:6px}.col-channel[data-v-dc95d405]{min-width:0;overflow:hidden}.col-channel .n-tag[data-v-dc95d405]{max-width:100%;overflow:hidden;text-overflow:ellipsis}.col-token[data-v-dc95d405]{justify-content:center;min-width:0}.col-time[data-v-dc95d405]{font-family:monospace;font-size:11px;justify-content:flex-end}.empty-state[data-v-dc95d405]{padding:40px 16px;text-align:center;font-size:13px;color:#9ca3af}[data-theme=dark] .empty-state[data-v-dc95d405]{color:var(--text-tertiary)}.logs-footer[data-v-dc95d405]{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;border-top:1px solid #e5e7eb;font-size:12px;color:#6b7280}[data-theme=dark] .logs-footer[data-v-dc95d405]{border-top:1px solid var(--border-primary);color:var(--text-tertiary)}.status[data-v-dc95d405]{display:flex;align-items:center;gap:4px;color:#ef4444}.status.connected[data-v-dc95d405]{color:#10b981}[data-theme=dark] .status.connected[data-v-dc95d405]{color:#4ade80}.count[data-v-dc95d405]{color:#6b7280}[data-theme=dark] .count[data-v-dc95d405]{color:var(--text-tertiary)}@media (max-width: 1024px){.logs-header[data-v-dc95d405]{padding:10px 12px}.header-left[data-v-dc95d405]{gap:8px}.title[data-v-dc95d405]{font-size:13px}.today-stats[data-v-dc95d405] .n-tag{font-size:10px;padding:1px 6px}.table-header[data-v-dc95d405]{padding:6px 10px;font-size:10px}.table-row[data-v-dc95d405]{padding:6px 10px}.logs-footer[data-v-dc95d405]{padding:6px 12px;font-size:11px}.col-channel-claude[data-v-dc95d405],.col-channel-gemini[data-v-dc95d405]{flex:0 0 75px}.col-token-claude[data-v-dc95d405],.col-token-gemini[data-v-dc95d405]{flex:0 0 55px}.col-time-claude[data-v-dc95d405],.col-time-gemini[data-v-dc95d405]{flex:0 0 80px;min-width:80px}.col-channel-codex[data-v-dc95d405],.col-channel-opencode[data-v-dc95d405]{flex:0 0 65px}.col-token-codex[data-v-dc95d405],.col-token-opencode[data-v-dc95d405]{flex:0 0 48px}.col-time-codex[data-v-dc95d405],.col-time-opencode[data-v-dc95d405]{flex:0 0 75px;min-width:75px}}@media (max-width: 768px){.logs-header[data-v-dc95d405]{flex-direction:column;align-items:stretch;gap:8px;padding:8px 10px}.header-left[data-v-dc95d405]{justify-content:space-between}.title[data-v-dc95d405]{font-size:12px}.today-stats[data-v-dc95d405] .n-tag{font-size:9px;padding:1px 4px}.table-header[data-v-dc95d405],.table-row[data-v-dc95d405]{font-size:10px;padding:4px 8px}.table-row-content[data-v-dc95d405]{font-size:10px}.action-row[data-v-dc95d405]{font-size:11px;padding:8px 10px}.action-message[data-v-dc95d405]{font-size:11px}.action-time[data-v-dc95d405]{font-size:9px;margin-right:12px}.col-channel-claude[data-v-dc95d405],.col-channel-gemini[data-v-dc95d405],.col-channel-codex[data-v-dc95d405],.col-channel-opencode[data-v-dc95d405]{flex:0 0 60px}.col-channel[data-v-dc95d405] .n-tag{font-size:9px;padding:0 4px;height:18px}.col-token-claude[data-v-dc95d405],.col-token-gemini[data-v-dc95d405],.col-token-codex[data-v-dc95d405],.col-token-opencode[data-v-dc95d405]{flex:0 0 40px;font-size:9px}.col-time-claude[data-v-dc95d405],.col-time-gemini[data-v-dc95d405],.col-time-codex[data-v-dc95d405],.col-time-opencode[data-v-dc95d405]{flex:0 0 65px;min-width:65px;font-size:9px}.logs-footer[data-v-dc95d405]{padding:4px 10px;font-size:10px}}@media (max-width: 640px){.logs-header[data-v-dc95d405]{padding:6px 8px;gap:6px}.header-left[data-v-dc95d405]{gap:4px;flex-wrap:wrap}.title[data-v-dc95d405]{font-size:11px}.today-stats[data-v-dc95d405]{gap:4px}.today-stats[data-v-dc95d405] .n-tag{font-size:8px;padding:0 3px;height:16px}.table-header[data-v-dc95d405],.table-row[data-v-dc95d405]{padding:3px 6px;font-size:9px}.table-row-content[data-v-dc95d405]{font-size:9px}.action-row[data-v-dc95d405]{font-size:10px;padding:6px 8px}.action-message[data-v-dc95d405]{font-size:10px}.action-time[data-v-dc95d405]{font-size:8px;margin-left:8px;margin-right:8px}.col-channel-claude[data-v-dc95d405],.col-channel-gemini[data-v-dc95d405],.col-channel-codex[data-v-dc95d405],.col-channel-opencode[data-v-dc95d405]{flex:0 0 50px}.col-channel[data-v-dc95d405] .n-tag{font-size:8px;padding:0 3px;height:16px}.col-token-claude[data-v-dc95d405],.col-token-gemini[data-v-dc95d405],.col-token-codex[data-v-dc95d405],.col-token-opencode[data-v-dc95d405]{flex:0 0 32px;font-size:8px}.col-time-claude[data-v-dc95d405],.col-time-gemini[data-v-dc95d405],.col-time-codex[data-v-dc95d405],.col-time-opencode[data-v-dc95d405]{flex:0 0 55px;min-width:55px;font-size:8px}.logs-footer[data-v-dc95d405]{padding:3px 8px;font-size:9px}.status[data-v-dc95d405],.count[data-v-dc95d405]{font-size:9px}}@media (max-width: 480px){.logs-header[data-v-dc95d405]{padding:4px 6px}.title[data-v-dc95d405]{font-size:10px}.today-stats[data-v-dc95d405] .n-tag{font-size:7px;height:14px}.table-header[data-v-dc95d405],.table-row[data-v-dc95d405]{padding:2px 4px;font-size:8px}.action-row[data-v-dc95d405]{font-size:9px;padding:4px 6px}.action-row[data-v-dc95d405] .n-icon{margin-right:4px}.col-channel-claude[data-v-dc95d405],.col-channel-gemini[data-v-dc95d405],.col-channel-codex[data-v-dc95d405],.col-channel-opencode[data-v-dc95d405]{flex:0 0 45px}.col-token-claude[data-v-dc95d405],.col-token-gemini[data-v-dc95d405],.col-token-codex[data-v-dc95d405],.col-token-opencode[data-v-dc95d405]{flex:0 0 28px;font-size:7px}.col-time-claude[data-v-dc95d405],.col-time-gemini[data-v-dc95d405],.col-time-codex[data-v-dc95d405],.col-time-opencode[data-v-dc95d405]{flex:0 0 48px;min-width:48px;font-size:7px}.logs-footer[data-v-dc95d405]{padding:2px 6px;font-size:8px}}.right-panel[data-v-4b503c0d]{width:480px;min-width:480px;height:100%;display:flex;flex-direction:column;background:var(--bg-primary);border-left:1px solid var(--border-primary)}.toolbar-section[data-v-4b503c0d]{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary)}.toolbar-left[data-v-4b503c0d]{display:flex;align-items:center;gap:8px}.toolbar-label[data-v-4b503c0d]{font-size:12px;margin-right:2px}.toolbar-right[data-v-4b503c0d]{display:flex;align-items:center;gap:2px}.toolbar-btn[data-v-4b503c0d]{padding:5px!important;border-radius:4px;color:var(--text-secondary)}.toolbar-btn[data-v-4b503c0d]:hover{background:var(--hover-bg);color:var(--primary-color, #18a058)}.toolbar-divider[data-v-4b503c0d]{width:1px;height:16px;background:var(--border-primary);margin:0 4px}.oauth-banner[data-v-4b503c0d]{flex-shrink:0;display:flex;align-items:center;gap:6px;padding:6px 14px;background:#2080f014;border-bottom:1px solid rgba(32,128,240,.2);font-size:12px;color:#2080f0}.oauth-banner span[data-v-4b503c0d]{flex:1}.channels-section[data-v-4b503c0d]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.channels-section.full-height[data-v-4b503c0d]{flex:1}.panel-header[data-v-4b503c0d]{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary)}.header-title[data-v-4b503c0d]{display:flex;align-items:baseline;gap:8px}.header-title h3[data-v-4b503c0d]{margin:0;font-size:13px;font-weight:600;color:var(--text-primary)}.header-hint[data-v-4b503c0d]{font-size:11px}.channels-scroll-area[data-v-4b503c0d]{flex:1;min-height:0;padding:12px;overflow-y:auto}.logs-section[data-v-4b503c0d]{flex:0 0 340px;min-height:340px;max-height:340px;overflow:hidden}.logs-section.full-height[data-v-4b503c0d]{flex:1;min-height:0;max-height:none}@media (max-width: 1024px){.right-panel[data-v-4b503c0d]{width:420px;min-width:420px}.logs-section[data-v-4b503c0d]{flex:0 0 300px;min-height:300px;max-height:300px}}@media (max-width: 768px){.right-panel[data-v-4b503c0d]{width:100%;min-width:100%}.toolbar-section[data-v-4b503c0d]{padding:8px 12px}.toolbar-label[data-v-4b503c0d]{font-size:11px}.logs-section[data-v-4b503c0d]{flex:0 0 260px;min-height:260px;max-height:260px}}.session-item[data-v-32d1b310]{display:flex;align-items:center;gap:12px;padding:16px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:8px;margin-bottom:8px;transition:all .2s}.session-item[data-v-32d1b310]:hover{border-color:#18a058;box-shadow:0 2px 8px #18a0581a}.session-left[data-v-32d1b310]{flex:1;display:flex;align-items:center;gap:16px;min-width:0}.session-icon[data-v-32d1b310]{flex-shrink:0}.session-info[data-v-32d1b310]{flex:1;min-width:0}.session-header[data-v-32d1b310]{display:flex;flex-direction:column;gap:4px}.session-title-row[data-v-32d1b310]{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.session-title[data-v-32d1b310]{font-weight:500;color:var(--text-primary);font-size:14px}.session-meta[data-v-32d1b310]{display:flex;gap:16px}.meta-item[data-v-32d1b310]{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--text-tertiary)}.session-message[data-v-32d1b310]{font-size:13px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:6px}.session-path[data-v-32d1b310]{font-size:12px;color:var(--text-quaternary);margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-actions[data-v-32d1b310]{display:flex;gap:8px;flex-shrink:0}@media (max-width: 1024px){.session-item[data-v-32d1b310]{padding:14px;gap:10px}.session-left[data-v-32d1b310],.session-meta[data-v-32d1b310]{gap:12px}.session-actions[data-v-32d1b310]{gap:6px}}@media (max-width: 768px){.session-item[data-v-32d1b310]{flex-direction:column;align-items:stretch;padding:12px;gap:12px}.session-left[data-v-32d1b310]{gap:10px}.session-icon[data-v-32d1b310]{display:none}.session-meta[data-v-32d1b310]{flex-wrap:wrap;gap:8px}.session-actions[data-v-32d1b310]{justify-content:flex-end;flex-wrap:wrap;gap:6px}.session-actions[data-v-32d1b310] .n-button{font-size:12px;padding:0 10px}}@media (max-width: 640px){.session-item[data-v-32d1b310]{padding:10px;gap:10px;border-radius:6px}.session-title[data-v-32d1b310]{font-size:13px}.session-meta[data-v-32d1b310]{gap:6px}.meta-item[data-v-32d1b310],.session-message[data-v-32d1b310]{font-size:12px}.session-path[data-v-32d1b310]{font-size:11px}.session-actions[data-v-32d1b310]{gap:4px}.session-actions[data-v-32d1b310] .n-button{font-size:11px;padding:0 8px;height:26px}}@media (max-width: 480px){.session-item[data-v-32d1b310]{padding:8px;margin-bottom:6px}.session-title-row[data-v-32d1b310]{flex-direction:column;align-items:flex-start;gap:4px}.session-title-row[data-v-32d1b310] .n-tag{margin:0!important}.session-meta[data-v-32d1b310]{flex-direction:column;align-items:flex-start;gap:4px}.session-actions[data-v-32d1b310]{justify-content:space-between}.session-actions[data-v-32d1b310] .n-button{flex:1;min-width:0}}.loading-container[data-v-b0f0decf]{display:flex;justify-content:center;align-items:center;min-height:200px}.sessions-list[data-v-b0f0decf]{display:flex;flex-direction:column;gap:0}.favorites-container[data-v-6dbf6eee]{padding:4px 0}.favorites-section[data-v-6dbf6eee]{margin-bottom:32px}.favorites-section[data-v-6dbf6eee]:last-child{margin-bottom:0}.section-header[data-v-6dbf6eee]{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;border-radius:10px;border-left:4px solid}.claude-header[data-v-6dbf6eee]{background:linear-gradient(135deg,rgba(24,160,88,.1) 0%,transparent 100%);border-left-color:#18a058}.codex-header[data-v-6dbf6eee]{background:linear-gradient(135deg,rgba(59,130,246,.1) 0%,transparent 100%);border-left-color:#3b82f6}.gemini-header[data-v-6dbf6eee]{background:linear-gradient(135deg,rgba(168,85,247,.1) 0%,transparent 100%);border-left-color:#a855f7}.section-header .n-icon[data-v-6dbf6eee]{flex-shrink:0}.claude-header .n-icon[data-v-6dbf6eee]{color:#18a058}.codex-header .n-icon[data-v-6dbf6eee]{color:#3b82f6}.gemini-header .n-icon[data-v-6dbf6eee]{color:#a855f7}.section-title[data-v-6dbf6eee]{margin:0;font-size:16px;font-weight:700;color:var(--text-primary);flex:1}.sessions-list[data-v-6dbf6eee]{display:flex;flex-direction:column;gap:8px}.clickable-session[data-v-6dbf6eee]{cursor:pointer}.chat-message[data-v-35aebdef]{width:min(86%,920px);padding:12px 16px;border-radius:10px;margin-bottom:8px;box-sizing:border-box;border:1px solid var(--n-border-color);background:var(--n-color-embedded);transition:border-color .2s,background-color .2s;align-self:flex-start}.message-user[data-v-35aebdef]{align-self:flex-end;background:#18a0581a;border-color:#18a05859}.message-assistant[data-v-35aebdef]{align-self:flex-start;background:#386bad14;border-color:#386bad4d}.message-header[data-v-35aebdef]{display:flex;align-items:center;gap:6px;margin-bottom:8px}.message-user .message-header[data-v-35aebdef]{justify-content:flex-end}.message-assistant .message-header[data-v-35aebdef]{justify-content:flex-start}.role-icon[data-v-35aebdef]{color:var(--n-text-color-3)}.message-role[data-v-35aebdef]{font-weight:600;font-size:12px;color:var(--n-text-color-2)}.message-model[data-v-35aebdef]{font-size:10px;color:var(--n-text-color-3);font-weight:400;padding:1px 5px;background:var(--n-color-embedded);border-radius:3px}.message-time[data-v-35aebdef]{font-size:11px;color:var(--n-text-color-3)}.spacer[data-v-35aebdef]{flex:1}.copy-btn[data-v-35aebdef]{opacity:0;cursor:pointer;color:var(--n-text-color-3);transition:all .2s;padding:2px}.chat-message:hover .copy-btn[data-v-35aebdef]{opacity:1}.copy-btn[data-v-35aebdef]:hover{color:var(--n-text-color)}.message-content[data-v-35aebdef]{font-size:13px;line-height:1.5;color:var(--n-text-color);overflow-x:hidden;word-break:break-word}.user-content[data-v-35aebdef]{white-space:pre-wrap;word-break:break-word}.content-item[data-v-35aebdef]{margin-bottom:8px}.image-item[data-v-35aebdef]{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:var(--n-color-embedded);border-radius:4px;color:var(--n-text-color-2);font-size:12px}.image-item img[data-v-35aebdef]{max-width:100%;border-radius:6px;display:block}.markdown-body[data-v-35aebdef]{font-size:13px;line-height:1.5}.markdown-body[data-v-35aebdef] h1,.markdown-body[data-v-35aebdef] h2,.markdown-body[data-v-35aebdef] h3,.markdown-body[data-v-35aebdef] h4,.markdown-body[data-v-35aebdef] h5,.markdown-body[data-v-35aebdef] h6{margin-top:8px;margin-bottom:4px;font-weight:600;line-height:1.3}.markdown-body[data-v-35aebdef] h1:first-child,.markdown-body[data-v-35aebdef] h2:first-child,.markdown-body[data-v-35aebdef] h3:first-child{margin-top:0}.markdown-body[data-v-35aebdef] h1{font-size:1.5em}.markdown-body[data-v-35aebdef] h2{font-size:1.3em}.markdown-body[data-v-35aebdef] h3{font-size:1.15em}.markdown-body[data-v-35aebdef] h4{font-size:1.05em}.markdown-body[data-v-35aebdef] p{margin-bottom:6px}.markdown-body[data-v-35aebdef] p:last-child{margin-bottom:0}.markdown-body[data-v-35aebdef] code{padding:2px 6px;background:var(--n-code-color);border-radius:3px;font-family:Monaco,Consolas,Courier New,monospace;font-size:.9em}.markdown-body[data-v-35aebdef] pre{margin:6px 0;padding:8px;background:var(--n-code-color);border-radius:6px;overflow-x:auto;max-width:100%}.markdown-body[data-v-35aebdef] pre code{padding:0;background:none;font-size:12px;line-height:1.5}.markdown-body[data-v-35aebdef] ul,.markdown-body[data-v-35aebdef] ol{margin-bottom:6px;padding-left:18px}.markdown-body[data-v-35aebdef] li{margin-bottom:2px}.markdown-body[data-v-35aebdef] blockquote{margin:6px 0;padding:4px 10px;border-left:4px solid var(--n-border-color);background:var(--n-color-embedded);color:var(--n-text-color-2)}.markdown-body[data-v-35aebdef] a{color:var(--n-color-target);text-decoration:none}.markdown-body[data-v-35aebdef] a:hover{text-decoration:underline}.markdown-body[data-v-35aebdef] table{width:100%;border-collapse:collapse;margin:8px 0}.markdown-body[data-v-35aebdef] table th,.markdown-body[data-v-35aebdef] table td{padding:8px 12px;border:1px solid var(--n-border-color)}.markdown-body[data-v-35aebdef] table th{background:var(--n-color-embedded);font-weight:600}.markdown-body[data-v-35aebdef] hr{margin:12px 0;border:none;border-top:1px solid var(--n-border-color)}.markdown-body[data-v-35aebdef] .hljs{color:var(--n-text-color);background:var(--n-code-color)}.markdown-body[data-v-35aebdef] .hljs-keyword,.markdown-body[data-v-35aebdef] .hljs-selector-tag,.markdown-body[data-v-35aebdef] .hljs-literal,.markdown-body[data-v-35aebdef] .hljs-section,.markdown-body[data-v-35aebdef] .hljs-link{color:#c678dd}.markdown-body[data-v-35aebdef] .hljs-string,.markdown-body[data-v-35aebdef] .hljs-attr,.markdown-body[data-v-35aebdef] .hljs-template-variable,.markdown-body[data-v-35aebdef] .hljs-addition{color:#98c379}.markdown-body[data-v-35aebdef] .hljs-number,.markdown-body[data-v-35aebdef] .hljs-symbol,.markdown-body[data-v-35aebdef] .hljs-bullet,.markdown-body[data-v-35aebdef] .hljs-meta{color:#d19a66}.markdown-body[data-v-35aebdef] .hljs-title,.markdown-body[data-v-35aebdef] .hljs-section,.markdown-body[data-v-35aebdef] .hljs-class .hljs-title{color:#e5c07b}.markdown-body[data-v-35aebdef] .hljs-function,.markdown-body[data-v-35aebdef] .hljs-built_in{color:#61afef}.markdown-body[data-v-35aebdef] .hljs-comment,.markdown-body[data-v-35aebdef] .hljs-quote,.markdown-body[data-v-35aebdef] .hljs-deletion{color:#5c6370;font-style:italic}.message-content.collapsed[data-v-35aebdef]{max-height:200px;overflow:hidden;position:relative}.message-content.collapsed[data-v-35aebdef]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50px;background:linear-gradient(transparent,var(--n-color));pointer-events:none}.expand-btn[data-v-35aebdef]{margin-top:8px;padding:4px 12px;font-size:12px;color:var(--n-primary-color);cursor:pointer;text-align:center;border-radius:4px;transition:background .2s}.expand-btn[data-v-35aebdef]:hover{background:var(--n-color-embedded)}@media (max-width: 1024px){.chat-message[data-v-35aebdef]{padding:10px 14px}.message-content[data-v-35aebdef],.markdown-body[data-v-35aebdef]{font-size:12px}.markdown-body[data-v-35aebdef] pre code{font-size:11px}}@media (max-width: 768px){.chat-message[data-v-35aebdef]{width:min(92%,920px);padding:8px 12px;margin-bottom:6px;border-radius:6px}.message-header[data-v-35aebdef]{gap:4px;margin-bottom:6px;flex-wrap:wrap}.message-role[data-v-35aebdef]{font-size:11px}.message-model[data-v-35aebdef]{font-size:9px}.message-time[data-v-35aebdef]{font-size:10px}.role-icon[data-v-35aebdef]{font-size:14px}.message-content[data-v-35aebdef]{font-size:12px;line-height:1.4}.markdown-body[data-v-35aebdef]{font-size:12px}.markdown-body[data-v-35aebdef] h1{font-size:1.3em}.markdown-body[data-v-35aebdef] h2{font-size:1.2em}.markdown-body[data-v-35aebdef] h3{font-size:1.1em}.markdown-body[data-v-35aebdef] pre{padding:6px}.markdown-body[data-v-35aebdef] pre code{font-size:10px}.markdown-body[data-v-35aebdef] table th,.markdown-body[data-v-35aebdef] table td{padding:6px 8px}}@media (max-width: 640px){.chat-message[data-v-35aebdef]{width:100%;padding:6px 10px;margin-bottom:4px}.message-header[data-v-35aebdef]{gap:3px;margin-bottom:4px}.message-role[data-v-35aebdef]{font-size:10px}.message-model[data-v-35aebdef]{font-size:8px;padding:1px 4px}.message-time[data-v-35aebdef]{font-size:9px;display:none}.role-icon[data-v-35aebdef]{font-size:12px}.copy-btn[data-v-35aebdef]{opacity:1}.message-content[data-v-35aebdef]{font-size:11px;line-height:1.35}.markdown-body[data-v-35aebdef]{font-size:11px}.markdown-body[data-v-35aebdef] h1{font-size:1.2em}.markdown-body[data-v-35aebdef] h2{font-size:1.1em}.markdown-body[data-v-35aebdef] h3{font-size:1.05em}.markdown-body[data-v-35aebdef] code{padding:1px 4px;font-size:.85em}.markdown-body[data-v-35aebdef] pre{padding:4px;border-radius:4px}.markdown-body[data-v-35aebdef] pre code{font-size:9px;line-height:1.4}.markdown-body[data-v-35aebdef] ul,.markdown-body[data-v-35aebdef] ol{padding-left:14px}.markdown-body[data-v-35aebdef] table th,.markdown-body[data-v-35aebdef] table td{padding:4px 6px;font-size:10px}.expand-btn[data-v-35aebdef]{padding:3px 10px;font-size:11px}.image-item[data-v-35aebdef]{padding:3px 6px;font-size:10px}}@media (max-width: 480px){.chat-message[data-v-35aebdef]{padding:4px 8px;margin-bottom:3px}.message-header[data-v-35aebdef]{margin-bottom:3px}.message-role[data-v-35aebdef]{font-size:9px}.message-model[data-v-35aebdef]{font-size:7px}.role-icon[data-v-35aebdef],.message-content[data-v-35aebdef],.markdown-body[data-v-35aebdef]{font-size:10px}.markdown-body[data-v-35aebdef] pre code{font-size:8px}.expand-btn[data-v-35aebdef]{font-size:10px;padding:2px 8px}}.drawer-wrapper[data-v-b5c1d962]{display:flex;flex-direction:column;height:100vh;background:var(--n-color)}.drawer-header[data-v-b5c1d962]{flex-shrink:0;padding:16px 20px;border-bottom:1px solid var(--n-border-color);display:flex;flex-direction:column;gap:6px}.header-row[data-v-b5c1d962]{display:flex;align-items:center;gap:8px}.session-name[data-v-b5c1d962]{font-size:16px;font-weight:600;color:var(--n-text-color)}.spacer[data-v-b5c1d962]{flex:1}.close-btn[data-v-b5c1d962]{cursor:pointer;color:var(--n-text-color-3);transition:color .2s}.close-btn[data-v-b5c1d962]:hover{color:var(--n-text-color)}.session-summary[data-v-b5c1d962]{font-size:13px;color:var(--n-text-color-2);line-height:1.4}.drawer-body[data-v-b5c1d962]{flex:1;min-height:0}.loading-container[data-v-b5c1d962],.empty-container[data-v-b5c1d962]{display:flex;align-items:center;justify-content:center;height:100%}.history-layout[data-v-b5c1d962]{display:flex;height:100%;min-height:0;gap:0}.mobile-toc-toggle[data-v-b5c1d962]{display:none;padding:12px 14px 0}.toc-rail[data-v-b5c1d962]{width:250px;border-right:1px solid var(--n-border-color);background:var(--n-color-embedded);display:flex;flex-direction:column;min-height:0}.toc-header[data-v-b5c1d962]{font-size:12px;font-weight:600;color:var(--n-text-color-2);padding:12px 14px;border-bottom:1px solid var(--n-border-color);display:flex;align-items:center;justify-content:space-between;gap:8px}.toc-header-hint[data-v-b5c1d962]{font-weight:400;color:var(--n-text-color-3)}.toc-empty[data-v-b5c1d962]{padding:14px;font-size:12px;color:var(--n-text-color-3)}.toc-list[data-v-b5c1d962]{flex:1;overflow-y:auto;padding:8px}.toc-item[data-v-b5c1d962]{width:100%;text-align:left;border:1px solid transparent;border-radius:8px;padding:8px;margin-bottom:6px;cursor:pointer;background:transparent;display:flex;flex-direction:column;gap:4px;color:inherit}.toc-order[data-v-b5c1d962]{font-size:11px;color:var(--n-text-color-3)}.toc-item[data-v-b5c1d962]:hover{background:#18a05814}.toc-item.active[data-v-b5c1d962]{border-color:#18a05859;background:#18a0581f}.toc-preview[data-v-b5c1d962]{font-size:12px;color:var(--n-text-color);line-height:1.35;word-break:break-word}.toc-time[data-v-b5c1d962]{font-size:11px;color:var(--n-text-color-3)}.messages-pane[data-v-b5c1d962]{flex:1;min-width:0;min-height:0;position:relative}.messages-container[data-v-b5c1d962]{height:100%;overflow-y:auto;overflow-x:hidden;padding:16px 20px}.load-more-top[data-v-b5c1d962]{display:flex;justify-content:center;padding:0 0 16px}.messages-list[data-v-b5c1d962]{display:flex;flex-direction:column;gap:4px}.scroll-btn[data-v-b5c1d962]{position:absolute;right:20px;bottom:20px;width:36px;height:36px;border-radius:50%;background:var(--n-color);border:1px solid var(--n-border-color);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #0000001a;transition:all .2s;z-index:10}.scroll-btn[data-v-b5c1d962]:hover{background:var(--n-color-hover);transform:scale(1.05)}@media (max-width: 820px){.history-layout[data-v-b5c1d962]{flex-direction:column}.mobile-toc-toggle[data-v-b5c1d962]{display:block}.toc-rail[data-v-b5c1d962]{width:auto;border-right:none;border-bottom:1px solid var(--n-border-color);max-height:220px}.toc-rail.mobile-collapsed[data-v-b5c1d962]{display:none}.messages-container[data-v-b5c1d962]{padding:14px 16px}.scroll-btn[data-v-b5c1d962]{right:16px;bottom:16px}}.settings-container[data-v-4e43b52d]{display:flex;height:100vh;gap:0}.settings-sidebar[data-v-4e43b52d]{width:240px;flex-shrink:0;background:var(--bg-secondary);border-right:1px solid var(--border-primary);display:flex;flex-direction:column;overflow:hidden}[data-theme=dark] .settings-sidebar[data-v-4e43b52d]{background:#0f172a80;border-right:1px solid rgba(148,163,184,.1)}.sidebar-header[data-v-4e43b52d]{padding:28px 20px 24px;border-bottom:1px solid var(--border-primary);display:flex;align-items:center;gap:12px}[data-theme=dark] .sidebar-header[data-v-4e43b52d]{border-bottom:1px solid rgba(148,163,184,.1)}.sidebar-title[data-v-4e43b52d]{font-size:16px;font-weight:700;color:var(--text-primary);letter-spacing:-.3px}.settings-menu[data-v-4e43b52d]{flex:1;padding:16px 12px;overflow-y:auto}.menu-item[data-v-4e43b52d]{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:4px;border-radius:8px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.menu-item[data-v-4e43b52d]:hover{background:var(--hover-bg)}[data-theme=dark] .menu-item[data-v-4e43b52d]:hover{background:#47556940}.menu-item.active[data-v-4e43b52d]{background:#94a3b826}[data-theme=dark] .menu-item.active[data-v-4e43b52d]{background:linear-gradient(90deg,#94a3b833,#94a3b826);border:1px solid rgba(148,163,184,.25);box-shadow:0 0 0 1px #94a3b81a}.menu-item.active[data-v-4e43b52d]:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--border-secondary);border-radius:0 2px 2px 0}[data-theme=dark] .menu-item.active[data-v-4e43b52d]:before{background:linear-gradient(180deg,#94a3b8e6,#94a3b8b3,#94a3b880);box-shadow:0 0 8px #94a3b84d}.menu-icon[data-v-4e43b52d]{flex-shrink:0;color:var(--text-tertiary);transition:all .25s ease}.menu-item:hover .menu-icon[data-v-4e43b52d]{color:var(--text-primary);transform:scale(1.1)}.menu-item.active .menu-icon[data-v-4e43b52d]{color:var(--text-primary)}[data-theme=dark] .menu-item.active .menu-icon[data-v-4e43b52d]{color:#94a3b8e6}.menu-label[data-v-4e43b52d]{flex:1;font-size:14px;font-weight:500;color:var(--text-primary);transition:all .2s ease}.menu-item.active .menu-label[data-v-4e43b52d]{font-weight:600;color:var(--text-primary)}[data-theme=dark] .menu-item.active .menu-label[data-v-4e43b52d]{color:#94a3b8f2;font-weight:600}.settings-content[data-v-4e43b52d]{flex:1;overflow-y:auto;background:var(--bg-primary)}.settings-panel[data-v-4e43b52d]{height:100%;display:flex;flex-direction:column}.panel-header[data-v-4e43b52d]{padding:28px 32px;border-bottom:1px solid var(--border-primary)}[data-theme=dark] .panel-header[data-v-4e43b52d]{border-bottom:1px solid rgba(148,163,184,.1)}.panel-title-row[data-v-4e43b52d]{display:flex;align-items:flex-start;gap:16px}.panel-title[data-v-4e43b52d]{margin:0;font-size:20px;font-weight:700;color:var(--text-primary)}.panel-subtitle[data-v-4e43b52d]{font-size:13px;display:block;margin-top:6px}.panel-body[data-v-4e43b52d]{flex:1;padding:28px;overflow-y:auto}.setting-group[data-v-4e43b52d]{display:flex;flex-direction:column;gap:24px}.setting-item[data-v-4e43b52d]{display:flex;flex-direction:column;gap:12px}.setting-label[data-v-4e43b52d]{display:flex;flex-direction:column}.panel-footer[data-v-4e43b52d]{padding:20px 32px;border-top:1px solid var(--border-primary);background:var(--bg-secondary)}[data-theme=dark] .panel-footer[data-v-4e43b52d]{border-top:1px solid rgba(148,163,184,.1);background:#0f172a80}[data-v-4e43b52d] .n-select{width:100%}[data-v-4e43b52d] .n-drawer-body-content-wrapper{padding:0!important}[data-v-4e43b52d] .n-drawer-header{display:none!important}[data-v-4e43b52d] .n-drawer-body{padding:0!important}[data-v-4e43b52d] .n-drawer-content{display:flex;flex-direction:column;height:100%}[data-v-4e43b52d] .n-drawer-content__body{flex:1;padding:0!important;overflow:hidden}.visibility-options[data-v-4e43b52d]{display:flex;flex-direction:column;gap:16px;margin-top:16px}.visibility-item[data-v-4e43b52d]{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:10px;transition:all .2s ease}[data-theme=dark] .visibility-item[data-v-4e43b52d]{background:#1e293b66;border:1px solid rgba(148,163,184,.15)}.visibility-item[data-v-4e43b52d]:hover{border-color:var(--border-secondary);box-shadow:0 2px 8px #94a3b81a}.visibility-info[data-v-4e43b52d]{display:flex;flex-direction:column;gap:4px;flex:1;margin-right:16px}.simple-theme-options[data-v-4e43b52d]{display:flex;flex-direction:column;gap:12px;margin-top:16px}.simple-theme-item[data-v-4e43b52d]{display:flex;align-items:center;gap:12px;padding:16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:10px;cursor:pointer;transition:all .2s ease}[data-theme=dark] .simple-theme-item[data-v-4e43b52d]{background:#1e293b66;border:1px solid rgba(148,163,184,.15)}.simple-theme-item[data-v-4e43b52d]:hover{border-color:var(--border-secondary);box-shadow:0 2px 8px #94a3b81a}.simple-theme-item.active[data-v-4e43b52d]{border-color:var(--border-secondary);background:#94a3b814}[data-theme=dark] .simple-theme-item.active[data-v-4e43b52d]{border-color:#94a3b866;background:#94a3b826}.simple-theme-item .theme-icon[data-v-4e43b52d]{flex-shrink:0;color:var(--text-secondary);transition:all .2s ease}.simple-theme-item:hover .theme-icon[data-v-4e43b52d]{color:var(--text-primary);transform:scale(1.1)}.simple-theme-item.active .theme-icon[data-v-4e43b52d]{color:var(--text-primary)}[data-theme=dark] .simple-theme-item.active .theme-icon[data-v-4e43b52d]{color:#94a3b8e6}.theme-text[data-v-4e43b52d]{flex:1;display:flex;flex-direction:column;gap:2px}.theme-check[data-v-4e43b52d]{flex-shrink:0;display:flex;align-items:center;justify-content:center}.ports-grid[data-v-4e43b52d]{display:flex;flex-direction:column;gap:16px;margin-top:16px}.port-field[data-v-4e43b52d]{display:flex;flex-direction:column}.port-field[data-v-4e43b52d] .n-input-number{width:100%}.port-field[data-v-4e43b52d] .n-input-number .n-input__input{font-family:monospace;font-size:13px}.advanced-options[data-v-4e43b52d]{display:flex;flex-direction:column;gap:16px;margin-top:16px}.option-field[data-v-4e43b52d]{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:10px;transition:all .2s ease}[data-theme=dark] .option-field[data-v-4e43b52d]{background:#1e293b66;border:1px solid rgba(148,163,184,.15)}.option-field[data-v-4e43b52d]:hover{border-color:var(--border-secondary);box-shadow:0 2px 8px #94a3b81a}.option-label[data-v-4e43b52d]{display:flex;flex-direction:column;gap:4px;flex:1;margin-right:16px}.notification-options[data-v-4e43b52d]{display:flex;flex-direction:column;gap:16px;margin-top:16px}.notification-type-section[data-v-4e43b52d]{padding:16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:10px;margin-top:8px}[data-theme=dark] .notification-type-section[data-v-4e43b52d]{background:#1e293b66;border:1px solid rgba(148,163,184,.15)}.radio-content[data-v-4e43b52d]{display:flex;flex-direction:column;gap:2px;padding:4px 0}.security-status[data-v-4e43b52d]{display:flex;align-items:center;gap:8px}.security-form[data-v-4e43b52d]{display:flex;flex-direction:column;gap:12px;max-width:360px}.security-error[data-v-4e43b52d]{font-size:12px;color:#d03050}.command-config-card[data-v-4e43b52d]{border:1px solid var(--border-primary);border-radius:10px;padding:16px;background:var(--bg-secondary);margin-bottom:16px;transition:all .2s ease}.command-config-card[data-v-4e43b52d]:last-child{margin-bottom:0}.command-config-card[data-v-4e43b52d]:hover{border-color:var(--border-secondary);box-shadow:0 2px 8px #94a3b81a}[data-theme=dark] .command-config-card[data-v-4e43b52d]{background:#1e293b66;border:1px solid rgba(148,163,184,.15)}[data-theme=dark] .command-config-card[data-v-4e43b52d]:hover{border-color:#94a3b84d;box-shadow:0 2px 8px #94a3b81a}.command-card-header[data-v-4e43b52d]{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-primary)}[data-theme=dark] .command-card-header[data-v-4e43b52d]{border-bottom:1px solid rgba(148,163,184,.1)}.command-fields[data-v-4e43b52d]{display:flex;flex-direction:column;gap:12px}.command-field[data-v-4e43b52d]{display:flex;flex-direction:column}.command-field[data-v-4e43b52d] .n-input{font-family:SF Mono,Monaco,Cascadia Code,monospace}.command-field[data-v-4e43b52d] .n-input .n-input__input-el{font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:13px}.model-meta-editor[data-v-4e43b52d]{padding:4px 2px 8px}.model-meta-section[data-v-4e43b52d]{background:var(--bg-secondary, rgba(0,0,0,.03));border-radius:8px;padding:10px 12px}.speed-test-defaults[data-v-4e43b52d]{display:flex;flex-direction:column;gap:10px}.speed-test-default-row[data-v-4e43b52d]{display:grid;grid-template-columns:132px 1fr;gap:10px;align-items:center}.speed-test-default-label[data-v-4e43b52d]{min-width:0}.model-toolbar[data-v-4e43b52d]{display:flex;align-items:center;gap:8px;margin-bottom:8px}.model-filter-row[data-v-4e43b52d]{margin-bottom:12px}.model-list[data-v-4e43b52d]{display:flex;flex-direction:column;gap:2px}.model-card[data-v-4e43b52d]{border:1px solid var(--border-primary);border-radius:8px;overflow:hidden;transition:border-color .2s}.model-card[data-v-4e43b52d]:hover{border-color:var(--border-hover, rgba(99, 179, 237, .4))}.model-card.expanded[data-v-4e43b52d]{border-color:var(--primary-color, #63b3ed)}.model-card-header[data-v-4e43b52d]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--bg-secondary, rgba(0,0,0,.02));transition:background .15s}.model-card-header[data-v-4e43b52d]:hover{background:var(--bg-hover, rgba(0,0,0,.04))}.expand-icon[data-v-4e43b52d]{flex-shrink:0;color:var(--text-tertiary);transition:transform .2s}.model-card.expanded .expand-icon[data-v-4e43b52d]{transform:rotate(90deg)}.model-card-id[data-v-4e43b52d]{flex:1;font-size:12px;font-family:SF Mono,Monaco,Cascadia Code,monospace;color:var(--text-primary)}.model-card-actions[data-v-4e43b52d]{display:flex;gap:4px;margin-left:auto}.model-card-body[data-v-4e43b52d]{border-top:1px solid var(--border-primary);background:var(--bg-primary)}[data-theme=dark] .model-card[data-v-4e43b52d]{border-color:#94a3b826}[data-theme=dark] .model-card[data-v-4e43b52d]:hover{border-color:#63b3ed4d}[data-theme=dark] .model-card.expanded[data-v-4e43b52d]{border-color:#63b3ed80}[data-theme=dark] .model-card-header[data-v-4e43b52d]{background:#1e293b66}[data-theme=dark] .model-card-header[data-v-4e43b52d]:hover{background:#1e293b99}[data-theme=dark] .model-card-body[data-v-4e43b52d]{border-color:#94a3b826}@media (max-width: 768px){.speed-test-default-row[data-v-4e43b52d]{grid-template-columns:1fr;gap:6px}}.drawer-header[data-v-b964e886]{display:flex;align-items:center;gap:8px}.header-title[data-v-b964e886]{font-size:16px;font-weight:600;color:var(--text-primary)}.drawer-footer[data-v-b964e886]{display:flex;justify-content:flex-end;gap:12px}.form-content[data-v-b964e886]{display:flex;flex-direction:column;gap:24px}.form-group[data-v-b964e886]{display:flex;flex-direction:column;gap:16px}.group-title[data-v-b964e886]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary);padding-bottom:8px;border-bottom:1px solid var(--border-primary)}.group-icon[data-v-b964e886]{color:#18a058}.preset-grid[data-v-b964e886]{display:flex;flex-wrap:wrap;gap:8px}.preset-chip[data-v-b964e886]{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:13px;border-radius:16px;background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.preset-chip[data-v-b964e886]:hover{border-color:#18a05866;color:var(--text-primary)}.preset-chip.active[data-v-b964e886]{background:#18a0581a;border-color:#18a058;color:#18a058}[data-theme=dark] .preset-chip.active[data-v-b964e886]{background:#18a05826;color:#36ad6a}.preset-chip.disabled[data-v-b964e886]{opacity:.6;cursor:not-allowed;background:var(--bg-tertiary)}.preset-chip.disabled[data-v-b964e886]:hover{border-color:var(--border-primary);color:var(--text-secondary)}.installed-icon[data-v-b964e886]{color:#18a058;margin-left:2px}.field[data-v-b964e886]{display:flex;flex-direction:column;gap:6px}.field-label[data-v-b964e886]{font-size:13px;font-weight:500;color:var(--text-secondary)}.required[data-v-b964e886]{color:#f56c6c}.field-error[data-v-b964e886]{font-size:12px;color:#f56c6c}.field-row[data-v-b964e886]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.platform-toggles[data-v-b964e886]{display:flex;gap:24px}.platform-item[data-v-b964e886]{display:flex;align-items:center;gap:8px;cursor:pointer}.platform-name[data-v-b964e886]{font-size:14px;color:var(--text-primary);-webkit-user-select:none;user-select:none}.type-radios[data-v-b964e886]{display:flex;gap:16px}.radio-label[data-v-b964e886]{font-weight:500}.radio-desc[data-v-b964e886]{font-size:12px;color:var(--text-tertiary);margin-left:4px}.kv-row[data-v-b964e886]{display:flex;align-items:center;gap:8px;flex:1}.kv-key[data-v-b964e886]{flex:1}.kv-sep[data-v-b964e886]{color:var(--text-tertiary);font-weight:600;flex-shrink:0}.kv-value[data-v-b964e886]{flex:1.5}.extra-collapse[data-v-b964e886]{border:none}.collapse-header[data-v-b964e886]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary)}.collapse-hint[data-v-b964e886]{font-size:12px;font-weight:400;color:var(--text-tertiary)}.collapse-content[data-v-b964e886]{display:flex;flex-direction:column;gap:16px;padding-top:8px}[data-v-b964e886] .n-dynamic-input{width:100%}[data-v-b964e886] .n-collapse-item__header-main{font-weight:600!important}[data-v-b964e886] .n-collapse-item{border:none!important;margin:0!important}[data-v-b964e886] .n-collapse-item__content-inner{padding-top:0!important}[data-v-b964e886] .n-radio{display:inline-flex;align-items:center}.tool-card[data-v-1fcd002c]{display:flex;flex-direction:column;gap:12px;padding:0}.tool-header[data-v-1fcd002c]{display:flex;align-items:center;justify-content:space-between;gap:12px}.tool-name[data-v-1fcd002c]{font-size:15px;font-weight:600;color:var(--text-primary);margin:0;font-family:SF Mono,Monaco,Consolas,monospace}.tool-description[data-v-1fcd002c]{font-size:13px;line-height:1.6;color:var(--text-secondary);margin:0}.tool-parameters[data-v-1fcd002c]{display:flex;flex-direction:column;gap:8px}.params-header[data-v-1fcd002c]{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.params-icon[data-v-1fcd002c]{color:#18a058}.params-label[data-v-1fcd002c]{color:var(--text-tertiary)}.params-list[data-v-1fcd002c]{display:flex;flex-direction:column;gap:10px;padding-left:20px}.param-item[data-v-1fcd002c]{display:flex;flex-direction:column;gap:4px}.param-info[data-v-1fcd002c]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.param-name[data-v-1fcd002c]{font-size:13px;font-weight:500;color:var(--text-primary);font-family:SF Mono,Monaco,Consolas,monospace}.param-description[data-v-1fcd002c]{font-size:12px;line-height:1.5;color:var(--text-tertiary);margin:0;padding-left:2px}.no-parameters[data-v-1fcd002c]{text-align:center;padding:8px 0}[data-theme=dark] .tool-name[data-v-1fcd002c]{color:#ffffffeb}[data-theme=dark] .param-name[data-v-1fcd002c]{color:#ffffffd9}.dynamic-form[data-v-b199234d]{display:flex;flex-direction:column;gap:16px}.nested-form[data-v-b199234d]{padding:12px 16px;border-radius:8px;background:var(--bg-secondary, rgba(0, 0, 0, .02));border:1px solid var(--border-primary, rgba(0, 0, 0, .08))}[data-theme=dark] .nested-form[data-v-b199234d]{background:#ffffff0a;border-color:#ffffff17}.field[data-v-b199234d]{display:flex;flex-direction:column;gap:6px}.field-label[data-v-b199234d]{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:500;color:var(--text-secondary)}.required[data-v-b199234d]{color:#f56c6c}.field-tip-icon[data-v-b199234d]{color:var(--text-tertiary, #999);cursor:help;margin-left:2px;vertical-align:middle}.field-tip-icon[data-v-b199234d]:hover{color:#18a058}.depth-warning[data-v-b199234d]{margin:4px 0}.empty-schema[data-v-b199234d]{text-align:center;padding:12px 0}[data-v-b199234d] .n-dynamic-input,[data-v-b199234d] .n-input-number{width:100%}[data-v-b199234d] .n-switch{flex-shrink:0}.modal-content[data-v-e945d675]{display:flex;flex-direction:column;gap:20px}.tool-info[data-v-e945d675]{margin-bottom:4px}.params-section[data-v-e945d675],.result-section[data-v-e945d675]{display:flex;flex-direction:column;gap:12px}.section-header[data-v-e945d675]{display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--border-primary)}.section-icon[data-v-e945d675]{color:#18a058;flex-shrink:0}.section-icon.error[data-v-e945d675]{color:#f56c6c}.section-title[data-v-e945d675]{font-size:14px;font-weight:600;color:var(--text-primary)}.result-duration[data-v-e945d675]{margin-left:auto;font-size:12px;color:var(--text-tertiary);font-family:SF Mono,Monaco,Consolas,monospace}.no-params[data-v-e945d675]{text-align:center;padding:16px 0}.result-display[data-v-e945d675]{border-radius:8px;overflow:hidden;border:1px solid var(--border-primary)}.result-error[data-v-e945d675]{margin-top:4px}.modal-footer[data-v-e945d675]{display:flex;justify-content:flex-end;gap:12px}[data-v-e945d675] .n-card__content{padding:20px}[data-v-e945d675] .n-card__footer{padding:16px 20px}[data-v-e945d675] .n-code{font-size:12px;max-height:400px;overflow:auto}[data-v-e945d675] .n-alert{border-radius:8px}@media (max-width: 640px){.modal-content[data-v-e945d675]{gap:16px}[data-v-e945d675] .n-card__content{padding:16px}[data-v-e945d675] .n-code{max-height:300px}}.drawer-header[data-v-d38ad0a4]{width:100%}.server-info[data-v-d38ad0a4]{display:flex;align-items:center;gap:12px}.server-icon[data-v-d38ad0a4]{color:#18a058;flex-shrink:0}.server-details[data-v-d38ad0a4]{display:flex;flex-direction:column;gap:4px;min-width:0}.server-name[data-v-d38ad0a4]{font-size:16px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.server-meta[data-v-d38ad0a4]{display:flex;align-items:center;gap:8px}.status-dot[data-v-d38ad0a4]{width:8px;height:8px;border-radius:50%;background:var(--text-quaternary)}.status-dot.online[data-v-d38ad0a4]{background:#18a058;box-shadow:0 0 6px #18a05880}.status-dot.error[data-v-d38ad0a4]{background:#f56c6c;box-shadow:0 0 6px #f56c6c80}.drawer-body[data-v-d38ad0a4]{height:100%}.tools-container[data-v-d38ad0a4]{display:flex;flex-direction:column;gap:16px}.tools-stats[data-v-d38ad0a4]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-primary)}.stats-text[data-v-d38ad0a4]{font-size:13px;font-weight:500;color:var(--text-secondary)}.stats-duration[data-v-d38ad0a4]{font-size:12px;color:var(--text-tertiary);font-family:SF Mono,Monaco,Consolas,monospace}.collapse-header[data-v-d38ad0a4]{display:flex;align-items:center;gap:8px;height:48px}.tool-index[data-v-d38ad0a4]{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;font-size:11px;font-weight:600;color:#18a058;background:#18a0581a;border-radius:4px;font-family:SF Mono,Monaco,Consolas,monospace}[data-theme=dark] .tool-index[data-v-d38ad0a4]{background:#18a05826;color:#36ad6a}.tool-title[data-v-d38ad0a4]{font-size:14px;font-weight:500;color:var(--text-primary);font-family:SF Mono,Monaco,Consolas,monospace}.empty-state[data-v-d38ad0a4]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center}.empty-icon[data-v-d38ad0a4]{color:var(--text-quaternary);margin-bottom:16px}.empty-title[data-v-d38ad0a4]{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.empty-desc[data-v-d38ad0a4]{font-size:13px;color:var(--text-tertiary);margin:0;max-width:300px}.error-state[data-v-d38ad0a4]{margin-top:16px}[data-v-d38ad0a4] .n-tabs{height:100%}[data-v-d38ad0a4] .n-tabs-pane-wrapper{padding-top:16px}[data-v-d38ad0a4] .n-collapse{background:transparent}[data-v-d38ad0a4] .n-collapse-item{width:100%;margin-bottom:8px;border-radius:8px;border:1px solid var(--border-primary);background:var(--bg-secondary);overflow:hidden}[data-v-d38ad0a4] .n-collapse-item__header{padding:8px!important;background:transparent}[data-v-d38ad0a4] .n-collapse-item__content-wrapper{padding:0 16px 16px}[data-v-d38ad0a4] .n-collapse-item__content-inner{padding-top:0}.mcp-container[data-v-4d06ad40]{display:flex;flex-direction:column;gap:16px}.drawer-header[data-v-4d06ad40]{display:flex;align-items:center;justify-content:space-between;width:100%}.header-title[data-v-4d06ad40]{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--text-primary)}.header-icon[data-v-4d06ad40]{color:#18a058}.header-actions[data-v-4d06ad40]{display:flex;gap:8px}.stats-bar[data-v-4d06ad40]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-primary)}.stats-text[data-v-4d06ad40]{font-size:13px;color:var(--text-secondary)}.server-list[data-v-4d06ad40]{min-height:200px}.empty-state[data-v-4d06ad40]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-icon[data-v-4d06ad40]{color:var(--text-tertiary);margin-bottom:16px}.empty-title[data-v-4d06ad40]{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.empty-desc[data-v-4d06ad40]{font-size:13px;color:var(--text-tertiary);margin:0}.server-cards[data-v-4d06ad40]{display:flex;flex-direction:column;gap:12px}.server-card[data-v-4d06ad40]{padding:16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;transition:all .2s ease;cursor:pointer}.server-card[data-v-4d06ad40]:hover{border-color:#18a0584d;box-shadow:0 2px 8px #18a05814;transform:translateY(-1px)}.server-card.dragging[data-v-4d06ad40]{opacity:.5;border-color:#18a058;box-shadow:0 4px 12px #18a05833}.server-card[data-v-4d06ad40]:active{cursor:grabbing}.card-header[data-v-4d06ad40]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.card-title[data-v-4d06ad40]{display:flex;align-items:center;gap:8px}.drag-handle[data-v-4d06ad40]{color:var(--text-quaternary);cursor:grab;transition:color .2s}.server-card:hover .drag-handle[data-v-4d06ad40]{color:var(--text-secondary)}.server-name[data-v-4d06ad40]{font-size:14px;font-weight:600;color:var(--text-primary)}.status-dot[data-v-4d06ad40]{width:8px;height:8px;border-radius:50%;background:var(--text-quaternary)}.status-dot.online[data-v-4d06ad40]{background:#18a058;box-shadow:0 0 6px #18a05880}.status-dot.error[data-v-4d06ad40]{background:#f56c6c;box-shadow:0 0 6px #f56c6c80}.status-dot.testing[data-v-4d06ad40]{background:#e6a23c;animation:pulse-4d06ad40 1s infinite}@keyframes pulse-4d06ad40{0%,to{opacity:1}50%{opacity:.5}}.card-actions[data-v-4d06ad40]{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.server-card:hover .card-actions[data-v-4d06ad40]{opacity:1}.card-desc[data-v-4d06ad40]{font-size:12px;color:var(--text-secondary);margin:0 0 8px;line-height:1.5}.card-tags[data-v-4d06ad40]{display:flex;gap:4px;margin-bottom:12px}.card-apps[data-v-4d06ad40]{display:flex;gap:16px;padding-top:12px;border-top:1px solid var(--border-primary)}.app-toggle[data-v-4d06ad40]{display:flex;align-items:center;gap:6px;cursor:pointer}.app-label[data-v-4d06ad40]{font-size:12px;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.paste-modal-content[data-v-4d06ad40]{display:flex;flex-direction:column;gap:12px}.paste-hint[data-v-4d06ad40]{font-size:13px;color:var(--text-secondary);margin:0}.paste-example[data-v-4d06ad40]{margin:0;padding:12px;font-size:12px;font-family:SF Mono,Monaco,monospace;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:6px;overflow-x:auto;color:var(--text-secondary)}.parse-error[data-v-4d06ad40]{font-size:12px;color:#f56c6c;margin:0}.paste-modal-footer[data-v-4d06ad40]{display:flex;justify-content:flex-end;gap:12px}.batch-modal-content[data-v-4d06ad40]{display:flex;flex-direction:column;gap:16px}.batch-actions[data-v-4d06ad40]{display:flex;align-items:center;justify-content:space-between}.batch-selected[data-v-4d06ad40]{font-size:13px;color:var(--text-secondary)}.batch-list[data-v-4d06ad40]{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto}.batch-item[data-v-4d06ad40]{display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;transition:all .2s ease}.batch-item.selected[data-v-4d06ad40]{border-color:#18a05866;background:#18a0580d}.batch-item.exists[data-v-4d06ad40]{opacity:.6}.batch-item-info[data-v-4d06ad40]{flex:1;min-width:0}.batch-item-header[data-v-4d06ad40]{display:flex;align-items:center;gap:8px;margin-bottom:4px}.batch-item-name[data-v-4d06ad40]{font-size:14px;font-weight:600;color:var(--text-primary)}.batch-item-detail[data-v-4d06ad40]{font-size:12px;color:var(--text-tertiary);display:flex;gap:8px;flex-wrap:wrap}.batch-args[data-v-4d06ad40]{color:var(--text-quaternary)}.batch-modal-footer[data-v-4d06ad40]{display:flex;justify-content:flex-end;gap:12px}.export-modal-content[data-v-4d06ad40]{display:flex;flex-direction:column;gap:12px}.export-info[data-v-4d06ad40]{display:flex;gap:16px;font-size:13px;color:var(--text-secondary)}.export-content[data-v-4d06ad40]{font-family:SF Mono,Monaco,monospace}.export-modal-footer[data-v-4d06ad40]{display:flex;justify-content:flex-end;gap:12px}.markdown-editor[data-v-224a81d1]{width:100%;position:relative}.editor-container[data-v-224a81d1]{position:relative}.editor-hint[data-v-224a81d1]{position:absolute;bottom:8px;right:12px;font-size:11px;color:var(--text-tertiary, #999);pointer-events:none;opacity:.7}.preview-container[data-v-224a81d1]{position:relative;padding:12px 16px;border:1px solid var(--border-color, #e0e0e6);border-radius:6px;cursor:pointer;transition:all .2s ease;background:var(--bg-color, #fff);overflow:auto;max-height:400px}.preview-container[data-v-224a81d1]:hover{border-color:var(--primary-color, #18a058);background:var(--bg-hover, #fafafa)}.preview-hint[data-v-224a81d1]{position:absolute;top:8px;right:8px;display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-tertiary, #999);opacity:0;transition:opacity .2s ease;background:var(--bg-color, #fff);padding:2px 6px;border-radius:4px}.preview-container:hover .preview-hint[data-v-224a81d1]{opacity:1}.placeholder-text[data-v-224a81d1]{color:var(--text-tertiary, #999);font-style:italic}.markdown-content[data-v-224a81d1]{font-size:14px;line-height:1.6;color:var(--text-primary, #333)}.markdown-content[data-v-224a81d1] h1{font-size:1.75em;font-weight:600;margin:.5em 0 .3em;padding-bottom:.2em;border-bottom:1px solid var(--border-color, #eaecef)}.markdown-content[data-v-224a81d1] h2{font-size:1.4em;font-weight:600;margin:.5em 0 .3em;padding-bottom:.2em;border-bottom:1px solid var(--border-color, #eaecef)}.markdown-content[data-v-224a81d1] h3{font-size:1.2em;font-weight:600;margin:.5em 0 .3em}.markdown-content[data-v-224a81d1] h4,.markdown-content[data-v-224a81d1] h5,.markdown-content[data-v-224a81d1] h6{font-size:1em;font-weight:600;margin:.5em 0 .3em}.markdown-content[data-v-224a81d1] p{margin:.5em 0}.markdown-content[data-v-224a81d1] ul,.markdown-content[data-v-224a81d1] ol{padding-left:1.5em;margin:.5em 0}.markdown-content[data-v-224a81d1] li{margin:.2em 0}.markdown-content[data-v-224a81d1] blockquote{margin:.5em 0;padding:0 1em;color:var(--text-secondary, #6a737d);border-left:.25em solid var(--primary-color, #18a058)}.markdown-content[data-v-224a81d1] code{padding:.2em .4em;margin:0;font-size:85%;background-color:var(--bg-tertiary, rgba(27, 31, 35, .05));border-radius:3px;font-family:SF Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.markdown-content[data-v-224a81d1] pre{padding:12px 16px;overflow:auto;font-size:85%;line-height:1.45;background-color:var(--bg-tertiary, #f6f8fa);border-radius:6px;margin:.5em 0}.markdown-content[data-v-224a81d1] pre code{padding:0;background-color:transparent;font-size:100%}.markdown-content[data-v-224a81d1] table{border-collapse:collapse;width:100%;margin:.5em 0}.markdown-content[data-v-224a81d1] table th,.markdown-content[data-v-224a81d1] table td{padding:6px 12px;border:1px solid var(--border-color, #dfe2e5)}.markdown-content[data-v-224a81d1] table th{font-weight:600;background-color:var(--bg-tertiary, #f6f8fa)}.markdown-content[data-v-224a81d1] a{color:var(--primary-color, #18a058);text-decoration:none}.markdown-content[data-v-224a81d1] a:hover{text-decoration:underline}.markdown-content[data-v-224a81d1] img{max-width:100%;border-radius:4px}.markdown-content[data-v-224a81d1] hr{height:.2em;padding:0;margin:1em 0;background-color:var(--border-color, #e1e4e8);border:0}.markdown-editor.is-empty .preview-container[data-v-224a81d1]{border-style:dashed}@media (prefers-color-scheme: dark){.preview-container[data-v-224a81d1]{border-color:#3b434b;background:#1e1e1e}.preview-container[data-v-224a81d1]:hover{background:#252525}.markdown-content[data-v-224a81d1]{color:#e6edf3}.markdown-content[data-v-224a81d1] h1,.markdown-content[data-v-224a81d1] h2{border-bottom-color:#30363d}.markdown-content[data-v-224a81d1] blockquote{color:#8b949e}.markdown-content[data-v-224a81d1] code{background-color:#6e768166}.markdown-content[data-v-224a81d1] pre{background-color:#161b22}.markdown-content[data-v-224a81d1] table th,.markdown-content[data-v-224a81d1] table td{border-color:#30363d}.markdown-content[data-v-224a81d1] table th{background-color:#161b22}}.form-header[data-v-41ac86b6]{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--text-primary)}.header-icon[data-v-41ac86b6]{color:#f59e0b}.form-container[data-v-41ac86b6]{display:flex;flex-direction:column;gap:24px}.form-section[data-v-41ac86b6]{display:flex;flex-direction:column;gap:12px}.section-title[data-v-41ac86b6]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text-primary);padding-bottom:8px;border-bottom:1px solid var(--border-primary)}.content-hint[data-v-41ac86b6]{margin-left:auto;font-size:12px;font-weight:400;color:var(--text-tertiary)}.form-item[data-v-41ac86b6]{display:flex;flex-direction:column;gap:6px}.form-label[data-v-41ac86b6]{font-size:13px;color:var(--text-secondary)}.required[data-v-41ac86b6]{color:#f56c6c}.form-error[data-v-41ac86b6]{font-size:12px;color:#f56c6c;margin:0}.apps-toggles[data-v-41ac86b6]{display:flex;flex-direction:column;gap:12px}.app-toggle[data-v-41ac86b6]{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;cursor:pointer;transition:all .2s}.app-toggle[data-v-41ac86b6]:hover{border-color:#f59e0b4d}.app-name[data-v-41ac86b6]{font-size:14px;font-weight:500;color:var(--text-primary);min-width:60px}.app-path[data-v-41ac86b6]{font-size:12px;color:var(--text-tertiary);font-family:SF Mono,Monaco,monospace}.content-section[data-v-41ac86b6]{flex:1}.content-editor[data-v-41ac86b6]{font-family:SF Mono,Monaco,monospace;font-size:13px}.form-footer[data-v-41ac86b6]{display:flex;justify-content:flex-end;gap:12px}.prompts-container[data-v-98aafe0f]{display:flex;flex-direction:column;gap:16px}.drawer-header[data-v-98aafe0f]{display:flex;align-items:center;justify-content:space-between;width:100%}.header-title[data-v-98aafe0f]{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--text-primary)}.header-icon[data-v-98aafe0f]{color:#f59e0b}.status-card[data-v-98aafe0f]{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-primary)}.status-info[data-v-98aafe0f]{display:flex;align-items:center;gap:10px}.status-icon.active[data-v-98aafe0f]{color:#18a058}.status-icon.inactive[data-v-98aafe0f]{color:var(--text-tertiary)}.status-text[data-v-98aafe0f]{display:flex;align-items:center;gap:6px}.status-label[data-v-98aafe0f]{font-size:13px;color:var(--text-secondary)}.status-value[data-v-98aafe0f]{font-size:14px;font-weight:600;color:var(--text-primary)}.status-actions[data-v-98aafe0f]{display:flex;gap:6px}.action-btn[data-v-98aafe0f]{font-size:12px;padding:0 12px;height:26px;border-radius:4px}.remove-btn[data-v-98aafe0f]{color:var(--text-secondary)}.remove-btn[data-v-98aafe0f]:hover{color:#d03050;background:#d0305014}.stats-bar[data-v-98aafe0f]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--bg-tertiary);border-radius:6px}.stats-text[data-v-98aafe0f]{font-size:12px;color:var(--text-tertiary)}.preset-list[data-v-98aafe0f]{min-height:200px}.empty-state[data-v-98aafe0f]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-icon[data-v-98aafe0f]{color:var(--text-tertiary);margin-bottom:16px}.empty-title[data-v-98aafe0f]{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.empty-desc[data-v-98aafe0f]{font-size:13px;color:var(--text-tertiary);margin:0}.preset-cards[data-v-98aafe0f]{display:flex;flex-direction:column;gap:12px}.preset-card[data-v-98aafe0f]{padding:16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;transition:all .2s ease}.preset-card[data-v-98aafe0f]:hover{border-color:#f59e0b4d;box-shadow:0 2px 8px #f59e0b14}.preset-card.active[data-v-98aafe0f]{border-color:#18a05880;background:#18a05808}.card-header[data-v-98aafe0f]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.card-title[data-v-98aafe0f]{display:flex;align-items:center;gap:8px}.active-icon[data-v-98aafe0f]{color:#18a058}.preset-name[data-v-98aafe0f]{font-size:14px;font-weight:600;color:var(--text-primary)}.card-actions[data-v-98aafe0f]{display:flex;gap:4px}.card-desc[data-v-98aafe0f]{font-size:12px;color:var(--text-secondary);margin:0 0 8px;line-height:1.5}.card-apps[data-v-98aafe0f]{display:flex;align-items:center;gap:6px;margin-bottom:12px}.apps-label[data-v-98aafe0f]{font-size:12px;color:var(--text-tertiary)}.card-preview[data-v-98aafe0f]{padding:12px;background:var(--bg-tertiary);border-radius:6px;overflow:hidden}.preview-content[data-v-98aafe0f]{margin:0;font-size:11px;font-family:SF Mono,Monaco,monospace;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;line-height:1.5}.drawer-header[data-v-e4ab15fb]{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:var(--text-primary)}.header-icon-wrapper[data-v-e4ab15fb]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:linear-gradient(135deg,#f59e0b,#fbbf24);border-radius:8px;color:#fff}.speed-test-container[data-v-e4ab15fb]{display:flex;flex-direction:column;gap:16px}.test-controls[data-v-e4ab15fb]{display:flex;align-items:center;gap:12px}.test-btn[data-v-e4ab15fb]{border-radius:6px}.test-summary[data-v-e4ab15fb]{display:flex;gap:8px;padding:12px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:10px}.summary-item[data-v-e4ab15fb]{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 8px;background:var(--bg-primary);border-radius:8px}.summary-label[data-v-e4ab15fb]{font-size:11px;color:var(--text-tertiary);font-weight:500}.summary-value[data-v-e4ab15fb]{font-size:20px;font-weight:700;color:var(--text-primary)}.summary-item.success .summary-value[data-v-e4ab15fb]{color:#18a058}.summary-item.failed .summary-value[data-v-e4ab15fb]{color:#f56c6c}.summary-item.avg .summary-value[data-v-e4ab15fb]{color:#f59e0b;font-size:16px}.results-list[data-v-e4ab15fb]{min-height:200px}.loading-state[data-v-e4ab15fb]{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:16px}.loading-text[data-v-e4ab15fb]{font-size:13px;color:var(--text-secondary);margin:0}.empty-state[data-v-e4ab15fb]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;min-height:300px}.empty-icon-wrapper[data-v-e4ab15fb]{display:flex;align-items:center;justify-content:center;width:64px;height:64px;background:var(--bg-tertiary);border-radius:16px;color:var(--text-tertiary);margin-bottom:16px}.empty-title[data-v-e4ab15fb]{font-size:15px;font-weight:600;color:var(--text-primary);margin:0 0 6px}.empty-desc[data-v-e4ab15fb]{font-size:13px;color:var(--text-tertiary);margin:0}.result-cards[data-v-e4ab15fb]{display:flex;flex-direction:column;gap:8px}.result-card[data-v-e4ab15fb]{padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:10px;transition:all .2s ease}.result-card[data-v-e4ab15fb]:hover{border-color:var(--border-secondary);box-shadow:0 2px 8px #0000000a}.result-card.success[data-v-e4ab15fb]{border-left:3px solid #18a058}.result-card.failed[data-v-e4ab15fb]{border-left:3px solid #f56c6c}.result-card.testing[data-v-e4ab15fb]{border-left:3px solid #f59e0b;opacity:.8}.result-header[data-v-e4ab15fb]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.channel-info[data-v-e4ab15fb]{display:flex;align-items:center;gap:8px}.channel-type-badge[data-v-e4ab15fb]{display:inline-flex;align-items:center;padding:2px 6px;font-size:10px;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.channel-type-badge.type-claude[data-v-e4ab15fb]{background:linear-gradient(135deg,#d97706,#f59e0b);color:#fff}.channel-type-badge.type-codex[data-v-e4ab15fb]{background:linear-gradient(135deg,#059669,#10b981);color:#fff}.channel-type-badge.type-gemini[data-v-e4ab15fb]{background:linear-gradient(135deg,#7c3aed,#a78bfa);color:#fff}.channel-type-badge.type-opencode[data-v-e4ab15fb]{background:linear-gradient(135deg,#ea580c,#fb923c);color:#fff}.channel-name[data-v-e4ab15fb]{font-size:13px;font-weight:600;color:var(--text-primary)}.result-status[data-v-e4ab15fb]{display:flex;align-items:center}.latency-badge[data-v-e4ab15fb]{display:inline-flex;align-items:center;padding:3px 8px;font-size:12px;font-weight:600;border-radius:6px;font-family:SF Mono,Monaco,monospace}.latency-badge.excellent[data-v-e4ab15fb]{background:#18a0581a;color:#18a058}.latency-badge.good[data-v-e4ab15fb]{background:#3b82f61a;color:#3b82f6}.latency-badge.fair[data-v-e4ab15fb]{background:#f59e0b1a;color:#f59e0b}.latency-badge.poor[data-v-e4ab15fb]{background:#f56c6c1a;color:#f56c6c}.status-badge[data-v-e4ab15fb]{display:inline-flex;align-items:center;padding:3px 8px;font-size:11px;font-weight:600;border-radius:6px}.status-badge.failed[data-v-e4ab15fb]{background:#f56c6c1a;color:#f56c6c}.result-details[data-v-e4ab15fb]{display:flex;align-items:center;gap:12px}.latency-bar[data-v-e4ab15fb]{flex:1;height:4px;background:var(--bg-tertiary);border-radius:2px;overflow:hidden}.latency-fill[data-v-e4ab15fb]{height:100%;border-radius:2px;transition:width .3s ease}.latency-fill.excellent[data-v-e4ab15fb]{background:linear-gradient(90deg,#18a058,#34d399)}.latency-fill.good[data-v-e4ab15fb]{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.latency-fill.fair[data-v-e4ab15fb]{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.latency-fill.poor[data-v-e4ab15fb]{background:linear-gradient(90deg,#f56c6c,#ff8c8c)}.latency-level[data-v-e4ab15fb]{font-size:11px;font-weight:600;min-width:32px;text-align:right}.latency-level.excellent[data-v-e4ab15fb]{color:#18a058}.latency-level.good[data-v-e4ab15fb]{color:#3b82f6}.latency-level.fair[data-v-e4ab15fb]{color:#f59e0b}.latency-level.poor[data-v-e4ab15fb]{color:#f56c6c}.error-info[data-v-e4ab15fb]{display:flex;align-items:center;gap:10px;flex:1}.error-container[data-v-e4ab15fb]{display:flex;align-items:flex-start;gap:6px;padding:8px 10px;background:#f56c6c0f;border-radius:6px;flex:1}.error-icon[data-v-e4ab15fb]{color:#f56c6c;flex-shrink:0;margin-top:1px}.error-msg[data-v-e4ab15fb]{font-size:12px;color:#f56c6c;line-height:1.4;word-break:break-word}.error-latency[data-v-e4ab15fb]{font-size:11px;font-family:SF Mono,Monaco,monospace;color:var(--text-tertiary);background:var(--bg-tertiary);padding:3px 6px;border-radius:4px;white-space:nowrap;flex-shrink:0}.result-meta[data-v-e4ab15fb]{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--border-primary)}.meta-item[data-v-e4ab15fb]{font-size:11px;color:var(--text-tertiary)}.meta-item.status-indicator[data-v-e4ab15fb]{display:flex;align-items:center;gap:4px;color:var(--text-secondary);font-family:inherit}.meta-item.http-code[data-v-e4ab15fb]{font-family:SF Mono,Monaco,monospace;background:var(--bg-tertiary);padding:1px 5px;border-radius:3px}.meta-item.time[data-v-e4ab15fb]{font-family:SF Mono,Monaco,monospace;color:var(--text-quaternary)}.status-dot[data-v-e4ab15fb]{display:inline-block;width:6px;height:6px;border-radius:50%}.status-dot.ok[data-v-e4ab15fb]{background-color:#18a058;box-shadow:0 0 4px #18a05880}.status-dot.fail[data-v-e4ab15fb]{background-color:#f56c6c;box-shadow:0 0 4px #f56c6c80}.cache-hint[data-v-e4ab15fb]{display:flex;align-items:center;gap:6px;padding:10px 12px;background:#f59e0b14;border:1px solid rgba(245,158,11,.15);border-radius:8px;font-size:12px;color:#d97706}.drawer-header[data-v-e6530b83]{display:flex;align-items:center;gap:8px}.header-icon-wrapper[data-v-e6530b83]{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--primary-color)}.convert-container[data-v-e6530b83]{display:flex;flex-direction:column;gap:10px;padding-bottom:8px}.action-row[data-v-e6530b83]{display:flex;align-items:center;justify-content:space-between;gap:8px}.result-section[data-v-e6530b83]{padding:12px;border-radius:8px;border:1px solid var(--border-primary);background:var(--bg-secondary)}.result-meta[data-v-e6530b83]{display:flex;flex-wrap:wrap;gap:10px 14px}.meta-row[data-v-e6530b83]{display:flex;align-items:center;gap:6px}.meta-label[data-v-e6530b83]{font-size:12px;color:var(--text-secondary)}.warning-title[data-v-e6530b83]{font-size:12px;font-weight:600;margin-bottom:4px}.warning-list[data-v-e6530b83]{margin:0;padding-left:16px;font-size:12px;line-height:1.5}.skill-card[data-v-7e871f1a]{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;padding:12px 16px;cursor:pointer;transition:all .2s ease}.skill-card[data-v-7e871f1a]:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #00000014}.skill-card.installed[data-v-7e871f1a]{border-left:3px solid var(--success-color)}.card-header[data-v-7e871f1a]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.card-title[data-v-7e871f1a]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card-title .name[data-v-7e871f1a]{font-size:14px;font-weight:600;color:var(--text-primary)}.card-body[data-v-7e871f1a]{display:flex;flex-direction:column;gap:6px}.description[data-v-7e871f1a]{font-size:13px;color:var(--text-secondary);line-height:1.4}.meta[data-v-7e871f1a]{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:12px}.meta-item[data-v-7e871f1a]{color:var(--text-tertiary);font-family:monospace}.source-item[data-v-7e871f1a]{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meta-link[data-v-7e871f1a]{color:var(--primary-color);text-decoration:none}.meta-link[data-v-7e871f1a]:hover{text-decoration:underline}.repo-manager[data-v-3637796a]{display:flex;flex-direction:column;gap:16px}.repo-list[data-v-3637796a]{display:flex;flex-direction:column;gap:8px}.repo-item[data-v-3637796a]{display:flex;align-items:flex-start;justify-content:space-between;padding:10px 12px;background:var(--bg-tertiary);border-radius:6px}.repo-main[data-v-3637796a]{display:flex;align-items:flex-start;gap:10px}.repo-info[data-v-3637796a]{display:flex;flex-direction:column;gap:4px}.repo-name-row[data-v-3637796a]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.repo-name[data-v-3637796a]{font-size:13px;font-weight:500;color:var(--text-primary)}.repo-branch[data-v-3637796a],.repo-auth-hint[data-v-3637796a]{font-size:11px;color:var(--text-tertiary)}.repo-actions[data-v-3637796a]{display:flex;align-items:center;gap:8px;flex-shrink:0;padding-left:12px}.empty-hint[data-v-3637796a]{text-align:center;padding:20px;color:var(--text-tertiary);font-size:13px}.add-repo[data-v-3637796a]{padding-top:8px;border-top:1px solid var(--border-primary)}.add-title[data-v-3637796a]{font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:10px}.add-form[data-v-3637796a]{display:flex;gap:8px}.repo-input[data-v-3637796a]{flex:1}.branch-input[data-v-3637796a]{width:80px}.add-hint[data-v-3637796a]{margin-top:6px;font-size:11px;color:var(--text-tertiary)}.tips[data-v-3637796a]{padding-top:8px}.recommended[data-v-3637796a]{padding-top:12px;border-top:1px solid var(--border-primary)}.recommended-title[data-v-3637796a]{font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:10px;display:flex;align-items:center;gap:6px}.recommended-title[data-v-3637796a]:before{content:"";width:3px;height:14px;background:#18a058;border-radius:2px}.recommended-list[data-v-3637796a]{display:flex;flex-direction:column;gap:6px}.recommended-item[data-v-3637796a]{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--bg-tertiary);border-radius:5px;cursor:pointer;transition:all .15s}.recommended-item[data-v-3637796a]:not(.added):hover{background:var(--bg-secondary);box-shadow:0 2px 8px #18a0581a}.recommended-item.added[data-v-3637796a]{cursor:default;opacity:.6;background:var(--bg-secondary)}.rec-info[data-v-3637796a]{display:flex;flex-direction:column;gap:2px}.rec-name[data-v-3637796a]{font-size:12px;font-weight:500;color:var(--text-primary)}.rec-desc[data-v-3637796a]{font-size:11px;color:var(--text-tertiary)}.add-icon[data-v-3637796a]{color:#18a058}.auth-manager[data-v-3637796a]{display:flex;flex-direction:column;gap:14px}.auth-meta[data-v-3637796a]{display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:var(--bg-tertiary);border-radius:8px}.auth-meta-row[data-v-3637796a]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.auth-label[data-v-3637796a]{font-size:12px;color:var(--text-tertiary)}.auth-value[data-v-3637796a]{font-size:12px;color:var(--text-primary);text-align:right;word-break:break-all}.auth-footnote[data-v-3637796a]{font-size:11px;color:var(--text-tertiary)}.auth-actions[data-v-3637796a]{display:flex;justify-content:flex-end;gap:8px}.modal-footer[data-v-e4db56d3]{display:flex;justify-content:flex-end;gap:12px}.file-list[data-v-e4db56d3]{display:flex;flex-direction:column;gap:8px;width:100%}.file-item[data-v-e4db56d3]{display:flex;justify-content:space-between;align-items:center}.file-info[data-v-e4db56d3]{display:flex;align-items:center;gap:8px}.file-icon[data-v-e4db56d3]{color:var(--n-text-color-3)}.file-path[data-v-e4db56d3]{font-family:monospace;font-size:13px}.file-size[data-v-e4db56d3]{color:var(--n-text-color-3);font-size:12px}.file-actions[data-v-e4db56d3]{display:flex;gap:8px}.skill-md[data-v-e4db56d3]{border-color:var(--n-primary-color)}.loading-state[data-v-485c6677],.error-state[data-v-485c6677]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 20px;color:var(--text-tertiary)}.detail-content[data-v-485c6677]{display:flex;flex-direction:column;overflow:hidden}.detail-meta[data-v-485c6677]{padding:16px 20px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.meta-row[data-v-485c6677]{display:flex;align-items:center;gap:12px;margin-bottom:8px}.meta-source[data-v-485c6677]{font-size:12px;color:var(--text-tertiary)}.meta-desc[data-v-485c6677]{font-size:13px;color:var(--text-secondary);line-height:1.6;margin-bottom:8px}.meta-dir[data-v-485c6677]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-tertiary)}.meta-dir code[data-v-485c6677]{background:var(--bg-tertiary);padding:2px 8px;border-radius:4px;font-family:SF Mono,Monaco,monospace}.content-wrapper[data-v-485c6677]{flex:1;display:flex;flex-direction:column;overflow:hidden}.content-header[data-v-485c6677]{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--border-primary)}.content-title[data-v-485c6677]{font-size:13px;font-weight:600;color:var(--text-primary)}.markdown-content[data-v-485c6677]{flex:1;overflow-y:auto;padding:16px 20px;font-size:13px;line-height:1.7;color:var(--text-primary)}.markdown-content[data-v-485c6677] h1,.markdown-content[data-v-485c6677] h2,.markdown-content[data-v-485c6677] h3,.markdown-content[data-v-485c6677] h4{margin:16px 0 8px;font-weight:600;color:var(--text-primary)}.markdown-content[data-v-485c6677] h1{font-size:20px}.markdown-content[data-v-485c6677] h2{font-size:17px}.markdown-content[data-v-485c6677] h3{font-size:15px}.markdown-content[data-v-485c6677] p{margin:8px 0}.markdown-content[data-v-485c6677] ul,.markdown-content[data-v-485c6677] ol{margin:8px 0;padding-left:24px}.markdown-content[data-v-485c6677] li{margin:4px 0}.markdown-content[data-v-485c6677] code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-family:SF Mono,Monaco,monospace;font-size:12px}.markdown-content[data-v-485c6677] pre{background:var(--bg-tertiary);padding:12px 16px;border-radius:6px;overflow-x:auto;margin:12px 0}.markdown-content[data-v-485c6677] pre code{background:none;padding:0}.markdown-content[data-v-485c6677] blockquote{border-left:3px solid #18a058;padding-left:16px;margin:12px 0;color:var(--text-secondary)}.markdown-content[data-v-485c6677] a{color:#18a058;text-decoration:none}.markdown-content[data-v-485c6677] a:hover{text-decoration:underline}.markdown-content[data-v-485c6677] hr{border:none;border-top:1px solid var(--border-primary);margin:16px 0}.markdown-content[data-v-485c6677] table{width:100%;border-collapse:collapse;margin:12px 0}.markdown-content[data-v-485c6677] th,.markdown-content[data-v-485c6677] td{border:1px solid var(--border-primary);padding:8px 12px;text-align:left}.markdown-content[data-v-485c6677] th{background:var(--bg-secondary);font-weight:600}.modal-footer[data-v-485c6677]{display:flex;justify-content:flex-end;gap:12px}.skills-panel[data-v-22769888]{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--bg-primary)}.panel-header[data-v-22769888],.drawer-header-bar[data-v-22769888]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.drawer-header-bar[data-v-22769888]{padding:8px 12px}.header-left[data-v-22769888],.header-right[data-v-22769888]{display:flex;align-items:center;gap:8px}.back-btn[data-v-22769888]{padding:4px}.panel-title[data-v-22769888]{font-size:15px;font-weight:600;color:var(--text-primary)}.action-btn[data-v-22769888]{font-size:12px;padding:4px 8px}.stats-bar[data-v-22769888]{display:flex;align-items:center;padding:10px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary)}.skills-panel.in-drawer .stats-bar[data-v-22769888]{padding:10px 12px}.stats-text[data-v-22769888]{font-size:12px;color:var(--text-tertiary)}.filter-bar[data-v-22769888]{display:flex;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border-primary)}.skills-panel.in-drawer .filter-bar[data-v-22769888]{padding:10px 12px}.search-input[data-v-22769888]{flex:1}.filter-select[data-v-22769888]{width:100px}.panel-content[data-v-22769888]{flex:1;overflow-y:auto;padding:16px}.skills-panel.in-drawer .panel-content[data-v-22769888]{padding:12px}.panel-content[data-v-22769888] .n-spin-container{min-height:200px}.empty-state[data-v-22769888]{display:flex;align-items:center;justify-content:center;min-height:200px}.card-list[data-v-22769888]{display:flex;flex-direction:column;gap:12px}.panel-footer[data-v-22769888]{display:flex;align-items:center;gap:6px;padding:10px 16px;font-size:11px;color:var(--text-tertiary);border-top:1px solid var(--border-primary);background:var(--bg-secondary)}.skills-panel.in-drawer .panel-footer[data-v-22769888]{padding:8px 12px}.info-icon[data-v-22769888]{color:var(--text-quaternary)}.drawer-header[data-v-c7c4ab18]{font-size:16px;font-weight:600;color:var(--text-primary)}.command-card[data-v-781f3de3]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:6px;transition:all .15s ease;cursor:pointer}.command-card[data-v-781f3de3]:hover{border-color:#18a058;background:var(--bg-tertiary);box-shadow:0 4px 12px #18a0581a}.command-card.is-project[data-v-781f3de3]{border-left:3px solid #18a058}.command-card.managed[data-v-781f3de3]{border-left:3px solid var(--primary-color)}.card-main[data-v-781f3de3]{flex:1;min-width:0}.card-header[data-v-781f3de3]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.command-name[data-v-781f3de3]{font-size:13px;font-weight:600;color:var(--text-primary);font-family:monospace}.command-badges[data-v-781f3de3]{display:flex;gap:4px;flex-shrink:0}.command-desc[data-v-781f3de3]{font-size:12px;color:var(--text-secondary);line-height:1.5;margin-bottom:8px}.command-meta[data-v-781f3de3]{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--text-tertiary)}.meta-item[data-v-781f3de3]{display:flex;align-items:center;gap:4px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-actions[data-v-781f3de3]{flex-shrink:0;display:flex;align-items:center;gap:4px}.platform-icons[data-v-781f3de3]{display:flex;align-items:center;gap:6px;margin-left:8px}.platform-icon[data-v-781f3de3]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;cursor:pointer;color:var(--text-tertiary);background:var(--bg-tertiary);transition:all .2s ease}.platform-icon[data-v-781f3de3]:hover{background:var(--bg-quaternary)}.platform-icon.active[data-v-781f3de3]{color:var(--primary-color);background:#18a0581a}.modal-footer[data-v-6a32f36a]{display:flex;justify-content:flex-end;gap:8px}.commands-panel[data-v-ab0f3567]{display:flex;flex-direction:column;height:100%;background:var(--bg-primary)}.panel-header[data-v-ab0f3567]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.header-left[data-v-ab0f3567]{display:flex;align-items:center;gap:10px}.back-btn[data-v-ab0f3567]{padding:4px}.panel-title[data-v-ab0f3567]{font-size:15px;font-weight:600;color:var(--text-primary)}.header-right[data-v-ab0f3567]{display:flex;align-items:center;gap:4px}.action-btn[data-v-ab0f3567]{font-size:12px;padding:4px 8px}.stats-bar[data-v-ab0f3567]{display:flex;align-items:center;padding:10px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary)}.stats-text[data-v-ab0f3567]{font-size:12px;color:var(--text-tertiary)}.filter-bar[data-v-ab0f3567]{display:flex;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border-primary)}.search-input[data-v-ab0f3567]{flex:1}.filter-select[data-v-ab0f3567]{width:100px}.commands-content[data-v-ab0f3567]{flex:1;overflow-y:auto;padding:16px}.commands-content[data-v-ab0f3567] .n-spin-container{min-height:300px}.empty-state[data-v-ab0f3567]{display:flex;align-items:center;justify-content:center;min-height:200px}.commands-grid[data-v-ab0f3567]{display:flex;flex-direction:column;gap:10px}.panel-footer[data-v-ab0f3567]{display:flex;align-items:center;gap:6px;padding:10px 16px;font-size:11px;color:var(--text-tertiary);border-top:1px solid var(--border-primary);background:var(--bg-secondary)}.info-icon[data-v-ab0f3567]{color:var(--text-quaternary)}.commands-panel.in-drawer[data-v-ab0f3567]{height:100%}.drawer-header-bar[data-v-ab0f3567]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.commands-panel.in-drawer .filter-bar[data-v-ab0f3567],.commands-panel.in-drawer .stats-bar[data-v-ab0f3567]{padding:10px 12px}.commands-panel.in-drawer .commands-content[data-v-ab0f3567]{padding:12px}.commands-panel.in-drawer .panel-footer[data-v-ab0f3567]{padding:8px 12px}.detail-section[data-v-ab0f3567]{margin-top:16px}.detail-section h4[data-v-ab0f3567]{margin:0 0 8px;font-size:13px;color:var(--text-secondary)}.drawer-header[data-v-d2a0745d]{font-size:16px;font-weight:600;color:var(--text-primary)}.agent-card[data-v-617694f2]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:6px;transition:all .15s ease;cursor:pointer}.agent-card[data-v-617694f2]:hover{border-color:#18a058;background:var(--bg-tertiary);box-shadow:0 4px 12px #18a0581a}.agent-card.is-project[data-v-617694f2]{border-left:3px solid #18a058}.agent-card.managed[data-v-617694f2]{border-left:3px solid var(--primary-color)}.card-main[data-v-617694f2]{flex:1;min-width:0}.card-header[data-v-617694f2]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.agent-name[data-v-617694f2]{font-size:13px;font-weight:600;color:var(--text-primary)}.agent-badges[data-v-617694f2]{display:flex;gap:4px;flex-shrink:0}.agent-desc[data-v-617694f2]{font-size:12px;color:var(--text-secondary);line-height:1.5;margin-bottom:8px}.agent-meta[data-v-617694f2]{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--text-tertiary)}.meta-item[data-v-617694f2]{display:flex;align-items:center;gap:4px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-actions[data-v-617694f2]{flex-shrink:0;display:flex;align-items:center;gap:4px}.platform-icons[data-v-617694f2]{display:flex;align-items:center;gap:6px;margin-left:8px}.platform-icon[data-v-617694f2]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;cursor:pointer;color:var(--text-tertiary);background:var(--bg-tertiary);transition:all .2s ease}.platform-icon[data-v-617694f2]:hover{background:var(--bg-quaternary)}.platform-icon.active[data-v-617694f2]{color:var(--primary-color);background:#18a0581a}.modal-footer[data-v-20dc9b75]{display:flex;justify-content:flex-end;gap:8px}.agents-panel[data-v-8222e230]{display:flex;flex-direction:column;height:100%;background:var(--bg-primary)}.panel-header[data-v-8222e230]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.header-left[data-v-8222e230]{display:flex;align-items:center;gap:10px}.back-btn[data-v-8222e230]{padding:4px}.panel-title[data-v-8222e230]{font-size:15px;font-weight:600;color:var(--text-primary)}.header-right[data-v-8222e230]{display:flex;align-items:center;gap:4px}.action-btn[data-v-8222e230]{font-size:12px;padding:4px 8px}.stats-bar[data-v-8222e230]{display:flex;align-items:center;padding:10px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary)}.stats-text[data-v-8222e230]{font-size:12px;color:var(--text-tertiary)}.filter-bar[data-v-8222e230]{display:flex;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border-primary)}.search-input[data-v-8222e230]{flex:1}.filter-select[data-v-8222e230]{width:100px}.agents-content[data-v-8222e230]{flex:1;overflow-y:auto;padding:16px}.agents-content[data-v-8222e230] .n-spin-container{min-height:300px}.empty-state[data-v-8222e230]{display:flex;align-items:center;justify-content:center;min-height:200px}.agents-grid[data-v-8222e230]{display:flex;flex-direction:column;gap:10px}.panel-footer[data-v-8222e230]{display:flex;align-items:center;gap:6px;padding:10px 16px;font-size:11px;color:var(--text-tertiary);border-top:1px solid var(--border-primary);background:var(--bg-secondary)}.info-icon[data-v-8222e230]{color:var(--text-quaternary)}.agents-panel.in-drawer[data-v-8222e230]{height:100%}.drawer-header-bar[data-v-8222e230]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.agents-panel.in-drawer .filter-bar[data-v-8222e230],.agents-panel.in-drawer .stats-bar[data-v-8222e230]{padding:10px 12px}.agents-panel.in-drawer .agents-content[data-v-8222e230]{padding:12px}.agents-panel.in-drawer .panel-footer[data-v-8222e230]{padding:8px 12px}.detail-section[data-v-8222e230]{margin-top:16px}.detail-section h4[data-v-8222e230]{margin:0 0 8px;font-size:13px;color:var(--text-secondary)}.drawer-header[data-v-deb60bdb]{font-size:16px;font-weight:600;color:var(--text-primary)}.plugin-card[data-v-6d321d33]{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;padding:12px 16px;cursor:pointer;transition:all .2s ease;min-height:120px;display:flex;flex-direction:column}.plugin-card[data-v-6d321d33]:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #00000014}.plugin-card.installed[data-v-6d321d33]{border-left:3px solid var(--info-color, #2080f0)}.plugin-card.managed[data-v-6d321d33]{border-left:3px solid var(--primary-color)}.card-header[data-v-6d321d33]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.card-title[data-v-6d321d33]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.card-title .name[data-v-6d321d33]{font-size:14px;font-weight:600;color:var(--text-primary)}.card-body[data-v-6d321d33]{display:flex;flex-direction:column;gap:6px;flex:1}.description[data-v-6d321d33]{font-size:13px;color:var(--text-secondary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.meta[data-v-6d321d33]{display:flex;align-items:center;gap:12px;font-size:12px;margin-top:auto}.meta-item[data-v-6d321d33]{color:var(--text-tertiary);font-family:monospace}.meta-link[data-v-6d321d33]{color:var(--primary-color);text-decoration:none}.meta-link[data-v-6d321d33]:hover{text-decoration:underline}.managed-actions[data-v-6d321d33]{margin-top:8px;display:flex;align-items:center;gap:8px}.platform-icons[data-v-6d321d33]{display:flex;align-items:center;gap:6px}.platform-icon[data-v-6d321d33]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;color:var(--text-tertiary);background:var(--bg-tertiary);cursor:pointer;transition:all .2s ease}.platform-icon[data-v-6d321d33]:hover{background:var(--bg-quaternary)}.platform-icon.active[data-v-6d321d33]{color:var(--primary-color);background:#18a0581a}.repo-manager[data-v-e6d4772e]{display:flex;flex-direction:column;gap:16px}.repo-list[data-v-e6d4772e]{display:flex;flex-direction:column;gap:8px}.repo-item[data-v-e6d4772e]{display:flex;align-items:flex-start;justify-content:space-between;padding:10px 12px;background:var(--bg-tertiary);border-radius:6px}.repo-main[data-v-e6d4772e]{display:flex;align-items:flex-start;gap:10px}.repo-info[data-v-e6d4772e]{display:flex;flex-direction:column;gap:4px}.repo-name-row[data-v-e6d4772e]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.repo-name[data-v-e6d4772e]{font-size:13px;font-weight:500;color:var(--text-primary)}.repo-branch[data-v-e6d4772e],.repo-auth-hint[data-v-e6d4772e]{font-size:11px;color:var(--text-tertiary)}.repo-actions[data-v-e6d4772e]{display:flex;align-items:center;gap:8px;flex-shrink:0;padding-left:12px}.empty-hint[data-v-e6d4772e]{text-align:center;padding:20px;color:var(--text-tertiary);font-size:13px}.add-repo[data-v-e6d4772e]{padding-top:8px;border-top:1px solid var(--border-primary)}.add-title[data-v-e6d4772e]{font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:10px}.add-form[data-v-e6d4772e]{display:flex;gap:8px}.repo-input[data-v-e6d4772e]{flex:1}.branch-input[data-v-e6d4772e]{width:80px}.add-hint[data-v-e6d4772e]{margin-top:6px;font-size:11px;color:var(--text-tertiary)}.tips[data-v-e6d4772e]{padding-top:8px}.recommended[data-v-e6d4772e]{padding-top:12px;border-top:1px solid var(--border-primary)}.recommended-title[data-v-e6d4772e]{font-size:13px;font-weight:500;color:var(--text-primary);margin-bottom:10px;display:flex;align-items:center;gap:6px}.recommended-title[data-v-e6d4772e]:before{content:"";width:3px;height:14px;background:#18a058;border-radius:2px}.recommended-list[data-v-e6d4772e]{display:flex;flex-direction:column;gap:6px}.recommended-item[data-v-e6d4772e]{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:var(--bg-tertiary);border-radius:5px;cursor:pointer;transition:all .15s}.recommended-item[data-v-e6d4772e]:not(.added):hover{background:var(--bg-secondary);box-shadow:0 2px 8px #18a0581a}.recommended-item.added[data-v-e6d4772e]{cursor:default;opacity:.6;background:var(--bg-secondary)}.rec-info[data-v-e6d4772e]{display:flex;flex-direction:column;gap:2px}.rec-name[data-v-e6d4772e]{font-size:12px;font-weight:500;color:var(--text-primary)}.rec-desc[data-v-e6d4772e]{font-size:11px;color:var(--text-tertiary)}.add-icon[data-v-e6d4772e]{color:#18a058}.auth-manager[data-v-e6d4772e]{display:flex;flex-direction:column;gap:14px}.auth-meta[data-v-e6d4772e]{display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:var(--bg-tertiary);border-radius:8px}.auth-meta-row[data-v-e6d4772e]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.auth-label[data-v-e6d4772e]{font-size:12px;color:var(--text-tertiary)}.auth-value[data-v-e6d4772e]{font-size:12px;color:var(--text-primary);text-align:right;word-break:break-all}.auth-footnote[data-v-e6d4772e]{font-size:11px;color:var(--text-tertiary)}.auth-actions[data-v-e6d4772e]{display:flex;justify-content:flex-end;gap:8px}.drawer-header[data-v-fb2a6ba3]{width:100%}.plugin-info[data-v-fb2a6ba3]{display:flex;align-items:center;gap:12px}.plugin-icon[data-v-fb2a6ba3]{color:var(--primary-color);flex-shrink:0}.plugin-details[data-v-fb2a6ba3]{display:flex;flex-direction:column;gap:4px;min-width:0}.plugin-name[data-v-fb2a6ba3]{font-size:16px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plugin-meta[data-v-fb2a6ba3]{display:flex;align-items:center;gap:8px}.author-text[data-v-fb2a6ba3]{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-tertiary)}.drawer-body[data-v-fb2a6ba3]{height:100%}.overview-container[data-v-fb2a6ba3],.readme-container[data-v-fb2a6ba3]{display:flex;flex-direction:column;gap:24px}.info-section[data-v-fb2a6ba3]{display:flex;flex-direction:column;gap:12px}.section-title[data-v-fb2a6ba3]{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.description-text[data-v-fb2a6ba3]{font-size:13px;color:var(--text-secondary);line-height:1.6;margin:0}.stats-grid[data-v-fb2a6ba3]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stat-card[data-v-fb2a6ba3]{display:flex;align-items:center;gap:12px;padding:16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px}.stat-icon[data-v-fb2a6ba3]{color:var(--primary-color)}.stat-content[data-v-fb2a6ba3]{display:flex;flex-direction:column;gap:2px}.stat-value[data-v-fb2a6ba3]{font-size:18px;font-weight:600;color:var(--text-primary)}.stat-label[data-v-fb2a6ba3]{font-size:12px;color:var(--text-tertiary)}.repo-link[data-v-fb2a6ba3]{display:flex;align-items:center;gap:8px;padding:12px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;font-size:13px}.repo-link a[data-v-fb2a6ba3]{color:var(--primary-color);text-decoration:none;word-break:break-all}.repo-link a[data-v-fb2a6ba3]:hover{text-decoration:underline}.path-info[data-v-fb2a6ba3]{padding:12px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px}.path-info code[data-v-fb2a6ba3]{font-size:12px;color:var(--text-secondary);word-break:break-all}.readme-content[data-v-fb2a6ba3]{padding:16px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;font-size:13px;line-height:1.6;color:var(--text-secondary)}.readme-content[data-v-fb2a6ba3] h1,.readme-content[data-v-fb2a6ba3] h2,.readme-content[data-v-fb2a6ba3] h3,.readme-content[data-v-fb2a6ba3] h4{color:var(--text-primary);margin:16px 0 8px;font-weight:600}.readme-content[data-v-fb2a6ba3] h1{font-size:1.5em}.readme-content[data-v-fb2a6ba3] h2{font-size:1.3em}.readme-content[data-v-fb2a6ba3] h3{font-size:1.1em}.readme-content[data-v-fb2a6ba3] p{margin:8px 0}.readme-content[data-v-fb2a6ba3] code{background:var(--bg-tertiary, rgba(0,0,0,.1));padding:2px 6px;border-radius:4px;font-family:monospace;font-size:.9em}.readme-content[data-v-fb2a6ba3] pre{background:var(--bg-tertiary, rgba(0,0,0,.1));padding:12px;border-radius:6px;overflow-x:auto;margin:12px 0}.readme-content[data-v-fb2a6ba3] pre code{background:none;padding:0}.readme-content[data-v-fb2a6ba3] ul,.readme-content[data-v-fb2a6ba3] ol{padding-left:20px;margin:8px 0}.readme-content[data-v-fb2a6ba3] li{margin:4px 0}.readme-content[data-v-fb2a6ba3] a{color:var(--primary-color);text-decoration:none}.readme-content[data-v-fb2a6ba3] a:hover{text-decoration:underline}.readme-content[data-v-fb2a6ba3] blockquote{border-left:3px solid var(--primary-color);padding-left:12px;margin:12px 0;color:var(--text-tertiary)}.readme-content[data-v-fb2a6ba3] table{width:100%;border-collapse:collapse;margin:12px 0}.readme-content[data-v-fb2a6ba3] th,.readme-content[data-v-fb2a6ba3] td{border:1px solid var(--border-primary);padding:8px;text-align:left}.readme-content[data-v-fb2a6ba3] th{background:var(--bg-tertiary, rgba(0,0,0,.05))}.readme-content[data-v-fb2a6ba3] img{max-width:100%;height:auto}.loading-state[data-v-fb2a6ba3]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center;gap:16px}.loading-text[data-v-fb2a6ba3]{font-size:14px;color:var(--text-tertiary);margin:0}.empty-state[data-v-fb2a6ba3]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center}.empty-icon[data-v-fb2a6ba3]{color:var(--text-quaternary);margin-bottom:16px}.empty-text[data-v-fb2a6ba3]{font-size:14px;color:var(--text-tertiary);margin:0}[data-v-fb2a6ba3] .n-tabs{height:100%}[data-v-fb2a6ba3] .n-tabs-pane-wrapper{padding-top:16px}.plugins-panel[data-v-e578f4db]{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--bg-primary)}.panel-header[data-v-e578f4db],.drawer-header-bar[data-v-e578f4db]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.drawer-header-bar[data-v-e578f4db]{padding:8px 12px}.header-left[data-v-e578f4db],.header-right[data-v-e578f4db]{display:flex;align-items:center;gap:8px}.back-btn[data-v-e578f4db]{padding:4px}.panel-title[data-v-e578f4db]{font-size:15px;font-weight:600;color:var(--text-primary)}.action-btn[data-v-e578f4db]{font-size:12px;padding:4px 8px}.stats-bar[data-v-e578f4db]{display:flex;align-items:center;padding:10px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary)}.plugins-panel.in-drawer .stats-bar[data-v-e578f4db]{padding:10px 12px}.stats-text[data-v-e578f4db]{font-size:12px;color:var(--text-tertiary)}.filter-bar[data-v-e578f4db]{display:flex;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border-primary)}.plugins-panel.in-drawer .filter-bar[data-v-e578f4db]{padding:10px 12px}.search-input[data-v-e578f4db]{flex:1}.filter-select[data-v-e578f4db]{width:100px}.panel-content[data-v-e578f4db]{flex:1;overflow-y:auto;padding:16px}.plugins-panel.in-drawer .panel-content[data-v-e578f4db]{padding:12px}.panel-content[data-v-e578f4db] .n-spin-container{min-height:200px}.empty-state[data-v-e578f4db]{display:flex;align-items:center;justify-content:center;min-height:200px}.card-list[data-v-e578f4db]{display:flex;flex-direction:column;gap:12px}.panel-footer[data-v-e578f4db]{display:flex;align-items:center;gap:6px;padding:10px 16px;font-size:11px;color:var(--text-tertiary);border-top:1px solid var(--border-primary);background:var(--bg-secondary)}.plugins-panel.in-drawer .panel-footer[data-v-e578f4db]{padding:8px 12px}.info-icon[data-v-e578f4db]{color:var(--text-quaternary)}.drawer-header[data-v-5d79a115]{font-size:16px;font-weight:600;color:var(--text-primary)}.workspace-card[data-v-74e07bc9]{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;padding:12px 16px;cursor:pointer;transition:all .2s ease}.workspace-card[data-v-74e07bc9]:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #00000014}.card-header[data-v-74e07bc9]{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.card-title[data-v-74e07bc9]{display:flex;align-items:center;gap:8px}.card-title .name[data-v-74e07bc9]{font-size:15px;font-weight:600;color:var(--text-primary)}.card-actions[data-v-74e07bc9]{display:flex;align-items:center;gap:4px}.card-body[data-v-74e07bc9]{display:flex;flex-direction:column;gap:6px}.info-row[data-v-74e07bc9]{display:flex;align-items:flex-start;gap:8px;font-size:13px}.info-row .label[data-v-74e07bc9]{color:var(--text-tertiary);min-width:60px;flex-shrink:0}.info-row .value[data-v-74e07bc9]{color:var(--text-secondary);word-break:break-all}.info-row .value.path[data-v-74e07bc9]{font-family:monospace;font-size:12px}.project-item[data-v-1cf82955]{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:6px;padding:10px 12px}.item-header[data-v-1cf82955]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.item-title[data-v-1cf82955]{font-size:12px;font-weight:500;color:var(--text-secondary)}.item-body[data-v-1cf82955],.git-options[data-v-1cf82955]{display:flex;flex-direction:column;gap:8px}.branch-inputs[data-v-1cf82955]{display:flex;gap:8px;width:100%}.branch-mode-group[data-v-1cf82955],.projects-section[data-v-4b48727c]{width:100%}.projects-actions[data-v-4b48727c]{display:flex;gap:8px;margin-bottom:12px}.projects-list[data-v-4b48727c]{display:flex;flex-direction:column;gap:10px}.form-section[data-v-16febc8c]{display:flex;flex-direction:column;gap:12px}.actions-row[data-v-16febc8c]{display:flex;gap:8px}.section-title[data-v-f35a1100]{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:10px}.section-header[data-v-f35a1100]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.section-header .section-title[data-v-f35a1100]{margin-bottom:0}.projects-list[data-v-f35a1100]{display:flex;flex-direction:column;gap:8px}.project-row[data-v-f35a1100]{display:flex;align-items:center;gap:8px;font-size:13px}.proj-name[data-v-f35a1100]{font-weight:500;color:var(--text-primary)}.proj-path[data-v-f35a1100]{color:var(--text-tertiary);font-family:monospace;font-size:12px;flex:1}.workspace-panel[data-v-da5160b9]{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--bg-primary)}.panel-header[data-v-da5160b9],.drawer-header-bar[data-v-da5160b9]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.drawer-header-bar[data-v-da5160b9]{padding:8px 12px}.header-left[data-v-da5160b9],.header-right[data-v-da5160b9]{display:flex;align-items:center;gap:8px}.back-btn[data-v-da5160b9]{padding:4px}.panel-title[data-v-da5160b9]{font-size:15px;font-weight:600;color:var(--text-primary)}.action-btn[data-v-da5160b9]{font-size:12px;padding:4px 8px}.stats-bar[data-v-da5160b9]{display:flex;align-items:center;padding:10px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary)}.workspace-panel.in-drawer .stats-bar[data-v-da5160b9]{padding:10px 12px}.stats-text[data-v-da5160b9]{font-size:12px;color:var(--text-tertiary)}.filter-bar[data-v-da5160b9]{display:flex;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border-primary)}.workspace-panel.in-drawer .filter-bar[data-v-da5160b9]{padding:10px 12px}.search-input[data-v-da5160b9]{flex:1}.panel-content[data-v-da5160b9]{flex:1;overflow-y:auto;padding:16px}.workspace-panel.in-drawer .panel-content[data-v-da5160b9]{padding:12px}.panel-content[data-v-da5160b9] .n-spin-container{min-height:200px}.empty-state[data-v-da5160b9]{display:flex;align-items:center;justify-content:center;min-height:200px}.card-list[data-v-da5160b9]{display:flex;flex-direction:column;gap:12px}.panel-footer[data-v-da5160b9]{display:flex;align-items:center;gap:6px;padding:10px 16px;font-size:11px;color:var(--text-tertiary);border-top:1px solid var(--border-primary);background:var(--bg-secondary)}.workspace-panel.in-drawer .panel-footer[data-v-da5160b9]{padding:8px 12px}.info-icon[data-v-da5160b9]{color:var(--text-quaternary)}.drawer-header[data-v-b05f985c]{font-size:16px;font-weight:600;color:var(--text-primary)}.template-card[data-v-02393d07]{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;padding:12px 16px;cursor:pointer;transition:all .2s ease}.template-card[data-v-02393d07]:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #00000014}.card-header[data-v-02393d07]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.card-title[data-v-02393d07]{display:flex;align-items:center;gap:8px}.card-title .name[data-v-02393d07]{font-size:14px;font-weight:600;color:var(--text-primary)}.card-actions[data-v-02393d07]{display:flex;gap:4px}.card-body[data-v-02393d07]{display:flex;flex-direction:column;gap:6px}.description[data-v-02393d07]{font-size:13px;color:var(--text-secondary);line-height:1.4}.stats[data-v-02393d07]{display:flex;flex-wrap:wrap;gap:10px;font-size:12px;color:var(--text-tertiary)}.markdown-viewer[data-v-9e29f753]{font-size:14px;line-height:1.6;color:#333}.markdown-viewer[data-v-9e29f753] h1{font-size:2em;font-weight:600;margin:.67em 0;padding-bottom:.3em;border-bottom:1px solid #eaecef}.markdown-viewer[data-v-9e29f753] h2{font-size:1.5em;font-weight:600;margin:.75em 0 .5em;padding-bottom:.3em;border-bottom:1px solid #eaecef}.markdown-viewer[data-v-9e29f753] h3{font-size:1.25em;font-weight:600;margin:.8em 0 .5em}.markdown-viewer[data-v-9e29f753] h4{font-size:1em;font-weight:600;margin:.8em 0 .5em}.markdown-viewer[data-v-9e29f753] h5,.markdown-viewer[data-v-9e29f753] h6{font-size:.875em;font-weight:600;margin:.8em 0 .5em}.markdown-viewer[data-v-9e29f753] p{margin:.8em 0}.markdown-viewer[data-v-9e29f753] ul,.markdown-viewer[data-v-9e29f753] ol{padding-left:2em;margin:.8em 0}.markdown-viewer[data-v-9e29f753] li{margin:.25em 0}.markdown-viewer[data-v-9e29f753] blockquote{margin:1em 0;padding:0 1em;color:#6a737d;border-left:.25em solid #dfe2e5}.markdown-viewer[data-v-9e29f753] code{padding:.2em .4em;margin:0;font-size:85%;background-color:#1b1f230d;border-radius:3px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.markdown-viewer[data-v-9e29f753] pre{padding:16px;overflow:auto;font-size:85%;line-height:1.45;background-color:#f6f8fa;border-radius:6px;margin:1em 0}.markdown-viewer[data-v-9e29f753] pre code{padding:0;background-color:transparent;font-size:100%}.markdown-viewer[data-v-9e29f753] table{border-collapse:collapse;border-spacing:0;width:100%;margin:1em 0}.markdown-viewer[data-v-9e29f753] table th,.markdown-viewer[data-v-9e29f753] table td{padding:6px 13px;border:1px solid #dfe2e5}.markdown-viewer[data-v-9e29f753] table th{font-weight:600;background-color:#f6f8fa}.markdown-viewer[data-v-9e29f753] table tr:nth-child(2n){background-color:#f6f8fa}.markdown-viewer[data-v-9e29f753] a{color:#0366d6;text-decoration:none}.markdown-viewer[data-v-9e29f753] a:hover{text-decoration:underline}.markdown-viewer[data-v-9e29f753] img{max-width:100%;box-sizing:content-box;background-color:#fff;border:1px solid #dfe2e5;border-radius:3px;margin:.5em 0}.markdown-viewer[data-v-9e29f753] hr{height:.25em;padding:0;margin:24px 0;background-color:#e1e4e8;border:0}@media (prefers-color-scheme: dark){.markdown-viewer[data-v-9e29f753]{color:#e6edf3}.markdown-viewer[data-v-9e29f753] h1,.markdown-viewer[data-v-9e29f753] h2{border-bottom-color:#30363d}.markdown-viewer[data-v-9e29f753] blockquote{color:#8b949e;border-left-color:#3b434b}.markdown-viewer[data-v-9e29f753] code{background-color:#6e768166}.markdown-viewer[data-v-9e29f753] pre{background-color:#161b22}.markdown-viewer[data-v-9e29f753] table th,.markdown-viewer[data-v-9e29f753] table td{border-color:#30363d}.markdown-viewer[data-v-9e29f753] table th{background-color:#161b22}.markdown-viewer[data-v-9e29f753] table tr:nth-child(2n){background-color:#0d1117}.markdown-viewer[data-v-9e29f753] a{color:#58a6ff}.markdown-viewer[data-v-9e29f753] img{background-color:#0d1117;border-color:#30363d}.markdown-viewer[data-v-9e29f753] hr{background-color:#21262d}}.ai-config-header[data-v-2aaf6671]{margin-bottom:12px}.prompt-preview[data-v-2aaf6671]{max-height:300px;overflow-y:auto;padding:12px 16px;border:1px solid #e0e0e6;border-radius:6px;background:#fafafa}.preview-content[data-v-dfaac83b]{display:flex;flex-direction:column;gap:16px;max-height:calc(80vh - 140px);overflow-y:auto}.info-section[data-v-dfaac83b]{display:flex;flex-direction:column;gap:8px}.info-row[data-v-dfaac83b]{display:flex;align-items:center;gap:8px}.info-row .label[data-v-dfaac83b]{color:var(--text-tertiary);font-size:13px;min-width:50px}.info-row .value[data-v-dfaac83b]{color:var(--text-primary);font-size:14px}.stats-section[data-v-dfaac83b]{background:var(--bg-secondary);border-radius:8px;padding:12px}.section-title[data-v-dfaac83b]{font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:10px}.stats-grid[data-v-dfaac83b]{display:flex;flex-wrap:wrap;gap:12px}.stat-item[data-v-dfaac83b]{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-primary);border-radius:6px;font-size:13px;color:var(--text-secondary)}.details-section[data-v-dfaac83b]{margin-top:8px}.list-items[data-v-dfaac83b]{display:flex;flex-direction:column;gap:6px}.list-item[data-v-dfaac83b]{padding:6px 10px;background:var(--bg-secondary);border-radius:4px;font-size:13px;color:var(--text-primary)}.list-item .item-desc[data-v-dfaac83b]{color:var(--text-tertiary);font-size:12px}.markdown-content[data-v-dfaac83b]{max-height:400px;overflow-y:auto;padding:12px;background:var(--bg-secondary);border-radius:6px}.templates-panel[data-v-d262cd02]{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--bg-primary)}.panel-header[data-v-d262cd02],.drawer-header-bar[data-v-d262cd02]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.drawer-header-bar[data-v-d262cd02]{padding:8px 12px}.header-left[data-v-d262cd02],.header-right[data-v-d262cd02]{display:flex;align-items:center;gap:8px}.back-btn[data-v-d262cd02]{padding:4px}.panel-title[data-v-d262cd02]{font-size:15px;font-weight:600;color:var(--text-primary)}.action-btn[data-v-d262cd02]{font-size:12px;padding:4px 8px}.stats-bar[data-v-d262cd02]{display:flex;align-items:center;padding:10px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary)}.templates-panel.in-drawer .stats-bar[data-v-d262cd02]{padding:10px 12px}.stats-text[data-v-d262cd02]{font-size:12px;color:var(--text-tertiary)}.filter-bar[data-v-d262cd02]{display:flex;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border-primary)}.templates-panel.in-drawer .filter-bar[data-v-d262cd02]{padding:10px 12px}.search-input[data-v-d262cd02]{flex:1}.filter-select[data-v-d262cd02]{width:100px}.panel-content[data-v-d262cd02]{flex:1;overflow-y:auto;padding:16px}.templates-panel.in-drawer .panel-content[data-v-d262cd02]{padding:12px}.panel-content[data-v-d262cd02] .n-spin-container{min-height:200px}.empty-state[data-v-d262cd02]{display:flex;align-items:center;justify-content:center;min-height:200px}.card-list[data-v-d262cd02]{display:flex;flex-direction:column;gap:12px}.panel-footer[data-v-d262cd02]{display:flex;align-items:center;gap:6px;padding:10px 16px;font-size:11px;color:var(--text-tertiary);border-top:1px solid var(--border-primary);background:var(--bg-secondary)}.templates-panel.in-drawer .panel-footer[data-v-d262cd02]{padding:8px 12px}.info-icon[data-v-d262cd02]{color:var(--text-quaternary)}.drawer-header[data-v-4111b3a0]{font-size:16px;font-weight:600;color:var(--text-primary)}.drawer-header[data-v-d8c9eada]{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600}.export-import-container[data-v-d8c9eada]{display:flex;flex-direction:column;gap:16px;padding:4px}.section[data-v-d8c9eada]{display:flex;flex-direction:column;gap:12px}.section-header[data-v-d8c9eada]{display:flex;flex-direction:column;gap:4px}.import-preview[data-v-d8c9eada]{margin-top:16px;padding:16px;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--border-primary)}.preview-stats[data-v-d8c9eada]{display:flex;flex-direction:column;gap:8px;margin-top:12px}.stat-item[data-v-d8c9eada]{display:flex;justify-content:space-between;align-items:center}.drawer-header[data-v-50033301]{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600}.oauth-container[data-v-50033301]{display:flex;flex-direction:column;gap:16px}.toolbar[data-v-50033301]{display:flex;justify-content:flex-end}.tool-panel[data-v-50033301]{display:flex;flex-direction:column;gap:16px}.state-card[data-v-50033301]{border-radius:12px}.state-top[data-v-50033301]{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.state-tags[data-v-50033301]{display:flex;flex-wrap:wrap;gap:8px}.state-storage[data-v-50033301]{font-size:12px;color:var(--text-color-3)}.state-grid[data-v-50033301]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.state-hint[data-v-50033301]{margin-top:12px;font-size:12px;line-height:1.6;color:var(--text-color-3)}.state-item[data-v-50033301]{display:flex;flex-direction:column;gap:4px}.state-label[data-v-50033301],.meta-label[data-v-50033301]{font-size:12px;color:var(--text-color-3)}.state-value[data-v-50033301],.meta-value[data-v-50033301]{font-size:13px;color:var(--text-color-1);word-break:break-all}.section-header[data-v-50033301]{display:flex;justify-content:space-between;align-items:center;gap:12px}.section-title[data-v-50033301]{font-size:14px;font-weight:600}.section-desc[data-v-50033301]{font-size:12px;color:var(--text-color-3)}.credential-list[data-v-50033301]{display:flex;flex-direction:column;gap:12px}.credential-card[data-v-50033301]{border-radius:12px;transition:opacity .2s}.credential-card--active[data-v-50033301]{opacity:1}.credential-card--inactive[data-v-50033301]{opacity:.5}.credential-top[data-v-50033301]{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.credential-main[data-v-50033301]{display:flex;flex-direction:column;gap:8px}.credential-name[data-v-50033301]{font-size:14px;font-weight:600}.credential-tags[data-v-50033301]{display:flex;flex-wrap:wrap;gap:8px}.credential-actions[data-v-50033301]{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}.credential-meta[data-v-50033301]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.meta-item[data-v-50033301]{display:flex;flex-direction:column;gap:4px}.import-modal[data-v-50033301]{display:flex;flex-direction:column;gap:12px}.import-tool[data-v-50033301]{font-size:13px;font-weight:600;color:var(--primary-color)}.import-hint[data-v-50033301]{font-size:12px;line-height:1.6;color:var(--text-color-3)}@media (max-width: 768px){.toolbar[data-v-50033301]{justify-content:stretch}.toolbar[data-v-50033301] .n-space{width:100%}.toolbar[data-v-50033301] .n-button{flex:1}.state-grid[data-v-50033301],.credential-meta[data-v-50033301]{grid-template-columns:1fr}.credential-top[data-v-50033301]{flex-direction:column}.credential-actions[data-v-50033301]{width:100%;justify-content:flex-start}}.header-button[data-v-a354bf83]{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(195,208,203,.92);border-radius:999px;background:#ffffffdb;cursor:pointer;transition:all .2s ease;padding:0;outline:none;box-shadow:0 10px 24px #0f171d14}.header-button[data-v-a354bf83] .n-icon{color:var(--text-tertiary);transition:all .2s ease}.header-button[data-v-a354bf83]:hover:not(.disabled){background:#fffffff5;border-color:#18a0583d;box-shadow:0 14px 30px #0f171d1f}.header-button[data-v-a354bf83]:hover:not(.disabled) .n-icon{color:var(--primary-color, #18a058)}.header-button[data-v-a354bf83]:active:not(.disabled){transform:scale(.95)}.header-button.active[data-v-a354bf83]{background:linear-gradient(135deg,#18a05824,#18a0580f);border-color:#18a05852}.header-button.active[data-v-a354bf83] .n-icon{color:#18a058!important}.header-button.disabled[data-v-a354bf83]{cursor:not-allowed;opacity:.5}[data-theme=dark] .header-button[data-v-a354bf83]{background:#111b20e6;border-color:#2b424af0;box-shadow:0 12px 26px #00000047}[data-theme=dark] .header-button[data-v-a354bf83]:hover:not(.disabled){background:#162329fa;border-color:#18a05847}.modal-header[data-v-7ea71ef7]{display:flex;align-items:center;gap:10px}.warning-icon[data-v-7ea71ef7]{color:#f59e0b}.header-title[data-v-7ea71ef7]{font-size:16px;font-weight:600;color:var(--text-primary)}.modal-content[data-v-7ea71ef7]{padding:4px 0}.desc-text[data-v-7ea71ef7]{font-size:13px;color:var(--text-secondary);margin:0 0 16px;line-height:1.6}.conflict-list[data-v-7ea71ef7]{background:var(--bg-tertiary);border-radius:6px;padding:12px}.list-header[data-v-7ea71ef7]{display:flex;align-items:center;gap:12px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px solid var(--border-primary)}.selected-hint[data-v-7ea71ef7]{font-size:12px;color:var(--text-tertiary)}.conflict-items[data-v-7ea71ef7]{display:flex;flex-direction:column;gap:8px}.conflict-item[data-v-7ea71ef7]{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:var(--bg-secondary);border-radius:6px;border:1px solid transparent;cursor:pointer;transition:all .15s ease}.conflict-item[data-v-7ea71ef7]:hover{border-color:#18a05866;background:#18a05805}.conflict-item.selected[data-v-7ea71ef7]{border-color:#18a058;background:#18a0580f}.item-content[data-v-7ea71ef7]{flex:1;min-width:0}.item-header[data-v-7ea71ef7]{display:flex;align-items:center;gap:8px;margin-bottom:4px}.var-name[data-v-7ea71ef7]{font-size:13px;font-weight:600;color:var(--text-primary);background:var(--bg-tertiary);padding:2px 6px;border-radius:4px}.var-value[data-v-7ea71ef7]{font-size:12px;color:var(--text-secondary);font-family:SF Mono,Monaco,monospace;word-break:break-all;margin-bottom:4px}.var-source[data-v-7ea71ef7]{font-size:11px;color:var(--text-tertiary)}.source-label[data-v-7ea71ef7]{color:var(--text-quaternary)}.modal-footer[data-v-7ea71ef7]{display:flex;justify-content:flex-end;gap:8px}.process-env-alert[data-v-7ea71ef7]{margin-bottom:16px}.alert-content[data-v-7ea71ef7]{font-size:12px;line-height:1.6}.alert-title[data-v-7ea71ef7]{margin:0 0 8px;font-weight:500}.alert-list[data-v-7ea71ef7]{margin:0;padding-left:20px}.alert-list li[data-v-7ea71ef7]{margin:4px 0}.alert-list code[data-v-7ea71ef7]{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-family:SF Mono,Monaco,monospace;font-size:11px;color:#18a058}.alert-hint[data-v-7ea71ef7]{margin:8px 0 0;font-size:11px;color:var(--text-tertiary)}.layout[data-v-925d7a09]{display:flex;flex-direction:column;height:100vh;background:var(--bg-primary)}.header[data-v-925d7a09]{height:74px;display:flex;align-items:center;justify-content:space-between;padding:10px 22px;background:var(--gradient-header);border-bottom:1px solid rgba(195,208,203,.9);flex-shrink:0;box-shadow:inset 0 -1px #ffffff59}.header-actions[data-v-925d7a09]{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;background:#ffffff8a;border:1px solid rgba(216,225,222,.92);box-shadow:0 14px 34px #0f171d14}.more-menu-trigger[data-v-925d7a09]{display:flex}.header-divider[data-v-925d7a09]{width:1px;height:24px;background:#95a7af59;margin:0 2px}.env-warning-btn[data-v-925d7a09]{display:flex;align-items:center;gap:4px;padding:4px 8px;background:#f59e0b1a;border-radius:4px;cursor:pointer;transition:background .2s}.env-warning-btn[data-v-925d7a09]:hover{background:#f59e0b2e}.env-warning-icon[data-v-925d7a09]{color:#f59e0b}.env-warning-count[data-v-925d7a09]{font-size:11px;font-weight:600;color:#f59e0b}.logo-section[data-v-925d7a09]{display:flex;align-items:center;gap:14px;cursor:pointer;padding:8px 14px;border-radius:18px;margin-left:-8px;transition:background .2s}.logo-section[data-v-925d7a09]:hover{background:#ffffff57}.logo-wrapper[data-v-925d7a09]{width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,#18a0582e,#18a0580d);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 24px #0f171d14}.logo-image[data-v-925d7a09]{width:22px;height:22px;object-fit:contain}.title-group[data-v-925d7a09]{display:flex;flex-direction:column;gap:1px}.title-main[data-v-925d7a09]{margin:0;font-size:18px;font-weight:700;background:linear-gradient(135deg,#18a058,#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.title-sub[data-v-925d7a09]{font-size:11px;color:var(--text-tertiary)}.nav-tabs[data-v-925d7a09]{display:flex;align-items:center;gap:6px;margin-left:28px;padding:6px 8px;border-radius:999px;background:#ffffffb8;border:1px solid rgba(216,225,222,.92);box-shadow:0 14px 36px #0f171d14}.nav-tab[data-v-925d7a09]{display:flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;cursor:pointer;transition:background .2s;position:relative}.nav-tab[data-v-925d7a09]:hover{background:var(--hover-bg)}.nav-tab.active[data-v-925d7a09]{background:linear-gradient(135deg,#18a05821,#18a0580f)}.nav-tab.active[data-v-925d7a09]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;border:1px solid rgba(24,160,88,.16);background:transparent}.nav-icon[data-v-925d7a09]{color:var(--text-tertiary)}.nav-tab:hover .nav-icon[data-v-925d7a09],.nav-tab.active .nav-icon[data-v-925d7a09]{color:var(--primary-color, #18a058)}.nav-label[data-v-925d7a09]{font-size:13px;font-weight:500;color:var(--text-secondary)}.nav-tab:hover .nav-label[data-v-925d7a09],.nav-tab.active .nav-label[data-v-925d7a09]{color:var(--primary-color, #18a058)}.nav-tab.active .nav-label[data-v-925d7a09]{font-weight:600}.main-container[data-v-925d7a09]{display:flex;flex:1;height:calc(100vh - 74px);min-height:0;overflow:hidden}.global-loading-overlay[data-v-925d7a09]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;background:var(--bg-overlay);z-index:1000}.left-content[data-v-925d7a09]{flex:1;min-width:0;height:100%;overflow:hidden}.favorites-button-wrapper[data-v-925d7a09]{position:relative}.favorites-badge[data-v-925d7a09]{position:absolute;top:-3px;right:-3px;min-width:14px;height:14px;padding:0 3px;display:flex;align-items:center;justify-content:center;background:#ff4d4f;color:#fff;font-size:9px;font-weight:600;border-radius:7px;pointer-events:none}.help-content[data-v-925d7a09]{max-height:70vh;overflow-y:auto}.help-section[data-v-925d7a09]{margin-bottom:20px;padding:16px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-primary)}.help-section[data-v-925d7a09]:last-child{margin-bottom:0}.help-section h4[data-v-925d7a09]{margin:0 0 12px;font-size:15px;font-weight:600;color:var(--text-primary);padding-bottom:10px;border-bottom:1px solid var(--border-primary)}.help-section p[data-v-925d7a09]{margin:0 0 10px;font-size:13px;line-height:1.7;color:var(--text-secondary)}.help-section ul[data-v-925d7a09]{margin:8px 0 0;padding-left:20px}.help-section li[data-v-925d7a09]{font-size:13px;line-height:1.8;color:var(--text-secondary);margin-bottom:4px}.help-section li strong[data-v-925d7a09]{color:var(--primary-color, #18a058)}.command-list[data-v-925d7a09]{display:flex;flex-direction:column;gap:8px}.command-item[data-v-925d7a09]{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:6px}.command-item code[data-v-925d7a09]{min-width:140px;font-family:monospace;font-size:12px;font-weight:600;color:var(--primary-color, #18a058);background:#18a0581a;padding:4px 10px;border-radius:4px}.command-item span[data-v-925d7a09]{font-size:13px;color:var(--text-secondary)}.help-section kbd[data-v-925d7a09]{display:inline-block;padding:2px 6px;font-family:monospace;font-size:11px;font-weight:600;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:3px;margin:0 2px}.link-list[data-v-925d7a09]{display:flex;gap:12px;flex-wrap:wrap}.link-list a[data-v-925d7a09]{font-size:13px;color:var(--primary-color, #18a058);text-decoration:none;padding:6px 10px;border-radius:4px;background:#18a05814}.link-list a[data-v-925d7a09]:hover{background:#18a05826}.panel-security-auth[data-v-925d7a09]{display:flex;flex-direction:column;gap:12px}.panel-security-error[data-v-925d7a09]{font-size:12px;color:#d03050}.panel-security-hint[data-v-925d7a09]{font-size:12px;line-height:1.6}.header-actions[data-v-925d7a09],.nav-tabs[data-v-925d7a09]{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}[data-theme=dark] .header[data-v-925d7a09]{border-bottom-color:#2b424aeb;box-shadow:inset 0 -1px #ffffff08}[data-theme=dark] .header-actions[data-v-925d7a09],[data-theme=dark] .nav-tabs[data-v-925d7a09]{background:#111b20bd;border-color:#2b424af0}[data-theme=dark] .logo-section[data-v-925d7a09]:hover{background:#ffffff0a}@media (max-width: 1024px){.header[data-v-925d7a09]{height:68px;padding:10px 16px}.main-container[data-v-925d7a09]{height:calc(100vh - 68px)}.nav-tabs[data-v-925d7a09]{margin-left:16px;padding:5px 6px}.title-sub[data-v-925d7a09]{display:none}}@media (max-width: 768px){.header[data-v-925d7a09]{height:60px;padding:8px 12px}.main-container[data-v-925d7a09]{height:calc(100vh - 60px)}.logo-wrapper[data-v-925d7a09]{width:28px;height:28px}.logo-image[data-v-925d7a09]{width:18px;height:18px}.title-main[data-v-925d7a09]{font-size:14px}.title-sub[data-v-925d7a09]{display:none}.nav-tabs[data-v-925d7a09]{margin-left:10px;gap:2px;padding:4px 5px}.nav-tab[data-v-925d7a09]{padding:6px 10px;gap:4px}.nav-label[data-v-925d7a09]{font-size:12px}.header-actions[data-v-925d7a09]{gap:2px}}@media (max-width: 640px){.header[data-v-925d7a09]{height:54px;padding:6px 8px}.main-container[data-v-925d7a09]{height:calc(100vh - 54px)}.title-group[data-v-925d7a09]{display:none}.nav-tabs[data-v-925d7a09]{margin-left:8px;flex:1;justify-content:center}.nav-tab[data-v-925d7a09]{padding:4px 6px;flex-direction:column;gap:2px}.nav-label[data-v-925d7a09]{font-size:10px}}:root{--bg-primary: #ffffff;--bg-secondary: #f4f7f8;--bg-tertiary: #edf3f1;--bg-elevated: #ffffff;--bg-overlay: rgba(255, 255, 255, .92);--text-primary: #122025;--text-secondary: #58717d;--text-tertiary: #738995;--text-quaternary: #95a7af;--border-primary: #d8e1de;--border-secondary: #c3d0cb;--hover-bg: rgba(24, 160, 88, .08);--active-bg: rgba(24, 160, 88, .12);--shadow-sm: 0 8px 20px rgba(15, 23, 29, .06);--shadow-md: 0 18px 42px rgba(15, 23, 29, .1);--shadow-lg: 0 30px 70px rgba(15, 23, 29, .14);--gradient-header: linear-gradient(135deg, #f8fbfc 0%, #eef6f3 52%, #e9f7f1 100%);--gradient-bg: linear-gradient(180deg, #f4f7f8 0%, #eef4f2 100%);--gradient-card: linear-gradient(145deg, rgba(255, 255, 255, .98) 0%, rgba(247, 250, 248, .98) 100%);--primary-color: #18a058}[data-theme=dark]{--bg-primary: #091217;--bg-secondary: #111b20;--bg-tertiary: #0f1a1f;--bg-elevated: #162329;--bg-overlay: rgba(17, 27, 32, .94);--text-primary: #edf5f4;--text-secondary: #a9bfbb;--text-tertiary: #8fa5a1;--text-quaternary: #718784;--border-primary: #22343b;--border-secondary: #2b424a;--hover-bg: rgba(255, 255, 255, .08);--active-bg: rgba(255, 255, 255, .12);--shadow-sm: 0 10px 24px rgba(0, 0, 0, .24);--shadow-md: 0 22px 52px rgba(0, 0, 0, .3);--shadow-lg: 0 36px 76px rgba(0, 0, 0, .36);--gradient-header: linear-gradient(135deg, #111b20 0%, #152229 52%, #12262b 100%);--gradient-bg: linear-gradient(180deg, #091217 0%, #0d171c 100%);--gradient-card: linear-gradient(145deg, rgba(17, 27, 32, .98) 0%, rgba(13, 22, 27, .98) 100%);--primary-color: #18a058}body{margin:0;padding:0;font-family:SF Pro Display,SF Pro Text,Segoe UI Variable Display,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}#app{min-height:100vh;background:var(--bg-primary)}*{scrollbar-width:thin;scrollbar-color:rgba(24,160,88,.28) transparent}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:#18a05847;border-radius:3px;transition:background-color .2s ease}*::-webkit-scrollbar-thumb:hover{background-color:#18a05880}[data-theme=dark] *::-webkit-scrollbar-thumb{background-color:#18a05866}[data-theme=dark] *::-webkit-scrollbar-thumb:hover{background-color:#18a05899}