@polderlabs/bizar 4.4.3 → 4.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ .chat-page{display:grid;grid-template-columns:280px 1fr 300px;height:100%;background:var(--bg);color:var(--text);min-height:0}@media (max-width: 1280px){.chat-page{grid-template-columns:240px 1fr 260px}}@media (max-width: 1024px){.chat-page{grid-template-columns:220px 1fr}.chat-page .chat-info{display:none}}@media (max-width: 768px){.chat-page{grid-template-columns:1fr}.chat-page .chat-rail{display:none}}.chat-rail{display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--bg);overflow:hidden;min-height:0}.chat-rail-head{padding:var(--space-3);border-bottom:1px solid var(--border);flex-shrink:0}.chat-new-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px 12px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);font:13px/1 var(--font-sans);cursor:pointer;transition:border-color var(--motion-fast) var(--motion-ease)}.chat-new-btn:hover{border-color:var(--border-strong)}.chat-new-btn:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.chat-new-btn:disabled{opacity:.4;cursor:not-allowed}.chat-rail-list{flex:1;overflow-y:auto;padding:var(--space-2) var(--space-2) var(--space-6);min-height:0}.chat-rail-group{margin-bottom:var(--space-4)}.chat-rail-group-label{padding:var(--space-2) var(--space-3);font:10px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.chat-rail-item{position:relative;display:block;width:100%;padding:8px 10px 8px 18px;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text);text-align:left;cursor:pointer;margin-bottom:2px;font:inherit;transition:background var(--motion-fast) var(--motion-ease)}.chat-rail-item:hover{background:var(--bg-1)}.chat-rail-item.active{background:var(--bg-1);border-color:var(--border)}.chat-rail-item-title{font:13px/1.4 var(--font-sans);display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:30px}.chat-rail-pin{color:var(--text-muted);font-size:11px;flex-shrink:0}.chat-rail-item-meta{display:flex;align-items:center;justify-content:space-between;margin-top:4px;padding-right:38px;font:11px/1 var(--font-mono);color:var(--text-muted);min-height:16px}.chat-rail-item-meta-time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-rail-badge{display:inline-grid;place-items:center;min-width:16px;height:16px;padding:0 5px;background:var(--accent);color:#fff;border-radius:999px;font:10px/1 var(--font-mono);flex-shrink:0;animation:chat-rail-badge-pulse 2.4s var(--motion-ease) infinite}@keyframes chat-rail-badge-pulse{0%,to{box-shadow:0 0 #8b5cf666}50%{box-shadow:0 0 0 4px #8b5cf600}}.chat-rail-item.state-streaming{color:var(--accent)}.chat-rail-item.state-awaiting{color:var(--warning)}.chat-rail-item.state-streaming .chat-rail-item-title{color:var(--accent);font-weight:500}.chat-rail-item.state-awaiting .chat-rail-item-title{color:var(--text);font-weight:400}.session-state{position:absolute;left:4px;top:50%;transform:translateY(-50%);border-radius:50%}.session-state-idle{width:6px;height:6px;background:var(--border);opacity:.6}.session-state-awaiting{width:6px;height:6px;background:var(--warning);animation:awaiting-pulse 2s var(--motion-ease) infinite}@keyframes awaiting-pulse{0%,to{box-shadow:0 0 #fbbf2466}50%{box-shadow:0 0 0 5px #fbbf2400}}.session-state-streaming{width:6px;height:6px;background:var(--accent);animation:rail-stream-pulse 1.4s var(--motion-ease) infinite}@keyframes rail-stream-pulse{0%,to{box-shadow:0 0 #8b5cf680;transform:scale(1)}50%{box-shadow:0 0 0 5px #8b5cf600;transform:scale(1.15)}}.chat-rail-item-menu-trigger{position:absolute;top:6px;right:6px;width:22px;height:22px;display:inline-grid;place-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity var(--motion-fast) var(--motion-ease),background var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease);z-index:3}.chat-rail-item:hover .chat-rail-item-menu-trigger,.chat-rail-item:focus-within .chat-rail-item-menu-trigger,.chat-rail-item-menu-trigger.open{opacity:1}.chat-rail-item-menu-trigger:hover{background:var(--bg-2);color:var(--text)}.chat-rail-item-menu-trigger:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.chat-rail-item-menu-trigger svg{width:14px;height:14px}.chat-rail-item .chat-rail-tree-chevron{position:absolute;top:50%;right:28px;width:18px;height:18px;display:inline-grid;place-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;opacity:0;transform:translateY(-50%) rotate(0);transform-origin:50% 50%;transition:opacity var(--motion-fast) var(--motion-ease),transform var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease),background var(--motion-fast) var(--motion-ease);z-index:2}.chat-rail-item:hover .chat-rail-tree-chevron,.chat-rail-item:focus-within .chat-rail-tree-chevron{opacity:1}.chat-rail-item .chat-rail-tree-chevron.open{transform:translateY(-50%) rotate(90deg);opacity:1}.chat-rail-item .chat-rail-tree-chevron:hover{background:var(--bg-2);color:var(--text)}.chat-rail-item .chat-rail-tree-chevron:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.chat-rail-item .chat-rail-tree-chevron svg{width:10px;height:10px;stroke:currentColor;stroke-width:1.6;fill:none;stroke-linecap:round;stroke-linejoin:round}.session-row-menu{position:absolute;top:calc(100% + 2px);right:0;min-width:180px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);padding:4px;box-shadow:0 8px 24px #0006;z-index:50;animation:session-menu-in var(--motion-base) var(--motion-ease)}@keyframes session-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.session-row-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--text);font:12px/1 var(--font-sans);text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease)}.session-row-menu-item:hover{background:var(--bg-2);color:var(--text)}.session-row-menu-item svg{width:13px;height:13px;flex-shrink:0;color:var(--text-muted)}.session-row-menu-item:hover svg{color:var(--text)}.session-row-menu-item kbd{margin-left:auto;font:10px/1 var(--font-mono);padding:2px 5px;background:var(--bg-2);border:1px solid var(--border);border-radius:3px;color:var(--text-muted)}.session-row-menu-item-danger:hover{color:var(--error)}.session-row-menu-item-danger:hover svg{color:var(--error)}.session-row-menu-inline{padding:8px 10px 10px;min-width:220px}.session-row-menu-inline-label{font:10px/1 var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:8px}.session-row-menu-inline-message{font:12px/1.4 var(--font-sans);color:var(--text-muted);margin-bottom:10px}.session-row-menu-input{width:100%;padding:6px 8px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font:12px/1.4 var(--font-sans);outline:0;margin-bottom:8px}.session-row-menu-input:focus{border-color:var(--accent)}.session-row-menu-inline-actions{display:flex;justify-content:flex-end;gap:6px}.session-row-menu-inline-actions button{font-size:11px;padding:4px 10px}.agent-tree{border-bottom:1px solid var(--border);background:#ffffff03}.agent-tree-empty{padding:6px var(--space-3);font:12px/1 var(--font-sans)}.agent-node{position:relative;margin-bottom:8px}.agent-node:last-child{margin-bottom:0}.agent-node-head{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);font:13px/1 var(--font-sans);text-align:left;cursor:pointer;transition:border-color var(--motion-fast) var(--motion-ease),background var(--motion-fast) var(--motion-ease);position:relative}.agent-node-head:hover{border-color:var(--border-strong)}.agent-node-head:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.agent-node.depth-0>.agent-node-head{padding:10px 14px;font-size:14px}.agent-node.depth-1>.agent-node-head{margin-left:16px;width:calc(100% - 16px)}.agent-node-children{position:relative;padding-top:8px;padding-left:0;margin-left:14px}.agent-node-children:before{content:"";position:absolute;left:0;top:0;bottom:12px;width:1px;background:var(--border)}.agent-node.depth-0>.agent-node-children:before{left:6px}.agent-node-head:before{content:"";position:absolute;left:-14px;top:50%;width:14px;height:1px;background:var(--border)}.agent-node.depth-0>.agent-node-head:before{left:-8px;width:8px}.agent-node-summary{padding:8px 12px 10px 30px;font:12px/1.5 var(--font-sans);color:var(--text-muted);border-left:1px solid var(--border);margin:8px 0 0 14px}.agent-node.depth-0>.agent-node-summary{margin-left:6px;border-left-color:var(--accent);border-left-width:2px;padding-left:14px;background:linear-gradient(180deg,rgba(139,92,246,.04),transparent)}.agent-node-chevron{display:inline-grid;place-items:center;width:14px;height:14px;background:transparent;border:0;color:var(--text-muted);font:10px/1 var(--font-mono);cursor:pointer;transition:transform var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease)}.agent-node.depth-0>.agent-node-head .agent-node-chevron{width:18px;height:18px;font-size:11px}.agent-node-chevron.open{transform:rotate(90deg)}.agent-node-dot{width:6px;height:6px;border-radius:50%;background:var(--text-muted);flex-shrink:0}.agent-node-dot.status-streaming{background:var(--accent);box-shadow:0 0 4px var(--accent)}.agent-node-dot.status-done{background:var(--success)}.agent-node-dot.status-blocked,.agent-node-dot.status-awaiting{background:var(--warning)}.agent-node-dot.status-idle{background:var(--text-muted);opacity:.5}.agent-node-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-node.depth-0>.agent-node-head .agent-node-name{font-weight:600}.agent-node-role{font-size:11px;color:var(--text-muted);letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agent-node-pill{margin-left:auto;font:10px/1 var(--font-mono);padding:3px 8px;border-radius:var(--radius-pill);letter-spacing:.04em;text-transform:uppercase;background:var(--bg-2);color:var(--text-muted);border:1px solid var(--border);white-space:nowrap}.agent-node-pill.status-streaming{color:var(--accent);border-color:var(--accent);background:#8b5cf614}.agent-node-pill.status-done{color:var(--success);border-color:var(--success);background:#a7c4730f}.agent-node-pill.status-blocked,.agent-node-pill.status-awaiting{color:var(--warning);border-color:var(--warning);background:#fbbf240f}.agent-node-pill.status-idle{color:var(--text-muted)}.agent-node.closed>.agent-node-children,.agent-node.closed>.agent-node-summary{display:none}.agent-node.closed>.agent-node-head{border-style:dashed}.agent-tree.variant-rail{background:#8b5cf60a;border:1px solid rgba(139,92,246,.18);border-radius:var(--radius-md);padding:0;margin:0 4px 4px;animation:tree-rail-in var(--motion-base) var(--motion-ease)}@keyframes tree-rail-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.agent-tree.variant-rail .agent-node{margin-bottom:4px}.agent-tree.variant-rail .agent-node-head{padding:5px 8px;font-size:11px;border-radius:var(--radius-sm)}.agent-tree.variant-rail .agent-node.depth-0>.agent-node-head{padding:6px 10px;font-size:12px}.agent-tree.variant-rail .agent-node.depth-1>.agent-node-head{margin-left:10px;width:calc(100% - 10px)}.agent-tree.variant-rail .agent-node-children{margin-left:8px;padding-top:4px}.agent-tree.variant-rail .agent-node-children:before{left:0;bottom:6px}.agent-tree.variant-rail .agent-node-head:before{left:-8px;width:8px}.agent-tree.variant-rail .agent-node-name{font-size:11px}.agent-tree.variant-rail .agent-node-role{font-size:10px}.agent-tree.variant-rail .agent-node-pill{font-size:9px;padding:2px 6px}.agent-tree.variant-rail .agent-node-summary{display:none}.agent-tree.variant-rail .agent-node-chevron{width:12px;height:12px;font-size:9px}.agent-tree-empty.variant-rail{padding:8px 10px;font-size:11px}.chat-thread-section{display:grid;grid-template-rows:auto 1fr auto;min-width:0;background:var(--bg);min-height:0;position:relative}.chat-thread.legacy{display:flex;flex-direction:column;gap:1rem}.chat-thread-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border)}.chat-thread-title{font:15px/1.2 var(--font-display);letter-spacing:-.01em;font-weight:500}.chat-thread-sub{display:flex;align-items:center;gap:6px;margin-top:4px;font:12px/1 var(--font-sans);color:var(--text-muted)}.chat-thread-dot{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 6px var(--success);animation:dot-throb 2s var(--motion-ease) infinite}@keyframes dot-throb{0%,to{box-shadow:0 0 4px var(--success)}50%{box-shadow:0 0 10px var(--success)}}.chat-thread-sub.state-streaming .chat-thread-dot{background:var(--accent);animation:thread-dot-pulse 1.4s var(--motion-ease) infinite}@keyframes thread-dot-pulse{0%,to{box-shadow:0 0 4px var(--accent);transform:scale(1)}50%{box-shadow:0 0 12px var(--accent);transform:scale(1.2)}}.chat-thread-sub.state-awaiting .chat-thread-dot{background:var(--warning)}.chat-thread-sub.state-idle .chat-thread-dot{background:var(--text-muted);animation:none}.chat-thread-actions{display:flex;gap:4px}.chat-thread-scroll{overflow-y:auto;padding:var(--space-6) var(--space-8);display:flex;flex-direction:column;gap:var(--space-5);min-height:0}.msg{display:flex;gap:var(--space-3);position:relative}.msg-user{justify-content:flex-end}.msg-assistant{justify-content:flex-start}.msg-system{align-self:center;display:inline-flex;align-items:center;gap:8px;padding:4px 10px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-pill);font:11px/1 var(--font-sans);color:var(--text-muted)}.msg-system-dot{width:6px;height:6px;border-radius:50%;background:var(--success)}.msg-avatar{flex:0 0 auto;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;font:12px/1 var(--font-mono);font-weight:500;color:#fff;position:relative;overflow:visible}.msg-avatar-user{background:var(--bg-2);color:var(--text);border:1px solid var(--border)}.msg-avatar-assistant{background:var(--accent)}.msg-avatar-letter{position:relative;z-index:1}.msg-avatar-pulse{position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;border:1.5px solid var(--accent);opacity:0;pointer-events:none}.msg-avatar-pulse.phase-think{animation:pulse-think 1.4s var(--motion-ease) infinite}.msg-avatar-pulse.phase-stream{animation:pulse-stream 1.8s var(--motion-ease) infinite;border-color:var(--accent)}.msg-avatar-pulse.phase-commit{animation:pulse-commit .36s var(--motion-ease) 1;border-color:var(--success);border-width:2px}@keyframes pulse-think{0%{opacity:0;transform:scale(.85)}50%{opacity:.6;transform:scale(1.15)}to{opacity:0;transform:scale(1.3)}}@keyframes pulse-stream{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}@keyframes pulse-commit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2)}}.msg-body{min-width:0;max-width:720px}.msg-bubble-wrap{position:relative}.msg-bubble-wrap:before,.msg-bubble-wrap:after{content:"";position:absolute;left:0;right:0;height:14px;z-index:1}.msg-bubble-wrap:before{top:-14px}.msg-bubble-wrap:after{bottom:-14px}.msg-bubble-user-wrap{position:relative}.msg-bubble-user-wrap:before,.msg-bubble-user-wrap:after{content:"";position:absolute;left:0;right:0;height:14px;z-index:1}.msg-bubble-user-wrap:before{top:-14px}.msg-bubble-user-wrap:after{bottom:-14px}.msg-actions{position:absolute;bottom:-18px;display:inline-flex;align-items:center;gap:1px;padding:3px 4px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);opacity:0;transform:translateY(-2px);transition:opacity .18s var(--motion-ease),transform .18s var(--motion-ease);pointer-events:none;z-index:3}.msg-actions-assistant{left:0}.msg-actions-user{right:0}.msg-bubble-wrap:hover .msg-actions,.msg-bubble-wrap:focus-within .msg-actions,.msg-bubble-user-wrap:hover .msg-actions,.msg-bubble-user-wrap:focus-within .msg-actions,.msg-actions:hover,.msg-actions:focus-within{opacity:1;transform:translateY(0);pointer-events:auto}.msg-action-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 6px;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--text-muted);font:11px/1 var(--font-sans);cursor:pointer;white-space:nowrap;transition:background var(--motion-fast) var(--motion-ease),color var(--motion-fast) var(--motion-ease)}.msg-action-btn:hover{background:var(--bg-1);color:var(--text)}.msg-action-btn.active{color:var(--accent)}.msg-action-feedback{padding:4px 6px}.msg-action-feedback.active{background:var(--bg-2)}.msg-action-label{letter-spacing:.01em}.msg-action-sep{width:1px;height:14px;background:var(--border);margin:0 2px}.msg-action-btn:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.msg-meta{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.msg-author{font:12px/1 var(--font-sans);font-weight:500}.msg-ts{font:11px/1 var(--font-mono);color:var(--text-muted)}.msg-bubble{padding:10px 14px;border-radius:var(--radius-md);font:14px/1.55 var(--font-sans);border:1px solid var(--border);background:var(--bg-1)}.msg-bubble-user{background:var(--bg-1);border-color:var(--border)}.msg-bubble-assistant{background:var(--bg-1)}.msg-bubble p{margin:0 0 var(--space-3)}.msg-bubble p:first-child{margin-top:0}.msg-bubble p:last-child{margin-bottom:0}.msg-bubble ul{margin:0 0 var(--space-3);padding-left:20px}.msg-bubble ul li{margin-bottom:4px}.msg-bubble ul li:last-child{margin-bottom:0}.msg-code{margin:var(--space-3) 0;padding:12px 14px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font:12px/1.55 var(--font-mono);overflow-x:auto;color:var(--text)}.msg-code code{background:transparent;padding:0}.msg-cursor{display:inline-block;width:7px;height:14px;margin-left:2px;background:var(--accent);vertical-align:-2px;animation:cursor-blink 1s steps(2) infinite}@keyframes cursor-blink{50%{opacity:0}}.msg-phase-stream .msg-cursor{animation:cursor-pulse .9s steps(2) infinite,cursor-color 1.6s var(--motion-ease) infinite;width:8px;height:14px;background:var(--accent)}@keyframes cursor-pulse{50%{opacity:0}}@keyframes cursor-color{0%,to{background:var(--accent);box-shadow:0 0 4px var(--accent)}50%{background:var(--accent);box-shadow:0 0 8px var(--accent)}}.msg-stream-indicator{display:inline-flex;align-items:center;gap:6px;font:11px/1 var(--font-mono);color:var(--text-muted);letter-spacing:.02em}.msg-stream-label{opacity:.85}.msg-stream-dots{display:inline-flex;gap:2px}.msg-stream-dots span{width:3px;height:3px;border-radius:50%;background:var(--accent);animation:dot-bounce 1.2s var(--motion-ease) infinite}.msg-stream-dots span:nth-child(2){animation-delay:.15s}.msg-stream-dots span:nth-child(3){animation-delay:.3s}@keyframes dot-bounce{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.msg-phase-stream .msg-stream-dots span{animation-duration:.9s}.msg-phase-commit .msg-stream-dots span{animation-duration:.7s;background:var(--success)}.msg-phase-commit .msg-bubble-assistant{animation:commit-ring .48s var(--motion-ease) 1;border-color:var(--success)}@keyframes commit-ring{0%{box-shadow:0 0 0 0 var(--success);border-color:var(--success)}to{box-shadow:0 0 0 8px transparent;border-color:var(--border)}}.msg-enter{animation:msg-in var(--motion-slow) var(--motion-ease) both}@keyframes msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.chat-composer-wrap{position:relative;padding:var(--space-3) var(--space-8) var(--space-5);border-top:1px solid var(--border);background:var(--bg)}.chat-composer-pill{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:8px 8px 8px 16px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-pill);transition:border-color var(--motion-fast) var(--motion-ease)}.chat-composer-pill:focus-within{border-color:var(--accent)}.chat-composer-pill .agent-chip,.chat-composer-pill .model-badge{font:11px/1 var(--font-mono);padding:6px 10px;border-radius:var(--radius-pill);background:var(--bg-2);color:var(--text-muted);border:1px solid var(--border);white-space:nowrap}.chat-composer-pill input,.chat-composer-pill textarea{flex:1;background:transparent;border:0;outline:0;color:var(--text);font:14px/1.4 var(--font-sans);min-width:0;resize:none}.chat-composer-pill input::placeholder,.chat-composer-pill textarea::placeholder{color:var(--text-muted)}.chat-composer-pill .icon-btn{width:32px;height:32px;display:grid;place-items:center;background:transparent;border:0;border-radius:50%;color:var(--text-muted);cursor:pointer;flex-shrink:0}.chat-composer-pill .icon-btn:hover{background:var(--bg-2);color:var(--text)}.chat-composer-pill .icon-btn:focus-visible{outline:1px solid var(--accent);outline-offset:1px}.chat-composer-pill .send-btn{width:32px;height:32px;display:grid;place-items:center;background:var(--accent);border:0;border-radius:50%;color:#fff;cursor:pointer;flex-shrink:0}.chat-composer-pill .send-btn:hover:not(:disabled){filter:brightness(1.1)}.chat-composer-pill .send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-composer-pill .send-btn.takeoff{animation:send-takeoff .28s var(--motion-ease) 1}@keyframes send-takeoff{0%{transform:scale(1)}35%{transform:scale(.85)}70%{transform:scale(1.08);box-shadow:0 0 0 6px #8b5cf62e}to{transform:scale(1);box-shadow:0 0 #8b5cf600}}.chat-composer-hint{display:flex;align-items:center;gap:12px;margin-top:8px;padding:0 var(--space-3);font:11px/1 var(--font-mono);letter-spacing:.02em;color:var(--text-muted)}.chat-composer-hint kbd{display:inline-block;padding:2px 6px;background:var(--bg-1);border:1px solid var(--border);border-radius:4px;color:var(--text);font:10px/1 var(--font-mono)}.jump-to-latest{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(6px);display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text);font:12px/1 var(--font-sans);font-weight:500;cursor:pointer;z-index:10;opacity:0;animation:jump-in var(--motion-base) var(--motion-ease) forwards;transition:transform var(--motion-fast) var(--motion-ease),background var(--motion-fast) var(--motion-ease),border-color var(--motion-fast) var(--motion-ease);white-space:nowrap}.jump-to-latest:hover{background:var(--bg-2);border-color:var(--border-strong)}.jump-to-latest:focus-visible{outline:1px solid var(--accent);outline-offset:2px}@keyframes jump-in{0%{opacity:0;transform:translate(-50%) translateY(14px)}to{opacity:1;transform:translate(-50%) translateY(6px)}}.jump-to-latest.is-streaming{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 4px 18px #8b5cf640}.jump-dots{display:inline-flex;align-items:center;gap:3px}.jump-dots>span{width:4px;height:4px;border-radius:50%;background:var(--accent);animation:jump-dot 1.2s var(--motion-ease) infinite}.jump-dots>span:nth-child(2){animation-delay:.15s}.jump-dots>span:nth-child(3){animation-delay:.3s}@keyframes jump-dot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-2px)}}.jump-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 6px;margin-left:2px;background:var(--accent);color:#fff;border-radius:var(--radius-pill);font:10px/1 var(--font-mono);letter-spacing:.04em}.jump-badge-live{background:var(--success);animation:live-pulse 1.4s var(--motion-ease) infinite}@keyframes live-pulse{0%,to{box-shadow:0 0 #34d39980}50%{box-shadow:0 0 0 4px #34d39900}}.chat-info{border-left:1px solid var(--border);background:var(--bg);padding:var(--space-3) var(--space-4);overflow-y:auto;font:13px/1.5 var(--font-sans);min-height:0}.chat-info-section{padding:var(--space-3) 0;border-bottom:1px solid var(--border)}.chat-info-section:last-child{border-bottom:0}.chat-info-section h4{font:10px/1 var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin:0 0 8px;font-weight:600}.chat-info-bar{margin-top:6px;height:3px;background:var(--bg-2);border-radius:2px;overflow:hidden}.chat-info-bar-fill{height:100%;background:var(--accent);border-radius:2px}.chat-info-agents{display:flex;flex-wrap:wrap;gap:4px}.chat-info-agent{font:11px/1 var(--font-mono);padding:3px 8px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-pill);color:var(--text)}.chat-info-link{display:block;padding:4px 0;font:12px/1.4 var(--font-sans);color:var(--text)}.chat-info-link:hover{color:var(--accent);cursor:pointer}.chat-info-mono{font:11px/1.4 var(--font-mono);color:var(--text-muted);margin-top:4px}.chat-toast{position:fixed;bottom:96px;left:50%;transform:translate(-50%);padding:8px 14px;background:#0a0e1af0;color:#fff;font:12px/1 var(--font-sans);border-radius:var(--radius-pill);z-index:100;animation:chat-toast-in var(--motion-base) var(--motion-ease);white-space:nowrap}@keyframes chat-toast-in{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}.chat-mono{font-family:var(--font-mono)}.chat-muted{color:var(--text-muted)}.chat-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (prefers-reduced-motion: reduce){.msg-enter,.msg-avatar-pulse,.msg-stream-dots span,.msg-stream-commit,.msg-phase-commit .msg-bubble-assistant,.msg-phase-stream .msg-cursor,.send-btn.takeoff,.chat-rail-badge,.chat-thread-dot,.msg-cursor,.chat-toast,.session-state-awaiting,.session-state-streaming,.chat-thread-sub.state-streaming .chat-thread-dot,.jump-to-latest,.jump-dots>span,.jump-badge-live,.session-row-menu{animation:none!important}.msg-enter{opacity:1;transform:none}.jump-to-latest{opacity:1;transform:translate(-50%)}.session-row-menu{animation:none!important;opacity:1;transform:none}.chat-rail-item-menu-trigger,.chat-rail-item .chat-rail-tree-chevron,.msg-actions{transition:none!important}}.chat-shell{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--bg);color:var(--text)}.chat-topbar{display:flex;align-items:center;gap:.5rem;height:48px;box-sizing:border-box;padding:0 1rem;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--bg)}.chat-topbar-project{display:flex;align-items:center;gap:.375rem;height:32px;padding:0 .75rem;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);font-size:.8125rem;font-weight:500;cursor:pointer;max-width:240px}.chat-topbar-project:hover{background:var(--bg-2)}.chat-topbar-project-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-topbar-spacer{flex:1}.chat-topbar-btn{height:32px;padding:0 .75rem;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-muted);font-size:.8125rem;font-weight:500;cursor:pointer}.chat-topbar-btn:hover{background:var(--bg-1);color:var(--text)}.chat-topbar-btn.active{background:var(--bg-2);border-color:var(--border);color:var(--text)}.chat-body{display:flex;flex:1;min-height:0}.chat-sessions{width:200px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg);border-right:1px solid var(--border);overflow:hidden;transition:width var(--motion-slow) var(--motion-ease)}@media (min-width: 1400px){.chat-sessions{width:220px}}.chat-sessions-hidden{width:0;border-right:none;opacity:0;pointer-events:none}.chat-sessions-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem .5rem;flex-shrink:0}.chat-sessions-header-title{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.chat-sessions-count{font-size:.6875rem;font-weight:600;padding:.0625rem .4375rem;background:var(--bg-2);border-radius:999px;color:var(--text-muted);font-variant-numeric:tabular-nums}.chat-sessions-toggle{display:flex;gap:2px;margin:0 .75rem .5rem;padding:2px;background:var(--bg-1);border-radius:var(--radius-sm)}.chat-sessions-toggle-btn{flex:1;padding:.25rem .375rem;background:transparent;border:none;border-radius:3px;font-size:.6875rem;font-weight:500;color:var(--text-muted);cursor:pointer;transition:all var(--motion-base) var(--motion-ease);white-space:nowrap}.chat-sessions-toggle-btn:hover{color:var(--text)}.chat-sessions-toggle-btn.active{background:var(--bg-2);color:var(--text)}.chat-sessions-new{display:flex;align-items:center;justify-content:center;gap:.375rem;margin:.5rem .75rem .75rem;padding:.5rem;background:transparent;border:1px dashed var(--border);border-radius:var(--radius-md);color:var(--text);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all var(--motion-base) var(--motion-ease)}.chat-sessions-new:hover:not(:disabled){background:var(--bg-1);border-color:var(--border-strong);border-style:solid}.chat-sessions-new:disabled{opacity:.4;cursor:not-allowed}.chat-sessions-list{list-style:none;margin:0;padding:0 .375rem .75rem;overflow-y:auto;flex:1;min-height:0}.chat-sessions-item{display:flex;flex-direction:column;gap:.125rem;padding:.5rem .625rem;margin:.0625rem 0;border-radius:var(--radius-sm);cursor:pointer}.chat-sessions-item:hover{background:var(--bg-1)}.chat-sessions-item.active{background:var(--bg-2)}.chat-sessions-item-id{font-family:var(--font-mono);font-size:.75rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.chat-sessions-item-meta{font-size:.6875rem;color:var(--text-muted)}.chat-sessions-item-opencode{opacity:.8}.chat-sessions-item-opencode .chat-sessions-item-id{font-family:var(--font-sans)}.chat-sessions-item-icon{flex-shrink:0;color:var(--text-muted);margin-top:2px}.chat-sessions-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:1rem}.chat-main{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--bg);position:relative;min-height:0}.chat-info-hidden{width:0;padding:0;border-left:none;opacity:0;pointer-events:none;overflow:hidden}.chat-info-card{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);padding:.75rem .875rem}.chat-info-card-title{display:flex;align-items:center;gap:.4375rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:.5rem;width:100%;background:transparent;border:none;padding:0;text-align:left}.chat-info-card-title-button{cursor:pointer}.chat-info-card-title-button:hover{color:var(--text)}.chat-info-card-count{margin-left:auto;font-size:.6875rem;background:var(--bg-2);padding:.0625rem .375rem;border-radius:999px;color:var(--text-muted);font-weight:500}.chat-info-card-chevron{color:var(--text-muted);transition:transform var(--motion-base) var(--motion-ease)}.chat-info-card-chevron.open{transform:rotate(180deg)}.chat-info-card-toggle{margin-top:.4375rem;padding:.25rem 0;background:transparent;border:none;color:var(--text-muted);font-size:.6875rem;font-weight:500;cursor:pointer;text-align:left}.chat-info-card-toggle:hover{color:var(--text)}.env-table{display:grid;grid-template-columns:auto 1fr;gap:.25rem .625rem;margin:0;font-size:.75rem}.env-table dt{color:var(--text-muted)}.env-table dd{margin:0;color:var(--text);font-family:var(--font-mono);font-size:.6875rem}.env-table dd.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mod-mini-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.1875rem;max-height:200px;overflow-y:auto}.mod-mini{display:flex;align-items:center;gap:.4375rem;padding:.25rem 0;font-size:.75rem}.mod-mini-name{font-family:var(--font-mono);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.mod-mini-meta{font-size:.6875rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mod-mini-pill{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.0625rem .375rem;border-radius:999px}.mod-mini-pill.on{background:color-mix(in oklab,var(--success),transparent 70%);color:var(--success)}.mod-mini-pill.off{background:var(--bg-2);color:var(--text-muted)}.chat-thread.legacy{flex:1;overflow-y:auto;padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1rem;min-height:0}.chat-thread:has(.chat-welcome){padding:0;align-items:center;justify-content:flex-start}.chat-welcome{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;padding:6vh 2rem 2rem;width:100%;max-width:920px}.chat-welcome-h1{margin:0;font-size:clamp(2.25rem,5vw,3.5rem);font-weight:700;line-height:1.1;letter-spacing:-.02em}.chat-greeting-hello{background:var(--gradient-hello);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}.chat-greeting-name{background:var(--gradient-name);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}.chat-welcome-subtitle{font-size:clamp(1.125rem,2vw,1.5rem);font-weight:500;color:var(--text-muted);margin:.5rem 0 0;letter-spacing:-.005em}.chat-suggestions{display:grid;grid-template-columns:1fr;gap:.75rem;width:100%;max-width:920px;margin-top:2.5rem}@media (min-width: 600px){.chat-suggestions{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1100px){.chat-suggestions{grid-template-columns:repeat(4,1fr)}}.chat-suggestion{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.125rem;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;text-align:left;font:inherit;color:var(--text);transition:all var(--motion-base) var(--motion-ease);min-height:120px}.chat-suggestion:hover{transform:translateY(-2px);border-color:var(--border-strong);background:var(--bg-2)}.chat-suggestion-title{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;line-height:1.3}.chat-suggestion-title span{flex:1}.chat-suggestion-preview{font-size:.75rem;color:var(--text-muted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.chat-message{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.875rem 1.125rem;transition:border-color var(--motion-base) var(--motion-ease);max-width:880px;width:100%;align-self:flex-start}.chat-message-user{background:var(--bg-2)}.chat-message-pinned{border-left:2px solid var(--accent)}.chat-message-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;flex-wrap:wrap}.chat-message-role{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.chat-message-agent{font-family:var(--font-mono);font-size:.75rem;color:var(--accent)}.chat-message-time{font-size:.6875rem;color:var(--text-muted);font-variant-numeric:tabular-nums}.chat-message-pin{font-size:.6875rem;color:var(--accent);font-weight:600}.chat-message-actions{margin-left:auto;display:flex;gap:.125rem;opacity:0;transition:opacity var(--motion-base) var(--motion-ease)}.chat-message:hover .chat-message-actions,.chat-message:focus-within .chat-message-actions{opacity:1}.chat-msg-action-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer}.chat-msg-action-btn:hover{background:var(--bg-2);color:var(--text)}.chat-msg-action-btn-danger:hover{color:var(--error)}.chat-message-content{font-size:.9375rem;line-height:1.6;color:var(--text);word-wrap:break-word}.markdown-body p{margin:.5em 0}.markdown-body p:first-child{margin-top:0}.markdown-body p:last-child{margin-bottom:0}.markdown-body h1,.markdown-body h2,.markdown-body h3{margin:.75em 0 .5em;font-weight:600}.markdown-body code{font-family:var(--font-mono);font-size:.875em;background:var(--bg-2);padding:.0625em .25em;border-radius:3px}.markdown-body pre{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.75rem;overflow-x:auto}.markdown-body pre code{background:transparent;padding:0}.markdown-body ul,.markdown-body ol{margin:.5em 0;padding-left:1.5em}.markdown-body blockquote{border-left:2px solid var(--border-strong);margin:.5em 0;padding:0 0 0 .75em;color:var(--text-muted)}.markdown-body a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.chat-composer-wrap.legacy{position:sticky;bottom:0;left:0;right:0;padding:.5rem 1rem 1rem;background:linear-gradient(to top,var(--bg) 0%,var(--bg) 50%,transparent 100%);pointer-events:none;z-index:10;max-width:100%}.chat-composer-wrap.legacy>*{pointer-events:auto}.chat-composer-pill.legacy{max-width:min(880px,100%);margin:0 auto;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 4px 32px #0006;transition:border-color var(--motion-base) var(--motion-ease)}.chat-composer-pill.legacy:focus-within{border-color:var(--accent)}.chat-composer{display:flex;flex-direction:column;gap:.375rem;padding:.5rem .625rem}.chat-composer-suggestions{display:flex;flex-direction:column;gap:.125rem;margin:-.25rem 0 .25rem;padding:.25rem;background:var(--bg-2);border-radius:var(--radius-md);max-height:240px;overflow-y:auto}.chat-composer-suggestion{display:flex;align-items:center;gap:.5rem;padding:.5rem .625rem;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:.8125rem;text-align:left;cursor:pointer}.chat-composer-suggestion:hover{background:var(--bg)}.chat-composer-suggestion .mono{font-family:var(--font-mono);font-size:.75rem;color:var(--accent);min-width:80px}.chat-composer-attachments{display:flex;flex-wrap:wrap;gap:.25rem;padding:0 .25rem}.chat-composer-attachment-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.1875rem .4375rem;background:var(--bg-2);border-radius:999px;font-size:.75rem;color:var(--text)}.chat-composer-attachment-remove{display:flex;align-items:center;justify-content:center;width:14px;height:14px;padding:0;background:transparent;border:none;color:var(--text-muted);cursor:pointer}.chat-composer-input{display:flex;align-items:flex-end;gap:.375rem}.chat-composer-textarea{flex:1;min-width:0;width:100%;resize:none;background:transparent;border:none;outline:none;color:var(--text);font:inherit;font-size:.9375rem;line-height:1.5;padding:.5rem;max-height:200px;overflow-y:auto}.chat-composer-textarea::placeholder{color:var(--text-muted)}.chat-attach-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer}.chat-attach-btn:hover{background:var(--bg-2);color:var(--text)}.chat-send-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer}.chat-send-btn:hover:not(:disabled){background:color-mix(in oklab,var(--accent),white 15%);transform:scale(1.05)}.chat-send-btn:disabled{background:var(--bg-2);color:var(--text-muted);cursor:not-allowed}.chat-agent-chip{position:relative;flex-shrink:0}.chat-agent-chip-btn{display:flex;align-items:center;gap:.375rem;height:32px;padding:0 .625rem;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);font-size:.8125rem;font-weight:500;cursor:pointer;min-width:100px;max-width:160px}.chat-agent-chip-btn>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;text-align:left}.chat-agent-chip-btn:hover{background:var(--bg);border-color:var(--border-strong)}.chat-agent-chip-btn .rotated{transform:rotate(180deg);transition:transform var(--motion-base) var(--motion-ease)}.chat-agent-chip-menu{position:absolute;bottom:calc(100% + 6px);left:0;z-index:60;min-width:200px;max-height:280px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:.375rem;background:var(--bg-1);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:0 -8px 24px #0006}.chat-agent-chip-menu button{display:flex;align-items:center;padding:.5rem .75rem;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text);font:inherit;font-size:.8125rem;text-align:left;cursor:pointer}.chat-agent-chip-menu button:hover{background:var(--bg-2)}.chat-agent-chip-menu button[aria-selected=true]{background:var(--accent);color:#fff}.chat-info.legacy{width:240px;flex-shrink:0;display:flex;flex-direction:column;gap:.625rem;padding:1rem;background:var(--bg);border-left:1px solid var(--border);overflow-y:auto}@media (min-width: 1400px){.chat-info.legacy{width:260px}}.mono{font-family:var(--font-mono)}.muted{color:var(--text-muted)}.chat-loading-skeleton{display:flex;flex-direction:column;gap:.75rem;padding:1rem 0}.chat-loading-skeleton-bubble{display:flex;flex-direction:column;gap:.5rem;padding:.875rem 1.125rem;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-lg);max-width:600px}.chat-loading-skeleton-meta{height:12px;width:80px;background:var(--bg-2);border-radius:4px;animation:skeleton-pulse 1.4s ease-in-out infinite}.chat-loading-skeleton-line{height:12px;background:var(--bg-2);border-radius:4px;animation:skeleton-pulse 1.4s ease-in-out infinite}.chat-loading-skeleton-line.short{width:60%}@keyframes skeleton-pulse{0%,to{opacity:.6}50%{opacity:1}}.chat-streaming-indicator{display:inline-flex;align-items:center;gap:4px;padding:.5rem 1rem}.chat-streaming-indicator span{display:inline-block;width:6px;height:6px;background:var(--text-muted);border-radius:50%;animation:streaming-bounce 1.4s ease-in-out infinite}.chat-streaming-indicator span:nth-child(2){animation-delay:.16s}.chat-streaming-indicator span:nth-child(3){animation-delay:.32s}@keyframes streaming-bounce{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.chat-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;gap:.625rem}.chat-empty-state-icon{color:var(--text-muted);opacity:.6}.chat-empty-state-title{font-size:1rem;font-weight:600;color:var(--text);margin:0}.chat-empty-state-message{font-size:.8125rem;color:var(--text-muted);margin:0;max-width:320px}.chat-empty-state-action{margin-top:.5rem}@media (max-width: 480px){.chat-composer-wrap{padding:.375rem .375rem .5rem}.chat-welcome-h1{font-size:1.875rem}}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:Inter var,Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-feature-settings:"cv02","cv03","cv04","cv11";font-size:14px;line-height:1.5;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,pre,.mono{font-family:var(--mono)}::selection{background:var(--accent-bg);color:var(--accent-2)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:6px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:root{--bg: #0b0e14;--bg-elev: #12161f;--bg-elev-2: #1a1f2b;--bg-elev-3: #232a39;--border: #232a39;--border-strong: #2d3648;--text: #c9d1d9;--text-dim: #b4bcd0;--text-muted: var(--text-dim);--text-strong: #f0f6fc;--accent: #8b5cf6;--accent-2: #a78bfa;--accent-3: #c4b5fd;--accent-bg: rgba(139, 92, 246, .12);--accent-border: rgba(139, 92, 246, .4);--accent-glow: rgba(139, 92, 246, .18);--accent-soft: rgba(139, 92, 246, .08);--success: #34d399;--warning: #fbbf24;--error: #f87171;--info: #60a5fa;--success-soft: rgba(52, 211, 153, .15);--error-soft: rgba(248, 113, 113, .12);--warning-soft: rgba(251, 191, 36, .15);--syntax-key: #79c0ff;--syntax-string: #a5d6ff;--syntax-number: #ffa657;--syntax-boolean: #ff7b72;--syntax-null: #ff7b72;--overlay-bg: rgba(0, 0, 0, .6);--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", "Cascadia Code", Consolas, monospace;--font-sans: "Inter var", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--radius-sm: 4px;--radius: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-color: rgba(0, 0, 0, .45);--shadow-color-strong: rgba(0, 0, 0, .6);--shadow-1: 0 1px 2px var(--shadow-color);--shadow-2: 0 4px 12px var(--shadow-color);--shadow-3: 0 12px 32px var(--shadow-color);--shadow-glow: 0 0 0 1px var(--accent-border), 0 8px 32px var(--accent-glow);--bg-elevated: var(--bg-elev);--surface-2: var(--bg-elev-2);--motion-base: .18s;--motion-slow: .28s;--ease: cubic-bezier(.4, 0, .2, 1);--surface-0: var(--bg);--surface-1: color-mix(in oklab, var(--bg) 92%, var(--text) 8%);--surface-2: color-mix(in oklab, var(--bg) 84%, var(--text) 16%);--success: oklch(.72 .16 145);--warning: oklch(.78 .14 70);--error: oklch(.66 .2 25);--info: oklch(.72 .13 235);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--motion-fast: .12s;--motion-base: .2s;--motion-slow: .32s;--motion-ease: cubic-bezier(.2, 0, 0, 1);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--bg-1: #18181b;--bg-2: #27272a;--radius-pill: 999px;--gradient-hello: linear-gradient( 90deg, color-mix(in oklab, var(--accent), white 25%) 0%, var(--accent) 100% );--gradient-name: linear-gradient( 90deg, var(--accent) 0%, color-mix(in oklab, var(--accent), oklch(.55 .22 25) 35%) 60%, color-mix(in oklab, var(--accent), oklch(.55 .22 25) 65%) 100% );color-scheme:dark}[data-theme=light]{--bg: #f7f8fa;--bg-elev: #ffffff;--bg-elev-2: #f0f3f8;--bg-elev-3: #e6ebf2;--border: #e2e8f0;--border-strong: #cbd5e1;--text: #1f2937;--text-dim: #475569;--text-strong: #0f172a;--accent: #7c3aed;--accent-2: #6d28d9;--accent-3: #5b21b6;--accent-bg: rgba(124, 58, 237, .08);--accent-border: rgba(124, 58, 237, .3);--accent-glow: rgba(124, 58, 237, .18);--accent-soft: rgba(124, 58, 237, .06);--success: #059669;--warning: #d97706;--error: #dc2626;--info: #2563eb;--success-soft: rgba(5, 150, 105, .12);--error-soft: rgba(220, 38, 38, .08);--warning-soft: rgba(217, 119, 6, .12);--syntax-key: #0969da;--syntax-string: #0a3069;--syntax-number: #953800;--syntax-boolean: #cf222e;--syntax-null: #cf222e;--shadow-color: rgba(15, 23, 42, .08);--shadow-color-strong: rgba(15, 23, 42, .16);--shadow-1: 0 1px 2px var(--shadow-color);--shadow-2: 0 4px 12px var(--shadow-color);--shadow-3: 0 12px 32px var(--shadow-color);--surface-1: color-mix(in oklab, var(--bg) 92%, var(--text) 8%);--surface-2: color-mix(in oklab, var(--bg) 84%, var(--text) 16%);--success: oklch(.62 .16 145);--warning: oklch(.72 .14 70);--error: oklch(.6 .2 25);--info: oklch(.62 .13 235);--bg-1: #f4f4f5;--bg-2: #e4e4e7;color-scheme:light}.app{display:flex;flex-direction:column;height:100vh;background:radial-gradient(circle at 0% 0%,var(--accent-bg),transparent 50%),var(--bg);background-attachment:fixed}.view{max-width:1400px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:var(--space-5);animation:view-in var(--motion-slow) var(--ease);min-height:0}@keyframes view-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.view-chat,.view-config{height:100%;min-height:0}.view-chat{max-width:1600px}.app[data-active-tab=chat]>.layout-body>.content{padding:0;max-width:none;overflow:hidden}.app[data-active-tab=artifacts]>.layout-body>.content,.app[data-active-tab=skills]>.layout-body>.content{padding:0;max-width:none}.view-chat-fullscreen,.view-plans-fullscreen,.view-skills-fullscreen{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;width:100%;height:100%;max-width:none;margin:0;background:var(--bg)}.view-chat-fullscreen>.chat-layout,.view-plans-fullscreen>.plans-body,.view-skills-fullscreen>.skills-body{flex:1;min-height:0;width:100%}.view-loading{display:flex;flex-direction:column;gap:var(--space-3);align-items:center;justify-content:center;min-height:60vh;color:var(--text-dim)}.loading{display:flex;flex-direction:column;gap:var(--space-3);align-items:center;justify-content:center;min-height:100vh;color:var(--text-dim)}.boot-error{max-width:560px;margin:var(--space-12) auto;padding:var(--space-6);background:var(--bg-elev);border:1px solid var(--error);border-radius:var(--radius-lg);box-shadow:var(--shadow-2)}.boot-error h2{margin:0 0 var(--space-3);color:var(--error)}.boot-error code{background:var(--bg);padding:2px 6px;border-radius:var(--radius-sm);font-size:12px}.topbar{display:flex;flex-direction:column;flex-shrink:0;min-height:56px;background:color-mix(in srgb,var(--bg-elev) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.topbar-row{display:flex;align-items:center;height:56px;flex-shrink:0;padding:0 var(--space-5);gap:var(--space-4);width:100%;min-width:0}.topbar-spacer{flex:1;min-width:0}.tabs-row{display:flex;gap:2px;padding:0 var(--space-5);height:40px;align-items:center;overflow-x:auto;scrollbar-width:none;border-top:1px solid var(--border)}.tabs-row::-webkit-scrollbar{display:none}.brand{display:flex;align-items:center;gap:var(--space-2);-webkit-user-select:none;user-select:none}.brand-logo{font-size:22px;line-height:1;filter:drop-shadow(0 0 12px var(--accent-border))}.brand-title{font-weight:600;font-size:15px;letter-spacing:-.01em;color:var(--text-strong)}.brand-version{font-family:var(--font-mono);font-size:10px;color:var(--text-dim);padding:2px 7px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:999px;font-weight:500}.tab{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid transparent;color:var(--text-dim);padding:6px 12px;border-radius:999px;cursor:pointer;font-size:13px;font-weight:500;white-space:nowrap;transition:background var(--motion-base) var(--ease),color var(--motion-base) var(--ease),border-color var(--motion-base) var(--ease),transform var(--motion-fast) var(--ease)}.tab:hover{color:var(--text);background:var(--bg-elev-2)}.tab:active{transform:scale(.98)}.tab-active{color:var(--accent-3);background:var(--accent-bg);border-color:var(--accent-border)}.tab-icon{flex-shrink:0}.topbar-right{display:flex;align-items:center;gap:var(--space-3)}.ws-status{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-family:var(--font-mono);color:var(--text-dim);padding:4px 10px;border-radius:999px;background:var(--bg-elev-2);border:1px solid var(--border);text-transform:capitalize}.ws-dot{width:8px;height:8px;border-radius:50%;background:var(--text-dim);position:relative}.ws-connected .ws-dot{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}.ws-connecting .ws-dot{background:var(--warning);animation:pulse 1.4s ease-in-out infinite}.ws-disconnected .ws-dot{background:var(--error)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.view-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.view-header-text{display:flex;flex-direction:column;gap:4px;min-width:0}.view-title{display:inline-flex;align-items:center;gap:var(--space-2);font-size:22px;font-weight:700;letter-spacing:-.01em;color:var(--text-strong);margin:0}.view-subtitle{font-size:13px;color:var(--text-dim);margin:0}.view-actions{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);transition:border-color var(--motion-base) var(--ease),transform var(--motion-base) var(--ease),box-shadow var(--motion-base) var(--ease)}.card-elevated{background:var(--bg-elev)}.card-outlined{background:transparent}.card-filled{background:var(--bg-elev-2);border-color:var(--border-strong)}.card-interactive{cursor:pointer}.card-interactive:hover{border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow-2)}.card-title{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--text-strong);margin:0;letter-spacing:-.005em}.card-meta{font-size:12px;color:var(--text-dim)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius);cursor:pointer;font-weight:500;white-space:nowrap;transition:background var(--motion-fast) var(--ease),border-color var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease),transform var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-size-sm{padding:4px 10px;font-size:12px}.btn-size-md{padding:7px 14px;font-size:13px}.btn-size-lg{padding:10px 18px;font-size:14px}.btn-icon{padding:6px;width:30px;height:30px}.btn-primary{background:var(--accent);color:#fff;border:1px solid var(--accent)}.btn-primary:hover:not(:disabled){background:var(--accent-2);border-color:var(--accent-2)}.btn-accent{background:var(--accent-bg);color:var(--accent-2);border:1px solid var(--accent-border)}.btn-secondary{background:var(--bg-elev-2);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){border-color:var(--border-strong);background:var(--bg-elev-3)}.btn-ghost{background:transparent;color:var(--text-dim);border:1px solid transparent}.btn-ghost:hover:not(:disabled){background:var(--bg-elev-2);color:var(--text)}.btn-danger{background:transparent;color:var(--error);border:1px solid var(--error)}.btn-danger:hover:not(:disabled){background:var(--error-soft)}.btn-success{background:var(--success);color:var(--text-strong);border:1px solid var(--success)}.btn-success:hover:not(:disabled){filter:brightness(1.08)}.btn-loading{pointer-events:none}.btn-spinner{width:12px;height:12px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .7s linear infinite}.hint-key{opacity:.7;margin-left:2px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);border:1px solid transparent;cursor:pointer;transition:all var(--motion-fast) var(--ease)}.icon-btn:hover{background:var(--bg-elev-2);color:var(--text);border-color:var(--border)}.icon-btn-danger:hover{background:var(--error-soft);color:var(--error);border-color:var(--error)}.w-full{width:100%}.input,.textarea,.select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:7px 12px;width:100%;font-size:13px;transition:border-color var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease)}.textarea{resize:vertical;min-height:80px;font-family:var(--font-mono);font-size:12px;line-height:1.55}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path fill='%238b95a8' d='M2 4l4 4 4-4z'/></svg>");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px}[data-theme=light] .select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'><path fill='%2364748b' d='M2 4l4 4 4-4z'/></svg>")}.select-sm{padding:4px 28px 4px 10px;font-size:12px;height:30px}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.textarea.invalid{border-color:var(--error)}.field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.field-label{font-size:12px;font-weight:500;color:var(--text-dim);letter-spacing:.01em}.field-help{font-size:11px;color:var(--text-dim)}.checkbox-row{display:flex;align-items:center;gap:var(--space-2);padding:6px 0;font-size:13px;cursor:pointer;color:var(--text)}.checkbox-row input{width:auto;cursor:pointer;accent-color:var(--accent)}.radio-row{display:flex;gap:var(--space-3)}.radio-label{display:inline-flex;align-items:center;gap:4px;font-size:13px;cursor:pointer}.radio-label input{width:auto;accent-color:var(--accent)}.capitalize{text-transform:capitalize}.tabular-nums{font-variant-numeric:tabular-nums}.text-error{color:var(--error)}.muted{color:var(--text-dim)}.text-sm{font-size:12px}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:10px;font-family:var(--font-mono);font-weight:500;background:var(--bg-elev-2);color:var(--text-dim);border:1px solid var(--border);text-transform:uppercase;letter-spacing:.04em}.badge-dot:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor}.badge-success{color:var(--success);border-color:var(--success-soft)}.badge-warning{color:var(--warning);border-color:var(--warning-soft)}.badge-error{color:var(--error);border-color:var(--error-soft)}.badge-info{color:var(--info);border-color:var(--info)}.badge-accent{color:var(--accent-2);border-color:var(--accent-border)}.badge-neutral{color:var(--text-dim)}.tag{display:inline-flex;align-items:center;gap:4px;padding:1px 8px;border-radius:999px;font-size:10px;font-family:var(--font-mono);background:var(--accent-bg);color:var(--accent-2);border:1px solid var(--accent-border)}.tag-remove{background:transparent;border:none;color:inherit;cursor:pointer;padding:0 0 0 2px;font-size:12px;line-height:1;opacity:.7}.tag-remove:hover{opacity:1}.spinner{display:inline-block;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.spinner-sm{width:12px;height:12px}.spinner-md{width:18px;height:18px}.spinner-lg{width:32px;height:32px;border-width:3px}@keyframes spin{to{transform:rotate(360deg)}}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}@media (max-width: 1100px){.stat-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.stat-grid{grid-template-columns:1fr}}.stat-card{flex-direction:row;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5)}.stat-card-icon{width:40px;height:40px;border-radius:var(--radius);background:var(--accent-bg);color:var(--accent-2);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.stat-card-value{font-size:26px;font-weight:700;color:var(--text-strong);letter-spacing:-.02em;line-height:1.05}.stat-card-label{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.stat-card-arrow{color:var(--text-dim);font-size:18px;transition:transform var(--motion-base) var(--ease)}.stat-card:hover .stat-card-arrow{transform:translate(2px);color:var(--accent-2)}.overview-hero{padding:var(--space-8);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;margin-bottom:var(--space-6)}.overview-hero-title{font-size:26px;font-weight:700;margin:0 0 var(--space-2);color:var(--text-strong);letter-spacing:-.01em}.overview-hero-subtitle{font-size:14px;color:var(--text-dim);margin:0 0 var(--space-6);max-width:480px;margin-left:auto;margin-right:auto}.overview-hero-form{display:flex;flex-direction:column;gap:var(--space-3);max-width:720px;margin:0 auto}.overview-hero-input{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:14px;line-height:1.5;resize:vertical;min-height:88px;transition:border-color var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease)}.overview-hero-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.overview-hero-input:disabled{opacity:.5;cursor:not-allowed}.overview-hero-noframe{padding:80px 24px 48px;text-align:center;max-width:1100px;margin:0 auto;width:100%}.overview-hero-noframe h1{font-size:48px;font-weight:800;line-height:1.1;margin:0 0 12px;letter-spacing:-.02em;background:linear-gradient(135deg,var(--text-strong) 0%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:var(--text-strong)}.overview-hero-noframe .overview-hero-subtitle{font-size:16px;color:var(--text-dim);margin:0 auto 32px;max-width:620px}.overview-hero-form-noframe{display:flex;flex-direction:column;gap:var(--space-3);max-width:900px;margin:0 auto}.overview-input-hero{width:100%;min-height:160px;padding:24px;border:1px solid var(--border);border-radius:16px;background:var(--bg-elev);color:var(--text);font-family:var(--font-sans);font-size:16px;line-height:1.5;resize:vertical;box-shadow:var(--shadow-2);transition:border-color .12s var(--ease),box-shadow .12s var(--ease)}.overview-input-hero:focus{outline:none;border-color:var(--accent);box-shadow:var(--shadow-3),0 0 0 4px var(--accent-glow)}.overview-input-hero::placeholder{color:var(--text-dim)}.overview-input-hero:disabled{opacity:.5;cursor:not-allowed}.overview-quick-actions-row{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;margin-top:var(--space-5)}.overview-feed{max-width:1100px;margin:48px auto 0;width:100%}.overview-feed-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.overview-feed-head-actions{display:inline-flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.activity-hidden-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:0 0 var(--space-3);padding:8px 12px;border-radius:var(--radius);border:1px dashed color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--bg-elev-2));font-size:12px;color:var(--text-dim)}.overview-feed h2{font-size:20px;font-weight:700;color:var(--text-strong);margin:0 0 var(--space-3)}@media (max-width: 700px){.overview-hero-noframe{padding:48px 16px 32px}.overview-hero-noframe h1{font-size:32px}}.overview-quick-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:center;margin-top:var(--space-4)}.overview-quick-chip{padding:5px 12px;border:1px solid var(--border);border-radius:999px;background:var(--bg-elev-2);color:var(--text-dim);font-size:12px;cursor:pointer;transition:all var(--motion-fast) var(--ease);font-family:inherit}.overview-quick-chip:hover{background:var(--bg-elev-3);color:var(--text);border-color:var(--border-strong)}.quick-actions{gap:var(--space-3)}.quick-actions-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.overview-cols{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-4)}@media (max-width: 1000px){.overview-cols{grid-template-columns:1fr}}.activity-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:360px;overflow-y:auto}.activity-item{display:grid;grid-template-columns:60px 130px 1fr;gap:var(--space-3);padding:8px var(--space-2);font-size:12px;border-radius:var(--radius-sm);font-family:var(--font-mono);border-left:2px solid var(--border);align-items:baseline}.activity-item:hover{background:var(--bg-elev-2)}.activity-ts{color:var(--text-dim);white-space:nowrap}.activity-kind{color:var(--accent-2)}.activity-msg{color:var(--text);word-break:break-word;overflow:hidden;text-overflow:ellipsis}.activity-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-3)}.activity-card{--accent-rule: var(--accent);display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:box-shadow var(--motion-fast) var(--ease),transform var(--motion-fast) var(--ease),background var(--motion-base) var(--ease);position:relative;overflow:hidden}.activity-card:before{content:"";position:absolute;top:0;left:14px;right:14px;height:2px;border-radius:999px;background:var(--accent-rule);pointer-events:none}.activity-card:hover{box-shadow:var(--shadow-2);transform:translateY(-1px);background:var(--bg-elev-3)}.activity-card-info{--accent-rule: var(--accent)}.activity-card-success{--accent-rule: var(--success)}.activity-card-warning{--accent-rule: var(--warning)}.activity-card-error{--accent-rule: var(--error)}.activity-card-expanded{grid-column:1 / -1}.activity-card-icon{flex-shrink:0;width:24px;height:24px;margin-top:1px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent-rule) 14%,var(--bg))}.activity-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.activity-card-kind{color:var(--text-dim);font-family:var(--font-mono);text-transform:lowercase}.activity-card-msg{color:var(--text);word-break:break-word;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.activity-card-detail{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2);overflow-x:auto;margin-top:var(--space-1);white-space:pre-wrap;word-break:break-all}.activity-card-time{flex-shrink:0;white-space:nowrap;color:var(--text-dim)}.activity-feed-list-wrap{position:relative}.activity-feed-list-wrap-collapsed{max-height:31rem;overflow:hidden}.activity-feed-list{display:flex;flex-direction:column;gap:6px}.activity-feed-fade{position:absolute;left:0;right:0;bottom:0;height:8rem;background:linear-gradient(to bottom,rgba(8,11,18,0),var(--bg));pointer-events:none}.activity-feed-row{display:flex;align-items:stretch;gap:0;width:100%;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb,var(--bg-elev-2) 82%,transparent);transition:background var(--motion-fast) var(--ease),border-color var(--motion-fast) var(--ease)}.activity-feed-row:hover{background:var(--bg-elev-2);border-color:color-mix(in srgb,var(--accent) 24%,var(--border))}.activity-feed-row-main{flex:1;display:flex;align-items:flex-start;gap:var(--space-3);padding:10px 12px;background:transparent;border:0;text-align:left;color:inherit;font:inherit;cursor:pointer;min-width:0}.activity-feed-hide-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;flex-shrink:0;border:0;border-left:1px solid var(--border);background:transparent;color:var(--text-dim);cursor:pointer;opacity:0;transition:opacity var(--motion-fast) var(--ease),background var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease);border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.activity-feed-row:hover .activity-feed-hide-btn,.activity-feed-hide-btn:focus-visible{opacity:1}.activity-feed-hide-btn:hover{background:color-mix(in srgb,var(--error) 14%,transparent);color:var(--error)}.activity-feed-icon{width:24px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:color-mix(in srgb,currentColor 12%,var(--bg))}.activity-feed-body{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.activity-feed-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.activity-feed-title{font-size:13px;font-weight:600;color:var(--text)}.activity-feed-summary{color:var(--text-dim);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.activity-feed-time{white-space:nowrap}.activity-log-toolbar{display:flex;align-items:center;gap:var(--space-3);margin:0 0 var(--space-3);flex-wrap:wrap}.activity-log-search{position:relative;flex:1;min-width:200px;display:flex;align-items:center}.activity-log-search>svg{position:absolute;left:10px;color:var(--text-dim);pointer-events:none}.activity-log-search>.input{padding-left:30px;width:100%}.activity-log-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-dim);-webkit-user-select:none;user-select:none;cursor:pointer}.activity-log-table-wrap{border:1px solid var(--border);border-radius:var(--radius);overflow:auto;max-height:480px;background:var(--bg-elev-2)}.activity-log-table{width:100%;border-collapse:collapse;font-size:12px}.activity-log-table thead{position:sticky;top:0;background:color-mix(in srgb,var(--bg-elev-3) 92%,var(--bg-elev-2));z-index:1}.activity-log-table th{text-align:left;padding:8px 12px;font-weight:600;color:var(--text-dim);font-size:11px;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}.activity-log-table td{padding:6px 12px;border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent);vertical-align:top}.activity-log-table tbody tr:last-child td{border-bottom:0}.activity-log-table tbody tr:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.activity-log-row-hidden{opacity:.55}.activity-log-row-hidden .activity-log-kind{text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--text-dim) 60%,transparent)}.activity-log-kind{font-family:var(--font-mono, ui-monospace, monospace);color:var(--accent);white-space:nowrap}.activity-log-detail{color:var(--text);word-break:break-word}.activity-log-time{color:var(--text-dim);white-space:nowrap;font-size:11px}.activity-log-state-tag{font-size:10px;padding:2px 6px;border-radius:4px;background:color-mix(in srgb,var(--success) 14%,transparent);color:var(--success);text-transform:uppercase;letter-spacing:.04em}.env-table,.about-table{display:grid;grid-template-columns:max-content 1fr;gap:6px var(--space-4);margin:0;font-size:13px}.env-table dt,.about-table dt{color:var(--text-dim);font-size:12px}.env-table dd,.about-table dd{margin:0;color:var(--text)}.overview-footer{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-dim);padding-top:var(--space-3);border-top:1px solid var(--border)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8) var(--space-4);text-align:center;color:var(--text-dim)}.empty-icon{color:var(--text-dim);opacity:.7}.empty-title{font-weight:600;color:var(--text);font-size:15px;margin-top:var(--space-2)}.empty-message{font-size:13px;max-width:420px}.empty-action{margin-top:var(--space-3)}.agent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}@media (max-width: 1100px){.agent-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 700px){.agent-grid{grid-template-columns:1fr}}.agent-card{gap:var(--space-2)}.agent-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.agent-card-name{font-weight:600;font-family:var(--font-mono);color:var(--accent-2);font-size:15px}.agent-card-desc{font-size:12px;color:var(--text-dim);line-height:1.5;min-height:36px}.agent-card-meta{display:flex;justify-content:space-between;font-size:11px;font-family:var(--font-mono);color:var(--text-dim)}.agent-card-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.invoke-form{display:flex;flex-direction:column;gap:var(--space-3)}.invoke-form-meta{font-size:11px}.invoke-form-desc{margin:0;font-size:13px;color:var(--text-dim)}.new-plan-form{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.new-plan-form .input{flex:1;min-width:200px}.plans-layout{display:grid;grid-template-columns:340px 1fr;gap:var(--space-4);min-height:500px}@media (max-width: 1000px){.plans-layout{grid-template-columns:1fr}}.plans-list-col{display:flex;flex-direction:column;gap:var(--space-3);max-height:calc(100vh - 280px);overflow-y:auto;padding-right:4px}.plans-canvas-col{display:flex;flex-direction:column;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;min-height:500px}.plan-card{gap:var(--space-2)}.plan-card-selected{border-color:var(--accent);box-shadow:var(--shadow-glow)}.plan-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.plan-card-title{font-weight:600;color:var(--text-strong);font-size:14px}.plan-card-slug,.plan-card-meta{font-size:11px;color:var(--text-dim)}.plan-card-actions{display:flex;gap:var(--space-2)}.plan-canvas{display:flex;flex-direction:column;flex:1;min-height:0}.plan-canvas-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);background:var(--bg-elev-2)}.plan-canvas-title{font-weight:600;font-size:14px;color:var(--text-strong)}.plan-canvas-meta{font-size:11px;color:var(--text-dim);margin-top:2px;font-family:var(--font-mono)}.plan-canvas-actions{display:flex;gap:var(--space-2)}.plan-canvas-area{flex:1;position:relative;overflow:hidden;background:var(--bg);min-height:360px}.canvas-root{position:relative;flex:1;min-height:0;cursor:grab;overflow:hidden}.canvas-grid-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,var(--border) 1px,transparent 1px);background-size:24px 24px;background-position:0 0;opacity:.5;pointer-events:none}.canvas-inner{position:absolute;top:0;left:0;transform-origin:0 0}.canvas-element{position:absolute;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3);cursor:pointer;transition:border-color var(--motion-base) var(--ease),box-shadow var(--motion-base) var(--ease),transform var(--motion-fast) var(--ease);min-width:140px}.canvas-element:hover{border-color:var(--accent-border);transform:translateY(-1px);box-shadow:var(--shadow-2)}.canvas-element-selected{border-color:var(--accent);box-shadow:var(--shadow-glow)}.canvas-element-type{font-family:var(--font-mono);font-size:10px;color:var(--accent-2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.canvas-element-title{font-weight:600;font-size:13px;color:var(--text-strong);margin-bottom:4px}.canvas-element-content{font-size:11px;color:var(--text-dim);line-height:1.5;white-space:pre-wrap;word-break:break-word}.canvas-connections{position:absolute;pointer-events:none;overflow:visible}.canvas-hint{position:absolute;bottom:var(--space-3);right:var(--space-3);font-size:11px;color:var(--text-dim);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:4px 8px;pointer-events:none}.plan-canvas-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-dim);text-align:center;padding:var(--space-6)}.plan-canvas-comments{border-top:1px solid var(--border);padding:var(--space-3) var(--space-4);background:var(--bg-elev-2);max-height:220px;overflow-y:auto}.plan-canvas-comments-title{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text);margin:0 0 var(--space-2)}.comment-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.comment-item{padding:var(--space-2) var(--space-3);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius)}.comment-head{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:4px}.comment-author{font-size:11px;font-weight:600;color:var(--accent-2)}.comment-time{font-size:11px}.comment-text{font-size:12px;color:var(--text);line-height:1.5}.comment-thread{margin-top:var(--space-2);padding-left:var(--space-3);border-left:2px solid var(--border);display:flex;flex-direction:column;gap:4px}.comment-reply{display:flex;gap:var(--space-2);font-size:11px;align-items:baseline}.comment-reply-text{color:var(--text-dim)}.agent-card-head{flex-wrap:wrap;gap:var(--space-2)}.agent-card-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.agent-card-name{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--text-strong);font-size:14px;min-width:0}.agent-status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.agent-card-category{font-size:10px;padding:1px 7px;border-radius:999px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-family:var(--font-mono)}.agent-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.agent-card-tag{font-size:10px;padding:1px 6px;background:var(--bg-elev-2);border:1px solid var(--border);color:var(--text-dim);border-radius:999px}.agent-card-activity{display:flex;flex-direction:column;gap:2px;margin-top:6px;padding:6px 8px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);font-size:11px}.agent-card-row{display:inline-flex;align-items:center;gap:6px;font-size:11px}.agent-card-row code{font-size:10px;background:var(--bg);padding:1px 4px;border-radius:3px;border:1px solid var(--border)}.agent-card-error{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:11px;color:var(--error)}.agent-card-expanded{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.agent-card-status-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.agent-card-path{font-size:10px;background:var(--bg);padding:1px 4px;border-radius:3px;border:1px solid var(--border);overflow:hidden;text-overflow:ellipsis}.agent-tags-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:var(--text-dim);font-size:11px;margin-top:-8px}.task-bulk-bar{display:flex;align-items:center;gap:var(--space-3);padding:8px 12px;background:var(--accent-bg);border:1px solid var(--accent-border);border-radius:var(--radius);font-size:13px;flex-wrap:wrap}.task-bulk-bar-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.task-bulk-bar>.text-sm{display:inline-flex;align-items:center;gap:4px}.provider-active-card{margin-bottom:var(--space-4);position:relative;overflow:hidden}.provider-active-card:before{content:"";position:absolute;top:0;left:18px;right:18px;height:2px;border-radius:999px;background:var(--accent);pointer-events:none}.provider-active-body{display:flex;flex-direction:column;gap:4px;margin-top:var(--space-2)}.provider-active-name{font-weight:600;font-size:15px}.provider-active-model code{font-size:12px;background:var(--bg-elev-2);padding:1px 5px;border-radius:3px}.provider-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}.provider-card{display:flex;flex-direction:column;gap:var(--space-2)}.provider-card-disabled{opacity:.6}.provider-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2)}.provider-card-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.provider-card-name{display:flex;align-items:center;gap:6px;font-weight:600;font-size:14px}.provider-card-url{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.provider-card-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.provider-card-stats{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-dim)}.provider-models-section{display:flex;flex-direction:column;gap:4px}.provider-models-toggle{display:inline-flex;align-items:center;gap:4px;background:none;border:none;cursor:pointer;color:var(--accent);padding:0;font-size:12px;text-align:left}.provider-models-toggle:hover{text-decoration:underline}.provider-models-list{list-style:none;margin:0;display:flex;flex-direction:column;gap:3px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);padding:6px 8px}.provider-model-item{font-size:11px;color:var(--text-dim)}.provider-model-item code{font-size:11px;color:var(--text)}.provider-card-footer{display:flex;align-items:center;gap:4px;margin-top:auto;padding-top:var(--space-2);border-top:1px solid var(--border)}.skills-categories{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.skill-category{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--bg-elev-2);border:1px solid var(--border);color:var(--text-dim);border-radius:999px;font-size:12px;cursor:pointer;transition:background var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease),border-color var(--motion-fast) var(--ease);font-family:inherit}.skill-category:hover{background:var(--bg-elev-3);color:var(--text)}.skill-category-active{background:var(--accent-bg);color:var(--accent-2);border-color:var(--accent-border)}.skill-category-count{margin-left:auto;font-size:10px;padding:1px 5px;background:var(--bg-elev-3);border-radius:999px;color:var(--text-muted)}.skills-section{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.skills-section-title{display:inline-flex;align-items:center;gap:6px;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);margin:0;font-weight:600}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-3)}.skill-card{display:flex;flex-direction:column;gap:6px}.skill-card-disabled{opacity:.55}.skill-card-skeleton{height:160px;background:linear-gradient(90deg,var(--bg-elev-2),var(--bg-elev-3),var(--bg-elev-2));background-size:200% 100%;animation:skeleton-pulse 1.4s linear infinite;border-radius:var(--radius-lg);border:1px solid var(--border)}@keyframes skeleton-pulse{0%{background-position:100% 0}to{background-position:-100% 0}}.skill-card-head{display:flex;align-items:center;gap:var(--space-2);min-width:0}.skill-card-icon{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius);flex-shrink:0;color:var(--accent-2)}.skill-card-title-area{flex:1;min-width:0}.skill-card-title{font-weight:600;color:var(--text-strong);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skill-card-source{font-size:10px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skill-card-desc{font-size:12px;color:var(--text);line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:3em}.skill-card-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px;color:var(--text-dim)}.skill-card-tag{font-size:10px;padding:1px 6px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:999px;color:var(--text-dim)}.skill-card-actions{display:flex;gap:4px;flex-wrap:wrap;margin-top:auto}.skill-detail{display:flex;flex-direction:column;gap:var(--space-2)}.skill-detail-source{font-size:11px}.skill-detail-desc{font-size:13px;line-height:1.5;color:var(--text)}.skill-detail-meta{display:flex;flex-direction:column;gap:4px;font-size:12px}.skill-detail-tags{display:flex;flex-wrap:wrap;gap:4px}.skill-detail-cmd{font-size:11px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:6px 10px;white-space:pre-wrap;word-break:break-all;margin:0;color:var(--accent-2)}.stuck-banner{display:flex;align-items:center;gap:var(--space-3);padding:8px 16px;background:color-mix(in srgb,var(--error) 15%,var(--bg-elev));border-bottom:1px solid var(--error);color:var(--text);font-size:13px;flex-shrink:0}.stuck-banner .icon-btn{margin-left:auto}.stuck-banner>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.55}}.is-working{animation:pulse-soft 1.6s var(--ease) infinite;position:relative}.is-working:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;border:1px solid var(--info);pointer-events:none;animation:pulse-soft 1.6s var(--ease) infinite}.is-stuck{position:relative}.is-stuck:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;border:1px solid var(--error);pointer-events:none}.plans-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-3)}.plans-editor-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:10px 16px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg-elev) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-shrink:0;min-width:0}.plans-editor-bar-left,.plans-editor-bar-right{display:flex;align-items:center;gap:var(--space-2);min-width:0}.plans-editor-bar-right{flex-shrink:0}.plans-editor-meta{display:flex;align-items:center;gap:var(--space-2);min-width:0}.plans-editor-title{font-weight:600;font-size:14px;color:var(--text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:360px}.plans-editor-slug{font-size:11px;color:var(--text-dim)}.plans-body{flex:1;min-height:0;display:grid;grid-template-columns:1fr 320px;min-width:0}.plans-body:has(.plans-comments-panel-closed),.plans-body:not(:has(.plans-comments-panel)){grid-template-columns:1fr}@media (max-width: 1000px){.plans-body{grid-template-columns:1fr}}.plans-canvas-wrap{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;position:relative;height:100%}.canvas-toolbar{display:flex;align-items:center;gap:6px;padding:6px 12px;border-bottom:1px solid var(--border);background:var(--bg-elev-2);font-size:11px;flex-shrink:0}.canvas-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.canvas-element-head{display:flex;align-items:center;justify-content:space-between;gap:4px;margin:-12px -12px 8px;padding:6px 10px;border-bottom:1px solid var(--border);border-radius:8px 8px 0 0}.canvas-element-type{display:inline-flex;align-items:center;gap:4px;font-size:10px;text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:var(--text-dim);margin:0}.canvas-element-type span{color:inherit}.canvas-element-actions{display:inline-flex;align-items:center;gap:4px}.canvas-element-badge{display:inline-flex;align-items:center;gap:3px;padding:1px 5px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:999px;font-size:10px;color:var(--text-dim);font-family:var(--font-mono)}.canvas-element-handle{border:0;background:transparent;color:var(--text-dim);cursor:grab;font-size:10px;padding:2px 4px;border-radius:3px;line-height:1}.canvas-element-handle:hover{background:var(--bg-elev-2);color:var(--text)}.canvas-element-handle:active{cursor:grabbing}.canvas-element-status{margin-top:6px;font-size:10px}.canvas-connection{cursor:pointer;pointer-events:all}.canvas-connection:hover line{stroke:var(--error);stroke-width:2}.canvas-connection-label{font-family:var(--font-mono);font-size:10px;fill:var(--accent-2);paint-order:stroke;stroke:var(--bg);stroke-width:3;pointer-events:all}.plans-comments-panel{display:flex;flex-direction:column;border-left:1px solid var(--border);background:var(--bg-elev);min-height:0;min-width:0}.plans-comments-panel-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.plans-comments-panel-head .card-title{margin:0;display:flex;align-items:center;gap:6px}.plans-comments-panel-list{flex:1;overflow-y:auto;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3);min-height:0}.plans-comments-panel-form{display:flex;flex-direction:column;gap:6px;padding:var(--space-3);border-top:1px solid var(--border);background:var(--bg-elev-2);flex-shrink:0}.plans-comments-panel-form .textarea{min-height:60px;resize:vertical}.plans-comments-panel-form .btn{align-self:flex-end}.plan-comment{padding:8px 10px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius)}.plan-comment-head{display:flex;align-items:center;gap:6px;margin-bottom:4px}.plan-comment-author{font-size:11px;font-weight:600;color:var(--accent-2)}.plan-comment-time{font-size:10px}.plan-comment-head .icon-btn{margin-left:auto;width:22px;height:22px}.plan-comment-text{font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.plan-config-form,.plan-element-form{display:flex;flex-direction:column;gap:6px}.view-plans-embedded{position:static;inset:auto;z-index:auto;background:transparent;border:1px solid var(--border);border-radius:var(--radius-lg);margin:var(--space-4)}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}@media (max-width: 900px){.project-grid{grid-template-columns:1fr}}.project-card{gap:var(--space-2)}.project-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.project-card-path{font-size:11px;color:var(--text-dim);word-break:break-all}.project-card-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.search-input{position:relative;display:inline-flex;align-items:center}.search-input>svg{position:absolute;left:10px;color:var(--text-dim)}.search-input .input{padding-left:32px;width:220px}.search-input>.icon-btn{position:absolute;right:4px;width:20px;height:20px}.kanban{display:grid;grid-template-columns:repeat(4,minmax(260px,1fr));gap:var(--space-4);align-items:start;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x proximity}.kanban-column{scroll-snap-align:start;min-width:260px}@media (max-width: 1100px){.kanban{grid-template-columns:repeat(4,280px)}}@media (max-width: 700px){.kanban{grid-template-columns:280px}}.kanban-column{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);display:flex;flex-direction:column;max-height:calc(100vh - 240px);transition:border-color var(--motion-base) var(--ease),background var(--motion-base) var(--ease)}.kanban-column-drop{border-color:var(--accent);background:var(--accent-bg)}.kanban-col-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);flex-shrink:0}.kanban-col-count{font-size:11px;color:var(--text-dim);background:var(--bg);padding:2px 8px;border-radius:999px;border:1px solid var(--border);font-family:var(--font-mono)}.kanban-col-body{flex:1;overflow-y:auto;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2);min-height:120px}.kanban-empty{text-align:center;color:var(--text-dim);font-size:12px;padding:var(--space-5) 0}.kanban-col-footer{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border);flex-shrink:0}.task-card{--accent-rule: transparent;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3);cursor:pointer;position:relative;overflow:hidden;transition:border-color var(--motion-base) var(--ease),box-shadow var(--motion-base) var(--ease),transform var(--motion-fast) var(--ease),background var(--motion-base) var(--ease)}.task-card:before{content:"";position:absolute;top:0;left:12px;right:12px;height:2px;border-radius:999px;background:var(--accent-rule);pointer-events:none}.task-card:hover{border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--shadow-2)}.task-card-focused{outline:2px solid var(--accent);outline-offset:-2px}.task-card-checkbox{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;padding:2px;cursor:pointer;color:var(--text-dim);border-radius:3px;flex-shrink:0;transition:color var(--motion-fast) var(--ease)}.task-card-checkbox:hover,.task-card-checkbox-on{color:var(--accent)}.task-card.priority-high{--accent-rule: var(--error)}.task-card.priority-low{--accent-rule: var(--text-dim)}.task-card.priority-normal{--accent-rule: var(--info)}.task-card-head{display:flex;align-items:flex-start;gap:var(--space-2);margin-bottom:6px}.priority-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:6px}.task-card-title{font-weight:600;font-size:13px;color:var(--text-strong);flex:1;word-break:break-word;line-height:1.4}.task-card-desc{font-size:12px;color:var(--text-dim);line-height:1.5;margin-bottom:var(--space-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:var(--space-2)}.task-card-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.task-card-time{font-size:10px;font-family:var(--font-mono)}.task-card-actions{display:inline-flex;gap:2px}.task-form{display:flex;flex-direction:column;gap:var(--space-2)}.task-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.task-form-field{display:flex;flex-direction:column;gap:var(--space-2)}@keyframes task-move{0%{background:var(--accent-bg)}to{background:transparent}}.config-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media (max-width: 1000px){.config-grid{grid-template-columns:1fr}}.config-textarea{min-height:360px;font-family:var(--font-mono);font-size:12px;line-height:1.55;width:100%;white-space:pre}.config-textarea.invalid{border-color:var(--error)}.json-tree{font-family:var(--font-mono);font-size:12px;line-height:1.6;white-space:pre;overflow-x:auto;max-height:380px;overflow-y:auto;padding:var(--space-3);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}.diff-card{gap:var(--space-2)}.diff-view{font-size:11px;line-height:1.5;max-height:300px;overflow-y:auto;padding:var(--space-3);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}.diff-line{padding:0 var(--space-2);white-space:pre}.diff-line-removed{color:var(--error);background:var(--error-soft)}.diff-line-added{color:var(--success);background:var(--success-soft)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.settings-subnav{display:flex;align-items:center;gap:4px;margin:0 0 var(--space-4);padding:4px;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb,var(--bg-elev-2) 70%,transparent);overflow-x:auto;scrollbar-width:thin;position:sticky;top:56px;z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.settings-subnav-button{display:inline-flex;align-items:center;height:28px;padding:0 12px;border:0;border-radius:calc(var(--radius) - 2px);background:transparent;color:var(--text-dim);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease)}.settings-subnav-button:hover{background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--text)}.settings-subnav-button-active{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.settings-subnav-button-active:hover{background:color-mix(in srgb,var(--accent) 24%,transparent)}.view-settings .view-subtitle{color:var(--text)}.view-settings .field-label{color:var(--text);font-weight:500}.view-settings .field-help{color:var(--text-muted)}.view-settings .card-title{color:var(--text-strong);font-weight:600}.view-settings .settings-subnav-button{color:var(--text-muted)}.view-settings .settings-subnav-button:hover{color:var(--text)}.view-settings .settings-subnav-button-active{color:var(--accent-2)}.view-settings .settings-section-wrap>h2,.view-settings .settings-section-wrap>h3{color:var(--text-strong);font-weight:600}.settings-grid[data-active-section]>[data-section]:not([data-section=""]){display:none}.settings-grid[data-active-section=theme]>[data-section=theme]{display:block}.settings-grid[data-active-section=layout]>[data-section=layout]{display:block}.settings-grid[data-active-section=general]>[data-section=general]{display:block}.settings-grid[data-active-section=service]>[data-section=service]{display:block}.settings-grid[data-active-section=tailscale]>[data-section=tailscale]{display:block}.settings-grid[data-active-section=notifications]>[data-section=notifications]{display:block}.settings-grid[data-active-section=auth]>[data-section=auth]{display:block}.settings-grid[data-active-section=agents]>[data-section=agents]{display:block}.settings-grid[data-active-section=dashboard]>[data-section=dashboard]{display:block}.settings-grid[data-active-section=background]>[data-section=background]{display:block}.settings-grid[data-active-section=updates]>[data-section=updates]{display:block}.settings-grid[data-active-section=activity-log]>[data-section=activity-log]{display:block}.settings-grid[data-active-section=about]>[data-section=about]{display:block}.settings-grid[data-active-section=diagnostics]>[data-section=diagnostics]{display:block}.settings-filter-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);grid-column:1 / -1;margin:0 0 var(--space-3);padding:10px 14px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:var(--radius);background:color-mix(in srgb,var(--accent) 8%,var(--bg-elev-2));font-size:12px;color:var(--text)}.settings-filter-clear{display:inline-flex;align-items:center;height:24px;padding:0 10px;border:0;border-radius:calc(var(--radius) - 2px);background:transparent;color:var(--accent);font-size:12px;font-weight:500;cursor:pointer;transition:background var(--motion-fast) var(--ease)}.settings-filter-clear:hover{background:color-mix(in srgb,var(--accent) 18%,transparent)}.settings-subnav-button-all{font-weight:600;border-right:1px solid var(--border);border-radius:calc(var(--radius) - 2px) 0 0 calc(var(--radius) - 2px)}.settings-section-wrap,[id^=settings-]{scroll-margin-top:100px}@media (max-width: 900px){.settings-grid{grid-template-columns:1fr}}.theme-row{display:flex;gap:var(--space-2);flex-wrap:wrap}.theme-card{flex:1;min-width:100px;display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;color:var(--text-dim);transition:border-color var(--motion-base) var(--ease),background var(--motion-base) var(--ease),color var(--motion-base) var(--ease)}.theme-card:hover{border-color:var(--border-strong);color:var(--text)}.theme-card-active{border-color:var(--accent);background:var(--accent-bg);color:var(--accent-2)}.theme-card-label{font-size:12px;font-weight:500}.theme-card-swatch{width:100%;height:24px;border-radius:var(--radius-sm);border:1px solid var(--border)}.theme-card-swatch-dark{background:linear-gradient(135deg,#0b0e14,#1a1f2b)}.theme-card-swatch-light{background:linear-gradient(135deg,#f7f8fa,#e6ebf2)}.theme-card-swatch-system{background:linear-gradient(135deg,#0b0e14,#0b0e14 50%,#f7f8fa 50%,#f7f8fa)}.theme-presets{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.theme-preset{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-2) var(--space-3);border:1.5px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);cursor:pointer;font-size:11px;color:var(--text-muted);transition:border-color var(--motion-fast),background var(--motion-fast)}.theme-preset:hover{border-color:var(--accent);background:var(--bg-elevated)}.theme-preset-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg-elevated));color:var(--accent)}.theme-preset-swatch{width:20px;height:20px;border-radius:50%;border:1.5px solid rgba(255,255,255,.15);display:block}.theme-preset-name{white-space:nowrap}.skills-categories-list{display:flex;flex-direction:column;gap:var(--space-3)}.skills-category{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.skills-category-summary{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--bg-elevated);cursor:pointer;font-weight:600;font-size:13px;color:var(--text);-webkit-user-select:none;user-select:none;list-style:none}.skills-category-summary::-webkit-details-marker{display:none}.skills-category-summary:before{content:"▶";font-size:9px;color:var(--text-muted);transition:transform var(--motion-fast);margin-right:var(--space-2)}details[open] .skills-category-summary:before{transform:rotate(90deg)}.skills-category-name{display:flex;align-items:center;gap:var(--space-2)}.skills-category .skills-grid{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border)}.icon-btn-active{background:color-mix(in srgb,var(--accent) 15%,var(--bg-elevated));color:var(--accent);border-color:var(--accent)}.toast-stack{position:fixed;bottom:var(--space-5);right:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);z-index:1000;pointer-events:none;max-width:420px}.toast{--accent-rule: var(--accent);display:inline-flex;align-items:center;gap:var(--space-2);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;box-shadow:var(--shadow-3);font-size:13px;pointer-events:auto;animation:toast-in var(--motion-slow) var(--ease);min-width:240px;color:var(--text);position:relative;overflow:hidden}.toast:before{content:"";position:absolute;top:0;left:12px;right:12px;height:2px;border-radius:999px;background:var(--accent-rule);pointer-events:none}.toast-icon{flex-shrink:0}.toast-message{flex:1;word-break:break-word}.toast-close{background:transparent;border:none;color:var(--text-dim);cursor:pointer;padding:2px;display:inline-flex}.toast-close:hover{color:var(--text)}.toast-success{--accent-rule: var(--success)}.toast-success .toast-icon{color:var(--success)}.toast-error{--accent-rule: var(--error)}.toast-error .toast-icon{color:var(--error)}.toast-warning{--accent-rule: var(--warning)}.toast-warning .toast-icon{color:var(--warning)}.toast-info .toast-icon{color:var(--info)}@keyframes toast-in{0%{transform:translate(110%);opacity:0}to{transform:translate(0);opacity:1}}.modal-stack{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;pointer-events:none}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--space-4);pointer-events:auto;animation:fade-in var(--motion-base) var(--ease)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);width:min(560px,100%);max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-3);animation:modal-in var(--motion-slow) var(--ease);overflow:hidden}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.modal-title{font-size:16px;font-weight:600;margin:0;color:var(--text-strong)}.modal-body{flex:1;overflow-y:auto;padding:var(--space-5);font-size:13px;line-height:1.55}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border);background:var(--bg-elev-2)}.modal-footer-actions{display:flex;gap:var(--space-2);justify-content:flex-end;width:100%}.file-browser{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--bg-elev);font-size:13px;outline:none}.file-browser-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:2px;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:var(--bg-elev-2);min-height:36px}.file-browser-breadcrumb-item{display:inline-flex;align-items:center;gap:2px}.file-browser-breadcrumb-sep{color:var(--text-dim);font-size:11px;margin:0 1px}.file-browser-breadcrumb-btn{background:none;border:none;color:var(--text-dim);cursor:pointer;padding:2px 4px;border-radius:var(--radius-sm);font-size:12px;font-family:inherit;transition:color var(--motion-fast) var(--ease),background var(--motion-fast) var(--ease)}.file-browser-breadcrumb-btn:hover{color:var(--text);background:var(--bg-elev-3)}.file-browser-breadcrumb-btn:last-child{color:var(--text-strong);font-weight:500}.file-browser-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:var(--bg)}.file-browser-toolbar-left{display:flex;align-items:center;gap:var(--space-1)}.file-browser-tool-btn{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--radius-sm);background:transparent;color:var(--text-dim);border:1px solid transparent;cursor:pointer;transition:all var(--motion-fast) var(--ease)}.file-browser-tool-btn:hover:not(:disabled){background:var(--bg-elev-2);color:var(--text);border-color:var(--border)}.file-browser-tool-btn:disabled{opacity:.35;cursor:not-allowed}.file-browser-chips{display:flex;align-items:center;gap:var(--space-1);margin-left:var(--space-1)}.file-browser-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:20px;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text-dim);font-size:11px;cursor:pointer;font-family:inherit;transition:all var(--motion-fast) var(--ease)}.file-browser-chip:hover{border-color:var(--accent-border);color:var(--accent-2);background:var(--accent-bg)}.file-browser-count-hint{font-size:11px;color:var(--text-dim);white-space:nowrap}.file-browser-mkdir{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.file-browser-mkdir-input{background:var(--bg);color:var(--text);border:1px solid var(--accent);border-radius:var(--radius-sm);padding:2px 6px;font-size:12px;height:24px;box-shadow:0 0 0 2px var(--accent-bg);width:100%;font-family:var(--font-sans)}.file-browser-mkdir-input:focus{outline:none;border-color:var(--accent)}.file-browser-mkdir-input:disabled{opacity:.5}.file-browser-mkdir-error{font-size:10px;color:var(--error);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-browser-mkdir-hint{font-size:10px;color:var(--text-dim);white-space:nowrap}.file-browser-truncated-banner{padding:6px 12px;font-size:11px;color:var(--warning);background:var(--warning-soft);border-bottom:1px solid rgba(251,191,36,.2);line-height:1.4}.file-browser-error{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#ef444414;border-bottom:1px solid rgba(239,68,68,.2);color:var(--error);font-size:12px}.file-browser-retry{margin-left:auto;background:none;border:1px solid var(--error);border-radius:var(--radius-sm);color:var(--error);cursor:pointer;font-size:11px;padding:1px 6px;font-family:inherit;transition:all var(--motion-fast) var(--ease)}.file-browser-retry:hover{background:#ef44441f}.file-browser-body{display:grid;grid-template-columns:40% 60%;overflow:hidden}.file-browser-pane{overflow-y:auto;overflow-x:hidden}.file-browser-tree{border-right:1px solid var(--border);background:var(--bg)}.file-browser-flat{background:var(--bg-elev)}.file-browser-tree-list{list-style:none;margin:0;padding:0}.file-browser-tree-row{display:flex;align-items:center;gap:2px;padding-right:var(--space-2);min-height:28px;cursor:default}.file-browser-tree-row:hover{background:var(--bg-elev-2)}.file-browser-tree-toggle{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;background:none;border:none;color:var(--text-dim);cursor:pointer;padding:0;border-radius:var(--radius-sm);transition:color var(--motion-fast) var(--ease)}.file-browser-tree-toggle:hover{color:var(--text)}.file-browser-tree-name{display:inline-flex;align-items:center;gap:5px;background:none;border:none;color:var(--text);font-size:12px;font-family:inherit;cursor:pointer;padding:2px 4px;border-radius:var(--radius-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color var(--motion-fast) var(--ease);flex:1}.file-browser-tree-name:hover{color:var(--accent-2)}.file-browser-flat-header{display:grid;grid-template-columns:1fr auto;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-bottom:1px solid var(--border);background:var(--bg-elev-2);font-size:11px;font-weight:500;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;position:sticky;top:0;z-index:1}.file-browser-flat-header span:last-child{color:var(--text-dim)}.file-browser-flat-list{display:flex;flex-direction:column}.file-browser-row{display:grid;grid-template-columns:16px 1fr auto;align-items:center;gap:var(--space-2);padding:5px var(--space-3);cursor:default;min-height:30px;transition:background var(--motion-fast) var(--ease);color:var(--text)}.file-browser-row:hover:not(.file-browser-row--disabled){background:var(--bg-elev-2)}.file-browser-row--selected{background:var(--accent-bg);outline:1px solid var(--accent-border)}.file-browser-row--active{background:var(--accent-bg)}.file-browser-row--file{opacity:.45}.file-browser-row--disabled{cursor:not-allowed}.file-browser-row-icon{display:inline-flex;align-items:center;color:var(--text-dim);flex-shrink:0}.file-browser-row--dir .file-browser-row-icon{color:var(--accent-2)}.file-browser-row-name{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-browser-row-type{font-size:11px;color:var(--text-dim);white-space:nowrap}.file-browser-empty{display:flex;align-items:center;justify-content:center;height:120px;color:var(--text-dim);font-size:13px;font-style:italic}.file-browser-footer-hint{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border);background:var(--bg-elev-2);font-size:11px;color:var(--text-dim)}.file-browser-footer-hint kbd{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:16px;padding:0 3px;border:1px solid var(--border-strong);border-radius:3px;font-size:10px;font-family:var(--font-mono);background:var(--bg-elev-3);color:var(--text-dim)}.file-browser-skeleton-wrap{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3)}.file-browser-skeleton-row{height:14px;border-radius:var(--radius-sm);background:var(--bg-elev-2);animation:skeleton-pulse 1.4s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:.5}50%{opacity:1}}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.code-block{background:var(--bg);padding:var(--space-3);border-radius:var(--radius);border:1px solid var(--border);font-size:12px;margin:var(--space-2) 0 0;overflow-x:auto}kbd{display:inline-flex;align-items:center;padding:1px 6px;border-radius:var(--radius-sm);background:var(--bg-elev-2);border:1px solid var(--border);border-bottom-width:2px;font-family:var(--font-mono);font-size:10px;color:var(--text-dim)}@media (max-width: 800px){.topbar{padding:0 var(--space-3);gap:var(--space-3)}.brand-version,.tab-label{display:none}.content{padding:var(--space-4)}.ws-status .ws-label{display:none}}.canvas-context-menu{position:fixed;min-width:180px;background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-3);z-index:1000;padding:4px;display:flex;flex-direction:column;animation:fade-in var(--motion-fast) var(--ease)}.canvas-context-menu-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;background:transparent;color:var(--text);font-size:13px;cursor:pointer;text-align:left;border-radius:var(--radius-sm);width:100%;font-family:inherit;transition:background var(--motion-fast) var(--ease)}.canvas-context-menu-item:hover{background:var(--bg-elev-2)}.canvas-context-menu-item:disabled{opacity:.5;cursor:not-allowed}.canvas-context-menu-sep{height:1px;background:var(--border);margin:4px 0}.plan-canvas-wrapper{position:relative;display:flex;flex-direction:column;flex:1;min-height:0;width:100%;height:100%;overflow:hidden}.plan-canvas-floating-controls{position:absolute;top:16px;left:16px;right:16px;display:flex;gap:8px;align-items:center;padding:8px 14px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-2);z-index:10;flex-wrap:wrap}.plan-canvas-floating-controls h3{margin:0;font-size:14px;font-weight:600;color:var(--text-strong);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand-logo{color:var(--accent);font-size:22px;line-height:1;display:inline-flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 12px var(--accent-border));transition:filter var(--motion-base) var(--ease)}.project-selector{position:relative}.project-selector-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text);border-radius:6px;font-size:13px;cursor:pointer;transition:background var(--motion-fast) var(--ease);max-width:200px}.project-selector-btn:hover{background:var(--bg-elev-3)}.project-selector-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}.project-selector-menu{position:absolute;top:calc(100% + 4px);left:0;min-width:280px;background:var(--bg-elev-2);border:1px solid var(--border-strong);border-radius:8px;box-shadow:var(--shadow-2);z-index:100;padding:4px}.project-selector-menu-head{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.project-selector-list{list-style:none;margin:0;padding:0;max-height:320px;overflow-y:auto}.project-selector-item{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:6px;border:0;width:100%;background:transparent;color:inherit;text-align:left;cursor:pointer;font-size:13px}.project-selector-item:hover{background:var(--bg-elev-3)}.project-selector-item.active{background:var(--accent-bg);color:var(--accent-2)}.project-selector-item-status{font-size:10px;text-transform:uppercase;color:var(--text-dim)}.project-selector-empty{padding:8px 10px;font-size:12px}.topbar-search{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:6px;color:var(--text-dim);font-size:13px;cursor:pointer;min-width:180px;transition:background var(--motion-fast) var(--ease)}.topbar-search:hover{background:var(--bg-elev-3)}.topbar-search span{flex:1;text-align:left}.topbar-search kbd{font-family:var(--font-mono);font-size:10px;padding:1px 5px;background:var(--bg-elev-3);border:1px solid var(--border);border-radius:3px}.search-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);display:flex;align-items:flex-start;justify-content:center;z-index:200;padding-top:12vh}.search-modal{width:640px;max-width:90vw;max-height:70vh;background:var(--bg-elev-2);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow-3);display:flex;flex-direction:column;overflow:hidden}.search-modal-head{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border)}.search-modal-input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-size:15px}.search-modal-scopes{display:flex;gap:4px;padding:6px 12px;border-bottom:1px solid var(--border)}.search-scope{padding:3px 8px;background:var(--bg-elev);border:1px solid var(--border);border-radius:4px;color:var(--text-dim);font-size:11px;cursor:pointer}.search-scope-active{background:var(--accent-bg);color:var(--accent-2);border-color:var(--accent-border)}.search-modal-body{flex:1;overflow-y:auto;padding:8px 0}.search-group{margin-bottom:8px}.search-group-head{padding:4px 16px;font-size:10px;text-transform:uppercase;color:var(--text-dim);letter-spacing:.05em}.search-result{display:flex;align-items:center;gap:12px;width:100%;padding:6px 16px;background:transparent;border:none;text-align:left;color:var(--text);cursor:pointer}.search-result:hover,.search-result-active{background:var(--bg-elev-3)}.search-result-type{font-size:10px;padding:1px 5px;background:var(--accent-bg);color:var(--accent-2);border-radius:3px;text-transform:uppercase}.search-result-label{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-modal-foot{padding:6px 16px;font-size:11px;border-top:1px solid var(--border)}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-3)}.project-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:8px;padding:14px;display:flex;flex-direction:column;gap:8px;transition:border-color var(--motion-fast) var(--ease)}.project-card:hover{border-color:var(--border-strong)}.project-card-active{border-color:var(--accent);box-shadow:var(--shadow-glow)}.project-card-head{display:flex;align-items:center;gap:8px}.project-card-name{font-weight:600;flex:1;font-size:14px;overflow:hidden;text-overflow:ellipsis}.project-card-status{font-size:9px;padding:1px 5px;border-radius:3px;text-transform:uppercase;letter-spacing:.05em}.status-on{background:var(--success-soft);color:var(--success)}.status-neutral{background:var(--bg-elev-2);color:var(--text-dim)}.status-error{background:var(--error-soft);color:var(--error)}.project-card-path{font-size:11px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-card-meta{font-size:11px;color:var(--text-dim)}.project-card-actions{display:flex;gap:4px;margin-top:auto}.project-picker{margin-bottom:var(--space-4)}.mod-mini-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.mod-mini{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:4px 0;font-size:12px}.mod-mini-name{font-family:var(--font-mono);color:var(--text)}.mod-mini-meta{color:var(--text-dim);font-size:11px}.autodetect-banner{padding:0;margin-bottom:var(--space-3);overflow:hidden}.autodetect-head{display:flex;align-items:center;gap:var(--space-2);padding:10px 14px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--motion-fast) var(--ease)}.autodetect-head:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.autodetect-title{font-weight:600;font-size:13px;color:var(--text-strong)}.autodetect-spacer{flex:1}.autodetect-body{padding:0 14px 14px;border-top:1px solid var(--border)}.autodetect-table{width:100%;border-collapse:collapse;font-size:12px;margin-top:10px}.autodetect-table thead{background:color-mix(in srgb,var(--bg-elev-3) 92%,var(--bg-elev-2))}.autodetect-table th{text-align:left;padding:6px 10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);border-bottom:1px solid var(--border)}.autodetect-table td{padding:6px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent);vertical-align:middle}.autodetect-table tbody tr:last-child td{border-bottom:0}.autodetect-table tbody tr:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.autodetect-status{font-family:var(--font-mono, ui-monospace, monospace);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.mods-registry-card{padding:0;overflow:hidden}.mods-registry-head{display:flex;align-items:center;gap:var(--space-2);padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--motion-fast) var(--ease)}.mods-registry-head:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.mods-registry-title{font-weight:600;font-size:13px;color:var(--text-strong)}.mods-registry-spacer{flex:1}.mods-registry-body{padding:0 16px 16px;border-top:1px solid var(--border)}.mods-registry-error{display:flex;align-items:center;gap:6px;padding:12px;font-size:12px;color:var(--error);background:color-mix(in srgb,var(--error) 8%,transparent);border-radius:var(--radius);margin-top:12px}.mods-registry-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-3);margin-top:12px}.mod-registry-card{display:flex;flex-direction:column;gap:6px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb,var(--bg-elev-2) 60%,transparent);transition:border-color var(--motion-fast) var(--ease),background var(--motion-fast) var(--ease)}.mod-registry-card:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:var(--bg-elev-2)}.mod-registry-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.mod-registry-card-name{font-size:13px;font-weight:600;color:var(--text-strong)}.mod-registry-version{font-family:var(--font-mono, ui-monospace, monospace);font-size:10px;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);padding:1px 6px;border-radius:4px}.mod-registry-version-upgrade{background:color-mix(in srgb,var(--warning) 18%,transparent);color:var(--warning)}.mod-registry-card-desc{font-size:12px;color:var(--text-dim);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mod-registry-card-meta{display:flex;align-items:center;gap:8px;font-size:11px}.mod-registry-link{color:var(--accent);text-decoration:none}.mod-registry-link:hover{text-decoration:underline}.mod-registry-perms{display:flex;align-items:center;gap:4px;flex-wrap:wrap;font-size:10px;color:var(--text-dim);margin-top:4px}.mod-registry-perm{padding:1px 5px;border-radius:3px;background:color-mix(in srgb,var(--text-dim) 12%,transparent);font-family:var(--font-mono, ui-monospace, monospace)}.mod-registry-perm-more{font-size:10px;color:var(--text-dim)}.mod-registry-card-actions{margin-top:auto;display:flex;justify-content:flex-end;padding-top:6px}.mod-mini-pill{font-size:9px;padding:1px 5px;border-radius:3px;text-transform:uppercase}.mod-mini-pill-on{background:var(--success-soft);color:var(--success)}.mod-mini-pill-off{background:var(--bg-elev-2);color:var(--text-dim)}.mods-layout{display:grid;grid-template-columns:360px 1fr;gap:var(--space-4)}.mods-list{display:flex;flex-direction:column;gap:8px;max-height:70vh;overflow-y:auto}.mod-list-item{padding:12px;background:var(--bg-elev);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:border-color var(--motion-fast) var(--ease)}.mod-list-item:hover{border-color:var(--border-strong)}.mod-list-item-active{border-color:var(--accent)}.mod-list-item-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}.mod-list-item-name{font-weight:600;font-size:14px}.mod-list-item-meta{font-size:11px;color:var(--text-dim)}.mod-list-item-desc{font-size:12px;color:var(--text-dim);margin-bottom:6px}.mod-list-item-status{font-size:11px}.ellipsis-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mod-files{margin-top:var(--space-3)}.mod-files ul{list-style:none;padding:0;margin:0;font-size:12px}.mod-files li{display:flex;gap:8px;padding:2px 0}.mod-file-cat{font-size:10px;text-transform:uppercase;color:var(--text-dim);min-width:64px}.mod-instructions{margin-top:var(--space-3);border-top:1px solid var(--border-soft, rgba(255,255,255,.06));padding-top:var(--space-2)}.mod-instructions-head{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0}.mod-instructions-head:hover{color:var(--accent)}.mod-instructions-spacer{flex:1}.mod-instructions-body{margin-top:var(--space-2);padding:var(--space-2);background:#ffffff05;border-radius:6px;border:1px solid var(--border-soft, rgba(255,255,255,.04))}.mod-instructions-section{margin-bottom:var(--space-2)}.mod-instructions-section:last-child{margin-bottom:0}.mod-instructions-section-title{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-dim, rgba(255,255,255,.5));letter-spacing:.04em;margin-bottom:6px}.mod-instructions-file{margin-bottom:4px}.mod-instructions-file-head{display:flex;justify-content:space-between;align-items:center;font-size:12px;padding:4px 8px;background:#ffffff08;border-radius:4px;cursor:pointer;-webkit-user-select:none;user-select:none}.mod-instructions-file-head:hover{background:#ffffff0f}.mod-instructions-content{margin:4px 0 8px;padding:8px;font-size:11px;font-family:var(--font-mono, ui-monospace, monospace);background:#0000004d;border:1px solid var(--border-soft, rgba(255,255,255,.05));border-radius:4px;max-height:240px;overflow:auto;white-space:pre-wrap;word-break:break-word}.mod-instructions-actions{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px dashed var(--border-soft, rgba(255,255,255,.05));display:flex;justify-content:flex-end}.mod-view-iframe-pane{display:flex;flex-direction:column;height:100%;width:100%;min-height:0}.mod-view-iframe-header{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-soft, rgba(255,255,255,.06));background:var(--bg-elev-1, rgba(255,255,255,.02));font-size:12px;font-weight:500}.mod-view-iframe-label{display:flex;align-items:center;gap:8px}.mod-view-iframe-actions{margin-left:auto;display:flex;gap:4px}.mod-view-iframe{flex:1;width:100%;border:0;background:#fff}.mod-views-hint{border-left:2px solid var(--accent, #6366f1)}.tab-separator{display:inline-block;width:1px;height:18px;background:var(--border-soft, rgba(255,255,255,.12));margin:0 6px;align-self:center}.tab-badge{display:inline-block;font-size:9px;text-transform:uppercase;letter-spacing:.06em;padding:1px 5px;border-radius:8px;background:#6366f12e;color:var(--accent, #6366f1);margin-left:6px;font-weight:600}.sidebar-section-divider{height:1px;background:var(--border-soft, rgba(255,255,255,.06));margin:12px 8px 4px}.sidebar-section-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim, rgba(255,255,255,.5));padding:4px 12px;margin-bottom:2px;font-weight:600}.sidebar-tab-mod .sidebar-tab-label:after{content:"";display:inline-block;width:4px;height:4px;margin-left:6px;border-radius:50%;background:var(--accent, #6366f1);vertical-align:middle}.schedule-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-3)}.schedule-card-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.schedule-card-name{font-weight:600;font-size:14px}.schedule-card-meta{font-size:11px;color:var(--text-dim)}.schedule-card-action{font-size:12px;margin:8px 0}.schedule-card-times{display:flex;justify-content:space-between;font-size:12px;margin-bottom:6px}.schedule-card-history summary{cursor:pointer;font-size:11px;color:var(--text-dim);display:inline-flex;align-items:center;gap:4px}.schedule-card-history ul{list-style:none;padding:0;margin:6px 0 0;font-size:12px}.schedule-card-history li{padding:2px 0;border-bottom:1px solid var(--border)}.schedule-form .task-form-row{margin-top:12px}.tag{font-size:10px;padding:1px 5px;border-radius:3px;background:var(--bg-elev-2);color:var(--text-dim);display:inline-block;margin-right:4px}.tag-success{background:var(--success-soft);color:var(--success)}.tag-error{background:var(--error-soft);color:var(--error)}.tag-neutral{background:var(--bg-elev-2);color:var(--text-dim)}.color-row{display:flex;gap:6px;align-items:center}.color-input{padding:0;width:36px;height:28px}.theme-colors{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin:var(--space-3) 0}.layout-row{display:flex;gap:6px}.layout-card{flex:1;padding:10px;background:var(--bg-elev);border:1px solid var(--border);border-radius:6px;cursor:pointer;text-align:center;font-size:12px}.layout-card-active{background:var(--accent-bg);border-color:var(--accent);color:var(--accent-2)}.config-advanced{margin-top:0;overflow:hidden}.config-advanced-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;background:transparent;border:none;color:var(--text);font-size:14px;font-weight:600;cursor:pointer;padding:14px 20px;text-align:left;font-family:inherit;transition:background var(--motion-fast) var(--ease)}.config-advanced-head:hover{background:var(--bg-elev-2)}.config-advanced-head-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.config-advanced-head-title{font-weight:600;font-size:14px}.config-advanced-head-desc{font-weight:400;font-size:12px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.config-advanced-body{border-top:1px solid var(--border);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.config-advanced-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:0;flex-wrap:wrap}.config-advanced-tabs .tab{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:transparent;border:1px solid transparent;border-bottom:2px solid transparent;color:var(--text-dim);cursor:pointer;font-size:13px;font-family:inherit;border-radius:var(--radius) var(--radius) 0 0;transition:color var(--motion-fast) var(--ease),background var(--motion-fast) var(--ease),border-color var(--motion-fast) var(--ease);white-space:nowrap}.config-advanced-tabs .tab:hover{color:var(--text);background:var(--bg-elev-2)}.config-advanced-tabs .tab-active{color:var(--accent-2);background:var(--accent-bg);border-bottom-color:var(--accent)}.config-advanced-panel{padding:var(--space-4) 0;min-height:320px}.diagnostics-card{margin-bottom:var(--space-3)}.diagnostics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-bottom:var(--space-3)}.diagnostic-tile{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:6px;padding:8px 10px}.diagnostic-tile-label{font-size:10px;color:var(--text-dim);text-transform:uppercase}.diagnostic-tile-value{font-size:14px;margin-top:2px}.diagnostic-counts{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--text-dim);margin-bottom:var(--space-3)}.diagnostic-errors ul{list-style:none;margin:0;font-size:11px;max-height:200px;overflow-y:auto;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:4px;padding:8px}.diagnostic-errors li{padding:2px 0}.link-btn{background:transparent;border:none;color:var(--accent-2);cursor:pointer;padding:0}.provider-row,.mcp-row{padding:var(--space-3)}.provider-row-head,.mcp-row-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.provider-name,.mcp-name{font-weight:600}.provider-id{font-size:11px;color:var(--text-dim)}.provider-meta{font-size:12px;display:flex;flex-direction:column;gap:4px}.debug-log{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:4px;padding:8px;font-size:11px;max-height:320px;overflow-y:auto}.task-card-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.task-card-badge{display:inline-flex;align-items:center;gap:3px;font-size:10px;padding:1px 5px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:3px;color:var(--text-dim)}.task-card-timer{border-left:3px solid var(--warning)}.task-card-timer-pill{display:inline-flex;align-items:center;gap:2px;font-size:10px;padding:1px 5px;background:var(--warning);color:var(--bg);border-radius:3px}.task-detail{display:flex;flex-direction:column;gap:var(--space-3)}.task-detail-meta{display:flex;gap:16px;font-size:12px;color:var(--text-dim);flex-wrap:wrap}.task-detail-row{display:flex;gap:6px;align-items:center;margin:6px 0}.task-detail-desc{font-size:13px;white-space:pre-wrap}.task-comments,.task-activity{list-style:none;margin:8px 0 0;padding:0;font-size:12px;max-height:200px;overflow-y:auto}.task-comments li,.task-activity li{padding:4px 0;border-bottom:1px solid var(--border)}.agent-form{display:flex;flex-direction:column;gap:4px}.agent-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px 0}html[data-compact-mode=true]{--space-1: 2px;--space-2: 4px;--space-3: 8px;--space-4: 12px;--space-5: 16px;--space-6: 20px}html[data-compact-mode=true] .kanban-col-header{padding:4px}html[data-compact-mode=true] .task-card{padding:6px}html[data-animations=false] *{animation-duration:0s!important;transition-duration:0s!important}.app>.layout-body{display:flex;flex:1;min-height:0;min-width:0;overflow:hidden}.app[data-layout=topnav]>.layout-body{flex-direction:column}.app[data-layout=sidebar]>.layout-body,.app[data-layout=both]>.layout-body{flex-direction:row}.app>.layout-body>.content{flex:1;min-width:0;min-height:0;overflow:auto;padding:var(--space-6);position:relative}.sidebar{width:220px;flex-shrink:0;background:color-mix(in srgb,var(--bg-elev) 88%,transparent);border-right:1px solid var(--border);padding:var(--space-3) var(--space-2);overflow-y:auto;overscroll-behavior:contain}.sidebar-nav{display:flex;flex-direction:column;gap:2px;min-width:0}.sidebar-tab{display:flex;align-items:center;gap:var(--space-3);padding:9px 12px;border:1px solid transparent;background:transparent;color:var(--text-dim);border-radius:var(--radius);cursor:pointer;font-size:13px;font-weight:500;text-align:left;transition:background var(--motion-base) var(--ease),color var(--motion-base) var(--ease),border-color var(--motion-base) var(--ease),transform var(--motion-fast) var(--ease);width:100%;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:inherit}.sidebar-tab:hover{background:var(--bg-elev-2);color:var(--text)}.sidebar-tab:active{transform:scale(.99)}.sidebar-tab-active{background:var(--accent-bg);color:var(--accent-3);border-color:var(--accent-border)}.sidebar-tab-active:hover{background:var(--accent-bg);color:var(--accent-3)}.sidebar-tab-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}@media (max-width: 900px){.sidebar{position:fixed;top:56px;left:0;bottom:0;z-index:50;transform:translate(-100%);transition:transform var(--motion-base) var(--ease);box-shadow:var(--shadow-3)}.sidebar.open{transform:translate(0)}.app>.layout-body>.content{padding:var(--space-4)}}@media (max-width: 600px){.app>.layout-body>.content{padding:var(--space-3)}}.view-activity{display:flex;flex-direction:column;height:100%;min-height:0}.activity-layout{display:flex;flex:1;gap:var(--space-4);min-height:0}.activity-timeline-panel{flex:1;min-height:0;overflow-y:auto}.timeline-list{display:flex;flex-direction:column;gap:1px}.timeline-event{display:grid;grid-template-columns:160px 28px 1fr;gap:var(--space-3);align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);font-size:13px}.timeline-event:hover{background:var(--bg-elevated)}.timeline-time{color:var(--text-muted);font-size:11px;font-family:var(--font-mono, monospace);white-space:nowrap}.timeline-icon{display:flex;align-items:center;justify-content:center}.timeline-message{color:var(--text)}.timeline-node{grid-column:3;font-size:11px;color:var(--text-muted);margin-top:2px}.activity-canvas{position:relative;flex:1;min-width:0;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;-webkit-user-select:none;user-select:none;touch-action:none}.activity-canvas svg{display:block}.activity-zoom-controls{position:absolute;top:12px;right:12px;display:flex;gap:6px;align-items:center;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:4px 6px;box-shadow:var(--shadow-1)}.activity-legend{position:absolute;bottom:12px;left:12px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:6px 10px;font-size:11px;box-shadow:var(--shadow-1);max-width:70%}.activity-legend .legend-item{display:flex;align-items:center;gap:4px;color:var(--text-muted)}.activity-legend .legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.activity-legend .legend-sep{width:1px;height:12px;background:var(--border)}.activity-detail{width:360px;flex-shrink:0;overflow-y:auto}.activity-detail-meta{display:flex;flex-direction:column;gap:4px;font-size:12px;margin-bottom:var(--space-3)}.activity-detail-meta>div{display:flex;justify-content:space-between;gap:8px}.activity-detail-desc{font-size:12px;color:var(--text-muted);padding:8px;background:var(--bg);border-radius:var(--radius);margin-bottom:var(--space-3);white-space:pre-wrap;word-break:break-word}.activity-detail-create,.activity-detail-bg,.activity-detail-comments{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:8px}.bg-output{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:8px;font-family:var(--font-mono, monospace);font-size:11px;max-height:200px;overflow:auto;white-space:pre-wrap;word-break:break-all;color:var(--text)}.bg-output-actions{display:flex;gap:6px}.comment-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:260px;overflow-y:auto}.comment-item{padding:8px;background:var(--bg);border-radius:var(--radius);border:1px solid var(--border)}.comment-head{display:flex;justify-content:space-between;font-size:11px;margin-bottom:4px}.comment-text{font-size:13px;white-space:pre-wrap;word-break:break-word}.comment-input-row{display:flex;gap:6px}.comment-input-row .input{flex:1}@media (max-width: 900px){.activity-layout{flex-direction:column}.activity-detail{width:100%;max-height:400px}}.submit-task-form{display:flex;flex-direction:column;gap:var(--space-3)}.submit-task-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:500;color:var(--text)}.submit-task-form label>.field-hint{font-weight:400;font-size:11px;color:var(--text-muted)}.submit-task-form textarea{font-family:var(--font-sans);resize:vertical;min-height:80px}.agent-hierarchy{display:flex;flex-direction:column;gap:var(--space-3)}.agent-level-group{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3)}.agent-level-head{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2)}.agent-level-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-2)}.agent-card-mini{padding:10px 12px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;gap:4px;position:relative}.agent-card-mini-name{font-weight:600;display:flex;align-items:center;gap:6px}.agent-card-mini-role{font-size:11px;color:var(--text-muted)}.agent-card-mini-status{display:inline-block;padding:1px 6px;border-radius:999px;font-size:10px;margin-top:2px;align-self:flex-start}button:focus-visible,[role=button]:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible,.task-card:focus-visible,.plan-card:focus-visible,.agent-card-mini:focus-visible,.activity-canvas:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.btn,.icon-btn{transition:background-color .12s var(--ease),border-color .12s var(--ease),color .12s var(--ease),box-shadow .12s var(--ease)}.empty-state{padding:var(--space-6);text-align:center;color:var(--text-muted)}.empty-state h3{margin:var(--space-3) 0 var(--space-1);font-size:16px;color:var(--text)}.empty-state p{font-size:13px;max-width:480px;margin:0 auto var(--space-3)}.updates-current ul,.updates-latest ul{list-style:none;padding:0;margin:12px 0}.updates-current li,.updates-latest li{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border:1px solid var(--border);border-radius:6px;margin-bottom:4px;font-size:13px}.updates-current-version code{color:var(--success)}.updates-outdated{background:var(--accent-bg)}.updates-outdated code{color:var(--accent);font-weight:600}.updates-badge{display:inline-block;margin-left:8px;padding:2px 6px;background:var(--accent);color:#fff;font-size:10px;border-radius:4px;text-transform:uppercase}.updates-actions{display:flex;gap:8px;margin:16px 0}.updates-error{margin-top:12px;padding:10px 12px;background:var(--accent-bg);border:1px solid var(--error);border-radius:6px;color:var(--error);font-size:13px;display:flex;align-items:center;gap:8px}.updates-results{margin-top:16px;padding:12px;background:var(--surface-2);border-radius:6px}.updates-result.ok{color:var(--success)}.updates-result.err{color:var(--error)}.updates-progress-rows{margin:12px 0;display:flex;flex-direction:column;gap:6px}.updates-pkg-row{display:flex;flex-direction:column;padding:10px 12px;border:1px solid var(--border);border-radius:6px;gap:6px}.updates-pkg-row-header{display:flex;justify-content:space-between;align-items:center}.updates-pkg-name{font-size:13px;font-weight:500}.updates-pkg-status{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.updates-pkg-status .icon-success{color:var(--success)}.updates-pkg-status .icon-error{color:var(--error)}.updates-pkg-logs{font-size:11px;color:var(--text-muted);margin-top:4px}.updates-pkg-logs summary{cursor:pointer;padding:2px 0}.updates-pkg-logs pre{margin-top:6px;padding:8px;background:var(--surface-2);border-radius:4px;font-size:11px;max-height:160px;overflow:auto;white-space:pre-wrap;word-break:break-all;color:var(--text-muted)}.updates-pkg-error{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--error);margin-top:2px}.config-layout{display:grid;grid-template-columns:220px 1fr;gap:var(--space-5);align-items:start;min-height:0}@media (max-width: 900px){.config-layout{grid-template-columns:1fr}}.config-nav{display:flex;flex-direction:column;gap:2px;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-2);position:sticky;top:0}.config-nav-item{display:flex;align-items:center;gap:var(--space-3);padding:9px 12px;background:transparent;border:1px solid transparent;color:var(--text-dim);border-radius:var(--radius);cursor:pointer;font-size:13px;font-weight:500;text-align:left;font-family:inherit;transition:background var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease),border-color var(--motion-fast) var(--ease);width:100%}.config-nav-item:hover{background:var(--bg-elev-2);color:var(--text)}.config-nav-item-active{background:var(--accent-bg);color:var(--accent-2);border-color:var(--accent-border)}.config-nav-item-active:hover{background:var(--accent-bg);color:var(--accent-2)}.config-content{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.provider-row,.mcp-row{display:flex;flex-direction:column;gap:var(--space-2)}.provider-row-head,.mcp-row-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-width:0}.provider-name,.mcp-name{font-weight:600;color:var(--text-strong);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.provider-id,.mcp-id{font-size:11px;color:var(--text-dim);font-family:var(--font-mono);margin-top:2px}.provider-actions,.mcp-actions{display:inline-flex;align-items:center;gap:var(--space-2);flex-shrink:0}.provider-meta,.mcp-meta{font-size:12px;color:var(--text-dim);display:flex;flex-wrap:wrap;gap:var(--space-3)}.provider-meta code,.mcp-meta code{background:var(--bg-elev-2);padding:1px 6px;border-radius:4px;color:var(--text);font-size:11px}.provider-list,.mcp-list{display:flex;flex-direction:column;gap:var(--space-3)}.toggle-row{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-dim);cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-row input[type=checkbox]{accent-color:var(--accent);width:14px;height:14px;cursor:pointer}.tasks-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md)}.tasks-toolbar-group{display:inline-flex;align-items:center;gap:6px}.tasks-toolbar-label{font-size:11px;color:var(--text-dim);font-weight:500;text-transform:uppercase;letter-spacing:.04em;margin-right:4px}.tasks-toolbar-spacer{flex:1}.tasks-toolbar-divider{width:1px;height:20px;background:var(--border);margin:0 4px}.activity-timeline-canvas{position:relative;flex:1;min-height:0;width:100%;height:100%;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.activity-timeline-svg{width:100%;height:100%;display:block;cursor:grab}.activity-timeline-svg:active{cursor:grabbing}.timeline-event-circle{cursor:pointer;transition:r .12s var(--ease)}.timeline-event-circle:hover{r:7}.timeline-event-label{font-size:10px;fill:var(--text);font-family:var(--font-mono);pointer-events:none}.timeline-lane-label{font-size:11px;fill:var(--text-dim);font-weight:600;pointer-events:none}.timeline-axis-label{font-size:10px;fill:var(--text-dim);font-family:var(--font-mono)}.timeline-connector{stroke:var(--border);stroke-width:1;fill:none}.timeline-grid-line{stroke:var(--border);stroke-width:.5;opacity:.5}.activity-mode-toggle{display:inline-flex;align-items:center;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);padding:2px;gap:2px}.activity-mode-toggle button{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:transparent;border:none;color:var(--text-dim);border-radius:var(--radius-sm);font-size:12px;cursor:pointer;font-family:inherit}.activity-mode-toggle button.active{background:var(--bg-elev);color:var(--text-strong);box-shadow:var(--shadow-1)}.history-list{display:flex;flex-direction:column;gap:var(--space-4)}.history-project{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.history-project-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.history-project-name{font-size:16px;font-weight:700;color:var(--text-strong);display:inline-flex;align-items:center;gap:8px}.history-project-meta{font-size:11px;color:var(--text-dim);font-family:var(--font-mono)}.history-project-stats{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:12px}.history-project-stat{display:inline-flex;align-items:baseline;gap:4px}.history-project-stat-num{font-weight:700;color:var(--text-strong);font-variant-numeric:tabular-nums}.history-timeline-mini{display:flex;flex-direction:column;gap:2px;max-height:240px;overflow-y:auto}.history-timeline-row{display:grid;grid-template-columns:90px 80px 1fr;gap:var(--space-3);font-size:12px;padding:4px 8px;border-radius:var(--radius-sm);align-items:center;border-bottom:1px solid var(--border)}.history-timeline-row:last-child{border-bottom:none}.history-timeline-ts{font-family:var(--font-mono);color:var(--text-dim);font-size:11px}.history-timeline-kind{font-weight:600;font-size:11px;color:var(--accent-2)}.history-timeline-msg{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-form-row{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-3)}.modal-form-row label{font-size:12px;font-weight:500;color:var(--text-dim)}.modal-form-row .checkbox-row{margin:0}.modal-form-row textarea{min-height:64px}.modal-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}@media (max-width: 600px){.modal-form-grid{grid-template-columns:1fr}}.tl-view{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-1)}.tl-mode-toggle{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.tl-zoom-group{display:inline-flex;align-items:center;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius);padding:2px;gap:2px}.tl-zoom-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--text-dim);font-family:var(--font-mono);font-size:11px;font-weight:600;padding:4px 10px;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease)}.tl-zoom-btn:hover{color:var(--text);background:var(--bg-elev)}.tl-zoom-btn-active{background:var(--accent);color:var(--text-strong)}.tl-zoom-btn-active:hover{background:var(--accent-2);color:var(--text-strong)}.tl-body{display:grid;grid-template-columns:280px 1fr 0;flex:1;min-height:0;min-width:0;transition:grid-template-columns var(--motion-base) var(--ease)}.tl-body-stream-collapsed{grid-template-columns:0 1fr 0}.tl-view-detail-open .tl-body{grid-template-columns:280px 1fr 360px}.tl-view-detail-open .tl-body.tl-body-stream-collapsed{grid-template-columns:0 1fr 360px}.tl-stream{border-right:1px solid var(--border);background:var(--bg-elev);display:flex;flex-direction:column;min-height:0;overflow:hidden}.tl-stream-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);flex-shrink:0}.tl-stream-head h3{margin:0;font-size:12px;font-weight:600;color:var(--text-strong);text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:var(--space-2)}.tl-stream-list{flex:1;overflow-y:auto;padding:var(--space-2);display:flex;flex-direction:column;gap:2px}.tl-stream-empty{padding:var(--space-4);text-align:center;color:var(--text-dim);font-size:12px}.tl-stream-event{display:grid;grid-template-columns:56px 24px 1fr;gap:var(--space-2);align-items:center;padding:var(--space-2) var(--space-2);border-radius:var(--radius);font-size:12px;background:transparent;border:1px solid transparent;animation:tl-fadein .4s var(--ease);transition:background var(--motion-fast) var(--ease),border-color var(--motion-fast) var(--ease)}.tl-stream-event:hover{background:var(--bg-elev-2);border-color:var(--border)}.tl-stream-event-time{font-family:var(--font-mono);color:var(--text-dim);font-size:10px;white-space:nowrap}.tl-stream-event-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:var(--bg);border:1px solid var(--border)}.tl-stream-event-text{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.tl-canvas-wrap{display:flex;flex-direction:column;min-width:0;min-height:0;position:relative;background:var(--bg)}.tl-canvas-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);background:var(--bg-elev);font-size:12px;flex-shrink:0;gap:var(--space-3);flex-wrap:wrap}.tl-canvas-toolbar-left{display:flex;align-items:center;gap:var(--space-3);min-width:0;flex-wrap:wrap}.tl-canvas-mode{font-family:var(--font-mono);font-size:11px;color:var(--success);font-weight:600;letter-spacing:.04em}.tl-canvas-range{font-family:var(--font-mono);font-size:11px;color:var(--text-dim);white-space:nowrap}.tl-canvas-legend{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;color:var(--text-dim);font-size:11px}.tl-legend-item{display:inline-flex;align-items:center;gap:4px}.tl-legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.tl-legend-dot-dashed{background:transparent!important;border:1.5px dashed currentColor}.tl-legend-sep{width:1px;height:12px;background:var(--border)}.tl-canvas-scroll{flex:1;min-height:0;overflow:auto;position:relative}.tl-canvas{display:block;-webkit-user-select:none;user-select:none}.tl-lane-bg{pointer-events:none}.tl-lane-label{font-size:11px;font-weight:600;fill:var(--text);pointer-events:none;-webkit-user-select:none;user-select:none}.tl-lane-label-sub{font-size:9px;fill:var(--text-dim);pointer-events:none;-webkit-user-select:none;user-select:none;font-family:var(--font-mono)}.tl-task-bar{transition:filter var(--motion-fast) var(--ease)}.tl-task-bar:hover{filter:brightness(1.15)}.tl-task-bar rect{transition:fill-opacity var(--motion-base) var(--ease),stroke-opacity var(--motion-base) var(--ease),stroke-width var(--motion-fast) var(--ease)}.tl-task-bar-doing rect{animation:tl-pulse 1.6s ease-in-out infinite}.tl-task-bar-done rect{filter:saturate(.7)}.tl-task-bar-queued rect{stroke-dasharray:4 4}.tl-task-bar-selected rect{filter:drop-shadow(0 0 6px var(--accent-glow))}.tl-event-marker-group{pointer-events:none}.tl-event-marker-group circle{transition:r var(--motion-fast) var(--ease)}.tl-event-marker-group:hover circle{r:5.5}.tl-now-line{pointer-events:none;filter:drop-shadow(0 0 4px rgba(248,113,113,.45))}.tl-now-marker{pointer-events:none}.tl-detail{border-left:1px solid var(--border);background:var(--bg-elev);display:flex;flex-direction:column;min-height:0;overflow-y:auto;padding:var(--space-3)}.tl-detail-enter{animation:tl-detail-enter var(--motion-slow) var(--ease)}.tl-detail .card{display:flex;flex-direction:column;gap:var(--space-3)}.tl-detail-meta{display:flex;flex-direction:column;gap:4px;font-size:12px;padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.tl-detail-meta>div{display:flex;justify-content:space-between;gap:var(--space-2);align-items:center}.tl-detail-meta code{font-size:11px;background:var(--bg-elev-2);padding:1px 6px;border-radius:var(--radius-sm)}.tl-detail-desc{font-size:12px;color:var(--text);padding:var(--space-3);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}.tl-detail-create,.tl-detail-bg,.tl-detail-comments{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--border)}.tl-detail-bg .tl-form-row,.tl-detail-create .tl-form-row{display:flex;gap:var(--space-2);align-items:center}.tl-detail-bg .tl-form-row .input,.tl-detail-create .tl-form-row .input{flex:1}.tl-bg-output{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3);font-family:var(--font-mono);font-size:11px;color:var(--text);max-height:240px;overflow:auto;white-space:pre-wrap;word-break:break-word;margin:0}.tl-bg-output-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}@keyframes tl-pulse{0%,to{stroke-opacity:1}50%{stroke-opacity:.35}}@keyframes tl-fadein{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:none}}@keyframes tl-detail-enter{0%{transform:translate(16px);opacity:0}to{transform:none;opacity:1}}@media (max-width: 900px){.tl-body{grid-template-columns:1fr}.tl-view-detail-open .tl-body{grid-template-columns:1fr;grid-template-rows:1fr auto}.tl-stream{position:fixed;top:0;bottom:0;left:0;width:280px;z-index:50;box-shadow:var(--shadow-3);transform:translate(-100%);transition:transform var(--motion-base) var(--ease)}.tl-stream:not(.tl-stream-collapsed){transform:translate(0)}.tl-stream-collapsed{transform:translate(-100%)}.tl-canvas-toolbar{padding:var(--space-2)}.tl-canvas-legend{display:none}.tl-canvas-toolbar-left{width:100%;justify-content:space-between}.tl-detail{border-left:none;border-top:1px solid var(--border);max-height:50vh;grid-row:2}.tl-zoom-group{flex-wrap:wrap}}@media (min-width: 901px){.tl-body-stream-collapsed .tl-stream{opacity:0;width:0;min-width:0;border-right:none;pointer-events:none}}@media (prefers-reduced-motion: reduce){.tl-task-bar-doing rect{animation:none}.tl-stream-event,.tl-detail-enter{animation:none}}.bg-active-view{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4) var(--space-5);max-width:1100px;margin:0 auto}.bg-active-loading{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-8) 0;color:var(--text-dim)}.bg-active-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.bg-active-header-text{display:flex;flex-direction:column;gap:2px}.bg-active-title{margin:0;font-size:18px;font-weight:600;color:var(--text-strong)}.bg-active-subtitle{margin:0;font-size:12px}.bg-active-list{display:grid;grid-template-columns:1fr;gap:var(--space-3)}.bg-active-card{gap:var(--space-3)}.bg-active-card-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.bg-active-card-id{display:flex;align-items:center;gap:var(--space-2);font-size:12px;color:var(--text-dim);min-width:0;flex:1 1 auto}.bg-active-card-id code{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px}.bg-active-card-agent{display:flex;align-items:center;gap:var(--space-2);font-size:12px}.bg-active-card-agent-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;font-size:10px}.bg-active-card-agent-name{font-weight:600;color:var(--accent);font-family:var(--font-sans, inherit)}.bg-active-prompt{font-size:13px;line-height:1.5;color:var(--text);background:var(--bg-elev-2, var(--bg-elev));border-left:3px solid var(--accent-bg);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word}.bg-active-step{display:flex;gap:var(--space-2);font-size:12px;color:var(--text-dim)}.bg-active-step-label{text-transform:uppercase;letter-spacing:.05em;font-size:10px}.bg-active-step-value{color:var(--text);font-family:var(--font-sans, inherit)}.bg-active-meta{display:flex;flex-wrap:wrap;gap:var(--space-3);font-size:12px;color:var(--text-dim)}.bg-active-meta strong{color:var(--text);font-weight:500}.bg-active-meta-tmux-live{color:var(--success)}.bg-active-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border)}.progress-bar{position:relative;width:100%;height:8px;background:var(--bg-elev-2, var(--bg-elev));border-radius:999px;overflow:hidden;border:1px solid var(--border)}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-2, var(--accent)) 100%);transition:width var(--motion-base, .2s) var(--ease, ease-out)}.progress-label{position:absolute;top:50%;right:var(--space-2);transform:translateY(-50%);font-size:10px;color:var(--text);font-weight:600;text-shadow:0 0 4px var(--bg-elev)}.bg-output-modal{display:flex;flex-direction:column;gap:var(--space-3);min-height:320px}.bg-output-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);font-size:12px}.bg-output-toolbar-actions{display:flex;gap:var(--space-2)}.bg-output-loading,.bg-output-empty,.bg-output-error{padding:var(--space-6);text-align:center;font-size:13px;color:var(--text-dim)}.bg-output-error{color:var(--error)}.bg-output-scroll{max-height:50vh;min-height:240px;overflow:auto;background:var(--bg, var(--bg-elev));border:1px solid var(--border);border-radius:var(--radius-md)}.bg-output-pre{margin:0;padding:var(--space-3);font-size:12px;line-height:1.45;color:var(--text);white-space:pre-wrap;word-break:break-word}.bg-tmux-modal{display:flex;flex-direction:column;gap:var(--space-3)}.bg-tmux-meta{display:flex;align-items:center;gap:var(--space-2);margin:0;font-size:12px}.bg-tmux-meta .badge{display:inline-flex}.bg-tmux-session{font-size:12px}.bg-tmux-command-row{display:flex;align-items:stretch;gap:var(--space-2)}.bg-tmux-command{flex:1;display:block;padding:var(--space-3);background:var(--bg-elev-2, var(--bg-elev));border:1px solid var(--border);border-radius:var(--radius-md);font-size:12px;line-height:1.5;word-break:break-all;white-space:pre-wrap;-webkit-user-select:all;user-select:all}.bg-tmux-hint{margin:0;font-size:12px}@keyframes bg-active-spin{to{transform:rotate(360deg)}}.bg-active-view .spin{animation:bg-active-spin .9s linear infinite}.notifications-root{position:relative;display:inline-flex}.notifications-bell{position:relative;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid transparent;background:transparent;color:var(--fg-dim, #888);cursor:pointer;transition:background .15s,color .15s}.notifications-bell:hover{background:var(--bg-hover, rgba(255, 255, 255, .05));color:var(--fg, #e0e0e0)}.notifications-bell.is-open{background:var(--bg-hover, rgba(255, 255, 255, .08));color:var(--fg, #e0e0e0)}.notifications-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--danger, #ef4444);color:#fff;font-size:10px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;line-height:1}.notifications-panel{position:absolute;top:calc(100% + 8px);right:0;width:380px;max-width:90vw;max-height:70vh;background:var(--bg-elevated, #1a1a2e);border:1px solid var(--border, #2a2a4e);border-radius:10px;box-shadow:0 12px 32px #0006;z-index:1000;display:flex;flex-direction:column;overflow:hidden}.notifications-panel-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border, #2a2a4e)}.notifications-panel-head-actions{display:flex;align-items:center;gap:8px}.notifications-list{flex:1;overflow-y:auto;padding:4px}.notifications-empty{padding:24px;text-align:center;font-size:13px}.notification-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:6px;position:relative}.notification-item:hover{background:var(--bg-hover, rgba(255, 255, 255, .05))}.notification-item.is-unread{background:var(--bg-accent-soft, rgba(78, 121, 167, .08))}.notification-item.is-unread:before{content:"";position:absolute;top:12px;left:4px;width:4px;height:4px;border-radius:50%;background:var(--accent, #4E79A7)}.notification-icon{flex-shrink:0;margin-top:2px}.notification-icon.severity-info{color:var(--accent, #4E79A7)}.notification-icon.severity-success{color:var(--success, #4ade80)}.notification-icon.severity-warning{color:var(--warning, #facc15)}.notification-icon.severity-error{color:var(--danger, #ef4444)}.notification-body{flex:1;min-width:0}.notification-title{font-weight:600;font-size:13px;margin-bottom:2px}.notification-msg{font-size:12px;color:var(--fg-dim, #aaa);line-height:1.4;word-wrap:break-word}.notification-meta{display:flex;gap:6px;margin-top:4px;font-size:10px}.notification-actions{display:flex;gap:4px;flex-shrink:0}.notification-actions .icon-btn{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--fg-dim, #888);cursor:pointer;border-radius:4px}.notification-actions .icon-btn:hover{background:var(--bg-hover, rgba(255, 255, 255, .08));color:var(--fg, #e0e0e0)}.notification-actions .icon-btn-danger:hover{color:var(--danger, #ef4444)}.notifications-panel-foot{padding:8px 14px;border-top:1px solid var(--border, #2a2a4e);font-size:11px}.activity-clear-button{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--border, #2a2a4e);border-radius:4px;background:transparent;color:var(--fg-dim, #aaa);font-size:12px;cursor:pointer;transition:background .15s,color .15s}.activity-clear-button:hover{background:var(--bg-hover, rgba(255, 255, 255, .05));color:var(--fg, #e0e0e0)}.activity-hidden-banner{padding:8px 12px;background:var(--bg-accent-soft, rgba(78, 121, 167, .12));border:1px solid var(--accent, #4E79A7);border-radius:6px;font-size:12px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center}.activity-log-table{width:100%;border-collapse:collapse;font-size:12px;font-family:var(--font-mono, ui-monospace, monospace)}.activity-log-table th,.activity-log-table td{padding:6px 10px;text-align:left;border-bottom:1px solid var(--border, #2a2a4e)}.activity-log-table th{background:var(--bg-elevated, #1a1a2e);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-dim, #aaa);position:sticky;top:0}.activity-log-table td.mono{font-family:var(--font-mono, ui-monospace, monospace);font-size:11px}.activity-log-table tr.severity-warning td{color:var(--warning, #facc15)}.activity-log-table tr.severity-error td{color:var(--danger, #ef4444)}.mods-registry-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:12px}.mods-registry-card{padding:14px;background:var(--bg-elevated, #1a1a2e);border:1px solid var(--border, #2a2a4e);border-radius:8px;display:flex;flex-direction:column;gap:8px}.mods-registry-card.is-installed{border-color:var(--success, #4ade80)}.mods-registry-card-name{font-weight:600;font-size:14px}.mods-registry-card-version{font-size:11px;color:var(--fg-dim, #888)}.mods-registry-card-desc{font-size:12px;color:var(--fg-dim, #aaa);line-height:1.4;flex:1}.mods-registry-card-actions{display:flex;gap:8px;align-items:center}.mods-registry-card-perms{font-size:10px;color:var(--fg-dim, #888);font-family:var(--font-mono, ui-monospace, monospace);background:var(--bg-base, #0f0f1a);padding:4px 6px;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-subnav{display:flex;gap:4px;border-bottom:1px solid var(--border, #2a2a4e);margin-bottom:16px;padding-bottom:4px;flex-wrap:wrap}.settings-subnav-button{padding:6px 14px;border:none;background:transparent;color:var(--fg-dim, #aaa);font-size:13px;cursor:pointer;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.settings-subnav-button:hover{color:var(--fg, #e0e0e0)}.settings-subnav-button.is-active{color:var(--accent, #4E79A7);border-bottom-color:var(--accent, #4E79A7)}.collapsible-section{border:1px solid var(--border, #2a2a4e);border-radius:6px;margin-bottom:8px;overflow:hidden}.collapsible-section-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--bg-elevated, #1a1a2e);cursor:pointer;-webkit-user-select:none;user-select:none}.collapsible-section-header:hover{background:var(--bg-hover, rgba(255, 255, 255, .04))}.collapsible-section-title{font-weight:600;font-size:13px}.collapsible-section-toggle{color:var(--fg-dim, #888);transition:transform .15s}.collapsible-section-toggle.is-open{transform:rotate(90deg)}.collapsible-section-body{padding:12px 14px;border-top:1px solid var(--border, #2a2a4e)}.view-graph{display:flex;flex-direction:column;min-height:0}.graph-building-banner{display:flex;align-items:center;gap:12px;padding:12px 18px;margin-bottom:12px;background:var(--accent-bg, rgba(78, 121, 167, .12));border:1px solid var(--accent, #4E79A7);border-radius:8px;color:var(--fg, #e0e0e0);font-size:13px}.graph-building-banner code{padding:2px 6px;background:#00000040;border-radius:4px;font-family:var(--font-mono, ui-monospace, monospace);font-size:12px}.graph-empty-actions{display:flex;align-items:center;gap:14px;margin-top:14px;flex-wrap:wrap}.graph-iframe-wrap{flex:1;min-height:540px;border:1px solid var(--border, #2a2a4e);border-radius:8px;overflow:hidden;background:#0f0f1a}.graph-iframe{width:100%;height:100%;min-height:540px;border:0;display:block}.graph-meta{margin-top:10px;text-align:right;font-size:11px}.glyph-canvas{position:relative;min-height:100vh;padding:5.5rem 1.5rem 4rem;background-color:var(--bg);background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.06) 1px,transparent 0);background-size:24px 24px;background-attachment:local;overflow:visible}.glyph-canvas--fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:900;background-color:var(--bg)}.glyph-toolbar-floating{position:sticky;top:1rem;z-index:100;margin-left:auto;margin-bottom:1rem;width:fit-content;display:flex;align-items:center;gap:.25rem;padding:.375rem .5rem;background:var(--bg-elev-3);border:1px solid var(--border-strong);border-radius:999px;box-shadow:0 6px 24px #00000073;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.glyph-toolbar-divider{width:1px;height:18px;background:var(--border);margin:0 .25rem;flex-shrink:0}.glyph-btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.375rem .75rem;border-radius:6px;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text);cursor:pointer;font-size:.8125rem;font-weight:500;transition:background .12s,border-color .12s,transform .12s;font-family:inherit}.glyph-btn:disabled{opacity:.5;cursor:not-allowed}.glyph-btn--ghost{background:transparent;border-color:transparent;padding:.375rem .625rem}.glyph-btn--primary:hover:not(:disabled){background:var(--accent-2);border-color:var(--accent-2)}.glyph-btn--send{border-radius:999px;padding:.5rem .875rem;font-weight:600;gap:.5rem;background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 2px 10px #8b5cf659}.glyph-btn--send:hover:not(:disabled){background:var(--accent-2);border-color:var(--accent-2);transform:translateY(-1px);box-shadow:0 4px 14px #8b5cf680}.glyph-btn-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#ffffff2e;color:#fff;font-size:11px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.glyph-icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;width:30px;height:30px;padding:0;border-radius:999px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .12s,color .12s;font-family:inherit;flex-shrink:0}.glyph-icon-btn:hover:not(:disabled){background:var(--bg-elev-2);color:var(--text-strong)}.glyph-icon-btn:disabled{opacity:.4;cursor:not-allowed}.glyph-icon-btn--close{color:var(--text-dim)}.glyph-icon-btn-count{font-size:11px;font-weight:600;font-variant-numeric:tabular-nums}.glyph-canvas-content{max-width:880px;margin:0 auto;display:flex;flex-direction:column;gap:1.25rem}.glyph-canvas-title{display:flex;flex-direction:column;gap:.5rem;padding:.25rem .25rem .5rem}.glyph-title{margin:0;font-size:1.875rem;font-weight:700;color:var(--text-strong);letter-spacing:-.015em;line-height:1.2}.glyph-status{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.glyph-errors{background:var(--warning-soft);border:1px solid var(--warning);border-radius:6px;padding:.75rem 1rem;font-size:.8125rem;color:var(--text)}.glyph-sections{display:flex;flex-direction:column;gap:1rem}.glyph-section{background:var(--bg-elev);border:1px solid var(--border);border-radius:6px;padding:1rem 1.25rem}.glyph-section--plain{background:transparent;border:none;padding:0}.glyph-section-heading{margin:0 0 .75rem;font-size:1rem;font-weight:700;color:var(--text-strong);letter-spacing:-.005em;line-height:1.3}.glyph-section-blocks{display:flex;flex-direction:column;gap:.875rem}.glyph-callout{display:flex;gap:.75rem;padding:.875rem 1rem;border-radius:6px;border-left:3px solid;background:var(--bg-elev-2);font-size:.9375rem;line-height:1.6}.glyph-checklist{display:flex;flex-direction:column;gap:.375rem;padding:.875rem 1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:6px}.glyph-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:6px}.glyph-codetabs{border:1px solid var(--border);border-radius:6px;overflow:hidden}.glyph-decision{padding:.875rem 1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:6px}.glyph-openquestions{padding:.875rem 1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:6px;display:flex;flex-direction:column;gap:.75rem}.glyph-filetree{padding:.875rem 1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:6px}.glyph-diff{border:1px solid var(--border);border-radius:6px;overflow:hidden}.glyph-stat{display:inline-block;padding:.75rem 1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:6px;min-width:120px}.glyph-workflow{padding:1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:6px;overflow-x:auto}.glyph-workflow-edge{stroke:var(--text-dim);stroke-width:1.5;fill:none;marker-end:url(#glyph-arrowhead)}.glyph-pin{position:absolute;width:26px;height:26px;margin-left:-13px;margin-top:-13px;background:var(--accent);color:#fff;border:2px solid var(--bg);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #8b5cf666;z-index:10;transition:transform .12s,background .12s,box-shadow .12s}.glyph-pin:hover{transform:scale(1.2);box-shadow:0 6px 18px #8b5cf68c}.glyph-pin--active{background:var(--accent-2);transform:scale(1.2);box-shadow:0 6px 20px #8b5cf6a6}.glyph-ctx-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .625rem;background:transparent;border:none;color:var(--text);cursor:pointer;border-radius:4px;font-size:.8125rem;text-align:left;font-family:inherit}.glyph-modal{background:var(--bg-elev-2);border:1px solid var(--border-strong);border-radius:8px;padding:1.5rem;width:90%;max-width:500px;box-shadow:0 12px 40px #0009}.glyph-renderer{position:relative;padding:1.5rem 2rem;background:var(--bg-elev);border:1px solid var(--border);border-radius:12px;margin:0;min-height:100%;overflow:visible}.glyph-renderer--loading,.glyph-renderer--error{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.5rem;color:var(--text-dim);padding:4rem 2rem;text-align:center}.glyph-renderer--error strong{color:var(--error);font-size:1.1rem}.glyph-renderer--error pre{color:var(--text-dim);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;white-space:pre-wrap;max-width:600px}.glyph-spinner{display:inline-block;animation:glyph-spin 1.2s linear infinite;font-size:1.5rem;color:var(--accent)}@keyframes glyph-spin{to{transform:rotate(360deg)}}.glyph-renderer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding-bottom:1.25rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border)}.glyph-title{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:var(--text-strong);letter-spacing:-.01em;line-height:1.2}.glyph-meta{display:flex;align-items:center;gap:.75rem;font-size:.8125rem;color:var(--text-dim)}.glyph-status{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.glyph-status--draft{background:var(--warning-soft);color:var(--warning)}.glyph-status--shipped{background:var(--success-soft);color:var(--success)}.glyph-status--archived{background:var(--bg-elev-2);color:var(--text-dim)}.glyph-status--review{background:var(--accent-soft);color:var(--accent-2)}.glyph-slug{font-family:JetBrains Mono,ui-monospace,monospace;font-size:.75rem;color:var(--text-muted)}.glyph-actions{display:flex;align-items:center;gap:.75rem}.glyph-comment-count{display:inline-flex;align-items:center;gap:.25rem;color:var(--text-dim);font-size:.8125rem}.glyph-btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.375rem .75rem;border-radius:6px;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text);cursor:pointer;font-size:.8125rem;font-weight:500;transition:background .12s,border-color .12s}.glyph-btn:hover{background:var(--bg-elev-3);border-color:var(--border-strong)}.glyph-btn--ghost{background:transparent;border-color:transparent;padding:.25rem .5rem}.glyph-btn--primary{background:var(--accent);border-color:var(--accent);color:#fff}.glyph-btn--primary:hover{background:var(--accent-2)}.glyph-btn--primary:disabled{opacity:.5;cursor:not-allowed}.glyph-errors{background:var(--warning-soft);border:1px solid var(--warning);border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.8125rem;color:var(--text)}.glyph-errors ul{margin:.5rem 0 0;padding-left:1.25rem;color:var(--text-dim)}.glyph-blocks{display:flex;flex-direction:column;gap:1rem}.glyph-block-placeholder{padding:.75rem 1rem;border:1px dashed var(--border);border-radius:6px;color:var(--text-dim);font-size:.8125rem}.glyph-rich-text{font-size:.9375rem;line-height:1.7;color:var(--text)}.glyph-rich-text h1,.glyph-rich-text h2,.glyph-rich-text h3{color:var(--text-strong);font-weight:700;margin:1.5rem 0 .5rem;line-height:1.25}.glyph-rich-text h1{font-size:1.5rem}.glyph-rich-text h2{font-size:1.25rem}.glyph-rich-text h3{font-size:1.0625rem}.glyph-rich-text p{margin:.5rem 0}.glyph-rich-text code{background:var(--bg-elev-3);padding:.125rem .375rem;border-radius:4px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.85em;color:var(--accent-2)}.glyph-rich-text pre{background:var(--bg-elev-2);border:1px solid var(--border);border-radius:8px;padding:.875rem 1rem;overflow-x:auto;font-size:.8125rem}.glyph-rich-text pre code{background:transparent;padding:0;color:var(--text)}.glyph-rich-text ul,.glyph-rich-text ol{padding-left:1.5rem;margin:.5rem 0}.glyph-rich-text li{margin:.25rem 0}.glyph-rich-text a{color:var(--accent-2);text-decoration:underline;text-underline-offset:2px}.glyph-rich-text blockquote{border-left:3px solid var(--accent);margin:.75rem 0;padding:.25rem 0 .25rem 1rem;color:var(--text-dim)}.glyph-callout{display:flex;gap:.75rem;padding:.875rem 1rem;border-radius:8px;border-left:3px solid;background:var(--bg-elev-2);font-size:.9375rem;line-height:1.6}.glyph-callout--info{border-left-color:var(--info);background:#60a5fa14}.glyph-callout--warn{border-left-color:var(--warning);background:var(--warning-soft)}.glyph-callout--success{border-left-color:var(--success);background:var(--success-soft)}.glyph-callout--danger{border-left-color:var(--error);background:var(--error-soft)}.glyph-callout-icon{flex-shrink:0;font-weight:700;font-size:1rem;width:1.25rem;text-align:center}.glyph-callout--info .glyph-callout-icon{color:var(--info)}.glyph-callout--warn .glyph-callout-icon{color:var(--warning)}.glyph-callout--success .glyph-callout-icon{color:var(--success)}.glyph-callout--danger .glyph-callout-icon{color:var(--error)}.glyph-callout-body{flex:1;color:var(--text)}.glyph-callout-body p{margin:0}.glyph-checklist{display:flex;flex-direction:column;gap:.375rem;padding:.875rem 1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:8px}.glyph-checklist-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text)}.glyph-checklist-item--checked{color:var(--text-dim);text-decoration:line-through}.glyph-checklist-mark{width:14px;height:14px;border:1.5px solid var(--border-strong);border-radius:3px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.glyph-checklist-item--checked .glyph-checklist-mark{background:var(--success);border-color:var(--success);color:var(--bg)}.glyph-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:8px}.glyph-table{width:100%;border-collapse:collapse;font-size:.875rem}.glyph-table th{background:var(--bg-elev-2);text-align:left;padding:.625rem .875rem;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);border-bottom:1px solid var(--border)}.glyph-table td{padding:.625rem .875rem;border-top:1px solid var(--border);color:var(--text)}.glyph-table tr:first-child td{border-top:none}.glyph-codetabs{border:1px solid var(--border);border-radius:8px;overflow:hidden}.glyph-codetabs-tabs{display:flex;background:var(--bg-elev-2);border-bottom:1px solid var(--border);overflow-x:auto}.glyph-codetabs-tab{padding:.5rem 1rem;background:transparent;border:none;color:var(--text-dim);cursor:pointer;font-size:.8125rem;font-weight:500;border-bottom:2px solid transparent;white-space:nowrap;font-family:JetBrains Mono,ui-monospace,monospace}.glyph-codetabs-tab--active{color:var(--accent-2);border-bottom-color:var(--accent)}.glyph-codetabs-panel{background:var(--bg-elev)}.glyph-codetabs-caption{padding:.375rem 1rem;font-size:.75rem;color:var(--text-dim);font-style:italic}.glyph-codetabs-code{margin:0;padding:.875rem 1rem;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.8125rem;color:var(--text);overflow-x:auto;white-space:pre}.glyph-decision{padding:.875rem 1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:8px}.glyph-decision-title,.glyph-decision-question{margin:0 0 .75rem;font-weight:600;font-size:.9375rem;color:var(--text-strong)}.glyph-decision-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.625rem}.glyph-decision-option{padding:.625rem .75rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;display:flex;flex-direction:column;gap:.25rem;position:relative}.glyph-decision-option--recommended{border-color:var(--success);background:var(--success-soft)}.glyph-decision-option-label{font-weight:600;font-size:.875rem;color:var(--text-strong)}.glyph-decision-option-detail{font-size:.8125rem;color:var(--text-dim);line-height:1.45}.glyph-decision-option-badge{position:absolute;top:-8px;right:8px;padding:1px 6px;background:var(--success);color:var(--bg);font-size:9px;font-weight:700;letter-spacing:.05em;border-radius:3px;text-transform:uppercase}.glyph-openquestions{padding:.875rem 1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;gap:.75rem}.glyph-openquestions-item{display:flex;flex-direction:column;gap:.375rem}.glyph-openquestions-label{font-size:.875rem;font-weight:500;color:var(--text)}.glyph-openquestions-input,.glyph-openquestions-select{padding:.5rem .625rem;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);font-size:.8125rem;font-family:inherit}.glyph-filetree{padding:.875rem 1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:8px}.glyph-filetree-title{margin:0 0 .5rem;font-size:.8125rem;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.glyph-filetree-entry{display:flex;align-items:center;gap:.5rem;padding:.25rem 0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.8125rem}.glyph-filetree-change{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:4px;font-size:11px;font-weight:700;flex-shrink:0}.glyph-filetree-change--added{background:var(--success-soft);color:var(--success)}.glyph-filetree-change--modified{background:#60a5fa26;color:var(--info)}.glyph-filetree-change--removed{background:var(--error-soft);color:var(--error)}.glyph-filetree-change--renamed{background:#a78bfa26;color:var(--accent-2)}.glyph-filetree-path{color:var(--text)}.glyph-filetree-note{color:var(--text-dim);font-style:italic;font-family:inherit}.glyph-diff{border:1px solid var(--border);border-radius:8px;overflow:hidden}.glyph-diff-header{background:var(--bg-elev-2);padding:.5rem .875rem;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.8125rem;color:var(--text-dim);border-bottom:1px solid var(--border);display:flex;gap:.5rem;align-items:center}.glyph-diff-lang{background:var(--bg-elev-3);padding:1px 6px;border-radius:3px;font-size:10px;text-transform:uppercase}.glyph-diff-body{display:grid;grid-template-columns:1fr 1fr;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.8125rem}.glyph-diff--unified .glyph-diff-body{display:block}.glyph-diff-side{border-right:1px solid var(--border);overflow-x:auto}.glyph-diff-side:last-child{border-right:none}.glyph-diff-line{display:flex;padding:.0625rem .875rem;white-space:pre;line-height:1.5}.glyph-diff-line--add{background:var(--success-soft);color:var(--success)}.glyph-diff-line--del{background:var(--error-soft);color:var(--error)}.glyph-diff-line--ctx{color:var(--text-dim)}.glyph-diff-mark{width:1.25rem;flex-shrink:0;text-align:center;font-weight:700;-webkit-user-select:none;user-select:none}.glyph-stat{display:inline-block;padding:.75rem 1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:8px;min-width:120px}.glyph-stat-label{font-size:.6875rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.glyph-stat-value{font-size:1.5rem;font-weight:700;color:var(--text-strong);display:flex;align-items:baseline;gap:.375rem}.glyph-stat-trend{font-size:.875rem;font-weight:500}.glyph-stat-trend--up{color:var(--success)}.glyph-stat-trend--down{color:var(--error)}.glyph-stat-trend--flat{color:var(--text-dim)}.glyph-stat-hint{margin-top:.25rem;font-size:.75rem;color:var(--text-dim)}.glyph-workflow{padding:1rem;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:8px;overflow-x:auto}.glyph-workflow-svg{display:block;margin:0 auto}.glyph-workflow-node{fill:var(--bg);stroke:var(--info);stroke-width:1.5}.glyph-workflow-node--decision{fill:var(--bg);stroke:var(--warning)}.glyph-workflow-node--note{fill:var(--bg-elev-2);stroke:var(--border-strong);stroke-dasharray:4 3}.glyph-workflow-label{fill:var(--text);font-size:12px;font-family:Inter,system-ui,sans-serif}.glyph-workflow-edge{stroke:var(--text-dim);stroke-width:1.5;fill:none;marker-end:url(#glyph-arrowhead)}.glyph-workflow-edge-label{fill:var(--text-dim);font-size:11px;font-family:Inter,system-ui,sans-serif}.glyph-pin{position:absolute;width:26px;height:26px;margin-left:-13px;margin-top:-13px;background:var(--accent);color:#fff;border:2px solid var(--bg);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0006;z-index:10;transition:transform .12s,background .12s}.glyph-pin:hover{transform:scale(1.15)}.glyph-pin--active{background:var(--accent-2);transform:scale(1.15)}.glyph-pin-thread{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);min-width:220px;max-width:320px;background:var(--bg-elev-3);border:1px solid var(--border-strong);border-radius:8px;padding:.625rem .75rem;box-shadow:0 6px 20px #00000080;font-size:.8125rem;line-height:1.45;color:var(--text);z-index:20}.glyph-pin-text{margin-bottom:.375rem}.glyph-pin-meta{font-size:.6875rem;color:var(--text-dim)}.glyph-ctx-menu{position:fixed;background:var(--bg-elev-3);border:1px solid var(--border-strong);border-radius:6px;padding:.25rem;min-width:180px;box-shadow:0 6px 20px #00000080;z-index:100}.glyph-ctx-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .625rem;background:transparent;border:none;color:var(--text);cursor:pointer;border-radius:4px;font-size:.8125rem;text-align:left}.glyph-ctx-item:hover{background:var(--accent-soft);color:var(--accent-2)}.glyph-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-bg);display:flex;align-items:center;justify-content:center;z-index:1000}.glyph-modal{background:var(--bg-elev-2);border:1px solid var(--border-strong);border-radius:12px;padding:1.5rem;width:90%;max-width:500px;box-shadow:0 12px 40px #0009}.glyph-modal h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-strong);font-family:JetBrains Mono,ui-monospace,monospace}.glyph-modal-textarea{width:100%;padding:.625rem;border:1px solid var(--border);border-radius:6px;background:var(--bg);color:var(--text);font-family:inherit;font-size:.875rem;resize:vertical;min-height:80px}.glyph-modal-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.glyph-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.glyph-mockup{margin:1.5rem 0;border-radius:var(--radius-md);overflow:hidden}.glyph-mockup-title{font-size:.75rem;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.glyph-mockup-frame{background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.glyph-mockup-chrome{display:flex;gap:6px;padding:.5rem .75rem;background:var(--bg-2);border-bottom:1px solid var(--border)}.glyph-mockup-chrome span{width:10px;height:10px;border-radius:50%;background:var(--border-strong)}.glyph-mockup-body{padding:1.5rem;color:var(--text);font-size:.875rem;line-height:1.5}.glyph-mockup-body .mockup-card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:1rem;margin:.5rem 0}.glyph-mockup-body button.mockup-btn{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:.5rem 1rem;cursor:pointer;font-size:.875rem}
@@ -1,2 +1,2 @@
1
- import{an as r,j as o,r as e,ao as n}from"./mobile-Dvq2d53Y.js";const t=document.getElementById("root");if(!t)throw new Error("Root element #root not found");r(t).render(o.jsx(e.StrictMode,{children:o.jsx(n,{})}));
2
- //# sourceMappingURL=mobile-DbxIw8BG.js.map
1
+ import{an as r,j as o,r as e,ao as n}from"./mobile-CaZ0gEeJ.js";const t=document.getElementById("root");if(!t)throw new Error("Root element #root not found");r(t).render(o.jsx(e.StrictMode,{children:o.jsx(n,{})}));
2
+ //# sourceMappingURL=mobile-CQTXbuHq.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mobile-DbxIw8BG.js","sources":["../../src/web/mobile.tsx"],"sourcesContent":["// src/mobile.tsx — entry point for mobile dashboard.\nimport { StrictMode } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { MobileApp } from './MobileApp';\nimport './styles/mobile.css';\n\nconst root = document.getElementById('root');\nif (!root) throw new Error('Root element #root not found');\ncreateRoot(root).render(\n <StrictMode>\n <MobileApp />\n </StrictMode>,\n);\n"],"names":["root","createRoot","jsx","StrictMode","MobileApp"],"mappings":"gEAMA,MAAMA,EAAO,SAAS,eAAe,MAAM,EAC3C,GAAI,CAACA,EAAM,MAAM,IAAI,MAAM,8BAA8B,EACzDC,EAAWD,CAAI,EAAE,OACfE,EAAAA,IAACC,EAAAA,WAAA,CACC,SAAAD,EAAAA,IAACE,EAAA,CAAA,CAAU,CAAA,CACb,CACF"}
1
+ {"version":3,"file":"mobile-CQTXbuHq.js","sources":["../../src/web/mobile.tsx"],"sourcesContent":["// src/mobile.tsx — entry point for mobile dashboard.\nimport { StrictMode } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { MobileApp } from './MobileApp';\nimport './styles/mobile.css';\n\nconst root = document.getElementById('root');\nif (!root) throw new Error('Root element #root not found');\ncreateRoot(root).render(\n <StrictMode>\n <MobileApp />\n </StrictMode>,\n);\n"],"names":["root","createRoot","jsx","StrictMode","MobileApp"],"mappings":"gEAMA,MAAMA,EAAO,SAAS,eAAe,MAAM,EAC3C,GAAI,CAACA,EAAM,MAAM,IAAI,MAAM,8BAA8B,EACzDC,EAAWD,CAAI,EAAE,OACfE,EAAAA,IAACC,EAAAA,WAAA,CACC,SAAAD,EAAAA,IAACE,EAAA,CAAA,CAAU,CAAA,CACb,CACF"}