:root{--c-accent: 108 139 239;--c-success: 76 175 80;--c-error: 239 83 80;--c-warning: 245 175 60;--c-lift: 255 255 255;--bg-primary: #0d0f13;--bg-secondary: #14171e;--bg-tertiary: #1a1e28;--bg-surface: #1e2230;--bg-hover: #252a38;--bg-active: #2d3348;--border-subtle: #2a2f3e;--border-default: #353b4e;--border-focus: rgb(var(--c-accent));--text-primary: #e8eaf0;--text-secondary: #9ba3b8;--text-tertiary: #7c8bac;--text-accent: #8ba4f8;--text-on-solid: #ffffff;--accent: rgb(var(--c-accent));--accent-hover: #8ba4f8;--font-sans: "Plus Jakarta Sans", "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;--app-font-size: 14px;--tab-bar-height: 56px;--tab-bar-offset: calc(var(--tab-bar-height) + max(env(safe-area-inset-bottom), var(--bottom-safe-area, 0px)));--nav-rail-width: 64px;--sidebar-width: 280px;--header-height: 48px;--input-height: 56px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .6);--transition-fast: .12s ease;--transition-normal: .2s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;height:100dvh;width:100%;overflow:hidden;overscroll-behavior:none}html{touch-action:manipulation;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-sans);font-size:var(--app-font-size);line-height:1.5;color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-default)}.app-layout{display:flex;height:100%;width:100%;overflow:hidden}.chat-sidebar-shell{position:relative;flex:0 0 auto;min-width:0}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);height:100%;background:var(--bg-secondary);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;overflow:hidden;transition:width .2s ease,min-width .2s ease}.sidebar-resize-handle{position:absolute;top:0;right:-4px;width:8px;height:100%;cursor:col-resize;z-index:20;touch-action:none}.sidebar-resize-handle:after{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;border-radius:999px;background:transparent;transition:background var(--transition-fast)}.chat-sidebar-shell:hover .sidebar-resize-handle:after,body.sidebar-resizing .sidebar-resize-handle:after{background:rgb(var(--c-accent) / .35)}body.sidebar-resizing{cursor:col-resize;-webkit-user-select:none;user-select:none}.sidebar.sidebar-collapsed{width:48px;min-width:48px}.sidebar-header{min-height:calc(var(--header-height) + var(--top-safe-area, 0px));display:flex;align-items:center;justify-content:space-between;padding:var(--top-safe-area, 0px) 12px 0;flex-shrink:0}.sidebar-brand{font-family:"Outfit",var(--font-sans);font-size:17px;font-weight:800;color:var(--text-primary);display:flex;align-items:center;gap:8px;letter-spacing:-.5px;background:linear-gradient(135deg,var(--accent) 0%,#a78bfa 50%,#f472b6 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sidebar-icon-btn{width:32px;height:32px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all var(--transition-fast);flex-shrink:0}.sidebar-icon-btn.active{background:var(--bg-active);color:var(--text-accent)}.sidebar-project-tabs{display:flex;gap:2px;padding:4px 8px;border-bottom:1px solid var(--border-subtle);flex-shrink:0;overflow-x:auto}.sidebar-project-tab{flex:1;padding:5px 8px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer;font-size:12px;font-weight:500;font-family:var(--font-sans);transition:all var(--transition-fast);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;text-align:center}.sidebar-project-tab.active{background:rgb(var(--c-accent) / .12);color:var(--text-accent)}.sidebar-empty{padding:20px 12px;text-align:center;color:var(--text-tertiary);font-size:13px}.chat-empty-project{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--text-tertiary);margin-top:4px}.chat-empty-project-clickable{cursor:pointer;border-radius:var(--radius-sm);padding:4px 10px;transition:all var(--transition-fast)}.chat-empty-project-clickable:hover{color:var(--text-accent);background:rgb(var(--c-accent) / .08)}.sidebar-actions{padding:4px 8px 8px;display:flex;flex-direction:column;gap:1px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.sidebar-action-btn{display:flex;align-items:center;gap:10px;padding:7px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;font-size:13px;font-family:var(--font-sans);transition:all var(--transition-fast)}.sidebar-action-icon{width:20px;text-align:center;font-size:15px;flex-shrink:0}.sidebar-action-label{white-space:nowrap}.search-modal-overlay{position:fixed;inset:0;z-index:1000;background:#0009;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;animation:fade-in .12s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-down{0%{opacity:0;transform:translateY(-12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.search-modal{width:560px;max-width:90vw;max-height:70vh;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg, 12px);box-shadow:0 20px 60px #00000080;display:flex;flex-direction:column;overflow:hidden;animation:slide-down .15s ease-out}.search-modal-header{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border-subtle)}.search-modal-icon{font-size:14px;opacity:.5;flex-shrink:0}.search-modal-input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-sans);font-size:15px}.search-modal-input::placeholder{color:var(--text-tertiary)}.search-modal-close{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:14px;padding:4px 8px;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.search-modal-close:hover{color:var(--text-primary);background:var(--bg-hover)}.manage-modal-open-btn{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid rgb(var(--c-accent) / .25);border-radius:var(--radius-sm);background:rgb(var(--c-accent) / .1);color:var(--text-accent);cursor:pointer;font-size:12px;font-weight:600;white-space:nowrap}.manage-modal-open-btn:hover{background:rgb(var(--c-accent) / .16)}.search-modal-filters{display:flex;gap:8px;padding:8px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle)}.search-filter-chip{padding:4px 10px;border-radius:100px;border:1px solid var(--border-default);background:var(--bg-primary);color:var(--text-secondary);font-size:11px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.search-filter-chip:hover{background:var(--bg-hover);border-color:var(--border-focus)}.search-filter-chip.active{background:rgb(var(--c-accent) / .15);border-color:var(--accent);color:var(--text-accent)}select.search-filter-select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:22px;font-family:var(--font-sans);outline:none}select.search-filter-select option{background:var(--bg-primary);color:var(--text-primary)}.search-scope-wrap{position:relative}.search-scope-chevron{margin-left:4px;font-size:8px;opacity:.6}.search-scope-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:160px;background:var(--bg-surface, var(--bg-primary));border:1px solid var(--border-default);border-radius:var(--radius-md, 8px);box-shadow:0 12px 32px #0006;padding:6px;z-index:10;animation:slide-down .12s ease-out}.search-scope-option{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;font-size:12px;font-family:var(--font-sans);color:var(--text-primary);transition:background var(--transition-fast)}.search-scope-option:hover{background:var(--bg-hover)}.search-scope-option input[type=checkbox]{accent-color:var(--accent);width:14px;height:14px;cursor:pointer}.search-scope-hint{padding:6px 8px 2px;font-size:10px;color:var(--text-tertiary);border-top:1px solid var(--border-subtle);margin-top:4px}.search-modal-results{overflow-y:auto;flex:1}.search-modal-status{padding:24px 16px;color:var(--text-tertiary);font-size:13px;text-align:center;display:flex;justify-content:center;align-items:center}.search-result-item{display:block;width:100%;text-align:left;padding:10px 16px;background:none;border:none;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);cursor:pointer;font-family:var(--font-sans);transition:background var(--transition-fast)}.search-result-item:last-child{border-bottom:none}.search-result-title{font-size:13px;font-weight:500;margin-bottom:4px}.search-result-snippets{display:flex;flex-direction:column;gap:2px}.search-result-snippet{font-size:11px;color:var(--text-tertiary);font-family:var(--font-mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.search-result-meta{font-size:11px;color:var(--text-tertiary);margin-top:4px}.sidebar-collapsed .sidebar-collapsed-icons{display:flex;flex-direction:column;align-items:center;padding:8px 0;gap:4px}.sidebar-collapsed-bottom{margin-top:auto;padding:12px 0;display:flex;justify-content:center}.sidebar-list{flex:1;overflow-y:auto;padding:8px}.sidebar-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);-webkit-user-select:none;user-select:none}.sidebar-item.active{background:var(--bg-active)}.sidebar-item-content{flex:1;min-width:0}.sidebar-item-title{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-pin-icon{font-size:10px;margin-right:4px;opacity:.6}.sidebar-item-meta{font-size:11px;color:var(--text-tertiary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.icon-spin{animation:icon-spin 1s linear infinite}.thread-spinner{flex-shrink:0;color:rgb(var(--c-success))}.group-spinner{color:rgb(var(--c-success));margin-left:4px}.sidebar-item-right{position:relative;flex-shrink:0;display:flex;align-items:center;gap:4px;width:auto;min-width:0;justify-content:center}.item-indicator{color:var(--text-accent);width:var(--sidebar-spinner-size, 13px);height:var(--sidebar-spinner-size, 13px)}.item-dot{width:var(--sidebar-dot-size, 6px);height:var(--sidebar-dot-size, 6px);border-radius:50%;background:var(--accent, var(--text-accent));box-shadow:0 0 6px rgb(var(--c-accent) / .5)}.item-warning{color:rgb(var(--c-warning, 245 158 11));display:flex;align-items:center;justify-content:center;animation:sidebar-warning-pulse 2s ease-in-out infinite}@keyframes sidebar-warning-pulse{0%,to{opacity:.7}50%{opacity:1}}.sidebar-item.has-updates{border-left:3px solid var(--accent, var(--text-accent));background:rgb(var(--c-accent) / .06);padding-left:9px}.sidebar-item.has-updates .sidebar-item-title{color:var(--text-primary);font-weight:600}.sidebar-item.has-updates .sidebar-item-meta{color:var(--text-secondary)}@keyframes dot-pulse{0%,to{box-shadow:0 0 4px rgb(var(--c-accent) / .4)}50%{box-shadow:0 0 10px rgb(var(--c-accent) / .7)}}.sidebar-item.has-updates .item-dot{animation:dot-pulse 2s ease-in-out infinite}.sidebar-item-menu-btn{width:22px;height:22px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer;display:none;align-items:center;justify-content:center;font-size:14px;transition:all var(--transition-fast)}.sidebar-item:hover .sidebar-item-menu-btn,.sidebar-item:focus-within .sidebar-item-menu-btn{display:flex}.context-menu{position:absolute;right:0;top:100%;margin-top:6px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:14px;box-shadow:0 18px 40px #00000057;min-width:196px;padding:8px;z-index:100}.context-menu-group{display:flex;flex-direction:column;gap:2px}.context-menu-divider{height:1px;margin:6px 2px;background:#ffffff14}.context-menu-item{width:100%;display:flex;align-items:center;gap:10px;padding:9px 10px;background:transparent;border:none;border-radius:10px;color:var(--text-primary);font-size:13px;line-height:1.25;font-weight:500;font-family:var(--font-sans);cursor:pointer;text-align:left;transition:background var(--transition-fast),color var(--transition-fast)}.context-menu-item:hover,.context-menu-item:focus-visible{background:#ffffff0f;outline:none}.context-menu-item-icon-wrap{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:currentColor;opacity:.92}.context-menu-item-success{color:rgb(var(--c-success, 76 175 80))}.context-menu-item-success{background:rgb(var(--c-success, 76 175 80) / .06)}.context-menu-item-cancel{color:var(--text-secondary);background:#ffffff08}.context-menu-item.danger{color:rgb(var(--c-error))}.context-menu-item.danger:hover,.context-menu-item.danger:focus-visible{background:rgb(var(--c-error) / .1)}.context-menu-reason{padding:4px 10px 6px;font-size:10px;font-family:var(--font-sans);color:var(--text-tertiary);letter-spacing:.08em;text-transform:uppercase;font-weight:500}.sidebar-manage-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.sidebar-manage-btn{width:26px;height:26px;border:none;border-radius:var(--radius-sm);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all var(--transition-fast);opacity:.6;padding:0}.sidebar-manage-btn:hover,.sidebar-manage-btn:active{opacity:1;background:var(--bg-hover)}.sidebar-manage-btn.active{opacity:1}.sidebar-manage-btn.danger:hover,.sidebar-manage-btn.danger:active{background:rgb(var(--c-error) / .15)}.sidebar-item-right:has(.sidebar-manage-actions){width:auto}.sidebar-item.hide-success,.sidebar-item.hide-canceled,.sidebar-item.hide-plain{opacity:.45;filter:saturate(.3);transition:opacity var(--transition-fast),filter var(--transition-fast)}.sidebar-item.hide-success:hover,.sidebar-item.hide-canceled:hover,.sidebar-item.hide-plain:hover{opacity:.7;filter:saturate(.6)}.sidebar-item.hide-success.active,.sidebar-item.hide-canceled.active{opacity:.65;filter:saturate(.5)}.sidebar-hide-badge{display:inline-flex;align-items:center;margin-right:4px;flex-shrink:0;vertical-align:middle}.sidebar-hide-badge.success{color:rgb(var(--c-success, 76 175 80))}.sidebar-hide-badge.canceled{color:var(--text-tertiary);opacity:.7}.manage-modal{max-height:80vh}.manage-modal-title{flex:1;font-size:15px;font-weight:600;color:var(--text-primary);font-family:var(--font-sans)}.manage-modal-body{overflow-y:auto;flex:1;overscroll-behavior:contain}.workspace-modal{max-height:76vh}.workspace-modal-body{display:flex;flex-direction:column;gap:12px;padding:14px 16px;overflow-y:auto;flex:1;overscroll-behavior:contain}.workspace-modal-toolbar{display:flex;align-items:center;gap:8px}.workspace-modal-select{flex:1;min-width:0;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-primary);padding:8px 10px;font:inherit}.workspace-modal-path{padding:0 2px;font-family:var(--font-mono);font-size:11px;color:var(--text-tertiary);word-break:break-all}.workspace-modal-error{border:1px solid rgb(var(--c-error) / .25);border-radius:var(--radius-sm);background:rgb(var(--c-error) / .08);color:rgb(var(--c-error));padding:8px 10px;font-size:12px}.workspace-modal-list{display:flex;flex-direction:column;gap:4px;min-height:0}.workspace-modal-item{display:flex;align-items:center;gap:8px;width:100%;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);padding:8px 10px;cursor:pointer;text-align:left;transition:background var(--transition-fast),border-color var(--transition-fast)}.workspace-modal-item:hover{background:rgb(var(--c-lift, 255 255 255) / .04);border-color:var(--border-default)}.workspace-modal-item-icon{color:var(--text-tertiary);flex-shrink:0}.workspace-modal-item-name{flex:1;min-width:0;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-modal-item-action{flex-shrink:0;font-size:11px;color:var(--text-tertiary)}.workspace-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--border-subtle)}.workspace-modal-primary-btn,.workspace-modal-secondary-btn{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-primary);padding:7px 12px;font-size:12px;font-weight:600;cursor:pointer}.workspace-modal-primary-btn{border-color:rgb(var(--c-accent) / .3);background:rgb(var(--c-accent) / .14);color:var(--text-accent)}.workspace-modal-primary-btn:disabled,.workspace-modal-secondary-btn:disabled,.manage-modal-open-btn:disabled{opacity:.5;cursor:not-allowed}.manage-item{display:flex;align-items:center;gap:8px;padding:10px 16px;border-bottom:1px solid var(--border-subtle);transition:background var(--transition-fast)}.manage-item:last-child{border-bottom:none}.manage-item:hover{background:rgb(var(--c-lift, 255 255 255) / .03)}.manage-item-hidden{opacity:.45}.manage-item-hidden:hover{opacity:.7}.manage-item-content{flex:1;min-width:0}.manage-item-title{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.manage-item-meta{font-size:11px;color:var(--text-tertiary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.manage-item-reason{color:var(--text-tertiary);opacity:.7}.manage-item-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.manage-action-btn{width:30px;height:30px;border:none;border-radius:var(--radius-sm);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all var(--transition-fast);opacity:.5;padding:0;color:var(--text-primary)}.manage-action-btn:hover{opacity:1;background:var(--bg-hover)}.manage-action-btn.active{opacity:1}.manage-action-btn.success{color:rgb(var(--c-success, 76 175 80))}.manage-action-btn.success:hover{background:#4caf501a}.manage-action-btn.cancel{color:var(--text-tertiary)}.manage-action-btn.danger:hover{background:rgb(var(--c-error) / .12);color:rgb(var(--c-error));opacity:1}.conn-indicator{position:relative;display:flex;align-items:center}.conn-indicator-btn{position:relative;display:flex;align-items:center;justify-content:center;width:var(--icon-btn-width, 30px);height:var(--icon-btn-height, 30px);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all .2s ease;flex-shrink:0}.conn-indicator-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.conn-indicator-btn.conn-status-connected{color:var(--conn-green, #34d399)}.conn-indicator-btn.conn-status-degraded{color:var(--conn-amber, #fbbf24)}.conn-indicator-btn.conn-status-disconnected{color:var(--conn-red, #f87171);animation:conn-pulse 2s ease-in-out infinite}@keyframes conn-pulse{0%,to{opacity:1}50%{opacity:.45}}.conn-dot{position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:50%;border:1.5px solid var(--bg-primary);pointer-events:none}.conn-dropdown{position:absolute;top:calc(100% + 6px);right:0;width:260px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md, 10px);box-shadow:0 8px 32px #00000047,0 2px 8px #00000026;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);z-index:1000;animation:conn-dropdown-in .18s ease-out;overflow:hidden}@keyframes conn-dropdown-in{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.conn-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 8px;border-bottom:1px solid var(--border-subtle)}.conn-dropdown-title{font-size:12px;font-weight:600;color:var(--text-primary);letter-spacing:.02em}.conn-dropdown-close{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all .15s}.conn-dropdown-close:hover{background:var(--bg-hover);color:var(--text-primary)}.conn-dropdown-body{padding:8px 0}.conn-row{display:flex;align-items:center;justify-content:space-between;padding:5px 14px;font-size:11.5px}.conn-row-label{color:var(--text-tertiary)}.conn-row-value{display:flex;align-items:center;gap:6px;font-weight:500;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.conn-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.conn-ls-list{margin:4px 14px 2px;padding:6px 8px;border-radius:var(--radius-sm);background:#ffffff08;border:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:3px}.conn-ls-item{display:flex;align-items:center;gap:8px;font-size:10.5px;color:var(--text-tertiary);font-family:var(--font-mono)}.conn-ls-pid{color:var(--text-secondary);font-weight:500}.conn-ls-port{color:var(--text-tertiary)}.conn-ls-source{margin-left:auto;font-family:var(--font-sans);font-size:10px;opacity:.6}.conn-dropdown-actions{display:flex;gap:6px;padding:8px 14px 10px;border-top:1px solid var(--border-subtle)}.conn-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:6px 10px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s}.conn-action-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-hover, var(--border-default))}.conn-action-hard{color:var(--conn-amber, #fbbf24);border-color:#fbbf2433}.conn-action-hard:hover{background:#fbbf2414;color:var(--conn-amber, #fbbf24);border-color:#fbbf2459}.main-panel{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--bg-primary)}.main-header{min-height:calc(var(--header-height) + var(--top-safe-area, 0px));display:flex;align-items:center;padding:var(--top-safe-area, 0px) 20px 0;border-bottom:1px solid var(--border-subtle);flex-shrink:0;gap:12px}.main-header-title{font-size:14px;font-weight:600;color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main-header-actions{display:flex;align-items:center;gap:var(--header-icon-gap, 4px);flex-shrink:0}.header-refresh-btn{width:var(--icon-btn-width, 34px);height:var(--icon-btn-height, 34px);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all var(--transition-fast);flex-shrink:0}.header-refresh-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.header-refresh-btn:active{transform:rotate(180deg)}.session-status-indicator{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);flex-shrink:0}.session-status-running{color:rgb(var(--c-accent))}.session-status-idle{color:rgb(var(--c-success, 52 211 153))}.session-status-error{color:#fbbf24}.session-status-unloaded{color:var(--text-tertiary);opacity:.5}.main-header-project{display:flex;align-items:center;gap:4px;font-size:11px;font-family:var(--font-sans);color:var(--text-tertiary);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:none;background:none;cursor:pointer;padding:4px 8px;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast)}.main-header-project:hover{color:var(--text-primary);background:var(--bg-hover)}.chat-panel-container{flex:1;display:flex;overflow:hidden;position:relative;min-height:0;min-width:0}.chat-area{flex:1;overflow-y:auto;padding:12px 0;display:flex;flex-direction:column;gap:6px}.chat-area-inner{max-width:860px;width:100%;margin:0 auto;padding:0 40px 0 24px;display:flex;flex-direction:column;gap:6px}.turn-divider{height:1px;margin:10px 0 4px;background:linear-gradient(90deg,transparent 0%,var(--border-subtle) 15%,var(--border-subtle) 85%,transparent 100%);opacity:.6}.chat-surface-smooth .turn-divider{margin:6px 0 2px;opacity:.35}.chat-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-tertiary);gap:12px}.chat-empty-icon{line-height:0}.chat-empty-text{font-size:15px;font-weight:500}.chat-empty .model-selector-btn{font-size:15px;padding:10px 18px 10px 20px;width:auto;min-width:200px;max-width:300px;gap:8px}.chat-empty .model-selector-label{gap:8px}.chat-empty .model-selector-caret{font-size:13px}.chat-empty .model-selector-dropdown{min-width:240px}.chat-empty .model-option{padding:10px 14px;font-size:14px}.chat-block{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow-wrap:break-word;word-break:break-word}.message{position:relative}.message.user{display:flex;flex-direction:column;align-items:flex-end;position:relative}.message-body{padding:6px 12px;font-size:var(--msg-font-size, 13.5px);line-height:1.6;user-select:text;-webkit-user-select:text;cursor:text}.message.assistant .message-body{background:var(--assistant-bg, var(--bg-surface));color:var(--text-primary)}.message.user .message-body{background:rgb(var(--c-accent) / .22);border-color:rgb(var(--c-accent) / .4);color:var(--text-primary);max-width:80%}.message.unconfirmed .message-body{opacity:.55}.chat-surface-smooth .chat-area{gap:2px}.chat-surface-smooth .chat-area-inner{max-width:920px;gap:2px}.chat-surface-smooth .chat-block{border-color:transparent;box-shadow:none}.chat-surface-smooth .message-body{padding:4px 2px}.chat-surface-smooth .message.assistant .message-body,.chat-surface-smooth .message.system .message-body,.chat-surface-smooth .message.user .message-body{background:transparent}.chat-surface-smooth .message.user .message-body{border-color:transparent;max-width:min(80%,720px)}.chat-surface-smooth .message.assistant .message-body,.chat-surface-smooth .message.system .message-body{color:var(--text-primary)}.chat-surface-smooth .message.system .message-body{font-size:12.5px}.chat-surface-smooth .msg-actions{margin-top:6px;opacity:.72}.chat-surface-smooth .thinking-block{border-bottom-color:#ffffff0f;margin-bottom:6px;padding-bottom:6px}.chat-surface-smooth .thinking-content{background:#ffffff05;border-color:#ffffff0d}.chat-surface-smooth .step-card{background:#ffffff05;border-radius:0}.chat-surface-smooth .step-card-header,.chat-surface-smooth .error-card-header,.chat-surface-smooth .error-card-detail,.chat-surface-smooth .error-card-actions,.chat-surface-smooth .file-permission-actions,.chat-surface-smooth .step-card-actions{padding-left:0;padding-right:0}.chat-surface-smooth .step-card-actions,.chat-surface-smooth .file-permission-actions,.chat-surface-smooth .warning-expanded-body{background:transparent;border-top-color:#ffffff0f}.chat-surface-smooth .error-card-full-content,.chat-surface-smooth .thinking-content{border-radius:calc(var(--radius-sm) - 2px)}.message-body h1,.message-body h2,.message-body h3,.message-body h4{margin:8px 0 4px;font-weight:600;line-height:1.3}.message-body h1{font-size:calc(var(--msg-font-size, 13.5px) * 1.35)}.message-body h2{font-size:calc(var(--msg-font-size, 13.5px) * 1.2)}.message-body h3{font-size:calc(var(--msg-font-size, 13.5px) * 1.05)}.message-body h4{font-size:var(--msg-font-size, 13.5px);color:var(--text-secondary)}.message-body p{margin:4px 0}.message-body>:first-child{margin-top:0}.message-body>:last-child{margin-bottom:0}.message-body img{max-width:100%;max-height:400px;border-radius:var(--radius-sm);margin:6px 0;cursor:pointer;transition:opacity var(--transition-fast)}.message-body img:hover{opacity:.9}.message-body ul,.message-body ol{margin:6px 0;padding-left:20px}.message-body li{margin:3px 0}.message-body .task-list{padding-left:0;margin-left:0}.message-body li.task-list-item{list-style:none;display:flex;align-items:flex-start;gap:8px;margin:4px 0}.message-body .chk-box{width:16px;height:16px;border-radius:5px;border:1px solid var(--border-default);background:var(--bg-secondary);color:var(--text-tertiary);font-size:11px;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.message-body .chk-box.chk-done{color:rgb(var(--c-success, 52 211 153));border-color:rgb(var(--c-success, 52 211 153) / .28);background:rgb(var(--c-success, 52 211 153) / .08)}.message-body .chk-box.chk-prog{color:rgb(var(--c-accent));border-color:rgb(var(--c-accent) / .28);background:rgb(var(--c-accent) / .08);font-size:9px;letter-spacing:-.06em}.message-body .task-text{min-width:0;flex:1}.message-body .task-text>:first-child{margin-top:0}.message-body .task-text>:last-child{margin-bottom:0}.message-body .task-text p{margin:0}.message-body blockquote{border-left:3px solid var(--border-default);padding-left:12px;margin:8px 0;color:var(--text-secondary)}.message-body .markdown-alert{border-left:3px solid;border-radius:var(--radius-sm);padding:10px 14px;margin:10px 0;font-size:inherit;line-height:1.55}.message-body .markdown-alert>:first-child{margin-top:0}.message-body .markdown-alert>:last-child{margin-bottom:0}.message-body .markdown-alert-title{font-weight:600;font-size:12.5px;text-transform:uppercase;letter-spacing:.03em;margin:0 0 4px;display:flex;align-items:center;gap:6px}.message-body .markdown-alert-title:before{font-size:14px;line-height:1}.message-body .markdown-alert-note{border-left-color:#4493f8;background:#4493f812}.message-body .markdown-alert-note .markdown-alert-title{color:#4493f8}.message-body .markdown-alert-note .markdown-alert-title:before{content:"ℹ️"}.message-body .markdown-alert-tip{border-left-color:#3fb950;background:#3fb95012}.message-body .markdown-alert-tip .markdown-alert-title{color:#3fb950}.message-body .markdown-alert-tip .markdown-alert-title:before{content:"💡"}.message-body .markdown-alert-important{border-left-color:#a371f7;background:#a371f712}.message-body .markdown-alert-important .markdown-alert-title{color:#a371f7}.message-body .markdown-alert-important .markdown-alert-title:before{content:"⚡"}.message-body .markdown-alert-warning{border-left-color:#d29922;background:#d2992212}.message-body .markdown-alert-warning .markdown-alert-title{color:#d29922}.message-body .markdown-alert-warning .markdown-alert-title:before{content:"⚠️"}.message-body .markdown-alert-caution{border-left-color:#f85149;background:#f8514912}.message-body .markdown-alert-caution .markdown-alert-title{color:#f85149}.message-body .markdown-alert-caution .markdown-alert-title:before{content:"🔴"}.message-body hr{border:none;border-top:1px solid var(--border-subtle);margin:12px 0}.message-body table{border-collapse:collapse;margin:8px 0;width:100%;font-size:12px}.message-body th,.message-body td{border:1px solid var(--border-subtle);padding:6px 10px;text-align:left}.message-body th{background:var(--bg-tertiary);font-weight:600}.message-body strong{font-weight:600;color:var(--text-primary)}.message-body em{font-style:italic}.message-body a{color:var(--text-accent);text-decoration:none}.message-body a:hover{text-decoration:underline}.message-body pre{background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:10px 12px;overflow-x:hidden;margin:8px 0;font-family:var(--font-mono);font-size:12px;line-height:1.5;position:relative;white-space:pre-wrap;word-break:break-all}.message-body pre code{background:none;padding:0;border-radius:0}.message-body pre code.language-diff .md-diff-add{display:block;background:#3fb9501f;color:#3fb950}.message-body pre code.language-diff .md-diff-del{display:block;background:#f851491f;color:#f85149}.message-body pre code.language-diff .md-diff-hunk{display:block;background:#636e7b1a;color:#8b949e}.code-copy-btn{position:absolute;bottom:6px;right:6px;width:28px;height:28px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;opacity:.5;transition:opacity var(--transition-fast),color var(--transition-fast),background var(--transition-fast);z-index:1;user-select:none;-webkit-user-select:none;line-height:1;padding:0}@media(hover:none){.code-copy-btn{opacity:.6}}.code-copy-btn.copied{color:rgb(var(--c-success));opacity:1}.message-body code{font-family:var(--font-mono);font-size:var(--code-font-size, 12px);background:rgb(var(--c-lift) / .08);padding:2px 6px;border-radius:3px}.message-media{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.message-media-thumb{max-width:200px;max-height:200px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);object-fit:contain;cursor:pointer;transition:transform var(--transition-fast)}.lightbox-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:#000000e6;animation:modal-fade-in .15s ease-out;cursor:pointer;-webkit-tap-highlight-color:transparent}.lightbox-img{max-width:95vw;max-height:90vh;object-fit:contain;border-radius:var(--radius-sm);user-select:none;-webkit-user-select:none;touch-action:none;cursor:default}.raw-json-toggle{margin-top:4px;border-top:1px solid var(--border-subtle)}.raw-json-summary{display:flex;align-items:center;gap:4px;padding:4px 8px;font-size:10px;color:var(--text-tertiary);cursor:pointer;-webkit-user-select:none;user-select:none;list-style:none}.raw-json-summary::-webkit-details-marker{display:none}.raw-json-chevron{display:inline-block;transition:transform .15s ease;font-size:12px}.raw-json-toggle[open] .raw-json-chevron{transform:rotate(90deg)}.raw-json-type{margin-left:auto;font-family:var(--font-mono);font-size:9px;opacity:.5}.raw-json-toolbar{display:flex;justify-content:flex-end;padding:2px 8px}.raw-json-wrap-btn{font-size:9px;font-family:var(--font-mono);padding:1px 6px;border:1px solid var(--border-subtle);border-radius:3px;background:transparent;color:var(--text-tertiary);cursor:pointer}.raw-json-wrap-btn.on{background:var(--bg-hover);color:var(--text-secondary)}.raw-json-content{margin:0;padding:8px;font-size:10px;line-height:1.4;font-family:var(--font-mono);color:var(--text-secondary);background:var(--bg-primary);border-radius:0 0 var(--radius-sm) var(--radius-sm);overflow-x:auto;-webkit-overflow-scrolling:touch;max-height:300px;overflow-y:auto;white-space:pre}.raw-json-content.wrap{white-space:pre-wrap;word-break:break-all}.notify-review-files{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border-subtle)}.notify-review-label{font-size:11px;font-family:var(--font-sans);color:var(--text-tertiary);font-weight:500}.notify-review-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-family:var(--font-mono);color:var(--text-accent);background:rgb(var(--c-accent) / .08);border:1px solid rgb(var(--c-accent) / .18);border-radius:999px;padding:3px 10px;cursor:pointer;transition:background .15s ease}.notify-review-chip:hover{background:rgb(var(--c-accent) / .14)}.markdown-file-chip{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-family:var(--font-mono);color:var(--text-primary);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:2px 8px;margin:0 2px;text-decoration:none!important;vertical-align:middle;transition:all var(--transition-fast)}.markdown-file-chip:hover{background:var(--bg-hover);border-color:var(--border-default);color:var(--text-primary)}.markdown-file-chip .file-chip-icon{font-size:13px;opacity:.7}.markdown-file-chip .file-chip-text{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-viewer-overlay{position:fixed;inset:0;z-index:10000;background:#0009;display:flex;align-items:center;justify-content:center;animation:fv-overlay-in .2s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@keyframes fv-overlay-in{0%{opacity:0}to{opacity:1}}.file-viewer-modal{position:relative;width:calc(100vw - 48px);height:calc(100vh - 48px);max-width:calc(100vw - 48px);max-height:calc(100vh - 48px);background:var(--bg-surface);border-radius:var(--radius-lg, 12px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 80px #00000080,0 0 0 1px var(--border-subtle);animation:fv-pop-in .25s cubic-bezier(.32,.72,0,1)}@media(max-width:480px){.file-viewer-modal{width:calc(100vw - 16px);height:calc(100vh - 16px);max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);border-radius:var(--radius-md, 10px)}}@keyframes fv-pop-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.file-viewer-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.file-viewer-title{font-size:15px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;flex:1;min-width:0}.file-viewer-close{border:none;background:none;color:var(--accent);font-size:15px;font-family:var(--font-sans);font-weight:500;cursor:pointer;padding:0;min-width:48px;text-align:left}.file-viewer-counter{font-size:12px;font-family:var(--font-mono);color:var(--text-tertiary);min-width:48px;text-align:right}.file-viewer-toolbar{display:flex;justify-content:flex-end;gap:8px;padding:8px 16px 0;flex-shrink:0}.file-viewer-toolbar-btn{border:1px solid var(--border-subtle);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;height:28px;padding:0 10px;display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.file-viewer-toolbar-btn:hover:not(:disabled){border-color:var(--border-focus);background:var(--bg-hover);color:var(--text-primary)}.file-viewer-toolbar-btn:disabled{opacity:.45;cursor:default}.file-viewer-toolbar-btn.active{border-color:rgb(var(--c-accent) / .28);background:rgb(var(--c-accent) / .08);color:var(--text-primary)}.file-viewer-toolbar-btn.copied{color:rgb(var(--c-success, 52 211 153));border-color:rgb(var(--c-success, 52 211 153) / .22);background:rgb(var(--c-success, 52 211 153) / .08)}.file-viewer-dots{display:flex;justify-content:center;gap:6px;padding:8px 16px;flex-shrink:0}.file-viewer-dot{width:7px;height:7px;border-radius:50%;border:none;background:var(--text-tertiary);opacity:.3;padding:0;cursor:pointer;transition:opacity .2s ease,transform .2s ease}.file-viewer-dot.active{opacity:1;background:var(--accent);transform:scale(1.3)}.file-viewer-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px}.file-viewer-markdown{background:transparent;border:none}.file-viewer-code{margin:0;font-family:var(--font-mono);font-size:var(--code-font-size, 12px);line-height:1.6;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:12px 14px;white-space:pre;word-break:normal;overflow-x:auto}.file-viewer-code.wrap,.file-viewer-markdown.wrap pre,.file-viewer-markdown.wrap code{white-space:pre-wrap;word-break:break-word}.file-viewer-status{display:flex;align-items:center;justify-content:center;padding:40px 16px;color:var(--text-tertiary);font-size:14px;font-family:var(--font-sans)}.file-viewer-error{color:rgb(var(--c-error))}.file-viewer-nav{display:none;position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border:1px solid var(--border-default);border-radius:50%;background:var(--bg-surface);color:var(--text-secondary);font-size:22px;line-height:1;cursor:pointer;z-index:1;transition:background .15s ease,color .15s ease}.file-viewer-nav:hover{background:var(--bg-hover);color:var(--text-primary)}.file-viewer-nav-prev{left:10px}.file-viewer-nav-next{right:10px}@media(min-width:600px){.file-viewer-nav{display:flex;align-items:center;justify-content:center}}@media(max-width:480px){.file-viewer-toolbar{padding:8px 12px 0;gap:6px}.file-viewer-toolbar-btn{height:26px;padding:0 9px}}.chat-gear-popover{position:fixed;z-index:9999;width:260px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:10px;display:flex;flex-direction:column;gap:6px;animation:loop-popover-in .15s ease}.chat-gear-popover-item{display:flex;align-items:center;justify-content:space-between;padding:4px}.chat-gear-popover-label{font-size:12px;font-family:var(--font-sans);color:var(--text-secondary);font-weight:500}.chat-gear-popover-divider{height:1px;background:var(--border-subtle);margin:2px 0}.chat-gear-popover-section{padding:2px 0}.chat-action-icon-btn.active{color:var(--accent);background:rgb(var(--c-accent) / .1)}.chat-gear-popover-action{display:flex;align-items:center;gap:8px;width:100%;padding:8px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:12px;font-family:var(--font-sans);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.chat-gear-popover-action:hover{background:#7c3aed14;color:#7c3aed}.chat-gear-popover-section .model-selector-btn{width:100%;justify-content:flex-start}.quota-battery-wrap{position:relative;flex-shrink:0}.quota-battery{display:flex;align-items:center;justify-content:center;padding:4px 5px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:background var(--transition-fast);height:28px}.quota-battery:hover{background:var(--bg-hover)}.quota-battery:disabled{opacity:.5}.quota-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:0 8px 24px #0000004d;padding:10px 12px;z-index:100;animation:quota-drop-in .12s ease-out}@keyframes quota-drop-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.quota-dropdown-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin-bottom:8px}.quota-dropdown-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.quota-dropdown-prefix{font-size:11px;font-weight:800;font-family:var(--font-mono);min-width:12px}.quota-dropdown-bar-track{flex:1;height:6px;background:var(--bg-hover);border-radius:3px;overflow:hidden}.quota-dropdown-bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.quota-dropdown-pct{font-size:11px;font-weight:700;font-family:var(--font-mono);min-width:28px;text-align:right}.quota-dropdown-reset{font-size:10px;font-weight:600;color:var(--text-tertiary);white-space:nowrap}.quota-dropdown-refresh{display:flex;align-items:center;gap:4px;width:auto;margin-left:auto;padding:0;background:transparent;color:var(--text-tertiary);font-size:11px;font-family:var(--font-sans);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.quota-dropdown-refresh:hover{background:var(--bg-hover);color:var(--text-primary)}.chat-attachment-popover{position:fixed;z-index:1000;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:6px;box-shadow:0 4px 20px #0003;display:flex;flex-direction:column;gap:2px;min-width:160px;animation:popover-fade-in .15s ease}.chat-attachment-popover-item{display:flex;align-items:center;gap:8px;padding:8px 10px;font-size:13px;color:var(--text-primary);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background .15s}.chat-attachment-popover-item:hover{background:var(--bg-hover)}.chat-attachment-popover-icon{font-size:14px;opacity:.8}.chat-mention-popover{position:absolute;z-index:1000;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:0 4px 20px #0003;display:flex;flex-direction:column;max-width:300px;min-width:200px;max-height:240px;overflow-y:auto;animation:popover-fade-in .15s ease;bottom:100%;left:0;margin-bottom:8px}.chat-mention-item{display:flex;flex-direction:column;padding:8px 12px;cursor:pointer;border-bottom:1px solid var(--border-subtle);transition:background .1s}.chat-mention-item:last-child{border-bottom:none}.chat-mention-item.selected{background:var(--bg-hover)}.chat-mention-item-name{font-size:13px;font-weight:500;color:var(--text-primary);word-break:break-all}.chat-mention-item-icon{margin-right:6px;font-size:12px}.chat-input-area{padding:8px 20px calc(var(--bottom-safe-area, 0px) + 4px);border-top:none;flex-shrink:0}.chat-input-model-row{max-width:860px;margin:0 auto 4px;width:100%;padding:0 2px;display:flex;align-items:center;gap:8px}.chat-input-wrap{position:relative;max-width:860px;margin:0 auto;width:100%;display:flex;flex-direction:column;align-items:stretch;gap:6px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:12px 14px 10px;min-height:54px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),padding var(--transition-fast)}.chat-input-wrap:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 2px rgb(var(--c-accent) / .12)}.chat-input-top{width:100%;display:flex;align-items:flex-end;gap:6px}.chat-send-inline{flex-shrink:0;align-self:flex-end}.chat-input-wrap.one-row{padding:6px 8px;min-height:auto}.chat-input-wrap.one-row:has(.chat-input-onerow.expanded){padding-top:10px;padding-bottom:10px}.chat-input-onerow{display:flex;align-items:center;gap:var(--onerow-btn-gap, 4px);width:100%}.chat-input-onerow.expanded{align-items:flex-end}.chat-input-onerow .chat-input{flex:1;min-width:0;min-height:0!important;max-height:80px}.chat-input-onerow.expanded .chat-input{max-height:240px}.chat-input-onerow .model-selector-btn{white-space:nowrap}.onerow-left{display:flex;align-items:center;gap:var(--onerow-btn-gap, 4px);flex-shrink:0;overflow:visible;max-width:200px;opacity:1;transition:max-width .25s ease,opacity .2s ease,margin .25s ease}.chat-input-onerow.focused .onerow-left{max-width:0;opacity:0;overflow:hidden;margin-right:-6px}.onerow-right-aux{display:flex;align-items:center;gap:var(--onerow-btn-gap, 4px);max-width:96px;opacity:1;overflow:hidden;transition:max-width .18s ease,opacity .14s ease,margin .18s ease}.onerow-right-aux.collapsed{max-width:0;opacity:0;margin-left:-4px;pointer-events:none}.chat-input-bottom{display:flex;justify-content:space-between;align-items:center;width:100%}.chat-input-bottom-left,.chat-input-bottom-right{display:flex;align-items:center;gap:8px}.chat-input{width:100%;background:transparent;border:none;outline:none;color:var(--text-primary);font-family:var(--font-sans);font-size:14px;line-height:1.5;resize:none;max-height:140px;min-height:21px;overflow:hidden;padding:5px 0 5px 6px;caret-color:var(--accent);transform:translateZ(0);-webkit-user-select:auto;user-select:auto}.chat-input::placeholder{color:var(--text-tertiary);pointer-events:none;-webkit-user-select:none;user-select:none}.chat-send-group{display:flex;align-items:center;gap:2px;flex-shrink:0;position:relative}.chat-send-btn{width:var(--icon-btn-width, 32px);height:var(--icon-btn-height, 32px);border:none;border-radius:var(--radius-sm);background:var(--accent);color:var(--text-on-solid);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:12px;transition:background var(--transition-fast),opacity var(--transition-fast),width .15s ease,padding .15s ease}.chat-send-btn.has-text{width:auto;padding:0 10px;gap:4px;font-weight:600;font-size:11px;letter-spacing:.01em}.chat-send-btn.queue-default{background:rgb(var(--c-accent) / .14);color:var(--text-accent);border:1px solid rgb(var(--c-accent) / .32)}.chat-send-btn.queue-default:hover:not(:disabled){background:rgb(var(--c-accent) / .2)}.chat-send-btn:hover:not(:disabled){background:var(--accent-hover)}.chat-send-btn:disabled{opacity:.25;cursor:not-allowed}.chat-queue-btn{width:var(--icon-btn-width, 32px);height:var(--icon-btn-height, 32px);border:1px solid var(--border-default);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;font-weight:600;gap:4px;white-space:nowrap;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),width .15s ease,padding .15s ease}.chat-queue-btn.has-text{width:auto;padding:0 10px}.chat-queue-btn:hover:not(:disabled){background:rgb(var(--c-lift) / .08);border-color:var(--border-focus);color:var(--text-primary)}.chat-queue-btn:disabled{opacity:.25;cursor:not-allowed}.chat-queue-btn.queued{background:rgb(var(--c-accent) / .12);border-color:rgb(var(--c-accent) / .4);color:var(--text-accent)}.chat-send-popover{position:absolute;right:0;bottom:calc(100% + 8px);min-width:150px;padding:4px;display:flex;flex-direction:column;gap:2px;background:color-mix(in srgb,var(--bg-surface) 92%,black 8%);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:0 14px 36px #00000052;z-index:40}.chat-send-popover-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);cursor:pointer;font-size:12px;font-weight:500;text-align:left}.chat-send-popover-item:hover{background:var(--bg-hover)}.chat-send-popover-item.active{color:var(--text-accent);background:rgb(var(--c-accent) / .1)}.chat-send-popover-icon{width:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.chat-stop-btn{width:var(--icon-btn-width, 32px);height:var(--icon-btn-height, 32px);border:1px solid rgb(var(--c-error) / .3);border-radius:var(--radius-sm);background:rgb(var(--c-error) / .1);color:rgb(var(--c-error));cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:9px;transition:background var(--transition-fast),border-color var(--transition-fast)}.chat-stop-btn:hover{background:rgb(var(--c-error) / .2);border-color:rgb(var(--c-error) / .5)}.chat-action-icon-btn{width:var(--icon-btn-width, 32px);height:var(--icon-btn-height, 32px);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast)}.chat-action-icon-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.composer-expand-btn{color:var(--text-tertiary);transition:background var(--transition-fast),color var(--transition-fast),transform .18s ease}.composer-expand-btn.active{color:var(--text-primary);transform:rotate(180deg)}.chat-input-area.drag-over .chat-input-wrap{border-color:var(--accent);box-shadow:0 0 0 2px rgb(var(--c-accent) / .12)}.file-error-toast{max-width:860px;margin:0 auto 6px;width:100%;padding:8px 14px;font-size:12px;color:rgb(var(--c-error));background:rgb(var(--c-error) / .08);border:1px solid rgb(var(--c-error) / .2);border-radius:var(--radius-sm);animation:toast-slide-in .2s ease-out}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.queued-message-banner{max-width:860px;margin:0 auto 6px;width:100%;padding:6px 10px;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-accent);background:rgb(var(--c-accent) / .08);border:1px solid rgb(var(--c-accent) / .2);border-radius:var(--radius-sm);animation:toast-slide-in .2s ease-out}.queued-message-label{font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0;opacity:.7}.queued-message-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.queued-message-cancel{width:20px;height:20px;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;flex-shrink:0;transition:all var(--transition-fast)}.queued-message-cancel:hover{background:rgb(var(--c-accent) / .15);color:var(--text-primary)}.attachment-previews{max-width:860px;margin:0 auto 6px;width:100%;display:flex;gap:8px;padding:0 2px;flex-wrap:wrap}.attachment-thumb{position:relative;width:64px;height:64px;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border-subtle);flex-shrink:0}.attachment-thumb img{width:100%;height:100%;object-fit:cover}.attachment-remove{position:absolute;top:2px;right:2px;width:18px;height:18px;border:none;border-radius:50%;background:#0009;color:var(--text-on-solid);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;opacity:0;transition:opacity var(--transition-fast)}.attachment-thumb:hover .attachment-remove{opacity:1}.model-selector{position:relative}.model-selector-btn{background:rgb(var(--c-lift) / .04);border:1px solid var(--border-default);color:var(--text-secondary);font-size:12px;font-family:var(--font-sans);line-height:1;cursor:pointer;padding:6px 10px 6px 14px;border-radius:999px;display:flex;align-items:center;gap:5px;width:var(--model-selector-width, 180px);transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast)}.model-selector-btn.model-selector-icon-btn{width:auto;min-width:0;padding:6px;border-radius:var(--radius-sm);justify-content:center}.model-selector-btn.model-selector-compact{width:auto;min-width:0;padding:4px 6px;font-weight:600;font-size:11px;gap:3px;letter-spacing:0}.model-selector-label{display:inline-flex;align-items:center;gap:4px;flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;text-align:left}.model-selector-btn:hover{color:var(--text-primary);background:rgb(var(--c-lift) / .08);border-color:var(--border-focus)}.model-selector-caret{font-size:10px;opacity:.6}.model-selector-dropdown{position:absolute;bottom:100%;left:0;margin-bottom:4px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:200px;width:max-content;padding:4px;z-index:100}.quota-battery-dropdown.model-selector-dropdown{inset:100% 0 auto auto;margin-top:6px;margin-bottom:0;width:260px;min-width:0;overflow:hidden}.chat-input-bottom-right .model-selector-dropdown{left:auto;right:0}.model-option{width:100%;display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);cursor:pointer;transition:background var(--transition-fast);text-align:left}.model-option:hover{background:rgb(var(--c-lift) / .05)}.model-option.active{background:rgb(var(--c-accent) / .12);color:var(--text-accent)}.model-option-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-option-meta{font-size:11px;color:var(--text-tertiary);margin-left:8px}.model-quota{font-weight:600}.model-reset-time{font-size:10px;opacity:.6;white-space:nowrap}.model-selector-divider{opacity:.4;margin:0 2px}.model-dropdown-divider{height:1px;background:var(--border-default);margin:4px 8px}.model-dropdown-section-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);padding:6px 12px 2px;opacity:.7}.chat-mic-btn.recording{color:rgb(var(--c-error));background:rgb(var(--c-error) / .1);animation:mic-pulse 1.5s ease-in-out infinite}.chat-mic-btn.recording:hover{background:rgb(var(--c-error) / .18)}.chat-mic-btn.transcribing{color:var(--text-accent);opacity:.6;animation:mic-pulse 1.5s ease-in-out infinite}@keyframes mic-pulse{0%,to{box-shadow:0 0 rgb(var(--c-error) / .3)}50%{box-shadow:0 0 0 6px rgb(var(--c-error) / 0)}}.speech-interim-text{font-size:13px;color:var(--text-tertiary);font-style:italic;padding:2px 0 0;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;animation:fade-in .15s ease-out}.chat-status-dot{display:flex;align-items:center;justify-content:center;width:var(--icon-btn-width, 32px);height:var(--icon-btn-height, 32px);border-radius:50%;flex-shrink:0;font-size:11px;font-weight:600;line-height:1;border:none;background:transparent;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,opacity .12s ease}.chat-status-dot:active{transform:scale(.85);opacity:.7}.chat-status-running{color:rgb(var(--c-accent))}.chat-status-idle{color:rgb(var(--c-success, 52 211 153))}.chat-status-error{color:#fbbf24}.chat-status-unloaded{color:var(--text-tertiary);opacity:.4}.chat-status-canceled{color:var(--text-tertiary)}.chat-session-settings-overlay{position:fixed;inset:0;z-index:2099;background:#00000073;display:flex;align-items:center;justify-content:center;padding:24px;animation:fade-in .12s ease-out}.chat-session-settings-popover{position:relative;z-index:2100;width:min(340px,calc(100vw - 32px));max-height:calc(100vh - 80px);overflow-y:auto;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:0 20px 60px #00000059,0 0 0 1px #ffffff0a;padding:14px;animation:modal-pop-in .18s cubic-bezier(.34,1.56,.64,1)}@keyframes modal-pop-in{0%{opacity:0;transform:scale(.92) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.chat-session-settings-title{font-size:13px;font-weight:700;color:var(--text-primary)}.chat-session-settings-subtitle{margin-top:2px;font-size:11px;color:var(--text-tertiary)}.chat-session-settings-divider{height:1px;background:var(--border-default);margin:8px 0}.chat-session-settings-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-session-settings-row-stack{margin-top:8px;align-items:flex-start;flex-direction:column}.chat-session-settings-label{font-size:11px;font-weight:600;color:var(--text-secondary)}.chat-session-settings-segmented{display:inline-flex;align-items:center;gap:6px}.chat-session-settings-chip,.chat-session-settings-pill,.chat-session-settings-action{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast)}.chat-session-settings-chip{padding:4px 10px;font-size:11px}.chat-session-settings-chip.active{background:rgb(var(--c-accent) / .12);border-color:rgb(var(--c-accent) / .45);color:var(--text-accent)}.chat-session-settings-pills{display:flex;flex-wrap:wrap;gap:6px;width:100%}.chat-session-settings-pill{padding:4px 8px;font-size:11px}.chat-session-settings-pill.active{background:rgb(var(--c-accent) / .12);border-color:rgb(var(--c-accent) / .45);color:var(--text-accent)}.chat-session-settings-chip:hover,.chat-session-settings-pill:hover,.chat-session-settings-action:hover{border-color:var(--border-focus);color:var(--text-primary);background:rgb(var(--c-lift) / .08)}.chat-session-settings-action{width:100%;padding:6px 10px;font-size:12px;font-weight:600;display:flex;flex-direction:column;align-items:flex-start;gap:1px;text-align:left}.chat-session-settings-action-desc{font-size:10px;font-weight:400;color:var(--text-tertiary);line-height:1.3}.chat-session-settings-diag{display:flex;flex-direction:column;gap:4px;margin-top:4px}.chat-session-diag-row{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--text-tertiary)}.chat-session-diag-badge{font-size:11px;font-weight:600;padding:1px 6px;border-radius:999px;background:rgb(var(--c-lift) / .06)}.chat-session-diag-badge.on{color:rgb(var(--c-success, 52 211 153))}.chat-session-diag-badge.off{color:var(--text-tertiary);opacity:.6}.new-conv-btn{width:28px;height:28px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all var(--transition-fast)}.new-conv-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-focus)}.workspace-group{margin-bottom:4px}.workspace-group-header{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px;border:none;background:transparent;cursor:pointer;font-family:var(--font-sans);font-size:12px;font-weight:600;color:var(--text-secondary);letter-spacing:.3px;transition:color var(--transition-fast);text-align:left}.workspace-group-chevron{font-size:10px;transition:transform var(--transition-fast);color:var(--text-tertiary)}.workspace-group-chevron.collapsed{transform:rotate(-90deg)}.workspace-group-color-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.workspace-group-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-group-count{font-size:10px;color:var(--text-tertiary);background:rgb(var(--c-lift) / .05);padding:0 5px;border-radius:8px;min-width:18px;text-align:center;font-weight:500}.workspace-group-header-row{display:flex;align-items:center;gap:0}.workspace-group-header-row .workspace-group-header{flex:1;min-width:0}.workspace-group-add-btn{width:24px;height:24px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:8px;transition:all var(--transition-fast)}.workspace-group-add-btn:hover{background:var(--bg-hover);color:var(--text-accent)}.workspace-group-tasks-btn{width:24px;height:24px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast)}.workspace-group-tasks-btn:hover{background:var(--bg-hover);color:var(--text-accent)}.workspace-group-priority-badge{font-size:9px;font-weight:700;letter-spacing:.04em;padding:1px 5px;border-radius:6px;line-height:1.4;text-transform:uppercase;flex-shrink:0;margin-left:2px}.workspace-group-priority-badge.priority-p0{background:#ef444426;color:#f87171}.workspace-group-priority-badge.priority-p1{background:#f59e0b26;color:#fbbf24}.workspace-group-priority-badge.priority-p2{background:#3b82f61f;color:#60a5fa}.workspace-group-items{padding-left:4px}.workspace-group-items .sidebar-item{padding:8px 12px}.sidebar-item.dimmed{opacity:.5}.see-all-btn{display:block;width:100%;padding:6px 12px 6px 22px;border:none;background:transparent;cursor:pointer;font-family:var(--font-sans);font-size:12px;font-weight:400;color:var(--text-tertiary);text-align:left;transition:color var(--transition-fast)}.loading-spinner{width:20px;height:20px;border:2px solid var(--border-subtle);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-older{display:flex;justify-content:center;padding:12px 0 8px}.typing-indicator{display:flex;gap:4px;padding:4px 0}.typing-indicator span{width:6px;height:6px;background:var(--text-tertiary);border-radius:50%;animation:typing-bounce 1.4s infinite ease-in-out both}.typing-indicator span:nth-child(1){animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.wait-state-container{display:flex;flex-direction:column;gap:8px;padding:4px 6px}.wait-state-header{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);font-weight:500;margin-bottom:4px}.wait-state-shimmer{background:linear-gradient(90deg,rgb(var(--c-lift) / .04) 25%,rgb(var(--c-accent) / .12),rgb(var(--c-lift) / .04) 75%);background-size:200% 100%;animation:shimmer 2s infinite ease-in-out;border-radius:4px;height:12px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.wait-state-shimmer.w-90{width:90%}.wait-state-shimmer.w-75{width:75%}.wait-state-shimmer.w-60{width:60%}.message.system .message-body{background:transparent;border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:12px;line-height:1.6}.message.system{width:100%}.info-card .step-card-header{cursor:default}.info-card-text{color:var(--text-secondary);font-size:12px;flex:1;min-width:0}.info-card-text p{margin:0}.thinking-block{margin-bottom:8px;border-bottom:1px solid var(--border-subtle);padding-bottom:8px}.thinking-header{display:flex;align-items:center;gap:6px;cursor:pointer;color:var(--text-tertiary);font-size:12px;-webkit-user-select:none;user-select:none;list-style:none}.thinking-header::-webkit-details-marker{display:none}.thinking-chevron{font-size:10px;transition:transform var(--transition-fast);display:inline-block}details[open] .thinking-chevron{transform:rotate(90deg)}.thinking-content{margin-top:8px;padding:8px 10px;background:rgb(var(--c-lift) / .02);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);font-size:12px;line-height:1.4;white-space:pre-wrap;max-height:400px;overflow-y:auto}.msg-actions{display:flex;gap:4px;margin-top:2px;align-items:center;justify-content:flex-end}.msg-timestamp{font-size:10px;color:var(--text-tertiary);opacity:.6;margin-right:auto;white-space:nowrap;-webkit-user-select:none;user-select:none}.msg-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast);padding:0}.msg-action-btn>*{pointer-events:none}.msg-action-btn.locked{cursor:not-allowed;opacity:.3;pointer-events:none}.msg-highlight-btn.active{color:rgb(var(--c-warning, 245 158 11));background:rgb(var(--c-warning, 245 158 11) / .12)}.message.highlighted .chat-block{border-color:rgb(var(--c-warning, 245 158 11) / .35);box-shadow:0 0 0 1px rgb(var(--c-warning, 245 158 11) / .1)}.conn-status{display:inline-block;vertical-align:middle;margin-right:6px;flex-shrink:0}.step-card{position:relative;overflow:hidden}.error-card{background:rgb(var(--c-error) / .06);border-color:rgb(var(--c-error) / .25)}.error-card-header{display:flex;align-items:center;gap:8px;padding:10px 14px;flex-wrap:wrap}.error-card-icon{display:flex;align-items:center;color:rgb(var(--c-error));flex-shrink:0}.error-card-title{font-size:12.5px;font-weight:600;color:rgb(var(--c-error));flex:1;min-width:0}.error-card-code{font-family:var(--font-mono);font-size:10px;color:var(--text-tertiary);background:var(--bg-tertiary);padding:1px 6px;border-radius:3px;flex-shrink:0}.error-card-detail{padding:0 14px 10px;font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);line-height:1.5;word-break:break-word}.error-card-actions{padding:0 14px 10px;display:flex;flex-direction:column;gap:8px}.error-card-retry{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;border:1px solid rgb(var(--c-error) / .3);background:rgb(var(--c-error) / .1);color:rgb(var(--c-error));cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);align-self:flex-start}.error-card-retry:hover{background:rgb(var(--c-error) / .18);border-color:rgb(var(--c-error) / .5);box-shadow:0 1px 8px rgb(var(--c-error) / .15)}.error-card-full{width:100%}.error-card-full-toggle{font-size:11px;color:var(--text-tertiary);cursor:pointer;-webkit-user-select:none;user-select:none}.error-card-full-toggle:hover{color:var(--text-secondary)}.error-card-full-content{margin:8px 0 0;padding:10px 12px;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:10px;line-height:1.5;color:var(--text-tertiary);max-height:200px;overflow-y:auto;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.error-card.warning-card{background:rgb(var(--c-warning) / .06);border-color:rgb(var(--c-warning) / .25)}.warning-card .error-card-icon,.warning-card .error-card-title{color:rgb(var(--c-warning))}.warning-card .error-card-retry{border:1px solid rgb(var(--c-warning) / .3);background:rgb(var(--c-warning) / .1);color:rgb(var(--c-warning))}.warning-card .error-card-retry:hover{background:rgb(var(--c-warning) / .18);border-color:rgb(var(--c-warning) / .5);box-shadow:0 1px 8px rgb(var(--c-warning) / .15)}.warning-minimized{cursor:pointer;-webkit-user-select:none;user-select:none}.warning-header-minimized{padding:6px 12px;gap:6px}.warning-title-minimized{font-size:11px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.warning-expanded-body{border-top:1px solid rgb(var(--c-warning) / .15);padding:8px 12px}.warning-expanded-body .error-card-detail{padding:0 0 6px;font-size:11px}.warning-expanded-body .error-card-full-content{margin:0;max-height:150px}.step-copy-btn{position:absolute;bottom:4px;right:4px;opacity:.5;width:24px;height:24px}.step-card.cmd-ok{background:rgb(var(--c-success) / .06);border-color:rgb(var(--c-success) / .2)}.step-card.cmd-fail{background:rgb(var(--c-error) / .06);border-color:rgb(var(--c-error) / .2)}.step-card.cmd-wait{background:rgb(var(--c-accent) / .06);border-color:rgb(var(--c-accent) / .4);box-shadow:0 0 0 1px rgb(var(--c-accent) / .2) inset}.step-card-header{width:100%;display:flex;align-items:flex-start;gap:8px;padding:2px 4px;background:transparent;border:none;cursor:pointer;font-family:var(--font-sans);font-size:12px;color:var(--text-secondary);text-align:left;transition:background var(--transition-fast)}.step-card-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:14px;height:14px;margin-top:1px}.command-card .step-card-icon{font-family:var(--font-mono);font-weight:700;color:var(--text-accent)}.step-card-command{font-family:var(--font-mono);font-size:12px;color:var(--text-primary);word-break:break-all;flex:1;min-width:0}.step-card-actions{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--bg-surface);border-top:1px solid var(--border-subtle)}.step-card-warning{font-size:13px;color:var(--text-secondary)}.approve-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-sm);background:var(--accent);color:var(--text-on-solid);font-size:12.5px;font-weight:500;border:none;cursor:pointer;transition:background var(--transition-fast)}.approve-btn:hover{background:var(--accent-hover)}.file-permission-card .step-card-header{cursor:default}.file-permission-card .step-card-header:hover{background:transparent}.file-permission-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;padding:10px 14px;background:var(--bg-surface);border-top:1px solid var(--border-subtle)}.file-permission-btn{font-size:12px;padding:6px 14px;border-radius:var(--radius-sm);font-weight:500;border:1px solid var(--border-default);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.file-permission-btn.deny{background:transparent;color:rgb(var(--c-error));border-color:rgb(var(--c-error) / .3)}.file-permission-btn.deny:hover{background:rgb(var(--c-error) / .1);border-color:rgb(var(--c-error) / .5)}.file-permission-btn.allow-once{background:var(--bg-surface);color:var(--text-secondary)}.file-permission-btn.allow-once:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-focus)}.file-permission-btn.allow-conversation{background:var(--accent);color:var(--text-on-solid);border-color:var(--accent)}.file-permission-btn.allow-conversation:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.command-action-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--bg-surface);border-top:1px solid var(--border-subtle)}.command-waiting-label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:var(--text-accent)}.waiting-dot{width:7px;height:7px;border-radius:50%;background:rgb(var(--c-accent));animation:waiting-pulse 1.4s ease-in-out infinite;flex-shrink:0}@keyframes waiting-pulse{0%,to{opacity:.4;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}.command-action-buttons{display:flex;gap:8px;flex-shrink:0}.command-action-btn{font-size:12px;padding:6px 14px;border-radius:var(--radius-sm);font-weight:500;border:1px solid var(--border-default);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.command-action-btn.reject{background:transparent;color:rgb(var(--c-error));border-color:rgb(var(--c-error) / .3)}.command-action-btn.reject:hover{background:rgb(var(--c-error) / .1);border-color:rgb(var(--c-error) / .5)}.command-action-btn.approve{background:rgb(var(--c-success) / .12);color:rgb(var(--c-success));border-color:rgb(var(--c-success) / .3)}.command-action-btn.approve:hover{background:rgb(var(--c-success) / .2);border-color:rgb(var(--c-success) / .5);box-shadow:0 1px 8px rgb(var(--c-success) / .15)}.step-card-file{font-family:var(--font-mono);font-size:11px;color:var(--text-accent);background:rgb(var(--c-accent) / .12);padding:1px 6px;border-radius:3px;flex-shrink:0}.step-card-desc{color:var(--text-secondary);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.step-card-spacer{display:none}.step-card-exit{font-family:var(--font-mono);font-size:10px;font-weight:600;padding:1px 5px;border-radius:3px;flex-shrink:0;line-height:14px}.step-card-exit.exit-ok{color:rgb(var(--c-success));background:rgb(var(--c-success) / .12)}.step-card-exit.exit-fail{color:rgb(var(--c-error));background:rgb(var(--c-error) / .12)}.step-card-chevron{font-size:10px;color:var(--text-tertiary);transition:transform var(--transition-fast);flex-shrink:0}.step-card-chevron.open{transform:rotate(180deg)}.step-card-cwd{font-family:var(--font-mono);font-size:10px;color:var(--text-tertiary);padding:0 12px 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step-card-output{background:var(--bg-primary);border-top:1px solid var(--border-subtle);padding:10px 12px;font-family:var(--font-mono);font-size:11px;line-height:1.5;color:var(--text-secondary);max-height:300px;overflow-y:auto;overflow-x:auto;white-space:pre-wrap;word-break:break-all;margin:0}.diff-stat{display:flex;align-items:center;gap:4px;font-family:var(--font-mono);font-size:11px;font-weight:600;flex-shrink:0}.diff-stat-add{color:rgb(var(--c-success))}.diff-stat-del{color:rgb(var(--c-error))}.step-card-diff{border-top:1px solid var(--border-subtle);overflow:hidden}.diff-file-header{padding:6px 12px;font-family:var(--font-mono);font-size:11px;color:var(--text-tertiary);background:var(--bg-tertiary);border-bottom:1px solid var(--border-subtle);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diff-content{margin:0;padding:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.5;max-height:400px;overflow-y:auto;overflow-x:auto;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:0 0 var(--radius-sm) var(--radius-sm);border-top:none}.diff-line{display:flex;min-height:20px}.diff-prefix{width:40px;flex-shrink:0;text-align:right;padding-right:10px;-webkit-user-select:none;user-select:none;color:var(--text-tertiary);background:var(--bg-surface);border-right:1px solid var(--border-subtle)}.diff-text{padding-left:12px;white-space:pre-wrap;word-break:break-all;flex-grow:1}.diff-line.diff-add{background:rgb(var(--c-success) / .12)}.diff-line.diff-add .diff-prefix{background:rgb(var(--c-success) / .18);border-right-color:rgb(var(--c-success) / .3);color:rgb(var(--c-success) / .9)}.diff-line.diff-add .diff-text{color:rgb(var(--c-success))}.diff-line.diff-del{background:rgb(var(--c-error) / .12)}.diff-line.diff-del .diff-prefix{background:rgb(var(--c-error) / .18);border-right-color:rgb(var(--c-error) / .3);color:rgb(var(--c-error) / .9)}.diff-line.diff-del .diff-text{color:rgb(var(--c-error))}.diff-line.diff-hunk{background:rgb(var(--c-accent) / .08)}.diff-line.diff-hunk .diff-prefix{background:rgb(var(--c-accent) / .12);border-right-color:transparent;color:var(--text-tertiary)}.diff-line.diff-hunk .diff-text{color:var(--text-tertiary);font-family:var(--font-primary);font-size:11px}.modal-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#000000bf;animation:modal-fade-in .2s ease-out}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.modal-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:32px;max-width:420px;width:90vw;text-align:center;box-shadow:0 8px 32px #0006;animation:modal-slide-up .25s ease-out}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-icon{font-size:36px;margin-bottom:12px}.modal-title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.modal-body{font-size:13.5px;color:var(--text-secondary);line-height:1.6;margin:0 0 8px}.modal-hint{font-size:12px;color:var(--text-tertiary);margin:0 0 24px}.modal-actions{display:flex;gap:10px;justify-content:center}.modal-btn{padding:8px 20px;border-radius:var(--radius-md);font-size:13px;font-weight:500;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast);border:1px solid var(--border-default)}.modal-btn-secondary{background:var(--bg-surface);color:var(--text-secondary)}.modal-btn-secondary:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-focus)}.modal-btn-primary{background:var(--accent);color:var(--text-on-solid);border-color:var(--accent)}.modal-btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 2px 12px #6366f14d}.image-gen-card{background:rgb(var(--c-accent) / .04);border-color:rgb(var(--c-accent) / .15)}.image-gen-card.cmd-ok{background:rgb(var(--c-success) / .04);border-color:rgb(var(--c-success) / .15)}.image-gen-model{font-family:var(--font-mono);font-size:10px;color:var(--text-tertiary);background:var(--bg-tertiary);padding:1px 6px;border-radius:3px;margin-left:6px}.image-gen-body{padding:0 14px 12px}.image-gen-prompt{font-family:var(--font-mono);font-size:11px;line-height:1.5;color:var(--text-tertiary);padding:8px 10px;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:10px;max-height:80px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.image-gen-preview{border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-subtle)}.image-gen-img{width:100%;display:block;cursor:pointer;transition:opacity var(--transition-fast)}.image-gen-img:hover{opacity:.9}.image-gen-loading{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-tertiary);padding:12px 0}.task-boundary-card{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;background:transparent}.task-boundary-header{width:100%;display:flex;align-items:center;gap:8px;padding:10px 14px;background:var(--bg-elevated);border:none;cursor:pointer;font-family:var(--font-sans);text-align:left;transition:background var(--transition-fast)}.task-boundary-header:hover{background:var(--bg-hover)}.task-boundary-icon{display:flex;align-items:center;color:var(--text-accent);flex-shrink:0}.task-boundary-title{font-size:13px;font-weight:600;color:var(--text-primary);flex:1}.task-boundary-toggle{font-size:12px;color:var(--text-subtle);margin-right:4px}.task-boundary-chevron{display:flex;align-items:center;color:var(--text-tertiary);transition:transform var(--transition-fast);flex-shrink:0;transform:rotate(90deg)}.task-boundary-chevron.open{transform:rotate(0)}.task-boundary-items{border-top:1px solid var(--border-subtle);padding:8px 0}.task-boundary-item{padding:0 14px}.task-boundary-item+.task-boundary-item{margin-top:2px}.task-boundary-item-header{display:flex;align-items:flex-start;gap:10px;padding:6px 0;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.task-boundary-item-header:hover{background:var(--bg-hover)}.task-boundary-item-number{min-width:22px;height:22px;border-radius:50%;background:var(--bg-active);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;flex-shrink:0;margin-top:1px}.task-boundary-item.expanded .task-boundary-item-number{background:var(--text-accent);color:var(--bg-primary)}.task-boundary-item-status{font-size:13px;font-weight:500;color:var(--text-primary);line-height:1.5;flex:1;min-width:0}.task-boundary-item-chevron{display:flex;align-items:center;color:var(--text-tertiary);transition:transform var(--transition-fast);flex-shrink:0;margin-top:1px}.task-boundary-item-chevron.open{transform:rotate(180deg)}.task-boundary-actions{margin:2px 0 6px 32px;padding:6px 0 2px;border-left:2px solid var(--border-subtle);display:flex;flex-direction:column;gap:2px}.task-boundary-action{display:flex;align-items:center;gap:6px;padding:3px 10px;font-size:12px;color:var(--text-secondary);line-height:1.4}.task-boundary-action-icon{display:flex;align-items:center;color:var(--text-tertiary);flex-shrink:0}.task-boundary-action-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-menu-btn{display:none;width:32px;height:32px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;align-items:center;justify-content:center;font-size:16px;transition:all var(--transition-fast);flex-shrink:0}.mobile-menu-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-backdrop{display:none}.scroll-to-bottom-btn{display:flex;position:sticky;bottom:8px;width:36px;height:36px;min-width:36px;min-height:36px;max-width:36px;max-height:36px;margin:-36px 16px 0 auto;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:#1e2128eb;color:var(--text-secondary);font-size:16px;line-height:1;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 10px #0000004d;z-index:10;padding:0;animation:fade-in .15s ease-out;transition:background var(--transition-fast),color var(--transition-fast)}.scroll-to-bottom-btn:hover{background:#2d303af2;color:var(--text-primary)}.copy-convo-bar{position:sticky;bottom:0;display:flex;justify-content:flex-end;padding:4px 8px;pointer-events:none}.copy-convo-btn{pointer-events:all;display:flex;align-items:center;gap:2px;padding:4px 8px;border-radius:var(--radius-sm);background:var(--bg-secondary);border:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:11px;cursor:pointer;transition:all var(--transition-fast);opacity:.7}.copy-convo-btn:hover{opacity:1;color:var(--text-secondary);background:var(--bg-hover)}@media(hover:hover){.sidebar-icon-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-project-tab:hover{background:var(--bg-hover);color:var(--text-secondary)}.sidebar-action-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-item:hover{background:var(--bg-hover)}.sidebar-item.dimmed:hover{opacity:.75}.sidebar-item:hover .item-indicator,.sidebar-item:hover .item-dot{display:none}.sidebar-item:hover .sidebar-item-menu-btn{display:flex;opacity:.6}.sidebar-item-menu-btn:hover{opacity:1!important;background:var(--bg-hover);color:var(--text-primary)}.workspace-group-header:hover{color:var(--text-primary)}.see-all-btn:hover{color:var(--text-secondary)}.context-menu-item:hover{background:rgb(var(--c-lift) / .05)}.context-menu-item.danger:hover{background:rgb(var(--c-error) / .06)}.search-result-item:hover{background:var(--bg-hover)}.code-copy-btn:hover{opacity:1;color:var(--text-primary);background:var(--bg-hover)}.msg-action-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.message-media-thumb:hover{transform:scale(1.02)}.step-card-header:hover{background:var(--bg-hover)}.command-card .step-card-header:hover{background:transparent}}.settings-page{height:100dvh;display:flex;align-items:flex-start;justify-content:center;padding:0 20px 40px;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--bg-primary)}.settings-container{width:100%;max-width:560px;display:flex;flex-direction:column}.settings-top-bar{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg-primary) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:calc(24px + var(--top-safe-area, 0px)) 0 12px;margin-bottom:8px;display:flex;flex-direction:column;gap:14px}.settings-header{display:flex;align-items:center;justify-content:space-between}.settings-title{font-size:20px;font-weight:600;color:var(--text-primary);margin:0;letter-spacing:-.01em}.settings-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.settings-tabs::-webkit-scrollbar{display:none}.settings-tab{background:var(--bg-secondary);border:1px solid transparent;border-radius:999px;font-size:14px;font-weight:500;color:var(--text-tertiary);padding:8px 12px;cursor:pointer;white-space:nowrap;transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast)}.settings-tab:hover{color:var(--text-secondary);background:var(--bg-hover)}.settings-tab.active{color:var(--text-primary);background:rgb(var(--c-accent) / .14);border-color:rgb(var(--c-accent) / .35)}.settings-content{display:flex;flex-direction:column;gap:18px;padding:4px 0 0}.settings-search{margin-top:-4px}.settings-search-input{background:color-mix(in srgb,var(--bg-secondary) 80%,var(--bg-primary))}.settings-section{display:flex;flex-direction:column;gap:16px;animation:tabFadeIn .2s ease-out;padding-bottom:8px}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.settings-section-desc{font-size:13px;color:var(--text-secondary);margin:0 0 4px;line-height:1.5}.settings-group-title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0;letter-spacing:-.01em}.settings-group-desc{font-size:12px;line-height:1.5;color:var(--text-secondary);margin:-2px 0 2px}.settings-control-help{font-size:11px;line-height:1.45;color:var(--text-tertiary);margin:0}.settings-empty-state{padding:18px 16px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg-secondary) 72%,var(--bg-primary))}.settings-label{font-size:12px;font-weight:500;color:var(--text-secondary);display:flex;align-items:center;gap:8px;margin-top:4px}.settings-key-link{font-size:11px;color:var(--text-accent);text-decoration:none;margin-left:auto}.settings-key-link:hover{text-decoration:underline}.settings-optional{font-weight:400;color:var(--text-tertiary)}.settings-input,.settings-select{width:100%;padding:10px 14px;font-size:14px;font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);outline:none;transition:border-color var(--transition-fast);box-sizing:border-box}.settings-input:focus,.settings-select:focus{border-color:var(--border-focus);box-shadow:0 0 0 2px rgb(var(--c-accent) / .12)}.settings-input::placeholder{color:var(--text-tertiary)}.settings-select{cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.settings-save-btn{margin-top:8px;padding:10px 20px;font-size:14px;font-weight:500;font-family:var(--font-sans);color:var(--text-on-solid);background:var(--accent);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast),opacity var(--transition-fast);align-self:flex-start}.settings-save-btn:hover:not(:disabled){background:var(--accent-hover)}.settings-save-btn:disabled{opacity:.4;cursor:not-allowed}.settings-save-btn.saved{background:rgb(var(--c-success))}.settings-error{font-size:12px;color:rgb(var(--c-error));margin:0}.settings-loading{color:var(--text-tertiary);text-align:center;padding:40px 0}.settings-divider{border:none;border-top:1px solid var(--border-subtle);margin:20px 0}.settings-notif-status{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius-sm);font-size:13px}.settings-notif-granted{background:rgb(var(--c-success) / .1);color:rgb(var(--c-success))}.settings-notif-denied{background:rgb(var(--c-error) / .08);color:var(--text-secondary);line-height:1.4}.settings-poll-row{display:flex;align-items:center;gap:8px}.settings-poll-unit{font-size:13px;color:var(--text-secondary)}.appearance-control{display:flex;flex-direction:column;gap:6px}.appearance-group{display:flex;flex-direction:column;gap:10px;padding:16px;background:color-mix(in srgb,var(--bg-secondary) 72%,var(--bg-primary));border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:0 8px 24px #0000001f}.appearance-value{margin-left:auto;font-size:11px;font-weight:400;color:var(--text-tertiary);font-family:var(--font-mono)}.appearance-range{width:100%;height:8px;-webkit-appearance:none;appearance:none;background:var(--border-default);border-radius:4px;outline:none;cursor:pointer;margin:4px 0}.appearance-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--accent);cursor:pointer;border:2px solid var(--bg-surface);box-shadow:0 1px 6px #00000059;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.appearance-range::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 2px 8px #0006}.appearance-range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--accent);cursor:pointer;border:2px solid var(--bg-surface);box-shadow:0 1px 6px #00000059}.appearance-color-row{display:flex;align-items:center;gap:10px}.appearance-color-input{width:36px;height:36px;border:2px solid var(--border-default);border-radius:var(--radius-sm);padding:2px;cursor:pointer;background:transparent}.appearance-color-input::-webkit-color-swatch-wrapper{padding:0}.appearance-color-input::-webkit-color-swatch{border:none;border-radius:3px}.appearance-color-label{font-size:12px;font-family:var(--font-mono);color:var(--text-tertiary);text-transform:uppercase}.appearance-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.appearance-toggle-label{font-size:12px;color:var(--text-secondary)}.appearance-toggle{width:40px;height:22px;border-radius:11px;border:none;background:var(--border-default);cursor:pointer;position:relative;transition:background var(--transition-fast);padding:0;flex-shrink:0}.appearance-toggle.on{background:var(--accent)}.appearance-toggle-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--text-on-solid);transition:transform var(--transition-fast);box-shadow:0 1px 3px #0000004d}.appearance-toggle.on .appearance-toggle-thumb{transform:translate(18px)}.settings-export-section{margin-top:12px;padding-top:20px;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:4px}@media(max-width:480px){.settings-page{padding:calc(8px + var(--top-safe-area, 0px)) 12px 16px}.settings-card{padding:20px 18px;border-radius:var(--radius-md)}.settings-title{font-size:16px}.settings-input,.settings-select{font-size:16px;padding:12px 14px}.settings-save-btn{width:100%;padding:12px;text-align:center}.appearance-range{height:10px}.appearance-range::-webkit-slider-thumb{width:28px;height:28px}.appearance-range::-moz-range-thumb{width:28px;height:28px}.appearance-color-input{width:44px;height:44px}.appearance-toggle{width:48px;height:28px;border-radius:14px}.appearance-toggle-thumb{width:22px;height:22px;top:3px;left:3px}.appearance-toggle.on .appearance-toggle-thumb{transform:translate(20px)}}.tab-panel-active{display:contents}.tab-panel-hidden{display:none}.tab-bar{display:flex;position:fixed;bottom:10px;left:12px;right:12px;z-index:1000;min-height:var(--tab-bar-height);background:color-mix(in srgb,var(--bg-surface) 68%,transparent);border:1px solid rgb(var(--c-lift) / .12);border-radius:22px;box-shadow:0 16px 36px #00000057,inset 0 1px rgb(var(--c-lift) / .08);backdrop-filter:blur(22px) saturate(1.45);-webkit-backdrop-filter:blur(22px) saturate(1.45);padding:6px 4px;padding-bottom:max(6px,env(safe-area-inset-bottom),var(--bottom-safe-area, 0px))}.tab-bar-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px 4px;border:none;background:transparent;color:var(--text-tertiary);font-family:var(--font-sans);font-size:10px;cursor:pointer;transition:color var(--transition-fast);-webkit-tap-highlight-color:transparent}.tab-bar-item.active{color:var(--text-accent);background:rgb(var(--c-accent) / .12);border-radius:16px}.tab-bar-item:not(.active):hover{color:var(--text-secondary)}.tab-bar-icon{display:flex;align-items:center;justify-content:center;height:24px}.tab-bar-label{font-weight:500;line-height:1}.app-layout,.settings-page{padding-bottom:var(--tab-bar-offset)}@media(min-width:769px){:root{--tab-bar-offset: 0px}.tab-bar{inset:0 auto 0 0;width:var(--nav-rail-width);flex-direction:column;min-height:auto;background:var(--bg-secondary);border-radius:0;border-top:none;border-right:1px solid var(--border-subtle);padding:max(20px,env(safe-area-inset-top),var(--top-safe-area, 0px)) 0 max(20px,env(safe-area-inset-bottom),var(--bottom-safe-area, 0px));gap:8px;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.tab-bar-item{flex:none;padding:12px 8px}.app-layout,.settings-page,.ls-page,.tasks-page,.catchup-page,.nb-page,.discover-page{padding-bottom:0!important;margin-left:var(--nav-rail-width)!important;width:calc(100% - var(--nav-rail-width))!important;height:100dvh!important}.ls-page-content{padding-bottom:16px!important}}.toast-container{position:fixed;top:12px;left:50%;transform:translate(-50%);z-index:2000;display:flex;flex-direction:column;gap:8px;width:calc(100% - 24px);max-width:400px;pointer-events:none}.toast-item{pointer-events:auto;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:12px 16px;box-shadow:0 8px 24px #0000004d;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;animation:toast-slide-in .3s ease-out;transition:opacity .2s,transform .2s;cursor:default}.toast-item.is-clickable{cursor:pointer}.toast-item.is-clickable:hover{opacity:.9;transform:translateY(-1px);background:var(--bg-hover)}.toast-content{flex:1;min-width:0}.toast-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.toast-body{font-size:12px;color:var(--text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast-close{background:none;border:none;color:var(--text-tertiary);padding:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:color .2s;margin-top:-4px;margin-right:-8px}.toast-close:hover{color:var(--text-primary)}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.chat-swiper-wrapper{overflow:hidden;max-height:0;opacity:0;transition:max-height .28s cubic-bezier(.4,0,.2,1),opacity .2s ease}.chat-swiper-wrapper.visible{max-height:600px;opacity:1}.chat-swiper{flex-shrink:0;border-top:1px solid var(--border-subtle);background:var(--bg-primary);padding:8px 20px 4px;position:relative;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation}.chat-swiper-track{max-width:860px;margin:0 auto;width:100%;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth;padding:2px 0 4px}.chat-swiper-track::-webkit-scrollbar{display:none}.chat-swiper-track.grid-layout{display:grid;grid-template-columns:repeat(var(--swiper-grid-cols, 4),1fr);gap:6px;overflow-x:visible}.chat-swiper-section-header{display:flex;align-items:center;justify-content:space-between;padding:2px 4px}.chat-swiper-section-label{font-size:10px;font-weight:600;color:var(--text-tertiary);letter-spacing:.03em;text-transform:uppercase}.chat-swiper-page-nav{display:flex;align-items:center;gap:2px}.chat-swiper-page-num{font-size:9px;font-weight:500;color:var(--text-tertiary);min-width:20px;text-align:center;font-variant-numeric:tabular-nums}.chat-swiper-page-arrow{background:none;border:none;color:var(--text-tertiary);font-size:12px;line-height:1;cursor:pointer;padding:1px 4px;border-radius:3px;transition:all var(--transition-fast)}.chat-swiper-page-arrow:hover:not(:disabled){color:var(--text-primary);background:var(--bg-hover)}.chat-swiper-page-arrow:disabled{opacity:.2;cursor:default}.chat-swiper-workspace-bar{display:flex;align-items:center;gap:4px;padding:0 4px 4px}.chat-swiper-workspace-select{flex:1;min-width:0;background:transparent;border:none;border-radius:var(--radius-sm, 6px);color:var(--text-tertiary);font-family:var(--font-sans);font-size:10px;padding:3px 4px;outline:none;cursor:pointer;-webkit-appearance:none;appearance:none}.chat-swiper-workspace-select:hover{color:var(--text-secondary)}.chat-swiper-workspace-select:focus{color:var(--text-secondary)}.chat-swiper-workspace-btn{background:rgba(var(--c-lift, 255 255 255) / .04);border:1px solid var(--border-subtle);border-radius:var(--radius-sm, 6px);color:var(--text-tertiary);font-size:12px;line-height:1;padding:3px 7px;cursor:pointer;transition:all var(--transition-fast)}.chat-swiper-workspace-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.chat-swiper-workspace-btn.delete:hover{color:#ef4444;border-color:#ef44444d}.chat-swiper-divider{height:1px;background:var(--border-subtle);margin:4px 0 2px}.chat-swiper-overflow{display:block;width:100%;padding:3px 0;background:none;border:none;color:var(--text-tertiary);font-size:10px;font-family:var(--font-sans);cursor:pointer;text-align:center;opacity:.7;transition:opacity var(--transition-fast),color var(--transition-fast)}.chat-swiper-overflow:hover{opacity:1;color:var(--text-accent)}.chat-swiper-page-dots{display:flex;justify-content:center;gap:5px;padding:3px 0 1px}.chat-swiper-page-dot{width:6px;height:6px;border-radius:50%;background:var(--text-tertiary);opacity:.3;border:none;padding:0;cursor:pointer;transition:opacity var(--transition-fast),transform var(--transition-fast)}.chat-swiper-page-dot.active{opacity:.9;transform:scale(1.3)}.chat-swiper-page-dot:hover{opacity:.7}.chip-overflow-backdrop{position:fixed;inset:0;z-index:9990;background:#0006;animation:ctx-backdrop-fade .12s ease}.chip-overflow-popup{position:fixed;z-index:9991;left:50%;top:50%;transform:translate(-50%,-50%);width:min(90vw,560px);max-height:70vh;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg, 14px);box-shadow:0 12px 40px #00000073;display:flex;flex-direction:column;animation:ctx-menu-pop .15s cubic-bezier(.34,1.56,.64,1);overflow:hidden}.chip-overflow-popup-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 8px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.chip-overflow-popup-title{font-size:13px;font-weight:600;color:var(--text-primary);letter-spacing:.02em}.chip-overflow-popup-close{background:none;border:none;color:var(--text-tertiary);font-size:16px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all var(--transition-fast)}.chip-overflow-popup-close:hover{background:var(--bg-hover);color:var(--text-primary)}.chip-overflow-popup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:12px 16px 16px;overflow-y:auto;overscroll-behavior:contain}.chip-overflow-popup-grid .chat-swiper-chip{width:auto;min-width:0;max-width:none}.chat-swiper-chip.recording{border-color:#ef444480;box-shadow:0 0 8px #ef444426}.chat-swiper-chip.recording .chat-swiper-chip-dot{background:#ef4444;opacity:1;position:relative}.chip-ripple{position:absolute;top:50%;left:50%;width:100%;height:100%;border-radius:50%;border:1.5px solid rgba(239,68,68,.5);transform:translate(-50%,-50%) scale(1);animation:chip-ripple-out 1.4s ease-out infinite;pointer-events:none}.chip-ripple.r2{animation-delay:.5s}@keyframes chip-ripple-out{0%{transform:translate(-50%,-50%) scale(1);opacity:.7}to{transform:translate(-50%,-50%) scale(3.5);opacity:0}}.chip-voice-float-card{position:absolute;bottom:100%;left:12px;right:12px;margin-bottom:8px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:0 8px 30px #0000004d;padding:10px;z-index:100;animation:ctx-menu-pop .15s cubic-bezier(.34,1.56,.64,1)}.chip-voice-float-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.chip-voice-float-label{font-size:12px;font-weight:600;color:var(--text-secondary)}.chip-voice-float-close{background:none;border:none;color:var(--text-tertiary);font-size:14px;cursor:pointer;padding:2px 6px;border-radius:4px}.chip-voice-float-close:hover{background:var(--bg-hover);color:var(--text-primary)}.chip-voice-float-textarea{width:100%;background:rgb(var(--c-lift, 255 255 255) / .04);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:13px;padding:8px;resize:none;outline:none;box-sizing:border-box}.chip-voice-float-textarea:focus{border-color:var(--border-focus)}.chip-voice-float-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:6px}.chip-voice-btn{padding:6px 14px;border:none;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:12px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.chip-voice-btn.primary{background:var(--accent, rgb(108, 139, 239));color:#fff}.chip-voice-btn.primary:hover{filter:brightness(1.1)}.chip-voice-btn.primary:disabled{opacity:.4;cursor:default}.chip-voice-btn.secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border-default)}.chip-voice-btn.secondary:hover{background:var(--bg-hover)}.chip-voice-error-toast{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;margin-top:4px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-sm);font-size:11px;color:#ef4444}.chip-voice-inline-status{padding:4px 6px;margin-top:4px;background:#ef44440f;border-radius:var(--radius-sm);font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-swiper-track.grid-layout .chat-swiper-chip{width:auto;min-width:0;max-width:none}.chat-swiper-grid-nav{display:flex;justify-content:flex-end;align-items:center;gap:6px;padding:4px 0 0}.chat-swiper-grid-nav button{background:none;border:1px solid var(--border-default);color:var(--text-secondary);font-size:14px;font-family:var(--font-sans);cursor:pointer;padding:4px 12px;min-width:36px;min-height:32px;border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.chat-swiper-grid-nav button:hover{background:var(--bg-hover);color:var(--text-primary)}.chat-swiper-grid-nav button:disabled{opacity:.25;cursor:default}.chat-swiper-chip{position:relative;display:flex;flex-direction:column;gap:1px;padding:4px 10px;height:var(--swiper-chip-height, 36px);border:1px solid var(--border-default);border-radius:var(--radius-md);background:rgb(var(--c-lift) / .03);color:var(--text-secondary);font-size:11px;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;flex-shrink:0;width:var(--swiper-chip-width, 130px);min-width:var(--swiper-chip-width, 130px);max-width:var(--swiper-chip-width, 130px);transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast),transform .12s ease;line-height:1.3;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;justify-content:center}.chat-swiper-chip:hover{background:rgb(var(--c-lift) / .08);border-color:var(--border-focus);color:var(--text-primary)}.chat-swiper-chip-dot{width:var(--swiper-dot-size, 10px);height:var(--swiper-dot-size, 10px);border-radius:50%;flex-shrink:0;background:var(--text-tertiary);opacity:.4;transition:background var(--transition-fast),opacity var(--transition-fast)}.chat-swiper-chip.done .chat-swiper-chip-dot{background:rgb(var(--c-success, 76 175 80));opacity:.85;box-shadow:0 0 5px rgb(var(--c-success, 76 175 80) / .4)}.chat-swiper-chip.running .chat-swiper-chip-dot{width:var(--swiper-dot-spinner-size, 12px);height:var(--swiper-dot-spinner-size, 12px);background:transparent;border:2px solid var(--text-tertiary);border-top-color:var(--accent);animation:swiper-spin .8s linear infinite;opacity:1}.chat-swiper-chip.error .chat-swiper-chip-dot{background:rgb(var(--c-error));opacity:1}.chat-swiper-chip.warning .chat-swiper-chip-dot{background:rgb(var(--c-warning, 245 158 11));opacity:1;box-shadow:0 0 5px rgb(var(--c-warning, 245 158 11) / .5);animation:swiper-warning-pulse 2s ease-in-out infinite}@keyframes swiper-warning-pulse{0%,to{box-shadow:0 0 4px rgb(var(--c-warning, 245 158 11) / .3)}50%{box-shadow:0 0 8px rgb(var(--c-warning, 245 158 11) / .6)}}.chat-swiper-chip.active{border-width:1.5px;color:var(--text-primary);font-weight:500;filter:brightness(1.35);box-shadow:0 0 var(--swiper-active-glow, 8px) #ffffff14,inset 0 0 12px #ffffff08;transform:scale(1.03);z-index:1}.chat-swiper-chip.active .chat-swiper-chip-dot{opacity:1}.chat-swiper-chip.pinned:before{content:"📌";font-size:7px;position:absolute;top:1px;right:3px;line-height:1;opacity:.5}.chat-swiper-chip.hide-success,.chat-swiper-chip.hide-canceled,.chat-swiper-chip.hide-plain{opacity:.4;filter:saturate(.25);transition:opacity var(--transition-fast),filter var(--transition-fast)}.chat-swiper-chip.hide-success:hover,.chat-swiper-chip.hide-canceled:hover,.chat-swiper-chip.hide-plain:hover{opacity:.65;filter:saturate(.5)}.chat-swiper-chip.hide-success.active,.chat-swiper-chip.hide-canceled.active{opacity:.6;filter:saturate(.4)}.chip-hide-badge{display:inline-flex;align-items:center;margin-left:3px;flex-shrink:0;line-height:1}.chip-hide-badge.success{color:rgb(var(--c-success, 76 175 80))}.chip-hide-badge.canceled{color:var(--text-tertiary);opacity:.7}.chat-swiper-chip-row1{display:flex;align-items:center;gap:4px;min-width:0}.chat-swiper-chip-time{font-size:var(--swiper-time-font-size, 10px);color:var(--text-tertiary);opacity:.6;flex-shrink:0}.chat-swiper-chip-project{margin-left:auto;font-size:8px;font-weight:600;letter-spacing:.02em;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.7;flex-shrink:1;min-width:0}.chat-swiper-chip-row2{min-width:0;overflow:hidden}.chat-swiper-chip-label{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:var(--swiper-label-font-size, 11px);white-space:nowrap;display:block}@keyframes swiper-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes swiper-pulse{0%,to{box-shadow:0 0 rgb(var(--c-accent) / .4)}50%{box-shadow:0 0 0 4px rgb(var(--c-accent) / 0)}}.chip-rename-input{flex:1;min-width:0;background:rgb(var(--c-lift) / .06);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);padding:6px 10px;outline:none;transition:border-color var(--transition-fast)}.chip-rename-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 2px rgb(var(--c-accent) / .12)}.chip-rename-input::placeholder{color:var(--text-tertiary);opacity:.5}@media(max-width:480px){.chat-swiper{padding:6px 10px 2px}.chat-swiper-chip{padding:3px 8px;width:var(--swiper-chip-width, 120px);min-width:var(--swiper-chip-width, 120px);max-width:var(--swiper-chip-width, 120px)}.chat-swiper-chip-project{font-size:7px}.chat-swiper-chip-label,.chat-swiper-chip-time{font-size:9px}}.chip-context-menu{position:fixed;z-index:9999;min-width:200px;max-width:260px;padding:6px 0;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:0 8px 30px #0006,0 2px 8px #0003;color:var(--text-primary);font-size:13px;font-family:var(--font-sans);line-height:1.4;pointer-events:auto;animation:ctx-menu-pop .15s cubic-bezier(.34,1.56,.64,1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.chip-context-menu-title{padding:8px 14px 6px;font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-context-menu-divider{height:1px;background:var(--border-subtle);margin:4px 0}.chip-context-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 14px;border:none;background:none;color:var(--text-primary);font-size:13px;font-family:var(--font-sans);cursor:pointer;text-align:left;transition:background 80ms ease}.chip-context-menu-item:hover,.chip-context-menu-item:active{background:rgb(var(--c-accent) / .12)}.chip-context-menu-item-icon{font-size:15px;line-height:1;width:20px;text-align:center;flex-shrink:0}.chip-context-menu-item.destructive{color:rgb(var(--c-error))}.chip-context-menu-item-success{color:rgb(var(--c-success, 76 175 80))}.chip-context-menu-item-cancel{color:var(--text-tertiary)}.chip-context-menu-reason{padding:4px 14px;font-size:10px;font-family:var(--font-sans);color:var(--text-tertiary);font-weight:500}.chip-context-backdrop{position:fixed;inset:0;z-index:9998;background:#00000026;animation:ctx-backdrop-fade .12s ease}@keyframes ctx-menu-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes ctx-backdrop-fade{0%{opacity:0}to{opacity:1}}.loop-icon-btn{position:relative;transition:color .2s ease,filter .2s ease}.loop-icon-btn.loop-idle{color:#a78bfa;opacity:.7}.loop-icon-btn.loop-active{color:#60a5fa;opacity:1;filter:drop-shadow(0 0 4px rgba(96,165,250,.6));animation:loop-icon-glow 2s ease-in-out infinite}.loop-icon-btn.loop-completed{color:#4ade80;opacity:1}.loop-icon-btn.loop-error{color:#f87171;opacity:1}.loop-icon-btn.loop-paused{color:#fbbf24;opacity:.85}.loop-popover{position:fixed;z-index:9999;width:280px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:12px;display:flex;flex-direction:column;gap:10px;animation:loop-popover-in .15s ease}.loop-popup-backdrop{position:fixed;inset:0;z-index:9998;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:loop-backdrop-in .15s ease}.loop-popup{position:fixed;z-index:9999;top:50%;left:50%;transform:translate(-50%,-50%);width:min(320px,calc(100vw - 32px));max-height:calc(100vh - 64px);overflow-y:auto;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:0 24px 80px #0000004d,0 0 0 1px var(--border-subtle);padding:16px;display:flex;flex-direction:column;gap:10px;animation:loop-popup-in .2s cubic-bezier(.32,.72,0,1)}.loop-popup-close{border:none;background:none;color:var(--text-tertiary);font-size:14px;cursor:pointer;padding:4px;border-radius:var(--radius-sm);line-height:1;transition:color var(--transition-fast),background var(--transition-fast)}.loop-popup-close:hover{color:var(--text-primary);background:var(--bg-hover)}@keyframes loop-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes loop-popup-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.loop-popover-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.loop-popover-title{font-size:12px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary)}.loop-popover-meta{font-size:11px;font-family:var(--font-sans);color:var(--text-secondary)}.loop-popover-meta.done{color:rgb(var(--c-success))}.loop-popover-meta.error{color:rgb(var(--c-error))}.loop-popover-config{display:flex;flex-direction:column;gap:8px;padding-top:4px;border-top:1px solid var(--border-subtle)}.loop-config-row{display:flex;align-items:center;gap:8px}.loop-config-label{font-size:11px;font-family:var(--font-sans);color:var(--text-secondary);min-width:90px;flex-shrink:0}.loop-config-input{flex:1;min-width:0;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:11px;font-family:var(--font-sans);padding:4px 8px}.loop-config-input:focus{outline:none;border-color:var(--border-focus)}.loop-config-btn{border:none;background:none;color:var(--text-tertiary);cursor:pointer;font-size:14px;padding:2px 6px;border-radius:var(--radius-sm);transition:background .12s ease}.loop-config-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.loop-config-textarea{width:100%;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:11px;font-family:var(--font-mono);padding:6px 8px;resize:vertical;margin-top:4px}.loop-config-textarea:focus{outline:none;border-color:var(--border-focus)}.loop-messages-preview{display:flex;flex-direction:column;gap:3px;margin-top:4px}.loop-message-chip{font-size:10px;color:var(--text-tertiary);padding:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.loop-popover-actions{display:flex;justify-content:flex-end;gap:6px;padding-top:4px;border-top:1px solid var(--border-subtle)}.loop-start-btn,.loop-stop-btn{border:none;border-radius:var(--radius-sm);font-size:12px;font-family:var(--font-sans);font-weight:500;padding:6px 14px;cursor:pointer;transition:background .12s ease,color .12s ease}.loop-start-btn{background:rgb(var(--c-accent) / .15);color:var(--accent)}.loop-start-btn:hover:not(:disabled){background:rgb(var(--c-accent) / .25)}.loop-stop-btn{background:rgb(var(--c-error) / .12);color:rgb(var(--c-error))}.loop-stop-btn:hover:not(:disabled){background:rgb(var(--c-error) / .22)}.loop-start-btn:disabled,.loop-stop-btn:disabled,.loop-delete-btn:disabled{opacity:.4;cursor:default}.loop-delete-btn{border:none;border-radius:var(--radius-sm);font-size:11px;font-family:var(--font-sans);font-weight:500;padding:6px 10px;cursor:pointer;background:transparent;color:var(--text-tertiary);transition:background .12s ease,color .12s ease}.loop-delete-btn:hover:not(:disabled){background:rgb(var(--c-error) / .12);color:rgb(var(--c-error))}.loop-toggle{position:relative;width:34px;height:18px;border-radius:9px;border:1px solid var(--border-default);background:var(--bg-primary);cursor:pointer;padding:0;transition:background .2s ease,border-color .2s ease;flex:none}.loop-toggle.on{background:rgb(var(--c-accent) / .3);border-color:rgb(var(--c-accent) / .5)}.loop-toggle-thumb{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:var(--text-tertiary);transition:transform .2s ease,background .2s ease}.loop-toggle.on .loop-toggle-thumb{transform:translate(16px);background:var(--accent)}.loop-unit-tab{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-hover);color:var(--text-primary);font-size:11px;font-family:var(--font-sans);font-weight:600;padding:4px 10px;cursor:pointer;min-width:38px;text-align:center;-webkit-user-select:none;user-select:none;transition:background .12s ease,border-color .12s ease;flex:none}.loop-unit-tab:hover{background:rgb(var(--c-accent) / .12);border-color:var(--border-focus)}.loop-unit-tab:active{background:rgb(var(--c-accent) / .2)}@keyframes loop-icon-glow{0%,to{filter:drop-shadow(0 0 4px rgba(96,165,250,.6))}50%{filter:drop-shadow(0 0 10px rgba(96,165,250,.9))}}@keyframes loop-popover-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tasks-page{max-width:560px;margin:0 auto;padding:16px 12px 88px;display:flex;flex-direction:column;gap:12px;height:100dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box;padding-bottom:calc(32px + var(--tab-bar-offset))}.tasks-header{margin-bottom:2px}.tasks-title{font-size:20px;font-weight:700;font-family:var(--font-sans);color:var(--text-primary);margin:0}.tasks-subtitle{font-size:12px;font-family:var(--font-sans);color:var(--text-tertiary);margin:4px 0 0}.tasks-toolbar{display:flex;justify-content:space-between;align-items:center;gap:6px}.tasks-filter-tabs{display:flex;gap:3px}.tasks-filter-tab{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-secondary);font-size:12px;font-family:var(--font-sans);padding:5px 9px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease;display:flex;align-items:center;gap:4px}.tasks-filter-tab.active{background:rgb(var(--c-accent) / .12);color:var(--accent);border-color:rgb(var(--c-accent) / .3)}.tasks-filter-tab:hover:not(.active){background:var(--bg-hover)}.tasks-filter-count{font-size:10px;background:var(--bg-hover);border-radius:8px;padding:1px 5px;min-width:16px;text-align:center}.tasks-create-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:rgb(var(--c-accent) / .1);color:var(--accent);font-size:12px;font-family:var(--font-sans);font-weight:500;padding:5px 10px;cursor:pointer;transition:background .15s ease}.tasks-create-btn:hover{background:rgb(var(--c-accent) / .2)}.tasks-icon-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);font-size:16px;width:30px;height:30px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease,border-color .15s ease;padding:0;line-height:1}.tasks-icon-btn:hover{background:rgb(var(--c-accent) / .1);color:var(--accent);border-color:rgb(var(--c-accent) / .3)}.tasks-gear-popup{position:absolute;top:100%;right:0;margin-top:4px;min-width:180px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:0 8px 24px #00000026;z-index:100;overflow:hidden;animation:tasks-gear-in .15s ease}@keyframes tasks-gear-in{0%{opacity:0;transform:translateY(-4px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.tasks-gear-item{display:flex;align-items:center;gap:8px;width:100%;border:none;background:transparent;color:var(--text-primary);font-size:13px;font-family:var(--font-sans);padding:10px 14px;cursor:pointer;text-align:left;transition:background .12s ease}.tasks-gear-item:hover{background:var(--bg-hover)}.tasks-gear-item:disabled{opacity:.5;cursor:default}.tasks-gear-item+.tasks-gear-item{border-top:1px solid var(--border-subtle)}.tasks-sync-banner{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:9px 11px;font-size:12px;font-family:var(--font-sans);animation:tasks-form-in .2s ease}.tasks-create-form{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:12px;display:flex;flex-direction:column;gap:12px;animation:tasks-form-in .2s ease}@keyframes tasks-form-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.tasks-form-row{display:flex;align-items:center;gap:8px}.tasks-form-label{font-size:12px;font-family:var(--font-sans);color:var(--text-secondary);min-width:92px;flex-shrink:0}.tasks-form-input{flex:1;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:12px;font-family:var(--font-sans);padding:6px 9px}.tasks-form-input:focus{outline:none;border-color:var(--border-focus)}.tasks-form-select{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-secondary);font-size:11px;font-family:var(--font-sans);padding:3px 5px;cursor:pointer}.tasks-form-textarea{width:100%;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:12px;font-family:var(--font-mono);padding:7px 9px;resize:vertical;margin-top:6px;box-sizing:border-box}.tasks-form-textarea:focus{outline:none;border-color:var(--border-focus)}.tasks-type-toggle{display:flex;gap:3px}.tasks-type-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-secondary);font-size:12px;font-family:var(--font-sans);padding:5px 10px;cursor:pointer;transition:all .15s ease}.tasks-type-btn.active{background:rgb(var(--c-accent) / .12);color:var(--accent);border-color:rgb(var(--c-accent) / .3)}.tasks-submit-btn{align-self:flex-end;border:none;border-radius:var(--radius-sm);background:var(--accent);color:#fff;font-size:13px;font-family:var(--font-sans);font-weight:600;padding:8px 16px;cursor:pointer;transition:opacity .15s ease}.tasks-submit-btn:hover:not(:disabled){opacity:.85}.tasks-submit-btn:disabled{opacity:.4;cursor:default}.tasks-list{display:flex;flex-direction:column;gap:8px}.tasks-empty{text-align:center;color:var(--text-tertiary);font-size:13px;font-family:var(--font-sans);padding:32px 16px}.tasks-empty-icon{font-size:32px;margin-bottom:6px}.tasks-empty-hint{font-size:11px;margin-top:6px;max-width:300px;margin-inline:auto;line-height:1.5}.tasks-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:12px;display:flex;flex-direction:column;gap:6px;transition:border-color .2s ease,opacity .2s ease}.tasks-card:hover{border-color:var(--border-focus)}.tasks-card.disabled{opacity:.5}.tasks-card-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.tasks-card-info{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.tasks-card-type-badge{font-size:14px;flex-shrink:0}.tasks-card-name{font-size:13px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tasks-card-schedule,.tasks-card-event{font-size:10px;font-family:var(--font-mono);color:var(--text-tertiary);background:var(--bg-hover);border-radius:4px;padding:1px 6px;white-space:nowrap;flex-shrink:0}.tasks-card-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.tasks-card-action-btn{border:none;background:var(--bg-hover);color:var(--text-secondary);font-size:12px;width:26px;height:26px;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.tasks-card-action-btn:hover{background:rgb(var(--c-accent) / .15);color:var(--accent)}.tasks-card-action-btn.danger:hover{background:rgb(var(--c-error) / .15);color:rgb(var(--c-error))}.tasks-card-target{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:11px;font-family:var(--font-sans);padding:2px 0}.tasks-card-project{color:var(--text-tertiary)}.tasks-card-conv-title{color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.tasks-card-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:10px;font-family:var(--font-sans);color:var(--text-tertiary)}.tasks-card-conv{font-family:var(--font-mono)}.tasks-card-error{color:rgb(var(--c-error))}.tasks-detail-backdrop{position:fixed;inset:0;background:#00000073;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:tasks-overlay-in .2s ease}.tasks-detail-popup{position:fixed;bottom:0;left:0;right:0;max-height:80vh;background:var(--bg-surface);border-radius:16px 16px 0 0;z-index:10001;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 16px 24px;animation:tasks-modal-slide-up .3s cubic-bezier(.32,.72,0,1)}@media(min-width:600px){.tasks-detail-popup{inset:50% auto auto 50%;transform:translate(-50%,-50%);max-width:440px;max-height:70vh;border-radius:16px;animation:tasks-detail-pop-in .25s cubic-bezier(.32,.72,0,1)}}@keyframes tasks-detail-pop-in{0%{opacity:0;transform:translate(-50%,-48%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.tasks-detail-header{display:flex;align-items:center;gap:8px;padding:16px 0 12px;border-bottom:1px solid var(--border-subtle);position:sticky;top:0;background:var(--bg-surface);z-index:1}.tasks-detail-type{font-size:18px}.tasks-detail-name{font-size:16px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks-detail-close{width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:var(--bg-hover);color:var(--text-tertiary);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease}.tasks-detail-close:hover{background:var(--bg-primary);color:var(--text-primary)}.tasks-detail-section{padding:10px 0;border-bottom:1px solid var(--border-subtle)}.tasks-detail-section:last-of-type{border-bottom:none}.tasks-detail-label{font-size:10px;font-weight:600;font-family:var(--font-sans);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.tasks-detail-value{font-size:13px;font-family:var(--font-sans);color:var(--text-primary);line-height:1.4}.tasks-detail-prompt{font-size:12px;font-family:var(--font-mono);color:var(--text-secondary);line-height:1.5;white-space:pre-wrap;max-height:200px;overflow-y:auto;background:var(--bg-primary);border-radius:var(--radius-sm);padding:8px 10px}.tasks-detail-error{font-size:12px;font-family:var(--font-mono);color:rgb(var(--c-error));line-height:1.4}.tasks-detail-actions{display:flex;gap:8px;padding-top:14px;flex-wrap:wrap}.tasks-detail-action-btn{flex:1;min-width:80px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);font-weight:500;padding:8px 12px;cursor:pointer;text-align:center;transition:all .15s ease}.tasks-detail-action-btn:hover{background:var(--bg-hover);border-color:var(--border-focus)}.tasks-detail-action-btn.primary{background:rgb(var(--c-accent) / .1);color:var(--accent);border-color:rgb(var(--c-accent) / .3)}.tasks-detail-action-btn.danger{color:rgb(var(--c-error))}.tasks-detail-action-btn.danger:hover{background:rgb(var(--c-error) / .1);border-color:rgb(var(--c-error) / .3)}.tasks-form-hint{font-size:11px;font-family:var(--font-sans);color:var(--text-tertiary);padding:0 0 0 110px;line-height:1.4}.tasks-picker-btn{width:100%;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);padding:7px 10px;cursor:pointer;text-align:left;transition:border-color .15s ease}.tasks-picker-btn:hover{border-color:var(--border-focus)}.tasks-picker-arrow{color:var(--text-tertiary);font-size:10px;margin-left:8px}.tasks-picker-overlay{position:fixed;inset:0;z-index:10000;background:#0006;display:flex;align-items:flex-end;justify-content:center;animation:tasks-overlay-in .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes tasks-overlay-in{0%{opacity:0}to{opacity:1}}.tasks-picker-modal{width:100%;max-width:480px;max-height:70vh;background:var(--bg-surface);border-radius:16px 16px 0 0;display:flex;flex-direction:column;overflow:hidden;animation:tasks-modal-slide-up .3s cubic-bezier(.32,.72,0,1)}@media(min-width:600px){.tasks-picker-modal{border-radius:16px;margin-bottom:10vh;max-height:60vh}}@keyframes tasks-modal-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.tasks-picker-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.tasks-picker-modal-title{font-size:15px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary)}.tasks-picker-cancel{border:none;background:none;color:var(--accent);font-size:15px;font-family:var(--font-sans);font-weight:500;cursor:pointer;padding:0;min-width:60px;text-align:left}.tasks-picker-search{border:none;border-bottom:1px solid var(--border-subtle);background:transparent;color:var(--text-primary);font-size:15px;font-family:var(--font-sans);padding:12px 16px;outline:none;flex-shrink:0}.tasks-picker-search::placeholder{color:var(--text-tertiary)}.tasks-picker-list{overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}.tasks-picker-item{display:flex;align-items:center;gap:10px;width:100%;border:none;border-bottom:1px solid var(--border-subtle);border-radius:0;background:transparent;color:var(--text-primary);font-size:15px;font-family:var(--font-sans);padding:12px 16px;cursor:pointer;text-align:left;transition:background .12s ease;min-height:44px}.tasks-picker-item:last-child{border-bottom:none}.tasks-picker-item:active{background:var(--bg-hover)}.tasks-picker-item.selected{background:rgb(var(--c-accent) / .06)}.tasks-picker-item-icon{flex-shrink:0;font-size:18px}.tasks-picker-item-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks-picker-check{color:var(--accent);font-weight:600;font-size:16px;flex-shrink:0}.tasks-picker-section-header{position:sticky;top:0;z-index:1;background:var(--bg-primary);font-size:12px;font-weight:600;font-family:var(--font-sans);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;padding:10px 16px 6px;border-bottom:1px solid var(--border-subtle)}.tasks-picker-conv-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.tasks-picker-conv-title{font-size:15px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tasks-picker-conv-id{font-size:11px;font-family:var(--font-mono);color:var(--text-tertiary)}.tasks-picker-empty{padding:32px 16px;text-align:center;color:var(--text-tertiary);font-size:14px;font-family:var(--font-sans)}.loops-section{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden}.loops-section-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border-subtle)}.loops-section-title{font-size:13px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary)}.loops-section-count{font-size:11px;font-family:var(--font-sans);color:var(--text-tertiary)}.loops-section-list{display:flex;flex-direction:column}.loops-card{padding:10px 14px;display:flex;flex-direction:column;gap:4px;border-bottom:1px solid var(--border-subtle);transition:background .15s ease}.loops-card:last-child{border-bottom:none}.loops-card:hover{background:var(--bg-hover)}.loops-card.active{border-left:2px solid #60a5fa}.loops-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.loops-card-info{display:flex;align-items:center;gap:6px;min-width:0}.loops-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--text-tertiary)}.loops-status-dot.active{background:#60a5fa;box-shadow:0 0 6px #60a5fa80;animation:loops-dot-pulse 2s ease-in-out infinite}.loops-status-dot.completed{background:#4ade80}.loops-status-dot.error{background:#f87171}.loops-status-dot.stopped,.loops-status-dot.paused{background:#fbbf24}@keyframes loops-dot-pulse{0%,to{opacity:1}50%{opacity:.5}}.loops-card-id{font-size:12px;font-family:var(--font-mono);color:var(--text-primary);font-weight:500}.loops-card-badge{font-size:10px;font-family:var(--font-mono);color:var(--text-tertiary);background:var(--bg-hover);border-radius:4px;padding:1px 5px}.loops-card-mode{font-size:9px;font-family:var(--font-sans);color:var(--accent);background:rgb(var(--c-accent) / .1);border-radius:3px;padding:1px 5px;text-transform:uppercase;letter-spacing:.03em}.loops-card-actions{display:flex;gap:4px;flex-shrink:0}.loops-card-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:10px;font-family:var(--font-sans);color:var(--text-tertiary)}.tasks-card.expanded{border-color:rgb(var(--c-accent) / .3)}.tasks-card-detail{border-top:1px solid var(--border-subtle);margin-top:4px;padding-top:8px;display:flex;flex-direction:column;gap:10px;animation:tasks-detail-expand .2s ease}@keyframes tasks-detail-expand{0%{opacity:0;max-height:0}to{opacity:1;max-height:2000px}}.tasks-card-detail-section{display:flex;flex-direction:column;gap:4px}.tasks-card-detail-label{font-size:10px;font-weight:600;font-family:var(--font-sans);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.tasks-card-detail-prompt{font-size:12px;font-family:var(--font-mono);color:var(--text-secondary);line-height:1.5;white-space:pre-wrap;max-height:200px;overflow-y:auto;background:var(--bg-primary);border-radius:var(--radius-sm);padding:8px 10px}.tasks-card-detail-grid{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;font-size:11px;font-family:var(--font-sans)}.tasks-card-detail-key{color:var(--text-tertiary);font-weight:500}.tasks-card-detail-val{color:var(--text-secondary);font-family:var(--font-mono);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks-card-history-list{display:flex;flex-direction:column;gap:4px;max-height:300px;overflow-y:auto}.task-history-entry{background:var(--bg-primary);border-radius:var(--radius-sm);padding:6px 8px;display:flex;flex-direction:column;gap:2px;border-left:2px solid #4ade80}.task-history-entry.error{border-left-color:#f87171}.task-history-entry-header{display:flex;justify-content:space-between;align-items:center}.task-history-time{font-size:10px;font-family:var(--font-mono);color:var(--text-tertiary)}.task-history-status{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.task-history-status.success{color:#4ade80}.task-history-status.error{color:#f87171}.task-history-entry-body{display:flex;align-items:center;gap:6px;font-size:11px}.task-history-conv-link{border:none;background:rgb(var(--c-accent) / .1);color:var(--accent);font-size:10px;font-family:var(--font-mono);padding:1px 6px;border-radius:4px;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:background .15s ease}.task-history-conv-link:hover{background:rgb(var(--c-accent) / .2)}.task-history-msg{color:var(--text-tertiary);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-history-error{font-size:10px;color:#f87171;padding-top:2px}.workspaces-page{display:flex;flex-direction:column;height:100%;overflow:hidden;background:var(--bg-primary)}.ws-topbar{display:flex;align-items:center;gap:8px;padding:calc(10px + env(safe-area-inset-top,0px)) 16px 10px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.ws-selector{flex:1;min-width:0;display:flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-family:var(--font-sans);font-size:14px;font-weight:600;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast);-webkit-user-select:none;user-select:none}.ws-selector:hover{border-color:var(--border-focus);background:var(--bg-hover)}.ws-selector-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-selector-caret{font-size:10px;color:var(--text-tertiary);flex-shrink:0}.ws-selector-count{font-size:10px;color:var(--text-tertiary);font-weight:400}.ws-view-toggle{display:flex;border:1px solid var(--border-default);border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0}.ws-view-tab{padding:6px 14px;border:none;background:transparent;color:var(--text-tertiary);font-family:var(--font-sans);font-size:11px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);letter-spacing:.02em}.ws-view-tab.active{background:rgb(var(--c-accent) / .15);color:var(--text-accent)}.ws-view-tab:not(.active):hover{background:var(--bg-hover);color:var(--text-secondary)}.ws-add-btn{width:36px;height:36px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-secondary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.ws-add-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-focus)}.ws-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:50;max-height:280px;overflow-y:auto;animation:ws-dropdown-in .12s ease-out}@keyframes ws-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ws-dropdown-item{width:100%;display:flex;align-items:center;gap:8px;padding:10px 14px;border:none;background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-size:13px;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.ws-dropdown-item:hover{background:var(--bg-hover)}.ws-dropdown-item.active{color:var(--text-accent);font-weight:600}.ws-item-count{margin-left:auto;font-size:10px;color:var(--text-tertiary)}.ws-item-delete{opacity:0;color:var(--text-tertiary);font-size:14px;padding:2px 4px;border:none;background:none;cursor:pointer;transition:opacity var(--transition-fast),color var(--transition-fast)}.ws-dropdown-item:hover .ws-item-delete{opacity:1}.ws-item-delete:hover{color:rgb(var(--c-error))}.ws-content-area{flex:1;overflow-y:auto;min-height:0;display:flex;flex-direction:column}.ws-content-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:13px;gap:4px;padding:24px;text-align:center}.ws-metadata-view{padding:16px;display:flex;flex-direction:column;gap:16px}.ws-meta-title{font-size:calc(var(--app-font-size) + 2px);font-weight:700;color:var(--text-primary);line-height:1.4}.ws-meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px 16px;padding-top:8px}.ws-meta-card{display:flex;flex-direction:column;gap:6px}.ws-meta-label{font-size:calc(var(--app-font-size) - 4px);font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.ws-meta-value{font-size:calc(var(--app-font-size) - 1px);color:var(--text-primary);font-weight:500;display:flex;align-items:center;gap:6px}.ws-meta-mono{font-family:var(--font-mono);font-size:12px}.ws-meta-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ws-meta-dot.running{background:rgb(var(--c-success))}.ws-meta-dot.error{background:rgb(var(--c-error))}.ws-meta-dot.idle{background:var(--text-tertiary)}.ws-status-running{color:rgb(var(--c-success))}.ws-status-error{color:rgb(var(--c-error))}.ws-chat-view{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:8px}.ws-chat-msg{max-width:88%;padding:8px 12px;border-radius:12px;font-size:12px;line-height:1.5;word-break:break-word;animation:ws-msg-in .15s ease-out}@keyframes ws-msg-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ws-chat-msg.user{align-self:flex-end;background:rgb(var(--c-accent) / .22);color:var(--text-primary);border-bottom-right-radius:4px}.ws-chat-msg.assistant{align-self:flex-start;background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-primary);border-bottom-left-radius:4px}.ws-chat-msg.system{align-self:center;font-size:10px;color:var(--text-tertiary);font-style:italic;background:transparent}.ws-circle-section{flex-shrink:0;border-top:1px solid var(--border-subtle);background:var(--bg-secondary);padding:8px 0 calc(4px + env(safe-area-inset-bottom,0px))}.ws-view-toggle-row{display:flex;justify-content:flex-end;padding:0 16px 8px}.ws-circle-grid-swipe{touch-action:pan-y;overflow:hidden;padding:0 16px}.ws-circle-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,auto);gap:10px 8px;justify-items:center;max-width:360px;margin:0 auto;min-height:140px}.ws-circle-slot{display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}.ws-circle{position:relative;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;letter-spacing:.02em;color:#fff;transition:transform .15s ease,box-shadow .2s ease;text-shadow:0 1px 3px rgba(0,0,0,.3)}.ws-circle:active{transform:scale(.9)}@media(hover:hover){.ws-circle-slot:hover .ws-circle{transform:scale(1.08)}}.ws-circle-slot.selected .ws-circle{box-shadow:0 0 0 2px var(--bg-secondary),0 0 0 4px var(--accent),0 0 12px rgba(var(--c-accent),.3)}.ws-circle-status{position:absolute;top:1px;right:1px;width:9px;height:9px;border-radius:50%;border:2px solid var(--bg-secondary)}.ws-circle-status.running{background:rgb(var(--c-success));animation:ws-pulse 2s ease-in-out infinite}.ws-circle-status.error{background:rgb(var(--c-error))}@keyframes ws-pulse{0%,to{box-shadow:0 0 rgba(var(--c-success),.4)}50%{box-shadow:0 0 0 4px rgba(var(--c-success),0)}}.ws-circle-label{font-size:9px;color:var(--text-tertiary);text-align:center;max-width:64px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}.ws-circle-slot.selected .ws-circle-label{color:var(--text-accent);font-weight:600}.ws-circle.add-circle{border:2px dashed var(--border-default);background:transparent;color:var(--text-tertiary);font-size:20px;font-weight:400;text-shadow:none}@media(hover:hover){.ws-circle-slot:hover .ws-circle.add-circle{border-color:var(--border-focus);color:var(--text-accent)}}.ws-page-dots{display:flex;justify-content:center;gap:6px;padding:8px 0 4px}.ws-page-dot{width:6px;height:6px;border-radius:50%;border:none;background:var(--border-default);cursor:pointer;padding:0;transition:all var(--transition-fast)}.ws-page-dot.active{background:var(--accent);width:14px;border-radius:3px}.ws-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-tertiary);padding:40px;text-align:center}.ws-empty-icon{font-size:40px;opacity:.4;line-height:1}.ws-empty-title{font-size:15px;font-weight:600;color:var(--text-secondary)}.ws-empty-text{font-size:12px;max-width:260px;line-height:1.5}.ws-empty-btn{padding:8px 20px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-family:var(--font-sans);font-size:12px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.ws-empty-btn:hover{background:var(--bg-hover);border-color:var(--border-focus)}.ws-input-bar{display:flex;align-items:center;gap:8px;padding:8px 16px calc(8px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-subtle);background:var(--bg-secondary);flex-shrink:0}.ws-input-label{font-size:10px;font-weight:600;color:var(--text-accent);flex-shrink:0;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-input-field{flex:1;min-width:0;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);font-size:13px;padding:7px 12px;outline:none;resize:none;transition:border-color var(--transition-fast)}.ws-input-field:focus{border-color:var(--border-focus)}.ws-input-field::placeholder{color:var(--text-tertiary)}.ws-input-send{width:30px;height:30px;border:none;border-radius:var(--radius-sm);background:rgb(var(--c-accent));color:var(--text-on-solid);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.ws-input-send:hover{filter:brightness(1.15)}.ws-input-send:disabled{opacity:.3;cursor:default}.ws-add-dialog-backdrop{position:fixed;inset:0;z-index:1600;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;animation:ws-fade .12s ease-out}@keyframes ws-fade{0%{opacity:0}to{opacity:1}}.ws-add-dialog{width:min(90vw,380px);max-height:70vh;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;animation:ws-scale .15s ease-out}@keyframes ws-scale{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.ws-add-dialog-header{padding:14px 16px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between}.ws-add-dialog-title{font-size:14px;font-weight:600;color:var(--text-primary)}.ws-peek-close{width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.ws-peek-close:hover{background:var(--bg-hover);color:var(--text-primary)}.ws-add-search{margin:8px 12px 0;padding:8px 12px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:13px;outline:none;transition:border-color var(--transition-fast)}.ws-add-search:focus{border-color:var(--border-focus)}.ws-add-search::placeholder{color:var(--text-tertiary)}.ws-add-list{flex:1;overflow-y:auto;padding:8px 0}.ws-add-item{width:100%;display:flex;align-items:center;gap:10px;padding:10px 16px;border:none;background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-size:13px;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.ws-add-item:hover{background:var(--bg-hover)}.ws-add-item.selected{background:rgb(var(--c-accent) / .08)}.ws-add-item-check{width:18px;height:18px;border:1.5px solid var(--border-default);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;color:transparent;transition:all var(--transition-fast)}.ws-add-item.selected .ws-add-item-check{border-color:var(--accent);background:rgb(var(--c-accent) / .2);color:var(--accent)}.ws-add-item-info{flex:1;min-width:0}.ws-add-item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-add-item-project{font-size:10px;color:var(--text-tertiary);margin-top:1px}.ws-add-footer{padding:12px 16px;border-top:1px solid var(--border-subtle);display:flex;justify-content:flex-end;gap:8px}.ws-peek-btn{padding:8px 16px;border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);text-align:center}.ws-peek-btn.primary{border:none;background:rgb(var(--c-accent));color:var(--text-on-solid)}.ws-peek-btn.primary:hover{filter:brightness(1.15)}.ws-peek-btn.primary:disabled{opacity:.3;cursor:default}.ws-peek-btn.secondary{border:1px solid var(--border-default);background:transparent;color:var(--text-secondary)}.ws-peek-btn.secondary:hover{background:var(--bg-hover)}.ws-create-inline{display:flex;gap:6px;padding:8px 12px;border-top:1px solid var(--border-subtle)}.ws-create-input{flex:1;min-width:0;padding:6px 10px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:12px;outline:none}.ws-create-input:focus{border-color:var(--border-focus)}.ws-create-input::placeholder{color:var(--text-tertiary)}@media(max-width:400px){.ws-circle{width:46px;height:46px;font-size:12px}.ws-circle-grid{gap:8px 6px;min-height:120px}}.ws-context-backdrop{position:fixed;inset:0;z-index:2000}.ws-context-menu{position:fixed;min-width:180px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);overflow:hidden;animation:ws-scale .12s ease-out;transform-origin:top left;z-index:2001}.ws-context-item{width:100%;display:block;padding:10px 16px;border:none;background:transparent;color:var(--text-primary);font-family:var(--font-sans);font-size:13px;text-align:left;cursor:pointer;transition:background var(--transition-fast)}.ws-context-item:hover{background:var(--bg-hover)}.ws-context-item+.ws-context-item{border-top:1px solid var(--border-subtle)}.ws-context-danger{color:rgb(var(--c-error))}.ws-context-danger:hover{background:rgb(var(--c-error) / .08)}.ws-circle.recording{box-shadow:0 0 0 2px var(--bg-secondary),0 0 0 4px rgb(var(--c-accent)),0 0 16px rgba(var(--c-accent),.4);animation:ws-circle-shine 2s ease-in-out infinite}.ws-circle.transcribing{box-shadow:0 0 0 2px var(--bg-secondary),0 0 0 4px var(--text-tertiary);animation:ws-circle-spin-border 1.2s linear infinite}@keyframes ws-circle-shine{0%,to{filter:brightness(1)}50%{filter:brightness(1.35)}}@keyframes ws-circle-spin-border{0%{box-shadow:0 0 0 2px var(--bg-secondary),0 0 0 4px var(--text-tertiary),0 0 8px rgba(var(--c-accent),.15)}50%{box-shadow:0 0 0 2px var(--bg-secondary),0 0 0 4px rgb(var(--c-accent)),0 0 12px rgba(var(--c-accent),.3)}to{box-shadow:0 0 0 2px var(--bg-secondary),0 0 0 4px var(--text-tertiary),0 0 8px rgba(var(--c-accent),.15)}}.ws-circle-ripple{position:absolute;inset:-4px;border-radius:50%;border:2px solid rgb(var(--c-accent) / .5);pointer-events:none;animation:ws-ripple-out 2s ease-out infinite}.ws-circle-ripple.r2{animation-delay:.5s}.ws-circle-ripple.r3{animation-delay:1s}@keyframes ws-ripple-out{0%{transform:scale(1);opacity:.6;border-color:rgb(var(--c-accent) / .5)}to{transform:scale(1.8);opacity:0;border-color:rgb(var(--c-accent) / 0)}}.ws-circle.recording+.ws-circle-label,.ws-circle-slot .ws-circle.recording~.ws-circle-label{color:var(--text-accent);font-weight:600}.ws-voice-inline-status{padding:6px 16px;text-align:center;animation:ws-fade .2s ease-out}.ws-voice-inline-text{font-size:11px;color:var(--text-secondary);font-style:italic;line-height:1.4}.ws-voice-float-card{position:relative;margin:0 12px;padding:12px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:8px;flex-shrink:0;animation:ws-float-in .2s ease-out;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}@keyframes ws-float-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.ws-voice-float-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.ws-voice-float-label{font-size:11px;font-weight:600;color:var(--text-accent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.ws-voice-float-textarea{width:100%;padding:10px 12px;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:13px;line-height:1.5;resize:none;outline:none;transition:border-color var(--transition-fast)}.ws-voice-float-textarea:focus{border-color:var(--border-focus)}.ws-voice-float-textarea::placeholder{color:var(--text-tertiary)}.ws-voice-float-actions{display:flex;justify-content:flex-end;gap:8px}.ws-voice-error-toast{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 12px;padding:8px 12px;background:rgb(var(--c-error) / .08);border:1px solid rgb(var(--c-error) / .2);border-radius:var(--radius-md);color:rgb(var(--c-error));font-size:12px;font-weight:500;flex-shrink:0;animation:ws-fade .2s ease-out}.ls-page{display:flex;flex-direction:column;height:100%;padding:12px 12px 0;overflow:hidden;gap:0;max-width:100vw;box-sizing:border-box}.discover-content{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 12px;padding-bottom:calc(12px + var(--tab-bar-offset))}.ls-page-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;margin-bottom:12px}.ls-page-title{font-size:20px;font-weight:700;color:var(--text-primary);margin:0}.ls-page-count{font-size:12px;font-weight:500;color:var(--text-tertiary);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;padding:3px 10px}.ls-error{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;background:rgb(var(--c-error) / .1);border:1px solid rgb(var(--c-error) / .25);border-radius:var(--radius-sm);color:rgb(var(--c-error));font-size:13px}.ls-error-dismiss{background:none;border:none;color:inherit;cursor:pointer;font-size:14px;padding:2px 6px;border-radius:var(--radius-sm)}.ls-error-dismiss:hover{background:rgb(var(--c-error) / .15)}.ls-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text-tertiary);padding:32px 16px;text-align:center}.ls-empty-icon{font-size:40px;opacity:.5}.ls-empty-title{font-size:16px;font-weight:600;color:var(--text-secondary)}.ls-empty-text{font-size:13px;max-width:300px;line-height:1.5}.ls-list{display:flex;flex-direction:column;gap:10px}.ls-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md, 8px);padding:14px;display:flex;flex-direction:column;gap:10px;transition:border-color var(--transition-fast)}.ls-card:hover{border-color:var(--border-default)}.ls-card-header{display:flex;align-items:center;justify-content:space-between}.ls-card-pid{font-size:14px;font-weight:600;color:var(--text-primary);font-family:var(--font-mono)}.ls-card-source{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;padding:2px 8px;border-radius:10px;background:rgb(var(--c-accent) / .12);color:var(--text-accent)}.ls-card-source.process{background:rgb(var(--c-success) / .12);color:rgb(var(--c-success))}.ls-card-details{display:flex;flex-direction:column;gap:4px}.ls-card-row{display:flex;align-items:center;justify-content:space-between;font-size:12px}.ls-card-label{color:var(--text-tertiary)}.ls-card-value{color:var(--text-secondary)}.ls-card-mono{font-family:var(--font-mono);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px;text-align:right}.ls-card-mono-wrap{max-width:none;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.ls-card-actions{display:flex;justify-content:flex-end;padding-top:4px;border-top:1px solid var(--border-subtle)}.ls-kill-btn{padding:5px 14px;border:1px solid rgb(var(--c-error) / .3);border-radius:var(--radius-sm);background:transparent;color:rgb(var(--c-error));font-size:12px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast)}.ls-kill-btn:hover:not(:disabled){background:rgb(var(--c-error) / .1);border-color:rgb(var(--c-error) / .5)}.ls-kill-btn:disabled{opacity:.5;cursor:not-allowed}.ls-footer{flex-shrink:0;padding-top:8px;border-top:1px solid var(--border-subtle)}.ls-footer-info{font-size:11px;color:var(--text-tertiary);text-align:center}.sidebar-meta-ls{font-family:var(--font-mono);font-size:10px;color:var(--text-tertiary);opacity:.8}.sidebar-meta-ls-warn{font-size:10px;color:rgb(var(--c-warning, 245 158 11))}.discover-detail-view{display:flex;flex-direction:column;gap:12px;padding:8px 0;height:100%;touch-action:pan-y;overscroll-behavior-x:contain}.discover-tasks-panel,.discover-notebook-panel,.discover-cloud-panel{flex:1;min-height:0;overflow-y:auto}.agent-console{display:flex;flex-direction:column;gap:10px;min-height:0}.agent-console-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.agent-console-heading{display:flex;flex-direction:column;gap:4px}.agent-console-title{font-size:17px;font-weight:700;color:var(--text-primary)}.agent-console-subtitle{font-size:12px;line-height:1.45;color:var(--text-tertiary);max-width:42rem}.agent-console-refresh{border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-secondary);border-radius:10px;padding:7px 10px;font-size:12px;font-weight:600;cursor:pointer}.agent-console-refresh:disabled{opacity:.6;cursor:not-allowed}.agent-runtime-list{display:flex;flex-direction:column;gap:10px}.agent-runtime-card{background:color-mix(in srgb,var(--bg-surface) 88%,transparent);border:1px solid var(--border-subtle);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:10px}.agent-runtime-card.subtle{background:color-mix(in srgb,var(--bg-surface) 70%,transparent)}.agent-runtime-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.agent-runtime-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.agent-runtime-title{margin:0;font-size:16px;font-weight:700;color:var(--text-primary)}.agent-runtime-chip{font-size:11px;font-weight:600;letter-spacing:.02em;border-radius:999px;padding:4px 9px;background:rgb(var(--c-accent) / .12);color:var(--text-accent)}.agent-runtime-chip.cli{background:rgb(var(--c-success) / .12);color:rgb(var(--c-success))}.agent-runtime-summary{margin-top:3px;font-size:12px;line-height:1.45;color:var(--text-secondary)}.agent-runtime-statuses{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.agent-runtime-badge{padding:4px 9px;border-radius:999px;font-size:11px;font-weight:700;text-transform:capitalize;background:rgb(var(--c-warning, 245 158 11) / .12);color:rgb(var(--c-warning, 245 158 11))}.agent-runtime-badge.ready,.agent-runtime-badge.auth-configured,.agent-runtime-badge.auth-not-required{background:rgb(var(--c-success) / .12);color:rgb(var(--c-success))}.agent-runtime-badge.missing,.agent-runtime-badge.auth-missing{background:rgb(var(--c-error) / .12);color:rgb(var(--c-error))}.agent-runtime-badge.auth-unknown{background:rgb(var(--c-warning, 245 158 11) / .12);color:rgb(var(--c-warning, 245 158 11))}.agent-runtime-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.agent-runtime-meta-row{display:flex;flex-direction:column;gap:4px;padding:8px 10px;border-radius:10px;background:#ffffff08;border:1px solid var(--border-subtle)}.agent-runtime-meta-label{font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em}.agent-runtime-meta-value{font-size:13px;color:var(--text-primary)}.agent-runtime-mono{font-family:var(--font-mono);font-size:11px;word-break:break-all}.agent-runtime-hint{font-size:12px;line-height:1.5;color:var(--text-tertiary)}.agent-runtime-actions{display:flex;flex-wrap:wrap;gap:8px}.agent-runtime-actions>.agent-runtime-action{flex:1;text-align:center}.agent-runtime-action{padding:7px 12px;border-radius:10px;border:1px solid var(--border-default);background:rgb(var(--c-accent) / .16);color:var(--text-primary);font-size:12px;font-weight:700;cursor:pointer}.agent-runtime-action.secondary{background:transparent}.agent-runtime-action.launch{background:rgb(var(--c-success) / .16);width:100%;text-align:center}.agent-runtime-action:disabled{opacity:.5;cursor:not-allowed}.agent-runtime-action-panel{display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:12px;border:1px solid var(--border-subtle);background:#ffffff08}.agent-runtime-action-title{font-size:13px;font-weight:700;color:var(--text-primary)}.agent-runtime-action-description{font-size:12px;line-height:1.5;color:var(--text-secondary)}.agent-runtime-command-list{display:flex;flex-direction:column;gap:8px}.agent-runtime-command{display:flex;flex-direction:column;gap:4px}.agent-runtime-command-label-row,.agent-runtime-command-results-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.agent-runtime-command-label{font-size:11px;font-weight:600;color:var(--text-tertiary)}.agent-runtime-command code{display:block;padding:8px 10px;border-radius:10px;background:#00000040;color:var(--text-primary);font-family:var(--font-mono);font-size:12px;overflow-x:auto}.agent-runtime-command-results,.agent-runtime-launch-panel,.agent-runtime-task-panel{display:flex;flex-direction:column;gap:10px;padding:12px;border-radius:12px;border:1px solid var(--border-subtle);background:#ffffff06}.agent-runtime-command-result{display:flex;flex-direction:column;gap:8px}.agent-runtime-run-badge{padding:3px 8px;border-radius:999px;font-size:11px;font-weight:700;text-transform:capitalize;background:rgb(var(--c-warning, 245 158 11) / .12);color:rgb(var(--c-warning, 245 158 11))}.agent-runtime-run-badge.running,.agent-runtime-run-badge.pending{background:rgb(var(--c-warning, 245 158 11) / .12);color:rgb(var(--c-warning, 245 158 11))}.agent-runtime-run-badge.completed{background:rgb(var(--c-success) / .12);color:rgb(var(--c-success))}.agent-runtime-run-badge.failed,.agent-runtime-run-badge.canceled{background:rgb(var(--c-error) / .12);color:rgb(var(--c-error))}.agent-runtime-field{display:flex;flex-direction:column;gap:6px}.agent-runtime-field-label{font-size:11px;font-weight:600;color:var(--text-tertiary)}.agent-runtime-launch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.agent-runtime-launch-grid.single{grid-template-columns:1fr}.agent-runtime-field-full{grid-column:1 / -1}.agent-runtime-cwd-custom{display:flex;gap:6px;align-items:stretch}.agent-runtime-cwd-custom>.agent-runtime-input{flex:1;min-width:0}.agent-runtime-cwd-back{flex-shrink:0;width:34px;border-radius:10px;border:1px solid var(--border-default);background:transparent;color:var(--text-tertiary);font-size:14px;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.agent-runtime-cwd-back:hover{color:var(--text-secondary);border-color:var(--border-default);background:#ffffff0a}.agent-runtime-input,.agent-runtime-textarea{width:100%;border-radius:10px;border:1px solid var(--border-default);background:#0003;color:var(--text-primary);padding:10px 12px;font-size:12px}.agent-runtime-textarea{min-height:88px;resize:vertical}.agent-runtime-command-inline{display:block;padding:10px 12px;border-radius:10px;background:#00000040;color:var(--text-primary);font-family:var(--font-mono);font-size:12px;overflow-x:auto}.agent-runtime-output{margin:0;padding:10px 12px;border-radius:10px;background:#00000040;color:var(--text-primary);font-family:var(--font-mono);font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word;max-height:220px;overflow:auto}.agent-runtime-output.error{border:1px solid rgb(var(--c-error) / .24)}.agent-runtime-warnings{display:flex;flex-direction:column;gap:6px;font-size:12px;line-height:1.5;color:rgb(var(--c-warning, 245 158 11))}.agent-runtime-empty{font-size:12px;color:var(--text-tertiary)}.agent-runtime-instance-list{display:flex;flex-direction:column;gap:8px}.agent-runtime-instance{border:1px solid var(--border-subtle);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:8px;background:#ffffff05}.agent-runtime-instance-toggle{display:block;width:100%;border:none;background:transparent;padding:0;color:inherit;cursor:pointer;text-align:left}.agent-runtime-instance-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.agent-runtime-instance-header-right{display:flex;align-items:center;gap:8px}.agent-runtime-instance-pid{font-size:13px;font-weight:700;color:var(--text-primary);font-family:var(--font-mono)}.agent-runtime-instance-chevron{font-size:13px;color:var(--text-tertiary)}.agent-runtime-instance-grid{display:flex;flex-direction:column;gap:6px}.agent-runtime-command-preview{max-width:100%;word-break:break-word;text-align:right}@media(max-width:720px){.agent-console-toolbar,.agent-runtime-header{flex-direction:column;align-items:stretch}.agent-runtime-statuses{justify-content:flex-start}.agent-runtime-meta,.agent-runtime-launch-grid{grid-template-columns:1fr}}.discover-git-panel{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column;margin:0 -12px;overflow-x:hidden;max-width:calc(100% + 24px);box-sizing:border-box}.saved-convs-panel{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column}.saved-convs-list{display:flex;flex-direction:column;gap:8px}.saved-conv-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md, 8px);padding:12px;display:flex;flex-direction:column;gap:7px;transition:border-color var(--transition-fast),box-shadow .2s}.saved-conv-card:hover{border-color:var(--border-default);box-shadow:0 2px 12px #00000014}.saved-conv-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.saved-conv-card-info{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.saved-conv-project-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.saved-conv-title{font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saved-conv-badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;padding:2px 8px;border-radius:10px;flex-shrink:0;white-space:nowrap}.saved-badge-running{background:rgb(var(--c-accent) / .15);color:var(--text-accent);animation:saved-pulse 2s ease-in-out infinite}.saved-badge-done{background:rgb(var(--c-success) / .12);color:rgb(var(--c-success))}.saved-badge-error{background:rgb(var(--c-error) / .12);color:rgb(var(--c-error))}.saved-badge-archived{background:var(--bg-hover);color:var(--text-tertiary)}@keyframes saved-pulse{0%,to{opacity:1}50%{opacity:.6}}.saved-conv-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-tertiary);flex-wrap:wrap}.saved-conv-meta>span:not(:last-child):after{content:" · ";margin-left:4px;opacity:.4}.saved-conv-project{font-weight:500;color:var(--text-secondary)}.saved-conv-actions{display:flex;gap:6px;padding-top:4px;border-top:1px solid var(--border-subtle)}.saved-conv-open-btn,.saved-conv-remove-btn{padding:5px 12px;border-radius:var(--radius-sm);font-size:11px;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);border:1px solid var(--border-subtle);background:transparent}.saved-conv-open-btn{color:var(--text-accent);border-color:rgb(var(--c-accent) / .3);flex:1}.saved-conv-open-btn:hover{background:rgb(var(--c-accent) / .1);border-color:rgb(var(--c-accent) / .5)}.saved-conv-remove-btn{color:var(--text-tertiary)}.saved-conv-remove-btn:hover{color:rgb(var(--c-error));border-color:rgb(var(--c-error) / .3);background:rgb(var(--c-error) / .06)}.saved-convs-orphan-note{font-size:11px;color:var(--text-tertiary);text-align:center;padding:12px 0;opacity:.6;font-style:italic}.git-view{display:flex;flex-direction:column;height:100%;overflow:hidden;overflow-x:hidden;background:var(--bg-primary);max-width:100%;box-sizing:border-box}.git-toolbar{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-subtle);flex-shrink:0;flex-wrap:wrap}.git-selector-group{display:flex;align-items:center;gap:6px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:0 7px;height:32px;flex:1;min-width:0}.git-selector-icon{font-size:13px;flex-shrink:0;opacity:.8}.git-selector{flex:1;min-width:0;border:none;background:transparent;color:var(--text-primary);font-size:12px;font-family:var(--font-sans);cursor:pointer;outline:none;text-overflow:ellipsis}.git-selector option{background:var(--bg-surface);color:var(--text-primary)}.git-refresh-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);font-size:15px;cursor:pointer;transition:all .15s;flex-shrink:0}.git-refresh-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.git-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.git-error{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;margin:8px 12px 0;background:rgb(var(--c-error) / .1);border:1px solid rgb(var(--c-error) / .25);border-radius:var(--radius-sm);color:rgb(var(--c-error));font-size:12px;flex-shrink:0}.git-error-dismiss{background:none;border:none;color:inherit;cursor:pointer;font-size:13px;padding:2px 4px;border-radius:4px}.git-commit-count{display:flex;align-items:center;justify-content:space-between;padding:4px 12px;font-size:10px;color:var(--text-tertiary);border-bottom:1px solid var(--border-subtle);flex-shrink:0;letter-spacing:.3px}.git-log-list{flex:1;overflow-y:auto;overflow-x:hidden;padding-bottom:12px}.git-commit-row{display:flex;align-items:flex-start;border-bottom:1px solid var(--border-subtle);min-height:36px;transition:background .1s;overflow:hidden;max-width:100%;padding-left:12px}.git-commit-row.expanded{background:var(--bg-surface)}.git-graph-cell{flex-shrink:0;display:block;min-width:22px}.git-commit-content{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:3px;padding:4px 10px 4px 4px;background:none;border:none;cursor:pointer;text-align:left;font-family:var(--font-sans);min-height:36px;transition:background .1s}.git-commit-content:hover{background:var(--bg-hover)}.git-commit-row.expanded .git-commit-content{background:var(--bg-surface)}.git-commit-main{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.git-commit-refs{display:flex;gap:3px;flex-wrap:wrap}.git-ref-badge{font-size:9px;font-weight:600;padding:1px 5px;border-radius:4px;white-space:nowrap;letter-spacing:.2px}.git-ref-head{background:rgb(var(--c-accent) / .2);color:var(--text-accent);border:1px solid rgb(var(--c-accent) / .35)}.git-ref-local{background:#34d39926;color:#34d399;border:1px solid rgb(52 211 153 / .3)}.git-ref-remote{background:#fbbf241f;color:#fbbf24;border:1px solid rgb(251 191 36 / .25)}.git-ref-tag{background:#f871711f;color:#f87171;border:1px solid rgb(248 113 113 / .25)}.git-commit-subject{font-size:12px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.git-commit-meta{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--text-tertiary)}.git-commit-avatar{width:16px;height:16px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:7px;font-weight:700;color:#fff;flex-shrink:0;letter-spacing:0}.git-commit-author{font-weight:500;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100px}.git-commit-dot{opacity:.4}.git-commit-time{flex-shrink:0}.git-commit-hash{margin-left:auto;font-family:var(--font-mono, monospace);font-size:9px;color:var(--text-primary);opacity:1;letter-spacing:.5px}.git-commit-detail{margin-top:6px;padding:8px 10px;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:5px;text-align:left}.git-commit-detail-row{display:flex;gap:8px;font-size:11px;align-items:flex-start}.git-commit-detail-label{color:var(--text-tertiary);flex-shrink:0;width:48px}.git-commit-detail-value{color:var(--text-secondary);word-break:break-all;font-family:monospace;font-size:10px}.git-commit-detail-parents{display:flex;gap:4px;flex-wrap:wrap;font-family:inherit}.git-commit-parent-hash{font-family:var(--font-mono, monospace);font-size:10px;color:var(--text-accent);background:rgb(var(--c-accent) / .1);padding:1px 4px;border-radius:3px}.git-view-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:32px 16px;color:var(--text-tertiary);font-size:13px}.git-view-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 16px;color:var(--text-tertiary);text-align:center}.git-view-empty-icon{font-size:36px;opacity:.5}.git-view-empty-title{font-size:14px;font-weight:600;color:var(--text-secondary)}.git-view-empty-text{font-size:12px;max-width:240px;line-height:1.5}.git-commit-diff-loading{display:flex;align-items:center;gap:8px;padding:8px 0}.git-commit-diff-section{margin-top:8px;border-top:1px solid var(--border-subtle);padding-top:6px}.git-commit-stat-summary{padding:6px 0;border-bottom:1px solid var(--border-subtle);margin-bottom:4px}.git-commit-diff-section pre{max-height:400px;overflow-y:auto}.git-show-more-container{display:flex;justify-content:center;padding:12px 12px 20px}.git-show-more-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;max-width:280px;padding:9px 16px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);font-size:12px;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all .15s;letter-spacing:.3px}.git-show-more-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-default)}.git-show-more-btn:disabled{opacity:.6;cursor:not-allowed}.git-branch-toggle{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);font-size:14px;cursor:pointer;transition:all .15s;flex-shrink:0}.git-branch-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.git-branch-toggle.active{background:rgb(var(--c-accent) / .12);border-color:rgb(var(--c-accent) / .35);color:var(--text-accent)}.git-view-mode-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);font-size:14px;cursor:pointer;transition:all .15s;flex-shrink:0}.git-view-mode-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.git-view-mode-btn.active{background:rgb(var(--c-accent) / .12);border-color:rgb(var(--c-accent) / .35);color:var(--text-accent)}.git-tree-dir-row{display:flex;align-items:center;gap:6px;width:100%;padding:6px 12px 6px 16px;background:none;border:none;border-bottom:1px solid var(--border-subtle);cursor:pointer;font-family:var(--font-sans);font-size:12px;color:var(--text-primary);text-align:left;transition:background .1s}.git-tree-dir-row:hover{background:var(--bg-hover)}.git-tree-chevron{font-size:11px;color:var(--text-tertiary);transition:transform .15s;display:inline-block;width:10px;text-align:center;flex-shrink:0}.git-tree-chevron.open{transform:rotate(90deg)}.git-tree-folder-icon{font-size:13px;flex-shrink:0}.git-tree-dir-name{font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono, monospace);font-size:11px}.git-tree-dir-count{font-size:9px;color:var(--text-tertiary);background:var(--bg-surface);border:1px solid var(--border-subtle);padding:1px 5px;border-radius:8px;flex-shrink:0;font-weight:600}.git-tree-file-wrapper{border-bottom:1px solid var(--border-subtle)}.git-tree-file-row{display:flex;align-items:center;gap:8px;width:100%;padding:7px 12px;background:none;border:none;cursor:pointer;font-family:var(--font-sans);font-size:12px;color:var(--text-primary);text-align:left;transition:background .1s}.git-tree-file-row:hover{background:var(--bg-hover)}.git-tree-file-row.expanded{background:var(--bg-surface)}.git-tree-file-status{font-size:10px;font-weight:700;width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:3px;flex-shrink:0}.git-tree-file-name{font-size:12px;font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.git-tree-file-chevron{font-size:11px;color:var(--text-tertiary);transition:transform .15s;display:inline-block;flex-shrink:0}.git-tree-file-chevron.open{transform:rotate(90deg)}.git-tree-file-diff{background:var(--bg-secondary);border-top:1px solid var(--border-subtle)}.nb-page{--nb-tabbar-h: var(--tab-bar-offset);display:flex;height:calc(100dvh - var(--nb-tabbar-h));overflow:hidden}.nb-list-panel{width:320px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--border-subtle);background:var(--bg-secondary);overflow:hidden}.nb-list-header{padding:20px 16px 8px}.nb-title{font-size:22px;font-weight:700;font-family:var(--font-sans);color:var(--text-primary);margin:0}.nb-subtitle{font-size:13px;font-family:var(--font-sans);color:var(--text-tertiary);margin:4px 0 0}.nb-toolbar{display:flex;align-items:center;gap:8px;padding:8px 16px}.nb-search-wrap{flex:1}.nb-search-input{width:100%;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:12px;font-family:var(--font-sans);padding:7px 10px;outline:none;transition:border-color var(--transition-fast)}.nb-search-input:focus{border-color:var(--border-focus)}.nb-search-input::placeholder{color:var(--text-tertiary)}.nb-create-btn{width:32px;height:32px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:rgb(var(--c-accent) / .08);color:var(--accent);font-size:18px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.nb-create-btn:hover{background:rgb(var(--c-accent) / .18);border-color:rgb(var(--c-accent) / .3)}.nb-list-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.nb-settings-btn{width:30px;height:30px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;transition:all var(--transition-fast)}.nb-settings-btn:hover{background:rgb(var(--c-accent) / .1);color:var(--accent);border-color:rgb(var(--c-accent) / .3)}.nb-settings-popup{margin:0 12px 8px;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;animation:nb-settings-in .18s ease}@keyframes nb-settings-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.nb-settings-popup-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border-subtle)}.nb-settings-popup-title{font-size:13px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary)}.nb-settings-popup-close{width:24px;height:24px;border:none;border-radius:var(--radius-sm);background:var(--bg-hover);color:var(--text-tertiary);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.nb-settings-popup-close:hover{background:var(--bg-active);color:var(--text-primary)}.nb-settings-row{padding:12px 14px}.nb-settings-row+.nb-settings-row{border-top:1px solid var(--border-subtle)}.nb-settings-label{font-size:12px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary);display:block;margin-bottom:4px}.nb-settings-hint{font-size:11px;font-family:var(--font-sans);color:var(--text-tertiary);line-height:1.4;margin:0 0 8px}.nb-chunk-options{display:flex;gap:4px;flex-wrap:wrap}.nb-chunk-btn{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-tertiary);font-size:11px;font-family:var(--font-mono);padding:4px 10px;cursor:pointer;transition:all var(--transition-fast)}.nb-chunk-btn.active{background:rgb(var(--c-accent) / .12);color:var(--accent);border-color:rgb(var(--c-accent) / .3)}.nb-chunk-btn:hover:not(.active){background:var(--bg-hover)}.nb-note-list{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 8px 80px;display:flex;flex-direction:column;gap:4px}.nb-note-item{padding:10px 12px;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);position:relative}.nb-note-item:hover{background:var(--bg-hover)}.nb-note-item.active{background:rgb(var(--c-accent) / .08);border-left:3px solid var(--accent)}.nb-note-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.nb-note-item-title{font-size:13px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.nb-pin-badge{margin-right:4px;font-size:11px}.nb-note-item-time{font-size:10px;font-family:var(--font-sans);color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}.nb-note-item-meta{display:flex;align-items:center;gap:8px;margin-top:4px}.nb-note-item-tags{display:flex;gap:3px}.nb-tag-chip{font-size:9px;font-family:var(--font-sans);color:var(--accent);background:rgb(var(--c-accent) / .08);border-radius:3px;padding:1px 5px}.nb-note-item-recordings{font-size:10px;color:var(--text-tertiary)}.nb-note-item-actions{position:absolute;top:8px;right:8px;display:none;gap:4px}.nb-note-item:hover .nb-note-item-actions{display:flex}.nb-item-action-btn{width:22px;height:22px;border:none;border-radius:4px;background:var(--bg-surface);color:var(--text-tertiary);font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.nb-item-action-btn:hover{background:var(--bg-active);color:var(--text-primary)}.nb-item-action-btn.danger:hover{background:rgb(var(--c-error) / .15);color:rgb(var(--c-error))}.nb-empty{text-align:center;color:var(--text-tertiary);font-size:13px;font-family:var(--font-sans);padding:40px 20px}.nb-empty-icon{font-size:32px;margin-bottom:8px}.nb-empty-hint{font-size:11px;margin-top:6px;max-width:200px;margin-inline:auto;line-height:1.5}.nb-editor-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-primary);position:relative}.nb-editor-header{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-subtle);background:var(--bg-secondary);flex-shrink:0}.nb-back-btn{display:none;border:none;background:none;color:var(--accent);font-size:14px;font-family:var(--font-sans);font-weight:500;cursor:pointer;padding:4px 8px}.nb-editor-header-info{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.nb-editor-title{font-size:15px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nb-save-indicator{font-size:11px;font-family:var(--font-sans);color:var(--text-tertiary);white-space:nowrap}.nb-save-indicator.nb-saved{color:rgb(var(--c-success))}.nb-save-indicator.nb-draft{color:rgb(var(--c-warning, 245 158 11))}.nb-version-btn{width:30px;height:30px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast)}.nb-version-btn:hover{background:rgb(var(--c-accent) / .1);color:var(--accent);border-color:rgb(var(--c-accent) / .3)}.nb-editor-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.nb-textarea{width:100%;height:100%;min-height:300px;border:none;background:transparent;color:var(--text-primary);font-size:14px;font-family:var(--font-sans);line-height:1.7;padding:20px 24px 80px;resize:none;outline:none;box-sizing:border-box}.nb-textarea::placeholder{color:var(--text-tertiary);opacity:.6}.nb-recordings-section{border-top:1px solid var(--border-subtle);padding:12px 16px 20px;max-height:260px;overflow-y:auto;flex-shrink:0}.nb-recordings-title{font-size:13px;font-weight:600;font-family:var(--font-sans);color:var(--text-secondary);margin:0 0 8px}.nb-recordings-list{display:flex;flex-direction:column;gap:6px}.nb-rec-inline{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:10px 12px;transition:border-color var(--transition-fast)}.nb-rec-inline:hover{border-color:var(--border-focus)}.nb-rec-inline-header{display:flex;align-items:center;gap:10px}.nb-rec-play-btn{width:32px;height:32px;border:none;border-radius:50%;background:rgb(var(--c-accent) / .12);color:var(--accent);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast)}.nb-rec-play-btn:hover{background:rgb(var(--c-accent) / .22);transform:scale(1.05)}.nb-rec-inline-info{flex:1;min-width:0}.nb-rec-inline-label{font-size:12px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary);display:block}.nb-rec-inline-meta{font-size:10px;font-family:var(--font-sans);color:var(--text-tertiary)}.nb-rec-inline-actions{display:flex;gap:4px;flex-shrink:0}.nb-rec-inline-action{width:26px;height:26px;border:none;border-radius:var(--radius-sm);background:var(--bg-hover);color:var(--text-secondary);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.nb-rec-inline-action:hover{background:rgb(var(--c-accent) / .12);color:var(--accent)}.nb-rec-inline-action.danger:hover{background:rgb(var(--c-error) / .12);color:rgb(var(--c-error))}.nb-rec-inline-action:disabled{opacity:.5;cursor:default}.nb-rec-transcript{margin-top:8px;padding-top:8px;border-top:1px solid var(--border-subtle)}.nb-rec-transcript-label{font-size:10px;font-weight:600;font-family:var(--font-sans);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.nb-rec-transcript-text{font-size:12px;font-family:var(--font-sans);color:var(--text-secondary);line-height:1.5;max-height:120px;overflow-y:auto}.nb-rec-fab-area{position:absolute;right:16px;display:flex;align-items:center;gap:8px;animation:nb-fab-in .2s ease}@keyframes nb-fab-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.nb-rec-label-input{width:140px;border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:11px;font-family:var(--font-sans);padding:6px 10px;outline:none;box-shadow:var(--shadow-md);transition:border-color var(--transition-fast)}.nb-rec-label-input:focus{border-color:var(--border-focus)}.nb-rec-label-input::placeholder{color:var(--text-tertiary)}.nb-rec-fab{width:48px;height:48px;border:none;border-radius:50%;background:linear-gradient(135deg,rgb(var(--c-error)),#e74c8b);color:#fff;font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:all var(--transition-normal)}.nb-rec-fab:hover{transform:scale(1.08);box-shadow:0 6px 20px #ef535066,0 0 40px #ef535026}.nb-rec-fab:active{transform:scale(.95)}.nb-rec-fab-icon{font-size:22px;line-height:1}.nb-rec-overlay{position:absolute;left:16px;right:16px;background:var(--bg-surface);border:1px solid rgb(var(--c-error) / .3);border-radius:var(--radius-lg);padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:var(--shadow-lg);animation:nb-rec-overlay-in .2s ease;z-index:100}@keyframes nb-rec-overlay-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.nb-rec-info{display:flex;align-items:center;gap:10px}.nb-rec-pulse{width:12px;height:12px;border-radius:50%;background:rgb(var(--c-error));animation:nb-rec-pulse-anim 1.2s ease-in-out infinite;flex-shrink:0}@keyframes nb-rec-pulse-anim{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.nb-rec-details{display:flex;flex-direction:column;gap:2px}.nb-rec-timer{font-size:18px;font-weight:700;font-family:var(--font-mono);color:var(--text-primary)}.nb-rec-chunks{font-size:10px;font-family:var(--font-sans);color:var(--text-tertiary)}.nb-rec-finalizing{font-size:13px;font-family:var(--font-sans);color:var(--text-secondary)}.nb-rec-stop-btn{border:none;border-radius:var(--radius-sm);background:rgb(var(--c-error));color:#fff;font-size:13px;font-weight:600;font-family:var(--font-sans);padding:8px 16px;cursor:pointer;transition:opacity var(--transition-fast);flex-shrink:0}.nb-rec-stop-btn:hover{opacity:.85}.nb-rec-error{position:absolute;left:16px;right:16px;background:rgb(var(--c-error) / .1);border:1px solid rgb(var(--c-error) / .3);border-radius:var(--radius-sm);padding:8px 12px;font-size:12px;color:rgb(var(--c-error));font-family:var(--font-sans)}.nb-editor-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px;color:var(--text-tertiary)}.nb-editor-empty-icon{font-size:48px;opacity:.4}.nb-editor-empty-text{font-size:14px;font-family:var(--font-sans)}@media(max-width:700px){.nb-page{flex-direction:column}.nb-list-panel{width:100%;height:100%;border-right:none;position:absolute;inset:0;z-index:10;transition:transform .25s cubic-bezier(.32,.72,0,1)}.nb-list-hidden-mobile{transform:translate(-100%);pointer-events:none}.nb-editor-panel{position:absolute;inset:0;z-index:5;transform:translate(100%);transition:transform .25s cubic-bezier(.32,.72,0,1)}.nb-editor-visible{transform:translate(0);z-index:15}.nb-back-btn{display:block}.nb-rec-fab-area,.nb-rec-overlay{bottom:16px}.nb-note-item-actions{display:flex}}.nb-note-list{padding-bottom:20px}.nb-rec-fab-area,.nb-rec-overlay{bottom:16px}.nb-rec-error{bottom:80px}.nb-versions-panel{border-bottom:1px solid var(--border-default);background:var(--bg-surface);max-height:280px;overflow-y:auto;flex-shrink:0;animation:nb-versions-in .18s ease}@keyframes nb-versions-in{0%{opacity:0;max-height:0}to{opacity:1;max-height:280px}}.nb-versions-header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-bottom:1px solid var(--border-subtle);background:var(--bg-secondary);position:sticky;top:0;z-index:1}.nb-versions-title{font-size:13px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary)}.nb-versions-snapshot-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:rgb(var(--c-accent) / .08);color:var(--accent);font-size:11px;font-weight:500;font-family:var(--font-sans);padding:4px 10px;cursor:pointer;transition:all var(--transition-fast)}.nb-versions-snapshot-btn:hover{background:rgb(var(--c-accent) / .18)}.nb-versions-close{width:24px;height:24px;border:none;border-radius:var(--radius-sm);background:var(--bg-hover);color:var(--text-tertiary);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.nb-versions-close:hover{background:var(--bg-active);color:var(--text-primary)}.nb-versions-list{padding:4px 0}.nb-versions-empty{text-align:center;font-size:12px;font-family:var(--font-sans);color:var(--text-tertiary);padding:20px 16px}.nb-version-item{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;gap:10px;transition:background var(--transition-fast)}.nb-version-item:hover{background:var(--bg-hover)}.nb-version-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.nb-version-date{font-size:11px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary)}.nb-version-label{font-size:10px;font-family:var(--font-sans);color:var(--accent);background:rgb(var(--c-accent) / .08);border-radius:3px;padding:0 4px;width:fit-content}.nb-version-title-text{font-size:10px;font-family:var(--font-sans);color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nb-version-restore-btn{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-secondary);font-size:10px;font-weight:600;font-family:var(--font-sans);padding:3px 8px;cursor:pointer;flex-shrink:0;transition:all var(--transition-fast)}.nb-version-restore-btn:hover{background:rgb(var(--c-accent) / .1);color:var(--accent);border-color:rgb(var(--c-accent) / .3)}.nb-version-restore-btn:disabled{opacity:.5;cursor:default}.nb-status-banner{display:flex;align-items:center;gap:8px;padding:7px 14px;border-radius:var(--radius-md);font-size:12px;font-weight:500;font-family:var(--font-sans);margin:0 12px 8px;animation:nb-status-in .3s ease}@keyframes nb-status-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.nb-status-offline{background:#fb923c1a;color:#fb923c;border:1px solid rgba(251,146,60,.2)}.nb-status-syncing{background:#60a5fa1a;color:#60a5fa;border:1px solid rgba(96,165,250,.2)}.nb-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.nb-status-dot-offline{background:#fb923c;animation:nb-dot-pulse 2s ease-in-out infinite}.nb-status-dot-syncing{background:#60a5fa;animation:nb-dot-pulse 1s ease-in-out infinite}@keyframes nb-dot-pulse{0%,to{opacity:1}50%{opacity:.35}}.nb-sync-badge{margin-left:auto;background:#fb923c26;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.nb-save-indicator.nb-cached{color:#fb923c}.discover-page{height:100%;position:relative;overflow:hidden;background:var(--bg-primary)}.discover-list-view{height:100%;display:flex;flex-direction:column;overflow:hidden;transition:transform .28s cubic-bezier(.32,.72,0,1),opacity .28s ease}.discover-list-view.pushed{transform:translate(-30%);opacity:.4;pointer-events:none}.discover-header{padding:calc(14px + var(--top-safe-area, 0px)) 12px 10px;flex-shrink:0}.discover-title{font-size:20px;font-weight:700;color:var(--text-primary);margin:0}.discover-list-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:0 12px 24px}.discover-group{margin-bottom:12px}.discover-group-heading{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);padding:0 4px 4px}.discover-group-items{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.discover-row{width:100%;display:flex;align-items:center;gap:10px;padding:11px 10px 11px 12px;background:transparent;border:none;border-bottom:1px solid var(--border-subtle);color:inherit;font-family:var(--font-sans);cursor:pointer;text-align:left;transition:background .12s ease}.discover-row.last{border-bottom:none}.discover-row:hover{background:var(--bg-hover)}.discover-row:active{background:var(--bg-active)}.discover-row-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:18px;line-height:1;background:rgb(var(--c-accent) / .1);border-radius:var(--radius-sm)}.discover-row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.discover-row-label{font-size:13px;font-weight:500;color:var(--text-primary)}.discover-row-desc{font-size:10px;color:var(--text-tertiary)}.discover-row-chevron{flex-shrink:0;font-size:18px;color:var(--text-tertiary);opacity:.5;font-weight:300}.discover-detail{position:absolute;inset:0;z-index:10;background:var(--bg-primary);display:flex;flex-direction:column;overflow:hidden;transform:translate(0);transition:transform .28s cubic-bezier(.32,.72,0,1)}.discover-detail.entering{animation:discover-slide-in .28s cubic-bezier(.32,.72,0,1) forwards}.discover-detail.leaving{animation:discover-slide-out .28s cubic-bezier(.32,.72,0,1) forwards}@keyframes discover-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes discover-slide-out{0%{transform:translate(0)}to{transform:translate(100%)}}.discover-detail-header{display:flex;align-items:center;padding:calc(8px + var(--top-safe-area, 0px)) 12px 8px;flex-shrink:0;border-bottom:1px solid var(--border-subtle);min-height:calc(40px + var(--top-safe-area, 0px));gap:8px}.discover-back-btn{display:flex;align-items:center;gap:2px;background:none;border:none;color:var(--text-accent);font-size:13px;font-family:var(--font-sans);cursor:pointer;padding:4px 0;flex-shrink:0;transition:opacity .12s ease}.discover-back-btn:active{opacity:.6}.discover-back-chevron{font-size:20px;line-height:1;margin-right:1px}.discover-detail-title{flex:1;text-align:center;font-size:14px;font-weight:600;color:var(--text-primary)}.discover-back-spacer{width:48px;flex-shrink:0}.discover-detail-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:calc(12px + var(--tab-bar-offset))}.discover-detail-content .tasks-page{padding-top:0}.discover-detail-content .tasks-page>.tasks-header{display:none}.usage-page{padding:12px 12px 24px}.usage-header-row{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.usage-section-title{font-size:15px;font-weight:600;color:var(--text-primary);margin:0}.usage-fetched-at{font-size:11px;color:var(--text-tertiary)}.usage-refresh-btn{width:32px;height:32px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.usage-refresh-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-default)}.usage-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.usage-error{padding:10px 14px;font-size:12px;color:rgb(var(--c-error));background:rgb(var(--c-error) / .08);border:1px solid rgb(var(--c-error) / .2);border-radius:var(--radius-sm);margin-bottom:16px}.usage-empty{text-align:center;padding:40px 20px;color:var(--text-tertiary);font-size:13px}.usage-empty-icon{font-size:32px;margin-bottom:8px}.usage-empty-hint{font-size:11px;margin-top:4px;opacity:.7}.usage-provider-group{margin-bottom:20px}.usage-provider-name{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);margin:0 0 8px;padding-bottom:4px;border-bottom:1px solid var(--border-subtle)}.usage-models-grid{display:grid;grid-template-columns:1fr;gap:6px}@media(min-width:600px){.usage-models-grid{grid-template-columns:1fr 1fr}}.usage-model-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:10px 12px;transition:border-color .15s ease}.usage-model-card:hover{border-color:var(--border-default)}.usage-model-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.usage-model-label{font-size:13px;font-weight:600;color:var(--text-primary)}.usage-model-pct{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-accent)}.usage-model-id{font-size:10px;color:var(--text-tertiary);font-family:monospace;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.usage-bar-track{height:6px;background:var(--bg-hover);border-radius:3px;overflow:hidden}.usage-bar-fill{height:100%;border-radius:3px;transition:width .5s ease;min-width:2px}.usage-no-quota{font-size:10px;color:var(--text-tertiary);opacity:.6;font-style:italic}.usage-loading{display:flex;align-items:center;justify-content:center;gap:8px;padding:40px 0;color:var(--text-tertiary);font-size:13px}.usage-loading-spinner{width:16px;height:16px;border:2px solid var(--border-subtle);border-top-color:var(--accent);border-radius:50%;animation:usage-spin .8s linear infinite}@keyframes usage-spin{to{transform:rotate(360deg)}}.overview-panel{display:flex;flex-direction:column;gap:10px;padding:0 0 16px}.overview-stats-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.overview-stat{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:7px 6px;display:flex;flex-direction:column;align-items:center;gap:1px}.overview-stat-value{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-primary)}.overview-stat-value.overview-stat-running{color:#4ade80}.overview-stat-label{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary)}.overview-section{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden}.overview-section-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid var(--border-subtle)}.overview-section-title{font-size:13px;font-weight:600;font-family:var(--font-sans);color:var(--text-primary)}.overview-section-count{font-size:11px;font-family:var(--font-sans);color:var(--text-tertiary)}.overview-conv-list{display:flex;flex-direction:column}.overview-conv-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;border-bottom:1px solid var(--border-subtle);background:transparent;cursor:pointer;text-align:left;font-family:var(--font-sans);transition:background .12s ease;width:100%}.overview-conv-item:last-child{border-bottom:none}.overview-conv-item:hover{background:var(--bg-hover)}.overview-conv-item.running{border-left:2px solid #4ade80}.overview-conv-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.overview-conv-title{flex:1;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.overview-conv-project{font-size:10px;font-family:var(--font-mono);color:var(--text-tertiary);background:var(--bg-hover);padding:1px 6px;border-radius:4px;white-space:nowrap;flex-shrink:0}.overview-conv-badge{font-size:9px;font-weight:600;padding:1px 5px;border-radius:4px;white-space:nowrap;flex-shrink:0}.overview-conv-badge.running{background:#4ade8026;color:#4ade80}.overview-conv-badge.idle{background:var(--bg-hover);color:var(--text-tertiary)}.overview-conv-badge.error{background:#f871711f;color:#f87171}.overview-conv-time{font-size:10px;color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}.overview-task-list{display:flex;flex-direction:column}.overview-task-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-subtle);transition:background .12s ease}.overview-task-item:last-child{border-bottom:none}.overview-task-item:hover{background:var(--bg-hover)}.overview-task-item.disabled{opacity:.5}.overview-task-icon{font-size:14px;flex-shrink:0}.overview-task-name{flex:1;font-size:13px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-sans)}.overview-task-status{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:1px 6px;border-radius:4px;background:var(--bg-hover);color:var(--text-tertiary);flex-shrink:0}.overview-task-status.active{background:#4ade801f;color:#4ade80}.overview-task-meta{font-size:10px;color:var(--text-tertiary);font-family:var(--font-sans);white-space:nowrap;flex-shrink:0}@media(max-width:440px){.overview-stats-bar{grid-template-columns:repeat(2,1fr)}}.action-sheet-overlay{position:fixed;inset:0;z-index:10000;background:#0006;display:flex;align-items:flex-start;justify-content:center;padding:60px 8px 8px;animation:action-sheet-backdrop-in .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.action-sheet{width:100%;max-width:420px;display:flex;flex-direction:column;gap:8px;animation:action-sheet-drop-in .28s cubic-bezier(.32,1.28,.54,1);transform-origin:top center}.action-sheet-group{background:var(--bg-surface, rgba(30, 30, 30, .97));border:1px solid var(--border-subtle);border-radius:14px;overflow:hidden;-webkit-backdrop-filter:blur(40px) saturate(1.8);backdrop-filter:blur(40px) saturate(1.8)}.action-sheet-header{padding:14px 16px 10px;text-align:center;border-bottom:1px solid var(--border-subtle)}.action-sheet-title{font-size:13px;font-weight:600;color:var(--text-secondary);letter-spacing:.01em}.action-sheet-subtitle{font-size:11px;color:var(--text-tertiary);margin-top:2px}.action-sheet-item{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 16px;border:none;background:transparent;color:rgb(var(--c-accent, 108 139 239));font-size:17px;font-family:var(--font-sans);font-weight:400;cursor:pointer;transition:background 80ms ease;-webkit-tap-highlight-color:transparent;letter-spacing:-.01em}.action-sheet-item+.action-sheet-item{border-top:1px solid var(--border-subtle)}.action-sheet-item:active{background:rgb(var(--c-lift, 255 255 255) / .08)}.action-sheet-item-icon{font-size:18px;line-height:1;flex-shrink:0}.action-sheet-item.destructive{color:rgb(var(--c-error, 239 68 68))}.action-sheet-item.disabled{opacity:.35;cursor:default;pointer-events:none}.action-sheet-cancel-group{border-radius:14px}.action-sheet-cancel{font-weight:600;color:rgb(var(--c-accent, 108 139 239))}@keyframes action-sheet-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes action-sheet-drop-in{0%{opacity:0;transform:translateY(-24px)}to{opacity:1;transform:translateY(0)}}.review-panel{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:10px 12px 12px;background:var(--bg-primary);container-type:inline-size;-webkit-touch-callout:none}.review-panel-loading{align-items:center;justify-content:center;color:var(--text-tertiary)}.review-dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:8px;align-items:start}.review-mobile-tabs-wrap{display:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation}.review-mobile-tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.review-mobile-tabs::-webkit-scrollbar{display:none}.review-mobile-tab{border:1px solid var(--border-subtle);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;min-height:30px;padding:0 12px;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer;transition:all var(--transition-fast);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.review-mobile-tab.active{border-color:rgb(var(--c-accent) / .35);background:rgb(var(--c-accent) / .12);color:var(--text-primary)}.review-mobile-tab:active{transform:scale(.95);transition:transform 80ms ease}.review-mobile-panel{min-width:0}.review-section{border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:var(--radius-md);overflow:hidden;min-width:0;box-shadow:0 10px 24px #0f172a0a}.review-section-task,.review-section-exchange,.review-section-walkthrough,.review-section-changes,.review-section-html{grid-column:span 2}@container (min-width: 1200px){.review-section-task,.review-section-exchange,.review-section-walkthrough,.review-section-changes,.review-section-html{grid-column:span 3}}.review-section-summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:7px 9px;cursor:pointer;-webkit-user-select:none;user-select:none}.review-section-summary::-webkit-details-marker{display:none}.review-section-summary-main{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.review-section-chevron{color:var(--text-tertiary);display:inline-flex;transition:transform var(--transition-fast)}.review-section[open] .review-section-chevron{transform:rotate(90deg)}.review-section-summary-text{min-width:0}.review-section-label{font-size:14px;line-height:1;font-weight:700;color:var(--text-primary)}.review-section-label.with-subtitle{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.review-section-subtitle-inline{font-size:12px;font-weight:600;line-height:1;color:var(--text-tertiary)}.review-section-subtitle{font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-section-actions{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;justify-content:flex-end;flex-shrink:0}.review-section-time{font-size:11px;color:var(--text-tertiary);white-space:nowrap}.review-section-menu{position:relative}.review-section-more-btn{width:24px;height:14px;border:1px solid var(--border-subtle);background:var(--bg-secondary);color:var(--text-secondary);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.review-section-more-btn:hover,.review-section-more-btn.active{border-color:var(--border-focus);background:var(--bg-hover);color:var(--text-primary)}.review-section-menu-popover{position:absolute;top:calc(100% + 6px);right:0;min-width:116px;padding:5px;border:1px solid var(--border-subtle);border-radius:12px;background:#0e121cfa;box-shadow:0 14px 32px #02061757;z-index:20}.review-section-menu-item{width:100%;border:none;background:transparent;color:var(--text-secondary);border-radius:8px;min-height:30px;padding:0 9px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;text-align:left;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.review-section-menu-item:hover,.review-section-menu-item.active{background:var(--bg-hover);color:var(--text-primary)}.review-section-menu-item.copied{color:rgb(var(--c-success, 52 211 153))}.review-section-body{padding:0 10px 10px}.review-message-body{overflow:visible;color:var(--text-primary);padding:4px 8px;font-size:var(--msg-font-size, 13.5px);line-height:1.55;word-break:break-word}.review-message-body.message-body{color:var(--text-primary)}.review-message-body>:first-child{margin-top:0}.review-message-body>:last-child{margin-bottom:0}.review-message-body p{margin:0 0 .42em}.review-exchange-stack{display:flex;flex-direction:column;gap:8px}.review-exchange-item+.review-exchange-item{border-top:1px solid var(--border-subtle)}.review-exchange-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:6px}.review-exchange-label{font-size:11px;font-weight:700;color:var(--text-primary)}.review-exchange-time{font-size:11px;color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}.review-exchange-running{display:flex;align-items:center;gap:10px;padding:12px 8px;animation:review-pulse 2s ease-in-out infinite}.review-running-label{font-size:13px;font-weight:600;color:var(--text-secondary)}@keyframes review-pulse{0%,to{opacity:1}50%{opacity:.5}}.review-section-body.wrap pre,.review-section-body.wrap code{white-space:pre-wrap;word-break:break-word}.review-artifacts-list{display:flex;flex-direction:column;gap:6px}.review-code-actions{display:flex;flex-direction:column;gap:8px}.review-artifact-button{width:100%;display:flex;align-items:center;gap:8px;border:1px solid var(--border-subtle);background:var(--bg-secondary);border-radius:var(--radius-sm);padding:8px 10px;color:inherit;text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.review-artifact-button:hover{border-color:var(--border-focus);background:var(--bg-hover)}.review-artifact-button.active{border-color:rgb(var(--c-accent) / .35);background:rgb(var(--c-accent) / .08)}.review-artifact-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:rgb(var(--c-lift) / .08);color:var(--text-secondary);flex-shrink:0}.review-artifact-meta{min-width:0;display:flex;flex-direction:column;gap:2px}.review-artifact-name{font-size:12px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-artifact-hint{font-size:11px;color:var(--text-tertiary)}.review-favorites-list{display:flex;flex-direction:column;gap:6px}.review-favorite-card{border:1px solid var(--border-subtle);background:var(--bg-secondary);border-radius:var(--radius-sm);padding:8px 9px}.review-favorite-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:4px}.review-favorite-role{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary)}.review-favorite-time{font-size:10px;color:var(--text-tertiary);white-space:nowrap}.review-favorite-text{font-size:12px;line-height:1.45;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap}@media(max-width:900px){.review-mobile-tabs-wrap{display:flex;flex-direction:column;gap:8px}.review-mobile-tabs-wrap,.review-mobile-tabs-wrap *{user-select:none!important;-webkit-user-select:none!important;-webkit-touch-callout:none!important}.review-panel{gap:6px;padding:8px}.review-dashboard{display:none}.review-section-summary{padding:8px 9px;align-items:flex-start}.review-section-actions{gap:4px;max-width:32%}.review-section-body{padding:0 9px 9px}.review-message-body{padding:3px 6px;line-height:1.5}.review-section-menu-popover{right:0;min-width:108px}}@container (max-width: 760px){.review-mobile-tabs-wrap{display:flex;flex-direction:column;gap:8px}.review-mobile-tabs-wrap,.review-mobile-tabs-wrap *{user-select:none!important;-webkit-user-select:none!important;-webkit-touch-callout:none!important}.review-dashboard{display:none}}.review-html-list{display:flex;flex-direction:column;gap:10px}.html-preview-container{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;background:#fff}.html-preview-header{display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-secondary);border-bottom:1px solid var(--border-subtle)}.html-preview-badge{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:6px;background:rgb(var(--c-accent) / .15);color:var(--c-primary, #a78bfa);white-space:nowrap}.html-preview-name{font-size:12px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.html-preview-expand-btn{width:26px;height:26px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-secondary);border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;flex-shrink:0;transition:all var(--transition-fast)}.html-preview-expand-btn:hover{border-color:var(--border-focus);background:var(--bg-hover);color:var(--text-primary)}.html-preview-iframe{width:100%;border:none;display:block;transition:height .25s ease;background:#fff}.file-viewer-html-iframe{background:#fff;border-radius:0 0 var(--radius-md) var(--radius-md)}.review-outline-list{display:flex;flex-direction:column}.review-outline-turn{display:flex;gap:10px;padding:10px 14px;border:none;background:none;cursor:pointer;text-align:left;width:100%;transition:background .15s ease;border-bottom:1px solid var(--border-subtle)}.review-outline-turn:last-child{border-bottom:none}.review-outline-turn:hover{background:var(--bg-hover)}.review-outline-turn:active{background:rgb(var(--c-accent) / .08)}.review-outline-turn-num{width:20px;height:20px;border-radius:50%;background:rgb(var(--c-accent) / .12);color:var(--accent);font-size:10px;font-weight:600;font-family:var(--font-mono);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.review-outline-turn-body{flex:1;min-width:0}.review-outline-turn-user{font-size:13px;font-weight:500;color:var(--text-primary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.review-outline-turn-assistant{font-size:12px;color:var(--text-secondary);line-height:1.4;margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.review-outline-turn-tools{font-size:11px;font-family:var(--font-mono);color:var(--text-tertiary);margin-top:6px;display:flex;align-items:center;gap:4px}.review-outline-turn-tools-icon{display:flex;align-items:center;justify-content:center;padding:2px;background:var(--bg-secondary);border:1px solid var(--border-subtle);border-radius:4px}.header-view-controls{display:inline-flex;align-items:center;gap:6px}.view-mode-toggle-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-sm);background:rgb(var(--c-lift) / .06);color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.view-mode-toggle-btn:hover{color:var(--text-secondary);background:rgb(var(--c-lift) / .1)}.view-mode-toggle-btn.active{color:var(--text-primary);border-color:rgb(var(--c-accent) / .28);background:rgb(var(--c-accent) / .08);box-shadow:0 1px 2px #00000014}.swarm-view-mode-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-sm);background:rgb(var(--c-lift) / .06);color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.swarm-view-mode-btn:hover{color:var(--text-secondary);background:rgb(var(--c-lift) / .1)}.swarm-view-mode-btn.active{color:var(--text-primary);border-color:rgb(var(--c-accent) / .28);background:rgb(var(--c-accent) / .08);box-shadow:0 1px 2px #00000014}.swarm-panel{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:16px 20px;gap:16px}.swarm-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.swarm-header-info{display:flex;align-items:flex-start;gap:10px;flex:1;min-width:0}.swarm-header-icon{font-size:24px;line-height:1;flex-shrink:0}.swarm-header-text{display:flex;flex-direction:column;gap:2px;min-width:0}.swarm-header-title{font-size:15px;font-weight:600;color:var(--text-primary);line-height:1.3}.swarm-header-meta{font-size:12px;color:var(--text-tertiary);line-height:1.4}.swarm-header-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.swarm-stop-all-btn{background:rgb(var(--c-error) / .08);border:1px solid rgb(var(--c-error) / .2);color:rgb(var(--c-error));font-size:12px;font-family:var(--font-sans);padding:5px 10px;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.swarm-stop-all-btn:hover{background:rgb(var(--c-error) / .15);border-color:rgb(var(--c-error) / .35)}.swarm-delete-btn{background:transparent;border:1px solid var(--border-default);font-size:12px;padding:4px 8px;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.swarm-delete-btn:hover{background:rgb(var(--c-error) / .08);border-color:rgb(var(--c-error) / .2)}.swarm-confirm-delete{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary)}.swarm-confirm-yes,.swarm-confirm-no{background:transparent;border:1px solid var(--border-default);color:var(--text-secondary);font-size:11px;font-family:var(--font-sans);padding:2px 8px;border-radius:var(--radius-sm);cursor:pointer}.swarm-confirm-yes:hover{background:rgb(var(--c-error) / .1);border-color:rgb(var(--c-error) / .3);color:rgb(var(--c-error))}.swarm-confirm-no:hover{background:rgb(var(--c-lift) / .06)}.swarm-workers{display:flex;flex-direction:column;gap:8px}.swarm-worker-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:12px 14px;cursor:pointer;transition:all var(--transition-fast)}.swarm-worker-card:hover{border-color:var(--border-focus);background:rgb(var(--c-lift) / .03);transform:translateY(-1px);box-shadow:0 2px 8px #0000000a}.swarm-worker-card:active{transform:translateY(0)}.swarm-worker-running{border-left:3px solid rgb(59 130 246)}.swarm-worker-idle{border-left:3px solid rgb(34 197 94)}.swarm-worker-error{border-left:3px solid rgb(var(--c-error))}.swarm-worker-pending{border-left:3px solid var(--text-tertiary);opacity:.7}.swarm-worker-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.swarm-worker-status-icon{flex-shrink:0;font-size:14px;line-height:1;display:flex;align-items:center}.swarm-worker-title{font-size:13px;font-weight:600;color:var(--text-primary)}.swarm-worker-badge{font-size:10px;color:var(--text-tertiary);background:rgb(var(--c-lift) / .06);padding:2px 6px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.swarm-worker-steps{font-size:11px;color:var(--text-tertiary);margin-left:auto}.swarm-worker-remove{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:2px;border-radius:var(--radius-sm);display:flex;align-items:center;opacity:0;transition:all var(--transition-fast)}.swarm-worker-card:hover .swarm-worker-remove{opacity:1}.swarm-worker-remove:hover{color:rgb(var(--c-error));background:rgb(var(--c-error) / .08)}.swarm-worker-task{font-size:13px;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.swarm-worker-summary{font-size:11px;color:var(--text-tertiary);margin-top:4px;font-style:italic}.swarm-worker-dep{font-size:11px;color:var(--text-tertiary);margin-top:4px}.swarm-footer{padding-top:4px}.swarm-add-btn{display:flex;align-items:center;gap:6px;width:100%;padding:10px 14px;background:transparent;border:1px dashed var(--border-default);border-radius:var(--radius-md);color:var(--text-tertiary);font-size:13px;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast)}.swarm-add-btn:hover{border-color:var(--border-focus);color:var(--text-secondary);background:rgb(var(--c-lift) / .03)}.swarm-add-form{display:flex;flex-direction:column;gap:8px}.swarm-add-input{width:100%;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:13px;padding:8px 10px;resize:none;outline:none;line-height:1.5;transition:border-color var(--transition-fast)}.swarm-add-input:focus{border-color:var(--border-focus)}.swarm-add-actions{display:flex;justify-content:flex-end;gap:6px}.swarm-add-cancel,.swarm-add-submit{font-size:12px;font-family:var(--font-sans);padding:5px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.swarm-add-cancel{background:transparent;border:1px solid var(--border-default);color:var(--text-secondary)}.swarm-add-cancel:hover{background:rgb(var(--c-lift) / .06)}.swarm-add-submit{background:var(--accent);border:none;color:var(--text-on-solid);display:flex;align-items:center;gap:4px}.swarm-add-submit:hover:not(:disabled){background:var(--accent-hover)}.swarm-add-submit:disabled{opacity:.4;cursor:not-allowed}.swarm-back-btn{background:#7c3aed14;border:1px solid rgb(124 58 237 / .2);color:#7c3aed;font-size:12px;font-family:var(--font-sans);padding:4px 10px;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;gap:4px;transition:all var(--transition-fast);margin-right:4px}.swarm-back-btn:hover{background:#7c3aed24;border-color:#7c3aed59}.fork-modal-backdrop{position:fixed;inset:0;background:#00000080;z-index:1000;animation:fork-fade-in .15s ease-out}.fork-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(500px,calc(100vw - 32px));max-height:calc(100vh - 64px);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1001;display:flex;flex-direction:column;animation:fork-slide-in .2s ease-out}@keyframes fork-fade-in{0%{opacity:0}to{opacity:1}}@keyframes fork-slide-in{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.fork-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-subtle)}.fork-modal-title{font-size:16px;font-weight:600;color:var(--text-primary)}.fork-modal-close{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;transition:all var(--transition-fast)}.fork-modal-close:hover{color:var(--text-primary);background:rgb(var(--c-lift) / .08)}.fork-modal-body{padding:16px 20px;overflow-y:auto;flex:1}.fork-modal-description{font-size:13px;color:var(--text-secondary);line-height:1.5;margin:0 0 16px}.fork-modal-field{margin-bottom:16px}.fork-modal-label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px;text-transform:uppercase;letter-spacing:.03em}.fork-modal-input{width:100%;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:13px;padding:8px 10px;outline:none;transition:border-color var(--transition-fast)}.fork-modal-input:focus{border-color:var(--border-focus)}.fork-modal-tasks{display:flex;flex-direction:column;gap:8px}.fork-task-row{display:flex;align-items:flex-start;gap:8px}.fork-task-number{flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--text-tertiary);background:rgb(var(--c-lift) / .06);border-radius:50%;margin-top:6px}.fork-task-input{flex:1;background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-sans);font-size:13px;padding:8px 10px;resize:none;outline:none;line-height:1.5;transition:border-color var(--transition-fast)}.fork-task-input:focus{border-color:var(--border-focus)}.fork-task-remove{flex-shrink:0;background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;border-radius:var(--radius-sm);margin-top:6px;transition:all var(--transition-fast)}.fork-task-remove:hover{color:rgb(var(--c-error));background:rgb(var(--c-error) / .08)}.fork-add-task{display:flex;align-items:center;gap:6px;background:transparent;border:1px dashed var(--border-default);border-radius:var(--radius-sm);color:var(--text-tertiary);font-size:12px;font-family:var(--font-sans);padding:6px 12px;cursor:pointer;transition:all var(--transition-fast);margin-top:4px}.fork-add-task:hover{border-color:var(--border-focus);color:var(--text-secondary)}.fork-modal-error{font-size:12px;color:rgb(var(--c-error));margin-top:12px;padding:8px 10px;background:rgb(var(--c-error) / .06);border-radius:var(--radius-sm)}.fork-modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border-subtle)}.fork-modal-cancel{background:transparent;border:1px solid var(--border-default);color:var(--text-secondary);font-size:13px;font-family:var(--font-sans);padding:7px 16px;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.fork-modal-cancel:hover{background:rgb(var(--c-lift) / .06)}.fork-modal-submit{background:#7c3aed;border:none;color:#fff;font-size:13px;font-weight:500;font-family:var(--font-sans);padding:7px 16px;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;gap:6px;transition:all var(--transition-fast)}.fork-modal-submit:hover:not(:disabled){background:#6d28d9}.fork-modal-submit:disabled{opacity:.4;cursor:not-allowed}.swarm-fork-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;transition:all var(--transition-fast)}.swarm-fork-btn:hover{color:#7c3aed;background:#7c3aed14}.qp-container{width:100%;max-width:680px;margin-top:16px;display:flex;flex-direction:column;gap:10px;animation:qp-fade-in .4s ease;padding-bottom:0}@keyframes qp-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes qp-modal-in{0%{opacity:0;transform:translate(-50%,calc(-50% + 8px))}to{opacity:1;transform:translate(-50%,-50%)}}.qp-chips{display:flex;flex-direction:column;gap:10px;width:100%;padding:0}.qp-chip-wrap{position:relative;display:flex}.qp-chip{display:flex;flex-direction:row;align-items:flex-start;justify-content:flex-start;gap:8px;padding:10px 12px;border:1px solid transparent;border-radius:10px;background:var(--bg-secondary);color:var(--text-primary);font-size:13px;font-weight:400;font-family:var(--font-sans);cursor:pointer;transition:background .15s ease,border-color .15s ease;user-select:none;-webkit-user-select:none;width:100%;min-height:auto;text-align:left;overflow:hidden}.qp-chip:hover{background:var(--bg-hover);border-color:var(--border-subtle)}.qp-chip:active{transform:translateY(0)}.qp-chip-icon{font-size:14px;line-height:1.4;flex-shrink:0}.qp-chip-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary);flex:1;line-height:inherit;transition:all .2s ease}.qp-chip:hover .qp-chip-label,.qp-chip:active .qp-chip-label{white-space:normal}.qp-chip-count{font-size:10px;font-family:var(--font-mono);color:var(--text-tertiary);background:rgb(var(--c-lift) / .08);padding:2px 6px;border-radius:999px;min-width:18px;text-align:center;flex-shrink:0}.qp-chip-workflow{font-family:var(--font-mono);font-size:12px;color:var(--text-primary);background:var(--bg-secondary)}.qp-chip-workflow:hover{background:var(--bg-hover)}.qp-chip-recent{font-size:13px;max-width:none}.qp-chip-more{color:var(--text-secondary);background:var(--bg-surface);border:1px solid var(--border-subtle)}.qp-chip-more:hover{background:var(--bg-hover);color:var(--text-primary)}.qp-chip-add{color:var(--text-primary);background:var(--bg-primary);border:1px dashed var(--border-subtle)}.qp-chip-add:hover{background:var(--bg-secondary);border-color:var(--border-default)}.qp-chip-remove{position:absolute;top:-4px;right:-4px;width:16px;height:16px;border:1px solid var(--border-subtle);border-radius:50%;background:var(--bg-surface);color:var(--text-tertiary);font-size:10px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease,color .15s ease;z-index:1}.qp-chip-wrap:hover .qp-chip-remove{opacity:1}.qp-chip-remove:hover{color:#f87171;border-color:#f8717140;background:#f8717110}.qp-chip-confirm{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:4px;background:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--border-subtle);z-index:2;animation:qp-fade-in .1s ease}.qp-chip-confirm-yes,.qp-chip-confirm-no{font-size:10px;font-weight:600;font-family:var(--font-sans);padding:3px 8px;border:none;border-radius:var(--radius-sm);cursor:pointer}.qp-chip-confirm-yes{background:#f8717120;color:#f87171}.qp-chip-confirm-yes:hover{background:#f8717130}.qp-chip-confirm-no{background:var(--bg-hover);color:var(--text-secondary)}.qp-add-form{display:flex;flex-direction:column;gap:6px;padding:8px 12px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-secondary);animation:qp-fade-in .2s ease}.qp-add-row{display:flex;gap:6px;align-items:center}.qp-add-select{padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-secondary);font-size:12px;font-family:var(--font-sans);cursor:pointer;flex-shrink:0}.qp-add-input{flex:1;padding:7px 12px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);outline:none;min-width:0;transition:border-color .15s ease}.qp-add-input:focus{border-color:rgb(var(--c-accent) / .4)}.qp-add-input.full{flex:1}.qp-add-btn{padding:7px 16px;border:none;border-radius:var(--radius-sm);background:rgb(var(--c-accent) / .15);color:var(--text-accent);font-size:12px;font-weight:600;font-family:var(--font-sans);cursor:pointer;flex-shrink:0;transition:all .15s ease}.qp-add-btn:hover:not(:disabled){background:rgb(var(--c-accent) / .25)}.qp-add-btn:disabled{opacity:.4;cursor:default}.qp-modal-backdrop{position:fixed;inset:0;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:9998;animation:qp-fade-in .2s ease}.qp-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:680px;max-height:85vh;background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:0 16px 40px #0003;display:flex;flex-direction:column;z-index:9999;animation:qp-modal-in .2s ease}.qp-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.qp-modal-title{font-weight:600;font-family:var(--font-sans);color:var(--text-primary);font-size:16px}.qp-modal-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;font-size:18px}.qp-modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.qp-modal-body{padding:16px;overflow-y:auto;flex:1}.qp-modal-actions{margin-bottom:12px}.qp-modal-body .qp-chips{display:flex;flex-direction:column}.qp-modal-backdrop-strong{z-index:10000}.qp-custom-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(92vw,560px);background:var(--bg-primary);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:0 16px 40px #0000003d;display:flex;flex-direction:column;z-index:10001;animation:qp-modal-in .2s ease}.qp-empty{font-size:11px;color:var(--text-tertiary);padding:8px 0;text-align:center;width:100%}.qp-loading{display:flex;flex-direction:column;gap:8px;align-items:center;padding:8px 0}.qp-loading-shimmer{width:200px;height:28px;border-radius:var(--radius-md);background:linear-gradient(90deg,var(--bg-secondary) 0%,var(--bg-hover) 50%,var(--bg-secondary) 100%);background-size:200% 100%;animation:qp-shimmer 1.5s ease-in-out infinite}.qp-loading-shimmer.short{width:140px}@keyframes qp-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:480px){.qp-container{max-width:100%;padding:0 8px}.qp-chips,.qp-modal-body .qp-chips{display:grid;grid-template-columns:1fr 1fr;gap:8px}.qp-chip{padding:12px 10px;font-size:12px;min-height:56px;align-items:center}.qp-chip-label{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}.catchup-page{height:100%;min-height:0;overflow:hidden;overscroll-behavior:none;padding-bottom:0!important;color:var(--text-primary);background:var(--bg-primary)}.catchup-shell{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:calc(10px + var(--top-safe-area, 0px)) 10px calc(16px + var(--tab-bar-offset));box-sizing:border-box;overflow:hidden}.catchup-header,.catchup-panel,.catchup-queue{min-width:0;min-height:0;background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.catchup-header{overflow:visible;position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:3px 5px}.catchup-panel,.catchup-queue{overflow:hidden;position:relative;z-index:1}.catchup-gear-btn,.catchup-more-btn,.catchup-task-check,.catchup-task-remove,.task-detail-check,.task-detail-action-btn,.task-subtask-check{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:999px;cursor:pointer;border:1px solid var(--border-subtle);background:rgb(var(--c-lift) / .06);color:var(--text-primary)}.task-detail-action-btn{border:none;background:transparent;color:var(--text-secondary);font:inherit}.task-detail-action-btn:hover{background:var(--bg-hover)}.task-detail-action-btn.danger:hover{background:rgb(var(--c-error) / .15);color:rgb(var(--c-error))}.catchup-gear-btn,.catchup-task-check,.catchup-task-remove,.task-detail-action-btn{width:24px;height:24px}.catchup-gear-btn{width:32px;height:32px}.catchup-gear-btn.active{background:rgb(var(--c-accent) / .18)}.catchup-more-btn{width:28px;height:28px;color:var(--text-secondary);font-size:16px;line-height:1;transition:background var(--transition-fast),border-color var(--transition-fast)}.catchup-more-btn:hover{background:var(--bg-hover);border-color:var(--border-default);color:var(--text-primary)}.task-detail-check{width:22px;height:22px;background:transparent;color:var(--text-secondary);transition:background var(--transition-fast)}.task-subtask-check{width:18px;height:18px;background:transparent;color:var(--text-secondary);font:inherit}.catchup-card-name,.catchup-artifact-chip span:last-child,.task-detail-title,.task-subtask-title,.task-linked-conv-name,.task-link-picker-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catchup-project-label,.catchup-card-label,.catchup-empty-kicker,.catchup-section-title,.catchup-queue-count,.catchup-queue-topline,.task-detail-section-label{margin:0;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary)}.task-detail-section-label{font-weight:600;letter-spacing:.08em}.catchup-queue-count,.catchup-queue-topline{color:var(--text-primary)}.catchup-queue-count{padding:6px 10px;border-radius:999px;border:1px solid var(--border-subtle);background:rgb(var(--c-lift) / .03)}.catchup-project-label{font-size:12px;letter-spacing:.08em;color:var(--text-primary)}.catchup-artifact-chip,.catchup-backlog-chip,.catchup-action-btn{font:inherit;border:1px solid var(--border-subtle);background:rgb(var(--c-lift) / .04);color:var(--text-primary);border-radius:10px;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast)}.catchup-artifact-chip:hover,.catchup-backlog-chip:hover,.catchup-action-btn:hover{background:var(--bg-hover);border-color:var(--border-default)}.catchup-composer input,.task-subtask-add-form input,.task-link-picker-search,.task-link-picker-create-form input,.task-desc-editor textarea{flex:1;min-width:0;padding:0 8px;border-radius:var(--radius-md);border:1px solid var(--border-default);background:rgb(var(--c-lift) / .04);color:var(--text-primary);font:inherit;font-size:12px}.catchup-composer input{height:38px;padding:0 12px;border-radius:12px;border-color:var(--border-subtle);background:rgb(var(--c-lift) / .05);font-size:13px}.catchup-composer input::placeholder{color:var(--text-secondary)}.task-subtask-add-form input{height:30px}.task-link-picker-search{margin:6px 8px 4px;height:30px;border-color:var(--border-subtle);font-size:11px}.task-link-picker-search::placeholder{color:var(--text-secondary)}.task-link-picker-create-form input{height:28px;font-size:11px}.task-desc-editor textarea{width:100%;min-height:60px;padding:6px 8px;resize:vertical}.task-status-badge,.task-priority-badge{padding:1px 6px;border-radius:999px;font-size:9px;font-weight:600;text-transform:uppercase}.task-priority-badge{padding:1px 5px;font-weight:700}.task-status-badge.status-open{background:rgb(var(--c-lift) / .08);color:var(--text-secondary)}.task-status-badge.status-in-progress{background:rgb(var(--c-accent) / .18);color:rgb(var(--c-accent))}.task-status-badge.status-blocked{background:rgb(var(--c-warning) / .18);color:rgb(var(--c-warning))}.task-status-badge.status-done{background:rgb(var(--c-success) / .18);color:rgb(var(--c-success))}.task-priority-badge.priority-p0{background:rgb(var(--c-error) / .18);color:rgb(var(--c-error))}.task-priority-badge.priority-p1{background:rgb(var(--c-warning) / .18);color:rgb(var(--c-warning))}.task-priority-badge.priority-p2{background:rgb(var(--c-lift) / .1);color:var(--text-secondary)}.task-detail-btn{border:1px solid var(--border-subtle);background:rgb(var(--c-lift) / .06);color:var(--text-primary);padding:4px 10px;border-radius:999px;font:inherit;font-size:10px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.task-detail-btn:hover{background:var(--bg-hover)}.task-detail-btn.secondary{border-color:transparent;background:transparent;color:var(--text-secondary)}.task-detail-btn.ai{background:rgb(var(--c-accent) / .14);color:rgb(var(--c-accent));border-color:rgb(var(--c-accent) / .24)}.task-detail-btn.ai:hover{background:rgb(var(--c-accent) / .22)}.task-detail-btn.run{background:rgb(var(--c-success) / .14);color:rgb(var(--c-success));border-color:rgb(var(--c-success) / .24)}.task-detail-btn.run:hover{background:rgb(var(--c-success) / .22)}.catchup-header-main{min-width:0;flex:1;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px}.catchup-header-copy{min-width:0}.catchup-header-copy-row{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.catchup-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.catchup-project-selector{min-width:0}.catchup-project-selector .model-selector-btn{width:auto;min-width:0;max-width:100%;padding:4px 8px 4px 10px;font-size:10px;border-radius:12px;background:rgb(var(--c-lift) / .04);border-color:var(--border-subtle)}.catchup-project-selector .model-selector-label{max-width:160px}.catchup-project-selector .model-selector-caret{font-size:8px}.catchup-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:2px;width:min(132px,100%);border-radius:999px;background:rgb(var(--c-lift) / .04);border:1px solid var(--border-subtle)}.catchup-tab{border:none;background:transparent;color:var(--text-secondary);padding:4px 6px;border-radius:999px;font:inherit;font-size:9px;line-height:1;min-height:24px;cursor:pointer}.catchup-tab.active{background:rgb(var(--c-accent) / .18);color:var(--text-primary)}.catchup-tab-toggle{display:none;align-items:center;justify-content:center;flex-shrink:0;min-height:32px;padding:0 12px;border:1px solid var(--border-subtle);border-radius:999px;background:rgb(var(--c-lift) / .06);color:var(--text-primary);font:inherit;font-size:11px;font-weight:700;cursor:pointer}.catchup-gear-wrap{position:relative}.catchup-gear-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:10;min-width:168px;padding:6px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-tertiary);box-shadow:var(--shadow-lg)}.catchup-gear-item{width:100%;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);text-align:left;padding:9px 10px;font:inherit;font-size:12px;cursor:pointer}.catchup-gear-item:hover{background:var(--bg-hover)}.catchup-panel{display:flex;flex-direction:column;gap:10px;padding:10px 12px 12px}.catchup-panel-tasks{height:100%;display:flex;flex-direction:column;gap:12px}.catchup-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.catchup-section-note,.catchup-empty-note,.catchup-card-time{margin-top:4px;color:var(--text-secondary);font-size:12px;line-height:1.4}.catchup-queue{height:100%;display:flex;flex-direction:column;gap:6px;padding:2px}.catchup-queue-topline{text-align:center}.catchup-card{flex:1;min-height:0;display:flex;flex-direction:column;gap:8px;padding:6px 12px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-primary)}.catchup-card-enter{animation:catchup-slide-in .28s cubic-bezier(.22,1,.36,1)}@keyframes catchup-slide-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.catchup-card-header{display:flex;align-items:center;gap:10px;min-width:0}.catchup-avatar{width:32px;height:32px;border-radius:var(--radius-md);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgb(var(--c-accent)),var(--accent-hover));font-size:12px;font-weight:700;color:var(--text-on-solid)}.catchup-card-meta{min-width:0;flex:1}.catchup-card-name{font-size:15px;font-weight:700;line-height:1.2;color:var(--text-primary)}.catchup-card-body{flex:1;min-height:0;display:flex}.catchup-chat-shell{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.catchup-chat-thread{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:8px;padding-right:2px;scrollbar-gutter:stable}.chat-surface-smooth .catchup-chat-thread{gap:2px}.catchup-chat-thread .message-body :is(p,ul,ol,blockquote,pre,table,h1,h2,h3,h4,h5,h6){margin-bottom:8px}.catchup-chat-thread .message-body :is(pre,code){white-space:pre-wrap;overflow-wrap:anywhere}.catchup-chat-thread .message-body img{max-width:100%;height:auto}.catchup-more-wrap{position:relative;flex-shrink:0}.catchup-artifacts{display:flex;flex-direction:column;gap:6px}.catchup-artifact-list,.catchup-task-list,.catchup-backlog-list{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.catchup-artifact-chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;padding:6px 9px;font-size:11px}.catchup-compose-stack{display:grid;gap:8px;margin-bottom:6px}.catchup-compose-stack .chat-input-area{width:100%;padding-left:0;padding-right:0;padding-bottom:6px}.catchup-compose-stack .chat-input-wrap{max-width:none}.catchup-send-btn{font:inherit;border:none;border-radius:12px;min-width:36px;height:34px;padding:0 12px;background:var(--accent);color:var(--text-on-solid);cursor:pointer;font-size:12px;font-weight:600}.catchup-send-btn:hover:not(:disabled){background:var(--accent-hover)}.catchup-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.catchup-action-btn{min-width:0;min-height:36px;padding:8px 4px;font-size:14px;font-weight:600;line-height:1;text-align:center;box-shadow:inset 0 1px rgb(var(--c-lift) / .04)}.catchup-action-btn.primary{background:rgb(var(--c-success) / .16);color:#d1fae5;border-color:rgb(var(--c-success) / .24)}.catchup-action-btn.primary:hover{background:rgb(var(--c-success) / .24)}.catchup-task-list{flex:1;min-height:0;overflow:auto;flex-direction:column;align-content:flex-start;padding-right:2px;scrollbar-gutter:stable}.catchup-composer{display:flex;align-items:center;gap:8px}.catchup-composer button{width:38px;height:38px;border-radius:12px;border:1px solid var(--border-subtle);background:rgb(var(--c-accent) / .18);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.catchup-task-item{width:100%;display:flex;align-items:center;gap:8px;padding:8px 9px;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:rgb(var(--c-lift) / .04);min-width:0}.catchup-task-item.done{opacity:.6}.catchup-task-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-size:12px}.catchup-link-btn{font:inherit;border:none;background:transparent;padding:0;color:var(--text-accent);cursor:pointer;font-size:11px;text-align:left}.catchup-backlog{display:flex;flex-direction:column;gap:6px}.catchup-backlog-chip{justify-content:space-between;gap:8px;padding:7px 9px;font-size:11px;min-width:min(100%,220px)}.catchup-empty-state,.catchup-panel.empty{display:grid;place-items:center;text-align:left}.catchup-panel.empty h2{margin:6px 0;font-size:18px;line-height:1.2;color:var(--text-primary)}.catchup-panel.empty p{color:var(--text-secondary)}.catchup-loading-grid{display:grid;gap:8px}.catchup-loading-block{height:68px;border-radius:var(--radius-lg);background:linear-gradient(90deg,rgb(var(--c-lift) / .04),rgb(var(--c-lift) / .09),rgb(var(--c-lift) / .04));background-size:200% 100%;animation:catchup-shimmer 1.6s linear infinite}@keyframes catchup-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}button:disabled{cursor:default;opacity:.45}.task-detail-card{width:100%;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:rgb(var(--c-lift) / .04);transition:border-color var(--transition-fast)}.task-detail-card:hover{border-color:var(--border-default)}.task-detail-card.done{opacity:.55}.task-detail-card.done .task-detail-check{background:rgb(var(--c-success) / .22);color:var(--text-primary);border-color:rgb(var(--c-success) / .4)}.task-detail-card.done .task-detail-title{text-decoration:line-through}.task-detail-header{display:flex;align-items:center;gap:8px;padding:8px 10px;cursor:pointer;min-width:0}.task-detail-info{flex:1;min-width:0}.task-detail-title{font-size:13px;font-weight:600;line-height:1.3;color:var(--text-primary)}.task-detail-meta{display:flex;align-items:center;gap:6px;margin-top:2px;font-size:10px;color:var(--text-secondary)}.task-detail-actions{display:flex;gap:4px;flex-shrink:0}.task-subtask-count,.task-conv-count{font-size:10px;color:var(--text-secondary)}.task-tag-row{display:flex;flex-wrap:wrap;gap:4px;padding:0 10px 6px}.task-tag-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:999px;background:rgb(var(--c-accent) / .12);color:rgb(var(--c-accent));font-size:10px;font-weight:500}.task-tag-remove{border:none;background:transparent;color:inherit;cursor:pointer;padding:0 1px;font-size:12px;line-height:1;opacity:.6}.task-tag-remove:hover{opacity:1}.task-tag-filter-bar{display:flex;flex-wrap:wrap;gap:4px;padding:0 2px}.task-tag-filter-chip{border:1px solid var(--border-subtle);background:transparent;color:var(--text-secondary);padding:3px 10px;border-radius:999px;font:inherit;font-size:10px;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.task-tag-filter-chip.active{background:rgb(var(--c-accent) / .18);color:var(--text-primary);border-color:rgb(var(--c-accent) / .3)}.task-tag-filter-chip:hover:not(.active){background:var(--bg-hover)}.task-detail-body{border-top:1px solid var(--border-subtle);padding:8px 10px 10px;display:flex;flex-direction:column;gap:10px}.task-detail-section{display:flex;flex-direction:column;gap:6px}.task-detail-section-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.task-detail-section-actions{display:flex;gap:4px}.task-detail-desc{font-size:12px;color:var(--text-secondary);cursor:pointer;padding:6px 8px;border-radius:var(--radius-md);border:1px dashed var(--border-subtle);min-height:32px;line-height:1.4}.task-detail-desc:hover{background:rgb(var(--c-lift) / .04)}.task-desc-editor{display:flex;flex-direction:column;gap:6px}.task-desc-editor-actions{display:flex;gap:6px}.task-priority-selector{display:flex;gap:4px}.task-priority-option{border:1px solid var(--border-subtle);background:transparent;color:var(--text-secondary);padding:3px 10px;border-radius:999px;font:inherit;font-size:10px;font-weight:600;cursor:pointer}.task-priority-option.active{border-color:rgb(var(--c-accent) / .4);background:rgb(var(--c-accent) / .14);color:rgb(var(--c-accent))}.task-subtask-item{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:rgb(var(--c-lift) / .02)}.task-subtask-item.status-done{opacity:.5}.task-subtask-item.status-done .task-subtask-title{text-decoration:line-through}.task-subtask-item.status-in-progress{border-color:rgb(var(--c-accent) / .3)}.task-subtask-item.status-failed{border-color:rgb(var(--c-error) / .3)}.task-subtask-item.status-done .task-subtask-check{background:rgb(var(--c-success) / .22);border-color:rgb(var(--c-success) / .4)}.task-subtask-info{flex:1;min-width:0;display:flex;align-items:center;gap:6px}.task-subtask-title{font-size:12px;color:var(--text-primary)}.task-subtask-conv-link{border:none;background:transparent;color:var(--text-accent);font:inherit;font-size:10px;cursor:pointer;padding:0;flex-shrink:0}.task-subtask-add-form{display:flex;gap:6px}.task-linked-convs{display:flex;flex-direction:column;gap:4px}.task-linked-conv-chip{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:5px 8px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:rgb(var(--c-lift) / .03);cursor:pointer;font:inherit;text-align:left;color:var(--text-primary)}.task-linked-conv-chip:hover{background:var(--bg-hover)}.task-linked-conv-name{font-size:11px}.task-linked-conv-time{font-size:10px;color:var(--text-secondary);flex-shrink:0}.catchup-action-link-wrap{position:relative}.task-link-picker{position:absolute;top:calc(100% + 8px);right:0;z-index:30;width:260px;max-height:320px;display:flex;flex-direction:column;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--bg-tertiary);box-shadow:var(--shadow-lg);overflow:hidden}.task-link-picker-header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;font-size:11px;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-subtle)}.task-link-picker-close{border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:16px;padding:0;line-height:1}.task-link-picker-list{flex:1;min-height:0;overflow:auto;padding:4px 6px}.task-link-picker-empty{padding:16px;text-align:center;font-size:11px;color:var(--text-secondary)}.task-link-picker-item{width:100%;display:flex;align-items:center;gap:6px;padding:6px 8px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);text-align:left;font:inherit;font-size:12px;cursor:pointer}.task-link-picker-item:hover{background:var(--bg-hover)}.task-link-picker-item-title{flex:1;min-width:0}.task-status-dot{width:7px;height:7px;border-radius:999px;flex-shrink:0}.task-status-dot.status-open{background:var(--text-secondary)}.task-status-dot.status-in-progress{background:rgb(var(--c-accent))}.task-status-dot.status-blocked{background:rgb(var(--c-warning))}.task-link-picker-footer{border-top:1px solid var(--border-subtle);padding:6px 8px}.task-link-picker-create-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:4px;padding:6px;border:1px dashed var(--border-subtle);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);font:inherit;font-size:11px;cursor:pointer}.task-link-picker-create-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.task-link-picker-create-form{display:flex;gap:6px}@media(max-width:640px){.catchup-shell{padding-left:8px;padding-right:8px;gap:8px}.catchup-header{align-items:flex-start;flex-direction:column}.catchup-header-main{width:100%;grid-template-columns:minmax(0,1fr) auto}.catchup-tab-toggle{display:inline-flex}.catchup-tabs{display:none}.catchup-panel,.catchup-queue{padding-left:10px;padding-right:10px}.catchup-header-copy-row{align-items:flex-start}.catchup-chat-thread{padding-right:0}.catchup-actions{gap:6px}.catchup-action-btn{min-height:52px;padding:10px 6px;font-size:15px}.catchup-artifact-chip,.catchup-backlog-chip{padding:6px 8px;font-size:10px}.catchup-card-name{font-size:14px}.catchup-message-preview{font-size:13px}}.runtime-page{display:flex;flex-direction:column;gap:10px;min-height:0;height:100%;overflow-y:auto;overflow-x:hidden;padding:12px;box-sizing:border-box;background:radial-gradient(circle at top left,rgb(var(--c-accent) / .11),transparent 32%),radial-gradient(circle at top right,rgb(var(--c-success) / .08),transparent 28%)}.runtime-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-shrink:0}.runtime-page-heading{display:flex;flex-direction:column;gap:4px;min-width:0}.runtime-page-title{font-size:20px;font-weight:800;color:var(--text-primary);letter-spacing:-.02em}.runtime-page-subtitle{font-size:12px;line-height:1.45;color:var(--text-tertiary);max-width:42rem}.runtime-page-refresh{border:1px solid var(--border-default);border-radius:999px;background:var(--bg-surface);color:var(--text-secondary);font-size:12px;font-weight:700;padding:7px 11px;cursor:pointer;flex-shrink:0}.runtime-page-refresh:disabled{opacity:.6;cursor:not-allowed}.runtime-page-error{border:1px solid rgb(var(--c-error) / .25);background:rgb(var(--c-error) / .08);color:rgb(var(--c-error));border-radius:12px;padding:10px 12px;font-size:12px}.runtime-runtime-strip{display:flex;gap:8px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px;flex-shrink:0}.runtime-runtime-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border-subtle);background:#ffffff0a;color:var(--text-secondary);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700;white-space:nowrap}.runtime-runtime-pill.active{background:rgb(var(--c-accent) / .14);border-color:rgb(var(--c-accent) / .24);color:var(--text-primary)}.runtime-runtime-dot{width:8px;height:8px;border-radius:999px;background:rgb(var(--c-warning, 245 158 11) / .4)}.runtime-runtime-dot.auth-configured,.runtime-runtime-dot.auth-not-required{background:rgb(var(--c-success) / .7)}.runtime-runtime-dot.auth-missing{background:rgb(var(--c-error) / .72)}.runtime-page-loading{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:13px;text-align:center;padding:24px 12px}.runtime-page-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:10px;overflow:visible}.runtime-section{min-height:0;display:flex;flex-direction:column;gap:10px}.runtime-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-shrink:0}.runtime-section-title{font-size:15px;font-weight:800;color:var(--text-primary)}.runtime-section-subtitle{margin-top:3px;font-size:11px;line-height:1.45;color:var(--text-tertiary)}.runtime-overview,.runtime-sessions{min-width:0}.runtime-card{min-height:0;overflow:visible}.runtime-output-panel{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:12px;border:1px solid var(--border-subtle);background:#ffffff06}.runtime-output-copy{font-size:12px;line-height:1.45;color:var(--text-secondary)}.runtime-response-stack{display:flex;flex-direction:column;gap:10px}.runtime-launch-btn,.runtime-cancel-btn{align-self:stretch}.runtime-page .runtime-card.agent-runtime-launch-panel{min-height:26rem}.runtime-page .runtime-card.agent-runtime-launch-panel .agent-runtime-textarea{min-height:128px}.runtime-selected-task{flex-shrink:0}.runtime-task-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--text-tertiary)}.runtime-task-mono{font-family:var(--font-mono)}.runtime-selected-task-actions{display:flex;gap:8px;flex-wrap:wrap}.runtime-session-list{display:flex;flex-direction:column;gap:16px;min-height:0;padding-right:2px}.runtime-session-group{display:flex;flex-direction:column;gap:8px}.runtime-session-group-header{display:flex;align-items:center;gap:8px;padding:0 4px}.runtime-session-group-title{font-size:13px;font-weight:700;color:var(--text-secondary)}.runtime-session-group-items{display:flex;flex-direction:column;gap:8px}.runtime-session-spinner{color:rgb(var(--c-accent));flex-shrink:0}.runtime-session-row{border:1px solid var(--border-subtle);background:#ffffff08;border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:6px;color:inherit;text-align:left}.runtime-session-row.active{border-color:rgb(var(--c-accent) / .26);background:rgb(var(--c-accent) / .08)}.runtime-session-row-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.runtime-session-row-title{font-size:12px;font-weight:700;color:var(--text-primary);line-height:1.4}.runtime-session-row-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--text-tertiary)}@media(max-width:860px){.runtime-page-body{grid-template-columns:1fr}.runtime-page-header{display:flex;flex-direction:column}.runtime-page-refresh{align-self:flex-start}.runtime-page-body{overflow:auto}}.cloud-page{height:100%;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:0 0 calc(12px + var(--tab-bar-offset)) 0}.cloud-header{display:flex;align-items:center;justify-content:space-between;padding:12px 12px 8px;position:sticky;top:0;z-index:10;background:var(--bg-primary)}.cloud-header-title{display:flex;align-items:center;gap:10px}.cloud-header-icon{font-size:22px;line-height:1}.cloud-header h1{font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.cloud-header-actions{display:flex;gap:6px}.cloud-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border-radius:var(--radius-md);border:none;font-size:13px;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.cloud-btn:disabled{opacity:.5;cursor:not-allowed}.cloud-btn-ghost{background:transparent;color:var(--text-secondary);padding:8px;font-size:16px}.cloud-btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.cloud-btn-primary{background:rgb(var(--c-accent));color:var(--text-on-solid)}.cloud-btn-primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 0 12px rgba(var(--c-accent),.3)}.cloud-btn-success{background:rgba(var(--c-success),.15);color:rgb(var(--c-success));min-width:40px}.cloud-btn-success:hover:not(:disabled){background:rgba(var(--c-success),.25)}.cloud-btn-warning{background:rgba(var(--c-warning),.15);color:rgb(var(--c-warning));min-width:40px}.cloud-btn-warning:hover:not(:disabled){background:rgba(var(--c-warning),.25)}.cloud-btn-danger{background:rgba(var(--c-error),.12);color:rgb(var(--c-error))}.cloud-btn-danger:hover:not(:disabled){background:rgba(var(--c-error),.2)}.cloud-btn-danger-text{background:none;border:none;color:rgb(var(--c-error));padding:4px 0;font-size:12px;cursor:pointer;opacity:.7}.cloud-btn-danger-text:hover{opacity:1}.cloud-btn-outline{background:transparent;border:1px solid var(--border-subtle);color:var(--text-secondary);text-decoration:none;font-size:12px;padding:6px 10px}.cloud-btn-outline:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-default)}.cloud-error{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 12px;padding:10px 14px;background:rgba(var(--c-error),.1);border:1px solid rgba(var(--c-error),.25);border-radius:var(--radius-md);color:rgb(var(--c-error));font-size:13px}.cloud-error-dismiss{background:none;border:none;color:rgb(var(--c-error));cursor:pointer;padding:2px 6px;font-size:14px;opacity:.7}.cloud-error-dismiss:hover{opacity:1}.cloud-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:12px;margin:0 12px}.cloud-api-key-card{margin:10px 12px}.cloud-api-key-card h3{font-size:15px;font-weight:600;margin-bottom:6px;color:var(--text-primary)}.cloud-hint{font-size:12px;color:var(--text-tertiary);margin-bottom:10px}.cloud-hint a{color:var(--text-accent);text-decoration:none}.cloud-hint a:hover{text-decoration:underline}.cloud-key-input-row{display:flex;gap:8px}.cloud-input{flex:1;padding:10px 12px;background:var(--bg-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-mono);font-size:13px;outline:none;transition:border-color var(--transition-fast)}.cloud-input:focus{border-color:rgb(var(--c-accent))}.cloud-input::placeholder{color:var(--text-tertiary)}.cloud-section{padding:8px 12px}.cloud-section-title{font-size:14px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;display:flex;align-items:center;gap:8px}.cloud-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:rgba(var(--c-accent),.15);color:rgb(var(--c-accent));border-radius:10px;font-size:11px;font-weight:700}.cloud-deploy-btn{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;background:linear-gradient(135deg,rgba(var(--c-accent),.08),rgba(var(--c-success),.06));border:1px solid rgba(var(--c-accent),.2);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);text-align:left}.cloud-deploy-btn:hover{background:linear-gradient(135deg,rgba(var(--c-accent),.14),rgba(var(--c-success),.1));border-color:rgba(var(--c-accent),.35);box-shadow:0 0 20px rgba(var(--c-accent),.08)}.cloud-deploy-icon{font-size:24px;line-height:1}.cloud-deploy-text{flex:1;display:flex;flex-direction:column}.cloud-deploy-text strong{font-size:14px;color:var(--text-primary);font-weight:600}.cloud-deploy-sub{font-size:12px;color:var(--text-tertiary)}.cloud-deploy-chevron{color:var(--text-tertiary);font-size:12px}.cloud-deploy-options{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding:10px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);animation:cloud-slide-in .2s ease}@keyframes cloud-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.cloud-preset-btn{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left}.cloud-preset-btn:hover:not(:disabled){background:var(--bg-hover);border-color:rgba(var(--c-accent),.3)}.cloud-preset-btn:disabled{opacity:.6;cursor:wait}.cloud-preset-icon{font-size:20px;line-height:1}.cloud-preset-info{display:flex;flex-direction:column;flex:1}.cloud-preset-info strong{font-size:13px;color:var(--text-primary);font-weight:600}.cloud-preset-detail{font-size:11px;color:var(--text-tertiary)}.cloud-spinner{width:16px;height:16px;border:2px solid var(--border-subtle);border-top-color:rgb(var(--c-accent));border-radius:50%;animation:cloud-spin .8s linear infinite}@keyframes cloud-spin{to{transform:rotate(360deg)}}.cloud-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 16px;text-align:center}.cloud-empty-icon{font-size:36px;opacity:.5}.cloud-empty p{font-size:14px;color:var(--text-secondary)}.cloud-pod-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);margin-bottom:8px;overflow:hidden;transition:all var(--transition-fast)}.cloud-pod-card:hover{border-color:var(--border-default)}.cloud-pod-running{border-left:3px solid rgb(var(--c-success))}.cloud-pod-stopped{border-left:3px solid var(--border-subtle)}.cloud-pod-main{display:flex;align-items:center;gap:10px;padding:12px 12px 12px 10px;cursor:pointer;user-select:none;-webkit-user-select:none}.cloud-pod-status{flex-shrink:0}.cloud-pod-status-icon{font-size:14px}.cloud-pod-info{flex:1;min-width:0}.cloud-pod-name{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cloud-pod-meta{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-tertiary);flex-wrap:wrap}.cloud-pod-sep{opacity:.4}.cloud-pod-actions{flex-shrink:0}.cloud-pod-details{padding:0 12px 12px;border-top:1px solid var(--border-subtle);animation:cloud-slide-in .2s ease}.cloud-pod-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.cloud-pod-detail-item{display:flex;flex-direction:column;gap:2px}.cloud-pod-detail-label{font-size:10px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.cloud-pod-detail-value{font-size:12px;color:var(--text-secondary)}.cloud-mono{font-family:var(--font-mono);font-size:11px}.cloud-pod-gpu-section{margin-top:10px}.cloud-pod-gpu-bar-row{display:flex;align-items:center;gap:8px;margin-top:6px}.cloud-pod-gpu-bar{flex:1;height:6px;background:var(--bg-primary);border-radius:3px;overflow:hidden}.cloud-pod-gpu-bar-fill{height:100%;background:linear-gradient(90deg,rgb(var(--c-success)),rgb(var(--c-accent)));border-radius:3px;transition:width .5s ease}.cloud-pod-gpu-pct{font-size:11px;color:var(--text-tertiary);font-family:var(--font-mono);min-width:32px;text-align:right}.cloud-pod-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.cloud-pod-danger{margin-top:10px;padding-top:8px;border-top:1px solid rgba(var(--c-error),.15)}.cloud-modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:cloud-fade-in .15s ease-out}@keyframes cloud-fade-in{0%{opacity:0}to{opacity:1}}.cloud-modal{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003;transform:translateY(0);animation:cloud-slide-up .2s cubic-bezier(.16,1,.3,1)}@keyframes cloud-slide-up{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cloud-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-subtle)}.cloud-modal-header h2{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.cloud-modal-close{background:transparent;border:none;font-size:18px;color:var(--text-tertiary);cursor:pointer;padding:4px}.cloud-modal-close:hover{color:var(--text-primary)}.cloud-modal-body{padding:16px;overflow:hidden}.cloud-modal-footer{padding:14px 16px;border-top:1px solid var(--border-subtle);background:var(--bg-primary);border-bottom-left-radius:var(--radius-xl);border-bottom-right-radius:var(--radius-xl)}.cloud-input-group{display:flex;flex-direction:column;gap:6px}.cloud-input-group label{font-size:12px;font-weight:500;color:var(--text-secondary)}.cloud-input-group .cloud-input{width:100%;box-sizing:border-box}.jimmy-chat-page{display:flex;flex-direction:column;height:100%;background:var(--bg-primary, #0d0d0d);color:var(--text-primary, #e8e8e8);overflow:hidden}.jimmy-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06);background:#ffffff05;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);flex-shrink:0}.jimmy-toolbar-title{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;letter-spacing:-.3px}.jimmy-logo{font-size:20px}.jimmy-model-badge{font-size:10px;font-weight:500;padding:2px 7px;border-radius:6px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;text-transform:uppercase;letter-spacing:.5px}.jimmy-toolbar-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:8px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;transition:background .15s,transform .1s}.jimmy-toolbar-btn:active{transform:scale(.92);background:#ffffff1a}.jimmy-settings-panel{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.06);background:#ffffff05;animation:jimmySlideDown .2s ease}@keyframes jimmySlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.jimmy-settings-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:#fff6;margin-bottom:6px}.jimmy-settings-textarea{width:100%;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:inherit;font-family:inherit;font-size:13px;padding:8px 10px;resize:vertical;box-sizing:border-box;transition:border-color .15s}.jimmy-settings-textarea:focus{outline:none;border-color:#6366f1}.jimmy-messages{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 12px;scroll-behavior:smooth}.jimmy-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px;opacity:.6}.jimmy-empty-icon{font-size:52px;animation:jimmyFloat 3s ease-in-out infinite}@keyframes jimmyFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.jimmy-empty-title{font-size:18px;font-weight:600}.jimmy-empty-desc{font-size:13px;color:#fff6}.jimmy-msg{display:flex;gap:10px;margin-bottom:16px;animation:jimmyFadeIn .25s ease}@keyframes jimmyFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.jimmy-msg-avatar{flex-shrink:0;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;background:#ffffff0f;margin-top:2px}.jimmy-msg-user .jimmy-msg-avatar{background:linear-gradient(135deg,#3b82f6,#2563eb)}.jimmy-msg-assistant .jimmy-msg-avatar{background:linear-gradient(135deg,#6366f1,#8b5cf6)}.jimmy-msg-body{flex:1;min-width:0}.jimmy-msg-content{font-size:14px;line-height:1.55;white-space:pre-wrap;word-break:break-word;padding:10px 14px;border-radius:14px;max-width:92%}.jimmy-msg-user .jimmy-msg-content{background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;border-bottom-left-radius:4px}.jimmy-msg-assistant .jimmy-msg-content{background:#ffffff0f;border-bottom-left-radius:4px}.jimmy-msg-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px;padding-left:4px;font-size:11px;color:#ffffff59}.jimmy-msg-stats span{display:inline-flex;align-items:center;gap:3px;cursor:default;transition:color .15s}.jimmy-msg-stats span:hover{color:#fff9}.jimmy-typing{display:inline-flex;align-items:center;gap:4px;padding:4px 0}.jimmy-dot{width:6px;height:6px;border-radius:50%;background:#ffffff4d;animation:jimmyBounce 1.2s ease-in-out infinite}.jimmy-dot:nth-child(2){animation-delay:.15s}.jimmy-dot:nth-child(3){animation-delay:.3s}@keyframes jimmyBounce{0%,60%,to{transform:translateY(0);opacity:.3}30%{transform:translateY(-6px);opacity:1}}.jimmy-error{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:#ef444426;border-top:1px solid rgba(239,68,68,.25);color:#f87171;font-size:13px;flex-shrink:0}.jimmy-error button{background:none;border:none;color:inherit;font-size:16px;cursor:pointer;padding:0 4px;opacity:.6;transition:opacity .15s}.jimmy-error button:hover{opacity:1}.jimmy-input-area{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;padding-bottom:max(10px,env(safe-area-inset-bottom,0px));border-top:1px solid rgba(255,255,255,.06);background:#ffffff05;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);flex-shrink:0}.jimmy-input{flex:1;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:inherit;font-family:inherit;font-size:14px;padding:10px 14px;resize:none;overflow-y:auto;max-height:160px;line-height:1.4;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.jimmy-input::placeholder{color:#ffffff40}.jimmy-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.jimmy-input:disabled{opacity:.5}.jimmy-send-btn{width:38px;height:38px;border-radius:50%;border:none;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:18px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .15s,transform .1s}.jimmy-send-btn:disabled{opacity:.3;cursor:default}.jimmy-send-btn:not(:disabled):active{transform:scale(.9)}.jimmy-send-btn.jimmy-stop{background:linear-gradient(135deg,#ef4444,#dc2626);font-size:14px}@media(max-width:768px){:root{--sidebar-width: 240px}}@media(max-width:480px){:root{--sidebar-width: 80vw;--header-height: 44px}.sidebar{position:fixed;top:0;left:0;bottom:0;z-index:900;width:80vw;min-width:80vw;max-width:320px;background:var(--bg-secondary);border-right:1px solid var(--border-subtle);transform:translate(0);transition:transform .25s cubic-bezier(.4,0,.2,1)}.chat-sidebar-shell{width:0!important;flex:0 0 0}.sidebar.sidebar-collapsed{width:80vw;min-width:80vw;max-width:320px;transform:translate(-100%);pointer-events:none}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:899;background:#00000080;animation:fade-in .2s ease-out}.sidebar-collapsed .sidebar-collapsed-icons,.sidebar-collapsed .sidebar-collapsed-bottom,.sidebar-resize-handle{display:none}.mobile-menu-btn{display:flex}.main-header{padding:var(--top-safe-area, 0px) 12px 0;gap:8px}.main-header-title{font-size:13px}.chat-area{padding:8px 0;gap:4px}.chat-area-inner{padding:0 12px;gap:4px}.message-body{padding:4px 10px;font-size:max(var(--msg-font-size, 13.5px),14px);line-height:1.55}.message.user .message-body{max-width:85%}.message-body pre{padding:8px 10px;font-size:11px;margin:6px -4px;border-radius:var(--radius-sm)}.message-body code{font-size:11px;padding:1px 4px}.message-body h1{font-size:16px}.message-body h2{font-size:14px}.message-body h3{font-size:13px}.message-body h4{font-size:12px}.message-body table{font-size:11px;display:block;overflow-x:auto}.message-body th,.message-body td{padding:4px 6px}.message-body img{max-height:250px}.message-media-thumb{max-width:140px;max-height:140px}.msg-actions{user-select:none;-webkit-user-select:none;touch-action:manipulation;position:relative;z-index:1;margin-top:0;justify-content:flex-start}.msg-timestamp{order:99;margin-right:0;margin-left:auto}.msg-action-btn{width:24px;height:24px;min-width:24px;min-height:24px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.scroll-to-bottom-btn{display:flex;position:sticky;bottom:4px;width:40px;height:40px;min-width:40px;min-height:40px;max-width:40px;max-height:40px;margin:-40px 12px 0 auto;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:#1e2128f2;color:var(--text-secondary);font-size:18px;line-height:1;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 12px #0006;z-index:10;padding:0;animation:fade-in .15s ease-out}.chat-input-area{padding:6px 10px 12px}.model-selector-btn{width:var(--model-selector-width, 140px);min-width:0;max-width:var(--model-selector-width, 140px);padding:5px 8px 5px 10px;font-size:11px}.chat-input-wrap{padding:10px 10px 8px;border-radius:var(--radius-md);gap:10px}.chat-input{font-size:14px;max-height:120px}.step-card-header{font-size:11px;gap:6px}.step-card-command{font-size:11px}.step-card-output{padding:8px 10px;font-size:10px;max-height:200px}.step-card-cwd{font-size:9px;padding:0 10px 4px}.step-card-file{font-size:10px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.diff-content{max-height:250px;font-size:10px}.diff-file-header{font-size:10px;padding:4px 10px}.diff-line{padding:0 8px}.thinking-content{font-size:11px;max-height:250px;padding:6px 8px}.chat-empty-text{font-size:14px}.chat-empty-icon svg{width:36px;height:36px}.chat-empty .model-selector-btn{font-size:14px;padding:12px 16px 12px 18px;min-width:180px;max-width:260px}.chat-empty .model-option{padding:12px 14px;font-size:14px}.search-modal{width:95vw;max-height:80vh;border-radius:var(--radius-md)}.search-modal-overlay{padding-top:8vh}.modal-card{padding:24px 20px;max-width:92vw}.modal-icon{font-size:28px;margin-bottom:8px}.modal-title{font-size:16px}.modal-body{font-size:13px}.modal-actions{flex-direction:column;gap:8px}.modal-btn{width:100%;padding:10px 16px}.model-selector-dropdown{min-width:180px}.model-option{padding:6px 10px;font-size:12px}.model-option-meta{font-size:10px}.sidebar-item{padding:12px 14px;gap:8px}.workspace-group-items .sidebar-item{padding:10px 14px}.sidebar-item-title{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;line-height:1.35}.sidebar-item-right{gap:6px}.sidebar-item-menu-btn,.sidebar-item:hover .sidebar-item-menu-btn,.sidebar-item:focus-within .sidebar-item-menu-btn{display:none}.sidebar-action-btn{padding:10px 12px}.chat-send-btn,.chat-stop-btn{width:var(--icon-btn-width, 32px);height:var(--icon-btn-height, 32px);font-size:18px;border-radius:var(--radius-md)}.attachment-previews{margin-bottom:4px;gap:6px}.attachment-thumb{width:52px;height:52px}.attachment-remove{opacity:1}}
