*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#fff;--bg-surface:#fafafa;--bg-elevated:#f5f5f5;--border:#e5e5e5;--text:#171717;--text-muted:#737373;--text-dim:#a3a3a3;--accent:#171717;--accent-hover:#404040;--user-bubble:#171717;--user-text:#fafafa;--agent-bubble:#f5f5f5;--tool-bg:#fafaf9;--green:#22c55e;--red:#ef4444;--radius:8px;--font:system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"SF Mono", "Fira Code", "Consolas", monospace}html,body,#app{height:100dvh}#header{padding-top:env(safe-area-inset-top)}body{font-family:var(--font);color:var(--text);background:var(--bg);font-size:14px}#login{justify-content:center;align-items:center;height:100%;display:flex}#login form{flex-direction:column;gap:12px;width:320px;display:flex}#login h1{letter-spacing:-.02em;font-size:18px;font-weight:600}#login p{color:var(--text-muted);font-size:13px}#login .error{color:var(--red);font-size:12px}#login input{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:6px;outline:none;padding:10px 12px;font-size:14px}#login input:focus{border-color:var(--text)}#login button{background:var(--accent);color:var(--user-text);cursor:pointer;border:none;border-radius:6px;padding:10px;font-size:14px;font-weight:500}#login button:hover{background:var(--accent-hover)}#workspace{flex-direction:column;height:100%;display:flex;overflow:hidden}.workspace-panels{flex:1;min-height:0;display:flex}.panel-left,.panel-right{min-width:0;min-height:0;overflow:hidden}#header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:0 20px;display:flex}#header h1{letter-spacing:-.02em;font-size:14px;font-weight:600}.header-right{align-items:center;gap:10px;display:flex}#tasks-toggle-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;font-size:12px;font-weight:500;font-family:var(--font);background:0 0;border-radius:4px;align-items:center;gap:5px;padding:4px 10px;display:flex}#tasks-toggle-btn:hover{border-color:var(--text-muted);color:var(--text)}#tasks-toggle-btn .count{color:var(--bg);background:var(--text-muted);text-align:center;border-radius:8px;min-width:14px;padding:0 5px;font-size:10px;font-weight:500;line-height:14px}#tasks-toggle-btn .count:empty{display:none}#status-dot{background:var(--text-dim);border-radius:50%;flex-shrink:0;width:6px;height:6px}#status-dot.active{background:var(--green)}.split-handle{cursor:col-resize;background:0 0;flex-shrink:0;width:6px;transition:background .15s}.split-handle:hover,.split-handle[data-resize-handle-active]{background:var(--text-dim)}#tasks-panel{background:var(--bg);border-left:1px solid var(--border);z-index:80;flex-direction:column;width:min(360px,85vw);transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-4px 0 24px #00000014}#tasks-panel.open{transform:translate(0)}#tasks-panel-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}#tasks-panel-header h3{letter-spacing:-.01em;font-size:14px;font-weight:600}#tasks-panel-header .close{cursor:pointer;color:var(--text-dim);padding:4px;font-size:16px;line-height:1}#tasks-panel-header .close:hover{color:var(--text)}#tasks-add{border-bottom:1px solid var(--border);flex-shrink:0;padding:10px 16px}#task-input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);border-radius:6px;outline:none;padding:8px 10px;font-size:13px}#task-input:focus{border-color:var(--text-dim)}#tasks-list{flex:1;min-height:0;overflow-y:auto}.tasks-empty{color:var(--text-dim);text-align:center;padding:20px 16px;font-size:12px}.task-group-header{align-items:center;gap:6px;padding:10px 16px 4px;display:flex}.task-group-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);font-size:10px;font-weight:600}.task-group-count{color:var(--text-dim);font-size:10px}.task-row{cursor:pointer;align-items:center;gap:8px;padding:6px 16px;transition:background .1s;display:flex}.task-row:hover{background:var(--bg-elevated)}.task-row.dimmed{opacity:.45}.task-check{border:1.5px solid var(--border);cursor:pointer;text-align:center;width:18px;height:18px;color:var(--text-muted);background:0 0;border-radius:4px;flex-shrink:0;padding:0;font-size:11px;line-height:16px}.task-check:hover{border-color:var(--text-muted)}.task-check.checked{background:var(--accent);border-color:var(--accent);color:var(--user-text)}.task-title-wrap{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.task-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.task-row.done .task-title{text-decoration:line-through}.task-tags{flex-wrap:wrap;gap:4px;display:flex}.task-tag{color:var(--badge-color);background:color-mix(in srgb, var(--badge-color) 10%, transparent);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:3px;max-width:120px;padding:0 5px;font-size:10px;overflow:hidden}.task-tag:hover{background:color-mix(in srgb, var(--badge-color) 20%, transparent)}.task-tag-more{color:var(--text-dim);font-size:10px}.dropdown{flex-shrink:0;position:relative}.dropdown-trigger{border:1px solid var(--border);background:var(--bg);color:var(--text-muted);cursor:pointer;font-size:11px;font-family:var(--font);white-space:nowrap;border-radius:3px;padding:2px 6px}.dropdown-trigger:hover{border-color:var(--text-muted)}.dropdown-menu{background:var(--bg);border:1px solid var(--border);z-index:50;border-radius:6px;min-width:120px;margin-top:2px;padding:4px;display:none;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #0000001a}.dropdown.open .dropdown-menu{display:block}.dropdown-item{cursor:pointer;white-space:nowrap;border-radius:4px;padding:5px 10px;font-size:12px}.dropdown-item:hover{background:var(--bg-elevated)}.dropdown-item.active{color:var(--accent);font-weight:500}.pri-urgent .dropdown-trigger{color:#dc2626;border-color:#fca5a5}.pri-high .dropdown-trigger{color:#d97706;border-color:#fcd34d}.pri-normal .dropdown-trigger{color:var(--text-muted)}.pri-low .dropdown-trigger{color:var(--text-dim)}#agents-panel{background:var(--bg);border-left:1px solid var(--border);z-index:80;flex-direction:column;width:min(400px,85vw);transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-4px 0 24px #00000014}#agents-panel.open{transform:translate(0)}#agents-panel.inline{width:100%;height:100%;box-shadow:none;border-left:none;position:static;transform:none}#agents-panel-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}#agents-panel-header h3{letter-spacing:-.01em;font-size:14px;font-weight:600}.agents-header-actions{align-items:center;gap:6px;display:flex}#agents-list{flex:1;min-height:0;padding:8px;overflow-y:auto}.agents-empty{color:var(--text-dim);text-align:center;padding:20px 12px;font-size:12px}.agent-card{border:1px solid var(--border);border-radius:8px;margin-bottom:8px;overflow:hidden}.agent-card-header{justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.agent-card-info{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.agent-card-name{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.agent-card-trigger{text-transform:uppercase;letter-spacing:.03em;color:var(--text-dim);background:var(--bg-elevated);border-radius:3px;flex-shrink:0;padding:1px 5px;font-size:10px}.agent-card-schedule{color:var(--text-dim);font-size:10px;font-family:var(--mono)}.agent-card-actions{flex-shrink:0;gap:4px;display:flex}.agent-run-btn{border:1px solid var(--border);cursor:pointer;color:var(--text-muted);background:0 0;border-radius:4px;align-items:center;padding:3px 6px;display:flex}.agent-run-btn:hover{border-color:var(--green);color:var(--green)}.agent-delete-btn{cursor:pointer;color:var(--text-dim);background:0 0;border:none;padding:3px}.agent-delete-btn:hover{color:var(--red)}.agent-card-prompt{color:var(--text-muted);padding:0 12px 8px;font-size:12px;line-height:1.4}.agent-runs{border-top:1px solid var(--border)}.agent-run-row{cursor:pointer;align-items:center;gap:6px;padding:5px 12px;font-size:11px;transition:background .1s;display:flex}.agent-run-row:hover{background:var(--bg-elevated)}.agent-run-row.completed{color:var(--text-muted)}.agent-run-row.failed{color:var(--red)}.agent-run-row.running{color:var(--green)}.agent-run-time{flex:1}.agent-run-status{color:var(--text-dim);text-transform:uppercase;letter-spacing:.03em;font-size:10px}.agent-create-form{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding:12px;display:flex}.agent-form-row{align-items:center;gap:8px;display:flex}.agent-form-label{color:var(--text-muted);font-size:12px}#agents-toggle-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;font-size:12px;font-weight:500;font-family:var(--font);background:0 0;border-radius:4px;align-items:center;gap:5px;padding:4px 10px;display:flex}#agents-toggle-btn:hover{border-color:var(--text-muted);color:var(--text)}#agents-toggle-btn .count{color:var(--bg);background:var(--text-muted);text-align:center;border-radius:8px;min-width:14px;padding:0 5px;font-size:10px;font-weight:500;line-height:14px}#agents-toggle-btn .count:empty{display:none}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}.session-bar{border-bottom:1px solid var(--border);flex-shrink:0;padding:0 12px;position:relative}.session-trigger{cursor:pointer;width:100%;font-family:var(--font);color:var(--text-muted);text-align:left;background:0 0;border:none;align-items:center;gap:4px;padding:6px 4px;font-size:12px;display:flex}.session-trigger:hover{color:var(--text)}.session-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.session-chevron{flex-shrink:0;font-size:10px}.session-dropdown{background:var(--bg);border:1px solid var(--border);z-index:60;border-radius:8px;max-height:300px;padding:4px;position:absolute;top:100%;left:8px;right:8px;overflow-y:auto;box-shadow:0 4px 16px #0000001a}.session-item{cursor:pointer;border-radius:5px;align-items:center;gap:6px;padding:7px 10px;font-size:13px;display:flex}.session-item:hover{background:var(--bg-elevated)}.session-item.active{background:var(--bg-elevated);font-weight:500}.session-new{color:var(--text-muted);font-weight:500}.session-loading,.session-empty{color:var(--text-dim);cursor:default;font-size:12px}.session-hint{color:var(--text-dim);cursor:default;font-size:11px}.session-hint code{background:var(--bg-elevated);font-family:var(--mono);border-radius:3px;padding:1px 4px;font-size:11px}.session-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.session-item-delete{color:var(--text-dim);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;padding:2px;font-size:11px}.session-item:hover .session-item-delete{opacity:1}.session-item-delete:hover{color:var(--red)}.session-divider{background:var(--border);height:1px;margin:4px 6px}#chat{border-right:1px solid var(--border);flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}#messages{flex-direction:column;flex:1;gap:16px;padding:24px 28px;display:flex;overflow-y:auto}.message{white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.6}.message.user{color:var(--text-muted);border-left:2px solid var(--border);margin-left:4px;padding:8px 12px;font-size:13px}.message.assistant p{margin:0 0 8px}.message.assistant p:last-child{margin-bottom:0}.message.assistant h1,.message.assistant h2,.message.assistant h3{letter-spacing:-.01em;margin:16px 0 8px;font-weight:600}.message.assistant h1{font-size:18px}.message.assistant h2{font-size:16px}.message.assistant h3{font-size:14px}.message.assistant ul,.message.assistant ol{margin:4px 0 8px 20px}.message.assistant li{margin-bottom:2px}.message.assistant code{font-family:var(--mono);background:var(--bg-elevated);border-radius:3px;padding:1px 4px;font-size:12px}.message.assistant pre{background:var(--bg-elevated);border-radius:6px;margin:8px 0;padding:10px 12px;font-size:12px;line-height:1.5;overflow-x:auto}.message.assistant pre code{background:0 0;padding:0}.message.assistant strong{font-weight:600}.message.assistant blockquote{border-left:2px solid var(--border);color:var(--text-muted);margin:8px 0;padding-left:12px}.message.assistant hr{border:none;border-top:1px solid var(--border);margin:12px 0}.message.assistant table{border-collapse:collapse;margin:8px 0;font-size:13px}.message.assistant th,.message.assistant td{border:1px solid var(--border);text-align:left;padding:4px 8px}.message.assistant th{background:var(--bg-surface);font-weight:600}.message.tool{font-family:var(--mono);color:var(--text-dim);padding:0;font-size:11px}.message.tool.tool-rich{font-family:var(--font);white-space:normal;border:1px solid var(--border);border-radius:8px;padding:0;font-size:13px}.message.tool.tool-clickable .tool-header{cursor:pointer}.message.tool.tool-clickable .tool-header:hover{background:var(--bg-elevated)}.tool-header{align-items:center;gap:6px;padding:8px 12px;font-size:12px;display:flex}.tool-action{color:var(--text-muted);font-weight:500}.tool-node-type{text-transform:uppercase;letter-spacing:.04em;color:var(--badge-color);background:color-mix(in srgb, var(--badge-color) 10%, transparent);border-radius:3px;padding:1px 5px;font-size:10px;font-weight:500;display:inline-block}.tool-node-label{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.tool-node-link{color:var(--accent);cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:2px}.tool-node-link:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.tool-edge-inline{font-size:12px}.tool-edge-arrow{color:var(--text-dim);font-family:var(--mono);font-size:11px}.tool-body{border-top:1px solid var(--border);max-height:400px;padding:8px 12px;transition:max-height .2s,padding .2s;overflow-y:auto}.tool-body.collapsed{border-top:none;max-height:0;padding:0 12px;overflow:hidden}.tool-preview-row,.tool-diff-row{gap:8px;padding:2px 0;font-size:12px;line-height:1.4;display:flex}.tool-preview-key,.tool-diff-key{color:var(--text-muted);flex-shrink:0;font-size:11px}.tool-preview-key:after{content:":"}.tool-diff-arrow{color:var(--text-dim);flex-shrink:0;font-size:11px}.tool-preview-val,.tool-diff-val{color:var(--text);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tool-diff-row{border-left:2px solid #059669;margin-left:-4px;padding-left:8px}.tool-preview-more{color:var(--text-dim);padding-top:2px;font-size:11px}.tool-toggle{width:100%;color:var(--text-dim);background:var(--bg-surface);border:none;border-top:1px solid var(--border);cursor:pointer;text-align:center;font-size:11px;font-family:var(--font);padding:4px 12px;display:block}.tool-toggle:hover{color:var(--text-muted);background:var(--bg-elevated)}.message.thinking{color:var(--text-dim);font-size:13px}.pending-files{flex-wrap:wrap;gap:6px;padding:0 28px;display:flex}.pending-file{background:var(--bg-elevated);border:1px solid var(--border);border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:12px;display:flex}.pending-file-icon{font-size:13px}.pending-file-name{text-overflow:ellipsis;white-space:nowrap;max-width:150px;overflow:hidden}.pending-file-size{color:var(--text-dim);font-size:11px}.pending-file-remove{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:11px}.pending-file-remove:hover{color:var(--red)}#input-bar{align-items:center;gap:8px;padding:12px 28px 16px;display:flex;position:relative}.attach-btn{cursor:pointer;opacity:.5;background:0 0;border:none;flex-shrink:0;padding:4px;font-size:18px}.attach-btn:hover{opacity:1}.attach-file-input{display:none}#input-bar #chat-input{font-size:14px;font-family:var(--font);background:var(--bg);border:1px solid var(--border);color:var(--text);resize:none;border-radius:18px;outline:none;flex:1;min-height:40px;max-height:150px;padding:10px 16px;line-height:1.4;overflow-y:hidden;box-shadow:0 1px 4px #0000000a}#input-bar #chat-input:focus{border-color:var(--text-dim);box-shadow:0 2px 8px #0000000f}#send-btn{background:var(--accent);color:var(--user-text);cursor:pointer;border:none;border-radius:16px;flex-shrink:0;padding:8px 16px;font-size:13px;font-weight:500}#send-btn:hover{background:var(--accent-hover)}#send-btn:disabled{opacity:.2;cursor:not-allowed}.message-attachments{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.message-attachment{background:#0000000a;border-radius:4px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;display:flex}.message-attachment-name{text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.message-attachment-size{color:var(--text-dim);font-size:11px}#explorer{flex-direction:column;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}#explorer-toolbar{border-bottom:1px solid var(--border);color:var(--text-muted);align-items:center;gap:8px;padding:6px 14px;font-size:11px;display:flex}#explorer-toolbar .count{font-variant-numeric:tabular-nums}#explorer-toolbar #graph-refresh{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:4px;margin-left:auto;padding:2px 8px;font-size:11px}#explorer-toolbar #graph-refresh:hover{border-color:var(--text-muted)}#view-modes{background:var(--bg-elevated);border-radius:5px;padding:2px;display:flex}.view-mode{color:var(--text-muted);cursor:pointer;font-size:11px;font-weight:500;font-family:var(--font);background:0 0;border:none;border-radius:3px;padding:3px 10px}.view-mode:hover{color:var(--text)}.view-mode.active{background:var(--bg);color:var(--text);box-shadow:0 1px 2px #0000000f}#graph-container,#columns-container{flex:1;min-height:0;display:none;position:relative}#explorer[data-view=graph] #graph-container{display:block}#explorer[data-view=columns] #columns-container{display:flex}#graph-canvas{position:absolute;inset:0}#explorer[data-view=columns] #columns-container{overflow-x:auto}.column{border-right:1px solid var(--border);flex-direction:column;flex:1;min-width:220px;max-width:300px;display:flex;overflow-y:auto}.column:last-child{border-right:none}.col-header{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);border-bottom:1px solid var(--border);background:var(--bg-surface);flex-shrink:0;justify-content:space-between;align-items:center;gap:6px;padding:8px 12px;font-size:11px;font-weight:600;display:flex}.col-row{cursor:pointer;align-items:center;gap:8px;padding:6px 12px;font-size:13px;transition:background .1s;display:flex}.col-row:hover{background:var(--bg-elevated)}.col-row.selected{background:var(--accent);color:var(--user-text)}.col-row.selected .col-count{color:var(--user-text);opacity:.6}.col-row.selected .col-dot{box-shadow:0 0 0 1px var(--user-text)}.col-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.col-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.col-count{color:var(--text-dim);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11px}.col-action{color:var(--text-muted);font-size:12px;font-weight:500}.col-action:hover{color:var(--text)}.col-badge{vertical-align:middle;margin-left:6px;font-size:9px}.col-props{border-bottom:1px solid var(--border);padding:8px 12px;font-size:12px}.col-props .detail-field{margin-bottom:8px}.col-props .detail-field:last-child{margin-bottom:0}.col-props .detail-field-value,.col-props .detail-field-value.md{font-size:12px}.col-props .detail-empty{margin:0;font-size:11px}.col-relation-heading{text-transform:uppercase;letter-spacing:.03em;color:var(--text-dim);font-size:10px;font-weight:500;font-family:var(--mono);padding:8px 12px 2px}.col-chevron{color:var(--text-dim);flex-shrink:0;font-size:14px;line-height:1}.col-row.selected .col-chevron{color:var(--user-text);opacity:.6}.col-resize-handle{cursor:col-resize;background:0 0;flex-shrink:0;width:5px;transition:background .15s}.col-resize-handle:hover{background:var(--text-dim)}.col-header-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.col-expand-btn{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:3px;flex-shrink:0;padding:1px 4px;font-size:11px;line-height:1}.col-expand-btn:hover{border-color:var(--text-muted);color:var(--text)}.col-empty{color:var(--text-dim);padding:12px;font-size:12px}#node-detail-backdrop{opacity:0;pointer-events:none;z-index:90;background:#00000026;transition:opacity .25s;position:fixed;inset:0}#node-detail-backdrop.open{opacity:1;pointer-events:auto}#node-detail{background:var(--bg);border-left:1px solid var(--border);z-index:100;flex-direction:column;width:min(400px,85vw);font-size:13px;transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-4px 0 24px #00000014}#node-detail.open{transform:translate(0)}#node-detail.maximized{border-left:none;border-radius:0;width:100vw;max-width:100vw}#detail-handle{display:none}#detail-header{flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:12px 20px 0;display:flex}#detail-header h3{letter-spacing:-.01em;margin-top:4px;font-size:15px;font-weight:600;line-height:1.3}.detail-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.detail-action-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;font-size:11px;font-family:var(--font);background:0 0;border-radius:4px;padding:3px 8px}.detail-action-btn:hover{border-color:var(--text-muted);color:var(--text)}.detail-action-btn.danger:hover{border-color:var(--red);color:var(--red)}#detail-header .close{cursor:pointer;color:var(--text-dim);padding:4px;font-size:16px;line-height:1}#detail-header .close:hover{color:var(--text)}.detail-edit-input,.detail-edit-textarea{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font-size:13px;font-family:var(--font);border-radius:4px;outline:none;margin-top:2px;padding:6px 8px}.detail-edit-input:focus,.detail-edit-textarea:focus{border-color:var(--text-dim)}.detail-edit-textarea{resize:vertical;min-height:60px;font-family:var(--mono);font-size:12px}.detail-edit-actions{gap:8px;margin-top:12px;display:flex}.detail-badge,.detail-related-type{text-transform:uppercase;letter-spacing:.04em;color:var(--badge-color);background:color-mix(in srgb, var(--badge-color) 10%, transparent);border-radius:3px;padding:2px 6px;font-size:10px;font-weight:500;display:inline-block}#detail-body{flex:1;min-height:0;padding:16px 20px;overflow-y:auto}.detail-empty{color:var(--text-dim);font-size:12px}.detail-field{margin-bottom:14px}.detail-field:last-child{margin-bottom:0}.detail-field-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:3px;font-size:10px;font-weight:500}.detail-field-value{color:var(--text);line-height:1.5}.detail-field-value.md p{margin:0 0 6px}.detail-field-value.md p:last-child{margin-bottom:0}.detail-field-value.md h1,.detail-field-value.md h2,.detail-field-value.md h3{margin:8px 0 4px;font-size:13px;font-weight:600}.detail-field-value.md ul,.detail-field-value.md ol{margin:2px 0 6px 16px}.detail-field-value.md li{margin-bottom:1px}.detail-field-value.md code{font-family:var(--mono);background:var(--bg-elevated);border-radius:2px;padding:1px 3px;font-size:11px}.detail-field-value.md pre{background:var(--bg-elevated);border-radius:4px;margin:4px 0;padding:8px 10px;font-size:11px;line-height:1.4;overflow-x:auto}.detail-field-value.md pre code{background:0 0;padding:0}.detail-field-value.md blockquote{border-left:2px solid var(--border);color:var(--text-muted);margin:4px 0;padding-left:10px}.detail-field-value pre{background:var(--bg-elevated);white-space:pre-wrap;word-break:break-all;font-family:var(--mono);border-radius:4px;padding:8px;font-size:11px;line-height:1.4}.json-formatter-row{font-size:12px;line-height:1.5;font-family:var(--mono)!important}.json-formatter-row,.json-formatter-row a,.json-formatter-row a:hover{color:var(--text)!important}.json-formatter-row .json-formatter-key{color:#7c3aed!important}.json-formatter-row .json-formatter-string{color:#059669!important}.json-formatter-row .json-formatter-null,.json-formatter-row .json-formatter-undefined{color:var(--text-muted)!important}.json-formatter-row .json-formatter-toggler{opacity:.6;font-size:10px}.json-formatter-row .json-formatter-toggler:hover{opacity:1}.json-formatter-row .json-formatter-constructor-name{color:var(--text-muted)!important}.attachments-section{border-top:1px solid var(--border);flex-shrink:0;padding:0 20px 12px}.attachments-section .detail-section-heading{justify-content:space-between;align-items:center;display:flex}.attachment-add-btn{border:1px solid var(--border);width:22px;height:22px;color:var(--text-muted);cursor:pointer;font-size:14px;font-family:var(--font);background:0 0;border-radius:4px;justify-content:center;align-items:center;line-height:1;display:flex}.attachment-add-btn:hover{border-color:var(--text-muted);color:var(--text)}.attachment-file-input{display:none}.attachments-empty{color:var(--text-dim);padding:4px 0;font-size:12px}.attachment-row{align-items:center;gap:6px;padding:5px 0;font-size:13px;display:flex}.attachment-icon{flex-shrink:0;font-size:14px}.attachment-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:2px;flex:1;overflow:hidden}.attachment-name:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.attachment-size{color:var(--text-dim);flex-shrink:0;font-size:11px}.attachment-delete{color:var(--text-dim);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:2px;font-size:11px}.attachment-delete:hover{color:var(--red)}#detail-related{border-top:1px solid var(--border);flex-shrink:0;padding:0 20px 16px}#detail-related:empty{display:none}.detail-section-heading{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);padding:12px 0 6px;font-size:10px;font-weight:500}.detail-related-node{cursor:pointer;border-radius:6px;align-items:center;gap:8px;margin:0 -8px;padding:6px 8px;transition:background .1s;display:flex}.detail-related-node:hover{background:var(--bg-elevated)}.detail-relation{font-family:var(--mono);color:var(--text-dim);flex-shrink:0;min-width:0;font-size:10px}.detail-related-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.detail-related-type{flex-shrink:0;font-size:9px}.mobile-only,.mobile-panel{display:none}.mobile-nav{border-top:1px solid var(--border);background:var(--bg);flex-shrink:0}.mobile-nav-btn{padding:8px 0 max(8px, env(safe-area-inset-bottom));cursor:pointer;color:var(--text-dim);font-family:var(--font);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:2px;display:flex;position:relative}.mobile-nav-btn.active{color:var(--accent)}.mobile-nav-btn:hover{color:var(--text-muted)}.mobile-nav-icon{font-size:18px;line-height:1}.mobile-nav-label{font-size:10px;font-weight:500}.mobile-nav-badge{background:var(--accent);color:var(--user-text);text-align:center;border-radius:6px;min-width:14px;padding:0 4px;font-size:9px;font-weight:600;line-height:14px;position:absolute;top:4px;right:calc(50% - 18px)}#tasks-panel.inline{width:100%;height:100%;box-shadow:none;border-left:none;position:static;transform:none}@media (width<=768px){.desktop-only{display:none!important}.mobile-only{display:flex}.mobile-panel{flex:1;width:100%;min-height:0;display:flex}.mobile-panel>*{width:100%}#header{padding:0 16px}#chat{border-right:none}#input-bar{gap:6px;padding:8px 10px 12px}.attach-btn{display:none}#send-btn{padding:8px 12px;font-size:12px}#input-bar #chat-input{border-radius:14px;padding:10px 14px;font-size:16px}#messages{padding:16px 14px}#explorer{width:100%}.column{min-width:260px}#node-detail{border-left:none;border-radius:0;width:100vw;max-width:100vw}}.json-formatter-row{font-family:monospace}.json-formatter-row,.json-formatter-row a,.json-formatter-row a:hover{color:#000;text-decoration:none}.json-formatter-row .json-formatter-row{margin-left:1rem}.json-formatter-row .json-formatter-children.json-formatter-empty{opacity:.5;margin-left:1rem}.json-formatter-row .json-formatter-children.json-formatter-empty:after{display:none}.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after{content:"No properties"}.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after{content:"[]"}.json-formatter-row .json-formatter-string,.json-formatter-row .json-formatter-stringifiable{color:green;white-space:pre;word-wrap:break-word}.json-formatter-row .json-formatter-number{color:#00f}.json-formatter-row .json-formatter-boolean{color:red}.json-formatter-row .json-formatter-null{color:#855a00}.json-formatter-row .json-formatter-undefined{color:#ca0b69}.json-formatter-row .json-formatter-function{color:#ff20ed}.json-formatter-row .json-formatter-date{background-color:#0000000d}.json-formatter-row .json-formatter-url{color:#00f;cursor:pointer;text-decoration:underline}.json-formatter-row .json-formatter-bracket{color:#00f}.json-formatter-row .json-formatter-key{color:#00008b;padding-right:.2rem}.json-formatter-row .json-formatter-toggler-link{cursor:pointer}.json-formatter-row .json-formatter-toggler{vertical-align:middle;opacity:.6;cursor:pointer;padding-right:.2rem;font-size:.7rem;line-height:1.2rem}.json-formatter-row .json-formatter-toggler:after{content:"►";transition:transform .1s ease-in;display:inline-block}.json-formatter-row>a>.json-formatter-preview-text{opacity:0;font-style:italic;transition:opacity .15s ease-in}.json-formatter-row:hover>a>.json-formatter-preview-text{opacity:.6}.json-formatter-row.json-formatter-open>.json-formatter-toggler-link .json-formatter-toggler:after{transform:rotate(90deg)}.json-formatter-row.json-formatter-open>.json-formatter-children:after{display:inline-block}.json-formatter-row.json-formatter-open>a>.json-formatter-preview-text{display:none}.json-formatter-row.json-formatter-open.json-formatter-empty:after{display:block}.json-formatter-dark.json-formatter-row{font-family:monospace}.json-formatter-dark.json-formatter-row,.json-formatter-dark.json-formatter-row a,.json-formatter-dark.json-formatter-row a:hover{color:#fff;text-decoration:none}.json-formatter-dark.json-formatter-row .json-formatter-row{margin-left:1rem}.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty{opacity:.5;margin-left:1rem}.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty:after{display:none}.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after{content:"No properties"}.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after{content:"[]"}.json-formatter-dark.json-formatter-row .json-formatter-string,.json-formatter-dark.json-formatter-row .json-formatter-stringifiable{color:#31f031;white-space:pre;word-wrap:break-word}.json-formatter-dark.json-formatter-row .json-formatter-number{color:#66c2ff}.json-formatter-dark.json-formatter-row .json-formatter-boolean{color:#ec4242}.json-formatter-dark.json-formatter-row .json-formatter-null{color:#eec97d}.json-formatter-dark.json-formatter-row .json-formatter-undefined{color:#ef8fbe}.json-formatter-dark.json-formatter-row .json-formatter-function{color:#fd48cb}.json-formatter-dark.json-formatter-row .json-formatter-date{background-color:#ffffff0d}.json-formatter-dark.json-formatter-row .json-formatter-url{color:#027bff;cursor:pointer;text-decoration:underline}.json-formatter-dark.json-formatter-row .json-formatter-bracket{color:#9494ff}.json-formatter-dark.json-formatter-row .json-formatter-key{color:#23a0db;padding-right:.2rem}.json-formatter-dark.json-formatter-row .json-formatter-toggler-link{cursor:pointer}.json-formatter-dark.json-formatter-row .json-formatter-toggler{vertical-align:middle;opacity:.6;cursor:pointer;padding-right:.2rem;font-size:.7rem;line-height:1.2rem}.json-formatter-dark.json-formatter-row .json-formatter-toggler:after{content:"►";transition:transform .1s ease-in;display:inline-block}.json-formatter-dark.json-formatter-row>a>.json-formatter-preview-text{opacity:0;font-style:italic;transition:opacity .15s ease-in}.json-formatter-dark.json-formatter-row:hover>a>.json-formatter-preview-text{opacity:.6}.json-formatter-dark.json-formatter-row.json-formatter-open>.json-formatter-toggler-link .json-formatter-toggler:after{transform:rotate(90deg)}.json-formatter-dark.json-formatter-row.json-formatter-open>.json-formatter-children:after{display:inline-block}.json-formatter-dark.json-formatter-row.json-formatter-open>a>.json-formatter-preview-text{display:none}.json-formatter-dark.json-formatter-row.json-formatter-open.json-formatter-empty:after{display:block}
