:root{--background: #F1F2F5;--foreground: #23293A;--card: #FAFAFB;--card-foreground: #23293A;--surface: #FAFAFB;--surface-2: #F5F6F8;--surface-hover: #EDEFF3;--muted: #F5F6F8;--muted-foreground: #545C6B;--subtle-foreground: #757D8B;--accent: #EDEFF3;--border: #E1E3E8;--border-strong: #C9CDD6;--ring: #3B72D9;--radius: .625rem;--primary: #2563EB;--primary-foreground: #FFFFFF;--primary-soft: #EEF3FE;--primary-ink: #1D4ED8;--agent: #7C3AED;--agent-soft: #F3EEFE;--agent-ink: #6023D1;--success: #059669;--success-soft: #E7F6F0;--success-ink: #046B4E;--warning: #B45309;--warning-soft: #FBF1E2;--warning-ink: #8A3D07;--danger: #DC2626;--danger-soft: #FCECEC;--danger-ink: #B01B1B;--info: #0369A1;--info-soft: #E9F3FA;--info-ink: #075985;--sh-1: 0 1px 2px rgba(16, 24, 40, .06);--sh-2: 0 12px 32px rgba(16, 24, 40, .14);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", monospace;--bg-main: var(--background);--bg-card: var(--card);--bg-card-hover: var(--accent);--bg-surface: var(--card);--bg-surface-translucent: var(--card);--bg-input: var(--card);--bg-column: var(--background);--border-color: var(--border);--text-primary: var(--foreground);--text-secondary: var(--muted-foreground);--text-muted: var(--subtle-foreground);--accent-primary: var(--primary);--accent-agent: var(--agent);--accent-success: var(--success);--accent-warning: var(--warning);--accent-danger: var(--danger)}.dark,[data-t=dark]{--background: #0F141D;--foreground: #D2D9E5;--card: #161D2A;--card-foreground: #D2D9E5;--surface: #161D2A;--surface-2: #131926;--surface-hover: #1B2330;--muted: #131926;--muted-foreground: #8D98A9;--subtle-foreground: #6E7889;--accent: #1B2330;--border: #232B3A;--border-strong: #313A4C;--ring: #4B86E8;--primary: #3B82F6;--primary-foreground: #FFFFFF;--primary-soft: #13243F;--primary-ink: #9CC4FB;--agent: #8B5CF6;--agent-soft: #1D183A;--agent-ink: #C9B8FD;--success: #34D399;--success-soft: #0E2A22;--success-ink: #77E7B6;--warning: #FBBF24;--warning-soft: #2A210D;--warning-ink: #FBD164;--danger: #F87171;--danger-soft: #2C1517;--danger-ink: #FCA5A5;--info: #60A5FA;--info-soft: #12203A;--info-ink: #9CC4FB;--sh-1: 0 1px 2px rgba(0, 0, 0, .45);--sh-2: 0 12px 32px rgba(0, 0, 0, .55);--bg-main: var(--background);--bg-card: var(--card);--bg-card-hover: var(--accent);--bg-surface: var(--card);--bg-surface-translucent: var(--card);--bg-input: var(--surface-2);--bg-column: var(--background);--border-color: var(--border);--text-primary: var(--foreground);--text-secondary: var(--muted-foreground);--text-muted: var(--subtle-foreground);--accent-primary: var(--primary);--accent-agent: var(--agent);--accent-success: var(--success);--accent-warning: var(--warning);--accent-danger: var(--danger)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--background);color:var(--foreground);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}@keyframes rail{0%{transform:translate(-100%)}to{transform:translate(340%)}}@keyframes blip{0%,to{opacity:1}50%{opacity:.28}}@keyframes livedot{0%,to{opacity:1}50%{opacity:.3}}@keyframes caret{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes skel{0%,to{opacity:.5}50%{opacity:.9}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.app-header{height:64px;background:var(--background);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:50;gap:12px}.brand-section{display:flex;align-items:center;gap:10px;min-width:0}.brand-logo-icon{width:26px;height:26px;border-radius:8px;background:var(--primary);color:var(--primary-foreground);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:13px;font-weight:700;flex-shrink:0}.brand-title{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;letter-spacing:-.01em;white-space:nowrap}.header-divider{width:1px;height:22px;background:var(--border);margin:0 2px}.workspace-selector-btn{display:flex;align-items:center;gap:8px;height:30px;padding:0 8px 0 9px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--foreground);font-size:12.5px;font-weight:500;cursor:pointer;transition:border-color .15s ease,background .15s ease}.workspace-selector-btn:hover{border-color:var(--border-strong);background:var(--surface-hover)}.workspace-role-badge{font-family:var(--font-mono);font-size:9.5px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-foreground);background:var(--surface-hover);border-radius:4px;padding:2px 5px}.realtime-status-pill{display:flex;align-items:center;gap:6px;height:26px;padding:0 8px;border-radius:7px;background:var(--muted);border:1px solid var(--border);font-family:var(--font-mono);font-size:10.5px;color:var(--muted-foreground);cursor:pointer}.realtime-status-dot{width:6px;height:6px;border-radius:9px;background:var(--success);animation:livedot 1.6s ease-in-out infinite}.realtime-status-dot.offline{background:var(--danger);animation:none}.realtime-status-dot.connecting{background:var(--warning)}.header-actions{display:flex;align-items:center;gap:8px}.board-toolbar{height:48px;background:var(--background);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;padding:0 16px;flex-shrink:0;overflow-x:auto}.search-input-box{display:flex;align-items:center;gap:7px;width:264px;height:30px;padding:0 8px 0 9px;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--foreground);font-size:12.5px;transition:border-color .15s ease,box-shadow .15s ease}.search-input-box:focus-within{border-color:var(--ring);box-shadow:0 0 0 3px var(--primary-soft)}.search-input-box input{background:transparent;border:none;outline:none;color:var(--foreground);font-size:12.5px;width:100%}.search-input-box input::placeholder{color:var(--subtle-foreground)}.kbd-shortcut{font-family:var(--font-mono);font-size:10px;color:var(--subtle-foreground);border:1px solid var(--border);border-radius:4px;padding:1px 5px;line-height:1.2}.filter-chips-group{display:flex;align-items:center;gap:6px}.filter-chip{display:flex;align-items:center;gap:6px;height:28px;padding:0 8px 0 9px;border-radius:8px;font-size:12px;font-weight:500;cursor:pointer;border:1px solid var(--border);background:var(--card);color:var(--muted-foreground);transition:all .15s ease;white-space:nowrap}.filter-chip:hover{background:var(--surface-hover);color:var(--foreground)}.filter-chip.active{border-color:var(--border-strong);background:var(--surface-hover);color:var(--foreground);box-shadow:var(--sh-1)}.chip-count-badge{font-family:var(--font-mono);font-size:10px;color:var(--subtle-foreground);background:var(--muted);border-radius:4px;padding:1px 5px}.view-mode-toggle{margin-left:auto;display:flex;align-items:center;gap:2px;padding:2px;border:1px solid var(--border);border-radius:9px;background:var(--muted);flex-shrink:0}.view-mode-btn{height:24px;display:flex;align-items:center;gap:5px;padding:0 10px;border-radius:7px;font-size:12px;cursor:pointer;border:1px solid transparent;background:transparent;color:var(--muted-foreground);font-weight:500;transition:all .15s ease}.view-mode-btn:hover{color:var(--foreground)}.view-mode-btn.active{background:var(--card);border-color:var(--border);box-shadow:var(--sh-1);font-weight:600;color:var(--foreground)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 12px;border-radius:8px;font-size:12.5px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease;white-space:nowrap;outline:none}.btn:focus-visible{border-color:var(--ring);box-shadow:0 0 0 3px var(--primary-soft)}.btn:disabled{background:var(--accent)!important;color:var(--muted-foreground)!important;border-color:transparent!important;cursor:not-allowed;box-shadow:none!important;opacity:.7}.btn-primary{background:var(--primary);color:var(--primary-foreground);font-weight:600}.btn-primary:hover:not(:disabled){filter:brightness(1.08)}.btn-secondary{background:var(--card);border:1px solid var(--border);color:var(--foreground)}.btn-secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-strong)}.btn-agent{background:var(--agent);color:#fff;font-weight:600}.btn-agent:hover:not(:disabled){filter:brightness(1.08)}.btn-ghost{background:transparent;color:var(--muted-foreground)}.btn-ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--foreground)}.btn-danger{background:var(--danger-soft);color:var(--danger-ink);border:1px solid var(--danger);font-weight:600}.btn-danger:hover:not(:disabled){filter:brightness(.95)}.btn-icon{width:32px;height:32px;padding:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--card);border:1px solid var(--border);color:var(--muted-foreground);cursor:pointer;transition:all .12s ease}.btn-icon:hover:not(:disabled){background:var(--surface-hover);color:var(--foreground);border-color:var(--border-strong)}.kanban-board-container{flex:1;display:flex;align-items:flex-start;gap:12px;padding:14px 16px;overflow-x:auto;min-height:calc(100vh - 112px)}.kanban-column{width:280px;min-width:268px;max-width:320px;flex-shrink:0;display:flex;flex-direction:column;gap:8px;padding:8px;border-radius:12px;border:1px solid var(--border);background:var(--background);transition:border-color .15s ease,background .15s ease}.kanban-column.drag-over{border:1px dashed var(--primary);background:var(--muted)}.column-header{display:flex;align-items:center;gap:7px;height:26px;padding:0 3px}.column-color-dot{width:8px;height:8px;border-radius:9px;flex-shrink:0}.column-title-text{font-size:12.5px;font-weight:600;color:var(--foreground);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.column-count-badge{font-family:var(--font-mono);font-size:10.5px;color:var(--subtle-foreground);background:var(--muted);border:1px solid var(--border);border-radius:5px;padding:1px 5px;line-height:1}.column-auto-badge{margin-left:auto;display:flex;align-items:center;gap:4px;height:20px;padding:0 6px;border-radius:6px;background:var(--agent-soft);color:var(--agent-ink);font-family:var(--font-mono);font-size:9.5px;font-weight:600;letter-spacing:.04em}.column-cards-list{display:flex;flex-direction:column;gap:8px;min-height:48px}.column-empty-state{padding:24px 12px;text-align:center;color:var(--subtle-foreground);font-size:11.5px;border:1px dashed var(--border-strong);border-radius:8px}.column-add-btn{width:100%;height:30px;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:8px;border:1px solid var(--border);background:var(--card);color:var(--foreground);font-size:12px;font-weight:500;cursor:pointer;transition:all .12s ease}.column-add-btn:hover{background:var(--surface-hover);border-color:var(--border-strong)}article.card,.kanban-card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:7px;padding:10px 11px;border-radius:10px;background:var(--card);border:1px solid var(--border);box-shadow:none;cursor:pointer;transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}article.card:hover,.kanban-card:hover{background:var(--surface-hover);border-color:var(--border-strong);box-shadow:var(--sh-1)}article.card.dragging,.kanban-card.dragging{background:transparent!important;border:1px dashed var(--border-strong)!important;opacity:.45!important;box-shadow:none!important}.card-accent-left{position:absolute;left:0;top:0;bottom:0;width:2px;z-index:2}.card-accent-left.running{background:var(--agent)}.card-accent-left.waiting_input{background:var(--warning)}.card-rail-top{position:absolute;left:0;right:0;top:0;height:2px;background:var(--agent-soft);overflow:hidden;z-index:2}.card-rail-inner{position:absolute;top:0;bottom:0;left:0;width:34%;background:var(--agent);animation:rail 2s linear infinite}.card-top-header{display:flex;align-items:center;justify-content:space-between;gap:6px}.status-pill{display:inline-flex;align-items:center;gap:5px;height:21px;padding:0 7px;border-radius:6px;font-size:10.5px;font-weight:600;line-height:1}.status-pill.status-running{background:var(--agent-soft);color:var(--agent-ink)}.status-pill.status-waiting_input{background:var(--warning-soft);color:var(--warning-ink)}.status-pill.status-done{background:var(--success-soft);color:var(--success-ink)}.status-pill.status-idle{background:var(--muted);color:var(--muted-foreground)}.status-blip-dot{width:5px;height:5px;border-radius:9px;background:currentColor;animation:blip 1.3s ease-in-out infinite}.status-timer-mono{font-family:var(--font-mono);font-size:10px;font-weight:500;margin-left:2px}.priority-badge{display:inline-flex;align-items:center;height:18px;padding:0 5px;border-radius:5px;font-size:9.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;font-family:var(--font-mono)}.priority-badge.urgent{background:var(--danger-soft);color:var(--danger-ink);border:1px solid transparent}.priority-badge.high,.priority-badge.normal,.priority-badge.medium,.priority-badge.low{background:transparent;color:var(--subtle-foreground);border:1px solid var(--border)}.card-title{font-size:13px;font-weight:550;line-height:1.35;letter-spacing:-.005em;color:var(--foreground);word-break:break-word}.card-desc-preview{font-size:11.5px;line-height:1.45;color:var(--muted-foreground);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.card-tags-list{display:flex;flex-wrap:wrap;gap:5px}.card-tag{font-family:var(--font-mono);font-size:10px;color:var(--subtle-foreground);background:var(--muted);border:1px solid var(--border);border-radius:5px;padding:1px 5px;line-height:1.2}.card-footer{display:flex;align-items:center;justify-content:space-between;gap:6px;padding-top:7px;border-top:1px solid var(--border)}.card-agent-badge{display:inline-flex;align-items:center;gap:5px;height:21px;padding:0 7px 0 5px;border-radius:6px;background:var(--agent-soft);color:var(--agent-ink);font-size:11px;font-weight:600;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-no-agent{display:inline-flex;align-items:center;gap:5px;height:21px;padding:0 7px;border-radius:6px;border:1px dashed var(--border-strong);color:var(--subtle-foreground);font-size:11px}.card-action-btn-sm{width:22px;height:22px;border-radius:6px;border:1px solid var(--border);background:var(--card);color:var(--subtle-foreground);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .12s ease}.card-action-btn-sm:hover{background:var(--surface-hover);color:var(--foreground);border-color:var(--border-strong)}.card-run-btn{width:22px;height:22px;border-radius:6px;border:1px solid transparent;background:var(--agent);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:filter .12s ease}.card-run-btn:hover:not(:disabled){filter:brightness(1.1)}.card-run-btn:disabled{background:var(--surface-hover);border-color:var(--border);color:var(--subtle-foreground);cursor:not-allowed}.card-comments-counter{display:inline-flex;align-items:center;gap:3px;font-family:var(--font-mono);font-size:10.5px;color:var(--subtle-foreground)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0307126b;z-index:1000;display:flex;justify-content:flex-end}.modal-drawer{width:560px;max-width:95vw;height:100%;background:var(--card);border-left:1px solid var(--border);box-shadow:var(--sh-2);display:flex;flex-direction:column;overflow:hidden;z-index:1001}.drawer-header{height:56px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:9px;padding:0 16px;border-bottom:1px solid var(--border)}.drawer-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding:16px}.drawer-title{font-size:17px;font-weight:650;line-height:1.3;letter-spacing:-.012em;color:var(--foreground)}.drawer-description{font-size:12.5px;line-height:1.5;color:var(--muted-foreground)}.metadata-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.metadata-card-item{display:flex;flex-direction:column;gap:5px;padding:8px 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface-2)}.metadata-label{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--subtle-foreground)}.metadata-value{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--foreground)}.thinking-rail-box{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.thinking-rail-accent{position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--agent)}.thinking-rail-top{position:absolute;left:0;right:0;top:0;height:2px;background:var(--agent-soft);overflow:hidden}.thinking-rail-bar{position:absolute;top:0;bottom:0;left:0;width:28%;background:var(--agent);animation:rail 2.4s linear infinite}.thinking-box-header{display:flex;align-items:center;gap:8px;height:36px;padding:0 12px;border-bottom:1px solid var(--border)}.thinking-box-body{padding:12px;font-family:var(--font-mono);font-size:11.5px;line-height:1.55;color:var(--foreground);max-height:260px;overflow-y:auto;white-space:pre-wrap}.caret-block{display:inline-block;width:7px;height:13px;background:var(--agent);vertical-align:-1px;animation:caret 1s step-end infinite}.drawer-tabs{display:flex;align-items:center;gap:4px;padding:3px;border-radius:9px;background:var(--muted);border:1px solid var(--border)}.drawer-tab-btn{flex:1;height:28px;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:7px;font-size:12px;font-weight:500;color:var(--muted-foreground);background:transparent;border:1px solid transparent;cursor:pointer;transition:all .12s ease}.drawer-tab-btn.active{background:var(--card);border-color:var(--border);box-shadow:var(--sh-1);color:var(--foreground);font-weight:600}.comment-item{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--card)}.comment-header{display:flex;align-items:center;gap:8px}.comment-avatar{width:24px;height:24px;border-radius:999px;background:var(--muted);display:flex;align-items:center;justify-content:center;font-size:12px}.comment-author-name{font-size:12px;font-weight:600;color:var(--foreground)}.comment-role-badge{font-family:var(--font-mono);font-size:9.5px;font-weight:600;padding:1px 5px;border-radius:4px;background:var(--muted);color:var(--muted-foreground);text-transform:uppercase}.comment-role-badge.agent{background:var(--agent-soft);color:var(--agent-ink)}.comment-time{margin-left:auto;font-family:var(--font-mono);font-size:10.5px;color:var(--subtle-foreground)}.comment-quote-box{padding:4px 8px;border-left:2px solid var(--border-strong);background:var(--surface-2);border-radius:0 4px 4px 0;font-size:11px;color:var(--muted-foreground)}.modal-card{width:540px;max-width:94vw;max-height:90vh;background:var(--card);border:1px solid var(--border);box-shadow:var(--sh-2);border-radius:12px;display:flex;flex-direction:column;overflow:hidden;margin:auto}.modal-header{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.modal-header h3{font-size:14px;font-weight:650;color:var(--foreground)}.modal-body{padding:16px 18px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.modal-footer{padding:12px 18px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:flex-end;gap:8px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:12px;font-weight:600;color:var(--foreground)}.form-input,.form-select,.form-textarea{height:32px;padding:0 10px;border-radius:8px;border:1px solid var(--border);background:var(--card);color:var(--foreground);font-size:12.5px;font-family:inherit;outline:none;transition:border-color .12s ease,box-shadow .12s ease}.form-textarea{height:auto;min-height:72px;padding:8px 10px;resize:vertical}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--ring);box-shadow:0 0 0 3px var(--primary-soft)}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--danger)}.form-error-msg{font-size:11px;color:var(--danger-ink)}.dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:220px;background:var(--card);border:1px solid var(--border);border-radius:9px;box-shadow:var(--sh-2);padding:4px;display:flex;flex-direction:column;gap:2px;z-index:70}.dropdown-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;border:none;background:transparent;color:var(--foreground);font-size:12.5px;cursor:pointer;text-align:left;transition:background .12s ease}.dropdown-item:hover{background:var(--surface-hover)}.dropdown-divider{height:1px;background:var(--border);margin:4px 0}.dropdown-item-badge{margin-left:auto;font-family:var(--font-mono);font-size:10px;padding:1px 5px;border-radius:4px;background:var(--muted);color:var(--muted-foreground)}.mobile-only{display:none!important}@media (max-width: 768px){.desktop-only{display:none!important}.mobile-only{display:flex!important}.app-header{height:52px;padding:0 12px}.board-toolbar{height:44px;padding:0 12px;gap:6px}.search-input-box{width:140px}.kanban-board-container{padding:10px 12px;gap:10px;scroll-snap-type:x mandatory}.kanban-column{width:86vw;min-width:86vw;scroll-snap-align:center}.modal-drawer{width:100vw;max-width:100vw;border-left:none}}
