@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=IBM+Plex+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&family=IBM+Plex+Mono:wght@400;500;600&display=swap";.svelte-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.svelte-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.svelte-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.svelte-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.svelte-flow__pane{z-index:1;touch-action:none}.svelte-flow__pane.draggable{cursor:grab}.svelte-flow__pane.dragging{cursor:grabbing}.svelte-flow__pane.selection{cursor:pointer}.svelte-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.svelte-flow__renderer{z-index:4}.svelte-flow__selection{z-index:6}.svelte-flow__nodesselection-rect:focus,.svelte-flow__nodesselection-rect:focus-visible{outline:none}.svelte-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.svelte-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.svelte-flow .svelte-flow__edges{position:absolute}.svelte-flow .svelte-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.svelte-flow__edge{pointer-events:visibleStroke}.svelte-flow__edge.selectable{cursor:pointer}.svelte-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.svelte-flow__edge.animated path.svelte-flow__edge-interaction{stroke-dasharray:none;animation:none}.svelte-flow__edge.inactive{pointer-events:none}.svelte-flow__edge.selected,.svelte-flow__edge:focus,.svelte-flow__edge:focus-visible{outline:none}.svelte-flow__edge.selected .svelte-flow__edge-path,.svelte-flow__edge.selectable:focus .svelte-flow__edge-path,.svelte-flow__edge.selectable:focus-visible .svelte-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.svelte-flow__edge-textwrapper{pointer-events:all}.svelte-flow__edge .svelte-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.svelte-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.svelte-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.svelte-flow__connection{pointer-events:none}.svelte-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.svelte-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.svelte-flow__nodes{pointer-events:none;transform-origin:0 0}.svelte-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.svelte-flow__node.selectable{cursor:pointer}.svelte-flow__node.draggable{cursor:grab;pointer-events:all}.svelte-flow__node.draggable.dragging{cursor:grabbing}.svelte-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.svelte-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.svelte-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.svelte-flow__handle.connectingfrom{pointer-events:all}.svelte-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.svelte-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.svelte-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.svelte-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.svelte-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.svelte-flow__edgeupdater{cursor:move;pointer-events:all}.svelte-flow__pane.selection .svelte-flow__panel{pointer-events:none}.svelte-flow__panel{position:absolute;z-index:5;margin:15px}.svelte-flow__panel.top{top:0}.svelte-flow__panel.bottom{bottom:0}.svelte-flow__panel.top.center,.svelte-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.svelte-flow__panel.left{left:0}.svelte-flow__panel.right{right:0}.svelte-flow__panel.left.center,.svelte-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.svelte-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.svelte-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.svelte-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.svelte-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.svelte-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.svelte-flow__minimap-svg{display:block}.svelte-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.svelte-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.svelte-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.svelte-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.svelte-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.svelte-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.svelte-flow__controls.horizontal{flex-direction:row}.svelte-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.svelte-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.svelte-flow__edge.updating .svelte-flow__edge-path{stroke:#777}.svelte-flow__edge-text{font-size:10px}.svelte-flow__node.selectable:focus,.svelte-flow__node.selectable:focus-visible{outline:none}.svelte-flow__node-input,.svelte-flow__node-default,.svelte-flow__node-output,.svelte-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.svelte-flow__node-input.selectable:hover,.svelte-flow__node-default.selectable:hover,.svelte-flow__node-output.selectable:hover,.svelte-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.svelte-flow__node-input.selectable.selected,.svelte-flow__node-input.selectable:focus,.svelte-flow__node-input.selectable:focus-visible,.svelte-flow__node-default.selectable.selected,.svelte-flow__node-default.selectable:focus,.svelte-flow__node-default.selectable:focus-visible,.svelte-flow__node-output.selectable.selected,.svelte-flow__node-output.selectable:focus,.svelte-flow__node-output.selectable:focus-visible,.svelte-flow__node-group.selectable.selected,.svelte-flow__node-group.selectable:focus,.svelte-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.svelte-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.svelte-flow__nodesselection-rect,.svelte-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.svelte-flow__nodesselection-rect:focus,.svelte-flow__nodesselection-rect:focus-visible,.svelte-flow__selection:focus,.svelte-flow__selection:focus-visible{outline:none}.svelte-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.svelte-flow__controls-button:disabled{pointer-events:none}.svelte-flow__controls-button:disabled svg{fill-opacity:.4}.svelte-flow__controls-button:last-child{border-bottom:none}.svelte-flow__controls.horizontal .svelte-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.svelte-flow__controls.horizontal .svelte-flow__controls-button:last-child{border-right:none}.svelte-flow__resize-control{position:absolute}.svelte-flow__resize-control.left,.svelte-flow__resize-control.right{cursor:ew-resize}.svelte-flow__resize-control.top,.svelte-flow__resize-control.bottom{cursor:ns-resize}.svelte-flow__resize-control.top.left,.svelte-flow__resize-control.bottom.right{cursor:nwse-resize}.svelte-flow__resize-control.bottom.left,.svelte-flow__resize-control.top.right{cursor:nesw-resize}.svelte-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.svelte-flow__resize-control.handle.left{left:0;top:50%}.svelte-flow__resize-control.handle.right{left:100%;top:50%}.svelte-flow__resize-control.handle.top{left:50%;top:0}.svelte-flow__resize-control.handle.bottom{left:50%;top:100%}.svelte-flow__resize-control.handle.top.left,.svelte-flow__resize-control.handle.bottom.left{left:0}.svelte-flow__resize-control.handle.top.right,.svelte-flow__resize-control.handle.bottom.right{left:100%}.svelte-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.svelte-flow__resize-control.line.left,.svelte-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.svelte-flow__resize-control.line.left{left:0;border-left-width:1px}.svelte-flow__resize-control.line.right{left:100%;border-right-width:1px}.svelte-flow__resize-control.line.top,.svelte-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.svelte-flow__resize-control.line.top{top:0;border-top-width:1px}.svelte-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.svelte-flow__edge-label{text-align:center;position:absolute;padding:2px;font-size:10px;color:var(--xy-edge-label-color, var(--xy-edge-label-color-default));background:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.svelte-flow__container{-webkit-user-select:none;-moz-user-select:none;user-select:none}:root{--blue-950: #10182E;--blue-900: #16213E;--blue-800: #1B2A4A;--blue-700: #243759;--blue-600: #31486F;--blue-500: #43598A;--blue-300: #93A3C4;--blue-200: #C2CBDE;--blue-100: #E1E6EF;--nova-600: #E8632A;--nova-500: #FF7A3D;--nova-400: #FF9256;--nova-100: #FFE5D6;--amber-400: #FFB347;--amber-100: #FFEDD2;--teal-700: #245849;--teal-600: #2E6E5E;--teal-400: #4E927F;--teal-100: #DCEBE5;--paper: #F7F5F2;--paper-2: #EFECE6;--white: #FFFFFF;--gray-600: #6E7480;--gray-500: #8A8F98;--gray-300: #C7CACF;--gray-200: #DFE1E4;--success: #2E6E5E;--warning: #C77E1F;--danger: #C0452C;--text-heading: var(--blue-800);--text-body: #2F3B54;--text-secondary: var(--gray-500);--text-on-dark: #F2F1EE;--text-on-dark-secondary: #A9B2C6;--text-link: var(--nova-600);--surface-page: var(--paper);--surface-card: var(--white);--surface-sunken: var(--paper-2);--surface-dark: var(--blue-800);--surface-darker: var(--blue-900);--border-hairline: #E6E3DD;--border-strong: #C9C5BD;--border-on-dark: rgba(242, 241, 238, .16);--accent: var(--nova-500);--accent-hover: var(--nova-600);--focus-ring: rgba(255, 122, 61, .45);--nova-gradient: radial-gradient(circle at 50% 45%, var(--amber-400), var(--nova-500));--font-display: "Space Grotesk", "IBM Plex Sans", sans-serif;--font-body: "IBM Plex Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace;--text-display: clamp(40px, 5vw, 56px);--text-h1: 36px;--text-h2: 28px;--text-h3: 22px;--text-h4: 18px;--text-body-size: 16px;--text-small: 14px;--text-caption: 12.5px;--text-mono-size: 13.5px;--leading-tight: 1.12;--leading-heading: 1.2;--leading-body: 1.55;--weight-display: 700;--weight-heading: 600;--weight-medium: 500;--tracking-display: -.015em;--tracking-label: .14em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--container-max: 1120px;--container-text: 720px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-full: 999px;--shadow-card: 0 1px 2px rgba(27, 42, 74, .06);--shadow-raised: 0 2px 8px rgba(27, 42, 74, .08), 0 1px 2px rgba(27, 42, 74, .05);--shadow-overlay: 0 12px 40px rgba(22, 33, 62, .18);--ease-aperture: cubic-bezier(.22, .9, .3, 1);--duration-fast: .14s;--duration-base: .24s;--duration-slow: .42s}html,body,#root{margin:0;padding:0;height:100%}body{background:var(--surface-page);font-family:var(--font-body);color:var(--text-body)}a{color:var(--text-link);text-decoration:none}a:hover{color:var(--nova-500)}::selection{background:var(--nova-100)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.field{height:36px;padding:0 10px;font-size:14px;font-family:var(--font-body);color:var(--text-body);background:var(--white);border:1px solid var(--border-strong);border-radius:var(--radius-sm);outline:none;width:100%;box-sizing:border-box}.field--mono{font-family:var(--font-mono);font-size:12px}.field--sm{height:30px;font-size:11px}.field--sm-mono{height:30px;padding:0 10px;font-family:var(--font-mono);font-size:11px;color:var(--text-body);background:var(--white);border:1px solid var(--border-strong);border-radius:var(--radius-sm);outline:none;width:100%;box-sizing:border-box}textarea.field{height:auto;padding:8px 10px;resize:vertical;line-height:1.5}.field-label{font-family:var(--font-mono);font-size:var(--label-size, 11px);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-secondary);margin-top:var(--label-mt, 0)}.hint-text{font-family:var(--font-body);font-size:var(--hint-size, 12px);line-height:1.5;color:var(--text-secondary)}.note-text{margin:0;font-size:var(--note-size, 13px);line-height:1.6;color:var(--text-secondary)}.icon-btn{border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--text-secondary);line-height:1;display:inline-flex;align-items:center;justify-content:center}.icon-btn--sm{width:22px;height:22px;font-size:14px}.icon-btn--md{width:26px;height:26px;font-size:15px}.icon-btn--md-tall{width:26px;height:30px;font-size:16px}.icon-btn--round{width:28px;height:28px;border-radius:6px;font-size:15px}.flex-col{display:flex;flex-direction:column;gap:var(--gap, 0)}.flex-row{display:flex;align-items:center;gap:var(--gap, 0)}.flex-wrap{display:flex;flex-wrap:wrap;gap:var(--gap, 6px)}.flex-row--end{justify-content:flex-end}.flex-row--between{justify-content:space-between}.flex-fill{flex:1;min-height:0}.flex-ml-auto{margin-left:auto}.min-w-0{min-width:0}.mono-iri{font-family:var(--font-mono);font-size:11px;color:var(--iri-color, var(--text-secondary));word-break:break-all}.mono-iri--sm{font-size:10.5px}.edge-label-wrapper{position:absolute;pointer-events:all;transform:translate(-50%,-50%);z-index:var(--wrapper-z, 6)}.edge-edit-wrapper{position:relative;width:190px}.connection-line{pointer-events:none}.zoom-toolbar{--pill-inset: auto 16px 14px auto;--gap: 2px;--pill-padding: 3px;inset:var(--pill-inset)}.divider--vertical{--divider-h: 16px;--divider-w: 1px;--divider-margin: 0 2px}.svg-stroke{stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;fill:none}.svg-stroke--sm{stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none}.hint-text--mr-auto{margin-right:auto}.ontology-select{max-width:150px}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip{padding:3px 10px;background:var(--surface-sunken);border:1px solid var(--chip-border, var(--border-hairline));border-radius:var(--radius-full);font-family:var(--font-body);font-size:12px;color:var(--chip-color, var(--text-body));cursor:pointer}.kbd{font-family:var(--font-mono);font-size:12px;background:var(--surface-sunken);border:1px solid var(--border-hairline);border-radius:6px;padding:2px 8px;white-space:nowrap}.sunken-card{display:flex;flex-direction:column;gap:8px;padding:12px 14px;background:var(--surface-sunken);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);font-size:var(--card-size, inherit);line-height:var(--card-lh, inherit)}.divider{height:var(--divider-h, 1px);width:var(--divider-w, auto);margin:var(--divider-margin, 0);background:var(--border-hairline)}.danger-btn{height:34px;border:1px solid var(--border-hairline);background:transparent;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13.5px;color:var(--danger);cursor:pointer}.ontology-row{display:grid;grid-template-columns:26px 1fr auto auto;align-items:center;gap:10px;padding:10px 12px;background:var(--surface-sunken);border:1px solid var(--border-hairline);border-radius:var(--radius-sm)}.ontology-row--hidden{opacity:.55}.color-swatch{width:26px;height:26px;padding:0;border:none;background:transparent;cursor:pointer}.inline-label-input{font:inherit;font-weight:var(--weight-medium);color:var(--text-heading);border:none;background:transparent;outline:none;padding:0}.confirm-delete-btn{height:28px;padding:0 10px;border:1px solid var(--danger);background:transparent;border-radius:6px;cursor:pointer;color:var(--danger);font-family:var(--font-body);font-size:12px}.panel-shell{width:300px;flex:none;background:var(--surface-card);border-left:1px solid var(--border-hairline);display:flex;flex-direction:column;overflow-y:auto;z-index:30}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px 18px 12px}.panel-title{font-family:var(--font-display);font-weight:var(--weight-heading);font-size:15px;color:var(--text-heading);white-space:nowrap}.panel-badge{font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-label);text-transform:uppercase;padding:2px 7px;border-radius:var(--radius-full);overflow:hidden;color:var(--badge-color, var(--text-secondary));border:var(--badge-border, none)}.panel-body{display:flex;flex-direction:column;gap:18px;padding:4px 18px 20px}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:13px}.code-block{margin:0;background:var(--surface-sunken);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);padding:14px 16px;font-family:var(--font-mono);font-size:12px;line-height:1.65;color:var(--text-body);max-height:280px;overflow:auto;white-space:pre}.zoom-btn{width:28px;height:28px;border:none;background:transparent;border-radius:var(--radius-full);cursor:pointer;color:var(--text-body);font-size:16px;line-height:1;font-family:var(--font-body);display:inline-flex;align-items:center;justify-content:center}.zoom-btn--label{width:auto;min-width:48px;height:28px;padding:0 6px;color:var(--text-secondary);font-family:var(--font-mono);font-size:11px}.toolbar-pill{position:absolute;z-index:12;display:flex;align-items:center;gap:var(--gap, 0);padding:var(--pill-padding, 0);inset:var(--pill-inset, auto);background:var(--surface-card);border:1px solid var(--border-hairline);border-radius:var(--radius-full);box-shadow:0 1px 2px #1b2a4a0d}.dialog-close{width:28px;height:28px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--text-secondary);font-size:16px;line-height:1}.room-badge{font-family:var(--font-mono);font-size:11.5px;color:var(--text-secondary);background:var(--surface-sunken);padding:3px 8px;border-radius:6px;white-space:nowrap}.sync-indicator{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;white-space:nowrap;font-weight:600}.sync-indicator--connecting{color:var(--warning)}.sync-indicator--offline{color:var(--danger)}.sync-indicator--local{color:var(--text-secondary)}.sync-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.sync-indicator--connecting .sync-dot{animation:pulse 1.4s ease-in-out infinite}.node-badge{font-family:var(--font-mono);letter-spacing:var(--tracking-label);text-transform:uppercase;white-space:nowrap}.suggestion-list{position:absolute;top:38px;left:0;right:0;background:var(--surface-card);border:1px solid var(--border-hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay);overflow:hidden}.suggestion-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;padding:8px 12px;background:transparent;border:none;font-family:var(--font-body);font-size:13px;color:var(--text-body);cursor:pointer}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#10182e52;display:flex;align-items:center;justify-content:center}.dialog-container{max-width:calc(100vw - 48px);max-height:calc(100vh - 48px);overflow-y:auto;background:var(--surface-card);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay);padding:24px;width:var(--dialog-width, auto)}.dialog-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.dialog-title{font-family:var(--font-display);font-weight:var(--weight-heading);font-size:17px;color:var(--text-heading)}.dialog-body{display:flex;flex-direction:column;gap:20px}.dialog-text{margin:0;font-family:var(--font-body);font-size:14px;line-height:1.5;color:var(--text-body)}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}.toast{position:fixed;bottom:20px;right:20px;z-index:200;display:flex;align-items:center;gap:8px;padding:12px 18px;background:var(--blue-800);color:var(--text-on-dark);border-radius:var(--radius-md);box-shadow:var(--shadow-overlay);font-size:13.5px;font-family:var(--font-body)}.app-root{width:100vw;height:100vh;display:flex;flex-direction:column;font-family:var(--font-body);color:var(--text-body);background:var(--surface-page)}.app-header{height:56px;flex:none;display:flex;align-items:center;gap:14px;padding:0 16px;background:var(--surface-card);border-bottom:1px solid var(--border-hairline);position:relative;z-index:40}.app-brand{font-family:var(--font-display);font-weight:var(--weight-heading);font-size:16px;color:var(--text-heading)}.header-divider{width:1px;height:22px;background:var(--border-hairline);flex:none}.grid-row{display:grid;gap:6px;align-items:center}.grid-row--axiom{grid-template-columns:1fr 22px}.grid-row--property{grid-template-columns:1fr 1fr 22px}.field--compact{height:32px;padding:0 6px;font-size:12.5px;max-width:var(--field-max-w, none)}.field--property{height:32px;padding:0 9px;font-size:13px}.mono-label{font-family:var(--font-mono);font-size:11.5px;color:var(--text-heading);min-width:44px;flex:none}.truncate-body{font-size:12.5px;color:var(--text-body)}.node-card{position:relative;display:flex;flex-direction:column;align-items:center;cursor:grab;-webkit-user-select:none;user-select:none;font-family:var(--font-body);font-weight:var(--weight-medium)}.node-card--instance{padding:9px 14px;border-radius:var(--radius-md);background:var(--surface-card);font-size:14.5px;color:var(--text-heading);min-width:60px;gap:4px;border:1px solid var(--node-border, var(--border-hairline));box-shadow:var(--node-shadow, var(--shadow-card))}.node-card--ontology{padding:8px 13px;font-size:13.5px;min-width:54px;gap:2px;border-radius:var(--node-radius, var(--radius-md));border:var(--node-border, 1.5px solid var(--border-hairline));box-shadow:var(--node-shadow, var(--shadow-card));background:var(--node-bg, var(--surface-card));color:var(--node-color, var(--text-heading))}.node-input{font:inherit;text-align:center;border:none;outline:none;background:transparent;color:inherit;width:var(--input-width, auto)}.edge-label{padding:3px 11px;background:var(--surface-card);border-radius:var(--radius-full);font-size:12px;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;box-shadow:0 1px 2px #1b2a4a0d;border:var(--edge-border, 1px solid var(--border-hairline));color:var(--edge-color, var(--text-secondary))}.edge-edit-input{width:100%;box-sizing:border-box;height:32px;padding:0 10px;font-size:13px;font-family:var(--font-body);color:var(--text-body);background:var(--white);border:1px solid var(--accent);border-radius:var(--radius-full);outline:none;box-shadow:0 0 0 3px var(--focus-ring)}.mode-bar{position:absolute;top:12px;left:12px;z-index:20;display:flex;align-items:center;gap:8px;padding:6px 8px;background:var(--surface-card);border:1px solid var(--border-hairline);border-radius:var(--radius-full);box-shadow:var(--shadow-raised)}.mode-toggle{display:flex;gap:2px;padding:2px;background:var(--surface-sunken);border-radius:var(--radius-full)}.mode-toggle-btn{height:26px;padding:0 12px;border:none;border-radius:var(--radius-full);cursor:pointer;font-family:var(--font-body);font-size:12.5px;font-weight:var(--toggle-weight, 400);background:var(--toggle-bg, transparent);color:var(--toggle-color, var(--text-secondary));box-shadow:var(--toggle-shadow, none)}.color-dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--dot-color, transparent)}.color-picker-btn{width:24px;height:24px;border-radius:50%;cursor:pointer;padding:0;border:var(--picker-border, 2px solid transparent);background:var(--picker-bg, transparent)}.empty-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:8}.empty-content{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:420px;padding:24px}.empty-circle{width:96px;height:96px;border-radius:50%;border:1px dashed var(--border-strong);display:flex;align-items:center;justify-content:center;margin-bottom:20px}.empty-heading{margin:0 0 8px;font-family:var(--font-display);font-weight:var(--weight-heading);font-size:22px;color:var(--text-heading)}.empty-text{margin:0 0 20px;font-size:14.5px;line-height:1.6;color:var(--text-secondary)}.canvas-container{height:100%;width:100%;display:flex;min-height:0}.canvas-wrapper{flex:1;position:relative;overflow:hidden;background:var(--surface-page)}.hint-bar{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);pointer-events:none;white-space:nowrap;gap:16px;padding:7px 14px;inset:auto auto 14px 16px}.hint-divider{flex:none;background:var(--border-hairline)}.hint-divider--light{width:1px;height:12px}.hint-divider--small{width:1px;height:8px}.file-input{height:auto;padding:8px}.warning-text{font-size:12.5px;color:var(--warning)}.parsed-label{font-weight:var(--weight-medium);color:var(--text-heading)}.parsed-count{font-size:13px}.import-mode-toggle{display:flex;gap:4px;background:var(--bg-surface-raised, var(--bg-surface));border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px;width:fit-content}.import-mode-btn{font-family:var(--font-sans);font-size:13px;font-weight:var(--weight-medium);padding:4px 14px;border:none;border-radius:2px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.import-mode-btn:hover{color:var(--text)}.import-mode-btn--active{background:var(--white);color:var(--text);box-shadow:0 1px 2px #00000014}.title-edit-input{font-family:var(--font-display);font-weight:600;font-size:15px;color:var(--text-heading);height:28px;padding:0 8px;background:var(--white);border:1px solid var(--accent);border-radius:var(--radius-sm);outline:none;width:var(--input-width, auto)}.title-display{font-family:var(--font-display);font-weight:600;font-size:15px;white-space:nowrap;cursor:text;color:var(--title-color, var(--text-heading))}.hint-text--sm{font-size:12.5px}.note-text--danger{color:var(--danger)}.mono-badge{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary)}.mono-badge--xs{font-family:var(--font-mono);font-size:9px;color:var(--text-secondary)}.type-badge{font-size:10px;color:var(--teal-700);background:var(--teal-100);padding:2px 8px;border-radius:var(--radius-full)}.kind-badge{font-size:9px;opacity:.85;color:var(--badge-color, inherit)}.empty-hint{font-size:13.5px;color:var(--text-body)}.empty-hint-list{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.empty-hint-row{display:flex;align-items:center;gap:10px}.empty-cta{pointer-events:auto;margin-top:26px}.ontology-iri{font-size:11px;color:var(--text-secondary)}.ontology-spacer{width:28px}.mono-prop-label{font-family:var(--font-mono);font-size:12px}.prefix-input{width:62px;flex:none}.node-label{white-space:nowrap;opacity:var(--label-opacity, 1)}.imports-prompt,.imports-summary{display:flex;flex-direction:column;gap:8px;padding:12px 14px;background:var(--surface-sunken);border:1px solid var(--border-hairline);border-radius:var(--radius-sm)}.imports-prompt-title{font-size:13px;font-weight:var(--weight-medium);color:var(--text-heading)}.import-target-row{display:flex;align-items:center;gap:8px;min-width:0;padding:6px 10px;background:var(--surface-card);border:1px solid var(--border-hairline);border-radius:var(--radius-sm);font-size:12.5px;cursor:pointer}.import-target-row--error{border-color:var(--danger)}.import-target-url{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono);color:var(--text-secondary)}.import-target-status{flex:none;font-size:12px;color:var(--text-secondary);white-space:nowrap}.import-target-status--done{color:var(--success)}.import-target-status--error{color:var(--danger)}
