@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_31011fd-module__jtyeTG__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_31011fd-module__jtyeTG__variable{--font-sans:"Inter","Inter Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.a82ecf4e.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.afa48be3.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.764b43eb.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.cb53f04b.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.64b9304e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.6b5ea6af.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1dcddae6.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.8da66e7f.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.e6cd1753.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.19510058.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6ff74e33ebd7bca3-s.140490a3.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a69062cfe6f77f8-s.b36ae37c.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9a4838fcda0d1bca-s.bf5f8a12.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2e95a7d252b9825a-s.10086973.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(../media/23b7a97ae3b5c134-s.p.2902b61f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_60c0e144-module__ubA7EW__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_60c0e144-module__ubA7EW__variable{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}
.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))}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;font-family:var(--font);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;overflow:hidden}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button:focus-visible,[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}:focus:not(:focus-visible){outline:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:0}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}
:root{--bg:#fbf1c7;--bg-1:#f2e5bc;--surface:#f9f5d7;--fg:#3c3836;--fg-2:#504945;--fg-3:#928374;--border:#d5c4a1;--border-strong:#a89984;--postit-yellow:#fabd2f;--postit-pink:#d3869b;--postit-green:#b8bb26;--postit-blue:#83a598;--postit-orange:#fe8019;--postit-purple:#d3869b;--postit-yellow-fg:#282828;--postit-pink-fg:#282828;--postit-green-fg:#282828;--postit-blue-fg:#282828;--zone-stroke-yellow:#d79921;--zone-stroke-pink:#b16286;--zone-stroke-green:#98971a;--zone-stroke-blue:#458588;--accent:#cc241d;--dot-color:#d5c4a1;--handle-color:#7c6f64;--connection:#cc241d;--connection-hover:#9d0006;--font:"Inter",-apple-system,system-ui,sans-serif;--mono:"IBM Plex Mono","SF Mono","Consolas",monospace;--text-xs:9px;--text-sm:10px;--text-base:11px;--text-md:12px;--text-lg:13px;--text-xl:14px;--text-2xl:16px;--text-3xl:18px;--text-4xl:24px;--text-5xl:30px;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--tracking-tight:.02em;--tracking-normal:.04em;--tracking-wide:.06em;--tracking-wider:.08em;--tracking-widest:.12em;--tracking-ultra:.14em;--leading-none:0;--leading-tightest:.96;--leading-tight:1;--leading-compact:1.2;--leading-snug:1.3;--leading-cozy:1.4;--leading-body:1.45;--leading-normal:1.5;--leading-relaxed:1.55;--leading-reading:1.6;--leading-loose:1.65;--space-0:0;--space-1:1px;--space-2:2px;--space-3:3px;--space-4:4px;--space-6:6px;--space-8:8px;--space-10:10px;--space-12:12px;--space-14:14px;--space-16:16px;--space-20:20px;--space-24:24px;--space-28:28px;--space-32:32px;--space-36:36px;--space-40:40px;--space-48:48px;--border-width:1px;--border-width-thick:1.5px;--border-width-accent:2px;--radius:0;--radius-pill:999px;--radius-circle:50%;--transition-fast:80ms;--transition-normal:.1s;--transition-medium:.12s;--transition-slow:.15s;--transition-ease:.18s;--transition-toast:.2s;--transition-anim:.25s;--grid:20px;--gutter:40px;--canvas-dot-gap:20px;--canvas-dot-size:2px;--card-size:180px;--card-gap:20px;--zone-width:600px;--zone-height:500px;--zone-gap:40px;--zone-min-width:400px;--zone-min-height:300px;--summary-height:120px;--summary-gap:12px;--brief-width:260px;--brief-height:200px;--modifier-width:220px;--modifier-height:100px;--question-width:360px;--question-height:400px;--generate-width:200px;--generate-height:160px;--zone-card-offset-x:20px;--zone-card-offset-y:44px;--zone-card-columns:3;--fit-view-padding:.15;--zoom-min:.1;--zoom-max:3;--colorway-swatch-gruvbox:#fabd2f;--colorway-swatch-andromeda:#8aadf4;--colorway-swatch-rosepine:#ebbcba;--colorway-swatch-nord:#88c0d0;--colorway-swatch-solarized:#268bd2;--colorway-swatch-flexoki:#d0a215;--colorway-swatch-ink:#b0b0b0;--colorway-swatch-ash:#8e8e94;--colorway-swatch-bone:#d8d3cb;--disabled-opacity:.4;--danger:var(--accent);--success:var(--postit-green);--warning:var(--postit-yellow);--select:var(--postit-blue);--select-bg:color-mix(in srgb,var(--postit-blue)8%,transparent);--overlay:color-mix(in srgb,var(--fg)15%,transparent);--overlay-strong:color-mix(in srgb,var(--fg)30%,transparent);--hover-light:color-mix(in srgb,var(--fg)4%,transparent);--hover-medium:color-mix(in srgb,var(--fg)8%,transparent);--hover-strong:color-mix(in srgb,var(--fg)12%,transparent);--focus-ring:color-mix(in srgb,var(--select)24%,transparent);--focus-ring-strong:color-mix(in srgb,var(--select)45%,transparent);--shadow-color:var(--fg);--shadow-sm:0 2px 6px color-mix(in srgb,var(--fg)6%,transparent);--shadow-md:0 8px 28px color-mix(in srgb,var(--fg)12%,transparent),0 2px 6px color-mix(in srgb,var(--fg)6%,transparent);--shadow-lg:0 16px 32px color-mix(in srgb,var(--fg)10%,transparent),0 4px 12px color-mix(in srgb,var(--fg)6%,transparent);--shadow-xl:0 24px 70px color-mix(in srgb,var(--fg)18%,transparent);--connection-riff:color-mix(in srgb,var(--postit-purple)35%,transparent);--connection-vessel:color-mix(in srgb,var(--postit-blue)50%,transparent)}[data-theme=dark]{--bg:#282828;--bg-1:#3c3836;--surface:#32302f;--fg:#ebdbb2;--fg-2:#d5c4a1;--fg-3:#928374;--border:#504945;--border-strong:#7c6f64;--postit-yellow:#fabd2f;--postit-pink:#d3869b;--postit-green:#b8bb26;--postit-blue:#83a598;--postit-orange:#fe8019;--postit-purple:#d3869b;--postit-yellow-fg:#282828;--postit-pink-fg:#282828;--postit-green-fg:#282828;--postit-blue-fg:#282828;--zone-stroke-yellow:#d79921;--zone-stroke-pink:#b16286;--zone-stroke-green:#98971a;--zone-stroke-blue:#458588;--accent:#fb4934;--dot-color:#504945;--handle-color:#a89984;--connection:#fb4934;--connection-hover:#cc241d}[data-colorway=andromeda]{--bg:#1e2030;--bg-1:#252740;--surface:#2a2c42;--fg:#d5d8e8;--fg-2:#a6adc8;--fg-3:#6e738d;--border:#3a3d56;--border-strong:#5b5f7e;--postit-yellow:#eed49f;--postit-pink:#f5bde6;--postit-green:#a6da95;--postit-blue:#8aadf4;--postit-orange:#f5a97f;--postit-purple:#c6a0f6;--postit-yellow-fg:#1e2030;--postit-pink-fg:#1e2030;--postit-green-fg:#1e2030;--postit-blue-fg:#1e2030;--zone-stroke-yellow:#c6a54c;--zone-stroke-pink:#c486b0;--zone-stroke-green:#7eb86a;--zone-stroke-blue:#6889cc;--accent:#ed8796;--dot-color:#2a2c42;--handle-color:#8087a2;--connection:#ee99a0;--connection-hover:#ed8796}[data-colorway=andromeda][data-theme=light]{--bg:#eff1f5;--bg-1:#e6e9ef;--surface:#f4f6fa;--fg:#4c4f69;--fg-2:#6c6f85;--fg-3:#9ca0b0;--border:#ccd0da;--border-strong:#9ca0b0;--postit-yellow:#df8e1d;--postit-pink:#ea76cb;--postit-green:#40a02b;--postit-blue:#1e66f5;--postit-orange:#fe640b;--postit-purple:#8839ef;--postit-yellow-fg:#fff;--postit-pink-fg:#fff;--postit-green-fg:#fff;--postit-blue-fg:#fff;--zone-stroke-yellow:#df8e1d;--zone-stroke-pink:#ea76cb;--zone-stroke-green:#40a02b;--zone-stroke-blue:#1e66f5;--accent:#d20f39;--dot-color:#dce0e8;--handle-color:#7c7f93;--connection:#d20f39;--connection-hover:#a60d2d}[data-colorway=rosepine]{--bg:#191724;--bg-1:#1f1d2e;--surface:#26233a;--fg:#e0def4;--fg-2:#c4a7e7;--fg-3:#6e6a86;--border:#393552;--border-strong:#524f67;--postit-yellow:#f6c177;--postit-pink:#ebbcba;--postit-green:#9ccfd8;--postit-blue:#c4a7e7;--postit-orange:#f6c177;--postit-purple:#c4a7e7;--postit-yellow-fg:#191724;--postit-pink-fg:#191724;--postit-green-fg:#191724;--postit-blue-fg:#191724;--zone-stroke-yellow:#f6c177;--zone-stroke-pink:#ebbcba;--zone-stroke-green:#31748f;--zone-stroke-blue:#9ccfd8;--accent:#eb6f92;--dot-color:#26233a;--handle-color:#908caa;--connection:#eb6f92;--connection-hover:#d4567b}[data-colorway=rosepine][data-theme=light]{--bg:#faf4ed;--bg-1:#f2e9e1;--surface:#fffaf3;--fg:#575279;--fg-2:#797593;--fg-3:#9893a5;--border:#dfdad9;--border-strong:#9893a5;--postit-yellow:#ea9d34;--postit-pink:#d7827e;--postit-green:#56949f;--postit-blue:#907aa9;--postit-orange:#ea9d34;--postit-purple:#907aa9;--postit-yellow-fg:#fff;--postit-pink-fg:#fff;--postit-green-fg:#fff;--postit-blue-fg:#fff;--zone-stroke-yellow:#ea9d34;--zone-stroke-pink:#d7827e;--zone-stroke-green:#56949f;--zone-stroke-blue:#907aa9;--accent:#b4637a;--dot-color:#f2e9e1;--handle-color:#797593;--connection:#b4637a;--connection-hover:#9a4d64}[data-colorway=nord]{--bg:#2e3440;--bg-1:#3b4252;--surface:#3b4252;--fg:#eceff4;--fg-2:#d8dee9;--fg-3:#7b88a1;--border:#434c5e;--border-strong:#616e88;--postit-yellow:#ebcb8b;--postit-pink:#b48ead;--postit-green:#a3be8c;--postit-blue:#88c0d0;--postit-orange:#d08770;--postit-purple:#b48ead;--postit-yellow-fg:#2e3440;--postit-pink-fg:#2e3440;--postit-green-fg:#2e3440;--postit-blue-fg:#2e3440;--zone-stroke-yellow:#ebcb8b;--zone-stroke-pink:#b48ead;--zone-stroke-green:#a3be8c;--zone-stroke-blue:#81a1c1;--accent:#bf616a;--dot-color:#3b4252;--handle-color:#81a1c1;--connection:#bf616a;--connection-hover:#a5454e}[data-colorway=nord][data-theme=light]{--bg:#eceff4;--bg-1:#e5e9f0;--surface:#f0f4f8;--fg:#2e3440;--fg-2:#434c5e;--fg-3:#7b88a1;--border:#d8dee9;--border-strong:#9aa5b4;--postit-yellow:#d69c2c;--postit-pink:#9b6e96;--postit-green:#7a9a6b;--postit-blue:#5e81ac;--postit-orange:#c26b55;--postit-purple:#9b6e96;--postit-yellow-fg:#fff;--postit-pink-fg:#fff;--postit-green-fg:#fff;--postit-blue-fg:#fff;--zone-stroke-yellow:#d69c2c;--zone-stroke-pink:#9b6e96;--zone-stroke-green:#7a9a6b;--zone-stroke-blue:#5e81ac;--accent:#bf616a;--dot-color:#e5e9f0;--handle-color:#5e81ac;--connection:#bf616a;--connection-hover:#a5454e}[data-colorway=solarized]{--bg:#002b36;--bg-1:#073642;--surface:#073642;--fg:#fdf6e3;--fg-2:#eee8d5;--fg-3:#657b83;--border:#2a4f5c;--border-strong:#586e75;--postit-yellow:#b58900;--postit-pink:#d33682;--postit-green:#859900;--postit-blue:#268bd2;--postit-orange:#cb4b16;--postit-purple:#6c71c4;--postit-yellow-fg:#fdf6e3;--postit-pink-fg:#fdf6e3;--postit-green-fg:#fdf6e3;--postit-blue-fg:#fdf6e3;--zone-stroke-yellow:#b58900;--zone-stroke-pink:#d33682;--zone-stroke-green:#859900;--zone-stroke-blue:#268bd2;--accent:#dc322f;--dot-color:#073642;--handle-color:#839496;--connection:#dc322f;--connection-hover:#b5201e}[data-colorway=solarized][data-theme=light]{--bg:#fdf6e3;--bg-1:#eee8d5;--surface:#fdf6e3;--fg:#073642;--fg-2:#586e75;--fg-3:#93a1a1;--border:#eee8d5;--border-strong:#93a1a1;--postit-yellow:#b58900;--postit-pink:#d33682;--postit-green:#859900;--postit-blue:#268bd2;--postit-orange:#cb4b16;--postit-purple:#6c71c4;--postit-yellow-fg:#fdf6e3;--postit-pink-fg:#fdf6e3;--postit-green-fg:#fdf6e3;--postit-blue-fg:#fdf6e3;--zone-stroke-yellow:#b58900;--zone-stroke-pink:#d33682;--zone-stroke-green:#859900;--zone-stroke-blue:#268bd2;--accent:#dc322f;--dot-color:#eee8d5;--handle-color:#657b83;--connection:#dc322f;--connection-hover:#b5201e}[data-colorway=flexoki]{--bg:#100f0f;--bg-1:#1c1b1a;--surface:#1c1b1a;--fg:#cecdc3;--fg-2:#b7b5ac;--fg-3:#6f6e69;--border:#343331;--border-strong:#575653;--postit-yellow:#d0a215;--postit-pink:#ce5d97;--postit-green:#879a39;--postit-blue:#4385be;--postit-orange:#da702c;--postit-purple:#8b7ec8;--postit-yellow-fg:#100f0f;--postit-pink-fg:#fff;--postit-green-fg:#100f0f;--postit-blue-fg:#fff;--zone-stroke-yellow:#d0a215;--zone-stroke-pink:#ce5d97;--zone-stroke-green:#879a39;--zone-stroke-blue:#4385be;--accent:#d14d41;--dot-color:#1c1b1a;--handle-color:#878580;--connection:#d14d41;--connection-hover:#b33a30}[data-colorway=flexoki][data-theme=light]{--bg:#fffcf0;--bg-1:#f2f0e5;--surface:#fffcf0;--fg:#100f0f;--fg-2:#6f6e69;--fg-3:#b7b5ac;--border:#e6e4d9;--border-strong:#b7b5ac;--postit-yellow:#d0a215;--postit-pink:#ce5d97;--postit-green:#879a39;--postit-blue:#4385be;--postit-orange:#da702c;--postit-purple:#8b7ec8;--postit-yellow-fg:#100f0f;--postit-pink-fg:#fff;--postit-green-fg:#100f0f;--postit-blue-fg:#fff;--zone-stroke-yellow:#d0a215;--zone-stroke-pink:#ce5d97;--zone-stroke-green:#879a39;--zone-stroke-blue:#4385be;--accent:#d14d41;--dot-color:#e6e4d9;--handle-color:#6f6e69;--connection:#d14d41;--connection-hover:#b33a30}[data-colorway=ink]{--bg:#0a0a0a;--bg-1:#141414;--surface:#141414;--fg:#b0b0b0;--fg-2:gray;--fg-3:#505050;--border:#252525;--border-strong:#404040;--postit-yellow:#e8e8e8;--postit-pink:silver;--postit-green:#d0d0d0;--postit-blue:#b8b8b8;--postit-orange:#d8d8d8;--postit-purple:#c8c8c8;--postit-yellow-fg:#0a0a0a;--postit-pink-fg:#0a0a0a;--postit-green-fg:#0a0a0a;--postit-blue-fg:#0a0a0a;--zone-stroke-yellow:#505050;--zone-stroke-pink:#404040;--zone-stroke-green:#484848;--zone-stroke-blue:#383838;--accent:#e0e0e0;--dot-color:#1e1e1e;--handle-color:#606060;--connection:#e05050;--connection-hover:#c03030}[data-colorway=ink][data-theme=light]{--bg:#fff;--bg-1:#f5f5f5;--surface:#fafafa;--fg:#1a1a1a;--fg-2:#555;--fg-3:#999;--border:#e0e0e0;--border-strong:#b0b0b0;--postit-yellow:#1a1a1a;--postit-pink:#333;--postit-green:#262626;--postit-blue:#404040;--postit-orange:#2a2a2a;--postit-purple:#363636;--postit-yellow-fg:#fff;--postit-pink-fg:#fff;--postit-green-fg:#fff;--postit-blue-fg:#fff;--zone-stroke-yellow:#b0b0b0;--zone-stroke-pink:silver;--zone-stroke-green:#b8b8b8;--zone-stroke-blue:#c8c8c8;--accent:#1a1a1a;--dot-color:#e8e8e8;--handle-color:gray;--connection:#c03030;--connection-hover:#a02020}[data-colorway=ash]{--bg:#1a1a1e;--bg-1:#222226;--surface:#222226;--fg:#c8c8cc;--fg-2:#8e8e94;--fg-3:#56565c;--border:#2e2e34;--border-strong:#46464c;--postit-yellow:#c8c8cc;--postit-pink:#a0a0a6;--postit-green:#b4b4b8;--postit-blue:#9494a0;--postit-orange:#bcbcc0;--postit-purple:#a8a8b0;--postit-yellow-fg:#1a1a1e;--postit-pink-fg:#1a1a1e;--postit-green-fg:#1a1a1e;--postit-blue-fg:#1a1a1e;--zone-stroke-yellow:#56565c;--zone-stroke-pink:#4a4a52;--zone-stroke-green:#505058;--zone-stroke-blue:#444450;--accent:#d4d4d8;--dot-color:#2a2a30;--handle-color:#6e6e76;--connection:#d05555;--connection-hover:#b04040}[data-colorway=ash][data-theme=light]{--bg:#f0f0f2;--bg-1:#e6e6e8;--surface:#f4f4f6;--fg:#2a2a2e;--fg-2:#5a5a60;--fg-3:#9a9aa0;--border:#d4d4d8;--border-strong:#a0a0a6;--postit-yellow:#4a4a4e;--postit-pink:#5a5a60;--postit-green:#505056;--postit-blue:#626268;--postit-orange:#545458;--postit-purple:#5e5e64;--postit-yellow-fg:#f0f0f2;--postit-pink-fg:#f0f0f2;--postit-green-fg:#f0f0f2;--postit-blue-fg:#f0f0f2;--zone-stroke-yellow:#a0a0a6;--zone-stroke-pink:#acacb2;--zone-stroke-green:#a6a6ac;--zone-stroke-blue:#b2b2b8;--accent:#2a2a2e;--dot-color:#dcdce0;--handle-color:#7a7a80;--connection:#c04040;--connection-hover:#a03030}[data-colorway=bone]{--bg:#f5f0e8;--bg-1:#ece7df;--surface:#f8f4ec;--fg:#3a3530;--fg-2:#6a6560;--fg-3:#9a9590;--border:#d8d3cb;--border-strong:#a8a39b;--postit-yellow:#d8d3cb;--postit-pink:#c8c3bb;--postit-green:#d0cbc3;--postit-blue:#c0bbb3;--postit-orange:#d4cfca;--postit-purple:#c4bfb7;--postit-yellow-fg:#3a3530;--postit-pink-fg:#3a3530;--postit-green-fg:#3a3530;--postit-blue-fg:#3a3530;--zone-stroke-yellow:#a8a39b;--zone-stroke-pink:#b0aba3;--zone-stroke-green:#aca7a0;--zone-stroke-blue:#b4afaa;--accent:#8a3020;--dot-color:#ddd8d0;--handle-color:#8a8580;--connection:#8a3020;--connection-hover:#6e2418}[data-colorway=bone][data-theme=dark]{--bg:#1e1c1a;--bg-1:#28261f;--surface:#28261f;--fg:#d0cbc3;--fg-2:#9a9590;--fg-3:#605b56;--border:#3a3530;--border-strong:#585350;--postit-yellow:#c0bbb3;--postit-pink:#a8a39b;--postit-green:#b4afa7;--postit-blue:#9a9590;--postit-orange:#b8b3ab;--postit-purple:#a0aba3;--postit-yellow-fg:#1e1c1a;--postit-pink-fg:#1e1c1a;--postit-green-fg:#1e1c1a;--postit-blue-fg:#1e1c1a;--zone-stroke-yellow:#585350;--zone-stroke-pink:#504b48;--zone-stroke-green:#545050;--zone-stroke-blue:#4a4644;--accent:#c8705a;--dot-color:#302e28;--handle-color:#787370;--connection:#c8705a;--connection-hover:#a85a46}
.app{flex-direction:column;height:100vh;display:flex}.top-bar{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;justify-content:space-between;align-items:center;height:52px;padding:0 20px;display:flex;position:relative}.top-bar-left{align-items:center;gap:12px;display:flex}.top-bar-center{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-2);font-size:11px;font-weight:500;position:absolute;left:50%;transform:translate(-50%)}.top-bar-right{align-items:center;gap:0;display:flex}.top-right-bar{z-index:50;align-items:center;gap:0;display:flex;position:fixed;top:16px;right:24px}.body{flex:1;display:flex;overflow:hidden}.sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;flex-shrink:0;width:220px;padding:16px 0;display:flex}.main{flex-direction:column;flex:1;display:flex;overflow:hidden}.action-bar{border-bottom:1px solid var(--border);background:var(--bg);flex-shrink:0;align-items:center;gap:10px;padding:14px 24px;display:flex}.spacer{flex:1}@media (max-width:700px){.sidebar{display:none}.top-bar{height:44px;padding:0 12px}.action-bar{gap:var(--space-8);flex-wrap:wrap;padding:10px 12px}.top-right-bar{top:10px;right:12px}}@media (max-width:1100px) and (min-width:701px){.sidebar{width:180px}}
.btn-primary{font-family:var(--mono);font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;background:var(--fg);color:var(--bg);border:var(--border-width)solid var(--fg);border-radius:var(--radius);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);align-items:center;gap:6px;padding:7px 14px;text-decoration:none;display:inline-flex}.btn-primary:hover{background:var(--accent);border-color:var(--accent);color:var(--bg)}.btn-primary:active{opacity:.85}.btn-primary:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.btn-primary svg{width:12px;height:12px}.btn-secondary{font-family:var(--mono);font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--fg);border:var(--border-width)solid var(--border);border-radius:var(--radius);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);background:0 0;align-items:center;gap:6px;padding:7px 14px;text-decoration:none;display:inline-flex}.btn-secondary:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}.btn-secondary:active{opacity:.85}.btn-secondary:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.btn-secondary svg{width:12px;height:12px}.btn-danger{font-family:var(--mono);font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;background:var(--danger);color:var(--bg);border:var(--border-width)solid var(--danger);border-radius:var(--radius);cursor:pointer;transition:opacity var(--transition-fast);align-items:center;gap:6px;padding:7px 14px;text-decoration:none;display:inline-flex}.btn-danger:hover{opacity:.85}.btn-danger:active{opacity:.7}.btn-danger:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.btn-danger svg{width:12px;height:12px}.btn-icon{border-radius:var(--radius);background:var(--surface);border:var(--border-width)solid var(--border);width:32px;height:32px;color:var(--fg-2);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);justify-content:center;align-items:center;display:flex}.btn-icon:hover{background:var(--fg);color:var(--bg)}.btn-icon:active{opacity:.85}.btn-icon:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.btn-icon svg{width:14px;height:14px}.btn-icon-group{gap:0;display:flex}.btn-icon-group .btn-icon+.btn-icon,.chrome-avatar-btn{margin-left:-1px}.chrome-avatar-btn svg{width:15px;height:15px}.toolbar-btn{border-radius:var(--radius);cursor:pointer;width:32px;height:32px;color:var(--fg-3);transition:background var(--transition-fast),color var(--transition-fast);font-family:var(--mono);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:relative}.toolbar-btn:hover{background:var(--fg);color:var(--bg)}.toolbar-btn:active{opacity:.85}.toolbar-btn.active{background:var(--fg);color:var(--bg)}.toolbar-btn:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.toolbar-btn svg{width:16px;height:16px}.btn-ghost{font-family:var(--mono);font-size:var(--text-base);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--fg-2);border-radius:var(--radius);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);background:0 0;border:none;align-items:center;gap:6px;padding:7px 10px;display:inline-flex}.btn-ghost:hover{background:var(--fg);color:var(--bg)}.btn-ghost:active{opacity:.85}.btn-ghost:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.btn-ghost svg{width:14px;height:14px}.view-toggle{gap:0;display:flex}.view-btn{border:var(--border-width)solid var(--border);border-radius:var(--radius);background:var(--surface);width:32px;height:32px;color:var(--fg-3);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);justify-content:center;align-items:center;display:flex}.view-btn+.view-btn{border-left:none}.view-btn:hover{color:var(--fg)}.view-btn:active{opacity:.85}.view-btn.active{background:var(--fg);color:var(--bg)}.view-btn svg{width:14px;height:14px}.btn-action{border:var(--border-width)solid var(--border);border-radius:var(--radius);background:var(--bg);cursor:pointer;width:24px;height:24px;color:var(--fg-3);transition:background var(--transition-normal),color var(--transition-normal);justify-content:center;align-items:center;margin-left:-1px;display:flex}.btn-action:first-child{margin-left:0}.btn-action:hover{background:var(--fg);color:var(--bg)}.btn-action:active{opacity:.85}.btn-action svg{width:12px;height:12px}.btn-loading{pointer-events:none;position:relative;color:#0000!important}.btn-loading:after{content:"";border:1.5px solid var(--bg);border-top-color:#0000;border-radius:50%;width:12px;height:12px;margin-top:-6px;margin-left:-6px;animation:.5s linear infinite btn-spin;position:absolute;top:50%;left:50%}.btn-secondary.btn-loading:after,.btn-ghost.btn-loading:after{border-color:var(--fg);border-top-color:#0000}@keyframes btn-spin{to{transform:rotate(360deg)}}@media (max-width:700px){.btn-icon{width:36px;height:36px}.btn-action{width:28px;height:28px}.toolbar-btn,.view-btn{width:36px;height:36px}}
.project-grid{flex:1;grid-template-columns:repeat(3,1fr);align-content:start;gap:16px;padding:24px;display:grid;overflow-y:auto}.project-grid::-webkit-scrollbar{width:6px}.project-grid::-webkit-scrollbar-track{background:0 0}.project-grid::-webkit-scrollbar-thumb{background:var(--border);border-radius:0}.project-grid::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.project-card{border:1px solid var(--border);background:var(--surface);cursor:pointer;color:inherit;transition:border-color var(--transition-fast);border-radius:0;text-decoration:none;display:block;position:relative}.project-card:hover{border-color:var(--border-strong)}.project-card:hover .card-more{opacity:1}.card-thumb{background:var(--bg);border-bottom:1px solid var(--border);justify-content:center;align-items:center;height:160px;display:flex;position:relative;overflow:hidden}.thumb-dots{flex-wrap:wrap;gap:4px;max-width:200px;padding:20px;display:flex}.thumb-dot{flex-shrink:0;width:8px;height:8px}.card-more{border:1px solid var(--border);background:var(--surface);width:24px;height:24px;color:var(--fg-3);cursor:pointer;opacity:0;transition:opacity var(--transition-medium),background var(--transition-fast);font-family:var(--mono);border-radius:0;justify-content:center;align-items:center;padding:0;font-size:14px;line-height:1;display:flex;position:absolute;top:8px;right:8px}.card-more:hover{background:var(--fg);color:var(--bg)}.card-more:active{opacity:.85}.card-info{padding:12px 14px}.card-name{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg);margin-bottom:4px;font-size:11px;font-weight:600}.card-meta{font-family:var(--mono);letter-spacing:.04em;color:var(--fg-3);text-transform:uppercase;font-size:10px;font-weight:400}.project-grid.list-view{grid-template-columns:1fr;gap:0}.project-grid.list-view .project-card{border-bottom:none;align-items:center;display:flex}.project-grid.list-view .project-card+.project-card{border-top:none}.project-grid.list-view .card-thumb{border-bottom:none;border-right:1px solid var(--border);width:80px;min-width:80px;height:52px}.project-grid.list-view .thumb-dots{gap:2px;max-width:72px;padding:8px}.project-grid.list-view .thumb-dot{width:4px;height:4px}.project-grid.list-view .card-info{flex:1;align-items:center;gap:16px;padding:10px 14px;display:flex}.project-grid.list-view .card-name{min-width:180px;margin-bottom:0}.project-grid.list-view .card-more{margin-right:10px;position:relative;top:auto;right:auto}.postit-node{cursor:grab;width:180px;height:180px;transition:transform var(--transition-normal);border:none;border-radius:0;flex-direction:column;padding:16px;display:flex;position:relative;overflow:visible}.postit-node:hover{transform:translateY(-1px)}.postit-node[data-color=yellow]{background:var(--postit-yellow);color:var(--postit-yellow-fg)}.postit-node[data-color=pink]{background:var(--postit-pink);color:var(--postit-pink-fg)}.postit-node[data-color=green]{background:var(--postit-green);color:var(--postit-green-fg)}.postit-node[data-color=blue]{background:var(--postit-blue);color:var(--postit-blue-fg)}.postit-node[data-color=orange]{background:var(--postit-orange);color:var(--postit-yellow-fg)}.postit-node[data-color=purple]{background:var(--postit-purple);color:var(--postit-pink-fg)}.postit-type{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;color:inherit;opacity:.55;flex-shrink:0;margin-bottom:10px;font-size:9px;font-weight:500}.postit-text{color:inherit;text-overflow:ellipsis;-webkit-line-clamp:7;-webkit-box-orient:vertical;flex:1;font-size:12px;line-height:1.55;display:-webkit-box;overflow:hidden}.postit-actions{opacity:0;transition:opacity var(--transition-normal);z-index:5;flex-direction:row;gap:0;display:flex;position:absolute;bottom:6px;right:6px}.postit-node:hover .postit-actions,.postit-node:focus-within .postit-actions{opacity:1}.postit-action{border-radius:var(--radius);background:var(--overlay);cursor:pointer;width:22px;height:22px;font-size:var(--text-base);transition:background var(--transition-normal);color:inherit;border:none;justify-content:center;align-items:center;margin-left:1px;display:flex}.postit-action:first-child{margin-left:0}.postit-action:hover{background:var(--overlay-strong)}.postit-action:active{opacity:.7}.postit-promote{border-radius:var(--radius);background:var(--overlay);cursor:pointer;width:22px;height:22px;font-size:var(--text-base);transition:background var(--transition-normal);color:inherit;border:none;justify-content:center;align-items:center;margin-left:1px;display:flex}.postit-promote:hover{background:var(--overlay-strong)}.postit-promote:active{opacity:.7}.postit-star-badge{color:inherit;opacity:.7;pointer-events:none;font-size:12px;line-height:1;position:absolute;top:6px;right:6px}@keyframes card-reject{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.postit-node.rejecting{animation:.2s ease-out forwards card-reject}@keyframes card-promote{0%{opacity:1;transform:scale(1)}50%{transform:scale(1.03)}to{opacity:1;transform:scale(1)}}.postit-node.promoting{animation:.25s ease-out card-promote}@media (max-width:1100px){.project-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:700px){.project-grid{grid-template-columns:1fr}}
.search-wrapper{position:relative}.search-wrapper svg{width:13px;height:13px;color:var(--fg-3);pointer-events:none;position:absolute;top:50%;left:9px;transform:translateY(-50%)}.search-input{font-family:var(--mono);font-size:var(--text-base);letter-spacing:var(--tracking-normal);background:var(--surface);color:var(--fg);border:var(--border-width)solid var(--border);border-radius:var(--radius);width:220px;transition:border-color var(--transition-fast);outline:none;padding:7px 10px 7px 30px}.search-input::placeholder{color:var(--fg-3);text-transform:uppercase}.search-input:hover,.search-input:focus{border-color:var(--border-strong)}.search-input:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.sort-select-wrapper{display:inline-block;position:relative}.sort-select-wrapper:after{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-top:4px solid var(--fg-3);pointer-events:none;width:0;height:0;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.sort-select{font-family:var(--mono);font-size:var(--text-base);letter-spacing:var(--tracking-normal);text-transform:uppercase;background:var(--surface);color:var(--fg-2);border:var(--border-width)solid var(--border);border-radius:var(--radius);cursor:pointer;appearance:none;transition:border-color var(--transition-fast),background-color var(--transition-fast);background-image:none;outline:none;padding:7px 28px 7px 10px}.sort-select:hover,.sort-select:focus{border-color:var(--border-strong)}.sort-select:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.sort-select option{font-family:var(--mono);font-size:var(--text-base);background:var(--surface);color:var(--fg);padding:7px 10px}.text-input{font-family:var(--mono);font-size:var(--text-base);letter-spacing:var(--tracking-normal);background:var(--surface);color:var(--fg);border:var(--border-width)solid var(--border);border-radius:var(--radius);transition:border-color var(--transition-fast);outline:none;width:100%;padding:7px 10px}.text-input::placeholder{color:var(--fg-3)}.text-input:hover,.text-input:focus{border-color:var(--border-strong)}.text-input:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.text-input:read-only{color:var(--fg-3);cursor:default}.textarea{font-family:var(--font);font-size:var(--text-md);line-height:var(--leading-normal);background:var(--surface);color:var(--fg);border:var(--border-width)solid var(--border);border-radius:var(--radius);transition:border-color var(--transition-fast);resize:vertical;outline:none;width:100%;min-height:80px;padding:10px}.textarea::placeholder{color:var(--fg-3)}.textarea:hover,.textarea:focus{border-color:var(--border-strong)}.textarea:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;resize:none}.checkbox-wrapper{cursor:pointer;align-items:center;gap:8px;display:flex}.checkbox{appearance:none;background:var(--surface);border:var(--border-width)solid var(--border);border-radius:var(--radius);cursor:pointer;width:16px;height:16px;transition:background var(--transition-fast),border-color var(--transition-fast);flex-shrink:0;position:relative}.checkbox:hover{border-color:var(--border-strong)}.checkbox:checked{background:var(--fg);border-color:var(--fg)}.checkbox:checked:after{content:"";border:solid var(--bg);border-width:0 1.5px 1.5px 0;width:5px;height:9px;position:absolute;top:1px;left:4px;transform:rotate(45deg)}.checkbox:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.checkbox-label{font-family:var(--mono);font-size:var(--text-base);letter-spacing:var(--tracking-normal);color:var(--fg-2);text-transform:uppercase;cursor:pointer}.toggle{appearance:none;background:var(--border);border-radius:var(--radius);cursor:pointer;width:32px;height:16px;transition:background var(--transition-fast);border:none;flex-shrink:0;position:relative}.toggle:after{content:"";background:var(--bg);border-radius:var(--radius);width:12px;height:12px;transition:transform var(--transition-fast);position:absolute;top:2px;left:2px}.toggle:checked{background:var(--fg)}.toggle:checked:after{transform:translate(16px)}.toggle:disabled{opacity:var(--disabled-opacity);cursor:not-allowed}.form-field{flex-direction:column;gap:4px;display:flex}.form-label{font-family:var(--mono);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--fg-3);font-weight:500}.form-hint{font-family:var(--mono);font-size:var(--text-xs);letter-spacing:var(--tracking-normal);color:var(--fg-3)}.form-field.error .text-input,.form-field.error .textarea,.form-field.error .sort-select,.form-field.error .search-input{border-color:var(--danger)}.form-field.error .form-hint{color:var(--danger)}.form-field.success .text-input,.form-field.success .textarea,.form-field.success .sort-select,.form-field.success .search-input{border-color:var(--success)}.form-field.success .form-hint{color:var(--success)}@media (max-width:700px){.search-input,.sort-select{width:100%}.action-bar{flex-wrap:wrap}}
.sidebar-nav{flex-direction:column;flex:1;gap:1px;padding:0 8px;display:flex}.sidebar-bottom{border-top:1px solid var(--border);flex-direction:column;gap:1px;padding:12px 8px 0;display:flex}.nav-item{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-2);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);text-align:left;background:0 0;border:none;border-radius:0;align-items:center;gap:10px;width:100%;padding:7px 10px;font-size:11px;font-weight:500;text-decoration:none;display:flex}.nav-item:hover{background:var(--bg-1);color:var(--fg)}.nav-item:active{opacity:.85}.nav-item.active{background:var(--fg);color:var(--bg)}.nav-item:disabled,.nav-item[aria-disabled=true]{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.nav-item svg{flex-shrink:0;width:14px;height:14px}.logo{font-family:var(--mono);letter-spacing:.14em;color:var(--fg);text-transform:uppercase;font-size:13px;font-weight:600;text-decoration:none}.logo:hover{color:var(--accent)}.logo-fixed{font-family:var(--mono);letter-spacing:.14em;color:var(--fg);z-index:50;text-transform:uppercase;font-size:13px;font-weight:600;text-decoration:none;position:fixed;top:20px;left:24px}.logo-fixed:hover{color:var(--accent)}@media (max-width:700px){.logo-fixed{font-size:var(--text-base);top:12px;left:16px}.nav-item{padding:10px 12px}}
.zone-node{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-20);min-width:100%;min-height:100%;transition:border-color var(--transition-slow);position:relative}.zone-node:hover{border-color:var(--border-strong)}.zone-node[data-zone-color=yellow]{border-color:var(--zone-stroke-yellow)}.zone-node[data-zone-color=pink]{border-color:var(--zone-stroke-pink)}.zone-node[data-zone-color=green]{border-color:var(--zone-stroke-green)}.zone-node[data-zone-color=blue]{border-color:var(--zone-stroke-blue)}.zone-node[data-zone-color=working-set]{border-color:var(--fg-3);background:color-mix(in srgb,var(--surface)50%,transparent);border-style:dashed}.zone-working-set-empty{justify-content:center;align-items:center;gap:var(--space-6);pointer-events:none;flex-direction:column;display:flex;position:absolute;inset:0}.zone-working-set-empty-icon{color:var(--fg-3);opacity:.6}.zone-working-set-empty-kicker{font-family:var(--mono);font-size:var(--text-xs);letter-spacing:var(--tracking-ultra);text-transform:uppercase;color:var(--fg-3)}.zone-working-set-empty-hint{font-family:var(--mono);font-size:var(--text-sm);letter-spacing:var(--tracking-normal);text-transform:uppercase;color:var(--fg-3);opacity:.6}.zone-node[data-zone-color=working-set].drag-over{border-color:var(--select);background:var(--select-bg);border-style:solid}.zone-node[data-zone-color=working-set].drag-over .zone-working-set-empty-icon,.zone-node[data-zone-color=working-set].drag-over .zone-working-set-empty-kicker,.zone-node[data-zone-color=working-set].drag-over .zone-working-set-empty-hint{color:var(--select);opacity:1}.zone-node[data-zone-color=working-set].is-route-target{border-color:color-mix(in srgb,var(--select)68%,var(--fg-3));background:linear-gradient(180deg,color-mix(in srgb,var(--surface)86%,var(--select)14%),color-mix(in srgb,var(--surface)62%,transparent));box-shadow:0 0 0 1px color-mix(in srgb,var(--select)18%,transparent),0 20px 42px color-mix(in srgb,var(--select)10%,transparent);border-style:solid}.zone-node[data-zone-color=working-set].is-route-target .zone-working-set-empty-icon,.zone-node[data-zone-color=working-set].is-route-target .zone-working-set-empty-kicker,.zone-node[data-zone-color=working-set].is-route-target .zone-working-set-empty-hint{color:color-mix(in srgb,var(--select)78%,var(--fg));opacity:1}.zone-header{top:calc(-1*var(--space-10));left:var(--space-12);right:var(--space-12);align-items:center;gap:var(--space-8);display:flex;position:absolute}.zone-label{font-family:var(--mono);font-size:var(--text-sm);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-widest);padding:var(--space-2)var(--space-8);border-radius:var(--radius);color:var(--fg-2);background:var(--bg)}.zone-node[data-zone-color=yellow] .zone-label{color:var(--zone-stroke-yellow)}.zone-node[data-zone-color=pink] .zone-label{color:var(--zone-stroke-pink)}.zone-node[data-zone-color=green] .zone-label{color:var(--zone-stroke-green)}.zone-node[data-zone-color=blue] .zone-label{color:var(--zone-stroke-blue)}.zone-node[data-zone-color=working-set] .zone-label{color:var(--fg-3)}.zone-board-identity{border:1px solid color-mix(in srgb,var(--border)76%,transparent);background:color-mix(in srgb,var(--bg)92%,transparent);min-width:0;box-shadow:0 10px 24px color-mix(in srgb,var(--fg)6%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:14px;gap:4px;padding:8px 10px 10px;display:grid}.zone-node[data-zone-color=working-set].is-route-target .zone-board-identity{border-color:color-mix(in srgb,var(--select)26%,transparent);background:color-mix(in srgb,var(--bg)84%,var(--select)16%)}.zone-board-kicker{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.zone-board-title-button,.zone-board-title-static{text-overflow:ellipsis;white-space:nowrap;max-width:min(280px,100vw - 240px);font-family:var(--font);font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:-.02em;color:var(--fg);line-height:1.15;display:block;overflow:hidden}.zone-board-title-button{text-align:left;cursor:pointer;transition:color var(--transition-fast),opacity var(--transition-fast);background:0 0;border:none;padding:0}.zone-board-title-button:hover{color:color-mix(in srgb,var(--fg)82%,var(--select))}.zone-board-title-button:active{opacity:.8}.zone-board-title-input{border:1px solid color-mix(in srgb,var(--border-strong)82%,transparent);background:color-mix(in srgb,var(--bg)90%,transparent);width:min(280px,100vw - 240px);color:var(--fg);font-family:var(--font);font-size:var(--text-md);font-weight:var(--weight-semibold);border-radius:10px;outline:none;padding:6px 9px;line-height:1.2}.zone-board-title-input:focus{border-color:color-mix(in srgb,var(--select)70%,var(--border-strong))}.zone-board-meta-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.zone-board-zone-label,.zone-board-count,.zone-board-target-chip,.zone-board-target-button,.zone-board-branch-button{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.zone-board-zone-label{color:var(--fg-3)}.zone-board-count,.zone-board-target-chip{border:1px solid color-mix(in srgb,var(--border)82%,transparent);background:color-mix(in srgb,var(--surface)82%,transparent);border-radius:999px;align-items:center;min-height:22px;padding:0 8px;display:inline-flex}.zone-board-count{color:color-mix(in srgb,var(--fg)68%,transparent)}.zone-board-target-chip{border-color:color-mix(in srgb,var(--select)28%,transparent);background:color-mix(in srgb,var(--select)11%,var(--surface));color:color-mix(in srgb,var(--select)82%,var(--fg))}.zone-board-target-button,.zone-board-branch-button{border:1px solid color-mix(in srgb,var(--border)82%,transparent);background:color-mix(in srgb,var(--surface)90%,transparent);min-height:24px;color:color-mix(in srgb,var(--fg)72%,transparent);cursor:pointer;transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast);border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.zone-board-target-button:hover,.zone-board-branch-button:hover{border-color:color-mix(in srgb,var(--border-strong)82%,transparent);background:color-mix(in srgb,var(--surface)100%,transparent);color:var(--fg);transform:translateY(-1px)}.zone-board-target-button:active,.zone-board-branch-button:active{opacity:.85;transform:translateY(0)}.zone-board-target-button{color:color-mix(in srgb,var(--select)74%,var(--fg))}.zone-node[data-zone-color=working-set].is-route-target .zone-board-target-button,.zone-node[data-zone-color=working-set].is-route-target .zone-board-branch-button{border-color:color-mix(in srgb,var(--select)20%,transparent)}.zone-actions{opacity:0;transition:opacity var(--transition-normal);gap:0;margin-left:auto;display:flex}.zone-node:hover .zone-actions{opacity:1}.zone-action-btn{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);cursor:pointer;width:24px;height:24px;color:var(--fg-3);transition:background var(--transition-normal),color var(--transition-normal);justify-content:center;align-items:center;margin-left:-1px;display:flex}.zone-action-btn:first-child{margin-left:0}.zone-action-btn:hover{background:var(--fg);color:var(--bg)}.zone-action-btn:active{opacity:.85}.zone-action-btn svg{width:12px;height:12px}.zone-resize-handle-corner{background:var(--bg);border:1.5px solid var(--border-strong);border-radius:var(--radius);opacity:0;width:8px;height:8px;transition:opacity var(--transition-medium);z-index:10;position:absolute}.zone-node:hover .zone-resize-handle-corner,.zone-node.selected .zone-resize-handle-corner{opacity:1}.zone-resize-handle-corner:hover{background:var(--fg);border-color:var(--fg)}.zone-resize-corner-tl{top:calc(-1*var(--space-4));left:calc(-1*var(--space-4));cursor:nwse-resize}.zone-resize-corner-tr{top:calc(-1*var(--space-4));right:calc(-1*var(--space-4));cursor:nesw-resize}.zone-resize-corner-bl{bottom:calc(-1*var(--space-4));left:calc(-1*var(--space-4));cursor:nesw-resize}.zone-resize-corner-br{bottom:calc(-1*var(--space-4));right:calc(-1*var(--space-4));cursor:nwse-resize}.zone-resize-handle-edge{background:var(--bg);border:1.5px solid var(--border-strong);border-radius:var(--radius);opacity:0;transition:opacity var(--transition-medium);z-index:10;position:absolute}.zone-node:hover .zone-resize-handle-edge,.zone-node.selected .zone-resize-handle-edge{opacity:1}.zone-resize-handle-edge:hover{background:var(--fg);border-color:var(--fg)}.zone-resize-edge-t{top:calc(-1*var(--space-3));width:var(--space-16);height:var(--space-6);cursor:ns-resize;left:50%;transform:translate(-50%)}.zone-resize-edge-b{bottom:calc(-1*var(--space-3));width:var(--space-16);height:var(--space-6);cursor:ns-resize;left:50%;transform:translate(-50%)}.zone-resize-edge-l{left:calc(-1*var(--space-3));width:var(--space-6);height:var(--space-16);cursor:ew-resize;top:50%;transform:translateY(-50%)}.zone-resize-edge-r{right:calc(-1*var(--space-3));width:var(--space-6);height:var(--space-16);cursor:ew-resize;top:50%;transform:translateY(-50%)}.zone-node[data-zone-color=yellow] .zone-resize-handle-corner,.zone-node[data-zone-color=yellow] .zone-resize-handle-edge{border-color:var(--zone-stroke-yellow)}.zone-node[data-zone-color=pink] .zone-resize-handle-corner,.zone-node[data-zone-color=pink] .zone-resize-handle-edge{border-color:var(--zone-stroke-pink)}.zone-node[data-zone-color=green] .zone-resize-handle-corner,.zone-node[data-zone-color=green] .zone-resize-handle-edge{border-color:var(--zone-stroke-green)}.zone-node[data-zone-color=blue] .zone-resize-handle-corner,.zone-node[data-zone-color=blue] .zone-resize-handle-edge{border-color:var(--zone-stroke-blue)}.zone-node[data-zone-color=working-set] .zone-resize-handle-corner,.zone-node[data-zone-color=working-set] .zone-resize-handle-edge{border-color:var(--fg-3)}.zone-summary-node{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-12)var(--space-16);gap:var(--space-6);flex-direction:column;width:100%;min-height:100%;display:flex;position:relative}.zone-summary-header{align-items:center;gap:var(--space-8);display:flex}.zone-summary-label{font-family:var(--mono);font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--fg-3);flex-shrink:0}.zone-summary-zone-name{font-family:var(--mono);font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-wider);opacity:.6}.zone-summary-zone-name[data-color=yellow]{color:var(--zone-stroke-yellow)}.zone-summary-zone-name[data-color=pink]{color:var(--zone-stroke-pink)}.zone-summary-zone-name[data-color=green]{color:var(--zone-stroke-green)}.zone-summary-zone-name[data-color=blue]{color:var(--zone-stroke-blue)}.zone-summary-zone-name[data-color=working-set]{color:var(--fg-3)}.zone-summary-text{font-size:var(--text-md);color:var(--fg-2);line-height:1.55;font-weight:var(--weight-regular)}.zone-summary-textarea{resize:none;background:0 0;border:none;outline:none;width:100%;min-height:88px;padding:0}.zone-summary-text[contenteditable]{cursor:text;outline:none}.zone-summary-text[contenteditable]:empty:before{content:"Click to add a summary...";color:var(--fg-3);font-style:italic}.zone-summary-text:focus,.zone-summary-textarea:focus{border-bottom:1px solid var(--border-strong);margin-bottom:-1px}.zone-summary-meta{font-family:var(--mono);font-size:var(--text-sm);color:var(--fg-3);align-items:center;gap:var(--space-8);margin-top:auto;display:flex}.zone-summary-meta svg{width:11px;height:11px}.zone-summary-actions{top:var(--space-8);right:var(--space-8);opacity:0;transition:opacity var(--transition-normal);gap:0;display:flex;position:absolute}.zone-summary-node:hover .zone-summary-actions{opacity:1}.zone-summary-action{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);cursor:pointer;width:24px;height:24px;color:var(--fg-3);transition:background var(--transition-normal),color var(--transition-normal);justify-content:center;align-items:center;margin-left:-1px;display:flex}.zone-summary-action:first-child{margin-left:0}.zone-summary-action:hover{background:var(--fg);color:var(--bg)}.zone-summary-action:active{opacity:.85}.zone-summary-action svg{width:12px;height:12px}.brief-node{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-20);gap:var(--space-12);flex-direction:column;width:100%;min-height:100%;display:flex}.brief-node-label{font-family:var(--mono);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.14em;color:var(--fg-3)}.brief-node-text{font-size:var(--text-lg);color:var(--fg);line-height:1.65;font-weight:var(--weight-regular)}.brief-node-meta{font-family:var(--mono);font-size:var(--text-sm);color:var(--fg-3);align-items:center;gap:var(--space-6);margin-top:auto;display:flex}.brief-node-meta svg{width:11px;height:11px}.modifier-node{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-14);gap:var(--space-8);flex-direction:column;width:100%;min-height:100%;display:flex}.modifier-node-label{font-family:var(--mono);font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--fg-3);align-items:center;gap:5px;display:flex}.modifier-node-label svg{width:11px;height:11px}.modifier-node-text{font-size:var(--text-md);color:var(--fg-2);line-height:1.5}@media (max-width:700px){.zone-node{padding:var(--space-14)}.zone-board-identity{max-width:calc(100vw - 120px)}.zone-board-title-button,.zone-board-title-static,.zone-board-title-input{width:auto;max-width:calc(100vw - 160px)}.zone-header{left:var(--space-8);right:var(--space-8)}.zone-summary-node{padding:var(--space-10)var(--space-12)}.brief-node{padding:var(--space-14)}.zone-resize-handle-corner{width:12px;height:12px}.zone-resize-corner-tl{top:calc(-1*var(--space-6));left:calc(-1*var(--space-6))}.zone-resize-corner-tr{top:calc(-1*var(--space-6));right:calc(-1*var(--space-6))}.zone-resize-corner-bl{bottom:calc(-1*var(--space-6));left:calc(-1*var(--space-6))}.zone-resize-corner-br{bottom:calc(-1*var(--space-6));right:calc(-1*var(--space-6))}.zone-resize-edge-t,.zone-resize-edge-b{width:24px;height:8px}.zone-resize-edge-l,.zone-resize-edge-r{width:8px;height:24px}}
.context-menu{background:var(--surface);border:1px solid var(--border);box-shadow:none;z-index:200;border-radius:0;min-width:180px;padding:2px;position:fixed}.context-menu-item{font-family:var(--font);color:var(--fg-2);cursor:pointer;text-align:left;transition:background var(--transition-fast);white-space:nowrap;background:0 0;border:none;border-radius:0;align-items:center;gap:8px;width:100%;padding:7px 12px;font-size:12px;display:flex}.context-menu-item:hover{background:var(--fg);color:var(--bg)}.context-menu-item:active{opacity:.85}.context-menu-item:disabled,.context-menu-item[aria-disabled=true]{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.context-menu-item svg{flex-shrink:0;width:13px;height:13px}.context-menu-divider{background:var(--border);height:1px;margin:2px 0}.context-menu-item.danger{color:var(--accent)}.context-menu-item.danger:hover{background:var(--accent);color:var(--bg)}.dropdown-menu{background:var(--surface);border:1px solid var(--border);box-shadow:none;z-index:60;border-radius:0;flex-direction:column;min-width:180px;padding:2px;display:flex;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.dropdown-section-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--fg-3);padding:6px 12px 3px;font-size:9px;font-weight:500}.dropdown-section-label--compact{padding-top:5px}.dropdown-item{font-family:var(--font);color:var(--fg-2);cursor:pointer;text-align:left;transition:background var(--transition-fast);white-space:nowrap;background:0 0;border:none;border-radius:0;align-items:center;gap:8px;padding:7px 12px;font-size:12px;display:flex}.dropdown-item:hover{background:var(--fg);color:var(--bg)}.dropdown-item:active{opacity:.85}.dropdown-item:disabled,.dropdown-item[aria-disabled=true]{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.dropdown-item svg{flex-shrink:0;width:13px;height:13px}.theme-picker-wrapper{position:relative}.btn-icon-group .theme-picker-wrapper{margin-left:-1px}.theme-picker-btn{background:var(--surface);border:1px solid var(--border);width:32px;height:32px;color:var(--fg-2);cursor:pointer;transition:background var(--transition-fast);border-radius:0;justify-content:center;align-items:center;margin-left:-1px;display:flex}.theme-picker-btn:hover{background:var(--fg);color:var(--bg)}.theme-picker-btn svg{width:14px;height:14px}.theme-picker-dropdown{background:var(--surface);border:1px solid var(--border);z-index:60;border-radius:0;min-width:160px;padding:2px;position:absolute;top:calc(100% + 4px);right:0}.theme-picker-item{font-family:var(--mono);color:var(--fg-2);cursor:pointer;text-align:left;transition:background var(--transition-fast);white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;background:0 0;border:none;border-radius:0;align-items:center;gap:8px;width:100%;padding:7px 12px;font-size:11px;display:flex}.theme-picker-item:hover{background:var(--fg);color:var(--bg)}.theme-picker-item.active{background:var(--border)}.theme-picker-item.active:hover{background:var(--fg);color:var(--bg)}.theme-picker-swatch{border-radius:var(--radius);border:var(--border-width)solid var(--border);flex-shrink:0;width:10px;height:10px}.theme-picker-swatch[data-colorway=gruvbox]{background:var(--colorway-swatch-gruvbox)}.theme-picker-swatch[data-colorway=andromeda]{background:var(--colorway-swatch-andromeda)}.theme-picker-swatch[data-colorway=rosepine]{background:var(--colorway-swatch-rosepine)}.theme-picker-swatch[data-colorway=nord]{background:var(--colorway-swatch-nord)}.theme-picker-swatch[data-colorway=solarized]{background:var(--colorway-swatch-solarized)}.theme-picker-swatch[data-colorway=flexoki]{background:var(--colorway-swatch-flexoki)}.theme-picker-swatch[data-colorway=ink]{background:var(--colorway-swatch-ink)}.theme-picker-swatch[data-colorway=ash]{background:var(--colorway-swatch-ash)}.theme-picker-swatch[data-colorway=bone]{background:var(--colorway-swatch-bone)}.theme-picker-divider{background:var(--border);height:1px;margin:2px 0}@media (max-width:700px){.context-menu,.dropdown-menu{min-width:160px;max-width:calc(100vw - 24px)}.theme-picker-dropdown{min-width:140px;max-width:calc(100vw - 24px)}}
.floating-toolbar{background:var(--surface);border:1px solid var(--border);box-shadow:none;z-index:50;border-radius:0;align-items:center;gap:0;padding:3px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.toolbar-divider{background:var(--border);width:1px;height:20px;margin:0 3px}.new-block-btn{cursor:pointer;height:32px;color:var(--fg-2);font-family:var(--mono);transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;background:0 0;border:none;border-radius:0;align-items:center;gap:6px;padding:0 12px;font-size:11px;font-weight:500;display:flex}.new-block-btn:hover{background:var(--fg);color:var(--bg)}.new-block-btn:active{opacity:.85}.new-block-btn svg{width:14px;height:14px}.zoom-controls{background:var(--surface);border:1px solid var(--border);box-shadow:none;z-index:50;border-radius:0;flex-direction:column;gap:0;padding:2px;display:flex;position:fixed;bottom:24px;right:24px}.zoom-btn{cursor:pointer;width:28px;height:28px;color:var(--fg-2);font-size:14px;font-family:var(--mono);transition:background var(--transition-fast);background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;display:flex}.zoom-btn:hover{background:var(--fg);color:var(--bg)}.zoom-btn:active{opacity:.85}.zoom-level{font-family:var(--mono);text-align:center;color:var(--fg-3);padding:1px 0;font-size:9px;font-weight:400}@media (max-width:700px){.floating-toolbar{padding:2px;bottom:12px}.new-block-btn{font-size:var(--text-sm);padding:0 8px}.new-block-btn span{display:none}.zoom-controls{bottom:12px;right:12px}}
.question-node{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-20);flex-direction:column;gap:0;width:100%;min-height:100%;display:flex;position:relative}.question-node-header{font-family:var(--mono);font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--fg-3);margin-bottom:var(--space-12);align-items:center;gap:var(--space-6);display:flex}.question-node-header svg{width:12px;height:12px}.question-progress{font-family:var(--mono);font-size:var(--text-xs);color:var(--fg-3);margin-left:auto}.question-current{margin-top:0}.question-current.has-history{margin-top:var(--space-8)}.question-text{font-size:var(--text-xl);color:var(--fg);line-height:1.5;font-weight:var(--weight-medium);margin-bottom:var(--space-16)}.question-options{flex-direction:column;gap:0;display:flex}.question-option{font-family:var(--font);font-size:var(--text-lg);color:var(--fg-2);padding:var(--space-10)var(--space-14);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;text-align:left;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);align-items:flex-start;gap:var(--space-10);background:0 0;margin-top:-1px;display:flex}.question-option:first-child{margin-top:0}.question-option:hover{background:var(--bg-1);border-color:var(--border-strong);z-index:1;position:relative}.question-option.selected{background:var(--fg);color:var(--bg);border-color:var(--fg);z-index:2;position:relative}.question-option-key{font-family:var(--mono);font-size:var(--text-base);font-weight:var(--weight-semibold);opacity:.5;flex-shrink:0;width:18px}.question-option.selected .question-option-key{opacity:1}.question-option-text{flex:1}.question-option-custom{font-family:var(--font);font-size:var(--text-lg);color:var(--fg-2);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;text-align:left;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);align-items:flex-start;gap:var(--space-10);background:0 0;margin-top:-1px;padding:0;display:flex}.question-option-custom:focus-within{border-color:var(--border-strong);z-index:1;position:relative}.question-option-custom .question-option-key{padding:var(--space-10)0 var(--space-10)var(--space-14)}.question-custom-input{font-family:var(--font);font-size:var(--text-lg);color:var(--fg);padding:var(--space-10)var(--space-14)var(--space-10)0;background:0 0;border:none;outline:none;flex:1}.question-custom-input::placeholder{color:var(--fg-3)}.question-skip{font-family:var(--mono);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--fg-3);border:1px solid var(--border);padding:var(--space-8)var(--space-16);cursor:pointer;margin-top:var(--space-12);text-transform:uppercase;letter-spacing:var(--tracking-wide);transition:color var(--transition-fast),border-color var(--transition-fast);background:0 0;width:100%}.question-skip:hover{color:var(--fg-2);border-color:var(--border-strong)}.question-answered{padding:var(--space-8)var(--space-12);border-left:var(--space-2)solid var(--border);margin-bottom:var(--space-6)}.question-answered:last-of-type{margin-bottom:var(--space-14)}.question-answered-q{font-family:var(--mono);font-size:var(--text-sm);color:var(--fg-3);font-weight:var(--weight-medium);letter-spacing:.02em;margin-bottom:var(--space-3);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.question-answered-a{font-family:var(--font);font-size:var(--text-md);color:var(--fg);font-weight:var(--weight-medium);line-height:1.3;display:block}.question-answered-a.skipped{color:var(--fg-3);font-style:italic;font-weight:var(--weight-regular)}.question-complete{align-items:center;gap:var(--space-8);padding:var(--space-12)0 var(--space-4);flex-direction:column;display:flex}.question-complete.is-generating{align-items:flex-start}.question-complete-status{align-items:center;gap:var(--space-8);display:inline-flex}.question-complete-spinner{width:12px;height:12px;animation:1s linear infinite studio-spin}.question-complete-icon{color:var(--fg-3)}.question-complete-icon svg{width:16px;height:16px}.question-complete-text{font-family:var(--mono);font-size:var(--text-base);color:var(--fg-3);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.question-complete.is-generating .question-complete-text{color:var(--fg-2);text-transform:none;letter-spacing:var(--tracking-normal)}@media (max-width:700px){.question-node{padding:var(--space-14)}.question-text{font-size:var(--text-lg)}.question-option{padding:var(--space-12)var(--space-14)}}
body.canvas-page,body.canvas-page #root{background:var(--bg);width:100%;height:100%;color:var(--fg);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;overflow:hidden}.react-flow__background{background:var(--bg)!important}.react-flow__minimap{display:none}.react-flow__attribution{display:none!important}.react-flow__controls{display:none}.react-flow__edge-path{stroke:var(--connection);stroke-width:1.5px;stroke-dasharray:6 3}.react-flow__edge-path:hover{stroke:var(--connection-hover);stroke-width:2px;stroke-dasharray:none}.react-flow__edge.selected .react-flow__edge-path{stroke:var(--connection);stroke-width:2px;stroke-dasharray:none}@keyframes edge-flow{0%{stroke-dashoffset:18px}to{stroke-dashoffset:0}}.react-flow__edge.animated .react-flow__edge-path{stroke-dasharray:6 3;animation:.6s linear infinite edge-flow}.react-flow__connection-line{stroke:var(--connection);stroke-width:1.5px;stroke-dasharray:4 3}.react-flow__edge-interaction{stroke:#0000;stroke-width:20px;fill:none;pointer-events:stroke}.react-flow__edge-text{font-family:var(--mono);fill:var(--fg-3);font-size:9px}.react-flow__handle{opacity:0;width:8px;height:8px;transition:opacity var(--transition-slow),background var(--transition-slow);background:0 0;border:1.5px solid #0000;border-radius:0}.react-flow__node:hover .react-flow__handle,.react-flow__node.connecting .react-flow__handle,.react-flow.connecting .react-flow__handle{opacity:1;background:var(--handle-color);border-color:var(--bg)}.react-flow__handle.handle-hidden{pointer-events:none;opacity:0!important}.generate-node{background:var(--surface);border:1px solid var(--border);border-radius:0;flex-direction:column;gap:4px;width:200px;padding:16px;display:flex}.generate-title{font-family:var(--mono);color:var(--fg);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:6px;margin-bottom:6px;font-size:11px;font-weight:500;display:flex}.generate-title svg{width:12px;height:12px}.generate-btn{font-family:var(--mono);color:var(--fg-2);border:1px solid var(--border);cursor:pointer;text-align:left;transition:background var(--transition-normal),border-color var(--transition-normal);background:0 0;border-radius:0;padding:7px 10px;font-size:10px}.generate-btn:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}.generate-btn:active{opacity:.85}.generate-btn:disabled{opacity:var(--disabled-opacity);cursor:not-allowed;pointer-events:none}.toast{background:var(--fg);color:var(--bg);font-family:var(--mono);opacity:0;transition:opacity var(--transition-toast),transform var(--transition-toast);z-index:100;pointer-events:none;letter-spacing:.02em;border-radius:0;padding:6px 14px;font-size:11px;position:fixed;bottom:76px;left:50%;transform:translate(-50%)translateY(16px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.toolbar-menu-anchor{position:relative}.zoom-btn-fit{font-size:11px}@media (max-width:700px){.generate-node{width:180px;padding:var(--space-12)}.toast{font-size:var(--text-sm);padding:var(--space-4)var(--space-10);bottom:60px}.react-flow__handle{width:12px;height:12px}}
.tooltip-trigger{position:relative}.tooltip-trigger .tooltip{background:var(--fg);color:var(--bg);font-family:var(--mono);font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-wide);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--transition-normal);z-index:100;padding:4px 8px;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.tooltip-trigger .tooltip:after{content:"";border:4px solid #0000;border-top-color:var(--fg);position:absolute;top:100%;left:50%;transform:translate(-50%)}.tooltip-trigger:hover .tooltip{opacity:1}.tooltip-trigger .tooltip.tooltip-right{top:50%;bottom:auto;left:calc(100% + 6px);transform:translateY(-50%)}.tooltip-trigger .tooltip.tooltip-right:after{border:4px solid #0000;border-right-color:var(--fg);top:50%;left:auto;right:100%;transform:translateY(-50%)}.tooltip-trigger .tooltip.tooltip-bottom{top:calc(100% + 6px);bottom:auto;left:50%;transform:translate(-50%)}.tooltip-trigger .tooltip.tooltip-bottom:after{border:4px solid #0000;border-bottom-color:var(--fg);top:auto;bottom:100%;left:50%;transform:translate(-50%)}.tooltip-trigger .tooltip.tooltip-left{inset:50% calc(100% + 6px) auto auto;transform:translateY(-50%)}.tooltip-trigger .tooltip.tooltip-left:after{border:4px solid #0000;border-left-color:var(--fg);top:50%;left:100%;right:auto;transform:translateY(-50%)}@media (hover:none){.tooltip-trigger .tooltip{display:none}}
.node-base{background:var(--surface);border:var(--border-width)solid var(--border);border-radius:var(--radius);transition:border-color var(--transition-slow),box-shadow var(--transition-slow);position:relative}.node-base:hover{border-color:var(--border-strong)}.node-header{font-family:var(--mono);font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-widest);color:var(--fg-3);align-items:center;gap:var(--space-6);display:flex}.node-header svg{flex-shrink:0;width:12px;height:12px}.node-actions{top:var(--space-8);right:var(--space-8);opacity:0;transition:opacity var(--transition-normal);gap:0;display:flex;position:absolute}.node-base:hover .node-actions{opacity:1}.node-meta{font-family:var(--mono);font-size:var(--text-sm);color:var(--fg-3);align-items:center;gap:var(--space-6);margin-top:auto;display:flex}.node-meta svg{flex-shrink:0;width:11px;height:11px}.node-base.selected{border-color:var(--select)}.node-base.multi-selected{border-color:var(--select);box-shadow:0 0 0 1px var(--select)}.node-base.dragging{opacity:.7}.brief-node-input{padding:var(--space-20);gap:var(--space-12);flex-direction:column;width:100%;min-height:100%;display:flex}.brief-node-input .node-header{margin-bottom:0}.brief-input-text{font-family:var(--font);font-size:var(--text-lg);line-height:var(--leading-loose);color:var(--fg);background:var(--bg);border:var(--border-width)solid var(--border);border-radius:var(--radius);resize:vertical;width:100%;min-height:140px;padding:var(--space-12);transition:border-color var(--transition-fast);outline:none}.brief-input-text:hover,.brief-input-text:focus{border-color:var(--border-strong)}.brief-input-text::placeholder{color:var(--fg-3)}.brief-drop-zone{border:var(--border-width)dashed var(--border);padding:var(--space-16);align-items:center;gap:var(--space-8);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast);flex-direction:column;display:flex}.brief-drop-zone:hover{border-color:var(--border-strong);background:var(--bg-1)}.brief-drop-zone.drag-over{border-color:var(--accent);background:color-mix(in srgb,var(--accent)5%,var(--bg))}.brief-drop-zone-icon{color:var(--fg-3)}.brief-drop-zone-icon svg{width:20px;height:20px}.brief-drop-zone-text{font-family:var(--mono);font-size:var(--text-sm);color:var(--fg-3);text-transform:uppercase;letter-spacing:var(--tracking-wide);text-align:center}.brief-drop-zone-hint{font-family:var(--mono);font-size:var(--text-xs);color:var(--fg-3);opacity:.6;text-transform:uppercase;letter-spacing:var(--tracking-normal)}.brief-file-input{display:none}.brief-attachments{gap:var(--space-2);flex-direction:column;display:flex}.brief-attachment{align-items:center;gap:var(--space-8);padding:var(--space-6)var(--space-8);background:var(--bg-1);border:var(--border-width)solid var(--border);transition:border-color var(--transition-fast);display:flex}.brief-attachment:hover{border-color:var(--border-strong)}.brief-attachment-icon{color:var(--fg-3);flex-shrink:0}.brief-attachment-icon svg{width:12px;height:12px}.brief-attachment-info{flex:1;min-width:0}.brief-attachment-name{font-family:var(--mono);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--fg-2);letter-spacing:var(--tracking-normal);text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.brief-attachment-size{font-family:var(--mono);font-size:var(--text-xs);color:var(--fg-3);letter-spacing:var(--tracking-normal)}.brief-attachment-progress{flex:1;min-width:0}.brief-attachment-progress-bar{background:var(--border);height:2px;margin-top:var(--space-3);overflow:hidden}.brief-attachment-progress-fill{background:var(--accent);height:100%;transition:width .3s ease-out}.brief-attachment-progress-text{font-family:var(--mono);font-size:var(--text-xs);color:var(--fg-3);letter-spacing:var(--tracking-normal);margin-top:var(--space-2)}.brief-attachment-delete{width:20px;height:20px;color:var(--fg-3);cursor:pointer;opacity:0;transition:opacity var(--transition-fast),color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.brief-attachment:hover .brief-attachment-delete{opacity:1}.brief-attachment-delete:hover{color:var(--accent)}.brief-attachment.uploading{opacity:.7}.brief-attachment.error{border-color:var(--danger)}.brief-attachment.error .brief-attachment-name{color:var(--danger)}.brief-input-footer{align-items:center;gap:var(--space-8);padding-top:var(--space-12);border-top:var(--border-width)solid var(--border);display:flex}.brief-input-footer .spacer{flex:1}.brief-char-count{font-family:var(--mono);font-size:var(--text-xs);color:var(--fg-3);letter-spacing:var(--tracking-normal)}.brief-suggestions{gap:var(--space-4);flex-direction:column;display:flex}.brief-suggestions-label{font-family:var(--mono);font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--fg-3);align-items:center;gap:var(--space-4);display:flex}.brief-suggestions-label svg{width:10px;height:10px}.brief-suggestion-chips{gap:var(--space-4);flex-wrap:wrap;display:flex}.brief-suggestion{font-family:var(--font);font-size:var(--text-base);color:var(--fg-2);border:var(--border-width)solid var(--border);padding:var(--space-6)var(--space-10);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);text-align:left;line-height:var(--leading-snug);background:0 0}.brief-suggestion:hover{background:var(--fg);color:var(--bg);border-color:var(--fg)}.brief-suggestion:active{opacity:.85}.brief-suggestions-divider{height:var(--border-width);background:var(--border);margin:var(--space-4)0}.selection-box{border:var(--border-width)solid var(--select);background:var(--select-bg);pointer-events:none;z-index:100;position:absolute}.selection-count{background:var(--fg);color:var(--bg);font-family:var(--mono);font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase;padding:var(--space-4)var(--space-12);z-index:60;align-items:center;gap:var(--space-8);display:flex;position:fixed;bottom:68px;left:50%;transform:translate(-50%)}.selection-count-number{font-weight:var(--weight-semibold)}.selection-count-actions{margin-left:var(--space-8);gap:0;display:flex}.postit-node.multi-selected{box-shadow:0 0 0 2px var(--select)}.zone-node.multi-selected,.project-card.multi-selected{border-color:var(--select);box-shadow:0 0 0 1px var(--select)}.project-card.multi-selected .card-thumb:after{content:"";top:var(--space-8);left:var(--space-8);background:var(--select);border:none;justify-content:center;align-items:center;width:16px;height:16px;display:flex;position:absolute}.project-card.multi-selected .card-thumb:before{content:"";border:solid var(--bg);z-index:1;border-width:0 1.5px 1.5px 0;width:5px;height:9px;position:absolute;top:10px;left:13px;transform:rotate(45deg)}.canvas-pointer-mode{cursor:default}.canvas-node-mode{cursor:crosshair}.new-node-dropdown{bottom:calc(100% + var(--space-6));background:var(--surface);border:var(--border-width)solid var(--border);padding:var(--space-2);z-index:60;flex-direction:column;min-width:200px;display:flex;position:absolute;left:0}.new-node-item{font-family:var(--font);font-size:var(--text-md);color:var(--fg-2);padding:var(--space-8)var(--space-12);cursor:pointer;text-align:left;transition:background var(--transition-fast);white-space:nowrap;align-items:center;gap:var(--space-8);background:0 0;border:none;display:flex}.new-node-item:hover{background:var(--fg);color:var(--bg)}.new-node-item:active{opacity:.85}.new-node-item svg{flex-shrink:0;width:14px;height:14px}.new-node-item-desc{font-family:var(--mono);font-size:var(--text-xs);color:var(--fg-3);text-transform:uppercase;letter-spacing:var(--tracking-normal);margin-left:auto}.new-node-item:hover .new-node-item-desc{color:color-mix(in srgb,var(--bg)70%,transparent)}@media (max-width:700px){.brief-node-input{padding:var(--space-14)}.brief-input-text{font-size:var(--text-md);min-height:60px}.brief-drop-zone{padding:var(--space-12)}.brief-suggestion-chips{flex-direction:column}.brief-suggestion{width:100%}.selection-count{font-size:var(--text-xs);padding:var(--space-3)var(--space-8);bottom:60px}.new-node-dropdown{min-width:180px}.new-node-item-desc{display:none}}
.ai-bubble{z-index:55;flex-direction:column;align-items:flex-end;gap:8px;display:flex;position:fixed;bottom:180px;right:24px}.ai-bubble-trigger{border-radius:var(--radius);border:var(--border-width)solid var(--border);background:var(--surface);cursor:pointer;width:40px;height:40px;color:var(--fg-2);transition:transform var(--transition-fast),border-color var(--transition-fast);justify-content:center;align-items:center;display:flex;position:relative}.ai-bubble-trigger:hover{border-color:var(--border-strong)}.ai-bubble-trigger svg{width:16px;height:16px}.ai-bubble-trigger.has-suggestion:after{content:"";background:var(--accent);border-radius:50%;width:8px;height:8px;position:absolute;top:-3px;right:-3px}@keyframes ai-bubble-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.ai-bubble-trigger.has-suggestion{animation:2.4s ease-in-out infinite ai-bubble-pulse}.ai-bubble-card{background:var(--surface);border:var(--border-width)solid var(--border);transform-origin:100% 100%;flex-direction:column;gap:12px;width:320px;padding:16px;animation:.22s cubic-bezier(.34,1.56,.64,1) forwards ai-bubble-card-in;display:flex}@keyframes ai-bubble-card-in{0%{opacity:0;transform:translateY(8px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}.ai-bubble-card-header{font-family:var(--mono);font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--fg-3);align-items:center;gap:6px;display:flex}.ai-bubble-card-header svg{width:12px;height:12px}.ai-bubble-card-count{font-size:var(--text-xs);margin-left:auto}.ai-bubble-card-text{color:var(--fg);font-size:13px;line-height:1.55}.ai-bubble-card-actions{flex-direction:column;gap:0;display:flex}.ai-bubble-action{font-family:var(--font);color:var(--fg-2);border:var(--border-width)solid var(--border);cursor:pointer;text-align:left;transition:background var(--transition-fast),color var(--transition-fast);background:0 0;align-items:center;gap:8px;margin-top:-1px;padding:9px 14px;font-size:12px;display:flex}.ai-bubble-action:first-child{margin-top:0}.ai-bubble-action:hover{background:var(--fg);color:var(--bg);border-color:var(--fg);z-index:1;position:relative}.ai-bubble-action-key{font-family:var(--mono);font-size:10px;font-weight:var(--weight-semibold);opacity:.5;flex-shrink:0;width:16px}.ai-bubble-later{font-family:var(--mono);color:var(--fg-3);border:var(--border-width)solid var(--border);cursor:pointer;text-transform:uppercase;letter-spacing:var(--tracking-tight);transition:color var(--transition-fast),border-color var(--transition-fast);background:0 0;width:100%;margin-top:4px;padding:7px 16px;font-size:11px}.ai-bubble-later:hover{color:var(--fg-2);border-color:var(--border-strong)}@media (prefers-reduced-motion:reduce){.ai-bubble-trigger.has-suggestion{animation:none}.ai-bubble-card{opacity:1;animation:none;transform:none}}
@keyframes skeleton-pulse{0%,to{opacity:.55}50%{opacity:.12}}@keyframes skeleton-line-draw{0%{opacity:0;transform:scaleX(0)}40%{opacity:.5}to{opacity:.55;transform:scaleX(1)}}.skeleton{pointer-events:none;-webkit-user-select:none;user-select:none}.skeleton-block{background:var(--fg-3);opacity:.15;animation:1.8s ease-in-out infinite skeleton-pulse}.postit-node.skeleton,.postit-node[data-color].skeleton{background:var(--surface)!important;border:var(--border-width)dashed var(--border)!important;color:#0000!important}.postit-node.skeleton .postit-type,.postit-node.skeleton .postit-text,.postit-node.skeleton .postit-actions{visibility:hidden}.postit-node.skeleton:before{content:"";background:var(--fg-3);transform-origin:0;width:40px;height:6px;animation:.6s ease-out .1s both skeleton-line-draw,1.8s ease-in-out .7s infinite skeleton-pulse;position:absolute;top:16px;left:16px}.postit-node.skeleton:after{content:"";background:linear-gradient(var(--fg-3)0%,var(--fg-3)100%)0 0/60% 6px no-repeat,linear-gradient(var(--fg-3)0%,var(--fg-3)100%)0 14px/85% 6px no-repeat,linear-gradient(var(--fg-3)0%,var(--fg-3)100%)0 28px/45% 6px no-repeat,linear-gradient(var(--fg-3)0%,var(--fg-3)100%)0 42px/70% 6px no-repeat;transform-origin:0;animation:.8s ease-out .3s both skeleton-line-draw,1.8s ease-in-out 1.1s infinite skeleton-pulse;position:absolute;inset:36px 16px 16px}.project-card.skeleton{pointer-events:none;border-style:dashed}.project-card.skeleton .card-thumb{background:var(--surface);border-bottom-style:dashed}.project-card.skeleton .card-thumb .thumb-dots{visibility:hidden}.project-card.skeleton .card-thumb:after{content:"";border:var(--border-width)dashed var(--border-strong);opacity:.5;width:40px;height:40px;animation:1.8s ease-in-out infinite skeleton-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.project-card.skeleton .card-name,.project-card.skeleton .card-meta{background:var(--fg-3);color:#0000;opacity:.12;animation:1.8s ease-in-out .2s infinite skeleton-pulse;display:inline-block}.project-card.skeleton .card-name{width:60%;height:10px}.project-card.skeleton .card-meta{width:40%;height:8px;margin-top:6px}.zone-node.skeleton{border-color:var(--border);border-style:dashed}.zone-node.skeleton .zone-label{background:var(--fg-3);color:#0000;opacity:.15;width:60px;animation:1.8s ease-in-out infinite skeleton-pulse}.zone-node.skeleton .zone-actions{display:none}.zone-summary-node.skeleton{pointer-events:none;border-style:dashed}.zone-summary-node.skeleton .zone-summary-label,.zone-summary-node.skeleton .zone-summary-zone-name{background:var(--fg-3);color:#0000;opacity:.15;animation:1.8s ease-in-out infinite skeleton-pulse}.zone-summary-node.skeleton .zone-summary-text{color:#0000;background:var(--fg-3);opacity:.08;min-height:36px;animation:1.8s ease-in-out .3s infinite skeleton-pulse}.question-node.skeleton{border-style:dashed}.question-node.skeleton .question-text,.question-node.skeleton .question-options{visibility:hidden}.question-node.skeleton .question-node-header span{background:var(--fg-3);color:#0000;opacity:.15;animation:1.8s ease-in-out infinite skeleton-pulse}.generate-node.skeleton{border-style:dashed}.generate-node.skeleton .generate-title{color:#0000;opacity:.15}.generate-node.skeleton .generate-btn{background:var(--fg-3);color:#0000;opacity:.1;border-color:#0000;animation:1.8s ease-in-out infinite skeleton-pulse}.generate-node.skeleton .generate-btn:nth-child(2){animation-delay:.15s}.generate-node.skeleton .generate-btn:nth-child(3){animation-delay:.3s}@keyframes sweep{0%{background-position:-100% 0}to{background-position:200% 0}}.thinking{position:relative;overflow:hidden}.thinking:after{content:"";background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--accent)12%,transparent)30%,color-mix(in srgb,var(--accent)20%,transparent)50%,color-mix(in srgb,var(--accent)12%,transparent)70%,transparent 100%);pointer-events:none;z-index:1;background-repeat:no-repeat;background-size:50% 100%;animation:1.5s ease-in-out infinite sweep;position:absolute;inset:0}.postit-node.thinking:after{background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--postit-color,var(--accent))14%,transparent)30%,color-mix(in srgb,var(--postit-color,var(--accent))22%,transparent)50%,color-mix(in srgb,var(--postit-color,var(--accent))14%,transparent)70%,transparent 100%);background-repeat:no-repeat;background-size:50% 100%}.postit-node[data-color=yellow].thinking{--postit-color:var(--postit-yellow)}.postit-node[data-color=pink].thinking{--postit-color:var(--postit-pink)}.postit-node[data-color=green].thinking{--postit-color:var(--postit-green)}.postit-node[data-color=blue].thinking{--postit-color:var(--postit-blue)}.postit-node[data-color=orange].thinking{--postit-color:var(--postit-orange)}.postit-node[data-color=purple].thinking{--postit-color:var(--postit-purple)}.toast.thinking{overflow:hidden}.toast.thinking:after{content:"";background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--bg)15%,transparent)30%,color-mix(in srgb,var(--bg)25%,transparent)50%,color-mix(in srgb,var(--bg)15%,transparent)70%,transparent 100%);pointer-events:none;background-repeat:no-repeat;background-size:50% 100%;animation:1.5s ease-in-out infinite sweep;position:absolute;inset:0}@keyframes toast-slide-up{0%{opacity:0;transform:translate(-50%)translateY(16px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.toast.anim-slide-up{animation:toast-slide-up var(--transition-toast)ease-out forwards}@keyframes toast-slide-down{0%{opacity:1;transform:translate(-50%)translateY(0)}to{opacity:0;transform:translate(-50%)translateY(16px)}}.toast.anim-slide-down{animation:toast-slide-down var(--transition-toast)ease-in forwards}@keyframes toast-fade-in{0%{opacity:0}to{opacity:1}}.toast.anim-fade{animation:toast-fade-in var(--transition-toast)ease-out forwards;transform:translate(-50%)}@keyframes toast-progress{0%{width:100%}to{width:0}}.toast-progress{background:var(--bg);opacity:.3;height:2px;animation:3s linear forwards toast-progress;position:absolute;bottom:0;left:0}.toast.toast-success{background:var(--success);color:var(--postit-green-fg)}.toast.toast-error{background:var(--accent);color:var(--bg)}.toast.toast-warning{background:var(--warning);color:var(--postit-yellow-fg)}@keyframes node-appear{0%{opacity:0;transform:scale(.85)}70%{opacity:1;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.node-appear{animation:.28s cubic-bezier(.34,1.56,.64,1) forwards node-appear}@keyframes postit-populate{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.postit-node.populating .postit-type{animation:.15s ease-out 50ms both postit-populate}.postit-node.populating .postit-text{animation:.15s ease-out .12s both postit-populate}@keyframes content-stream{0%{opacity:0;max-height:0}to{opacity:1;max-height:200px}}.content-stream{animation:.4s ease-out forwards content-stream;overflow:hidden}@keyframes pulse-border{0%,to{border-color:var(--border)}50%{border-color:var(--accent)}}.processing{animation:2s ease-in-out infinite pulse-border}@keyframes pulse-opacity{0%,to{opacity:1}50%{opacity:.6}}.waiting{animation:2s ease-in-out infinite pulse-opacity}@keyframes edge-data-flow{0%{stroke-dashoffset:18px}to{stroke-dashoffset:0}}@keyframes edge-data-flow-reverse{0%{stroke-dashoffset:0}to{stroke-dashoffset:18px}}@keyframes edge-idle-pulse{0%,to{opacity:.6}50%{opacity:1}}.edge-idle{animation:3s ease-in-out infinite edge-idle-pulse}@keyframes zone-expand{0%{opacity:0;transform:scale(.9)}70%{opacity:1;transform:scale(1.01)}to{opacity:1;transform:scale(1)}}.zone-expand{animation:.24s cubic-bezier(.34,1.56,.64,1) forwards zone-expand}@keyframes zone-collapse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}.zone-collapse{animation:.18s ease-in forwards zone-collapse}@keyframes node-reject{0%{opacity:1;filter:saturate();transform:scale(1)rotate(0)}40%{opacity:.7;filter:saturate(.3);transform:scale(.95)rotate(-1deg)}to{opacity:0;filter:saturate(0);transform:scale(.8)rotate(-2deg)}}.node-reject{pointer-events:none;animation:.25s ease-in forwards node-reject}@keyframes node-reject-batch{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.85)}}.node-reject-batch{pointer-events:none;animation:.18s ease-in forwards node-reject-batch}@keyframes node-working-set{0%{border-color:var(--border);transform:scale(1)}35%{border-color:var(--select);transform:scale(1.03)}to{border-color:var(--border);transform:scale(1)}}.node-working-set{animation:.3s cubic-bezier(.34,1.56,.64,1) forwards node-working-set}@keyframes node-star{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.node-star{animation:.22s cubic-bezier(.34,1.56,.64,1) forwards node-star}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.generating .generate-title svg{animation:1.2s linear infinite spin}@keyframes stagger-reveal{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.generate-node.results-in .generate-btn:first-child{animation:.15s ease-out both stagger-reveal}.generate-node.results-in .generate-btn:nth-child(2){animation:.15s ease-out 40ms both stagger-reveal}.generate-node.results-in .generate-btn:nth-child(3){animation:.15s ease-out 80ms both stagger-reveal}.generate-node.results-in .generate-btn:nth-child(4){animation:.15s ease-out .12s both stagger-reveal}.generate-node.results-in .generate-btn:nth-child(5){animation:.15s ease-out .16s both stagger-reveal}@keyframes ellipsis-dot{0%,20%{opacity:0}40%,to{opacity:1}}.toast-ellipsis{display:inline}.toast-ellipsis span{opacity:0;animation:1.4s ease-in-out infinite ellipsis-dot}.toast-ellipsis span:first-child{animation-delay:0s}.toast-ellipsis span:nth-child(2){animation-delay:.2s}.toast-ellipsis span:nth-child(3){animation-delay:.4s}@media (prefers-reduced-motion:reduce){.skeleton,.postit-node.skeleton,.project-card.skeleton .card-thumb,.zone-summary-node.skeleton .zone-summary-text{background:var(--border);animation:none}.thinking:after,.toast.thinking:after{opacity:0;animation:none}.toast.anim-slide-up,.toast.anim-slide-down,.toast.anim-fade{opacity:1;animation:none}.processing,.waiting,.edge-idle,.generating .generate-title svg{animation:none}.node-appear,.zone-expand,.zone-collapse,.content-stream,.postit-node.populating .postit-type,.postit-node.populating .postit-text{opacity:1;animation:none;transform:none}.node-reject,.node-reject-batch{opacity:0;animation:none;transform:none}.node-working-set,.node-star{animation:none;transform:none}.generate-node.results-in .generate-btn{opacity:1;animation:none;transform:none}.postit-node.skeleton:before,.postit-node.skeleton:after{opacity:.4;animation:none;transform:scaleX(1)}.toast-ellipsis span{opacity:1;animation:none}}

