.global-create-backdrop[data-v-b1336da1]{position:fixed;top:0;right:0;bottom:0;left:0;background:#060a127a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding:88px 20px 20px;z-index:1400}.global-create-shell[data-v-b1336da1]{width:min(980px,calc(100vw - 40px));max-height:calc(100vh - 120px);overflow:auto;background:var(--surface);box-shadow:0 24px 80px #00000059}.global-create-topbar[data-v-b1336da1]{display:flex;align-items:center;justify-content:space-between;gap:12px}.global-create-close[data-v-b1336da1]{border:none;background:transparent;color:var(--text-secondary);font-size:26px;line-height:1;cursor:pointer;padding:0}.global-create-close[data-v-b1336da1]:hover{color:var(--text)}:root{--bg: #0a0e14;--bg-raised: #0d1117;--surface: #151b23;--surface-hover: #1a2230;--border: #262e38;--border-subtle: #1e252e;--text: #f0f3f6;--text-secondary: #7d8590;--text-tertiary: #545d68;--accent: #58a6ff;--accent-muted: rgba(88,166,255,.12);--green: #3fb950;--green-muted: rgba(63,185,80,.12);--amber: #d29922;--amber-muted: rgba(210,153,34,.12);--red: #f85149;--purple: #bc8cff;--teal: #39d2c0;--radius: 10px;--radius-sm: 6px;--transition: .2s ease-out}html.light{--bg: #f6f8fa;--bg-raised: #ffffff;--surface: #f0f2f5;--surface-hover: #e8ebef;--border: #d1d9e0;--border-subtle: #dfe4ea;--text: #1f2328;--text-secondary: #59636e;--text-tertiary: #7d8590;--accent: #0969da;--accent-muted: rgba(9,105,218,.1);--green: #1a7f37;--green-muted: rgba(26,127,55,.1);--amber: #9a6700;--amber-muted: rgba(154,103,0,.1);--red: #d1242f;--purple: #8250df;--teal: #1b7c83}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.55;margin:0;-webkit-font-smoothing:antialiased}.app-loading,.login-shell{min-height:100vh;display:grid;place-items:center;background:var(--bg);color:var(--text);padding:24px}.app-loading{color:var(--accent);font-weight:700}.login-panel{width:min(420px,100%);background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);padding:24px;box-shadow:0 18px 60px #00000047}.login-brand{color:var(--accent);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.login-panel h1{font-size:24px;line-height:1.2;margin-bottom:16px}.login-note{border:1px solid rgba(210,153,34,.35);background:var(--amber-muted);color:var(--text);border-radius:8px;padding:10px 12px;margin-bottom:14px;font-size:13px}.login-field{display:grid;gap:6px;margin-bottom:12px}.login-field span{color:var(--text);font-size:12px;font-weight:700}.login-field input{width:100%;background:var(--surface);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text);font:inherit;padding:10px 12px;outline:none}.login-field input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-muted)}.login-error{color:var(--red);background:#f851491a;border:1px solid rgba(248,81,73,.32);border-radius:8px;padding:8px 10px;margin:8px 0 12px;font-size:13px}.login-submit{width:100%;border:1px solid var(--accent);border-radius:8px;background:var(--accent);color:#06101f;font:inherit;font-weight:800;padding:10px 14px;cursor:pointer}.login-submit:disabled{opacity:.65;cursor:progress}.mcp-auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg);color:var(--text)}.mcp-auth-panel{width:min(720px,100%);background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);padding:24px;box-shadow:0 18px 60px #00000047}.mcp-auth-kicker{color:var(--teal);font-size:12px;font-weight:900;text-transform:uppercase;margin-bottom:8px}.mcp-auth-panel h1{margin:0 0 18px;color:var(--text);font-size:28px;line-height:1.15}.mcp-auth-code{display:inline-flex;align-items:center;min-height:42px;margin-bottom:16px;padding:0 14px;border:1px solid rgba(88,166,255,.48);border-radius:8px;background:var(--accent-muted);color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:20px;font-weight:900;letter-spacing:0}.mcp-auth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:16px}.mcp-auth-grid>div{min-width:0;padding:10px 12px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:8px}.mcp-auth-grid span{display:block;margin-bottom:4px;color:var(--teal);font-size:11px;font-weight:900;text-transform:uppercase}.mcp-auth-grid strong{display:block;color:var(--text);font-size:14px;font-weight:800;overflow-wrap:anywhere}.mcp-auth-state,.mcp-auth-error,.mcp-auth-success{border-radius:8px;padding:12px;color:var(--text);font-weight:800}.mcp-auth-state{border:1px solid rgba(88,166,255,.35);background:var(--accent-muted)}.mcp-auth-error{border:1px solid rgba(248,81,73,.38);background:#f851491f}.mcp-auth-success{border:1px solid rgba(63,185,80,.42);background:var(--green-muted)}.mcp-auth-approve{width:100%;min-height:42px;border:1px solid var(--green);border-radius:8px;background:var(--green);color:#06130a;font:inherit;font-weight:900;cursor:pointer}.mcp-auth-approve:disabled{cursor:progress;opacity:.72}.topnav-user{display:grid;gap:0;max-width:150px;min-width:84px;padding:5px 8px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--surface)}.topnav-user-name,.topnav-user-role{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topnav-user-name{color:var(--text);font-size:12px;font-weight:700;line-height:1.15}.topnav-user-role{color:var(--teal);font-size:10px;font-weight:800;line-height:1.15;text-transform:uppercase}.hub-header{margin-bottom:28px}.header-row{display:flex;align-items:center;justify-content:space-between}.header-actions{display:flex;align-items:center;gap:8px}.theme-toggle{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);padding:7px;cursor:pointer;display:flex;align-items:center;transition:all var(--transition)}.theme-toggle:hover{color:var(--text);border-color:var(--border);background:var(--surface-hover)}.master-prompt-btn:hover{color:var(--purple)}.theme-toggle:disabled{opacity:.6;cursor:not-allowed}.refresh-spinning svg{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}html:not(.light) .icon-sun{display:none}html.light .icon-moon{display:none}.hub-header h1{font-size:24px;font-weight:700;letter-spacing:-.3px;margin-bottom:2px}.hub-subtitle{color:var(--text-tertiary);font-size:12px;font-family:SF Mono,Fira Code,Cascadia Code,monospace;margin-bottom:20px}.hub-stats{display:flex;gap:6px}.stat-card{background:var(--surface);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:12px 18px;min-width:100px;transition:border-color var(--transition)}.stat-ip,.stat-todo,.stat-review,.stat-needs-input,.stat-blocker,.stat-planned,.stat-ideas{cursor:pointer}.stat-card:hover{border-color:var(--border)}.stat-active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.stat-value{font-size:26px;font-weight:700;letter-spacing:-.5px;line-height:1.1}.stat-label{color:#c0c0d0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-ip .stat-value{color:var(--accent)}.stat-todo .stat-value{color:var(--text)}.stat-proj .stat-value{color:#e0e0f0}.stat-review .stat-value{color:var(--teal)}.stat-needs-input .stat-value{color:var(--amber)}.task-dispatched{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-muted);position:relative}.dispatched-banner{display:flex;align-items:center;gap:6px;padding:5px 10px;margin:-10px -14px 8px;background:var(--accent-muted);border-radius:var(--radius-sm) var(--radius-sm) 0 0;font-size:11px;font-weight:600;color:var(--accent)}.dispatched-link{background:none;border:none;color:var(--accent);text-decoration:underline;cursor:pointer;font-size:11px;font-weight:600;padding:0}.dispatched-link:hover{opacity:.8}.edit-locked{cursor:default}.scheduled-banner{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--amber);background:var(--amber-muted);padding:4px 10px;border-radius:var(--radius-sm) var(--radius-sm) 0 0;margin:-8px -8px 8px}.scheduled-unlock-btn{margin-left:auto;background:none;border:1px solid var(--amber);border-radius:3px;color:var(--amber);font-size:10px;padding:1px 6px;cursor:pointer;transition:all var(--transition)}.scheduled-unlock-btn:hover{background:var(--amber);color:#fff}.scheduled-unlock-btn:disabled{opacity:.5;cursor:not-allowed}.conversation-thread{margin:8px 0 4px}.conversation-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:6px 10px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);font-size:12px;transition:all var(--transition);text-align:left}.conversation-toggle:hover{background:var(--surface-hover);border-color:var(--border);color:var(--text)}.conversation-toggle-count{font-weight:700;color:var(--accent);min-width:16px}.conversation-toggle-preview{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-tertiary)}.conversation-toggle-time{font-size:10px;color:var(--text-tertiary);flex-shrink:0}.conversation-collapse{background:none;border:none;color:var(--text-tertiary);font-size:11px;cursor:pointer;padding:2px 0;margin-bottom:4px;transition:color var(--transition)}.conversation-collapse:hover{color:var(--text-secondary)}.conversation-summary{display:flex;gap:8px;align-items:flex-start;padding:10px 12px;margin-bottom:8px;background:#58a6ff14;border-left:2px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:12px;color:var(--text);line-height:1.5}.conversation-summary svg{flex-shrink:0;margin-top:1px;color:var(--accent)}.conversation-messages{display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto;padding:2px 0}.conversation-msg{max-width:88%;padding:8px 12px;border-radius:12px;font-size:12px;line-height:1.5}.conversation-msg--agent{align-self:flex-start;background:#58a6ff1a;border:1px solid rgba(88,166,255,.15);border-bottom-left-radius:4px}.conversation-msg--martin{align-self:flex-end;background:#bc8cff1a;border:1px solid rgba(188,140,255,.15);border-bottom-right-radius:4px}.conversation-msg--system{align-self:center;max-width:100%;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);color:var(--text-secondary);font-size:11px;font-style:italic;text-align:center;padding:4px 10px;border-radius:8px}.conversation-msg-author{display:flex;align-items:center;gap:5px;margin-bottom:3px}.conversation-msg-avatar{font-size:12px;line-height:1}.conversation-msg-name{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.conversation-msg--agent .conversation-msg-name{color:var(--accent)}.conversation-msg--claude-code{align-self:flex-start;background:#ffa0321a;border:1px solid rgba(255,160,50,.15);border-bottom-left-radius:4px}.conversation-msg--claude-code .conversation-msg-name{color:#f0a030}.conversation-msg--codex{align-self:flex-start;background:#50c8781a;border:1px solid rgba(80,200,120,.15);border-bottom-left-radius:4px}.conversation-msg--codex .conversation-msg-name{color:#50c878}.conversation-msg--pi{align-self:flex-start;background:#b478ff1a;border:1px solid rgba(180,120,255,.15);border-bottom-left-radius:4px}.conversation-msg--pi .conversation-msg-name{color:#b478ff}.conversation-msg--opencode{align-self:flex-start;background:#3c8cff1a;border:1px solid rgba(60,140,255,.15);border-bottom-left-radius:4px}.conversation-msg--opencode .conversation-msg-name{color:#3c8cff}.conversation-msg--martin .conversation-msg-name{color:var(--purple)}.conversation-msg--system .conversation-msg-author{display:none}.conversation-msg-time{font-size:10px;color:var(--text-tertiary);margin-left:auto}.conversation-msg-delete{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:14px;padding:0 2px;line-height:1;opacity:0;transition:opacity .15s,color .15s}.conversation-msg:hover .conversation-msg-delete{opacity:1}.conversation-msg-delete:hover{color:#f85149}.conversation-msg-body{color:var(--text);word-break:break-word;white-space:pre-wrap}.conversation-reply{margin-top:8px;display:flex;gap:6px;align-items:flex-end}.conversation-reply-input{flex:1;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid rgba(188,140,255,.3);background:var(--bg);color:var(--text);font-size:12px;font-family:inherit;line-height:1.4;resize:vertical;outline:none;min-height:36px}.conversation-reply-input:focus{border-color:var(--purple);box-shadow:0 0 0 2px #bc8cff33}.conversation-reply-input::placeholder{color:var(--text-tertiary)}.conversation-reply-send{padding:8px 16px;border-radius:var(--radius-sm);border:none;background:var(--purple);color:#fff;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all var(--transition)}.conversation-reply-send:hover{opacity:.9}.conversation-reply-send:disabled{opacity:.5;cursor:not-allowed}.stat-blocker .stat-value{color:#f85149}.stat-planned .stat-value{color:var(--purple)}.stat-ideas .stat-value{color:#ec6cb9}.tab-bar{display:flex;align-items:center;gap:0;border-bottom:1px solid var(--border-subtle);margin-bottom:20px}.tab-btn{padding:10px 18px;background:none;border:none;color:var(--text-tertiary);font-size:13px;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;transition:color var(--transition),border-color var(--transition);position:relative;bottom:-1px}.tab-btn:hover{color:var(--text-secondary)}.tab-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:4px}.tab-btn.active{color:var(--text);border-bottom-color:var(--accent)}.tab-actions{margin-left:auto;display:flex;gap:4px}.tab-action-btn{padding:5px 10px;background:none;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-tertiary);font-size:11px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all var(--transition)}.tab-action-btn:hover{color:var(--text-secondary);border-color:var(--border);background:var(--surface)}.project-card{background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius);margin-bottom:8px;overflow:hidden;transition:border-color var(--transition)}.project-card:hover,.project-card.open{border-color:var(--border)}.project-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:none;border:none;color:var(--text);cursor:pointer;text-align:left;gap:12px;transition:background var(--transition)}.project-toggle:hover{background:var(--surface)}.toggle-left{display:flex;align-items:center;gap:10px;min-width:0;flex-shrink:1}.toggle-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.chevron-icon{flex-shrink:0;color:var(--text-tertiary);transition:transform var(--transition)}.project-card.open .chevron-icon{transform:rotate(90deg)}.project-name{font-size:15px;font-weight:600;white-space:nowrap;text-transform:uppercase}.phase-badge{font-size:11px;padding:2px 9px;background:var(--accent-muted);color:var(--accent);border-radius:10px;white-space:nowrap;font-weight:500}.count-pill{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:600;white-space:nowrap}.count-ip{background:var(--amber-muted);color:var(--amber)}.count-todo{background:var(--accent-muted);color:var(--accent)}.mini-progress{width:48px;height:4px;background:var(--border);border-radius:2px;overflow:hidden;flex-shrink:0}.mini-progress-fill{height:100%;background:var(--green);border-radius:2px}.pct-label{font-size:11px;color:var(--text-tertiary);font-weight:600;min-width:30px;text-align:right;font-family:SF Mono,Fira Code,monospace}.project-body{max-height:0;overflow:hidden;transition:max-height .25s ease-out,opacity .2s ease-out;opacity:0;padding:0 18px}.project-card.open .project-body{max-height:2000px;opacity:1;padding:0 18px 18px;transition:max-height .35s ease-in,opacity .25s ease-in}.progress-bar{height:5px;background:var(--border);border-radius:3px;overflow:hidden;margin-bottom:3px}.progress-fill{height:100%;background:var(--green);border-radius:3px}.progress-text{font-size:11px;color:var(--text-tertiary);margin-bottom:14px;font-family:SF Mono,Fira Code,monospace}.section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:var(--text-tertiary);margin:14px 0 8px;display:flex;align-items:center;gap:6px}.section-label:first-child{margin-top:0}.section-heading{font-size:14px;font-weight:600;margin:28px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;gap:8px}.section-heading:first-child{margin-top:0}.status-dot{width:7px;height:7px;border-radius:50%;display:inline-block;flex-shrink:0}.status-dot.status-ip{background:var(--amber);box-shadow:0 0 6px var(--amber)}.task-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:11px 14px;margin-bottom:6px;transition:border-color var(--transition);position:relative}.task-card-collapsible{padding-bottom:40px}.drag-ghost{opacity:.4}.drag-active{opacity:.9;box-shadow:0 4px 16px #0000004d}.task-card:hover{border-color:var(--border)}.task-card.task-ip{border-left:2px solid var(--accent)}.task-header{display:flex;flex-direction:column;gap:5px;margin-bottom:3px}.task-header-row1{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.task-header-row2{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.task-header-row2 .task-meta-pills{margin-left:0;margin-right:0}.task-num{font-size:11px;color:var(--text-tertiary);font-weight:600;font-family:SF Mono,Fira Code,monospace}.copyable-id{cursor:pointer}.copyable-id:hover{opacity:.75}.task-project{font-size:10px;padding:1px 7px;background:var(--accent-muted);color:var(--accent);border-radius:8px;font-weight:600;letter-spacing:.3px;text-transform:uppercase;position:relative;cursor:pointer}.color-picker-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:100;display:flex;gap:4px;padding:6px;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 4px 12px #0000004d;flex-wrap:wrap;width:140px}.color-swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all var(--transition);padding:0}.color-swatch:hover{transform:scale(1.15)}.color-swatch.active{border-color:var(--text);box-shadow:0 0 0 1px var(--text)}.task-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}.task-title-actions{display:flex;margin-left:auto;flex-shrink:0}.task-title{flex:1;min-width:0;font-size:15px;font-weight:600;line-height:1.4}.details-toggle-btn{position:absolute;left:10px;bottom:8px;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0}.details-toggle-btn:hover{background:var(--surface);color:var(--text)}.task-desc{font-size:12px;color:var(--text);margin-top:2px;line-height:1.45}.task-desc-actions{display:flex;justify-content:flex-end;margin-bottom:6px}.task-desc-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;padding:0;font:inherit;font-size:11px;color:var(--text-secondary);cursor:pointer;opacity:.8}.task-desc-toggle:hover{opacity:1;color:var(--text)}.stale-badge{font-size:10px;font-weight:700;padding:1px 6px;border-radius:8px;background:#f8514926;color:#f85149}.started-date{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-tertiary);margin-top:4px}.started-date svg{opacity:.6}.started-date.stale{color:#f85149}.started-date.stale svg{opacity:.8}.sprint-badge{background:#58a6ff26!important;color:#58a6ff!important;font-weight:600!important}.done-date{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-tertiary);margin-top:4px}.done-date svg{opacity:.6}.task-badges{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.task-badges:empty{display:none}.badge{font-size:10px;padding:1px 7px;background:#7d85901f;color:var(--text-tertiary);border-radius:8px;font-weight:500}.task-actions{display:flex;gap:4px}.action-btn{background:none;border:1px solid transparent;border-radius:4px;color:var(--text-tertiary);padding:3px;cursor:pointer;display:flex;align-items:center;transition:all var(--transition)}.action-btn:hover{border-color:var(--border);background:var(--surface-hover)}.action-status{color:var(--text-tertiary)}.action-status.status-ip{color:var(--amber)}.action-status.status-testing{color:var(--green)}.action-status.status-paused{color:var(--text-secondary)}.action-status .status-fill{opacity:0}.action-status.status-ip .status-fill,.action-status.status-testing .status-fill{opacity:1}.action-status.status-paused .status-fill{opacity:.5}.action-delete:hover{color:var(--red)}.action-attachments{position:relative;color:#d29922;cursor:default}.action-comment{position:relative}.action-comment.active,.action-comment:hover{color:var(--accent)}.action-history{position:relative}.action-history.active,.action-history:hover{color:var(--accent)}.status-history-panel{margin:6px 0 4px;border:1px solid var(--border);border-radius:8px;overflow:hidden}.status-history-header{display:flex;align-items:center;gap:5px;padding:6px 10px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--amber);background:var(--surface-hover);border-bottom:1px solid var(--border)}.status-history-list{padding:2px 0}.status-history-row{display:flex;align-items:center;gap:7px;padding:5px 10px;font-size:11.5px;border-bottom:1px solid rgba(255,255,255,.04)}.status-history-row:last-child{border-bottom:none}.status-history-row:hover{background:#ffffff0a}.status-history-from{font-weight:500;font-family:ui-monospace,monospace;font-size:11px;opacity:.7;white-space:nowrap}.status-history-arrow{color:var(--amber);opacity:.9;flex-shrink:0}.status-history-to{font-weight:700;font-family:ui-monospace,monospace;font-size:11px;white-space:nowrap;padding:1px 6px;border-radius:4px}.status-history-by{margin-left:auto;color:#fff;font-size:11px;font-weight:500;opacity:.75}.status-history-time{color:#fff6;font-size:10.5px;white-space:nowrap}.status-history-empty{padding:10px;font-size:11px;color:var(--text-tertiary)}.comment-count{position:absolute;top:-4px;right:-4px;font-size:9px;font-weight:700;background:var(--accent);color:#fff;min-width:14px;height:14px;border-radius:7px;display:flex;align-items:center;justify-content:center;line-height:1}.action-proceed:hover{color:var(--green)}.action-star{color:var(--text-tertiary)}.action-star:hover,.action-star.starred{color:var(--amber)}.task-select-check{opacity:1;transition:opacity var(--transition);cursor:pointer;display:flex;align-items:center;justify-content:center;margin-right:0}.task-actions .task-select-check{padding:3px;border:1px solid transparent;border-radius:4px}.task-actions .task-select-check:hover{border-color:var(--border);background:var(--surface-hover)}.task-select-check input{display:none}.task-select-check .check-box{width:16px;height:16px;border:1.5px solid var(--border);border-radius:4px;display:flex;align-items:center;justify-content:center;background:transparent;transition:all var(--transition);color:var(--accent)}.task-select-check input:checked+.check-box{background:var(--accent);border-color:var(--accent);color:#fff}.bulk-toolbar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;background:var(--bg-raised);border:1px solid var(--border);border-radius:12px;padding:8px 16px;box-shadow:0 8px 32px #0006;z-index:100;animation:slideUp .2s ease}@keyframes slideUp{0%{transform:translate(-50%) translateY(20px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.bulk-count{font-size:12px;font-weight:600;color:var(--accent);white-space:nowrap}.bulk-select{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:4px 20px 4px 8px;font-size:11px;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%237d8590' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center}.bulk-apply-btn{background:var(--accent);color:#fff;border:none;border-radius:6px;padding:4px 12px;font-size:11px;font-weight:600;cursor:pointer;transition:opacity var(--transition)}.bulk-apply-btn:hover{opacity:.85}.bulk-apply-btn:disabled{opacity:.4;cursor:default}.bulk-clear-btn{background:none;border:1px solid var(--border);border-radius:6px;color:var(--text-secondary);padding:4px 10px;font-size:11px;cursor:pointer}.bulk-clear-btn:hover{color:var(--text);border-color:var(--text-tertiary)}.bulk-sep{width:1px;height:20px;background:var(--border)}.priority-pool{background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:16px 18px;margin-bottom:20px;min-height:48px}.priority-pool-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.priority-pool-title{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.priority-pool-count{font-size:11px;padding:1px 7px;background:var(--amber-muted);color:var(--amber);border-radius:8px;font-weight:600}.priority-pool-empty{color:var(--text-tertiary);font-size:12px;text-align:center;padding:8px 0}.priority-pool .task-card{border-left:2px solid var(--amber)}.drag-handle{cursor:grab;color:var(--text-tertiary);padding:2px;display:flex;align-items:center;opacity:0;transition:opacity var(--transition)}.task-card:hover .drag-handle,.project-toggle:hover .drag-handle{opacity:.6}.drag-handle:hover{opacity:1!important}.sortable-ghost{opacity:.4}.sortable-drag{opacity:.9}.task-drag-handle{position:absolute;bottom:8px;right:10px;cursor:grab;color:var(--text-tertiary);padding:6px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;opacity:.5;transition:opacity var(--transition),background var(--transition),color var(--transition)}.task-drag-handle:active{cursor:grabbing}.task-drag-handle:hover{opacity:1!important;color:var(--text);background:var(--border)}.modal-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:100;align-items:center;justify-content:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.modal-overlay.open{display:flex}.dispatch-modal{background:var(--bg-raised);border:1px solid var(--border);border-radius:14px;padding:0;width:90%;max-width:480px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff0a inset}.dispatch-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 0}.dispatch-header-left{display:flex;align-items:center;gap:8px}.dispatch-id{font-size:14px;font-weight:700;color:var(--accent);font-family:SF Mono,Fira Code,monospace}.dispatch-project{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);background:var(--surface);padding:2px 8px;border-radius:4px}.dispatch-close{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;transition:all var(--transition)}.dispatch-close:hover{color:var(--text);background:var(--surface)}.dispatch-task-title{font-size:15px;font-weight:500;color:var(--text);padding:6px 20px 0;line-height:1.4}.dispatch-section{padding:16px 20px 0}.dispatch-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin-bottom:8px}.dispatch-agent-grid{display:flex;flex-direction:column;gap:6px}.dispatch-agent-card{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:10px;cursor:pointer;transition:all var(--transition);text-align:left}.dispatch-agent-card:hover{border-color:var(--border);background:var(--surface-hover)}.dispatch-agent-card.selected{border-color:var(--accent);background:var(--accent-muted);box-shadow:0 0 0 1px var(--accent)}.dispatch-agent-icon{width:36px;height:36px;border-radius:8px;background:var(--border-subtle);color:var(--text-secondary);font-size:15px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition)}.dispatch-agent-card.selected .dispatch-agent-icon{background:var(--accent);color:#fff}.dispatch-agent-info{display:flex;flex-direction:column;gap:1px;min-width:0}.dispatch-agent-name{font-size:13px;font-weight:600;color:var(--text)}.dispatch-agent-desc{font-size:11px;color:var(--text-tertiary)}.dispatch-perm-grid{display:flex;gap:6px}.dispatch-perm-card{flex:1;padding:10px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;text-align:center;transition:all var(--transition)}.dispatch-perm-card:hover{border-color:var(--border);background:var(--surface-hover)}.dispatch-perm-card.selected{border-color:var(--accent);background:var(--accent-muted);box-shadow:0 0 0 1px var(--accent)}.dispatch-perm-name{display:block;font-size:12px;font-weight:600;color:var(--text);margin-bottom:2px}.dispatch-perm-desc{display:block;font-size:10px;color:var(--text-tertiary);line-height:1.3}.dispatch-perm-card.selected .dispatch-perm-name{color:var(--accent)}.dispatch-timing-toggle{display:flex;gap:0;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;width:fit-content;margin-bottom:8px}.dispatch-timing-btn{padding:6px 18px;font-size:12px;font-weight:500;background:var(--surface);border:none;color:var(--text-secondary);cursor:pointer;transition:all var(--transition)}.dispatch-timing-btn:first-child{border-right:1px solid var(--border)}.dispatch-timing-btn.selected{background:var(--accent-muted);color:var(--accent);font-weight:600}.dispatch-datetime-wrap{margin-top:4px}.dispatch-datetime-input{padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:13px;font-family:inherit;outline:none;width:100%}.dispatch-datetime-input:focus{border-color:var(--accent)}.dispatch-actions{display:flex;gap:8px;justify-content:flex-end;padding:18px 20px}.dispatch-btn{padding:9px 18px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all var(--transition);display:flex;align-items:center;gap:6px}.dispatch-btn-cancel{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border-subtle)}.dispatch-btn-cancel:hover{background:var(--surface-hover);color:var(--text)}.dispatch-btn-launch{background:var(--green);color:#fff;border:1px solid var(--green)}.dispatch-btn-launch:hover{opacity:.9}.dispatch-btn-launch:disabled{opacity:.5;cursor:not-allowed}.dispatch-btn-launch.launching{background:var(--accent);border-color:var(--accent)}@media(max-width:640px){.modal-overlay.open{align-items:flex-end}.dispatch-modal{width:100%;max-width:100%;border-radius:14px 14px 0 0;max-height:85vh;display:flex;flex-direction:column}.dispatch-header,.dispatch-task-title{flex-shrink:0}.dispatch-section{overflow-y:auto;flex-shrink:1}.dispatch-actions{flex-shrink:0;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--border-subtle);background:var(--bg-raised)}.dispatch-perm-grid{flex-direction:column}.dispatch-btn-launch{flex:1;justify-content:center}}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(80px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 20px;font-size:13px;font-weight:500;color:var(--text);z-index:200;opacity:0;transition:transform .3s ease-out,opacity .3s ease-out;pointer-events:none;display:flex;align-items:center;gap:4px}.toast.show{transform:translate(-50%) translateY(0);opacity:1;pointer-events:auto}.toast-action-btn{margin-left:12px;padding:2px 10px;border:1px solid var(--accent);border-radius:4px;background:transparent;color:var(--accent);font-size:12px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.toast-action-btn:hover{background:var(--accent);color:#fff}@media(max-width:768px){.app-content{padding:20px 16px;max-width:100%}.hub-stats{flex-wrap:wrap;gap:6px}.stat-card{min-width:calc(25% - 6px);flex:1 1 calc(25% - 6px);padding:10px 14px}.stat-value{font-size:22px}.topnav-inner{padding:0 12px;gap:0}.topnav-brand{margin-right:12px;font-size:14px}.topnav-item{padding:14px 10px;font-size:12px}.topnav-action-btn{width:30px;height:30px}.filter-row{gap:4px}.filter-btn{padding:5px 8px;font-size:11px}.grouping-btn{padding:5px 10px;font-size:11px}.project-chip{padding:4px 8px;font-size:10px}.clients-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.gantt-project-cell{width:120px;min-width:120px;padding:6px 8px;font-size:11px}.roadmap-header h1{font-size:18px}.project-settings-view{padding:16px}}@media(max-width:640px){.app-content{padding:16px 12px;max-width:100%}.topnav-inner{height:44px;padding:0 8px}.topnav-brand{margin-right:8px;font-size:13px}.topnav-items{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-shrink:1;min-width:0}.topnav-items::-webkit-scrollbar{display:none}.topnav-item{padding:12px 8px;font-size:12px}.topnav-actions{gap:2px}.topnav-action-btn{width:28px;height:28px}.topnav-action-btn.queue-indicator{padding:0 6px;font-size:10px}.hub-header{margin-bottom:16px}.hub-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.stat-card{min-width:0;padding:10px 12px}.stat-value{font-size:20px}.stat-label{font-size:10px}.filter-bar{gap:6px;margin-bottom:12px}.filter-row{gap:4px}.project-chip{padding:4px 7px;font-size:10px;gap:3px}.chip-count{font-size:9px;min-width:14px;height:14px;line-height:14px}.chip-prompt-btn{display:none!important}.filter-btn{padding:5px 8px;font-size:11px;gap:4px}.grouping-btn{padding:5px 8px;font-size:11px}.filter-sep{display:none}.filter-dropdown{min-width:160px}.done-toggle{padding:5px 4px;font-size:11px}.done-toggle span{display:none}.task-card{padding:10px 12px}.task-header{gap:4px}.task-header-row1{flex-wrap:wrap}.task-title{font-size:13px}.task-desc{font-size:11px}.task-actions{opacity:1}.task-drag-handle{display:none}.task-meta-pills{gap:3px;margin-right:0}.meta-pill{font-size:9px;padding:2px 6px}.project-toggle{padding:12px;gap:8px}.project-card.open .project-body{padding:0 12px 12px}.toggle-left{gap:8px}.phase-badge{display:none}.project-name{font-size:13px}.priority-pool{padding:12px 14px}.modal-overlay.open{align-items:flex-end;overflow-y:auto;-webkit-overflow-scrolling:touch}.roadmap-detail-modal{width:100%;max-width:100%;border-radius:var(--radius) var(--radius) 0 0;max-height:none;flex-shrink:0}.queue-panel{width:100%;max-width:100%}.roadmap-header{flex-wrap:wrap;gap:8px}.roadmap-header h1{font-size:18px}.roadmap-filters{gap:6px}.roadmap-zoom{margin-left:0}.gantt-project-cell{width:100px;min-width:100px;padding:6px 8px;font-size:10px}.gantt-table th{font-size:10px;padding:6px 2px}.gantt-task-bar{font-size:10px;padding:2px 4px}.clients-grid{grid-template-columns:1fr;gap:10px}.clients-header{flex-wrap:wrap;gap:8px}.project-settings-view{padding:12px}.project-card-header{flex-wrap:wrap;gap:6px}.project-card-tasks{margin-left:0}.search-bar-input{font-size:16px}.create-task-meta{gap:6px}.create-task-form{padding:10px}}@media(max-width:440px){.mini-progress,.pct-label{display:none}.hub-stats{grid-template-columns:repeat(2,1fr)}.stat-card{padding:8px 10px}.stat-value{font-size:18px}.topnav-brand{display:none}.topnav-item{padding:12px 7px;font-size:11px}.filter-btn,.grouping-btn{padding:4px 6px;font-size:10px}.project-chip{font-size:9px;padding:3px 6px}.gantt-project-cell{width:80px;min-width:80px;font-size:9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.project-body{transition:none!important}}.filter-bar{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.filter-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.project-chip-wrap{position:relative;display:inline-flex}.chip-prompt-btn{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:var(--bg-raised);border:1px solid var(--border);color:var(--text-tertiary);display:none;align-items:center;justify-content:center;cursor:pointer;padding:0;z-index:5}.project-chip-wrap:hover .chip-prompt-btn{display:flex}.chip-prompt-btn:hover{color:var(--purple);border-color:var(--purple);background:var(--surface-hover)}.project-chip{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);padding:5px 10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;display:flex;align-items:center;gap:5px;transition:all var(--transition)}.project-chip:hover{color:var(--text);border-color:var(--border);background:var(--surface-hover)}.project-chip.active{background:var(--chip-color, var(--accent));border-color:var(--chip-color, var(--accent));color:#fff}.project-chip.active .chip-count{background:#ffffff40;color:#fff}.project-chip.excluded{opacity:.35;text-decoration:line-through}.project-chip.excluded:hover{opacity:.5}.chip-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.project-chip.active .chip-dot{background:#fff!important}.chip-count{font-size:10px;min-width:16px;height:16px;line-height:16px;text-align:center;background:#7d859026;color:var(--text-tertiary);border-radius:8px;font-weight:700}.chip-count-active{color:#fff}.filter-sep{width:1px;height:20px;background:var(--border-subtle);flex-shrink:0}.filter-dropdown-wrap{position:relative}.filter-btn{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all var(--transition)}.filter-btn:hover{color:var(--text);border-color:var(--border);background:var(--surface-hover)}.filter-btn-active{color:var(--accent)!important;border-color:var(--accent)!important}.client-filter-option{display:block;width:100%;text-align:left;padding:6px 10px;font-size:12px;font-weight:500;color:var(--text);background:none;border:none;cursor:pointer;border-radius:var(--radius-sm)}.client-filter-option:hover{background:var(--surface-hover)}.client-filter-option.active{color:var(--accent);font-weight:700}.filter-dropdown-divider{height:1px;background:var(--border-subtle);margin:4px 0}.clear-filters-btn{color:var(--text-tertiary)!important;border-color:transparent!important;background:none!important}.clear-filters-btn:hover{color:var(--text)!important;background:var(--surface-hover)!important}.filter-count{font-size:10px;min-width:16px;height:16px;line-height:16px;text-align:center;background:var(--accent);color:#fff;border-radius:8px;font-weight:700}.filter-dropdown{position:absolute;top:calc(100% + 4px);left:0;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 0;min-width:180px;max-height:260px;overflow-y:auto;z-index:50;box-shadow:0 8px 24px #0000004d}.filter-option{display:flex;align-items:center;gap:8px;padding:6px 14px;font-size:12px;cursor:pointer;color:var(--text);transition:background var(--transition)}.filter-option:hover{background:var(--surface-hover)}.filter-option span{flex:1}.tag-delete-btn{background:none;border:none;color:var(--text-tertiary);font-size:14px;cursor:pointer;padding:0 2px;line-height:1;opacity:0;transition:opacity var(--transition),color var(--transition)}.filter-option:hover .tag-delete-btn{opacity:1}.tag-delete-btn:hover{color:var(--red)}.filter-option input[type=checkbox]{accent-color:var(--accent);width:14px;height:14px;cursor:pointer}.grouping-toggle{display:flex;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);overflow:hidden}.grouping-btn{background:none;border:none;border-right:1px solid var(--border-subtle);color:var(--text-tertiary);padding:6px 14px;font-size:12px;font-weight:600;cursor:pointer;transition:all var(--transition)}.grouping-btn:last-child{border-right:none}.grouping-btn:hover{color:var(--text-secondary);background:var(--surface-hover)}.grouping-btn.active{color:var(--accent);background:var(--accent-muted)}.done-toggle{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-tertiary);cursor:pointer;padding:6px 8px;-webkit-user-select:none;user-select:none}.done-toggle input[type=checkbox]{accent-color:var(--accent);width:14px;height:14px;cursor:pointer}.done-toggle:hover{color:var(--text-secondary)}.task-meta-pills{display:flex;align-items:center;gap:4px}.meta-pill{font-size:10px;line-height:14px;padding:2px 8px;border-radius:8px;font-weight:600;border:1px solid var(--border-subtle);background:var(--surface);color:var(--text-tertiary);cursor:pointer;transition:all var(--transition);white-space:nowrap;vertical-align:middle}.meta-pill:hover{border-color:var(--border);background:var(--surface-hover)}.priority-pill.priority-blocker{background:#bc1c1c33;color:#d42020;border-color:#bc1c1c66;font-weight:600}.priority-pill.priority-critical{background:#db373726;color:#e04545;border-color:#db37374d}.priority-pill.priority-high{background:#f8514926;color:var(--red);border-color:#f851494d}.priority-pill.priority-medium{background:var(--amber-muted);color:var(--amber);border-color:#d299224d}.priority-pill.priority-low{background:#7d85901f;color:var(--text-secondary);border-color:var(--border)}.week-pill-wrap{position:relative;display:flex}.week-pill{font-size:10px;background:#d2992226;color:var(--amber);border-color:#d299224d}.light .week-pill{background:#d299221a;color:#7c5e10;border-color:#d2992266}.week-picker{position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 0;min-width:150px;z-index:50;box-shadow:0 8px 24px #0000004d}.week-option{display:block;width:100%;padding:6px 14px;background:none;border:none;text-align:left;font-size:12px;color:var(--text);cursor:pointer;transition:background var(--transition)}.week-option:hover{background:var(--surface-hover)}.week-option.active{color:var(--accent);font-weight:600}.week-option.week-clear{color:var(--text-tertiary);border-top:1px solid var(--border-subtle);margin-top:2px;padding-top:8px}.status-picker-wrap{position:relative;display:inline-flex;align-items:center}.status-picker{position:absolute;top:calc(100% + 4px);left:0;background:var(--bg-raised);border:1px solid var(--border);border-radius:6px;padding:4px;min-width:140px;z-index:50;box-shadow:0 8px 24px #0006;display:flex;flex-direction:column;gap:1px}.status-option{display:block;width:100%;padding:4px 10px;border:1px solid transparent;text-align:left;cursor:pointer;border-radius:20px;white-space:nowrap}.status-option:hover{filter:brightness(1.3);background:#ffffff0d}.status-option.active{filter:brightness(1.25)}.priority-pill-wrap{position:relative;display:flex}.priority-picker{position:absolute;top:calc(100% + 4px);left:0;right:auto;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);padding:4px 0;min-width:100px;z-index:50;box-shadow:0 8px 24px #0000004d}.priority-option{display:block;width:100%;padding:6px 14px;background:none;border:none;text-align:left;font-size:12px;color:var(--text);cursor:pointer}.priority-option:hover{background:var(--surface-hover)}.priority-option.active{color:var(--accent);font-weight:600}.assignee-pill-wrap{position:relative;display:flex}.assignee-pill{font-size:10px;background:#7d85901f;color:var(--text-secondary);border-color:var(--border)}.assignee-pill.assignee-martin{background:#58a6ff26;color:var(--accent);border-color:#58a6ff4d}.assignee-pill.assignee-agent{background:#a38cff26;color:var(--purple);border-color:#a38cff4d}.assignee-picker{position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-raised);border:1px solid var(--border);border-radius:8px;padding:4px 0;z-index:20;min-width:90px;box-shadow:0 8px 24px #0000004d}.assignee-option{display:block;width:100%;padding:6px 14px;background:none;border:none;text-align:left;font-size:12px;color:var(--text);cursor:pointer}.assignee-option:hover{background:var(--surface-hover)}.assignee-option.active{color:var(--accent);font-weight:600}.client-pill-wrap{position:relative;display:flex;align-items:center}.client-pill{font-size:10px;display:flex;align-items:center;gap:4px;background:#7d85901f;color:var(--text-secondary);border-color:var(--border)}.client-pill svg{display:block}.client-pill.has-client{background:#39d2c026;color:var(--teal, #39d2c0);border-color:#39d2c04d}.client-picker{position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-raised);border:1px solid var(--border);border-radius:8px;padding:4px 0;z-index:20;min-width:120px;max-height:200px;overflow-y:auto;box-shadow:0 8px 24px #0000004d}.client-option{display:block;width:100%;padding:6px 14px;background:none;border:none;text-align:left;font-size:12px;color:var(--text);cursor:pointer}.client-option:hover{background:var(--surface-hover)}.client-option.active{color:var(--teal, #39d2c0);font-weight:600}.client-clear{color:var(--text-secondary);border-top:1px solid var(--border)}.epic-pill-wrap{position:relative}.epic-pill{display:inline-flex;align-items:center;gap:4px}.epic-pill:not(.has-epic){color:var(--text-secondary);background:#7d85901f;border-color:#7d859033;letter-spacing:.06em}.epic-pill.has-epic{font-weight:700;letter-spacing:.03em}.epic-picker{position:absolute;top:calc(100% + 6px);left:0;z-index:200;background:var(--bg-raised);border:1px solid var(--border);border-radius:10px;min-width:260px;max-width:340px;box-shadow:0 12px 32px #00000080;overflow:hidden}.epic-picker-search{display:flex;align-items:center;gap:7px;padding:8px 10px;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary)}.epic-search-input{flex:1;background:none;border:none;outline:none;color:var(--text);font-size:12px;padding:0}.epic-search-input::placeholder{color:var(--text-tertiary)}.epic-options-list{max-height:220px;overflow-y:auto;padding:4px}.epic-option{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:6px 8px;background:none;border:none;cursor:pointer;border-radius:6px;transition:background .1s}.epic-option:hover{background:var(--surface-hover)}.epic-option.active{background:var(--surface)}.epic-option-id{font-size:10.5px;font-weight:700;letter-spacing:.04em;font-family:ui-monospace,monospace;padding:2px 6px;border-radius:4px;white-space:nowrap;flex-shrink:0}.epic-option-title{font-size:12px;color:var(--text-secondary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.epic-option.active .epic-option-title{color:var(--text);font-weight:500}.epic-option-check{color:var(--green);flex-shrink:0}.epic-empty{padding:10px 8px;font-size:12px;color:var(--text-secondary);text-align:center}.epic-clear{display:flex;align-items:center;gap:6px;width:100%;padding:7px 10px;background:none;border:none;border-top:1px solid var(--border-subtle);color:var(--red);font-size:11.5px;cursor:pointer;text-align:left}.epic-clear:hover{background:#f8514914}.my-tasks-btn{font-weight:600;position:relative}.my-tasks-badge{font-size:9px;font-weight:700;min-width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:var(--accent);color:#fff;margin-left:5px;padding:0 4px;line-height:1}.my-tasks-btn.filter-btn-active{background:#58a6ff26;color:var(--accent);border-color:#58a6ff66}.my-tasks-btn.filter-btn-active .my-tasks-badge{background:var(--accent);color:#fff}.crew-tasks-btn{font-weight:600}.crew-tasks-btn.filter-btn-active{background:#a38cff26;color:var(--purple);border-color:#a38cff66}.task-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px;align-items:center}.task-tags-row{display:flex;gap:5px;flex-wrap:wrap;align-items:center;margin:6px 0 4px}.user-tag{font-size:10px;padding:1px 7px;background:var(--accent-muted);color:var(--accent);border-radius:8px;font-weight:500;display:inline-flex;align-items:center;gap:3px}.tag-remove{background:none;border:none;color:var(--accent);cursor:pointer;font-size:12px;line-height:1;padding:0 1px;opacity:.6;transition:opacity var(--transition)}.tag-remove:hover{opacity:1}.add-tag{font-size:10px;padding:1px 7px;background:none;border:1px dashed var(--border);border-radius:8px;color:var(--text-tertiary);cursor:pointer;font-weight:500;transition:all var(--transition)}.add-tag:hover{border-color:var(--accent);color:var(--accent)}.tag-input-wrap{display:inline-flex}.tag-input{font-size:10px;padding:2px 7px;background:var(--surface);border:1px solid var(--accent);border-radius:8px;color:var(--text);outline:none;width:80px;font-family:inherit}.status-dot.status-in_progress{background:var(--accent);box-shadow:0 0 6px var(--accent)}.status-dot.status-todo{background:var(--text-secondary)}.status-dot.status-testing{background:var(--green);box-shadow:0 0 6px var(--green)}.status-dot.status-paused{background:var(--text-secondary)}.status-dot.status-done{background:var(--green);box-shadow:0 0 6px var(--green)}.status-dot.status-archived{background:var(--text-secondary);opacity:.7}.status-dot.status-review{background:var(--teal);box-shadow:0 0 6px var(--teal)}.status-dot.status-needs_input{background:var(--amber);box-shadow:0 0 6px var(--amber)}.status-dot.status-blocker{background:var(--red);box-shadow:0 0 6px var(--red)}.status-dot.status-planned{background:var(--purple)}.status-dot.status-idea{background:#ec6cb9}.status-chip{font-size:10px;font-weight:600;padding:2px 8px;border-radius:8px;line-height:14px;border:1px solid transparent;background:#7d85901f;color:var(--text)}.status-chip-clickable{cursor:pointer}.status-chip-clickable:hover{filter:brightness(1.2)}.status-chip.status-in_progress{background:#58a6ff26;color:var(--accent);border-color:#58a6ff4d}.status-chip.status-testing{background:#3fb95026;color:var(--green);border-color:#3fb9504d}.status-chip.status-review{background:#39d2c026;color:var(--teal);border-color:#39d2c04d}.status-chip.status-needs_input{background:#d2992226;color:var(--amber);border-color:#d299224d}.status-chip.status-blocker{background:#f8514926;color:var(--red);border-color:#f851494d}.status-chip.status-paused{background:#7d85901f;color:var(--text-secondary);border-color:var(--border)}.status-chip.status-todo{background:#7d85901f;color:var(--text);border-color:var(--border-subtle)}.status-chip.status-planned{background:#a38cff1f;color:var(--purple);border-color:#a38cff33}.status-chip.status-idea{background:#ec6cb91f;color:#ec6cb9;border-color:#ec6cb933}.status-chip.status-scheduled{background:#d299221f;color:var(--amber);border-color:#d2992233}.status-chip.status-done{background:#3fb95026;color:var(--green);border-color:#3fb9504d}.status-chip.status-archived{background:#7d85901a;color:var(--text-secondary);border-color:var(--border-subtle)}.task-group{margin-bottom:24px}.task-group .section-heading{font-size:14px;font-weight:600;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;gap:8px}.task-group .section-heading.project-group-heading{text-transform:uppercase;letter-spacing:.3px}.group-count{font-size:11px;padding:1px 7px;background:#7d85901f;color:var(--text-tertiary);border-radius:8px;font-weight:600}.group-highlight{color:var(--accent)!important}.group-highlight .group-count{background:var(--accent-muted);color:var(--accent)}.empty-state{text-align:center;color:var(--text-tertiary);font-size:13px;padding:40px 20px}.done-toggle-row{margin-top:4px;margin-bottom:8px}.done-toggle-btn{background:none;border:none;color:#a0a0b8;font-size:11px;font-weight:500;cursor:pointer;padding:4px 0;transition:color var(--transition)}.done-toggle-btn:hover{color:#e0e0f0}.done-expand-row{margin-top:2px;margin-bottom:8px;padding-left:12px}.done-expand-btn{background:none;border:1px dashed rgba(255,255,255,.15);border-radius:var(--radius-sm);color:#a0a0b8;font-size:11px;font-weight:500;cursor:pointer;padding:5px 12px;transition:all var(--transition)}.done-expand-btn:hover{color:#e0e0f0;border-color:#ffffff4d}.done-section{margin-top:24px;border-top:1px solid rgba(255,255,255,.08);padding-top:12px}.done-group-title{color:#3fb950}.done-chevron{display:inline-block;vertical-align:middle;margin-left:4px;transition:transform .2s;color:#c0c0d0}.done-chevron.open{transform:rotate(180deg)}.task-phase{font-size:10px;color:var(--text-tertiary);font-style:italic}.editable-text{cursor:text;border-radius:3px;padding:1px 3px;margin:-1px -3px;white-space:pre-wrap}.editable-text:hover{background:#ffffff0f}.editable-placeholder{opacity:.4;font-style:italic}.markdown-body{white-space:normal}.markdown-body p{margin:0 0 .4em}.markdown-body p:last-child{margin-bottom:0}.markdown-body ul,.markdown-body ol{margin:.2em 0 .4em;padding-left:1.4em}.markdown-body li{margin-bottom:.15em}.markdown-body code{font-size:.88em;background:#7d859026;padding:1px 4px;border-radius:3px}.markdown-body pre{background:#7d85901a;padding:6px 8px;border-radius:4px;overflow-x:auto;margin:.3em 0}.markdown-body pre code{background:none;padding:0}.markdown-body strong{color:var(--text-primary)}.markdown-body a{color:var(--accent);text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body blockquote{border-left:2px solid var(--border);margin:.3em 0;padding-left:8px;color:var(--text-secondary)}.inline-edit{width:100%;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:4px;color:inherit;font:inherit;padding:2px 6px;outline:none;box-sizing:border-box}.inline-edit:focus{border-color:#58a6ff;box-shadow:0 0 0 1px #58a6ff4d}.inline-edit:disabled{opacity:.5}.inline-edit-title{font-size:inherit;font-weight:inherit}.inline-edit-desc{font-size:.92em;resize:vertical;min-height:2.4em}.create-task-btn{background:none;border:1px solid rgba(255,255,255,.15);color:#ffffff80;border-radius:4px;font-size:1em;line-height:1;width:22px;height:22px;cursor:pointer;margin-left:8px;display:inline-flex;align-items:center;justify-content:center;transition:all .15s}.create-task-btn:hover{color:#58a6ff;border-color:#58a6ff;background:#58a6ff1a}.create-task-row{padding:6px 12px;margin-bottom:6px}.create-task-input{width:100%;background:#ffffff0f;border:1px solid rgba(255,200,50,.3);border-radius:6px;color:inherit;font:inherit;padding:8px 12px;outline:none;box-sizing:border-box;transition:border-color .15s}.create-task-input:focus{border-color:#f0c040;box-shadow:0 0 0 2px #f0c04026}.create-task-input:disabled{opacity:.5}.search-bar-wrap{position:relative;margin-bottom:16px}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.search-bar-input{width:100%;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:13px;padding:8px 32px 8px 34px;outline:none;transition:border-color var(--transition)}.search-bar-input:focus{border-color:var(--accent);box-shadow:0 0 0 1px #58a6ff33}.search-bar-input::placeholder{color:var(--text-tertiary)}.search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-tertiary);font-size:16px;cursor:pointer;padding:2px 4px;line-height:1;transition:color var(--transition)}.search-clear:hover{color:var(--text)}.create-task-form{background:linear-gradient(135deg,#ffc8320f,#7c5cff0f);border:1px solid rgba(255,200,50,.35);border-radius:8px;padding:14px;margin-bottom:8px;display:flex;flex-direction:column;gap:8px;box-shadow:0 2px 12px #ffc8320f}.create-task-form-header{margin-bottom:16px}.create-task-context{color:#f0c040;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.create-task-textarea{width:100%;background:#ffffff0f;border:1px solid rgba(255,200,50,.2);border-radius:6px;color:inherit;font:inherit;font-size:12px;padding:6px 10px;outline:none;resize:vertical;min-height:2.4em;box-sizing:border-box;transition:border-color .15s}.create-task-textarea:focus{border-color:#f0c040;box-shadow:0 0 0 2px #f0c04026}.create-task-textarea::placeholder{color:var(--text-tertiary)}.create-task-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.create-task-select{background:#ffffff0d;border:1px solid rgba(255,200,50,.18);border-radius:6px;color:var(--text);font:inherit;font-size:11px;padding:4px 8px;outline:none;cursor:pointer;transition:border-color .15s}.create-task-select-project{min-width:132px;font-weight:600;color:#f0c040}.create-task-select:focus{border-color:#f0c040}.create-task-select:hover{border-color:#ffc83266}.create-task-tags{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.epic-toggle-chip{padding:3px 12px;border-radius:12px;font-size:11px;font-weight:700;border:1.5px solid rgba(255,200,50,.4);background:transparent;color:#f0c040;cursor:pointer;transition:all .2s;letter-spacing:.04em;text-transform:uppercase}.epic-toggle-chip.active{background:linear-gradient(135deg,#f0c040,#e6a020);border-color:#f0c040;color:#1a1a2e;box-shadow:0 2px 8px #f0c0404d}.epic-toggle-chip:hover:not(.active){border-color:#f0c040;background:#f0c0401a}.create-task-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.create-btn-cancel{background:transparent;border:1px solid rgba(255,255,255,.12);border-radius:6px;color:var(--text-secondary);font-size:12px;font-weight:600;padding:6px 16px;cursor:pointer;transition:all .15s}.create-btn-cancel:hover{color:var(--text);border-color:#ffffff40;background:#ffffff0a}.create-btn-submit{background:linear-gradient(135deg,#f0c040,#e6a020);border:none;border-radius:6px;color:#1a1a2e;font-size:12px;font-weight:700;padding:6px 18px;cursor:pointer;transition:all .15s;box-shadow:0 2px 8px #f0c04040}.create-btn-submit:hover{box-shadow:0 4px 14px #f0c04059;transform:translateY(-1px)}.create-btn-submit:disabled{opacity:.35;cursor:not-allowed;transform:none;box-shadow:none}.create-task-hint{font-size:11px;color:var(--text-secondary);margin-top:6px;text-align:right}.global-search-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#02061799;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:flex-start;justify-content:center;padding:84px 16px 16px;z-index:2500}.global-search-modal{width:min(760px,100%);max-height:calc(100vh - 120px);background:#0a0e1af5;border:1px solid rgba(148,163,184,.18);border-radius:20px;box-shadow:0 24px 80px #0f172a73;overflow:hidden;display:flex;flex-direction:column}.global-search-header{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid rgba(148,163,184,.14)}.global-search-input{flex:1;background:#0f172ad6;border:1px solid rgba(148,163,184,.16);border-radius:12px;color:#e2e8f0;font-size:15px;padding:12px 14px}.global-search-close,.global-search-tab,.global-search-result{border:none;cursor:pointer}.global-search-close{background:transparent;color:#94a3b8;font-size:26px;line-height:1}.global-search-tabs{display:flex;gap:8px;padding:12px 16px;border-bottom:1px solid rgba(148,163,184,.12)}.global-search-tab{background:#1e293bb3;color:#cbd5e1;padding:8px 12px;border-radius:999px}.global-search-tab.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.global-search-results,.global-search-recents{display:flex;flex-direction:column;gap:8px;padding:12px 16px 16px;overflow:auto}.global-search-section-title{color:#94a3b8;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.global-search-result{display:flex;align-items:flex-start;gap:12px;background:#0f172abf;color:#e2e8f0;padding:12px 14px;border-radius:14px;text-align:left}.global-search-result.selected,.global-search-result:hover{background:#334155f2}.global-search-badge{display:inline-flex;align-items:center;justify-content:center;min-width:78px;padding:4px 8px;border-radius:999px;background:#6366f12e;color:#c7d2fe;font-size:11px;font-weight:700;text-transform:uppercase}.global-search-result-main{display:flex;flex-direction:column;gap:4px}.global-search-result-main small{color:#94a3b8}.global-search-empty{color:#94a3b8;padding:16px 4px}@media(max-width:768px){.global-search-backdrop{padding:0;align-items:stretch}.global-search-modal{width:100%;max-height:100vh;border-radius:0}}.light .search-bar-input{background:var(--surface)}.light .create-task-form{border-color:#c8a01e66;background:linear-gradient(135deg,#ffc83214,#7c5cff0a)}.light .create-task-textarea,.light .editable-text:hover{background:#0000000a}.light .inline-edit{background:#0000000a;border-color:#00000026}.light .create-task-btn{border-color:#00000026;color:#0006}.light .create-task-btn:hover{color:#0969da;border-color:#0969da;background:#0969da1a}.light .create-task-input{background:#0000000a;border-color:#0969da66}.queue-indicator{background:var(--accent-muted);color:var(--accent);border:1px solid var(--accent);border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap}.queue-indicator:hover{background:#58a6ff33}.queue-indicator.queue-running{background:var(--green-muted);color:var(--green);border-color:var(--green);animation:queue-pulse 2s infinite}@keyframes queue-pulse{0%,to{opacity:1}50%{opacity:.7}}.queue-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1000;display:flex;justify-content:flex-end}.queue-panel{width:380px;max-width:90vw;height:100vh;background:var(--bg-raised);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.queue-panel-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border)}.queue-panel-header h3{margin:0;font-size:16px;color:var(--text)}.queue-close{background:none;border:none;color:var(--text-secondary);font-size:22px;cursor:pointer;padding:0 4px;line-height:1}.queue-close:hover{color:var(--text)}.queue-panel-actions{display:flex;gap:8px;padding:12px 20px;border-bottom:1px solid var(--border-subtle)}.queue-action-btn{padding:6px 14px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all .15s}.queue-action-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--text)}.queue-action-btn:disabled{opacity:.4;cursor:not-allowed}.queue-start{background:var(--green-muted);color:var(--green);border-color:var(--green)}.queue-start:hover:not(:disabled){background:#3fb95033}.queue-empty{padding:40px 20px;text-align:center;color:var(--text-tertiary);font-size:13px}.queue-items{flex:1;overflow-y:auto;padding:8px 12px}.queue-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;background:var(--surface);margin-bottom:6px;transition:background .15s}.queue-item:hover{background:var(--surface-hover)}.queue-item-icon{font-size:14px;width:18px;text-align:center;flex-shrink:0}.queue-status-pending .queue-item-icon{color:var(--text-tertiary)}.queue-status-running .queue-item-icon{color:var(--accent)}.queue-status-done .queue-item-icon{color:var(--green)}.queue-status-failed .queue-item-icon{color:var(--red)}.spinning{animation:spin 1.5s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.queue-item-info{flex:1;display:flex;gap:8px;align-items:center;min-width:0}.queue-item-project{font-size:12px;color:var(--text-secondary);font-weight:600}.queue-item-task{font-size:13px;color:var(--text)}.queue-item-preset{font-size:11px;color:var(--text-tertiary);margin-left:auto}.queue-item-remove{background:none;border:none;color:var(--text-tertiary);font-size:16px;cursor:pointer;padding:0 4px;line-height:1}.queue-item-remove:hover{color:var(--red)}.queue-item-exit{font-size:11px;font-family:monospace}.exit-ok{color:var(--green)}.exit-fail{color:var(--red)}.queue-visible-btn{background:var(--accent-muted)!important;color:var(--accent)!important;border-color:var(--accent)!important}.queue-visible-btn:hover{background:#58a6ff33!important}.action-copy{color:var(--text-tertiary)}.action-copy:hover{color:var(--accent)}.action-prompt{color:var(--text-tertiary)}.action-prompt:hover{color:var(--purple)}.action-queue{color:var(--text-tertiary)}.action-queue:hover{color:var(--accent)}.topnav{position:sticky;top:0;z-index:100;background:var(--bg);border-bottom:1px solid var(--border);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.topnav-inner{display:flex;align-items:center;gap:0;padding:0 24px;height:52px}.topnav-brand{font-size:15px;font-weight:800;letter-spacing:-.3px;color:var(--text);flex:1;flex-shrink:0}.topnav-items{display:flex;gap:2px}.topnav-item{position:relative;padding:14px 16px;font-size:13px;font-weight:500;letter-spacing:.2px;color:var(--text-secondary);background:none;border:none;cursor:pointer;transition:color .15s;white-space:nowrap}.topnav-item:hover{color:var(--text)}.topnav-item.active{color:var(--text);font-weight:600}.topnav-item.active:after{content:"";position:absolute;bottom:0;left:12px;right:12px;height:2px;background:var(--accent);border-radius:2px 2px 0 0}.topnav-actions{display:flex;align-items:center;gap:4px;flex:1;justify-content:flex-end}.topnav-action-btn{background:none;border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:color .15s,border-color .15s,background .15s}.topnav-action-btn:hover{color:var(--text);border-color:var(--text-secondary);background:var(--surface)}.quick-create-nav-btn{font-size:18px;font-weight:500;line-height:1}.topnav-action-btn:disabled{opacity:.5;cursor:default}.topnav-action-btn.queue-indicator{width:auto;padding:0 10px;font-size:11px;font-weight:600}.app-layout{min-height:calc(100vh - 52px)}.app-content{min-width:0;overflow-x:hidden;padding:28px 24px;max-width:1100px;margin:0 auto}.roadmap-view{padding:0}.roadmap-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.roadmap-filters{display:flex;align-items:center;gap:8px;margin-bottom:20px;flex-wrap:wrap}.roadmap-header h1{font-size:24px;font-weight:700;letter-spacing:-.3px;color:var(--text);margin:0}.roadmap-nav-btn{background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-sm);padding:4px 10px;cursor:pointer;font-size:14px;transition:all var(--transition)}.roadmap-nav-btn:hover{color:var(--text);background:var(--surface-hover)}.roadmap-nav-group{display:flex;gap:4px}.roadmap-today-btn{font-size:12px;font-weight:500;padding:4px 12px}.gantt-table{width:100%;border-collapse:collapse;table-layout:fixed}.gantt-table th{padding:8px 6px;font-size:12px;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border);border-left:1px solid var(--border-subtle);text-align:center}.gantt-table th:first-child{border-left:none}.gantt-table th.current-week{color:var(--accent);border-bottom:2px solid var(--accent)}.gantt-project-cell{padding:8px 12px;font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--text);border-bottom:1px solid var(--border);border-left:3px solid transparent;position:sticky;left:0;background:var(--bg-raised);width:160px;min-width:160px;cursor:pointer}.gantt-project-cell .color-picker-popover{top:100%;left:0;margin-top:4px}.gantt-week-cell{padding:4px;border-bottom:1px solid var(--border);vertical-align:top}.gantt-week-cell.current-week{background:color-mix(in srgb,var(--accent) 5%,transparent)}.gantt-task-bar{border-radius:4px;padding:3px 6px;font-size:11px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px;cursor:pointer;transition:opacity var(--transition)}.gantt-task-bar:hover{opacity:.85}.gantt-task-bar.status-in_progress{background:var(--accent)}.gantt-task-bar.status-testing{background:var(--green)}.gantt-task-bar.status-paused{background:var(--text-secondary)}.gantt-task-bar.status-done{background:var(--green)}.gantt-task-bar.status-todo{background:var(--border);color:var(--text-secondary)}.gantt-task-bar.status-blocked{background:var(--amber)}.gantt-task-bar.status-blocker{background:var(--red)}.gantt-task-bar.status-review{background:var(--teal)}.gantt-task-bar.status-needs_input{background:var(--amber)}.gantt-epics-track{padding:4px 0;vertical-align:top;border-bottom:none}.gantt-epics-container{display:grid;grid-template-columns:repeat(var(--epic-cols),1fr);gap:3px 0}.gantt-epic-bar{position:relative;display:flex;align-items:center;padding:3px 10px;border-radius:4px;background:color-mix(in srgb,var(--epic-color) 18%,transparent);border-left:3px solid var(--epic-color);cursor:grab;overflow:hidden;white-space:nowrap;font-size:11px;transition:background .15s,box-shadow .15s;min-height:24px;-webkit-user-select:none;user-select:none}.gantt-epic-bar:hover{background:color-mix(in srgb,var(--epic-color) 28%,transparent)}.gantt-epic-bar.epic-dragging{opacity:.8;box-shadow:0 2px 8px #0000004d;cursor:grabbing}.gantt-epic-title{color:var(--text);overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.gantt-epic-handle{position:absolute;top:0;bottom:0;width:6px;cursor:col-resize;opacity:0;transition:opacity .15s}.gantt-epic-bar:hover .gantt-epic-handle{opacity:1}.gantt-epic-handle-start{left:0;border-radius:4px 0 0 4px;background:var(--epic-color)}.gantt-epic-handle-end{right:0;border-radius:0 4px 4px 0;background:var(--epic-color)}.gantt-epic-row .gantt-project-cell{border-bottom:none;padding-bottom:0}.gantt-epic-row+tr>.gantt-project-cell-tasks{border-top:none;padding-top:0}.gantt-project-cell-tasks{font-size:0}.gantt-week-cell,.gantt-epics-track{border-left:1px solid var(--border-subtle)}.roadmap-unscheduled{margin-top:20px}.roadmap-unscheduled summary{color:var(--text-secondary);font-size:13px;cursor:pointer;padding:8px 0}.roadmap-unscheduled-list{display:flex;flex-wrap:wrap;gap:6px;padding:8px 0}.gantt-unscheduled-chip{border-radius:4px;padding:4px 10px;font-size:12px;color:var(--text);background:var(--surface);border:1px solid var(--border-subtle);border-left:3px solid var(--text-tertiary);cursor:grab;transition:border-color var(--transition),background var(--transition)}.gantt-unscheduled-chip:hover{border-color:var(--border);background:var(--surface-hover)}.gantt-unscheduled-chip.status-in_progress{background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.gantt-unscheduled-chip.status-done{background:color-mix(in srgb,var(--green) 10%,var(--surface))}.gantt-unscheduled-chip.status-blocked{background:color-mix(in srgb,var(--amber) 10%,var(--surface))}.gantt-chip-project{font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.3px;opacity:.7;margin-right:4px}.gantt-week-cell.drop-target{background:color-mix(in srgb,var(--accent) 12%,transparent)!important;outline:2px dashed var(--accent);outline-offset:-2px}.roadmap-unscheduled.drop-target-unscheduled{background:color-mix(in srgb,var(--accent) 8%,transparent);border-radius:var(--radius-sm)}.gantt-task-bar[draggable=true]{cursor:grab}.gantt-task-bar[draggable=true]:active{cursor:grabbing}.gantt-single-week .gantt-task-bar{white-space:normal;text-overflow:clip;overflow:visible;padding:4px 8px;font-size:12px;line-height:1.4}.roadmap-zoom{display:flex;gap:2px;margin-left:auto;background:var(--surface);border-radius:var(--radius-sm);padding:2px;border:1px solid var(--border-subtle)}.roadmap-zoom-btn{background:none;border:none;color:var(--text-tertiary);font-size:12px;font-weight:600;padding:4px 10px;border-radius:4px;cursor:pointer;transition:all var(--transition)}.roadmap-zoom-btn:hover{color:var(--text)}.roadmap-zoom-btn.active{background:var(--accent);color:#fff}.roadmap-detail-modal{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius);padding:20px;width:620px;max-width:90vw;max-height:80vh;overflow-y:auto;overflow-x:hidden;box-shadow:0 16px 48px #0006}.roadmap-detail-modal .task-card{overflow:visible;border:none;padding:0;background:none}.roadmap-detail-modal .task-header{flex-wrap:wrap}.roadmap-detail-modal .task-actions{opacity:1}.roadmap-detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;position:relative}.roadmap-detail-project{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.roadmap-detail-id{font-size:13px;font-weight:600;color:var(--text-secondary);font-family:var(--font-mono, monospace);position:absolute;left:50%;transform:translate(-50%)}.roadmap-detail-close{background:none;border:none;color:var(--text-tertiary);font-size:22px;cursor:pointer;padding:0 4px;line-height:1;transition:color var(--transition)}.roadmap-detail-close:hover{color:var(--text)}.roadmap-detail-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid var(--border-subtle)}.modal-btn{padding:6px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;border:1px solid var(--border);transition:all var(--transition)}.modal-btn-secondary{background:var(--surface);color:var(--text-secondary)}.modal-btn-secondary:hover{background:var(--bg-hover);color:var(--text)}.modal-btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.modal-btn-primary:hover{filter:brightness(1.15)}.clients-view{padding:0}.clients-header{display:flex;align-items:center;gap:16px;margin-bottom:28px}.clients-header h1{font-size:24px;font-weight:700;letter-spacing:-.3px;color:var(--text);margin:0}.clients-filter-pills{display:flex;gap:6px}.clients-filter-pill{padding:4px 12px;border-radius:12px;font-size:12px;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--text-secondary);transition:all var(--transition)}.clients-filter-pill:hover{color:var(--text);background:var(--surface)}.clients-filter-pill.active{background:var(--accent);color:#fff;border-color:var(--accent)}.clients-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:14px}.client-card{background:var(--bg-raised);border-radius:var(--radius);padding:16px;border-left:3px solid var(--green);transition:opacity var(--transition)}.client-card.status-paused{border-left-color:var(--amber);opacity:.7}.client-card.status-churned{border-left-color:var(--text-tertiary);opacity:.7}.client-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.client-name{font-size:15px;font-weight:600;color:var(--text)}.client-status-badge{font-size:10px;padding:2px 8px;border-radius:10px;color:#fff}.client-status-badge.active{background:var(--green)}.client-status-badge.paused{background:var(--amber)}.client-status-badge.churned{background:var(--text-tertiary)}.client-projects{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.client-platforms{display:flex;align-items:center;gap:8px;margin-bottom:14px}.client-platforms-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary)}.client-platform-list{display:flex;gap:6px}.client-project-chip{background:var(--surface-raised, var(--surface));border:1px solid var(--border);color:var(--text);font-size:12px;font-weight:700;padding:3px 10px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.client-description{background:var(--bg);border-radius:var(--radius-sm);padding:10px;margin-bottom:12px;font-size:12px;color:var(--text);line-height:1.5}.client-stats{display:flex;gap:16px;margin-bottom:8px;font-size:12px}.client-progress-bar{background:var(--border);border-radius:3px;height:6px;overflow:hidden;display:flex}.client-progress-done{background:var(--green)}.client-progress-active{background:var(--accent)}.client-progress-blocked{background:var(--amber)}.client-card-footer{display:flex;align-items:center;gap:12px;margin-top:12px}.client-tasks-btn{font-size:12px;color:var(--accent);background:none;border:none;padding:0;cursor:pointer;font-weight:500}.client-tasks-btn:hover{text-decoration:underline}.client-meta{font-size:11px;color:var(--text-tertiary)}.project-settings-view{padding:24px;max-width:800px}.project-settings-header{display:flex;align-items:center;margin-bottom:16px}.project-settings-header h1{font-size:20px;font-weight:700;margin-bottom:0;color:var(--text)}.project-new-card{border-left-color:var(--accent)!important;margin-bottom:8px}.project-settings-loading{color:var(--text-secondary);padding:20px}.project-settings-list{display:flex;flex-direction:column;gap:12px}.project-settings-card{background:var(--bg-raised);border:1px solid var(--border);border-left:3px solid var(--border);border-radius:8px;padding:16px}.project-card-header{display:flex;align-items:center;gap:10px}.project-code-badge{font-size:11px;font-weight:700;letter-spacing:.5px;padding:2px 8px;border-radius:4px;text-transform:uppercase}.project-card-title{font-weight:600;font-size:15px;color:var(--text)}.project-card-name{font-size:12px;color:var(--text-secondary)}.project-card-tasks{font-size:12px;color:var(--text-secondary);margin-left:auto}.project-edit-btn{font-size:12px;padding:4px 12px;background:var(--bg);border:1px solid var(--border);border-radius:4px;color:var(--text-secondary);cursor:pointer}.project-edit-btn:hover{color:var(--text);border-color:var(--text-secondary)}.project-card-desc{font-size:13px;color:var(--text-secondary);margin-top:8px;line-height:1.5;white-space:pre-wrap}.project-card-edit{display:flex;flex-direction:column;gap:12px}.project-edit-row{display:flex;flex-direction:column;gap:4px}.project-edit-row label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.project-edit-input{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:6px 10px;color:var(--text);font-size:14px}.project-edit-code{max-width:100px;text-transform:uppercase;font-weight:700;letter-spacing:1px}.project-color-row{display:flex;gap:6px;flex-wrap:wrap}.project-edit-textarea{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:8px 10px;color:var(--text);font-size:13px;resize:vertical;font-family:inherit}.project-agent-row{display:flex;gap:6px;flex-wrap:wrap}.project-agent-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all .15s}.project-agent-chip:hover{border-color:var(--text-secondary)}.project-agent-chip.active{border-color:var(--accent);color:var(--text);background:#58a6ff14}.project-agent-icon{font-weight:700;font-size:11px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;background:#ffffff0f}.project-card-agent{font-size:12px;color:var(--text-secondary);margin-top:4px}.project-edit-actions{display:flex;gap:8px;justify-content:flex-end}.backup-section{margin-top:32px;padding:20px;background:var(--bg-raised);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px}.backup-section-header{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.backup-section-title{font-size:14px;font-weight:700;color:var(--text)}.backup-section-desc{font-size:12px;color:var(--text-secondary)}.backup-actions{display:flex;gap:10px;flex-wrap:wrap}.backup-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px}.backup-import-result{margin-top:12px;font-size:12px;color:var(--text-secondary);display:flex;flex-wrap:wrap;gap:6px;align-items:center}.backup-count-chip{background:#58a6ff1f;color:var(--accent);border-radius:4px;padding:2px 8px;font-weight:600;font-size:11px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0009;display:flex;align-items:center;justify-content:center}.modal-box{background:var(--bg-raised);border:1px solid var(--border);border-radius:10px;box-shadow:0 16px 48px #00000080;width:100%;max-width:420px;padding:24px}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.modal-title{font-size:15px;font-weight:700;color:var(--text)}.modal-close{background:none;border:none;cursor:pointer;color:var(--text-tertiary);padding:2px;border-radius:4px}.modal-close:hover{color:var(--text);background:var(--surface-hover)}.backup-modal-desc{font-size:13px;color:var(--text-secondary);margin-bottom:20px;line-height:1.5}.backup-modal-actions{display:flex;gap:10px;flex-wrap:wrap}.agents-view{padding:0}.agents-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.agents-header h2{font-size:24px;font-weight:700;letter-spacing:-.3px;color:var(--text);margin:0}.agents-header-right{display:flex;align-items:center;gap:12px}.agents-count{font-size:13px;color:var(--text-secondary)}.agents-filter-btn{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:12px;padding:4px 10px;cursor:pointer;transition:all var(--transition)}.agents-filter-btn:hover{color:var(--text);border-color:var(--border)}.agents-filter-btn.active{color:var(--accent);border-color:var(--accent);background:rgba(var(--accent-rgb, 99,102,241),.08)}.agents-refresh-btn{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-secondary);padding:6px;cursor:pointer;display:flex;align-items:center;transition:all var(--transition)}.agents-refresh-btn:hover{color:var(--text);border-color:var(--border)}.agents-empty{text-align:center;padding:60px 20px;color:var(--text-secondary)}.agents-empty-icon{font-size:36px;margin-bottom:12px;opacity:.4}.agents-empty-hint{font-size:13px;color:var(--text-tertiary);margin-top:6px}.runs-list{display:flex;flex-direction:column;gap:2px}.run-row{background:var(--bg-raised);border-radius:var(--radius-sm);border-left:3px solid var(--border-subtle);overflow:hidden;transition:border-color var(--transition)}.run-running{border-left-color:var(--accent)}.run-waiting_input{border-left-color:var(--purple)}.run-waiting_permission{border-left-color:var(--amber)}.run-completed,.run-finished{border-left-color:var(--green)}.run-failed{border-left-color:var(--red)}.run-cancelled,.run-idle{border-left-color:var(--border-subtle)}.run-scheduled{border-left-color:var(--amber)}.run-row-main{display:flex;align-items:center;gap:10px;padding:9px 14px;cursor:pointer;-webkit-user-select:none;user-select:none}.run-row-main:hover{background:var(--surface)}.run-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--text-tertiary)}.run-running .run-status-dot{background:var(--accent)}.run-waiting_input .run-status-dot{background:var(--purple)}.run-waiting_permission .run-status-dot{background:var(--amber)}.run-completed .run-status-dot,.run-finished .run-status-dot{background:var(--green)}.run-failed .run-status-dot{background:var(--red)}.run-scheduled .run-status-dot{background:var(--amber);animation:pulse 2s ease-in-out infinite}.run-status-dot.spinning{animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.run-type-badge{font-size:10px;font-weight:700;letter-spacing:.04em;padding:1px 6px;border-radius:3px;background:#bc8cff26;color:var(--purple);flex-shrink:0}.run-type-cc{background:var(--accent-muted);color:var(--accent)}.run-project{font-size:12px;font-weight:600;color:var(--text-secondary);flex-shrink:0}.run-title{font-size:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.run-spacer{flex:1}.run-times{font-size:11px;color:var(--text-tertiary);font-family:SF Mono,Fira Code,monospace;white-space:nowrap;flex-shrink:0}.run-id{font-size:11px;color:var(--text-tertiary);font-family:SF Mono,Fira Code,monospace;flex-shrink:0}.run-status-pill{font-size:10px;font-weight:600;padding:2px 8px;border-radius:10px;flex-shrink:0;white-space:nowrap}.pill-running{background:var(--accent-muted);color:var(--accent)}.pill-waiting_input{background:#bc8cff1f;color:var(--purple)}.pill-waiting_permission{background:var(--amber-muted);color:var(--amber)}.pill-completed,.pill-finished{background:var(--green-muted);color:var(--green)}.pill-failed{background:var(--red-muted, rgba(248,81,73,.12));color:var(--red)}.pill-cancelled,.pill-idle,.pill-pending{background:var(--surface);color:var(--text-tertiary)}.pill-scheduled{background:var(--amber-muted);color:var(--amber)}.pill-missed{background:var(--red-muted, rgba(248,81,73,.12));color:var(--red)}.run-cc-running{border-left-color:#3b82f6}.run-cc-done{border-left-color:#22c55e}.run-cc-failed{border-left-color:#ef4444}.pill-cc-running{background:#3b82f6;color:#fff}.pill-cc-done{background:#22c55e;color:#fff}.pill-cc-failed{background:#ef4444;color:#fff}.run-elapsed{font-size:.78rem;color:var(--text-tertiary);font-variant-numeric:tabular-nums;margin-right:8px}.claude-event-log{padding:8px 12px;display:flex;flex-direction:column;gap:4px}.claude-event-entry{display:flex;align-items:center;gap:8px;font-size:.8rem}.claude-event-label{flex:1;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.claude-event-notification .claude-event-label{color:var(--text-primary)}.claude-event-time{font-size:.75rem;color:var(--text-tertiary);font-variant-numeric:tabular-nums;flex-shrink:0}.run-chevron{font-size:10px;color:var(--text-tertiary);flex-shrink:0}.run-detail{padding:0 14px 12px 30px;border-top:1px solid var(--border-subtle)}.run-reply{margin-top:8px}.run-detail-footer{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}.agent-project{font-size:13px;font-weight:600;color:var(--text);background:var(--surface);padding:2px 8px;border-radius:4px}.agent-task{font-size:12px;color:var(--text-secondary);font-family:SF Mono,Fira Code,monospace}.agent-status-badge{font-size:11px;font-weight:600;padding:3px 10px;border-radius:12px;display:flex;align-items:center;gap:5px}.badge-working{background:var(--accent-muted);color:var(--accent)}.badge-waiting_permission{background:var(--amber-muted);color:var(--amber)}.badge-waiting_input{background:#bc8cff1f;color:var(--purple)}.badge-finished{background:var(--green-muted);color:var(--green)}.badge-idle{background:var(--surface);color:var(--text-tertiary)}.agent-status-icon.spinning{display:inline-block;animation:spin 1s linear infinite}.agent-output{background:var(--bg);border-radius:var(--radius-sm);padding:10px 12px;margin-bottom:4px;max-height:200px;overflow-y:auto}.agent-output.expanded{max-height:500px}.agent-expand-btn{background:none;border:none;color:var(--text-tertiary);font-size:11px;cursor:pointer;padding:2px 0;margin-bottom:8px;transition:color var(--transition)}.agent-expand-btn:hover{color:var(--text-secondary)}.agent-output-pre{font-family:SF Mono,Fira Code,monospace;font-size:11px;line-height:1.5;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;margin:0}.agent-actions{display:flex;gap:8px;margin-bottom:8px}.agent-btn{padding:6px 14px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);transition:all var(--transition)}.agent-btn:hover{background:var(--surface-hover)}.agent-btn:disabled{opacity:.5;cursor:not-allowed}.agent-btn-allow{background:var(--green-muted);color:var(--green);border-color:var(--green)}.agent-btn-allow:hover{background:var(--green);color:#fff}.agent-btn-deny{background:transparent;color:var(--red);border-color:var(--red)}.agent-btn-deny:hover{background:var(--red);color:#fff}.agent-btn-respond{background:#bc8cff1f;color:var(--purple);border-color:var(--purple)}.agent-btn-respond:hover{background:var(--purple);color:#fff}.agent-btn-send{background:var(--accent-muted);color:var(--accent);border-color:var(--accent)}.agent-btn-send:hover{background:var(--accent);color:#fff}.agent-btn-cancel{padding:6px 8px;background:transparent;color:var(--text-tertiary);border:none}.agent-input-row{display:flex;gap:6px;width:100%;align-items:center}.agent-input{flex:1;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:12px;font-family:SF Mono,Fira Code,monospace;outline:none}.agent-input:focus{border-color:var(--accent)}.agent-card-footer{display:flex;justify-content:flex-end;align-items:center;gap:8px}.agent-btn-refresh{background:none;border:none;color:var(--text-tertiary);font-size:14px;cursor:pointer;padding:2px 4px;border-radius:4px;transition:all var(--transition)}.agent-btn-refresh:hover{color:var(--text);background:var(--surface)}.agent-summary{margin-bottom:8px;padding:10px 12px;background:#bc8cff14;border-left:2px solid var(--purple);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.agent-summary-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--purple);margin-bottom:4px}.agent-summary-body{font-size:12px;color:var(--text);line-height:1.5}.agent-summarize-btn{background:none;border:1px solid var(--border-subtle);color:var(--text-tertiary);font-size:11px;cursor:pointer;padding:4px 10px;border-radius:var(--radius-sm);margin-bottom:8px;transition:all var(--transition)}.agent-summarize-btn:hover{color:var(--purple);border-color:var(--purple)}.agent-summarize-btn:disabled{opacity:.5;cursor:not-allowed}.agent-pane-id{font-size:10px;color:var(--text-tertiary);font-family:SF Mono,Fira Code,monospace}.pi-badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:4px;background:#bc8cff26;color:var(--purple);letter-spacing:.5px}.pi-task-title{font-size:13px;color:var(--text);margin-bottom:8px;font-weight:500}.pi-prompt{margin-bottom:8px}.pi-prompt-text{font-size:12px;color:var(--purple);background:#bc8cff14;padding:8px 12px;border-radius:var(--radius-sm);border-left:2px solid var(--purple);margin-bottom:8px;line-height:1.5}.pi-empty{color:var(--text-tertiary);font-style:italic}.pi-event-log{display:flex;flex-direction:column;gap:4px;margin-bottom:8px;max-height:160px;overflow:hidden}.pi-event-log.expanded{max-height:none}.pi-event-entry{display:flex;flex-direction:column;gap:2px;padding:6px 10px;border-radius:var(--radius-sm);font-size:12px;line-height:1.5}.pi-event-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;opacity:.7}.pi-event-text{white-space:pre-wrap;word-break:break-word}.pi-event-message{background:var(--bg-secondary);color:var(--text)}.pi-event-message .pi-event-label{color:var(--text-secondary)}.pi-event-question{background:#bc8cff14;border-left:2px solid var(--purple);color:var(--text)}.pi-event-question .pi-event-label{color:var(--purple)}.pi-event-answer{background:#48c78e14;border-left:2px solid var(--green);color:var(--text)}.pi-event-answer .pi-event-label{color:var(--green)}.pi-event-empty{font-size:12px;color:var(--text-tertiary);font-style:italic;padding:4px 0}.task-card-compact{padding:8px 10px;gap:4px}.task-card-compact .compact-row{display:flex;align-items:center;gap:4px 5px;flex-wrap:wrap;margin-bottom:3px}.task-card-compact .compact-row:last-of-type{margin-bottom:0}.task-card-compact .compact-row-badges{margin-top:4px}.task-card-compact .compact-title{font-size:12px;font-weight:500;color:var(--text);line-height:1.3;padding-left:1px}.task-card-compact .compact-prio{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;font-size:10px;font-weight:700;flex-shrink:0;line-height:1}.compact-prio.priority-blocker{background:#bc1c1c33;color:#d42020}.compact-prio.priority-critical{background:#db373726;color:#e04545}.compact-prio.priority-high{background:#f8514926;color:var(--red)}.compact-prio.priority-medium{background:#d2992226;color:var(--amber)}.compact-prio.priority-low{background:#7d859026;color:var(--text-tertiary)}.task-card-compact .task-project{font-size:9px;padding:1px 5px}.task-card-compact .task-num{font-size:9px;color:var(--text-secondary)}.compact-priority-picker-wrap{flex-shrink:0}.compact-prio-clickable{border:0;cursor:pointer;font-family:inherit;padding:0}.compact-prio-clickable:hover{filter:brightness(1.18)}.compact-epic-chip{cursor:pointer}.compact-epic-chip:hover{filter:brightness(1.2)}.compact-badge{font-size:9px;font-weight:600;padding:1px 5px;border-radius:6px;display:inline-flex;align-items:center;gap:2px;line-height:1}.compact-badge-me{background:#58a6ff2e;color:var(--accent)}.compact-badge-comments{background:#7d859026;color:var(--text-secondary)}.compact-badge-comments svg{display:block}.compact-badge-attachments{background:#d299222e;color:#d29922}.compact-badge-attachments svg{display:block}.compact-epic{display:flex;align-items:center;gap:4px;margin-top:5px;padding:2px 6px;border-radius:4px;border:1px solid;font-size:10px;font-weight:600;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;letter-spacing:.2px}.compact-epic svg{flex-shrink:0}.compact-epic:hover{filter:brightness(1.2)}.compact-blocked-by{font-size:9px;color:var(--red);opacity:.8;display:flex;align-items:center;gap:3px;padding-left:1px}.compact-blocked-by svg{flex-shrink:0;stroke:var(--red)}.compact-status-picker-wrap{flex-shrink:0}.compact-status-chip{border:0;cursor:pointer;font-family:inherit}.compact-badge-stalled{font-weight:600;text-transform:uppercase;letter-spacing:.3px}.compact-badge-stalled:hover{filter:brightness(1.18)}.compact-badge-stalled.status-testing{background:#3fb95026;color:var(--green)}.compact-badge-stalled.status-review{background:#39d2c026;color:var(--teal)}.compact-badge-stalled.status-needs_input{background:#d2992226;color:var(--amber)}.compact-badge-stalled.status-blocker{background:#f8514926;color:var(--red)}.compact-badge-stalled.status-paused{background:#7d85901f;color:var(--text-secondary)}.kanban-board{display:flex;gap:12px;overflow-x:auto;padding-bottom:16px;min-height:400px}.kanban-column{flex:1;min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;flex-direction:column}.kanban-column-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border)}.kanban-column-title{font-size:13px;font-weight:600;color:var(--text)}.kanban-column-count{font-size:11px;color:var(--text-tertiary);background:var(--bg-raised);border-radius:8px;padding:2px 7px}.kanban-column-header-right{display:flex;align-items:center;gap:6px}.kanban-archive-btn{font-size:11px;color:var(--text-tertiary);background:none;border:1px solid var(--border);border-radius:5px;padding:2px 7px;cursor:pointer;transition:color .15s,border-color .15s}.kanban-archive-btn:hover:not(:disabled){color:var(--text);border-color:var(--text-tertiary)}.kanban-archive-btn:disabled{opacity:.5;cursor:default}.kanban-column-body{flex:1;padding:8px;overflow-y:auto;min-height:80px}.kanban-column-body .task-card{margin-bottom:6px}@media(max-width:768px){.kanban-board{flex-direction:column}.kanban-column{min-width:auto}}.link-picker{position:absolute;top:100%;right:0;z-index:100;background:var(--bg-secondary, #1e1e2e);border:1px solid var(--border-color, #333);border-radius:8px;padding:8px;min-width:280px;max-width:340px;box-shadow:0 8px 24px #0006}.link-type-tabs{display:flex;gap:0;margin-bottom:8px;border-radius:4px;overflow:hidden;border:1px solid var(--border-color, #333)}.link-type-tab{flex:1;padding:5px 8px;background:var(--bg-primary, #121220);border:none;color:var(--text-secondary, #a0a0b8);font-size:11px;font-weight:500;cursor:pointer;transition:background .15s,color .15s}.link-type-tab:not(:last-child){border-right:1px solid var(--border-color, #333)}.link-type-tab.active{background:var(--accent-color, #7c5cff);color:#fff}.link-type-tab:hover:not(.active){background:var(--bg-hover, #2a2a3e)}.link-search-input{width:100%;padding:6px 8px;background:var(--bg-primary, #121220);border:1px solid var(--border-color, #333);border-radius:4px;color:var(--text-primary, #e0e0f0);font-size:12px;outline:none;box-sizing:border-box}.link-search-input:focus{border-color:var(--accent-color, #7c5cff)}.link-search-results{max-height:200px;overflow-y:auto;margin-top:4px}.link-result-item{display:flex;gap:6px;align-items:center;width:100%;padding:5px 6px;background:none;border:none;color:var(--text-primary, #e0e0f0);cursor:pointer;font-size:12px;border-radius:4px;text-align:left}.link-result-item:hover{background:var(--bg-hover, #2a2a3e)}.link-result-id{color:#f0c040;font-weight:600;font-size:10px;white-space:nowrap}.link-result-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-no-results{padding:8px 6px;color:#a0a0b8;font-size:11px;font-style:italic}.link-existing{margin-top:8px;padding-top:8px;border-top:1px solid var(--border-color, #333)}.link-existing-label{font-size:10px;color:#c0c0d0;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.link-existing-item{display:flex;align-items:center;gap:6px;padding:3px 4px;font-size:12px}.link-dep-id{color:#f0c040;font-weight:600;font-size:10px}.link-dep-status{font-size:10px;color:#a0a0b8}.link-dep-status.dep-done{color:var(--green, #3fb950)}.link-remove-btn{margin-left:auto;background:none;border:none;color:#a0a0b8;cursor:pointer;font-size:14px;padding:0 4px;line-height:1}.link-remove-btn:hover{color:var(--red, #f85149)}.action-link.active{color:var(--accent-color, #7c5cff)}.epics-view{max-width:900px;margin:0 auto;padding:24px 16px}.epics-chip-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.epics-total-count{font-size:12px;font-weight:600;color:#f0c040;margin-left:8px}.epics-loading,.epics-empty{color:#a0a0b8;font-size:13px;padding:24px 0;text-align:center}.epics-list{display:flex;flex-direction:column;gap:8px}.epic-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden;transition:border-color .15s}.epic-card:hover{border-color:#f0c0404d}.epic-card.expanded{border-color:#f0c04066}.epic-card-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;cursor:pointer;gap:12px}.epic-drag-handle{cursor:grab;color:var(--text-secondary, #8b949e);display:flex;align-items:center;opacity:0;transition:opacity .15s;padding:2px}.epic-card:hover .epic-drag-handle{opacity:1}.epic-drag-handle:active{cursor:grabbing}.epic-card-left{display:flex;align-items:center;gap:10px;min-width:0}.epic-display-id{font-size:11px;font-weight:700;color:#f0c040;white-space:nowrap;letter-spacing:.02em}.epic-card-title{font-size:13px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.epic-clickable{cursor:pointer;transition:opacity .15s}.epic-clickable:hover{opacity:.8}.epic-inline-input{background:#ffffff0f;border:1px solid #f0c040;border-radius:4px;color:#e0e0f0;font-size:13px;font-weight:600;padding:2px 8px;outline:none;min-width:200px;box-sizing:border-box}.epic-inline-select{background:#ffffff0f;border:1px solid #f0c040;border-radius:4px;color:#e0e0f0;font-size:11px;padding:2px 6px;outline:none;cursor:pointer}.epic-client-empty,.epic-priority-empty{color:#a0a0b8;font-size:10px;border:1px dashed rgba(255,200,50,.25);padding:1px 7px;border-radius:4px}.epic-card-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.epic-date-range{font-size:11px;color:#b0b0d0;display:flex;align-items:center;gap:4px;white-space:nowrap}.epic-date-empty{color:#a0a0b8;font-size:10px;border:1px dashed rgba(255,200,50,.25);padding:1px 7px;border-radius:4px}.epic-date-editor{display:flex;align-items:center;gap:4px}.epic-date-input{background:var(--bg-secondary, #161b22);border:1px solid rgba(255,255,255,.15);color:var(--text, #e6edf3);border-radius:4px;padding:2px 4px;font-size:11px;width:120px}.epic-date-input::-webkit-calendar-picker-indicator{filter:invert(.8)}.epic-date-arrow{color:#8b949e;font-size:11px}.epic-date-close{background:none;border:none;color:#8b949e;cursor:pointer;font-size:14px;padding:0 2px}.epic-date-close:hover{color:#f85149}.epic-client{font-size:11px;color:#e0e0f0;background:#ffc8321f;border:1px solid rgba(255,200,50,.2);padding:1px 7px;border-radius:4px}.epic-status-badge{font-size:10px;font-weight:600;color:#fff;padding:1px 8px;border-radius:4px;text-transform:capitalize}.epic-priority{font-size:10px;font-weight:600;color:#e0c080;text-transform:uppercase;letter-spacing:.04em}.epic-task-count{display:flex;align-items:center;gap:3px;font-size:11px;color:#e0e0f0;font-weight:600}.epic-chevron{transition:transform .2s;color:#c0c0d0}.epic-chevron.open{transform:rotate(180deg)}.epic-card-body{position:relative;padding:0 14px 14px;border-top:1px solid var(--border-subtle)}.epic-docs-row{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 6px}.epic-doc-link{display:inline-flex;align-items:center;gap:8px;padding:4px 8px;border:1px solid rgba(255,255,255,.08);border-radius:6px;background:#ffffff08;color:inherit;font:inherit;cursor:pointer;text-align:left;transition:background .15s,border-color .15s,color .15s}.epic-doc-link:hover{background:#ffffff0d;border-color:#ffffff29}.epic-doc-id{font-family:var(--font-mono, monospace);font-size:10px;font-weight:700;color:var(--text-secondary);white-space:nowrap}.epic-doc-title{font-size:12px;color:var(--text)}.epic-description-wrap{margin:10px 0}.epic-description{font-size:12px;color:#c8c8e0;margin:0;line-height:1.5}.epic-description-empty{color:#8080a0;font-style:italic;border:1px dashed rgba(255,200,50,.25);padding:6px 10px;border-radius:4px}.epic-description-textarea{width:100%;background:#ffffff0f;border:1px solid #f0c040;border-radius:4px;color:#e0e0f0;font-size:12px;line-height:1.5;padding:6px 10px;outline:none;resize:vertical;min-height:60px;font-family:inherit;box-sizing:border-box}.epic-status-bar{display:flex;height:6px;border-radius:3px;overflow:hidden;margin:10px 0;gap:1px}.epic-status-segment{min-width:4px;border-radius:2px}.epic-tasks-section{margin:8px 0}.epic-tasks-toggle{display:flex;justify-content:flex-end;margin-bottom:4px}.epic-archived-toggle{display:inline-flex;align-items:center;gap:4px;background:transparent;border:1px solid var(--border-subtle);border-radius:4px;color:#a0a0b8;font-size:11px;padding:2px 8px;cursor:pointer;transition:all .15s}.epic-archived-toggle:hover{color:var(--text);border-color:var(--text-muted)}.epic-archived-toggle.active{color:#58a6ff;border-color:#58a6ff}.epic-tasks-list{margin:0}.epic-task-row{display:grid;grid-template-columns:78px minmax(0,1fr) 82px 98px;align-items:center;column-gap:10px;padding:4px 0;font-size:12px}.epic-task-id{font-weight:600;font-size:10px;white-space:nowrap;width:78px}.epic-task-title{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.epic-task-chip-wrap{width:100%;min-width:0}.epic-task-priority-chip.meta-pill{width:100%;justify-content:center;font-size:10px;font-weight:700;padding:2px 6px}.epic-task-status-chip{width:100%;justify-content:center;cursor:pointer;text-transform:capitalize;padding:2px 6px}.epic-task-status-chip:hover,.epic-task-priority-chip:hover{filter:brightness(1.15)}.epic-no-tasks{font-size:12px;color:#a0a0b8;padding:8px 0;font-style:italic}.epic-comments{margin-top:12px;border-top:1px solid var(--border-subtle);padding-top:10px}.epic-comments-list{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.epic-comment{background:var(--surface);border:1px solid var(--border-subtle);border-radius:6px;padding:8px 10px}.epic-comment-author{font-size:11px;font-weight:600;color:var(--accent);margin-right:6px}.epic-comment-date{font-size:11px;color:var(--text-tertiary)}.epic-comment-delete{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:14px;padding:0 2px;line-height:1;opacity:0;transition:opacity .15s,color .15s}.epic-comment:hover .epic-comment-delete{opacity:1}.epic-comment-delete:hover{color:#f85149}.epic-comment-body{font-size:12px;color:var(--text-secondary);margin:4px 0 0;white-space:pre-wrap}.epic-comment-input-row{display:flex;gap:8px;align-items:flex-end}.epic-comment-input{flex:1;background:var(--surface);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text);font-size:12px;padding:6px 8px;resize:none;font-family:inherit}.epic-comment-input:focus{outline:none;border-color:var(--accent)}.epic-comment-submit{background:var(--surface);border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-secondary);font-size:11px;padding:5px 12px;cursor:pointer;white-space:nowrap}.epic-comment-submit:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.epic-comment-submit:disabled{opacity:.4;cursor:not-allowed}.epic-task-archived{opacity:.45}.epic-view-tasks-btn{margin-top:8px;background:linear-gradient(135deg,#f0c040,#e6a020);border:none;border-radius:6px;color:#1a1a2e;font-size:11px;font-weight:700;padding:5px 14px;cursor:pointer;transition:all .15s}.epic-view-tasks-btn:hover{box-shadow:0 2px 8px #f0c0404d}.epic-add-task-btn{margin-top:8px;margin-right:8px;background:transparent;border:1.5px solid rgba(240,192,64,.4);border-radius:6px;color:#f0c040;font-size:11px;font-weight:700;padding:5px 14px;cursor:pointer;transition:all .15s}.epic-add-task-btn:hover{background:#f0c0401a;border-color:#f0c040}.epic-detail-loading{padding:12px 0;font-size:12px;color:#a0a0b8}.epic-detail-refresh{position:absolute;top:8px;right:10px;background:none;border:none;color:#8888a8;cursor:pointer;padding:4px;border-radius:4px;line-height:0;transition:color .15s,background .15s}.epic-detail-refresh:hover{color:#58a6ff;background:#58a6ff1a}.epic-detail-refresh.spinning svg{animation:epic-spin .6s linear infinite}@keyframes epic-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.epic-edit-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin:8px 0}.epic-edit-btn{background:transparent;border:1px solid rgba(240,192,64,.3);border-radius:4px;color:#f0c040;font-size:11px;font-weight:600;padding:3px 10px;cursor:pointer;transition:all .15s;white-space:nowrap;flex-shrink:0}.epic-edit-btn:hover{background:#f0c0401a;border-color:#f0c040}.epic-edit-form{display:flex;flex-direction:column;gap:8px;margin:10px 0;padding:10px;background:#f0c0400a;border:1px solid rgba(240,192,64,.2);border-radius:6px}.epic-edit-input{width:100%;background:#ffffff0f;border:1px solid rgba(240,192,64,.25);border-radius:4px;color:#e0e0f0;font-size:13px;font-weight:600;padding:6px 10px;outline:none;box-sizing:border-box}.epic-edit-input:focus{border-color:#f0c040}.epic-edit-row{display:flex;gap:8px;flex-wrap:wrap}.epic-edit-select{background:#ffffff0d;border:1px solid rgba(240,192,64,.18);border-radius:4px;color:#e0e0f0;font-size:11px;padding:4px 8px;outline:none;cursor:pointer}.epic-edit-select:focus{border-color:#f0c040}.epic-edit-actions{display:flex;gap:8px}.epic-save-btn{background:linear-gradient(135deg,#f0c040,#e6a020);border:none;border-radius:4px;color:#1a1a2e;font-size:11px;font-weight:700;padding:4px 14px;cursor:pointer}.epic-save-btn:hover{box-shadow:0 2px 8px #f0c0404d}.epic-cancel-btn{background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:4px;color:#c0c0d0;font-size:11px;font-weight:600;padding:4px 14px;cursor:pointer}.epic-cancel-btn:hover{border-color:#ffffff4d;color:#e0e0f0}.epic-task-remove{justify-self:end;background:none;border:none;color:#a0a0b8;cursor:pointer;font-size:16px;padding:0 4px;line-height:1;opacity:0;transition:all .15s}.epic-task-row:hover .epic-task-remove{opacity:1}.epic-task-remove:hover{color:#f85149}.epic-card-actions{display:flex;gap:8px;margin-top:10px}.epic-link-task-btn{margin-top:8px;background:transparent;border:1.5px solid rgba(88,166,255,.4);border-radius:6px;color:#58a6ff;font-size:12px;font-weight:700;padding:5px 14px;cursor:pointer;transition:all .15s}.epic-link-task-btn:hover{background:#58a6ff1a;border-color:#58a6ff}.epic-link-search{margin-top:10px;background:#14142899;border:1px solid rgba(88,166,255,.3);border-radius:8px;padding:10px}.epic-link-search-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.epic-link-search-label{font-size:12px;font-weight:600;color:#58a6ff}.epic-link-search-close{background:none;border:none;color:#a0a0b8;font-size:18px;cursor:pointer;padding:0 4px;line-height:1}.epic-link-search-close:hover{color:#f85149}.epic-link-search-input{width:100%;box-sizing:border-box;background:#0a0a19b3;border:1px solid rgba(88,166,255,.3);border-radius:6px;color:#e0e0f0;font-size:13px;padding:7px 10px;outline:none;transition:border-color .15s}.epic-link-search-input:focus{border-color:#58a6ff}.epic-link-search-input::placeholder{color:#606080}.epic-link-search-loading{font-size:12px;color:#a0a0b8;padding:8px 0;font-style:italic}.epic-link-search-results{margin-top:6px;max-height:200px;overflow-y:auto}.epic-link-search-result{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:5px;cursor:pointer;transition:background .12s}.epic-link-search-result:hover{background:#58a6ff1f}.epic-link-result-id{font-size:11px;font-weight:700;color:#58a6ff;white-space:nowrap}.epic-link-result-title{font-size:12px;color:#e0e0f0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.epic-link-result-status{font-size:10px;font-weight:600;text-transform:uppercase;white-space:nowrap}.epic-link-search-empty{font-size:12px;color:#a0a0b8;padding:8px 0;font-style:italic}.epic-archive-toggle{display:flex;align-items:center;gap:5px;background:transparent;border:1px solid rgba(139,148,158,.3);border-radius:6px;color:#8b949e;font-size:11px;font-weight:600;padding:3px 10px;cursor:pointer;transition:all .15s;margin-left:auto}.epic-archive-toggle:hover{border-color:#8b949e80;color:#c0c0d0}.epic-archive-toggle.active{border-color:#d2992266;color:#d29922;background:#d2992214}.epic-archive-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#8b949e;cursor:pointer;padding:2px;border-radius:4px;transition:all .15s;opacity:0}.epic-card-header:hover .epic-archive-btn{opacity:1}.epic-archive-btn:hover{color:#d29922;background:#d299221f}.epic-card.archived{opacity:.55;border-style:dashed}.epic-card.archived:hover{opacity:.8}.epic-card.archived .epic-card-title{text-decoration:line-through;text-decoration-color:#8b949e80}.epic-card.postponed{opacity:.6;border-left:3px solid #e07020}.epic-card.postponed:hover{opacity:.85}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-dialog{background:var(--surface, #1e1e2e);border:1px solid rgba(255,200,50,.2);border-radius:12px;padding:24px;min-width:340px;max-width:480px;box-shadow:0 16px 48px #00000080,0 0 0 1px #ffffff0d}.confirm-dialog.confirm-danger{border-color:#f851494d}.confirm-body{margin-bottom:20px}.confirm-title{font-size:16px;font-weight:700;color:#e0e0f0;margin-bottom:8px}.confirm-danger .confirm-title{color:#f85149}.confirm-message{font-size:14px;color:#c8c8e0;line-height:1.5}.confirm-actions{display:flex;justify-content:flex-end;gap:10px}.confirm-btn{padding:8px 20px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s;border:none}.confirm-btn-cancel{background:#ffffff14;color:#c0c0d0;border:1px solid rgba(255,255,255,.12)}.confirm-btn-cancel:hover{background:#ffffff1f;color:#e0e0f0}.confirm-btn-ok{background:linear-gradient(135deg,#f0c040,#e6a020);color:#1a1a2e}.confirm-btn-ok:hover{box-shadow:0 4px 14px #f0c04059}.confirm-btn-danger{background:linear-gradient(135deg,#f85149,#da3633);color:#fff}.confirm-btn-danger:hover{box-shadow:0 4px 14px #f8514959}.confirm-fade-enter-active,.confirm-fade-leave-active{transition:opacity .2s ease}.confirm-fade-enter-active .confirm-dialog,.confirm-fade-leave-active .confirm-dialog{transition:transform .2s ease}.confirm-fade-enter-from,.confirm-fade-leave-to{opacity:0}.confirm-fade-enter-from .confirm-dialog,.confirm-fade-leave-to .confirm-dialog{transform:scale(.95) translateY(10px)}.subtasks-section{margin:8px 0;padding:8px 0;border-top:1px solid var(--border)}.subtasks-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:12px;padding:2px 0;width:100%}.subtasks-toggle:hover{color:var(--text)}.subtasks-progress,.subtasks-progress-bar{flex:1;height:3px;background:var(--border);border-radius:2px;overflow:hidden;min-width:40px}.subtasks-progress-bar{margin-bottom:6px}.subtasks-progress-fill{display:block;height:100%;background:#3fb950;border-radius:2px;transition:width .2s}.subtasks-header{display:flex;align-items:center;gap:6px;margin-bottom:4px}.subtasks-label{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.subtasks-count{font-size:11px;color:var(--text-secondary)}.subtasks-collapse-btn{margin-left:auto;background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:11px}.subtasks-collapse-btn:hover{color:var(--text)}.subtasks-list{display:flex;flex-direction:column}.subtask-item{display:flex;align-items:flex-start;gap:8px;padding:3px 0;font-size:12px}.subtask-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.subtask-desc-view{font-size:12px;color:var(--text-secondary);cursor:pointer;border-radius:4px;padding:6px 8px;margin-top:4px;border-left:2px solid color-mix(in srgb,var(--accent) 40%,transparent);background:color-mix(in srgb,var(--accent) 4%,transparent);transition:background .15s,border-color .15s}.subtask-desc-view:hover{background:color-mix(in srgb,var(--accent) 8%,transparent);border-left-color:var(--accent);color:var(--text)}.subtask-desc-view.markdown-body h1,.subtask-desc-view.markdown-body h2,.subtask-desc-view.markdown-body h3{font-size:12px;font-weight:700;color:var(--text);margin:6px 0 2px;padding:0;border:none}.subtask-desc-view.markdown-body h1{font-size:13px}.subtask-desc-view.markdown-body p{margin:2px 0;line-height:1.5}.subtask-desc-view.markdown-body code{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);border-radius:3px;padding:1px 4px;font-size:11px;font-family:SF Mono,Fira Code,monospace}.subtask-desc-view.markdown-body pre{background:var(--bg-primary);border:1px solid var(--border);border-radius:5px;padding:8px 10px;overflow-x:auto;margin:6px 0}.subtask-desc-view.markdown-body pre code{background:none;color:var(--text);padding:0;font-size:11px}.subtask-desc-view.markdown-body ul,.subtask-desc-view.markdown-body ol{padding-left:16px;margin:4px 0}.subtask-desc-view.markdown-body li{margin:1px 0;line-height:1.5}.subtask-desc-view.markdown-body table{border-collapse:collapse;width:100%;margin:6px 0;font-size:11px}.subtask-desc-view.markdown-body th,.subtask-desc-view.markdown-body td{border:1px solid var(--border);padding:4px 8px;text-align:left}.subtask-desc-view.markdown-body th{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--text);font-weight:600}.subtask-desc-view.markdown-body tr:nth-child(2n) td{background:color-mix(in srgb,var(--bg-secondary) 50%,transparent)}.subtask-desc-view.markdown-body blockquote{border-left:3px solid var(--accent);margin:4px 0;padding:2px 10px;color:var(--text-secondary);font-style:italic}.subtask-desc-view.markdown-body strong{color:var(--text);font-weight:600}.subtask-desc-view.markdown-body em{color:color-mix(in srgb,var(--text) 80%,var(--accent))}.subtask-desc-view.markdown-body hr{border:none;border-top:1px solid var(--border);margin:6px 0}.subtask-desc-add{color:var(--text-secondary);font-size:11px;opacity:.4;cursor:pointer;transition:opacity .15s}.subtask-desc-add:hover{opacity:1}.subtask-comments-toggle{display:inline-flex;align-items:center;gap:5px;width:fit-content;margin-top:4px;padding:3px 7px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:#7d85901a;color:var(--text);font:inherit;font-size:11px;font-weight:600;cursor:pointer}.subtask-comments-toggle:hover{background:var(--surface-hover);border-color:var(--border)}.subtask-comments-chevron{color:var(--text-secondary);transition:transform .15s ease}.subtask-comments-chevron.open{transform:rotate(90deg)}.subtask-comments-count{min-width:18px;padding:0 5px;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);font-size:10px;line-height:16px;text-align:center}.subtask-comments{display:flex;flex-direction:column;gap:8px;margin-top:6px}.subtask-comment{padding:8px 10px;border:1px solid var(--border-subtle);border-left:2px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:6px;background:#7d859014}.subtask-comment-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px;color:var(--text-secondary);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.35px}.subtask-comment-body{max-height:360px;overflow:auto;color:var(--text);font-size:12px;line-height:1.5}.subtask-desc-input{width:100%;background:var(--bg-secondary);border:1px solid var(--accent);border-radius:3px;color:var(--text);font-size:11px;padding:3px 6px;outline:none;resize:vertical;font-family:inherit}.subtask-create-desc{width:100%;background:transparent;border:1px solid var(--border);border-radius:3px;color:var(--text);font-size:12px;padding:4px 8px;margin-top:4px;outline:none;resize:vertical;font-family:inherit;box-sizing:border-box}.subtask-create-desc:focus{border-color:var(--accent)}.subtask-create-desc::placeholder{color:var(--text-secondary)}.subtask-item.done .subtask-title{text-decoration:line-through;color:var(--text-secondary)}.subtask-status-wrap{position:relative;flex-shrink:0}.subtask-status-chip{background:none;border:none;padding:2px 7px;cursor:pointer;font-size:10px;font-family:inherit;font-weight:700;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.subtask-status-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:100;background:var(--surface-elevated, #1c2030);border:1px solid var(--border);border-radius:6px;padding:4px;display:flex;flex-direction:column;gap:2px;min-width:110px;box-shadow:0 4px 16px #0006}.subtask-status-option{background:none;border:none;padding:4px 10px;cursor:pointer;font-size:10px;font-family:inherit;font-weight:700;text-transform:uppercase;letter-spacing:.4px;text-align:left;border-radius:4px;white-space:nowrap}.subtask-status-option:hover{filter:brightness(1.3);background:#ffffff0d}.subtask-checkbox{accent-color:#3fb950;cursor:pointer;flex-shrink:0;width:14px;height:14px;min-width:14px;-moz-appearance:auto;appearance:auto;-webkit-appearance:checkbox;margin:0}.subtask-id{font-weight:600;font-size:10px;white-space:nowrap;flex-shrink:0}.subtask-title{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:text}.subtask-title-input{width:100%;background:var(--bg-secondary);border:1px solid var(--accent);border-radius:3px;color:var(--text);font-size:12px;padding:1px 4px;outline:none;min-width:0}.subtask-delete{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:16px;line-height:1;padding:0 4px;flex-shrink:0;opacity:.4;transition:opacity .15s,color .15s}.subtask-item:hover .subtask-delete{opacity:1}.subtask-delete:hover{color:#f85149;opacity:1}.subtask-add-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:11px;padding:3px 0;margin-top:2px}.subtask-add-btn:hover{color:var(--accent)}.subtask-create{margin-top:4px}.subtask-create-input{width:100%;background:transparent;border:1px solid var(--border);color:var(--text);border-radius:4px;padding:4px 8px;font-size:12px;outline:none}.subtask-create-input:focus{border-color:var(--accent)}.subtask-create-input::placeholder{color:var(--text-secondary)}.compact-badge-subtasks{color:#3fb950}.task-attachments{position:relative;margin:8px 0;padding:8px 0;border-top:1px solid var(--border)}.attachments-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.attachments-label{font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.attachments-count{font-size:.7rem;background:var(--bg-secondary);color:var(--text-secondary);padding:1px 6px;border-radius:8px}.attachments-upload-btn{margin-left:auto;display:inline-flex;align-items:center;gap:6px;cursor:pointer;color:var(--text-secondary);padding:6px 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg-secondary);transition:color .15s,background .15s,border-color .15s,opacity .15s}.attachments-upload-btn:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--bg-secondary))}.attachments-upload-btn.is-uploading{opacity:.8}.attachments-empty{border:1px dashed var(--border);border-radius:8px;padding:14px 12px;text-align:center;color:var(--text-secondary);font-size:.85rem;background:color-mix(in srgb,var(--bg-secondary) 85%,transparent)}.attachments-empty-loading{color:var(--accent)}.attachments-dropzone{position:absolute;top:0;right:0;bottom:0;left:0;border:2px dashed var(--accent);border-radius:10px;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--accent);font-size:.9rem;background:color-mix(in srgb,var(--accent) 10%,var(--bg-raised));-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:2;pointer-events:none}.attachments-images{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.attachment-thumb{position:relative;width:80px;height:80px;border-radius:6px;overflow:hidden;cursor:pointer;border:1px solid var(--border)}.attachment-thumb img{width:100%;height:100%;object-fit:cover}.attachment-thumb .attachment-delete{position:absolute;top:2px;right:2px;opacity:0;transition:opacity .15s}.attachment-thumb:hover .attachment-delete{opacity:1}.attachment-file{display:flex;align-items:center;gap:6px;padding:4px 0;font-size:.82rem;flex-wrap:wrap}.attachment-icon{font-size:.9rem}.attachment-name{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.attachment-name.clickable{cursor:pointer;color:var(--accent)}.attachment-name.clickable:hover{text-decoration:underline}.attachment-size{color:var(--text-secondary);font-size:.75rem;flex-shrink:0}.attachment-download{color:var(--text-secondary);padding:2px}.attachment-download:hover{color:var(--accent)}.attachment-delete{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:2px;border-radius:3px}.attachment-delete:hover{color:var(--red);background:color-mix(in srgb,var(--red) 15%,transparent)}.attachment-preview{width:100%;margin-top:6px;padding:8px 10px;background:var(--bg-secondary);border-radius:6px;font-size:.8rem;max-height:300px;overflow-y:auto}.attachment-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000d9;display:flex;align-items:center;justify-content:center;cursor:pointer}.attachment-lightbox img{max-width:90vw;max-height:90vh;border-radius:8px;box-shadow:0 8px 32px #00000080}.lightbox-close{position:absolute;top:16px;right:24px;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;line-height:1}.channels-page,.channel-detail-page{max-width:1280px;margin:0 auto;padding:24px 16px}.channels-header,.channel-detail-actions,.project-channels-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.channels-page h1,.channel-detail-hero h1{margin:0;font-size:24px;font-weight:700;letter-spacing:-.3px;color:var(--text)}.channels-count-badge,.project-channels-count{display:inline-block;margin-left:8px;font-size:12px;font-weight:600;color:var(--text-secondary)}.project-channels-subtitle{margin:4px 0 0;font-size:12px;color:var(--text-secondary)}.channels-filter-bar,.channel-detail-toolbar,.channel-tab-panel,.channel-detail-hero{margin-top:16px;border:1px solid var(--border-subtle);background:var(--surface);border-radius:var(--radius);padding:12px}.channels-filter-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.channels-filter-bar label,.channel-detail-toolbar label,.channel-settings-field,.channel-form-field{display:grid;gap:6px}.channels-filter-bar label>span,.channel-detail-toolbar label>span,.channel-settings-field>span,.channel-form-field>span{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.channels-filter-bar select,.channel-detail-toolbar select,.channel-settings-field textarea,.channel-form-field input,.channel-form-field select,.channel-form-field textarea{width:100%;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-raised);color:var(--text);padding:6px 10px;font:inherit;font-size:13px;box-sizing:border-box}.channels-toggle{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.channel-chip-row,.channel-detail-badges,.channel-detail-action-row,.project-channels-actions,.channel-modal-actions,.channel-settings-actions,.channel-tab-row{display:flex;flex-wrap:wrap;gap:6px}.channel-chip,.channel-tab,.channel-row-action,.project-channel-delete{border:1px solid var(--border);background:transparent;color:var(--text-secondary);border-radius:12px;padding:4px 12px;font-size:12px;font-family:inherit;cursor:pointer;transition:all var(--transition)}.channel-chip:hover,.channel-tab:hover,.channel-row-action:hover,.project-channel-delete:hover{color:var(--text);background:var(--surface-hover)}.channel-chip.active,.channel-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.channels-table-wrap,.project-channels-table{margin-top:16px}.channels-table,.project-channels-table{width:100%;border-collapse:collapse;border:1px solid var(--border-subtle);border-radius:var(--radius);overflow:hidden;background:var(--surface);font-size:13px}.channels-table th,.project-channels-table th{padding:8px 12px;border-bottom:1px solid var(--border-subtle);text-align:left;vertical-align:middle;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.channels-table td,.project-channels-table td{padding:8px 12px;border-bottom:1px solid var(--border-subtle);text-align:left;vertical-align:middle}.channels-table tbody tr:last-child td,.project-channels-table tbody tr:last-child td{border-bottom:none}.channels-sort{border:none;background:transparent;color:inherit;font:inherit;font-weight:600;letter-spacing:inherit;text-transform:inherit;cursor:pointer;padding:0}.channels-row,.project-channels-table tbody tr{cursor:pointer}.channels-row:hover,.project-channels-table tbody tr:hover,.channel-item-card:hover{background:var(--surface-hover)}.channels-name-cell,.channels-project-cell{display:grid;gap:2px}.channels-name-cell span,.channels-project-cell span{font-size:11px;color:var(--text-secondary)}.channel-type-badge,.channel-sync-pill{display:inline-flex;align-items:center;gap:6px;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;background:transparent;border:1px solid var(--border);color:var(--text-secondary)}.channel-type-badge.ownership{color:var(--accent);background:var(--accent-muted);border-color:var(--accent-muted)}.channel-type-badge.status{color:var(--text-secondary)}.channel-sync-pill.sync-success{color:var(--green);background:var(--green-muted);border-color:var(--green-muted)}.channel-sync-pill.sync-failed{color:var(--red);background:#f851491f;border-color:#f8514947}.channel-sync-pill.sync-partial{color:var(--amber);background:var(--amber-muted);border-color:var(--amber-muted)}.channel-sync-pill.sync-never{color:var(--text-tertiary)}.channels-empty-state,.project-channels-empty,.channel-history-placeholder{margin-top:16px;border:1px dashed var(--border-subtle);border-radius:var(--radius);padding:24px;text-align:center;color:var(--text-secondary);background:var(--surface);font-size:13px}.channels-row-actions,.project-channels-actions-cell{white-space:nowrap}.channel-row-action.danger,.project-channel-delete{color:var(--red)}.channel-row-action.danger:hover,.project-channel-delete:hover{color:#fff;background:var(--red);border-color:var(--red)}.channel-detail-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-top:16px}.channel-detail-project{display:inline-block;padding:2px 8px;border-radius:10px;background:var(--accent-muted);color:var(--accent);font-size:11px;font-weight:600;margin-bottom:6px}.channel-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:8px;min-width:340px}.channel-hero-stat{border:1px solid var(--border-subtle);border-radius:var(--radius);padding:10px 12px;background:var(--bg-raised);display:grid;gap:4px}.channel-hero-stat span{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.channel-hero-stat strong{font-size:14px;color:var(--text)}.channel-external-link{display:inline-block;margin-top:8px;font-size:13px;color:var(--accent)}.channel-items-list{display:grid;gap:8px}.channel-item-card{border:1px solid var(--border-subtle);border-radius:var(--radius);background:var(--bg-raised);overflow:hidden}.channel-item-summary{width:100%;border:none;background:transparent;color:inherit;padding:10px 12px;display:grid;grid-template-columns:110px 90px 1fr auto;gap:12px;align-items:center;text-align:left;cursor:pointer;font-size:13px}.channel-item-expanded{border-top:1px solid var(--border-subtle);padding:12px;display:grid;gap:10px}.channel-item-body{margin:0;white-space:pre-wrap;font:inherit;font-size:13px}.channel-item-meta{display:grid;gap:4px;font-size:12px;color:var(--text-secondary)}.channel-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:13px;color:var(--text-secondary)}.channel-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.channel-form-field-full{grid-column:1 / -1}.channel-editor-modal{width:min(760px,calc(100vw - 32px))}.channel-history-card{display:grid;gap:8px}.channel-history-row{display:flex;justify-content:space-between;gap:16px;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:10px 12px;background:var(--bg-raised);font-size:13px}.project-channels-panel{margin-top:16px;border:1px solid var(--border-subtle);background:var(--surface);border-radius:var(--radius);padding:12px}.project-channels-title{font-weight:700;font-size:14px;color:var(--text)}@media(max-width:960px){.channels-header,.channel-detail-actions,.project-channels-header,.channel-detail-hero{flex-direction:column;align-items:stretch}.channel-hero-stats{min-width:0;width:100%;grid-template-columns:1fr}.channel-item-summary,.channel-form-grid{grid-template-columns:1fr}}.project-focus{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;padding:8px 16px 12px;border-bottom:1px solid var(--border);background:var(--surface);font-size:.92rem;line-height:1.45;color:var(--text)}.project-focus.stale{background:color-mix(in srgb,var(--accent-warn, #f0883e) 14%,var(--surface))}.project-focus .focus-label{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);flex:0 0 auto}.project-focus-stage{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;border-radius:999px;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--bg-raised) 28%,var(--surface));color:var(--text)}.project-focus.focus-stage-active .project-focus-stage{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 36%,var(--border));background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.project-focus.focus-stage-shipping .project-focus-stage{color:var(--green);border-color:color-mix(in srgb,var(--green) 36%,var(--border));background:color-mix(in srgb,var(--green) 12%,var(--surface))}.project-focus.focus-stage-blocked .project-focus-stage{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 36%,var(--border));background:color-mix(in srgb,var(--amber) 12%,var(--surface))}.project-focus.focus-stage-parked .project-focus-stage{color:var(--purple);border-color:color-mix(in srgb,var(--purple) 36%,var(--border));background:color-mix(in srgb,var(--purple) 12%,var(--surface))}.project-focus.focus-stage-blocked{background:color-mix(in srgb,var(--amber) 8%,var(--surface))}.project-focus.focus-stage-shipping{background:color-mix(in srgb,var(--green) 8%,var(--surface))}.project-focus.focus-stage-parked{background:color-mix(in srgb,var(--purple) 8%,var(--surface))}.project-focus.focus-stage-active{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.project-focus .focus-text{flex:1 1 auto;white-space:pre-wrap;word-break:break-word;color:var(--text)}.project-focus .focus-age{font-size:.78rem;color:var(--muted);flex:0 0 auto}.project-focus.stale .focus-age{color:var(--accent-warn, #f0883e);font-weight:600}.project-card.open .project-focus{border-bottom-color:var(--border)}@media(max-width:720px){.project-focus{padding:6px 12px 10px;gap:6px;font-size:.88rem}.project-focus .focus-label{font-size:.66rem}}.project-focus-empty{display:flex;align-items:center;gap:8px;padding:6px 0;margin:4px 0 8px;background:none;border:none;cursor:pointer;font:inherit;color:var(--muted);text-align:left}.project-focus-empty:hover{color:var(--accent)}.project-focus-empty .focus-label{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.project-focus-empty:hover .focus-label{color:var(--accent)}.project-focus-empty .focus-empty-hint{font-size:.85rem}.project-edit-hint{display:block;margin-top:4px;font-size:.78rem;color:var(--muted);line-height:1.4}.project-draft-link{background:none;border:none;color:var(--accent);font:inherit;font-weight:700;cursor:pointer;padding:0}.project-draft-link:hover{text-decoration:underline}.portfolio-edit-btn:disabled,.project-edit-btn:disabled{opacity:.6;cursor:not-allowed}.portfolio-edit-btn:disabled:hover,.project-edit-btn:disabled:hover{border-color:var(--border);color:var(--text-secondary)}.portfolio-panel{margin:12px 0 24px;padding:18px 20px;background:linear-gradient(140deg,color-mix(in srgb,var(--accent) 14%,var(--surface)) 0%,var(--surface) 65%);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:10px;box-shadow:0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.portfolio-panel.portfolio-empty{background:var(--surface);border-style:dashed;border-color:var(--border);box-shadow:none}.portfolio-header{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px}.portfolio-label{font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.portfolio-counts{font-size:.85rem;color:var(--muted);flex:1 1 auto}.portfolio-counts strong{color:var(--text)}.portfolio-counts .stale-tag{color:var(--accent-warn, #f0883e);font-weight:600}.portfolio-edit-btn{background:transparent;border:1px solid var(--border);color:var(--text);padding:4px 10px;border-radius:6px;font-size:.82rem;cursor:pointer}.portfolio-edit-btn:hover{border-color:var(--accent);color:var(--accent)}.portfolio-text{margin:0;font-size:1.02rem;line-height:1.6;color:var(--text);white-space:pre-wrap;word-break:break-word}.portfolio-empty-hint{margin:0;font-size:.92rem;color:var(--muted);font-style:italic}.portfolio-meta{margin:8px 0 0;font-size:.76rem;color:var(--muted)}.portfolio-edit{display:flex;flex-direction:column;gap:8px}.portfolio-textarea{width:100%;min-height:96px;resize:vertical;padding:10px 12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-family:inherit;font-size:.95rem;line-height:1.5}.portfolio-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 25%,transparent)}.portfolio-edit-actions{display:flex;justify-content:flex-end;gap:8px}@media(max-width:720px){.portfolio-panel{padding:14px;margin:8px 0 16px}.portfolio-text{font-size:.95rem}}.rich-md>:first-child{margin-top:0}.rich-md>:last-child{margin-bottom:0}.rich-md p{margin:0 0 .5em;line-height:1.55}.rich-md ul,.rich-md ol{margin:0 0 .5em;padding-left:1.4em}.rich-md li{margin:.15em 0;line-height:1.5}.rich-md strong{color:var(--text);font-weight:700}.rich-md em{font-style:italic}.rich-md a{color:var(--accent);text-decoration:underline}.rich-md a:hover{text-decoration:none}.rich-md code{background:color-mix(in srgb,var(--accent) 12%,var(--surface));padding:1px 5px;border-radius:3px;font-size:.92em}.rich-md pre{background:color-mix(in srgb,var(--accent) 10%,var(--bg));padding:8px 10px;border-radius:6px;overflow-x:auto;font-size:.88em}.rich-md pre code{background:transparent;padding:0}.rich-md blockquote{margin:.4em 0;padding-left:12px;border-left:3px solid var(--accent);color:var(--muted)}.project-focus .focus-text.rich-md{flex:1 1 auto;word-break:break-word;color:var(--text)}.wb-chip-root{position:fixed;right:18px;bottom:18px;z-index:950;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}.wb-chip-root>*{pointer-events:auto}.wb-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#fff;color:#0a0e14;border:1px solid #ffffff;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 4px 14px #00000059,0 0 0 1px #ffffff0a;transition:background .16s ease,color .16s ease,transform .12s ease,box-shadow .12s ease}.wb-chip:hover{transform:translateY(-1px);box-shadow:0 6px 18px #00000073}.wb-chip-active{background:var(--text);color:var(--bg);border-color:var(--text)}.wb-chip-needs{background:#fbbf24;border-color:#fbbf24;color:#1a1208;animation:wb-chip-attention 1.6s ease-in-out infinite}.wb-chip-needs:hover{background:#f59e0b;border-color:#f59e0b}@keyframes wb-chip-attention{0%,to{box-shadow:0 4px 14px #00000059,0 0 #fbbf2499}50%{box-shadow:0 4px 14px #00000059,0 0 0 8px #fbbf2400}}.wb-chip-dot{width:8px;height:8px;border-radius:50%;background:#21c55d;box-shadow:0 0 0 3px #21c55d40;animation:wb-chip-pulse 2.4s ease-in-out infinite}.wb-chip-dot-needs{background:#b45309;box-shadow:0 0 0 3px #b4530940}@keyframes wb-chip-pulse{0%,to{box-shadow:0 0 0 3px #21c55d40}50%{box-shadow:0 0 0 6px #21c55d0d}}.wb-chip-count{font-variant-numeric:tabular-nums;font-size:14px}.wb-chip-needs-mark{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#1a1208;color:#fbbf24;font-size:12px;font-weight:800}.wb-chip-popover{width:360px;max-width:calc(100vw - 36px);max-height:60vh;overflow-y:auto;background:var(--bg-raised);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 40px #0000008c;padding:10px 12px 12px;color:var(--text)}.wb-chip-popover-header{display:flex;align-items:center;justify-content:space-between;padding:4px 2px 8px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);border-bottom:1px solid var(--border-subtle);margin-bottom:8px}.wb-chip-close{background:transparent;border:none;color:var(--text-secondary);font-size:20px;line-height:1;cursor:pointer;padding:0 4px}.wb-chip-close:hover{color:var(--text)}.wb-chip-project{margin-bottom:10px}.wb-chip-project:last-child{margin-bottom:0}.wb-chip-project-name{display:flex;align-items:center;gap:8px;padding:4px 6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text)}.wb-chip-project-count{background:var(--accent-muted);color:var(--accent);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700}.wb-chip-project-needs{margin-left:auto;background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.4);border-radius:999px;padding:1px 8px;font-size:10px;font-weight:700;text-transform:none;letter-spacing:0}.wb-chip-project-locks{margin-left:auto;background:#0ea5e91f;color:#7dd3fc;border:1px solid rgba(14,165,233,.35);border-radius:999px;padding:1px 8px;font-size:10px;font-weight:700;text-transform:none;letter-spacing:0}.wb-chip-project-needs+.wb-chip-project-locks{margin-left:0}.wb-chip-row-wrap{margin-bottom:2px}.wb-chip-row-wrap-needs .wb-chip-row{background:#fbbf2414;border-color:#fbbf2459}.wb-chip-row-wrap-needs .wb-chip-row:hover{background:#fbbf2429;border-color:#fbbf248c}.wb-chip-state-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;font-size:11px;font-weight:800;flex-shrink:0}.wb-chip-state-needs{background:#fbbf24;color:#1a1208}.wb-chip-state-blocked{background:#ef4444;color:#fff}.wb-chip-question{margin:4px 4px 6px 32px;padding:6px 10px;background:#fbbf2414;border-left:2px solid #fbbf24;border-radius:4px;font-size:12px;color:var(--text);line-height:1.4}.wb-chip-reply{display:flex;gap:6px;margin:0 4px 8px 32px}.wb-chip-reply-input{flex:1 1 auto;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:6px 10px;font-size:12px;font-family:inherit;outline:none;transition:border-color .12s ease}.wb-chip-reply-input:focus{border-color:#fbbf24;box-shadow:0 0 0 2px #fbbf2433}.wb-chip-reply-input:disabled{opacity:.6;cursor:progress}.wb-chip-reply-send{background:#fbbf24;color:#1a1208;border:none;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer;transition:background .12s ease}.wb-chip-reply-send:hover:not(:disabled){background:#f59e0b}.wb-chip-reply-send:disabled{opacity:.4;cursor:not-allowed}.wb-chip-reply-echo{margin:4px 4px 6px 32px;padding:6px 10px;background:#21c55d14;border-left:2px solid #21c55d;border-radius:4px;font-size:12px;color:var(--text);line-height:1.4}.wb-chip-reply-echo-label{color:#21c55d;font-weight:700;margin-right:4px;text-transform:uppercase;font-size:10px;letter-spacing:.06em}.wb-chip-claims{margin:4px 4px 8px 32px;padding:7px 8px;border-radius:6px;border:1px solid rgba(14,165,233,.22);background:#0ea5e912}.wb-chip-claims-label{margin-bottom:5px;color:#7dd3fc;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.wb-chip-claim{display:flex;align-items:center;gap:8px;min-width:0;padding:3px 0;font-size:11px}.wb-chip-claim-path{flex:1 1 auto;min-width:0;color:var(--text);font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wb-chip-claim-expiry{flex:0 0 auto;color:var(--text-secondary);font-variant-numeric:tabular-nums}.wb-chip-row{width:100%;display:flex;align-items:center;gap:8px;padding:7px 8px;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--text);font-size:12px;cursor:pointer;text-align:left}.wb-chip-row:hover{background:var(--accent-muted);border-color:var(--border-subtle)}.wb-chip-runtime{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;background:#1e252e;color:#f0f3f6;font-size:10px;font-weight:700;flex-shrink:0}.wb-chip-runtime-claude-code{background:#d97706;color:#fff}.wb-chip-runtime-pi{background:#0ea5e9;color:#fff}.wb-chip-runtime-codex{background:#8b5cf6;color:#fff}.wb-chip-agent{flex:1 1 auto;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wb-chip-host{color:var(--text-tertiary);font-size:11px;flex-shrink:0}.wb-chip-time{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:11px;flex-shrink:0;min-width:28px;text-align:right}.wb-chip-row-flex{display:flex;align-items:stretch;gap:4px}.wb-chip-row-flex .wb-chip-row{flex:1 1 auto}.wb-chip-lock-icon{font-size:12px;line-height:1;flex-shrink:0}.wb-chip-lock-btn{flex-shrink:0;width:28px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-secondary);font-size:13px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease}.wb-chip-lock-btn:hover:not(:disabled){background:var(--accent-muted);border-color:var(--accent);color:var(--accent)}.wb-chip-lock-btn:disabled{opacity:.5;cursor:progress}.wb-chip-lock-btn-on{background:#fde68a;border-color:#d97706;color:#92400e}.wb-chip-lock-btn-on:hover:not(:disabled){background:#fcd34d;border-color:#b45309;color:#78350f}.wb-pop-enter-active,.wb-pop-leave-active{transition:opacity .14s ease,transform .14s ease}.wb-pop-enter-from,.wb-pop-leave-to{opacity:0;transform:translateY(6px)}@media(max-width:600px){.wb-chip-root{right:12px;bottom:12px}.wb-chip-popover{width:300px}}.mermaid-block{display:block;margin:1rem 0;overflow-x:auto;text-align:center}.mermaid-block svg{max-width:100%;height:auto}.mermaid-error{display:inline-block;padding:.5rem .75rem;border:2px solid #ef4444;background:#fee2e2;color:#7f1d1d;font-family:ui-monospace,SFMono-Regular,monospace;font-size:.875rem;border-radius:.375rem;white-space:pre-wrap}.users-page{max-width:1320px;margin:0 auto;padding:24px 16px 48px;color:var(--text)}.users-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.users-header h1{margin:0;color:var(--text);font-size:28px;line-height:1.1}.users-header p{margin:6px 0 0;color:var(--text-secondary);font-size:14px}.users-header-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.users-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.users-summary-card{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:10px 12px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:8px}.users-summary-label{color:var(--text-secondary);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0}.users-summary-card strong{color:var(--text);font-size:24px;line-height:1;font-variant-numeric:tabular-nums}.users-panel,.users-table{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius);padding:12px;margin-bottom:12px}.users-panel{background:var(--bg-raised);border-color:var(--border)}.users-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid var(--border-subtle)}.users-panel-title{color:var(--text);font-weight:700}.users-panel-header p{margin:4px 0 0;color:var(--text-secondary);font-size:13px;line-height:1.4}.users-count-chip{flex:0 0 auto;display:inline-flex;align-items:center;max-width:260px;min-height:26px;padding:0 9px;border-radius:var(--radius-sm);border:1px solid rgba(88,166,255,.35);background:#58a6ff1f;color:var(--accent);font-size:12px;font-weight:800;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-form-grid{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,.8fr) minmax(180px,.8fr) 140px;gap:10px;margin-bottom:12px}.users-form-grid.service{grid-template-columns:minmax(220px,1fr) 160px}.users-form-grid.service.owner{grid-template-columns:minmax(180px,1fr) minmax(260px,1.2fr) 150px}.users-field{display:flex;flex-direction:column;gap:5px;min-width:0}.users-field span,.users-section-title{color:var(--text-secondary);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:0}.users-section-title{margin:12px 0 7px}.users-form-grid input,.users-form-grid select,.users-row select{min-height:36px;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);padding:0 10px;font:inherit;outline:none}.users-form-grid input:focus,.users-form-grid select:focus,.users-row select:focus{border-color:var(--accent);box-shadow:0 0 0 2px #58a6ff29}.users-section-grid{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.users-section-grid.compact{margin-bottom:0}.users-section-toggle{min-height:30px;padding:0 9px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--bg-raised);color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:700;transition:background .12s ease,border-color .12s ease,color .12s ease}.users-section-toggle:hover{background:var(--surface-hover);border-color:var(--border);color:var(--text)}.users-section-toggle.active{border-color:var(--accent);background:var(--accent-muted);color:var(--text)}.users-panel-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:10px;margin-top:4px;border-top:1px solid var(--border-subtle)}.users-panel-footer span{color:var(--text-secondary);font-size:13px;font-variant-numeric:tabular-nums}.project-access-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:10px 0}.project-access-list label{display:flex;align-items:center;gap:8px;min-height:34px;min-width:0;padding:8px 9px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-raised);color:var(--text-secondary);cursor:pointer;transition:background .12s ease,border-color .12s ease}.project-access-list label:hover{background:var(--surface-hover);border-color:var(--border)}.project-access-list input{accent-color:var(--accent)}.project-access-list span{color:var(--accent);font-weight:800;font-size:12px}.project-access-list strong{color:var(--text);font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.service-token-wrap{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-subtle)}.service-token-wrap>span{display:block;margin-bottom:6px;color:var(--amber);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0}.service-token{display:block;padding:10px;background:var(--bg-raised);border:1px solid rgba(63,185,80,.35);border-radius:8px;color:var(--green);overflow-x:auto;white-space:nowrap}.service-scope-panel{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 10px;align-items:center;margin:10px 0;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-raised)}.service-scope-panel strong{min-width:0;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.service-scope-panel p{grid-column:1 / -1;margin:0;color:var(--text-secondary);font-size:13px;line-height:1.4}.users-row{display:grid;grid-template-columns:minmax(230px,1.1fr) 150px 140px minmax(330px,2fr) 88px;gap:10px;align-items:center;padding:10px;border-top:1px solid var(--border-subtle);border-radius:8px;transition:background .12s ease,border-color .12s ease}.users-row:not(.users-row-head):hover{background:var(--surface-hover)}.users-row:first-child{border-top:0}.users-row-head{color:var(--text-secondary);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0;padding-top:0;padding-bottom:8px;background:transparent;border-radius:0}.users-row-head:hover{background:transparent}.user-cell{display:flex;flex-direction:column;min-width:0}.user-cell strong{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-cell span{color:var(--text-secondary);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.users-select-cell{display:grid;grid-template-columns:1fr;gap:6px}.users-role-chip,.users-status-chip{display:inline-flex;align-items:center;width:fit-content;min-height:24px;padding:0 8px;border-radius:var(--radius-sm);border:1px solid var(--border-subtle);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:0}.users-role-chip.role-owner{color:var(--purple);background:#a38cff1f;border-color:#a38cff4d}.users-role-chip.role-admin{color:var(--accent);background:#58a6ff21;border-color:#58a6ff52}.users-role-chip.role-editor{color:var(--teal);background:#39d2c01f;border-color:#39d2c04d}.users-role-chip.role-viewer{color:var(--text);background:#7d85901f}.users-status-chip.status-active{color:var(--green);background:#3fb95026;border-color:#3fb95052}.users-status-chip.status-disabled{color:var(--amber);background:#d2992224;border-color:#d2992252}.users-empty{padding:16px;margin-bottom:8px;border:1px dashed var(--border);border-radius:8px;color:var(--text);background:var(--bg-raised)}@media(max-width:900px){.users-header{display:block}.users-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.users-row{display:block}.users-header-actions{justify-content:flex-start;margin-top:12px}.users-form-grid,.users-form-grid.service{grid-template-columns:1fr}.users-row>*{margin-top:8px}.users-row-head{display:none}.users-panel-footer{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.mcp-auth-panel{padding:18px}.mcp-auth-panel h1{font-size:23px}.mcp-auth-grid{grid-template-columns:1fr}.users-page{padding:16px 10px 36px}.users-summary-grid{grid-template-columns:1fr}.users-panel,.users-table{padding:10px}.users-header-actions .btn{flex:1 1 auto}}
