:root{color:#f3f6fc;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#080a0f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,.file-button{color:#20342d;cursor:pointer;background:#fafbf5;border:1px solid #a8b8ad;border-radius:6px;padding:.45rem .68rem}button:disabled{cursor:default;opacity:.42}input,select,textarea{color:#20342d;background:#fbfcf7;border:1px solid #a8b8ad;border-radius:6px;width:100%;padding:.5rem .58rem}textarea{resize:vertical}button:focus-visible,.file-button:focus-within,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #a8fff2}button svg,.file-button svg{flex:none}#root{min-height:100vh}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}.app-shell{background:#0b1310;grid-template-columns:258px minmax(0,1fr);height:100dvh;min-height:0;display:grid;position:relative;overflow:hidden}.app-shell.sidebar-closed{grid-template-columns:0 minmax(0,1fr)}.app-shell.sidebar-closed .sidebar,.sidebar-backdrop{display:none}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.sidebar{color:#e7eadf;z-index:20;background:#111a16;border-right:1px solid #33443c;flex-direction:column;grid-area:1/1;gap:.9rem;min-width:0;padding:1rem .9rem .85rem;display:flex;position:relative;overflow:hidden}.sidebar:after{content:"";pointer-events:none;background:repeating-linear-gradient(115deg,#0000 0 13px,#ffffff04 13px 14px);position:absolute;inset:0}.brand,.sidebar>*{z-index:1;position:relative}.brand{justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.15rem .15rem .3rem;display:flex}.brand-actions{flex:none;align-items:center;gap:.35rem;display:flex}.brand h1{color:#f5f0df;letter-spacing:0;margin:0;font-family:inherit;font-size:1.62rem;line-height:1}.brand p{color:#71877d;text-transform:uppercase;margin:.42rem 0 0;font-family:SFMono-Regular,Consolas,monospace;font-size:.63rem}.sidebar-collapse-button{color:#a8b8af;background:0 0;border:1px solid #3b4d44;justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex}.sidebar-collapse-button:hover{color:#f2f2e8;border-color:#82978c}.search-field{color:#74897f;border-bottom:1px solid #405149;align-items:center;gap:.45rem;padding:.08rem .15rem .6rem;display:flex}.search-field input{color:#edf0e6;background:0 0;border:0;outline:0;min-width:0;padding:.3rem 0}.search-results{border-left:2px solid #e9bd52;gap:.15rem;max-height:180px;padding:.25rem 0 .25rem .58rem;display:grid;overflow:auto}.search-results strong{color:#91a59a;text-transform:uppercase;font-size:.66rem}.search-results button{color:#e9bd52;text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;align-items:baseline;gap:.5rem;padding:.28rem 0;display:flex;overflow:hidden}.search-results button code{flex:none;font-family:SFMono-Regular,Consolas,monospace;font-size:.62rem;font-weight:800}.search-results button span{text-overflow:ellipsis;overflow:hidden}.outline{scrollbar-color:#465950 transparent;scrollbar-width:thin;border-top:1px solid #33443c;border-bottom:1px solid #33443c;flex:1;min-height:180px;padding:.45rem 0;overflow:auto}.outline ul{margin:0;padding:0;list-style:none}.outline-row{align-items:center;gap:.2rem;min-height:34px;padding-right:.25rem;transition:background .14s;display:flex;position:relative}.outline-row:before{background:var(--category-color);box-shadow:0 0 9px color-mix(in srgb, var(--category-color) 50%, transparent);content:"";border-radius:50%;flex:none;width:7px;height:7px}.outline-row.match .outline-title span{color:#f1cc70;font-weight:750}.twisty{color:#60766b;background:0 0;border:0;justify-content:center;align-items:center;width:18px;height:24px;padding:0;display:inline-flex}.outline-title{color:#d9dfd5;text-align:left;background:0 0;border:0;flex:1;justify-content:space-between;align-items:baseline;gap:.4rem;min-width:0;padding:.32rem .15rem;display:flex}.outline-title code{color:var(--category-color);flex:none;font-family:SFMono-Regular,Consolas,monospace;font-size:.63rem;font-weight:800}.outline-title span{text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:.75rem;overflow:hidden}.outline-title small{color:#586c62;text-transform:capitalize;font-size:.57rem}.sidebar-actions,.import-export{grid-template-columns:1fr 1fr;gap:.42rem;display:grid}.sidebar-actions button,.import-export button,.import-export .file-button{color:#a8b8af;background:0 0;border:1px solid #3b4d44;justify-content:center;align-items:center;gap:.32rem;min-height:34px;padding:.4rem;font-size:.69rem;display:inline-flex}.sidebar-actions button:hover,.import-export button:hover,.import-export .file-button:hover{color:#f2f2e8;border-color:#82978c}.file-button{cursor:pointer;position:relative}.file-button input{opacity:0;width:1px;height:1px;position:absolute}.error{color:#f08a79;margin:0;font-size:.72rem}.canvas-shell{background-color:#0b1310;grid-area:1/2;min-width:0;position:relative;overflow:hidden}.canvas-atmosphere{pointer-events:none;background-image:linear-gradient(115deg,#0000 0 48%,#7796860b 48% 49%,#0000 49% 100%),repeating-linear-gradient(0deg,#0000 0 47px,#9eb8aa08 47px 48px),repeating-linear-gradient(90deg,#0000 0 47px,#9eb8aa06 47px 48px);position:absolute;inset:0}.canvas-shell:after{content:"";pointer-events:none;z-index:4;border:1px solid #a2baad1a;position:absolute;inset:0}.living-canvas{background:0 0}.mode-connect .react-flow__pane,.mode-connect .organic-node{cursor:crosshair}.connect-ready{touch-action:none;-webkit-user-select:none;user-select:none}.toolbar{z-index:30;background:#eff1e7f2;border:1px solid #ffffffb8;border-radius:8px;align-items:center;gap:.3rem;max-width:calc(100% - 32px);min-height:48px;padding:.38rem;display:flex;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 14px 40px #00000052}.toolbar>*{flex:none}.canvas-shell.inspector-open .toolbar{left:calc(50% - 105px)}.toolbar button{color:#32483f;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.mode-switch,.icon-segmented{background:#dce2d8;border-radius:6px;align-items:center;display:inline-flex;overflow:hidden}.mode-switch button{gap:.32rem;min-height:34px;padding:.4rem .62rem}.mode-switch button.active,.icon-segmented button.active,.toolbar>.icon-button.active{color:#f2f3e9;background:#183d33}.toolbar .icon-button,.icon-segmented button{border-radius:6px;width:34px;height:34px;padding:0}.toolbar .toolbar-add-node{background:var(--signal,#183d33);color:#07110f;border:0;border-radius:6px;align-items:center;gap:.32rem;height:34px;padding:0 .62rem;font-size:.7rem;font-weight:760;display:inline-flex}.toolbar .toolbar-add-node:hover{background:#8de9dc}.toolbar .icon-button:hover,.icon-segmented button:hover,.mode-switch button:hover{background:#cfd8ce}.toolbar>.icon-button.active:hover,.icon-segmented button.active:hover,.mode-switch button.active:hover{background:#183d33}.toolbar-divider{background:#bdc9be;width:1px;height:24px;margin:0 .18rem}.toolbar-colors{align-items:center;gap:.3rem;padding:0 .2rem;display:flex}.toolbar-colors button{background:var(--swatch);border:2px solid #edf0e6;border-radius:50%;width:20px;height:20px;padding:0;box-shadow:0 0 0 1px #9aaa9f}.toolbar-colors button.active{transform:scale(1.08);box-shadow:0 0 0 2px #183d33}.react-flow__node-nodebook{overflow:visible;z-index:5!important}.react-flow__node-nodebook.hovered-node,.react-flow__node-nodebook.selected,.react-flow__node-nodebook.dragging{z-index:1000!important}.react-flow__node-nodebook:has(.connection-source){z-index:1000!important}.organic-node{cursor:grab;isolation:isolate;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:visible}.organic-node:active{cursor:grabbing}.node-presence{z-index:3;justify-content:center;align-items:center;width:88px;height:88px;display:flex;position:relative}.root-node .node-presence{width:112px;height:112px}.node-orbit{border:1px solid color-mix(in srgb, var(--category-color) 70%, transparent);opacity:.5;pointer-events:none;border-radius:47% 53% 49% 51%;position:absolute;inset:8px}.node-orbit-one{animation:12s linear infinite orbit-turn;animation-delay:var(--pulse-delay)}.node-orbit-two{animation:16s linear infinite orbit-turn-reverse;animation-delay:var(--pulse-delay);opacity:.25;border-style:dashed;inset:2px}@keyframes orbit-turn{to{transform:rotate(360deg)}}@keyframes orbit-turn-reverse{to{transform:rotate(-360deg)}}.node-orb{background:var(--category-color);border:2px solid color-mix(in srgb, var(--category-soft) 78%, #fff);box-shadow:0 0 0 1px color-mix(in srgb, var(--category-color) 72%, #0b1310), 0 0 24px color-mix(in srgb, var(--category-color) 38%, transparent), inset 0 0 18px #ffffff1f;color:var(--category-ink);justify-content:center;align-items:center;width:54px;height:54px;transition:box-shadow .18s,transform .18s;display:flex;position:relative}.organic-node.note .node-orb{border-radius:52% 46% 55% 45%/48% 55% 43% 52%;transform:rotate(-2deg)}.organic-node.task .node-orb{border-radius:35% 54% 38% 51%/47% 34% 57% 43%;transform:rotate(4deg)}.organic-node.question .node-orb{border-radius:58% 39% 53% 47%/42% 58% 39% 61%;transform:rotate(-5deg)}.organic-node.project .node-orb{border-radius:30% 49% 34% 45%/43% 31% 52% 38%;width:64px;height:64px;transform:rotate(2deg)}.root-node .node-orb{width:76px;height:76px}.node-shimmer{border-top:1px solid #ffffff6b;border-left:1px solid #ffffff6b;border-radius:50%;width:23px;height:21px;position:absolute;top:9px;left:10px;transform:rotate(-18deg)}.node-mark{font-family:inherit;font-size:1rem;font-weight:800;line-height:1}.root-node .node-mark{font-size:1.2rem}.string-count,.completion-mark{border:1px solid var(--category-color);color:#f4f2e8;z-index:5;background:#0c1713;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;font-family:SFMono-Regular,Consolas,monospace;font-size:.52rem;font-weight:800;display:flex;position:absolute}.string-count{top:5px;right:3px}.completion-mark{text-transform:uppercase;width:28px;font-size:.42rem;bottom:3px;right:1px}.react-flow__node-nodebook.dragging .node-presence{transform:scale(1.06)}.organic-node.match .node-orbit-two{opacity:1;border-width:2px;border-color:#f4d06f}.connect-ready:not(.connection-source):not(.connection-blocked) .node-orbit-two{border-color:var(--connection-color);opacity:.75}.connection-source .node-orbit{border-color:var(--connection-color);box-shadow:0 0 18px color-mix(in srgb, var(--connection-color) 60%, transparent);opacity:1;border-width:2px;inset:-2px}.connection-source .node-presence{animation:1.15s ease-in-out infinite source-beacon}@keyframes source-beacon{50%{transform:scale(1.12)}}.connection-blocked{filter:saturate(.25);opacity:.3}.section-heading{pointer-events:none;text-align:center;z-index:5;flex-direction:column;align-items:center;gap:.18rem;width:max-content;max-width:220px;display:flex;position:absolute;top:-2px;left:50%;transform:translate(-50%,-100%)}.section-heading strong{color:#f1f0e5;text-shadow:0 2px 10px #000;font-family:inherit;font-size:1.06rem;font-weight:600;line-height:1.08}.section-heading span{color:var(--category-color);font-family:SFMono-Regular,Consolas,monospace;font-size:.68rem;font-weight:800}.node-caption{opacity:0;pointer-events:none;text-align:center;z-index:4;flex-direction:column;align-items:center;gap:.12rem;width:176px;transition:opacity .15s,transform .15s;display:flex;position:absolute;top:calc(50% + 37px);left:50%;transform:translate(-50%,5px)}.node-caption strong{color:#dfe7df;text-overflow:ellipsis;text-shadow:0 2px 7px #000;white-space:nowrap;max-width:166px;font-size:.69rem;line-height:1.15;overflow:hidden}.node-caption span{color:var(--category-color);font-family:SFMono-Regular,Consolas,monospace;font-size:.58rem;font-weight:800;display:none}.node-caption small{color:#6f877d;text-overflow:ellipsis;white-space:nowrap;max-width:170px;font-size:.55rem;display:none;overflow:hidden}.detail-mid .node-caption,.detail-near .node-caption{opacity:1;transform:translate(-50%)}.detail-near .node-caption span,.detail-near .node-caption small{display:block}.node-detail-popover{-webkit-backdrop-filter:none;backdrop-filter:none;border:1px solid color-mix(in srgb, var(--category-color) 55%, #4c6358);color:#edf0e5;opacity:0;pointer-events:none;z-index:5000;background:#0d1914f5;border-radius:8px;width:232px;padding:.72rem .76rem;transition:opacity .13s,transform .13s;position:absolute;top:50%;left:calc(50% + 48px);transform:translate(8px,-50%)scale(.97);box-shadow:0 20px 48px #0000007a}.popover-signal{background:var(--category-color);box-shadow:0 0 12px var(--category-color);width:34px;height:2px;position:absolute;top:50%;left:-34px}.organic-node.hovered .node-detail-popover,.organic-node.selected .node-detail-popover{opacity:1;transform:translateY(-50%)scale(1)}.connect-ready .node-detail-popover{display:none}.popover-topline,.popover-meta{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.popover-topline{color:var(--category-color);text-transform:uppercase;margin-bottom:.4rem;font-size:.58rem;font-weight:800}.popover-topline code{color:#789087;text-transform:none;font-size:.57rem}.node-detail-popover>strong{font-family:inherit;font-size:.98rem;line-height:1.15;display:block}.node-detail-popover p{color:#9fb0a7;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:.45rem 0;font-size:.68rem;line-height:1.4;display:-webkit-box;overflow:hidden}.popover-meta{color:#748a80;border-top:1px solid #34483f;padding-top:.42rem;font-size:.57rem}.branch-edge-glow,.branch-edge-line,.string-edge-glow,.string-edge-line{fill:none;pointer-events:none;stroke:var(--edge-color);stroke-linecap:round}.string-edge-glow{filter:blur(1px);opacity:.22;stroke-width:8px}.string-edge-line{opacity:.9;stroke-dasharray:3 8;stroke-width:2.2px;animation:1.3s linear infinite string-flow}.string-edge-art.active .string-edge-line{opacity:1;stroke-width:3px}@keyframes string-flow{to{stroke-dashoffset:-22px}}.connection-draft{pointer-events:none;z-index:25;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.connection-draft-glow,.connection-draft-line{fill:none;stroke-linecap:round}.connection-draft-glow{filter:blur(2px);opacity:.34;stroke-width:12px}.connection-draft-line{stroke-dasharray:4 8;stroke-width:3px;animation:.8s linear infinite string-flow}.connection-draft-end{fill:#0b1310;stroke-width:3px}.react-flow__handle{opacity:0;pointer-events:none;width:1px;height:1px}.react-flow__minimap{background:#0c1612e6;border:1px solid #3d5147;border-radius:8px;box-shadow:0 12px 26px #00000047}.react-flow__controls{border:1px solid #3d5147;border-radius:8px;overflow:hidden;box-shadow:0 12px 26px #00000047}.react-flow__controls-button{color:#dce4dc;fill:currentColor;background:#16231e;border-bottom-color:#34463e}.react-flow__controls-button:hover{background:#20342c}.react-flow__controls-button svg{fill:currentColor}.editor{color:#20352d;scrollbar-color:#a8b7ad transparent;scrollbar-width:thin;z-index:2000;background:#edf0e7;border:1px solid #fff;border-radius:8px;flex-direction:column;gap:.92rem;width:366px;padding:1rem;transition:opacity .18s,transform .22s;display:flex;position:fixed;top:16px;bottom:16px;right:16px;overflow:auto;transform:translate(0);box-shadow:0 26px 70px #00000070}.editor.empty{opacity:0;pointer-events:none;transform:translate(calc(100% + 28px))}.inspector-header{border-bottom:1px solid #bdc9bf;justify-content:space-between;align-items:flex-start;gap:.75rem;padding-bottom:.8rem;display:flex}.inspector-kicker{color:#557066;text-transform:uppercase;align-items:center;gap:.45rem;margin-bottom:.28rem;font-family:SFMono-Regular,Consolas,monospace;font-size:.59rem;font-weight:800;display:flex}.inspector-kicker code{color:var(--signal);font-family:inherit;font-size:.7rem;font-weight:850}.inspector-kicker span:before{color:var(--quiet);content:"/";margin-right:.45rem}.editor h2,.string-panel h3{color:#162e26;letter-spacing:0;margin:0;font-family:inherit}.editor h2{font-size:1.28rem;line-height:1.08}.editor p{color:#71837a;margin:.28rem 0 0;font-size:.68rem}.inspector-header-actions{gap:.3rem;display:flex}.editor .icon-button{background:0 0;border:1px solid #b5c1b8;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.field{gap:.32rem;display:grid}.field>span{color:#60756b;font-size:.65rem;font-weight:700}.editor input,.editor select,.editor textarea{color:#1e352d;background:#f8faf4;border:1px solid #aebdb3}.editor textarea{min-height:150px}.check{align-items:center;gap:.42rem;display:inline-flex}.check input{accent-color:#2a9d8f;width:auto}.editor-check{color:#31554a;border-left:3px solid #2a9d8f;padding:.4rem .55rem;font-size:.72rem}.classification-help{background:#183d33;border-radius:6px;padding:.5rem .62rem;color:#cbdad1!important;margin:-.35rem 0 0!important}.classification-help strong{color:#f0c963;font-family:SFMono-Regular,Consolas,monospace}.string-panel{border-top:1px solid #bdc9bf;border-bottom:1px solid #bdc9bf;gap:.68rem;padding:.78rem 0;display:grid}.string-panel>header{justify-content:space-between;align-items:center;display:flex}.string-panel h3{align-items:center;gap:.32rem;font-size:.98rem;display:flex}.string-panel>header>span{color:#fff;background:#183d33;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;font-size:.58rem;display:inline-flex}.string-compose{justify-content:space-between;align-items:center;gap:.62rem;display:flex}.string-swatches{gap:.34rem;display:flex}.string-swatches button{border:2px solid #edf0e7;border-radius:50%;width:21px;height:21px;padding:0;box-shadow:0 0 0 1px #91a298}.string-swatches button.active{transform:scale(1.08);box-shadow:0 0 0 2px #173b31}.connect-button,.editor-actions button{align-items:center;gap:.32rem;display:inline-flex}.connect-button{color:#fff;background:#183d33;border-color:#183d33}.string-list{gap:.28rem;display:grid}.string-row{grid-template-columns:24px minmax(0,1fr) 30px;align-items:center;gap:.4rem;min-height:30px;display:grid}.string-line{border-radius:999px;width:24px;height:3px}.string-node,.string-remove{background:0 0;border:0}.string-node{text-align:left;text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:.3rem .2rem;overflow:hidden}.string-remove{color:#98534b;justify-content:center;align-items:center;padding:.3rem;display:inline-flex}.timestamps{color:#71837a;gap:.42rem;margin:0;font-size:.63rem;display:grid}.timestamps div{justify-content:space-between;display:flex}.timestamps dd{text-align:right;margin:0}.editor-actions{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.editor-actions button{justify-content:center}.app-shell{--surface-0:#080a0f;--surface-1:#0d1017;--surface-2:#141923;--surface-3:#1b2130;--line:#2a3140;--line-strong:#3a4355;--text:#f3f6fc;--muted:#8b95a8;--quiet:#606a7c;--signal:#a8fff2;background:var(--surface-0)}.sidebar{background:var(--surface-1);border-right-color:var(--line);color:var(--text)}.sidebar:after{display:none}.brand h1{color:var(--text);font-size:1.45rem;font-weight:760;line-height:1.05}.brand p{color:var(--quiet);font-size:.59rem}.search-field{border-bottom-color:var(--line);color:var(--quiet)}.search-field input{color:var(--text)}.search-field input::placeholder{color:var(--quiet)}.search-results{border-left-color:var(--signal)}.search-results strong{color:var(--muted)}.search-results button{color:var(--signal)}.outline{border-color:var(--line);scrollbar-color:var(--line-strong) transparent}.outline-row:before{box-shadow:0 0 10px color-mix(in srgb, var(--category-color) 45%, transparent);border-radius:2px;width:6px;height:6px;transform:rotate(45deg)}.outline-row:hover{background:#ffffff09}.outline-row.active{background:color-mix(in srgb, var(--category-color) 14%, var(--surface-1))}.twisty,.outline-title small{color:var(--quiet)}.outline-title{color:#dce2ed}.outline-row.match .outline-title span{color:var(--signal)}.sidebar-actions button,.import-export button,.import-export .file-button{background:var(--surface-2);border-color:var(--line);color:var(--muted)}.sidebar-actions button:hover,.import-export button:hover,.import-export .file-button:hover{background:var(--surface-3);border-color:var(--line-strong);color:var(--text)}.canvas-shell{background:var(--surface-0)}.canvas-atmosphere{background-image:none}.canvas-shell:after{border-color:#ffffff0b}.toolbar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-color:var(--line);background:#0f121bed;box-shadow:0 16px 48px #0000006b}.toolbar button{color:#aeb7c8}.mode-switch,.icon-segmented{background:#1a1f2b}.mode-switch button.active,.icon-segmented button.active,.toolbar>.icon-button.active{background:var(--signal);color:#091311}.toolbar .icon-button:hover,.icon-segmented button:hover,.mode-switch button:hover{color:var(--text);background:#242b39}.toolbar>.icon-button.active:hover,.icon-segmented button.active:hover,.mode-switch button.active:hover{background:var(--signal);color:#091311}.toolbar-divider{background:var(--line)}.toolbar-colors button{border-color:var(--surface-1);box-shadow:0 0 0 1px var(--line-strong)}.toolbar-colors button.active{box-shadow:0 0 0 2px var(--signal)}.sidebar-focus{background:var(--surface-2);border-left:2px solid var(--signal);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.48rem .52rem;display:grid}.sidebar-focus>svg,.canvas-focus-indicator>svg{color:var(--signal)}.sidebar-focus>span{gap:.08rem;min-width:0;display:grid}.sidebar-focus small{color:var(--quiet);text-transform:uppercase;font-size:.52rem;font-weight:720}.sidebar-focus strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.69rem;overflow:hidden}.sidebar-focus button,.canvas-focus-indicator button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;width:26px;height:26px;padding:0;display:inline-flex}.sidebar-focus button:hover,.canvas-focus-indicator button:hover{background:var(--surface-3);color:var(--text)}.canvas-focus-indicator{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);border-left:2px solid var(--signal);color:var(--text);z-index:3000;background:#0f121beb;border-radius:6px;align-items:center;gap:.48rem;max-width:250px;padding:.34rem .36rem .34rem .52rem;display:flex;position:absolute;top:76px;left:16px;box-shadow:0 12px 34px #00000052}.canvas-focus-indicator span{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:700;overflow:hidden}.node-context-menu{border:1px solid var(--line-strong);z-index:5000;background:#0f121bfa;border-radius:7px;min-width:204px;padding:4px;position:absolute;box-shadow:0 18px 52px #0000008f}.node-context-menu button{color:var(--text);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:.55rem;width:100%;min-height:36px;padding:.45rem .62rem;font-size:.72rem;font-weight:620;display:flex}.node-context-menu button svg{color:var(--signal);flex:none}.node-context-menu button:hover:not(:disabled){background:var(--surface-3)}.node-context-menu button:disabled{cursor:not-allowed;opacity:.38}.organic-node{font-family:inherit}.node-orbit{border-color:color-mix(in srgb, var(--category-color) 62%, transparent);opacity:.38;border-radius:50%}.node-orbit-one{animation:none}.node-orbit-two{opacity:.2;border-style:dashed;animation:none}.organic-node.hovered .node-orbit-one,.organic-node.selected .node-orbit-one,.react-flow__node-nodebook.dragging .node-orbit-one,.organic-node.connection-source .node-orbit-one{animation:18s linear infinite orbit-turn;animation-delay:var(--pulse-delay)}.organic-node.hovered .node-orbit-two,.organic-node.selected .node-orbit-two,.react-flow__node-nodebook.dragging .node-orbit-two,.organic-node.connection-source .node-orbit-two{animation:24s linear infinite orbit-turn-reverse;animation-delay:var(--pulse-delay)}.node-orb,.organic-node.note .node-orb,.organic-node.task .node-orb,.organic-node.question .node-orb,.organic-node.project .node-orb,.organic-node.category .node-orb{background:var(--category-color);border:1px solid color-mix(in srgb, var(--category-soft) 70%, #fff);box-shadow:0 0 0 5px color-mix(in srgb, var(--surface-0) 84%, transparent), 0 0 22px color-mix(in srgb, var(--category-color) 32%, transparent);color:var(--category-ink);transform:none}.organic-node.note .node-orb{border-radius:50%;width:50px;height:50px}.organic-node.task .node-orb{border-radius:8px;width:52px;height:52px}.organic-node.question .node-orb{border-style:dashed;border-radius:50%;width:56px;height:56px}.organic-node.project .node-orb{border-radius:8px;width:62px;height:62px}.organic-node.category .node-orb{height:var(--category-node-size);width:var(--category-node-size);border-width:2px;border-radius:50%}.root-node .node-orb{border-width:2px;border-radius:50%;width:78px;height:78px}.node-shimmer{display:none}.node-mark{justify-content:center;align-items:center;font-family:Inter,ui-sans-serif,system-ui,sans-serif;line-height:1;display:inline-flex}.node-mark svg{width:22px;height:22px;display:block}.organic-node.project .node-mark svg{width:25px;height:25px}.organic-node.category .node-mark svg{height:var(--category-icon-size);width:var(--category-icon-size)}.root-node .node-mark svg{width:29px;height:29px}.string-count,.completion-mark{background:var(--surface-1);color:var(--text)}.organic-node.hovered .node-orb,.organic-node.selected .node-orb,.react-flow__node-nodebook.dragging .node-orb{box-shadow:0 0 0 5px var(--surface-0), 0 0 0 7px var(--category-color), 0 0 32px color-mix(in srgb, var(--category-color) 46%, transparent);transform:scale(1.08)}.section-heading{gap:.28rem;top:-7px}.section-heading strong{color:var(--text);text-shadow:0 2px 12px #000;font-size:.88rem;font-weight:720;line-height:1.15}.section-heading span{color:var(--category-color);font-size:.68rem;font-weight:800}.node-caption strong{color:#e4e9f2;font-size:.68rem;font-weight:650}.node-caption span{color:var(--category-color)}.node-caption small{color:var(--quiet)}.node-detail-popover{-webkit-backdrop-filter:none;backdrop-filter:none;border-color:color-mix(in srgb, var(--category-color) 45%, var(--line));color:var(--text);background:#0f121bf7;transform:translate(7px,-50%);box-shadow:0 22px 58px #00000094}.organic-node.hovered .node-detail-popover,.organic-node.selected .node-detail-popover{transform:translateY(-50%)}.node-detail-popover>strong{font-size:.95rem;font-weight:720}.node-detail-popover p{color:#9ea7b8}.popover-meta{border-top-color:var(--line);color:var(--quiet)}.branch-edge-glow{opacity:.08;stroke-width:7px}.branch-edge-line{opacity:.58;stroke-dasharray:none;stroke-width:1.7px}.string-edge-glow{opacity:.2}.string-edge-line{stroke-width:2.1px}.connection-draft-end{fill:var(--surface-0)}.react-flow__minimap{border-color:var(--line);background:#0d1017eb}.react-flow__controls{border-color:var(--line)}.react-flow__controls-button,.react-flow__controls-button:hover{background:var(--surface-2);border-bottom-color:var(--line);color:#cbd2df}.editor{border-color:var(--line);color:var(--text);scrollbar-color:var(--line-strong) transparent;background:#0f121bf7;box-shadow:0 26px 76px #00000094}.inspector-header,.string-panel{border-color:var(--line)}.inspector-kicker,.field>span,.editor p,.timestamps{color:var(--muted)}.editor h2,.string-panel h3{color:var(--text);font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-weight:720}.editor .icon-button{border-color:var(--line);color:var(--muted)}.editor .icon-button:hover{background:var(--surface-3);color:var(--text)}.editor .danger{color:#ff8798;border-color:#58313a}.editor input,.editor select,.editor textarea{border-color:var(--line);color:var(--text);background:#0b0e15}.editor input:focus,.editor select:focus,.editor textarea:focus{border-color:#6c7a90}.editor-check{border-left-color:var(--signal);color:#c8d2df}.classification-help{background:var(--surface-2);border-left:2px solid var(--signal);color:#aeb8c8!important}.classification-help strong{color:var(--signal)}.category-color-field>span{align-items:center;gap:.3rem;display:inline-flex}.category-color-control{align-items:center;gap:.58rem;display:flex}.category-color-swatches{grid-template-columns:repeat(8,22px);gap:.36rem;display:grid}.category-color-swatches button{border:2px solid var(--surface-1);box-shadow:0 0 0 1px var(--line-strong);cursor:pointer;border-radius:50%;width:22px;height:22px;padding:0;transition:box-shadow .14s,transform .14s}.category-color-swatches button:hover{transform:scale(1.1)}.category-color-swatches button.active{box-shadow:0 0 0 2px var(--text);transform:scale(1.08)}.category-color-auto{background:var(--surface-2);border:1px solid var(--line);color:var(--muted);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex}.category-color-auto:hover,.category-color-auto.active{background:var(--surface-3);color:var(--text)}.category-color-auto.active{border-color:var(--signal)}.string-panel>header>span{background:var(--surface-3)}.string-swatches button{border-color:var(--surface-1);box-shadow:0 0 0 1px var(--line-strong)}.string-swatches button.active{box-shadow:0 0 0 2px var(--signal)}.connect-button{background:var(--signal);border-color:var(--signal);color:#091311}.string-node{color:#dce2ed}.editor-actions button{background:var(--surface-2);border-color:var(--line);color:#dce2ed}.editor-actions button:hover{background:var(--surface-3)}.account-strip{background:var(--surface-2);border-left:2px solid var(--signal);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.48rem .45rem .48rem .55rem;display:grid}.account-strip>svg{color:var(--signal)}.account-strip.error{border-left-color:#ff8798}.account-strip.error>svg{color:#ff8798}.account-strip>span{gap:.08rem;min-width:0;display:grid}.account-strip strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;font-weight:660;overflow:hidden}.account-strip small{color:var(--quiet);text-transform:uppercase;font-size:.54rem}.account-strip.saving small{color:var(--signal)}.account-strip button{color:var(--muted);background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;width:27px;height:27px;padding:0;display:inline-flex}.account-strip button:hover{background:var(--surface-3);color:var(--text)}.auth-shell,.app-loading{--surface-0:#080a0f;--surface-1:#0d1017;--surface-2:#141923;--surface-3:#1b2130;--line:#2a3140;--line-strong:#3a4355;--text:#f3f6fc;--muted:#8b95a8;--quiet:#606a7c;--signal:#a8fff2}.auth-shell{background-color:var(--surface-0);color:var(--text);background-image:radial-gradient(circle,#2a303d 1px,#0000 1.5px);background-position:0 0;background-size:36px 36px;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex;position:relative;overflow:hidden}.auth-panel{border:1px solid var(--line);z-index:2;background:#0d1017f0;border-radius:8px;gap:1.8rem;width:100%;max-width:430px;padding:clamp(28px,4vw,44px);display:grid;position:relative;box-shadow:0 28px 90px #00000085}.auth-brand{align-items:center;gap:.85rem;display:flex}.auth-mark{background:var(--signal);color:#07110f;border-radius:7px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.auth-brand h1{margin:0;font-size:1.6rem;line-height:1}.auth-brand p{color:var(--muted);margin:.42rem 0 0;font-size:.72rem}.auth-panel form{gap:1rem;display:grid}.remember-device{color:var(--muted);align-items:center;gap:.48rem;font-size:.68rem;display:flex}.remember-device input{accent-color:var(--signal);width:14px;height:14px;margin:0}.auth-field{gap:.38rem;display:grid}.auth-field>span{color:var(--muted);text-transform:uppercase;font-size:.63rem;font-weight:680}.auth-field>div{border:1px solid var(--line);color:var(--quiet);background:#090c12;border-radius:6px;align-items:center;gap:.52rem;padding:0 .65rem;display:flex}.auth-field>div:focus-within{border-color:var(--signal);color:var(--signal)}.auth-field input{color:var(--text);background:0 0;border:0;outline:0;min-width:0;padding:.72rem 0}.auth-submit{background:var(--signal);border:1px solid var(--signal);color:#07110f;border-radius:6px;justify-content:center;align-items:center;gap:.42rem;min-height:42px;margin-top:.3rem;font-size:.76rem;font-weight:760;display:flex}.auth-mode-button{color:var(--muted);background:0 0;border:0;justify-self:start;padding:0;font-size:.68rem}.auth-mode-button:hover{color:var(--signal)}.auth-message{border-left:2px solid;margin:0;padding:.35rem .55rem;font-size:.68rem}.auth-message.error{color:#ff8798}.auth-message.success{color:var(--signal)}.vault-panel{gap:1.35rem}.vault-notice{color:var(--signal);background:#a8fff20e;border:1px solid #a8fff22e;border-radius:6px;align-items:flex-start;gap:.7rem;padding:.8rem;display:flex}.vault-notice svg{flex:none;margin-top:1px}.vault-notice p{color:#b8c3d2;margin:0;font-size:.7rem;line-height:1.55}.password-visibility{color:var(--quiet);background:0 0;border:0;justify-content:center;align-items:center;padding:.3rem;display:inline-flex}.password-visibility:hover{color:var(--signal)}.vault-signout{align-items:center;gap:.38rem;display:inline-flex}.spin{animation:.85s linear infinite auth-spin}.app-loading{background:var(--surface-0);color:var(--text);flex-direction:column;justify-content:center;align-items:center;gap:.42rem;min-height:100vh;display:flex}.app-loading strong{font-size:1rem}.app-loading small{color:var(--muted);text-transform:uppercase;font-size:.62rem}.loading-orbit{border:1px solid var(--line-strong);border-radius:50%;width:54px;height:54px;margin-bottom:.5rem;animation:2.4s linear infinite auth-spin;position:relative}.loading-orbit i{background:var(--signal);border-radius:50%;width:9px;height:9px;position:absolute;top:4px;left:4px}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (width<=1080px){.app-shell{grid-template-columns:232px minmax(0,1fr)}.sidebar{padding-inline:.72rem}.editor{width:338px}.toolbar{left:12px;transform:none}.canvas-shell.inspector-open .toolbar{gap:.18rem;padding:.3rem;left:12px}.canvas-shell.inspector-open .mode-switch span{display:none}}@media (width<=900px){.editor{width:min(420px,100vw - 24px);max-height:52vh;inset:auto 12px 12px auto}.editor.empty{transform:translateY(calc(100% + 24px))}.canvas-shell.inspector-open .mode-switch span{display:inline}}@media (width<=760px){.auth-shell{padding:20px}.app-shell{grid-template-columns:minmax(0,1fr);min-height:0}.app-shell.sidebar-closed{grid-template-columns:minmax(0,1fr)}.canvas-shell{grid-column:1}.app-shell.sidebar-open .sidebar,.app-shell.sidebar-closed .sidebar{display:flex}.sidebar{max-width:100%;height:100dvh;padding-bottom:max(.85rem, env(safe-area-inset-bottom));padding-left:max(.9rem, env(safe-area-inset-left));padding-top:max(1rem, env(safe-area-inset-top));visibility:hidden;z-index:6100;width:min(86vw,320px);transition:transform .22s,visibility .22s;position:fixed;top:0;left:0;transform:translate(-102%);box-shadow:18px 0 56px #00000094}.app-shell.sidebar-open .sidebar{visibility:visible;transform:translate(0)}.app-shell.sidebar-closed .sidebar{pointer-events:none}.sidebar-backdrop{opacity:0;pointer-events:none;visibility:hidden;z-index:6000;background:#030508a3;border:0;border-radius:0;padding:0;transition:opacity .18s;display:block;position:fixed;inset:0}.app-shell.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto;visibility:visible}.toolbar,.canvas-shell.inspector-open .toolbar{scrollbar-width:none;max-width:calc(100% - 24px);left:12px;right:auto;top:max(12px, env(safe-area-inset-top));width:max-content;overflow-x:auto;transform:none}.toolbar::-webkit-scrollbar{display:none}.outline-title code,.outline-title small,.mode-switch span{display:none}.brand{gap:.3rem}.brand h1{font-size:1.43rem}}@media (width<=600px){.toolbar-branch-action{display:none!important}.editor{max-height:min(72vh,100dvh - 76px);padding-bottom:max(1rem, env(safe-area-inset-bottom));border-bottom:0;border-left:0;border-right:0;border-radius:10px 10px 0 0;width:100%;bottom:0;left:0;right:0}.editor.empty{transform:translateY(100%)}.category-color-control{flex-direction:column;align-items:flex-start}.category-color-swatches{grid-template-columns:repeat(8,minmax(20px,1fr));width:100%}.canvas-focus-indicator{max-width:calc(100% - 24px);top:72px;left:12px}}@media (width<=420px){.auth-shell{padding:14px}.auth-panel{padding:24px 20px}.toolbar-reset-layout-action{display:none!important}.react-flow__minimap{display:none}.sidebar{width:min(90vw,320px)}.string-compose{flex-direction:column;align-items:stretch}.string-swatches{justify-content:space-between}.connect-button{justify-content:center}}@media (height<=640px) and (width<=900px){.editor{max-height:calc(100dvh - 68px)}}@media (prefers-reduced-motion:reduce){.sidebar,.sidebar-backdrop{transition:none}}
