:root{--bg:#eef2f6;--pane:#fff;--sidebar-bg:#f8fafc;--ink:#0f172a;--ink-secondary:#334155;--muted:#64748b;--muted-light:#94a3b8;--line:#e2e8f0;--line-subtle:#f1f5f9;--line-hover:#cbd5e1;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-active:#1e40af;--accent-tint:#eff6ff;--accent-border:#bfdbfe;--accent-glow:#2563eb1f;--you:#2563eb;--you-text:#fff;--bot:#f8fafc;--bot-border:#e2e8f0;--bot-text:#0f172a;--warn:#d97706;--warn-bg:#fffbeb;--warn-line:#fcd34d;--warn-text:#b45309;--ok:#10b981;--ok-bg:#ecfdf5;--ok-line:#a7f3d0;--ok-text:#047857;--danger:#dc2626;--danger-bg:#fef2f2;--danger-line:#fca5a5;--danger-text:#b91c1c;--purple:#8b5cf6;--chip:#f1f5f9;--chip-line:#e2e8f0;--card:#fffbeb;--card-line:#fcd34d;--thread:#f8fafc;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "PingFang SC", "Hiragino Sans GB", "Noto Sans SC", system-ui, sans-serif;--mono:"SF Mono", Monaco, Menlo, Consolas, "Liberation Mono", ui-monospace, monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--chat-max-width:800px;--shadow-xs:0 1px 2px #0f172a0a;--shadow-sm:0 2px 4px #0f172a0d;--shadow-md:0 4px 12px #0f172a12;--shadow-lg:0 12px 28px -4px #0f172a1f;--shadow-sheet:16px 0 36px -6px #0f172a24;--input-bg:#fff;--btn-secondary-bg:#fff;--btn-secondary-hover:var(--line-subtle);--glass-header:#fffffff2;--glass-sidebar-header:#fff9;--glass-footer:#ffffffb3;--glass-composer:#ffffffeb;--modal-backdrop:#0f172a73;--inline-code-bg:#0f172a0f;--inline-code-border:transparent;--date-pill-bg:#fff;--date-pill-text:var(--muted);--date-pill-border:var(--line);--reaction-bg:#fff;--code-bg:#1e293b;--code-header-bg:#182232;--row-hover:#0f172a0d}:root[data-theme=dark],body.dark,[data-theme=dark]{--bg:#0d1219;--pane:#161e2b;--sidebar-bg:#111722;--ink:#f1f5f9;--ink-secondary:#cbd5e1;--muted:#8393a7;--muted-light:#526379;--line:#232f41;--line-subtle:#182231;--line-hover:#35455c;--accent:#3b82f6;--accent-hover:#60a5fa;--accent-active:#2563eb;--accent-tint:#3b82f629;--accent-border:#3b82f659;--accent-glow:#3b82f640;--you:#2563eb;--you-text:#fff;--bot:#1c2534;--bot-border:#28364c;--bot-text:#f1f5f9;--warn:#f59e0b;--warn-bg:#f59e0b26;--warn-line:#f59e0b59;--warn-text:#fbbf24;--ok:#10b981;--ok-bg:#10b98126;--ok-line:#10b98159;--ok-text:#34d399;--danger:#ef4444;--danger-bg:#ef444426;--danger-line:#ef444459;--danger-text:#f87171;--purple:#a78bfa;--chip:#1d2737;--chip-line:#2a374c;--card:#161e2b;--card-line:#2a374c;--thread:#111722;--shadow-xs:0 1px 2px #00000059;--shadow-sm:0 2px 5px #00000073;--shadow-md:0 4px 14px #0000008c;--shadow-lg:0 12px 30px -4px #000000b3;--shadow-sheet:16px 0 40px -6px #000000bf;--input-bg:#101620;--btn-secondary-bg:#1c2534;--btn-secondary-hover:#263346;--glass-header:#161e2be0;--glass-sidebar-header:#111722d1;--glass-footer:#111722d9;--glass-composer:#161e2be6;--modal-backdrop:#000000b3;--inline-code-bg:#f1f5f91a;--inline-code-border:#f1f5f91f;--date-pill-bg:#1c2534;--date-pill-text:var(--muted);--date-pill-border:var(--line);--reaction-bg:#1c2534;--code-bg:#101620;--code-header-bg:#151d2a;--row-hover:#ffffff0f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0d1219;--pane:#161e2b;--sidebar-bg:#111722;--ink:#f1f5f9;--ink-secondary:#cbd5e1;--muted:#8393a7;--muted-light:#526379;--line:#232f41;--line-subtle:#182231;--line-hover:#35455c;--accent:#3b82f6;--accent-hover:#60a5fa;--accent-active:#2563eb;--accent-tint:#3b82f629;--accent-border:#3b82f659;--accent-glow:#3b82f640;--you:#2563eb;--you-text:#fff;--bot:#1c2534;--bot-border:#28364c;--bot-text:#f1f5f9;--warn:#f59e0b;--warn-bg:#f59e0b26;--warn-line:#f59e0b59;--warn-text:#fbbf24;--ok:#10b981;--ok-bg:#10b98126;--ok-line:#10b98159;--ok-text:#34d399;--danger:#ef4444;--danger-bg:#ef444426;--danger-line:#ef444459;--danger-text:#f87171;--purple:#a78bfa;--chip:#1d2737;--chip-line:#2a374c;--card:#161e2b;--card-line:#2a374c;--thread:#111722;--shadow-xs:0 1px 2px #00000059;--shadow-sm:0 2px 5px #00000073;--shadow-md:0 4px 14px #0000008c;--shadow-lg:0 12px 30px -4px #000000b3;--shadow-sheet:16px 0 40px -6px #000000bf;--input-bg:#101620;--btn-secondary-bg:#1c2534;--btn-secondary-hover:#263346;--glass-header:#161e2be0;--glass-sidebar-header:#111722d1;--glass-footer:#111722d9;--glass-composer:#161e2be6;--modal-backdrop:#000000b3;--inline-code-bg:#f1f5f91a;--inline-code-border:#f1f5f91f;--date-pill-bg:#1c2534;--date-pill-text:var(--muted);--date-pill-border:var(--line);--reaction-bg:#1c2534;--code-bg:#101620;--code-header-bg:#151d2a;--row-hover:#ffffff0f}}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:13.5px;line-height:1.5;overflow:hidden}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none;padding:0;transition:all .15s}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{box-shadow:0 0 0 3px var(--accent-glow);outline:none;border-color:var(--accent)!important}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.muted{color:var(--muted)}.avatar-img{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.field-error{color:var(--warn);margin:5px 0 0;font-size:12px;font-weight:500;line-height:1.4}.sheet-close{color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;transition:all .15s;display:inline-flex}.sheet-close:hover{background:var(--line-subtle);color:var(--ink);border-color:var(--line)}.modal-dialog{background:var(--pane);border-radius:var(--radius-xl);border:1px solid var(--line);flex-direction:column;animation:.22s cubic-bezier(.16,1,.3,1) modalScaleIn;display:flex;overflow:hidden;box-shadow:0 24px 56px -12px #0f172a40,0 0 0 1px #0000000d}.modal-head{border-bottom:1px solid var(--line);background:var(--pane);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.modal-close{color:var(--muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;transition:all .15s;display:inline-flex}.modal-close:hover{background:var(--line-subtle);color:var(--ink);border-color:var(--line)}.modal-section{flex-direction:column;gap:4px;display:flex}.btn-chip{border:1px solid var(--line);background:var(--chip);color:var(--ink-secondary);cursor:pointer;font-size:10.5px;font-family:var(--mono);border-radius:4px;padding:2px 7px;line-height:1.2;transition:all .12s}.btn-chip:hover{border-color:var(--accent);color:var(--accent)}.btn-chip.active{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:500}.btn-chip.is-custom{font-family:var(--mono)}.btn-chip.is-add{background:0 0;border-style:dashed}.btn-preset-workspace{background:var(--chip);border:1px solid var(--chip-line);border-radius:var(--radius-md);color:var(--ink-secondary);white-space:nowrap;cursor:pointer;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s}.btn-preset-workspace:hover{background:var(--pane);border-color:var(--line-hover);color:var(--accent)}.avatar-status-dot{background:var(--ok);border:2px solid var(--avatar-ring,var(--pane));z-index:3;border-radius:50%;width:9.5px;height:9.5px;position:absolute;bottom:0;right:0}.avatar-status-dot.is-idle{background:var(--ok)}.avatar-status-dot.is-running,.avatar-status-dot.is-replying,.avatar-status-dot.is-busy{background:var(--accent);animation:1s infinite pulse}.avatar-status-dot.is-waiting_approval{background:var(--warn)}.avatar-status-dot.is-waiting_ask{background:var(--purple)}.row-avatar.size-sm .avatar-status-dot{border-width:1.5px;width:7.5px;height:7.5px}@keyframes pulse{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.row-avatar{--avatar-size:40px;--avatar-ring:var(--sidebar-bg);width:var(--avatar-size);height:var(--avatar-size);border-radius:50%;flex-shrink:0;grid-area:1/1/3;justify-content:center;align-self:center;align-items:center;display:flex;position:relative}.row-avatar.size-sm{--avatar-size:28px}.row-avatar-bot{border:1px solid var(--line);background:var(--chip);width:100%;height:100%;color:var(--muted);font-size:calc(var(--avatar-size) * .38);border-radius:50%;justify-content:center;align-items:center;font-weight:700;transition:transform .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.row-avatar.is-group.layout-empty{background:var(--chip);color:var(--muted);border:1px solid var(--line)}.row-avatar.is-group:not(.layout-empty){background:0 0;border:none}.row-avatar-bot.is-overflow{background:var(--chip);color:var(--accent);border:1px solid var(--accent-border,var(--line));font-weight:750;font-size:calc(var(--avatar-size) * .22);letter-spacing:-.3px;-webkit-user-select:none;user-select:none;line-height:1}.sheet{background:var(--pane);border-right:1px solid var(--line);width:100%;box-shadow:var(--shadow-sheet);z-index:20;padding:18px 16px;animation:.2s cubic-bezier(.16,1,.3,1) slideIn;position:absolute;inset:0 auto 0 0;overflow-y:auto}@keyframes slideIn{0%{opacity:.8;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:.8;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.sheet h2{color:var(--ink);margin:0 0 14px;font-size:16px;font-weight:700}.sheet label,.sheet .field-head{color:var(--ink-secondary);margin:12px 0 5px;font-size:12px;font-weight:600;display:block}.sheet input[type=text],.sheet input[type=password],.sheet textarea,.sheet select{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--input-bg);width:100%;color:var(--ink);box-shadow:var(--shadow-xs);padding:8px 11px;font-size:13px;transition:all .15s}.sheet input[type=text]:focus,.sheet input[type=password]:focus,.sheet textarea:focus,.sheet select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.sheet textarea{resize:vertical;min-height:72px}.sheet .actions{gap:8px;margin-top:20px;display:flex}.sheet .actions+.actions{margin-top:10px}.sheet .actions button{border:1px solid var(--line);background:var(--btn-secondary-bg);border-radius:var(--radius-md);color:var(--ink);box-shadow:var(--shadow-xs);flex:1;padding:8px 12px;font-size:13px;font-weight:600;transition:all .15s}.sheet .actions button:first-child:not(.deny){background:var(--accent);color:#fff;border-color:#0000}.sheet .actions button:first-child:not(.deny):hover{background:var(--accent-hover)}.sheet .actions button:hover:not(:first-child){background:var(--line-subtle);border-color:var(--line-hover)}.sheet .actions .deny{color:var(--danger);border-color:var(--danger-line)}.sheet .actions .deny:hover{background:var(--danger-bg);border-color:var(--danger)}@keyframes popoverIn{0%{opacity:.8;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.sheet-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.sheet-head h2{margin:0}.panel-card{background:var(--pane);border:1px solid var(--line);border-radius:var(--radius-lg);transition:border-color .15s;box-shadow:0 1px 3px #0f172a0a}.panel-card:has(.real-select.is-open){z-index:30;position:relative}.panel-card-head{border-bottom:1px solid var(--line-subtle);background:var(--pane);border-top-left-radius:calc(var(--radius-lg) - 1px);border-top-right-radius:calc(var(--radius-lg) - 1px);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.panel-card-title{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:12px;font-weight:600}.panel-counter-badge{background:var(--chip);color:var(--ink-secondary);border:1px solid var(--chip-line);border-radius:999px;padding:2px 7px;font-size:11px;font-weight:700}.panel-card-body{padding:16px}.panel-alert{border-radius:var(--radius-md);align-items:center;gap:8px;padding:10px 14px;font-size:12.5px;font-weight:500;display:flex}.panel-alert.is-error{background:var(--danger-bg);border:1px solid var(--danger-line);color:var(--danger)}.danger-zone-card{border-color:var(--danger-line)}.danger-zone-card .panel-card-head{background:var(--danger-bg);border-bottom:1px solid var(--danger-line);border-top-left-radius:calc(var(--radius-lg) - 1px);border-top-right-radius:calc(var(--radius-lg) - 1px)}.danger-zone-card .panel-card-title{color:var(--danger-text)}.action-list-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.action-list-stack .action-list-row+.action-list-row{border-top:1px solid var(--line-subtle);padding-top:12px}.action-list-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.action-list-title{color:var(--ink);font-size:13px;font-weight:600;line-height:1.3}.action-list-title.text-danger{color:var(--danger-text)}.action-list-desc{color:var(--muted);font-size:11.5px;line-height:1.35}.action-btn{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.action-btn.btn-secondary{background:var(--btn-secondary-bg);border:1px solid var(--line);color:var(--ink-secondary)}.action-btn.btn-secondary:hover{background:var(--line-subtle);border-color:var(--line-hover);color:var(--ink)}.action-btn.deny{background:var(--danger-bg);color:var(--danger);border:1px solid var(--danger-line)}.action-btn.deny:hover:not(:disabled){background:var(--danger);color:#fff;border-color:var(--danger)}.thinking-picker{flex-wrap:wrap;gap:6px;display:flex}.thinking-picker .btn-chip{text-transform:none;border-radius:6px;padding:5px 11px;font-family:inherit;font-size:12px}.form-group .field-hint,.modal-section .field-hint{margin:6px 0 0;font-size:12px;line-height:1.4}.modal-backdrop{-webkit-backdrop-filter:blur(8px);z-index:100;background:#0f172a73;justify-content:center;align-items:center;padding:24px;animation:.2s cubic-bezier(.16,1,.3,1) backdropFadeIn;display:flex;position:fixed;inset:0}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}.modal-backdrop.confirm-backdrop{z-index:120}.modal-dialog.confirm-dialog{width:380px;max-width:92vw}.confirm-dialog .modal-body{flex:none;padding:16px 20px 6px}.confirm-dialog .confirm-copy{color:var(--ink-secondary);margin:0;font-size:13.5px;line-height:1.55}.confirm-dialog .modal-foot button:first-child{background:var(--btn-secondary-bg);color:var(--ink);border-color:var(--line);box-shadow:var(--shadow-xs)}.confirm-dialog .modal-foot button:first-child:hover{background:var(--line-subtle);border-color:var(--line-hover)}@keyframes modalScaleIn{0%{opacity:.7;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-head h2{color:var(--ink);margin:0;font-size:16.5px;font-weight:700}.modal-body{flex-direction:column;flex:1;gap:14px;padding:18px 20px;display:flex;overflow-y:auto}.modal-body>*{flex-shrink:0}.modal-foot button.deny{color:var(--danger);border-color:var(--danger-line);background:var(--btn-secondary-bg)}.modal-foot button.deny:hover{background:var(--danger-bg);border-color:var(--danger)}.settings-card-title{color:var(--ink);margin:0;font-size:13.5px;font-weight:600;line-height:1.25}.settings-maintenance{flex-direction:column;gap:8px;margin-top:12px;display:flex}.settings-maintenance-actions,.settings-device-list{flex-wrap:wrap;gap:8px;display:flex}.settings-device-list{flex-direction:column;margin:0;padding:0;list-style:none}.settings-device-list li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.field-head-row{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.btn-fetch-models-mini{background:var(--accent-tint);border:1px solid var(--accent-border);color:var(--accent);cursor:pointer;border-radius:9999px;padding:2px 8px;font-size:11px;font-weight:600;transition:all .15s}.btn-fetch-models-mini:hover:not(:disabled){background:var(--accent);color:#fff}.btn-fetch-models-mini:disabled{opacity:.6;cursor:not-allowed}.btn-text-action{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:11.5px;font-weight:500;transition:opacity .15s}.btn-text-action:hover{text-decoration:underline}.models-fetch-tip{background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:var(--radius-sm);color:var(--warn-text);padding:6px 10px;font-size:11.5px;line-height:1.4}.btn-xs{background:var(--btn-secondary-bg);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink-secondary);cursor:pointer;white-space:nowrap;padding:3px 8px;font-size:11px;font-weight:500;transition:all .15s}.btn-xs:hover{background:var(--line-subtle);border-color:var(--line-hover);color:var(--ink)}.modal-section label,.modal-section .field-head,.modal-section .field-label{color:var(--ink-secondary);margin:0 0 2px;font-size:12.5px;font-weight:600;display:block}.modal-body input[type=text],.modal-body input[type=password],.modal-body input[type=number],.modal-body input[type=search],.modal-body textarea,.modal-body select{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--input-bg);width:100%;color:var(--ink);box-shadow:var(--shadow-xs);padding:8px 12px;font-size:13.5px;transition:all .15s}.modal-body input[type=text]:focus,.modal-body input[type=password]:focus,.modal-body input[type=number]:focus,.modal-body input[type=search]:focus,.modal-body textarea:focus,.modal-body select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.modal-body textarea{resize:vertical;min-height:88px}.mcp-enable-label{color:var(--ink);cursor:pointer;align-items:center;gap:8px;font-size:13px;font-weight:500;display:flex}.mcp-empty{text-align:center;background:var(--sidebar-bg);border:1px dashed var(--line);border-radius:var(--radius-md);padding:24px 16px}.modal-foot{border-top:1px solid var(--line);background:var(--sidebar-bg);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.modal-foot button{border:1px solid var(--line);background:var(--btn-secondary-bg);border-radius:var(--radius-md);color:var(--ink);box-shadow:var(--shadow-xs);padding:8px 18px;font-size:13px;font-weight:600;transition:all .15s}.modal-foot button:hover{background:var(--line-subtle);border-color:var(--line-hover)}.modal-foot button:first-child{background:var(--accent);color:#fff;border-color:#0000;box-shadow:0 2px 6px #2563eb33}.modal-foot button:first-child:hover{background:var(--accent-hover)}.md-body pre code .tok{color:var(--shiki-light)}:root[data-theme=dark] .code-hl .tok,:root[data-theme=dark] .md-body pre code .tok,:root.dark .code-hl .tok,:root.dark .md-body pre code .tok{color:var(--shiki-dark)}.context-view:has(.monaco-hover.workbench-hover){pointer-events:none;display:none}@media (width<=680px){.preview-split,.sidebar-split,.artifact-pane{display:none}}
