pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id,.hljs-variable{color:#79c0ff}.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-code,.hljs-comment,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-pseudo,.hljs-selector-tag{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:0}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;inset:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm .xterm-cursor-pointer,.xterm.xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;inset:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:transparent}.xterm .xterm-accessibility-tree{user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor .CodeMirror-line::selection,.cm-fat-cursor .CodeMirror-line>span::selection,.cm-fat-cursor .CodeMirror-line>span>span::selection{background:0 0}.cm-fat-cursor .CodeMirror-line::-moz-selection,.cm-fat-cursor .CodeMirror-line>span::-moz-selection,.cm-fat-cursor .CodeMirror-line>span>span::-moz-selection{background:0 0}.cm-fat-cursor{caret-color:transparent}@-moz-keyframes blink{50%{background-color:transparent}}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;inset:-50px 0 0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-type,.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-s-default .cm-error,.cm-invalidchar{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:#ff96004d}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:0;position:relative;z-index:0}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{position:absolute;z-index:6;display:none;outline:0}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:0 0!important;border:none!important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:0 0;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;inset:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:0}.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}div.CodeMirror-dragcursors,.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:#ff06}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:""}span.CodeMirror-selectedtext{background:0 0}.cm-s-material-darker.CodeMirror{background-color:#212121;color:#eff}.cm-s-material-darker .CodeMirror-gutters{background:#212121;color:#545454;border:none}.cm-s-material-darker .CodeMirror-guttermarker,.cm-s-material-darker .CodeMirror-guttermarker-subtle,.cm-s-material-darker .CodeMirror-linenumber{color:#545454}.cm-s-material-darker .CodeMirror-cursor{border-left:1px solid #fc0}.cm-s-material-darker div.CodeMirror-selected,.cm-s-material-darker.CodeMirror-focused div.CodeMirror-selected{background:#61616133}.cm-s-material-darker .CodeMirror-line::selection,.cm-s-material-darker .CodeMirror-line>span::selection,.cm-s-material-darker .CodeMirror-line>span>span::selection{background:#80cbc433}.cm-s-material-darker .CodeMirror-line::-moz-selection,.cm-s-material-darker .CodeMirror-line>span::-moz-selection,.cm-s-material-darker .CodeMirror-line>span>span::-moz-selection{background:#80cbc433}.cm-s-material-darker .CodeMirror-activeline-background{background:#00000080}.cm-s-material-darker .cm-keyword{color:#c792ea}.cm-s-material-darker .cm-operator{color:#89ddff}.cm-s-material-darker .cm-variable-2{color:#eff}.cm-s-material-darker .cm-type,.cm-s-material-darker .cm-variable-3{color:#f07178}.cm-s-material-darker .cm-builtin{color:#ffcb6b}.cm-s-material-darker .cm-atom{color:#f78c6c}.cm-s-material-darker .cm-number{color:#ff5370}.cm-s-material-darker .cm-def{color:#82aaff}.cm-s-material-darker .cm-string{color:#c3e88d}.cm-s-material-darker .cm-string-2{color:#f07178}.cm-s-material-darker .cm-comment{color:#545454}.cm-s-material-darker .cm-variable{color:#f07178}.cm-s-material-darker .cm-tag{color:#ff5370}.cm-s-material-darker .cm-meta{color:#ffcb6b}.cm-s-material-darker .cm-attribute,.cm-s-material-darker .cm-property{color:#c792ea}.cm-s-material-darker .cm-qualifier,.cm-s-material-darker .cm-type,.cm-s-material-darker .cm-variable-3{color:#decb6b}.cm-s-material-darker .cm-error{color:#fff;background-color:#ff5370}.cm-s-material-darker .CodeMirror-matchingbracket{text-decoration:underline;color:#fff!important}@font-face{font-family:Symbols Nerd Font Mono;src:url(https://cdn.jsdelivr.net/gh/ryanoasis/nerd-fonts@latest/patched-fonts/NerdFontsSymbolsOnly/SymbolsNerdFontMono-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}input,textarea,[contenteditable]{caret-color:var(--text-primary)}select{font-family:inherit;font-size:14px;color:var(--text-primary);background:var(--bg-input, var(--bg-main));border:1px solid var(--border-color);border-radius:10px;padding:8px 32px 8px 12px;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;outline:none;transition:border-color .15s,box-shadow .15s}select:hover{border-color:var(--text-muted)}select:focus{outline:none;border-color:var(--accent-blue, #4a9eff);box-shadow:0 0 0 2px #4a9eff1f}select option{background:var(--bg-main);color:var(--text-primary);padding:8px 12px}select option:checked{background:var(--sidebar-hover)}:root{--bg-main: #fafaf8;--bg-sidebar: #f3f3f0;--bg-workbench: #f6f5f3;--bg-user-msg: #eeeee9;--bg-assistant-msg: transparent;--bg-input: #fafaf8;--bg-input-wrapper: #eeeee9;--text-primary: #2c2c2c;--text-secondary: #6b6b6b;--text-muted: #9a9a9a;--border-color: #e0ddd8;--border-light: #eceae5;--accent: #2c2c2c;--accent-hover: #444444;--accent-blue: #4a7cc9;--accent-blue-hover: #3a6ab5;--error: #d65d5d;--success: #4a9e5c;--code-bg: #1e1e1e;--code-header-bg: #2d2d2d;--code-text: #e5e5e5;--tool-bg: transparent;--tool-border: transparent;--tool-result-bg: #f0fdf4;--tool-result-border: #bbf7d0;--sidebar-hover: #e8e6e1;--session-active: #e2e0db;--inline-code-bg: rgba(0, 0, 0, .05);--crew-tool-bg: #f0efec;--crew-tool-border: #e0ddd8;--crew-color-pm: #5a7394;--crew-color-pm-bg: rgba(90, 115, 148, .06);--crew-color-pm-border: rgba(90, 115, 148, .2);--crew-color-architect: #7a6a9a;--crew-color-architect-bg: rgba(122, 106, 154, .06);--crew-color-architect-border: rgba(122, 106, 154, .2);--crew-color-developer: #4a8a70;--crew-color-developer-bg: rgba(74, 138, 112, .06);--crew-color-developer-border: rgba(74, 138, 112, .2);--crew-color-reviewer: #8a7550;--crew-color-reviewer-bg: rgba(138, 117, 80, .06);--crew-color-reviewer-border: rgba(138, 117, 80, .2);--crew-color-tester: #4a7e82;--crew-color-tester-bg: rgba(74, 126, 130, .06);--crew-color-tester-border: rgba(74, 126, 130, .2);--crew-color-designer: #9a5a5a;--crew-color-designer-bg: rgba(154, 90, 90, .06);--crew-color-designer-border: rgba(154, 90, 90, .2);--crew-color-writer: #8a5a72;--crew-color-writer-bg: rgba(138, 90, 114, .06);--crew-color-writer-border: rgba(138, 90, 114, .2);--crew-color-human: #8a6e40;--crew-color-human-bg: rgba(138, 110, 64, .06);--crew-color-human-border: rgba(138, 110, 64, .2);--crew-color-system: #6b7280;--crew-color-system-bg: rgba(107, 114, 128, .04);--crew-color-system-border: rgba(107, 114, 128, .12);--crew-color-fallback-0: #6060a0;--crew-color-fallback-0-bg: rgba(96, 96, 160, .06);--crew-color-fallback-0-border: rgba(96, 96, 160, .2);--crew-color-fallback-1: #4a7e78;--crew-color-fallback-1-bg: rgba(74, 126, 120, .06);--crew-color-fallback-1-border: rgba(74, 126, 120, .2);--crew-color-fallback-2: #9a5a5a;--crew-color-fallback-2-bg: rgba(154, 90, 90, .06);--crew-color-fallback-2-border: rgba(154, 90, 90, .2);--crew-color-fallback-3: #5e8040;--crew-color-fallback-3-bg: rgba(94, 128, 64, .06);--crew-color-fallback-3-border: rgba(94, 128, 64, .2);--crew-color-pm-bg-glow: rgba(90, 115, 148, .14);--crew-color-architect-bg-glow: rgba(122, 106, 154, .14);--crew-color-developer-bg-glow: rgba(74, 138, 112, .14);--crew-color-reviewer-bg-glow: rgba(138, 117, 80, .14);--crew-color-tester-bg-glow: rgba(74, 126, 130, .14);--crew-color-designer-bg-glow: rgba(154, 90, 90, .14);--crew-color-writer-bg-glow: rgba(138, 90, 114, .14);--crew-color-human-bg-glow: rgba(138, 110, 64, .14);--crew-color-system-bg-glow: rgba(107, 114, 128, .1);--crew-color-fallback-0-bg-glow: rgba(96, 96, 160, .14);--crew-color-fallback-1-bg-glow: rgba(74, 126, 120, .14);--crew-color-fallback-2-bg-glow: rgba(154, 90, 90, .14);--crew-color-fallback-3-bg-glow: rgba(94, 128, 64, .14);--diff-add-bg: rgba(46, 140, 67, .08);--diff-add-border: rgba(46, 140, 67, .35);--diff-add-text: #2a7a3f;--diff-del-bg: rgba(200, 70, 70, .08);--diff-del-border: rgba(200, 70, 70, .35);--diff-del-text: #b93535;--diff-line-num: #7a7a7a;--diff-header-bg: #f3f2ee}[data-theme=dark]{--bg-main: #1a1a1a;--bg-sidebar: #141414;--bg-workbench: #171716;--bg-user-msg: #2a2a28;--bg-assistant-msg: transparent;--bg-input: #2a2a28;--bg-input-wrapper: #2a2a28;--text-primary: #d8d5d0;--text-secondary: #a09d98;--text-muted: #777572;--border-color: #363330;--border-light: #2a2826;--accent: #d8d5d0;--accent-hover: #b5b2ad;--accent-blue: #b5b2ad;--accent-blue-hover: #9a9792;--error: #d09090;--success: #7ab87e;--code-bg: #141414;--code-header-bg: #222220;--code-text: #ccc9c4;--tool-bg: transparent;--tool-border: transparent;--tool-result-bg: rgba(180, 180, 170, .05);--tool-result-border: rgba(180, 180, 170, .12);--sidebar-hover: #252523;--session-active: #302e2c;--inline-code-bg: rgba(255, 255, 255, .07);--crew-tool-bg: #1e1e1e;--crew-tool-border: #363330;--diff-add-bg: rgba(120, 170, 120, .1);--diff-add-border: rgba(120, 170, 120, .28);--diff-add-text: #9cc9a0;--diff-del-bg: rgba(190, 120, 120, .1);--diff-del-border: rgba(190, 120, 120, .28);--diff-del-text: #d4a0a0;--diff-line-num: #605e5a;--diff-header-bg: #141414;--crew-color-pm: #8aa4c8;--crew-color-pm-bg: rgba(138, 164, 200, .1);--crew-color-pm-border: rgba(138, 164, 200, .25);--crew-color-architect: #a99bc4;--crew-color-architect-bg: rgba(169, 155, 196, .1);--crew-color-architect-border: rgba(169, 155, 196, .25);--crew-color-developer: #7db8a0;--crew-color-developer-bg: rgba(125, 184, 160, .1);--crew-color-developer-border: rgba(125, 184, 160, .25);--crew-color-reviewer: #c8aa78;--crew-color-reviewer-bg: rgba(200, 170, 120, .1);--crew-color-reviewer-border: rgba(200, 170, 120, .25);--crew-color-tester: #82b5b8;--crew-color-tester-bg: rgba(130, 181, 184, .1);--crew-color-tester-border: rgba(130, 181, 184, .25);--crew-color-designer: #c08888;--crew-color-designer-bg: rgba(192, 136, 136, .1);--crew-color-designer-border: rgba(192, 136, 136, .25);--crew-color-writer: #b8899c;--crew-color-writer-bg: rgba(184, 137, 156, .1);--crew-color-writer-border: rgba(184, 137, 156, .25);--crew-color-human: #c0a070;--crew-color-human-bg: rgba(192, 160, 112, .1);--crew-color-human-border: rgba(192, 160, 112, .25);--crew-color-system-bg: rgba(107, 114, 128, .06);--crew-color-system-border: rgba(107, 114, 128, .18);--crew-color-fallback-0: #9494be;--crew-color-fallback-0-bg: rgba(148, 148, 190, .1);--crew-color-fallback-0-border: rgba(148, 148, 190, .25);--crew-color-fallback-1: #80b0a8;--crew-color-fallback-1-bg: rgba(128, 176, 168, .1);--crew-color-fallback-1-border: rgba(128, 176, 168, .25);--crew-color-fallback-2: #c08888;--crew-color-fallback-2-bg: rgba(192, 136, 136, .1);--crew-color-fallback-2-border: rgba(192, 136, 136, .25);--crew-color-fallback-3: #9ab87e;--crew-color-fallback-3-bg: rgba(154, 184, 126, .1);--crew-color-fallback-3-border: rgba(154, 184, 126, .25);--crew-color-pm-bg-glow: rgba(138, 164, 200, .18);--crew-color-architect-bg-glow: rgba(169, 155, 196, .18);--crew-color-developer-bg-glow: rgba(125, 184, 160, .18);--crew-color-reviewer-bg-glow: rgba(180, 158, 100, .18);--crew-color-tester-bg-glow: rgba(120, 175, 180, .18);--crew-color-designer-bg-glow: rgba(200, 130, 130, .18);--crew-color-writer-bg-glow: rgba(175, 130, 155, .18);--crew-color-human-bg-glow: rgba(180, 150, 100, .18);--crew-color-system-bg-glow: rgba(140, 150, 170, .14);--crew-color-fallback-0-bg-glow: rgba(140, 140, 200, .18);--crew-color-fallback-1-bg-glow: rgba(120, 175, 165, .18);--crew-color-fallback-2-bg-glow: rgba(200, 130, 130, .18);--crew-color-fallback-3-bg-glow: rgba(140, 175, 100, .18)}html{height:100%;height:100dvh}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;background:var(--bg-main);color:var(--text-primary);height:100%;height:100dvh;overflow:hidden;transition:background-color .2s,color .2s}#app{height:100%;height:100dvh;display:flex;flex-direction:column}.login-page{flex:1;display:flex;justify-content:center;align-items:center;background:var(--bg-main);min-height:100vh;position:relative}.login-lang-toggle{position:absolute;top:16px;right:16px;padding:6px 14px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-sidebar);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:color .2s,border-color .2s}.login-lang-toggle:hover{color:var(--text-primary);border-color:var(--text-secondary)}.login-container{display:flex;flex-direction:column;align-items:center;padding:48px 40px;width:100%;max-width:400px;background:var(--bg-sidebar);border-radius:16px;border:1px solid var(--border-color);box-shadow:0 4px 24px #00000014}[data-theme=dark] .login-container{box-shadow:0 4px 24px #0006}.login-container h1{margin-bottom:8px;font-size:28px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.login-container .login-subtitle{color:var(--text-secondary);font-size:14px;margin-bottom:32px}.login-container input{width:100%;padding:14px 16px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-main);color:var(--text-primary);font-size:16px;margin-bottom:16px;transition:border-color .2s,box-shadow .2s}.login-container input:focus{outline:none;border-color:var(--accent-blue, #4a9eff);box-shadow:0 0 0 2px #4a9eff26}[data-theme=dark] .login-container input:focus{border-color:var(--accent-blue, #4a9eff);box-shadow:0 0 0 2px #4a9eff26}.login-container button{width:100%;padding:14px 16px;border:none;border-radius:12px;background:#fff;color:#171717;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s,transform .1s}[data-theme=light] .login-container button{background:#171717;color:#fff}.login-container button:hover:not(:disabled){opacity:.85;transform:translateY(-1px)}.login-container button:active:not(:disabled){transform:translateY(0)}.login-container .error{color:var(--error);margin-top:16px;font-size:14px;text-align:center;padding:12px 16px;background:#ef44441a;border-radius:8px;width:100%}.login-container .verification-hint{color:var(--text-secondary);margin-bottom:20px;font-size:14px;text-align:center;line-height:1.5}.login-container .code-input{text-align:center;font-size:28px;font-weight:600;letter-spacing:12px;font-family:SF Mono,Monaco,Courier New,monospace;padding-left:20px}.login-container .back-button{margin-top:12px;background:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}.login-container .back-button:hover{background:var(--sidebar-hover);color:var(--text-primary);transform:none}.login-container button:disabled{opacity:.5;cursor:not-allowed;transform:none}.login-container .register-link{margin-top:16px;font-size:14px;color:var(--text-secondary)}.login-container .register-link a{color:var(--accent-color, #7c5cfc);text-decoration:none}.login-container .register-link a:hover{text-decoration:underline}.login-container .success-msg{margin-top:12px;color:#22c55e;font-size:14px;font-weight:500}.totp-setup{width:100%;text-align:center}.totp-title{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.totp-hint{color:var(--text-secondary);font-size:14px;margin-bottom:24px;line-height:1.6}.qr-container{display:flex;justify-content:center;margin-bottom:24px}.qr-code{width:180px;height:180px;border-radius:12px;border:1px solid var(--border-color);background:#fff;padding:12px;box-shadow:0 2px 12px #00000014}[data-theme=dark] .qr-code{box-shadow:0 2px 12px #0000004d}.secret-container{margin-bottom:24px;padding:16px;background:var(--bg-main);border-radius:12px;border:1px solid var(--border-color)}.secret-label{color:var(--text-muted);font-size:12px;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.secret-key{display:block;font-family:SF Mono,Monaco,Courier New,monospace;font-size:13px;color:var(--text-primary);word-break:break-all;user-select:all;cursor:text;background:var(--bg-sidebar);padding:10px 12px;border-radius:8px;margin-top:8px}.chat-page{display:flex;height:100%;height:100dvh;overflow:hidden}.sidebar{width:260px;background:var(--bg-sidebar);display:flex;flex-direction:column;flex-shrink:0;transition:width .2s ease,min-width .2s ease;overflow:hidden}.sidebar.collapsed{width:48px;min-width:48px;border-right:1px solid var(--border-color)}.sidebar-workbench-divider{width:1px;background:var(--border-color);flex-shrink:0}.sidebar.collapsed .sidebar-header-mobile,.sidebar.collapsed .sidebar-top,.sidebar.collapsed .session-list,.sidebar.collapsed .session-panels,.sidebar.collapsed .sidebar-bottom{display:none}.sidebar-collapsed-bar{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 0;width:48px;height:100%}.collapsed-spacer{flex:1}.collapsed-icon-btn{position:relative;width:36px;height:36px;border:none;border-radius:8px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:background .15s,color .15s}.collapsed-icon-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.collapsed-icon-btn.active{background:var(--session-active);color:var(--accent-blue)}.collapsed-icon-btn:disabled{opacity:.4;cursor:not-allowed}.collapsed-icon-btn svg{flex-shrink:0}.sidebar-top{padding:12px 12px 8px}.sidebar-header-row{display:flex;align-items:center;justify-content:space-between;padding:4px 0 8px}.sidebar-brand{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--text-primary);min-width:0;white-space:nowrap}.sidebar-brand .status-dot{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);flex-shrink:0}.sidebar-brand .status-dot.online{background:var(--success)}.sidebar-brand .brand-label{white-space:nowrap}.sidebar-header-actions{display:flex;align-items:center;gap:2px}.sidebar-icon-btn{position:relative;width:32px;height:32px;border:none;border-radius:8px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:background .15s,color .15s}.sidebar-icon-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.sidebar-icon-btn.active{background:var(--session-active);color:var(--accent-blue)}.sidebar-icon-btn svg{flex-shrink:0}.sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:4px 0 8px}.sidebar-nav-item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 8px;border:none;border-radius:10px;background:transparent;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s}.sidebar-nav-item:hover{background:var(--sidebar-hover)}.sidebar-nav-item:disabled{opacity:.4;cursor:not-allowed}.sidebar-nav-item svg{width:20px;height:20px;fill:currentColor;flex-shrink:0;color:var(--text-secondary)}.sidebar-nav-item:hover svg{color:var(--text-primary)}.agent-selector{position:relative;margin-bottom:8px}.agent-btn{width:100%;display:flex;align-items:center;gap:8px;padding:10px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s}.agent-btn:hover{background:var(--sidebar-hover)}.agent-btn .status-dot{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);flex-shrink:0}.agent-btn .status-dot.online{background:var(--success)}.agent-btn .agent-name{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-btn .chevron{width:16px;height:16px;fill:var(--text-secondary);transition:transform .2s;flex-shrink:0}.agent-btn .chevron.rotated{transform:rotate(180deg)}.dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-main);border-radius:12px;box-shadow:0 4px 24px #0000004d;z-index:100;max-height:300px;overflow-y:auto;padding:4px}.agent-item{padding:10px 12px;cursor:pointer;border-radius:8px;transition:background .15s}.agent-item:hover{background:var(--sidebar-hover)}.agent-item.selected{background:var(--session-active)}.agent-item.no-agents{color:var(--text-secondary);cursor:default;text-align:center}.agent-item .name{font-weight:500;display:flex;align-items:center;gap:8px;font-size:14px}.agent-item .info{font-size:12px;color:var(--text-secondary);margin-top:2px;margin-left:16px}.agent-item .status{width:8px;height:8px;border-radius:50%;background:var(--success)}.agent-item .status.online{background:var(--success)}.new-chat-btn{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:14px;cursor:pointer;transition:background .15s}.new-chat-btn:hover{background:var(--sidebar-hover)}.new-chat-btn svg{width:18px;height:18px;fill:currentColor}.session-list{flex:1;overflow-y:auto;padding:0 8px}.session-panels{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.session-panel{flex:0 1 auto;display:flex;flex-direction:column;min-height:0;overflow:hidden}.session-panel-list{overflow-y:auto;padding:0 8px;max-height:168px}.session-header-add-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:4px;background:transparent;color:var(--text-secondary);cursor:pointer;opacity:0;flex-shrink:0;transition:opacity .15s,background .15s}.session-header-add-btn.disabled{opacity:0!important;cursor:not-allowed}.session-group-header:hover .session-header-add-btn:not(.disabled){opacity:.7}.session-header-add-btn:hover:not(.disabled){opacity:1!important;background:var(--bg-hover)}.session-group-title{font-size:12px;color:var(--text-secondary);padding:16px 12px 8px;font-weight:500}.session-group-header{display:flex;align-items:center;gap:4px;padding:8px 8px 6px 12px;margin:0 8px;font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;border-radius:6px;transition:background .15s}.session-group-header:hover{background:var(--sidebar-hover)}.session-group-title-area{display:flex;align-items:center;gap:6px;flex:1;cursor:pointer;min-width:0}.session-collapse-arrow{flex-shrink:0;opacity:.6;transition:transform .2s ease}.session-collapse-arrow.collapsed{transform:rotate(-90deg)}.session-panel.collapsed{flex:0 0 auto!important;max-height:none!important}.session-group-header .session-group-icon{opacity:.7}.session-item{padding:10px 12px;border-radius:8px;cursor:pointer;transition:background .15s;margin-bottom:2px}.session-item:hover{background:var(--sidebar-hover)}.session-item.active{background:var(--session-active)}.session-item.processing .title{color:var(--text-secondary)}.processing-dot{display:inline-block;width:8px;height:8px;background:var(--text-secondary);border-radius:50%;margin-right:6px;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.session-item .title{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.session-item-header{display:flex;align-items:center;gap:8px;position:relative}.session-item-header .title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.session-delete-btn{width:20px;height:20px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;color:var(--text-secondary);flex-shrink:0;position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:1;padding:0 0 0 8px;box-sizing:content-box;background:linear-gradient(to right,transparent 0px,var(--sidebar-hover) 8px)}.session-item.active .session-delete-btn{background:linear-gradient(to right,transparent 0px,var(--session-active) 8px)}.session-item:hover .session-delete-btn{opacity:1}.session-delete-btn:hover{color:var(--error)}.session-delete-btn svg{width:14px;height:14px;fill:currentColor}.session-info{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-secondary);margin-top:2px;font-family:SF Mono,Fira Code,Consolas,monospace;min-width:0;overflow:hidden}.session-path{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-time{flex-shrink:0;color:var(--text-muted);font-size:11px}.session-agent{flex-shrink:0;color:var(--primary-color);background:var(--primary-color-transparent, rgba(217, 119, 6, .15));padding:1px 6px;border-radius:4px;font-size:10px;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.latency-indicator{display:inline-flex;align-items:center;gap:2px;flex-shrink:0;font-size:10px;white-space:nowrap;margin-left:auto}.latency-indicator svg{flex-shrink:0}.latency-indicator.latency-good{color:var(--success)}.latency-indicator.latency-warn{color:#eab308}.latency-indicator.latency-bad{color:#ef4444}.new-chat-btn:disabled{opacity:.5;cursor:not-allowed}.empty-hint{padding:16px 12px;text-align:center;color:var(--text-secondary);font-size:13px}.sidebar-action-bar{display:flex;gap:4px;padding:4px 12px 8px}.sidebar-action-btn{position:relative;width:36px;height:32px;border:none;border-radius:6px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:background .15s}.sidebar-action-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.sidebar-action-btn.active{background:var(--session-active);color:var(--accent-blue)}.sidebar-action-btn svg{flex-shrink:0}.action-badge{position:absolute;top:1px;right:1px;min-width:14px;height:14px;display:flex;align-items:center;justify-content:center;padding:0 3px;background:var(--accent-blue);color:#fff;font-size:9px;font-weight:600;border-radius:7px;line-height:1}.sidebar-bottom{padding:4px 12px 8px}.sidebar-bottom .sidebar-nav-item{justify-content:flex-start}.sidebar-version{font-size:11px;color:var(--text-secondary);opacity:.5;margin-left:auto}.sidebar-menu-btn{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:14px;cursor:pointer;transition:background .15s}.sidebar-menu-btn:hover{background:var(--sidebar-hover)}.sidebar-menu-btn svg{width:18px;height:18px}.main-content{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.main-content.workbench-active{flex:1;min-width:0}.main-content.workbench-maximized{display:none!important}.chat-header{display:flex;justify-content:center;padding:8px 24px 4px;background:var(--bg-main);position:relative;box-sizing:border-box}.header-right{position:absolute;right:16px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:6px}.header-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.header-action-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.header-action-btn:disabled{opacity:.4;cursor:not-allowed}.header-action-btn svg{display:block}.header-action-btn.btn-loading{pointer-events:none;opacity:.7}.header-action-btn.btn-loading svg{display:none}.header-action-btn.btn-loading:after{content:"";width:14px;height:14px;border:2px solid var(--text-tertiary, #666);border-top-color:var(--accent-blue, #3b82f6);border-radius:50%;animation:spin .8s linear infinite}.compact-status-banner{position:absolute;bottom:-28px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;z-index:10;animation:slideDown .2s ease-out;white-space:nowrap}.compact-status-banner.compacting{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;box-shadow:0 2px 8px #3b82f64d}.compact-status-banner.completed{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b9814d;animation:slideDown .2s ease-out,fadeOut .3s ease-out 2.7s forwards}.compact-spinner{width:12px;height:12px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.compact-icon{flex-shrink:0}.compact-message{line-height:1.2}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.chat-title-group{max-width:50%;text-align:center}.chat-title{font-size:14px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-title-path{font-size:11px;font-weight:400;color:var(--text-secondary);opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-left{display:flex;align-items:center;flex-shrink:0}.header-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.header-icon-btn{width:34px;height:34px;border:none;border-radius:6px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;color:var(--text-secondary);position:relative;flex-shrink:0}.header-icon-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.header-icon-btn.active{background:var(--session-active);color:var(--accent-blue)}.header-icon-btn.active svg{fill:var(--accent-blue)}.header-icon-btn svg{fill:currentColor}.header-btn-badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0 4px;background:var(--accent-blue);color:#fff;font-size:10px;font-weight:600;border-radius:8px;line-height:1}.icon-btn{width:32px;height:32px;border:none;border-radius:8px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;color:var(--text-primary)}.icon-btn:hover{background:var(--sidebar-hover)}.icon-btn svg{width:20px;height:20px;fill:currentColor}.chat-container{flex:1;overflow-y:auto;padding:24px 0;background:var(--bg-main);min-height:0;position:relative}.welcome-screen{flex:1;display:flex;align-items:center;justify-content:center;padding:24px;min-height:100%}.welcome-content{max-width:480px;width:100%;text-align:center}.welcome-logo{margin-bottom:16px;display:flex;justify-content:center}.welcome-title{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.welcome-subtitle{font-size:16px;color:var(--text-secondary);margin-bottom:32px}.welcome-section{margin-bottom:32px}.welcome-status{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:32px;padding:12px 20px;background:var(--bg-sidebar);border-radius:20px}.welcome-status .status-dot{width:8px;height:8px;border-radius:50%;background:var(--text-muted)}.welcome-status .status-dot.online{background:var(--success)}.welcome-status .status-text{font-size:14px;color:var(--text-secondary)}.welcome-section-title{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.welcome-section-title .status-dot{width:8px;height:8px;border-radius:50%;background:var(--text-muted)}.welcome-section-title .status-dot.online{background:var(--success)}.welcome-agents{display:flex;flex-direction:column;gap:8px}.welcome-agent-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:12px;transition:all .15s;text-align:left}.welcome-agent-card.readonly{cursor:default}.welcome-agent-card:not(.readonly){cursor:pointer}.welcome-agent-card:not(.readonly):hover{border-color:var(--text-secondary);background:var(--sidebar-hover)}.agent-card-status{width:10px;height:10px;border-radius:50%;background:var(--success);flex-shrink:0}.agent-card-info{flex:1;min-width:0}.agent-card-name{font-size:15px;font-weight:500;color:var(--text-primary);margin-bottom:2px}.agent-card-dir{font-size:13px;color:var(--text-muted);font-family:SF Mono,Monaco,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.welcome-empty{padding:32px 24px;background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:12px}.welcome-empty .empty-icon{font-size:40px;margin-bottom:12px}.welcome-empty .empty-text{font-size:16px;font-weight:500;color:var(--text-primary);margin-bottom:8px}.welcome-empty .empty-hint{font-size:14px;color:var(--text-muted)}.welcome-empty .setup-agent-btn{margin-top:16px}.welcome-actions{display:flex;gap:12px;justify-content:center}.welcome-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border:1px solid var(--border-color);border-radius:12px;background:transparent;color:var(--text-secondary);font-size:15px;font-weight:500;cursor:pointer;transition:all .15s}.welcome-btn:hover{background:var(--sidebar-hover);color:var(--text-primary);border-color:var(--text-muted)}.welcome-btn.primary{color:var(--text-primary)}.welcome-btn.secondary{color:var(--text-secondary)}@media(max-width:480px){.welcome-actions{flex-direction:column}.welcome-btn{width:100%}.welcome-logo svg{width:48px;height:48px}.welcome-title{font-size:24px}}.messages{max-width:min(90%,960px);width:100%;margin:0 auto;padding:0 24px;display:flex;flex-direction:column;gap:18px;box-sizing:border-box}.load-more-top{text-align:center;padding:8px 0 16px}.load-more-btn{padding:8px 16px;border:1px solid var(--border-color);border-radius:16px;background:var(--bg-sidebar);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all .15s}.load-more-btn:hover{background:var(--sidebar-hover);color:var(--text-primary);border-color:var(--text-secondary)}.message{line-height:1.6;word-wrap:break-word;font-size:15px}.message.user{background:var(--bg-user-msg);padding:10px 16px;border-radius:18px;align-self:flex-end;max-width:80%;font-size:15px}.message.system{text-align:center;font-size:13px;color:var(--text-muted);padding:8px 16px;background:transparent;border-radius:8px;align-self:center}.message.error{text-align:center;font-size:13px;color:var(--error);padding:10px 16px;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:8px;align-self:center}.mcp-config-wrapper{position:relative}.header-action-btn.active{background:var(--bg-hover);color:var(--accent-blue, #3b82f6)}.mcp-count-badge{position:absolute;top:2px;right:2px;min-width:14px;height:14px;padding:0 3px;border-radius:7px;background:var(--accent-blue, #3b82f6);color:#fff;font-size:9px;font-weight:600;line-height:14px;text-align:center;pointer-events:none}.mcp-dropdown{position:fixed;width:280px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px #00000026;z-index:1000;animation:fadeSlideDown .15s ease-out}@keyframes fadeSlideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mcp-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 8px;border-bottom:1px solid var(--border-color)}.mcp-dropdown-title{font-size:12px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.mcp-dropdown-close{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:4px;background:transparent;color:var(--text-tertiary);cursor:pointer}.mcp-dropdown-close:hover{background:var(--bg-hover);color:var(--text-primary)}.mcp-dropdown-body{padding:6px 0;max-height:240px;overflow-y:auto}.mcp-server-item{display:flex;align-items:center;gap:8px;padding:6px 12px}.mcp-server-name{flex:1;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mcp-server-badge{font-size:10px;padding:1px 5px;border-radius:3px;font-weight:500;flex-shrink:0}.mcp-badge-builtin{background:#3b82f61f;color:var(--accent-blue, #3b82f6)}.mcp-badge-mcp{background:#a855f71f;color:#a855f7}.mcp-toggle{position:relative;width:32px;height:18px;border:none;border-radius:9px;background:var(--bg-tertiary, #444);cursor:pointer;transition:background .2s;flex-shrink:0}.mcp-toggle.active{background:var(--accent-blue, #3b82f6)}.mcp-toggle-knob{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .2s}.mcp-toggle.active .mcp-toggle-knob{transform:translate(14px)}.mcp-dropdown-footer{padding:8px 12px;border-top:1px solid var(--border-color)}.mcp-restart-hint{font-size:11px;color:var(--warning, #f59e0b)}.assistant-turn{border-radius:8px;background:var(--bg-assistant-msg, transparent);display:flex;flex-direction:column;position:relative}.assistant-turn.streaming{border-bottom-left-radius:0;border-bottom-right-radius:0}.turn-content{padding:0 40px 0 0;position:relative}.turn-content .turn-header{position:absolute;top:0;right:0;display:flex;gap:4px;opacity:0;transition:opacity .15s}.turn-content:hover .turn-header{opacity:1}.turn-todos{border-top:1px solid var(--border-light);padding:8px 16px;display:flex;flex-direction:column;gap:3px}.turn-actions{border-top:1px solid var(--border-light);padding:4px 8px}.turn-actions-history{margin-bottom:2px}.turn-actions-latest{display:flex;flex-direction:column}.turn-expand-btn{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px 4px;font-size:11px;font-family:inherit;transition:color .15s;margin-bottom:2px}.turn-expand-btn:hover{color:var(--text-secondary)}.turn-expand-btn svg{flex-shrink:0}.turn-ask{border-top:1px solid var(--border-light);padding:8px}.message pre{background:var(--code-bg);padding:16px;border-radius:8px;overflow-x:auto;margin:10px 0;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:13px;line-height:1.5}.message code{font-family:SF Mono,Fira Code,Consolas,monospace;background:var(--code-bg);padding:2px 6px;border-radius:4px;font-size:.9em}.message pre code{background:none;padding:0}.cursor-blink{display:inline-block;width:2px;height:1em;background:var(--text-primary);margin-left:2px;animation:blink 1s infinite;vertical-align:text-bottom}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.typing-indicator{display:flex;gap:4px;padding:16px 0}.typing-indicator span{width:8px;height:8px;background:var(--text-secondary);border-radius:50%;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-8px);opacity:1}}.loading-more,.load-more-hint{text-align:center;padding:8px 0;font-size:12px;color:var(--text-muted)}.load-more-hint{cursor:pointer;opacity:.6;transition:opacity .2s}.load-more-hint:hover{opacity:1}.markdown-body{line-height:1.65;word-wrap:break-word;font-size:14px}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-top:1.25em;margin-bottom:.5em;font-weight:600;line-height:1.35;color:var(--text-primary)}.markdown-body h1{font-size:1.5em}.markdown-body h2{font-size:1.25em}.markdown-body h3{font-size:1.1em}.markdown-body h4{font-size:1em}.markdown-body h1:first-child,.markdown-body h2:first-child,.markdown-body h3:first-child{margin-top:0}.markdown-body p{margin:.7em 0}.markdown-body p:first-child{margin-top:0}.markdown-body p:last-child{margin-bottom:0}.markdown-body ul,.markdown-body ol{padding-left:1.75em;margin:.7em 0}.markdown-body li{margin:.3em 0}.markdown-body li>p{margin:.3em 0}.markdown-body blockquote{margin:.7em 0;padding:.5em 1em;border-left:3px solid var(--border-color);background:var(--bg-user-msg);color:var(--text-secondary);border-radius:0 8px 8px 0}.markdown-body hr{border:none;border-top:1px solid var(--border-color);margin:1.5em 0}.table-scroll-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.markdown-body table{border-collapse:collapse;width:100%;margin:1em 0;font-size:.9em;border-radius:8px;overflow:hidden;table-layout:fixed}.table-scroll-wrapper table{margin:0}.markdown-body th,.markdown-body td{border:1px solid var(--border-color);padding:10px 14px;text-align:left;word-wrap:break-word;word-break:break-word;overflow-wrap:break-word}.markdown-body th{background:var(--bg-sidebar);font-weight:600}.markdown-body tr:nth-child(2n){background:var(--bg-user-msg)}.markdown-body a{color:var(--text-secondary);text-decoration:none}.markdown-body a:hover{text-decoration:underline;color:var(--accent-blue-hover)}.markdown-body img{max-width:100%;height:auto;border-radius:8px}.markdown-body code{font-family:SF Mono,Fira Code,Consolas,monospace;background:var(--inline-code-bg);color:var(--text-primary);padding:2px 6px;border-radius:4px;font-size:.875em}.markdown-body pre{margin:0;padding:1em;overflow-x:auto;font-size:13px;line-height:1.6;background:var(--code-bg);color:var(--code-text)}.markdown-body pre code{background:none;color:inherit;padding:0;font-size:inherit}.code-block-wrapper{position:relative;margin:1em 0;border-radius:8px;overflow:hidden;background:var(--code-bg)}.code-block-wrapper:first-child{margin-top:0}.code-block-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:var(--code-header-bg);color:var(--code-text)}.code-lang{font-size:12px;color:var(--text-muted);font-family:SF Mono,Fira Code,Consolas,monospace}.code-copy-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:4px 8px;border:none;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer;font-size:12px;transition:color .15s}.code-copy-btn:hover{color:var(--code-text)}.copy-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s}.copy-btn:hover{background:var(--bg-user-msg);color:var(--text-primary)}.copy-btn.small{width:24px;height:24px}.hljs{background:transparent!important;padding:0!important;color:var(--code-text)!important}.user-attachments-indicator{margin-top:8px}.attachments-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--tool-bg);border:1px solid var(--border-color);border-radius:16px;font-size:12px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.attachments-badge:hover{background:var(--sidebar-hover);color:var(--text-primary)}.attachments-badge .badge-icon{font-size:14px}.attachments-badge .badge-text{font-weight:500}.attachments-badge .badge-toggle{display:flex;align-items:center;transition:transform .2s ease}.attachments-badge .badge-toggle.expanded{transform:rotate(180deg)}.attachments-badge .badge-toggle svg{opacity:.6}.user-attachments{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.user-attachment-item{border-radius:12px;overflow:hidden;background:var(--bg-main);border:1px solid var(--border-color)}.user-attachment-item.is-image{max-width:300px;cursor:pointer;transition:transform .15s,box-shadow .15s}.user-attachment-item.is-image:hover{transform:scale(1.02);box-shadow:0 4px 12px #00000026}.user-attachment-image{display:block;max-width:100%;max-height:200px;object-fit:contain;border-radius:12px}.image-preview-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;cursor:zoom-out;opacity:0;transition:opacity .2s ease}.image-preview-overlay.visible{opacity:1}.image-preview-img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:8px;cursor:default;box-shadow:0 8px 32px #0006}.user-attachment-file{display:flex;align-items:center;gap:8px;padding:10px 14px;min-width:150px;max-width:250px}.user-attachment-file .file-icon{font-size:20px;flex-shrink:0}.user-attachment-file .file-name{font-size:13px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message.user{display:flex;flex-direction:column;align-items:flex-end}.message.user .message-content{word-break:break-word;white-space:pre-wrap}.message.user .user-attachments{justify-content:flex-end}.message.user-question,.message.tool-use:has(.ask-card),.message.tool-use:has(.ask-summary){align-self:stretch;max-width:100%;padding:0;background:transparent;border:none}.ask-card{border:1px solid var(--border-color);border-radius:12px;padding:16px 18px;background:var(--bg-main);max-width:560px;border-left:3px solid var(--accent-blue)}.ask-card.ask-waiting{border-left-color:#f59e0b}.ask-summary{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:8px;background:#22c55e14;border:1px solid rgba(34,197,94,.2);border-left:3px solid #22c55e;font-size:13px;color:var(--text-secondary);max-width:560px}.ask-summary-icon{color:#22c55e;font-weight:700;flex-shrink:0}.ask-summary-text{font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ask-icon-row{display:flex;align-items:center;gap:6px;margin-bottom:12px}.ask-icon{font-size:16px}.ask-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.ask-question{margin-bottom:12px}.ask-question:last-of-type{margin-bottom:0}.ask-q-text{font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:10px;line-height:1.5}.ask-q-chip{display:inline-block;background:var(--accent-blue);color:#fff;font-size:10px;font-weight:700;padding:1px 7px;border-radius:8px;margin-right:6px;vertical-align:middle;letter-spacing:.3px}.ask-options{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.ask-opt{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--border-color);border-radius:10px;padding:9px 12px;background:transparent;cursor:pointer;text-align:left;transition:border-color .15s,background .15s;color:var(--text-primary);font-size:13px}.ask-opt:hover:not(:disabled){border-color:var(--accent-blue);background:#2563eb08}.ask-opt.selected{border-color:var(--accent-blue);background:#2563eb0f}.ask-opt:disabled{opacity:.5;cursor:default}.ask-opt-radio{flex-shrink:0;width:16px;height:16px;border-radius:50%;border:2px solid var(--border-color);margin-top:1px;transition:border-color .15s,background .15s;box-sizing:border-box}.ask-opt-radio.checked{border-color:var(--accent-blue);background:var(--accent-blue);box-shadow:inset 0 0 0 3px var(--bg-main)}.ask-opt-body{display:flex;flex-direction:column;gap:2px;min-width:0}.ask-opt-label{font-weight:600;font-size:13px}.ask-opt-desc{font-size:12px;color:var(--text-secondary);line-height:1.3}.ask-custom{margin-top:6px}.ask-custom input{width:100%;box-sizing:border-box;padding:8px 12px;border:1px solid var(--border-color);border-radius:10px;background:transparent;color:var(--text-primary);font-size:13px;font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.ask-custom input:focus{border-color:var(--accent-blue, #4a9eff);box-shadow:0 0 0 2px #4a9eff1f}.ask-actions{margin-top:12px;display:flex;justify-content:flex-end}.ask-submit{display:inline-flex;align-items:center;gap:6px;padding:7px 18px;background:var(--accent-blue);color:#fff;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,opacity .15s}.ask-submit:hover:not(:disabled){background:var(--accent-blue-hover)}.ask-submit:disabled{opacity:.4;cursor:default}.ask-waiting-hint{display:flex;align-items:center;gap:6px;margin-top:10px;font-size:12px;color:var(--text-secondary)}.ask-waiting-spinner{width:12px;height:12px;border:2px solid var(--border-color);border-top-color:var(--accent-blue);border-radius:50%;animation:spin .8s linear infinite}.diff-view{border:1px solid var(--border-color);border-radius:8px;overflow:hidden;margin:12px 0;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:12px;line-height:1.5}.diff-header{display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--diff-header-bg);border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:12px}.diff-header .file-path{color:var(--text-primary);font-weight:500}.diff-header .diff-stats{display:flex;gap:8px}.diff-header-actions{margin-left:auto;display:flex;align-items:center;gap:4px}.diff-header .additions{color:var(--diff-add-text)}.diff-header .deletions{color:var(--diff-del-text)}.diff-content{overflow-x:auto;position:relative}.git-col-diff-wrapper{flex:1;position:relative;min-height:0;display:flex}.git-col-diff-wrapper>.git-col-diff{flex:1;min-width:0}.diff-scrollbar-markers{flex:0 0 14px;position:relative;width:14px;pointer-events:auto;cursor:pointer;z-index:10;background:var(--bg-sidebar);border-left:1px solid var(--border-color)}.diff-marker{position:absolute;right:2px;width:10px;min-height:3px;border-radius:1px}.diff-marker.addition{background:var(--diff-add-text);opacity:.8}.diff-marker.deletion{background:var(--diff-del-text);opacity:.8}.diff-marker.modification{background:#dcdcaa;opacity:.8}.diff-table{width:100%;border-collapse:collapse;background:var(--code-bg)}.diff-line{line-height:1.6}.diff-line-num{width:1%;min-width:40px;padding:0 8px;text-align:right;color:var(--diff-line-num);user-select:none;vertical-align:top;border-right:1px solid var(--border-color)}.diff-line-num.old{background:var(--diff-del-bg)}.diff-line-num.new{background:var(--diff-add-bg)}.diff-line-content{padding:0 12px;white-space:pre-wrap;word-break:break-all}.diff-line.addition{background:var(--diff-add-bg)}.diff-line.addition .diff-line-content{color:var(--diff-add-text)}.diff-line.deletion{background:var(--diff-del-bg)}.diff-line.deletion .diff-line-content{color:var(--diff-del-text)}.diff-side.old .diff-line.modification{background:var(--diff-del-bg)}.diff-side.old .diff-line.modification .diff-line-content{color:var(--diff-del-text)}.diff-side.new .diff-line.modification{background:var(--diff-add-bg)}.diff-side.new .diff-line.modification .diff-line-content{color:var(--diff-add-text)}.diff-line.context .diff-line-content{color:var(--code-text)}.diff-highlight-del{background:var(--diff-del-border);border-radius:2px}.diff-highlight-add{background:var(--diff-add-border);border-radius:2px}.diff-line-content .hl-kw{color:#569cd6}.diff-line-content .hl-bi{color:#4ec9b0}.diff-line-content .hl-st{color:#ce9178}.diff-line-content .hl-nm{color:#b5cea8}.diff-line-content .hl-cm{color:#6a9955;font-style:italic}.diff-line-content .hl-op{color:#d4d4d4}.diff-line-content .hl-dc{color:#dcdcaa}.diff-line-content .hl-mc{color:#569cd6}.diff-line-content .hl-pp{color:#c586c0}.diff-line-content .hl-at{color:#9cdcfe}.diff-line-content .hl-tg{color:#569cd6}.diff-line-content .hl-pr,.diff-line-content .hl-vr{color:#9cdcfe}.diff-line-content .hl-hd{color:#569cd6;font-weight:700}.diff-line-content .hl-bd{font-weight:700}.diff-line-content .hl-lk{color:#569cd6;text-decoration:underline}.diff-line-content .hl-ky{color:#9cdcfe}.diff-line-content .hl-sc{color:#dcdcaa}.light .diff-line-content .hl-kw{color:#00f}.light .diff-line-content .hl-bi{color:#267f99}.light .diff-line-content .hl-st{color:#a31515}.light .diff-line-content .hl-nm{color:#098658}.light .diff-line-content .hl-cm{color:green;font-style:italic}.light .diff-line-content .hl-op{color:#000}.light .diff-line-content .hl-dc{color:#795e26}.light .diff-line-content .hl-mc{color:#00f}.light .diff-line-content .hl-pp{color:#af00db}.light .diff-line-content .hl-at{color:red}.light .diff-line-content .hl-tg{color:maroon}.light .diff-line-content .hl-pr,.light .diff-line-content .hl-vr{color:#001080}.light .diff-line-content .hl-hd{color:#0451a5;font-weight:700}.light .diff-line-content .hl-ky{color:#001080}.light .diff-line-content .hl-sc{color:#795e26}.diff-line.addition .diff-line-content .hl-kw,.diff-line.addition .diff-line-content .hl-bi,.diff-line.addition .diff-line-content .hl-st,.diff-line.addition .diff-line-content .hl-nm,.diff-line.addition .diff-line-content .hl-op,.diff-line.addition .diff-line-content .hl-dc,.diff-line.addition .diff-line-content .hl-mc,.diff-line.addition .diff-line-content .hl-pp,.diff-line.addition .diff-line-content .hl-at,.diff-line.addition .diff-line-content .hl-tg,.diff-line.addition .diff-line-content .hl-pr,.diff-line.addition .diff-line-content .hl-vr,.diff-line.addition .diff-line-content .hl-ky,.diff-line.addition .diff-line-content .hl-sc,.diff-line.deletion .diff-line-content .hl-kw,.diff-line.deletion .diff-line-content .hl-bi,.diff-line.deletion .diff-line-content .hl-st,.diff-line.deletion .diff-line-content .hl-nm,.diff-line.deletion .diff-line-content .hl-op,.diff-line.deletion .diff-line-content .hl-dc,.diff-line.deletion .diff-line-content .hl-mc,.diff-line.deletion .diff-line-content .hl-pp,.diff-line.deletion .diff-line-content .hl-at,.diff-line.deletion .diff-line-content .hl-tg,.diff-line.deletion .diff-line-content .hl-pr,.diff-line.deletion .diff-line-content .hl-vr,.diff-line.deletion .diff-line-content .hl-ky,.diff-line.deletion .diff-line-content .hl-sc{opacity:.85}.diff-line.context .diff-line-content .hl-cm{color:#6a9955}.light .diff-line.context .diff-line-content .hl-cm{color:green}.diff-split{display:flex}.diff-split .diff-side{flex:1;min-width:0;overflow-x:auto}.diff-split .diff-side.old{border-right:1px solid var(--border-color)}.diff-split .diff-table{width:100%}.diff-expand{display:flex;align-items:center;justify-content:center;padding:6px 12px;background:var(--diff-header-bg);color:var(--text-muted);font-size:11px;cursor:pointer;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.diff-expand:hover{background:var(--sidebar-hover);color:var(--text-secondary)}.tool-message{border:1px solid var(--border-color);border-radius:12px;overflow:hidden;margin:8px 0;background:var(--bg-sidebar)}.tool-message-header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--bg-sidebar);cursor:pointer;transition:background .15s}.tool-message-header:hover{background:var(--sidebar-hover)}.tool-message-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:var(--bg-main);color:var(--text-secondary);font-size:14px}.tool-message-icon.running{animation:tool-pulse 1.5s ease-in-out infinite}@keyframes tool-pulse{0%,to{opacity:1}50%{opacity:.5}}.tool-message-info{flex:1;min-width:0}.tool-message-name{font-size:13px;font-weight:500;color:var(--text-primary);display:flex;align-items:center;gap:6px}.tool-message-name .tool-badge{font-size:10px;padding:2px 6px;border-radius:4px;background:var(--text-muted);color:var(--bg-main);font-weight:600;text-transform:uppercase}.tool-message-summary{font-size:12px;color:var(--text-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-message-toggle{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:transform .2s}.tool-message.expanded .tool-message-toggle{transform:rotate(180deg)}.tool-message-body{display:none;border-top:1px solid var(--border-color)}.tool-message.expanded .tool-message-body{display:block}.tool-message-content{padding:12px 16px;background:var(--code-bg);color:var(--code-text);font-family:SF Mono,Fira Code,Consolas,monospace;font-size:12px;line-height:1.5;overflow-x:auto;white-space:pre-wrap;word-break:break-all;max-height:300px;overflow-y:auto}.tool-message-status{display:flex;align-items:center;gap:6px;font-size:11px;padding:6px 12px;background:var(--bg-main);border-top:1px solid var(--border-color)}.tool-message-status.success{color:var(--success)}.tool-message-status.error{color:var(--error)}.exec-status-card{background:var(--bg-main);border:1px solid var(--border-color);border-radius:10px;overflow:hidden;margin-bottom:12px}.exec-status-header{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--bg-sidebar)}.exec-status-indicator{width:8px;height:8px;border-radius:50%;background:var(--text-muted)}.exec-status-indicator.active{background:var(--text-secondary);animation:status-pulse 1.5s ease-in-out infinite}@keyframes status-pulse{0%,to{box-shadow:0 0 #b0b0b066}50%{box-shadow:0 0 0 6px #b0b0b000}}.exec-status-title{flex:1;font-size:13px;font-weight:500;color:var(--text-primary)}.exec-status-time{font-size:11px;color:var(--text-muted);font-family:SF Mono,Monaco,monospace}.exec-status-body{padding:10px 14px}.exec-status-tool{font-size:12px;color:var(--text-secondary);font-family:SF Mono,Monaco,monospace;word-break:break-all}.tool-history-modern{display:flex;flex-direction:column;gap:2px}.tool-history-modern .history-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;transition:background .15s}.tool-history-modern .history-item:hover{background:var(--sidebar-hover)}.tool-history-modern .history-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;background:var(--bg-main);font-size:11px}.tool-history-modern .history-icon.done{color:var(--success)}.tool-history-modern .history-icon.running{color:var(--text-secondary)}.tool-history-modern .history-name{flex:1;font-size:12px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tool-history-modern .history-time{font-size:10px;color:var(--text-muted);font-family:SF Mono,Monaco,monospace}.tool-line{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted);padding:1px 0}.tool-line.expandable,.tool-line.has-file{cursor:pointer}.tool-line.expandable:hover,.tool-line.has-file:hover{color:var(--text-secondary)}.tool-line-icon{font-size:12px;flex-shrink:0}.tool-line-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:12px}.tool-line-status{flex-shrink:0;font-size:12px;font-weight:600;margin-left:auto}.tool-line-status.completed{color:var(--success)}.tool-line-status.running{display:flex;align-items:center}.tool-line-time{flex-shrink:0;font-size:11px;color:var(--text-secondary);margin-left:8px;font-variant-numeric:tabular-nums}.tool-dots{display:inline-flex;align-items:center;gap:3px}.tool-dots span{width:4px;height:4px;border-radius:50%;background:var(--text-muted);animation:toolDotBounce 1.2s ease-in-out infinite}.tool-dots span:nth-child(2){animation-delay:.15s}.tool-dots span:nth-child(3){animation-delay:.3s}@keyframes toolDotBounce{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.tool-line.running{color:var(--text-secondary)}.tool-line.completed{opacity:.7}.tool-line-toggle{flex-shrink:0;color:var(--text-muted);transition:transform .2s;display:flex;align-items:center;padding:2px;border-radius:3px;cursor:pointer}.tool-line-toggle:hover{color:var(--text-secondary);background:#8080801a}.tool-line.expanded .tool-line-toggle{transform:rotate(180deg)}.tool-expand{margin:3px 0 4px 18px;border-radius:6px;overflow:hidden;border:1px solid var(--border-color);max-height:400px;overflow-y:auto}.tool-expand-code{background:var(--code-bg);padding:0}.tool-expand-code pre{margin:0;padding:10px 12px;overflow-x:auto}.tool-expand-code code{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:12px;line-height:1.5;color:var(--code-text);background:none;padding:0;white-space:pre-wrap;word-break:break-all}.bash-output{border-top:1px solid var(--border-color)}.bash-output-header{font-size:11px;color:var(--text-muted);padding:4px 12px;background:var(--bg-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.bash-output-content{margin:0;padding:10px 12px;max-height:300px;overflow-y:auto}.bash-output-content code{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:12px;line-height:1.5;color:var(--code-text);background:none;padding:0;white-space:pre-wrap;word-break:break-all}.diff-compact{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:12px;line-height:1.5}.diff-compact .diff-line{padding:1px 10px;white-space:pre-wrap;word-break:break-all}.diff-compact .diff-line.del{background:var(--diff-del-bg);color:var(--diff-del-text);border-left:3px solid var(--diff-del-border)}.diff-compact .diff-line.add{background:var(--diff-add-bg);color:var(--diff-add-text);border-left:3px solid var(--diff-add-border)}.diff-compact .diff-line.more{color:var(--text-muted);font-style:italic;background:var(--bg-sidebar);text-align:center;font-size:11px;padding:3px 10px}.tool-result-line{display:inline-block;color:var(--success);font-size:12px;padding:2px 0}.todo-list{display:flex;flex-direction:column;gap:3px;padding:3px 0}.todo-item{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary);padding:1px 0}.todo-item.completed{color:var(--text-muted)}.todo-item.completed .todo-text{text-decoration:line-through;opacity:.7}.todo-item.in_progress{color:var(--text-primary)}.todo-checkbox{width:16px;height:16px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:4px;font-size:10px;flex-shrink:0}.todo-item.completed .todo-checkbox{background:var(--success);border-color:var(--success);color:var(--bg-main)}.todo-item.in_progress .todo-checkbox{border-color:var(--text-secondary)}.todo-spinner{width:8px;height:8px;border:1.5px solid var(--border-color);border-top-color:var(--text-primary);border-radius:50%;animation:spin .8s linear infinite}.todo-text{flex:1}.input-area{padding:16px 24px 24px;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));background:var(--bg-main);flex-shrink:0}.context-usage-hint{font-size:11px;font-weight:500;opacity:.6;cursor:default;margin-right:2px}.context-usage-hint.context-ok{color:var(--success)}.context-usage-hint.context-warn{color:#eab308}.context-usage-hint.context-danger{color:#ef4444;opacity:.8}.attachments-preview{max-width:min(90%,960px);margin:0 auto 12px;display:flex;flex-wrap:wrap;gap:8px}.attachment-item{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-input-wrapper);border-radius:8px;font-size:13px;max-width:200px}.attachment-thumb{width:32px;height:32px;object-fit:cover;border-radius:4px}.attachment-icon{font-size:16px}.attachment-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.attachment-remove{width:18px;height:18px;border:none;background:var(--text-secondary);color:var(--bg-main);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;flex-shrink:0;transition:background .15s}.attachment-remove:hover{background:var(--error)}.input-hints{display:flex;align-items:center;justify-content:flex-end;max-width:min(90%,960px);margin:0 auto 4px;gap:8px;font-size:12px}.input-hints-spacer{flex:1}.input-wrapper{position:relative;max-width:min(90%,960px);margin:0 auto;display:flex;align-items:center;gap:12px;background:var(--bg-input-wrapper);border-radius:24px;padding:12px 12px 12px 20px;min-height:48px;transition:box-shadow .2s}.input-wrapper:focus-within{box-shadow:0 0 0 2px var(--text-secondary)}.input-wrapper textarea,.textarea-wrapper textarea{flex:1;border:none;background:transparent;color:var(--text-primary);caret-color:var(--text-primary);font-size:16px;resize:none;max-height:120px;line-height:1.5;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-user-select:text;user-select:text;touch-action:manipulation;pointer-events:auto;opacity:1;-webkit-text-fill-color:var(--text-primary)}.input-wrapper textarea::placeholder,.textarea-wrapper textarea::placeholder{color:var(--text-secondary);-webkit-text-fill-color:var(--text-secondary)}.input-wrapper textarea:focus,.textarea-wrapper textarea:focus{outline:none}.textarea-wrapper{flex:1;position:relative}.textarea-wrapper textarea{width:100%}.slash-autocomplete{position:absolute;bottom:calc(100% + 6px);left:0;right:0;max-height:240px;overflow-y:auto;background:var(--bg-input);border:1px solid var(--border-color);border-radius:10px;padding:4px;box-shadow:0 4px 16px #00000026;z-index:100}.slash-group-label{font-size:11px;color:var(--text-secondary);padding:6px 12px 2px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.slash-group-separator{height:1px;background:var(--border-color);margin:4px 8px}.slash-autocomplete-item{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--text-primary);transition:background .1s;gap:12px}.slash-autocomplete-item:hover,.slash-autocomplete-item.active{background:var(--sidebar-hover)}.slash-cmd-name{font-family:SF Mono,Fira Code,Consolas,monospace;font-weight:500;flex-shrink:0}.slash-cmd-desc{font-size:12px;color:var(--text-secondary);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.input-area,.input-wrapper,.input-wrapper textarea,.textarea-wrapper textarea{-webkit-transform:none;transform:none}.file-input-hidden{position:absolute;width:0;height:0;overflow:hidden;opacity:0;pointer-events:none}.attach-btn{width:36px;height:36px;border:none;border-radius:50%;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s;flex-shrink:0;color:var(--text-secondary)}.attach-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.attach-btn svg{fill:currentColor}.send-btn{width:36px;height:36px;border:none;border-radius:50%;background:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s;flex-shrink:0}.send-btn:hover:not(:disabled){opacity:.8}.send-btn:disabled{opacity:.3;cursor:not-allowed}.send-btn svg{width:18px;height:18px;fill:var(--bg-main)}.send-btn.stop-btn{background:#c45c5c;position:relative}.send-btn.stop-btn:hover{background:#d44a4a}[data-theme=dark] .send-btn.stop-btn{background:#8c5555}[data-theme=dark] .send-btn.stop-btn:hover{background:#a05050}.send-btn.stop-btn svg{width:16px;height:16px}.session-item.empty-hint{color:var(--text-secondary);cursor:default;font-size:13px;text-align:center}.session-item.history-session{opacity:.8}.session-item.history-session:hover{opacity:1}.session-item.disabled{opacity:.4;cursor:not-allowed}.session-item.disabled:hover{opacity:.5;background:transparent}.offline-badge{font-size:10px;padding:1px 5px;background:var(--text-muted);color:var(--bg-main);border-radius:4px;flex-shrink:0}.incomplete-badge{font-size:10px;padding:1px 5px;background:#e67e22;color:#fff;border-radius:4px;flex-shrink:0}.loading-spinner-small{display:inline-block;width:12px;height:12px;border:2px solid var(--text-muted);border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite;margin-left:6px;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.loading-hint{padding:12px;text-align:center;color:var(--text-muted);font-size:13px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--bg-main);border-radius:12px;width:90%;max-width:480px;box-shadow:0 8px 32px #0000004d;border:1px solid var(--border-color)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color)}.modal-header h3{font-size:16px;font-weight:600;margin:0}.modal-close{background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s,color .2s}.modal-close:hover{background:var(--bg-user-msg);color:var(--text-primary)}.modal-body{padding:20px}.modal-footer{padding:16px 20px;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:12px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:14px;font-weight:500;margin-bottom:8px;color:var(--text-primary)}.form-group input{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-input);color:var(--text-primary);font-size:14px;font-family:SF Mono,Fira Code,Consolas,monospace;transition:border-color .2s}.form-group input:focus{outline:none;border-color:var(--text-secondary)}.form-group input::placeholder{color:var(--text-secondary)}.form-hint{font-size:12px;color:var(--text-secondary);margin-top:6px}.form-label{font-size:12px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.quick-paths{margin-top:16px}.path-chips{display:flex;flex-wrap:wrap;gap:8px}.path-chip{padding:6px 12px;border:1px solid var(--border-color);border-radius:16px;background:var(--bg-sidebar);color:var(--text-primary);font-size:12px;font-family:SF Mono,Fira Code,Consolas,monospace;cursor:pointer;transition:background .2s,border-color .2s}.path-chip:hover{background:var(--bg-user-msg);border-color:var(--text-secondary)}.btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s,opacity .2s}.btn-primary{background:#fff;color:#171717;border:none}[data-theme=light] .btn-primary{background:#171717;color:#fff}.btn-primary:hover:not(:disabled){opacity:.85}.btn-primary:disabled{opacity:.35;cursor:not-allowed}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-user-msg)}.modal-large{max-width:600px;max-height:80vh;display:flex;flex-direction:column}.modal-large .modal-body{flex:1;overflow-y:auto}.input-with-button{display:flex;gap:8px}.input-with-button input{flex:1}.input-with-button .btn{white-space:nowrap;padding:10px 16px}.history-sessions{margin-top:20px}.history-sessions-list{max-height:300px;overflow-y:auto;border:1px solid var(--border-color);border-radius:8px;margin-top:8px}.history-session-item{padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .2s}.history-session-item:last-child{border-bottom:none}.history-session-item:hover{background:var(--sidebar-hover)}.history-session-item.selected{background:var(--session-active);border-left:3px solid var(--text-primary)}.history-session-item .session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.history-session-item .session-title{font-weight:500;font-size:14px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70%}.history-session-item .session-date{font-size:12px;color:var(--text-secondary)}.history-session-item .session-preview{font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px}.history-session-item .session-id{font-size:11px;color:var(--text-secondary);font-family:SF Mono,Fira Code,Consolas,monospace;opacity:.7}.history-empty{text-align:center;padding:40px 20px;color:var(--text-secondary)}.history-empty .empty-icon{font-size:48px;margin-bottom:12px}.history-empty .empty-text{font-size:14px}.theme-toggle{width:40px;height:40px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-main);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s}.theme-toggle:hover{background:var(--bg-user-msg);border-color:var(--text-secondary)}.theme-toggle svg{width:20px;height:20px;color:var(--text-primary)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@media(max-width:768px){.sidebar{display:none}.messages{max-width:none;padding:0 16px}.message.user{max-width:90%}.chat-header{padding:6px 10px;justify-content:space-between}.chat-title-group{max-width:none;flex:1;min-width:0;text-align:left}.context-usage-hint{display:none}.header-right{position:static;transform:none;flex-shrink:0;gap:4px}.input-area{padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}.input-wrapper{max-width:none;padding:10px 10px 10px 14px}.attachments-preview{max-width:none}.input-wrapper textarea,.textarea-wrapper textarea{font-size:16px}}@media(max-width:480px){.messages{padding:0 10px}.input-area{padding:8px 10px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))}}.form-select{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-input);color:var(--text-primary);font-size:14px;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='%236e6e80'%3E%3Cpath d='M7 10l5 5 5-5H7z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.form-select:focus{outline:none;border-color:var(--text-secondary)}.form-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.form-label-row label{margin-bottom:0}.btn-link{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:13px;padding:4px 8px}.btn-link:hover{text-decoration:underline;color:var(--text-primary)}.btn-link:disabled{color:var(--text-secondary);cursor:not-allowed}.btn-link.loading:after{content:"";animation:loading-dots 1.2s infinite}@keyframes loading-dots{0%{content:"."}33%{content:".."}66%{content:"..."}}.folders-list{max-height:200px;overflow-y:auto;border:1px solid var(--border-color);border-radius:8px}.folder-item{padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .15s}.folder-item:last-child{border-bottom:none}.folder-item:hover{background:var(--sidebar-hover)}.folder-item.selected{background:var(--session-active)}.folder-path{font-size:13px;font-family:SF Mono,Monaco,monospace;color:var(--text-primary);word-break:break-all}.folder-info{font-size:12px;color:var(--text-secondary);margin-top:4px}.folders-empty{padding:20px;text-align:center;border:1px solid var(--border-color);border-radius:8px}.folders-empty .empty-text{color:var(--text-secondary);font-size:13px}.connection-status{display:flex;align-items:center;justify-content:center;padding:8px 12px;margin:0 8px 8px;border-radius:8px;font-size:13px;background:var(--warning-bg, rgba(255, 193, 7, .15));color:var(--warning-text, #ffc107);border:1px solid var(--warning-border, rgba(255, 193, 7, .3))}.connection-status.disconnected{background:var(--error-bg, rgba(244, 67, 54, .15));color:var(--error-text, #f44336);border-color:var(--error-border, rgba(244, 67, 54, .3))}.connection-status .status-text{display:flex;align-items:center;gap:6px}.connection-status .spinner-mini{width:12px;height:12px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.connection-status .reconnect-btn{margin-left:8px;padding:2px 8px;border:1px solid currentColor;border-radius:4px;background:transparent;color:inherit;font-size:12px;cursor:pointer;transition:all .15s}.connection-status .reconnect-btn:hover{background:#ffffff1a}.agent-status-bar{display:flex;align-items:center;gap:8px;padding:10px 12px;margin-bottom:8px}.agent-status-bar .status-dot{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);flex-shrink:0}.agent-status-bar .status-dot.online{background:var(--success)}.agent-status-bar .agent-count{font-size:14px;color:var(--text-secondary)}.modal-wide{max-width:700px;max-height:80vh;display:flex;flex-direction:column}.modal-wide .modal-body{flex:1;overflow:hidden}.modal-two-columns{display:flex;gap:20px;height:450px;max-height:calc(80vh - 120px)}.modal-left-column{flex:0 0 260px;display:flex;flex-direction:column;overflow:visible}.modal-right-column{flex:1;display:flex;flex-direction:column;border-left:1px solid var(--border-color);padding-left:20px;overflow:hidden}.modal-placeholder{flex:1;display:flex;align-items:center;justify-content:center;border-left:1px solid var(--border-color);padding-left:20px}.placeholder-column{justify-content:center}.placeholder-text{color:var(--text-secondary);font-size:14px;text-align:center}.column-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:13px;font-weight:500;color:var(--text-primary)}.column-header .count-badge{background:var(--text-muted);color:var(--bg-main);font-size:11px;padding:2px 8px;border-radius:10px;margin-left:8px}.scrollable-list{flex:1;min-height:0;overflow-y:auto;border:1px solid var(--border-color);border-radius:8px}.list-item{padding:12px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .15s}.list-item:last-child{border-bottom:none}.list-item:hover{background:var(--sidebar-hover)}.list-item.selected{background:var(--session-active);border-left:3px solid var(--text-primary)}.list-item .item-title{font-size:13px;color:var(--text-primary);font-family:SF Mono,Monaco,monospace;word-break:break-all}.list-item .item-info{font-size:11px;color:var(--text-secondary);margin-top:4px}.list-empty{padding:24px 16px;text-align:center;color:var(--text-secondary);font-size:13px}.session-item-detailed .item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.session-item-detailed .item-title{font-weight:500;font-family:SF Mono,Monaco,monospace}.session-item-detailed .item-date{font-size:11px;color:var(--text-secondary)}.session-item-detailed .item-preview{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-list{height:180px;overflow-y:auto;border:1px solid var(--border-color);border-radius:6px;font-size:12px}.mini-list-item{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .15s}.mini-list-item:last-child{border-bottom:none}.mini-list-item:hover{background:var(--sidebar-hover)}.mini-list-item.selected{background:var(--session-active)}.mini-list-item .item-path{flex:1;font-family:SF Mono,Monaco,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:8px}.mini-list-item .item-count{flex-shrink:0;background:var(--bg-user-msg);padding:2px 6px;border-radius:8px;font-size:11px;color:var(--text-secondary)}.folders-section{margin-bottom:12px}.folders-section .column-header{font-size:12px;margin-bottom:8px}.btn-block{width:100%}.modal-left-column .modal-actions{margin-top:auto;padding-top:16px}.modal-three-col{max-width:900px;max-height:80vh;display:flex;flex-direction:column}.modal-three-col .modal-body{flex:1;overflow:hidden;padding:16px}.modal-three-columns{display:flex;gap:16px;height:420px}.modal-col-fixed{flex:0 0 180px;display:flex;flex-direction:column}.modal-col-fixed .form-group{margin-bottom:12px}.modal-col-fixed .form-group label{font-size:12px;margin-bottom:4px}.modal-col-fixed .form-group input,.modal-col-fixed .form-group select{font-size:13px;padding:8px 10px}.modal-col-fixed .modal-actions{margin-top:auto}.modal-col-scroll{flex:1;display:flex;flex-direction:column;min-width:0;border-left:1px solid var(--border-color);padding-left:16px}.modal-col-scroll .scrollable-list{flex:1;min-height:0;overflow-y:auto}.modal-col-scroll .column-header{flex-shrink:0}.list-empty-full{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:13px;border:1px solid var(--border-color);border-radius:8px}.modal-progressive{max-width:580px;max-height:80vh;display:flex;flex-direction:column;transition:max-width .3s ease}.modal-progressive.show-sessions{max-width:860px}.modal-progressive .modal-body{flex:1;overflow:hidden;padding:16px}.modal-progressive-columns{display:flex;gap:0;height:420px}.prog-col{display:flex;flex-direction:column;min-width:0;transition:flex .3s ease,opacity .3s ease,padding .3s ease}.prog-col-config{flex:0 0 180px;padding-right:16px}.prog-col-config .form-group{margin-bottom:12px}.prog-col-config .form-group label{font-size:12px;margin-bottom:4px}.prog-col-config .form-group input,.prog-col-config .form-group select{font-size:13px;padding:8px 10px}.prog-col-config .modal-actions{margin-top:auto}.prog-col-folders{flex:1;border-left:1px solid var(--border-color);padding-left:16px;padding-right:16px}.prog-col-sessions{flex:0;width:0;opacity:0;overflow:hidden;border-left:1px solid transparent;padding-left:0}.modal-progressive.show-sessions .prog-col-config{flex:0 0 160px}.modal-progressive.show-sessions .prog-col-folders{flex:0 0 240px}.modal-progressive.show-sessions .prog-col-sessions{flex:1;width:auto;opacity:1;border-left-color:var(--border-color);padding-left:16px}.prog-col .scrollable-list{flex:1;min-height:0;overflow-y:auto;border:1px solid var(--border-color);border-radius:8px}.prog-col .column-header{flex-shrink:0;margin-bottom:8px}.prog-col-config .form-group{display:flex;flex-direction:column}.prog-col-config .form-group label{display:block;font-size:12px;font-weight:500;margin-bottom:6px;color:var(--text-primary)}.prog-col-config .form-group input,.prog-col-config .form-group select{width:100%;box-sizing:border-box}.modal-progressive{height:520px;max-height:80vh}.modal-progressive-columns{height:100%;max-height:420px}@media(max-width:768px){.chat-page{grid-template-columns:1fr}.sidebar{display:none}.chat-page.show-sidebar .sidebar{display:flex;position:fixed;inset:0;z-index:100;background:var(--bg-sidebar)}.sidebar-bottom{padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))}.modal-progressive{max-width:95vw;width:95vw;height:auto;max-height:90vh}.modal-progressive.show-sessions{max-width:95vw}.modal-progressive-columns{flex-direction:column;height:auto;max-height:none;gap:16px}.prog-col{transition:none}.prog-col-config{flex:none;padding-right:0;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.prog-col-folders{flex:none;border-left:none;padding-left:0;padding-right:0}.prog-col-folders .scrollable-list{max-height:200px}.prog-col-sessions{flex:none;width:auto;opacity:1;overflow:visible;border-left:none;padding-left:0;display:none}.modal-progressive.show-sessions .prog-col-config,.modal-progressive.show-sessions .prog-col-folders{flex:none}.modal-progressive.show-sessions .prog-col-sessions{display:flex}.modal-progressive.show-sessions .prog-col-sessions .scrollable-list{max-height:200px}.prog-col .scrollable-list{max-height:220px}.prog-col .list-item{padding:10px 12px}}@media(max-width:480px){.modal{margin:8px;max-height:calc(100vh - 16px)}.modal-progressive{width:calc(100vw - 16px)}.prog-col-config .form-group input,.prog-col-config .form-group select{font-size:16px}}.info-grid{display:flex;flex-direction:column;gap:8px}.info-row{display:flex;justify-content:space-between;align-items:center;font-size:13px}.info-label{color:var(--text-secondary)}.info-value{color:var(--text-primary);display:flex;align-items:center;gap:6px}.info-value.mono{font-family:SF Mono,Monaco,monospace;font-size:12px}.context-usage{display:flex;flex-direction:column;gap:6px}.usage-bar{height:6px;background:var(--border-color);border-radius:3px;overflow:hidden}.usage-fill{height:100%;background:var(--text-secondary);border-radius:3px;transition:width .3s ease}.usage-text{font-size:11px;color:var(--text-secondary);font-family:SF Mono,Monaco,monospace}.new-chat-btn.btn-secondary{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.new-chat-btn.btn-secondary:hover{background:var(--sidebar-hover);color:var(--text-primary);border-color:var(--text-secondary)}.new-chat-btn.btn-secondary svg{fill:currentColor}.sidebar-header-mobile{display:none;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--border-color)}.sidebar-header-mobile .sidebar-title{font-size:16px;font-weight:600;color:var(--text-primary)}.sidebar-close-btn{width:36px;height:36px;border:none;border-radius:8px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:background .15s,color .15s}.sidebar-close-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.header-sidebar-toggle{display:none;width:32px;height:32px;border:none;background:transparent;border-radius:6px;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;flex-shrink:0;transition:color .15s ease,background .15s ease}.header-sidebar-toggle:hover{background:var(--sidebar-hover);color:var(--text-primary)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:99}@media(max-width:768px){.header-sidebar-toggle,.sidebar-header-mobile{display:flex}.sidebar-overlay{display:block}.chat-page{grid-template-columns:1fr}.sidebar{position:fixed;top:0;left:0;bottom:0;width:300px;z-index:100;transform:translate(-100%);transition:transform .3s ease}.chat-page.show-sidebar .sidebar{transform:translate(0)}.chat-header{min-height:48px}.chat-header h1{font-size:16px}.recovery-banner{flex-direction:column;align-items:flex-start;gap:10px;margin:8px}.recovery-banner .recovery-actions{width:100%;justify-content:flex-end}.table-scroll-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:1em 0}.table-scroll-wrapper table{table-layout:auto;width:auto;min-width:100%;margin:0}.markdown-body th,.markdown-body td{padding:8px 10px;font-size:.85em;min-width:80px}}.recovery-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-user-msg);color:var(--text-primary);border:1px solid var(--border-color);border-radius:10px;margin:12px}.recovery-banner .recovery-icon{font-size:18px}.recovery-banner .recovery-text{flex:1;font-size:13px}.recovery-banner .recovery-text strong{display:block;font-weight:600;margin-bottom:2px}.recovery-banner .recovery-actions{display:flex;gap:8px}.recovery-banner .btn-recover{padding:6px 14px;border:none;border-radius:6px;background:#fff;color:#171717;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .15s}[data-theme=light] .recovery-banner .btn-recover{background:#171717;color:#fff}.recovery-banner .btn-recover:hover{opacity:.85}.recovery-banner .btn-dismiss{padding:6px 10px;border:none;border-radius:6px;background:transparent;color:inherit;font-size:12px;cursor:pointer;opacity:.7}.recovery-banner .btn-dismiss:hover{opacity:1;background:#ffffff1a}.resume-modal{width:90%;max-width:520px;height:75vh;display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:var(--bg-main);box-shadow:0 24px 48px #0003}.resume-modal-controls{position:relative;padding:20px 52px 16px 20px;display:flex;flex-direction:column;gap:12px;border-bottom:1px solid var(--border-color);background:var(--bg-sidebar)}.resume-close-btn{position:absolute;top:16px;right:16px;width:28px;height:28px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;color:var(--text-muted);transition:all .15s;z-index:1}.resume-close-btn:hover{background:var(--bg-user-msg);color:var(--text-primary)}.resume-control-row{display:flex;align-items:center;gap:12px}.resume-control-label{width:60px;flex-shrink:0;font-size:13px;font-weight:500;color:var(--text-secondary)}.resume-select-wrapper{flex:1;position:relative}.resume-select{width:100%;padding:10px 32px 10px 12px;font-size:14px}.resume-select:focus{outline:none;border-color:var(--accent-blue, #4a9eff);box-shadow:0 0 0 2px #4a9eff1f}.resume-select-wrapper .select-arrow{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.resume-input{flex:1;padding:10px 12px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-input);color:var(--text-primary);font-size:14px;font-family:SF Mono,Monaco,monospace;transition:border-color .15s,box-shadow .15s}.resume-input:focus{outline:none;border-color:var(--accent-blue, #4a9eff);box-shadow:0 0 0 2px #4a9eff1f}.resume-input::placeholder{color:var(--text-muted)}.workdir-input-group{display:flex;gap:6px;flex:1}.workdir-input-group .resume-input{min-width:0}.workdir-browse-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:38px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-input);color:var(--text-secondary);cursor:pointer;transition:all .15s}.workdir-browse-btn:hover{background:var(--sidebar-hover);color:var(--text-primary);border-color:var(--text-secondary)}.resume-modal-tabs{display:flex;border-bottom:1px solid var(--border-color);background:var(--bg-sidebar)}.resume-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border:none;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.resume-tab:hover{color:var(--text-primary)}.resume-tab.active{color:var(--text-primary);border-bottom-color:var(--text-primary)}.resume-tab .tab-badge{font-size:11px;padding:2px 8px;background:var(--border-color);border-radius:10px;color:var(--text-muted)}.resume-tab.active .tab-badge{background:var(--text-primary);color:var(--bg-main)}.resume-modal-content{flex:1;min-height:0;display:flex;flex-direction:column}.resume-panel{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.resume-panel-header-left{display:flex;align-items:center;gap:6px}.resume-panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;font-size:13px;font-weight:500;color:var(--text-secondary);border-bottom:1px solid var(--border-light);flex-shrink:0}.resume-panel-header .header-tag{font-weight:400;color:var(--text-muted);margin-left:4px}.refresh-btn-mini{width:24px;height:24px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;color:var(--text-muted);transition:all .15s}.refresh-btn-mini:hover:not(:disabled){background:var(--sidebar-hover);color:var(--text-primary)}.refresh-btn-mini:disabled{opacity:.4;cursor:not-allowed}.resume-panel-list{overflow-y:auto;padding:8px;flex:1;min-height:0}.resume-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:10px;cursor:pointer;transition:background .15s;margin-bottom:4px}.resume-list-item:last-child{margin-bottom:0}.resume-list-item:hover{background:var(--sidebar-hover)}.resume-list-item.selected{background:var(--session-active)}.resume-list-item .item-main{flex:1;min-width:0}.resume-list-item .item-name{font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resume-list-item .item-sub{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resume-list-item .item-preview{font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.resume-list-item .item-badge{flex-shrink:0;font-size:12px;padding:4px 10px;background:var(--bg-user-msg);border-radius:12px;color:var(--text-muted);margin-left:12px}.resume-list-item .item-time{flex-shrink:0;font-size:12px;color:var(--text-muted);margin-left:12px}.session-item-compact{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:8px;cursor:pointer;transition:background .15s;margin-bottom:2px}.session-item-compact:last-child{margin-bottom:0}.session-item-compact:hover{background:var(--sidebar-hover)}.session-item-compact .item-name{flex:1;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:12px}.session-item-compact .item-time{flex-shrink:0;font-size:11px;color:var(--text-muted)}.folder-item-compact{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:8px;cursor:pointer;transition:background .15s;margin-bottom:2px}.folder-item-compact:last-child{margin-bottom:0}.folder-item-compact:hover{background:var(--sidebar-hover)}.folder-item-compact.selected{background:var(--session-active)}.folder-item-compact .item-path{flex:1;font-size:13px;font-family:SF Mono,Monaco,monospace;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:12px;direction:rtl;text-align:left}.folder-item-compact .item-badge{flex-shrink:0;font-size:12px;padding:4px 10px;background:var(--bg-user-msg);border-radius:12px;color:var(--text-muted)}.resume-panel-loading{display:flex;align-items:center;justify-content:center;padding:40px 20px}.resume-panel-empty{display:flex;align-items:center;justify-content:center;padding:40px 20px;color:var(--text-muted);font-size:14px;text-align:center}.resume-modal-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:12px}.resume-modal-empty .empty-icon{font-size:48px;opacity:.8}.resume-modal-empty .empty-text{font-size:14px;color:var(--text-muted)}.resume-modal-footer{padding:12px 20px;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:10px}.resume-modal-footer .modern-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-primary);padding:7px 18px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease}.resume-modal-footer .modern-btn:hover:not(:disabled){border-color:var(--accent-blue);color:var(--accent-blue);background:color-mix(in srgb,var(--accent-blue) 8%,transparent)}.resume-modal-footer .modern-btn:disabled{opacity:.35;cursor:not-allowed}.resume-modal-footer .modern-btn svg{width:14px;height:14px}.modal-modern{width:90%;max-width:480px;max-height:85vh;display:flex;flex-direction:column;border-radius:16px;overflow:hidden;background:var(--bg-main);box-shadow:0 24px 48px #0003}.modal-modern-wide{max-width:780px}.modal-modern-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color)}.modal-modern-header h3{font-size:18px;font-weight:600;margin:0;color:var(--text-primary)}.modal-close-btn{width:32px;height:32px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px;color:var(--text-muted);transition:all .15s}.modal-close-btn:hover{background:var(--bg-user-msg);color:var(--text-primary)}.modal-modern-body{flex:1;padding:24px;overflow-y:auto;min-height:0}.modal-modern-body-panels{display:flex;flex-direction:column;padding:0;overflow:hidden}.modal-modern-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-color);background:var(--bg-sidebar)}.modern-form-section{margin-bottom:20px}.modern-form-section:last-child{margin-bottom:0}.modern-label{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.modern-label-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.modern-label-inline{font-size:12px;font-weight:500;color:var(--text-muted);margin-right:8px;white-space:nowrap}.modern-select-wrapper{position:relative}.modern-select-wrapper.compact{min-width:140px}.modern-select{width:100%;padding:12px 36px 12px 14px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-input);color:var(--text-primary);font-size:14px;cursor:pointer;appearance:none;transition:border-color .15s,box-shadow .15s}.modern-select:focus{outline:none;border-color:var(--text-secondary);box-shadow:0 0 0 3px #8080801a}.select-arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.modern-input{width:100%;padding:12px 14px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-input);color:var(--text-primary);font-size:14px;font-family:SF Mono,Fira Code,Consolas,monospace;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.modern-input.compact{padding:10px 12px;font-size:13px}.modern-input:focus{outline:none;border-color:var(--accent-blue, #4a9eff);box-shadow:0 0 0 2px #4a9eff1f}.modern-input::placeholder{color:var(--text-muted)}.modern-hint{font-size:12px;color:var(--text-muted);margin-top:6px}.modern-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.modern-btn.primary{background:var(--text-primary);color:var(--bg-main)}.modern-btn.primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.modern-btn.primary:disabled{opacity:.4;cursor:not-allowed;transform:none}.modern-btn.secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}.modern-btn.secondary:hover{background:var(--bg-user-msg);color:var(--text-primary)}.modern-link-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:6px;transition:all .15s}.modern-link-btn:hover:not(:disabled){background:var(--bg-user-msg);color:var(--text-primary)}.modern-link-btn:disabled{opacity:.5;cursor:not-allowed}.modern-icon-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:6px;transition:all .15s}.modern-icon-btn:hover:not(:disabled){background:var(--bg-user-msg);color:var(--text-primary)}.modern-icon-btn:disabled{opacity:.4;cursor:not-allowed}.mini-spinner{width:12px;height:12px;border:2px solid var(--border-color);border-top-color:var(--text-primary);border-radius:50%;animation:spin .8s linear infinite}.modern-chips{display:flex;flex-wrap:wrap;gap:8px}.modern-chip{display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--border-color);border-radius:20px;background:var(--bg-sidebar);color:var(--text-primary);font-size:13px;cursor:pointer;transition:all .15s}.modern-chip:hover{border-color:var(--text-secondary);background:var(--bg-user-msg)}.modern-chip.active{border-color:var(--text-primary);background:var(--text-primary);color:var(--bg-main)}.modern-chip.active .chip-badge{background:#fff3;color:inherit}.chip-icon{font-size:14px}.chip-text{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-badge{font-size:11px;padding:2px 6px;background:var(--bg-user-msg);border-radius:10px;color:var(--text-muted)}.modern-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.modern-empty.large{min-height:300px}.empty-visual{font-size:48px;margin-bottom:16px;opacity:.8}.empty-title{font-size:16px;font-weight:500;color:var(--text-primary);margin-bottom:8px}.empty-desc{font-size:14px;color:var(--text-muted)}.modern-controls-bar{display:flex;align-items:flex-end;gap:16px;padding:16px 20px;border-bottom:1px solid var(--border-color);background:var(--bg-sidebar)}.modern-control-group{display:flex;flex-direction:column;gap:4px}.modern-control-group.flex-grow{flex:1;min-width:0}.modern-tabs{display:none;border-bottom:1px solid var(--border-color);background:var(--bg-sidebar)}.modern-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:14px 16px;border:none;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s}.modern-tab:hover:not(:disabled){color:var(--text-primary)}.modern-tab.active{color:var(--text-primary);border-bottom-color:var(--text-primary)}.modern-tab:disabled{opacity:.5;cursor:not-allowed}.tab-badge{font-size:11px;padding:2px 8px;background:var(--border-color);border-radius:10px;color:var(--text-muted)}.modern-tab.active .tab-badge{background:var(--text-primary);color:var(--bg-main)}.modern-panels{display:flex;flex:1;min-height:0;overflow:hidden}.modern-panel{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;border-right:1px solid var(--border-color);overflow:hidden}.modern-panel:last-child{border-right:none}.modern-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-light);flex-shrink:0}.modern-panel-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-primary)}.modern-panel-title svg{color:var(--text-muted)}.title-tag{font-weight:400;color:var(--text-muted);font-size:12px;margin-left:4px}.modern-panel-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:8px;min-height:0;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.modern-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:10px;cursor:pointer;transition:background .15s;margin-bottom:4px}.modern-list-item:last-child{margin-bottom:0}.modern-list-item:hover{background:var(--sidebar-hover)}.modern-list-item.selected{background:var(--session-active)}.modern-list-item .item-main{flex:1;min-width:0}.modern-list-item .item-name{font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modern-list-item .item-sub{font-size:12px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modern-list-item .item-preview{font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.modern-list-item .item-badge{flex-shrink:0;font-size:12px;padding:4px 10px;background:var(--bg-user-msg);border-radius:12px;color:var(--text-muted);margin-left:12px}.modern-list-item .item-time{flex-shrink:0;font-size:12px;color:var(--text-muted);margin-left:12px}.modern-list-item.session-type{flex-direction:column;align-items:flex-start}.modern-list-item.session-type .item-main{width:100%;margin-bottom:4px}.modern-list-item.session-type .item-time{margin-left:0}.modern-panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:var(--text-muted);font-size:14px;text-align:center}@media(max-width:640px){.modal-modern{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0}.modal-modern-wide{max-width:100%}.modern-tabs{display:flex}.modern-panels{flex-direction:column}.modern-panel{flex:1;border-right:none}.mobile-hidden{display:none!important}.modern-controls-bar{flex-direction:column;align-items:stretch;gap:12px}.modern-control-group{width:100%}.modern-select-wrapper.compact{min-width:100%}.modal-modern-footer{flex-direction:column-reverse;gap:8px}.modal-modern-footer .modern-btn{width:100%}.modern-chips{max-height:200px;overflow-y:auto}}.chat-container{position:relative}.session-loading-overlay{position:absolute;inset:0;background:var(--bg-main);display:flex;align-items:center;justify-content:center;z-index:50;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.session-loading-content{display:flex;flex-direction:column;align-items:center;gap:20px}.session-loading-spinner{width:36px;height:36px;border:3px solid var(--border-color);border-top-color:var(--text-secondary);border-radius:50%;animation:spin .8s linear infinite}.session-loading-text{color:var(--text-muted);font-size:14px}.workbench-panel{width:0;min-width:0;background:var(--bg-workbench);border-right:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden;transition:width .3s ease;position:relative;flex-shrink:0}.workbench-panel.expanded{width:calc(75% - 260px);min-width:300px;flex-shrink:1}.workbench-panel.expanded.maximized{flex:1;width:auto;max-width:none}@media(max-width:1024px){.workbench-panel.expanded{max-width:340px}.main-content.workbench-active{min-width:0}.main-content.workbench-active .messages{max-width:none;padding:0 16px}.main-content.workbench-active .input-wrapper,.main-content.workbench-active .attachments-preview{max-width:none}}@media(max-width:768px){.workbench-panel{position:fixed;inset:0;width:100%!important;z-index:60;border-right:none;transform:translate(-100%);transition:transform .3s ease}.workbench-panel.expanded{transform:translate(0);width:100%!important;max-width:none}.main-content.workbench-active{flex:1;min-width:0}}.resize-handle{position:absolute;top:0;right:-3px;width:6px;height:100%;cursor:col-resize;z-index:10;transition:background .15s;touch-action:none}.resize-handle:hover,.resize-handle:active{background:var(--accent-blue);opacity:.5}@media(pointer:coarse){.resize-handle{width:20px;right:-10px}}.workbench-content{display:flex;flex-direction:column;height:100%}.workbench-tabs{display:flex;align-items:center;padding:0 8px;flex-shrink:0;height:48px;gap:2px}.wb-tab{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;background:transparent;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-muted);border-radius:6px;transition:all .15s;white-space:nowrap}.wb-tab:hover{background:var(--sidebar-hover);color:var(--text-primary)}.wb-tab.active{background:var(--session-active);color:var(--text-primary)}.wb-tab svg{flex-shrink:0}.tab-badge{min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0 4px;background:var(--text-muted);color:var(--bg-main);font-size:10px;font-weight:600;border-radius:8px}.wb-tab.active .tab-badge{background:var(--text-secondary)}.wb-tab-spacer{flex:1}.wb-tab-action{width:32px;height:32px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;color:var(--text-muted);transition:all .15s}.wb-tab-action:hover{background:var(--sidebar-hover);color:var(--text-primary)}.workbench-tab-content{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}@media(max-width:640px){.modal-overlay{align-items:stretch}.resume-modal,.modal-modern{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0}.input-wrapper{gap:8px;padding:8px 8px 8px 12px;min-height:44px}.attach-btn,.send-btn{width:32px;height:32px}}.terminal-tab{display:flex;flex-direction:column;height:100%}.terminal-toolbar{display:flex;align-items:center;gap:6px;padding:6px 10px;border-bottom:1px solid var(--border-color);flex-shrink:0;background:var(--bg-workbench)}.terminal-toolbar button{display:flex;align-items:center;gap:4px;padding:3px 8px;border:none;background:transparent;color:var(--text-secondary);font-size:13px;border-radius:4px;cursor:pointer;transition:all .15s}.terminal-toolbar button:hover{background:var(--sidebar-hover);color:var(--text-primary)}.terminal-toolbar button:disabled{opacity:.4;cursor:not-allowed}.terminal-placeholder{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:13px;flex-direction:column;gap:12px}.terminal-placeholder button{padding:8px 16px;border:none;background:var(--sidebar-hover);color:var(--text-primary);font-size:13px;border-radius:6px;cursor:pointer;transition:all .15s}.terminal-placeholder button:hover{background:var(--sidebar-hover)}.file-tree-panel{width:200px;border-right:1px solid var(--border-color);overflow-y:auto;flex-shrink:0;background:var(--bg-workbench)}.file-tree-header{display:flex;align-items:center;gap:4px;padding:4px 6px}.file-tree-header .tree-path-input{flex:1;min-width:0;padding:2px 6px;border:1px solid transparent;border-radius:2px;background:var(--bg-input);color:var(--text-primary);font-size:13px;font-family:SF Mono,Fira Code,Consolas,monospace;outline:none}.file-tree-header .tree-path-input:focus{border-color:var(--accent-blue)}.file-tree-header.vscode-header{padding:0;flex-direction:column;gap:0}.vscode-folder-row{display:flex;align-items:center;width:100%;padding:4px 8px;cursor:pointer;gap:4px;min-height:28px;user-select:none}.vscode-folder-row:hover{background:var(--sidebar-hover)}.vscode-folder-row .root-arrow{flex-shrink:0;width:16px;display:flex;align-items:center;justify-content:center}.vscode-folder-name{flex:1;min-width:0;font-size:11px;font-weight:600;color:var(--text-muted);letter-spacing:.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vscode-folder-actions{display:flex;align-items:center;gap:1px;flex-shrink:0}.vscode-action-btn{width:22px;height:22px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:3px;color:var(--text-muted);padding:0}.vscode-action-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.tree-item{display:flex;align-items:center;gap:4px;padding:2px 8px;cursor:pointer;font-size:13px;color:var(--text-secondary);transition:background .05s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:24px;min-height:24px;max-height:24px;flex-shrink:0;position:relative;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.tree-item:hover{background:var(--sidebar-hover)}.tree-item .tree-icon{flex-shrink:0;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.tree-item .tree-icon svg{width:16px;height:16px;vertical-align:middle}.tree-item .tree-name{overflow:hidden;text-overflow:ellipsis;font-size:13px;letter-spacing:.01em}.tool-open-editor{width:22px;height:22px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;color:var(--accent-blue);transition:all .15s;flex-shrink:0;opacity:.6;margin-left:2px}.tool-line:hover .tool-open-editor{opacity:1}.tool-open-editor:hover{color:var(--accent-blue);background:#2563eb1f;opacity:1}.wb-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--border-color);background:var(--bg-main);color:var(--text-secondary);font-size:13px;border-radius:4px;cursor:pointer;transition:all .15s;white-space:nowrap}.wb-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.wb-btn:disabled{opacity:.4;cursor:not-allowed}.wb-btn.active{background:var(--session-active);color:var(--text-primary)}.wb-btn-sm{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid var(--border-color);background:var(--bg-main);color:var(--text-secondary);border-radius:3px;cursor:pointer;transition:all .15s;flex-shrink:0}.wb-btn-sm:hover{background:var(--sidebar-hover);color:var(--text-primary)}.terminal-instances{flex:1;min-height:0;position:relative;display:flex}.terminal-split{display:flex;width:100%;height:100%}.split-horizontal{flex-direction:row}.split-vertical{flex-direction:column}.split-child{overflow:hidden;min-width:0;min-height:0}.split-divider{flex-shrink:0;background:var(--border-color);transition:background .15s;touch-action:none}.split-divider:hover{background:var(--accent-blue)}.divider-horizontal{width:4px;cursor:col-resize}.divider-vertical{height:4px;cursor:row-resize}@media(pointer:coarse){.divider-horizontal{width:20px}.divider-vertical{height:20px}}.terminal-pane{display:flex;flex-direction:column;width:100%;height:100%;position:relative}.terminal-pane.active{outline:1px solid var(--accent-blue);outline-offset:-1px}.xterm-mount{flex:1;min-height:0;background:var(--bg-workbench)}.xterm-mount .xterm .xterm-viewport{scrollbar-width:thin;scrollbar-color:rgba(128,128,128,.3) transparent}.xterm-mount .xterm .xterm-viewport::-webkit-scrollbar{width:8px}.xterm-mount .xterm .xterm-viewport::-webkit-scrollbar-track{background:transparent}.xterm-mount .xterm .xterm-viewport::-webkit-scrollbar-thumb{background:#8080804d;border-radius:4px}.xterm-mount .xterm .xterm-viewport::-webkit-scrollbar-thumb:hover{background:#80808080}.terminal-status-text{font-size:12px;color:var(--error);margin-left:auto}.terminal-placeholder .placeholder-icon{opacity:.5}.terminal-placeholder .placeholder-text{color:var(--text-muted);font-size:13px}.tree-path-input{flex:1;min-width:0;padding:2px 6px;border:1px solid var(--border-color);border-radius:3px;background:var(--bg-input);color:var(--text-primary);font-size:12px;font-family:SF Mono,Fira Code,Consolas,monospace;outline:none}.tree-path-input:focus{border-color:var(--accent-blue)}.file-tree-content{overflow-y:auto;flex:1}.file-tree-loading{padding:12px;text-align:center;color:var(--text-muted);font-size:12px}.file-tree-list{padding:2px 0}.tree-item.tree-parent{color:var(--text-muted);font-style:italic}.tree-item.tree-dir{font-weight:500}.tree-item.tree-file{font-weight:400}.tree-item .tree-size{margin-left:auto;font-size:10px;color:var(--text-muted);flex-shrink:0}.tree-empty{padding:12px;text-align:center;color:var(--text-muted);font-size:12px}.explorer-tab{display:flex;flex-direction:column;height:100%;background:var(--bg-workbench)}.explorer-toggle{display:flex;gap:2px;padding:4px 6px;border-bottom:1px solid var(--border-color);background:var(--bg-workbench);flex-shrink:0}.explorer-toggle .wb-btn.active{background:var(--session-active);color:var(--accent-blue);border-color:var(--accent-blue)}.git-status-view{flex:1;display:flex;flex-direction:column;overflow:hidden}.git-loading{padding:16px;text-align:center;color:var(--text-muted);font-size:12px;display:flex;align-items:center;justify-content:center;gap:8px}.git-error-msg{padding:12px;color:var(--diff-del-text);font-size:12px}.git-workdir-row{display:flex;align-items:center;gap:4px;padding:4px 8px;border-bottom:1px solid var(--border-color);flex-shrink:0}.git-workdir-input{flex:1;min-width:0;padding:3px 6px;font-size:11px;border:1px solid var(--border-color);border-radius:3px;background:var(--bg-main);color:var(--text-primary);outline:none;font-family:SF Mono,Fira Code,Consolas,monospace}.git-workdir-input:focus{border-color:var(--accent-blue)}.git-branch{display:flex;align-items:center;gap:6px;padding:6px 8px;font-size:13px;color:var(--text-secondary);flex-shrink:0}.git-branch svg{color:var(--accent-blue);flex-shrink:0}.git-file-count{margin-left:auto;font-size:11px;color:var(--text-muted)}.git-clean,.git-placeholder{padding:24px;text-align:center}.git-file-list{flex-shrink:0;overflow-y:auto}.git-file-group{flex-shrink:0}.group-header{display:flex;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;cursor:pointer;user-select:none;color:var(--text-secondary)}.group-header:hover{background:var(--sidebar-hover)}.group-chevron{width:16px;height:16px;transition:transform .15s;flex-shrink:0}.group-chevron.collapsed{transform:rotate(-90deg)}.group-header.staged{color:var(--diff-add-text)}.group-header.modified{color:#e5a50a}.group-header.untracked{color:var(--text-muted)}.group-count{margin-left:auto;background:var(--bg-input-wrapper);padding:0 6px;border-radius:8px;font-size:10px;min-width:18px;text-align:center;line-height:16px}.git-file-item{display:flex;align-items:center;gap:6px;padding:1px 12px 1px 28px;cursor:pointer;font-size:13px;height:22px;color:var(--text-primary);transition:background .05s;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.git-file-icon{flex-shrink:0;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center}.git-file-icon svg{width:16px;height:16px}.git-file-item:hover{background:var(--sidebar-hover)}.git-file-item.selected{background:var(--session-active)}.git-file-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0}.git-file-dir{color:var(--text-muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:10;min-width:0;margin-left:4px}.git-status-badge{margin-left:auto;flex-shrink:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;border-radius:3px;font-family:SF Mono,Fira Code,Consolas,monospace}.git-status-badge.staged{color:var(--diff-add-text)}.git-status-badge.modified{color:#e5a50a}.git-status-badge.untracked{color:var(--text-muted)}[data-theme=dark] .git-status-badge.untracked,[data-theme=dark] .group-header.untracked{color:#73c991}.explorer-diff-panel,.git-col-diff{flex:1;overflow:auto;min-height:100px;display:flex;flex-direction:column}.explorer-diff-panel .diff-header,.git-col-diff .diff-header{position:sticky;top:0;z-index:1}.explorer-diff-panel .diff-line.hunk,.git-col-diff .diff-line.hunk{background:var(--diff-header-bg)}.explorer-diff-panel .diff-line.hunk .diff-line-content,.git-col-diff .diff-line.hunk .diff-line-content{color:var(--text-muted);font-size:.85em}.explorer-diff-panel .diff-line.hunk .diff-line-num,.git-col-diff .diff-line.hunk .diff-line-num{color:var(--text-muted);font-size:.8em}.explorer-diff-panel .diff-table,.git-col-diff .diff-table{background:var(--bg-workbench);font-size:inherit;line-height:1.4}.explorer-diff-panel .diff-line-content,.git-col-diff .diff-line-content{color:var(--text-primary)}.explorer-diff-panel .diff-line.context .diff-line-content,.git-col-diff .diff-line.context .diff-line-content{color:var(--text-secondary)}.git-col-placeholder,.file-col-placeholder{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:12px}.git-three-col{flex-direction:row!important}.git-col-files{flex:0 0 220px;min-width:160px;max-width:300px;overflow-y:auto;border-right:1px solid var(--border-color)}.file-two-col{flex-direction:row!important}.file-col-tree{min-width:120px;overflow-y:auto;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.file-col-content{flex:1;overflow:auto;min-width:0;min-height:0;display:flex;flex-direction:column}.file-col-content .file-viewer-code{background:var(--bg-workbench);color:var(--text-primary);flex:1}.file-col-content .file-viewer-code code{color:inherit}.file-col-content .file-viewer-code .hljs{color:#1a1a1a!important}.file-col-content .hljs-keyword,.file-col-content .hljs-type{color:#00f!important}.file-col-content .hljs-built_in{color:#267f99!important}.file-col-content .hljs-string,.file-col-content .hljs-regexp{color:#a31515!important}.file-col-content .hljs-number{color:#098658!important}.file-col-content .hljs-comment,.file-col-content .hljs-doctag{color:green!important}.file-col-content .hljs-function .hljs-title,.file-col-content .hljs-title.function_{color:#795e26!important}.file-col-content .hljs-class .hljs-title,.file-col-content .hljs-title.class_{color:#267f99!important}.file-col-content .hljs-variable,.file-col-content .hljs-attr,.file-col-content .hljs-property{color:#001080!important}.file-col-content .hljs-meta{color:#795e26!important}.file-col-content .hljs-tag,.file-col-content .hljs-name{color:maroon!important}.file-col-content .hljs-attribute{color:#e50000!important}.file-col-content .hljs-selector-tag,.file-col-content .hljs-selector-class,.file-col-content .hljs-selector-id{color:maroon!important}.file-col-content .hljs-literal{color:#00f!important}.file-col-content .hljs-symbol{color:#267f99!important}.file-col-content .hljs-params{color:#001080!important}.file-col-content .hljs-operator,.file-col-content .hljs-punctuation{color:#1a1a1a!important}[data-theme=dark] .file-col-content .file-viewer-code .hljs{color:#d4d4d4!important}[data-theme=dark] .file-col-content .hljs-keyword,[data-theme=dark] .file-col-content .hljs-type{color:#569cd6!important}[data-theme=dark] .file-col-content .hljs-built_in{color:#4ec9b0!important}[data-theme=dark] .file-col-content .hljs-string,[data-theme=dark] .file-col-content .hljs-regexp{color:#ce9178!important}[data-theme=dark] .file-col-content .hljs-number{color:#b5cea8!important}[data-theme=dark] .file-col-content .hljs-comment,[data-theme=dark] .file-col-content .hljs-doctag{color:#6a9955!important}[data-theme=dark] .file-col-content .hljs-function .hljs-title,[data-theme=dark] .file-col-content .hljs-title.function_{color:#dcdcaa!important}[data-theme=dark] .file-col-content .hljs-class .hljs-title,[data-theme=dark] .file-col-content .hljs-title.class_{color:#4ec9b0!important}[data-theme=dark] .file-col-content .hljs-variable,[data-theme=dark] .file-col-content .hljs-attr,[data-theme=dark] .file-col-content .hljs-property{color:#9cdcfe!important}[data-theme=dark] .file-col-content .hljs-meta{color:#dcdcaa!important}[data-theme=dark] .file-col-content .hljs-tag,[data-theme=dark] .file-col-content .hljs-name{color:#569cd6!important}[data-theme=dark] .file-col-content .hljs-attribute{color:#9cdcfe!important}[data-theme=dark] .file-col-content .hljs-selector-tag,[data-theme=dark] .file-col-content .hljs-selector-class,[data-theme=dark] .file-col-content .hljs-selector-id{color:#d7ba7d!important}[data-theme=dark] .file-col-content .hljs-literal{color:#569cd6!important}[data-theme=dark] .file-col-content .hljs-symbol{color:#4ec9b0!important}[data-theme=dark] .file-col-content .hljs-params{color:#9cdcfe!important}[data-theme=dark] .file-col-content .hljs-operator,[data-theme=dark] .file-col-content .hljs-punctuation{color:#d4d4d4!important}.file-browser-view{flex:1;display:flex;flex-direction:column;overflow:hidden}.file-viewer{flex:1;overflow:auto}.file-viewer-header{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;background:var(--bg-workbench);flex-shrink:0}.file-viewer-path{font-size:11px;font-family:SF Mono,Fira Code,Consolas,monospace;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-viewer-code{margin:0;padding:12px;font-size:12px;line-height:1.25;background:var(--code-bg);color:var(--code-text);overflow-x:auto;tab-size:4}.file-tabs-bar{display:flex;align-items:center;background:var(--bg-workbench);overflow-x:auto;flex-shrink:0;min-height:30px}.file-tabs-bar::-webkit-scrollbar{height:2px}.file-tab{display:flex;align-items:center;gap:6px;padding:4px 8px;font-size:13px;color:var(--text-muted);border-right:1px solid var(--border-color);cursor:pointer;white-space:nowrap;transition:background .1s;flex-shrink:0}.file-tab:hover{background:var(--sidebar-hover);color:var(--text-primary)}.file-tab.active{background:var(--bg-main);color:var(--text-primary)}.file-tab-name{max-width:120px;overflow:hidden;text-overflow:ellipsis}.file-tab-close{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:3px;font-size:14px;line-height:1;opacity:0;transition:opacity .1s,background .1s}.file-tab:hover .file-tab-close,.file-tab.active .file-tab-close{opacity:1}.file-tab-close:hover{background:var(--sidebar-hover);color:var(--text-primary)}.file-tab-dirty{color:var(--accent-blue, #4a9eff);font-size:8px;line-height:1;flex-shrink:0}.file-tabs-actions{margin-left:auto;display:flex;align-items:center;gap:4px;flex-shrink:0;padding-right:4px}.zoom-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:3px;background:transparent;color:var(--text-muted);font-size:14px;font-weight:600;cursor:pointer;line-height:1;transition:all .15s;flex-shrink:0}.zoom-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.zoom-label{font-size:10px;color:var(--text-muted);min-width:16px;text-align:center;flex-shrink:0}.file-action-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s}.file-action-btn:hover:not(:disabled){background:var(--sidebar-hover);color:var(--text-primary)}.file-action-btn.active{color:var(--accent-blue, #3b82f6)}.file-action-btn.active:hover:not(:disabled){background:#3b82f626}.file-action-btn:disabled{opacity:.3;cursor:default}.file-tree-splitter{width:4px;cursor:col-resize;background:transparent;flex-shrink:0;transition:background .15s;position:relative;z-index:2;touch-action:none}.file-tree-splitter:hover,.file-tree-splitter:active{background:var(--accent-blue, #4a9eff);opacity:.5}@media(pointer:coarse){.file-tree-splitter{width:20px}}.tree-arrow{display:inline-flex;align-items:center;justify-content:center;width:14px;flex-shrink:0;color:var(--text-muted)}.tree-arrow-spacer{width:14px;flex-shrink:0}.file-editor-container{flex:1;min-height:0;overflow:hidden;position:relative}.file-preview-container{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;position:relative}.file-preview-iframe{width:100%;flex:1;border:none;background:#fff}.file-preview-image{max-width:100%;max-height:100%;object-fit:contain;margin:auto;display:block;padding:16px}.preview-loading{display:flex;align-items:center;gap:8px;padding:24px;color:var(--text-muted);font-size:13px}.preview-error{padding:24px;color:var(--text-danger, #e53e3e);font-size:13px}.preview-unsupported{padding:24px;color:var(--text-muted);font-size:13px;text-align:center}.office-local-preview{flex:1;overflow:auto;padding:8px;background:#fff}.office-local-preview .docx-wrapper{background:#fff!important}.xlsx-sheet-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color);background:var(--bg-workbench);overflow-x:auto;flex-shrink:0}.xlsx-sheet-tab{padding:6px 14px;font-size:12px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap}.xlsx-sheet-tab:hover{color:var(--text-primary)}.xlsx-sheet-tab.active{color:var(--text-primary);border-bottom-color:var(--accent-color, #d97706)}.xlsx-table-wrap{overflow:auto;flex:1}.xlsx-table-wrap table{border-collapse:collapse;font-size:12px;width:100%}.xlsx-table-wrap td,.xlsx-table-wrap th{border:1px solid #ddd;padding:4px 8px;text-align:left;white-space:nowrap}.xlsx-table-wrap th{background:#f5f5f5;font-weight:600}.md-toolbar{display:flex;gap:2px;padding:4px 8px;background:var(--bg-sidebar);border-bottom:1px solid var(--border-color);flex-shrink:0}.md-toggle-btn{padding:3px 12px;font-size:12px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;border-radius:3px;display:flex;align-items:center;gap:2px;transition:background .15s,color .15s}.md-toggle-btn:hover{background:var(--sidebar-hover)}.md-toggle-btn.active{background:var(--accent-color, #d97706);color:#fff;border-color:var(--accent-color, #d97706)}.md-preview-container{overflow-y:auto;padding:20px 24px;flex:1;min-height:0}.md-file-preview{max-width:900px;margin:0 auto}.md-file-preview img{max-width:100%;height:auto}.md-file-preview .mermaid-rendered{text-align:center;margin:16px 0;overflow-x:auto}.md-file-preview .mermaid-rendered svg{max-width:100%;height:auto}.find-replace-bar{display:flex;flex-direction:column;gap:4px;padding:6px 10px;background:var(--bg-workbench);border-bottom:1px solid var(--border-color);flex-shrink:0}.find-row{display:flex;align-items:center;gap:4px}.find-input{flex:1;min-width:0;padding:4px 8px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-main);color:var(--text-main);font-size:12px;font-family:SF Mono,Fira Code,Consolas,monospace;outline:none}.find-input:focus{border-color:var(--accent-blue)}.find-count{font-size:11px;color:var(--text-muted);white-space:nowrap;min-width:36px;text-align:center}.find-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:4px;background:transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0}.find-btn:hover{background:var(--hover-bg);color:var(--text-main)}.find-btn-text{width:auto;padding:0 8px;font-size:11px}.find-option{display:flex;align-items:center;gap:2px;font-size:11px;color:var(--text-muted);cursor:pointer;white-space:nowrap;user-select:none}.find-option input[type=checkbox]{margin:0;width:12px;height:12px;accent-color:var(--accent-blue)}.cm-find-highlight{background:#ffd5004d;border-bottom:1px solid rgba(255,213,0,.6)}.cm-find-current{background:#ff960080;border-bottom:2px solid #ff9600}.cm-find-scrollbar-annotations{position:absolute;top:0;right:0;width:14px;height:100%;pointer-events:none;z-index:6}.cm-find-scrollbar-tick{position:absolute;right:2px;width:10px;height:3px;background:#ffbe00cc;border-radius:1px}.file-editor-container .CodeMirror{height:100%;font-size:13px;font-family:SF Mono,Fira Code,Consolas,monospace;line-height:1.6}.cm-s-material-darker.CodeMirror{background-color:#171716;color:#d0cdc8}.cm-s-material-darker .CodeMirror-gutters{background:#171716;color:#605e5a;border-right:1px solid #2a2826}.cm-s-material-darker .CodeMirror-linenumber{color:#605e5a}.cm-s-material-darker .CodeMirror-cursor{border-left:1.5px solid #d0cdc8}.cm-s-material-darker div.CodeMirror-selected{background:#645f5559}.cm-s-material-darker .CodeMirror-activeline-background{background:#ffffff08}.cm-s-material-darker .cm-keyword{color:#c49cde}.cm-s-material-darker .cm-operator{color:#d0cdc8}.cm-s-material-darker .cm-variable,.cm-s-material-darker .cm-variable-2{color:#a8c4d8}.cm-s-material-darker .cm-variable-3,.cm-s-material-darker .cm-type,.cm-s-material-darker .cm-builtin{color:#8abcaa}.cm-s-material-darker .cm-atom{color:#c49cde}.cm-s-material-darker .cm-number{color:#b5c8a0}.cm-s-material-darker .cm-def{color:#d4c8a0}.cm-s-material-darker .cm-string,.cm-s-material-darker .cm-string-2{color:#c4a882}.cm-s-material-darker .cm-comment{color:#7a7a6e;font-style:italic}.cm-s-material-darker .cm-tag{color:#a8b4c4}.cm-s-material-darker .cm-meta{color:#b89cc4}.cm-s-material-darker .cm-attribute,.cm-s-material-darker .cm-property{color:#a8c4d8}.cm-s-material-darker .cm-qualifier{color:#8abcaa}.cm-s-material-darker .cm-header{color:#a8b4c4;font-weight:700}.cm-s-material-darker .cm-quote{color:#7a7a6e}.cm-s-material-darker .cm-hr{color:#605e5a}.cm-s-material-darker .cm-link{color:#a8b4c4;text-decoration:underline}.cm-s-material-darker .cm-error{color:#d4a0a0;background:transparent}.cm-s-material-darker .CodeMirror-matchingbracket{color:#d8d5d0!important;background:#ffffff1a}.cm-s-default.CodeMirror{background-color:#f6f5f3;color:#2c2c2c}.cm-s-default .CodeMirror-gutters{background:#f3f2ef;color:#9a9a9a;border-right:1px solid #e0ddd8}.cm-s-default .CodeMirror-linenumber{color:#9a9a9a}.cm-s-default .CodeMirror-cursor{border-left:1.5px solid #2c2c2c}.cm-s-default div.CodeMirror-selected{background:#b4afa54d}.cm-s-default .CodeMirror-activeline-background{background:#00000005}.cm-s-default .cm-keyword{color:#7a5aad}.cm-s-default .cm-operator{color:#2c2c2c}.cm-s-default .cm-variable,.cm-s-default .cm-variable-2{color:#1a5276}.cm-s-default .cm-variable-3,.cm-s-default .cm-type,.cm-s-default .cm-builtin{color:#287060}.cm-s-default .cm-atom{color:#7a5aad}.cm-s-default .cm-number{color:#2e7d50}.cm-s-default .cm-def{color:#6b5630}.cm-s-default .cm-string,.cm-s-default .cm-string-2{color:#9c5530}.cm-s-default .cm-comment{color:#8a8a80;font-style:italic}.cm-s-default .cm-tag{color:#705050}.cm-s-default .cm-meta{color:#8a5090}.cm-s-default .cm-attribute{color:#b05030}.cm-s-default .cm-property{color:#1a5276}.cm-s-default .cm-qualifier{color:#287060}.cm-s-default .cm-header{color:#1a5276;font-weight:700}.cm-s-default .cm-quote{color:#8a8a80}.cm-s-default .cm-hr{color:#c0c0b8}.cm-s-default .cm-link{color:#1a5276;text-decoration:underline}.cm-s-default .cm-error{color:#b93535;background:transparent}.cm-s-default .CodeMirror-matchingbracket{color:#2c2c2c!important;background:#00000014}.file-viewer-actions{display:flex;align-items:center;gap:4px}.file-viewer-actions .wb-btn-sm:disabled{opacity:.3;cursor:default}.folder-picker-overlay{position:fixed;inset:0;background:#0006;z-index:1000;display:flex;align-items:center;justify-content:center}.folder-picker-dialog{width:420px;max-height:500px;background:var(--bg-main);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-direction:column;box-shadow:0 8px 32px #0000004d}.folder-picker-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;font-size:13px;font-weight:600;color:var(--text-primary)}.folder-picker-path{display:flex;align-items:center;gap:8px;padding:6px 12px;font-size:11px;font-family:SF Mono,Fira Code,Consolas,monospace;color:var(--text-secondary)}.folder-picker-current{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;direction:rtl;text-align:left}.folder-picker-list{flex:1;overflow-y:auto;min-height:200px;max-height:350px}.folder-picker-item:hover{background:var(--sidebar-hover)}.folder-picker-selected{background:var(--accent-blue, #4a9eff)!important;color:#fff!important}.folder-picker-footer{padding:8px 12px;display:flex;justify-content:flex-end}.diff-mode-toggle{padding:2px 8px;font-size:10px;font-weight:600;border:1px solid var(--border-color);border-radius:4px;background:transparent;color:var(--text-muted);cursor:pointer;transition:all .15s;text-transform:uppercase;letter-spacing:.5px}.diff-mode-toggle:hover{border-color:var(--accent-blue);color:var(--accent-blue);background:var(--sidebar-hover)}.git-status-tab,.files-tab{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}@media(max-width:768px){.file-two-col{flex-direction:column!important}.file-col-tree{flex:1!important;width:100%!important;min-width:0!important}.file-tree-splitter{display:none!important}.file-col-content{display:none}.file-col-placeholder{display:none!important}.files-tab.mobile-editor-view .file-col-tree{display:none}.files-tab.mobile-editor-view .file-col-content{display:flex;flex:1}.files-tab .file-tabs-bar{display:none}.mobile-file-back-bar{display:flex;align-items:center;height:44px;padding:0 8px;border-bottom:1px solid var(--border-color);background:var(--bg-workbench);flex-shrink:0;gap:8px}.mobile-back-btn{display:flex;align-items:center;gap:4px;border:none;background:transparent;color:var(--accent-blue);font-size:14px;cursor:pointer;padding:8px 4px;flex-shrink:0}.mobile-back-btn:active{opacity:.7}.mobile-file-name{flex:1;text-align:center;font-size:13px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.tree-file-actions{display:flex!important}.tree-item[draggable]{-webkit-user-drag:none}}@media(min-width:769px){.mobile-file-back-bar{display:none!important}}.git-file-actions{display:none;margin-left:auto;gap:2px;align-items:center;flex-shrink:0}.git-file-item:hover .git-file-actions{display:flex}.git-file-item:hover .git-status-badge{display:none}.git-action-btn{width:20px;height:20px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:3px;font-size:14px;line-height:20px;text-align:center;padding:0;transition:all .1s}.git-action-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.git-action-btn:disabled{opacity:.4;cursor:default}.git-group-action{width:20px;height:20px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:3px;font-size:14px;line-height:20px;text-align:center;padding:0;margin-left:4px;opacity:0;transition:opacity .1s}.group-header:hover .git-group-action{opacity:1}.git-group-action:hover{background:var(--sidebar-hover);color:var(--text-primary)}.git-group-action:disabled{opacity:.4;cursor:default}.git-commit-section{display:flex;gap:4px;padding:6px 8px;border-top:1px solid var(--border-color);flex-shrink:0}.commit-message-input{flex:1;min-width:0;padding:4px 8px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-main);color:var(--text-primary);font-size:13px;outline:none}.commit-message-input:focus{border-color:var(--accent-blue)}.commit-message-input:disabled{opacity:.5}.commit-btn{padding:4px 12px;border:none;border-radius:4px;background:var(--accent-blue);color:#fff;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .15s}.commit-btn:hover:not(:disabled){opacity:.9}.commit-btn:disabled{opacity:.4;cursor:default}.git-push-btn{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border:1px solid var(--border-color);border-radius:4px;background:transparent;color:var(--text-secondary);font-size:12px;cursor:pointer;margin-left:auto;transition:all .15s}.git-push-btn:hover:not(:disabled){border-color:var(--accent-blue);color:var(--accent-blue)}.git-push-btn:disabled{opacity:.4;cursor:default}.git-op-feedback{padding:4px 8px;font-size:11px;text-align:center;flex-shrink:0;animation:feedbackFadeIn .2s}.git-op-feedback.success{background:#28a74526;color:#28a745}.git-op-feedback.error{background:#dc354526;color:#dc3545}@keyframes feedbackFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.file-search-row{display:flex;align-items:center;padding:2px 6px;gap:2px;flex-shrink:0}.file-search-input{flex:1;min-width:0;padding:4px 8px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-main);color:var(--text-primary);font-size:13px;font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.file-search-input:focus{border-color:var(--accent-blue, #4a9eff);box-shadow:0 0 0 2px #4a9eff1f}.file-search-clear{width:18px;height:18px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:14px;line-height:18px;text-align:center;padding:0;border-radius:3px}.file-search-clear:hover{background:var(--sidebar-hover);color:var(--text-primary)}.file-search-result-item{padding-left:8px!important}.file-search-result-path{margin-left:auto;color:var(--text-muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50%;flex-shrink:10}.file-ops-toolbar{display:flex;align-items:center;gap:4px;padding:3px 8px;border-bottom:1px solid var(--border-color);flex-shrink:0;flex-wrap:wrap}.file-ops-toolbar .wb-btn-sm.active{background:var(--accent-blue);color:#fff}.file-ops-toolbar .wb-btn-sm.file-op-danger{color:var(--error)}.file-ops-toolbar .wb-btn-sm.file-op-danger:hover{background:var(--error);color:#fff}.file-op-feedback{padding:4px 10px;font-size:11px;flex-shrink:0;animation:feedbackFadeIn .2s ease}.file-op-feedback.success{color:var(--success);background:#22c55e14}.file-op-feedback.error{color:var(--error);background:#ef444414}.tree-checkbox{width:13px;height:13px;margin:0 2px 0 0;cursor:pointer;accent-color:var(--accent-blue);flex-shrink:0}.tree-item.tree-selected{background:#2563eb1f}.tree-file-actions{display:none;position:absolute;right:4px;top:0;bottom:0;align-items:center;gap:2px;background:var(--sidebar-hover)}.tree-item:hover .tree-file-actions{display:flex}.tree-item:hover .tree-size{opacity:0}.tree-action-btn{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:3px;padding:0}.tree-action-btn:hover{background:var(--error);color:#fff}.quick-open-overlay{position:fixed;inset:0;background:#0000004d;z-index:100;display:flex;justify-content:center;padding-top:15vh}.quick-open-dialog{width:500px;max-width:90vw;max-height:350px;background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;overflow:hidden;align-self:flex-start}.goto-line-dialog{max-height:50px}.quick-open-input{padding:10px 14px;border:none;border-bottom:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-size:14px;outline:none;width:100%;box-sizing:border-box}.quick-open-input::placeholder{color:var(--text-muted)}.quick-open-list{overflow-y:auto;flex:1}.quick-open-item{display:flex;align-items:center;gap:6px;padding:6px 12px;cursor:pointer;font-size:13px;color:var(--text-primary)}.quick-open-item:hover,.quick-open-item.selected{background:var(--sidebar-hover)}.quick-open-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0}.quick-open-path{margin-left:auto;color:var(--text-muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50%;flex-shrink:10}.proxy-tab{display:flex;flex-direction:column;padding:12px;gap:12px;overflow-y:auto;max-height:400px}.proxy-header{display:flex;align-items:center;gap:8px}.proxy-title{font-size:13px;font-weight:600;color:var(--text-primary)}.proxy-agent-name{font-size:11px;color:var(--text-muted);background:var(--bg-tertiary);padding:2px 6px;border-radius:4px}.proxy-add-form{display:flex;flex-direction:column;gap:6px}.proxy-add-row{display:flex;align-items:center;gap:6px}.proxy-input{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary);padding:5px 8px;border-radius:8px;font-size:12px;font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.proxy-input:focus{border-color:var(--accent-blue, #4a9eff);box-shadow:0 0 0 2px #4a9eff1f}.proxy-input-port{width:70px}.proxy-input-host{width:90px;flex-shrink:1;min-width:60px}.proxy-separator{color:var(--text-muted);font-size:12px;flex-shrink:0;user-select:none}.proxy-port-host{font-size:10px;color:var(--text-muted);margin-left:auto;margin-right:4px;white-space:nowrap}.proxy-input-label{width:60px;flex-shrink:1;min-width:40px}.proxy-input-port::-webkit-outer-spin-button,.proxy-input-port::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.proxy-input-port[type=number]{-moz-appearance:textfield}.proxy-add-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--accent-color);color:#fff;border:none;border-radius:8px;cursor:pointer;flex-shrink:0}.proxy-add-btn:hover:not(:disabled){opacity:.85}.proxy-add-btn:disabled{opacity:.4;cursor:not-allowed}.proxy-list{display:flex;flex-direction:column;gap:2px}.proxy-port-item{display:flex;flex-direction:column;gap:4px;padding:6px 8px;border-radius:8px;background:var(--bg-secondary);transition:background .15s}.proxy-port-item:hover{background:var(--bg-tertiary)}.proxy-port-row{display:flex;align-items:center;gap:8px}.proxy-switch{cursor:pointer;flex-shrink:0}.proxy-switch-track{display:flex;align-items:center;width:28px;height:16px;background:var(--text-muted);opacity:.4;border-radius:8px;position:relative;transition:all .2s}.proxy-switch-track.on{background:#22c55e;opacity:1}.proxy-switch-thumb{position:absolute;left:2px;width:12px;height:12px;background:#fff;border-radius:50%;transition:left .2s}.proxy-switch-track.on .proxy-switch-thumb{left:14px}.proxy-port-url{display:flex;align-items:center;gap:6px;padding:3px 8px 3px 36px;cursor:pointer;border-radius:3px}.proxy-port-url:hover{background:var(--bg-tertiary)}.proxy-port-url code{font-size:11px;color:var(--accent-color);font-family:SF Mono,Cascadia Code,Consolas,monospace;word-break:break-all}.proxy-copy-icon{flex-shrink:0;color:var(--text-muted);opacity:0;transition:opacity .15s}.proxy-port-url:hover .proxy-copy-icon{opacity:1}.proxy-port-num{font-size:13px;font-weight:600;color:var(--text-primary);font-family:SF Mono,Cascadia Code,Consolas,monospace;min-width:50px}.proxy-port-label{font-size:12px;color:var(--text-secondary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proxy-port-actions{display:flex;align-items:center;gap:2px;margin-left:auto;opacity:0;transition:opacity .15s}.proxy-port-item:hover .proxy-port-actions{opacity:1}.proxy-action-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;color:var(--text-muted);cursor:pointer;border-radius:4px;padding:0}.proxy-action-btn:hover:not(:disabled){background:var(--bg-tertiary);color:var(--text-primary)}.proxy-action-btn:disabled{opacity:.3;cursor:not-allowed}.proxy-delete-btn:hover:not(:disabled){color:#ef4444}.proxy-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 12px;text-align:center;color:var(--text-muted);font-size:12px;gap:4px}.proxy-empty p{margin:0}.proxy-hint{font-size:11px;opacity:.7;margin-top:4px!important}.proxy-hint code{background:var(--bg-tertiary);padding:1px 4px;border-radius:3px;font-size:10px}.proxy-info{margin-top:auto;padding-top:8px;border-top:1px solid var(--border-color)}.proxy-info-text{font-size:11px;color:var(--text-muted)}.proxy-info-text code{background:var(--bg-tertiary);padding:1px 4px;border-radius:3px;font-size:10px}.sidebar-icon-btn.has-enabled,.collapsed-icon-btn.has-enabled{color:#22c55e}.proxy-modal{width:420px;max-height:500px;overflow-y:auto;position:relative;padding-top:8px}.agent-dropdown-trigger{position:relative}.dropdown-chevron{color:var(--text-secondary);transition:transform .2s;flex-shrink:0}.dropdown-chevron.open{transform:rotate(180deg)}.agent-dropdown{position:absolute;top:100%;left:-4px;margin-top:4px;min-width:252px;background:var(--bg-main);border-radius:12px;box-shadow:0 4px 24px #0000004d;z-index:100;padding:4px}.agent-dropdown-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;transition:background .15s;font-weight:400}.agent-dropdown-item:hover{background:var(--sidebar-hover)}.agent-dropdown-item.offline{opacity:.5}.agent-dropdown-item .status-dot{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);flex-shrink:0}.agent-dropdown-item .status-dot.online{background:var(--success)}.agent-dropdown-item .status-dot.restarting,.agent-dropdown-item .status-dot.upgrading{background:#f59e0b;animation:pulse-restart 1s infinite}@keyframes pulse-restart{0%,to{opacity:1}50%{opacity:.4}}.agent-dropdown-name{font-size:13px;color:var(--text-primary);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-dropdown-latency{font-size:11px;color:var(--text-secondary);white-space:nowrap}.agent-dropdown-version{font-size:10px;color:var(--text-muted);white-space:nowrap}.agent-dropdown-status{font-size:11px;color:#f59e0b;white-space:nowrap}.agent-dropdown-restart-btn,.agent-dropdown-upgrade-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s;flex-shrink:0}.agent-dropdown-restart-btn:hover:not(:disabled),.agent-dropdown-upgrade-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--accent-color, #3b82f6)}.agent-dropdown-restart-btn:disabled,.agent-dropdown-upgrade-btn:disabled{opacity:.3;cursor:not-allowed}.agent-dropdown-empty{padding:12px;text-align:center;font-size:12px;color:var(--text-secondary)}.proxy-agent-inline{width:100px;flex-shrink:0}.proxy-scheme-inline{width:68px;flex-shrink:0}.proxy-select-wrapper{position:relative;display:flex;align-items:center}.proxy-select{width:100%;padding:6px 28px 6px 8px;font-size:12px}.proxy-select:focus{outline:none;border-color:var(--accent-blue, #4a9eff);box-shadow:0 0 0 2px #4a9eff1f}.proxy-select-wrapper .select-arrow{position:absolute;right:6px;pointer-events:none;color:var(--text-muted)}.settings-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:settingsFadeIn .15s ease}@keyframes settingsFadeIn{0%{opacity:0}to{opacity:1}}.settings-dialog{display:flex;width:780px;max-width:90vw;height:600px;max-height:85vh;background:var(--bg-main);border-radius:16px;box-shadow:0 16px 70px #00000040;overflow:hidden;animation:settingsSlideIn .2s ease}@keyframes settingsSlideIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.settings-nav{width:200px;flex-shrink:0;background:var(--bg-sidebar);padding:16px 12px;display:flex;flex-direction:column;gap:2px;border-right:1px solid var(--border-color)}.settings-nav-title{font-size:13px;font-weight:600;color:var(--text-primary);padding:8px 12px 16px;letter-spacing:.01em}.settings-nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;background:none;color:var(--text-secondary);font-size:14px;cursor:pointer;border-radius:8px;transition:all .12s;text-align:left}.settings-nav-item:hover{background:var(--sidebar-hover);color:var(--text-primary)}.settings-nav-item.active{background:var(--sidebar-hover);color:var(--text-primary);font-weight:500}.settings-nav-item svg{flex-shrink:0;opacity:.7}.settings-nav-item.active svg{opacity:1}.settings-content{flex:1;display:flex;flex-direction:column;min-width:0}.settings-content-header{display:flex;align-items:center;justify-content:space-between;padding:20px 28px 0;flex-shrink:0}.settings-content-title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0}.settings-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;transition:all .15s}.settings-close:hover{color:var(--text-primary);background:var(--sidebar-hover)}.settings-scroll{flex:1;overflow-y:auto;padding:20px 28px 28px}.settings-pane{max-width:100%}.settings-pane .proxy-tab{max-height:none;padding:0}.settings-pane .proxy-header{display:none}.sp-group{margin-bottom:24px}.sp-group-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:12px;letter-spacing:.01em}.sp-desc{font-size:13px;color:var(--text-secondary);line-height:1.6;margin:0 0 12px}.sp-row{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--border-light)}.sp-row:last-child{border-bottom:none}.sp-row-left{display:flex;align-items:center;gap:8px}.sp-label{font-size:14px;color:var(--text-primary)}.sp-value{font-size:14px;color:var(--text-secondary)}.sp-badge{display:inline-block;padding:2px 10px;border-radius:10px;font-size:11px;font-weight:500}.sp-role-admin{background:#7878b41f;color:var(--text-secondary)}.sp-role-pro{background:#64a0641f;color:var(--success)}.sp-role-user{background:var(--sidebar-hover);color:var(--text-muted)}.sp-secret-row{display:flex;align-items:center;gap:6px;margin-bottom:10px}.sp-secret{flex:1;font-size:12px;padding:10px 14px;background:var(--sidebar-hover);border-radius:8px;word-break:break-all;color:var(--text-primary);border:1px solid var(--border-light)}.sp-icon-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;transition:all .15s}.sp-icon-btn:hover{color:var(--text-primary);background:var(--sidebar-hover)}.sp-actions-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sp-cmd-group{margin-top:14px;display:flex;flex-direction:column;gap:8px}.sp-cmd-row{display:flex;align-items:center;gap:8px}.sp-cmd-label{font-size:11px;color:var(--text-muted);white-space:nowrap;min-width:80px}.sp-cmd{flex:1;font-size:11px;padding:6px 10px;background:var(--sidebar-hover);border:1px solid var(--border-light);border-radius:6px;color:var(--text-secondary);word-break:break-all;user-select:all}.sp-btn{padding:8px 18px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-main);color:var(--text-primary);font-size:13px;font-family:inherit;cursor:pointer;transition:all .15s}.sp-btn:hover:not(:disabled){background:var(--sidebar-hover)}.sp-btn:disabled{opacity:.4;cursor:not-allowed}.sp-btn-muted{color:var(--text-secondary);border-color:var(--border-light)}.sp-btn-muted:hover:not(:disabled){color:var(--error);border-color:var(--error);background:transparent}.sp-btn-danger{color:var(--error);border-color:var(--error);background:transparent}.sp-btn-danger:hover:not(:disabled){background:#ef444414}.sp-warning{font-size:12px;color:var(--error)}.sp-input{display:block;width:100%;max-width:360px;padding:10px 14px;border:1px solid var(--border-color);border-radius:10px;background:transparent;color:var(--text-primary);font-size:14px;font-family:inherit;margin-bottom:10px;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.sp-input:focus{outline:none;border-color:var(--accent-blue, #4a9eff);box-shadow:0 0 0 2px #4a9eff1f}.sp-select{padding:8px 32px 8px 14px;font-size:13px}.sp-custom-select{position:relative}.sp-custom-select-trigger{display:flex;align-items:center;gap:4px;padding:6px 10px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:14px;font-family:inherit;cursor:pointer;transition:background .15s}.sp-custom-select-trigger:hover{background:var(--sidebar-hover)}.sp-custom-select-chevron{color:var(--text-muted);transition:transform .15s;flex-shrink:0}.sp-custom-select.open .sp-custom-select-chevron{transform:rotate(180deg)}.sp-custom-select-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:140px;background:var(--bg-main);border:1px solid var(--border-color);border-radius:10px;padding:4px;box-shadow:0 4px 16px #0000001f;z-index:100;animation:sp-menu-in .12s ease}@keyframes sp-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sp-custom-select-option{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:7px;font-size:14px;color:var(--text-primary);cursor:pointer;transition:background .1s;white-space:nowrap}.sp-custom-select-option:hover{background:var(--sidebar-hover)}.sp-custom-select-check{color:var(--text-muted);flex-shrink:0;margin-left:12px}.sp-invite-create-row{display:flex;align-items:center;gap:8px}.sp-btn-create{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:13px;font-family:inherit;cursor:pointer;transition:background .15s;white-space:nowrap}.sp-btn-create:hover:not(:disabled){background:var(--sidebar-hover)}.sp-btn-create:disabled{opacity:.4;cursor:not-allowed}.sp-btn-create svg{flex-shrink:0}.sp-language-options{display:flex;gap:8px}.sp-radio-option{display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .15s;font-size:14px;color:var(--text-secondary)}.sp-radio-option:hover{border-color:var(--text-muted)}.sp-radio-option.active{border-color:var(--accent-blue, #4a9eff);background:#4a9eff0f;color:var(--text-primary)}.sp-radio-option input[type=radio]{accent-color:var(--accent-blue, #4a9eff)}.sp-invite-item{display:flex;align-items:center;gap:6px;padding:10px 12px;border-radius:8px;border:1px solid var(--border-light);margin-bottom:6px}.sp-invite-main{flex:1;display:flex;align-items:center;gap:8px}.sp-invite-info{flex:1;display:flex;flex-direction:column;gap:3px}.sp-invite-top{display:flex;align-items:center;gap:8px}.sp-invite-meta{font-size:11px;color:var(--text-muted)}.sp-invite-code{font-size:12px;font-family:monospace;color:var(--text-primary)}.sp-invite-status{font-size:11px;color:var(--success)}.sp-invite-status.used{color:var(--text-muted)}.sp-invite-status.expired{color:var(--error)}.sp-toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);padding:10px 24px;border-radius:10px;font-size:13px;color:var(--text-primary);background:var(--bg-sidebar);border:1px solid var(--border-color);box-shadow:0 4px 20px #0000001f;z-index:1100}.sp-toast.error{border-color:var(--error);color:var(--error)}.sp-toast-enter-active{animation:spToastIn .2s ease}.sp-toast-leave-active{animation:spToastIn .15s ease reverse}@keyframes spToastIn{0%{opacity:0;transform:translate(-50%) translateY(6px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media(max-width:640px){.settings-dialog{flex-direction:column;width:95vw;height:90vh;border-radius:12px}.settings-nav{width:100%;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;padding:8px;gap:4px;border-right:none;border-bottom:1px solid var(--border-color)}.settings-nav-title{display:none}.settings-nav-item{padding:8px 12px;white-space:nowrap;font-size:13px}.settings-nav-item svg{display:none}.settings-content-header{padding:16px 16px 0}.settings-scroll{padding:16px}.sp-input{max-width:100%}.sp-language-options{flex-direction:column}}.ctx-menu{position:fixed;background:var(--bg-main);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #0000002e;z-index:10000;min-width:160px;padding:4px 0;font-size:13px}.ctx-menu-item{padding:7px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;color:var(--text-primary);transition:background .1s}.ctx-menu-item:hover{background:var(--sidebar-hover)}.ctx-menu-item.ctx-menu-danger:hover{background:var(--error);color:#fff}.ctx-menu-separator{height:1px;background:var(--border-light);margin:4px 0}.tree-item.drag-over{background:#2563eb26;outline:1px dashed var(--accent-blue, #4a9eff)}.file-col-tree.drop-active{outline:2px dashed var(--accent-blue, #4a9eff);outline-offset:-2px}@media(max-width:768px){.md-preview-container{padding:12px 16px}.md-file-preview{max-width:100%}.md-file-preview table{display:block;overflow-x:auto}.md-file-preview .mermaid-rendered svg{max-width:100%;height:auto}.md-toolbar{padding:3px 6px}.md-toggle-btn{padding:4px 10px;font-size:11px}.file-preview-container{min-height:200px}.office-local-preview{padding:4px}}.sp-mcp-item{border-bottom:1px solid var(--border-light)}.sp-mcp-item:last-child{border-bottom:none}.sp-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0;cursor:pointer}.sp-toggle-info{display:flex;align-items:center;gap:8px}.sp-toggle-name{font-size:14px;color:var(--text-primary);font-weight:500}.sp-toggle-badge{display:inline-block;padding:1px 8px;border-radius:4px;font-size:11px;font-weight:500}.sp-badge-builtin{background:#3b82f61f;color:#60a5fa}.sp-badge-mcp{background:#7878781f;color:var(--text-secondary)}.sp-toggle{position:relative;width:40px;height:22px;border-radius:11px;border:none;background:var(--border-color);cursor:pointer;transition:background .2s;flex-shrink:0;padding:0}.sp-toggle.active{background:#22c55e}.sp-toggle-knob{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px #0003}.sp-toggle.active .sp-toggle-knob{transform:translate(18px)}.sp-tools-hint{font-size:12px;color:var(--text-muted);margin-top:4px}.session-item-crew .title{display:flex;align-items:center;gap:4px}.crew-conv-icon{flex-shrink:0;color:var(--accent-blue);opacity:.7}.session-item-crew.active .crew-conv-icon{opacity:1}.crew-config-divider{display:flex;align-items:center;gap:12px;color:var(--text-secondary);font-size:12px}.crew-config-divider:before,.crew-config-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.crew-config-controls{display:flex;flex-direction:column;gap:10px}.crew-config-status-info{display:flex;gap:16px;font-size:13px;color:var(--text-secondary)}.crew-config-status-info strong{color:var(--text-primary)}.crew-config-control-btns{display:flex;gap:8px}.crew-control-action-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border-radius:8px;font-size:13px;cursor:pointer;border:1px solid var(--border-color);background:var(--bg-main);color:var(--text-primary);transition:all .15s}.crew-control-action-btn:hover{background:var(--sidebar-hover)}.crew-control-action-btn.danger{color:#ef4444;border-color:#ef44444d}.crew-control-action-btn.danger:hover{background:#ef44441a}.crew-chat-view{display:flex;flex-direction:column;flex:1;overflow:hidden;background:var(--bg-main)}.crew-status-bar{display:flex;align-items:center;gap:12px;padding:8px 16px;background:var(--bg-sidebar);border-bottom:1px solid var(--border-color);font-size:13px;flex-shrink:0}.crew-status-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.crew-status-icon{display:flex;align-items:center;color:var(--text-secondary);flex-shrink:0}.crew-status-meta{display:flex;align-items:center;gap:10px;flex-shrink:0}.crew-status-roles{display:flex;align-items:center;gap:4px}.crew-role-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:14px;opacity:.4;transition:opacity .2s,background .15s;cursor:default;background:var(--role-bg, transparent)}.crew-role-badge.active{opacity:1;background:var(--role-bg, var(--sidebar-hover))}.crew-role-badge.decision-maker{border:1.5px solid var(--role-color, var(--accent-blue));opacity:.7}.crew-role-badge.decision-maker.active{opacity:1}.crew-role-tool-hint{font-size:11px;color:var(--text-muted);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes crew-pulse{0%,to{opacity:1}50%{opacity:.4}}.crew-role-badge.active:after{content:"";position:absolute;bottom:-2px;right:-2px;width:8px;height:8px;border-radius:50%;background:var(--success);border:1.5px solid var(--bg-sidebar);animation:crew-pulse 1.5s infinite}.crew-role-badge{position:relative}.crew-status-state{padding:3px 10px;border-radius:12px;font-size:11px;font-weight:500;letter-spacing:.02em}.crew-status-state.status-running{background:#4a9e5c1f;color:var(--success)}.crew-status-state.status-paused{background:#eab3081f;color:#d4a017}[data-theme=dark] .crew-status-state.status-paused{color:#e8c84a}.crew-status-state.status-waiting{background:#eab3081f;color:#d4a017}[data-theme=dark] .crew-status-state.status-waiting{color:#e8c84a}.crew-status-state.status-completed{background:#4a9e5c1f;color:var(--success)}.crew-status-state.status-stopped{background:#d65d5d1a;color:var(--error)}.crew-status-rounds,.crew-status-cost{color:var(--text-muted);font-size:12px;font-family:SF Mono,Fira Code,Consolas,monospace}.crew-controls{position:relative}.crew-control-btn{width:34px;height:34px;border:none;border-radius:8px;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:16px;transition:background .15s,color .15s}.crew-control-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.crew-control-dropdown{position:absolute;right:0;bottom:calc(100% + 4px);background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;padding:4px;z-index:100;min-width:200px;box-shadow:0 4px 24px #00000026}[data-theme=dark] .crew-control-dropdown{box-shadow:0 4px 24px #0006}.crew-control-item{display:block;width:100%;text-align:left;background:none;border:none;color:var(--text-primary);padding:8px 12px;cursor:pointer;border-radius:8px;font-size:13px;transition:background .15s}.crew-control-item:hover{background:var(--sidebar-hover)}.crew-control-item.danger{color:var(--error)}.crew-control-icon{display:inline-flex;align-items:center;vertical-align:middle;margin-right:4px}.crew-control-divider{height:1px;background:var(--border-color);margin:4px 0}.crew-messages{flex:1;overflow-y:auto;padding:24px 0;display:flex;flex-direction:column;gap:2px;background:var(--bg-main)}.crew-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-muted);gap:8px}.crew-empty-icon{color:var(--text-muted);opacity:.4;margin-bottom:4px}.crew-empty-text{font-size:15px;color:var(--text-secondary)}.crew-message{display:flex;padding:8px 24px;width:100%;box-sizing:border-box}.crew-message.crew-msg-human-bubble{justify-content:flex-end}.crew-message.crew-msg-human-bubble .crew-msg-body{max-width:75%;background:var(--bg-user-msg);border-radius:16px 16px 4px;padding:8px 14px}.crew-message.crew-msg-human-bubble:hover{background:transparent}.crew-turn-divider{width:100%;padding:0 24px;box-sizing:border-box}.crew-turn-divider:after{content:"";display:block;height:1px;background:var(--border-color);opacity:.4}.crew-center-panel .typing-indicator{padding-left:24px}.crew-message:hover{background:var(--sidebar-hover)}.crew-msg-body{flex:1;min-width:0}.crew-msg-header{display:flex;align-items:baseline;gap:6px;margin-bottom:2px}.crew-msg-header-icon{font-size:14px;line-height:1}.crew-msg-name{font-size:13px;font-weight:600;color:var(--role-color, var(--text-primary))}.crew-msg-name.is-human{color:var(--crew-color-human)}.crew-msg-name.is-system{color:var(--crew-color-system)}.crew-msg-time{font-size:11px;color:var(--text-muted);font-family:SF Mono,Fira Code,Consolas,monospace}.crew-msg-time:before{content:"\b7";margin-right:6px;font-family:system-ui}.crew-task-label{font-size:11px;font-weight:500;color:var(--task-color, var(--accent-blue));background:color-mix(in srgb,var(--task-color, var(--accent-blue)) 12%,transparent);padding:1px 6px;border-radius:3px;white-space:nowrap}.crew-task-filter{font-size:11px;padding:1px 6px;border-radius:3px;cursor:pointer;color:var(--text-muted);background:transparent;transition:all .15s;white-space:nowrap}.crew-task-filter:hover{background:var(--bg-hover)}.crew-task-filter.active{color:var(--task-color, var(--text-primary));background:color-mix(in srgb,var(--task-color, var(--text-primary)) 15%,transparent);font-weight:500}.crew-at-task{font-size:10px;opacity:.7;margin-left:1px}.crew-at-hint.is-active{font-weight:600}.crew-done-toggle{font-size:12px;color:var(--text-muted);cursor:pointer;padding:4px 8px;margin-top:2px;user-select:none}.crew-done-toggle:hover{color:var(--text-secondary)}.crew-task-clickable{cursor:pointer;transition:background .15s}.crew-task-clickable:hover{background:var(--bg-hover)}.crew-filter-bar{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;margin:0 0 4px;background:color-mix(in srgb,var(--accent-blue) 8%,transparent);border-radius:6px;font-size:12px;color:var(--text-secondary)}.crew-filter-back{cursor:pointer;color:var(--accent-blue, #4a9eff);font-weight:500}.crew-filter-back:hover{text-decoration:underline}.crew-msg-content{word-break:break-word}.crew-message.crew-msg-text{border-left:3px solid var(--role-border, transparent)}.crew-message.crew-msg-human-bubble.crew-msg-text{border-left:none}.crew-msg-tool{padding:2px 0}.crew-msg-tool .tool-line{font-size:12px}.crew-msg-tool .tool-expand{margin-top:4px}.crew-route-target{color:var(--text-secondary);margin-left:2px;font-style:italic;font-size:12px}.crew-message.crew-msg-route .crew-msg-name{font-size:12px}.crew-message.crew-msg-route .crew-msg-content{font-style:italic;color:var(--text-secondary);font-size:12.5px}.crew-turn-routes{margin-top:4px;display:flex;flex-direction:column;gap:1px}.crew-turn-route-item{display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--text-muted);font-style:normal;padding:2px 0}.crew-route-header{display:flex;align-items:center;gap:4px}.crew-route-from{font-weight:500;color:var(--text-secondary);flex-shrink:0}.crew-route-arrow{color:var(--text-muted);flex-shrink:0;font-size:12px}.crew-route-target-name{font-weight:500;color:var(--text-secondary);font-style:normal;flex-shrink:0}.crew-route-summary{color:var(--text-secondary);white-space:normal;word-wrap:break-word;padding-left:2px}.crew-route-summary:before{content:none}.crew-msg-images,.crew-msg-image{margin:4px 0}.crew-screenshot{max-width:100%;max-height:400px;border-radius:6px;cursor:pointer;border:1px solid var(--border-color);transition:opacity .2s}.crew-screenshot:hover{opacity:.9}.crew-screenshot-expired{display:inline-block;padding:8px 12px;font-size:12px;color:var(--text-muted);background:var(--code-bg);border-radius:6px;border:1px dashed var(--border-color)}.crew-task-panel{padding:0 24px;margin:8px 0 4px;width:100%;box-sizing:border-box}.crew-task-header{display:flex;align-items:center;gap:8px;cursor:pointer;padding:6px 12px;border-radius:8px;background:var(--bg-sidebar);border:1px solid var(--border-light);transition:background .15s}.crew-task-header:hover{background:var(--sidebar-hover)}.crew-task-title{font-size:12px;font-weight:600;color:var(--text-secondary);white-space:nowrap}.crew-task-progress{flex:1;display:flex;align-items:center}.crew-task-bar{width:100%;height:4px;background:var(--border-color);border-radius:2px;overflow:hidden}.crew-task-bar-fill{display:block;height:100%;background:var(--success);border-radius:2px;transition:width .3s ease}.crew-task-list{padding:6px 0 2px}.crew-task-item{display:flex;align-items:baseline;gap:6px;padding:3px 12px;font-size:13px;color:var(--text-primary);line-height:1.5}.crew-task-item.done{color:var(--text-muted);text-decoration:line-through}.crew-task-check{font-size:12px;flex-shrink:0}.crew-task-text{flex:1}.crew-task-assignee{font-size:11px;color:var(--role-color, var(--text-muted));white-space:nowrap}.crew-feature-thread{padding:0 24px;margin:8px 0;width:100%;box-sizing:border-box}.crew-feature-header{display:flex;align-items:center;gap:8px;padding:6px 8px;cursor:pointer;border-radius:6px;background:transparent;border:none;transition:background .15s;user-select:none}.crew-feature-header:hover{background:var(--sidebar-hover)}.crew-feature-chevron{flex-shrink:0;width:16px;height:16px;color:var(--text-muted);transition:transform .15s ease}.crew-feature-thread.is-expanded .crew-feature-chevron{transform:rotate(90deg)}.crew-feature-title{font-size:13px;font-weight:600;color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-feature-thread.is-completed .crew-feature-title{color:var(--text-muted)}.crew-feature-status{display:flex;align-items:center;gap:4px;font-size:11px;white-space:nowrap;flex-shrink:0}.crew-feature-status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.crew-feature-status.active .crew-feature-status-dot{background:var(--accent-blue)}.crew-feature-status.active{color:var(--accent-blue)}.crew-feature-status.completed .crew-feature-status-dot{background:var(--success)}.crew-feature-status.completed{color:var(--text-muted)}.crew-feature-actives{display:flex;align-items:center;flex-shrink:0}.crew-feature-active-icon{font-size:14px;line-height:1;margin-left:-4px;cursor:default}.crew-feature-active-icon:first-child{margin-left:0}.crew-feature-active-more{font-size:11px;color:var(--text-muted);margin-left:2px}.crew-feature-body{border:none;margin-left:0;padding-left:0}.crew-feature-body .crew-message{border-left:none}.crew-feature-history-toggle{display:flex;align-items:center;gap:6px;padding:4px 8px;margin:0 0 2px;font-size:12px;color:var(--text-muted);cursor:pointer;border-radius:4px;background:transparent;border:none;font-style:italic;transition:background .15s,color .15s;font-family:inherit}.crew-feature-history-toggle:hover{background:var(--sidebar-hover);color:var(--text-secondary)}.crew-feature-history-toggle svg{flex-shrink:0;width:12px;height:12px;transition:transform .15s ease}.crew-feature-history-toggle.is-expanded svg{transform:rotate(90deg)}.crew-feature-history{position:relative;margin-bottom:4px}.crew-feature-history:before{content:"";display:block;height:1px;margin:4px 8px}.crew-feature-history:after{content:"";display:block;height:1px;margin:4px 8px}.crew-feature-history .crew-message{opacity:.75}.crew-round-divider{display:flex;align-items:center;gap:12px;padding:12px 24px 4px;width:100%;box-sizing:border-box}.crew-round-line{flex:1;height:1px}.crew-round-label{font-size:11px;font-weight:500;color:var(--text-muted);white-space:nowrap;text-transform:uppercase;letter-spacing:.5px}.crew-msg-system{font-size:13px;color:var(--text-muted);text-align:center}.crew-msg-human-needed{font-size:13px;color:var(--text-primary);font-weight:500;padding:10px 14px;background:var(--bg-sidebar);border-radius:12px;border:1px solid var(--border-color)}.crew-msg-role-error{padding:6px 12px;margin:4px 0;border-radius:6px;font-size:12px;display:flex;align-items:center;gap:6px;background:#ff98001a;color:#e65100}[data-theme=dark] .crew-msg-role-error{background:#ff980014;color:#ffb74d}.crew-error-icon{flex-shrink:0}.crew-msg-send-failed{font-size:12px;color:var(--error);margin-top:4px}.crew-ask-hint{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:8px;margin:4px 0;font-size:13px;color:var(--accent-blue);cursor:pointer;transition:background .15s}.crew-ask-hint:hover{background:#3b82f61f}.crew-ask-hint-icon{font-size:14px;flex-shrink:0}.crew-ask-hint-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-ask-hint-dismiss{font-size:12px;color:var(--text-muted);cursor:pointer;padding:2px 4px;border-radius:4px;transition:color .15s,background .15s}.crew-ask-hint-dismiss:hover{color:var(--text-primary);background:#8080801a}.crew-message.crew-msg-highlight{animation:msgHighlight 2s ease-out}@keyframes msgHighlight{0%{box-shadow:0 0 0 3px #3b82f666;border-radius:8px}to{box-shadow:none}}.crew-workspace{display:flex;flex:1;overflow:hidden}.crew-panel-left{width:200px;flex-shrink:0;background:var(--bg-main);display:flex;flex-direction:column;overflow:hidden}.crew-panel-left-scroll{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:4px}.crew-role-list{display:flex;flex-direction:column;gap:4px}.crew-role-card{padding:8px 10px;border-radius:8px;cursor:pointer;transition:background .2s,box-shadow .2s}.crew-role-card:hover{background:var(--sidebar-hover)}.crew-role-card-header{display:flex;align-items:center;gap:6px}.crew-role-card-icon{font-size:15px;flex-shrink:0}.crew-role-card-name{font-size:12px;font-weight:500;color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-role-card-dm{color:#f59e0b;font-size:10px;flex-shrink:0}.crew-role-card.is-streaming{background:var(--role-bg)}.crew-role-card.is-streaming .crew-role-card-name{animation:nameBreathing 3s ease-in-out infinite}@keyframes nameBreathing{0%,to{opacity:1}50%{opacity:.4}}.crew-role-card-feature{font-size:11px;color:var(--text-secondary);padding-left:21px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-role-card-feature:before{content:"\2192  ";color:var(--text-muted)}.crew-role-card-tool{font-size:11px;color:var(--text-muted);padding-left:21px;margin-top:1px;font-family:SF Mono,Fira Code,Consolas,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-add-role-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-muted);font-size:12px;cursor:pointer;transition:color .15s;font-family:inherit;padding:6px 2px;margin-top:4px}.crew-add-role-btn:hover{color:var(--accent-blue)}.crew-role-card-header-actions{display:flex;gap:2px;margin-left:auto;opacity:0;transition:opacity .15s}.crew-role-card:hover .crew-role-card-header-actions{opacity:.6}.crew-role-card-header-actions:hover{opacity:1!important}.crew-role-action-btn{background:none;border:none;cursor:pointer;padding:1px 3px;font-size:11px;line-height:1;border-radius:4px;transition:background .15s;color:var(--text-muted)}.crew-role-action-btn:hover{background:var(--sidebar-hover)}.crew-role-abort-btn{color:var(--error-color, #e74c3c)}.crew-role-abort-btn:hover{background:#e74c3c26}.crew-panel-left-actions{display:flex;align-items:center;gap:4px;padding:4px 2px;margin-top:4px}.crew-panel-left-actions .crew-add-role-btn{flex:1;margin-top:0}.crew-panel-left.roleplay-mode{width:160px}.crew-panel-left.roleplay-mode .crew-panel-left-scroll{padding:8px;gap:2px}.crew-panel-left.roleplay-mode .crew-role-list{gap:2px}.crew-panel-left.roleplay-mode .crew-role-card{padding:5px 8px;border-radius:6px}.crew-panel-left.roleplay-mode .crew-role-card-icon{font-size:13px}.crew-panel-left.roleplay-mode .crew-role-card-name{font-size:11px}.crew-panel-left.roleplay-mode .crew-role-card-feature,.crew-panel-left.roleplay-mode .crew-role-card-tool{font-size:10px;padding-left:19px}.crew-action-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;transition:color .15s,background .15s;line-height:1}.crew-action-btn:hover{background:var(--sidebar-hover);color:var(--text-secondary)}.crew-action-btn.danger:hover{color:var(--error-color, #ef4444)}.crew-panel-center{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-main);transition:padding .25s cubic-bezier(.4,0,.2,1)}.crew-panel-right{width:260px;flex-shrink:0;background:var(--bg-main);display:flex;flex-direction:column;overflow:hidden}.crew-panel-right-scroll{flex:1;overflow-y:auto;padding:12px}.crew-panel-left,.crew-panel-right{transition:width .25s cubic-bezier(.4,0,.2,1)}.crew-workspace.hide-roles .crew-panel-left,.crew-workspace.hide-features .crew-panel-right{width:0!important;min-width:0;padding:0;border:none}.crew-workspace.hide-roles .crew-panel-center{padding-left:48px}.crew-workspace.hide-features .crew-panel-center{padding-right:48px}.roleplay-crew-view .crew-panel-center{padding-left:48px}.crew-feature-card{background:var(--bg-main);border:1px solid var(--border-light);border-radius:10px;padding:10px 12px;margin-bottom:8px;transition:border-color .15s}.crew-feature-card.has-streaming{border-color:var(--accent-blue)}.crew-feature-card.is-completed{opacity:.7}.crew-feature-card-header{display:flex;align-items:center;gap:4px;cursor:pointer;user-select:none}.crew-feature-card-chevron{width:12px;height:12px;color:var(--text-muted);flex-shrink:0;transition:transform .15s}.crew-feature-card.is-expanded .crew-feature-card-chevron{transform:rotate(90deg)}.crew-feature-card-title{font-size:12px;font-weight:600;color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-feature-card.is-completed .crew-feature-card-title{color:var(--text-muted)}.crew-feature-card-count{font-size:11px;color:var(--text-muted);flex-shrink:0;font-weight:500}.crew-feature-card-elapsed{font-size:10px;color:var(--text-muted);margin-left:auto;flex-shrink:0;font-variant-numeric:tabular-nums;opacity:.7}.crew-feature-card-bar{width:100%;height:4px;background:var(--border-color);border-radius:2px;overflow:hidden;margin:6px 0}.crew-feature-card-bar-fill{height:100%;background:var(--success);border-radius:2px;transition:width .3s ease}.crew-feature-card.has-streaming .crew-feature-card-bar-fill{background:var(--accent-blue)}.crew-feature-card-roles{display:flex;align-items:center;gap:2px;font-size:10px;color:var(--text-muted);margin-bottom:4px}.crew-feature-card-roles-icons{display:inline-flex;gap:1px;font-size:12px}.crew-feature-card-roles-label{margin-left:4px}.crew-feature-card-todos{display:flex;flex-direction:column;gap:1px;margin-top:6px;padding-top:6px;border-top:1px solid var(--border-light)}.crew-feature-card-todo{display:flex;align-items:center;gap:6px;padding:2px 0;font-size:12px}.crew-feature-card-todo .todo-status{flex-shrink:0;width:12px;height:12px;display:flex;align-items:center;justify-content:center}.crew-feature-card-todo.is-completed .todo-status{color:var(--success)}.crew-feature-card-todo.is-in_progress .todo-status{width:8px;height:8px;border-radius:50%;background:var(--accent-blue);animation:todoPulse 2s ease-in-out infinite}.crew-feature-card-todo.is-pending .todo-status{width:8px;height:8px;border-radius:50%;border:1.5px solid var(--text-muted);opacity:.5}@keyframes todoPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}.crew-feature-card-todo .todo-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-feature-card-todo.is-completed .todo-text{color:var(--text-muted);text-decoration:line-through;text-decoration-color:var(--border-color)}.crew-feature-card-todo.is-in_progress .todo-text{color:var(--text-primary);font-weight:500}.crew-feature-card-todo.is-pending .todo-text{color:var(--text-secondary)}.crew-feature-card-todo .todo-role{font-size:10px;flex-shrink:0}.crew-feature-card-empty{font-size:11px;color:var(--text-muted);padding:6px 0 4px;margin-top:6px;border-top:1px solid var(--border-light)}.crew-kanban-total{padding:10px 12px}.crew-kanban-total-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:11px;color:var(--text-muted)}.crew-kanban-total-bar{width:100%;height:6px;background:var(--border-color);border-radius:3px;overflow:hidden}.crew-kanban-total-fill{height:100%;background:var(--success);border-radius:3px;transition:width .3s ease}.crew-kanban-empty{display:flex;align-items:center;justify-content:center;padding:32px 12px}.crew-kanban-empty-text{font-size:12px;color:var(--text-muted)}.crew-kanban-group{margin-bottom:4px}.crew-kanban-group-header{display:flex;align-items:center;gap:6px;padding:8px 12px 4px;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.crew-kanban-group-header.is-completed{cursor:pointer;user-select:none}.crew-kanban-group-header.is-completed:hover{color:var(--text-secondary)}.crew-kanban-group-chevron{flex-shrink:0;transition:transform .15s ease}.crew-kanban-group-chevron.is-expanded{transform:rotate(90deg)}.crew-kanban-group-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.crew-kanban-group-dot.is-active{background:#22c55e;box-shadow:0 0 4px #22c55e66}.crew-kanban-group-dot.is-completed{background:var(--text-muted)}@media(max-width:1279px){.crew-panel-left{width:48px}.crew-panel-left-scroll{padding:8px 4px}.crew-role-card{padding:6px;display:flex;justify-content:center;position:relative}.crew-role-card-name,.crew-role-card-feature,.crew-role-card-tool,.crew-role-card-dm{display:none}.crew-role-card-icon{font-size:20px}.crew-add-role-btn{padding:4px 2px;margin:4px auto}.crew-add-role-btn span{display:none}}@media(max-width:1023px){.crew-panel-left{display:none}}.crew-mobile-overlay,.crew-mobile-close,.crew-header-nav-btn.crew-sidebar-toggle{display:none}.crew-header-actions{display:flex;align-items:center;gap:4px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.crew-header-nav-btn{width:32px;height:32px;border:none;background:transparent;border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;position:relative;transition:color .15s ease,background .15s ease}.crew-header-nav-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.crew-header-nav-btn:active{background:var(--border-color)}.crew-header-nav-btn.active{color:var(--accent-blue, #4a9eff);background:var(--sidebar-hover)}.crew-header-nav-btn .active-dot{position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;background:var(--accent-green, #34d058);animation:pulse 2s infinite}.crew-header-nav-btn .nav-badge{position:absolute;top:2px;right:0;min-width:14px;height:14px;border-radius:7px;background:var(--accent-blue, #4a9eff);color:#fff;font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;padding:0 3px}.crew-header-nav-btn.btn-loading{pointer-events:none;opacity:.7}.crew-header-nav-btn.btn-loading svg{display:none}.crew-header-nav-btn.btn-loading:after{content:"";width:14px;height:14px;border:2px solid var(--text-tertiary, #666);border-top-color:var(--accent-blue, #3b82f6);border-radius:50%;animation:spin .8s linear infinite}@media(max-width:767px){.crew-panel-left,.crew-panel-right{display:flex;position:fixed;top:0;bottom:0;right:0;z-index:200;width:min(320px,85vw);transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:-2px 0 12px #00000026}.crew-workspace.mobile-panel-roles .crew-panel-left,.crew-workspace.mobile-panel-features .crew-panel-right{transform:translate(0)}.crew-workspace.hide-roles .crew-panel-left,.crew-workspace.hide-features .crew-panel-right{width:min(320px,85vw)!important;min-width:auto;padding:unset;border:unset}.crew-workspace.hide-roles .crew-panel-center,.crew-workspace.hide-features .crew-panel-center,.roleplay-crew-view .crew-panel-center{padding-left:0;padding-right:0}.crew-panel-center{display:flex}.crew-panel-left{width:min(320px,85vw)}.crew-panel-left-scroll{padding:12px 16px}.crew-role-card{padding:8px 10px;justify-content:flex-start}.crew-role-card-name,.crew-role-card-feature,.crew-role-card-tool,.crew-role-card-dm{display:block}.crew-add-role-btn{padding:8px 12px;margin:4px 8px}.crew-add-role-btn span{display:inline}.crew-mobile-overlay{display:block;position:fixed;inset:0;background:#00000080;z-index:199;animation:crew-overlay-fadein .3s ease}@keyframes crew-overlay-fadein{0%{opacity:0}to{opacity:1}}.crew-mobile-close{display:flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-muted, #888);font-size:12px;cursor:pointer;padding:4px 0;margin-bottom:8px}.crew-mobile-close:hover{color:var(--text-primary, #fff)}.crew-header-nav-btn.crew-sidebar-toggle{display:flex}}.crew-load-more{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 24px;cursor:pointer;color:var(--text-muted);font-size:12px;transition:color .15s;user-select:none}.crew-load-more:hover{color:var(--text-primary)}.crew-load-more:before,.crew-load-more:after{content:"";flex:1;height:1px;border-top:1px dashed var(--border-color);opacity:.5}.crew-load-more-count{color:var(--text-secondary);font-weight:500}.crew-active-messages{margin:16px 8px 8px;background:var(--bg-sidebar);border-radius:8px}.crew-active-messages-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;padding:4px 12px}.crew-active-messages .crew-message{border-left:none}.crew-msg-task{color:var(--text-secondary);font-size:11px;opacity:.8}.crew-scroll-bottom{position:sticky;bottom:12px;align-self:flex-end;margin-right:16px;display:flex;align-items:center;gap:4px;padding:6px 14px;border-radius:16px;background:var(--bg-sidebar);border:1px solid var(--border-color);color:var(--text-secondary);font-size:12px;cursor:pointer;box-shadow:0 2px 8px #00000014;transition:opacity .2s,transform .2s,background .15s;z-index:10}.crew-scroll-bottom:hover{background:var(--sidebar-hover);color:var(--text-primary)}.crew-scroll-bottom.is-hidden{opacity:0;transform:translateY(8px);pointer-events:none}[data-theme=dark] .crew-scroll-bottom{box-shadow:0 2px 8px #00000040}.crew-streaming-indicator{display:flex;gap:4px;padding:8px 24px 8px 68px;width:100%;box-sizing:border-box}.crew-typing-dot{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);animation:crew-typing 1.4s infinite}.crew-typing-dot:nth-child(2){animation-delay:.2s}.crew-typing-dot:nth-child(3){animation-delay:.4s}@keyframes crew-typing{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.crew-init-progress{display:flex;align-items:center;gap:4px;padding:12px 24px 12px 68px;width:100%;box-sizing:border-box}.crew-init-text{margin-left:4px;font-size:12px;color:var(--text-muted)}.crew-turn-tools{margin-top:6px;background:var(--crew-tool-bg);border-radius:8px;border:1px solid var(--crew-tool-border);padding:4px 0;overflow:hidden}.crew-turn-tools .tool-line{padding:3px 10px;font-size:12px;border-radius:0;transition:background .1s}.crew-turn-tools .tool-line.expandable:hover,.crew-turn-tools .tool-line.has-file:hover{background:#80808014}.crew-turn-tools .tool-line.completed{opacity:.85}.crew-turn-tools .tool-line.running{opacity:1;color:var(--text-secondary)}.crew-turn-tool-latest{display:flex;align-items:center}.crew-turn-tool-latest>.tool-line{flex:1;min-width:0}.crew-turn-expand-btn{display:inline-flex;align-items:center;gap:3px;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:3px 10px;font-size:11px;transition:color .15s;font-family:inherit;margin-left:auto;flex-shrink:0}.crew-turn-expand-btn:hover{color:var(--text-secondary)}.crew-turn-expand-count{font-size:11px;font-weight:500;background:#80808026;padding:0 5px;border-radius:3px;line-height:1.6}.crew-turn-tools-expanded{display:flex;flex-direction:column;border-bottom:1px dashed var(--border-color);margin-bottom:2px;padding-bottom:2px}.crew-turn-tools .tool-expand{margin:2px 10px 4px;border-radius:4px}.crew-input-area{flex-shrink:0;position:relative;z-index:10}.crew-input-area .crew-input-hints{margin:0 auto 8px;display:flex;gap:6px;flex-wrap:nowrap;align-items:center;justify-content:flex-end;overflow:visible}.crew-input-area .input-hints,.crew-input-area .input-wrapper{max-width:none}.crew-hint-btn{width:16px;height:16px;border:none;background:transparent;color:var(--text-muted);border-radius:3px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:all .15s;flex-shrink:0}.crew-hint-btn svg{width:14px;height:14px}.crew-hint-btn:hover{color:var(--text-primary);background:var(--sidebar-hover)}.crew-hint-separator{width:1px;height:12px;background:var(--border-color);opacity:.5;margin-left:auto}.crew-hint-sep{color:var(--text-muted);opacity:.4;font-size:11px}.crew-hint-meta{font-size:11px;color:var(--text-muted);white-space:nowrap}.crew-hint-controls{position:relative;display:flex;align-items:center}.crew-at-hint{font-size:12px;color:var(--text-secondary);cursor:pointer;padding:3px 10px;border-radius:12px;background:var(--bg-sidebar);border:1px solid var(--border-color);transition:all .15s}.crew-at-hint:hover{background:var(--sidebar-hover);color:var(--text-primary);border-color:var(--text-muted)}.textarea-wrapper{position:relative}.crew-at-menu{position:absolute;bottom:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:var(--bg-main);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 -4px 16px #00000026,0 0 0 1px #0000000d;margin-bottom:4px;z-index:100}.crew-at-menu-item{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background .1s}.crew-at-menu-item:hover,.crew-at-menu-item.active{background:var(--sidebar-hover)}.crew-at-menu-icon{font-size:16px;flex-shrink:0}.crew-at-menu-name{font-size:13px;font-weight:600;color:var(--text-primary)}.crew-at-menu-desc{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=dark] .crew-at-menu{box-shadow:0 -4px 16px #00000080,0 0 0 1px #ffffff14}.crew-status-bar .crew-add-role-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:1px dashed var(--border-color);background:none;color:var(--text-muted);font-size:16px;cursor:pointer;margin-left:2px;transition:all .15s;padding:0;line-height:1}.crew-status-bar .crew-add-role-btn:hover{border-color:var(--text-muted);color:var(--text-secondary);background:var(--sidebar-hover)}@media(pointer:coarse){.wb-tab-action{width:40px;height:40px}.crew-hint-btn{width:32px;height:32px;padding:8px}.crew-hint-btn svg{width:16px;height:16px}.proxy-action-btn,.vscode-action-btn{width:32px;height:32px}.tree-item{min-height:36px;padding-top:6px;padding-bottom:6px}.crew-control-item{padding:10px 14px;min-height:40px}}@media(max-width:768px){.workbench-tabs .wb-tab-action:last-child{order:-1;width:40px;height:40px;margin-right:4px}.workbench-tabs .wb-tab-action:nth-last-child(2){display:none}.tree-item{padding:8px 10px!important;min-height:36px}.vscode-folder-row{min-height:36px;padding:6px 10px}.file-tree-panel{width:100%}.vscode-action-btn{width:28px;height:28px}.proxy-add-row{flex-wrap:wrap;gap:8px}.proxy-select-wrapper.proxy-agent-inline{width:100%;flex:none}.proxy-select-wrapper.proxy-scheme-inline{width:auto;flex-shrink:0}.proxy-input-host{flex:1;min-width:60px}.proxy-input-label{flex:1;min-width:80px}.proxy-port-row{flex-wrap:wrap;gap:6px}.proxy-port-actions{margin-left:auto}.proxy-port-url code{font-size:11px;word-break:break-all}.crew-message{padding:6px 12px}.crew-turn-divider,.crew-round-divider{padding:0 12px;max-width:100%}.crew-feature-thread{padding:0 12px}.crew-feature-header{padding:8px}.crew-feature-title{max-width:55vw}.crew-feature-body{padding-left:0}.crew-input-area .crew-input-hints{padding:0 12px;gap:4px;font-size:10px}.crew-hint-meta,.crew-hint-sep{font-size:10px}.crew-control-dropdown{right:0;left:auto}.crew-add-role-modal{width:calc(100vw - 32px);max-height:85vh}.crew-config-panel .crew-config-dialog{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0}.crew-msg-content pre,.crew-msg-content .table-scroll-wrapper{max-width:calc(100vw - 32px)}.crew-header-actions{position:static;transform:none;flex-shrink:0;order:-1}.terminal-toolbar{padding:8px 10px}.terminal-toolbar button{padding:6px 12px;font-size:14px;min-height:36px}.git-diff-preview pre{font-size:11px;tab-size:2}.git-file-item{padding:6px 10px}.crew-streaming-indicator{padding:8px 12px}.crew-load-more{padding:8px 12px;font-size:11px}.crew-scroll-bottom{margin-right:12px;bottom:8px;padding:6px 12px;font-size:11px}}@media(max-width:480px){.crew-message{padding:4px 8px}.crew-msg-name{font-size:12px}.crew-msg-time{font-size:10px}.crew-input-area{padding:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))}.crew-feature-thread{padding:0 8px;margin:4px auto}.crew-streaming-indicator,.crew-load-more{padding:6px 8px}.crew-scroll-bottom{margin-right:8px}}.crew-config-overlay{position:fixed;inset:0;background:#00000080;z-index:200;display:flex;align-items:center;justify-content:center}[data-theme=dark] .crew-config-overlay{background:#000000b3}.crew-config-panel{background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:16px;width:90%;max-width:520px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 4px 24px #00000014}[data-theme=dark] .crew-config-panel{box-shadow:0 4px 24px #0006}.crew-config-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color)}.crew-config-header h2{margin:0;font-size:18px;font-weight:700;color:var(--text-primary);letter-spacing:-.3px}.crew-config-close{width:32px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--text-secondary);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.crew-config-close:hover{background:var(--sidebar-hover);color:var(--text-primary)}.crew-config-body{flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:20px}.crew-config-section{display:flex;flex-direction:column;gap:8px}.crew-config-label{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.crew-config-input,.crew-config-textarea{background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;padding:10px 14px;color:var(--text-primary);font-size:14px;font-family:inherit;transition:border-color .2s,box-shadow .2s}.crew-config-input:focus,.crew-config-textarea:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 2px #4a9eff1f}.crew-config-textarea{resize:vertical}.crew-config-hint-text{font-size:12px;font-style:italic;color:var(--text-muted);margin-top:2px;line-height:1.4}.crew-config-row{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-primary)}.crew-config-input-sm{background:var(--bg-main);border:1px solid var(--border-color);border-radius:10px;padding:6px 10px;color:var(--text-primary);font-size:14px;width:70px;transition:border-color .2s,box-shadow .2s}.crew-config-input-sm:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 2px #4a9eff1f}.crew-roles-list{display:flex;flex-direction:column;gap:8px}.crew-role-item{background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s}.crew-role-item.is-decision-maker{border-color:var(--accent-blue)}.crew-role-header{display:flex;align-items:center;gap:8px}.crew-role-icon-input{width:36px;height:36px;text-align:center;background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:50%;padding:0;font-size:16px;color:var(--text-primary);transition:border-color .15s}.crew-role-icon-input:focus{outline:none;border-color:var(--accent-blue)}.crew-role-name-input{flex:1;background:transparent;border:none;border-bottom:1px solid var(--border-light);border-radius:0;padding:4px 2px;color:var(--text-primary);font-size:14px;font-weight:600;transition:border-color .15s}.crew-role-name-input:focus{outline:none;border-bottom-color:var(--accent-blue)}.crew-role-model-select{font-size:12px;padding:4px 24px 4px 8px;border-radius:8px}.crew-role-decision-label{cursor:pointer;font-size:14px;opacity:.3;transition:opacity .2s;padding:4px}.crew-role-decision-label:hover{opacity:.6}.crew-role-decision-label:has(input:checked){opacity:1}.crew-role-decision-label input{display:none}.crew-role-remove{width:28px;height:28px;background:none;border:none;border-radius:6px;color:var(--text-muted);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.crew-role-remove:hover{background:#d65d5d1a;color:var(--error)}.crew-role-remove:disabled{opacity:.3;cursor:not-allowed}.crew-role-desc-input{background:transparent;border:none;border-bottom:1px solid var(--border-light);border-radius:0;padding:4px 2px;color:var(--text-secondary);font-size:13px;transition:border-color .15s}.crew-role-desc-input:focus{outline:none;border-bottom-color:var(--accent-blue)}.crew-role-advanced summary{font-size:12px;color:var(--text-muted);cursor:pointer;padding:4px 0;transition:color .15s}.crew-role-advanced summary:hover{color:var(--text-secondary)}.crew-role-concurrency{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:12px}.crew-concurrency-label{color:var(--text-muted)}.crew-concurrency-input{width:48px;height:24px;border:1px solid var(--border-color);border-radius:4px;background:transparent;color:var(--text-primary);font-size:12px;text-align:center;padding:0 4px;font-family:inherit;outline:none;transition:border-color .15s;-moz-appearance:textfield}.crew-concurrency-input::-webkit-inner-spin-button,.crew-concurrency-input::-webkit-outer-spin-button{opacity:1}.crew-concurrency-input:focus{border-color:var(--accent-blue)}.crew-concurrency-follow{color:var(--text-muted);font-style:italic}.crew-config-section>.crew-add-role-btn{background:none;border:none;color:var(--text-muted);padding:6px 2px;cursor:pointer;font-size:12px;transition:color .15s}.crew-config-section>.crew-add-role-btn:hover{color:var(--accent-blue)}.crew-check-status{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:12px;padding:8px 0}.crew-check-spinner{width:14px;height:14px;border:2px solid var(--border-color);border-top-color:var(--accent-blue);border-radius:50%;animation:crew-spin .6s linear infinite}@keyframes crew-spin{to{transform:rotate(360deg)}}.crew-exists-banner{display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--sidebar-hover);border:1px solid var(--border-color);border-radius:8px;margin-bottom:8px}.crew-exists-icon{color:#22c55e;flex-shrink:0;margin-top:2px}.crew-exists-info{flex:1;min-width:0}.crew-exists-title{font-weight:600;font-size:13px;color:var(--text-primary);margin-bottom:4px}.crew-exists-detail{font-size:12px;color:var(--text-secondary);margin-bottom:2px}.crew-exists-session-id{color:var(--text-muted);font-family:monospace;font-size:11px;margin-left:4px}.crew-exists-path{font-size:11px;color:var(--text-muted);font-family:monospace}.crew-exists-actions{display:flex;gap:8px;margin-top:4px;margin-bottom:6px}.crew-exists-action-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border-radius:8px;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-size:13px;font-family:inherit;font-weight:500;cursor:pointer;transition:all .15s ease}.crew-exists-action-btn:hover:not(:disabled){border-color:var(--accent-blue);color:var(--accent-blue);background:color-mix(in srgb,var(--accent-blue) 8%,transparent)}.crew-exists-action-btn:disabled{opacity:.35;cursor:not-allowed}.crew-exists-action-btn.danger{color:#ef4444;border-color:#ef44444d}.crew-exists-action-btn.danger:hover{background:#ef44441a;border-color:#ef4444}.crew-exists-action-btn svg{width:14px;height:14px;flex-shrink:0}.crew-exists-hint{font-size:11px;color:var(--text-muted);text-align:center}.crew-add-role-area{margin-top:4px}.crew-add-role-builtin{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.crew-builtin-role-list{max-height:200px;overflow-y:auto}.crew-builtin-role-item{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background .1s;border-bottom:1px solid var(--border-color)}.crew-builtin-role-item:last-child{border-bottom:none}.crew-builtin-role-item:hover{background:var(--sidebar-hover)}.crew-builtin-role-icon{font-size:16px;width:24px;text-align:center;flex-shrink:0}.crew-builtin-role-name{font-size:12px;font-weight:500;color:var(--text-primary);white-space:nowrap}.crew-builtin-role-desc{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.crew-add-role-actions{display:flex;gap:8px;padding:8px 12px;border-top:1px solid var(--border-color);background:var(--sidebar-hover)}.crew-add-custom-btn,.crew-add-cancel-btn{flex:1;padding:5px 8px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-secondary);font-size:11px;cursor:pointer;font-family:inherit;transition:all .15s}.crew-add-custom-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue)}.crew-add-cancel-btn:hover{border-color:var(--text-muted)}.crew-template-btns{display:flex;gap:8px}.crew-template-btn{background:var(--bg-main);border:1px solid var(--border-color);color:var(--text-secondary);padding:8px 16px;border-radius:10px;cursor:pointer;font-size:13px;font-weight:500;transition:all .15s}.crew-template-btn:hover{background:var(--sidebar-hover);color:var(--text-primary);border-color:var(--text-muted)}.crew-template-btn.active{background:var(--session-active);border-color:var(--accent-blue);color:var(--accent-blue)}.crew-import-hint{padding-top:0!important}.crew-import-banner{display:flex;align-items:center;gap:8px;padding:8px 12px;background:color-mix(in srgb,var(--accent-color) 10%,transparent);border:1px solid color-mix(in srgb,var(--accent-color) 30%,transparent);border-radius:8px;font-size:.82rem;color:var(--accent-color)}.crew-import-banner svg{flex-shrink:0;color:var(--accent-color)}.crew-config-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--border-color)}.crew-config-footer .modern-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-primary);padding:7px 18px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease}.crew-config-footer .modern-btn:hover:not(:disabled){border-color:var(--accent-blue);color:var(--accent-blue);background:color-mix(in srgb,var(--accent-blue) 8%,transparent)}.crew-config-footer .modern-btn:disabled{opacity:.35;cursor:not-allowed}.crew-config-footer .modern-btn svg{width:14px;height:14px}.crew-config-hint{font-size:12px;color:var(--text-muted);margin-right:auto}.crew-agent-model-row{display:flex;gap:8px}.crew-agent-select{flex:1}.crew-model-select{width:120px;min-width:120px}.crew-select-wrapper{position:relative}.crew-config-select{width:100%;padding:10px 36px 10px 12px;background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:12px;color:var(--text-primary);font-size:14px;cursor:pointer;appearance:none;transition:border-color .15s}.crew-config-select:focus{outline:none;border-color:var(--accent-blue)}.crew-select-wrapper .select-arrow{position:absolute;right:10px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-muted)}.crew-workdir-group{display:flex;gap:6px}.crew-workdir-group .crew-config-input{flex:1}.crew-browse-btn{display:flex;align-items:center;justify-content:center;width:40px;min-width:40px;background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:12px;color:var(--text-muted);cursor:pointer;transition:all .15s}.crew-browse-btn:hover{border-color:var(--text-muted);color:var(--text-secondary)}.crew-roles-compact{display:flex;flex-direction:column;gap:4px}.crew-role-compact{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;background:var(--bg-sidebar);border:1px solid var(--border-color);transition:border-color .15s}.crew-role-compact.is-decision-maker{border-color:var(--accent-blue)}.crew-role-compact-icon{font-size:16px;width:24px;text-align:center}.crew-role-compact-name{flex:1;font-size:13px;font-weight:500;color:var(--text-primary)}.crew-role-compact-model{font-size:11px;color:var(--text-muted);padding:2px 8px;background:var(--bg-main);border-radius:4px}.crew-role-compact-star{background:none;border:none;color:var(--text-muted);opacity:.3;cursor:pointer;padding:2px;transition:opacity .15s}.crew-role-compact-star:hover{opacity:.6}.crew-role-compact-star.active{opacity:1;color:var(--accent-blue)}.crew-role-compact-remove{background:none;border:none;color:var(--text-muted);font-size:16px;cursor:pointer;padding:2px 4px;border-radius:4px;transition:all .15s}.crew-role-compact-remove:hover{color:var(--error);background:#d65d5d1a}.crew-add-role-inline-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:12px;padding:6px 10px;transition:color .15s;text-align:left}.crew-add-role-inline-btn:hover{color:var(--text-secondary)}.crew-summary-label{cursor:pointer;user-select:none}.crew-advanced-section{border:1px solid var(--border-color);border-radius:12px;padding:12px 16px}.crew-advanced-content{margin-top:10px;display:flex;flex-direction:column;gap:8px}.crew-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:12px}.crew-empty-icon{color:var(--text-muted);opacity:.5}.crew-empty-text{font-size:14px;color:var(--text-muted)}.crew-add-role-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}[data-theme=dark] .crew-add-role-overlay{background:#000000b3}.crew-add-role-modal{background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:12px;width:380px;max-width:92vw;max-height:80vh;overflow-y:auto;box-shadow:0 4px 24px #00000014}[data-theme=dark] .crew-add-role-modal{box-shadow:0 4px 24px #0006}.crew-add-role-title{padding:16px 20px;font-size:15px;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.crew-add-role-form{padding:12px 20px;display:flex;flex-direction:column;gap:8px}.crew-add-role-field{display:flex;flex-direction:column;gap:6px}.crew-add-role-field label{font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.crew-add-role-field input,.crew-add-role-field select,.crew-add-role-field textarea{background:var(--bg-main);border:1px solid var(--border-color);border-radius:12px;padding:10px 14px;color:var(--text-primary);font-size:14px;font-family:inherit;transition:border-color .2s,box-shadow .2s}.crew-add-role-field input:focus,.crew-add-role-field select:focus,.crew-add-role-field textarea:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 2px #4a9eff1f}.crew-add-role-presets{display:flex;flex-wrap:wrap;gap:8px;padding:16px 20px}.crew-preset-btn{background:var(--bg-main);border:1px solid var(--border-color);border-radius:10px;padding:8px 14px;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s}.crew-preset-btn:hover{background:var(--sidebar-hover);color:var(--text-primary);border-color:var(--accent-blue)}.crew-add-custom-details{border-top:1px solid var(--border-color)}.crew-add-custom-summary{padding:10px 20px;font-size:12px;color:var(--text-muted);cursor:pointer}.crew-add-custom-summary:hover{color:var(--text-primary)}.crew-add-role-row{display:flex;gap:8px}.crew-add-input{background:var(--bg-main);border:1px solid var(--border-color);border-radius:8px;padding:8px 12px;color:var(--text-primary);font-size:13px;font-family:inherit;width:100%;box-sizing:border-box;transition:border-color .15s}.crew-add-input:focus{outline:none;border-color:var(--accent-blue)}.crew-add-role-actions{display:flex;justify-content:flex-end;gap:10px;padding:12px 20px 16px}.crew-add-role-cancel{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);padding:10px 20px;border-radius:12px;cursor:pointer;font-size:14px;font-weight:500;transition:all .15s}.crew-add-role-cancel:hover{background:var(--sidebar-hover);color:var(--text-primary);border-color:var(--text-muted)}.crew-add-role-confirm{background:var(--accent);color:var(--bg-main);border:none;padding:10px 24px;border-radius:12px;cursor:pointer;font-size:14px;font-weight:600;transition:opacity .15s,transform .1s}.crew-add-role-confirm:hover:not(:disabled){opacity:.85;transform:translateY(-1px)}.crew-add-role-confirm:active:not(:disabled){transform:translateY(0)}.crew-add-role-confirm:disabled{opacity:.4;cursor:not-allowed}.roleplay-session-card{cursor:pointer;transition:border-color .15s,background .15s}.roleplay-session-card:hover{border-color:var(--accent-blue);background:var(--bg-secondary)}.roleplay-session-name{font-weight:600;font-size:13px;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roleplay-session-meta{display:flex;gap:8px;font-size:11px;color:var(--text-dim);flex-wrap:wrap}.roleplay-session-meta span:not(:last-child):after{content:"\b7";margin-left:8px}.roleplay-restore-btn{font-size:11px;padding:2px 10px;border-radius:6px;flex-shrink:0}
