pmx-canvas 0.10.0 → 0.12.0
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.
- package/.github/extensions/pmx-canvas/extension.mjs +3 -1
- package/.github/extensions/pmx-canvas/runtime.json +1 -1
- package/.github/extensions/pmx-canvas/tools.json +688 -128
- package/CHANGELOG.md +69 -0
- package/dist/amp-plugin/pmx-canvas/LICENSE +21 -0
- package/dist/amp-plugin/pmx-canvas/THIRD_PARTY_LICENSES.txt +331 -0
- package/dist/amp-plugin/pmx-canvas/index.js +5445 -0
- package/dist/amp-plugin/pmx-canvas/runtime.json +3 -0
- package/dist/amp-plugin/pmx-canvas/shared-runtime.mjs +194 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/SKILL.md +251 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/evals/evals.json +1086 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/evals/fixtures/code-exploration/src/auth/jwt.ts +17 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/evals/fixtures/code-exploration/src/auth/login.ts +12 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/evals/fixtures/code-exploration/src/auth/middleware.ts +13 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/evals/fixtures/code-exploration/src/routes/auth.ts +13 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/evals/fixtures/investigation-board/src/handlers/users.ts +27 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/mcp.json +36 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/references/ax-html-control-surface.md +101 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/references/codex-app-adapter.md +151 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/references/excalidraw-diagram-authoring.md +150 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/references/full-reference.md +1785 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/references/github-copilot-app-adapter.md +223 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/references/html-primitives.md +139 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/references/importing-context.md +132 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/references/installing-pmx-canvas.md +251 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/references/tours-and-recording.md +111 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas/references/workbench-workflows.md +900 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas-orchestration/SKILL.md +141 -0
- package/dist/amp-plugin/pmx-canvas/skills/pmx-canvas-testing/SKILL.md +266 -0
- package/dist/amp-plugin/pmx-canvas/start-mcp.mjs +14857 -0
- package/dist/amp-plugin/pmx-canvas/tools.json +10963 -0
- package/dist/canvas/chunks/abnfDiagram-N423BO3Z-cwtsds5d.js +1 -0
- package/dist/canvas/chunks/architecture-TIHT7OUA-x63cwejs.js +1 -0
- package/dist/canvas/chunks/architectureDiagram-T3A2C74G-b4xc9tpz.js +36 -0
- package/dist/canvas/chunks/blockDiagram-VBNYF7ZC-ahp3yxxs.js +132 -0
- package/dist/canvas/chunks/c4Diagram-5PPSVZJV-nappnay7.js +10 -0
- package/dist/canvas/chunks/classDiagram-JCYQIIEL-k1j2xc1t.js +1 -0
- package/dist/canvas/chunks/classDiagram-v2-OCEON4UE-33x08xf2.js +1 -0
- package/dist/canvas/chunks/cose-bilkent-JH36ORCC-a428syda.js +1 -0
- package/dist/canvas/chunks/cynefin-VYW2F7L2-8v6jxfz8.js +1 -0
- package/dist/canvas/chunks/cynefinDiagram-MW4NZA55-nspsqebj.js +62 -0
- package/dist/canvas/chunks/dagre-VZM6K2ZE-8y6177fh.js +4 -0
- package/dist/canvas/chunks/diagram-7IWD3JNH-vym028wn.js +30 -0
- package/dist/canvas/chunks/diagram-B4RE2ZJO-jddqb8sy.js +3 -0
- package/dist/canvas/chunks/diagram-LBJQPF4R-bjwbpkrn.js +24 -0
- package/dist/canvas/chunks/diagram-Q27KOJAE-j6ph6hcx.js +24 -0
- package/dist/canvas/chunks/diagram-UB23O5K3-p09w8jej.js +41 -0
- package/dist/canvas/chunks/ebnfDiagram-BXEA7PRR-j975ycq5.js +1 -0
- package/dist/canvas/chunks/erDiagram-JOGREHBK-sxp6hjn8.js +85 -0
- package/dist/canvas/chunks/eventmodeling-45OFAUF4-xzfgn6xg.js +1 -0
- package/dist/canvas/chunks/flowDiagram-UKHOOZJN-2nsmkskb.js +1 -0
- package/dist/canvas/chunks/ganttDiagram-PKOTCBZU-4tv230y2.js +292 -0
- package/dist/canvas/chunks/gitGraph-TEB2WS4Q-macbhand.js +1 -0
- package/dist/canvas/chunks/gitGraphDiagram-DS77QQ5N-mqgmnw9g.js +106 -0
- package/dist/canvas/chunks/index-037z5dz2.js +232 -0
- package/dist/canvas/chunks/index-081n3har.js +207 -0
- package/dist/canvas/chunks/index-5n03dmb9.js +2 -0
- package/dist/canvas/chunks/index-5tv8v1hk.js +1 -0
- package/dist/canvas/chunks/index-60pgzdqe.js +157 -0
- package/dist/canvas/chunks/index-6ceya556.js +332 -0
- package/dist/canvas/chunks/index-8g1vb57n.js +2 -0
- package/dist/canvas/chunks/index-8rjes9r6.js +2 -0
- package/dist/canvas/chunks/index-9022d1n9.js +16 -0
- package/dist/canvas/chunks/index-9b02042t.js +2 -0
- package/dist/canvas/chunks/index-ap4q4vez.js +2 -0
- package/dist/canvas/chunks/index-dyp2nhd3.js +2 -0
- package/dist/canvas/chunks/index-frvta4tm.js +2 -0
- package/dist/canvas/chunks/index-gf4e0et4.js +2 -0
- package/dist/canvas/chunks/index-h9ycj8n2.js +2 -0
- package/dist/canvas/chunks/index-hj99nz1f.js +1 -0
- package/dist/canvas/chunks/index-mergmj97.js +2 -0
- package/dist/canvas/chunks/index-nwsya6dj.js +301 -0
- package/dist/canvas/chunks/index-nz8qbd1p.js +2 -0
- package/dist/canvas/chunks/index-qhfrazv3.js +2 -0
- package/dist/canvas/chunks/index-v119nznk.js +4 -0
- package/dist/canvas/chunks/index-vpt37m3d.js +89 -0
- package/dist/canvas/chunks/index-y9ma6azy.js +2 -0
- package/dist/canvas/chunks/index-zx0j3a2z.js +179 -0
- package/dist/canvas/chunks/info-DKCQHKI2-a0ykzs9z.js +1 -0
- package/dist/canvas/chunks/infoDiagram-6WML65LV-qv97qq6a.js +2 -0
- package/dist/canvas/chunks/ishikawaDiagram-WSZJBQD7-p9306gh0.js +70 -0
- package/dist/canvas/chunks/journeyDiagram-NVQOT4AX-sv67zats.js +139 -0
- package/dist/canvas/chunks/kanban-definition-27J2QSJJ-k2pfam6p.js +89 -0
- package/dist/canvas/chunks/katex-dmg8k4zm.js +257 -0
- package/dist/canvas/chunks/mermaid.core-83r0fdce.js +12 -0
- package/dist/canvas/chunks/mindmap-definition-FAOFIHXS-vg2newm1.js +96 -0
- package/dist/canvas/chunks/packet-7NZHBO7P-tqnabcdv.js +1 -0
- package/dist/canvas/chunks/pegDiagram-VL7TDLO6-k2h7zc5n.js +1 -0
- package/dist/canvas/chunks/pie-RZYD4A2V-wke6gyhe.js +1 -0
- package/dist/canvas/chunks/pieDiagram-7S7Q4E2Y-hg169p1v.js +39 -0
- package/dist/canvas/chunks/quadrantDiagram-CIZ2JOQS-bxtvsq0b.js +7 -0
- package/dist/canvas/chunks/radar-I7S5WNFK-w7ka0drw.js +1 -0
- package/dist/canvas/chunks/railroad-3IZDKUUU-y3vg318x.js +1 -0
- package/dist/canvas/chunks/railroad-abnf-AHOZXSZD-6hqvcz3c.js +1 -0
- package/dist/canvas/chunks/railroad-ebnf-EBAXGLYW-vcae260m.js +1 -0
- package/dist/canvas/chunks/railroad-peg-LSFZ7HO6-0dbyme23.js +1 -0
- package/dist/canvas/chunks/railroadDiagram-AXF67PYL-njyhcp4p.js +1 -0
- package/dist/canvas/chunks/requirementDiagram-LRYGKXZP-2z6v09gm.js +84 -0
- package/dist/canvas/chunks/sankeyDiagram-W5VNT64P-15mzam0e.js +40 -0
- package/dist/canvas/chunks/sequenceDiagram-SI44F4Z6-rbshyd2c.js +162 -0
- package/dist/canvas/chunks/sizeCapture-X5ZJPWSS-sg26xwts.js +1 -0
- package/dist/canvas/chunks/stateDiagram-OKZ733FA-6eahp98e.js +1 -0
- package/dist/canvas/chunks/stateDiagram-v2-UEYNNEHI-tty0ggn5.js +1 -0
- package/dist/canvas/chunks/swimlanes-SLNWSIFB-ze5db10t.js +1 -0
- package/dist/canvas/chunks/swimlanesDiagram-ULZ7WXOC-thze75gq.js +8 -0
- package/dist/canvas/chunks/timeline-definition-Z64GVDOM-vnp7jyy8.js +120 -0
- package/dist/canvas/chunks/treeView-QDETBFTQ-6ysffnm6.js +1 -0
- package/dist/canvas/chunks/treemap-6X3UGDF4-m3h9p066.js +1 -0
- package/dist/canvas/chunks/vennDiagram-T6HMQDX7-0qrnb7mj.js +34 -0
- package/dist/canvas/chunks/wardley-OPB4EBWU-dp37drwx.js +1 -0
- package/dist/canvas/chunks/wardleyDiagram-T6FBY63Y-8nxg8wqt.js +78 -0
- package/dist/canvas/chunks/xychartDiagram-ELKLHX3M-nj921e7s.js +7 -0
- package/dist/canvas/global.css +483 -230
- package/dist/canvas/index.js +158 -219
- package/dist/canvas/mcp-app.html +4301 -548
- package/dist/canvas/mermaid-entry.js +338 -338
- package/dist/canvas/surface-theme.css +6 -6
- package/dist/json-render/index.css +1 -1
- package/dist/json-render/index.js +49 -49
- package/dist/types/client/canvas/BarHint.d.ts +5 -3
- package/dist/types/client/canvas/BoardMoveDialog.d.ts +2 -0
- package/dist/types/client/canvas/CanvasNode.d.ts +0 -11
- package/dist/types/client/canvas/EdgeEditor.d.ts +19 -0
- package/dist/types/client/canvas/EdgeLayer.d.ts +1 -2
- package/dist/types/client/canvas/GroupNavigation.d.ts +2 -0
- package/dist/types/client/canvas/TextPrompt.d.ts +4 -0
- package/dist/types/client/canvas/auto-fit.d.ts +4 -5
- package/dist/types/client/mermaid-entry.d.ts +1 -2
- package/dist/types/client/mermaid-render.d.ts +1 -0
- package/dist/types/client/nodes/BoardNode.d.ts +1 -1
- package/dist/types/client/nodes/ExtAppFrame.d.ts +7 -90
- package/dist/types/client/nodes/McpAppNode.d.ts +1 -25
- package/dist/types/client/nodes/MermaidNode.d.ts +1 -8
- package/dist/types/client/nodes/PromptNode.d.ts +1 -0
- package/dist/types/client/nodes/ViewerFrame.d.ts +29 -0
- package/dist/types/client/nodes/ViewerHost.d.ts +6 -0
- package/dist/types/client/nodes/WorkCard.d.ts +7 -0
- package/dist/types/client/nodes/iframe-document-url.d.ts +3 -9
- package/dist/types/client/nodes/primitive-copy.d.ts +5 -0
- package/dist/types/client/nodes/use-ax-surface-bridge.d.ts +1 -0
- package/dist/types/client/nodes/use-iframe-content-height.d.ts +1 -1
- package/dist/types/client/nodes/use-surface-frame.d.ts +4 -6
- package/dist/types/client/nodes/viewer-runtime-state.d.ts +2 -1
- package/dist/types/client/state/canvas-store.d.ts +18 -1
- package/dist/types/client/state/human-store.d.ts +2 -0
- package/dist/types/client/state/intent-bridge.d.ts +5 -2
- package/dist/types/client/state/presentation.d.ts +17 -6
- package/dist/types/client/state/relation-store.d.ts +11 -0
- package/dist/types/client/types.d.ts +1 -1
- package/dist/types/json-render/catalog.d.ts +2 -2
- package/dist/types/json-render/server.d.ts +2 -1
- package/dist/types/server/agent-presence.d.ts +1 -0
- package/dist/types/server/ax-interaction.d.ts +1 -0
- package/dist/types/server/ax-state-manager.d.ts +10 -2
- package/dist/types/server/board-local.d.ts +4 -0
- package/dist/types/server/board-move.d.ts +38 -0
- package/dist/types/server/canvas-db.d.ts +12 -2
- package/dist/types/server/canvas-operations.d.ts +5 -6
- package/dist/types/server/canvas-provenance.d.ts +1 -1
- package/dist/types/server/canvas-serialization.d.ts +1 -0
- package/dist/types/server/canvas-state.d.ts +86 -20
- package/dist/types/server/card-relocation.d.ts +6 -0
- package/dist/types/server/context-reads.d.ts +3 -1
- package/dist/types/server/human-presence.d.ts +1 -1
- package/dist/types/server/index.d.ts +26 -10
- package/dist/types/server/intent-registry.d.ts +8 -4
- package/dist/types/server/knowledge-lifecycle.d.ts +4 -2
- package/dist/types/server/mutation-history.d.ts +7 -5
- package/dist/types/server/operations/ops/boards.d.ts +0 -1
- package/dist/types/server/operations/registry.d.ts +2 -0
- package/dist/types/server/tour-control.d.ts +13 -3
- package/dist/types/server/trace-manager.d.ts +1 -0
- package/dist/types/shared/ax-kinds.d.ts +6 -0
- package/dist/types/shared/ax-surface-protocol.d.ts +8 -9
- package/dist/types/shared/human-presence.d.ts +1 -0
- package/dist/types/shared/lifecycle-status.d.ts +2 -0
- package/dist/types/shared/tour.d.ts +8 -0
- package/docs/RELEASE.md +21 -14
- package/docs/agent-plugin.md +16 -2
- package/docs/amp-plugin.md +271 -0
- package/docs/cli.md +42 -3
- package/docs/design/Chrome.dc.html +32 -6
- package/docs/design/GuestName.dc.html +50 -0
- package/docs/design/PluginLogo.svg +7 -0
- package/docs/design/Types1.dc.html +3 -2
- package/docs/design/Types2.dc.html +1 -1
- package/docs/design/Types3.dc.html +1 -1
- package/docs/design/WorkCards.dc.html +39 -0
- package/docs/design/Zoom.dc.html +37 -60
- package/docs/design/canvas.json +17 -1
- package/docs/design/plugin-logo.png +0 -0
- package/docs/design.md +280 -12
- package/docs/evals/agents-md-sections.md +38 -0
- package/docs/http-api.md +179 -11
- package/docs/mcp.md +69 -9
- package/docs/node-types.md +109 -4
- package/docs/plans/plan-009-tech-debt-backlog.md +3 -3
- package/docs/plans/plan-019-post-0.9-roadmap.md +327 -31
- package/docs/plans/plan-020-wave-5-work-planning.md +553 -0
- package/docs/product-vision-2026-09.md +42 -17
- package/docs/sdk.md +18 -0
- package/package.json +7 -4
- package/plugins/pmx-canvas/assets/preview.png +0 -0
- package/plugins/pmx-canvas/com.github.copilot/extensions/pmx-canvas/extension.mjs +3 -1
- package/plugins/pmx-canvas/com.github.copilot/extensions/pmx-canvas/runtime.json +1 -1
- package/plugins/pmx-canvas/plugin.json +2 -2
- package/plugins/pmx-canvas/runtime.json +1 -1
- package/plugins/pmx-canvas/tools.json +688 -128
- package/skills/data-analysis/SKILL.md +13 -26
- package/skills/frontend-design/LICENSE.txt +177 -0
- package/skills/frontend-design/SKILL.md +3 -0
- package/skills/pmx-canvas/SKILL.md +232 -849
- package/skills/pmx-canvas/evals/evals.json +26 -3
- package/skills/pmx-canvas/references/full-reference.md +89 -24
- package/skills/pmx-canvas/references/html-primitives.md +7 -0
- package/skills/pmx-canvas/references/installing-pmx-canvas.md +6 -6
- package/skills/pmx-canvas/references/tours-and-recording.md +29 -2
- package/skills/pmx-canvas/references/workbench-workflows.md +900 -0
- package/skills/pmx-canvas-testing/SKILL.md +7 -5
- package/skills/published-consumer-e2e/SKILL.md +25 -8
- package/skills/published-consumer-e2e/scripts/run-published-consumer-e2e.sh +51 -77
- package/skills/web-artifacts-builder/LICENSE.txt +202 -0
- package/skills/web-artifacts-builder/SKILL.md +6 -0
- package/skills/web-artifacts-builder/scripts/init-artifact.sh +2 -2
- package/src/cli/commands/apps.ts +1 -0
- package/src/cli/commands/boards.ts +30 -0
- package/src/client/App.tsx +20 -4
- package/src/client/canvas/AttentionHistory.tsx +10 -2
- package/src/client/canvas/BarHint.tsx +6 -3
- package/src/client/canvas/BoardMoveDialog.tsx +225 -0
- package/src/client/canvas/CanvasNode.tsx +79 -49
- package/src/client/canvas/CanvasViewport.tsx +42 -14
- package/src/client/canvas/ContextMenu.tsx +97 -15
- package/src/client/canvas/EdgeEditor.tsx +149 -0
- package/src/client/canvas/EdgeLayer.tsx +441 -174
- package/src/client/canvas/ExpandedNodeOverlay.tsx +5 -2
- package/src/client/canvas/GroupNavigation.tsx +85 -0
- package/src/client/canvas/Presentation.tsx +53 -3
- package/src/client/canvas/RelationsPanel.tsx +9 -0
- package/src/client/canvas/SelectionBar.tsx +21 -0
- package/src/client/canvas/SessionPanel.tsx +35 -1
- package/src/client/canvas/TextPrompt.tsx +18 -1
- package/src/client/canvas/TopBar.tsx +54 -9
- package/src/client/canvas/auto-fit.ts +9 -11
- package/src/client/canvas/canvas-area.ts +2 -2
- package/src/client/canvas/use-focus-trap.ts +6 -1
- package/src/client/mermaid-entry.ts +6 -20
- package/src/client/mermaid-render.ts +39 -0
- package/src/client/nodes/AxStepControls.tsx +45 -69
- package/src/client/nodes/BoardNode.tsx +65 -9
- package/src/client/nodes/ContextNode.tsx +88 -396
- package/src/client/nodes/ExtAppFrame.tsx +302 -1465
- package/src/client/nodes/FileNode.tsx +92 -81
- package/src/client/nodes/HtmlNode.tsx +8 -36
- package/src/client/nodes/LedgerNode.tsx +31 -17
- package/src/client/nodes/MarkdownNode.tsx +14 -24
- package/src/client/nodes/McpAppNode.tsx +48 -154
- package/src/client/nodes/MermaidNode.tsx +80 -69
- package/src/client/nodes/PromptNode.tsx +44 -17
- package/src/client/nodes/ResponseNode.tsx +8 -6
- package/src/client/nodes/StatusNode.tsx +34 -7
- package/src/client/nodes/StatusSummary.tsx +16 -3
- package/src/client/nodes/TraceNode.tsx +8 -8
- package/src/client/nodes/ViewerFrame.tsx +273 -0
- package/src/client/nodes/ViewerHost.tsx +41 -0
- package/src/client/nodes/WebpageNode.tsx +22 -24
- package/src/client/nodes/WorkCard.tsx +175 -0
- package/src/client/nodes/iframe-document-url.ts +20 -27
- package/src/client/nodes/primitive-copy.ts +97 -0
- package/src/client/nodes/use-ax-surface-bridge.ts +18 -14
- package/src/client/nodes/use-iframe-content-height.ts +34 -10
- package/src/client/nodes/use-surface-frame.ts +22 -11
- package/src/client/nodes/viewer-runtime-state.ts +41 -35
- package/src/client/state/attention-bridge.ts +5 -0
- package/src/client/state/attention-store.ts +1 -0
- package/src/client/state/canvas-store.ts +202 -26
- package/src/client/state/human-store.ts +22 -2
- package/src/client/state/intent-bridge.ts +20 -5
- package/src/client/state/presentation.ts +135 -15
- package/src/client/state/relation-store.ts +127 -1
- package/src/client/state/sse-bridge.ts +18 -19
- package/src/client/theme/global.css +483 -230
- package/src/client/theme/surface-theme.css +6 -6
- package/src/client/types.ts +1 -0
- package/src/json-render/charts/tufte-components.tsx +44 -2
- package/src/json-render/renderer/index.css +62 -2
- package/src/json-render/renderer/index.tsx +31 -7
- package/src/json-render/server.ts +3 -2
- package/src/mcp/server.ts +13 -3
- package/src/server/agent-presence.ts +43 -23
- package/src/server/ax-flow-loop.ts +6 -0
- package/src/server/ax-gate-ttl.ts +8 -1
- package/src/server/ax-interaction.ts +16 -10
- package/src/server/ax-state-manager.ts +17 -4
- package/src/server/ax-wait.ts +20 -6
- package/src/server/board-export.ts +54 -30
- package/src/server/board-local.ts +20 -0
- package/src/server/board-move.ts +297 -0
- package/src/server/canvas-db.ts +249 -158
- package/src/server/canvas-geometry.ts +1 -0
- package/src/server/canvas-operations.ts +139 -109
- package/src/server/canvas-schema.ts +21 -0
- package/src/server/canvas-serialization.ts +2 -0
- package/src/server/canvas-state.ts +797 -159
- package/src/server/card-relocation.ts +53 -0
- package/src/server/code-graph.ts +4 -3
- package/src/server/context-reads.ts +83 -55
- package/src/server/demo-state.json +140 -114
- package/src/server/file-watcher.ts +30 -10
- package/src/server/html-primitives.ts +3 -9
- package/src/server/html-surface.ts +8 -0
- package/src/server/human-presence.ts +18 -5
- package/src/server/index.ts +54 -24
- package/src/server/intent-registry.ts +43 -5
- package/src/server/knowledge-lifecycle.ts +32 -9
- package/src/server/lifecycle-status.ts +29 -1
- package/src/server/mcp-app-runtime.ts +26 -7
- package/src/server/mutation-history.ts +37 -8
- package/src/server/operations/composites.ts +6 -3
- package/src/server/operations/mcp-contracts.ts +32 -2
- package/src/server/operations/mcp.ts +36 -9
- package/src/server/operations/ops/annotation.ts +22 -1
- package/src/server/operations/ops/ax-await.ts +1 -0
- package/src/server/operations/ops/ax-timeline.ts +28 -2
- package/src/server/operations/ops/batch.ts +25 -11
- package/src/server/operations/ops/boards.ts +45 -6
- package/src/server/operations/ops/nodes.ts +70 -0
- package/src/server/operations/ops/query.ts +32 -3
- package/src/server/operations/ops/snapshots.ts +1 -0
- package/src/server/operations/ops/viewport.ts +11 -9
- package/src/server/operations/registry.ts +49 -4
- package/src/server/server.ts +69 -75
- package/src/server/tour-control.ts +97 -12
- package/src/server/trace-manager.ts +4 -0
- package/src/server/web-artifacts/scripts/init-artifact.sh +2 -2
- package/src/shared/agent-context.ts +7 -1
- package/src/shared/auto-arrange.ts +5 -4
- package/src/shared/ax-kinds.ts +13 -0
- package/src/shared/ax-surface-protocol.ts +20 -9
- package/src/shared/content-height-reporter.ts +4 -3
- package/src/shared/human-presence.ts +1 -0
- package/src/shared/lifecycle-status.ts +2 -0
- package/src/shared/tour.ts +8 -0
|
@@ -84,12 +84,12 @@
|
|
|
84
84
|
/* ── Core palette (dark · ink + cyan) ────────────────────── */
|
|
85
85
|
--c-bg: #081524;
|
|
86
86
|
--c-panel: #0f1d31;
|
|
87
|
-
--c-panel-soft: #
|
|
87
|
+
--c-panel-soft: #13243b;
|
|
88
88
|
--c-line: #1b2c44;
|
|
89
89
|
--c-text: #e6eef7;
|
|
90
|
-
--c-text-soft: #
|
|
90
|
+
--c-text-soft: #b9c6d6;
|
|
91
91
|
--c-muted: #8ea3bd;
|
|
92
|
-
--c-dim: #
|
|
92
|
+
--c-dim: #6b7d94;
|
|
93
93
|
--c-accent: #4BBCFF;
|
|
94
94
|
--c-ok: #2fd07f;
|
|
95
95
|
--c-warn: #f4c542;
|
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
--c-rel-informs: #E58FB0;
|
|
107
107
|
--c-rel-related: #8ea3bd;
|
|
108
108
|
--c-input-bg: #0a1729;
|
|
109
|
-
--c-dot-grid: rgba(
|
|
109
|
+
--c-dot-grid: rgba(142, 163, 189, 0.14);
|
|
110
110
|
--c-panel-overlay: rgba(8, 21, 36, 0.6);
|
|
111
111
|
--c-panel-glass: rgba(15, 29, 49, 0.92);
|
|
112
112
|
--c-shadow: rgba(0, 0, 0, 0.3);
|
|
@@ -148,19 +148,19 @@
|
|
|
148
148
|
}
|
|
149
149
|
|
|
150
150
|
.board-node, .md-card-preview { display: flex; flex-direction: column; height: 100%; min-height: 0; }
|
|
151
|
+
.board-node > .home-thumb { height: 96px; flex-shrink: 0; }
|
|
152
|
+
.board-node-missing { display: grid; place-items: center; min-height: 72px; margin: 10px 10px 0; border: 1px dashed var(--c-line); border-radius: var(--r-control); color: var(--c-muted); font-size: var(--fs-meta); }
|
|
153
|
+
.board-node-relink { max-width: 100%; margin-top: 8px; padding: 4px 8px; color: var(--c-text); background: var(--c-panel); border: 1px solid var(--c-line); border-radius: var(--r-control); font: var(--fs-ui) var(--font-ui); }
|
|
151
154
|
.board-node-content { flex: 1; min-height: 0; overflow: auto; padding: 16px; overflow-wrap: anywhere; }
|
|
152
|
-
.board-node-label { color: var(--c-dim); font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; margin-bottom: 8px; }
|
|
153
155
|
.board-node-title { display: block; font-size: 17px; line-height: 1.35; margin-bottom: 6px; }
|
|
154
156
|
.board-node-meta { color: var(--c-dim); font-size: 11px; line-height: 1.5; }
|
|
155
157
|
.board-node-summary { color: var(--c-text-soft); font-size: 13px; line-height: 1.6; margin: 14px 0; }
|
|
156
158
|
.board-node-open { display: flex; justify-content: space-between; align-items: center; flex-shrink: 0; width: 100%; padding: 10px 16px; border: 0; border-top: 1px solid var(--c-line); background: var(--c-panel); color: var(--c-accent); font: 500 12px var(--font-ui); text-align: left; cursor: pointer; }
|
|
157
|
-
.board-node-open:hover
|
|
158
|
-
.board-node-open:disabled { color: var(--c-dim); cursor: default; }
|
|
159
|
+
.board-node-open:hover { background: color-mix(in srgb, var(--c-accent) 8%, transparent); }
|
|
159
160
|
.md-card-content { flex: 1; min-height: 0; overflow: auto; }
|
|
160
161
|
.md-card-actions { display: flex; align-items: center; gap: 8px; flex-shrink: 0; border-top: 1px solid var(--c-line); padding: 6px 36px 6px 8px; background: var(--c-panel); }
|
|
161
|
-
.md-card-actions button { border: 1px solid transparent; border-radius: var(--
|
|
162
|
+
.md-card-actions button { border: 1px solid transparent; border-radius: var(--r-control); background: transparent; color: var(--c-dim); padding: 4px 8px; font: 500 var(--fs-meta) var(--font-ui); cursor: pointer; }
|
|
162
163
|
.md-card-actions button:hover { color: var(--c-text); background: color-mix(in srgb, var(--c-accent) 8%, transparent); }
|
|
163
|
-
.md-card-actions .md-readme-btn[aria-pressed="true"] { color: var(--c-accent); background: color-mix(in srgb, var(--c-accent) 8%, transparent); border-color: color-mix(in srgb, var(--c-accent) 25%, transparent); }
|
|
164
164
|
.md-card-edit { margin-left: auto; }
|
|
165
165
|
.board-node-open:focus-visible, .md-card-actions button:focus-visible { outline: 2px solid var(--c-accent); outline-offset: -2px; }
|
|
166
166
|
.canvas-node[data-node-type="markdown"] .node-body,
|
|
@@ -599,30 +599,62 @@ body,
|
|
|
599
599
|
display: contents;
|
|
600
600
|
}
|
|
601
601
|
|
|
602
|
+
.node-header-meta {
|
|
603
|
+
color: var(--c-dim);
|
|
604
|
+
font-size: var(--fs-meta);
|
|
605
|
+
white-space: nowrap;
|
|
606
|
+
overflow: hidden;
|
|
607
|
+
text-overflow: ellipsis;
|
|
608
|
+
max-width: 20%;
|
|
609
|
+
}
|
|
610
|
+
|
|
611
|
+
.node-readme-mark {
|
|
612
|
+
flex-shrink: 0;
|
|
613
|
+
color: var(--c-muted);
|
|
614
|
+
font-size: var(--fs-meta);
|
|
615
|
+
white-space: nowrap;
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
/* Chrome §9: the markdown title becomes the section heading. */
|
|
619
|
+
.canvas-node.heading-node {
|
|
620
|
+
background: transparent;
|
|
621
|
+
border-color: transparent;
|
|
622
|
+
box-shadow: none;
|
|
623
|
+
}
|
|
624
|
+
.canvas-node.heading-node .node-titlebar {
|
|
625
|
+
border: 0;
|
|
626
|
+
padding: 8px 16px 0;
|
|
627
|
+
background: transparent;
|
|
628
|
+
}
|
|
629
|
+
.canvas-node.heading-node .node-title {
|
|
630
|
+
font-size: var(--fs-heading);
|
|
631
|
+
line-height: 28px;
|
|
632
|
+
letter-spacing: -0.01em;
|
|
633
|
+
}
|
|
634
|
+
.canvas-node.heading-node .node-type-icon { display: none; }
|
|
635
|
+
.heading-node:not(:hover):not(:focus-within) .node-controls { visibility: hidden; }
|
|
636
|
+
.heading-node:not(:hover):not(:focus-within) .node-resize-handle { visibility: hidden; }
|
|
637
|
+
.canvas-node.heading-node .node-body { padding: 0 16px 8px; color: var(--c-muted); }
|
|
638
|
+
|
|
602
639
|
.canvas-node:hover {
|
|
603
|
-
box-shadow:
|
|
640
|
+
box-shadow: var(--e-2);
|
|
604
641
|
}
|
|
605
642
|
|
|
606
643
|
.canvas-node.active {
|
|
607
644
|
border-color: var(--c-accent);
|
|
608
|
-
box-shadow: 0 0 0 1px var(--c-accent),
|
|
645
|
+
box-shadow: 0 0 0 1px var(--c-accent), var(--e-1);
|
|
609
646
|
}
|
|
610
647
|
|
|
611
648
|
.canvas-node.neighbor {
|
|
612
649
|
border-color: color-mix(in srgb, var(--c-accent) 40%, transparent);
|
|
613
|
-
box-shadow:
|
|
650
|
+
box-shadow: var(--e-1);
|
|
614
651
|
transition: border-color 0.2s, box-shadow 0.2s, opacity 0.15s ease;
|
|
615
652
|
}
|
|
616
653
|
|
|
617
654
|
/* Spatial search highlighting — canvas lights up as you type in Cmd+K */
|
|
618
655
|
.canvas-node.search-match {
|
|
619
656
|
border-color: var(--c-accent);
|
|
620
|
-
box-shadow: 0 0 0 2px var(--c-accent),
|
|
621
|
-
animation: search-pulse 1.5s ease-in-out infinite;
|
|
622
|
-
}
|
|
623
|
-
@keyframes search-pulse {
|
|
624
|
-
0%, 100% { box-shadow: 0 0 0 2px var(--c-accent), 0 0 20px color-mix(in srgb, var(--c-accent) 30%, transparent), 0 0 40px color-mix(in srgb, var(--c-accent) 15%, transparent); }
|
|
625
|
-
50% { box-shadow: 0 0 0 2px var(--c-accent), 0 0 30px color-mix(in srgb, var(--c-accent) 40%, transparent), 0 0 60px color-mix(in srgb, var(--c-accent) 25%, transparent); }
|
|
657
|
+
box-shadow: 0 0 0 2px var(--c-accent), var(--e-1);
|
|
626
658
|
}
|
|
627
659
|
.canvas-node.search-dimmed {
|
|
628
660
|
opacity: 0.25;
|
|
@@ -687,9 +719,9 @@ body,
|
|
|
687
719
|
.canvas-node .node-titlebar {
|
|
688
720
|
display: flex;
|
|
689
721
|
align-items: center;
|
|
690
|
-
gap:
|
|
691
|
-
padding:
|
|
692
|
-
background:
|
|
722
|
+
gap: 8px;
|
|
723
|
+
padding: 7px 12px;
|
|
724
|
+
background: transparent;
|
|
693
725
|
border-bottom: 1px solid var(--c-line);
|
|
694
726
|
cursor: grab;
|
|
695
727
|
user-select: none;
|
|
@@ -701,9 +733,10 @@ body,
|
|
|
701
733
|
}
|
|
702
734
|
|
|
703
735
|
.canvas-node .node-title {
|
|
704
|
-
font-size: calc(12px * var(--node-
|
|
736
|
+
font-size: calc(12px * var(--node-title-scale, 1));
|
|
737
|
+
line-height: 22px;
|
|
705
738
|
font-weight: 600;
|
|
706
|
-
color: var(--c-text
|
|
739
|
+
color: var(--c-text);
|
|
707
740
|
white-space: nowrap;
|
|
708
741
|
overflow: hidden;
|
|
709
742
|
text-overflow: ellipsis;
|
|
@@ -718,16 +751,16 @@ body,
|
|
|
718
751
|
display: inline-flex;
|
|
719
752
|
align-items: center;
|
|
720
753
|
justify-content: center;
|
|
721
|
-
width:
|
|
722
|
-
height:
|
|
754
|
+
width: 14px;
|
|
755
|
+
height: 14px;
|
|
723
756
|
color: var(--c-muted);
|
|
724
757
|
flex-shrink: 0;
|
|
725
758
|
}
|
|
726
759
|
|
|
727
760
|
.canvas-node .node-type-badge {
|
|
728
|
-
font-size:
|
|
729
|
-
padding:
|
|
730
|
-
border-radius:
|
|
761
|
+
font-size: 10px;
|
|
762
|
+
padding: 1px 6px;
|
|
763
|
+
border-radius: 4px;
|
|
731
764
|
background: color-mix(in srgb, var(--c-accent) 12%, transparent);
|
|
732
765
|
color: var(--c-accent);
|
|
733
766
|
text-transform: uppercase;
|
|
@@ -736,16 +769,12 @@ body,
|
|
|
736
769
|
}
|
|
737
770
|
|
|
738
771
|
.canvas-node .node-ax-status {
|
|
739
|
-
/*
|
|
740
|
-
the
|
|
741
|
-
max-width: 11ch;
|
|
742
|
-
overflow: hidden;
|
|
743
|
-
text-overflow: ellipsis;
|
|
772
|
+
/* The status is a complete word, never an ellipsis: the title is the part of
|
|
773
|
+
the bar that gives way (HeaderMarks keeps it its minimum width). */
|
|
744
774
|
white-space: nowrap;
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
border-radius: calc(4px * var(--node-chrome-scale, 1));
|
|
775
|
+
font-size: 9px;
|
|
776
|
+
padding: 1px 6px;
|
|
777
|
+
border-radius: 4px;
|
|
749
778
|
background: var(--c-panel-overlay);
|
|
750
779
|
color: var(--c-muted);
|
|
751
780
|
text-transform: uppercase;
|
|
@@ -768,7 +797,7 @@ body,
|
|
|
768
797
|
.canvas-node .node-controls {
|
|
769
798
|
display: flex;
|
|
770
799
|
align-items: center;
|
|
771
|
-
gap:
|
|
800
|
+
gap: 4px;
|
|
772
801
|
flex-shrink: 0;
|
|
773
802
|
}
|
|
774
803
|
|
|
@@ -780,12 +809,12 @@ body,
|
|
|
780
809
|
display: inline-flex;
|
|
781
810
|
align-items: center;
|
|
782
811
|
justify-content: center;
|
|
783
|
-
min-width:
|
|
784
|
-
min-height:
|
|
785
|
-
padding:
|
|
786
|
-
font-size:
|
|
812
|
+
min-width: 22px;
|
|
813
|
+
min-height: 22px;
|
|
814
|
+
padding: 2px 4px;
|
|
815
|
+
font-size: 14px;
|
|
787
816
|
line-height: 1;
|
|
788
|
-
border-radius:
|
|
817
|
+
border-radius: 3px;
|
|
789
818
|
}
|
|
790
819
|
|
|
791
820
|
.canvas-node .node-controls button svg {
|
|
@@ -815,11 +844,36 @@ body,
|
|
|
815
844
|
overflow: auto;
|
|
816
845
|
padding: 10px 14px;
|
|
817
846
|
min-height: 0;
|
|
818
|
-
font-size:
|
|
847
|
+
font-size: var(--fs-ui);
|
|
819
848
|
line-height: 1.6;
|
|
820
849
|
color: var(--c-text-soft);
|
|
821
850
|
}
|
|
822
851
|
|
|
852
|
+
/* In-card editing is view state, never a persisted resize. */
|
|
853
|
+
.canvas-node:has(.work-card-editor) { height: auto !important; }
|
|
854
|
+
.canvas-node:has(.work-card-editor) .node-body { flex: none; overflow: visible; }
|
|
855
|
+
.work-card { display: flex; flex-direction: column; gap: 12px; }
|
|
856
|
+
.work-card-state { color: var(--c-text); font-weight: 600; }
|
|
857
|
+
.work-card-blocked .work-card-state, .work-card-state.work-card-blocked, .work-card-error { color: var(--c-warn); }
|
|
858
|
+
.work-card-done .work-card-state, .work-card-state.work-card-done { color: var(--c-ok); }
|
|
859
|
+
.work-card-cancelled .work-card-state, .work-card-state.work-card-cancelled { color: var(--c-muted); }
|
|
860
|
+
.work-card-detail { white-space: pre-wrap; overflow-wrap: anywhere; }
|
|
861
|
+
.work-card-live { color: var(--c-muted); font-size: var(--fs-meta); overflow-wrap: anywhere; }
|
|
862
|
+
.work-card-progress { color: var(--c-muted); font-size: var(--fs-meta); }
|
|
863
|
+
.work-card footer, .work-card-editor footer { display: flex; justify-content: flex-end; gap: 8px; margin-top: 8px; }
|
|
864
|
+
.work-card button, .work-card-editor button, .work-card-editor input, .work-card-editor select, .work-card-editor textarea {
|
|
865
|
+
font: inherit; color: var(--c-text); background: var(--c-input-bg); border: 1px solid var(--c-line); border-radius: var(--r-control); padding: 8px;
|
|
866
|
+
}
|
|
867
|
+
.work-card button, .work-card-editor button { cursor: pointer; }
|
|
868
|
+
.work-card button:hover, .work-card-editor button:hover { border-color: var(--c-text-soft); }
|
|
869
|
+
.work-card-editor fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
|
|
870
|
+
.work-card-editor label { display: flex; flex-direction: column; gap: 4px; margin-bottom: 12px; }
|
|
871
|
+
.work-card-editor input, .work-card-editor select, .work-card-editor textarea { width: 100%; box-sizing: border-box; }
|
|
872
|
+
.work-card-editor textarea { min-height: 80px; resize: vertical; }
|
|
873
|
+
.work-card-editor .work-card-save { background: var(--c-accent); color: var(--c-contrast-fg); }
|
|
874
|
+
.work-card-editor :disabled { cursor: wait; opacity: 0.65; }
|
|
875
|
+
.work-card-editor :focus-visible, .work-card button:focus-visible { outline: 2px solid var(--c-accent); outline-offset: 2px; }
|
|
876
|
+
|
|
823
877
|
/* Markdown rendered content inside nodes */
|
|
824
878
|
.canvas-node .node-body h1,
|
|
825
879
|
.canvas-node .node-body h2,
|
|
@@ -1268,6 +1322,18 @@ body,
|
|
|
1268
1322
|
border-color: var(--c-line);
|
|
1269
1323
|
}
|
|
1270
1324
|
|
|
1325
|
+
.human-name-control { order: 4; flex-shrink: 0; }
|
|
1326
|
+
.human-name-button {
|
|
1327
|
+
width: 28px;
|
|
1328
|
+
height: 28px;
|
|
1329
|
+
padding: 0;
|
|
1330
|
+
border-color: var(--c-line);
|
|
1331
|
+
border-radius: var(--r-pill);
|
|
1332
|
+
background: var(--c-panel-soft);
|
|
1333
|
+
color: var(--c-text-soft);
|
|
1334
|
+
font: 600 12px var(--font-ui);
|
|
1335
|
+
}
|
|
1336
|
+
|
|
1271
1337
|
.top-bar-zoom-label {
|
|
1272
1338
|
min-width: 38px;
|
|
1273
1339
|
text-align: center;
|
|
@@ -1420,7 +1486,7 @@ body,
|
|
|
1420
1486
|
outline-offset: 2px;
|
|
1421
1487
|
}
|
|
1422
1488
|
.agent-chip-who {
|
|
1423
|
-
font:
|
|
1489
|
+
font: var(--fs-meta) var(--font-code);
|
|
1424
1490
|
font-weight: 400;
|
|
1425
1491
|
color: var(--c-muted);
|
|
1426
1492
|
white-space: nowrap;
|
|
@@ -1454,7 +1520,7 @@ body,
|
|
|
1454
1520
|
transform-origin: top left;
|
|
1455
1521
|
}
|
|
1456
1522
|
.agent-cursor.is-worker .agent-cursor-chip {
|
|
1457
|
-
font-size:
|
|
1523
|
+
font-size: var(--fs-meta);
|
|
1458
1524
|
padding: 1px 6px;
|
|
1459
1525
|
}
|
|
1460
1526
|
/* Parked idle cursors leave the board (user feedback, 0.5.1 cycle): with many agents
|
|
@@ -1477,7 +1543,7 @@ body,
|
|
|
1477
1543
|
border-radius: 8px;
|
|
1478
1544
|
background: color-mix(in srgb, var(--c-accent) 16%, transparent);
|
|
1479
1545
|
color: var(--c-accent);
|
|
1480
|
-
font-size:
|
|
1546
|
+
font-size: var(--fs-meta);
|
|
1481
1547
|
font-weight: 700;
|
|
1482
1548
|
letter-spacing: 0.04em;
|
|
1483
1549
|
white-space: nowrap;
|
|
@@ -1601,10 +1667,10 @@ body,
|
|
|
1601
1667
|
border: 1px solid color-mix(in srgb, var(--presence-color) 35%, transparent);
|
|
1602
1668
|
background: color-mix(in srgb, var(--c-panel) 92%, var(--presence-color) 8%);
|
|
1603
1669
|
color: var(--presence-color);
|
|
1604
|
-
font-size:
|
|
1670
|
+
font-size: var(--fs-meta);
|
|
1605
1671
|
font-weight: 600;
|
|
1606
1672
|
white-space: nowrap;
|
|
1607
|
-
box-shadow:
|
|
1673
|
+
box-shadow: var(--e-2);
|
|
1608
1674
|
}
|
|
1609
1675
|
.agent-cursor-dot {
|
|
1610
1676
|
width: 6px;
|
|
@@ -1617,7 +1683,7 @@ body,
|
|
|
1617
1683
|
animation: presence-pulse 1.4s ease-in-out infinite;
|
|
1618
1684
|
}
|
|
1619
1685
|
.agent-cursor-who {
|
|
1620
|
-
font:
|
|
1686
|
+
font: var(--fs-meta) var(--font-code);
|
|
1621
1687
|
font-weight: 400;
|
|
1622
1688
|
color: var(--c-muted);
|
|
1623
1689
|
}
|
|
@@ -1673,7 +1739,7 @@ body,
|
|
|
1673
1739
|
}
|
|
1674
1740
|
.session-collapsed-label {
|
|
1675
1741
|
writing-mode: vertical-rl;
|
|
1676
|
-
font-size:
|
|
1742
|
+
font-size: var(--fs-meta);
|
|
1677
1743
|
font-weight: 600;
|
|
1678
1744
|
letter-spacing: 0.08em;
|
|
1679
1745
|
text-transform: uppercase;
|
|
@@ -1684,7 +1750,7 @@ body,
|
|
|
1684
1750
|
flex-direction: column;
|
|
1685
1751
|
align-items: center;
|
|
1686
1752
|
gap: 4px;
|
|
1687
|
-
font:
|
|
1753
|
+
font: var(--fs-meta) var(--font-code);
|
|
1688
1754
|
color: var(--c-dim);
|
|
1689
1755
|
}
|
|
1690
1756
|
.session-collapsed-live .session-live-dot {
|
|
@@ -1712,7 +1778,7 @@ body,
|
|
|
1712
1778
|
display: inline-flex;
|
|
1713
1779
|
align-items: center;
|
|
1714
1780
|
gap: 5px;
|
|
1715
|
-
font:
|
|
1781
|
+
font: var(--fs-meta) var(--font-code);
|
|
1716
1782
|
color: var(--c-muted);
|
|
1717
1783
|
}
|
|
1718
1784
|
.session-live.phase-thinking {
|
|
@@ -1765,14 +1831,14 @@ body,
|
|
|
1765
1831
|
}
|
|
1766
1832
|
.session-section-title {
|
|
1767
1833
|
margin: 0 0 8px;
|
|
1768
|
-
font-size:
|
|
1834
|
+
font-size: var(--fs-meta);
|
|
1769
1835
|
font-weight: 700;
|
|
1770
1836
|
letter-spacing: 0.08em;
|
|
1771
1837
|
text-transform: uppercase;
|
|
1772
1838
|
color: var(--c-dim);
|
|
1773
1839
|
}
|
|
1774
1840
|
.session-empty {
|
|
1775
|
-
font-size:
|
|
1841
|
+
font-size: var(--fs-meta);
|
|
1776
1842
|
line-height: 1.5;
|
|
1777
1843
|
color: var(--c-dim);
|
|
1778
1844
|
}
|
|
@@ -1823,6 +1889,19 @@ body,
|
|
|
1823
1889
|
flex: 1;
|
|
1824
1890
|
min-width: 0;
|
|
1825
1891
|
}
|
|
1892
|
+
.session-show-work {
|
|
1893
|
+
margin-top: 8px;
|
|
1894
|
+
padding: 4px 8px;
|
|
1895
|
+
font: inherit;
|
|
1896
|
+
color: var(--c-text);
|
|
1897
|
+
background: var(--c-input-bg);
|
|
1898
|
+
border: 1px solid var(--c-line);
|
|
1899
|
+
border-radius: var(--r-control);
|
|
1900
|
+
cursor: pointer;
|
|
1901
|
+
}
|
|
1902
|
+
.session-show-work:hover { border-color: var(--c-text-soft); }
|
|
1903
|
+
.session-show-work:focus-visible { outline: 2px solid var(--c-accent); outline-offset: 2px; }
|
|
1904
|
+
.session-show-work:disabled { cursor: wait; opacity: 0.65; }
|
|
1826
1905
|
.session-item-title {
|
|
1827
1906
|
display: block;
|
|
1828
1907
|
width: 100%;
|
|
@@ -1846,12 +1925,12 @@ body,
|
|
|
1846
1925
|
}
|
|
1847
1926
|
.session-item-detail {
|
|
1848
1927
|
margin-top: 2px;
|
|
1849
|
-
font-size:
|
|
1928
|
+
font-size: var(--fs-meta);
|
|
1850
1929
|
line-height: 1.45;
|
|
1851
1930
|
color: var(--c-muted);
|
|
1852
1931
|
}
|
|
1853
1932
|
.session-item-status {
|
|
1854
|
-
font-size:
|
|
1933
|
+
font-size: var(--fs-meta);
|
|
1855
1934
|
font-weight: 700;
|
|
1856
1935
|
letter-spacing: 0.06em;
|
|
1857
1936
|
text-transform: uppercase;
|
|
@@ -1860,7 +1939,7 @@ body,
|
|
|
1860
1939
|
margin-top: 3px;
|
|
1861
1940
|
}
|
|
1862
1941
|
.session-item-time {
|
|
1863
|
-
font:
|
|
1942
|
+
font: var(--fs-meta) var(--font-code);
|
|
1864
1943
|
color: var(--c-dim);
|
|
1865
1944
|
flex-shrink: 0;
|
|
1866
1945
|
margin-top: 4px;
|
|
@@ -1871,7 +1950,7 @@ body,
|
|
|
1871
1950
|
}
|
|
1872
1951
|
.session-gate-ttl {
|
|
1873
1952
|
margin-top: 4px;
|
|
1874
|
-
font:
|
|
1953
|
+
font: var(--fs-meta) var(--font-code);
|
|
1875
1954
|
color: var(--c-warn);
|
|
1876
1955
|
}
|
|
1877
1956
|
.session-gate-held {
|
|
@@ -1933,7 +2012,7 @@ body,
|
|
|
1933
2012
|
display: inline-flex;
|
|
1934
2013
|
align-items: center;
|
|
1935
2014
|
gap: 6px;
|
|
1936
|
-
font:
|
|
2015
|
+
font: var(--fs-meta)/1 var(--font-code);
|
|
1937
2016
|
color: var(--c-muted);
|
|
1938
2017
|
}
|
|
1939
2018
|
.session-work-dot {
|
|
@@ -2015,7 +2094,7 @@ body,
|
|
|
2015
2094
|
anchored tooltip would clip against the filter row's own scroll container. */
|
|
2016
2095
|
.session-timeline-hint {
|
|
2017
2096
|
margin: -4px 0 8px;
|
|
2018
|
-
font-size:
|
|
2097
|
+
font-size: var(--fs-meta);
|
|
2019
2098
|
line-height: 1.35;
|
|
2020
2099
|
color: var(--c-muted);
|
|
2021
2100
|
min-height: 14px;
|
|
@@ -2071,7 +2150,7 @@ body,
|
|
|
2071
2150
|
/* Row writer in its identity hue — multi-assistant boards need every row to
|
|
2072
2151
|
answer "who wrote this" without opening anything. */
|
|
2073
2152
|
.session-timeline-who {
|
|
2074
|
-
font-size:
|
|
2153
|
+
font-size: var(--fs-meta);
|
|
2075
2154
|
font-weight: 600;
|
|
2076
2155
|
color: var(--identity-color, var(--c-muted));
|
|
2077
2156
|
white-space: nowrap;
|
|
@@ -2100,11 +2179,11 @@ body,
|
|
|
2100
2179
|
}
|
|
2101
2180
|
.session-timeline-undone {
|
|
2102
2181
|
margin-top: 2px;
|
|
2103
|
-
font:
|
|
2182
|
+
font: var(--fs-meta) var(--font-code);
|
|
2104
2183
|
color: var(--c-dim);
|
|
2105
2184
|
}
|
|
2106
2185
|
.session-timeline-body {
|
|
2107
|
-
font-size:
|
|
2186
|
+
font-size: var(--fs-meta);
|
|
2108
2187
|
line-height: 1.5;
|
|
2109
2188
|
color: var(--c-text-soft);
|
|
2110
2189
|
overflow-wrap: anywhere;
|
|
@@ -2117,7 +2196,7 @@ body,
|
|
|
2117
2196
|
gap: 8px;
|
|
2118
2197
|
padding: 8px 12px 8px 16px;
|
|
2119
2198
|
border-bottom: 1px solid var(--c-line);
|
|
2120
|
-
font-size:
|
|
2199
|
+
font-size: var(--fs-meta);
|
|
2121
2200
|
color: var(--c-muted);
|
|
2122
2201
|
}
|
|
2123
2202
|
.session-scope.is-fenced {
|
|
@@ -2147,7 +2226,7 @@ body,
|
|
|
2147
2226
|
border: 1px solid var(--c-line);
|
|
2148
2227
|
background: none;
|
|
2149
2228
|
color: var(--c-muted);
|
|
2150
|
-
font-size:
|
|
2229
|
+
font-size: var(--fs-meta);
|
|
2151
2230
|
font-weight: 600;
|
|
2152
2231
|
cursor: pointer;
|
|
2153
2232
|
white-space: nowrap;
|
|
@@ -2181,7 +2260,7 @@ body,
|
|
|
2181
2260
|
border: 1px solid color-mix(in srgb, var(--c-agent) 35%, transparent);
|
|
2182
2261
|
background: color-mix(in srgb, var(--c-panel) 92%, var(--c-agent) 8%);
|
|
2183
2262
|
color: var(--c-agent);
|
|
2184
|
-
font-size:
|
|
2263
|
+
font-size: var(--fs-meta);
|
|
2185
2264
|
font-weight: 600;
|
|
2186
2265
|
letter-spacing: 0.04em;
|
|
2187
2266
|
white-space: nowrap;
|
|
@@ -2315,7 +2394,7 @@ body,
|
|
|
2315
2394
|
background: color-mix(in srgb, var(--c-pin) 25%, transparent);
|
|
2316
2395
|
}
|
|
2317
2396
|
.command-bar-chips-note {
|
|
2318
|
-
font-size:
|
|
2397
|
+
font-size: var(--fs-meta);
|
|
2319
2398
|
color: var(--c-dim);
|
|
2320
2399
|
}
|
|
2321
2400
|
.command-bar-composer {
|
|
@@ -2328,7 +2407,7 @@ body,
|
|
|
2328
2407
|
border: 1px solid var(--c-line);
|
|
2329
2408
|
background: color-mix(in srgb, var(--c-panel) 95%, transparent);
|
|
2330
2409
|
backdrop-filter: blur(16px);
|
|
2331
|
-
box-shadow:
|
|
2410
|
+
box-shadow: var(--e-2);
|
|
2332
2411
|
}
|
|
2333
2412
|
.command-bar-target {
|
|
2334
2413
|
max-width: 148px;
|
|
@@ -2448,7 +2527,7 @@ body,
|
|
|
2448
2527
|
border-radius: 50%;
|
|
2449
2528
|
border: 1.5px solid var(--c-panel-soft);
|
|
2450
2529
|
color: var(--c-bg);
|
|
2451
|
-
font-size:
|
|
2530
|
+
font-size: var(--fs-meta);
|
|
2452
2531
|
font-weight: 700;
|
|
2453
2532
|
flex-shrink: 0;
|
|
2454
2533
|
}
|
|
@@ -2482,7 +2561,7 @@ body,
|
|
|
2482
2561
|
font-weight: 600;
|
|
2483
2562
|
}
|
|
2484
2563
|
.external-indicator-ops {
|
|
2485
|
-
font:
|
|
2564
|
+
font: var(--fs-meta) var(--font-code);
|
|
2486
2565
|
color: var(--c-muted);
|
|
2487
2566
|
}
|
|
2488
2567
|
.external-indicator-dot {
|
|
@@ -2504,8 +2583,8 @@ body,
|
|
|
2504
2583
|
flex-direction: column;
|
|
2505
2584
|
background: var(--c-panel);
|
|
2506
2585
|
border: 1px solid color-mix(in srgb, var(--c-agent) 30%, transparent);
|
|
2507
|
-
border-radius:
|
|
2508
|
-
box-shadow:
|
|
2586
|
+
border-radius: var(--r-overlay);
|
|
2587
|
+
box-shadow: var(--e-2);
|
|
2509
2588
|
/* Popover-level like the rail menus: above the minimap, below the rail. */
|
|
2510
2589
|
z-index: 9999;
|
|
2511
2590
|
overflow: hidden;
|
|
@@ -2528,7 +2607,7 @@ body,
|
|
|
2528
2607
|
color: var(--c-text);
|
|
2529
2608
|
}
|
|
2530
2609
|
.activity-feed-sub {
|
|
2531
|
-
font:
|
|
2610
|
+
font: var(--fs-meta) var(--font-code);
|
|
2532
2611
|
color: var(--c-dim);
|
|
2533
2612
|
}
|
|
2534
2613
|
.activity-feed-close {
|
|
@@ -2556,7 +2635,7 @@ body,
|
|
|
2556
2635
|
border: 1px solid var(--c-line);
|
|
2557
2636
|
background: none;
|
|
2558
2637
|
color: var(--c-muted);
|
|
2559
|
-
font-size:
|
|
2638
|
+
font-size: var(--fs-meta);
|
|
2560
2639
|
font-weight: 600;
|
|
2561
2640
|
cursor: pointer;
|
|
2562
2641
|
}
|
|
@@ -2614,7 +2693,7 @@ body,
|
|
|
2614
2693
|
overflow-wrap: anywhere;
|
|
2615
2694
|
}
|
|
2616
2695
|
.activity-meta {
|
|
2617
|
-
font-size:
|
|
2696
|
+
font-size: var(--fs-meta);
|
|
2618
2697
|
line-height: 1.45;
|
|
2619
2698
|
color: var(--c-muted);
|
|
2620
2699
|
}
|
|
@@ -2633,7 +2712,7 @@ body,
|
|
|
2633
2712
|
background: none;
|
|
2634
2713
|
border: 1px solid color-mix(in srgb, var(--c-danger) 40%, transparent);
|
|
2635
2714
|
color: var(--c-danger);
|
|
2636
|
-
font-size:
|
|
2715
|
+
font-size: var(--fs-meta);
|
|
2637
2716
|
font-weight: 600;
|
|
2638
2717
|
cursor: pointer;
|
|
2639
2718
|
}
|
|
@@ -2642,7 +2721,7 @@ body,
|
|
|
2642
2721
|
}
|
|
2643
2722
|
.activity-hint,
|
|
2644
2723
|
.activity-age {
|
|
2645
|
-
font:
|
|
2724
|
+
font: var(--fs-meta) var(--font-code);
|
|
2646
2725
|
color: var(--c-dim);
|
|
2647
2726
|
flex-shrink: 0;
|
|
2648
2727
|
}
|
|
@@ -2661,7 +2740,7 @@ body,
|
|
|
2661
2740
|
}
|
|
2662
2741
|
.activity-feed-note {
|
|
2663
2742
|
flex: 1;
|
|
2664
|
-
font-size:
|
|
2743
|
+
font-size: var(--fs-meta);
|
|
2665
2744
|
color: var(--c-dim);
|
|
2666
2745
|
}
|
|
2667
2746
|
.activity-feed-link {
|
|
@@ -2669,7 +2748,7 @@ body,
|
|
|
2669
2748
|
border: none;
|
|
2670
2749
|
padding: 0;
|
|
2671
2750
|
color: var(--c-muted);
|
|
2672
|
-
font-size:
|
|
2751
|
+
font-size: var(--fs-meta);
|
|
2673
2752
|
font-weight: 600;
|
|
2674
2753
|
cursor: pointer;
|
|
2675
2754
|
}
|
|
@@ -2698,8 +2777,8 @@ body,
|
|
|
2698
2777
|
max-width: calc(100% - 48px);
|
|
2699
2778
|
background: var(--c-panel);
|
|
2700
2779
|
border: 1px solid var(--c-line);
|
|
2701
|
-
border-radius:
|
|
2702
|
-
box-shadow:
|
|
2780
|
+
border-radius: var(--r-overlay);
|
|
2781
|
+
box-shadow: var(--e-2);
|
|
2703
2782
|
z-index: 10000;
|
|
2704
2783
|
overflow: hidden;
|
|
2705
2784
|
}
|
|
@@ -2718,7 +2797,7 @@ body,
|
|
|
2718
2797
|
color: var(--c-text);
|
|
2719
2798
|
}
|
|
2720
2799
|
.writers-board {
|
|
2721
|
-
font:
|
|
2800
|
+
font: var(--fs-meta) var(--font-code);
|
|
2722
2801
|
color: var(--c-dim);
|
|
2723
2802
|
}
|
|
2724
2803
|
.writers-body {
|
|
@@ -2729,7 +2808,7 @@ body,
|
|
|
2729
2808
|
}
|
|
2730
2809
|
.writers-section {
|
|
2731
2810
|
padding: 8px 0 2px;
|
|
2732
|
-
font-size:
|
|
2811
|
+
font-size: var(--fs-meta);
|
|
2733
2812
|
font-weight: 700;
|
|
2734
2813
|
letter-spacing: 0.08em;
|
|
2735
2814
|
text-transform: uppercase;
|
|
@@ -2754,7 +2833,7 @@ body,
|
|
|
2754
2833
|
font: 11px var(--font-code);
|
|
2755
2834
|
}
|
|
2756
2835
|
.writers-config {
|
|
2757
|
-
font-size:
|
|
2836
|
+
font-size: var(--fs-meta);
|
|
2758
2837
|
font-weight: 600;
|
|
2759
2838
|
padding: 2px 8px;
|
|
2760
2839
|
border-radius: 999px;
|
|
@@ -2762,11 +2841,11 @@ body,
|
|
|
2762
2841
|
color: var(--c-agent);
|
|
2763
2842
|
}
|
|
2764
2843
|
.writers-meta {
|
|
2765
|
-
font:
|
|
2844
|
+
font: var(--fs-meta) var(--font-code);
|
|
2766
2845
|
color: var(--c-dim);
|
|
2767
2846
|
}
|
|
2768
2847
|
.writers-empty {
|
|
2769
|
-
font-size:
|
|
2848
|
+
font-size: var(--fs-meta);
|
|
2770
2849
|
color: var(--c-dim);
|
|
2771
2850
|
padding: 4px 0;
|
|
2772
2851
|
}
|
|
@@ -2780,7 +2859,7 @@ body,
|
|
|
2780
2859
|
}
|
|
2781
2860
|
.writers-note {
|
|
2782
2861
|
flex: 1;
|
|
2783
|
-
font-size:
|
|
2862
|
+
font-size: var(--fs-meta);
|
|
2784
2863
|
color: var(--c-dim);
|
|
2785
2864
|
}
|
|
2786
2865
|
.writers-done {
|
|
@@ -2803,9 +2882,9 @@ body,
|
|
|
2803
2882
|
width: 168px;
|
|
2804
2883
|
height: 112px;
|
|
2805
2884
|
border: 1px solid var(--c-line);
|
|
2806
|
-
border-radius:
|
|
2885
|
+
border-radius: var(--r-node);
|
|
2807
2886
|
overflow: hidden;
|
|
2808
|
-
box-shadow:
|
|
2887
|
+
box-shadow: var(--e-2);
|
|
2809
2888
|
background: color-mix(in srgb, var(--c-panel-soft) 94%, transparent);
|
|
2810
2889
|
backdrop-filter: blur(8px);
|
|
2811
2890
|
z-index: 60;
|
|
@@ -2820,7 +2899,7 @@ body,
|
|
|
2820
2899
|
.minimap:hover {
|
|
2821
2900
|
opacity: 1;
|
|
2822
2901
|
transform: scale(1.7);
|
|
2823
|
-
box-shadow:
|
|
2902
|
+
box-shadow: var(--e-2);
|
|
2824
2903
|
}
|
|
2825
2904
|
.minimap-node {
|
|
2826
2905
|
position: absolute;
|
|
@@ -2939,7 +3018,7 @@ body,
|
|
|
2939
3018
|
border-radius: 8px;
|
|
2940
3019
|
border: 1px solid color-mix(in srgb, var(--c-accent) 45%, transparent);
|
|
2941
3020
|
color: var(--c-accent);
|
|
2942
|
-
font-size:
|
|
3021
|
+
font-size: var(--fs-meta);
|
|
2943
3022
|
font-weight: 700;
|
|
2944
3023
|
letter-spacing: 0.06em;
|
|
2945
3024
|
text-transform: uppercase;
|
|
@@ -2973,12 +3052,12 @@ body,
|
|
|
2973
3052
|
white-space: nowrap;
|
|
2974
3053
|
}
|
|
2975
3054
|
.edge-hint-main {
|
|
2976
|
-
font-size:
|
|
3055
|
+
font-size: var(--fs-meta);
|
|
2977
3056
|
font-weight: 600;
|
|
2978
3057
|
color: var(--c-accent);
|
|
2979
3058
|
}
|
|
2980
3059
|
.edge-hint-keys {
|
|
2981
|
-
font:
|
|
3060
|
+
font: var(--fs-meta) var(--font-code);
|
|
2982
3061
|
color: var(--c-dim);
|
|
2983
3062
|
}
|
|
2984
3063
|
|
|
@@ -3010,7 +3089,7 @@ body,
|
|
|
3010
3089
|
border-radius: 999px;
|
|
3011
3090
|
background: color-mix(in srgb, var(--c-ok) 92%, transparent);
|
|
3012
3091
|
color: var(--c-bg);
|
|
3013
|
-
font-size:
|
|
3092
|
+
font-size: var(--fs-meta);
|
|
3014
3093
|
font-weight: 600;
|
|
3015
3094
|
white-space: nowrap;
|
|
3016
3095
|
}
|
|
@@ -3033,7 +3112,7 @@ body,
|
|
|
3033
3112
|
background: var(--c-panel-soft);
|
|
3034
3113
|
border: 1px solid color-mix(in srgb, var(--c-agent) 40%, transparent);
|
|
3035
3114
|
color: var(--c-agent);
|
|
3036
|
-
font-size:
|
|
3115
|
+
font-size: var(--fs-meta);
|
|
3037
3116
|
font-weight: 600;
|
|
3038
3117
|
white-space: nowrap;
|
|
3039
3118
|
}
|
|
@@ -3079,7 +3158,7 @@ body,
|
|
|
3079
3158
|
border: 1px solid var(--c-line);
|
|
3080
3159
|
background: none;
|
|
3081
3160
|
color: var(--c-muted);
|
|
3082
|
-
font-size:
|
|
3161
|
+
font-size: var(--fs-meta);
|
|
3083
3162
|
font-weight: 600;
|
|
3084
3163
|
cursor: pointer;
|
|
3085
3164
|
}
|
|
@@ -3156,7 +3235,7 @@ body,
|
|
|
3156
3235
|
gap: 2px;
|
|
3157
3236
|
}
|
|
3158
3237
|
.session-receipt-tile-label {
|
|
3159
|
-
font-size:
|
|
3238
|
+
font-size: var(--fs-meta);
|
|
3160
3239
|
color: var(--c-dim);
|
|
3161
3240
|
}
|
|
3162
3241
|
.session-receipt-tile-value {
|
|
@@ -3364,7 +3443,7 @@ body,
|
|
|
3364
3443
|
.session-receipt-note,
|
|
3365
3444
|
.session-receipt-diff {
|
|
3366
3445
|
margin-top: 10px;
|
|
3367
|
-
font-size:
|
|
3446
|
+
font-size: var(--fs-meta);
|
|
3368
3447
|
line-height: 1.5;
|
|
3369
3448
|
color: var(--c-muted);
|
|
3370
3449
|
}
|
|
@@ -3437,7 +3516,7 @@ body,
|
|
|
3437
3516
|
right: 0;
|
|
3438
3517
|
bottom: 0;
|
|
3439
3518
|
width: 312px;
|
|
3440
|
-
box-shadow: -
|
|
3519
|
+
box-shadow: var(--e-2);
|
|
3441
3520
|
}
|
|
3442
3521
|
}
|
|
3443
3522
|
|
|
@@ -3711,7 +3790,7 @@ body,
|
|
|
3711
3790
|
min-width: 0;
|
|
3712
3791
|
}
|
|
3713
3792
|
.connection-banner-meta {
|
|
3714
|
-
font:
|
|
3793
|
+
font: var(--fs-meta) var(--font-code);
|
|
3715
3794
|
color: var(--c-muted);
|
|
3716
3795
|
}
|
|
3717
3796
|
.connection-banner-progress {
|
|
@@ -3784,6 +3863,29 @@ body,
|
|
|
3784
3863
|
background: var(--c-panel);
|
|
3785
3864
|
}
|
|
3786
3865
|
|
|
3866
|
+
/* A floating hint would clip inside the scrolling menu. Keep its explanation in flow. */
|
|
3867
|
+
.top-bar-more-menu .toolbar-tooltip-anchor {
|
|
3868
|
+
display: flex;
|
|
3869
|
+
flex-direction: column;
|
|
3870
|
+
align-items: stretch;
|
|
3871
|
+
}
|
|
3872
|
+
.toolbar-menu.top-bar-more-menu .toolbar-tooltip {
|
|
3873
|
+
position: static;
|
|
3874
|
+
display: none;
|
|
3875
|
+
opacity: 1;
|
|
3876
|
+
transform: none;
|
|
3877
|
+
min-width: 0;
|
|
3878
|
+
max-width: 240px;
|
|
3879
|
+
white-space: normal;
|
|
3880
|
+
box-shadow: none;
|
|
3881
|
+
margin: 0 4px 8px;
|
|
3882
|
+
}
|
|
3883
|
+
.top-bar-more-menu .toolbar-tooltip-anchor:hover .toolbar-tooltip,
|
|
3884
|
+
.top-bar-more-menu .toolbar-tooltip-anchor:has(> :focus-visible) .toolbar-tooltip {
|
|
3885
|
+
display: flex;
|
|
3886
|
+
}
|
|
3887
|
+
.top-bar-more-menu .toolbar-tooltip::after { display: none; }
|
|
3888
|
+
|
|
3787
3889
|
.toolbar-menu-item {
|
|
3788
3890
|
display: flex;
|
|
3789
3891
|
align-items: center;
|
|
@@ -3844,7 +3946,7 @@ kbd.toolbar-menu-hint {
|
|
|
3844
3946
|
|
|
3845
3947
|
.toolbar-menu-heading {
|
|
3846
3948
|
padding: 6px 12px 2px;
|
|
3847
|
-
font-size:
|
|
3949
|
+
font-size: var(--fs-meta);
|
|
3848
3950
|
letter-spacing: 0.08em;
|
|
3849
3951
|
text-transform: uppercase;
|
|
3850
3952
|
color: var(--c-dim);
|
|
@@ -3882,7 +3984,7 @@ kbd.toolbar-menu-hint {
|
|
|
3882
3984
|
margin: 0;
|
|
3883
3985
|
padding: 5px 10px;
|
|
3884
3986
|
color: var(--c-muted);
|
|
3885
|
-
font-size:
|
|
3987
|
+
font-size: var(--fs-meta);
|
|
3886
3988
|
line-height: 1.5;
|
|
3887
3989
|
}
|
|
3888
3990
|
|
|
@@ -4473,7 +4575,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
4473
4575
|
|
|
4474
4576
|
.canvas-node .pin-indicator {
|
|
4475
4577
|
color: var(--c-accent);
|
|
4476
|
-
font-size:
|
|
4578
|
+
font-size: 11px;
|
|
4477
4579
|
opacity: 0.6;
|
|
4478
4580
|
}
|
|
4479
4581
|
|
|
@@ -4481,13 +4583,13 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
4481
4583
|
.canvas-node .node-title-input {
|
|
4482
4584
|
flex: 1;
|
|
4483
4585
|
min-width: 0;
|
|
4484
|
-
font-size: calc(12px * var(--node-
|
|
4586
|
+
font-size: calc(12px * var(--node-title-scale, 1));
|
|
4485
4587
|
font-weight: 600;
|
|
4486
4588
|
color: var(--c-text);
|
|
4487
4589
|
background: var(--c-surface-hover);
|
|
4488
4590
|
border: 1px solid var(--c-accent);
|
|
4489
|
-
border-radius:
|
|
4490
|
-
padding:
|
|
4591
|
+
border-radius: 3px;
|
|
4592
|
+
padding: 1px 6px;
|
|
4491
4593
|
outline: none;
|
|
4492
4594
|
font-family: inherit;
|
|
4493
4595
|
}
|
|
@@ -4518,18 +4620,28 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
4518
4620
|
text-align: left;
|
|
4519
4621
|
}
|
|
4520
4622
|
|
|
4521
|
-
.context-menu-item:hover {
|
|
4623
|
+
.context-menu-item:hover:not(:disabled), .context-menu-item:focus-visible {
|
|
4522
4624
|
background: color-mix(in srgb, var(--c-accent) 10%, transparent);
|
|
4523
4625
|
color: var(--c-accent);
|
|
4524
4626
|
}
|
|
4525
4627
|
|
|
4628
|
+
.context-menu-item:focus-visible {
|
|
4629
|
+
outline: 2px solid var(--c-accent);
|
|
4630
|
+
outline-offset: -2px;
|
|
4631
|
+
}
|
|
4632
|
+
|
|
4633
|
+
.context-menu-item:disabled {
|
|
4634
|
+
color: var(--c-muted);
|
|
4635
|
+
cursor: default;
|
|
4636
|
+
}
|
|
4637
|
+
|
|
4526
4638
|
.context-menu-item.is-danger .context-menu-label {
|
|
4527
4639
|
color: var(--c-danger);
|
|
4528
4640
|
}
|
|
4529
4641
|
|
|
4530
4642
|
.context-menu-shortcut {
|
|
4531
4643
|
color: var(--c-muted);
|
|
4532
|
-
font-size:
|
|
4644
|
+
font-size: var(--fs-meta);
|
|
4533
4645
|
margin-left: 16px;
|
|
4534
4646
|
}
|
|
4535
4647
|
|
|
@@ -4559,7 +4671,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
4559
4671
|
|
|
4560
4672
|
.context-menu-section-label {
|
|
4561
4673
|
color: var(--c-muted);
|
|
4562
|
-
font-size:
|
|
4674
|
+
font-size: var(--fs-meta);
|
|
4563
4675
|
font-weight: 600;
|
|
4564
4676
|
letter-spacing: 0.08em;
|
|
4565
4677
|
text-transform: uppercase;
|
|
@@ -4710,7 +4822,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
4710
4822
|
background: var(--c-input-bg);
|
|
4711
4823
|
color: var(--c-text);
|
|
4712
4824
|
}
|
|
4713
|
-
.relation-legend { position: absolute; top: 8px; left: 12px; right: 12px; display: flex; flex-wrap: wrap; align-content: flex-start; gap: 6px; max-height: min(180px, 25%); overflow-x: hidden; overflow-y: auto; }
|
|
4825
|
+
.relation-legend { position: absolute; top: 8px; left: 12px; right: 12px; display: flex; flex-wrap: wrap; align-content: flex-start; gap: 6px; max-height: min(180px, 25%); overflow-x: hidden; overflow-y: auto; pointer-events: none; }
|
|
4714
4826
|
.lifecycle-filters ~ .relation-legend { top: 48px; }
|
|
4715
4827
|
.relation-legend > * { pointer-events: auto; flex-shrink: 0; max-width: 100%; height: 24px; box-sizing: border-box; border: 1px solid var(--c-line); border-radius: var(--r-control); background: var(--c-panel); color: var(--c-text); font: 500 11px var(--font-ui); padding: 0 9px; cursor: pointer; }
|
|
4716
4828
|
.relation-legend select { background: var(--c-panel-soft); font-weight: 600; padding: 0 10px; }
|
|
@@ -4718,6 +4830,31 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
4718
4830
|
.relation-legend button[aria-pressed="true"] { border-color: var(--relation-ink); }
|
|
4719
4831
|
.relation-swatch { width: 14px; height: 2.5px; border-radius: 2px; background: var(--relation-ink); }
|
|
4720
4832
|
.relation-count { color: var(--c-muted); font-variant-numeric: tabular-nums; }
|
|
4833
|
+
.relation-legend > span { display: flex; align-items: center; cursor: default; }
|
|
4834
|
+
.relation-legend .relation-warning { color: var(--c-warn); }
|
|
4835
|
+
.edge-editor { position: fixed; z-index: 1000; box-sizing: border-box; padding: 3px; border: 1px solid var(--c-line); border-radius: 8px; background: var(--c-panel); color: var(--c-text); box-shadow: var(--e-1); font: 500 11px var(--font-ui); }
|
|
4836
|
+
.edge-editor fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
|
|
4837
|
+
.edge-editor-tools { display: flex; gap: 3px; }
|
|
4838
|
+
.edge-editor-tools select { flex: 1; min-width: 0; }
|
|
4839
|
+
.edge-editor button, .edge-editor select, .relation-navigation button, .group-breadcrumbs button { min-height: 24px; border: 1px solid var(--c-line); border-radius: var(--r-control); padding: 3px 7px; background: var(--c-panel-soft); color: var(--c-text); font: inherit; cursor: pointer; }
|
|
4840
|
+
.edge-editor button:hover, .group-breadcrumbs button:hover, .relation-navigation button:hover { background: var(--c-hover); }
|
|
4841
|
+
.edge-editor-field { display: grid; gap: 8px; padding: 8px; }
|
|
4842
|
+
.edge-editor-field label { display: grid; gap: 4px; }
|
|
4843
|
+
.edge-editor input { box-sizing: border-box; width: 100%; min-width: 0; padding: 6px; border: 1px solid var(--c-line); border-radius: var(--r-control); color: var(--c-text); background: var(--c-input-bg); font: inherit; }
|
|
4844
|
+
.edge-editor p { margin: 6px; color: var(--c-warn); }
|
|
4845
|
+
.relation-navigation { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
|
|
4846
|
+
.group-breadcrumbs { position: absolute; top: 8px; left: 12px; right: 12px; display: flex; flex-wrap: wrap; align-items: center; gap: 4px; max-height: 64px; overflow: auto; pointer-events: auto; color: var(--c-muted); font: 500 11px var(--font-ui); }
|
|
4847
|
+
.group-breadcrumbs button[aria-current] { color: var(--c-text); cursor: default; }
|
|
4848
|
+
.group-breadcrumbs > button:last-child { margin-left: auto; }
|
|
4849
|
+
.canvas-region:has(.group-breadcrumbs) .relation-legend { top: 80px; }
|
|
4850
|
+
.canvas-region:has(.group-breadcrumbs) .lifecycle-filters { top: 80px; }
|
|
4851
|
+
.canvas-region:has(.group-breadcrumbs) .lifecycle-filters ~ .relation-legend { top: 120px; }
|
|
4852
|
+
.group-inside-frame { position: absolute; border: 1px dashed var(--c-line); border-radius: 12px; pointer-events: none; box-sizing: border-box; z-index: -6; }
|
|
4853
|
+
.group-inside-frame > span { position: absolute; top: -9px; left: 12px; padding: 0 6px; background: var(--c-bg); color: var(--c-muted); font: 500 12px var(--font-ui); }
|
|
4854
|
+
.group-outside-endpoint { position: absolute; width: 170px; height: 60px; z-index: 2; }
|
|
4855
|
+
.group-outside-label { position: absolute; top: -24px; color: var(--c-muted); font: 500 12px var(--font-ui); }
|
|
4856
|
+
.group-outside-stub { width: 100%; height: 100%; box-sizing: border-box; padding: 8px 12px; border: 1px dashed var(--c-line); border-radius: 10px; text-align: left; background: var(--c-panel); color: var(--c-text); font: 600 12px var(--font-ui); cursor: pointer; overflow: hidden; }
|
|
4857
|
+
.group-outside-stub span { display: block; margin-top: 4px; color: var(--c-muted); font: 11px var(--font-ui); }
|
|
4721
4858
|
.expanded-content-row { display: flex; flex: 1; min-height: 0; }
|
|
4722
4859
|
.expanded-content-row > .expanded-body { flex: 1; min-width: 0; }
|
|
4723
4860
|
.relations-panel {
|
|
@@ -4743,9 +4880,9 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
4743
4880
|
.relations-panel { width: auto; flex: none; border-left: 0; border-top: 1px solid var(--c-line); overflow: visible; }
|
|
4744
4881
|
}
|
|
4745
4882
|
|
|
4746
|
-
/*
|
|
4883
|
+
/* Types1: trace cards share the node shell, with a violet running mark. */
|
|
4747
4884
|
.canvas-node.trace-node {
|
|
4748
|
-
border-radius:
|
|
4885
|
+
border-radius: var(--r-node);
|
|
4749
4886
|
min-height: 0;
|
|
4750
4887
|
}
|
|
4751
4888
|
|
|
@@ -4764,19 +4901,27 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
4764
4901
|
}
|
|
4765
4902
|
|
|
4766
4903
|
.canvas-node.trace-node.trace-running {
|
|
4767
|
-
border-
|
|
4768
|
-
|
|
4769
|
-
|
|
4770
|
-
|
|
4771
|
-
|
|
4772
|
-
|
|
4773
|
-
|
|
4774
|
-
|
|
4775
|
-
|
|
4776
|
-
|
|
4777
|
-
|
|
4778
|
-
|
|
4779
|
-
}
|
|
4904
|
+
border-top: 3px solid var(--c-agent);
|
|
4905
|
+
}
|
|
4906
|
+
|
|
4907
|
+
.context-node { display: flex; flex-direction: column; gap: 8px; font-size: var(--fs-ui); }
|
|
4908
|
+
.context-node-expanded { max-width: 760px; margin: 0 auto; }
|
|
4909
|
+
.context-node-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
|
|
4910
|
+
.context-usage { display: flex; align-items: center; gap: 8px; font-size: var(--fs-meta); color: var(--c-muted); flex-wrap: wrap; }
|
|
4911
|
+
.context-usage-track { display: inline-block; width: 64px; height: 4px; overflow: hidden; border-radius: var(--r-pill); background: var(--c-line); }
|
|
4912
|
+
.context-usage-track > span, .status-progress > div { display: block; height: 100%; }
|
|
4913
|
+
.context-node-label { color: var(--c-muted); font-size: var(--fs-meta); font-weight: 600; }
|
|
4914
|
+
.context-row { display: block; padding: 8px 0; border-top: 1px solid var(--c-line); overflow-wrap: anywhere; }
|
|
4915
|
+
.context-row-title { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
|
|
4916
|
+
.context-row-title > span { flex-shrink: 0; font-size: var(--fs-meta); color: var(--c-muted); }
|
|
4917
|
+
.context-row-title > .context-row-warning { color: var(--c-warn); }
|
|
4918
|
+
.context-row-meta, .context-row-summary { color: var(--c-muted); font-size: var(--fs-meta); line-height: 1.5; }
|
|
4919
|
+
.context-row-summary { white-space: pre-wrap; }
|
|
4920
|
+
.context-row-open { margin-top: 6px; padding: 4px 8px; background: var(--c-panel-soft); border: 1px solid var(--c-line); border-radius: var(--r-control); color: var(--c-text); font-size: var(--fs-meta); cursor: pointer; }
|
|
4921
|
+
.status-progress { height: 4px; background: var(--c-line); border-radius: var(--r-pill); overflow: hidden; }
|
|
4922
|
+
.node-file-toolbar { min-width: 0; max-width: 50%; }
|
|
4923
|
+
.file-toolbar-metadata { display: flex; align-items: center; gap: 8px; flex: 1; min-width: 0; overflow: hidden; white-space: nowrap; }
|
|
4924
|
+
.prompt-key-hint { padding: 2px 6px; border: 1px solid var(--c-line); border-radius: var(--r-control); color: var(--c-muted); font: var(--fs-meta) var(--font-ui); }
|
|
4780
4925
|
|
|
4781
4926
|
/* Diff nodes — unified diff viewer with per-file sections */
|
|
4782
4927
|
.diff-node {
|
|
@@ -4858,7 +5003,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
4858
5003
|
flex-shrink: 0;
|
|
4859
5004
|
padding: 4px 10px;
|
|
4860
5005
|
color: var(--c-muted);
|
|
4861
|
-
font-size:
|
|
5006
|
+
font-size: var(--fs-meta);
|
|
4862
5007
|
}
|
|
4863
5008
|
|
|
4864
5009
|
/* Own scroll port so a wide CSV scrolls inside the node instead of blowing out
|
|
@@ -4933,23 +5078,59 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
4933
5078
|
}
|
|
4934
5079
|
|
|
4935
5080
|
/* MCP app iframe */
|
|
5081
|
+
.viewer-host, .mermaid-viewer, .mermaid-diagram, .ext-app-viewer {
|
|
5082
|
+
position: relative;
|
|
5083
|
+
display: flex;
|
|
5084
|
+
flex-direction: column;
|
|
5085
|
+
flex: 1;
|
|
5086
|
+
width: 100%;
|
|
5087
|
+
height: 100%;
|
|
5088
|
+
min-width: 0;
|
|
5089
|
+
min-height: 0;
|
|
5090
|
+
}
|
|
5091
|
+
.mermaid-viewer { overflow: auto; }
|
|
5092
|
+
.mermaid-diagram > svg { display: block; flex-shrink: 0; }
|
|
5093
|
+
.ext-app-frame { width: 100%; height: 100%; border: 0; background: transparent; }
|
|
5094
|
+
.ext-app-preview-catcher { position: absolute; inset: 0; z-index: 3; border: 0; padding: 0; background: transparent; cursor: zoom-in; }
|
|
5095
|
+
.ext-app-session-notice { padding: 8px 12px; font-size: var(--fs-meta); color: var(--c-warn); }
|
|
5096
|
+
.viewer-placeholder, .viewer-fallback {
|
|
5097
|
+
display: flex;
|
|
5098
|
+
flex-direction: column;
|
|
5099
|
+
align-items: center;
|
|
5100
|
+
justify-content: center;
|
|
5101
|
+
gap: 8px;
|
|
5102
|
+
padding: 16px;
|
|
5103
|
+
height: 100%;
|
|
5104
|
+
color: var(--c-muted);
|
|
5105
|
+
font-size: var(--fs-ui);
|
|
5106
|
+
}
|
|
5107
|
+
.viewer-fallback { position: absolute; inset: 0; z-index: 2; background: var(--c-panel); }
|
|
5108
|
+
.viewer-fallback-retained { top: auto; height: auto; flex-direction: row; }
|
|
5109
|
+
.viewer-placeholder button, .viewer-fallback button {
|
|
5110
|
+
padding: 4px 12px;
|
|
5111
|
+
border: 1px solid var(--c-line);
|
|
5112
|
+
border-radius: var(--r-control);
|
|
5113
|
+
color: var(--c-text);
|
|
5114
|
+
background: var(--c-panel-soft);
|
|
5115
|
+
}
|
|
5116
|
+
.canvas-node:is([data-node-type="html"], [data-node-type="json-render"], [data-node-type="graph"], [data-node-type="mcp-app"], [data-node-type="mermaid"]) .node-body { padding: 0; display: flex; flex-direction: column; }
|
|
4936
5117
|
.mcp-app-frame-stack {
|
|
4937
5118
|
position: relative;
|
|
4938
5119
|
isolation: isolate;
|
|
4939
5120
|
flex: 1;
|
|
4940
5121
|
min-width: 0;
|
|
4941
5122
|
min-height: 0;
|
|
4942
|
-
background: var(--c-panel
|
|
5123
|
+
background: var(--c-panel);
|
|
4943
5124
|
overflow: hidden;
|
|
4944
|
-
border-radius: 0
|
|
5125
|
+
border-radius: 0;
|
|
4945
5126
|
}
|
|
4946
5127
|
|
|
4947
5128
|
.mcp-app-frame-stack:has(.html-node-frame) {
|
|
4948
5129
|
width: 100%;
|
|
4949
5130
|
height: 100%;
|
|
4950
|
-
min-height:
|
|
4951
|
-
background: var(--c-
|
|
4952
|
-
border-radius:
|
|
5131
|
+
min-height: 0;
|
|
5132
|
+
background: var(--c-panel);
|
|
5133
|
+
border-radius: 0;
|
|
4953
5134
|
}
|
|
4954
5135
|
|
|
4955
5136
|
.mcp-app-frame-stack:has(.html-node-frame-presentation) {
|
|
@@ -5188,6 +5369,11 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
5188
5369
|
font-weight: 600;
|
|
5189
5370
|
color: var(--c-text);
|
|
5190
5371
|
}
|
|
5372
|
+
.text-prompt-description {
|
|
5373
|
+
font-size: 12px;
|
|
5374
|
+
line-height: 1.4;
|
|
5375
|
+
color: var(--c-muted);
|
|
5376
|
+
}
|
|
5191
5377
|
.text-prompt-input {
|
|
5192
5378
|
width: 100%;
|
|
5193
5379
|
padding: 8px 10px;
|
|
@@ -5292,7 +5478,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
5292
5478
|
backdrop-filter: blur(12px);
|
|
5293
5479
|
border: 1px solid var(--c-line);
|
|
5294
5480
|
border-radius: 10px;
|
|
5295
|
-
box-shadow:
|
|
5481
|
+
box-shadow: var(--e-2);
|
|
5296
5482
|
z-index: 66;
|
|
5297
5483
|
white-space: nowrap;
|
|
5298
5484
|
}
|
|
@@ -5481,25 +5667,22 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
5481
5667
|
|
|
5482
5668
|
.attention-history-tab {
|
|
5483
5669
|
position: absolute;
|
|
5484
|
-
top:
|
|
5485
|
-
right:
|
|
5670
|
+
top: 7px;
|
|
5671
|
+
right: 8px;
|
|
5486
5672
|
display: flex;
|
|
5487
5673
|
align-items: center;
|
|
5488
|
-
gap:
|
|
5489
|
-
|
|
5490
|
-
|
|
5491
|
-
|
|
5492
|
-
border: 1px solid
|
|
5493
|
-
border-
|
|
5494
|
-
|
|
5495
|
-
|
|
5496
|
-
color: var(--c-text);
|
|
5674
|
+
gap: 6px;
|
|
5675
|
+
height: 30px;
|
|
5676
|
+
padding: 0 10px;
|
|
5677
|
+
background: var(--c-panel);
|
|
5678
|
+
border: 1px solid var(--c-line);
|
|
5679
|
+
border-radius: var(--r-pill);
|
|
5680
|
+
box-shadow: var(--e-2);
|
|
5681
|
+
color: var(--c-text-soft);
|
|
5497
5682
|
cursor: pointer;
|
|
5498
5683
|
font: inherit;
|
|
5499
|
-
font-size:
|
|
5500
|
-
font-weight:
|
|
5501
|
-
letter-spacing: 0.08em;
|
|
5502
|
-
text-transform: uppercase;
|
|
5684
|
+
font-size: var(--fs-ui);
|
|
5685
|
+
font-weight: 500;
|
|
5503
5686
|
z-index: 60;
|
|
5504
5687
|
}
|
|
5505
5688
|
|
|
@@ -5519,17 +5702,12 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
5519
5702
|
}
|
|
5520
5703
|
|
|
5521
5704
|
.attention-history-tab-badge {
|
|
5522
|
-
min-width: 18px;
|
|
5523
|
-
height: 18px;
|
|
5524
|
-
padding: 0 5px;
|
|
5525
5705
|
display: inline-flex;
|
|
5526
5706
|
align-items: center;
|
|
5527
5707
|
justify-content: center;
|
|
5528
|
-
|
|
5529
|
-
|
|
5530
|
-
|
|
5531
|
-
font-size: 10px;
|
|
5532
|
-
font-weight: 700;
|
|
5708
|
+
color: var(--c-accent);
|
|
5709
|
+
font-size: var(--fs-ui);
|
|
5710
|
+
font-weight: 500;
|
|
5533
5711
|
letter-spacing: 0;
|
|
5534
5712
|
text-transform: none;
|
|
5535
5713
|
}
|
|
@@ -5613,7 +5791,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
5613
5791
|
}
|
|
5614
5792
|
|
|
5615
5793
|
.attention-history-time {
|
|
5616
|
-
font-size:
|
|
5794
|
+
font-size: var(--fs-meta);
|
|
5617
5795
|
color: var(--c-dim);
|
|
5618
5796
|
white-space: nowrap;
|
|
5619
5797
|
}
|
|
@@ -5788,17 +5966,15 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
5788
5966
|
max-width: 70%;
|
|
5789
5967
|
}
|
|
5790
5968
|
.group-name {
|
|
5791
|
-
font-size:
|
|
5792
|
-
font-weight:
|
|
5793
|
-
|
|
5794
|
-
text-transform: uppercase;
|
|
5795
|
-
color: var(--group-color, var(--c-accent));
|
|
5969
|
+
font-size: var(--fs-ui);
|
|
5970
|
+
font-weight: 600;
|
|
5971
|
+
color: var(--c-text);
|
|
5796
5972
|
white-space: nowrap;
|
|
5797
5973
|
overflow: hidden;
|
|
5798
5974
|
text-overflow: ellipsis;
|
|
5799
5975
|
}
|
|
5800
5976
|
.group-count {
|
|
5801
|
-
font:
|
|
5977
|
+
font: var(--fs-meta) var(--font-ui);
|
|
5802
5978
|
color: var(--c-dim);
|
|
5803
5979
|
}
|
|
5804
5980
|
.group-title-input {
|
|
@@ -5858,7 +6034,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
5858
6034
|
background: var(--c-panel);
|
|
5859
6035
|
border: 1px solid var(--c-line);
|
|
5860
6036
|
border-radius: 8px;
|
|
5861
|
-
box-shadow:
|
|
6037
|
+
box-shadow: var(--e-2);
|
|
5862
6038
|
z-index: 20;
|
|
5863
6039
|
}
|
|
5864
6040
|
.group-menu button {
|
|
@@ -5917,10 +6093,8 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
5917
6093
|
cursor: pointer;
|
|
5918
6094
|
}
|
|
5919
6095
|
.group-chip-name {
|
|
5920
|
-
font-size:
|
|
5921
|
-
font-weight:
|
|
5922
|
-
letter-spacing: 0.08em;
|
|
5923
|
-
text-transform: uppercase;
|
|
6096
|
+
font-size: var(--fs-ui);
|
|
6097
|
+
font-weight: 600;
|
|
5924
6098
|
color: var(--group-color, var(--c-accent));
|
|
5925
6099
|
white-space: nowrap;
|
|
5926
6100
|
}
|
|
@@ -5938,7 +6112,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
5938
6112
|
opacity: 0.8;
|
|
5939
6113
|
}
|
|
5940
6114
|
.group-chip-count {
|
|
5941
|
-
font:
|
|
6115
|
+
font: var(--fs-meta) var(--font-code);
|
|
5942
6116
|
color: var(--c-dim);
|
|
5943
6117
|
}
|
|
5944
6118
|
|
|
@@ -5957,12 +6131,12 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
5957
6131
|
white-space: nowrap;
|
|
5958
6132
|
}
|
|
5959
6133
|
.drop-pill-text {
|
|
5960
|
-
font-size:
|
|
6134
|
+
font-size: var(--fs-meta);
|
|
5961
6135
|
font-weight: 600;
|
|
5962
6136
|
color: var(--c-accent);
|
|
5963
6137
|
}
|
|
5964
6138
|
.drop-pill-hint {
|
|
5965
|
-
font:
|
|
6139
|
+
font: var(--fs-meta) var(--font-code);
|
|
5966
6140
|
color: var(--c-dim);
|
|
5967
6141
|
}
|
|
5968
6142
|
|
|
@@ -5986,13 +6160,60 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
5986
6160
|
flex-direction: column;
|
|
5987
6161
|
background: var(--c-panel);
|
|
5988
6162
|
border: 1px solid var(--c-line);
|
|
5989
|
-
border-radius:
|
|
5990
|
-
box-shadow:
|
|
6163
|
+
border-radius: var(--r-overlay);
|
|
6164
|
+
box-shadow: var(--e-2);
|
|
5991
6165
|
overflow: hidden;
|
|
5992
6166
|
}
|
|
5993
6167
|
.expanded-overlay-panel.is-pinned {
|
|
5994
6168
|
border-color: color-mix(in srgb, var(--c-pin) 45%, var(--c-line));
|
|
5995
6169
|
}
|
|
6170
|
+
/* AX step footer (AxStepControls). The expanded overlay places it as a sibling of
|
|
6171
|
+
its padded content area (--ax-dock-bleed: 0) and keeps it stuck to the bottom. */
|
|
6172
|
+
.ax-step-dock {
|
|
6173
|
+
position: sticky;
|
|
6174
|
+
bottom: calc(-1 * var(--ax-dock-bleed, 12px));
|
|
6175
|
+
margin: 12px calc(-1 * var(--ax-dock-bleed, 12px)) calc(-1 * var(--ax-dock-bleed, 12px));
|
|
6176
|
+
padding: 9px var(--ax-dock-pad, 12px) 10px;
|
|
6177
|
+
background: var(--c-panel-overlay);
|
|
6178
|
+
border-top: 1px solid var(--c-line);
|
|
6179
|
+
backdrop-filter: blur(6px);
|
|
6180
|
+
}
|
|
6181
|
+
/* On a card the step is one body and one footer row: the step controls beside the
|
|
6182
|
+
card's own actions. Rows: content (scrolls by itself, never taller than it needs),
|
|
6183
|
+
extras, free space, footer. Nothing bleeds past the body, so it never scrolls. */
|
|
6184
|
+
.canvas-node .node-body:has(> .ax-step-dock) {
|
|
6185
|
+
display: grid;
|
|
6186
|
+
grid-template: minmax(0, max-content) auto 1fr auto / minmax(0, 1fr) auto;
|
|
6187
|
+
padding: 0;
|
|
6188
|
+
overflow: hidden;
|
|
6189
|
+
}
|
|
6190
|
+
.canvas-node .node-body:has(> .ax-step-dock) > .md-card-preview { display: contents; }
|
|
6191
|
+
.canvas-node .node-body:has(> .ax-step-dock) > :first-child:not(.md-card-preview),
|
|
6192
|
+
.canvas-node .node-body:has(> .ax-step-dock) > .md-card-preview > .md-card-content {
|
|
6193
|
+
grid-area: 1 / 1 / 2 / -1;
|
|
6194
|
+
min-height: 0;
|
|
6195
|
+
overflow: auto;
|
|
6196
|
+
padding: 10px 14px;
|
|
6197
|
+
}
|
|
6198
|
+
.canvas-node .node-body:has(> .ax-step-dock) > :not(.ax-step-dock),
|
|
6199
|
+
.canvas-node .node-body:has(> .ax-step-dock) > .md-card-preview > * {
|
|
6200
|
+
grid-column: 1 / -1;
|
|
6201
|
+
}
|
|
6202
|
+
.canvas-node .node-body > .ax-step-dock,
|
|
6203
|
+
.canvas-node .node-body:has(> .ax-step-dock) > .md-card-preview > .md-card-actions {
|
|
6204
|
+
grid-row: 4;
|
|
6205
|
+
position: static;
|
|
6206
|
+
margin: 0;
|
|
6207
|
+
background: var(--c-panel);
|
|
6208
|
+
border-top: 1px solid var(--c-line);
|
|
6209
|
+
backdrop-filter: none;
|
|
6210
|
+
}
|
|
6211
|
+
.canvas-node .node-body > .ax-step-dock { grid-column: 1; padding: 6px 4px 6px 12px; }
|
|
6212
|
+
.canvas-node .node-body:has(> .ax-step-dock) > .md-card-preview > .md-card-actions {
|
|
6213
|
+
grid-column: 2;
|
|
6214
|
+
align-items: flex-start;
|
|
6215
|
+
padding: 6px 36px 6px 4px;
|
|
6216
|
+
}
|
|
5996
6217
|
.expanded-overlay-panel .ax-step-dock {
|
|
5997
6218
|
/* Its sticky/backdrop-filter context must paint hints above the Source FAB. */
|
|
5998
6219
|
z-index: 2;
|
|
@@ -6030,7 +6251,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6030
6251
|
min-width: 0;
|
|
6031
6252
|
}
|
|
6032
6253
|
.expanded-kind-pill {
|
|
6033
|
-
font-size:
|
|
6254
|
+
font-size: var(--fs-meta);
|
|
6034
6255
|
font-weight: 600;
|
|
6035
6256
|
padding: 2px 8px;
|
|
6036
6257
|
border-radius: 999px;
|
|
@@ -6081,7 +6302,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6081
6302
|
padding: 8px 16px;
|
|
6082
6303
|
border-top: 1px solid var(--c-line);
|
|
6083
6304
|
background: color-mix(in srgb, var(--c-bg) 50%, transparent);
|
|
6084
|
-
font:
|
|
6305
|
+
font: var(--fs-meta) var(--font-code);
|
|
6085
6306
|
color: var(--c-dim);
|
|
6086
6307
|
flex-shrink: 0;
|
|
6087
6308
|
}
|
|
@@ -6095,6 +6316,10 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6095
6316
|
}
|
|
6096
6317
|
|
|
6097
6318
|
.expanded-action-btn {
|
|
6319
|
+
display: inline-flex;
|
|
6320
|
+
align-items: center;
|
|
6321
|
+
gap: 6px;
|
|
6322
|
+
white-space: nowrap;
|
|
6098
6323
|
padding: 3px 10px;
|
|
6099
6324
|
font-size: 11px;
|
|
6100
6325
|
font-weight: 600;
|
|
@@ -6106,6 +6331,12 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6106
6331
|
font-family: var(--font-ui);
|
|
6107
6332
|
}
|
|
6108
6333
|
|
|
6334
|
+
@media (max-width: 760px) {
|
|
6335
|
+
.expanded-header { height: auto; min-height: 46px; flex-wrap: wrap; row-gap: 8px; padding: 10px 16px; }
|
|
6336
|
+
.expanded-title { flex: 1; }
|
|
6337
|
+
.expanded-actions { order: 1; flex-basis: 100%; flex-wrap: wrap; }
|
|
6338
|
+
}
|
|
6339
|
+
|
|
6109
6340
|
.expanded-action-btn:hover {
|
|
6110
6341
|
background: var(--c-surface-hover);
|
|
6111
6342
|
color: var(--c-text);
|
|
@@ -6136,7 +6367,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6136
6367
|
}
|
|
6137
6368
|
|
|
6138
6369
|
.expanded-meta {
|
|
6139
|
-
font-size:
|
|
6370
|
+
font-size: var(--fs-meta);
|
|
6140
6371
|
color: var(--c-muted);
|
|
6141
6372
|
padding: 0 4px;
|
|
6142
6373
|
}
|
|
@@ -6213,18 +6444,18 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6213
6444
|
.node-context-mark {
|
|
6214
6445
|
display: inline-flex;
|
|
6215
6446
|
align-items: center;
|
|
6216
|
-
gap:
|
|
6217
|
-
height:
|
|
6218
|
-
padding: 0
|
|
6447
|
+
gap: 4px;
|
|
6448
|
+
height: 20px;
|
|
6449
|
+
padding: 0 7px;
|
|
6219
6450
|
border-radius: var(--r-pill);
|
|
6220
|
-
font-size:
|
|
6451
|
+
font-size: var(--fs-meta);
|
|
6221
6452
|
font-weight: 500;
|
|
6222
6453
|
white-space: nowrap;
|
|
6223
6454
|
flex-shrink: 0;
|
|
6224
6455
|
}
|
|
6225
6456
|
.node-context-mark svg {
|
|
6226
|
-
width:
|
|
6227
|
-
height:
|
|
6457
|
+
width: 12px;
|
|
6458
|
+
height: 12px;
|
|
6228
6459
|
fill: none;
|
|
6229
6460
|
stroke: currentColor;
|
|
6230
6461
|
stroke-width: 2;
|
|
@@ -6249,8 +6480,8 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6249
6480
|
.node-context-mark.is-glyph,
|
|
6250
6481
|
.node-near-mark.is-glyph {
|
|
6251
6482
|
justify-content: center;
|
|
6252
|
-
width:
|
|
6253
|
-
height:
|
|
6483
|
+
width: 22px;
|
|
6484
|
+
height: 22px;
|
|
6254
6485
|
padding: 0;
|
|
6255
6486
|
box-sizing: border-box;
|
|
6256
6487
|
}
|
|
@@ -6262,20 +6493,20 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6262
6493
|
cursor: pointer;
|
|
6263
6494
|
display: inline-flex;
|
|
6264
6495
|
align-items: center;
|
|
6265
|
-
gap:
|
|
6266
|
-
height:
|
|
6267
|
-
padding: 0
|
|
6496
|
+
gap: 4px;
|
|
6497
|
+
height: 18px;
|
|
6498
|
+
padding: 0 7px;
|
|
6268
6499
|
border: 1px dotted var(--c-pin);
|
|
6269
6500
|
border-radius: var(--r-pill);
|
|
6270
6501
|
color: color-mix(in srgb, var(--c-pin) 75%, var(--c-text));
|
|
6271
|
-
font-size:
|
|
6502
|
+
font-size: var(--fs-meta);
|
|
6272
6503
|
font-weight: 500;
|
|
6273
6504
|
white-space: nowrap;
|
|
6274
6505
|
flex-shrink: 0;
|
|
6275
6506
|
}
|
|
6276
6507
|
.node-near-mark svg {
|
|
6277
|
-
width:
|
|
6278
|
-
height:
|
|
6508
|
+
width: 12px;
|
|
6509
|
+
height: 12px;
|
|
6279
6510
|
}
|
|
6280
6511
|
.node-near-ring {
|
|
6281
6512
|
fill: none;
|
|
@@ -6438,15 +6669,15 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6438
6669
|
|
|
6439
6670
|
/* The drawn 18 px circle sits inside the standard control hit target. */
|
|
6440
6671
|
.ctx-pin-mark {
|
|
6441
|
-
width:
|
|
6442
|
-
height:
|
|
6672
|
+
width: 18px;
|
|
6673
|
+
height: 18px;
|
|
6443
6674
|
box-sizing: border-box;
|
|
6444
6675
|
border: 1.5px solid var(--c-muted);
|
|
6445
6676
|
border-radius: var(--r-pill);
|
|
6446
6677
|
display: flex;
|
|
6447
6678
|
align-items: center;
|
|
6448
6679
|
justify-content: center;
|
|
6449
|
-
font-size:
|
|
6680
|
+
font-size: 13px;
|
|
6450
6681
|
color: var(--c-text-soft);
|
|
6451
6682
|
}
|
|
6452
6683
|
|
|
@@ -6484,7 +6715,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6484
6715
|
.board-pin-btn .ctx-pin-mark {
|
|
6485
6716
|
width: 18px;
|
|
6486
6717
|
height: 18px;
|
|
6487
|
-
font-size:
|
|
6718
|
+
font-size: var(--fs-meta);
|
|
6488
6719
|
}
|
|
6489
6720
|
|
|
6490
6721
|
/* ── Context pin HUD — top-right pill ────────────────────────── */
|
|
@@ -6527,7 +6758,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6527
6758
|
|
|
6528
6759
|
.thread-turn-assistant {
|
|
6529
6760
|
padding: 6px 0;
|
|
6530
|
-
border-left: 2px solid color-mix(in srgb, var(--c-
|
|
6761
|
+
border-left: 2px solid color-mix(in srgb, var(--c-agent) 35%, transparent);
|
|
6531
6762
|
padding-left: 10px;
|
|
6532
6763
|
margin-left: 2px;
|
|
6533
6764
|
overflow: hidden;
|
|
@@ -6545,10 +6776,8 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6545
6776
|
}
|
|
6546
6777
|
|
|
6547
6778
|
.thread-turn-role {
|
|
6548
|
-
font-size:
|
|
6549
|
-
font-weight:
|
|
6550
|
-
text-transform: uppercase;
|
|
6551
|
-
letter-spacing: 0.04em;
|
|
6779
|
+
font-size: var(--fs-meta);
|
|
6780
|
+
font-weight: 600;
|
|
6552
6781
|
margin-bottom: 3px;
|
|
6553
6782
|
display: flex;
|
|
6554
6783
|
align-items: center;
|
|
@@ -6571,11 +6800,11 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6571
6800
|
}
|
|
6572
6801
|
|
|
6573
6802
|
.thread-turn-assistant .thread-turn-role {
|
|
6574
|
-
color: var(--c-
|
|
6803
|
+
color: var(--c-agent);
|
|
6575
6804
|
}
|
|
6576
6805
|
|
|
6577
6806
|
.thread-turn-assistant .status-dot {
|
|
6578
|
-
background: var(--c-
|
|
6807
|
+
background: var(--c-agent);
|
|
6579
6808
|
}
|
|
6580
6809
|
|
|
6581
6810
|
.thread-turn-assistant .status-dot.pulsing {
|
|
@@ -6629,7 +6858,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6629
6858
|
flex-direction: column;
|
|
6630
6859
|
background: var(--c-panel-soft);
|
|
6631
6860
|
border-left: 1px solid var(--c-line);
|
|
6632
|
-
box-shadow: -
|
|
6861
|
+
box-shadow: var(--e-2);
|
|
6633
6862
|
/* Above the receipt it is opened from, below the rail popovers. */
|
|
6634
6863
|
z-index: 9999;
|
|
6635
6864
|
overflow: hidden;
|
|
@@ -6658,7 +6887,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6658
6887
|
color: var(--c-text);
|
|
6659
6888
|
}
|
|
6660
6889
|
.snapshot-panel-sub {
|
|
6661
|
-
font-size:
|
|
6890
|
+
font-size: var(--fs-meta);
|
|
6662
6891
|
color: var(--c-dim);
|
|
6663
6892
|
}
|
|
6664
6893
|
.snapshot-panel-spacer {
|
|
@@ -6714,7 +6943,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6714
6943
|
}
|
|
6715
6944
|
.snapshot-restore-note {
|
|
6716
6945
|
padding: 0 12px 8px;
|
|
6717
|
-
font-size:
|
|
6946
|
+
font-size: var(--fs-meta);
|
|
6718
6947
|
color: var(--c-dim);
|
|
6719
6948
|
}
|
|
6720
6949
|
|
|
@@ -6734,7 +6963,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6734
6963
|
}
|
|
6735
6964
|
.snapshot-section-header {
|
|
6736
6965
|
margin: 10px 2px 4px;
|
|
6737
|
-
font-size:
|
|
6966
|
+
font-size: var(--fs-meta);
|
|
6738
6967
|
font-weight: 700;
|
|
6739
6968
|
letter-spacing: 0.08em;
|
|
6740
6969
|
text-transform: uppercase;
|
|
@@ -6781,12 +7010,12 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6781
7010
|
color: var(--c-text);
|
|
6782
7011
|
}
|
|
6783
7012
|
.snapshot-item-time {
|
|
6784
|
-
font:
|
|
7013
|
+
font: var(--fs-meta) var(--font-code);
|
|
6785
7014
|
color: var(--c-dim);
|
|
6786
7015
|
}
|
|
6787
7016
|
.snapshot-item-meta {
|
|
6788
7017
|
margin-top: 3px;
|
|
6789
|
-
font-size:
|
|
7018
|
+
font-size: var(--fs-meta);
|
|
6790
7019
|
color: var(--c-muted);
|
|
6791
7020
|
}
|
|
6792
7021
|
.snapshot-item-diff {
|
|
@@ -6804,7 +7033,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6804
7033
|
border-radius: 6px;
|
|
6805
7034
|
background: none;
|
|
6806
7035
|
color: var(--c-muted);
|
|
6807
|
-
font-size:
|
|
7036
|
+
font-size: var(--fs-meta);
|
|
6808
7037
|
font-weight: 600;
|
|
6809
7038
|
cursor: pointer;
|
|
6810
7039
|
}
|
|
@@ -6842,7 +7071,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6842
7071
|
.snapshot-panel-foot {
|
|
6843
7072
|
padding: 9px 14px;
|
|
6844
7073
|
border-top: 1px solid var(--c-line);
|
|
6845
|
-
font-size:
|
|
7074
|
+
font-size: var(--fs-meta);
|
|
6846
7075
|
color: var(--c-dim);
|
|
6847
7076
|
flex-shrink: 0;
|
|
6848
7077
|
}
|
|
@@ -6868,8 +7097,8 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6868
7097
|
flex-direction: column;
|
|
6869
7098
|
background: var(--c-panel);
|
|
6870
7099
|
border: 1px solid var(--c-line);
|
|
6871
|
-
border-radius:
|
|
6872
|
-
box-shadow:
|
|
7100
|
+
border-radius: var(--r-overlay);
|
|
7101
|
+
box-shadow: var(--e-2);
|
|
6873
7102
|
overflow: hidden;
|
|
6874
7103
|
animation: command-palette-in 0.12s ease-out;
|
|
6875
7104
|
align-self: flex-start;
|
|
@@ -6906,7 +7135,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6906
7135
|
padding: 1px 6px;
|
|
6907
7136
|
border: 1px solid var(--c-line);
|
|
6908
7137
|
border-radius: 4px;
|
|
6909
|
-
font:
|
|
7138
|
+
font: var(--fs-meta) var(--font-code);
|
|
6910
7139
|
color: var(--c-muted);
|
|
6911
7140
|
}
|
|
6912
7141
|
.command-palette-esc {
|
|
@@ -6928,7 +7157,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6928
7157
|
}
|
|
6929
7158
|
.command-palette-group {
|
|
6930
7159
|
padding: 6px 10px 4px;
|
|
6931
|
-
font-size:
|
|
7160
|
+
font-size: var(--fs-meta);
|
|
6932
7161
|
font-weight: 700;
|
|
6933
7162
|
letter-spacing: 0.08em;
|
|
6934
7163
|
text-transform: uppercase;
|
|
@@ -6992,7 +7221,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
6992
7221
|
padding: 8px 14px;
|
|
6993
7222
|
border-top: 1px solid var(--c-line);
|
|
6994
7223
|
background: color-mix(in srgb, var(--c-bg) 50%, transparent);
|
|
6995
|
-
font:
|
|
7224
|
+
font: var(--fs-meta) var(--font-code);
|
|
6996
7225
|
color: var(--c-dim);
|
|
6997
7226
|
}
|
|
6998
7227
|
.command-palette-hint-spacer {
|
|
@@ -7020,7 +7249,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
7020
7249
|
backdrop-filter: blur(16px);
|
|
7021
7250
|
border: 1px solid var(--c-line);
|
|
7022
7251
|
border-radius: var(--radius);
|
|
7023
|
-
box-shadow:
|
|
7252
|
+
box-shadow: var(--e-2);
|
|
7024
7253
|
overflow: hidden;
|
|
7025
7254
|
animation: command-palette-in 0.12s ease-out;
|
|
7026
7255
|
}
|
|
@@ -7040,7 +7269,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
7040
7269
|
}
|
|
7041
7270
|
|
|
7042
7271
|
.shortcut-overlay-hint {
|
|
7043
|
-
font-size:
|
|
7272
|
+
font-size: var(--fs-meta);
|
|
7044
7273
|
color: var(--c-dim);
|
|
7045
7274
|
}
|
|
7046
7275
|
.shortcut-overlay-hint kbd {
|
|
@@ -7050,7 +7279,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
7050
7279
|
border-radius: 3px;
|
|
7051
7280
|
padding: 0 4px;
|
|
7052
7281
|
font-family: var(--font-ui);
|
|
7053
|
-
font-size:
|
|
7282
|
+
font-size: var(--fs-meta);
|
|
7054
7283
|
line-height: 1.6;
|
|
7055
7284
|
margin: 0 2px;
|
|
7056
7285
|
}
|
|
@@ -7070,7 +7299,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
7070
7299
|
}
|
|
7071
7300
|
|
|
7072
7301
|
.shortcut-group-title {
|
|
7073
|
-
font-size:
|
|
7302
|
+
font-size: var(--fs-meta);
|
|
7074
7303
|
font-weight: 600;
|
|
7075
7304
|
text-transform: uppercase;
|
|
7076
7305
|
letter-spacing: 0.06em;
|
|
@@ -7228,18 +7457,18 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
7228
7457
|
padding: 1px 6px;
|
|
7229
7458
|
border: 1px solid var(--c-line);
|
|
7230
7459
|
border-radius: 4px;
|
|
7231
|
-
font:
|
|
7460
|
+
font: var(--fs-meta) var(--font-code);
|
|
7232
7461
|
color: var(--c-dim);
|
|
7233
7462
|
}
|
|
7234
7463
|
.empty-state-action-hint {
|
|
7235
|
-
font-size:
|
|
7464
|
+
font-size: var(--fs-meta);
|
|
7236
7465
|
color: var(--c-dim);
|
|
7237
7466
|
}
|
|
7238
7467
|
.empty-state-hint {
|
|
7239
7468
|
background: none;
|
|
7240
7469
|
border: none;
|
|
7241
7470
|
padding: 0;
|
|
7242
|
-
font:
|
|
7471
|
+
font: var(--fs-meta) var(--font-code);
|
|
7243
7472
|
color: var(--c-dim);
|
|
7244
7473
|
cursor: pointer;
|
|
7245
7474
|
}
|
|
@@ -7306,7 +7535,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
7306
7535
|
}
|
|
7307
7536
|
|
|
7308
7537
|
.image-node-warning-title {
|
|
7309
|
-
font-size:
|
|
7538
|
+
font-size: var(--fs-meta);
|
|
7310
7539
|
font-weight: 700;
|
|
7311
7540
|
letter-spacing: 0.06em;
|
|
7312
7541
|
text-transform: uppercase;
|
|
@@ -7372,7 +7601,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
7372
7601
|
|
|
7373
7602
|
.image-node-error-path {
|
|
7374
7603
|
font-family: var(--font-code);
|
|
7375
|
-
font-size:
|
|
7604
|
+
font-size: var(--fs-meta);
|
|
7376
7605
|
color: var(--c-muted);
|
|
7377
7606
|
word-break: break-all;
|
|
7378
7607
|
max-width: 250px;
|
|
@@ -7405,7 +7634,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
7405
7634
|
padding: 4px 10px;
|
|
7406
7635
|
border-top: 1px solid var(--c-line);
|
|
7407
7636
|
background: var(--c-panel-soft);
|
|
7408
|
-
font-size:
|
|
7637
|
+
font-size: var(--fs-meta);
|
|
7409
7638
|
color: var(--c-dim);
|
|
7410
7639
|
gap: 8px;
|
|
7411
7640
|
min-height: 24px;
|
|
@@ -7433,7 +7662,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
7433
7662
|
border-radius: 3px;
|
|
7434
7663
|
padding: 1px 6px;
|
|
7435
7664
|
font: inherit;
|
|
7436
|
-
font-size:
|
|
7665
|
+
font-size: var(--fs-meta);
|
|
7437
7666
|
color: var(--c-accent);
|
|
7438
7667
|
cursor: pointer;
|
|
7439
7668
|
}
|
|
@@ -7597,7 +7826,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
7597
7826
|
border-radius: 999px;
|
|
7598
7827
|
background: var(--c-accent);
|
|
7599
7828
|
color: var(--c-bg);
|
|
7600
|
-
font-size:
|
|
7829
|
+
font-size: var(--fs-meta);
|
|
7601
7830
|
font-weight: 700;
|
|
7602
7831
|
}
|
|
7603
7832
|
|
|
@@ -7616,7 +7845,7 @@ html.is-node-resizing .ext-app-preview-catcher {
|
|
|
7616
7845
|
}
|
|
7617
7846
|
|
|
7618
7847
|
.intent-confidence {
|
|
7619
|
-
font-size:
|
|
7848
|
+
font-size: var(--fs-meta);
|
|
7620
7849
|
font-variant-numeric: tabular-nums;
|
|
7621
7850
|
color: var(--c-muted);
|
|
7622
7851
|
}
|
|
@@ -7735,10 +7964,17 @@ html.is-node-dragging .intent-line-layer {
|
|
|
7735
7964
|
inset: 0;
|
|
7736
7965
|
z-index: 99;
|
|
7737
7966
|
}
|
|
7738
|
-
.presentation-
|
|
7967
|
+
.presentation-controls {
|
|
7739
7968
|
position: absolute;
|
|
7740
7969
|
top: 16px;
|
|
7741
7970
|
right: 16px;
|
|
7971
|
+
max-width: calc(100% - 32px);
|
|
7972
|
+
display: flex;
|
|
7973
|
+
flex-wrap: wrap;
|
|
7974
|
+
justify-content: flex-end;
|
|
7975
|
+
gap: 8px;
|
|
7976
|
+
}
|
|
7977
|
+
.presentation-controls button {
|
|
7742
7978
|
box-shadow: 0 2px 12px var(--c-shadow);
|
|
7743
7979
|
}
|
|
7744
7980
|
.presentation-error {
|
|
@@ -7827,7 +8063,7 @@ html.is-node-dragging .intent-line-layer {
|
|
|
7827
8063
|
}
|
|
7828
8064
|
.board-switcher-item-folder { font-size: 11px; line-height: 1.4; color: var(--c-dim); overflow-wrap: anywhere; }
|
|
7829
8065
|
.board-switcher-item-meta {
|
|
7830
|
-
font-size:
|
|
8066
|
+
font-size: var(--fs-meta);
|
|
7831
8067
|
color: var(--c-dim);
|
|
7832
8068
|
white-space: nowrap;
|
|
7833
8069
|
align-self: flex-start;
|
|
@@ -8674,6 +8910,19 @@ html.is-node-dragging .intent-line-layer {
|
|
|
8674
8910
|
cursor: pointer;
|
|
8675
8911
|
}
|
|
8676
8912
|
}
|
|
8913
|
+
.board-move-backdrop { padding: 20px 0; align-items: center; }
|
|
8914
|
+
.board-move-dialog {
|
|
8915
|
+
width: min(540px, calc(100% - 32px));
|
|
8916
|
+
max-height: calc(100% - 40px);
|
|
8917
|
+
overflow-y: auto;
|
|
8918
|
+
box-sizing: border-box;
|
|
8919
|
+
}
|
|
8920
|
+
.board-move-dialog form { display: flex; flex-direction: column; gap: 8px; }
|
|
8921
|
+
.board-move-dialog h2 { margin: 0 0 12px; font-size: 17px; }
|
|
8922
|
+
.board-move-dialog p { margin: 0; font-size: 12px; line-height: 1.5; color: var(--c-text-soft); }
|
|
8923
|
+
.board-move-dialog .board-move-warning { color: var(--c-warn); font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
|
|
8924
|
+
.board-move-cards { margin: 0; max-height: 100px; overflow-y: auto; font-size: 12px; }
|
|
8925
|
+
.board-move-dialog .text-prompt-actions { margin-top: 8px; }
|
|
8677
8926
|
.board-copy-dialog,
|
|
8678
8927
|
.board-link-dialog {
|
|
8679
8928
|
width: min(540px, calc(100vw - 32px));
|
|
@@ -8761,6 +9010,7 @@ html.is-node-dragging .intent-line-layer {
|
|
|
8761
9010
|
.attachment-node a, .md-import-source a { color: var(--c-accent); }
|
|
8762
9011
|
.attachment-status { font-weight: 600; }
|
|
8763
9012
|
.attachment-button,
|
|
9013
|
+
.presentation-step,
|
|
8764
9014
|
.presentation-exit,
|
|
8765
9015
|
.export-dialog-links a {
|
|
8766
9016
|
min-height: 38px;
|
|
@@ -8776,12 +9026,15 @@ html.is-node-dragging .intent-line-layer {
|
|
|
8776
9026
|
.attachment-button.is-primary,
|
|
8777
9027
|
.export-dialog-links a.is-primary { background: var(--c-accent); border-color: var(--c-accent); color: var(--c-bg); }
|
|
8778
9028
|
.attachment-button:hover:not(:disabled),
|
|
9029
|
+
.presentation-step:hover:not([aria-disabled="true"]),
|
|
8779
9030
|
.presentation-exit:hover,
|
|
8780
9031
|
.export-dialog-links a:hover { filter: brightness(1.12); }
|
|
8781
9032
|
.attachment-button:focus-visible,
|
|
9033
|
+
.presentation-step:focus-visible,
|
|
8782
9034
|
.presentation-exit:focus-visible,
|
|
8783
9035
|
.export-dialog-links a:focus-visible { outline: 2px solid var(--c-accent); outline-offset: 3px; }
|
|
8784
|
-
.attachment-button:disabled
|
|
9036
|
+
.attachment-button:disabled,
|
|
9037
|
+
.presentation-step[aria-disabled="true"] { opacity: 0.5; cursor: default; }
|
|
8785
9038
|
.attachment-review { width: 100%; border-top: 1px solid var(--c-line); padding-top: 12px; }
|
|
8786
9039
|
.attachment-review-actions {
|
|
8787
9040
|
position: sticky;
|