:root{--primary-hue:220;--bg:#f8f9fb;--surface:#fff;--surface2:#f3f4f6;--surface3:#e9ebef;--surface-hover:#f0f1f4;--text:#1a1d23;--text2:#4b5563;--text3:#9ca3af;--text-inverse:#fff;--accent:hsl(var(--primary-hue), 72%, 50%);--accent-hover:hsl(var(--primary-hue), 72%, 44%);--accent-subtle:hsl(var(--primary-hue), 60%, 95%);--accent-muted:hsl(var(--primary-hue), 40%, 88%);--danger:#ef4444;--danger-bg:#fef2f2;--danger-border:#fecaca;--success:#10b981;--success-bg:#ecfdf5;--warning:#f59e0b;--warning-bg:#fffbeb;--border:#e5e7eb;--border-strong:#d1d5db;--ring:hsl(var(--primary-hue), 60%, 80%);--shadow-sm:0 1px 2px #0000000d;--shadow:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-md:0 4px 6px #0000000f, 0 2px 4px #0000000a;--shadow-lg:0 10px 25px #00000014, 0 4px 10px #0000000a;--shadow-overlay:0 16px 48px #0000001f, 0 4px 12px #0000000f;--radius-sm:4px;--radius:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--font:-apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", system-ui, sans-serif;--font-mono:"SF Mono", "Fira Code", "JetBrains Mono", ui-monospace, monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.875rem;--text-lg:1rem;--text-xl:1.125rem;--text-2xl:1.375rem;--leading:1.5;--transition:.15s ease;--transition-slow:.25s ease;--header-h:52px;--sidebar-w:260px;--safe-bottom:env(safe-area-inset-bottom,0px);--app-height:100dvh;--kanban-board-bg:var(--bg);--kanban-card-bg:var(--surface)}:root[data-theme=dark]{--bg:#0f1117;--surface:#1a1d27;--surface2:#22252f;--surface3:#2a2d38;--surface-hover:#2f323e;--text:#e5e7eb;--text2:#9ca3af;--text3:#6b7280;--accent:hsl(var(--primary-hue), 65%, 62%);--accent-hover:hsl(var(--primary-hue), 65%, 56%);--accent-subtle:hsl(var(--primary-hue), 30%, 16%);--accent-muted:hsl(var(--primary-hue), 25%, 22%);--danger:#f87171;--danger-bg:#ef44441a;--danger-border:#ef444440;--success:#34d399;--success-bg:#10b9811a;--warning:#fbbf24;--warning-bg:#f59e0b1a;--border:#2a2d38;--border-strong:#3a3d48;--ring:hsl(var(--primary-hue), 40%, 40%);--shadow-sm:0 1px 2px #0000004d;--shadow:0 1px 3px #0006, 0 1px 2px #0003;--shadow-md:0 4px 6px #0000004d, 0 2px 4px #0003;--shadow-lg:0 10px 25px #0006, 0 4px 10px #0003;--shadow-overlay:0 16px 48px #00000080, 0 4px 12px #0000004d;--kanban-board-bg:#262932;--kanban-card-bg:var(--surface3)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not([data-theme=dark]){--bg:#0f1117;--surface:#1a1d27;--surface2:#22252f;--surface3:#2a2d38;--surface-hover:#2f323e;--text:#e5e7eb;--text2:#9ca3af;--text3:#6b7280;--accent:hsl(var(--primary-hue), 65%, 62%);--accent-hover:hsl(var(--primary-hue), 65%, 56%);--accent-subtle:hsl(var(--primary-hue), 30%, 16%);--accent-muted:hsl(var(--primary-hue), 25%, 22%);--danger:#f87171;--danger-bg:#ef44441a;--danger-border:#ef444440;--success:#34d399;--success-bg:#10b9811a;--warning:#fbbf24;--warning-bg:#f59e0b1a;--border:#2a2d38;--border-strong:#3a3d48;--ring:hsl(var(--primary-hue), 40%, 40%);--shadow-sm:0 1px 2px #0000004d;--shadow:0 1px 3px #0006, 0 1px 2px #0003;--shadow-md:0 4px 6px #0000004d, 0 2px 4px #0003;--shadow-lg:0 10px 25px #0006, 0 4px 10px #0003;--shadow-overlay:0 16px 48px #00000080, 0 4px 12px #0000004d;--kanban-board-bg:#262932;--kanban-card-bg:var(--surface3)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{height:var(--app-height);overscroll-behavior:none;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation;overflow:hidden}body{width:100%;height:100%;font-family:var(--font);font-size:var(--text-base);line-height:var(--leading);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}#root{width:100%;height:100%;overflow:hidden}a{color:var(--accent);text-decoration:none}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text3)}pre code.hljs{padding:1em;display:block;overflow-x:auto}code.hljs{padding:3px 5px}.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-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{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}.shell{width:100%;max-width:100%;height:100%;display:flex;overflow:hidden}.rail{background:var(--surface);border-right:1px solid var(--border);width:56px;padding:calc(12px + env(safe-area-inset-top,0px)) 0 12px;z-index:20;flex-direction:column;flex-shrink:0;align-items:center;display:flex}.rail-top{flex-direction:column;flex:1;align-items:center;gap:4px;display:flex}.rail-bottom{flex-direction:column;align-items:center;gap:8px;display:flex}.rail-brand{-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:34px;height:34px;margin-bottom:16px;display:flex}.rail-btn{border-radius:var(--radius-md);width:38px;height:38px;color:var(--text3);cursor:pointer;transition:all var(--transition);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:relative}.rail-btn:hover{background:var(--surface-hover);color:var(--text)}.rail-btn.active{background:var(--accent-subtle);color:var(--accent)}.rail-btn.active:before{content:"";background:var(--accent);border-radius:0 2px 2px 0;width:3px;height:20px;position:absolute;top:50%;left:-8px;transform:translateY(-50%)}.rail-btn-dot{box-shadow:0 0 0 2px var(--bg);position:absolute;top:4px;right:4px}.rail-avatar{border-radius:var(--radius-full);background:var(--surface3);width:34px;height:34px;color:var(--text2);text-transform:uppercase;font-size:13px;font-weight:700}.rail-avatar:hover{background:var(--surface-hover);color:var(--text)}.user-menu{position:relative}.user-menu-dropdown{z-index:40;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;min-width:200px;padding:4px;display:flex;position:absolute;bottom:calc(100% + 8px);left:calc(100% + 8px);box-shadow:0 8px 24px #0000002e}.user-menu-header{border-bottom:1px solid var(--border);margin-bottom:4px;padding:8px 12px}.user-menu-name{font-size:var(--text-sm);color:var(--text);font-weight:600}.user-menu-role{font-size:var(--text-xs);color:var(--text3);text-transform:capitalize}.user-menu-dropdown button{text-align:left;width:100%;font-family:inherit;font-size:var(--text-sm);color:var(--text);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;padding:8px 12px;display:block}.user-menu-dropdown button:hover{background:var(--surface-hover)}.user-menu-dropdown .user-menu-danger{color:var(--danger)}.user-menu-dropdown .user-menu-danger:hover{background:var(--danger-bg)}.rail-status{border-radius:var(--radius-full);background:var(--text3);opacity:.4;width:8px;height:8px;transition:all var(--transition-slow)}.rail-status.online{background:var(--success);opacity:1;box-shadow:0 0 8px #10b98180}.panel{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:280px;display:flex;overflow:hidden}.panel-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 16px 12px;display:flex}.panel-title{font-size:var(--text-sm);color:var(--text);letter-spacing:-.01em;margin:0;font-weight:700}.panel-action{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:28px;height:28px;color:var(--text2);cursor:pointer;transition:all var(--transition);justify-content:center;align-items:center;font-size:16px;line-height:1;display:flex}.panel-action:hover{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent)}.panel-create{gap:6px;padding:0 12px 12px;display:flex}.panel-create-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:var(--text-sm);transition:border-color var(--transition);outline:none;flex:1;padding:7px 10px}.panel-create-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.panel-create-btn{border-radius:var(--radius);background:var(--accent);color:var(--text-inverse);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition);white-space:nowrap;border:none;padding:7px 14px;font-weight:600}.panel-create-btn:hover:not(:disabled){background:var(--accent-hover)}.panel-create-btn:disabled{opacity:.4;cursor:not-allowed}.panel-list{flex:1;padding:0 8px 8px;overflow-y:auto}.panel-item{border-radius:var(--radius);width:100%;font-size:var(--text-sm);color:var(--text);text-align:left;cursor:pointer;transition:all var(--transition);background:0 0;border:none;align-items:center;gap:8px;margin-bottom:1px;padding:9px 12px;line-height:1.35;display:flex}.panel-item:hover{background:var(--surface-hover)}.panel-item.active{background:var(--accent-subtle);color:var(--accent);font-weight:500}.panel-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.panel-item-tag{border-radius:var(--radius-full);background:var(--surface2);color:var(--text3);flex-shrink:0;padding:1px 6px;font-size:10px;font-weight:600}.panel-item.active .panel-item-tag{background:var(--accent-muted);color:var(--accent)}.panel-empty{text-align:center;padding:32px 16px}.panel-empty p{color:var(--text3);font-size:var(--text-sm);margin:0 0 12px}.panel-empty-action{border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--accent);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition);background:0 0;padding:8px 16px;font-weight:500}.panel-empty-action:hover{background:var(--accent-subtle);border-color:var(--accent)}.content{background:var(--bg);flex-direction:column;flex:1;min-width:0;max-width:100%;display:flex;overflow:hidden}.empty-state{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:48px;display:flex}.empty-icon{color:var(--border-strong);margin-bottom:4px}.empty-title{font-size:var(--text-lg);color:var(--text2);margin:0;font-weight:600}.empty-desc{font-size:var(--text-sm);color:var(--text3);max-width:320px;margin:0;line-height:1.5}.loading-screen{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:16px;height:100%;display:flex}.loading-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:var(--radius-full);width:28px;height:28px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:var(--text-sm);color:var(--text3);letter-spacing:.05em;text-transform:uppercase;font-weight:600}.modal-backdrop{height:var(--app-height);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#00000080;flex-direction:column;align-items:center;padding:16px;animation:.15s fadeIn;display:flex;position:fixed;top:0;left:0;right:0;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}}.modal{background:var(--surface);border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-overlay);margin:auto 0;padding:20px;animation:.2s modalIn}@keyframes modalIn{0%{opacity:0;transform:translateY(8px)scale(.98)}}.modal h2{font-size:var(--text-xl);margin:0 0 16px;font-weight:600}.modal-brand-icon{margin-bottom:8px}.modal-brand{font-size:var(--text-2xl);color:var(--text);letter-spacing:-.03em;margin:0 0 4px;font-weight:700}.modal-brand span{color:var(--accent)}.modal-subtitle{font-size:var(--text-sm);color:var(--text3);margin:0 0 24px}.modal form{flex-direction:column;gap:16px;display:flex}.form-field{flex-direction:column;gap:5px;display:flex}.form-label{font-size:var(--text-xs);color:var(--text2);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.form-label .optional{text-transform:none;letter-spacing:0;color:var(--text3);font-weight:400}.form-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:var(--text-base);transition:border-color var(--transition), box-shadow var(--transition);outline:none;padding:9px 12px}.form-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle)}.form-input::placeholder{color:var(--text3)}.btn-primary{border-radius:var(--radius);background:var(--accent);color:var(--text-inverse);font-size:var(--text-base);cursor:pointer;transition:background var(--transition);border:none;padding:10px;font-weight:600}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.form-error{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:var(--radius);color:var(--danger);font-size:var(--text-xs);padding:8px 12px;font-weight:500}.form-success{background:var(--accent-subtle);border:1px solid var(--accent-muted);border-radius:var(--radius);color:var(--accent);font-size:var(--text-xs);padding:8px 12px;font-weight:500}.chat-container{flex-direction:column;flex:1;min-height:0;display:flex}.chat-messages{flex-direction:column;flex:1;gap:6px;padding:20px 24px;display:flex;overflow-y:auto}.chat-loading,.chat-empty{color:var(--text3);font-size:var(--text-sm);flex:1;justify-content:center;align-items:center;display:flex}.chat-load-older{padding:var(--space-3) 0 var(--space-2);justify-content:center;display:flex}.chat-load-older-btn{background:var(--surface2);color:var(--text2);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);cursor:pointer;transition:background .12s}.chat-load-older-btn:hover:not(:disabled){background:var(--surface3)}.chat-load-older-btn:disabled{opacity:.6;cursor:default}.todo-panel{border-bottom:1px solid var(--border);background:var(--surface);flex:none;max-height:38%;overflow-y:auto}.todo-panel-header{cursor:pointer;width:100%;color:var(--text2);font-size:var(--text-sm);text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:8px 24px;font-weight:600;display:flex}.todo-panel-header:hover{background:var(--surface2)}.todo-panel-caret{color:var(--text3);width:10px;font-size:10px}.todo-panel-title{flex:1}.todo-panel-count{font-size:var(--text-xs);color:var(--text3);font-weight:500}.todo-panel-body{flex-direction:column;gap:10px;padding:4px 24px 12px;display:flex}.todo-group-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text3);align-items:center;gap:6px;margin-bottom:4px;font-weight:600;display:flex}.todo-group-badge{color:var(--text3);font-weight:500}.todo-group-items{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.todo-item{font-size:var(--text-sm);color:var(--text);align-items:baseline;gap:8px;line-height:1.4;display:flex}.todo-item-marker{flex:none;font-size:12px;line-height:1.4}.todo-item-pending .todo-item-marker{color:var(--text3)}.todo-item-in_progress{color:var(--accent);font-weight:600}.todo-item-in_progress .todo-item-marker{color:var(--accent)}.todo-item-done{color:var(--text3)}.todo-item-done .todo-item-marker{color:var(--success)}.todo-item-done .todo-item-text{text-decoration:line-through}.project-todo-summary{background:var(--surface);border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;max-height:min(25%,240px);display:flex;overflow:hidden}.project-todo-summary-body{flex-direction:column;flex:1;gap:12px;min-height:0;padding:4px 24px 12px;display:flex;overflow-y:auto}.project-todo-summary-card{flex-direction:column;gap:4px;display:flex}.project-todo-summary-card-title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text3);margin:0;font-weight:600}.project-todo-summary-items{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.project-todos-view{flex-direction:column;flex:1;min-height:0;display:flex}.project-todos-header{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;align-items:center;gap:12px;padding:12px 20px;display:flex}.project-todos-title{font-size:var(--text-lg);color:var(--text);margin:0;font-weight:600}.project-todos-body{flex-direction:column;flex:1;gap:16px;padding:20px 24px;display:flex;overflow-y:auto}.project-todos-card-group{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.project-todos-card-title{background:var(--surface2);border-bottom:1px solid var(--border);font-size:var(--text-sm);color:var(--text);margin:0;padding:10px 16px;font-weight:600}.project-todos-card-group .todo-panel{background:0 0;border-bottom:none;max-height:none;overflow:visible}.project-todos-card-group .todo-panel-header{padding:8px 16px}.project-todos-card-group .todo-panel-body{padding:4px 16px 12px}.project-todos-loading,.project-todos-error{color:var(--text3);text-align:center;font-size:var(--text-sm);padding:24px}.project-todos-error{color:var(--accent)}.project-todos-empty{color:var(--text3);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:60px 24px;display:flex}.project-todos-empty p{font-size:var(--text-base);color:var(--text2);margin:0;font-weight:600}.project-todos-empty-hint{max-width:360px;font-size:var(--text-sm)!important;color:var(--text3)!important;font-weight:400!important}.session-todos-body{flex:1;padding:20px 24px;overflow-y:auto}.session-todos-wrapper{border:1px solid var(--border);background:var(--surface);border-radius:8px;overflow:hidden}.session-todos-wrapper .todo-panel{border-bottom:none;max-height:none}.session-todos-empty{color:var(--text3);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:60px 24px;display:flex}.session-todos-empty p{font-size:var(--text-base);color:var(--text2);margin:0;font-weight:600}.session-todos-empty span{font-size:var(--text-sm);max-width:360px}.card-todo-badge{background:var(--surface2);color:var(--text2);font-size:var(--text-xs);font-variant-numeric:tabular-nums;border-radius:10px;flex:none;margin-left:auto;padding:1px 7px;font-weight:600}.chat-row{max-width:100%;display:flex}.chat-row-user{justify-content:flex-end}.chat-row-assistant{justify-content:flex-start}.chat-row-tool{justify-content:flex-start;width:100%}.chat-row-status,.chat-row-system{justify-content:center}.chat-row-step{width:100%}.chat-bubble{max-width:72%;font-size:var(--text-base);white-space:pre-wrap;word-break:break-word;padding:10px 14px;line-height:1.6}.chat-bubble-user{background:var(--accent);color:var(--text-inverse);border-radius:16px 16px 4px}.chat-bubble-pending{opacity:.65}.chat-bubble-assistant{background:var(--surface3);color:var(--text);border:1px solid color-mix(in srgb, var(--surface3) 90%, black);border-radius:16px 16px 16px 4px}.chat-markdown{white-space:normal}.chat-markdown>:first-child{margin-top:0}.chat-markdown>:last-child{margin-bottom:0}.chat-markdown p{margin:.4em 0}.chat-markdown h1,.chat-markdown h2,.chat-markdown h3,.chat-markdown h4,.chat-markdown h5,.chat-markdown h6{margin:.6em 0 .3em;line-height:1.25}.chat-markdown h1{font-size:1.3em}.chat-markdown h2{font-size:1.2em}.chat-markdown h3{font-size:1.1em}.chat-markdown ul,.chat-markdown ol{margin:.4em 0;padding-left:1.5em}.chat-markdown li{margin:.15em 0}.chat-markdown blockquote{border-left:3px solid var(--border);color:var(--text2);margin:.4em 0;padding:.2em .8em}.chat-markdown a{color:var(--accent)}.chat-markdown :not(pre)>code{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:0 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.chat-markdown pre{border:1px solid var(--border);border-radius:8px;margin:.5em 0;padding:.7em .9em;overflow-x:auto}.chat-markdown pre code{background:0 0;border:0;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85em}.chat-markdown table{border-collapse:collapse;margin:.4em 0}.chat-markdown th,.chat-markdown td{border:1px solid var(--border);padding:4px 8px}.chat-status{font-size:var(--text-xs);color:var(--text3);padding:2px 0}.chat-time{color:var(--text3);opacity:.7;margin-top:4px;font-size:10px}.chat-time-user{color:#fff9}.chat-agent-start{font-size:var(--text-xs);color:var(--text3);align-items:center;gap:8px;padding:6px 0;display:flex}.chat-agent-start-label{color:var(--text2);font-weight:600}.chat-agent-start-detail{font-family:var(--font-mono);color:var(--accent);background:var(--accent-subtle);border-radius:var(--radius-full);padding:1px 8px;font-size:10px}.chat-agent-start-time{color:var(--text3);margin-left:auto;font-size:10px}.chat-ready-notice{font-size:var(--text-xs);color:var(--success);align-items:center;gap:8px;padding:6px 0;font-weight:500;display:flex}.chat-ready-time{color:var(--text3);font-size:10px}.chat-thinking{font-size:var(--text-xs);color:var(--text3);align-items:center;gap:10px;padding:8px 0;font-style:italic;display:flex}.chat-thinking-dots{gap:4px;display:flex}.chat-thinking-dots span{border-radius:var(--radius-full);background:var(--text3);width:6px;height:6px;animation:1.4s ease-in-out infinite thinkBounce}.chat-thinking-dots span:nth-child(2){animation-delay:.2s}.chat-thinking-dots span:nth-child(3){animation-delay:.4s}@keyframes thinkBounce{0%,80%,to{opacity:.4;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.chat-thinking-interrupt{border:1px solid var(--danger-border);border-radius:var(--radius-full);background:var(--danger-bg);color:var(--danger);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition);margin-left:8px;padding:2px 10px;font-family:inherit;font-weight:600;line-height:1.4}.chat-thinking-interrupt:hover{background:var(--danger);color:var(--text-inverse);border-color:var(--danger)}.chat-system-notice{font-size:var(--text-xs);color:var(--text2);background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:12px;align-items:center;gap:8px;max-width:80%;padding:8px 16px;font-weight:500;line-height:1.4;display:inline-flex}.chat-system-notice-icon{flex-shrink:0;font-size:14px}.chat-report-chip{border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--text);font-size:var(--text-xs);text-align:left;transition:all var(--transition);border-radius:12px;align-items:center;gap:8px;padding:8px 14px;line-height:1.3;display:inline-flex}.chat-report-chip:hover{border-color:var(--accent);background:var(--accent-subtle)}.chat-report-chip-icon{flex-shrink:0;font-size:16px}.chat-report-chip-body{flex-direction:column;gap:1px;min-width:0;display:flex}.chat-report-chip-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.chat-report-chip-folder{color:var(--text3);font-size:10px}.chat-step-divider{font-size:var(--text-xs);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:12px;padding:8px 0;font-weight:700;display:flex}.chat-step-divider:before,.chat-step-divider:after{content:"";background:var(--border);flex:1;height:1px}.tool-block{font-size:var(--text-sm);background:0 0;max-width:100%}.tool-header{cursor:pointer;width:100%;font-size:var(--text-xs);color:var(--text2);text-align:left;transition:color var(--transition);background:0 0;border:none;align-items:center;gap:8px;padding:2px 0;display:flex}.tool-header:hover{color:var(--text)}.tool-error .tool-header{color:var(--danger)}.tool-running .tool-header{color:var(--accent)}.tool-label{font-weight:600;font-size:var(--text-xs);color:inherit;white-space:nowrap}.tool-summary{color:var(--text3);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;overflow:hidden}.tool-chevron{color:var(--text3);transition:transform var(--transition);text-align:center;flex-shrink:0;width:10px;font-size:9px}.tool-chevron.open{transform:rotate(90deg)}.tool-chevron-leaf{visibility:hidden}.tool-spinner{border:2px solid var(--accent-muted);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-left:auto;animation:.8s linear infinite tool-spin}@keyframes tool-spin{to{transform:rotate(360deg)}}.tool-status-badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;margin-left:auto;padding:1px 7px;font-size:10px;font-weight:700}.tool-badge-success{background:var(--success-bg);color:var(--success)}.tool-badge-error{background:var(--danger-bg);color:var(--danger)}.tool-badge-running{background:var(--accent-subtle);color:var(--accent)}.tool-body{padding:6px 0 6px 18px}.tool-section{margin-bottom:10px}.tool-section:last-child{margin-bottom:0}.tool-section-label{color:var(--text3);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px;font-size:10px;font-weight:700}.tool-pre{background:var(--surface2);border-radius:var(--radius);font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;word-break:break-word;max-height:300px;color:var(--text);margin:0;padding:8px 10px;line-height:1.5;overflow:auto}.tool-pre-error{background:var(--danger-bg);color:var(--danger)}.tool-images{flex-wrap:wrap;gap:8px;padding:6px 0 6px 18px;display:flex}.tool-image-thumb{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface2);cursor:zoom-in;padding:0;line-height:0;transition:border-color .12s;overflow:hidden}.tool-image-thumb:hover{border-color:var(--accent)}.tool-image-thumb img{object-fit:contain;width:auto;max-width:240px;height:auto;max-height:180px;display:block}.image-lightbox-backdrop{cursor:zoom-out;background:#000000d9}.image-lightbox{box-shadow:none;background:0 0;border:none;max-width:95vw;padding:0}.image-lightbox-img{object-fit:contain;border-radius:var(--radius);width:auto;max-width:95vw;height:auto;max-height:92vh;display:block}.autocomplete-dropdown{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay);z-index:99999;max-height:240px;margin-bottom:4px;position:absolute;bottom:100%;left:24px;right:24px;overflow-y:auto}.autocomplete-header{font-size:var(--text-xs);color:var(--text3);text-transform:uppercase;letter-spacing:.04em;padding:8px 12px 4px;font-weight:700}.autocomplete-item{text-align:left;cursor:pointer;width:100%;font:inherit;color:var(--text);transition:background var(--transition);background:0 0;border:none;flex-direction:column;gap:1px;padding:8px 12px;display:flex}.autocomplete-item:hover{background:var(--surface-hover)}.autocomplete-item-title{font-size:var(--text-sm);font-weight:500}.autocomplete-item-path{font-size:var(--text-xs);color:var(--text3);font-family:var(--font-mono)}.autocomplete-type-badge{text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-sm);margin-right:6px;padding:1px 5px;font-size:9px;font-weight:700}.autocomplete-type-report{background:var(--accent-subtle);color:var(--accent)}.autocomplete-type-session{background:var(--success-bg);color:var(--success)}.autocomplete-type-card{background:var(--warning-bg);color:var(--warning)}.question-input-wrapper{z-index:99999;position:relative}.autocomplete-inline{width:460px;max-width:90vw;margin-bottom:4px;position:fixed;bottom:auto;left:50%;transform:translate(-50%)}.input-bar{border-top:1px solid var(--border);padding:12px 24px;padding-bottom:calc(12px + var(--safe-bottom));background:var(--surface);position:relative}.input-bar-inner{align-items:flex-end;gap:8px;display:flex}.input-textarea{resize:none;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:var(--text-base);min-height:20px;max-height:200px;transition:border-color var(--transition), box-shadow var(--transition);border-radius:20px;outline:none;flex:1;padding:10px 14px;font-family:inherit;line-height:1.45;overflow-y:auto}.input-textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle);background:var(--surface)}.input-textarea::placeholder{color:var(--text3)}.input-buttons{gap:6px;display:flex}.send-btn{border-radius:var(--radius-full);background:var(--accent);width:38px;height:38px;color:var(--text-inverse);cursor:pointer;transition:all var(--transition);border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.send-btn:hover:not(:disabled){background:var(--accent-hover);transform:scale(1.05)}.send-btn:disabled{opacity:.3;cursor:not-allowed}.interrupt-btn{border:1px solid var(--danger-border);border-radius:var(--radius-full);background:var(--danger-bg);color:var(--danger);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:all var(--transition);padding:8px 14px;font-weight:600}.interrupt-btn:hover{background:var(--danger);color:var(--text-inverse);border-color:var(--danger)}.kanban-board{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.kanban-board .kanban-board-header{flex-shrink:0}.kanban-board-scroll{background:var(--kanban-board-bg);scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text3) 60%, transparent) transparent;flex-direction:column;flex:1;min-height:0;padding:16px 28px 24px;display:flex;position:relative;overflow:auto hidden}.kanban-board-scroll::-webkit-scrollbar{width:8px;height:8px}.kanban-board-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text3) 50%, transparent);border-radius:4px}.kanban-board-scroll::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--text3) 80%, transparent)}.kanban-board-scroll::-webkit-scrollbar-track{background:0 0}.project-pause-banner{background:var(--color-warning-bg,#d977061f);border:1px solid var(--color-warning-border,#d9770666);color:var(--color-warning-fg,#92400e);border-radius:6px;margin:0 0 12px;padding:10px 14px;font-size:.92rem;line-height:1.4}.project-pause-banner strong{margin-right:4px;font-weight:600}.kanban-columns{flex-direction:row;flex:1;gap:4px;width:100%;min-width:min-content;min-height:0;display:flex}.kanban-column{background:0 0;border:0;border-radius:0;flex-direction:column;align-items:stretch;gap:0;min-width:240px;min-height:88px;padding:0;display:flex}.kanban-column-header{background:0 0;border:0;border-radius:0;flex-direction:row;flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;display:flex}.kanban-column-header h3{font-size:var(--text-xs);color:var(--text2);text-transform:uppercase;letter-spacing:.06em;margin:0;font-weight:700}.kanban-count{background:var(--surface2);color:var(--text3);border-radius:var(--radius-full);padding:1px 8px;font-size:11px;font-weight:700}.kanban-cards{flex-flow:wrap;flex:auto;align-content:flex-start;align-items:center;gap:8px;min-width:0;min-height:64px;padding:12px;display:flex}.kanban-cards-empty{font-size:var(--text-xs);color:var(--text3);white-space:nowrap;padding:0 4px;font-style:italic}.kanban-card{background:var(--kanban-card-bg);border:1px solid color-mix(in srgb, var(--kanban-card-bg) 88%, black);border-radius:var(--radius-md);text-align:left;transition:background var(--transition), border-color var(--transition), box-shadow .15s ease;cursor:pointer;transform-origin:50%;flex-direction:column;flex-shrink:0;align-items:stretch;gap:8px;padding:4px 10px;font-family:inherit;animation:.35s cubic-bezier(.34,1.56,.64,1) cardGrowIn;display:flex;position:relative}@keyframes cardGrowIn{0%{opacity:0;max-width:0;transform:scale(.3)}60%{opacity:1;transform:scale(1.03)}to{opacity:1;max-width:290px;transform:scale(1)}}.kanban-card:hover{border-color:color-mix(in srgb, var(--kanban-card-bg) 70%, black);box-shadow:var(--shadow)}.kanban-card.dragging{opacity:.5}.kanban-card.blocked{border-left:3px solid var(--danger)}.kanban-card[data-expanded=true]{padding:10px 12px}.kanban-column.drag-over{background:var(--accent-subtle);box-shadow:inset 0 0 0 2px var(--accent-muted);border-color:var(--accent)}.kanban-card[data-drop-before=true]:before,.kanban-card[data-drop-after=true]:after{content:"";background:var(--accent);width:3px;box-shadow:0 0 6px var(--accent-muted);pointer-events:none;border-radius:2px;position:absolute;top:4px;bottom:4px}.kanban-card[data-drop-before=true]:before{left:-6px}.kanban-card[data-drop-after=true]:after{right:-6px}.card-thought-bubble{z-index:6;background:var(--accent-subtle);max-width:80%;color:var(--accent);border:1px solid var(--accent-muted);white-space:nowrap;text-overflow:ellipsis;box-shadow:var(--shadow);pointer-events:none;border-radius:11px;padding:3px 8px;font-size:10px;font-weight:500;line-height:1.3;animation:.22s thoughtBubbleIn;position:absolute;top:-9px;right:12px;overflow:hidden}.card-thought-bubble:before,.card-thought-bubble:after{content:"";background:var(--accent-subtle);border:1px solid var(--accent-muted);border-radius:50%;position:absolute;right:10px}.card-thought-bubble:before{width:5px;height:5px;bottom:-4px}.card-thought-bubble:after{width:3px;height:3px;bottom:-8px;right:6px}@keyframes thoughtBubbleIn{0%{opacity:0;transform:translateY(4px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.kanban-card-header{flex-direction:row;flex-shrink:0;align-items:center;gap:8px;min-height:24px;display:flex}.kanban-card-title{font-size:var(--text-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:600;line-height:1.3;overflow:hidden}.kanban-card-body{flex-direction:column;gap:8px;display:flex}.kanban-card-desc{font-size:var(--text-xs);color:var(--text2);line-height:1.4}.kanban-card-desc-empty{color:var(--text3);font-style:italic}.kanban-card-blocked{font-size:var(--text-xs);color:var(--danger);line-height:1.4}.kanban-card-blocked strong{margin-right:2px;font-weight:700}.kanban-card-meta{font-size:var(--text-xs);color:var(--text3);flex-flow:wrap;align-items:center;gap:6px;display:flex}.kanban-card-meta:empty{display:none}.kanban-card-buttons{flex-flow:wrap;align-items:center;gap:6px;margin-top:2px;display:flex}.kanban-card-desc-markdown>:first-child{margin-top:0}.kanban-card-desc-markdown>:last-child{margin-bottom:0}.kanban-card-desc-markdown p{margin:.3em 0}.kanban-card-desc-markdown ul,.kanban-card-desc-markdown ol{margin:.3em 0;padding-left:1.4em}.kanban-card-desc-markdown code{background:var(--surface2);border-radius:3px;padding:0 4px;font-size:.9em}.kanban-card-desc-markdown pre{background:var(--surface2);border-radius:4px;margin:.3em 0;padding:6px 8px;font-size:.9em;overflow-x:auto}.kanban-card-desc-markdown pre code{background:0 0;padding:0}.kanban-card-desc-markdown img{max-width:100%;height:auto}.kanban-card-worker{color:var(--accent);white-space:nowrap;align-items:center;gap:4px;font-size:10px;font-weight:600;display:inline-flex}.kanban-card-worker-dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 4px var(--accent);border-radius:50%}.kanban-card-actions{flex-shrink:0;align-items:center;gap:2px;display:flex;position:relative}.kanban-card-action-btn{background:color-mix(in srgb, var(--kanban-card-bg) 90%, black);border:1px solid color-mix(in srgb, var(--kanban-card-bg) 80%, black);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-xs);cursor:pointer;transition:background var(--transition), border-color var(--transition);align-items:center;gap:4px;padding:4px 8px;font-weight:500;display:inline-flex}.kanban-card-action-btn:hover{background:color-mix(in srgb, var(--kanban-card-bg) 80%, black);border-color:color-mix(in srgb, var(--kanban-card-bg) 65%, black)}.kanban-card-menu-btn{color:var(--text3);cursor:pointer;border-radius:var(--radius);height:26px;transition:background var(--transition), color var(--transition);letter-spacing:1px;background:0 0;border:none;padding:0 8px;font-size:14px;font-weight:700}.kanban-card-menu-btn:hover{background:var(--surface2);color:var(--text)}.kanban-card-menu{z-index:100;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:140px;position:fixed;overflow:hidden}.kanban-card-menu button{text-align:left;width:100%;font-size:var(--text-sm);color:var(--text);cursor:pointer;background:0 0;border:none;padding:8px 12px;display:block}.kanban-card-menu button:hover{background:var(--surface-hover)}.kanban-card-menu button.danger{color:var(--danger)}.kanban-card-menu button.danger:hover{background:var(--danger-bg)}.priority-badge{border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.03em;flex-shrink:0;padding:2px 7px;font-size:10px;font-weight:700}.priority-critical{background:var(--danger);color:var(--text-inverse)}.priority-high{background:var(--danger-bg);color:var(--danger)}.priority-medium{background:var(--warning-bg);color:var(--warning)}.priority-low{background:var(--success-bg);color:var(--success)}.priority-chevron-wrap{flex-shrink:0;position:relative}.priority-chevron{border-radius:var(--radius-sm);cursor:pointer;width:22px;height:22px;transition:background var(--transition), border-color var(--transition);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.priority-chevron:hover{background:color-mix(in srgb, var(--kanban-card-bg) 90%, black);border-color:color-mix(in srgb, var(--kanban-card-bg) 75%, black)}.priority-chevron.is-disabled{cursor:default;opacity:.55}.priority-chevron.is-disabled:hover{background:0 0;border-color:#0000}.priority-chevron-critical{color:var(--danger)}.priority-chevron-high{color:var(--warning)}.priority-chevron-medium{color:var(--text3)}.priority-chevron-low{color:var(--accent)}.priority-chevron-menu{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);min-width:140px;box-shadow:var(--shadow-md);flex-direction:column;gap:2px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0}.priority-chevron-option{border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:6px 8px;display:flex}.priority-chevron-option:hover{background:var(--surface-hover)}.priority-chevron-option.is-active{background:var(--accent-subtle);color:var(--accent);font-weight:600}.priority-chevron-option-label{flex:1}.blocked-indicator{color:var(--danger);white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:10px;font-weight:600;overflow:hidden}.waiting-indicator{color:var(--warning);white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:10px;font-weight:600;overflow:hidden}.dep-done{color:var(--success)}.dep-pending{color:var(--warning)}.kanban-columns{flex-flow:row;align-items:stretch}.kanban-column{flex:1 1 0;align-self:stretch}.kanban-cards{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--text3) 60%, transparent) transparent;flex-flow:column;flex:1;align-content:stretch;align-items:stretch;min-height:0;overflow-y:auto}.kanban-cards::-webkit-scrollbar{width:6px}.kanban-cards::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--text3) 50%, transparent);border-radius:3px}.kanban-cards::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--text3) 80%, transparent)}.kanban-cards::-webkit-scrollbar-track{background:0 0}.kanban-card{align-self:stretch;width:auto;max-width:290px}.kanban-card[data-drop-before=true]:before,.kanban-card[data-drop-after=true]:after{width:auto;height:3px;inset:auto 4px}.kanban-card[data-drop-before=true]:before{top:-6px}.kanban-card[data-drop-after=true]:after{bottom:-6px}.kanban-cards-empty{white-space:normal;align-self:center;margin-top:12px}.card-detail-grid{flex-direction:column;gap:12px;margin:16px 0;display:flex}.card-detail-row{font-size:var(--text-sm);gap:12px;display:flex}.card-detail-label{color:var(--text3);min-width:90px;font-weight:700;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;padding-top:2px}.card-detail-row-description{flex-direction:column;gap:4px}.card-detail-description{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);word-break:break-word;min-height:180px;font-size:var(--text-sm);color:var(--text);padding:10px 12px;line-height:1.5}.card-detail-description>:first-child{margin-top:0}.card-detail-description>:last-child{margin-bottom:0}.card-detail-description p{margin:.4em 0}.card-detail-description ul,.card-detail-description ol{margin:.4em 0;padding-left:1.5em}.card-detail-description code{background:var(--surface2);border-radius:3px;padding:0 4px;font-size:.92em}.card-detail-description pre{background:var(--surface2);border-radius:4px;margin:.4em 0;padding:8px 10px;font-size:.92em;overflow-x:auto}.card-detail-description pre code{background:0 0;padding:0}.card-detail-description img{max-width:100%;height:auto}.card-detail-description blockquote{border-left:3px solid var(--border);color:var(--text2);margin:.4em 0;padding-left:10px}.close-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition);padding:8px 20px;font-weight:500}.close-btn:hover{background:var(--surface2)}.create-btn{font-size:var(--text-xs);border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);cursor:pointer;transition:all var(--transition);background:0 0;padding:4px 10px;font-weight:600}.create-btn:hover{background:var(--accent);color:var(--text-inverse)}.create-form{background:var(--surface2);border-radius:var(--radius-md);flex-direction:column;gap:6px;margin:0 12px 12px;padding:12px;display:flex}.create-form input{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:var(--text-sm);outline:none;padding:7px 10px}.create-form input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.create-form button[type=submit]{border-radius:var(--radius);background:var(--accent);color:var(--text-inverse);font-size:var(--text-sm);cursor:pointer;border:none;padding:7px;font-weight:600}.create-form button[type=submit]:hover:not(:disabled){background:var(--accent-hover)}.create-form button[type=submit]:disabled{opacity:.4;cursor:not-allowed}.status-badge{border-radius:var(--radius-full);text-transform:capitalize;padding:1px 6px;font-size:10px;font-weight:600}.status-active{background:var(--success-bg);color:var(--success)}.status-paused{background:var(--warning-bg);color:var(--warning)}.status-archived{background:var(--surface3);color:var(--text3)}.settings-page{height:100%;padding:40px 48px;overflow-y:auto}.settings-page>*{max-width:640px}.settings-page-header{align-items:center;gap:16px;margin:0 0 32px;display:flex}.settings-page-header h2{font-size:var(--text-2xl);color:var(--text);letter-spacing:-.03em;margin:0;font-weight:700}.settings-back{flex:none}.settings-section{margin-bottom:32px}.settings-section h3{font-size:var(--text-xs);color:var(--text3);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);margin:0 0 16px;padding-bottom:8px;font-weight:700}.settings-info-grid{flex-direction:column;gap:2px;display:flex}.settings-row{font-size:var(--text-sm);gap:12px;padding:8px 0;display:flex}.settings-label{color:var(--text2);min-width:100px;font-weight:600}.settings-update-actions{font-size:var(--text-sm);flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.settings-update-actions .settings-error{flex-basis:100%;margin:0}.settings-error{color:var(--danger);font-size:var(--text-sm)}.settings-link{color:var(--primary);text-decoration:none}.settings-link:hover{text-decoration:underline}.theme-toggle{background:var(--surface2);border-radius:var(--radius);gap:2px;padding:3px;display:flex}.theme-btn{border-radius:var(--radius-sm);color:var(--text2);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition);background:0 0;border:none;padding:6px 16px;font-weight:500}.theme-btn:hover{color:var(--text);background:var(--surface-hover)}.theme-btn.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.plugin-panels{margin-top:10px}.plugin-panels-title{font-size:var(--text-sm);color:var(--text2);margin-bottom:8px;font-weight:600}.plugin-panels-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.plugin-panel-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.plugin-panel-row-title{color:var(--text);font-weight:600}.plugin-panel-open{font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;padding:6px 14px;font-weight:600}.plugin-panel-open:hover{background:var(--surface-hover,#0000000a)}.plugin-panel-modal{max-height:calc(var(--app-height) - 64px);overflow-y:auto}.plugin-panel-title{margin-top:0}.plugin-panel-frame{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;height:min(60vh,640px)}.plugin-fullpage{flex-direction:column;height:100%;min-height:0;display:flex}.plugin-fullpage-header{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:12px;padding:8px 12px;display:flex}.plugin-fullpage-title{margin:0;font-size:1.05rem}.plugin-fullpage-frame{background:var(--surface);border:0;flex:auto;width:100%}.plugins-list{flex-direction:column;gap:16px;display:flex}.plugin-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:16px}.plugin-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.plugin-card-name{font-size:var(--text-base);color:var(--text);margin:0 0 4px;font-weight:700}.plugin-card-meta{font-size:var(--text-xs);color:var(--text3);flex-wrap:wrap;gap:6px;display:flex}.plugin-card-meta-builtin{color:var(--text2);font-weight:600}.plugin-card-description{font-size:var(--text-sm);color:var(--text2);margin:12px 0 0;line-height:1.45}.plugin-card-error{font-size:var(--text-sm);color:var(--danger,#c00);margin:8px 0 0}.plugin-badge{font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 8px;font-weight:600}.plugin-badge--active{color:#008241;background:#00a0501f}.plugin-badge--failed{color:#aa1e1e;background:#c828281f}.plugin-permissions{border-top:1px dashed var(--border);margin-top:14px;padding-top:14px}.plugin-section-title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text3);margin-bottom:8px;font-weight:700}.plugin-hooks{margin-top:12px}.plugin-permissions-empty{font-size:var(--text-sm);color:var(--text3);margin:0}.plugin-permissions-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.plugin-permission{font-size:var(--text-sm);flex-direction:column;gap:1px;display:flex}.plugin-permission-label{color:var(--text);font-weight:600}.plugin-permission-desc{color:var(--text3);font-size:var(--text-xs)}.plugin-card-actions{border-top:1px dashed var(--border);justify-content:flex-end;margin-top:14px;padding-top:14px;display:flex}.plugin-settings-open{font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;padding:6px 14px;font-weight:600}.plugin-settings-open:hover{background:var(--surface-hover,#0000000a)}.plugin-settings-modal{max-height:calc(var(--app-height) - 64px);overflow-y:auto}.plugin-settings{flex-direction:column;gap:14px;display:flex}.plugin-setting-field{flex-direction:column;gap:4px;display:flex}.plugin-setting-label{font-size:var(--text-sm);color:var(--text);font-weight:600}.plugin-setting-required{color:var(--danger,#c00);margin-left:4px}.plugin-setting-desc{font-size:var(--text-xs);color:var(--text3)}.plugin-setting-input,.plugin-setting-select{font:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:6px 8px}.plugin-setting-input--inline{flex:1}.plugin-setting-checkbox{align-items:center;gap:8px;display:flex}.plugin-setting-secret-set{font-size:var(--text-xs);color:var(--text3);font-style:italic}.plugin-setting-kv-row{align-items:center;gap:6px;display:flex}.plugin-setting-kv-row>input{font:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);flex:1;padding:6px 8px}.plugin-setting-kv-remove,.plugin-setting-kv-add{font-size:var(--text-xs);border:1px solid var(--border);border-radius:var(--radius);color:var(--text2);cursor:pointer;background:0 0;padding:4px 8px}.plugin-setting-kv-add{align-self:flex-start}.plugin-setting-kv-remove:hover,.plugin-setting-kv-add:hover{background:var(--surface-hover,#0000000a)}.plugin-settings-actions{align-items:center;gap:8px;display:flex}.plugin-settings-save{font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;padding:6px 14px;font-weight:600}.plugin-settings-save[disabled]{opacity:.5;cursor:default}.plugin-settings-error{font-size:var(--text-xs);color:var(--danger,#c00)}.plugin-settings-success{font-size:var(--text-xs);color:#008241}.plugin-badge--approved{color:#008241;background:#00a0501f}.plugin-badge--pending{color:#a06e00;background:#d2960024}.plugin-badge--denied{color:var(--text2);background:#78787824}.plugin-badge--init_failed{color:#aa1e1e;background:#c828281f}.wasm-plugins{margin-bottom:20px}.wasm-plugins-list{flex-direction:column;gap:10px;margin:8px 0 0;padding:0;list-style:none;display:flex}.wasm-plugin-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:12px 14px}.wasm-plugin-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.wasm-plugin-heading{flex-direction:column;gap:3px;min-width:0;display:flex}.wasm-plugin-name{font-weight:600;font-size:var(--text-sm)}.wasm-plugin-repo{color:var(--text3);word-break:break-all;text-decoration:none}a.wasm-plugin-repo:hover{text-decoration:underline}.wasm-plugin-version{color:var(--text3);font-weight:400;font-size:var(--text-xs)}.plugins-toolbar{justify-content:flex-end;margin-bottom:12px;display:flex}.registry-tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:14px;display:flex}.registry-tab{appearance:none;font-size:var(--text-sm);color:var(--text2);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 14px;font-weight:600}.registry-tab--active{color:var(--text);border-bottom-color:var(--accent,#008241)}.registry-panel{flex-direction:column;gap:10px;display:flex}.registry-search{box-sizing:border-box;width:100%;font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:8px 12px}.registry-repo-add{align-items:stretch;gap:8px;display:flex}.registry-repo-add .registry-search{flex:1}.registry-plugin-source{font-size:var(--text-xs);color:var(--text3)}.plugin-hook-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.plugin-hook{font-size:var(--text-sm);flex-direction:column;gap:1px;display:flex}.plugin-hook-label{color:var(--text);font-weight:600}.plugin-hook-desc{color:var(--text3);font-size:var(--text-xs)}.wasm-plugin-actions{gap:8px;margin-top:12px;display:flex}.plugin-approval{padding:4px 2px}.plugin-approval-title{font-size:var(--text-lg,18px);margin:0 0 8px}.plugin-approval-intro{font-size:var(--text-sm);color:var(--text2);margin:0 0 14px;line-height:1.45}.plugin-approval-error{font-size:var(--text-sm);color:var(--danger,#c00);margin:14px 0 10px}.plugin-approval-actions{justify-content:flex-end;gap:10px;margin-top:14px;display:flex}.plugin-approval-more{font-size:var(--text-xs);color:var(--text3);text-align:right;margin:12px 0 0}.plugin-approval-approve{font-size:var(--text-sm);border-radius:var(--radius);color:#fff;cursor:pointer;background:#008241;border:1px solid #0000;padding:7px 16px;font-weight:600}.plugin-approval-approve:disabled{opacity:.6;cursor:default}.plugin-approval-deny{font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);cursor:pointer;padding:7px 16px;font-weight:600}.plugin-approval-deny:disabled{opacity:.6;cursor:default}.plugin-approval-remove{font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--danger,#c00);cursor:pointer;margin-left:auto;padding:7px 16px;font-weight:600}.plugin-approval-remove:disabled{opacity:.6;cursor:default}.settings-section-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.form-row{gap:12px;display:flex}.form-row>.form-field{flex:1;min-width:0}.acct-list{flex-direction:column;gap:8px;margin-top:10px;display:flex}.acct-row{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);align-items:center;gap:12px;padding:10px 12px;display:flex}.acct-row-main{flex:1;min-width:0}.acct-row-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.acct-name{font-weight:600}.acct-kind-tag{font-size:var(--text-xs,11px);color:var(--text2);border:1px solid var(--border);border-radius:999px;padding:1px 8px}.acct-row-sub{font-size:var(--text-sm);color:var(--text2);flex-wrap:wrap;gap:12px;margin-top:4px;display:flex}.acct-hint{font-family:var(--font-mono,monospace)}.acct-row-actions{gap:6px;display:flex}.acct-badge{font-size:var(--text-xs,11px);white-space:nowrap;border-radius:999px;padding:1px 8px;font-weight:600}.acct-badge-ok{background:color-mix(in srgb, var(--success,#2a8) 18%, transparent);color:var(--success,#2a8)}.acct-badge-warning{background:color-mix(in srgb, var(--warning,#d90) 22%, transparent);color:var(--warning,#b80)}.acct-badge-critical,.acct-badge-exceeded{background:color-mix(in srgb, var(--danger,#c00) 20%, transparent);color:var(--danger,#c00)}.rail-separator{background:var(--border);width:24px;height:1px;margin:8px 0}.panel-item-row{border-radius:var(--radius);align-items:center;margin-bottom:1px;display:flex;position:relative}.panel-item-row:hover .panel-item-menu{opacity:1}.panel-item-row.active{background:var(--accent-subtle)}.panel-item-row.active .panel-item{color:var(--accent);font-weight:500}.panel-item-row .panel-item{font-size:var(--text-sm);color:var(--text);cursor:pointer;text-align:left;border-radius:var(--radius);transition:background var(--transition);background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:9px 12px;display:flex}.panel-item-row .panel-item:hover{background:var(--surface-hover)}.panel-item-menu{opacity:0;color:var(--text3);cursor:pointer;letter-spacing:1px;border-radius:var(--radius-sm);transition:opacity var(--transition);background:0 0;border:none;padding:4px 8px;font-size:14px}.panel-item-menu:hover{background:var(--surface2);color:var(--text)}.panel-item-dropdown{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:140px;padding:4px;position:absolute;top:100%;right:4px}.panel-item-dropdown button{border-radius:var(--radius-sm);width:100%;font-size:var(--text-sm);color:var(--danger);cursor:pointer;text-align:left;transition:background var(--transition);background:0 0;border:none;padding:7px 12px;display:block}.panel-item-dropdown button:hover{background:var(--danger-bg)}.empty-action{border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition);background:0 0;margin-top:8px;padding:10px 24px;font-weight:600}.empty-action:hover{background:var(--accent);color:var(--text-inverse)}.form-actions{justify-content:flex-end;gap:8px;margin-top:8px;display:flex}.btn-secondary{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition);padding:8px 16px;font-weight:500}.btn-secondary:hover{background:var(--surface2);border-color:var(--border-strong)}.btn-secondary:disabled{opacity:.4;cursor:not-allowed}.form-link-btn{color:var(--accent);font-size:var(--text-xs);cursor:pointer;text-align:left;background:0 0;border:none;padding:4px 0;font-weight:500}.form-link-btn:hover{text-decoration:underline}.form-inline-card{background:var(--surface2);border-radius:var(--radius-md);flex-direction:column;gap:8px;padding:12px;display:flex}.folder-list{margin-bottom:20px}.folder-row{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:10px 12px;display:flex}.folder-row:last-child{border-bottom:none}.folder-info{flex-direction:column;flex:1;gap:2px;display:flex}.folder-info strong{font-size:var(--text-sm);color:var(--text);font-weight:600}.folder-path{font-size:var(--text-xs);color:var(--text3);font-family:var(--font-mono)}.report-list-item{text-align:left;cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;flex:1;padding:0}.report-list-project{font-size:var(--text-xs);color:var(--accent);background:var(--accent-subtle);border-radius:var(--radius-full);flex-shrink:0;padding:1px 6px;font-weight:600}.report-viewer{flex-direction:column;flex:1;min-height:0;padding:24px;display:flex}.report-viewer-header{flex-shrink:0;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.report-viewer-meta{flex:1;min-width:0}.report-viewer-title{font-size:var(--text-lg);margin:0 0 4px;font-weight:700}.report-viewer-info{font-size:var(--text-xs);color:var(--text3);align-items:center;gap:10px;display:flex}.report-viewer-project{color:var(--accent);font-weight:600}.report-viewer-session-link{color:var(--accent);font-size:var(--text-xs);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.report-content{font-size:var(--text-sm);color:var(--text);flex:1;line-height:1.7;overflow-y:auto}.report-content h1{font-size:var(--text-xl);border-bottom:1px solid var(--border);margin:24px 0 12px;padding-bottom:8px;font-weight:700}.report-content h2{font-size:var(--text-lg);margin:20px 0 10px;font-weight:700}.report-content h3{font-size:var(--text-base);margin:16px 0 8px;font-weight:700}.report-content h4{font-size:var(--text-sm);margin:12px 0 6px;font-weight:700}.report-content p{margin:0 0 12px}.report-content ul,.report-content ol{margin:0 0 12px;padding-left:24px}.report-content li{margin-bottom:4px}.report-content code{font-family:var(--font-mono);background:var(--surface2);border-radius:var(--radius-sm);padding:1px 5px;font-size:.9em}.report-content pre{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-md);margin:0 0 16px;padding:14px 16px;overflow-x:auto}.report-content pre code{font-size:var(--text-xs);background:0 0;padding:0;line-height:1.5}.report-content blockquote{border-left:3px solid var(--accent);color:var(--text2);background:var(--surface);margin:0 0 12px;padding:8px 16px}.report-content table{border-collapse:collapse;width:100%;font-size:var(--text-xs);margin:0 0 16px}.report-content th,.report-content td{border:1px solid var(--border);text-align:left;padding:8px 10px}.report-content th{background:var(--surface2);font-weight:700}.report-content img{border-radius:var(--radius-md);max-width:100%}.report-content a{color:var(--accent);text-decoration:none}.report-content a:hover{text-decoration:underline}.report-content hr{border:none;border-top:1px solid var(--border);margin:20px 0}.folder-delete{color:var(--text3);cursor:pointer;border-radius:var(--radius);transition:all var(--transition);background:0 0;border:none;padding:4px 8px;font-size:18px}.folder-delete:hover{background:var(--danger-bg);color:var(--danger)}.folder-create-section{border-top:1px solid var(--border);padding-top:16px}.folder-create-fields{flex-direction:column;gap:8px;display:flex}select.form-input{appearance:auto}.form-toggle-advanced{color:var(--accent);font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;margin-bottom:4px;padding:4px 0}.form-toggle-advanced:hover{text-decoration:underline}.form-advanced-section{border-top:1px solid var(--border);margin-top:4px;padding-top:12px}.form-hint{font-size:var(--text-xs);color:var(--text3);margin:2px 0 0;line-height:1.4}.form-link{font-size:var(--text-sm);color:var(--accent);word-break:break-all;margin:2px 0;text-decoration:none;display:inline-block}.form-link:hover{text-decoration:underline}.form-checkbox-label{font-size:var(--text-sm);color:var(--text);cursor:pointer;align-items:center;gap:8px;display:flex}.form-checkbox-label input[type=checkbox]{accent-color:var(--accent);flex-shrink:0}.workflow-step-block{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface2);margin-top:16px;padding:14px 14px 16px}.workflow-step-header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.workflow-step-title{font-size:var(--text-base);color:var(--text);margin:0;font-weight:600}.workflow-step-badge{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;background:var(--accent-subtle);color:var(--accent);border-radius:var(--radius-sm);padding:2px 8px;display:inline-block}.workflow-step-builtin{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:10px 12px}.workflow-step-builtin-label{font-size:var(--text-xs);color:var(--text3);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-weight:600}.workflow-step-builtin-body{font-family:inherit;font-size:var(--text-sm);color:var(--text2,var(--text));white-space:pre-wrap;word-break:break-word;max-height:180px;margin:0;line-height:1.45;overflow-y:auto}.workflow-step-plus{text-align:center;color:var(--text3);-webkit-user-select:none;user-select:none;margin:8px 0;font-size:28px;line-height:1}.workflow-step-extra{flex-direction:column;gap:6px;display:flex}.workflow-step-actions{align-items:center;gap:12px;margin-top:4px;display:flex}.workflow-step-saved{color:var(--accent)}.form-workflow-extras{flex-direction:column;gap:6px;margin-top:8px;display:flex}.btn-small{font-size:var(--text-sm);align-self:flex-start;padding:6px 12px}.model-picker-trigger{text-align:left;cursor:pointer;align-items:center;gap:8px;display:flex}.model-picker-trigger:disabled{opacity:.6;cursor:not-allowed}.model-picker-value{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.model-picker-chev{color:var(--text3);flex-shrink:0;font-size:12px}.model-picker-popup{z-index:200;gap:6px;max-height:320px;padding:6px}.model-picker-search{box-sizing:border-box;width:100%;font-family:inherit;font-size:var(--text-sm);color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;padding:7px 10px}.model-picker-search:focus{border-color:var(--accent)}.model-picker-list{flex-direction:column;gap:1px;display:flex;overflow-y:auto}.model-picker-item-highlight:not(:disabled){background:var(--surface-hover,var(--bg))}.chat-toolbar{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;align-items:center;gap:10px;min-height:44px;padding:10px 24px;display:flex}.chat-toolbar-name{font-size:var(--text-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.chat-toolbar-model-wrapper{flex-shrink:0;position:relative}.chat-toolbar-model{border-radius:var(--radius-full);background:var(--surface2);color:var(--text3);cursor:pointer;transition:all var(--transition);border:1px solid #0000;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:600}.chat-toolbar-model:hover{border-color:var(--border);color:var(--text2)}.chat-model-dropdown{min-width:220px;max-height:300px;overflow-y:auto}.chat-model-dropdown button.active{background:var(--accent-subtle);color:var(--accent);font-weight:600}.chat-model-loading{font-size:var(--text-xs);color:var(--text3);text-align:center;padding:12px}.chat-toolbar-status{font-size:var(--text-xs);color:var(--text2);flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:flex}.chat-toolbar-tasks{border:1px solid var(--border);border-radius:var(--radius);color:var(--text2);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition);background:0 0;flex-shrink:0;align-items:center;gap:6px;padding:4px 10px;font-weight:600;display:inline-flex}.chat-toolbar-tasks:hover{background:var(--surface-hover);color:var(--text)}.chat-toolbar-tasks-count{font-variant-numeric:tabular-nums;color:var(--text3);font-weight:500}.chat-toolbar-back{border-radius:var(--radius);width:28px;height:28px;color:var(--text2);cursor:pointer;transition:all var(--transition);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.chat-toolbar-back:hover{background:var(--surface-hover);color:var(--text)}.chat-toolbar-menu-wrapper{flex-shrink:0;position:relative}.chat-toolbar-menu{border-radius:var(--radius);width:30px;height:30px;color:var(--text3);cursor:pointer;transition:all var(--transition);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.chat-toolbar-menu:hover{background:var(--surface-hover);color:var(--text)}.chat-toolbar-dropdown{z-index:50;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:140px;margin-top:4px;padding:4px;position:absolute;top:100%;right:0}.chat-toolbar-dropdown button{border-radius:var(--radius-sm);width:100%;font-size:var(--text-sm);color:var(--text);cursor:pointer;text-align:left;transition:background var(--transition);background:0 0;border:none;padding:7px 12px;display:block}.chat-toolbar-dropdown button:hover{background:var(--surface-hover)}.chat-toolbar-dropdown button.danger{color:var(--danger)}.chat-toolbar-dropdown button.danger:hover{background:var(--danger-bg)}.status-dot{border-radius:var(--radius-full);flex-shrink:0;width:8px;height:8px}.status-dot-idle{background:var(--text3);opacity:.5}.status-dot-working{background:var(--success);animation:1.5s ease-in-out infinite pulse-dot}.status-dot-tool{background:var(--accent)}.status-dot-crashed{background:var(--danger)}.status-dot-questioning{background:var(--warning)}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.question-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;max-width:500px;padding:0;display:flex;overflow:hidden}.question-card.question-active{border-color:var(--accent-muted);box-shadow:0 0 0 1px var(--accent-subtle)}.question-card-title-bar{background:var(--surface2);border-bottom:1px solid var(--border);font-size:var(--text-sm);color:var(--text2);align-items:center;gap:8px;padding:10px 16px;font-weight:600;display:flex}.question-card-icon{font-size:15px;line-height:1}.question-card-title-text{flex:1}.question-card .question-item,.question-card .question-actions{padding-left:16px;padding-right:16px}.question-card .question-item:first-of-type{padding-top:14px}.question-card .question-actions{padding-top:4px;padding-bottom:14px}.question-card-text{font-size:var(--text-sm);color:var(--text);font-weight:500;line-height:1.5}.question-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:var(--text-sm);box-sizing:border-box;width:100%;transition:border-color var(--transition), box-shadow var(--transition);outline:none;padding:8px 12px;font-family:inherit}.question-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.question-input::placeholder{color:var(--text3)}.question-actions{gap:8px;display:flex}.question-actions .btn-primary,.question-actions .btn-secondary{font-size:var(--text-sm);padding:6px 14px}.panel-item-meta{flex-shrink:0;align-items:center;gap:6px;display:flex}.panel-item-time{color:var(--text3);white-space:nowrap;font-size:10px}.folder-delete-option{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;text-align:left;transition:all var(--transition);flex-direction:column;gap:4px;width:100%;padding:12px 14px;display:flex}.folder-delete-option:hover{border-color:var(--accent);background:var(--accent-subtle)}.folder-delete-option:disabled{opacity:.5;cursor:not-allowed}.folder-delete-option strong{font-size:var(--text-sm);color:var(--text)}.folder-delete-option span{font-size:var(--text-xs);color:var(--text3)}.folder-delete-option-group{border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px}.folder-delete-option-move strong{font-size:var(--text-sm);color:var(--text);display:block}.unread-dot{border-radius:var(--radius-full);background:var(--accent);flex-shrink:0;width:7px;height:7px}.processing-dot{border-radius:var(--radius-full);background:var(--success);flex-shrink:0;width:7px;height:7px;animation:1.5s ease-in-out infinite pulse-processing}@keyframes pulse-processing{0%,to{opacity:1;transform:scale(1);box-shadow:0 0 #10b98166}50%{opacity:.6;transform:scale(.85);box-shadow:0 0 6px 2px #10b9814d}}.upload-btn{border-radius:var(--radius-full);width:38px;height:38px;color:var(--text3);cursor:pointer;transition:all var(--transition);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.upload-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.upload-btn:disabled{opacity:.3;cursor:not-allowed}.attachment-chips{flex-wrap:wrap;gap:6px;padding:8px 24px 0;display:flex}.chat-attachment-chips{padding:6px 0 0}.attachment-chip{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text);align-items:center;gap:6px;max-width:250px;padding:6px 12px;display:inline-flex}.attachment-chip-icon{flex-shrink:0;font-size:14px}.attachment-chip-name{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.attachment-chip-uploading{color:var(--text3);font-style:italic}.attachment-chip-remove{color:var(--text3);cursor:pointer;transition:color var(--transition);background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:14px;line-height:1}.attachment-chip-remove:hover{color:var(--danger)}.attachment-chip-error{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger)}.question-item{flex-direction:column;gap:6px;display:flex}.question-item+.question-item{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.question-header{font-size:var(--text-xs);color:var(--text3);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.question-options{flex-direction:column;gap:2px;display:flex}.question-option-label input[type=radio],.question-option-label input[type=checkbox]{accent-color:var(--accent);flex-shrink:0;margin-top:2px}.question-option-text{flex-direction:column;gap:1px;display:flex}.question-option-desc{font-size:var(--text-xs);color:var(--text3);line-height:1.3}.question-resolved{opacity:.7;pointer-events:none}.question-resolved .question-card-title-bar{background:var(--success-bg);border-bottom-color:var(--success-bg)}.question-answer-display{font-size:var(--text-sm);color:var(--success);background:var(--success-bg);border-radius:var(--radius);padding:2px 8px;font-weight:600;display:inline-block}.question-option-label{font-size:var(--text-sm);color:var(--text);cursor:pointer;border-radius:var(--radius);transition:background var(--transition);align-items:flex-start;gap:8px;padding:6px 8px;display:flex}.question-option-label:hover{background:var(--surface2)}.confirm-dialog{background:var(--surface);border-radius:var(--radius-xl);width:100%;max-width:380px;box-shadow:var(--shadow-overlay);margin:auto 0;padding:24px 28px;animation:.2s modalIn}.confirm-dialog-title{font-size:var(--text-lg);color:var(--text);margin:0 0 8px;font-weight:600}.confirm-dialog-message{font-size:var(--text-sm);color:var(--text2);margin:0 0 20px;line-height:1.5}.confirm-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.confirm-dialog-danger{background:var(--danger)}.confirm-dialog-danger:hover:not(:disabled){background:var(--danger);opacity:.9}.context-menu{z-index:100;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-overlay);min-width:160px;padding:4px;position:fixed}.context-menu-item{text-align:left;width:100%;font-family:inherit;font-size:var(--text-sm);color:var(--text);cursor:pointer;border-radius:var(--radius-xs,4px);background:0 0;border:0;padding:8px 12px;display:block}.context-menu-item:hover:not(:disabled){background:var(--bg)}.context-menu-item:disabled{color:var(--text3);cursor:not-allowed}.context-menu-danger{color:var(--danger)}.context-menu-danger:hover:not(:disabled){background:var(--danger-bg)}.dropdown-menu{z-index:100;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay,0 8px 32px #0000002e);flex-direction:column;gap:1px;min-width:180px;padding:4px;display:flex}.dropdown-item{text-align:left;width:100%;font-family:inherit;font-size:var(--text-sm);color:var(--text);cursor:pointer;border-radius:var(--radius-sm);white-space:nowrap;background:0 0;border:0;align-items:center;gap:8px;padding:8px 12px;display:flex}.dropdown-item:hover:not(:disabled){background:var(--surface-hover,var(--bg))}.dropdown-item:disabled{color:var(--text3);cursor:not-allowed}.dropdown-item-label{text-overflow:ellipsis;flex:1;overflow:hidden}.dropdown-item-hint{font-size:var(--text-xs);color:var(--text3);font-weight:500}.dropdown-item-chev{color:var(--text3);margin-left:4px;font-size:14px}.dropdown-item-danger{color:var(--danger)}.dropdown-item-danger:hover:not(:disabled){background:var(--danger-bg)}.dropdown-item-active{background:var(--accent-subtle);color:var(--accent);font-weight:600}.dropdown-item-active:hover:not(:disabled){background:var(--accent-subtle)}.dropdown-divider{background:var(--border);height:1px;margin:4px 6px}.dropdown-item-with-desc{white-space:normal;flex-direction:column;align-items:stretch;gap:2px}.dropdown-item-row{align-items:center;gap:8px;width:100%;display:flex}.dropdown-item-desc{font-size:var(--text-xs);color:var(--text3);white-space:normal;line-height:1.35}.dropdown-item-active .dropdown-item-desc{color:color-mix(in srgb, var(--accent) 70%, var(--text2))}.menu-button{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--text3);cursor:pointer;transition:background var(--transition,.12s ease), color var(--transition,.12s ease);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.menu-button:hover{background:var(--surface-hover,var(--bg));color:var(--text)}.chat-toolbar-spacer{margin-left:auto}.kanban-header-icon-btn{border-radius:var(--radius);width:30px;height:30px;color:var(--text2);cursor:pointer;transition:all var(--transition);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.kanban-header-icon-btn:hover{background:var(--surface-hover);color:var(--text)}.btn-sm{font-size:var(--text-xs);flex-shrink:0;padding:4px 12px}.worker-questions-trigger{background:var(--accent-subtle);border:1px solid var(--accent-muted);border-radius:var(--radius-md);width:100%;font-size:var(--text-sm);color:var(--accent);cursor:pointer;transition:all var(--transition);align-items:center;gap:10px;margin-bottom:16px;padding:12px 16px;font-weight:600;animation:2s ease-in-out infinite questionPulse;display:flex}.worker-questions-trigger:hover{background:var(--accent);color:var(--text-inverse);border-color:var(--accent)}@keyframes questionPulse{0%,to{box-shadow:0 0 0 0 var(--accent-subtle)}50%{box-shadow:0 0 0 4px var(--accent-subtle)}}.worker-questions-icon{font-size:16px}.question-dialog{flex-direction:column;max-width:520px;display:flex;padding:0!important}.question-dialog-header{border-bottom:1px solid var(--border);background:var(--surface2);flex-shrink:0;padding:20px 24px 16px}.question-dialog-counter{font-size:var(--text-xs);color:var(--accent);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-weight:700}.question-dialog-context{align-items:baseline;gap:6px;margin-bottom:2px;display:flex}.question-dialog-card-label{font-size:var(--text-xs);color:var(--text3);font-weight:600}.question-dialog-card-title{font-size:var(--text-sm);color:var(--text);font-weight:600}.question-dialog-card-desc{font-size:var(--text-xs);color:var(--text3);line-height:1.4}.question-dialog-body{padding:20px 24px}.question-dialog-footer{border-top:1px solid var(--border);background:var(--surface2);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.question-dialog-left-actions{gap:8px;display:flex}.btn-danger-text{color:var(--danger)!important}.btn-danger-text:hover{background:var(--danger-bg)!important}.question-dialog-nav{gap:6px;display:flex}.question-dialog-actions{gap:8px;display:flex}.kanban-add-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:8px;margin-bottom:16px;padding:16px;display:flex}.kanban-add-form input,.kanban-add-form textarea,.kanban-add-form select{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:var(--text-sm);resize:vertical;outline:none;padding:8px 12px;font-family:inherit}.kanban-add-form input:focus,.kanban-add-form textarea:focus,.kanban-add-form select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.kanban-add-row{flex-wrap:wrap;gap:8px;display:flex}.kanban-add-row select{flex:1;min-width:120px}.dependency-chip-list{flex-wrap:wrap;gap:6px;margin:0 0 8px;padding:0;list-style:none;display:flex}.dependency-chip{font-size:var(--text-sm);background:var(--surface2,var(--surface));border:1px solid var(--border);border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:2px 4px 2px 10px;display:inline-flex}.dependency-chip-title{text-overflow:ellipsis;white-space:nowrap;max-width:280px;overflow:hidden}.dependency-chip-remove{color:var(--text2);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;font-size:16px;line-height:1;display:inline-flex}.dependency-chip-remove:hover{background:var(--surface);color:var(--text)}.dependency-picker-trigger{align-self:flex-start}.dependency-picker-backdrop{z-index:110}.dependency-picker-search{margin-bottom:10px}.dependency-picker-list{border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:4px;max-height:320px;margin-bottom:12px;padding:6px 8px;display:flex;overflow-y:auto}.dependency-picker-option{font-size:var(--text-sm);cursor:pointer;align-items:center;gap:8px;padding:4px 2px;display:flex}.dependency-picker-option-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.dependency-picker-step{font-size:var(--text-xs);color:var(--text2);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:1px 6px}.dependency-picker-step.step-in_progress{color:var(--accent);border-color:var(--accent)}.dependency-picker-empty{text-align:center;margin:0;padding:12px 4px}.workflow-select{width:100%;position:relative}.workflow-select-trigger{text-align:left;cursor:pointer;background:var(--bg);flex-direction:column;align-items:flex-start;gap:2px;display:flex}.workflow-select-trigger:disabled{opacity:.6;cursor:not-allowed}.workflow-select-name{font-size:var(--text-sm);color:var(--text);font-weight:600}.workflow-select-desc{font-size:var(--text-xs);color:var(--text3);line-height:1.35}.workflow-select-dropdown{max-height:360px;overflow-y:auto}.card-form-description{resize:vertical;min-height:180px}.card-reports-list{flex-direction:column;gap:4px;display:flex}.card-report-link{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;font:inherit;color:var(--text);transition:background var(--transition);justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;display:flex}.card-report-link:hover{background:var(--surface-hover)}.card-report-title{font-size:var(--text-sm);font-weight:500}.card-report-date{font-size:var(--text-xs);color:var(--text3)}.card-detail-actions{flex-wrap:wrap;align-items:center;gap:8px;margin:16px 0;display:flex}.card-delete-confirm{font-size:var(--text-sm);color:var(--text2);align-items:center;gap:8px;display:flex}.btn-danger{border:1px solid var(--danger);border-radius:var(--radius);color:var(--danger);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition);background:0 0;padding:8px 16px;font-weight:500}.btn-danger:hover{background:var(--danger);color:var(--text-inverse)}.announcement-banner{background:var(--accent-subtle);border-bottom:1px solid var(--accent);flex-shrink:0;justify-content:space-between;align-items:center;gap:16px;padding:10px 20px;display:flex}.announcement-content{font-size:var(--text-sm);color:var(--text);align-items:center;gap:8px;min-width:0;display:flex}.announcement-content strong{flex-shrink:0}.announcement-content span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.announcement-dismiss{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text2);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition);flex-shrink:0;padding:4px 12px;font-weight:500}.announcement-dismiss:hover{background:var(--surface2);color:var(--text)}.worker-comms{flex-direction:column;flex:1;min-height:0;padding:24px;display:flex}.worker-comms-header{flex-shrink:0;align-items:center;gap:16px;margin-bottom:16px;display:flex}.worker-comms-header h2{font-size:var(--text-lg);flex:1;margin:0;font-weight:700}.worker-comms-count{font-size:var(--text-sm);color:var(--text3)}.worker-comms-legend{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-wrap:wrap;flex-shrink:0;gap:12px;margin-bottom:16px;padding:12px 16px;display:flex}.worker-comms-legend-item{font-size:var(--text-xs);align-items:center;gap:6px;display:flex}.worker-comms-dot{border-radius:var(--radius-full);flex-shrink:0;width:10px;height:10px}.worker-comms-legend-name{color:var(--text);font-weight:600}.worker-comms-legend-step{color:var(--text3);font-family:var(--font-mono);font-size:10px}.worker-comms-timeline{flex-direction:column;flex:1;gap:8px;display:flex;overflow-y:auto}.worker-comms-empty{color:var(--text3);font-size:var(--text-sm);flex:1;justify-content:center;align-items:center;display:flex}.worker-comms-msg{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 14px;animation:.25s ease-out cardGrowIn}.worker-comms-msg-header{font-size:var(--text-xs);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;display:flex}.worker-comms-msg-icon{font-size:14px}.worker-comms-msg-from{font-weight:700}.worker-comms-msg-arrow{color:var(--text3)}.worker-comms-msg-to{font-weight:600}.worker-comms-msg-type{border-radius:var(--radius-sm);background:var(--surface2);color:var(--text3);text-transform:uppercase;letter-spacing:.03em;margin-left:auto;padding:1px 6px;font-size:10px;font-weight:700}.worker-comms-msg-time{color:var(--text3);font-size:10px}.worker-comms-msg-body{font-size:var(--text-sm);color:var(--text2);white-space:pre-wrap;word-break:break-word;max-height:150px;line-height:1.5;overflow-y:auto}.form-help{font-size:var(--text-sm,13px);color:var(--text3,#888);margin:4px 0 0}.form-field-row{gap:12px;display:flex}.form-field-row>.form-field{flex:1}.repeating-task-detail{flex-direction:column;gap:16px;padding:8px 12px 24px;display:flex}.repeating-task-desc{color:var(--text2);font-size:var(--text-sm);white-space:pre-wrap;margin:0}.repeating-task-meta{grid-template-columns:max-content 1fr;gap:6px 16px;margin:0;display:grid}.repeating-task-meta dt{color:var(--text2);font-weight:600}.repeating-task-meta dd{color:var(--text);margin:0}.repeating-task-prompt{background:var(--surface2,#1a1a1a);border-radius:8px;padding:8px 12px}.repeating-task-prompt summary{cursor:pointer;font-weight:600}.repeating-task-prompt pre{white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:var(--text-sm);color:var(--text2);margin:12px 0 0}.repeating-task-run-status{background:var(--surface2,#1a1a1a);border-left:3px solid var(--accent,#4a9eff);color:var(--text);font-size:var(--text-sm);border-radius:4px;padding:8px 12px}.usage-page{height:100%;padding:var(--space-6);flex:1;overflow-y:auto}.usage-header{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;display:flex}.usage-title{font-size:var(--text-xl);color:var(--text);letter-spacing:-.01em;margin:0;font-weight:700}.usage-stat-grid{gap:var(--space-3);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.usage-stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition)}.usage-stat-card:hover{box-shadow:var(--shadow)}.usage-stat-label{font-size:var(--text-xs);color:var(--text3);text-transform:uppercase;letter-spacing:.05em}.usage-stat-value{margin-top:var(--space-1);font-size:var(--text-2xl);color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.usage-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start;display:grid}.usage-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.usage-panel-header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.usage-panel-title{font-size:var(--text-sm);color:var(--text);margin:0;font-weight:600}.usage-panel-count{border-radius:var(--radius-full);background:var(--surface2);min-width:22px;color:var(--text3);font-size:var(--text-xs);text-align:center;font-variant-numeric:tabular-nums;padding:1px 8px;font-weight:600}.usage-panel-body{padding:var(--space-4);justify-content:center;align-items:center;min-height:96px;display:flex}.usage-panel-empty{color:var(--text3);font-size:var(--text-sm)}.usage-panel-placeholder{color:var(--text2);font-size:var(--text-sm)}@media (width<=767px){.usage-page{padding:var(--space-4)}.usage-grid{grid-template-columns:1fr}}.usage-section{margin-top:var(--space-6)}.usage-section-title{margin:0 0 var(--space-3);font-size:var(--text-lg);color:var(--text);letter-spacing:-.01em;font-weight:700}.usage-subgrid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start;display:grid}.usage-trend-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.usage-cost-subtotal{font-size:var(--text-sm);color:var(--text);font-variant-numeric:tabular-nums;font-weight:600}.usage-cost-body{padding:var(--space-2) var(--space-4) var(--space-3)}.usage-op-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.usage-op-row{align-items:center;gap:var(--space-1) var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label figs""bar bar";display:grid}.usage-op-row:last-child{border-bottom:none}.usage-op-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-sm);color:var(--text);grid-area:label;overflow:hidden}.usage-op-label-path{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-xs);text-align:left;direction:rtl}.usage-op-figs{align-items:baseline;gap:var(--space-2);white-space:nowrap;font-variant-numeric:tabular-nums;grid-area:figs;display:flex}.usage-op-tokens{font-size:var(--text-xs);color:var(--text3)}.usage-op-cost{font-size:var(--text-sm);color:var(--text);font-weight:600}.usage-op-bar{border-radius:var(--radius-full);background:var(--surface2);grid-area:bar;height:4px;overflow:hidden}.usage-op-bar-fill{background:var(--accent);border-radius:var(--radius-full);height:100%;display:block}.usage-op-more{padding-top:var(--space-2);font-size:var(--text-xs);color:var(--text3)}.usage-trend-header{gap:var(--space-2);flex-wrap:wrap}.usage-trend-controls{align-items:center;gap:var(--space-2);display:flex}.usage-seg{border:1px solid var(--border);border-radius:var(--radius);display:inline-flex;overflow:hidden}.usage-seg-btn{background:var(--surface);color:var(--text2);font-family:inherit;font-size:var(--text-xs);cursor:pointer;transition:all var(--transition);border:none;padding:4px 10px;font-weight:600}.usage-seg-btn:hover{background:var(--surface-hover);color:var(--text)}.usage-seg-btn.active{background:var(--accent-subtle);color:var(--accent)}.usage-seg-btn+.usage-seg-btn{border-left:1px solid var(--border)}.usage-trend-select{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font-family:inherit;font-size:var(--text-xs);cursor:pointer;padding:4px 8px;font-weight:600}.usage-trend-select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle);outline:none}.usage-trend-body{padding:var(--space-4)}.usage-chart{width:100%;display:block}.usage-chart-grid{stroke:var(--border);stroke-width:1px;opacity:.6}.usage-chart-axis{fill:var(--text3);font-variant-numeric:tabular-nums;font-size:10px}.usage-legend{margin:var(--space-3) 0 0;gap:var(--space-2) var(--space-4);flex-wrap:wrap;padding:0;list-style:none;display:flex}.usage-legend-item{align-items:center;gap:var(--space-2);min-width:0;font-size:var(--text-xs);color:var(--text2);display:flex}.usage-legend-swatch{border-radius:2px;flex-shrink:0;width:10px;height:10px}.usage-legend-label{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.usage-legend-more{font-size:var(--text-xs);color:var(--text3)}@media (width<=767px){.usage-subgrid,.usage-trend-grid{grid-template-columns:1fr}.usage-trend-header{flex-direction:column;align-items:flex-start}.usage-trend-controls{width:100%}}:is(.usage-panel-body:has(.usage-list),.usage-panel-body:has(.usage-turn-list)){justify-content:flex-start;align-items:stretch;padding:0}.usage-list{flex-direction:column;width:100%;display:flex}.usage-row{gap:var(--space-1);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);flex-direction:column;display:flex}.usage-row:last-child{border-bottom:none}.usage-row-clickable{cursor:pointer;transition:background var(--transition)}.usage-row-clickable:hover{background:var(--surface-hover)}.usage-row.is-selected{background:var(--accent-subtle)}.usage-row-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.usage-row-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-sm);color:var(--text);font-weight:600;overflow:hidden}.usage-row-figs{white-space:nowrap;font-size:var(--text-sm);color:var(--text2);font-variant-numeric:tabular-nums}.usage-row-sub{font-size:var(--text-xs);color:var(--text3);font-variant-numeric:tabular-nums}.usage-gauge{border-radius:var(--radius-full);background:var(--surface2);width:100%;height:8px;overflow:hidden}.usage-gauge-fill{background:var(--accent);border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow);display:block}.usage-gauge-fill.is-warn{background:var(--warning)}.usage-gauge-fill.is-danger{background:var(--danger)}.usage-toolbar{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);display:flex}.usage-toolbar-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text3)}.usage-sort-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text2);font-family:inherit;font-size:var(--text-xs);cursor:pointer;transition:all var(--transition);padding:3px 10px;font-weight:600}.usage-sort-btn:hover{background:var(--surface-hover);color:var(--text)}.usage-sort-btn.is-active{background:var(--accent-subtle);color:var(--accent);border-color:var(--accent-muted)}.usage-filter-bar{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);background:var(--accent-subtle);font-size:var(--text-xs);color:var(--text2);display:flex}.usage-filter-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.usage-clear-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text2);font-family:inherit;font-size:var(--text-xs);cursor:pointer;transition:all var(--transition);padding:2px 10px;font-weight:600}.usage-clear-btn:hover{background:var(--surface-hover);color:var(--text)}.usage-empty-sub{padding:var(--space-4);font-size:var(--text-sm);color:var(--text3)}.usage-detail{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.usage-detail-header{align-items:center;gap:var(--space-3);min-width:0;display:flex}.usage-detail-header .usage-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.usage-back-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text2);font-family:inherit;font-size:var(--text-xs);cursor:pointer;transition:all var(--transition);flex-shrink:0;padding:4px 12px;font-weight:600}.usage-back-btn:hover{background:var(--surface-hover);color:var(--text)}.usage-kind-badge{border-radius:var(--radius);font-size:var(--text-xs);background:var(--accent-subtle);color:var(--accent);flex-shrink:0;padding:2px 8px;font-weight:600}.usage-detail-context{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;display:flex}.usage-turn-list{flex-direction:column;width:100%;min-width:0;display:flex}.usage-turn{border-bottom:1px solid var(--border)}.usage-turn:last-child{border-bottom:none}.usage-turn-summary{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);cursor:pointer;min-width:0;list-style:none;display:flex}.usage-turn-summary::-webkit-details-marker{display:none}.usage-turn-summary:hover{background:var(--surface-hover)}.usage-turn-seq{font-size:var(--text-xs);color:var(--text3);flex-shrink:0;min-width:28px;font-weight:600}.usage-turn-prompt{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-sm);color:var(--text);flex:1;overflow:hidden}.usage-turn-prompt em{color:var(--text3);font-style:italic}.usage-turn-figs{gap:var(--space-3);font-size:var(--text-xs);color:var(--text2);font-variant-numeric:tabular-nums;flex-shrink:0;display:flex}.usage-turn-cache{color:var(--text3)}.usage-turn-body{padding:var(--space-2) var(--space-4) var(--space-3) calc(var(--space-4) + 28px);gap:var(--space-2);flex-direction:column;display:flex}.usage-turn-meta{gap:var(--space-3);font-size:var(--text-xs);color:var(--text3);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.usage-turn-models{gap:var(--space-1);padding-left:var(--space-3);border-left:2px solid var(--border);flex-direction:column;display:flex}.usage-turn-files{gap:var(--space-2);font-size:var(--text-xs);flex-direction:column;display:flex}.usage-turn-files-title{color:var(--text2);margin-bottom:2px;font-weight:600}.usage-turn-files ul{padding-left:var(--space-4);color:var(--text2);margin:0}.usage-turn-files li{font-family:var(--font-mono,monospace);text-align:left;text-overflow:ellipsis;white-space:nowrap;direction:rtl;overflow:hidden}.error-boundary{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:32px;display:flex}.error-boundary-title{color:var(--text);font-weight:600}.error-boundary-detail{color:var(--text2);word-break:break-word;max-width:480px;font-size:13px}.error-boundary-retry{border:1px solid var(--accent);background:var(--accent-subtle);color:var(--accent);cursor:pointer;border-radius:6px;margin-top:4px;padding:6px 16px}.error-boundary-retry:hover{background:var(--accent-muted)}.connection-banner{background:var(--warning-bg);border-bottom:1px solid var(--warning);color:var(--text);flex-shrink:0;align-items:center;gap:8px;padding:6px 20px;font-size:13px;display:flex}.connection-banner-dot{background:var(--warning);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite connection-banner-pulse}@keyframes connection-banner-pulse{0%,to{opacity:1}50%{opacity:.3}}.fetch-error-banner{background:var(--danger-bg);border-bottom:1px solid var(--danger-border);color:var(--text);flex-shrink:0;justify-content:center;align-items:center;gap:12px;padding:8px 16px;font-size:13px;display:flex}.fetch-error-banner button{border:1px solid var(--danger);color:var(--danger);cursor:pointer;background:0 0;border-radius:6px;padding:3px 12px;font-size:12px}.fetch-error-banner button:hover{background:var(--danger);color:var(--text-inverse)}.fetch-error-pane{color:var(--text2);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:32px;display:flex}.fetch-error-pane button{border:1px solid var(--accent);background:var(--accent-subtle);color:var(--accent);cursor:pointer;border-radius:6px;padding:6px 16px}.fetch-error-pane button:hover{background:var(--accent-muted)}@media (width<=768px){.shell{flex-direction:column}.rail{border-right:none;border-bottom:1px solid var(--border);width:100%;min-height:56px;padding:env(safe-area-inset-top,0px) max(12px, env(safe-area-inset-right,0px)) 0 max(12px, env(safe-area-inset-left,0px));flex-direction:row;flex-shrink:0;overflow-x:auto}.rail-top{flex-direction:row;flex:1;justify-content:flex-start;gap:2px}.rail-bottom{flex-direction:row;gap:4px}.rail-brand{width:30px;height:30px;margin-bottom:0;margin-right:8px;font-size:14px}.rail-btn{width:42px;height:42px}.rail-btn.active:before{border-radius:2px 2px 0 0;width:20px;height:3px;top:auto;bottom:-4px;left:50%;transform:translate(-50%)}.rail-separator{background:var(--border);width:1px;height:24px;margin:0 4px}.rail-avatar{width:30px;height:30px;font-size:11px}.rail-status{display:none}.user-menu-dropdown{bottom:auto;left:auto;top:calc(env(safe-area-inset-top,0px) + 56px + 4px);position:fixed;right:8px}.panel{z-index:30;border-right:none;width:100%;transition:transform .2s;position:fixed;inset:0}.panel.panel-hidden-mobile{pointer-events:none;transform:translate(-100%)}.content{flex:1;min-height:0}.chat-bubble{max-width:90%}.chat-toolbar{gap:6px;padding-left:12px;padding-right:12px}.chat-toolbar-name{font-size:var(--text-sm)}.input-bar{padding-top:8px;padding-left:12px;padding-right:12px;padding-bottom:calc(8px + var(--safe-bottom))}.chat-messages{padding:20px 16px}.todo-panel{max-height:min(22%,180px)}.todo-panel-header{padding:6px 12px}.todo-panel-body{gap:6px;padding:2px 12px 8px}.todo-group-items{gap:2px}.todo-item{font-size:var(--text-xs);line-height:1.35}.kanban-board-scroll{-webkit-overflow-scrolling:touch;padding-left:0;padding-right:0}.kanban-board-header{gap:8px}.kanban-add-row{flex-direction:column}.kanban-add-row select{min-width:auto}.modal,.question-dialog{max-width:calc(100vw - 32px)!important}.settings-page{padding:16px}.autocomplete-dropdown{left:12px;right:12px}.empty-state{padding:24px}.worker-questions-trigger{font-size:var(--text-xs);padding:10px 12px}}@media (width<=480px){.rail{min-height:48px;padding:env(safe-area-inset-top,0px) max(8px, env(safe-area-inset-right,0px)) 0 max(8px, env(safe-area-inset-left,0px))}.chat-toolbar,.input-bar{padding-left:8px;padding-right:8px}.chat-messages{padding-left:12px;padding-right:12px}.rail-btn{width:36px;height:36px}.rail-brand{width:26px;height:26px;margin-right:4px;font-size:12px}.tabbar{min-height:38px;padding:0 8px}.tab-wrap{height:28px;padding:0 4px 0 10px}.tab-new{width:28px;height:28px;font-size:16px}.chat-bubble{max-width:95%;font-size:var(--text-sm)}.modal{padding:16px!important}}.tabbar{border-bottom:1px solid var(--border);background:var(--surface);scrollbar-width:thin;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:6px;width:100%;max-width:100%;padding:6px 10px;display:flex;overflow:auto visible}.tab-wrap{border-radius:var(--radius-full);background:var(--surface2);height:36px;color:var(--text2);flex-shrink:0;align-items:center;padding:0 4px 0 12px;transition:background .12s,color .12s,box-shadow .12s;display:inline-flex;position:relative}.tab-wrap:hover{background:var(--surface3);color:var(--text)}.tab-wrap:has(.tab-active){background:var(--accent);color:var(--text-inverse);box-shadow:0 1px 2px #00000014}.tab-close{width:20px;height:20px;color:inherit;border-radius:var(--radius-full);cursor:pointer;opacity:.6;background:0 0;border:0;justify-content:center;align-items:center;margin-left:4px;padding:0;font-size:12px;line-height:1;transition:opacity .12s,background .12s;display:inline-flex}.tab-wrap:hover .tab-close,.tab-wrap:focus-within .tab-close{opacity:1}.tab-wrap:has(.tab-active) .tab-close{opacity:1}.tab-close:hover{background:#00000026}.tab-wrap:has(.tab-active) .tab-close:hover{background:#fff3}@media (width<=768px){.tabbar{gap:8px;min-height:44px;padding:0 12px}.tab-wrap{height:32px;padding-right:12px}.tab-close{display:none}}.tab{height:100%;color:inherit;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-family:inherit;display:inline-flex}.tab-active{font-weight:600}.tab-opened{max-width:200px}.tab-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tab-icon{color:var(--text3);font-size:12px;font-weight:700}.tab-icon-project{color:var(--warning)}.tab-icon-report,.tab-icon-repeating-task{color:var(--text3);align-items:center;display:inline-flex}.tab-new{border-radius:var(--radius-full);background:var(--surface2);width:32px;height:32px;color:var(--text2);cursor:pointer;border:0;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;padding:0;font-size:18px;line-height:1;transition:background .12s,color .12s;display:inline-flex}.tab-new:hover{background:var(--accent);color:var(--text-inverse)}@media (width<=768px){.tab-new{width:36px;height:36px;font-size:20px}}.tab-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.tab-dot-running{background:var(--accent);animation:1.4s ease-in-out infinite tab-dot-glow}.tab-dot-unread{background:var(--success);box-shadow:0 0 6px var(--success)}.tab-wrap:has(.tab-active) .tab-dot-running{background:var(--text-inverse);animation-name:tab-dot-glow-inverse}.tab-wrap:has(.tab-active) .tab-dot-unread{background:var(--text-inverse);box-shadow:0 0 6px #ffffff8c}@keyframes tab-dot-glow{0%,to{box-shadow:0 0 4px var(--accent), 0 0 8px var(--accent);opacity:1}50%{box-shadow:0 0 2px var(--accent), 0 0 4px var(--accent);opacity:.6}}@keyframes tab-dot-glow-inverse{0%,to{opacity:1;box-shadow:0 0 4px #ffffffb3,0 0 8px #ffffff73}50%{opacity:.7;box-shadow:0 0 2px #ffffffb3,0 0 4px #ffffff73}}.list-view{flex-direction:column;flex:1;min-height:0;display:flex}.list-view-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.list-view-title{font-size:var(--text-lg);margin:0;font-weight:600}.list-view-action{background:var(--accent);color:var(--text-inverse);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;border:0;padding:6px 12px;font-family:inherit}.list-view-body{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.list-view-rows{flex-direction:column;gap:8px;display:flex}.list-view-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);align-items:stretch;transition:background .12s,border-color .12s,box-shadow .12s;display:flex;position:relative}.list-view-row:hover{background:var(--surface-hover);border-color:var(--border-strong,var(--border))}.list-view-row.active{background:var(--accent-subtle);border-color:var(--accent)}.list-view-row.selected{border-color:var(--accent);box-shadow:inset 2px 0 0 var(--accent)}.list-view-select{cursor:pointer;width:16px;height:16px;accent-color:var(--accent);flex:none;align-self:center;margin-left:12px}.bulk-action-bar{background:var(--accent-subtle);border:1px solid var(--accent);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:12px;margin:0 12px;padding:8px 12px;display:flex}.bulk-action-count{color:var(--text);font-size:13px;font-weight:600}.bulk-action-buttons{gap:8px;display:flex}.bulk-action-btn{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:6px 12px;font-size:13px}.bulk-action-btn:hover{background:var(--surface-hover)}.bulk-action-btn.danger{color:var(--danger);border-color:var(--danger)}.bulk-action-btn.danger:hover{background:var(--danger-bg)}.list-view-item{border-radius:var(--radius-md);text-align:left;font-family:inherit;font-size:var(--text-sm);color:var(--text);cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:8px;padding:12px 14px;display:flex}.list-view-row.active .list-view-item{color:var(--accent)}.list-view-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.list-view-meta{font-size:var(--text-xs);color:var(--text3);align-items:center;gap:6px;display:flex}.list-view-tag{background:var(--bg);border-radius:var(--radius-xs,4px);padding:2px 6px}.list-view-time{font-variant-numeric:tabular-nums}.list-view-menu{color:var(--text3);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;padding:8px 10px;font-size:16px}.list-view-menu:hover{background:var(--bg);color:var(--text)}.list-view-dropdown{z-index:10;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:160px;padding:4px;position:absolute;top:100%;right:8px;box-shadow:0 4px 16px #00000029}.list-view-dropdown button{text-align:left;width:100%;font-family:inherit;font-size:var(--text-sm);color:var(--danger);cursor:pointer;border-radius:var(--radius-xs,4px);background:0 0;border:0;padding:8px 12px;display:block}.list-view-dropdown button:hover{background:var(--bg)}.list-view-empty{text-align:center;color:var(--text3);padding:32px 16px}.list-view-empty-action{background:var(--accent);color:var(--text-inverse);border-radius:var(--radius-sm);font-family:inherit;font-size:var(--text-sm);cursor:pointer;border:0;margin-top:12px;padding:8px 16px}.list-view-loading-more{text-align:center;color:var(--text3);font-size:var(--text-xs);padding:12px 16px}@media (width<=768px){.list-view-item{flex-wrap:wrap;row-gap:4px}.list-view-name{min-width:140px}.list-view-meta{flex-wrap:wrap}}.report-group{flex-direction:column;gap:6px;display:flex}.report-group+.report-group{margin-top:8px}.report-group-title{font-family:inherit;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text3);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:8px;margin:0;padding:4px 2px;font-weight:700;display:flex}.report-group-chevron{width:12px;color:var(--text3);font-size:10px;display:inline-flex}.report-group-count{background:var(--surface2,var(--surface));min-width:18px;height:18px;color:var(--text3);border-radius:9px;justify-content:center;align-items:center;margin-left:auto;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.experts-empty-hint{font-size:var(--text-xs);max-width:420px;margin-top:8px}.expert-group{flex-direction:column;gap:8px;display:flex}.expert-group+.expert-group{margin-top:8px}.expert-group-title{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text3);background:var(--bg);z-index:1;align-items:center;gap:8px;margin:0;padding:4px 2px;font-weight:700;display:flex;position:sticky;top:0}.expert-group-count{background:var(--surface2,var(--surface));min-width:18px;height:18px;color:var(--text3);border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.expert-group-body{flex-direction:column;gap:8px;display:flex}.expert-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:6px;padding:12px 14px;display:flex}.expert-row-clickable{cursor:pointer;transition:border-color .12s}.expert-row-clickable:hover{border-color:var(--accent,var(--border))}.expert-row-head{align-items:center;gap:8px;display:flex}.expert-name{font-size:var(--text-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:600;overflow:hidden}.expert-kind-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:10px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:700}.expert-kind-knowledge{background:var(--accent-subtle);color:var(--accent)}.expert-kind-question{background:var(--warning-subtle,#d9770624);color:var(--warning,#b45309)}.expert-kind-expert{background:var(--bg);color:var(--text3)}.expert-kind-pm{background:var(--accent-subtle);color:var(--accent)}.expert-waiting-indicator{color:var(--accent);white-space:nowrap;flex-shrink:0;align-items:center;gap:5px;font-size:11px;font-weight:600;display:inline-flex}.expert-meta{font-size:var(--text-xs);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.expert-area{border-radius:var(--radius-xs,4px);background:var(--bg);color:var(--text);padding:2px 8px;font-weight:600}.expert-project{border-radius:var(--radius-xs,4px);background:var(--bg);color:var(--text3);padding:2px 8px}.expert-summary{font-size:var(--text-xs);color:var(--text2,var(--text3));white-space:pre-wrap;max-height:7.5em;margin:0;overflow:hidden}.expert-boundaries{font-size:var(--text-xs);color:var(--text3)}.expert-boundaries-label{font-weight:600}.expert-scope{font-family:var(--font-mono,monospace);color:var(--text2,var(--text))}
