.concept-node{width:100%;height:100%;box-sizing:border-box;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.3;padding:8px 16px;background:var(--node-fill, #f4efe0);border:1px solid transparent;border-radius:0;font-family:var(--font-serif, "ET Book", Palatino, "Palatino Linotype", "Book Antiqua", Georgia, serif);font-size:21px;font-weight:400;color:var(--text-primary, #111111);transition:border-color var(--motion-fast, .12s) var(--motion-ease, cubic-bezier(.2, .9, .2, 1)),background-color var(--motion-fast, .12s) var(--motion-ease, cubic-bezier(.2, .9, .2, 1));box-shadow:none}.concept-node:hover{border-color:var(--border-strong, #9a968a)}.concept-node.selected,.react-flow__node.selected .concept-node{border:1.5px solid var(--accent-border, #b22222);background:var(--node-fill, #f4efe0);color:var(--text-primary, #111111)}.concept-node--predicate{font-style:italic;font-size:17px}.concept-node--junction{width:100%;height:100%;padding:0;background:var(--text-primary, #111111);border:none;border-radius:50%}.concept-node--junction.concept-node--highlighted{box-shadow:0 0 0 3px color-mix(in srgb,var(--node-glow-color, #4a4e9e) 40%,transparent),0 0 16px 3px color-mix(in srgb,var(--node-glow-color, #4a4e9e) 30%,transparent)}.concept-node--junction.concept-node--diff-added{background:var(--ok-fg, #2e7a5b)}.concept-node--junction.concept-node--diff-removed{background:var(--danger-fg, #b22222)}.concept-node--junction.concept-node--diff-changed{background:var(--warn-fg, #8a6a20)}.concept-node--object{position:relative;will-change:box-shadow}.concept-node--object.concept-node--highlighted{box-shadow:0 10px 20px -18px color-mix(in srgb,var(--accent-500, #b22222) 65%,transparent),0 0 0 3px color-mix(in srgb,var(--node-glow-color, #4a4e9e) 40%,transparent),0 0 20px 4px color-mix(in srgb,var(--node-glow-color, #4a4e9e) 30%,transparent)}.concept-node--predicate{will-change:box-shadow}.concept-node--predicate.concept-node--highlighted{box-shadow:0 0 0 3px color-mix(in srgb,var(--node-glow-color, #4a4e9e) 40%,transparent),0 0 20px 4px color-mix(in srgb,var(--node-glow-color, #4a4e9e) 30%,transparent)}.concept-node__handle{width:1px;height:1px;border:none;background:transparent;opacity:0}.concept-node--diff-added{border:1.5px solid var(--ok-fg, #2e7a5b);background:color-mix(in srgb,var(--ok-fg, #2e7a5b) 8%,var(--node-fill, #f4efe0))}.concept-node--diff-removed{border:1.5px solid var(--danger-fg, #b22222);background:color-mix(in srgb,var(--danger-fg, #b22222) 8%,var(--node-fill, #f4efe0));text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--danger-fg, #b22222) 60%,transparent)}.concept-node--diff-changed{border:1.5px solid var(--warn-fg, #8a6a20);background:color-mix(in srgb,var(--warn-fg, #8a6a20) 8%,var(--node-fill, #f4efe0))}.concept-node__binding-indicator{position:absolute;top:3px;right:4px;padding:1px 4px;font-size:9px;line-height:1.4;pointer-events:none;-webkit-user-select:none;user-select:none}.edge-path-ball{background-color:var(--accent-500, #b22222);box-shadow:none}.camera-mode-selector{background:var(--bg-0, #fffff8);border:1px solid var(--border-default, #cccccc);border-radius:0;padding:0;display:flex;gap:0;font-family:var(--font-chrome, "Gill Sans", "Gill Sans MT", Calibri, "Trebuchet MS", sans-serif)}.camera-mode-selector__button{background:transparent;border:none;padding:7px 14px;font-size:var(--type-chrome, 11px);font-weight:400;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted, #6b6b6b);border-radius:0;cursor:pointer;white-space:nowrap;transition:background-color var(--motion-fast, .12s) var(--motion-ease, cubic-bezier(.2, .9, .2, 1)),color var(--motion-fast, .12s) var(--motion-ease, cubic-bezier(.2, .9, .2, 1))}.camera-mode-selector__button+.camera-mode-selector__button{border-left:1px solid var(--border-default, #cccccc)}.camera-mode-selector__button:hover{color:var(--text-primary, #111111);background:var(--bg-3, #eaeeec)}.camera-mode-selector__button:focus-visible{outline:2px solid var(--accent-border, #b22222);outline-offset:-2px}.camera-mode-selector__button--active{background:var(--bg-4, #e0e6e3);color:var(--text-primary, #111111);box-shadow:none}.canvas{position:relative;width:100%;height:100%;--dc-paper: var(--bg-1, #fffff8);--dc-grid: var(--border-subtle, #d3d9d5);--dc-rule: var(--border-default, #cccccc);--dc-ink: var(--text-secondary, #555555);--dc-ink-active: var(--text-primary, #111111);--dc-chrome-bg: var(--bg-0, #fffff8);--dc-chrome-hover: var(--bg-3, #eaeeec);--dc-node-fill: var(--node-fill, #f4efe0);--dc-mask: var(--bg-0, #fffff8);--dc-minimap-bg: var(--bg-2, #f4f6f5);background-color:var(--dc-paper);background-image:radial-gradient(var(--dc-grid) 1px,transparent 1px);background-size:18px 18px}[data-theme=light] .canvas{--dc-grid: color-mix(in srgb, var(--scrim, rgba(17, 17, 17, .35)) 15%, transparent)}.canvas__surface{position:absolute;inset:0}.canvas .react-flow__controls.react-flow__panel{display:flex;flex-direction:row;gap:0;border:1px solid var(--dc-rule);background:var(--dc-chrome-bg);border-radius:0;box-shadow:none}.canvas .react-flow__controls-button{width:34px;height:28px;border:none;border-right:1px solid var(--dc-rule);background:transparent;color:var(--dc-ink);fill:var(--dc-ink)}.canvas .react-flow__controls-button:last-child{border-right:none}.canvas .react-flow__controls-button:hover:not(:disabled){background:var(--dc-chrome-hover);color:var(--dc-ink-active)}.canvas .react-flow__controls-button:active:not(:disabled){background:var(--dc-chrome-hover);color:var(--dc-ink-active)}.canvas .react-flow__controls-button:disabled{color:var(--dc-rule);cursor:default}.canvas .react-flow__controls-button:focus-visible{outline:2px solid var(--accent-border, #b22222);outline-offset:-2px}.canvas .react-flow__controls-button svg{fill:currentColor;max-width:11px;max-height:11px}.canvas .react-flow__attribution{background:var(--dc-chrome-bg);color:var(--dc-ink);border:1px solid var(--dc-rule);padding:1px 4px}.canvas .react-flow__attribution a{color:inherit}.canvas .react-flow__minimap{background-color:var(--dc-minimap-bg);border:1px solid var(--dc-rule);border-radius:var(--radius-2, 0);overflow:hidden}.canvas .react-flow__minimap-mask{fill:color-mix(in srgb,var(--dc-mask) 55%,transparent)}.canvas .react-flow__minimap-node{fill:var(--dc-node-fill);stroke:var(--dc-rule);stroke-width:1}.canvas__slot{position:absolute;z-index:4}.canvas__slot--tr{top:var(--space-3, 12px);right:var(--space-3, 12px)}.canvas__slot--bl{bottom:var(--space-3, 12px);left:var(--space-3, 12px)}.canvas__slot--br{bottom:var(--space-3, 12px);right:var(--space-3, 12px)}
