.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:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--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}.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))}.msg-panel__overlay{z-index:1000;box-sizing:border-box;background:#0000008c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.msg-panel__card{border:1px solid var(--border,#2a3140);background:var(--panel,#171b24);width:100%;max-width:640px;max-height:80vh;color:var(--text-h,#e8eaef);border-radius:12px;flex-direction:column;padding:20px 22px;display:flex;box-shadow:0 16px 48px #00000073}.msg-panel__head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.msg-panel__title{font-family:var(--heading,system-ui, sans-serif);margin:0;font-size:1.2rem;font-weight:700}.msg-panel__tabs{gap:4px;display:flex}.msg-panel__tab{font:inherit;color:var(--text-m,#a8b0c0);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 12px;font-size:.9375rem;font-weight:600}.msg-panel__tab.is-active{background:var(--panel-2,#1f2430);color:var(--text-h,#e8eaef)}.chat-console{gap:12px;height:60vh;min-height:340px;display:flex}.chat-console__threads{flex-direction:column;flex:0 0 210px;gap:6px;padding-right:4px;display:flex;overflow-y:auto}.chat-console__empty,.chat-console__placeholder{color:var(--text-m,#a8b0c0);margin:auto;font-size:.85rem}.chat-console__thread{text-align:left;font:inherit;border:1px solid var(--border,#2a3140);background:var(--panel-2,#1f2430);color:var(--text-h,#e8eaef);cursor:pointer;border-radius:8px;padding:9px 11px;position:relative}.chat-console__thread.is-active{border-color:#4c6ef5}.chat-console__thread.is-unread{background:#4c6ef51f}.chat-console__thread-top{justify-content:space-between;gap:8px;display:flex}.chat-console__thread-name{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.chat-console__thread-time{color:var(--text-m,#a8b0c0);flex:none;font-size:.7rem}.chat-console__thread-snip{color:var(--text-m,#a8b0c0);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.75rem;overflow:hidden}.chat-console__dot{background:#e5484d;border-radius:50%;width:8px;height:8px;position:absolute;top:10px;right:8px}.chat-console__conv{border:1px solid var(--border,#2a3140);border-radius:10px;flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.chat-console__conv-head{border-bottom:1px solid var(--border,#2a3140);background:var(--panel-2,#1f2430);flex-wrap:wrap;align-items:baseline;gap:10px;padding:10px 12px;display:flex}.chat-console__conv-name{font-size:.9rem;font-weight:700}.chat-console__conv-meta{color:var(--text-m,#a8b0c0);font-size:.75rem}.chat-console__messages{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow-y:auto}.chat-console__msg{white-space:pre-wrap;word-break:break-word;border-radius:12px;max-width:78%;padding:8px 11px;font-size:.85rem;line-height:1.4}.chat-console__msg--me{color:#fff;background:#3b5bdb;border-bottom-right-radius:4px;align-self:flex-end}.chat-console__msg--them{background:var(--panel-2,#1f2430);color:var(--text-h,#e8eaef);border:1px solid var(--border,#2a3140);border-bottom-left-radius:4px;align-self:flex-start}.chat-console__reply{border-top:1px solid var(--border,#2a3140);gap:8px;padding:10px;display:flex}.chat-console__reply-input{min-width:0;font:inherit;color:#141820;background:#fffffff7;border:1px solid #ffffff47;border-radius:8px;flex:1;padding:9px 11px;font-size:.85rem}.chat-console__reply-send{font:inherit;color:#fff;cursor:pointer;background:#3b5bdb;border:none;border-radius:8px;flex:none;padding:9px 16px;font-size:.85rem;font-weight:600}.chat-console__reply-send:disabled{opacity:.5;cursor:default}@media (width<=640px){.chat-console{flex-direction:column;height:66vh}.chat-console__threads{flex-direction:row;flex:0 0 34%;overflow-x:auto}.chat-console__thread{min-width:150px}}.msg-panel__actions{align-items:center;gap:8px;display:flex}.msg-panel__btn{font:inherit;border:1px solid var(--border,#2a3140);background:var(--panel-2,#1f2430);color:var(--text-h,#e8eaef);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:.8125rem}.msg-panel__btn:hover{background:var(--panel,#171b24)}.msg-panel__close{font:inherit;width:30px;height:30px;color:var(--text-m,#a8b0c0);cursor:pointer;background:0 0;border:none;border-radius:8px;font-size:1.4rem;line-height:1}.msg-panel__close:hover{color:var(--text-h,#e8eaef);background:#ffffff14}.msg-panel__status,.msg-panel__error{color:var(--text-m,#a8b0c0);margin:8px 0;font-size:.875rem}.msg-panel__error{color:#f87171}.msg-panel__list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.msg-panel__item{border:1px solid var(--border,#2a3140);background:var(--panel-2,#1f2430);border-radius:8px;padding:10px 12px}.msg-panel__item--unread{border-left:3px solid #4c6ef5}.msg-panel__item--contact{background:#4c6ef514}.msg-panel__kind{text-transform:uppercase;letter-spacing:.03em;color:var(--text-m,#a8b0c0);background:#ffffff1a;border-radius:6px;padding:2px 8px;font-size:.6875rem;font-weight:700}.msg-panel__kind--contact{color:#fff;background:#4c6ef5}.msg-panel__detail{color:var(--text-h,#e8eaef);white-space:pre-wrap;word-break:break-word;background:#0000002e;border-radius:6px;margin-top:8px;padding:8px 10px;font-size:.8125rem}.msg-panel__row1{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.msg-panel__ip{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9375rem;font-weight:600}.msg-panel__time{color:var(--text-m,#a8b0c0);white-space:nowrap;font-size:.75rem}.msg-panel__meta{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.msg-panel__tag{color:var(--text-m,#a8b0c0);word-break:break-all;background:#ffffff0f;border-radius:6px;padding:2px 8px;font-size:.75rem}.msg-panel__ua{color:var(--text-m,#a8b0c0);opacity:.8;word-break:break-all;margin-top:6px;font-size:.7rem}.profile-modal__overlay{z-index:1000;box-sizing:border-box;background:#0000008c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.profile-modal__card{border:1px solid var(--border,#2a3140);background:var(--panel,#171b24);width:100%;max-width:400px;color:var(--text-h,#e8eaef);border-radius:12px;padding:22px 24px 24px;box-shadow:0 16px 48px #00000073}.profile-modal__head{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.profile-modal__title{font-family:var(--heading,system-ui, sans-serif);letter-spacing:-.02em;margin:0;font-size:1.25rem;font-weight:700}.profile-modal__close{font:inherit;width:32px;height:32px;color:var(--text-m,#a8b0c0);cursor:pointer;background:0 0;border:none;border-radius:8px;font-size:1.5rem;line-height:1}.profile-modal__close:hover{color:var(--text-h,#e8eaef);background:#ffffff14}.profile-modal__field{border-bottom:1px solid var(--border,#2a3140);align-items:baseline;gap:8px;margin-bottom:16px;padding-bottom:16px;display:flex}.profile-modal__value{font-size:.9375rem;font-weight:600}.profile-modal__form{flex-direction:column;gap:14px;display:flex}.profile-modal__section{margin:0;font-size:.9375rem;font-weight:600}.profile-modal__label{color:var(--text-m,#a8b0c0);flex-direction:column;gap:6px;font-size:.8125rem;display:flex}.profile-modal__input{font:inherit;color:#141820;background:#fffffff7;border:1px solid #ffffff59;border-radius:8px;padding:10px 12px;font-size:.9375rem}.profile-modal__input:focus{outline-offset:0;background:#fff;border-color:#ffffff80;outline:2px solid #648cff8c}.profile-modal__error{color:#f87171;margin:0;font-size:.8125rem}.profile-modal__success{color:#4ade80;margin:0;font-size:.8125rem}.profile-modal__submit{font:inherit;color:#fff;cursor:pointer;background:#3b5bdb;border:none;border-radius:8px;margin-top:4px;padding:10px 16px;font-size:.9375rem;font-weight:600}.profile-modal__submit:hover{background:#4c6ef5}.profile-modal__submit:disabled{opacity:.6;cursor:default}.profile-modal__notify{border-top:1px solid var(--border,#2a3140);flex-direction:column;gap:10px;margin-top:20px;padding-top:18px;display:flex}.profile-modal__hint{color:var(--text-m,#a8b0c0);margin:0;font-size:.8125rem}.profile-modal__switch-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.profile-modal__switch-label{color:var(--text-h,#e8eaef);font-size:.9375rem;font-weight:600}.profile-modal__switch{cursor:pointer;background:#ffffff2e;border:none;border-radius:999px;flex:none;width:44px;height:26px;padding:0;transition:background .16s;position:relative}.profile-modal__switch.is-on{background:#3b5bdb}.profile-modal__switch:disabled{opacity:.6;cursor:default}.profile-modal__switch-knob{background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000059}.profile-modal__switch.is-on .profile-modal__switch-knob{transform:translate(18px)}.profile-modal__linkbtn{font:inherit;color:#6b8afd;cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:.8125rem;text-decoration:underline}.profile-modal__linkbtn:hover:not(:disabled){color:#8aa2ff}.profile-modal__linkbtn:disabled{opacity:.6;cursor:default}.app-shell{flex-direction:column;width:100%;height:100%;min-height:0;display:flex}.app-top-bar{border-bottom:1px solid var(--border);background:var(--panel);box-sizing:border-box;flex-shrink:0;align-items:center;height:48px;padding:0 18px;display:flex}.app-top-bar__brand{font-family:var(--heading);letter-spacing:-.02em;color:var(--text-h);-webkit-user-select:none;user-select:none;font-size:1.125rem;font-weight:700}.app-top-bar__spacer{flex:1;min-width:8px}.app-top-bar__username{font:inherit;color:var(--text-m);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;max-width:160px;margin-right:12px;padding:6px 10px;font-size:.875rem;overflow:hidden}.app-top-bar__username:hover{color:var(--text-h);border-color:var(--border);background:var(--panel-2)}.app-top-bar__messages{font:inherit;border:1px solid var(--border);background:var(--panel-2);color:var(--text-h);cursor:pointer;border-radius:8px;margin-right:8px;padding:6px 12px;font-size:.875rem;position:relative}.app-top-bar__messages:hover{background:var(--panel)}.app-top-bar__badge{color:#fff;text-align:center;vertical-align:middle;background:#e5484d;border-radius:9px;min-width:18px;margin-left:6px;padding:0 5px;font-size:.6875rem;font-weight:700;line-height:18px;display:inline-block}.app-top-bar__logout{font:inherit;border:1px solid var(--border);background:var(--panel-2);color:var(--text-h);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:.875rem}.app-top-bar__logout:hover{background:var(--panel)}.app-workspace{flex-direction:row;flex:1;align-items:stretch;min-width:0;min-height:0;display:flex}.flow-column{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.flow-column--workspace{position:relative}.patelix-workspace-topbar{z-index:6;pointer-events:none;position:absolute;top:10px;left:10px}.patelix-workspace-topbar .react-flow__controls{pointer-events:auto}.patelix-workspace-topbar .react-flow__controls-button svg{fill:none;max-width:14px;max-height:14px}.patelix-workspace-topbar .react-flow__controls-button svg path{stroke:currentColor}.patelix-workspace-topbar .doc-bar__menu--open-split{min-width:min(340px,92vw);max-height:min(70vh,480px)}.patelix-workspace-topbar .doc-bar__menu--open-enhanced{flex-direction:column;gap:0;padding:0;display:flex;overflow:hidden}.doc-bar__open-controls{border-bottom:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:8px;padding:10px 10px 8px;display:flex}.doc-bar__open-filter{border:1px solid var(--border);background:var(--bg);border-radius:8px;width:100%;display:flex;overflow:hidden}.doc-bar__open-filter-btn{border:none;border-right:1px solid var(--border);color:var(--text-muted);font:inherit;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;background:0 0;flex:1;margin:0;padding:7px 6px;font-size:.72rem;font-weight:600;transition:background .15s,color .15s}.doc-bar__open-filter-btn:last-child{border-right:none}.doc-bar__open-filter-btn:hover{color:var(--text-h);background:#0000000a}.doc-bar__open-filter-btn--active{color:var(--accent);background:var(--accent-bg)}.doc-bar__open-search{box-sizing:border-box;border:1px solid var(--border);background:var(--node-bg);width:100%;color:var(--text-h);font:inherit;border-radius:8px;padding:8px 10px;font-size:.85rem}.doc-bar__open-search::placeholder{color:var(--text-muted);opacity:.85}.doc-bar__open-search:focus{border-color:var(--accent-border);box-shadow:0 0 0 2px var(--accent-bg);outline:none}.doc-bar__list--open-scroll{flex:1;min-height:0;max-height:min(52vh,400px);padding:6px 8px 10px;overflow:auto}.doc-bar__empty--open-list{color:var(--text-muted);margin:0;padding:14px 12px 16px;font-size:.85rem}.doc-bar__item--open-doc{gap:4px}.doc-bar__item-open-main{align-items:center;gap:8px;width:100%;min-width:0;display:flex}.doc-bar__item-kind{color:var(--text-muted);flex-shrink:0;align-items:center;display:flex}.doc-bar__item--open-doc .doc-bar__item-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.doc-bar__item--open-doc .doc-bar__item-when{margin-left:22px}.doc-bar__menu--stacked{flex-direction:column;gap:4px;min-width:180px;padding:8px;display:flex}.doc-bar__row-btn{text-align:left;width:100%;color:var(--text-h);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:10px 12px;font-size:.88rem;font-weight:500}.doc-bar__row-btn:hover{background:var(--bg)}.doc-bar__section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:8px 10px 4px;font-size:.68rem;font-weight:700}.doc-bar__empty--inline{margin:4px 10px 8px;font-size:.82rem}.flow-host--page{background:var(--node-bg);padding:0;overflow:auto}.page-canvas-view{box-sizing:border-box;width:100%;min-height:100%;position:relative}.page-canvas-view__column{box-sizing:border-box;max-width:960px;margin:0 auto;padding:40px 20px 28px}.patelix-page-tools-panel{z-index:20;pointer-events:none;position:fixed;bottom:10px;left:10px}.patelix-page-tools-panel .react-flow__controls{pointer-events:auto}.patelix-page-tools-panel .react-flow__controls-button svg{fill:none;max-width:14px;max-height:14px}.patelix-page-tools-panel .react-flow__controls-button svg path,.patelix-page-tools-panel .react-flow__controls-button svg rect{stroke:currentColor}.patelix-page-tools-panel .react-flow__controls-button:disabled{opacity:.38;color:var(--text-muted);cursor:not-allowed;filter:grayscale(.35)}.patelix-file-import-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.patelix-page-tools-panel .react-flow__controls-button.patelix-page-tool--edit-on,.patelix-page-tools-panel .react-flow__controls-button.patelix-rf-control--active{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--accent-bg)));color:var(--accent)}.page-canvas-view__title-field{margin-bottom:16px;display:block}.page-canvas-view__title-input{width:100%;font:inherit;letter-spacing:-.03em;border:none;border-bottom:1px solid color-mix(in srgb, var(--border) 88%, var(--text-muted));color:color-mix(in srgb, var(--text-muted) 72%, var(--text-h) 28%);box-sizing:border-box;background:0 0;padding:10px 0 12px;font-size:clamp(1.65rem,3.2vw,2.05rem);font-weight:600;line-height:1.2}.page-canvas-view__title-input::placeholder{color:color-mix(in srgb, var(--text-muted) 92%, var(--text-h) 8%);font-weight:400}.page-canvas-view__title-input:focus{border-bottom-color:var(--accent);color:var(--text-h);outline:none}.page-canvas-view__sections{flex-direction:column;gap:5px;display:flex}.page-section-card{background:0 0;border:none;border-radius:0;overflow:visible}.page-section-card__head{box-sizing:border-box;background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:4px 12px 6px;display:flex}.page-section-card__head--tools-only{justify-content:flex-end}.page-section-card__diagram-select{min-width:0;max-width:min(320px,55vw);font:inherit;border:1px solid var(--border);background:var(--node-bg);color:var(--text-h);cursor:pointer;border-radius:6px;flex:auto;padding:4px 8px;font-size:.78rem}.page-section-card__toolbar{flex-shrink:0;align-items:center;gap:4px;margin-left:auto;display:flex}.page-section-card__move-group{align-items:center;gap:0;display:inline-flex}.page-section-card__move-btn{width:28px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:flex}.page-section-card__move-btn:hover:not(:disabled){background:var(--accent-bg);color:var(--accent)}.page-section-card__move-btn:disabled{opacity:.3;cursor:not-allowed}.page-section-card__ai-prompt{width:32px;height:32px;color:var(--accent);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:flex}.page-section-card__ai-prompt:hover{background:var(--accent-bg);color:var(--accent)}.page-section-card__embed-toggle,.page-section-card__open-diagram{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:flex}.page-section-card__embed-toggle:hover,.page-section-card__open-diagram:hover:not(:disabled),.page-section-card__embed-toggle--on{background:var(--accent-bg);color:var(--accent)}.page-section-card__open-diagram:disabled{opacity:.35;cursor:not-allowed}.page-section-card__height-group{align-items:center;gap:0;display:inline-flex}.page-section-card__height-btn{width:28px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:flex}.page-section-card__height-btn:hover:not(:disabled){background:var(--accent-bg);color:var(--accent)}.page-section-card__height-btn:disabled{opacity:.3;cursor:not-allowed}.page-section-card__type-dd{position:relative}.page-section-card__type-summary{min-height:32px;color:var(--text-h);cursor:pointer;box-sizing:border-box;background:0 0;border:none;border-radius:8px;align-items:center;gap:4px;padding:4px 8px;list-style:none;display:flex}.page-section-card__type-summary:hover,.page-section-card__type-dd[open]>.page-section-card__type-summary{background:var(--accent-bg);color:var(--accent)}.page-section-card__type-summary::-webkit-details-marker{display:none}.page-section-card__type-icon{justify-content:center;align-items:center;display:flex}.page-section-card__type-chevron{opacity:.65;display:flex}.page-section-card__type-menu{min-width:160px;padding:6px;left:auto;right:0}.page-section-card__type-opt{width:100%;color:var(--text-h);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:.88rem;display:flex}.page-section-card__type-opt:hover:not(:disabled){background:var(--bg)}.page-section-card__type-opt--active{background:var(--accent-bg);outline:1px solid var(--accent-border)}.page-section-card__type-opt:disabled{opacity:.45;cursor:not-allowed}.page-section-card__remove-icon{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:0;display:flex}.page-section-card__remove-icon:hover:not(:disabled){color:var(--danger,#dc2626);background:#dc262614}.page-section-card__remove-icon:disabled{opacity:.35;cursor:not-allowed}.page-section-card__text-split{grid-template-columns:1fr 1fr;gap:0;min-height:200px;display:grid}@media (width<=720px){.page-section-card__text-split{grid-template-columns:1fr}}.page-section-card__textarea{border:none;border-right:1px solid var(--border);resize:vertical;background:var(--node-bg);min-height:200px;color:var(--text-h);padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8rem;line-height:1.45}.page-section-card__preview{background:var(--node-bg);padding:12px;font-size:.9rem;line-height:1.5;overflow:auto}.page-section-card__preview--solo{border-radius:0}.page-section-card__diagram{background:0 0;flex-direction:column;gap:12px;padding:12px 0;display:flex}.page-section-card__diagram--view{padding-top:4px}.react-flow__panel.patelix-canvas-title-overlay-panel{z-index:3}.react-flow__panel.patelix-canvas-title-overlay-panel.top.center{pointer-events:none;transform:translate(-50%)}.patelix-canvas-title-overlay{letter-spacing:-.02em;max-width:min(480px,100vw - 48px);color:var(--text-muted);text-align:center;-webkit-user-select:none;user-select:none;padding:8px 16px;font-weight:600;line-height:1.15}.patelix-canvas-topleft-panel .react-flow__controls-button svg{fill:none;max-width:14px;max-height:14px}.patelix-canvas-topleft-panel .react-flow__controls-button svg path{stroke:currentColor}.patelix-canvas-topleft-controls .patelix-canvas-topleft__open{flex-direction:column;align-items:stretch;display:flex;position:relative}.patelix-canvas-topleft__open-summary{cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;margin:0;list-style:none;display:flex}.patelix-canvas-topleft__open-summary::-webkit-details-marker{display:none}.patelix-canvas-topleft-panel .patelix-canvas-topleft__open-summary svg{flex-shrink:0;width:14px;max-width:14px;height:14px;max-height:14px;display:block}.doc-bar__menu--topleft{left:0;right:auto}.patelix-canvas-tools-panel .react-flow__controls-button svg{fill:none;max-width:14px;max-height:14px}.patelix-canvas-tools-panel .react-flow__controls-button svg path{stroke:currentColor}.patelix-canvas-tools-panel .react-flow__controls-button.patelix-rf-control--active{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--accent-bg)));color:var(--accent)}.patelix-canvas-docnav-panel .patelix-canvas-docnav-controls{flex-direction:row}.patelix-canvas-docnav-panel .patelix-canvas-docnav__incoming{position:relative}.patelix-canvas-docnav-panel .patelix-canvas-docnav__incoming-summary{cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;margin:0;list-style:none;display:flex}.patelix-canvas-docnav-panel .patelix-canvas-docnav__incoming-summary::-webkit-details-marker{display:none}.patelix-canvas-docnav-panel .doc-bar__menu--docnav-above{inset:auto auto calc(100% + 6px) 0}.patelix-canvas-docnav-panel .patelix-canvas-docnav__incoming-disabled:disabled{opacity:.38;cursor:not-allowed;filter:grayscale(.35)}.patelix-canvas-docnav__sep{background:var(--border);flex-shrink:0;align-self:stretch;width:1px;margin:4px 2px}.patelix-canvas-docnav-panel .react-flow__controls-button svg{fill:none;max-width:14px;max-height:14px}.patelix-canvas-docnav-panel .react-flow__controls-button svg path{stroke:currentColor}.patelix-canvas-docnav-panel .react-flow__controls-button:disabled{opacity:.38;color:var(--text-muted);cursor:not-allowed;filter:grayscale(.35)}.patelix-canvas-docnav-panel .react-flow__controls-button:disabled:hover{opacity:.38;color:var(--text-muted);filter:grayscale(.35)}.doc-bar__btn{background:var(--bg);color:var(--text-h);cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:8px 10px;font-size:.8rem;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.doc-bar__btn:hover{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}.doc-bar__btn--danger:hover{color:#dc2626;background:#dc26261f;border-color:#dc262659}.doc-bar__btn-label{display:none}@media (width>=720px){.doc-bar__btn-label{display:inline}}.doc-bar__picker{position:relative}.doc-bar__btn--summary{list-style:none}.doc-bar__btn--summary::-webkit-details-marker{display:none}.doc-bar__menu{z-index:50;border:1px solid var(--border);background:var(--panel);border-radius:10px;min-width:min(320px,90vw);max-height:min(60vh,400px);padding:8px;position:absolute;top:calc(100% + 6px);right:0;overflow:auto;box-shadow:0 4px 14px #0000001f,0 0 0 1px #0000000a}.doc-bar__empty{color:var(--text-muted);margin:0;padding:12px;font-size:.85rem}.doc-bar__list{margin:0;padding:0;list-style:none}.doc-bar__item{text-align:left;width:100%;color:var(--text-h);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.doc-bar__item:hover{background:var(--bg)}.doc-bar__item--active{background:var(--accent-bg);outline:1px solid var(--accent-border)}.doc-bar__item-name{font-size:.88rem;font-weight:600}.doc-bar__item-when{color:var(--text-muted);font-size:.72rem}.flow-host{flex:1;min-width:0;min-height:0;position:relative}.react-flow__panel.patelix-diagram-ai-stack{z-index:6;flex-direction:column-reverse;align-items:flex-end;gap:12px;margin:12px;display:flex}.patelix-diagram-ai-fab{border:1px solid var(--accent-border);background:linear-gradient(145deg, var(--accent-bg), var(--panel));width:52px;height:52px;color:var(--accent);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0;display:flex;box-shadow:0 4px 14px #0000002e}.patelix-diagram-ai-fab:hover{filter:brightness(1.05)}.patelix-diagram-ai-chat{background:var(--panel);border:1px solid var(--border);border-radius:12px;flex-direction:column;width:min(100vw - 32px,380px);min-height:0;max-height:min(70vh,520px);display:flex;overflow:hidden;box-shadow:0 8px 28px #0003}.patelix-diagram-ai-chat__header{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--panel) 92%, var(--border));flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.patelix-diagram-ai-chat__title{color:var(--text-h);margin:0;font-size:.95rem;font-weight:600}.patelix-diagram-ai-chat__close{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;display:flex}.patelix-diagram-ai-chat__close:hover{background:var(--border);color:var(--text-h)}.patelix-diagram-ai-chat__hint{color:var(--text-muted);border-bottom:1px solid var(--border);flex-shrink:0;margin:0;padding:8px 12px;font-size:.75rem;line-height:1.45}.patelix-diagram-ai-chat__messages{flex-direction:column;flex:auto;gap:8px;min-height:0;max-height:min(240px,28vh);padding:10px 12px;display:flex;overflow-y:auto}.patelix-diagram-ai-chat__empty{color:var(--text-muted);margin:0;font-size:.85rem}.patelix-diagram-ai-chat__msg{white-space:pre-wrap;word-break:break-word;border-radius:10px;max-width:92%;padding:8px 10px;font-size:.85rem;line-height:1.45}.patelix-diagram-ai-chat__msg--user{background:var(--accent-bg);color:var(--text-h);border:1px solid var(--accent-border);align-self:flex-end}.patelix-diagram-ai-chat__msg--assistant{background:color-mix(in srgb, var(--border) 35%, var(--panel));color:var(--text-h);border:1px solid var(--border);align-self:flex-start}.patelix-diagram-ai-chat__typing{color:var(--text-muted);font-style:italic}.patelix-diagram-ai-chat__tool{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 88%, var(--border));border-radius:8px;align-self:stretch;max-width:100%;padding:8px 10px;font-size:.78rem;line-height:1.35}.patelix-diagram-ai-chat__tool--ok{border-color:color-mix(in srgb, var(--accent-border) 55%, var(--border))}.patelix-diagram-ai-chat__tool--err{border-color:color-mix(in srgb, var(--danger,#c62828) 45%, var(--border))}.patelix-diagram-ai-chat__tool-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.patelix-diagram-ai-chat__tool-name{color:var(--text-h);word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.76rem;font-weight:600}.patelix-diagram-ai-chat__tool-badge{text-transform:uppercase;letter-spacing:.04em;background:var(--border);color:var(--text-muted);border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.65rem;font-weight:700}.patelix-diagram-ai-chat__tool--ok .patelix-diagram-ai-chat__tool-badge{background:color-mix(in srgb, var(--accent-bg) 80%, var(--border));color:var(--accent)}.patelix-diagram-ai-chat__tool--err .patelix-diagram-ai-chat__tool-badge{background:color-mix(in srgb, var(--danger,#c62828) 18%, var(--border));color:var(--danger,#b71c1c)}.patelix-diagram-ai-chat__tool-errmsg{color:var(--danger,#c62828);margin:0 0 6px;font-size:.75rem}.patelix-diagram-ai-chat__tool-details{color:var(--text-muted);margin:0;font-size:.72rem}.patelix-diagram-ai-chat__tool-details summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--accent);font-weight:500}.patelix-diagram-ai-chat__tool-pair{margin-top:6px}.patelix-diagram-ai-chat__tool-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:2px;font-size:.65rem;display:block}.patelix-diagram-ai-chat__tool-pre{white-space:pre-wrap;word-break:break-word;background:color-mix(in srgb, var(--border) 20%, var(--bg));border:1px solid var(--border);border-radius:6px;max-height:140px;margin:0;padding:6px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.68rem;line-height:1.35;overflow:auto}.patelix-diagram-ai-chat__error{color:var(--danger,#c62828);flex-shrink:0;margin:0;padding:0 12px 8px;font-size:.8rem}.patelix-diagram-ai-chat__mermaid-details{color:var(--text-muted);flex-shrink:0;margin:0 12px 8px;font-size:.8rem}.patelix-diagram-ai-chat__mermaid-pre{background:color-mix(in srgb, var(--border) 25%, var(--bg));border:1px solid var(--border);border-radius:6px;max-height:120px;margin:8px 0 0;padding:8px;font-size:.72rem;line-height:1.4;overflow:auto}.patelix-diagram-ai-chat__apply-row{flex-shrink:0;padding:0 12px 10px}.patelix-diagram-ai-chat__apply{width:100%}.patelix-diagram-ai-chat__composer{border-top:1px solid var(--border);background:color-mix(in srgb, var(--panel) 95%, var(--border));flex-shrink:0;align-items:stretch;gap:10px;padding:12px 12px 14px;display:flex}.patelix-diagram-ai-chat__input{resize:vertical;box-sizing:border-box;border:1px solid var(--border);background:var(--bg);width:100%;min-width:0;min-height:52px;max-height:140px;color:var(--text-h);border-radius:8px;flex:auto;align-self:stretch;padding:10px 12px;font-family:inherit;font-size:.875rem;line-height:1.45}.patelix-diagram-ai-chat__send.properties-btn{flex:none;align-self:stretch;width:auto;min-width:4.5rem;margin-top:0}.patelix-visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.properties-pane{border-left:1px solid var(--border);background:var(--panel);text-align:left;flex-direction:column;flex-shrink:0;gap:16px;width:min(260px,100vw);padding:20px 18px;display:flex;overflow:auto}.properties-pane__head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.properties-pane__title{font-family:var(--heading);color:var(--text-h);margin:0;font-size:1rem;font-weight:600}.properties-pane__badge{text-transform:uppercase;letter-spacing:.06em;background:var(--accent-bg);color:var(--accent);border:1px solid var(--accent-border);border-radius:6px;padding:4px 8px;font-size:.7rem;font-weight:600}.properties-edge-route{color:var(--text-h);flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 4px;font-size:.9rem;display:flex}.properties-edge-route__endpoint{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:500;overflow:hidden}.properties-edge-route__arrow{color:var(--text-muted);flex-shrink:0}.properties-pane__empty{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.5}.properties-hint{color:var(--text-muted);margin:0 0 12px;font-size:.8rem;line-height:1.45}.handle-inspector{border-bottom:1px solid var(--border);padding:10px 0 14px}.handle-inspector:last-of-type{border-bottom:none}.handle-inspector__head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.handle-inspector__id{color:var(--text-muted);word-break:break-all;font-size:.72rem}.handle-inspector__remove{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);cursor:pointer;border-radius:6px;flex-shrink:0;padding:4px 8px;font-size:.75rem}.handle-inspector__remove:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.handle-inspector__remove:disabled{opacity:.45;cursor:not-allowed}.patelix-node__handle{z-index:3;width:10px;min-width:10px;height:10px;min-height:10px}.patelix-node__handle.connectionindicator{pointer-events:all}.properties-pane__fields{flex-direction:column;gap:14px;display:flex}.properties-field{flex-direction:column;gap:6px;display:flex}.properties-field__label{color:var(--text-muted);font-size:.8rem}.properties-pane input[type=text],.properties-pane input[type=password]{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);box-sizing:border-box;border-radius:8px;width:100%;padding:8px 10px}.properties-pane input[type=text]:focus,.properties-pane input[type=password]:focus,.properties-pane input[type=number]:focus,.properties-pane select:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:#0000}.properties-pane input[type=number],.properties-pane select{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);box-sizing:border-box;border-radius:8px;width:100%;padding:8px 10px}.properties-field__textarea{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);box-sizing:border-box;resize:vertical;border-radius:8px;width:100%;min-height:120px;padding:8px 10px;font-size:.85rem;line-height:1.45}.properties-pane textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:#0000}.properties-field__readonly{opacity:.85;cursor:default}.properties-field--checkbox{flex-direction:row;justify-content:space-between;align-items:center;gap:12px}.properties-field--checkbox input[type=checkbox]{width:auto;margin:0}.properties-field--row{flex-flow:wrap;align-items:center;gap:8px}.properties-field--row .properties-btn{width:auto;margin-top:0}.properties-field--iframe-zoom{flex-wrap:wrap;align-items:center}.properties-field--iframe-zoom .properties-field__label{flex:1 0 100%}.properties-field__iframe-zoom-pct{text-align:center;font-variant-numeric:tabular-nums;min-width:3rem;color:var(--text-muted);font-size:.8rem}.properties-field__file-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.properties-field__image-preview{border:1px solid var(--border);object-fit:contain;border-radius:8px;max-width:100%;max-height:120px;display:block}.properties-btn{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);cursor:pointer;box-sizing:border-box;border-radius:8px;width:100%;margin-top:8px;padding:10px 14px;transition:border-color .15s,background .15s}.properties-btn:hover{border-color:var(--accent-border)}.properties-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.properties-btn--danger{border-color:color-mix(in srgb, var(--danger) 45%, var(--border));color:var(--danger);background:color-mix(in srgb, var(--danger) 8%, var(--bg))}.properties-btn--danger:hover{background:color-mix(in srgb, var(--danger) 14%, var(--bg));border-color:var(--danger)}.patelix-subgraph-group{box-sizing:border-box;background:0 0;border-radius:8px;width:100%;min-width:40px;height:100%;min-height:40px;position:relative}.patelix-subgraph-group .react-flow__resize-control{z-index:4}.patelix-subgraph-group__chrome{pointer-events:none;max-width:calc(100% - 16px);padding:0 6px;position:absolute;top:0;left:8px;transform:translateY(-50%)}.patelix-subgraph-group__title{letter-spacing:.02em;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;font-weight:600;overflow:hidden}.patelix-labeled-node{flex-direction:column;align-items:stretch;max-width:100%;display:flex}.patelix-labeled-node--group-frame{box-sizing:border-box;width:100%;min-width:0;height:100%;min-height:0}.patelix-labeled-node--group-frame .patelix-toolbar-chrome{box-sizing:border-box;flex:auto;width:100%;min-width:0;max-width:100%;height:100%;min-height:0}.patelix-labeled-node--group-frame .patelix-toolbar-chrome--grid{grid-template-rows:auto 1fr auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch;width:100%;height:100%}.patelix-labeled-node--group-frame .patelix-toolbar-chrome__g--main{flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;display:flex}.patelix-labeled-node--group-frame .patelix-toolbar-chrome__center{flex-direction:column;flex:auto;width:100%;min-height:0;display:flex}.patelix-labeled-node--group-frame .patelix-subgraph-group{flex:auto;min-height:0}.patelix-toolbar-chrome{width:fit-content;max-width:100%}.patelix-toolbar-chrome--pill{width:max-content;max-width:min(480px,92vw)}.patelix-toolbar-chrome--grid{grid-template-rows:auto auto auto;grid-template-columns:auto max-content auto;align-items:start;gap:0 4px;display:grid}.patelix-toolbar-chrome__g--above{grid-area:1/2;justify-self:stretch;min-width:0}.patelix-toolbar-chrome__g--left{grid-area:2/1;place-self:center end}.patelix-toolbar-chrome__g--main{grid-area:2/2;min-width:0}.patelix-toolbar-chrome__g--right{grid-area:2/3;place-self:center start}.patelix-toolbar-chrome__g--below{grid-area:3/2;justify-self:stretch;min-width:0}.patelix-toolbar-chrome__center{flex:none;min-width:0}.patelix-toolbar-strip{box-sizing:border-box;justify-content:center;align-items:center;gap:4px;display:flex}.patelix-toolbar-strip--horizontal{flex-flow:wrap;padding:4px 6px 2px}.patelix-toolbar-strip--vertical{flex-flow:column;padding:2px 4px}.patelix-toolbar-strip--pill.patelix-toolbar-strip--horizontal{padding:2px 4px}.patelix-toolbar-strip--pill .patelix-node-toolbar__btn{width:26px;height:26px}.toolbar-slot-editor{border-bottom:1px solid var(--border);margin-bottom:1rem;padding-bottom:1rem}.toolbar-slot-editor:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.toolbar-slot-editor__head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.toolbar-slot-editor__title{font-size:.8125rem;font-weight:600}.toolbar-slot-editor__enable{flex-direction:row-reverse;gap:.35rem}.patelix-node-toolbar__btn{border:1px solid var(--border);background:var(--bg-elevated,var(--node-bg));width:28px;height:28px;color:var(--text-h);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;transition:background .12s,border-color .12s;display:inline-flex}.patelix-node-toolbar__btn:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 10%, var(--node-bg));border-color:var(--accent)}.patelix-node-toolbar__btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.patelix-node-toolbar__btn:disabled{opacity:.45;cursor:default}.patelix-node-toolbar__btn--current{border-style:dashed}.patelix-node-toolbar__icon{display:block}.toolbar-item-editor{border-bottom:1px solid var(--border);flex-direction:column;gap:.5rem;margin-bottom:.75rem;padding-bottom:.75rem;display:flex}.toolbar-item-editor:last-of-type{border-bottom:none;margin-bottom:.5rem;padding-bottom:0}.properties-btn--small{align-self:flex-start;padding:.25rem .5rem;font-size:.8125rem}.md-tile{box-sizing:border-box;border:1px solid var(--border);background:var(--node-bg);color:var(--text-h);position:relative;box-shadow:0 1px 2px #0000000f,0 1px 3px #0000000a}.md-tile .react-flow__resize-control{z-index:4}.react-flow .react-flow__resize-control.handle{border:2px solid var(--accent,#2563eb);background:var(--panel,#fff);width:12px;height:12px;box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent), 0 2px 6px #0000002e;box-sizing:border-box;border-radius:3px}.react-flow .react-flow__resize-control.line{border-color:color-mix(in srgb, var(--accent) 55%, var(--border));opacity:1}.md-tile--has-image .md-tile__hero{z-index:0;background:color-mix(in srgb, var(--node-bg) 85%, var(--border));pointer-events:none;width:100%;height:100%;line-height:0;position:absolute;inset:0}.md-tile--has-image .md-tile__hero-img{object-fit:cover;width:100%;height:100%;display:block}.md-tile--has-image.md-tile--image-stretch .md-tile__hero-img{object-fit:fill}.md-tile--has-image .md-tile__inner{z-index:1;flex:1;min-height:0;position:relative}.md-tile__surface{flex-direction:column;flex:1 1 0;min-width:0;min-height:0;display:flex}.md-tile__surface--clip{border-radius:inherit;position:relative;overflow:hidden}.md-tile--selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-bg)}.md-tile--solo{flex-direction:column;justify-content:center;display:flex}.md-tile__inner{box-sizing:border-box;flex-direction:row;align-items:center;gap:0;min-height:100%;padding:0;display:flex}.md-tile__inner--title-only{justify-content:flex-start}.md-tile--solo .md-tile__inner--title-only{flex:none;min-height:0}.md-tile--has-body>.md-tile__inner--fill-height{width:100%}.md-tile__inner--fill-height .md-tile__leading,.md-tile__inner--fill-height .md-tile__trailing{align-self:center}.md-tile__leading,.md-tile__trailing{width:32px;min-width:32px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.md-tile__icon{opacity:.9}.md-tile__text{flex-direction:column;flex:1;justify-content:center;align-items:stretch;gap:0;min-width:0;min-height:0;display:flex}.md-tile__text--with-subtitle,.md-tile__text--solo-title{align-items:stretch}.md-tile__text--solo-title .md-tile__title{max-width:100%}.md-tile__title,.md-tile__subtitle{width:100%;font:inherit;text-align:inherit;cursor:grab;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;padding:0;display:block;overflow:hidden}.md-tile__title{letter-spacing:-.01em}.md-tile__subtitle{color:var(--text-muted);letter-spacing:-.005em}.md-tile__title:active,.md-tile__subtitle:active{cursor:grabbing}.md-tile__body--rich{width:100%;min-width:0;color:var(--text-muted);text-align:inherit;cursor:default;word-break:break-word;max-height:180px;margin-top:4px;font-size:.75rem;line-height:1.42;overflow:auto}.md-tile__body--rich.md-tile__body--rich--fill{flex:auto;min-height:0;max-height:none;overflow:auto}.md-tile__body--rich.md-tile__body--rich--fill:first-child{margin-top:0}:is(.md-tile__text:has(>.md-tile__body--rich--fill)>.md-tile__title,.md-tile__text:has(>.md-tile__body--rich--fill)>.md-tile__subtitle,.md-tile__text:has(>.md-tile__body--rich--fill)>.md-tile__input){flex-shrink:0}.md-tile__body--rich p{margin:0 0 .4em}.md-tile__body--rich p:last-child{margin-bottom:0}.md-tile__body--rich a{color:var(--accent)}.md-tile__body--rich ul,.md-tile__body--rich ol{margin:.35em 0;padding-inline-start:1.15em}.md-tile__body--rich code{background:var(--bg);border-radius:4px;padding:.1em .25em;font-family:ui-monospace,monospace;font-size:.9em}.md-tile__body--rich pre{background:var(--bg);border-radius:6px;margin:.35em 0;padding:6px 8px;font-size:.85em;overflow:auto}.md-tile__body--rich pre code{background:0 0;padding:0}.md-tile__body--rich table{border-collapse:separate;border-spacing:0;width:100%;max-width:100%;font-size:inherit;font-variant-numeric:tabular-nums;table-layout:auto;background:var(--node-bg);border:1px solid var(--border);box-shadow:0 1px 2px color-mix(in srgb, var(--text-h) 6%, transparent);border-radius:6px;margin:.5em 0;line-height:1.38;overflow:hidden}.md-tile__body--rich thead{background:color-mix(in srgb, var(--panel) 72%, var(--node-bg))}.md-tile__body--rich th{color:var(--text-h);text-align:left;border-bottom:1px solid color-mix(in srgb, var(--border) 55%, var(--accent) 45%);border-right:1px solid color-mix(in srgb, var(--border) 45%, transparent);letter-spacing:.02em;white-space:nowrap;padding:.42em .65em;font-size:.93em;font-weight:600}.md-tile__body--rich th:last-child{border-right:none}.md-tile__body--rich td{border-bottom:1px solid color-mix(in srgb, var(--border) 55%, transparent);border-right:1px solid color-mix(in srgb, var(--border) 45%, transparent);color:var(--text);vertical-align:top;padding:.38em .65em}.md-tile__body--rich td:last-child{border-right:none}.md-tile__body--rich tbody tr:nth-child(2n) td{background:color-mix(in srgb, var(--panel) 18%, var(--node-bg))}.md-tile__body--rich tbody tr:last-child td{border-bottom:none}.md-tile__iframe-wrap{flex-direction:column;min-height:0;display:flex}.md-tile__body.md-tile__iframe-wrap.md-tile__body--rich--fill{flex:1 1 0;min-height:0;overflow:hidden}.md-tile__iframe-preview-shell{min-height:0;box-shadow:none;background:var(--node-bg);border:none;border-radius:0;outline:none;flex-direction:column;flex:1 1 0;justify-content:flex-start;align-items:center;display:flex;overflow:hidden}.md-tile__iframe-preview{box-sizing:border-box;width:100%;max-width:100%;height:100%;min-height:0;max-height:100%;box-shadow:none;object-fit:contain;object-position:top center;background:var(--node-bg);border:none;outline:none;flex:1 1 0;display:block}.md-tile__iframe-preview-fallback{text-align:center;padding:12px 10px;font-size:.72rem;line-height:1.4}.md-tile__iframe-preview-fallback a{color:var(--accent);font-weight:600}.md-tile__body--iframe-error{text-align:center;color:var(--text-muted);border:1px dashed var(--border);box-sizing:border-box;border-radius:6px;justify-content:center;align-items:center;padding:10px;font-size:.75rem;display:flex}.md-tile__body--iframe-pill{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;line-height:1.35}.md-tile__iframe-pill-url{word-break:break-all;color:var(--text-h)}.md-tile__muted{color:var(--text-muted);font-style:italic}.md-tile__input{width:100%;font:inherit;border:1px solid var(--accent);background:var(--bg);color:var(--text-h);box-sizing:border-box;border-radius:6px;margin:0;padding:0}.patelix-edge__label{pointer-events:none;position:absolute}.patelix-edge__label .patelix-toolbar-chrome{pointer-events:auto}.patelix-edge__label .md-tile--edge-pill{pointer-events:auto;width:max-content;max-width:200px}.patelix-edge__label .md-tile--edge-pill .md-tile__leading,.patelix-edge__label .md-tile--edge-pill .md-tile__trailing{width:auto;min-width:0}.md-tile__inner--edge-icon-only{justify-content:center}.inspector{flex-direction:column;gap:0;display:flex}.prop-details{border-bottom:1px solid var(--border)}.prop-details:last-child{border-bottom:none}.prop-details__summary{cursor:pointer;color:var(--text-h);-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:9px 2px;font-size:.8rem;font-weight:600;list-style:none;display:flex}.prop-details__summary svg{opacity:.85;color:var(--accent);flex-shrink:0}.prop-details__summary::-webkit-details-marker{display:none}.prop-details__summary:after{content:"▸";color:var(--text-muted);margin-left:auto;font-size:.65rem;transition:transform .15s}.prop-details[open]>.prop-details__summary:after{transform:rotate(90deg)}.prop-details__body{flex-direction:column;gap:2px;padding:0 2px 12px;display:flex}.properties-field--compact{margin-bottom:6px}.properties-field--compact:last-child{margin-bottom:0}.properties-edge-route--inset{margin-bottom:10px}.prop-slider{grid-template-columns:56px 1fr 42px;align-items:center;gap:6px;margin-bottom:8px;display:grid}.prop-slider:last-child{margin-bottom:0}.prop-slider__label{color:var(--text-muted);align-items:center;gap:4px;font-size:.72rem;line-height:1.2;display:flex}.prop-slider__icon{color:var(--accent);opacity:.9;display:flex}.prop-slider__range{width:100%;min-width:0;height:4px;accent-color:var(--accent);cursor:pointer}.prop-slider__value{font-variant-numeric:tabular-nums;color:var(--text-h);text-align:right;font-size:.7rem}.prop-field{margin-bottom:10px}.prop-field:last-child{margin-bottom:0}.prop-field__label{color:var(--text-muted);margin-bottom:6px;font-size:.72rem;display:block}.prop-align{gap:4px;display:flex}.prop-align__btn{border:1px solid var(--border);background:var(--bg);color:var(--text-muted);cursor:pointer;border-radius:8px;flex:1;justify-content:center;align-items:center;padding:6px 4px;transition:border-color .15s,background .15s,color .15s;display:flex}.prop-align__btn:hover{border-color:var(--accent-border);color:var(--text-h)}.prop-align__btn--active{border-color:var(--accent);background:var(--accent-bg);color:var(--accent)}.prop-segment{gap:3px;display:flex}.prop-segment__btn{font-variant-numeric:tabular-nums;border:1px solid var(--border);background:var(--bg);color:var(--text-muted);cursor:pointer;border-radius:6px;flex:1;padding:5px 2px;font-size:.68rem;transition:border-color .15s,background .15s}.prop-segment__btn:hover{border-color:var(--accent-border);color:var(--text-h)}.prop-segment__btn--active{border-color:var(--accent);background:var(--accent-bg);color:var(--accent);font-weight:600}.document-inspector__ai .prop-details__body{gap:10px}.document-inspector__ai-hint{margin-top:0}.document-inspector__ai-key-actions{margin:-6px 0 2px}.document-inspector__ai-clear-key{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;text-decoration:underline}.document-inspector__ai-clear-key:hover{color:var(--text-h)}.document-inspector__ai-prompt{min-height:88px}.document-inspector__ai-submit:disabled{opacity:.55;cursor:not-allowed}.document-inspector__ai-error{color:var(--danger);margin:0;font-size:.8rem;line-height:1.4}.document-inspector__mermaid .prop-details__body{gap:10px}.document-inspector__mermaid-hint code{font-size:.85em}.document-inspector__mermaid-input{min-height:120px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;line-height:1.4}.document-inspector__mermaid-submit:disabled{opacity:.55;cursor:not-allowed}.document-inspector__mermaid-error{color:var(--danger);margin:0;font-size:.8rem;line-height:1.4}.ai-request-review-dialog{border:1px solid var(--border);background:var(--panel);width:100%;max-width:min(720px,100vw - 32px);color:var(--text-h);border-radius:12px;padding:0;box-shadow:0 16px 48px #00000059}.ai-request-review-dialog::backdrop{background:#00000073}.ai-request-review-dialog__inner{flex-direction:column;gap:12px;padding:18px 20px 16px;display:flex}.ai-request-review-dialog__title{font-size:1.05rem;font-family:var(--heading);margin:0;font-weight:600}.ai-request-review-dialog__subtle{margin:0}.ai-request-review-dialog__subtle code{font-size:.85em}.ai-request-review-dialog__editor{box-sizing:border-box;border:1px solid var(--border);background:var(--bg);width:100%;min-height:240px;color:var(--text-h);resize:vertical;border-radius:8px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;line-height:1.4}.ai-request-review-dialog__editor:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:#0000}.ai-request-review-dialog__error{color:var(--danger);margin:0;font-size:.85rem}.ai-request-review-dialog__actions{justify-content:flex-end;gap:10px;display:flex}.ai-request-review-dialog__actions .properties-btn{width:auto;min-width:100px;margin-top:0}.page-markdown-ai-dialog__scope{flex-direction:column;gap:8px;display:flex}.page-markdown-ai-dialog__label{color:var(--text-h);font-size:.82rem;font-weight:600}.page-markdown-ai-dialog__radios{flex-direction:column;gap:6px;display:flex}.page-markdown-ai-dialog__radio{cursor:pointer;color:var(--text-muted);align-items:flex-start;gap:8px;font-size:.82rem;line-height:1.35;display:flex}.page-markdown-ai-dialog__radio input{margin-top:2px}.page-markdown-ai-dialog__checks{border:1px solid var(--border);background:var(--bg);border-radius:8px;flex-direction:column;gap:6px;max-height:160px;padding:8px 10px;display:flex;overflow-y:auto}.page-markdown-ai-dialog__check{cursor:pointer;color:var(--text-muted);align-items:flex-start;gap:8px;font-size:.78rem;line-height:1.35;display:flex}.page-markdown-ai-dialog__check input{margin-top:2px}.page-markdown-ai-dialog__prompt-label{color:var(--text-h);font-size:.82rem;font-weight:600}.page-markdown-ai-dialog__instruction{min-height:120px}.page-diagram-embed{background:0 0;border:none;border-radius:0;overflow:hidden}.page-diagram-embed__viewport{position:relative}.page-diagram-embed--locked .page-diagram-embed__open-hit{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border:none;border-radius:0;margin:0;padding:0;display:block}.page-diagram-embed--locked .page-diagram-embed__open-hit:focus{box-shadow:0 0 0 2px var(--accent-border);border-radius:4px;outline:none}.page-diagram-embed--locked .page-diagram-embed__open-hit .page-diagram-embed__viewport,.page-diagram-embed--locked .page-diagram-embed__open-hit .page-diagram-embed__flow{pointer-events:none}.patelix-workspace-docnav-fixed{z-index:15;pointer-events:none;position:fixed;bottom:10px;left:50%;transform:translate(-50%)}.patelix-workspace-docnav-fixed .patelix-canvas-docnav-controls{pointer-events:auto}.page-diagram-embed__flow.react-flow{--xy-background-color:transparent;background-color:#0000!important}.page-diagram-embed--error{flex-direction:column;align-items:flex-start;gap:4px;padding:16px;display:flex}.page-diagram-embed__error-title{color:var(--danger,#dc2626);font-size:.85rem;font-weight:600}.page-diagram-embed__error-id{color:var(--text-muted);font-family:ui-monospace,monospace;font-size:.8rem}.doc-bar__item-badge{text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--border);color:var(--text-m);background:var(--panel-2);border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:.65rem;font-weight:600}.patelix-patelcode-node__tile{border:1px solid var(--border);background:var(--panel);box-sizing:border-box;position:relative;overflow:hidden}.patelix-patelcode-node__play{z-index:3;border:1px solid var(--border);background:var(--panel-2);width:28px;height:28px;color:var(--accent,#2563eb);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:6px;right:6px;box-shadow:0 1px 2px #0000000f}.patelix-patelcode-node__play:hover{background:var(--panel);filter:brightness(1.03)}.patelix-patelcode-node__play:focus-visible{outline:2px solid var(--accent-border,#93c5fd);outline-offset:1px}.patelix-patelcode-node__head{align-items:center;gap:8px;padding:8px 36px 10px 10px;display:flex}.patelix-patelcode-node__code-mark{color:var(--text-m);flex-shrink:0;align-items:center;display:flex}.patelix-patelcode-node__code-icon{display:block}.patelix-patelcode-node__title{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;overflow:hidden}.patelix-patelcode-node__status{border-top:1px solid var(--border);word-break:break-word;max-height:72px;padding:6px 10px;font-size:.75rem;line-height:1.3;overflow:auto}.patelix-patelcode-node__status--out{color:var(--text-h);background:var(--panel-2);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.patelix-patelcode-node__status--md{font-family:inherit}.patelix-patelcode-node__status--md p{margin:0 0 .35em}.patelix-patelcode-node__status--md p:last-child{margin-bottom:0}.patelix-patelcode-node__status--md ul,.patelix-patelcode-node__status--md ol{margin:.25em 0;padding-left:1.1em}.patelix-patelcode-node__status--md code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68em}.patelix-patelcode-node__status--md pre{background:var(--panel);border-radius:4px;margin:.25em 0;padding:4px 6px;font-size:.65rem;overflow:auto}.patelix-patelcode-node__status--error{color:var(--danger,#dc2626);background:#dc262614}.patelix-sql-import-node__tile{border:1px solid var(--border);background:var(--panel);box-sizing:border-box;position:relative;overflow:hidden}.patelix-sql-import-node__upload-hit{z-index:3;border:1px solid var(--border);background:var(--panel-2);width:28px;height:28px;color:var(--accent,#2563eb);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:6px;right:6px}.patelix-sql-import-node__file{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.patelix-sql-import-node__head{padding:8px 40px 4px 10px}.patelix-sql-import-node__title{color:var(--text-h);font-size:.875rem;font-weight:600}.patelix-sql-import-node__meta{color:var(--text-m);padding:0 10px 10px;font-size:.75rem;line-height:1.35}.patelix-sql-import-node__file-name{word-break:break-all;margin-bottom:4px;display:block}.patelix-sql-query-node__tile{border:1px solid var(--border);background:var(--panel);box-sizing:border-box;position:relative;overflow:hidden}.patelix-sql-query-node__play{z-index:3;border:1px solid var(--border);background:var(--panel-2);width:28px;height:28px;color:var(--accent,#2563eb);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:6px;right:6px}.patelix-sql-query-node__head{align-items:center;gap:8px;padding:8px 36px 10px 10px;display:flex}.patelix-sql-query-node__mark{color:var(--text-m);display:flex}.patelix-sql-query-node__title{color:var(--text-h);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;overflow:hidden}.patelix-sql-query-node__status{border-top:1px solid var(--border);word-break:break-word;max-height:72px;padding:6px 10px;font-size:.72rem;line-height:1.3;overflow:auto}.patelix-sql-query-node__status--out{color:var(--text-h);background:var(--panel-2);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.patelix-sql-query-node__status--error{color:var(--danger,#dc2626);background:#dc262614}.sql-query-node-inspector__table-wrap{border:1px solid var(--border);border-radius:6px;max-height:280px;margin-top:8px;overflow:auto}.sql-query-node-inspector__table{border-collapse:collapse;width:100%;font-size:.75rem}.sql-query-node-inspector__table th,.sql-query-node-inspector__table td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:4px 6px}.sql-query-node-inspector__table th{background:var(--panel-2);z-index:1;position:sticky;top:0}.sql-query-node-inspector__trunc{color:var(--text-m);margin:6px 0 0;font-size:.75rem}.sql-query-node-inspector__error{color:var(--danger,#dc2626);margin:8px 0;font-size:.85rem}.sql-query-node-inspector__raw{background:var(--panel-2);border-radius:6px;max-height:200px;margin:8px 0 0;padding:8px;font-size:.75rem;overflow:auto}.sqlite-db-import-sql-section{border-bottom:1px solid var(--border);margin:12px 0;padding-bottom:8px}.sqlite-db-import-sql-section__hint{margin-top:4px;margin-bottom:10px}.sqlite-db-import-sql-controls{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.sqlite-db-import-sql-controls__row{cursor:pointer;align-items:center;gap:8px;font-size:.85rem;display:flex}.sqlite-db-import-sql-controls__limit input{max-width:8rem}.sqlite-db-import-sql-section__warn{color:var(--warning-fg,#b45309);margin:0 0 10px;font-size:.8rem}.sqlite-db-import-sql-block{border:1px solid var(--border);background:var(--panel-2);border-radius:8px;margin-top:8px;padding:6px 8px}.sqlite-db-import-sql-block__summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:8px 12px;list-style:none;display:flex}.sqlite-db-import-sql-block__summary::-webkit-details-marker{display:none}.sqlite-db-import-sql-block__title{font-size:.85rem;font-weight:600}.sqlite-db-import-sql-block__meta{color:var(--text-m);font-size:.75rem}.sqlite-db-import-sql-block__body{flex-direction:column;gap:6px;margin-top:10px;display:flex}.sqlite-db-import-sql-block__label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-m);font-size:.72rem}.sqlite-db-import-sql-preview{white-space:pre-wrap;word-break:break-word;background:var(--panel);border:1px solid var(--border);border-radius:6px;max-height:11rem;margin:0;padding:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.7rem;line-height:1.35;overflow:auto}.sql-import-node-inspector__file{word-break:break-all;margin:4px 0;font-size:.85rem}.sql-import-node-inspector__meta{color:var(--text-m);margin:0;font-size:.85rem}.patelcode-node-inspector__hint{margin-bottom:12px}.properties-field--fieldset.patelcode-node-inspector__output-mode{border:none;margin:0 0 14px;padding:0}.patelcode-node-inspector__output-mode .properties-field__label{margin-bottom:4px;padding:0}.patelcode-node-inspector__output-mode-hint{color:var(--text-m,#64748b);margin:0 0 10px;font-size:.85rem;line-height:1.4}.patelcode-node-inspector__output-mode-options{flex-wrap:wrap;gap:12px 20px;display:flex}.patelcode-node-inspector__output-mode-option{cursor:pointer;align-items:center;gap:6px;font-size:.875rem;display:inline-flex}.patelcode-node-inspector__output-mode-option input{margin:0}.patelcode-node-inspector__ai{border-bottom:1px solid var(--border);margin-bottom:16px;padding-bottom:14px}.patelcode-node-inspector__ai-hint{color:var(--text-m,#64748b);margin:6px 0 10px;font-size:.85rem;line-height:1.4}.patelcode-node-inspector__ai-instruction{min-height:4.5rem}.patelcode-node-inspector__ai-error{color:var(--danger,#dc2626);margin:0 0 8px;font-size:.85rem;line-height:1.35}.patelcode-node-inspector__ai .properties-btn{margin-top:4px}.patelcode-node-inspector__upstream{margin-bottom:16px}.patelcode-node-inspector__upstream-intro{color:var(--text-m,#64748b);margin:6px 0 10px;font-size:.85rem;line-height:1.4}.patelcode-node-inspector__upstream-empty{color:var(--text-m,#64748b);margin:0;font-size:.85rem}.patelcode-node-inspector__upstream-list{margin:0;padding:0;list-style:none}.patelcode-node-inspector__upstream-item{border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:10px}.patelcode-node-inspector__upstream-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.patelcode-node-inspector__upstream-head{align-items:center;gap:8px;margin-bottom:4px;display:flex}.patelcode-node-inspector__input-idx{font-size:.8rem}.patelcode-node-inspector__source-type{text-transform:uppercase;letter-spacing:.04em;color:var(--text-m,#64748b);font-size:.7rem}.patelcode-node-inspector__source-line{color:var(--text-h);margin-bottom:4px;font-size:.85rem}.patelcode-node-inspector__source-id{color:var(--text-m,#64748b);word-break:break-all;margin-top:2px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.7rem;display:block}.patelcode-node-inspector__upstream-hint{color:var(--text-m,#64748b);margin:0 0 6px;font-size:.8rem;line-height:1.35}.patelcode-node-inspector__upstream-value{background:var(--panel-2);border:1px solid var(--border);white-space:pre-wrap;border-radius:6px;max-height:140px;margin:0;padding:8px;font-size:.75rem;line-height:1.35;overflow:auto}.patelcode-node-inspector__output{background:var(--panel-2);border:1px solid var(--border);white-space:pre-wrap;border-radius:6px;max-height:160px;margin:0;padding:8px;font-size:.8rem;overflow:auto}.patelcode-node-inspector__output--md{white-space:normal;line-height:1.45}.patelcode-node-inspector__output--md p{margin:0 0 .5em}.patelcode-node-inspector__output--md p:last-child{margin-bottom:0}.patelcode-node-inspector__output--md pre{background:var(--panel);border:1px solid var(--border);border-radius:4px;margin:.5em 0;padding:6px 8px;font-size:.75rem;overflow:auto}.patelcode-node-inspector__output--md code{font-size:.85em}.patelcode-node-inspector__error{color:var(--danger,#dc2626);margin:0;padding:8px;font-size:.85rem}.patelix-canvas-tool--run-patelcode{color:var(--accent,#2563eb)}.auth-gate{box-sizing:border-box;background:var(--bg,#0f1218);min-height:100vh;color:var(--text-h,#e8eaef);justify-content:center;align-items:center;padding:24px;display:flex}.auth-gate__status{color:var(--text-m,#a8b0c0);margin:0;font-size:.9375rem}.auth-gate__card{border:1px solid var(--border,#2a3140);background:var(--panel,#171b24);border-radius:12px;width:100%;max-width:380px;padding:28px 28px 24px;box-shadow:0 12px 40px #00000059}.auth-gate__title{font-family:var(--heading,system-ui, sans-serif);letter-spacing:-.02em;margin:0 0 6px;font-size:1.5rem;font-weight:700}.auth-gate__subtitle{color:var(--text-m,#a8b0c0);margin:0 0 22px;font-size:.875rem}.auth-gate__form{flex-direction:column;gap:14px;display:flex}.auth-gate__label{color:var(--text-m,#a8b0c0);flex-direction:column;gap:6px;font-size:.8125rem;display:flex}.auth-gate__input{font:inherit;color:#141820;background:#fffffff7;border:1px solid #ffffff59;border-radius:8px;padding:10px 12px;font-size:.9375rem}.auth-gate__input::placeholder{color:#6b7280}.auth-gate__input:focus{outline-offset:0;background:#fff;border-color:#ffffff80;outline:2px solid #648cff8c}.auth-gate__error{color:#f87171;margin:0;font-size:.8125rem}.auth-gate__submit{font:inherit;color:#fff;cursor:pointer;background:#3b5bdb;border:none;border-radius:8px;margin-top:4px;padding:10px 16px;font-size:.9375rem;font-weight:600}.auth-gate__submit:hover{background:#4c6ef5}.auth-gate__switch{box-sizing:border-box;width:100%;font:inherit;color:var(--text-m,#a8b0c0);cursor:pointer;text-align:center;background:0 0;border:none;margin-top:16px;padding:8px;font-size:.8125rem;text-decoration:underline;display:block}.auth-gate__switch:hover{color:var(--text-h,#e8eaef)}.lx-chat__fab{z-index:1000;color:#fff;cursor:pointer;background:#26251e;border:none;border-radius:50%;width:56px;height:56px;font-size:24px;line-height:1;transition:transform .12s,background .12s;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 24px #00000047}.lx-chat__fab:hover{background:#3a3930;transform:translateY(-1px)}.lx-chat{z-index:1000;color:#26251e;background:#fff;border:1px solid #26251e1f;border-radius:16px;flex-direction:column;width:min(370px,100vw - 32px);height:min(520px,100vh - 130px);font-family:system-ui,Helvetica Neue,Helvetica,Arial,sans-serif;display:flex;position:fixed;bottom:88px;right:22px;overflow:hidden;box-shadow:0 18px 48px #00000047}.lx-chat__head{color:#fff;background:#26251e;justify-content:space-between;align-items:flex-start;padding:14px 16px;display:flex}.lx-chat__title{font-size:.95rem;font-weight:700}.lx-chat__sub{opacity:.7;margin-top:2px;font-size:.75rem}.lx-chat__close{color:#fff;cursor:pointer;opacity:.8;background:0 0;border:none;font-size:1.5rem;line-height:1}.lx-chat__close:hover{opacity:1}.lx-chat__body{background:#f7f7f4;flex-direction:column;flex:1;gap:8px;padding:14px;display:flex;overflow-y:auto}.lx-chat__empty{text-align:center;color:#6b6a60;max-width:24ch;margin:auto;font-size:.85rem}.lx-chat__msg{white-space:pre-wrap;word-break:break-word;border-radius:14px;max-width:80%;padding:9px 12px;font-size:.875rem;line-height:1.4}.lx-chat__msg--me{color:#fff;background:#4f6bf6;border-bottom-right-radius:4px;align-self:flex-end}.lx-chat__msg--them{color:#26251e;background:#fff;border:1px solid #26251e1a;border-bottom-left-radius:4px;align-self:flex-start}.lx-chat__contact{gap:8px;padding:8px 12px 0;display:flex}.lx-chat__field{min-width:0;font:inherit;color:#26251e;background:#fff;border:1px solid #26251e2e;border-radius:8px;flex:1;padding:7px 10px;font-size:.8125rem}.lx-chat__error{color:#d64545;padding:6px 12px 0;font-size:.75rem}.lx-chat__form{border-top:1px solid #26251e14;gap:8px;padding:10px 12px 12px;display:flex}.lx-chat__input{min-width:0;font:inherit;color:#26251e;background:#fff;border:1px solid #26251e2e;border-radius:10px;flex:1;padding:9px 12px;font-size:.875rem}.lx-chat__input:focus{border-color:#4f6bf680;outline:2px solid #4f6bf666}.lx-chat__send{font:inherit;color:#fff;cursor:pointer;background:#4f6bf6;border:none;border-radius:10px;flex:none;padding:9px 16px;font-size:.875rem;font-weight:600}.lx-chat__send:disabled{opacity:.5;cursor:default}@media (width<=640px){.lx-chat{width:auto;bottom:84px;left:12px;right:12px}.lx-chat__fab{bottom:16px;right:16px}}.lx{--lx-bg:#f7f7f4;--lx-surface:#fff;--lx-panel:#fbfbf9;--lx-ink:#26251e;--lx-muted:#6b6a60;--lx-faint:#9a9a8e;--lx-border:#26251e1a;--lx-border-strong:#26251e33;--lx-secondary:#e6e5e0;--lx-secondary-hover:#dedcd5;--lx-accent:#4f6bf6;--lx-max:1180px;background:var(--lx-bg);min-height:100vh;color:var(--lx-ink);-webkit-font-smoothing:antialiased;font-family:system-ui,Helvetica Neue,Helvetica,Arial,sans-serif;overflow-x:hidden}.lx *{box-sizing:border-box}.lx a{color:inherit;text-decoration:none}.lx-nav{max-width:var(--lx-max);grid-template-columns:1fr auto 1fr;align-items:center;margin:0 auto;padding:20px 24px;display:grid}.lx-brand{letter-spacing:-.01em;align-items:center;gap:9px;font-size:17px;font-weight:600;display:inline-flex}.lx-brand-mark{color:var(--lx-accent);font-size:13px}.lx-nav-links{color:var(--lx-muted);justify-content:center;gap:30px;font-size:14px;display:flex}.lx-nav-links a:hover{color:var(--lx-ink)}.lx-nav-cta{justify-content:flex-end;gap:10px;display:flex}.lx .lx-btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;height:40px;padding:0 18px;font-size:14px;font-weight:500;transition:background .18s,border-color .18s,transform .12s;display:inline-flex}.lx .lx-btn:active{transform:translateY(1px)}.lx .lx-btn--solid{background:var(--lx-ink);color:var(--lx-bg);border-color:var(--lx-ink)}.lx .lx-btn--solid:hover{background:#34332a}.lx .lx-btn--secondary{background:var(--lx-secondary);color:var(--lx-ink);border-color:#26251e0a}.lx .lx-btn--secondary:hover{background:var(--lx-secondary-hover)}.lx .lx-btn--ghost{color:var(--lx-ink);border-color:var(--lx-border-strong);background:0 0}.lx .lx-btn--ghost:hover{background:#26251e0d}.lx .lx-btn--lg{height:50px;padding:0 24px;font-size:16px}.lx-hero{max-width:var(--lx-max);grid-template-columns:1fr 1fr;align-items:center;gap:56px;margin:0 auto;padding:72px 24px 64px;display:grid}.lx-eyebrow{border:1px solid var(--lx-border-strong);color:var(--lx-muted);background:#ffffff80;border-radius:999px;padding:5px 13px;font-size:13px;display:inline-block}.lx-hero-title{letter-spacing:-.025em;max-width:12ch;margin:22px 0 0;font-size:clamp(36px,5vw,58px);font-weight:450;line-height:1.05}.lx-hero-sub{max-width:44ch;color:var(--lx-muted);margin:22px 0 0;font-size:clamp(16px,1.4vw,18px);line-height:1.6}.lx-hero-cta{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.lx-hero-visual{min-width:0}.lx-window{border:1px solid var(--lx-border);background:var(--lx-surface);border-radius:14px;overflow:hidden;box-shadow:0 24px 60px -30px #26251e59}.lx-window-bar{border-bottom:1px solid var(--lx-border);background:var(--lx-panel);align-items:center;gap:7px;padding:12px 14px;display:flex}.lx-dot{background:#d9d8d1;border-radius:50%;width:11px;height:11px}.lx-window-title{color:var(--lx-faint);margin-left:10px;font-size:12.5px}.lx-window-body{padding:18px 18px 20px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:13px;line-height:1.9}.lx-log-row{white-space:nowrap;align-items:baseline;gap:8px;display:flex;overflow:hidden}.lx-log-arrow{color:var(--lx-accent)}.lx-log-call{color:var(--lx-ink);text-overflow:ellipsis;overflow:hidden}.lx-log-ok{color:#3f8f5b;flex-shrink:0;margin-left:auto}.lx-log-done{border-top:1px dashed var(--lx-border);color:var(--lx-muted);margin-top:12px;padding-top:12px}.lx-strip{max-width:var(--lx-max);text-align:center;margin:0 auto;padding:8px 24px 40px}.lx-strip-label{letter-spacing:.06em;text-transform:uppercase;color:var(--lx-faint);font-size:12.5px}.lx-strip-logos{color:var(--lx-muted);flex-wrap:wrap;justify-content:center;gap:12px 34px;margin-top:16px;font-size:15px;font-weight:500;display:flex}.lx-section{max-width:var(--lx-max);margin:0 auto;padding:72px 24px}.lx-section-head{text-align:center;max-width:640px;margin:0 auto 44px}.lx-section-head h2,.lx-case h2,.lx-cta-band h2{letter-spacing:-.02em;margin:0;font-size:clamp(26px,3.6vw,40px);font-weight:450}.lx-section-head p{color:var(--lx-muted);margin:16px 0 0;font-size:17px;line-height:1.6}.lx-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.lx-card{border:1px solid var(--lx-border);background:var(--lx-surface);border-radius:14px;padding:26px 24px;transition:border-color .2s,box-shadow .2s,transform .2s}.lx-card:hover{border-color:var(--lx-border-strong);transform:translateY(-2px);box-shadow:0 14px 34px -22px #26251e66}.lx-card h3{letter-spacing:-.01em;margin:0 0 8px;font-size:18px;font-weight:550}.lx-card p{color:var(--lx-muted);margin:0;font-size:15px;line-height:1.6}.lx-case-inner{border:1px solid var(--lx-border);background:var(--lx-surface);border-radius:22px;max-width:860px;margin:0 auto;padding:48px}.lx-case h2{margin-top:14px}.lx-case-lead{color:var(--lx-muted);margin:18px 0 0;font-size:18px;line-height:1.65}.lx-case-list{gap:12px;margin:26px 0 0;padding:0;list-style:none;display:grid}.lx-case-list li{color:var(--lx-ink);padding-left:26px;font-size:15.5px;line-height:1.5;position:relative}.lx-case-list li:before{content:"";background:var(--lx-accent);border-radius:3px;width:8px;height:8px;position:absolute;top:8px;left:3px}.lx-stats{border-top:1px solid var(--lx-border);flex-wrap:wrap;gap:44px;margin-top:36px;padding-top:28px;display:flex}.lx-stat{flex-direction:column;gap:4px;display:flex}.lx-stat-num{letter-spacing:-.02em;font-size:30px;font-weight:500}.lx-stat-label{color:var(--lx-muted);font-size:13.5px}.lx-steps{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.lx-step{border:1px solid var(--lx-border);background:var(--lx-panel);border-radius:14px;padding:24px}.lx-step-n{color:var(--lx-accent);letter-spacing:.08em;font-size:13px;font-weight:600}.lx-step h3{margin:12px 0 8px;font-size:17px;font-weight:550}.lx-step p{color:var(--lx-muted);margin:0;font-size:14.5px;line-height:1.55}.lx-cta-band{text-align:center;max-width:820px;margin:24px auto 0;padding:64px 24px 84px}.lx-cta-band p{max-width:520px;color:var(--lx-muted);margin:16px auto 0;font-size:17px;line-height:1.6}.lx-cta-band .lx-hero-cta{justify-content:center;margin-top:28px}.lx-footer{max-width:var(--lx-max);border-top:1px solid var(--lx-border);grid-template-columns:1.4fr 2fr;gap:40px;margin:0 auto;padding:52px 24px 48px;display:grid}.lx-footer-brand p{color:var(--lx-muted);max-width:240px;margin:12px 0 0;font-size:14px}.lx-footer-cols{grid-template-columns:repeat(2,1fr);gap:24px;display:grid}.lx-footer-cols h4{letter-spacing:.04em;text-transform:uppercase;color:var(--lx-faint);margin:0 0 14px;font-size:13px;font-weight:600}.lx-footer-cols a{color:var(--lx-muted);margin-bottom:10px;font-size:14.5px;display:block}.lx-footer-cols a:hover{color:var(--lx-ink)}.lx-footer-legal{border-top:1px solid var(--lx-border);color:var(--lx-faint);grid-column:1/-1;margin-top:20px;padding-top:24px;font-size:13px}.lx-contact{max-width:var(--lx-max);grid-template-columns:1fr 1fr;align-items:start;gap:56px;margin:0 auto;padding:56px 24px 80px;display:grid}.lx-contact-copy .lx-hero-title{max-width:16ch}.lx-contact-card{border:1px solid var(--lx-border);background:var(--lx-surface);border-radius:18px;padding:32px;box-shadow:0 24px 60px -34px #26251e59}.lx-form{gap:16px;display:grid}.lx-field{color:var(--lx-muted);gap:7px;font-size:14px;display:grid}.lx-field>span{font-weight:500}.lx-field input,.lx-field textarea{border:1px solid var(--lx-border-strong);background:var(--lx-bg);width:100%;color:var(--lx-ink);font:inherit;resize:vertical;border-radius:10px;padding:11px 13px;font-size:15px}.lx-field input:focus,.lx-field textarea:focus{border-color:var(--lx-accent);outline:none;box-shadow:0 0 0 3px #4f6bf626}.lx-form-submit{width:100%;margin-top:4px}.lx .lx-btn.lx-form-submit:disabled{opacity:.6;cursor:default}.lx-form-error{color:#c0392b;margin:0;font-size:14px}.lx-form-note{color:var(--lx-muted);text-align:center;margin:4px 0 0;font-size:13.5px}.lx-form-note a{color:var(--lx-accent)}.lx-contact-success{text-align:center;padding:16px 8px}.lx-contact-check{color:#3f8f5b;background:#3f8f5b24;border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;margin:0 auto 14px;font-size:22px;display:flex}.lx-contact-success h2{margin:0 0 8px;font-size:22px;font-weight:500}.lx-contact-success p{color:var(--lx-muted);margin:0 0 20px}.lx-window-body--anim{min-height:210px;animation:.4s both lx-fadein}.lx-fade-in{animation:.5s both lx-fadein}.lx-window-body .lx-log-row{opacity:0;transition:opacity .35s,transform .35s;transform:translateY(6px)}.lx-window-body .lx-log-row.is-in{opacity:1;transform:none}.lx-window-body .lx-log-row.is-in .lx-log-ok{transform-origin:100%;animation:.35s cubic-bezier(.2,.9,.3,1.3) .1s both lx-okpop}.lx-log-running{border-top:1px dashed var(--lx-border);color:var(--lx-muted);align-items:center;gap:9px;margin-top:12px;padding-top:12px;font-size:13px;display:flex}.lx-spinner{border:2px solid var(--lx-border-strong);border-top-color:var(--lx-accent);border-radius:50%;width:13px;height:13px;animation:.7s linear infinite lx-spin}@keyframes lx-fadein{0%{opacity:0}to{opacity:1}}@keyframes lx-okpop{0%{transform:scale(.8)}to{transform:none}}@keyframes lx-spin{to{transform:rotate(360deg)}}.lx-diagram-wrap{border:1px solid var(--lx-border);background:var(--lx-surface);border-radius:20px;margin:0 auto;padding:22px;overflow-x:auto;box-shadow:0 24px 60px -38px #26251e4d}.lx-flow-canvas{margin:0 auto;position:relative}.lx-flow-edges{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.lx-fedge{fill:none;stroke:#4f6bf68c;stroke-width:2px;stroke-dasharray:6 8;stroke-linecap:round;animation:.9s linear infinite lx-flow}.lx-fhandle{fill:var(--lx-accent)}.lx-fnode{box-sizing:border-box;border:1.5px solid var(--lx-border-strong);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;background:#fff;border-radius:14px;flex-direction:column;gap:5px;padding:12px 14px;transition:opacity .5s,box-shadow .2s;display:flex;position:absolute;box-shadow:0 10px 22px -16px #26251e80}.lx-fnode:hover{box-shadow:0 14px 30px -16px #26251e8c}.lx-fnode:active{cursor:grabbing}.lx-fnode--accent{border-color:var(--lx-accent);border-width:2px}.lx-fnode__eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--lx-faint);font:600 9px/1 system-ui,sans-serif}.lx-fnode__label{color:var(--lx-ink);font:550 15px/1.2 system-ui,sans-serif}.lx-fnode__sub{color:var(--lx-muted);font:11px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace}.lx-flow-hint{text-align:center;color:var(--lx-faint);margin:16px 0 0;font-size:12.5px}.lx-diagram-wrap .lx-fnode{opacity:0}.lx-diagram-wrap.is-in .lx-fnode{opacity:1}.lx-diagram-wrap .lx-flow-edges{opacity:0;transition:opacity .6s .3s}.lx-diagram-wrap.is-in .lx-flow-edges{opacity:1}@keyframes lx-flow{to{stroke-dashoffset:-28px}}.lx-reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(16px)}.lx-reveal.is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.lx-reveal,.lx-window-body .lx-log-row,.lx-diagram-wrap .lx-fnode,.lx-diagram-wrap .lx-flow-edges{opacity:1!important;transition:none!important;transform:none!important}.lx-window-body--anim,.lx-fade-in,.lx-fedge{animation:none!important}.lx-spinner{animation-duration:1.4s}}@media (width<=940px){.lx-nav,.lx-hero,.lx-strip,.lx-section,.lx-cta-band,.lx-footer,.lx-contact{padding-left:calc(30px + env(safe-area-inset-left));padding-right:calc(30px + env(safe-area-inset-right))}.lx-hero,.lx-contact{grid-template-columns:1fr;gap:40px;padding-top:48px}.lx-hero-title{max-width:18ch}.lx-grid,.lx-steps{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.lx-nav{grid-template-columns:1fr auto}.lx-nav-links{display:none}.lx-case-inner{padding:30px 22px}.lx-grid,.lx-steps,.lx-footer{grid-template-columns:1fr}.lx-footer-cols{grid-template-columns:repeat(2,1fr)}}.cx-app{box-sizing:border-box;grid-template-columns:264px 1fr;height:100dvh;display:grid;overflow:hidden}.cx-sidebar{border-right:1px solid var(--lx-border);background:var(--lx-panel);flex-direction:column;min-height:0;padding:18px 14px;display:flex}.cx-brand{letter-spacing:-.01em;align-items:center;gap:9px;padding:4px 8px 16px;font-size:16px;font-weight:600;display:inline-flex}.cx-brand-mark{color:var(--lx-accent);font-size:12px}.cx-side-label{letter-spacing:.08em;text-transform:uppercase;color:var(--lx-faint);padding:0 8px 8px;font-size:11px}.cx-agent-list{flex-direction:column;flex:1;gap:4px;min-height:0;display:flex;overflow-y:auto}.cx-agent{text-align:left;cursor:pointer;font:inherit;color:var(--lx-ink);background:0 0;border:1px solid #0000;border-radius:10px;align-items:flex-start;gap:10px;padding:10px;transition:background .15s,border-color .15s;display:flex}.cx-agent:hover:not(:disabled){background:var(--lx-secondary)}.cx-agent.is-active{background:var(--lx-surface);border-color:var(--lx-border);box-shadow:0 1px 2px #26251e0a}.cx-agent:disabled{cursor:default;opacity:.7}.cx-agent-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.cx-agent-name{font-size:13.5px;font-weight:550}.cx-agent-blurb{color:var(--lx-muted);font-size:11.5px;line-height:1.35}.cx-avatar{color:#fff;border-radius:8px;flex-shrink:0;place-items:center;width:26px;height:26px;font-size:13px;font-weight:600;display:grid}.cx-avatar--sm{border-radius:7px;width:22px;height:22px;font-size:11px}.cx-back{color:var(--lx-muted);margin-top:12px;padding:8px;font-size:12.5px}.cx-back:hover{color:var(--lx-ink)}.cx-main{background:var(--lx-bg);flex-direction:column;min-width:0;min-height:0;display:flex}.cx-topbar{border-bottom:1px solid var(--lx-border);background:var(--lx-surface);align-items:center;gap:10px;padding:14px 22px;display:flex}.cx-topbar-title{color:var(--lx-ink);font-size:13px;font-weight:500}.cx-topbar-status{color:var(--lx-faint);align-items:center;gap:6px;margin-left:auto;font-size:12px;display:inline-flex}.cx-dot-live{background:#3f8f5b;border-radius:50%;width:7px;height:7px;animation:2s infinite cx-pulse;box-shadow:0 0 #3f8f5b80}@keyframes cx-pulse{0%{box-shadow:0 0 #3f8f5b73}70%{box-shadow:0 0 0 6px #3f8f5b00}to{box-shadow:0 0 #3f8f5b00}}.cx-scroll{flex:1;min-height:0;overflow-y:auto}.cx-thread{flex-direction:column;gap:22px;max-width:760px;margin:0 auto;padding:28px 22px 40px;display:flex}.cx-greeting{align-items:flex-start;gap:12px;display:flex}.cx-greeting-body p{color:var(--lx-ink);margin:2px 0 0;font-size:15px;line-height:1.55}.cx-suggests{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.cx-chip{border:1px solid var(--lx-border);background:var(--lx-surface);font:inherit;color:var(--lx-muted);cursor:pointer;border-radius:999px;padding:7px 13px;font-size:12.5px;transition:border-color .15s,color .15s}.cx-chip:hover{border-color:var(--lx-border-strong);color:var(--lx-ink)}.cx-row{align-items:flex-start;gap:12px;display:flex}.cx-row--user{justify-content:flex-end}.cx-bubble--user{background:var(--lx-accent);color:#fff;border-radius:14px 14px 4px;max-width:78%;padding:11px 15px;font-size:14.5px;line-height:1.5}.cx-agent-msg{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.cx-thinking{color:var(--lx-muted);align-items:center;gap:8px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:13px;display:inline-flex}.cx-toolloop{border:1px solid var(--lx-border);background:var(--lx-surface);border-radius:12px;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:12.5px;line-height:1.85;box-shadow:0 10px 30px -22px #26251e59}.cx-toolloop-head{letter-spacing:.08em;text-transform:uppercase;color:var(--lx-faint);margin-bottom:6px;font-size:10.5px}.cx-log-pending{align-items:center;margin-left:auto;display:inline-flex}.cx-answer{color:var(--lx-ink);font-size:14.5px;line-height:1.6}.cx-answer strong{font-weight:650}.cx-summary{color:var(--lx-muted);border-top:1px dashed var(--lx-border);padding-top:8px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:12px}.cx-composer{border-top:1px solid var(--lx-border);background:var(--lx-surface);gap:10px;padding:14px 22px 18px;display:flex}.cx-input{border:1px solid var(--lx-border);font:inherit;color:var(--lx-ink);background:var(--lx-bg);border-radius:12px;outline:none;flex:1;padding:12px 15px;font-size:14.5px;transition:border-color .15s}.cx-input:focus{border-color:var(--lx-accent)}.cx-input::placeholder{color:var(--lx-faint)}.cx-send{background:var(--lx-accent);color:#fff;font:inherit;cursor:pointer;border:none;border-radius:12px;padding:0 22px;font-size:14px;font-weight:550;transition:opacity .15s}.cx-send:disabled{opacity:.45;cursor:default}@media (width<=720px){.cx-app{grid-template-columns:1fr}.cx-sidebar{display:none}}.jj{--bg:#f7f7f4;--paper:#fff;--ink:#26251e;--muted:#6b6a60;--line:#26251e1a;--track:#efeee9;--danger:#d9534f;--accent:#4f6bf6;--plan:#5b8def;--build:#f0a533;--test:#9b6cf0;--deliver:#2fb47c}@media (prefers-color-scheme:dark){.jj:not([data-theme=light]){--bg:#16150f;--paper:#201f18;--ink:#f1f0ea;--muted:#a3a295;--line:#f1f0ea1a;--track:#2a2921;--accent:#7d93ff}}.jj[data-theme=dark]{--bg:#16150f;--paper:#201f18;--ink:#f1f0ea;--muted:#a3a295;--line:#f1f0ea1a;--track:#2a2921;--accent:#7d93ff}.jj,.jj *{box-sizing:border-box}.jj{background:var(--bg);color:var(--ink);margin:0;font-family:system-ui,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.45}.jj a{color:inherit}.jj main{max-width:1080px;margin:0 auto;padding:0 20px 64px}.jj .icon{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.jj .nav{justify-content:space-between;align-items:center;gap:12px;max-width:1080px;margin:0 auto;padding:20px;display:flex}.jj .brand{letter-spacing:-.02em;align-items:center;gap:8px;font-size:18px;font-weight:800;text-decoration:none;display:inline-flex}.jj .brand .dot{background:linear-gradient(90deg, var(--plan) 25%, var(--build) 25% 50%, var(--test) 50% 75%, var(--deliver) 75%);border-radius:3px;width:22px;height:10px}.jj .nav-links{align-items:center;gap:6px;display:flex}.jj .link{color:var(--muted);cursor:pointer;font-weight:700;font:inherit;background:0 0;border:none;border-radius:8px;padding:8px 10px;font-weight:700;text-decoration:none}.jj .link:hover{color:var(--ink)}.jj button,.jj .btn{font:inherit;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:9px 14px;font-weight:700;text-decoration:none;display:inline-flex}.jj button:hover,.jj .btn:hover{border-color:var(--muted)}.jj button:focus-visible,.jj .btn:focus-visible,.jj .link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.jj .btn.primary,.jj button.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.jj .btn.primary:hover,.jj button.primary:hover{opacity:.9}.jj .btn.big{border-radius:12px;padding:13px 20px;font-size:16px}.jj button:disabled{opacity:.5;cursor:default}.jj .hero{max-width:640px;padding:56px 0 40px}.jj .hero h1{letter-spacing:-.035em;margin:0 0 16px;font-size:clamp(34px,6vw,52px);font-weight:800;line-height:1.05}.jj .hero p{color:var(--muted);max-width:520px;margin:0 0 28px;font-size:18px}.jj .hero .cta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.jj .hero .fine{color:var(--muted);margin-top:12px;font-size:13px}.jj .legend{color:var(--muted);flex-wrap:wrap;gap:18px;margin:8px 0 32px;font-size:13px;font-weight:700;display:flex}.jj .legend span{align-items:center;gap:7px;display:inline-flex}.jj .legend i{background:var(--c);border-radius:4px;width:12px;height:12px}.jj .samples-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin:16px 0 12px;display:flex}.jj .samples-head h2{letter-spacing:-.02em;margin:0;font-size:20px;font-weight:800}.jj .tabs{flex-wrap:wrap;gap:6px;display:flex}.jj .tabs button{border-radius:999px;padding:7px 12px;font-size:14px}.jj .tabs button[aria-selected=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.jj .hint{color:var(--muted);margin:10px 2px 0;font-size:13px}.jj .steps{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:56px 0 0;display:grid}.jj .step{background:var(--paper);border-radius:16px;padding:20px}.jj .step b{margin-bottom:4px;font-size:16px;display:block}.jj .step p{color:var(--muted);margin:0}.jj .step .n{color:var(--muted);margin-bottom:10px;font-size:13px;font-weight:800}.jj .closer{text-align:center;padding:64px 0 8px}.jj .closer h2{letter-spacing:-.02em;margin:0 0 16px;font-size:28px}.jj footer{text-align:center;color:var(--muted);padding:24px 20px 40px;font-size:13px}.jj .board-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 18px;display:flex}.jj .board-head h1{flex:1;min-width:200px;margin:0}.jj .title-input{all:unset;letter-spacing:-.02em;width:100%;font-size:26px;font-weight:800}.jj .title-input:focus{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}.jj .board-actions{align-items:center;gap:8px;display:flex}.jj .status{color:var(--muted);text-align:right;min-width:60px;font-size:13px;font-weight:600}.jj .badge{color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.jj .wrap{background:var(--paper);border-radius:16px;padding:8px;overflow-x:auto}.jj table.grid{border-collapse:separate;border-spacing:6px;table-layout:fixed;width:100%;min-width:720px}.jj .grid th:first-child{width:24%}.jj .grid th:last-child:empty{width:34px}.jj .grid th{color:var(--muted);text-align:left;padding:8px 14px 4px;font-size:13px;font-weight:700}.jj .grid th .h{align-items:center;gap:7px;display:inline-flex}.jj .grid th .icon{width:15px;height:15px}.jj .grid td{padding:0}.jj .grid td.project{width:24%;padding:0 14px;font-weight:700}.jj .grid td.stage{width:18%}.jj .grid td.actions{text-align:center;width:34px}.jj .cell{background:var(--track);-webkit-user-select:none;user-select:none;border-radius:10px;align-items:center;height:56px;padding:0 14px;display:flex;position:relative;overflow:hidden}.jj .editable .cell{cursor:pointer}.jj .cell:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.jj .fill{width:var(--pct);background:var(--c);border-radius:10px;transition:width .3s;position:absolute;inset:0}.jj .cell.low .fill{opacity:.28}.jj .cell.mid .fill{opacity:.55}.jj .cell.full .fill{opacity:1}.jj .cell.full{color:var(--full-ink,#fff)}.jj .owner{z-index:2;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:700;position:relative;overflow:hidden}.jj .editable .owner{cursor:text;-webkit-user-select:text;user-select:text}.jj .check{z-index:1;opacity:0;width:18px;height:18px;transition:opacity .2s,transform .2s;position:relative;transform:scale(.6)}.jj .cell.full .check{opacity:1;transform:scale(1)}.jj .ticks{z-index:0;grid-template-columns:repeat(var(--n,4), 1fr);pointer-events:none;display:grid;position:absolute;inset:0}.jj .ticks i{border-right:1px solid var(--paper)}.jj .ticks i:last-child{border:none}.jj .cell.full .ticks{display:none}.jj input.plain{all:unset;width:100%;color:inherit;z-index:2;font-weight:700;position:relative}.jj input.plain:focus{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.jj .who{z-index:2;flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.jj .note{color:var(--danger);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:600;overflow:hidden}.jj .cell.blocked{box-shadow:inset 0 0 0 1.5px var(--danger);background:repeating-linear-gradient(135deg, var(--track) 0 8px, color-mix(in srgb, var(--danger) 10%, var(--track)) 8px 16px)}.jj .cell.blocked.full{color:var(--ink)}.jj .cell.blocked.full .fill{opacity:.55}.jj .cell.blocked .check{display:none}.jj .flag,.jj .flag-static{z-index:3;color:var(--danger);position:relative}.jj .flag{opacity:0;color:var(--muted);background:0 0;border:none;border-radius:6px;margin-right:-6px;padding:4px}.jj .flag .icon,.jj .flag-static{width:16px;height:16px}.jj .cell:hover .flag,.jj .flag:focus-visible{opacity:1}.jj .cell.blocked .flag{opacity:1;color:var(--danger)}.jj .flag:hover{color:var(--danger)}.jj .cell.full:not(.blocked) .flag{color:var(--full-ink,#fff)}@media (hover:none){.jj .flag{opacity:.5}}.jj .row-btns{gap:8px;display:flex}.jj .row-btns .primary{flex:1}.jj .del{color:var(--muted);opacity:0;background:0 0;border:none;padding:6px}.jj tr:hover .del,.jj .del:focus-visible{opacity:1}.jj .del:hover{color:var(--danger)}@media (hover:none){.jj .del{opacity:.6}}.jj .tools{gap:8px;margin-top:14px;display:flex}.jj .nudge{opacity:0;pointer-events:none;background:var(--paper);border:1px solid var(--line);border-radius:14px;align-items:center;gap:12px;width:min(560px,100% - 32px);padding:12px 12px 12px 16px;font-size:14px;transition:opacity .3s,transform .3s;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%,20px);box-shadow:0 8px 30px #141e3c14}.jj .nudge.show{opacity:1;pointer-events:auto;transform:translate(-50%)}.jj .nudge p{color:var(--muted);flex:1;margin:0}.jj .nudge p b{color:var(--ink)}.jj .nudge .x{color:var(--muted);background:0 0;border:none;padding:6px}.jj dialog{background:var(--paper);color:var(--ink);border:none;border-radius:18px;width:min(420px,100% - 32px);padding:0;box-shadow:0 20px 60px #0a0f1e40}.jj dialog::backdrop{background:#12161f73}.jj .modal{padding:24px}.jj .modal h2{letter-spacing:-.02em;margin:0 0 6px;font-size:22px}.jj .modal .sub{color:var(--muted);margin:0 0 18px}.jj .modal .close{color:var(--muted);background:0 0;border:none;padding:6px;position:absolute;top:12px;right:12px}.jj .perks{gap:8px;margin:0 0 18px;padding:0;font-size:14px;list-style:none;display:grid}.jj .perks li{align-items:center;gap:8px;display:flex}.jj .perks .icon{color:var(--deliver);width:16px;height:16px}.jj label{color:var(--muted);margin:0 0 6px;font-size:13px;font-weight:700;display:block}.jj .field{margin-bottom:12px}.jj input.text{font:inherit;border:1px solid var(--line);background:var(--bg);width:100%;color:var(--ink);border-radius:10px;padding:11px 12px}.jj input.text:focus{outline:2px solid var(--accent);outline-offset:1px}.jj .modal .primary{justify-content:center;width:100%;padding:12px}.jj .err{color:var(--danger);min-height:18px;margin:4px 0 8px;font-size:13px}.jj .swap{text-align:center;color:var(--muted);margin:14px 0 0;font-size:14px}.jj .swap button,.jj .quiet{color:var(--ink);text-underline-offset:3px;background:0 0;border:none;padding:0;font-weight:700;text-decoration:underline}.jj .quiet{color:var(--muted);font-size:13px;font-weight:600}.jj .copyrow{gap:8px;margin-bottom:14px;display:flex}.jj .copyrow input{flex:1;min-width:0;font-size:13px}.jj .divider{text-align:center;margin:16px 0 0}.jj .list{gap:10px;display:grid}.jj .item{background:var(--paper);border-radius:14px;align-items:center;gap:16px;padding:16px 18px;text-decoration:none;display:flex}.jj .item:hover{outline:1px solid var(--line)}.jj .item b{flex:1}.jj .item .meta{color:var(--muted);font-size:13px}.jj .mini{gap:3px;width:120px;display:flex}.jj .mini i{background:var(--track);border-radius:3px;flex:1;height:8px;position:relative;overflow:hidden}.jj .mini i:after{content:"";width:var(--pct);background:var(--c);position:absolute;inset:0}.jj .empty{background:var(--paper);text-align:center;color:var(--muted);border-radius:16px;padding:40px}.jj .center{text-align:center;color:var(--muted);padding:80px 0}@media (width<=600px){.jj .hero{padding-top:24px}.jj .item .meta,.jj .board-actions .status{display:none}}@media (prefers-reduced-motion:reduce){.jj .fill,.jj .check,.jj .nudge{transition:none}}.jj .sw{background:var(--c);border-radius:4px;flex:none;width:11px;height:11px;display:inline-block}.jj .grid th .h .icon{color:var(--c)}.jj dialog.wide{width:min(520px,100% - 32px)}.jj .modal>label{margin-top:16px}.jj .modal>label:first-of-type{margin-top:0}.jj .themes{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.jj .theme{flex-direction:column;align-items:flex-start;gap:8px;padding:10px 12px;font-size:13px}.jj .theme.on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.jj .chips{gap:3px;display:flex}.jj .chips i{border-radius:3px;width:16px;height:10px}.jj .seg{background:var(--track);border-radius:11px;gap:2px;padding:3px;display:flex}.jj .seg button{color:var(--muted);background:0 0;border:none;border-radius:8px;flex:1;justify-content:center;padding:8px 6px;font-size:13px}.jj .seg button[aria-checked=true]{background:var(--paper);color:var(--ink);box-shadow:0 1px 3px #141e3c1a}.jj .stages{gap:6px;margin-bottom:8px;display:grid}.jj .stage-row{align-items:center;gap:8px;display:flex}.jj .stage-row .text{padding:8px 10px}.jj .icon-btn{color:var(--muted);padding:7px 9px}.jj .icon-btn .icon{width:15px;height:15px}.jj .addcol{padding:7px 12px;font-size:13px}.jj .showcase{padding:72px 0;position:relative;overflow:hidden}.jj .showcase:before{content:"";z-index:-1;background:radial-gradient(60% 70% at var(--x1,12%) 20%, color-mix(in srgb, var(--a) 16%, transparent), transparent 70%), radial-gradient(50% 60% at var(--x2,88%) 85%, color-mix(in srgb, var(--b) 14%, transparent), transparent 70%), var(--bg);position:absolute;inset:0}.jj .showcase:after{content:"";z-index:-1;opacity:.5;background-image:radial-gradient(color-mix(in srgb, var(--a) 22%, transparent) 1px, transparent 1.4px);background-size:22px 22px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 30% 70%,#0000);mask-image:linear-gradient(#0000,#000 30% 70%,#0000)}.jj .showcase .inner{max-width:1080px;margin:0 auto;padding:0 20px}.jj .showcase-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.jj .showcase-head .kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--a);margin:0 0 6px;font-size:12px;font-weight:800}.jj .showcase-head h2{letter-spacing:-.025em;margin:0 0 6px;font-size:clamp(24px,3.4vw,32px)}.jj .showcase-head p{color:var(--muted);max-width:520px;margin:0}.jj .tags{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.jj .tag{color:var(--muted);background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}.jj .showcase .wrap{box-shadow:0 10px 40px color-mix(in srgb, var(--a) 12%, transparent)}.jj .grid td.project{line-height:1.25}.jj .grid .project .sub,.jj .grid .project input.sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12.5px;font-weight:500;display:block;overflow:hidden}.jj .grid .project input.sub::placeholder{color:var(--muted);opacity:0;transition:opacity .15s}.jj .grid tr:hover .project input.sub::placeholder,.jj .grid .project input.sub:focus::placeholder{opacity:.7}.jj .pct{display:none}.jj .view-bars .cell{background:color-mix(in srgb, var(--track) 55%, var(--paper));flex-wrap:wrap;align-items:flex-start;height:auto;min-height:56px;padding:9px 12px 20px}.jj .view-bars .cell .who{order:0}.jj .view-bars .pct{z-index:2;color:var(--muted);order:1;margin-left:auto;padding-left:8px;font-size:11px;font-weight:600;display:block;position:relative}.jj .view-bars .cell .flag{margin:0;position:absolute;top:5px;right:6px}.jj .view-bars .cell:hover .pct,.jj .view-bars .cell.blocked .pct,.jj .view-bars .cell:focus-within .pct{visibility:hidden}.jj .view-bars .cell:not(.full) .check,.jj .view-bars .cell.blocked .check{display:none}.jj .view-bars .ticks{background:var(--track);border-radius:3px;height:5px;display:block;inset:auto 12px 9px}.jj .view-bars .ticks i{display:none}.jj .view-bars .fill{height:5px;width:calc((100% - 24px) * var(--p,0));z-index:1;border-radius:3px;inset:auto auto 9px 12px}.jj .view-bars .cell.low .fill{opacity:.5}.jj .view-bars .cell.mid .fill{opacity:.75}.jj .view-bars .cell.full:not(.blocked){background:var(--c);align-items:center;padding-bottom:9px}.jj .view-bars .cell.full:not(.blocked) .fill,.jj .view-bars .cell.full:not(.blocked) .ticks,.jj .view-bars .cell.full .pct{display:none}.jj .view-bars .cell .check{order:1;margin-left:6px}.jj .view-bars .cell.blocked{background:color-mix(in srgb, var(--danger) 8%, var(--paper))}.jj .view-bars .cell.blocked .ticks{background:color-mix(in srgb, var(--danger) 12%, var(--track))}.jj .view-bars .note{white-space:normal}.jj .icon-only{padding:9px 10px}.jj{min-height:100vh}.jj .nav .brand .sep{color:var(--muted);font-weight:600}.jj .nav .btn,.jj .nav .link{white-space:nowrap}@media (width<=600px){.jj .nav{padding:16px}.jj .nav .brand .sep{display:none}}.jj .brand .dot{background:var(--accent);border-radius:3px;width:10px;transform:rotate(45deg)}.jj .hero h1 em{color:var(--accent);font-style:normal}.jj .step .n{color:var(--accent)}.jj .btn.primary:hover,.jj button.primary:hover{opacity:1;background:color-mix(in srgb, var(--ink) 88%, var(--accent))}.jj .link.accent{color:var(--accent)}.jj footer a{color:var(--muted)}.jj .grid td.project{position:relative}.jj .grip{color:var(--muted);cursor:grab;touch-action:none;opacity:0;background:0 0;border:none;border-radius:6px;padding:4px 2px;position:absolute;top:50%;left:2px;transform:translateY(-50%)}.jj .grip .icon{fill:currentColor;stroke:none;width:16px;height:16px}.jj tr:hover .grip,.jj .grip:focus-visible{opacity:1}.jj .grip:hover{color:var(--ink)}@media (hover:none){.jj .grip{opacity:.6}}.jj .reordering,.jj .reordering *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.jj .reordering tr:not(.dragging) .grip,.jj .reordering .del{opacity:0}.jj .grid tbody tr{will-change:auto}.jj tr.dragging{z-index:5;will-change:transform;position:relative}.jj tr.dragging td{background:var(--paper)}.jj tr.dragging td.project{box-shadow:-8px 0 0 var(--paper);border-radius:12px 0 0 12px}.jj tr.dragging .cell{box-shadow:0 10px 24px -8px #26251e47,0 2px 6px #26251e14}.jj tr.dragging .grip{opacity:1;color:var(--accent)}.jj tr.dragging.settling .cell{transition:box-shadow .22s;box-shadow:0 1px 2px #26251e0f}.jj .cell.na{outline:1.5px dashed color-mix(in srgb, var(--muted) 35%, transparent);outline-offset:-1.5px;cursor:default;background:0 0}.jj .cell.na .owner{color:var(--muted);font-weight:600}.jj .view-bars .cell.na{background:0 0;align-items:center;padding-bottom:9px}.jj .skip{z-index:3;color:var(--muted);background:0 0;border:none;border-radius:6px;padding:4px;display:none;position:relative}.jj .skip .icon{width:16px;height:16px}.jj .cell:hover .skip,.jj .cell:focus-within .skip,.jj .cell.na .skip{display:inline-flex}.jj .skip:hover{color:var(--ink)}.jj .cell.full:not(.blocked) .skip{color:var(--full-ink,#fff)}.jj .view-bars .cell .skip{position:absolute;top:5px;right:28px}.jj .view-bars .cell.na .skip{position:relative;top:auto;right:auto}@media (hover:none){.jj .skip{opacity:.5;display:inline-flex}}.jj .board-section+.board-section{margin-top:28px}.jj .section-head{align-items:center;gap:10px;margin:0 4px 10px;display:flex}.jj .section-dot{border-radius:3px;flex:none;width:10px;height:10px}.jj .section-title{all:unset;letter-spacing:-.01em;flex:1;min-width:0;margin:0;font-size:17px;font-weight:800}.jj input.section-title{cursor:text}.jj input.section-title::placeholder{color:var(--muted)}.jj input.section-title:focus{outline:2px solid var(--accent);outline-offset:4px;border-radius:4px}.jj .section-actions{opacity:.55;gap:4px;transition:opacity .15s;display:flex}.jj .board-section:hover .section-actions,.jj .section-actions:focus-within{opacity:1}.jj .section-actions .icon-btn{justify-content:center;min-width:32px;font-size:14px;line-height:1}.jj .section-add{border-top:1px dashed var(--line);margin-top:28px;padding-top:20px}.jj .section-add button{color:var(--muted)}.jj .section-add button:hover{color:var(--ink)}@media (hover:none){.jj .section-actions{opacity:1}}.jj .export-options{gap:8px;display:grid}.jj .export-opt{text-align:left;align-items:flex-start;gap:12px;width:100%;padding:14px}.jj .export-opt .icon{color:var(--accent);margin-top:2px}.jj .export-opt span{gap:2px;display:grid}.jj .export-opt small{color:var(--muted);font-size:13px;font-weight:500}.jj .import-err{color:var(--danger);margin:8px 2px 0;font-size:13px;font-weight:600}.jj .passcode{text-align:center;letter-spacing:.4em;font-variant-numeric:tabular-nums;width:9ch;font-size:22px}.jj .modal .passcode{display:block}.jj .unlock{flex-direction:column;align-items:center;gap:10px;display:flex}.jj .unlock p,.jj .unlock .err{margin:0}.jj .lock-big{width:36px;height:36px}.jj .grid td.actions{white-space:nowrap}.jj .with-projects .grid td.actions,.jj .with-projects .grid th:last-child:empty{width:108px}.jj .cmt-chip,.jj .open-proj{color:var(--muted);background:0 0;border:none;border-radius:8px;gap:4px;padding:5px 7px;font-size:12px;font-weight:800}.jj .cmt-chip:hover,.jj .open-proj:hover{color:var(--ink);background:var(--track)}.jj .cmt-chip.has{color:var(--accent)}.jj .cmt-chip[aria-expanded=true]{background:var(--track);color:var(--ink)}.jj .open-proj .clip-n{font-size:11px}.jj tr.thread-row>td{border:none;padding:0 10px 12px}.jj .thread{background:var(--track);border-radius:12px;padding:10px 12px}.jj .thread-load,.jj .thread-empty{color:var(--muted);margin:2px 0;font-size:13px}.jj .thread-more{color:var(--accent);text-underline-offset:3px;background:0 0;border:none;padding:2px 0 8px;font-size:13px;font-weight:700;text-decoration:underline}.jj .cmt{grid-template-columns:26px 1fr;gap:9px;padding:6px 0;display:grid}.jj .cmt+.cmt{border-top:1px solid var(--line)}.jj .cmt p{white-space:pre-wrap;overflow-wrap:anywhere;margin:1px 0 0}.jj .cmt .av{width:26px;height:26px;color:var(--paper);background:var(--muted);border-radius:8px;place-items:center;font-size:11px;font-weight:800;display:grid}.jj .cmt-meta{color:var(--muted);align-items:center;gap:5px;font-size:12px;font-weight:700;display:flex}.jj .cmt-meta b{color:var(--ink)}.jj .guest{font-weight:600}.jj .cmt-del,.jj .cmt-edit{color:var(--muted);opacity:0;background:0 0;border:none;padding:2px}.jj .cmt:hover .cmt-del,.jj .cmt:hover .cmt-edit,.jj .cmt-del:focus-visible,.jj .cmt-edit:focus-visible{opacity:1}.jj .cmt-del:hover,.jj .cmt-edit:hover{color:var(--ink)}.jj .edited{font-weight:600}.jj .modal .notes{min-height:90px}.jj .cmt-form{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.jj .cmt-attach{padding:6px 9px}.jj .cmt-picked{flex-wrap:wrap;flex-basis:100%;gap:6px;font-size:12.5px;display:flex}.jj .cmt-picked .chip{background:var(--track);overflow-wrap:anywhere;border-radius:8px;align-items:center;gap:6px;padding:3px 4px 3px 9px;font-weight:700;display:inline-flex}.jj .cmt-picked .chip button{color:var(--muted);background:0 0;border:none;padding:0 5px;font-size:15px;line-height:1}.jj .cmt-progress{color:var(--accent);overflow-wrap:anywhere;font-weight:700}.jj .cmt-files{gap:3px;margin:4px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.jj .cmt-files li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.jj .cmt-files a{overflow-wrap:anywhere;align-items:center;gap:5px;font-weight:700;display:inline-flex}.jj .cmt-files small{color:var(--muted)}.jj .cmt-del.show{opacity:1}.jj .cmt-form .cmt-input{flex:1;min-width:0}.jj .crumb{color:var(--muted);align-items:center;gap:4px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.jj .crumb:hover{color:var(--ink)}.jj .proj-title{display:block}.jj .proj-sub{color:var(--muted);font-size:14px;font-weight:600}.jj .proj-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:14px;display:grid}@media (width<=800px){.jj .proj-grid{grid-template-columns:minmax(0,1fr)}}.jj .panel{background:var(--paper);border-radius:16px;padding:18px 20px}.jj .panel h2{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:22px 0 10px;font-size:13px}.jj .panel h2:first-child{margin-top:0}.jj .panel-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.jj .panel-head h2{margin:0}.jj .stage-list{gap:8px;display:grid}.jj .stage-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.jj .stage-row .dot{border-radius:3px;flex:none;width:10px;height:10px}.jj .stage-row b{min-width:74px}.jj .owner-in{flex:1;min-width:100px}.jj .pct-in{width:86px}.jj .blocked-note{color:var(--danger);flex-basis:100%;font-size:12.5px;font-weight:700}.jj .dates{flex-wrap:wrap;gap:12px;display:flex}.jj .dates label{color:var(--muted);gap:4px;font-size:12.5px;font-weight:700;display:grid}.jj .notes{resize:vertical;width:100%;min-height:120px;font:inherit}.jj .drop{border:1px dashed var(--line);border-radius:12px;padding:12px}.jj .files{gap:8px;margin:0;padding:0;list-style:none;display:grid}.jj .files li{justify-content:space-between;align-items:center;gap:10px;display:flex}.jj .files a{align-items:center;gap:9px;min-width:0;text-decoration:none;display:flex}.jj .files b{overflow-wrap:anywhere;display:block}.jj .files small{color:var(--muted);font-size:12px}.jj .file-actions{flex:none;align-items:center;gap:4px;display:flex}.jj .file-actions .link{padding:4px 6px;font-size:12.5px}.jj .thread.full{background:0 0;padding:0}.jj .history{gap:7px;margin:0;padding:0;font-size:13.5px;list-style:none;display:grid}.jj .history li{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding-bottom:7px;display:flex}.jj .history small{color:var(--muted);white-space:nowrap}.jj .item-row{align-items:center;gap:6px;display:flex}.jj .item-row .item{flex:1;min-width:0}.jj .item-remove{opacity:0;color:var(--muted)}.jj .item-row:hover .item-remove,.jj .item-remove:focus-visible{opacity:1}.jj .archived-box{margin-top:18px}.jj .archived-box>summary{cursor:pointer;color:var(--muted);padding:6px 2px;font-size:13px;font-weight:700}.jj .archived-box>summary:hover{color:var(--ink)}.jj .archived-box .item b{color:var(--muted)}.jj .export-opt.danger{color:var(--danger)}.jj .export-opt.danger small{color:var(--muted)}.jj .menu-btn{border-radius:10px;padding:9px}.jj .menu-btn .icon{width:20px;height:20px}.jj .side-wrap{z-index:60;pointer-events:none;position:fixed;inset:0}.jj .side-wrap[aria-hidden=true]{visibility:hidden}.jj .side-scrim{opacity:0;background:#12161f73;transition:opacity .2s;position:absolute;inset:0}.jj .side{background:var(--paper);border-left:1px solid var(--line);flex-direction:column;gap:4px;width:min(320px,86vw);height:100%;padding:16px;transition:transform .22s;display:flex;position:absolute;top:0;right:0;overflow-y:auto;transform:translate(100%);box-shadow:-20px 0 60px #0a0f1e33}.jj .side-wrap.open{pointer-events:auto}.jj .side-wrap.open .side-scrim{opacity:1}.jj .side-wrap.open .side{transform:none}@media (prefers-reduced-motion:reduce){.jj .side,.jj .side-scrim{transition:none}}.jj .side-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.jj .side-top b{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:13px}.jj .side-top .icon-btn{color:var(--muted);background:0 0;border:none;padding:6px}.jj .side-account{text-align:left;background:var(--track);border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;width:100%;margin-bottom:12px;padding:12px;display:flex}.jj .side-account:hover{border-color:var(--muted)}.jj .side-account.guest{cursor:default}.jj .side-account.guest:hover{border-color:#0000}.jj .avatar{background:var(--accent);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:38px;height:38px;font-size:16px;font-weight:800;display:inline-flex}.jj .side-account .who-text{min-width:0;display:grid}.jj .side-account .who-text b{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.jj .side-account .sub{color:var(--muted);font-size:12.5px;font-weight:600}.jj .side-nav{gap:2px;display:grid}.jj .side-label{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:14px 0 4px 12px;font-size:11.5px;font-weight:800}.jj .side-item{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:12px;padding:11px 12px;font-weight:700;text-decoration:none;display:flex}.jj .side-item:hover{background:var(--track);border-color:#0000}.jj .side-item .icon{color:var(--muted)}.jj .side-item[aria-current=page]{background:var(--track)}.jj .side-item[aria-current=page] .icon{color:var(--accent)}.jj .side-item.danger,.jj .side-item.danger .icon{color:var(--danger)}.jj .modal .acct{background:var(--track);border-radius:12px;align-items:center;gap:12px;margin:4px 0 18px;padding:12px;display:flex}.jj .modal .acct b{font-size:16px;display:block}.jj .modal .acct .sub{color:var(--muted);margin:0;font-size:12.5px;font-weight:600;display:block}.jj .modal .section-h{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:13px}.jj .grid td.project:before{content:"";background:var(--line);border-radius:2px;width:3px;transition:background .15s;position:absolute;top:9px;bottom:9px;left:4px}.jj .editable .grid td.project:before{left:24px}.jj .editable .grid td.project{padding-left:34px}.jj .grid tr.st-done td.project:before{background:var(--deliver)}.jj .grid tr.st-blocked td.project:before{background:var(--danger)}.jj .grid tr.st-done{opacity:.55;transition:opacity .15s}.jj .grid tr.st-done:hover,.jj .grid tr.st-done:focus-within{opacity:1}.jj .grid tr.st-done td.project,.jj .grid tr.st-done td.project input.plain:not(.sub){text-decoration:line-through;text-decoration-thickness:1px;-webkit-text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);text-decoration-color:color-mix(in srgb, currentColor 55%, transparent)}.jj .grid tr.st-done td.project .sub,.jj .grid tr.st-done td.project input.sub,.jj .grid tr.st-done td.project .grip{text-decoration:none}.jj .grid td.project .nm{align-items:center;gap:6px;display:flex}.jj .grid .row-flag{width:15px;height:15px;color:var(--danger);flex:none;display:none}.jj .grid tr.st-blocked .row-flag{display:block}.jj dialog.sheet-dialog{width:min(1100px,100% - 24px);max-height:calc(100vh - 32px)}.jj .sheet-dialog .modal{flex-direction:column;max-height:calc(100vh - 32px);display:flex}.jj .sheet-dialog .sub{margin-bottom:12px}.jj .sheet-body{border:1px solid var(--line);border-radius:10px;flex:1;min-height:120px;overflow:auto}.jj table.sheet{border-collapse:collapse;width:max-content;min-width:100%;font-size:13px}.jj table.sheet th,.jj table.sheet td{border:1px solid var(--line);white-space:nowrap;text-overflow:ellipsis;text-align:left;max-width:320px;padding:4px 8px;overflow:hidden}.jj table.sheet thead th,.jj table.sheet tbody th{background:var(--track);color:var(--muted);text-align:center;z-index:1;font-weight:700;position:sticky}.jj table.sheet thead th{top:0}.jj table.sheet tbody th{min-width:38px;left:0}.jj table.sheet .corner{background:var(--track);z-index:2;position:sticky;top:0;left:0}.jj .sheet-tabs{flex:none;gap:4px;margin-top:10px;display:flex;overflow-x:auto}.jj .sheet-tabs[hidden]{display:none}.jj .sheet-tab{background:var(--track);color:var(--muted);white-space:nowrap;border:none;border-radius:8px;padding:6px 12px;font-weight:700}.jj .sheet-tab[aria-selected=true]{background:var(--ink);color:var(--paper)}.jj .sheet-body .thread-empty{padding:10px 12px}.jj .sheet-bar{flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.jj .sheet-bar[hidden]{display:none}.jj .sheet-range{color:var(--muted);font-size:13px;font-weight:700}.jj .sheet-pager{align-items:center;gap:4px;display:inline-flex}.jj .sheet-pager button{background:var(--track);color:var(--ink);border:none;border-radius:8px;min-width:34px;padding:5px 10px;font-size:16px;font-weight:800}.jj .sheet-pager button:disabled{opacity:.35;cursor:default}.jj .sheet-goto{color:var(--muted);align-items:center;gap:6px;margin-left:8px;font-size:12.5px;font-weight:700;display:inline-flex}.jj .sheet-goto input{width:92px;padding:5px 8px}.jj .sheet-body.busy{opacity:.55;transition:opacity .15s .15s}:root{--text:#5c5568;--text-h:#0d0b12;--text-muted:#7a7385;--bg:#f8f7fa;--panel:#f0eef4;--node-bg:#fff;--border:#dcd8e3;--accent:#7c3aed;--accent-bg:#7c3aed1f;--accent-border:#7c3aed73;--shadow-sm:#0000000f 0 1px 3px, #0000000a 0 4px 12px;--edge-file-move-stroke:#7c3aed;--danger:#dc2626;--sans:"Segoe UI", system-ui, -apple-system, sans-serif;--heading:var(--sans);font:15px/1.45 var(--sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--text:#b4aec2;--text-h:#f4f2f8;--text-muted:#8f889c;--bg:#121016;--panel:#1a1720;--node-bg:#1e1a26;--border:#3d3648;--accent:#a78bfa;--accent-bg:#a78bfa26;--accent-border:#a78bfa73;--shadow-sm:#00000059 0 1px 3px, #00000040 0 4px 12px;--edge-file-move-stroke:#a78bfa;--danger:#f87171}}html,body,#root{height:100%;margin:0}#root{max-width:none;text-align:initial;border:none}body{overflow:hidden}html.lx-scroll,body.lx-scroll{height:auto;min-height:100%}body.lx-scroll{overflow:auto}body.lx-scroll #root{height:auto}
