.react-flow{--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:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--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:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--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:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--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 #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-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:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--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:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--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:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--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 #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-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}.react-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}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;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%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-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)))}.react-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)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;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));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-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)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-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)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}:root{--bg:#ece7dc;--chrome:#f6f2e8;--surface:#fff;--ink:#262320;--dim:#6b6456;--line:#c7bfa9;--accent:#35618c;--accent-ink:#fff;--pk:#b9772e;--danger:#aa3b3b;--ui:"IBM Plex Sans JP", system-ui, -apple-system, "Hiragino Sans", sans-serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1c1a17;--chrome:#23201b;--surface:#292620;--ink:#ece6d8;--dim:#a39c8a;--line:#443f34;--accent:#7db0de;--accent-ink:#14100c;--pk:#e0a354;--danger:#e58a7b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font:13px/1.5 var(--ui);-webkit-tap-highlight-color:transparent;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.mono{font-family:var(--mono)}.dim{color:var(--dim)}.sp{flex:1}.app{height:100%;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;display:flex}.warn{background:var(--pk);color:var(--accent-ink);padding:6px 12px}.btn{border:1px solid var(--line);background:var(--surface);cursor:pointer;white-space:nowrap;touch-action:manipulation;border-radius:6px;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0 12px;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{opacity:.4;cursor:default}.btn.icon{padding:0;font-size:18px}.btn.on,.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn.danger{color:var(--danger);border-color:var(--danger)}.seg{display:flex}.seg .btn{border-radius:0;margin-left:-1px}.seg .btn:first-child{border-radius:6px 0 0 6px;margin:0}.seg .btn:last-child{border-radius:0 6px 6px 0}.stage{--xy-background-color:var(--bg);--xy-background-pattern-dots-color-default:var(--line);flex:1;min-height:0;position:relative}.status{z-index:4;font:11px var(--mono);color:var(--dim);background:var(--chrome);border:1px solid var(--line);pointer-events:none;border-radius:4px;padding:2px 8px;position:absolute;bottom:12px;left:12px}.status:empty{display:none}.ent{background:var(--surface);border:1.5px solid var(--ink);width:max-content;min-width:220px;box-shadow:3px 3px 0 var(--line);cursor:grab;border-radius:3px}.react-flow__node.selected .ent{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent)}.ent-head{background:var(--chrome);border-bottom:1.5px solid var(--ink);border-radius:2px 2px 0 0;flex-direction:column;padding:6px 10px;display:flex}.ent-head b{font-size:14px;font-weight:600}.ent-head .mono{color:var(--dim);font-size:11px}.ent-cols{grid-template-columns:auto repeat(var(--n,1), auto) auto;column-gap:10px;display:grid}.ent-col{grid-template-columns:subgrid;grid-column:1/-1;align-items:baseline;padding:3px 10px;font-size:12px;display:grid}.ent-col.pk{border-bottom:1px dashed var(--line)}.ent-col.pk .cl{font-weight:600}.ent-col .badges{gap:3px;display:inline-flex}.ent-col .cl,.ent-col .cp{white-space:nowrap}.ent-col .cp{color:var(--dim);font-size:11px}.ctype{color:var(--dim);text-align:right;white-space:nowrap;font-size:11px}.ent-empty{color:var(--dim);padding:6px 10px;font-size:12px}.badge{border:1px solid;border-radius:2px;padding:0 4px;font-size:9px;font-style:normal;font-weight:600;line-height:14px}.badge.pk{color:var(--pk)}.badge.fk{color:var(--accent)}.ent-handle.react-flow__handle{background:var(--accent);border:2px solid var(--surface);opacity:0;width:22px;height:22px;transition:opacity .12s}@media (hover:hover){.react-flow__node:hover .ent-handle{opacity:1}}.react-flow__node.selected .ent-handle{opacity:1}@media (pointer:coarse){.ent-handle.react-flow__handle{width:28px;height:28px}}.rel .react-flow__edge-path{stroke:var(--accent);stroke-width:2px}.rel.sel .react-flow__edge-path{stroke:var(--pk);stroke-width:3px}.rel .marks{stroke:var(--accent);stroke-width:2px;fill:none}.rel.sel .marks{stroke:var(--pk)}.rel .mark-hole{fill:var(--bg)}.rel-label{font:12px var(--ui);fill:var(--ink);text-anchor:middle;paint-order:stroke;stroke:var(--bg);stroke-width:4px}.react-flow__connection-path{stroke:var(--pk);stroke-width:2.5px}.panel{z-index:5;background:var(--chrome);border-left:1px solid var(--line);flex-direction:column;width:360px;max-width:100%;display:flex;position:absolute;top:0;bottom:0;right:0}.panel-head{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:8px 12px;display:flex}.panel-head b{flex:1;font-size:15px;font-weight:600}.panel-body{flex-direction:column;flex:1;gap:10px;padding:12px;display:flex;overflow:auto}.section{color:var(--dim);margin-top:4px;font-size:12px}.grid2{grid-template-columns:1fr 1fr;gap:6px;display:grid}.f{color:var(--dim);flex-direction:column;gap:4px;font-size:12px;display:flex}input[type=text],select,textarea{border:1px solid var(--line);background:var(--surface);border-radius:5px;width:100%;min-width:0;min-height:40px;padding:6px 10px}.col-card{border:1px solid var(--line);background:var(--surface);border-radius:6px;flex-direction:column;gap:6px;padding:8px;display:flex}.flags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chk{border:1px solid var(--line);cursor:pointer;border-radius:5px;align-items:center;gap:6px;min-height:40px;padding:0 10px;font-size:12px;display:inline-flex}.chk input{width:16px;height:16px;margin:0}.chk:has(input:checked){background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.overlay{z-index:20;background:#14100a80;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--chrome);border:1px solid var(--line);border-radius:8px;flex-direction:column;width:min(620px,100%);max-height:100%;display:flex}.modal-body{flex-direction:column;gap:10px;padding:14px;display:flex;overflow:auto}.code{resize:vertical;white-space:pre;min-height:300px;font:12px/1.5 var(--mono)}.plist{flex-direction:column;gap:8px;display:flex}.prow{border:1px solid var(--line);background:var(--surface);border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;display:flex}.prow.cur{border-color:var(--accent)}.prow .info{flex:1;min-width:140px}.prow .info small{color:var(--dim);display:block}.err{color:var(--danger)}@media (width<=760px){.panel{border-left:0;border-top:1px solid var(--line);width:100%;height:58%;top:auto;box-shadow:0 -6px 20px #0000002e}}.results{z-index:15;background:var(--chrome);border:1px solid var(--line);border-radius:6px;max-height:60vh;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 8px 24px #00000040}.results li{cursor:pointer;border-radius:4px;align-items:baseline;gap:8px;min-height:40px;padding:6px 10px;display:flex}.results li.on,.results li:hover{background:var(--surface);outline:1px solid var(--accent)}.results li.none{color:var(--dim);cursor:default}.results li.create{border-top:1px dashed var(--line)}.results .placed{color:var(--dim);margin-left:auto;font-size:11px}.kind{font:600 9px/14px var(--mono);letter-spacing:.04em;background:var(--ink);color:var(--surface);border-radius:2px;flex:none;padding:0 5px}.kind.sequence{color:var(--fk,var(--pk));background:0 0;border:1px solid}.ent-seq{color:var(--dim);padding:6px 10px;font-size:11px}.seq-nums{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.kind.view{color:var(--pk);border:1px solid var(--pk);background:0 0}.ent-title{align-items:center;gap:6px;display:flex}.ent-title .kind{margin-left:auto}.ent.view{border-style:dashed}.tabs{background:var(--chrome);border-bottom:1px solid var(--line);align-items:stretch;gap:2px;padding:4px 12px 0;display:flex;overflow-x:auto}.tab{border:1px solid var(--line);background:var(--bg);color:var(--dim);border-bottom:0;border-radius:6px 6px 0 0;flex:none;align-items:center;display:flex}.tab.dragging{opacity:.75;cursor:grabbing;-webkit-user-select:none;user-select:none;box-shadow:0 4px 12px #0000004d}.tab.on{background:var(--surface);color:var(--ink);border-color:var(--accent);box-shadow:inset 0 2px 0 var(--accent)}.tab button,.tab-add{cursor:pointer;min-height:40px;color:inherit;white-space:nowrap;background:0 0;border:0;padding:0 12px}.tab-label{font-weight:500}.tab-x{color:var(--dim);padding:0 10px!important}.tab-x:hover{color:var(--danger)}.tab input{width:140px;min-height:34px;margin:3px}.tab-add{min-width:40px;color:var(--accent)}.tab-add.wide{color:var(--dim);font-size:12px}.empty-hint{z-index:3;color:var(--dim);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.empty-hint .btn{pointer-events:auto}.swatches{flex-wrap:wrap;gap:6px;display:flex}.sw{border:2px solid var(--line);cursor:pointer;touch-action:manipulation;border-radius:50%;width:36px;height:36px;padding:0}.sw.on{border-color:var(--ink);box-shadow:0 0 0 2px var(--accent)}.sw.none{background:var(--surface);color:var(--dim);font-size:16px}.cat{color:var(--ink);background:color-mix(in srgb, var(--c) 35%, var(--surface));border:1px solid var(--c);white-space:nowrap;border-radius:7px;padding:0 6px;font-size:10px;line-height:14px}.results li.group{min-height:0;color:var(--dim);cursor:default;border-left:3px solid var(--c,var(--line));padding:4px 10px;font-size:11px}.results li.group:hover{background:0 0;outline:0}.ent-title b{white-space:nowrap;min-width:0}.ent-head .mono{white-space:nowrap}.cat{flex:none}.copy-mode [data-copy]{cursor:copy;border-radius:2px}.copy-mode [data-copy]:hover{outline:1.5px solid var(--accent);background:color-mix(in srgb, var(--accent) 18%, transparent)}.toast{z-index:8;background:var(--ink);max-width:80%;color:var(--surface);pointer-events:none;text-overflow:ellipsis;white-space:nowrap;border-radius:20px;padding:8px 16px;font-size:13px;position:absolute;bottom:24px;left:50%;overflow:hidden;transform:translate(-50%)}.col-card{position:relative}.col-card.dragging{opacity:.45}.col-card.over-above{box-shadow:0 -3px 0 var(--accent)}.col-card.over-below{box-shadow:0 3px 0 var(--accent)}.handle{touch-action:none;cursor:grab;letter-spacing:-2px;min-width:44px;color:var(--dim);font-size:18px}.copy-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.copy-row .btn{min-height:36px;font-size:12px}.grip{z-index:2000;pointer-events:all;cursor:pointer;touch-action:none;border-radius:50%;width:30px;height:30px;position:absolute;top:0;left:0}.grip.on{cursor:grab}.grip.on:after{content:"";background:var(--pk);border:2px solid var(--surface);border-radius:50%;position:absolute;inset:8px}.rel-preview{fill:none;stroke:var(--pk);stroke-width:2.5px;stroke-dasharray:6 4;pointer-events:none}.note{border:1.5px dashed color-mix(in srgb, var(--ink) 38%, transparent);background:color-mix(in srgb, var(--accent) 7%, var(--surface));width:200px;color:var(--ink);border-radius:8px;flex-direction:column;font-size:13px;display:flex}.note-bar{color:var(--dim);cursor:grab;justify-content:space-between;align-items:center;padding:0 4px 0 10px;font-size:11px;display:flex}.note-bar button{min-width:32px;min-height:28px;color:inherit;cursor:pointer;background:0 0;border:0;font-size:16px}.note textarea{width:100%;color:inherit;resize:none;font:13px/1.5 var(--ui);background:0 0;border:0;border-radius:0 0 8px 8px;min-height:0;padding:6px 10px;line-height:1.5;display:block}.note.sized textarea{flex:1;height:auto;overflow:auto}.note-handle.react-flow__handle{opacity:0;pointer-events:none;width:1px;height:1px}.note-link path{fill:none;stroke:color-mix(in srgb, var(--ink) 40%, transparent);stroke-width:1.2px;stroke-dasharray:2 4;stroke-linecap:round}.note-link path.note-link-hit{stroke:#0000;stroke-width:18px;stroke-dasharray:none;pointer-events:stroke;cursor:pointer}.link-banner{z-index:8;background:var(--accent);color:var(--accent-ink);border-radius:999px;align-items:center;gap:10px;padding:6px 8px 6px 14px;font-size:13px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}.link-banner .btn{min-height:30px}.note-link circle{fill:color-mix(in srgb, var(--ink) 40%, transparent)}.quick{z-index:9;background:var(--chrome);border:1px solid var(--line);border-radius:8px;gap:2px;padding:4px;display:flex;position:absolute;box-shadow:0 6px 20px #00000047}.quick .btn{background:0 0;border-color:#0000;min-width:44px;padding:0 8px}.quick .btn:hover{background:var(--surface);border-color:var(--accent)}.quick svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.menu-scrim{z-index:18;position:fixed;inset:0}.end-menu{z-index:19;background:var(--chrome);border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:4px;min-width:190px;padding:8px;display:flex;position:fixed;box-shadow:0 8px 24px #0000004d}.end-menu small{color:var(--dim)}body{overscroll-behavior:none}.stage{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.note textarea,.stage input,.stage textarea{-webkit-user-select:text;user-select:text}.board[data-locked] .react-flow__handle,.board[data-locked] .grip.on{pointer-events:none}@media (pointer:coarse){input[type=text],select,textarea,.note textarea{font-size:16px}.btn,.results li{min-height:48px}}.type-icon{vertical-align:-3px;fill:none;width:16px;height:16px;stroke:var(--accent);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;margin-right:6px}.bubble{z-index:19;background:var(--chrome);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:2px;width:224px;padding:6px;display:flex;position:fixed;box-shadow:0 8px 24px #0000004d}.bubble:before{content:"";top:-7px;left:calc(var(--arrow,24px) - 6px);background:var(--chrome);border-left:1px solid var(--line);border-top:1px solid var(--line);width:12px;height:12px;position:absolute;transform:rotate(45deg)}.bubble small{color:var(--dim);padding:2px 8px 4px}.bubble button{min-height:48px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 10px;display:flex}.bubble button:hover,.bubble button:focus-visible{background:color-mix(in srgb, var(--accent) 14%, transparent)}.bubble button span{color:var(--dim);font-size:12px}.uc-stage{--xy-background-color:var(--bg);--xy-background-pattern-dots-color-default:var(--line);position:absolute;inset:0}.uc-bar{z-index:4;flex-wrap:wrap;gap:6px;max-width:calc(100% - 20px);display:flex;position:absolute;top:10px;left:10px}.uc-bar select{min-height:40px}.uc-actor{min-width:72px;color:var(--ink);text-align:center;flex-direction:column;align-items:center;gap:2px;padding:4px 6px;display:flex}.uc-actor svg{fill:none;stroke:var(--ink);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.uc-actor small{color:var(--dim)}.react-flow__node.selected .uc-actor{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.uc-oval{border:2px solid var(--accent);background:var(--surface);min-width:150px;min-height:64px;color:var(--ink);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;padding:10px 26px;display:flex}.uc-oval small{color:var(--dim)}.react-flow__node.selected .uc-oval{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.uc-handle.react-flow__handle{background:var(--accent);border:2px solid var(--surface);opacity:0;width:22px;height:22px;transition:opacity .12s}@media (hover:hover){.react-flow__node:hover .uc-handle{opacity:1}}.react-flow__node.selected .uc-handle{opacity:1}@media (pointer:coarse){.uc-handle.react-flow__handle{width:28px;height:28px}}.react-flow__node-boundary{pointer-events:none!important}.react-flow__node-boundary .uc-boundary-title,.react-flow__node-boundary .react-flow__resize-control{pointer-events:all}.uc-boundary{border:2px solid color-mix(in srgb, var(--ink) 55%, transparent);background:color-mix(in srgb, var(--surface) 35%, transparent);border-radius:6px;width:100%;height:100%}.uc-boundary.sel{border-color:var(--accent)}.uc-boundary-title{cursor:grab;background:var(--chrome);color:var(--ink);border-radius:4px;margin:6px 10px;padding:2px 8px;font-weight:600;display:inline-block}.uc-link .react-flow__edge-path{stroke:var(--ink);stroke-width:1.6px;fill:none}.uc-link.dashed .react-flow__edge-path{stroke-dasharray:7 5}.uc-link.sel .react-flow__edge-path{stroke:var(--accent);stroke-width:2.4px}.uc-link .arrow{stroke:var(--ink);stroke-width:1.6px;fill:none}.uc-link.sel .arrow{stroke:var(--accent)}.uc-link .tri{fill:var(--surface);stroke:var(--ink);stroke-width:1.6px}.uc-link-label{z-index:1;white-space:nowrap;color:var(--dim);background:var(--bg);pointer-events:none;padding:0 4px;font-size:12px;position:absolute}.cls{background:var(--surface);border:1.5px solid var(--ink);min-width:140px;color:var(--ink);border-radius:3px;font-size:12px}.react-flow__node.selected .cls{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.cls.interface{border-style:dashed}.cls-head{text-align:center;white-space:nowrap;flex-direction:column;align-items:center;padding:6px 12px;display:flex}.cls-head b{font-size:14px}.cls-head small{color:var(--dim)}.cls-head b.abs,.cls-line.abs{font-style:italic}.cls-sec{border-top:1.5px solid var(--ink);min-height:20px;padding:4px 10px}.cls-line{white-space:nowrap;font-size:11.5px}.cls-line.static{text-decoration:underline}.cls-head{position:relative}.cls-gen{color:var(--dim);margin-left:4px;font-size:12px;font-weight:400}.cls-fold{width:18px;height:18px;color:var(--dim);cursor:pointer;background:0 0;border:0;padding:0;position:absolute;top:2px;right:2px}.react-flow__node-pkg{pointer-events:none!important}.react-flow__node-pkg .cls-pkg-title,.react-flow__node-pkg .react-flow__resize-control{pointer-events:all}.cls-pkg{border:1.5px solid color-mix(in srgb, var(--ink) 45%, transparent);background:color-mix(in srgb, var(--surface) 30%, transparent);width:100%;height:100%}.cls-pkg.sel{border-color:var(--accent)}.cls-pkg-title{cursor:grab;border-right:1.5px solid color-mix(in srgb, var(--ink) 45%, transparent);border-bottom:1.5px solid color-mix(in srgb, var(--ink) 45%, transparent);background:var(--chrome);max-width:70%;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;padding:4px 12px;font-weight:600;display:inline-block;overflow:hidden}.cls-via{stroke:var(--ink);stroke-dasharray:4 3;fill:none}.cls-bend{fill:var(--accent);stroke:var(--surface);stroke-width:2px;cursor:move;pointer-events:all}.uc-link-label.role{color:var(--dim);font-style:italic}.mem-row{align-items:center;gap:4px;margin-bottom:4px;display:flex}.mem-row select{width:44px}.mem-row input{flex:1;min-width:0}.mem-row .btn.icon{min-width:28px;padding:2px 4px}.mem-hints{flex-wrap:wrap;gap:4px;margin:-2px 0 6px 48px;display:flex}input.bad{border-color:var(--danger)}.dim.warn{color:var(--danger)}.uc-link .dia{fill:var(--surface);stroke:var(--ink);stroke-width:1.6px}.uc-link .dia.fill{fill:var(--ink)}.uc-link.sel .dia{stroke:var(--accent)}.seg.wrap{flex-wrap:wrap}.act{color:var(--ink);position:relative}.act-start{background:var(--ink);border-radius:50%;width:24px;height:24px}.act-end{border:2px solid var(--ink);background:var(--surface);border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.act-end i{background:var(--ink);border-radius:50%;width:16px;height:16px}.act-action{border:1.5px solid var(--ink);background:var(--surface);text-align:center;white-space:nowrap;border-radius:14px;place-items:center;min-width:120px;min-height:44px;padding:8px 16px;display:grid}.act-decision{width:48px;height:48px}.act-decision svg{fill:var(--surface);stroke:var(--ink);stroke-width:1.6px;display:block}.act-cond{white-space:nowrap;color:var(--dim);margin-left:6px;font-size:12px;position:absolute;top:50%;left:100%;transform:translateY(-50%)}.act-bar{background:var(--ink);border-radius:2px;width:120px;height:8px}.act-bar.vertical{width:8px;height:120px}.act-object{border:1.5px solid var(--ink);background:var(--surface);text-align:center;white-space:nowrap;border-radius:2px;min-width:100px;padding:6px 14px;display:grid}.act-object small{color:var(--dim);font-size:11px}.act-object em{color:var(--dim);font-size:12px;font-style:normal}.react-flow__node-lane{pointer-events:none!important}.react-flow__node-lane .act-lane-title,.react-flow__node-lane .react-flow__resize-control{pointer-events:all}.act-lane{border:1.5px solid color-mix(in srgb, var(--ink) 45%, transparent);background:color-mix(in srgb, var(--surface) 30%, transparent);width:100%;height:100%}.act-lane.sel{border-color:var(--accent)}.act-lane-title{text-align:center;cursor:grab;border-bottom:1.5px solid color-mix(in srgb, var(--ink) 45%, transparent);background:var(--chrome);color:var(--ink);padding:6px 10px;font-weight:600}.react-flow__node.selected .act-object{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.react-flow__node.selected .act-start,.react-flow__node.selected .act-end,.react-flow__node.selected .act-bar{outline:2px solid var(--accent);outline-offset:3px}.react-flow__node.selected .act-action{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.react-flow__node.selected .act-decision svg{stroke:var(--accent)}.act .uc-handle.react-flow__handle{width:14px;height:14px}.act-start .uc-handle.react-flow__handle,.act-end .uc-handle.react-flow__handle,.act-bar .uc-handle.react-flow__handle{width:10px;height:10px}.uc-link .head{fill:var(--ink);stroke:var(--ink)}.uc-link.sel .head{fill:var(--accent);stroke:var(--accent)}.panel.wide{width:520px}.grid-id{grid-template-columns:120px 1fr;gap:6px;display:grid}textarea.flow{resize:vertical;min-height:56px;font-family:var(--ui);line-height:1.5}.chips{flex-wrap:wrap;gap:6px;display:flex}.linked{color:var(--dim);font-size:12px}.quick.labeled{max-width:calc(100vw - 16px);display:grid}.quick.labeled .btn{flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:56px;min-height:54px;padding:4px 6px;display:flex}.quick.labeled .btn span{white-space:nowrap;font-size:10.5px;line-height:1.1}.ent-col{cursor:pointer}.ent-col.sel{background:color-mix(in srgb, var(--accent) 18%, transparent);box-shadow:inset 3px 0 0 var(--accent)}.col-bubble{z-index:8;background:var(--chrome);border:1px solid var(--accent);-webkit-user-select:text;user-select:text;border-radius:12px;flex-direction:column;gap:8px;width:320px;padding:10px;display:flex;position:absolute;box-shadow:0 10px 28px #00000059}.col-bubble-head{align-items:center;gap:8px;display:flex}.col-bubble-title{flex-direction:column;min-width:0;display:flex}.col-bubble-head .dim{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.type-row{grid-template-columns:1fr 112px;gap:6px;display:grid}.type-row input:disabled{opacity:.45;cursor:not-allowed}.ent-more{border-top:1px dashed var(--line);color:var(--dim);letter-spacing:.15em;grid-column:1/-1;align-items:baseline;gap:8px;padding:2px 10px 4px;font-size:12px;display:flex}.ent-more small{letter-spacing:0}.ent-more span{color:var(--ink);font-size:15px;line-height:1}.ent-col.sel{cursor:grab;touch-action:none;position:relative}.ent-col.sel:before{content:"⠿";color:var(--accent);font-size:11px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.ent-col.dragging{cursor:grabbing;opacity:.55}.ent-col.drop-before{box-shadow:0 -2px 0 var(--accent)}.ent-col.drop-after{box-shadow:0 2px 0 var(--accent)}.col-bubble{max-height:calc(100% - 16px);overflow:auto}.col-bubble.centered{width:min(360px,100% - 24px);top:50%;left:50%;transform:translate(-50%,-50%)}.uc-bubble.wide{width:min(560px,100% - 24px)}.uc-bubble .panel-head{border:0;padding:0}.uc-bubble .panel-body{padding:0;overflow:visible}.tools-btn{justify-content:center;align-items:center;margin-left:4px;padding:0 10px;display:inline-flex}.tools-btn svg,.tool-grid svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.tools-btn.on,.tab-add.icon.on{background:var(--accent);color:var(--accent-ink)}.tool-bubble{gap:6px;width:340px;max-height:calc(100vh - 80px);overflow:visible}.tool-grid{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.tool-grid .btn{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:56px;padding:6px 2px;font-size:11px;line-height:1.2}.bubble .tool-grid .btn span{color:inherit;font-size:11px}.tool-out{border-top:1px solid var(--line);flex-direction:column;gap:2px;padding-top:4px;display:flex}.bubble .tool-toggle{border:1px solid var(--line);flex-direction:row;justify-content:center;align-items:center;min-height:44px}.bubble .seg{display:flex}.bubble .seg .btn{border:1px solid var(--line);flex-direction:row;flex:1;justify-content:center;align-items:center;min-height:44px}.bubble .seg .btn.on,.bubble .tool-toggle.on,.bubble .tool-grid .btn.on{background:var(--accent);color:var(--accent-ink)}.bubble .search{position:relative}.board{--xy-background-color:var(--bg);--xy-background-pattern-dots-color-default:var(--line);position:absolute;inset:0}.imp-pick{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.imp-pick progress{width:100%}.imp-opts .btn,.imp-bar .btn{min-width:0;min-height:28px;padding:0 10px;font-size:12px}.imp-opts .chk{min-height:28px;font-size:12px}.imp-opts{flex-direction:column;gap:6px;display:flex}.imp-list{max-height:46vh;overflow:auto}.imp-row{border-radius:6px}.modal.wide{width:min(960px,100%)}.imp-cmp{min-height:22px;padding:0 8px;font-size:12px}.imp-cmp-title{font-family:var(--mono);font-size:13px}.cmp{max-height:62vh;font-size:12px;overflow:auto}.cmp-head,.cmp-row{grid-template-columns:150px minmax(0,1fr) minmax(0,1fr);gap:8px;padding:1px 6px;display:grid}.cmp-head{background:var(--chrome);color:var(--dim);font-weight:700;position:sticky;top:0}.cmp-sec{color:var(--dim);border-bottom:1px solid var(--line);margin-top:8px;padding:2px 6px}.cmp-name,.cmp-cell{font-family:var(--mono);overflow-wrap:anywhere}.cmp-row.change .cmp-cell.l{background:#e5737324}.cmp-row.change .cmp-cell.r{background:#7cc47c24}.cmp-row.remove .cmp-cell.l{background:#e5737338}.cmp-row.add .cmp-cell.r{background:#7cc47c38}.cmp-cell .tk{font-weight:700;text-decoration:underline}.imp-row:hover{background:var(--surface)}.imp-row.skipped{opacity:.6}.imp-head{align-items:center;gap:6px;padding:0 6px;line-height:1.2;display:flex}.imp-head .btn.icon{min-width:22px;min-height:22px;padding:0}.imp-head select{flex:none;width:auto;min-height:22px;padding-top:0;padding-bottom:0}.imp-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--mono);flex:1;font-size:13px;overflow:hidden}.imp-name small{color:var(--dim);font-family:var(--ui)}.imp-kind{margin-right:6px;font-weight:700}.imp-badge{background:color-mix(in srgb, var(--dim) 20%, transparent);border-radius:4px;padding:1px 6px;font-size:11px}.imp-badge.new{background:#7cc47c4d}.imp-badge.changed{background:#e9c46a59}.imp-badge.removed{background:#e5737359}.imp-detail{flex-direction:column;gap:2px;padding:4px 12px 8px 40px;font-size:12px;display:flex}.imp-ch.add b{color:#5fa85f}.imp-ch.remove b{color:#d26a6a}.nav-ico{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.mode-badge{z-index:6;background:var(--accent);color:var(--accent-ink);pointer-events:none;border-radius:999px;padding:4px 12px;font-size:12px;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.col-bubble.picker{width:min(560px,100vw - 24px)}.results.inline{max-height:min(50vh,360px);box-shadow:none;margin:0;position:static;overflow:auto}.results li .placed{white-space:nowrap;flex:none}.pick-names{flex-direction:column;flex:0 auto;min-width:0;display:flex}.pick-names b,.pick-names .mono{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pick-names .mono{font-size:11px}.results li .row-del{min-width:28px;min-height:28px;color:var(--dim);padding:0 6px}.results li .row-del:hover{color:var(--danger)}.results li .row{align-items:center;gap:6px}.plugin-out{border:1px solid var(--line);background:var(--bg);white-space:pre;-webkit-user-select:text;user-select:text;border-radius:6px;max-height:50vh;margin:0;padding:10px 12px;font-size:12px;line-height:1.5;overflow:auto}.plugin-error{color:var(--danger);white-space:pre-wrap;margin:6px 0 0}.plugin-list{gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.plugin-list li{border:1px solid var(--line);border-radius:6px;gap:4px;padding:10px 12px;display:grid}.plugin-head{align-items:center;gap:8px;display:flex}.plugin-card{gap:6px;margin-bottom:12px;display:grid}.plugin-actions{margin:0;padding-left:18px}.warn-inline{color:var(--dim);margin:4px 0 0;font-size:12px}.tab-add.icon{justify-content:center;align-items:center;display:inline-flex}.tab-add.icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.head-seg{align-self:center;margin:0 6px}.head-seg .btn{min-height:34px}.head-sep{background:var(--line);flex:none;align-self:center;width:1px;height:24px;margin:0 8px}.tabs>.sp+.tab-add.icon:not(.kind-tool){color:var(--dim)}.plist.scroll{max-height:60vh;overflow-y:auto}.pcat h4{align-items:center;gap:6px;margin:4px 0 6px;font-size:13px;display:flex}.pcat .prow+.prow{margin-top:6px}.prow .info.link{text-align:left;color:inherit;cursor:pointer;background:0 0;border:0;min-height:40px;padding:4px}.prow .info.link:hover b{color:var(--accent);text-decoration:underline}.btn.icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle;width:18px;height:18px}.fk-rows{flex-direction:column;gap:6px;display:flex}.fk-rows .row{flex-wrap:nowrap;align-items:center}.fk-rows .row select{flex:1;min-width:0}.fk-act{flex-direction:column;flex:1;gap:2px;display:flex}.fk-act select{width:100%}.badge.uq{color:#7cc47c}.badge.nn{color:#e07a5f}.badge.ai{color:#e9c46a}.ix{border:1px solid var(--line);border-radius:6px;flex-direction:column;gap:6px;padding:8px;display:flex}.ix .row{flex-wrap:nowrap;align-items:center}.ix .row input[type=text]{flex:1;min-width:0}.ix-line{border:1px solid var(--line);background:var(--surface);min-height:36px;color:inherit;cursor:pointer;text-align:left;border-radius:6px;align-items:center;gap:8px;padding:4px 8px;display:flex}.ix-line:hover{border-color:var(--accent)}.ix-line .dim{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ix-bubble{z-index:30}.ix-cols{flex-direction:column;gap:2px;max-height:240px;display:flex;overflow-y:auto}.ix-cols .btn{text-align:left;justify-content:flex-start;min-height:28px;padding:2px 10px;font-size:12px}.grip:not(.on){pointer-events:none}.field{flex-direction:column;gap:4px;font-size:13px;display:flex}.field>span{color:var(--dim)}.plugin-notes{border:1px solid var(--line);border-radius:6px;max-height:22vh;margin:0;padding:6px 10px;font-size:12px;list-style:none;overflow:auto}.plugin-notes li.add{color:#5fa85f}.plugin-notes li.remove{color:#d26a6a}.plugin-notes li.warn{color:#d9a441}.tool-version{color:var(--dim);align-self:flex-end;font-size:11px}.head-tip{z-index:60;border:1px solid var(--line);background:var(--chrome);max-width:min(360px,100vw - 8px);color:var(--ink);pointer-events:none;border-radius:6px;padding:4px 8px;font-size:12px;line-height:1.4;position:fixed;box-shadow:0 2px 8px #00000059}.exp-list{flex-wrap:wrap;gap:6px;display:flex}.exp-opt{text-align:left;flex-direction:column;align-items:flex-start;gap:0;padding:6px 10px;display:inline-flex}.exp-opt .dim{font-size:11px}.exp-opt.on{border-color:var(--accent,currentColor);box-shadow:inset 0 0 0 1px var(--accent,currentColor)}.react-flow__node .react-flow__resize-control.note-grip.handle{cursor:nwse-resize;border-radius:0 0 8px;justify-content:center;align-items:center;display:flex;background:0 0!important;border:0!important;width:22px!important;min-width:0!important;height:22px!important;transform:translate(-100%,-100%)!important}.note-grip svg{fill:none;width:12px;height:12px;stroke:var(--dim);stroke-width:1.5px;stroke-linecap:round}.quick .btn:disabled{opacity:.3;cursor:default}.quick-palette{border:1px solid var(--line);background:var(--chrome);border-radius:8px;flex-wrap:wrap;gap:4px;width:176px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 6px 20px #00000047}.quick-palette .sw{width:28px;height:28px}.seq-p{color:var(--ink);flex-direction:column;align-items:center;display:flex;position:relative}.seq-box{border:1.5px solid var(--ink);background:var(--surface);text-align:center;white-space:nowrap;border-radius:4px;min-width:120px;padding:10px 16px}.seq-name{white-space:nowrap;margin-top:2px}.seq-actor svg{fill:var(--surface);stroke:var(--ink);stroke-width:1.5px}.seq-life{border-left:1.5px dashed color-mix(in srgb, var(--ink) 60%, transparent);pointer-events:none;width:0;position:absolute;top:100%;left:50%}.seq-p .seq-lifehandle.react-flow__handle{cursor:crosshair;background:0 0;border:0;border-radius:0;width:24px;inset:100% auto auto 50%;transform:translate(-50%)}.seq-bars{z-index:3;pointer-events:none;width:0;position:absolute;top:100%;left:50%}.seq-bar{box-sizing:border-box;border:1.5px solid var(--ink);background:var(--surface);width:12px;position:absolute}.seq-frag{box-sizing:border-box;border:1.5px solid var(--ink);pointer-events:none;position:absolute}.seq-frag.sel{border-color:var(--accent)}.seq-frag-edge{pointer-events:auto;cursor:pointer;position:absolute}.seq-frag-edge.top,.seq-frag-edge.bottom{height:10px;left:0;right:0}.seq-frag-edge.top{top:-6px}.seq-frag-edge.bottom{bottom:-6px}.seq-frag-edge.left,.seq-frag-edge.right{width:10px;top:0;bottom:0}.seq-frag-edge.left{left:-6px}.seq-frag-edge.right{right:-6px}.seq-frag-head{pointer-events:auto;cursor:pointer;color:var(--ink);white-space:nowrap;align-items:center;gap:8px;font-size:13px;display:flex;position:absolute;top:-1.5px;left:-1.5px}.seq-frag-tag{border:1.5px solid var(--ink);background:var(--surface);clip-path:polygon(0 0,100% 0,100% 55%,calc(100% - 8px) 100%,0 100%);padding:2px 14px 2px 8px;font-weight:600}.seq-frag.sel .seq-frag-tag{border-color:var(--accent)}.seq-frag-head em,.seq-frag-cut em{opacity:.85;font-style:normal}.seq-frag-cut{border-top:1.5px dashed var(--ink);height:0;color:var(--ink);font-size:13px;position:absolute;left:0;right:0}.seq-frag-cut em{white-space:nowrap;position:absolute;top:3px;left:8px}.seq-frag.sel .seq-frag-cut{border-top-color:var(--accent)}.seq-grip.cutgrip{top:-5px;left:0;transform:translate(-50%)}.seq-frag>.seq-grip.top{top:-6px}.seq-frag>.seq-grip.bottom{bottom:-6px;left:50%}.seq-cross{border-top:1.6px solid var(--ink);pointer-events:none;height:0;position:absolute}.seq-cross.dashed{border-top-style:dashed}.seq-bar.sel{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 35%, transparent)}.seq-grip{background:var(--accent);cursor:ns-resize;pointer-events:auto;touch-action:none;border-radius:3px;width:16px;height:10px;position:absolute;left:50%;transform:translate(-50%)}.seq-grip.top{top:-8px}.seq-grip.bottom{bottom:-8px}.seq-p .seq-headhandle.react-flow__handle{pointer-events:none;background:0 0;border:0;border-radius:0;width:100%;height:100%;inset:0;transform:none}.react-flow__node.selected .seq-box{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.react-flow__node.selected .seq-actor svg{stroke:var(--accent)}.seq-p .uc-handle.react-flow__handle{width:14px;height:14px}.uc-link .head.open{fill:none}.seq-label{white-space:nowrap}.dep{border:1.5px solid var(--ink);background:var(--surface);min-width:150px;color:var(--ink);position:relative}.dep-environment{border-style:dashed}.dep-database{border-radius:10px}.dep-head{justify-content:center;align-items:center;gap:8px;padding:8px 12px;display:flex}.dep-head svg{fill:none;stroke:var(--ink);stroke-width:1.6px;flex:none}.dep-head div{white-space:nowrap;text-align:center;display:grid}.dep-head small{color:var(--dim);font-size:11px}.dep-attrs{border-top:1.5px solid var(--ink);padding:6px 12px;font-size:12px}.dep-attr{white-space:nowrap}.dep-arts{border-top:1.5px solid var(--ink);padding:6px 12px;font-size:12px}.dep-art{white-space:nowrap}.react-flow__node.selected .dep{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.dep .uc-handle.react-flow__handle{width:14px;height:14px}.react-flow__node.dep-container{pointer-events:none!important}.dep-container .dep-head,.dep-container .react-flow__resize-control,.dep-container .uc-handle{pointer-events:all}.dep.box{width:100%;height:100%}.dep.box.holds{background:color-mix(in srgb, var(--surface) 35%, transparent)}.dep.holds .dep-head{cursor:grab;width:100%}.st{color:var(--ink);position:relative}.st-state{border:1.5px solid var(--ink);background:var(--surface);text-align:center;border-radius:14px;min-width:110px}.st-head{white-space:nowrap;padding:8px 16px}.st-acts{border-top:1.5px solid var(--ink);text-align:left;white-space:nowrap;padding:5px 12px;font-size:12px}.st-initial{background:var(--ink);border-radius:50%;width:22px;height:22px}.st-final{border:2px solid var(--ink);background:var(--surface);border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.st-final i{background:var(--ink);border-radius:50%;width:16px;height:16px}.st-choice svg{fill:var(--surface);stroke:var(--ink);stroke-width:1.6px;display:block}.st.box{width:100%;height:100%}.st.holds{background:color-mix(in srgb, var(--surface) 35%, transparent)}.st.holds .st-head{cursor:grab;width:max-content;max-width:100%}.react-flow__node.st-container{pointer-events:none!important}.st-container .st-head,.st-container .react-flow__resize-control,.st-container .uc-handle{pointer-events:all}.react-flow__node.selected .st-state{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.react-flow__node.selected .st-initial,.react-flow__node.selected .st-final{outline:2px solid var(--accent);outline-offset:3px}.react-flow__node.selected .st-choice svg{stroke:var(--accent)}.st .uc-handle.react-flow__handle{width:14px;height:14px}.st-initial .uc-handle.react-flow__handle,.st-final .uc-handle.react-flow__handle{width:10px;height:10px}.comp{color:var(--ink);position:relative}.comp-component{border:1.5px solid var(--ink);background:var(--surface);align-items:center;gap:8px;min-width:130px;padding:10px 14px;display:flex}.comp-icon{fill:none;stroke:var(--ink);stroke-width:1.6px;flex:none}.comp-head{white-space:nowrap;display:grid}.comp-head small{color:var(--dim);font-size:11px}.comp-interface i{border:1.5px solid var(--ink);background:var(--surface);border-radius:50%;width:18px;height:18px;display:block}.comp-interface span{white-space:nowrap;margin-top:3px;font-size:12px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.comp.box{align-items:flex-start;width:100%;height:100%}.comp.holds{background:color-mix(in srgb, var(--surface) 35%, transparent)}.comp.holds .comp-head{cursor:grab}.react-flow__node.comp-container{pointer-events:none!important}.comp-container .comp-head,.comp-container .react-flow__resize-control,.comp-container .uc-handle{pointer-events:all}.react-flow__node.selected .comp-component{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.react-flow__node.selected .comp-interface i{border-color:var(--accent)}.comp .uc-handle.react-flow__handle{width:14px;height:14px}.comp-interface .uc-handle.react-flow__handle{width:10px;height:10px}.uc-link .socket{stroke:var(--ink);stroke-width:1.6px;fill:none}.uc-link.sel .socket{stroke:var(--accent)}.mm-topic{--mm:var(--ink);border:2px solid var(--mm);background:var(--surface);min-width:80px;color:var(--ink);text-align:center;white-space:nowrap;border-radius:999px;padding:7px 16px;position:relative}.mm-topic.root{background:var(--mm);color:var(--surface);border-radius:18px;padding:11px 26px;font-weight:700}.mm-topic[data-color="1"],.mm-branch[data-color="1"],.mm-swatch[data-color="1"]{--mm:#e5534b}.mm-topic[data-color="2"],.mm-branch[data-color="2"],.mm-swatch[data-color="2"]{--mm:#e8912d}.mm-topic[data-color="3"],.mm-branch[data-color="3"],.mm-swatch[data-color="3"]{--mm:#c9a400}.mm-topic[data-color="4"],.mm-branch[data-color="4"],.mm-swatch[data-color="4"]{--mm:#3fa34d}.mm-topic[data-color="5"],.mm-branch[data-color="5"],.mm-swatch[data-color="5"]{--mm:#2f81f7}.mm-topic[data-color="6"],.mm-branch[data-color="6"],.mm-swatch[data-color="6"]{--mm:#a371f7}.mm-branch{--mm:var(--ink)}.mm-branch .react-flow__edge-path{stroke:var(--mm);stroke-width:2.2px;fill:none}.mm-branch.sel .react-flow__edge-path{stroke:var(--accent)}.react-flow__node.selected .mm-topic{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 40%, transparent)}.mm-meta{opacity:.85;justify-content:center;gap:6px;font-size:.72em;font-weight:400;display:flex}.mm-topic[data-standing=today]{background:color-mix(in srgb, #3fa34d 24%, var(--surface));color:var(--ink)}.mm-topic[data-standing=late]{background:color-mix(in srgb, #e8912d 30%, var(--surface));color:var(--ink)}.mm-topic[data-standing=done]{--mm:#8a8f98;background:color-mix(in srgb, #8a8f98 22%, var(--surface));color:#6b7079}.mm-topic{overflow:hidden}.mm-bar{background:var(--mm);opacity:.8;height:4px;position:absolute;bottom:0;left:0}.mm-find-detail{border:1px solid color-mix(in srgb, var(--ink) 25%, transparent);white-space:pre-wrap;border-radius:6px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.mm-find-detail dl{grid-template-columns:auto 1fr;gap:2px 10px;margin:0;display:grid}.mm-find-detail dd{margin:0}.mm-hidden-tag{opacity:.7;flex:none;font-size:.8em}.mm-detail{border:1px solid var(--line,color-mix(in srgb, var(--ink) 25%, transparent));border-radius:6px;flex-direction:column;gap:8px;margin:0;padding:8px 10px;display:flex}.mm-topic .uc-handle.react-flow__handle{width:12px;height:12px}.mm-colors{gap:8px;display:flex}.mm-swatch{--mm:var(--ink);border:2px solid var(--mm);background:color-mix(in srgb, var(--mm) 30%, transparent);cursor:pointer;border-radius:50%;width:26px;height:26px}.mm-swatch:not([data-color]){background:0 0}.mm-swatch.on{outline:2px solid var(--accent);outline-offset:2px}.seq-end{fill:none;stroke:var(--ink);stroke-width:2.2px;stroke-linecap:round;pointer-events:none;position:absolute;left:50%;transform:translate(-50%)}.uc-link .seq-dot{fill:var(--ink)}.uc-link.sel .seq-dot{fill:var(--accent)}.kind-families .btn{flex:1}.kind-groups{flex-direction:column;gap:12px;display:flex}.kind-groups h5{color:var(--accent);margin:0 0 6px;font-size:12px;font-weight:700}.kind-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px;display:grid}.kind-card{border:1px solid var(--line);background:var(--surface);min-height:64px;color:var(--ink);text-align:left;cursor:pointer;border-radius:6px;align-content:start;gap:4px;padding:10px 12px;display:grid}.kind-card:hover,.kind-card:focus-visible{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, var(--surface))}.kind-card b{align-items:center;gap:6px;display:flex}.kind-card span{color:var(--dim);font-size:12px}.kind-card small{color:var(--accent);font-size:11px}.bx{color:var(--ink);position:relative}.bx-box,.bx-package,.bx-frame,.bx-ellipse,.bx-round{border:1.5px solid var(--ink);background:var(--surface);box-sizing:border-box;min-width:110px;padding:10px 14px}.bx.sized{width:100%;height:100%}.bx.holds{background:color-mix(in srgb, var(--surface) 35%, transparent)}.bx.holds .bx-head{cursor:grab}.react-flow__node.bx-container{pointer-events:none!important}.bx-container .bx-head,.bx-container .react-flow__resize-control,.bx-container .uc-handle{pointer-events:all}.bx-round{border-radius:12px}.bx-ellipse{text-align:center;border-style:dashed;border-radius:50%;padding:16px 26px}.bx-package{margin-top:16px}.bx-tab{border:1.5px solid var(--ink);background:var(--surface);border-bottom:0;width:44%;max-width:90px;height:16px;position:absolute;top:-17px;left:-1.5px}.bx-head{white-space:nowrap;justify-items:center;display:grid}.bx.holds .bx-head,.bx.sized .bx-head{justify-items:start}.bx-head small{color:var(--dim);font-size:11px}.bx-head b.under{text-decoration:underline}.bx-body{border-top:1.5px solid var(--ink);white-space:pre;margin:8px -14px -10px;padding:6px 14px;font-size:12px}.bx-frame{padding-top:26px}.bx-tag{border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);clip-path:polygon(0 0,100% 0,100% 62%,calc(100% - 8px) 100%,0 100%);background:var(--ink);color:var(--surface);padding:2px 16px 3px 8px;font-size:11px;position:absolute;top:-.5px;left:-.5px}.bx-preview{color:var(--dim);white-space:pre;margin-top:6px;font-size:11px}.bx-label{white-space:pre;text-align:left}.bx-mark span{white-space:nowrap;margin-top:3px;font-size:12px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.bx-mark i{box-sizing:border-box;border:1.5px solid var(--ink);background:var(--surface);display:block}.bx-circle i{background:var(--ink);border-radius:50%;width:24px;height:24px}.bx-final i{background:radial-gradient(circle, var(--ink) 0 8px, var(--surface) 9px);border-radius:50%;outline:0;width:28px;height:28px}.bx-diamond i{width:34px;height:34px;margin:6px;transform:rotate(45deg)}.bx-bar i{background:var(--ink);width:110px;height:7px}.bx-port i{width:16px;height:16px}.bx-diamond span{margin-top:8px}.bx-actor{justify-items:center;gap:2px;display:grid}.bx-actor svg{fill:none;stroke:var(--ink);stroke-width:1.5px}.bx-actor span{white-space:nowrap;font-size:13px}.react-flow__node.selected .bx-box,.react-flow__node.selected .bx-package,.react-flow__node.selected .bx-frame,.react-flow__node.selected .bx-ellipse,.react-flow__node.selected .bx-round,.react-flow__node.selected .bx-mark i{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.bx .uc-handle.react-flow__handle{width:14px;height:14px}.bx-mark .uc-handle.react-flow__handle{width:10px;height:10px}.tm{color:var(--ink);position:relative}.tm svg{display:block}.tm-frame{fill:var(--surface);stroke:var(--ink);stroke-width:1.5px}.tm-name{fill:var(--ink);font-size:14px;font-weight:600}.tm-state,.tm-axis{fill:var(--dim);font-size:12px}.tm-tick{stroke:var(--line);stroke-dasharray:2 3}.tm-line{fill:none;stroke:var(--accent);stroke-width:2.2px}.tm-cell{fill:#0000;cursor:pointer;pointer-events:all}.tm-cell:hover{fill:color-mix(in srgb, var(--accent) 20%, transparent)}.react-flow__node.selected .tm-frame{stroke:var(--accent)}.bx-start{z-index:5;border:1px solid var(--line);background:var(--chrome);border-radius:10px;gap:10px;width:min(380px,100% - 32px);padding:16px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 6px 20px #00000047}.bx-outlined{place-items:center;min-width:130px;min-height:52px;display:grid;position:relative}.bx-outline{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.bx-outline path{fill:var(--surface);stroke:var(--ink);stroke-width:1.5px}.bx-outlined b{white-space:nowrap;padding:12px 22px;position:relative}.bx-outlined b.wide{padding:22px 44px}.react-flow__node.selected .bx-outline path{stroke:var(--accent);stroke-width:2.5px}.bx-iconed{justify-items:center;gap:3px;min-width:80px;display:grid}.bx-iconed svg{fill:var(--surface);stroke:var(--ink);stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round}.bx-iconed span{white-space:nowrap;font-size:13px;font-weight:600}.bx-iconed small{color:var(--dim);white-space:nowrap;font-size:11px}.react-flow__node.selected .bx-iconed svg{stroke:var(--accent)}.bx-screen{border:1.5px solid var(--ink);background:var(--surface);border-radius:6px;min-width:150px;overflow:hidden}.bx-screen .bx-head{background:color-mix(in srgb, var(--ink) 12%, var(--surface));border-bottom:1.5px solid var(--ink);padding:6px 12px}.bx-screen .bx-body{border-top:0;margin:0;padding:8px 12px}.bx-zone{border:1.5px dashed var(--ink);background:var(--surface);box-sizing:border-box;border-radius:8px;min-width:110px;padding:10px 14px}.react-flow__node.selected .bx-screen,.react-flow__node.selected .bx-zone{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent)}.gt{color:var(--ink);position:relative}.gt svg{display:block}.gt-rule{stroke:var(--line)}.gt-off{fill:color-mix(in srgb, var(--ink) 6%, transparent)}.gt-off.hol{fill:color-mix(in srgb, var(--danger) 14%, transparent)}.gt-today{stroke:var(--accent);stroke-dasharray:3 3}.gt-name{fill:var(--ink);font-size:13px;font-weight:600}.gt-owner,.gt-day,.gt-wd{fill:var(--dim);font-size:11px}.gt-day.off,.gt-wd.off{opacity:.55}.gt-day.hol,.gt-wd.hol{fill:var(--danger);opacity:1}.gt-month{fill:var(--ink);font-size:12px;font-weight:600}.gt-bar{fill:color-mix(in srgb, var(--accent) 40%, var(--surface));stroke:var(--accent);cursor:grab}.gt-bar.late,.gt-mile.late{stroke:var(--danger);stroke-width:2px}.gt-bar.crit,.gt-mile.crit{stroke:var(--danger);fill:color-mix(in srgb, var(--danger) 35%, var(--surface))}.gt-mile.crit,.gt-sum.late rect,.gt-sum.late path{fill:var(--danger)}.gt-base{fill:var(--dim);opacity:.7}.gt-done{fill:var(--accent);pointer-events:none}.gt-grip{fill:#0000;cursor:ew-resize}.gt-mile{fill:var(--ink);cursor:grab}.react-flow__node.selected .gt-name{fill:var(--accent)}.react-flow__node.selected .gt-bar{stroke-width:2.5px}.react-flow__node.selected .gt-mile{fill:var(--accent)}.gt .gt-handle.react-flow__handle{width:12px;height:12px;transform:translate(-50%,-50%)}.gt-name.sum,.gt-cells input.sum{font-weight:700}.gt-sum{cursor:grab}.gt-sum rect,.gt-sum path{fill:var(--ink)}.gt-sum rect.done{fill:var(--accent)}.gt-gap{stroke:var(--accent);stroke-dasharray:3 3}.gt-pick{z-index:2;width:16px;height:16px;accent-color:var(--accent);cursor:pointer;margin:0;position:absolute;left:4px}.gt-tog{width:18px;height:18px;color:var(--dim);cursor:pointer;z-index:2;background:0 0;border:0;padding:0;position:absolute}.gt-cells,.gt-cols{z-index:1;display:flex;position:absolute;left:0}.gt-cells>div{box-sizing:border-box;align-items:center;height:100%;padding:0 2px;display:flex}.gt-cells input{box-sizing:border-box;width:100%;min-width:0;height:26px;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:4px;padding:0 4px;font-size:12px}.gt-cells input:hover:not(:disabled),.gt-cells input:focus{border-color:var(--line);background:var(--surface)}.gt-cells input:disabled{opacity:.7}.gt-cols span{box-sizing:border-box;color:var(--dim);padding:0 6px;font-size:11px}#print-sheet{display:none}@media print{body{background:#fff;overflow:visible}body>:not(#print-sheet){display:none!important}#print-sheet{display:block}#print-sheet img{object-fit:contain;max-width:100%;margin:0 auto;display:block}}.work{flex:1;min-height:0;display:flex}.work>.stage{flex:1;min-width:0;min-height:0}.code-pane{border-left:1px solid var(--line);background:var(--surface);flex-direction:column;flex:0 0 min(44%,560px);min-width:0;min-height:0;display:flex}.code-head{background:var(--chrome);border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:6px 8px;display:flex}.code-head b{white-space:nowrap}.code-state{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dim);flex:1;font-size:12px;overflow:hidden}.code-state.bad{color:var(--danger)}.code-body{flex:1;min-height:0}.code-editor,.code-editor .cm-editor{height:100%}.code-pane,.code-pane *{-webkit-user-select:text;user-select:text}@media (width<=900px){.work{flex-direction:column}.code-pane{border-left:0;border-top:1px solid var(--line);flex:0 0 45%}}
