.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAa0ABQAAAAADOwAAAZHAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbbhwoP0hWQVJtP01WQVJGBmA/U1RBVIEcAGQvXBEICoMkgmcLFgAwhEwBNgIkAyYEIAWGXAdiDAcbOgtRlHLSRcD8TEzkdoghPRuspKefbVnJIM5yRfA8vZv9uTNJSCZY21Scrigr6qyJ/C3sE1OFKuVP3e+lxUTbYio1zb/kFdk2bufY2BlhWERRBrcDUBhB5GEpd2Cy+MDxqf9zLPX+XVsk5r+s50d6IpWLatqbdT6f2MAikiOKQocbjya2QT0DqPDX4R0jQBgAUAiCRhDA0EkvYeLk9X3I2bEWI8jBAihIANm+kUWQBgggWChcBBdFhXlAUgOCAgBA0AgKjUJ8HKvjddFCKSgAVklEBYAeEJgCQJH0qB3B+neDg4sAA4hAD0AVIEAA0IACJGeaUjMIIIhBUE/zNABjTQMBwEVRcwcYBUCObLERABAgjAA1M/ZSa9hSi4OlpsnZ2KBOVUsAZlRGl1W0NZ6gSwhQPIAFs7YFL0QS91vRQgdgx2VDAnIegKpQvwAJIoLgooBAGtCJcHizg0TDiz8vhPgIcVXaDJu37ZyDAIjFy4AAiC1JAA0olJwN6nFAACQk/zfQVUuA3t5ELKMT9hpBSRj+HBSggYCIAIEkUoC4PCIQIWHGA8+IStxf0PW15ntP22gc+Wo+BLyQAHECQiAVd+c3Ba8gZ4NOACBaLOhsbIMkAXEmuHsSAvkf4oJaAogH6nEQAzoBIEihUAwAA0AACAObAGcANYAAABaqgMmpWAhiiVyrvNyqFV8tMQ5Iyq6r9Lf7W82i8ILl2cv8zbfdJ5lnPzSnvt/XXPfRR/5pH3xA+u5uS0798EPJ3Fft33w36Wc+8E/7aIB/9fvvb1pE9erNXLB9mkw//cSg8Cnx03VGXDvZnRzKqV9Xkhn7eRHb3wVjHpg19nkZpX9bBU+vnHegrsuQcbW9Bi7oO33h+8SU0Tly/MbeYUuG1cftVz6oNxrW0qH1iezq446fkDFo/rgvTkqt7zmteFzncZ0uxXti09FFF2z+C7CODpjUudOE5NSeb3bv/mbPKcmOEzpWQ3VBgBAuj/AOY3qMm7UvgA8qo3+qvAUBBAX0wADQG4AG+jCKaSxkBe/zvcTG8jRpRZgqhCog4sd++cOo7J+/RdvaaMoc78Ri/PNPSclx6fDvG1Kt3qQFi1rq+5EaavTtt9TVvfvucYsA5wc4oESU+E1ikF9TkrOkIsIH5Fawx7SBNLnMcWlM3skBluCmQNs7GeyFvYVDamsqwhxx18n/+WdxzDgOLU1AqbUlb3m+KOT9+ONvY/7XlrdLS//5v7nN97XHj0VzJpJvz4spq0V7ioXDuv2YrSxtF/KZmvbWfKtorXSh8dfvgGu+ev/nFSaXM6jyuCE/f/EpmuP7Rqu8R98vP/+tXUdrOgKlZP9Q/s+fRF9+3CHZd4EugfPv158me9X7v/6aSMCxMJmIr//65bNXngl7+uiPP5oKx+y27D8trp+psUzMacpm80XlnYeMAct0LynxhNYgaP3dtn8/LBAi+ksr+7NvjjtJV+UXrz0uLXV1x08AZRN1S2A8EaVE5afk/dfGjz//+fdHn36Xdttz2d9/z+bawZ8/slNN1aYtq+ZPGzNuPGdwOsfYflwmHCkPgs5DcKizvdpS/3gEUMW9/lvQvWp1bGTW1fpngC/uSVYAfH3TeSusL8TtlHUD4KAAEHjahk4YpuffGwEBN/dUmpHqdHyJ3Ap8O3UlQ4gCNrMRwLBBKiskL6a+RoBi/9XGlgc8L4/CUejQxaiIyqmomdhktOhfgDbDfaNDb4+yKIPd6IgmzDa0CByijWFmL2dlSRKagTIWXeIU9HDphoZiJeBTjAefHMxDhVSRFUgVcOkW3EGMahYVMFjWHhMluB2wAcbHYqF1LpsDF9C6s+CI2fDgh4wSuFEyGadjXAmIk3CugIRibLIti9ZtC8S4VSqfikGqPaoI122XyRYLBmsOmdiiTpqK1OklUQzpMcZmQRQV4M4oJCMkfRQXK+qvjifUcQd1bRdetW/LWjacYxvcttnVjWg5h0q4xw6rZyejSpZVZ78LzC4uyDNRQ4bymHSTMyM+SZ7D75mg/7YTlmNz7W8T00h0VEiGKB+F7iWYZFvSTiA4LVxttm2ATt5EoUWLJbY4EnLGrfsvEROlHtzlKn3H9VUT5tU/2dt3/EBv7foYzV/W4upyj04woO/gh6Vwwt3WGQAA)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-vietnamese-wght-normal-qRpaaN48.woff2)format("woff2-variations");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:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-ext-wght-normal-DmpS2jIq.woff2)format("woff2-variations");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:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/plus-jakarta-sans-latin-wght-normal-eXO_dkmS.woff2)format("woff2-variations");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:Caveat;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/caveat-latin-400-normal-D6LQsQ_v.woff2)format("woff2"),url(/assets/caveat-latin-400-normal-BzhAQZkN.woff)format("woff")}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/caveat-latin-700-normal-D8_1Nw6V.woff2)format("woff2"),url(/assets/caveat-latin-700-normal-cPyBTTZN.woff)format("woff")}:root{--paper:#e9efec;--surface:#fbfdfc;--ink:#16252b;--muted:#566a6c;--line:#9db0ac;--accent:#1f49c9;--error:#a3261c;--dot:#c3d0ca;--fill-blue:#d6e4ff;--fill-green:#cfeeda;--fill-yellow:#fbefb0;--fill-orange:#ffdfbf;--fill-red:#ffd3cf;--fill-purple:#e8dbff;--fill-gray:#dfe5e3;--line-blue:#2859d9;--line-green:#1e8a58;--line-yellow:#a98500;--line-orange:#d26a10;--line-red:#cc3328;--line-purple:#7a45d0;--line-gray:#66777a;--accent-soft:#dce4fb;--decision:#ffd98a;--decision-ink:#4d3600;--note:#f7f0a8;--topic:#cfe6dc;--shadow-color:196 30% 18%;--ease:cubic-bezier(.22, .8, .24, 1);--fast:.14s;--medium:.22s;--slow:.32s;--raise-1:0 1px 1px hsl(var(--shadow-color) / .05), 0 2px 5px hsl(var(--shadow-color) / .06);--raise-2:0 1px 2px hsl(var(--shadow-color) / .06), 0 6px 16px -4px hsl(var(--shadow-color) / .14);--raise-3:0 2px 4px hsl(var(--shadow-color) / .06), 0 14px 34px -8px hsl(var(--shadow-color) / .22);--glass:color-mix(in srgb, var(--surface) 86%, transparent);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font:16px/1.4 Plus Jakarta Sans Variable,Plus Jakarta Sans,system-ui,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--shadow-color:200 40% 2%;--paper:#111a1e;--surface:#1b272c;--ink:#e5efec;--muted:#9bb0af;--line:#5b7274;--accent:#9db5ff;--error:#ff9c91;--dot:#27363a;--fill-blue:#24386b;--fill-green:#1d4a36;--fill-yellow:#5a5015;--fill-orange:#65401c;--fill-red:#662c28;--fill-purple:#46306f;--fill-gray:#39474b;--line-blue:#8fb0ff;--line-green:#6fd3a8;--line-yellow:#e6cb5c;--line-orange:#f4a55f;--line-red:#ff9c91;--line-purple:#c4a6ff;--line-gray:#a6b8ba;--accent-soft:#233056;--decision:#6b4e12;--decision-ink:#ffe7b3;--note:#5a5416;--topic:#23443a}}:root[data-theme=dark]{--shadow-color:200 40% 2%;--paper:#111a1e;--surface:#1b272c;--ink:#e5efec;--muted:#9bb0af;--line:#5b7274;--accent:#9db5ff;--error:#ff9c91;--dot:#27363a;--fill-blue:#24386b;--fill-green:#1d4a36;--fill-yellow:#5a5015;--fill-orange:#65401c;--fill-red:#662c28;--fill-purple:#46306f;--fill-gray:#39474b;--line-blue:#8fb0ff;--line-green:#6fd3a8;--line-yellow:#e6cb5c;--line-orange:#f4a55f;--line-red:#ff9c91;--line-purple:#c4a6ff;--line-gray:#a6b8ba;--accent-soft:#233056;--decision:#6b4e12;--decision-ink:#ffe7b3;--note:#5a5416;--topic:#23443a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0}a{color:var(--accent)}h1,h2{font-family:Plus Jakarta Sans Variable,system-ui,sans-serif}.brand{letter-spacing:-.02em;font:800 20px/1 Plus Jakarta Sans Variable,system-ui,sans-serif}.muted{color:var(--muted)}.page{min-height:100vh}.bar{padding:12px max(16px, env(safe-area-inset-right));background:var(--surface);border-bottom:1.5px solid var(--ink);justify-content:space-between;align-items:center;gap:12px;display:flex}.bar-end{align-items:center;gap:12px;min-width:0;display:flex}.home{max-width:760px;margin:0 auto;padding:32px 16px}.auth{justify-items:center;gap:20px;padding:56px 16px;display:grid}.form{background:var(--surface);border:1.5px solid var(--ink);border-radius:6px;gap:14px;width:min(100%,360px);padding:24px;display:grid}.form h2,.form p{margin:0}label{gap:4px;font-size:14px;display:grid}input{font:inherit;color:inherit;border:1.5px solid var(--line);background:0 0;border-radius:5px;padding:9px 10px}.button{font:inherit;color:inherit;border:1.5px solid var(--line);cursor:pointer;background:0 0;border-radius:6px;padding:8px 12px;font-size:14px;text-decoration:none;display:inline-block}.button:disabled{opacity:.6;cursor:progress}.error{color:var(--error);font-size:14px}.google{min-height:40px}.fields{gap:14px;display:grid}.notice{font-size:14px}.banner{padding:10px max(16px, env(safe-area-inset-right));background:var(--surface);border-bottom:1.5px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-size:14px;display:flex}.editor{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.editor-bar{flex-wrap:wrap;padding-block:8px}.editor .brand{color:var(--ink);text-decoration:none}.segments{border:1.5px solid var(--ink);border-radius:7px;display:flex;overflow:hidden}.segments button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;min-height:30px;padding:5px 10px;font-size:13px}.segments button+button{border-left:1.5px solid var(--ink)}.segments button[aria-pressed=true]{color:var(--surface);background:var(--ink)}.editor .bar-end{flex-wrap:wrap;gap:6px;margin-left:auto}.editor .button{min-height:30px;padding:5px 10px;font-size:13px}.editor select.button{background:var(--surface)}.button:disabled{cursor:default;opacity:.45}.canvas{cursor:text;flex:1;min-height:0;position:relative}.canvas .react-flow{--xy-background-color:transparent;background-color:var(--paper);background-image:radial-gradient(var(--dot) 1.2px, transparent 1.3px);background-size:22px 22px}.canvas .react-flow__pane{cursor:text}.canvas .react-flow__pane.dragging{cursor:grabbing}.canvas .react-flow__handle{visibility:hidden;border:0;width:1px;min-width:0;height:1px;min-height:0}.canvas .react-flow__node{cursor:grab;background:0 0;border:0;padding:0}.canvas .react-flow__node.dragging{cursor:grabbing;z-index:5}.canvas .react-flow__arrowhead *{fill:var(--line);stroke:var(--line)}.route.flow,.route.note{stroke:var(--line);stroke-width:2px}.route.dashed{stroke-dasharray:7 5}.route.dotted{stroke-dasharray:2 5;stroke-linecap:round}.react-flow__edge{cursor:pointer}.route.ghost{stroke:var(--accent);stroke-width:2px;stroke-dasharray:5 5}.canvas .port-hidden{pointer-events:none}.canvas .react-flow__node:hover .box:not(.ghost) .port,.canvas .box.current:not(.ghost) .port{visibility:visible;background:var(--accent);border:2px solid var(--surface);cursor:crosshair;border-radius:50%;width:13px;height:13px}.react-flow__connection-path{stroke:var(--accent);stroke-width:2px}.group-box{box-sizing:border-box;color:var(--muted);background:color-mix(in srgb, var(--accent-soft) 35%, transparent);border:1.5px dashed var(--line);cursor:grab;border-radius:10px;position:relative}.group-name{pointer-events:all;cursor:text;font-size:13px;font-weight:700;position:absolute;top:8px;left:12px}.group-editor{pointer-events:all;gap:4px;display:flex;position:absolute;top:4px;left:8px}.group-editor input{width:120px;padding:2px 5px;font-size:13px}.group-editor button{color:var(--ink);background:var(--surface);border:1px solid var(--line);white-space:nowrap;cursor:pointer;border-radius:4px;padding:2px 6px;font-size:12px}.canvas .react-flow__node-group-box{cursor:grab}.edge-editor{z-index:8;background:var(--surface);border:1.5px solid var(--ink);pointer-events:all;border-radius:5px;gap:4px;padding:5px;display:grid;position:absolute}.edge-row{align-items:center;gap:3px;display:flex}.edge-editor .remove{margin-left:auto}.edge-editor input{box-sizing:border-box;width:100%;padding:3px 5px;font-size:13px}.edge-editor button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent)}.edge-editor button{white-space:nowrap;color:var(--ink);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:4px;padding:3px 6px;font-size:12px}.edge-label{color:var(--ink);background:var(--paper);pointer-events:all;cursor:text;padding:0 3px;font:500 12px IBM Plex Mono,ui-monospace,Menlo,monospace;position:absolute}.box{box-sizing:border-box;width:186px;color:var(--ink);background:var(--surface);border:1.5px solid var(--ink);text-align:center;overflow-wrap:anywhere;border-radius:5px;padding:10px 12px;font-size:15px;line-height:1.3;position:relative}.box .text{white-space:pre-wrap;display:block;position:relative}.box[data-role=title]{width:auto;min-width:160px;max-width:280px;color:var(--surface);background:var(--ink);border-radius:999px;padding:12px 22px;font:600 17px/1.2 Plus Jakarta Sans Variable,system-ui,sans-serif}.box[data-role=topic]{background:var(--topic);border-color:#0000;border-radius:12px;font-weight:700}.box[data-role=note]{background:var(--note);text-align:left;border-color:#0000;border-radius:2px;font-size:13px}.box[data-role=end],.box[data-role=start]{border-radius:999px;width:110px}.box.outlined{color:var(--ink);background:0 0;border:0;border-radius:0;place-items:center;font:400 15px/1.3 Plus Jakarta Sans Variable,Plus Jakarta Sans,system-ui,sans-serif;display:grid}.box[data-shape=rectangle][data-role=title],.box[data-shape=rounded][data-role=title]{color:var(--surface)}.box[data-shape=rectangle]:not([data-role=note]){border-radius:5px}.box[data-shape=rounded]{border-radius:12px}.box[data-shape=pill]{border-radius:999px}.box[data-shape=diamond]{width:236px;min-height:108px;color:var(--decision-ink);padding:26px 56px;font-weight:700}.box[data-shape=input_output]{width:204px;min-height:52px;padding:10px 34px}.box[data-shape=database]{width:170px;min-height:92px;padding:24px 14px 12px}.box[data-shape=document]{width:186px;min-height:68px;padding:10px 14px 20px}.box[data-shape=circle]{width:132px;min-height:132px;padding:24px}.box[data-shape=queue]{width:186px;min-height:58px;padding:10px 40px 10px 14px}.box[data-shape=cache]{width:170px;min-height:64px;padding:12px 24px}.box[data-shape=external]{width:186px;min-height:52px;padding:10px 14px}.shape{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.shape>*{fill:var(--surface);stroke:color-mix(in srgb, var(--ink) 32%, transparent);stroke-width:1.5px;vector-effect:non-scaling-stroke}.shape .line{fill:none}.shape .dashed{stroke-dasharray:6 4}.box[data-shape=diamond] .shape>*{fill:var(--decision)}.box.current .shape>*{stroke:var(--accent);stroke-width:3px}.box.dragging{opacity:.92}.box.ghost{color:var(--ink);background:var(--accent-soft);border:1.5px dashed var(--accent);cursor:text}.box.ghost[data-role=title]{width:280px;font:600 17px/1.2 Plus Jakarta Sans Variable,system-ui,sans-serif}.box.ghost.outlined{background:0 0;border:0}.box.ghost .shape>*{fill:var(--accent-soft);stroke:var(--accent);stroke-dasharray:5 5}.box.ghost[data-role=note]{background:var(--note)}.box textarea{box-sizing:border-box;width:100%;color:inherit;font:inherit;text-align:inherit;resize:none;background:0 0;border:0;outline:none;padding:0;display:block;position:relative;overflow:hidden}.box textarea::placeholder{color:var(--muted);opacity:1;font-weight:400}.hint{color:var(--paper);background:var(--accent);white-space:nowrap;pointer-events:none;border-radius:3px;margin-top:7px;padding:5px 7px;font:500 11px/1 IBM Plex Mono,ui-monospace,Menlo,monospace;position:absolute;top:100%;left:50%;transform:translate(-50%)}.pin{opacity:0;transition:opacity .12s}.box:hover .pin,.pin:focus-visible{opacity:1}@media (pointer:coarse){.pin{opacity:1}}.suggestions{z-index:9;background:var(--surface);border:1.5px solid var(--ink);border-radius:6px;min-width:220px;margin:6px 0 0;padding:3px;list-style:none;display:grid;position:absolute;top:100%;left:50%;transform:translate(-50%)}.suggestions button{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:3px;padding:5px 8px;font-size:14px}.suggestions button[aria-pressed=true],.suggestions button:hover{background:var(--accent-soft)}.suggestion-hint{color:var(--muted);padding:3px 8px;font-size:12px}.pin{width:26px;height:26px;color:var(--ink);background:var(--surface);border:1.5px solid var(--ink);cursor:pointer;border-radius:50%;padding:0;font:500 13px/1 IBM Plex Mono,ui-monospace,Menlo,monospace;position:absolute;top:-10px;right:-10px}.box[data-shape=diamond] .pin{top:12px;right:44px}.shape-menu{background:var(--surface);border:1.5px solid var(--ink);border-radius:7px;flex-wrap:wrap;justify-content:center;gap:2px;max-width:min(92vw,440px);padding:4px;display:flex}.shape-menu button{min-width:34px;height:34px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0 6px;font-size:13px;display:grid}.shape-menu button:hover:not(:disabled){background:var(--accent-soft)}.shape-menu button[aria-pressed=true]{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}.shape-menu button:disabled{color:var(--muted);opacity:.5;cursor:default}.shape-icon{width:22px;height:22px;overflow:visible}.shape-icon *{fill:none;stroke:currentColor;stroke-width:6px}.drop-hint{z-index:6;color:var(--accent);background:color-mix(in srgb, var(--accent-soft) 60%, transparent);border:2px dashed var(--accent);pointer-events:none;border-radius:8px;place-items:center;font-weight:700;display:grid;position:absolute;inset:12px}.zoom{gap:4px;display:flex}.zoom .button{background:var(--surface)}.hints{padding:8px max(16px, env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));color:var(--muted);background:var(--surface);border-top:1.5px solid var(--ink);flex-wrap:wrap;align-items:center;gap:6px 16px;font-size:13px;display:flex}.keys{flex-wrap:wrap;gap:4px 14px;display:flex}kbd{color:var(--ink);border:1px solid var(--line);border-radius:3px;padding:1px 4px;font:500 11px IBM Plex Mono,ui-monospace,Menlo,monospace}.touch-keys{gap:6px;display:none}.status{color:var(--ink);margin-left:auto}@media (pointer:coarse){.keys{display:none}.touch-keys{display:flex}}@media (width<=640px){.editor .bar-end{margin-left:0}.status{flex-basis:100%;margin-left:0}}.workspace{flex:1;min-height:0;display:flex;position:relative}.workspace .canvas{min-width:0}.ai-panel{z-index:10;top:12px;right:max(12px, env(safe-area-inset-right));background:var(--surface);border:1.5px solid var(--ink);border-radius:8px;gap:10px;width:min(340px,100vw - 24px);padding:14px;font-size:14px;display:grid;position:absolute}.ai-panel header{justify-content:space-between;align-items:center;display:flex}.ai-panel h2{margin:0;font-size:17px}.ai-panel .close{width:28px;height:28px;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;font-size:18px}.ai-panel textarea{box-sizing:border-box;width:100%;min-height:104px;color:inherit;border:1.5px solid var(--line);font:inherit;resize:vertical;background:0 0;border-radius:5px;padding:8px 9px}.ai-panel select{color:inherit;background:var(--surface);border:1.5px solid var(--line);font:inherit;border-radius:5px;padding:6px}.ai-panel p{margin:0}.ai-panel .actions{align-items:center;gap:8px;display:flex}.ai-panel .remaining{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}.editor .button[aria-pressed=true]{border-color:var(--accent)}.box[data-color]:not(.outlined){color:var(--ink);background:var(--fill);border-color:var(--line-color)}.box[data-color].outlined{color:var(--ink)}.box[data-color] .shape>*{fill:var(--fill);stroke:var(--line-color)}.box[data-color].outlined .shape .line{fill:none}[data-color=blue]{--fill:var(--fill-blue);--line-color:var(--line-blue)}[data-color=green]{--fill:var(--fill-green);--line-color:var(--line-green)}[data-color=yellow]{--fill:var(--fill-yellow);--line-color:var(--line-yellow)}[data-color=orange]{--fill:var(--fill-orange);--line-color:var(--line-orange)}[data-color=red]{--fill:var(--fill-red);--line-color:var(--line-red)}[data-color=purple]{--fill:var(--fill-purple);--line-color:var(--line-purple)}[data-color=gray]{--fill:var(--fill-gray);--line-color:var(--line-gray)}.swatch,.shape-menu button.swatch,.edge-editor button.swatch{background:var(--fill);border:2px solid var(--line-color);cursor:pointer;border-radius:50%;width:22px;min-width:22px;height:22px;padding:0}.swatch.none,.shape-menu button.swatch.none,.edge-editor button.swatch.none{background:linear-gradient(135deg, var(--surface) 46%, var(--error) 47%, var(--error) 53%, var(--surface) 54%);border:1.5px solid var(--line)}.shape-menu button.swatch[aria-pressed=true],.edge-editor button.swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--surface), 0 0 0 3.5px var(--ink);background:var(--fill)}.shape-menu button.swatch:hover:not(:disabled){background:var(--fill)}.menu-gap{width:100%;height:0}.toolbox{background:var(--surface);border:1.5px solid var(--ink);border-radius:7px;gap:2px;max-height:calc(100dvh - 190px);padding:4px;display:grid;overflow-y:auto}.toolbox button{width:36px;height:34px;color:var(--ink);cursor:grab;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:grid}.toolbox button:hover{background:var(--accent-soft)}.toolbox button:active{cursor:grabbing}.diagrams{gap:16px;max-width:1120px;margin:0 auto;padding:28px 16px 48px;display:grid}.diagrams-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.diagrams-top h1{margin:0}.diagrams-tools{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.diagrams-tools input{max-width:380px;min-height:36px;font:inherit;color:inherit;background:var(--surface);border:1.5px solid var(--line);border-radius:6px;flex:220px;padding:6px 10px}.cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.card{background:var(--surface);border:1.5px solid var(--line);border-radius:8px;align-content:start;min-width:0;display:grid;overflow:hidden}.thumb{height:150px;color:var(--muted);background:var(--paper);border-bottom:1.5px solid var(--line);place-items:center;padding:10px;display:grid}.thumb svg{width:100%;height:130px}.thumb-empty{font-size:13px}.card-body{gap:2px;min-width:0;padding:10px 12px 6px;display:grid}.card-body h2{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:15px;overflow:hidden}.card-body input{min-width:0;font:inherit;color:inherit;background:var(--paper);border:1.5px solid var(--accent);border-radius:4px;padding:3px 5px;font-size:14px}.card-actions{flex-wrap:wrap;gap:5px;padding:6px 12px 12px;display:flex}.card-actions .button{padding:4px 8px;font-size:12.5px}.title-field{min-width:90px;font:inherit;color:inherit;text-overflow:ellipsis;background:0 0;border:1.5px solid #0000;border-radius:5px;flex:0 200px;padding:4px 7px;font-size:14px;font-weight:700}.title-field:hover,.title-field:focus{border-color:var(--line);background:var(--surface)}.save-status{white-space:nowrap;min-width:74px;font-size:12.5px}.doc-panel{background:var(--surface);border-left:1.5px solid var(--ink);grid-template-rows:auto auto auto minmax(0,1fr);gap:10px;width:min(420px,100%);min-height:0;padding:12px;display:grid}.doc-panel>header{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.doc-title{gap:2px;min-width:0;font-size:12.5px;display:grid}.doc-title h2{overflow-wrap:anywhere;margin:0;font-size:15px}.doc-actions{flex-wrap:wrap;gap:6px;display:flex}.doc-view{min-height:0;font-size:14px;overflow:auto}.doc-view iframe{border:1px solid var(--line);background:#fff;width:100%;height:100%;min-height:420px}.doc-view img{max-width:100%;height:auto;display:block}.doc-view pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font:12.5px/1.45 IBM Plex Mono,ui-monospace,Menlo,monospace}.version-form{gap:6px;display:flex}.version-form input{min-width:0;font:inherit;color:inherit;background:var(--paper);border:1.5px solid var(--line);border-radius:5px;flex:1;padding:5px 7px;font-size:13.5px}.versions{gap:6px;margin:0;padding:0;list-style:none;display:grid}.versions li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:7px 0;display:flex}.versions span{overflow-wrap:anywhere;gap:1px;min-width:0;display:grid}.conflict{z-index:30;background:#00000073;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.conflict>div{background:var(--surface);border:1.5px solid var(--ink);border-radius:8px;gap:8px;width:min(440px,100%);padding:18px;display:grid}.conflict h2{margin:0;font-size:18px}.conflict p{margin:0}.conflict-actions{flex-wrap:wrap;gap:8px;padding-top:6px;display:flex}.file-thumb{pointer-events:none;border-radius:4px;place-items:center;width:168px;max-width:100%;max-height:150px;margin:2px auto 6px;display:grid;position:relative;overflow:hidden}.file-thumb img{border:1px solid var(--line);border-radius:4px;width:100%;height:auto;display:block}.file-thumb.uploading{opacity:.55}.file-thumb:not(.has-preview){padding:14px 0 8px}.box[data-file]{min-width:200px}.box[data-file][data-shape=document]{padding-bottom:32px}.box-icon{position:relative}.file-type{color:var(--accent);background:var(--accent-soft);border-radius:3px;padding:2px 6px;font:500 11px IBM Plex Mono,ui-monospace,Menlo,monospace}@media (width<=700px){.doc-panel{z-index:12;border-left:0;width:100%;position:absolute;inset:0}}.export-anchor{position:relative}.export-menu{z-index:20;background:var(--surface);border:1.5px solid var(--ink);border-radius:7px;gap:6px;width:230px;padding:10px;font-size:13px;display:grid;position:absolute;top:calc(100% + 6px);right:0}.export-menu .button{text-align:left}.export-menu p{margin:2px 0 0}.share-form{gap:8px;font-size:13.5px;display:grid}.share-form label{gap:3px;display:grid}.share-form input,.share-form select,.share-lock input{min-width:0;font:inherit;color:inherit;background:var(--paper);border:1.5px solid var(--line);border-radius:5px;padding:6px 8px}.share-form input:disabled{opacity:.55}.share-made{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.share-made small{grid-column:1/-1}.shared-title{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:15px;overflow:hidden}.share-lock{gap:12px;max-width:340px;display:grid}.share-lock h1{margin:0;font-size:24px}.share-lock label{gap:4px;display:grid}.read-only .group-name,.read-only .edge-label{pointer-events:none}.read-only .react-flow__edge{cursor:default}.box.sized{place-items:center;display:grid}.box.sized .text{max-width:100%}.resize{z-index:3;position:absolute}.resize.n,.resize.s{cursor:ns-resize;height:10px;left:10px;right:10px}.resize.e,.resize.w{cursor:ew-resize;width:10px;top:10px;bottom:10px}.resize.n{top:-5px}.resize.s{bottom:-5px}.resize.e{right:-5px}.resize.w{left:-5px}.resize.ne,.resize.nw,.resize.se,.resize.sw{box-sizing:border-box;background:var(--surface);border:2px solid var(--accent);border-radius:2px;width:11px;height:11px}.resize.ne{cursor:nesw-resize;top:-6px;right:-6px}.resize.nw{cursor:nwse-resize;top:-6px;left:-6px}.resize.se{cursor:nwse-resize;bottom:-6px;right:-6px}.resize.sw{cursor:nesw-resize;bottom:-6px;left:-6px}.canvas .react-flow__node:hover>.group-box>.port{visibility:visible;background:var(--accent);border:2px solid var(--surface);width:13px;height:13px}.toolbox .component-tool{border-top:1px solid var(--line);border-radius:0 0 4px 4px}@keyframes pop{0%{opacity:0;scale:.94}to{opacity:1;scale:1}}@keyframes slide-in{0%{opacity:0;translate:14px}to{opacity:1;translate:0}}@keyframes fade-in{0%{opacity:0}}@keyframes rise{0%{opacity:0;translate:0 6px}to{opacity:1;translate:0}}.exporting,.exporting *{transition:none!important;animation:none!important}.button,.segments button,.toolbox button,.shape-menu button,.edge-editor button,.dock-button,.suggestions button,.title-field,input,select{transition:background-color var(--fast) var(--ease), border-color var(--fast) var(--ease), color var(--fast) var(--ease), box-shadow var(--fast) var(--ease), opacity var(--fast) var(--ease)}.editor .button,.segments button,.dock-button{white-space:nowrap}.editor select.button.theme{width:auto;padding-right:6px}.editor-bar{z-index:15;padding:8px max(14px, env(safe-area-inset-right)) 8px max(14px, env(safe-area-inset-left));background:var(--glass);-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid color-mix(in srgb, var(--line) 55%, transparent);box-shadow:var(--raise-1);flex-wrap:nowrap;justify-content:flex-start;gap:12px;display:flex;position:relative}.bar-start{flex:1 1 0;align-items:center;gap:8px;min-width:0;display:flex}.editor-bar .segments.sliding{flex:none}.editor .bar-end{flex-wrap:nowrap;flex:1 1 0;justify-content:flex-end;gap:6px;min-width:max-content;margin-left:0}.cluster{border-left:1px solid color-mix(in srgb, var(--line) 50%, transparent);align-items:center;gap:2px;padding-left:6px;display:flex}.cluster:first-child{border-left:0;padding-left:0}.editor .button.quiet{background:0 0;border-color:#0000}.editor .button.quiet:hover:not(:disabled){background:color-mix(in srgb, var(--accent-soft) 70%, transparent)}.editor .button.quiet[aria-pressed=true],.editor .button.quiet[aria-expanded=true]{color:var(--accent);background:var(--accent-soft);border-color:#0000}.editor .button.primary{box-shadow:var(--raise-1);align-items:center;gap:6px;display:inline-flex}.editor .button.primary:hover{box-shadow:var(--raise-2)}.editor .button.primary[aria-pressed=true]{background:var(--accent);border-color:var(--accent)}.spark{fill:currentColor;width:13px;height:13px}.live{align-items:center;gap:6px;display:inline-flex}.live-dot{background:var(--line);width:7px;height:7px;transition:background-color var(--medium) var(--ease), box-shadow var(--medium) var(--ease);border-radius:50%}.live[aria-pressed=true] .live-dot{background:var(--line-green);box-shadow:0 0 0 3px color-mix(in srgb, var(--line-green) 22%, transparent)}.editor .button.live[aria-pressed=true]{color:var(--ink);background:0 0}.theme{max-width:132px}.save-status{transition:opacity var(--medium) var(--ease);align-items:center;gap:6px;display:inline-flex}.save-status:before{content:"";background:var(--line-green);width:6px;height:6px;transition:background-color var(--medium) var(--ease);border-radius:50%}.save-status[data-state=saving]:before,.save-status[data-state=unsaved]:before{background:var(--line-yellow)}.save-status[data-state=offline]:before,.save-status[data-state=too_large]:before{background:var(--error)}.save-status:empty:before{display:none}.segments.sliding{isolation:isolate;background:color-mix(in srgb, var(--paper) 80%, var(--surface));border:1px solid color-mix(in srgb, var(--line) 55%, transparent);border-radius:9px;gap:2px;padding:3px;position:relative}.segments.sliding button{z-index:1;min-height:28px;transition:color var(--medium) var(--ease);border:0;border-radius:6px;padding:4px 11px;position:relative}.segments.sliding button+button{border-left:0}.segments.sliding button[aria-pressed=true]{color:var(--surface);background:0 0}.segments.sliding button:not([aria-pressed=true]):hover{color:var(--accent)}.segments.sliding .marker{z-index:0;background:var(--ink);box-shadow:var(--raise-1);transition:transform var(--slow) var(--ease), width var(--slow) var(--ease);border-radius:6px;position:absolute;top:3px;bottom:3px;left:0}.canvas .react-flow{background-image:radial-gradient(color-mix(in srgb, var(--dot) 85%, transparent) 1px, transparent 1.2px);background-size:20px 20px}.box:not(.outlined):not(.ghost){box-shadow:var(--raise-1)}.react-flow__node:hover .box:not(.outlined):not(.ghost):not(.current){box-shadow:var(--raise-2)}.box.current:not(.outlined){box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent), 0 0 0 1.5px var(--accent), var(--raise-2)}.box .shape{filter:drop-shadow(0 1px 1.5px hsl(var(--shadow-color) / .09));transition:filter var(--medium) var(--ease)}.react-flow__node:hover .box .shape{filter:drop-shadow(0 3px 6px hsl(var(--shadow-color) / .16))}.shape>*{transition:stroke var(--medium) var(--ease), stroke-width var(--medium) var(--ease), fill var(--medium) var(--ease)}.box.current .shape>*{stroke-width:2.25px}.box.drop{box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 30%, transparent), 0 0 0 1.5px var(--accent)}.box.dragging{opacity:.94;box-shadow:var(--raise-3)!important}.box.ghost{transition:background-color var(--medium) var(--ease), border-color var(--medium) var(--ease)}.box.ghost:focus-within{background:color-mix(in srgb, var(--accent-soft) 70%, var(--surface))}.canvas .react-flow__handle.port{visibility:hidden;opacity:0;background:var(--accent);border:2px solid var(--surface);width:7px;height:7px;transition:opacity var(--fast) var(--ease), width var(--fast) var(--ease), height var(--fast) var(--ease), visibility 0s linear var(--fast);border-radius:50%}.canvas .react-flow__node:hover .box:not(.ghost) .port,.canvas .box.current:not(.ghost) .port,.canvas .react-flow__node:hover>.group-box>.port{visibility:visible;opacity:1;width:12px;height:12px;transition-delay:0s}.route{transition:stroke var(--medium) var(--ease), stroke-width var(--medium) var(--ease), opacity var(--medium) var(--ease)}.route.lit{stroke:color-mix(in srgb, var(--accent) 62%, var(--line));stroke-width:2.4px}.canvas .react-flow__arrowhead *{transition:fill var(--medium) var(--ease), stroke var(--medium) var(--ease)}.edge-label{transition:background-color var(--fast) var(--ease), color var(--fast) var(--ease);border-radius:4px}.edge-label:hover{background:var(--accent-soft)}.group-box{border-color:color-mix(in srgb, var(--line) 80%, transparent);background:color-mix(in srgb, var(--accent-soft) 26%, transparent);transition:background-color var(--medium) var(--ease), border-color var(--medium) var(--ease), box-shadow var(--medium) var(--ease);border-radius:14px}.react-flow__node:hover>.group-box{background:color-mix(in srgb, var(--accent-soft) 40%, transparent);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.group-name{letter-spacing:.01em}.toolbox,.shape-menu,.edge-editor,.export-menu,.suggestions,.zoom,.shortcuts,.ai-panel{background:var(--glass);-webkit-backdrop-filter:saturate(1.4)blur(12px);backdrop-filter:saturate(1.4)blur(12px);border:1px solid color-mix(in srgb, var(--line) 50%, transparent);box-shadow:var(--raise-2)}.toolbox{border-radius:12px;gap:3px;padding:5px}.toolbox button{border-radius:7px;position:relative}.toolbox button:hover{background:var(--accent-soft);color:var(--accent)}.toolbox button:after{content:attr(title);color:var(--surface);background:var(--ink);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--fast) var(--ease), transform var(--fast) var(--ease);border-radius:6px;padding:4px 8px;font-size:12px;position:absolute;top:50%;left:calc(100% + 10px);transform:translate(-4px,-50%)}.toolbox button:hover:after{opacity:1;transition-delay:.25s;transform:translateY(-50%)}.toolbox .component-tool{box-shadow:0 -4px 0 -3px color-mix(in srgb, var(--line) 50%, transparent);border-top:0;border-radius:7px;margin-top:3px}.shape-menu{animation:pop var(--medium) var(--ease);border-radius:12px;padding:6px}.shape-menu button{border-radius:7px}.edge-editor{animation:pop var(--medium) var(--ease);border-radius:10px;padding:7px}.edge-editor button{border-radius:6px}.export-menu{animation:pop var(--medium) var(--ease);transform-origin:100% 0;border-radius:12px}.suggestions{animation:pop var(--fast) var(--ease);border-radius:10px}.zoom{border-radius:10px;gap:0;padding:3px}.zoom .button{background:0 0;border-color:#0000;min-width:32px}.zoom .button:hover{background:var(--accent-soft)}.ai-panel{animation:slide-in var(--slow) var(--ease);border-radius:14px}.doc-panel{border-left:1px solid color-mix(in srgb, var(--line) 55%, transparent);box-shadow:-10px 0 30px -18px hsl(var(--shadow-color) / .35);animation:slide-in var(--slow) var(--ease)}.hint{animation:fade-in var(--medium) var(--ease);border-radius:6px}.pin{box-shadow:var(--raise-1);transition:opacity var(--fast) var(--ease), transform var(--fast) var(--ease)}.pin:hover{transform:scale(1.08)}.resize.ne,.resize.nw,.resize.se,.resize.sw{box-shadow:var(--raise-1);animation:fade-in var(--fast) var(--ease);border-radius:3px}.drop-hint{animation:fade-in var(--fast) var(--ease);border-radius:16px}.conflict{animation:fade-in var(--medium) var(--ease)}.conflict>div{border:1px solid color-mix(in srgb, var(--line) 55%, transparent);box-shadow:var(--raise-3);animation:pop var(--slow) var(--ease);border-radius:14px}.workspace{isolation:isolate}.dock{z-index:9;left:max(14px, env(safe-area-inset-left));bottom:calc(14px + env(safe-area-inset-bottom));pointer-events:none;align-items:center;gap:8px;max-width:calc(100% - 170px);display:flex;position:absolute}.dock>*{pointer-events:auto}.dock-button{width:30px;height:30px;color:var(--muted);background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb, var(--line) 50%, transparent);box-shadow:var(--raise-1);cursor:pointer;border-radius:50%;flex:none;padding:0;font:700 14px/1 Plus Jakarta Sans Variable,system-ui,sans-serif}.dock-button:hover,.dock-button[aria-expanded=true]{color:var(--accent);background:var(--accent-soft)}.hint-line{min-width:0;color:var(--muted);background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap;text-overflow:ellipsis;animation:rise var(--slow) var(--ease);border-radius:999px;padding:6px 12px;font-size:13px;overflow:hidden}.hint-line kbd{background:var(--surface)}kbd{border-color:color-mix(in srgb, var(--line) 70%, transparent);box-shadow:0 1px 0 color-mix(in srgb, var(--line) 60%, transparent);border-radius:4px}.shortcuts{width:min(760px,100vw - 28px);max-height:min(70dvh,520px);animation:pop var(--medium) var(--ease);transform-origin:0 100%;border-radius:14px;padding:14px 16px 16px;position:absolute;bottom:calc(100% + 10px);left:0;overflow:auto}.shortcuts header{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.shortcuts h2{margin:0;font-size:17px}.shortcut-groups{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px 28px;display:grid}.shortcuts h3{color:var(--muted);margin:0 0 6px;font-size:13px;font-weight:700}.shortcuts dl{gap:5px;margin:0;display:grid}.shortcuts dl div{grid-template-columns:150px 1fr;align-items:baseline;gap:10px;font-size:13px;display:grid}.shortcuts dt{color:var(--ink);white-space:nowrap}.shortcuts dd{color:var(--muted);margin:0}.status.toast{z-index:9;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));max-width:min(520px,100% - 32px);color:var(--surface);background:var(--ink);box-shadow:var(--raise-3);pointer-events:none;opacity:0;transition:opacity var(--medium) var(--ease), transform var(--medium) var(--ease);border-radius:10px;margin:0;padding:8px 14px;font-size:13.5px;position:absolute;transform:translate(-50%,8px)}.status.toast.shown{opacity:1;transform:translate(-50%)}.touch-keys{z-index:9;left:50%;bottom:calc(60px + env(safe-area-inset-bottom));background:var(--glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid color-mix(in srgb, var(--line) 50%, transparent);box-shadow:var(--raise-2);border-radius:12px;gap:4px;padding:4px;position:absolute;transform:translate(-50%)}.touch-keys .button{border-color:#0000}@media (pointer:coarse){.dock .hint-line{display:none}.touch-keys{display:flex}}.card{border:1px solid color-mix(in srgb, var(--line) 60%, transparent);box-shadow:var(--raise-1);transition:box-shadow var(--medium) var(--ease), transform var(--medium) var(--ease), border-color var(--medium) var(--ease);border-radius:12px}.thumb{border-bottom:1px solid color-mix(in srgb, var(--line) 50%, transparent)}.thumb rect{stroke-width:2.5px}@media (width<=1180px){.editor-bar{flex-wrap:wrap;row-gap:6px}.editor-bar .segments.sliding{order:3}}@media (width<=720px){.editor .bar-end{flex-wrap:wrap;justify-content:flex-start}.segments.sliding{scrollbar-width:none;max-width:100%;overflow-x:auto}.toolbox{max-height:42dvh}.shortcuts{left:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}.box.framed{place-items:start;padding:10px 14px}.box.framed .text{text-align:left;font-weight:700}.hint-action{color:var(--accent);font:inherit;cursor:pointer;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--accent) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--accent) 35%, transparent);text-underline-offset:3px;transition:text-decoration-color var(--fast) var(--ease);background:0 0;border:0;padding:0 2px;font-weight:700}.hint-action:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.chevron{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;opacity:.6;width:10px;height:10px}.shape-menu{border-radius:12px;flex-wrap:nowrap;align-items:center;gap:2px;max-width:none;padding:4px;display:flex}.shape-menu .tool,.edge-editor .tool{min-width:34px;height:34px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:13px;display:inline-flex}.shape-menu .tool:hover,.edge-editor .tool:hover,.shape-menu .tool[aria-expanded=true],.edge-editor .tool[aria-expanded=true]{background:color-mix(in srgb, var(--accent-soft) 80%, transparent)}.edge-editor .tool[aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.shape-menu .tool.text{padding:0 10px 0 8px}.shape-menu .tool.danger:hover,.edge-editor .tool.danger:hover{color:var(--error);background:color-mix(in srgb, var(--error) 12%, transparent)}.shape-menu .tool .shape-icon,.shape-menu .tool svg:not(.chevron):not(.icon){width:22px;height:16px}.tool-divider{background:color-mix(in srgb, var(--line) 55%, transparent);flex:none;width:1px;height:20px;margin:0 3px}.tool-anchor{display:inline-flex;position:relative}.tool-pop{z-index:4;background:var(--surface);border:1px solid color-mix(in srgb, var(--line) 50%, transparent);box-shadow:var(--raise-3);animation:pop var(--medium) var(--ease);transform-origin:0 0;border-radius:12px;padding:8px;position:absolute;top:calc(100% + 8px);left:0}.shape-grid{grid-template-columns:repeat(4,74px);gap:4px;display:grid}.shape-grid button{color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-items:center;gap:3px;padding:8px 4px 6px;display:grid}.shape-grid button small{color:var(--muted);text-align:center;font-size:11px;line-height:1.2}.shape-grid button:hover{background:var(--accent-soft)}.shape-grid button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.shape-grid button[aria-pressed=true] small{color:var(--accent)}.shape-grid .wide{font:inherit;color:var(--muted);border-top:1px solid color-mix(in srgb, var(--line) 40%, transparent);border-radius:0 0 8px 8px;grid-column:1/-1;padding:7px;font-size:12.5px;display:block}.shape-grid .wide:disabled{opacity:.45;cursor:default}.colour-grid{grid-template-columns:repeat(4,26px);gap:8px;display:grid}.colour-grid .swatch{transition:transform var(--fast) var(--ease), box-shadow var(--fast) var(--ease);width:26px!important;min-width:0!important;height:26px!important}.colour-grid .swatch:hover{transform:scale(1.12)}.swatch-dot{background:var(--fill,var(--surface));border:2px solid var(--line-color,var(--line));border-radius:50%;width:16px;height:16px}.swatch-dot.none{background:linear-gradient(135deg, var(--surface) 44%, var(--error) 46%, var(--error) 54%, var(--surface) 56%);border-width:1.5px}.menu-gap{display:none}.edge-editor{border-radius:12px;flex-wrap:nowrap;align-items:center;gap:2px;padding:4px;display:flex}.edge-editor input{background:color-mix(in srgb, var(--paper) 70%, var(--surface));border:1px solid #0000;border-radius:8px;width:150px;height:34px;padding:0 10px}.edge-editor input:focus{border-color:var(--accent);background:var(--surface);outline:none}.edge-editor .edge-row{gap:1px;display:flex}.edge-editor .tool{min-width:32px;padding:0 6px}.field,.doc-panel input:not([type=checkbox]),.doc-panel select,.ai-panel textarea,.diagrams-top input,.share-lock input,.auth input{min-height:38px;font:inherit;color:var(--ink);background:var(--surface);border:1px solid color-mix(in srgb, var(--line) 75%, transparent);box-shadow:inset 0 1px 1.5px hsl(var(--shadow-color) / .05);transition:border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);border-radius:9px;padding:8px 11px;font-size:14px}.doc-panel input:focus,.doc-panel select:focus,.ai-panel textarea:focus,.diagrams-top input:focus,.share-lock input:focus,.auth input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:none}.button{border-radius:9px}.button.primary:disabled{opacity:.5}.workspace{position:relative}.doc-panel{z-index:11;background:var(--glass);-webkit-backdrop-filter:saturate(1.4)blur(16px);backdrop-filter:saturate(1.4)blur(16px);border:1px solid color-mix(in srgb, var(--line) 45%, transparent);width:min(380px,100% - 24px);box-shadow:var(--raise-3);border-radius:16px;gap:14px;padding:16px;position:absolute;top:12px;bottom:12px;right:12px}.doc-panel>header{border-bottom:1px solid color-mix(in srgb, var(--line) 40%, transparent);align-items:center;padding-bottom:12px}.doc-title h2{font:700 17px/1.25 Plus Jakarta Sans Variable,system-ui,sans-serif}.doc-title span{font-size:12.5px;line-height:1.4}.doc-panel>header .button{color:var(--muted);background:0 0;border-color:#0000}.doc-panel>header .button:hover{color:var(--ink);background:var(--accent-soft)}.share-form{gap:12px}.share-form label{color:var(--muted);gap:5px;font-size:13px;font-weight:700}.share-form .button.primary{justify-self:stretch;min-height:40px}.share-made{background:color-mix(in srgb, var(--accent-soft) 55%, transparent);animation:pop var(--medium) var(--ease);border-radius:12px;padding:10px}.share-made input{background:var(--surface)!important}.versions{gap:0}.versions li{border-bottom:1px solid color-mix(in srgb, var(--line) 35%, transparent);transition:background-color var(--fast) var(--ease);border-radius:8px;padding:11px 4px}.versions li:hover{background:color-mix(in srgb, var(--accent-soft) 45%, transparent)}.versions li .button{opacity:.7}.versions li:hover .button{opacity:1}.versions b{font-size:14px}.versions small{font-size:12px}.version-form{gap:8px}.doc-actions .button{min-height:34px}.doc-view iframe{border-radius:10px}.ai-panel{gap:12px;width:min(380px,100% - 24px);padding:16px}.ai-panel h2{font:700 17px/1.25 Plus Jakarta Sans Variable,system-ui,sans-serif}.ai-panel .segments{background:color-mix(in srgb, var(--paper) 80%, var(--surface));border:1px solid color-mix(in srgb, var(--line) 50%, transparent);border-radius:10px;grid-template-columns:1fr 1fr;gap:2px;padding:3px;display:grid}.ai-panel .segments button{border:0;border-radius:7px;min-height:30px}.ai-panel .segments button[aria-pressed=true]{color:var(--ink);background:var(--surface);box-shadow:var(--raise-1)}.ai-panel textarea{resize:vertical;min-height:110px}.export-menu{gap:2px;width:260px;padding:6px}.export-menu .button{background:0 0;border-color:#0000;border-radius:8px;justify-content:space-between;align-items:center;min-height:38px;padding:0 12px;display:flex}.export-menu .button:hover:not(:disabled){background:var(--accent-soft)}.export-menu .button:disabled{opacity:.45}.export-menu p{padding:6px 12px 4px;font-size:12.5px}.home-bar{background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid color-mix(in srgb, var(--line) 45%, transparent);padding:10px 20px}.home-bar .bar-end{gap:10px}.avatar{width:30px;height:30px;color:var(--surface);background:var(--accent);border-radius:50%;place-items:center;font:700 13px/1 Plus Jakarta Sans Variable,system-ui,sans-serif;display:grid}.who,.verify{font-size:14px}.dashboard{grid-template-columns:220px minmax(0,1fr);gap:28px;max-width:1240px;margin:0 auto;padding:24px 20px 56px;display:grid}.side-nav.segments{background:0 0;border:0;align-self:start;gap:2px;padding:0;display:grid;position:sticky;top:20px}.side-nav.segments button{min-height:38px;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:0 12px;font-size:14.5px;display:flex}.side-nav.segments button+button{border-left:0}.side-nav.segments button:hover{color:var(--ink);background:color-mix(in srgb, var(--accent-soft) 60%, transparent)}.side-nav.segments button[aria-pressed=true]{color:var(--accent);background:var(--accent-soft);font-weight:700}.dashboard .diagrams{gap:18px;max-width:none;margin:0;padding:0}.diagrams-top{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.diagrams-top h1{letter-spacing:-.02em;flex:auto;margin:0;font:800 30px/1.1 Plus Jakarta Sans Variable,system-ui,sans-serif}.diagrams-top input{flex:0 300px;min-width:180px}.diagrams-top .button.primary{min-height:38px;box-shadow:var(--raise-1);padding:0 16px}.starters{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:12px;display:grid}.starter{color:var(--ink);text-align:left;background:var(--surface);border:1px solid color-mix(in srgb, var(--line) 55%, transparent);box-shadow:var(--raise-1);font:inherit;cursor:pointer;transition:transform var(--medium) var(--ease), box-shadow var(--medium) var(--ease), border-color var(--medium) var(--ease);border-radius:14px;align-items:center;gap:14px;padding:12px 14px;display:flex}.starter:hover{box-shadow:var(--raise-2);border-color:color-mix(in srgb, var(--accent) 40%, transparent);transform:translateY(-2px)}.starter span{gap:2px;display:grid}.starter b{font-size:15px}.starter small{color:var(--muted);font-size:12.5px}.starter-art{background:var(--paper);width:84px;height:46px;fill:var(--surface);stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;transition:background-color var(--medium) var(--ease);border-radius:10px;flex:none;padding:6px}.section-title{color:var(--muted);margin:6px 0 -4px;font-size:14px;font-weight:700}.card{border-radius:14px;position:relative;overflow:hidden}.thumb{background:radial-gradient(color-mix(in srgb, var(--dot) 80%, transparent) 1px, transparent 1.2px) 0 0 / 14px 14px, var(--paper);height:160px}.card-body h2{font-size:15px}.card-actions{opacity:.55;transition:opacity var(--medium) var(--ease);gap:2px;padding:6px 10px 12px}.card-actions .button{background:0 0;border-color:#0000;border-radius:7px}.card-actions .button:hover{background:var(--accent-soft)}.card-actions .button[aria-pressed=true]{color:#c58a00}.empty-state{min-height:180px;color:var(--muted);text-align:center;border:1.5px dashed color-mix(in srgb, var(--line) 70%, transparent);border-radius:16px;place-items:center;padding:24px;display:grid}@media (width<=760px){.dashboard{grid-template-columns:1fr;gap:14px;padding:16px}.side-nav.segments{display:flex;position:static;overflow-x:auto}.who{display:none}}.banner{color:var(--ink);background:color-mix(in srgb, var(--decision) 35%, var(--surface));border-bottom:1px solid color-mix(in srgb, var(--line) 40%, transparent);justify-content:center;align-items:center;gap:12px;padding:8px 16px;font-size:13.5px;display:flex}.banner .button{min-height:30px;padding:0 12px}.share-form select,.share-form input{color:var(--ink);font-weight:400}.share-form .button.primary,.version-form .button{text-align:center;justify-content:center}.doc-panel,.ai-panel,.shortcuts{background:color-mix(in srgb, var(--surface) 96%, transparent)}.export-menu .pro{color:var(--accent);background:var(--accent-soft);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:700}:root{--paper:#f8f8fa;--surface:#fff;--ink:#1d1e25;--muted:#5f606a;--line:#c6c7cf;--dot:#d9dae0;--accent:#285943;--accent-strong:#285943;--accent-hover:#1e4634;--accent-soft:#e8f1ec;--topic:#dcebe2;--hairline:#e4e4e9;--sunken:#f1f1f4;--shadow-color:240 10% 20%;--raise-1:0 1px 2px hsl(var(--shadow-color) / .05), 0 1px 1px hsl(var(--shadow-color) / .03);--raise-2:0 2px 4px hsl(var(--shadow-color) / .05), 0 8px 20px -6px hsl(var(--shadow-color) / .12);--raise-3:0 4px 8px hsl(var(--shadow-color) / .05), 0 18px 40px -10px hsl(var(--shadow-color) / .2);-webkit-font-smoothing:antialiased;font:14px/1.45 Plus Jakarta Sans Variable,Plus Jakarta Sans,system-ui,sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#111216;--surface:#191a1f;--ink:#ececf1;--muted:#9c9da8;--line:#464852;--dot:#26272d;--accent:#7cc6a0;--accent-strong:#3d7a5c;--accent-hover:#46886a;--accent-soft:#1b3127;--topic:#1f3a2d;--hairline:#2a2b32;--sunken:#15161a;--shadow-color:240 20% 2%}}:root[data-theme=dark]{--paper:#111216;--surface:#191a1f;--ink:#ececf1;--muted:#9c9da8;--line:#464852;--dot:#26272d;--accent:#7cc6a0;--accent-strong:#3d7a5c;--accent-hover:#46886a;--accent-soft:#1b3127;--topic:#1f3a2d;--hairline:#2a2b32;--sunken:#15161a;--shadow-color:240 20% 2%}h1,h2,h3{letter-spacing:-.015em}.button.primary{color:#fff;background:var(--accent-strong);border-color:var(--accent-strong)}.editor .button.primary{color:#fff}.icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.dashboard{grid-template-columns:248px minmax(0,1fr);gap:0;max-width:none;min-height:100vh;margin:0;padding:0;display:grid}.sidebar{background:var(--sunken);border-right:1px solid var(--hairline);flex-direction:column;gap:18px;height:100vh;padding:16px 12px 12px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{align-items:center;gap:9px;padding:4px 8px;display:flex}.sidebar-brand .brand{letter-spacing:-.02em;font:750 16px/1 Plus Jakarta Sans Variable,system-ui,sans-serif}.brand-mark{color:#fff;background:var(--accent-strong);width:28px;height:28px;box-shadow:var(--raise-1);border-radius:8px;place-items:center;display:grid}.brand-mark svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.sidebar .side-nav.segments{gap:1px;display:grid;position:static}.side-nav.segments button,.side-link{width:100%;min-height:32px;color:var(--muted);text-align:left;cursor:pointer;transition:background-color var(--fast) var(--ease), color var(--fast) var(--ease);background:0 0;border:0;border-radius:7px;align-items:center;gap:10px;padding:0 10px;font-family:inherit;font-size:13px;font-weight:500;line-height:1;text-decoration:none;display:flex}.side-nav.segments button:hover,.side-link:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 5%, transparent)}.side-nav.segments button[aria-pressed=true] .icon{color:var(--accent)}.count{color:var(--muted);background:color-mix(in srgb, var(--ink) 6%, transparent);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:600;line-height:16px}.side-section{gap:1px;display:grid}.side-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;opacity:.8;margin:0 0 4px;padding:0 10px;font-size:10.5px;font-weight:700}.side-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.type-dot{background:var(--type-colour,var(--muted));border-radius:3px;flex:none;width:8px;height:8px}[data-type=flowchart]{--type-colour:#3b6fd8;--type-soft:color-mix(in srgb, #3b6fd8 10%, var(--surface))}[data-type=mind_map]{--type-colour:#c27a12;--type-soft:color-mix(in srgb, #c27a12 11%, var(--surface))}[data-type=architecture]{--type-colour:#7a52c9;--type-soft:color-mix(in srgb, #7a52c9 10%, var(--surface))}[data-type=entity_relationship]{--type-colour:#1f9d6b;--type-soft:color-mix(in srgb, #1f9d6b 10%, var(--surface))}.sidebar-foot{border-top:1px solid var(--hairline);flex-wrap:wrap;align-items:center;gap:8px;margin-top:auto;padding:12px 6px 2px;display:flex}.sidebar-foot .theme-pick{margin-left:36px}.sidebar-foot .button.quiet{margin-left:auto}.sidebar-foot .avatar{background:var(--accent-strong);color:#fff;flex:none;width:28px;height:28px;font-family:inherit;font-size:12px;font-weight:700}.sidebar-foot .who{min-width:0;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:calc(100% - 40px);font-size:12.5px;font-weight:600;overflow:hidden}.theme-pick{height:26px;color:var(--muted);border:1px solid var(--hairline);font:inherit;background:0 0;border-radius:6px;flex:none;padding:0 4px;font-size:11.5px}.sidebar-foot .button.quiet{min-height:26px;color:var(--muted);border:0;padding:0 8px;font-size:12px}.sidebar-foot .button.quiet:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 6%, transparent)}.dashboard .diagrams{align-content:start;gap:20px;width:100%;max-width:1180px;margin:0 auto;padding:32px 40px 64px;display:grid}.dashboard .banner{color:var(--ink);background:var(--surface);border:1px solid var(--hairline);box-shadow:var(--raise-1);border-left:3px solid #d39b0a;border-radius:10px;justify-content:space-between;padding:8px 8px 8px 14px;font-size:13px}.dashboard .banner .button{border:1px solid var(--hairline);min-height:28px;font-size:12.5px}.diagrams-head{gap:6px;display:grid}.greeting{color:var(--muted);margin:0;font-size:12.5px;font-weight:500}.diagrams-head h1{letter-spacing:-.025em;margin:0 0 10px;font:750 28px/1.15 Plus Jakarta Sans Variable,system-ui,sans-serif}.search{align-items:center;max-width:640px;display:flex;position:relative}.search .icon{color:var(--muted);pointer-events:none;position:absolute;left:13px}.search input{width:100%;height:42px;color:var(--ink);background:var(--surface);border:1px solid var(--hairline);box-shadow:var(--raise-1);font:inherit;transition:border-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);border-radius:10px;padding:0 64px 0 38px;font-size:14px}.search input::placeholder{color:color-mix(in srgb, var(--muted) 80%, transparent)}.search input:focus{border-color:color-mix(in srgb, var(--accent) 55%, var(--hairline));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent);outline:none}.search input::-webkit-search-cancel-button{display:none}.search kbd{color:var(--muted);background:var(--sunken);border:1px solid var(--hairline);pointer-events:none;border-radius:5px;padding:2px 6px;font-family:inherit;font-size:11px;font-weight:600;line-height:1.3;position:absolute;right:10px}.starters{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:12px}.starter{border:1px solid var(--hairline);border-radius:12px;gap:12px;padding:10px 12px}.starter:hover{border-color:color-mix(in srgb, var(--type-colour) 40%, var(--hairline))}.starter small{font-size:12px}.starter-art{background:var(--type-soft);width:76px;height:42px;stroke:var(--type-colour);stroke-width:1.8px;border-radius:8px}.section-bar{align-items:center;gap:8px;margin-top:6px;display:flex}.section-bar .section-title{color:var(--ink);flex:1;align-items:center;gap:8px;margin:0;font-family:inherit;font-size:15px;font-weight:650;line-height:1.2;display:flex}.section-bar .count{margin-left:0}.view-toggle{background:var(--sunken);border:1px solid var(--hairline);border-radius:8px;padding:2px;display:flex}.view-toggle button{width:28px;height:26px;color:var(--muted);cursor:pointer;transition:background-color var(--fast) var(--ease), color var(--fast) var(--ease);background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.view-toggle button[aria-pressed=true]{color:var(--ink);background:var(--surface);box-shadow:var(--raise-1)}.section-bar #new-diagram{min-height:34px;box-shadow:var(--raise-1);border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.note-line{margin:-8px 0 0;font-size:12.5px}.cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,232px),1fr));gap:14px}.card{border:1px solid var(--hairline);box-shadow:var(--raise-1);border-radius:12px}.card:before{content:"";z-index:1;background:var(--type-colour,var(--accent));opacity:.85;height:3px;position:absolute;inset:0 0 auto}.thumb{background:radial-gradient(color-mix(in srgb, var(--dot) 90%, transparent) 1px, transparent 1.2px) 0 0 / 14px 14px, var(--type-soft,var(--paper));border-bottom:1px solid var(--hairline);height:148px}.thumb rect{fill:var(--surface);stroke:color-mix(in srgb, var(--type-colour,var(--ink)) 70%, var(--ink))}.thumb line{stroke:color-mix(in srgb, var(--type-colour,var(--accent)) 50%, var(--line))}.thumb-empty{color:var(--muted);font-size:12px}.card-body{gap:6px;padding:11px 13px 2px}.card-body h2{font-family:inherit;font-size:13.5px;font-weight:650;line-height:1.3}.card-meta{align-items:center;gap:8px;min-width:0;display:flex}.card-meta small{white-space:nowrap;font-size:11.5px}.type-badge{color:color-mix(in srgb, var(--type-colour,var(--muted)) 80%, var(--ink));background:var(--type-soft,var(--sunken));white-space:nowrap;border-radius:999px;padding:1px 7px;font-size:11px;font-weight:600;line-height:17px}.card-actions{opacity:0;gap:0;padding:6px 8px 9px}.card-actions .button{min-height:26px;color:var(--muted);padding:0 8px;font-size:12px;font-weight:500}.card-actions .button:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 6%, transparent)}.card-actions .button.star{place-items:center;width:28px;padding:0;display:grid}.card-actions .button.star[aria-pressed=true]{color:#d39b0a;opacity:1}.card-actions .button.star[aria-pressed=true] .icon{fill:currentColor}.card:has(.star[aria-pressed=true]) .card-actions{opacity:.9}.card:hover .card-actions,.card:focus-within .card-actions{opacity:1}@media (hover:none){.card-actions{opacity:1}}.cards.list{background:var(--surface);border:1px solid var(--hairline);box-shadow:var(--raise-1);border-radius:12px;grid-template-columns:1fr;gap:0;overflow:hidden}.cards.list .card{box-shadow:none;border:0;border-radius:0;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;display:grid}.cards.list .card+.card{border-top:1px solid var(--hairline)}.cards.list .card:before{width:3px;height:auto;inset:0 auto 0 0}.cards.list .thumb{border:1px solid var(--hairline);border-radius:7px;height:58px;margin:8px 0 8px 14px}.cards.list .card-body{padding:8px 14px}.cards.list .card-actions{padding:0 10px}.card-skeleton{background:linear-gradient(100deg, var(--sunken) 30%, color-mix(in srgb, var(--surface) 70%, var(--sunken)) 50%, var(--sunken) 70%) 0 0 / 300% 100%;border:1px solid var(--hairline);border-radius:12px;height:214px;animation:1.4s linear infinite shimmer}.cards.list .card-skeleton{border:0;border-radius:0;height:74px}@keyframes shimmer{to{background-position:-150% 0}}.empty-state{background:var(--surface);border:1px dashed var(--line);border-radius:12px;min-height:200px}.button.more{justify-self:center}@media (width<=860px){.dashboard{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--hairline);flex-flow:wrap;align-items:center;gap:8px;height:auto;padding:10px 14px;position:static}.sidebar .side-section{display:none}.sidebar .side-nav.segments{order:3;width:100%;display:flex;overflow-x:auto}.sidebar .side-nav.segments button{width:auto}.sidebar-foot{border:0;margin:0 0 0 auto;padding:0}.sidebar-foot .who,.theme-pick{display:none}.dashboard .diagrams{padding:18px 16px 48px}.diagrams-head h1{font-size:23px}.section-bar .view-toggle{display:none}.starter{padding:8px 10px}.starter-art{width:56px;height:32px;padding:4px}}.cards.list .thumb{place-items:center;display:grid;overflow:hidden}.cards.list .thumb svg{width:100%;height:100%;padding:4px}:root{--paper:#f5f5f7;--surface:#fff;--ink:#1d1d1f;--muted:#6e6e73;--line:#c7c7cc;--dot:#d8d8de;--accent:#007aff;--accent-strong:#007aff;--accent-hover:#0066d6;--accent-soft:#e5f1ff;--topic:#e3efff;--hairline:#00000014;--sunken:#ececf0;--fill-quiet:#7676801f;--blue:#007aff;--green:#34c759;--orange:#ff9500;--red:#ff3b30;--purple:#af52de;--pink:#ff2d55;--teal:#30b0c7;--indigo:#5856d6;--yellow:#fc0;--gray:#8e8e93;--ease:cubic-bezier(.32, .72, 0, 1);--spring:cubic-bezier(.34, 1.4, .64, 1);--glass:#ffffffb8;--glass-strong:#ffffffdb;--vibrancy:saturate(180%) blur(20px);--raise-1:0 0 0 .5px #0000000a, 0 1px 3px #0000000f;--raise-2:0 0 0 .5px #0000000d, 0 4px 14px #00000014, 0 12px 28px -12px #0000001f;--raise-3:0 0 0 .5px #0000000f, 0 10px 30px #0000001f, 0 30px 60px -20px #0000002e;--ai-gradient:linear-gradient(120deg, #0a84ff 0%, #8e5cff 38%, #ff4f8b 70%, #ff9f0a 100%);letter-spacing:-.008em;font:14px/1.47 -apple-system,BlinkMacSystemFont,SF Pro Text,Plus Jakarta Sans Variable,Segoe UI,system-ui,sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#121214;--surface:#1c1c1e;--ink:#f5f5f7;--muted:#98989d;--line:#48484a;--dot:#2a2a2e;--accent:#0a84ff;--accent-strong:#0a84ff;--accent-hover:#409cff;--accent-soft:#0a2a4d;--topic:#13304f;--hairline:#ffffff17;--sunken:#18181a;--fill-quiet:#7676803d;--blue:#0a84ff;--green:#30d158;--orange:#ff9f0a;--red:#ff453a;--purple:#bf5af2;--pink:#ff375f;--teal:#40c8e0;--indigo:#5e5ce6;--yellow:#ffd60a;--gray:#8e8e93;--glass:#1e1e20b3;--glass-strong:#242426db;--raise-1:0 0 0 .5px #ffffff0f, 0 1px 3px #0006;--raise-2:0 0 0 .5px #ffffff12, 0 6px 18px #00000073;--raise-3:0 0 0 .5px #ffffff14, 0 16px 44px #0000008c}}:root[data-theme=dark]{--paper:#121214;--surface:#1c1c1e;--ink:#f5f5f7;--muted:#98989d;--line:#48484a;--dot:#2a2a2e;--accent:#0a84ff;--accent-strong:#0a84ff;--accent-hover:#409cff;--accent-soft:#0a2a4d;--topic:#13304f;--hairline:#ffffff17;--sunken:#18181a;--fill-quiet:#7676803d;--blue:#0a84ff;--green:#30d158;--orange:#ff9f0a;--red:#ff453a;--purple:#bf5af2;--pink:#ff375f;--teal:#40c8e0;--indigo:#5e5ce6;--yellow:#ffd60a;--gray:#8e8e93;--glass:#1e1e20b3;--glass-strong:#242426db;--raise-1:0 0 0 .5px #ffffff0f, 0 1px 3px #0006;--raise-2:0 0 0 .5px #ffffff12, 0 6px 18px #00000073;--raise-3:0 0 0 .5px #ffffff14, 0 16px 44px #0000008c}h1,h2,h3,.brand{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Plus Jakarta Sans Variable,Segoe UI,system-ui,sans-serif}::selection{background:color-mix(in srgb, var(--accent) 28%, transparent)}:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:2px}[data-type=flowchart]{--type-colour:var(--blue);--type-to:var(--teal)}[data-type=mind_map]{--type-colour:var(--orange);--type-to:var(--pink)}[data-type=architecture]{--type-colour:var(--purple);--type-to:var(--indigo)}[data-type=entity_relationship]{--type-colour:var(--green);--type-to:var(--teal)}[data-type]{--type-soft:color-mix(in srgb, var(--type-colour) 9%, var(--surface))}.button{transition:background-color var(--fast) var(--ease), color var(--fast) var(--ease), box-shadow var(--medium) var(--ease), transform var(--fast) var(--ease);border-radius:980px}.button:active:not(:disabled){transform:scale(.97)}.button.primary{color:#fff;background:var(--accent);box-shadow:0 1px 2px #0000001a, 0 4px 12px -4px color-mix(in srgb, var(--accent) 60%, transparent);border-color:#0000;font-weight:600}.button.primary:hover{background:var(--accent-hover);border-color:#0000}.button.quiet:hover:not(:disabled){background:var(--fill-quiet)}.toast{z-index:60;top:calc(14px + env(safe-area-inset-top));max-width:min(460px,100% - 32px);color:var(--ink);background:var(--glass-strong);-webkit-backdrop-filter:var(--vibrancy);backdrop-filter:var(--vibrancy);box-shadow:var(--raise-3);pointer-events:none;opacity:0;transition:opacity .26s var(--ease), translate .52s var(--spring), scale .52s var(--spring);border-radius:980px;align-items:center;gap:10px;padding:9px 18px 9px 10px;display:flex;position:fixed;left:50%;translate:-50% -24px;scale:.92}.toast.shown{opacity:1;translate:-50%;scale:1}.toast .status{margin:0;font-size:13.5px;font-weight:550;line-height:1.3}.toast-icon{color:#fff;background:var(--toast-colour,var(--green));width:24px;height:24px;box-shadow:0 2px 6px -1px color-mix(in srgb, var(--toast-colour,var(--green)) 60%, transparent);border-radius:50%;flex:none;place-items:center;display:grid}.toast-icon svg{fill:none;stroke:currentColor;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.toast[data-tone=done]{--toast-colour:var(--green)}.toast[data-tone=info]{--toast-colour:var(--blue)}.toast[data-tone=warn]{--toast-colour:var(--orange)}.toast[data-tone=ai] .toast-icon{background:var(--ai-gradient)}.toast[data-tone=ai] .toast-icon svg{fill:currentColor;stroke-width:1px}.status.toast{display:none}.sidebar{background:color-mix(in srgb, var(--sunken) 82%, transparent);-webkit-backdrop-filter:var(--vibrancy);backdrop-filter:var(--vibrancy);border-right:1px solid var(--hairline);padding:18px 10px 12px}.brand-mark{background:var(--ai-gradient);border-radius:9px;width:30px;height:30px;box-shadow:0 2px 8px -2px #5856d68c,inset 0 0 0 .5px #ffffff4d}.sidebar-brand .brand{letter-spacing:-.022em;font-size:17px;font-weight:700}.side-nav.segments button,.side-link{min-height:34px;color:var(--ink);border-radius:8px;gap:10px;padding:0 8px;font-size:13.5px;font-weight:500}.side-nav.segments button:hover,.side-link:hover{background:var(--fill-quiet)}.side-nav.segments button[aria-pressed=true]{color:var(--ink);background:color-mix(in srgb, var(--accent) 14%, transparent);box-shadow:none;font-weight:600}.tile{color:#fff;background:linear-gradient(180deg, color-mix(in srgb, var(--tile,var(--type-colour)) 82%, #fff), var(--tile,var(--type-colour)));border-radius:7px;flex:none;place-items:center;width:24px;height:24px;display:grid;box-shadow:0 1px 2px #0000001f,inset 0 0 0 .5px #fff3}.tile svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.tile[data-tint=orange]{--tile:var(--orange)}.tile[data-tint=gray]{--tile:var(--gray)}.tile[data-tint=teal]{--tile:var(--teal)}.side-nav.segments button[aria-pressed=true] .tile svg{color:#fff}.side-label{letter-spacing:.02em;text-transform:none;padding:0 8px;font-size:11px;font-weight:600}.type-dot{background:var(--type-colour);border-radius:50%;width:9px;height:9px;margin-inline:7px}.count{background:var(--fill-quiet);font-weight:600}.sidebar-foot .avatar{background:linear-gradient(135deg, var(--teal), var(--blue))}.theme-pick{background:var(--fill-quiet);color:var(--ink);border:0;border-radius:7px}.diagrams-head h1{letter-spacing:-.028em;font-size:34px;font-weight:700;line-height:1.1}.greeting{color:var(--muted);font-size:13px;font-weight:500}.search input{background:var(--fill-quiet);height:40px;box-shadow:none;border:0;border-radius:12px;font-size:15px}.search input:focus{background:var(--surface);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 22%, transparent), var(--raise-1)}.search kbd{background:var(--surface);box-shadow:var(--raise-1);border:0}.starter{background:var(--surface);box-shadow:var(--raise-1);transition:transform .42s var(--spring), box-shadow var(--medium) var(--ease);border:0;border-radius:18px;gap:14px;padding:12px}.starter:hover{box-shadow:var(--raise-2);transform:translateY(-3px)scale(1.01)}.starter-art{background:linear-gradient(140deg, var(--type-colour), var(--type-to));stroke:#fff;fill:#ffffff2e;stroke-width:2.2px;width:64px;height:48px;box-shadow:0 4px 12px -4px color-mix(in srgb, var(--type-colour) 70%, transparent), inset 0 0 0 .5px #ffffff40;border-radius:13px;padding:8px}.starter:hover .starter-art{background:linear-gradient(140deg, var(--type-colour), var(--type-to))}.starter b{font-size:14.5px;font-weight:600}.view-toggle{background:var(--fill-quiet);border:0;border-radius:9px;padding:2px}.view-toggle button{transition:background-color var(--medium) var(--ease), box-shadow var(--medium) var(--ease);border-radius:7px}.view-toggle button[aria-pressed=true]{background:var(--surface);box-shadow:0 1px 3px #0000001f,0 0 0 .5px #0000000a}.section-bar #new-diagram{border-radius:980px;min-height:34px;padding:0 16px 0 12px}.section-bar .section-title{letter-spacing:-.02em;font-size:20px;font-weight:700}.cards{gap:18px}.card{box-shadow:var(--raise-1);transition:transform .42s var(--spring), box-shadow var(--medium) var(--ease);border:0;border-radius:18px}.card:before{display:none}.card:hover{box-shadow:var(--raise-2);border-color:#0000;transform:translateY(-4px)}.thumb{background:radial-gradient(color-mix(in srgb, var(--type-colour,var(--gray)) 22%, transparent) 1px, transparent 1.3px) 0 0 / 14px 14px, linear-gradient(150deg, color-mix(in srgb, var(--type-colour,var(--gray)) 13%, var(--surface)), color-mix(in srgb, var(--type-to,var(--gray)) 9%, var(--surface)));border:0;border-radius:13px;height:150px;margin:6px 6px 0}.thumb rect{fill:var(--surface);stroke:var(--type-colour,var(--ink));stroke-width:1.5px}.thumb line{stroke:color-mix(in srgb, var(--type-colour,var(--gray)) 60%, transparent);stroke-width:1.5px}.card-body{padding:12px 14px 2px}.card-body h2{letter-spacing:-.012em;font-size:14.5px;font-weight:600}.type-badge{color:var(--type-colour);background:color-mix(in srgb, var(--type-colour) 13%, transparent);font-weight:600}.card-actions{padding:4px 8px 10px}.card-actions .button{border-radius:980px}.card-actions .button.star[aria-pressed=true]{color:var(--orange)}.cards.list{box-shadow:var(--raise-1);border:0;border-radius:16px;gap:0}.cards.list .card{box-shadow:none;border-radius:0}.cards.list .card:hover{background:color-mix(in srgb, var(--accent) 4%, var(--surface));transform:none}.cards.list .card+.card{box-shadow:inset 0 .5px 0 var(--hairline);border-top:0}.cards.list .thumb{border-radius:10px;height:56px;margin:8px 0 8px 12px}.card-skeleton{border:0;border-radius:18px}.empty-state{background:var(--surface);box-shadow:var(--raise-1);border:0;border-radius:18px}.dashboard .banner{box-shadow:var(--raise-1);background:color-mix(in srgb, var(--yellow) 14%, var(--surface));border:0;border-radius:14px}.dashboard .banner .button{background:var(--surface);box-shadow:var(--raise-1);border:0}.editor-bar{background:var(--glass);-webkit-backdrop-filter:var(--vibrancy);backdrop-filter:var(--vibrancy);border-bottom:1px solid var(--hairline);box-shadow:none}.editor-bar .brand{letter-spacing:-.022em;color:var(--ink);font-size:17px;font-weight:700;text-decoration:none}.cluster{border-left:1px solid var(--hairline)}.editor .button.quiet{border-color:#0000;font-weight:500}.editor .button.quiet[aria-pressed=true],.editor .button.quiet[aria-expanded=true]{color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.segments.sliding{background:var(--fill-quiet);border:0;border-radius:9px;padding:2px}.segments.sliding button{color:var(--ink);border-radius:7px;font-weight:500}.segments.sliding button[aria-pressed=true]{color:var(--ink);font-weight:600}.segments.sliding .marker{background:var(--surface);transition:transform .46s var(--spring), width .46s var(--spring);border-radius:7px;top:2px;bottom:2px;box-shadow:0 3px 8px #0000001f,0 3px 1px #0000000a,0 0 0 .5px #0000000a}#ask-ai.button.primary{background:var(--ai-gradient);transition:background-position .6s var(--ease), box-shadow var(--medium) var(--ease), transform var(--fast) var(--ease);background-position:0 0;background-size:160% 100%;box-shadow:0 2px 10px -2px #8e5cff8c}#ask-ai.button.primary:hover,#ask-ai.button.primary[aria-pressed=true]{background-position:100% 0;box-shadow:0 4px 16px -2px #ff4f8b80}.live-dot{background:var(--green);box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 25%, transparent)}#theme.theme{background:var(--fill-quiet);border:0}.save-status:before{background:var(--green)}.toolbox,.shape-menu,.edge-editor,.tool-pop,.export-menu,.zoom,.doc-panel,.ai-panel,.shortcuts,.dock-button,.hint-line{background:var(--glass-strong);-webkit-backdrop-filter:var(--vibrancy);backdrop-filter:var(--vibrancy);box-shadow:var(--raise-2);border:0}.toolbox,.shape-menu,.edge-editor{border-radius:14px}.tool-pop,.export-menu{box-shadow:var(--raise-3);border-radius:14px}.doc-panel,.ai-panel,.shortcuts{box-shadow:var(--raise-3);border-radius:20px}.toolbox button,.shape-menu button,.edge-editor button,.zoom .button{border-radius:8px}.toolbox button:hover,.shape-menu button:hover,.edge-editor button:hover,.zoom .button:hover,.export-menu .button:hover{background:var(--fill-quiet)}.toolbox button[aria-pressed=true],.shape-menu button[aria-pressed=true],.edge-editor button[aria-pressed=true]{color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent)}.shape-menu .danger:hover,.edge-editor [aria-label=Remove\ line]:hover{color:var(--red);background:color-mix(in srgb, var(--red) 12%, transparent)}.doc-panel input:not([type=checkbox]),.ai-panel textarea,.share-lock input,.field{background:var(--fill-quiet);border:0;border-radius:10px}.doc-panel input:focus,.ai-panel textarea:focus,.field:focus{background:var(--surface);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 22%, transparent)}.export-menu .pro{color:#fff;background:var(--ai-gradient)}.dock-button{color:var(--ink)}.shape-menu,.edge-editor,.tool-pop,.export-menu{animation:pop .34s var(--spring)}@media (prefers-reduced-motion:reduce){.toast,.card,.starter,.segments.sliding .marker{transition-duration:1ms!important}.shape-menu,.edge-editor,.tool-pop,.export-menu{animation:none}}:root{--fill-blue:#dcebff;--fill-green:#d8f5df;--fill-yellow:#fff4c2;--fill-orange:#ffe6c7;--fill-red:#ffdedb;--fill-purple:#f2e1fb;--fill-gray:#ececf0;--line-blue:#007aff;--line-green:#24a148;--line-yellow:#c99700;--line-orange:#f08700;--line-red:#ff3b30;--line-purple:#af52de;--line-gray:#8e8e93;--decision:#ffe08a;--decision-ink:#4a3500;--note:#fff4a8}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--fill-blue:#0d2f57;--fill-green:#123d22;--fill-yellow:#4a3c06;--fill-orange:#4f2f08;--fill-red:#521b18;--fill-purple:#3b1d4f;--fill-gray:#2c2c2e;--line-blue:#0a84ff;--line-green:#30d158;--line-yellow:#ffd60a;--line-orange:#ff9f0a;--line-red:#ff453a;--line-purple:#bf5af2;--line-gray:#98989d;--decision:#5c4508;--decision-ink:#ffe9a8;--note:#4d4510}}:root[data-theme=dark]{--fill-blue:#0d2f57;--fill-green:#123d22;--fill-yellow:#4a3c06;--fill-orange:#4f2f08;--fill-red:#521b18;--fill-purple:#3b1d4f;--fill-gray:#2c2c2e;--line-blue:#0a84ff;--line-green:#30d158;--line-yellow:#ffd60a;--line-orange:#ff9f0a;--line-red:#ff453a;--line-purple:#bf5af2;--line-gray:#98989d;--decision:#5c4508;--decision-ink:#ffe9a8;--note:#4d4510}.box:not(.outlined):not([data-role=title]):not([data-color]):not(.ghost){border-color:color-mix(in srgb, var(--ink) 16%, transparent);box-shadow:0 1px 2px #0000000d,0 4px 12px -6px #0000001a}.box[data-shape=rectangle]:not([data-role=note]):not(.outlined){border-radius:10px}.box[data-color]:not(.outlined){box-shadow:0 1px 2px #0000000a, 0 4px 12px -6px color-mix(in srgb, var(--line-color) 40%, transparent)}.box{transition:box-shadow var(--medium) var(--ease), border-color var(--medium) var(--ease)}.box[data-role=title]{box-shadow:0 6px 18px -6px #00000059}.ai-panel .segments,.doc-panel .segments{background:var(--fill-quiet);border:0;border-radius:9px;gap:2px;padding:2px}.ai-panel .segments button,.doc-panel .segments button{transition:background-color var(--medium) var(--ease), box-shadow var(--medium) var(--ease);border:0;border-radius:7px;font-weight:500}.ai-panel .segments button+button,.doc-panel .segments button+button{border-left:0}.ai-panel .segments button[aria-pressed=true],.doc-panel .segments button[aria-pressed=true]{color:var(--ink);background:var(--surface);font-weight:600;box-shadow:0 1px 3px #0000001f,0 0 0 .5px #0000000a}.ai-panel .button.primary{background:var(--ai-gradient)}.edge-editor{animation-duration:.2s;animation-timing-function:var(--ease)}:root{--thumb:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--thumb:#636366}}:root[data-theme=dark]{--thumb:#636366}.segments.sliding .marker,.view-toggle button[aria-pressed=true],.ai-panel .segments button[aria-pressed=true],.doc-panel .segments button[aria-pressed=true]{background:var(--thumb)}.canvas .react-flow__node:focus,.canvas .react-flow__node:focus-visible,.box textarea:focus,.box textarea:focus-visible{outline:none}.canvas .box.current:not(.outlined):not(.ghost){border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 14%, transparent), 0 2px 8px -4px #0000001f}.canvas .box.current[data-role=title]:not(.outlined){border-color:var(--ink);box-shadow:0 0 0 2px var(--surface), 0 0 0 3.5px var(--accent)}.canvas .box.current .shape>*{stroke:var(--accent);stroke-width:1.75px}.canvas .box.current.outlined{filter:drop-shadow(0 0 3px color-mix(in srgb, var(--accent) 25%, transparent))}:root{--chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%238e8e93' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 6.5 8 10l3.5-3.5'/%3E%3C/svg%3E");--focus-ring:inset 0 0 0 1px color-mix(in srgb, var(--accent) 75%, transparent), 0 0 0 3.5px color-mix(in srgb, var(--accent) 20%, transparent)}input:focus,input:focus-visible,textarea:focus,textarea:focus-visible,select:focus,select:focus-visible{outline:none}.search input:focus,.doc-panel input:not([type=checkbox]):focus,.doc-panel select:focus,.ai-panel textarea:focus,.ai-panel select:focus,.share-lock input:focus,.field:focus,.auth input:focus,.card-body input:focus,.edge-editor input:focus{background-color:var(--surface);box-shadow:var(--focus-ring);border-color:#0000}select,.doc-panel select,.ai-panel select{appearance:none;min-height:38px;color:var(--ink);background:var(--chevron) no-repeat right 10px center / 14px 14px, var(--fill-quiet);font:inherit;cursor:pointer;transition:background-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);border:0;border-radius:10px;padding:0 34px 0 12px;font-size:14px;font-weight:500}select:hover{background-color:color-mix(in srgb, var(--fill-quiet) 100%, #76768014)}.ai-panel select,.doc-panel select{width:100%}select:focus{background-color:var(--surface);box-shadow:var(--focus-ring)}#theme.theme,.theme-pick{background-position:right 8px center;background-size:12px 12px;border-radius:8px;height:30px;min-height:30px;padding:0 28px 0 10px;font-size:12.5px}.sidebar-foot .theme-pick{height:26px;min-height:26px}.title-field{transition:background-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);border:0;border-radius:8px;padding:5px 9px;font-weight:650}.title-field:hover{background:var(--fill-quiet);border-color:#0000}.title-field:focus{background:var(--surface);box-shadow:var(--focus-ring);border-color:#0000}.search input:focus{box-shadow:var(--focus-ring), var(--raise-1)}.tool-pop.colour-grid{grid-template-columns:repeat(4,30px);gap:10px;padding:12px}.shape-menu .colour-grid button.swatch,.edge-editor .colour-grid button.swatch,.colour-grid .swatch{background:linear-gradient(180deg, color-mix(in srgb, var(--line-color) 78%, #fff), var(--line-color)), var(--line-color);box-shadow:inset 0 0 0 .5px #00000024, 0 1px 3px color-mix(in srgb, var(--line-color) 45%, transparent);transition:transform .26s var(--spring), box-shadow var(--fast) var(--ease);border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:relative;width:30px!important;min-width:0!important;height:30px!important}.colour-grid .swatch:hover:not(:disabled){background:linear-gradient(180deg, color-mix(in srgb, var(--line-color) 78%, #fff), var(--line-color)), var(--line-color);transform:scale(1.12)}.shape-menu .colour-grid button.swatch[aria-pressed=true],.edge-editor .colour-grid button.swatch[aria-pressed=true]{background:linear-gradient(180deg, color-mix(in srgb, var(--line-color) 78%, #fff), var(--line-color)), var(--line-color);box-shadow:0 0 0 2.5px var(--surface), 0 0 0 4.5px var(--line-color)}.colour-grid .swatch[aria-pressed=true]:after{content:"";border-bottom:2.2px solid #fff;border-left:2.2px solid #fff;border-radius:1px;width:10px;height:5px;margin-top:-3px;rotate:-45deg}.shape-menu .colour-grid button.swatch.none,.edge-editor .colour-grid button.swatch.none,.colour-grid .swatch.none{background:linear-gradient(135deg, transparent calc(50% - .8px), var(--red) calc(50% - .8px), var(--red) calc(50% + .8px), transparent calc(50% + .8px)), var(--surface);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 18%, transparent)}.swatch-dot{background:var(--line-color,var(--surface));border:0;width:16px;height:16px;box-shadow:inset 0 0 0 .5px #00000026}.swatch-dot.none{background:linear-gradient(135deg, transparent calc(50% - .7px), var(--red) calc(50% - .7px), var(--red) calc(50% + .7px), transparent calc(50% + .7px)), var(--surface);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 22%, transparent);border:0}.tool-pop.shape-grid{grid-template-columns:repeat(4,78px);gap:4px;padding:8px}.shape-menu .shape-grid button{width:78px;height:auto;min-height:70px;color:var(--ink);box-shadow:none;background:0 0;border:0;border-radius:10px;grid-template-rows:34px auto;align-content:start;justify-items:center;gap:4px;padding:6px 4px 7px;display:grid}.shape-menu .shape-grid button svg{align-self:center}.shape-menu .shape-grid button:hover:not(:disabled){background:var(--fill-quiet)}.shape-menu .shape-grid button[aria-pressed=true]{color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);box-shadow:none}.shape-grid button small{-webkit-line-clamp:2;max-width:100%;color:var(--muted);text-align:center;-webkit-box-orient:vertical;font-size:11px;font-weight:500;line-height:1.25;display:-webkit-box;overflow:hidden}.shape-grid button[aria-pressed=true] small{color:var(--accent);font-weight:600}.shape-menu .shape-grid .wide{width:auto;height:34px;min-height:34px;color:var(--accent);box-shadow:0 -1px 0 var(--hairline);border-radius:0 0 8px 8px;grid-column:1/-1;justify-content:center;align-items:center;gap:6px;margin-top:4px;padding:0 10px;font-size:12.5px;font-weight:500;display:flex}.shape-menu .shape-grid .wide:disabled{color:var(--muted);opacity:.5}.tool-pop,.export-menu{background:var(--surface)}:root[data-theme=dark] .tool-pop,:root[data-theme=dark] .export-menu{background:#2c2c2e}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tool-pop,:root:not([data-theme=light]) .export-menu{background:#2c2c2e}}.tool-pop.colour-picker{gap:10px;width:186px;padding:12px;display:grid}.colour-picker .colour-grid{grid-template-columns:repeat(4,30px);justify-content:space-between;gap:10px 0;display:grid}.colour-custom{border-top:1px solid var(--hairline);gap:8px;padding-top:10px;display:grid}.colour-label{color:var(--muted);letter-spacing:.02em;font-size:11px;font-weight:600}.shape-menu .colour-picker button.swatch.add,.edge-editor .colour-picker button.swatch.add{box-shadow:inset 0 0 0 2px var(--surface), 0 1px 2px #0000001a;background:conic-gradient(from 200deg,#ff3b30,#ff9500,#fc0,#34c759,#30b0c7,#007aff,#af52de,#ff2d55,#ff3b30)}.colour-picker .swatch.add svg{width:14px;height:14px;color:var(--ink);background:var(--surface);fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;box-sizing:content-box;border-radius:50%;padding:2px}.native-colour{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.hex-field{height:32px;color:var(--muted);background:var(--fill-quiet);transition:box-shadow var(--fast) var(--ease), background-color var(--fast) var(--ease);border-radius:9px;align-items:center;gap:6px;padding:0 8px;font:500 13px/1 ui-monospace,SF Mono,Menlo,monospace;display:flex}.hex-field:focus-within{background:var(--surface);box-shadow:var(--focus-ring)}.hex-field input{width:100%;min-width:0;height:100%;color:var(--ink);font:inherit;text-transform:lowercase;background:0 0;border:0;flex:1;padding:0;box-shadow:none!important}.hex-chip{background:var(--line-color,transparent);width:16px;height:16px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 18%, transparent);border-radius:5px;flex:none}.share-anchor{position:relative}.share-pop{z-index:30;width:min(392px,100vw - 24px);color:var(--ink);background:var(--surface);box-shadow:var(--raise-3);transform-origin:calc(100% - 64px) -8px;animation:share-in .46s var(--spring) both;cursor:default;text-align:left;border-radius:20px;grid-template-columns:minmax(0,1fr);gap:14px;padding:16px;display:grid;position:absolute;top:calc(100% + 12px);right:-40px}.share-pop:before{content:"";background:var(--surface);width:14px;height:14px;box-shadow:-1px -1px 0 0 var(--hairline);border-radius:3px 0 0;position:absolute;top:-6px;right:58px;rotate:45deg}@keyframes share-in{0%{opacity:0;filter:blur(3px);translate:0 -8px;scale:.9}to{opacity:1;filter:none;translate:0;scale:1}}.share-pop>*{animation:share-rise .42s var(--spring) both}.share-pop>:nth-child(2){animation-delay:50ms}.share-pop>:nth-child(3){animation-delay:.1s}@keyframes share-rise{0%{opacity:0;translate:0 6px}to{opacity:1;translate:0}}.share-pop .icon{width:15px;height:15px}.share-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.share-head h2{letter-spacing:-.015em;margin:2px 0 3px;font-size:16px;font-weight:700}.share-head p{align-items:center;gap:5px;margin:0;font-size:12.5px;line-height:1.35;display:flex}.share-head p .icon{flex:none;width:13px;height:13px}.share-badge{color:#fff;background:linear-gradient(140deg, var(--blue), var(--indigo) 60%, var(--purple));width:38px;height:38px;box-shadow:0 6px 16px -6px color-mix(in srgb, var(--indigo) 70%, transparent), inset 0 0 0 .5px #ffffff4d;border-radius:12px;place-items:center;animation:3.2s ease-in-out infinite badge-bob;display:grid;position:relative;overflow:hidden}.share-badge .icon{stroke-width:2.2px;width:19px;height:19px}.share-badge:after{content:"";background:linear-gradient(115deg,#0000 30%,#ffffff73 50%,#0000 70%);animation:3.2s ease-in-out infinite shine;position:absolute;inset:0;translate:-120%}@keyframes badge-bob{0%,to{translate:0}50%{translate:0 -2px}}@keyframes shine{0%,55%{translate:-120%}80%,to{translate:120%}}.share-close{width:28px;height:28px;color:var(--muted);background:var(--fill-quiet);cursor:pointer;transition:background-color var(--fast) var(--ease), color var(--fast) var(--ease), rotate .3s var(--spring);border:0;border-radius:50%;place-items:center;padding:0;display:grid}.share-close:hover{color:var(--ink);rotate:90deg}.share-close .icon{stroke-width:2.4px;width:13px;height:13px}.share-pop .share-form{gap:10px;display:grid}.share-row{color:var(--ink);gap:7px;margin:0;font-size:13px;font-weight:400;display:grid}.share-label{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.share-label .pro{color:#fff;background:var(--ai-gradient);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:10.5px;font-weight:700}.chips{background:var(--fill-quiet);border-radius:10px;grid-template-columns:repeat(4,1fr);gap:2px;padding:2px;display:grid}.chips button{min-height:30px;color:var(--ink);font:inherit;cursor:pointer;transition:background-color .22s var(--ease), box-shadow .22s var(--ease);background:0 0;border:0;border-radius:8px;padding:0 6px;font-size:12.5px;font-weight:500}.chips button:hover{background:color-mix(in srgb, var(--thumb) 50%, transparent)}.chips button[aria-checked=true]{background:var(--thumb);animation:chip-pick .36s var(--spring);font-weight:650;box-shadow:0 1px 3px #0000001f,0 0 0 .5px #0000000a}@keyframes chip-pick{0%{scale:.9}to{scale:1}}.share-pop .lock-row input{height:36px;color:var(--ink);background:var(--fill-quiet);font:inherit;transition:background-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);border:0;border-radius:10px;padding:0 12px;font-size:13.5px}.share-pop .lock-row input:focus{background:var(--surface);box-shadow:var(--focus-ring)}.share-pop .lock-row input:disabled{opacity:.7;cursor:not-allowed}.share-go{justify-content:center;align-items:center;gap:8px;width:100%;min-height:42px;margin-top:2px;font-size:14px;display:flex;position:relative;overflow:hidden}.share-go:after{content:"";background:linear-gradient(110deg,#0000 35%,#ffffff59 50%,#0000 65%);transition:translate;position:absolute;inset:0;translate:-110%}.share-go:hover:after{transition:translate .7s var(--ease);translate:110%}.share-go:hover .icon{rotate:-20deg}.share-go .icon{transition:rotate .36s var(--spring)}.share-go.busy{cursor:progress;opacity:1}.share-go.busy .icon{animation:.9s linear infinite spin-link}@keyframes spin-link{to{rotate:360deg}}.share-pop .share-made{background:color-mix(in srgb, var(--green) 9%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--green) 22%, transparent);animation:made-in .52s var(--spring) both;transform-origin:top;border-radius:14px;gap:7px;padding:10px;display:grid}@keyframes made-in{0%{opacity:0;translate:0 -4px;scale:.96}to{opacity:1;translate:0;scale:1}}.share-url{background:var(--surface);box-shadow:var(--raise-1);border-radius:10px;align-items:center;gap:8px;padding:4px 4px 4px 10px;display:flex;position:relative;overflow:hidden}.share-url:after{content:"";background:linear-gradient(110deg, transparent 30%, color-mix(in srgb, var(--green) 22%, transparent) 50%, transparent 70%);animation:url-sweep .9s var(--ease) .18s both;pointer-events:none;position:absolute;inset:0;translate:-110%}@keyframes url-sweep{to{translate:110%}}.share-url>.icon{color:var(--green);flex:none}.share-pop #share-url{min-width:0;height:32px;color:var(--ink);text-overflow:ellipsis;border:0;flex:1;padding:0;font:500 12.5px/1 ui-monospace,SF Mono,Menlo,monospace;box-shadow:none!important;background:0 0!important}.copy{color:#fff;background:var(--accent);height:32px;font:inherit;cursor:pointer;transition:background-color .26s var(--ease), transform var(--fast) var(--ease);border:0;border-radius:8px;flex:none;align-items:center;gap:5px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex;position:relative}.copy:active{transform:scale(.95)}.copy .tick{stroke-width:2.6px;stroke-dasharray:22;stroke-dashoffset:22px;width:0;height:14px;transition:width .26s var(--spring)}.copy.done{background:var(--green);animation:copy-pop .42s var(--spring)}.copy.done .tick{width:14px;animation:tick-draw .38s var(--ease) 80ms forwards}@keyframes copy-pop{0%{scale:1}40%{scale:1.08}to{scale:1}}@keyframes tick-draw{to{stroke-dashoffset:0}}.burst{pointer-events:none;width:0;height:0;position:absolute;inset:50% auto auto 50%}.burst i{background:var(--green);width:5px;height:5px;animation:burst .62s var(--ease) forwards;border-radius:50%;position:absolute;top:-2.5px;left:-2.5px}.burst i:nth-child(3n){background:var(--blue)}.burst i:nth-child(3n+1){background:var(--yellow)}@keyframes burst{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-30px)scale(.4)}}.share-made small{padding:0 2px;font-size:11.5px}.share-made .another{min-height:26px;color:var(--accent);justify-self:start;padding:0 8px;font-size:12.5px;font-weight:600}.share-links{border-top:1px solid var(--hairline);gap:6px;padding-top:12px;display:grid}.share-sub{color:var(--muted);margin:0;font-size:12px;font-weight:600}.share-links ul{gap:2px;max-height:196px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.share-links li{animation:share-rise .38s var(--spring) both;transition:background-color var(--fast) var(--ease);border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:7px 6px;display:grid}.share-links li:hover{background:var(--fill-quiet)}.link-dot{background:var(--green);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 20%, transparent);border-radius:50%;animation:2.4s ease-in-out infinite live}@keyframes live{50%{box-shadow:0 0 0 5px color-mix(in srgb, var(--green) 6%, transparent)}}.link-meta{min-width:0;line-height:1.3;display:grid}.link-meta b{font-size:13px;font-weight:600}.link-meta small{white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.views{color:var(--muted);background:var(--fill-quiet);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex}.views .icon{width:13px;height:13px}.turn-off{height:26px;color:var(--muted);font:inherit;cursor:pointer;transition:background-color var(--fast) var(--ease), color var(--fast) var(--ease);background:0 0;border:0;border-radius:999px;padding:0 10px;font-size:12px;font-weight:600}.turn-off:hover{color:var(--red);background:color-mix(in srgb, var(--red) 12%, transparent)}.share-links .empty{margin:4px 0;font-size:12.5px}.share-pop .error{margin:0;font-size:12.5px}@media (width<=640px){.share-pop{width:auto;position:fixed;top:64px;left:12px;right:12px}.share-pop:before{display:none}}@media (prefers-reduced-motion:reduce){.share-pop,.share-pop>*,.share-made,.share-url:after,.share-badge,.share-badge:after,.link-dot,.share-links li,.copy.done,.burst i,.chips button{animation:none!important}.copy .tick{stroke-dashoffset:0}}.toast .status{font-weight:450}.theme-switch{background:var(--fill-quiet);border-radius:999px;flex:none;grid-template-columns:repeat(3,30px);padding:2px;display:inline-grid;position:relative}.theme-thumb{background:var(--thumb);width:30px;height:calc(100% - 4px);translate:calc(var(--at,0) * 30px) 0;transition:translate .42s var(--spring);border-radius:999px;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000024,0 0 0 .5px #0000000a}.theme-switch button{height:26px;color:var(--muted);cursor:pointer;transition:color var(--medium) var(--ease);background:0 0;border:0;border-radius:999px;place-items:center;padding:0;display:grid;position:relative}.theme-switch button:hover,.theme-switch button[aria-checked=true]{color:var(--ink)}.theme-switch button[aria-checked=true] svg{animation:theme-turn .48s var(--spring)}.theme-switch svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.theme-switch button[aria-label=Auto\ theme] svg path{fill:none}.theme-switch button[aria-label=Dark][aria-checked=true] svg{fill:currentColor}.theme-switch button[aria-label=Light][aria-checked=true]{color:var(--orange)}.theme-switch button[aria-label=Dark][aria-checked=true]{color:var(--ink)}@keyframes theme-turn{0%{rotate:-40deg;scale:.7}to{rotate:0deg;scale:1}}.sidebar-foot .theme-switch{margin-left:36px}.history-anchor{position:relative}.history-pop{z-index:30;width:min(380px,100vw - 24px);max-height:min(560px,100dvh - 90px);color:var(--ink);background:var(--surface);box-shadow:var(--raise-3);transform-origin:calc(100% - 96px) -8px;animation:share-in .46s var(--spring) both;text-align:left;border-radius:20px;grid-template-rows:auto auto auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:14px;padding:16px;display:grid;position:absolute;top:calc(100% + 12px);right:-60px}.history-pop:before{content:"";background:var(--surface);width:14px;height:14px;box-shadow:-1px -1px 0 0 var(--hairline);border-radius:3px 0 0;position:absolute;top:-6px;right:88px;rotate:45deg}.history-pop>*{animation:share-rise .42s var(--spring) both}.history-pop>:nth-child(2){animation-delay:50ms}.history-pop>:nth-child(3),.history-pop>:nth-child(4){animation-delay:.1s}.history-pop .icon{width:15px;height:15px}.history-badge{background:linear-gradient(140deg, var(--orange), var(--pink) 70%);box-shadow:0 6px 16px -6px color-mix(in srgb, var(--pink) 70%, transparent), inset 0 0 0 .5px #ffffff4d}.history-pop .version-form{gap:8px;display:flex}.version-field{min-width:0;height:38px;color:var(--muted);background:var(--fill-quiet);transition:background-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);border-radius:10px;flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.version-field:focus-within{background:var(--surface);box-shadow:var(--focus-ring);color:var(--accent)}.history-pop .version-field input{min-width:0;height:100%;color:var(--ink);font:inherit;border:0;flex:1;padding:0;font-size:13.5px;box-shadow:none!important;background:0 0!important}.history-pop .version-form .button.primary{flex:none;min-height:38px;padding:0 14px;font-size:13px}.timeline{overscroll-behavior:contain;align-content:start;gap:12px;min-height:0;margin:0 -6px;padding:2px 6px;display:grid;overflow-y:auto}.timeline section{gap:4px;display:grid}.timeline .share-sub{z-index:1;background:var(--surface);padding:2px 0 4px;position:sticky;top:0}.history-pop .versions{gap:0;margin:0;padding:0;list-style:none;display:grid;position:relative}.history-pop .versions:before{content:"";background:linear-gradient(var(--hairline), var(--hairline));border-radius:2px;width:2px;position:absolute;top:18px;bottom:18px;left:19px}.history-pop .versions li{animation:share-rise .38s var(--spring) both;transition:background-color var(--fast) var(--ease);border:0;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 6px;display:grid;position:relative}.history-pop .versions li:hover{background:var(--fill-quiet)}.version-dot{z-index:1;width:28px;height:28px;color:var(--muted);background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--hairline);transition:scale .3s var(--spring);border-radius:50%;place-items:center;display:grid;position:relative}.version-dot .icon{width:14px;height:14px}.versions li:hover .version-dot{scale:1.08}[data-reason=manual] .version-dot{color:#fff;background:var(--accent);box-shadow:0 2px 6px -2px color-mix(in srgb, var(--accent) 70%, transparent)}[data-reason=manual] .version-dot .icon{fill:currentColor}[data-reason=before_prompt] .version-dot{color:#fff;background:var(--ai-gradient);box-shadow:none}[data-reason=before_prompt] .version-dot .icon{fill:currentColor}[data-reason=before_restore] .version-dot{color:var(--orange);box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--orange) 45%, transparent)}.version-meta{min-width:0;line-height:1.3;display:grid}.version-meta b{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.version-meta small{font-size:11.5px}.restore{height:28px;color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);font:inherit;cursor:pointer;opacity:0;transition:opacity var(--fast) var(--ease), translate .3s var(--spring), background-color var(--fast) var(--ease);border:0;border-radius:999px;padding:0 12px;font-size:12.5px;font-weight:600;translate:6px}.versions li:hover .restore,.versions li:focus-within .restore,.restore:disabled{opacity:1;translate:0}.restore:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 18%, transparent)}.restore:disabled{cursor:progress;opacity:.6}@media (hover:none){.restore{opacity:1;translate:0}}.versions li.fresh{animation:share-rise .38s var(--spring) both, fresh 1.6s var(--ease) .2s}.versions li.fresh .version-dot{animation:dot-pop .6s var(--spring)}@keyframes fresh{0%{background:color-mix(in srgb, var(--accent) 16%, transparent)}to{background:0 0}}@keyframes dot-pop{0%{scale:.4}60%{scale:1.2}to{scale:1}}.timeline-loading{gap:8px;display:grid}.timeline-loading span{background:linear-gradient(100deg, var(--fill-quiet) 30%, color-mix(in srgb, var(--fill-quiet) 40%, transparent) 50%, var(--fill-quiet) 70%) 0 0 / 300% 100%;border-radius:12px;height:42px;animation:1.3s linear infinite shimmer}.timeline .empty{margin:4px 0;font-size:12.5px}.history-pop .error{margin:0;font-size:12.5px}@media (width<=640px){.history-pop{width:auto;position:fixed;top:64px;left:12px;right:12px}.history-pop:before{display:none}}@media (prefers-reduced-motion:reduce){.history-pop,.history-pop>*,.history-pop .versions li,.versions li.fresh,.version-dot,.theme-thumb,.theme-switch svg,.timeline-loading span{transition:none!important;animation:none!important}}.shape-menu .tool:hover,.shape-menu .tool[aria-expanded=true]{background:var(--fill-quiet)}.shape-menu .tool[aria-pressed=true]{color:var(--accent);background:color-mix(in srgb, var(--accent) 13%, transparent);box-shadow:none}.shape-menu .tool.glyph{width:30px;min-width:30px;padding:0;font-size:15px}.shape-menu .tool.glyph b{font-weight:800}.shape-menu .tool.glyph i{font-family:ui-serif,Georgia,serif;font-size:16px}.shape-menu .tool.glyph u{text-underline-offset:2px}.shape-menu .tool .icon{width:16px;height:16px}.shape-menu .font-pick{justify-content:space-between;gap:4px;min-width:96px;padding:0 8px 0 10px;font-size:13px;font-weight:500}.shape-menu .font-pick span{white-space:nowrap;text-overflow:ellipsis;max-width:90px;overflow:hidden}.shape-menu .font-pick .chevron{fill:none;width:10px;height:10px;stroke:var(--muted);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.tool-pop.font-list{gap:2px;width:196px;padding:6px;display:grid}.shape-menu .font-list button{width:100%;height:40px;color:var(--ink);text-align:left;box-shadow:none;background:0 0;border:0;border-radius:9px;grid-template-columns:34px 1fr 16px;place-items:center start;gap:8px;padding:0 10px 0 6px;font-size:15px;display:grid}.shape-menu .font-list button:hover{background:var(--fill-quiet)}.font-list .font-sample{width:34px;height:28px;color:var(--muted);background:var(--fill-quiet);border-radius:7px;place-items:center;font-size:15px;display:grid}.font-list .icon{visibility:hidden;width:16px;height:16px;color:var(--accent);stroke-width:2.4px}.shape-menu .font-list button[aria-selected=true]{color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent)}.font-list button[aria-selected=true] .icon{visibility:visible}.font-list button[aria-selected=true] .font-sample{color:#fff;background:var(--accent)}.size-step{background:var(--fill-quiet);border-radius:8px;align-items:center;height:30px;margin:0 2px;padding:0 2px;display:inline-flex}.shape-menu .size-step button{width:24px;min-width:0;height:26px;color:var(--muted);box-shadow:none;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.shape-menu .size-step button:hover:not(:disabled){color:var(--ink);background:var(--surface)}.shape-menu .size-step button:disabled{opacity:.35}.size-step .icon{stroke-width:2.2px;width:13px!important;height:13px!important}.size-step input{width:30px;height:26px;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;text-align:center;background:0 0;border:0;border-radius:6px;padding:0;font-size:13px;font-weight:600}.size-step input:focus{background:var(--surface);box-shadow:var(--focus-ring)}.shape-menu .text-colour{align-content:center;justify-items:center;gap:2px;width:30px;min-width:30px;padding:0;display:inline-grid}.text-colour .letter{font-size:14px;font-weight:700;line-height:1;display:block}.text-colour .colour-bar{border-radius:2px;width:16px;height:3px;display:block;box-shadow:inset 0 0 0 .5px #00000026}.icon.filled{fill:currentColor}.weight-pick .icon path{stroke-linecap:round}.tool-pop.weight-list{gap:2px;width:168px;padding:6px;display:grid}.edge-editor .weight-list button{width:100%;height:34px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:56px 1fr;align-items:center;gap:10px;padding:0 10px;font-size:13px;display:grid}.edge-editor .weight-list button:hover{background:var(--fill-quiet)}.edge-editor .weight-list button[aria-selected=true]{color:var(--accent);background:color-mix(in srgb, var(--accent) 11%, transparent);font-weight:600}.weight-sample{background:currentColor;border-radius:4px;width:56px;min-height:1px;display:block}.link-button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;margin-left:6px;padding:0;font-weight:600;display:inline}.link-button:disabled{opacity:.6;cursor:progress}.sheet-backdrop{z-index:80;-webkit-backdrop-filter:blur(6px)saturate(140%);backdrop-filter:blur(6px)saturate(140%);animation:fade-in .26s var(--ease) both;background:#00000052;place-items:center;padding:16px;display:grid;position:fixed;inset:0;overflow-y:auto}.upgrade-sheet{width:min(520px,100%);color:var(--ink);background:var(--surface);box-shadow:var(--raise-3);animation:sheet-in .56s var(--spring) both;border-radius:26px;gap:16px;padding:26px 24px 20px;display:grid;position:relative}@keyframes sheet-in{0%{opacity:0;translate:0 18px;scale:.92}}.upgrade-sheet>*{animation:share-rise .46s var(--spring) both}.upgrade-sheet>:nth-child(3){animation-delay:60ms}.upgrade-sheet>:nth-child(4){animation-delay:.1s}.upgrade-sheet>:nth-child(5){animation-delay:.14s}.sheet-close{z-index:2;position:absolute;top:14px;right:14px}.upgrade-hero{text-align:center;justify-items:center;gap:6px;display:grid}.upgrade-hero h2{letter-spacing:-.025em;margin:6px 0 0;font-size:24px;font-weight:750}.upgrade-hero p{max-width:360px;margin:0;font-size:14px}.pro-orb{color:#fff;background:var(--ai-gradient);border-radius:18px;place-items:center;width:56px;height:56px;animation:3.4s ease-in-out infinite badge-bob;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 26px -8px #8e5cffa6,inset 0 0 0 .5px #ffffff59}.pro-orb:after{content:"";background:linear-gradient(115deg,#0000 30%,#ffffff80 50%,#0000 70%);animation:3.4s ease-in-out infinite shine;position:absolute;inset:0;translate:-120%}.pro-orb svg{fill:currentColor;width:28px;height:28px}.interval{background:var(--fill-quiet);border-radius:12px;grid-template-columns:1fr 1fr;justify-self:center;gap:2px;width:min(300px,100%);padding:3px;display:grid;position:relative}.interval button{height:34px;color:var(--ink);font:inherit;cursor:pointer;transition:background-color .26s var(--ease), box-shadow .26s var(--ease);background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:6px;font-size:13.5px;font-weight:500;display:inline-flex}.interval button[aria-checked=true]{background:var(--thumb);font-weight:650;box-shadow:0 1px 3px #0000001f,0 0 0 .5px #0000000a}.interval button:disabled{opacity:.45;cursor:default}.interval .save{color:#fff;background:var(--green);border-radius:999px;padding:1px 7px;font-size:10.5px;font-weight:700}.plans{grid-template-columns:1fr 1.25fr;gap:10px;display:grid}.plan-card{background:var(--fill-quiet);border-radius:16px;align-content:start;gap:2px;padding:14px 16px;display:grid;position:relative}.plan-card[data-plan=pro]{color:#fff;background:linear-gradient(140deg,#0a84ff,#5e5ce6 55%,#bf5af2);box-shadow:0 12px 28px -12px #5e5ce6b3}.plan-name{opacity:.85;font-size:13px;font-weight:600}.plan-price{letter-spacing:-.03em;font-variant-numeric:tabular-nums;animation:chip-pick .42s var(--spring);font-size:30px;font-weight:750}.plan-price small{opacity:.75;letter-spacing:0;margin-left:2px;font-size:13px;font-weight:500}.plan-note{opacity:.85;font-size:12px}.plan-tag{background:#ffffff38;border-radius:999px;padding:2px 8px;font-size:10.5px;font-weight:700;position:absolute;top:12px;right:12px}.plan-card[data-plan=free] .plan-tag{color:var(--muted);background:var(--surface)}.compare{border-collapse:collapse;width:100%;font-size:13px}.compare th,.compare td{border-bottom:1px solid var(--hairline);text-align:left;padding:8px 4px;font-weight:400}.compare tr:last-child th,.compare tr:last-child td{border-bottom:0}.compare th{color:var(--muted)}.compare td:last-child{color:var(--ink);font-weight:600}.compare td:nth-child(2){color:var(--muted)}.upgrade-go{justify-content:center;align-items:center;width:100%;min-height:46px;font-size:15px;text-decoration:none;display:flex;position:relative;overflow:hidden}#upgrade-go.button.primary{background:var(--ai-gradient);transition:background-position .7s var(--ease), transform var(--fast) var(--ease);background-size:160% 100%;box-shadow:0 8px 20px -8px #8e5cffb3}#upgrade-go.button.primary:hover{background-position:100% 0}.upgrade-go.busy{cursor:progress}.upgrade-go.busy:after{content:"";background:linear-gradient(110deg,#0000 30%,#ffffff4d 50%,#0000 70%);animation:1.1s linear infinite url-sweep;position:absolute;inset:0;translate:-110%}.fine{text-align:center;margin:-4px 0 0;font-size:11.5px}.share-label button.pro{cursor:pointer;font:inherit;border:0;font-size:10.5px;font-weight:700}.plan-box{background:var(--surface);box-shadow:var(--raise-1);border-radius:14px;gap:8px;margin:0 2px;padding:12px;display:grid}.plan-box.pro{grid-template-columns:auto 1fr;align-items:center;gap:4px 8px}.plan-box.pro .link-button{grid-column:1/-1;justify-self:start;margin:0;font-size:12.5px}.plan-chip{color:#fff;background:var(--ai-gradient);border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:700}.plan-meter{justify-content:space-between;align-items:baseline;gap:8px;font-size:12.5px;font-weight:600;display:flex}.plan-meter small{font-size:11.5px;font-weight:500}.meter{background:var(--fill-quiet);border-radius:999px;height:5px;overflow:hidden}.meter span{background:var(--accent);border-radius:inherit;height:100%;transition:width .6s var(--spring);display:block}.meter span[data-full]{background:var(--orange)}.upgrade-pill{color:#fff;background:var(--ai-gradient);height:32px;font:inherit;cursor:pointer;transition:background-position .6s var(--ease), transform var(--fast) var(--ease);background-size:160% 100%;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;font-size:12.5px;font-weight:650;display:inline-flex;box-shadow:0 4px 12px -6px #8e5cffcc}.upgrade-pill:hover{background-position:100% 0}.upgrade-pill:active{transform:scale(.97)}.upgrade-pill svg{fill:currentColor;width:14px;height:14px}.billing-done{place-items:center;min-height:100vh;padding:24px;display:grid}.done-card{text-align:center;background:var(--surface);width:min(420px,100%);box-shadow:var(--raise-3);animation:sheet-in .56s var(--spring) both;border-radius:28px;justify-items:center;gap:12px;padding:36px 28px 28px;display:grid;position:relative}.done-card h1{letter-spacing:-.025em;margin:6px 0 0;font-size:26px;font-weight:750}.done-card p{margin:0 0 6px}.pro-orb.big{border-radius:24px;width:72px;height:72px}.done-tick{stroke:#fff;stroke-width:2.8px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24px;animation:tick-draw .52s var(--ease) .12s forwards;fill:none!important;width:36px!important;height:36px!important}.spinner{border:3px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:26px;height:26px;animation:.8s linear infinite spin-link}.confetti{pointer-events:none;width:0;height:0;position:absolute;top:72px;left:50%}.confetti i{background:hsl(calc(var(--i) * 40) 90% 60%);width:7px;height:11px;rotate:calc(var(--i) * 20deg);border-radius:2px;animation:1.4s cubic-bezier(.2,.7,.3,1) forwards confetti;position:absolute}@keyframes confetti{0%{opacity:1;transform:translate(0)rotate(0)}to{opacity:0;transform:translate(calc((var(--i) - 9) * 22px), calc(140px - (var(--i) * 5px))) rotate(540deg)}}@media (prefers-reduced-motion:reduce){.sheet-backdrop,.upgrade-sheet,.upgrade-sheet>*,.pro-orb,.pro-orb:after,.plan-price,.done-card,.confetti i{animation:none!important}.done-tick{stroke-dashoffset:0}}.sidebar .plan-box{margin-top:auto}.sidebar .plan-box+.sidebar-foot,.sidebar .feedback-link+.sidebar-foot{margin-top:0}#live-ai[aria-pressed=false] .live-dot{background:var(--gray);box-shadow:0 0 0 3px color-mix(in srgb, var(--gray) 22%, transparent);animation:none}#live-ai[aria-pressed=false]{color:var(--muted)}:root{--accent:#0a8f8a;--accent-strong:#0a8f8a;--accent-hover:#077570;--accent-soft:#e3f5f3;--topic:#e3f5f3;--on-accent:#fff;--ai-gradient:linear-gradient(120deg, #14b8a6 0%, #3b82f6 55%, #8b5cf6 100%);--ai-glow:#3b82f673}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--accent:#2ec4b6;--accent-strong:#2ec4b6;--accent-hover:#5ed6cb;--accent-soft:#0f3533;--topic:#12403c;--on-accent:#00201e}}:root[data-theme=dark]{--accent:#2ec4b6;--accent-strong:#2ec4b6;--accent-hover:#5ed6cb;--accent-soft:#0f3533;--topic:#12403c;--on-accent:#00201e}.button.primary,.editor .button.primary,.copy,.font-list button[aria-selected=true] .font-sample,[data-reason=manual] .version-dot{color:var(--on-accent)}.button.primary{box-shadow:0 1px 2px #0000001a, 0 4px 12px -4px color-mix(in srgb, var(--accent) 55%, transparent)}#ask-ai.button.primary,#upgrade-go.button.primary,.upgrade-pill,.ai-panel .button.primary{color:#fff}#ask-ai.button.primary{box-shadow:0 2px 10px -2px var(--ai-glow)}#ask-ai.button.primary:hover,#ask-ai.button.primary[aria-pressed=true]{box-shadow:0 4px 16px -2px #8b5cf673}#upgrade-go.button.primary,.upgrade-pill{box-shadow:0 8px 20px -8px var(--ai-glow)}.pro-orb{box-shadow:0 10px 26px -8px var(--ai-glow), inset 0 0 0 .5px #ffffff59}.brand-mark{box-shadow:0 2px 8px -2px var(--ai-glow), inset 0 0 0 .5px #ffffff4d}.plan-card[data-plan=pro]{background:linear-gradient(140deg,#0d9488,#2563eb 60%,#7c3aed);box-shadow:0 12px 28px -12px #2563eb99}.share-badge:not(.history-badge){background:linear-gradient(140deg,#14b8a6,#0a8f8a 55%,#2563eb);box-shadow:0 6px 16px -6px #0d948899,inset 0 0 0 .5px #ffffff4d}.tile[data-tint=blue]{--tile:var(--accent-strong)}.site{background:var(--paper);min-height:100vh}.site-head{z-index:20;padding:12px max(20px, env(safe-area-inset-left));background:var(--glass);-webkit-backdrop-filter:var(--vibrancy);backdrop-filter:var(--vibrancy);border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;gap:16px;display:flex;position:sticky;top:0}.site-brand{color:var(--ink);align-items:center;gap:9px;text-decoration:none;display:inline-flex}.site-brand .brand{letter-spacing:-.022em;font-size:17px;font-weight:750}.site-head nav{align-items:center;gap:4px;display:flex}.site-head nav a:not(.button){color:var(--ink);transition:background-color var(--fast) var(--ease);border-radius:999px;padding:7px 12px;font-size:14px;font-weight:500;text-decoration:none}.site-head nav a:not(.button):hover{background:var(--fill-quiet)}.site-head .button.primary{padding:7px 16px;font-size:14px;text-decoration:none}.site main{gap:96px;width:min(1120px,100%);margin:0 auto;padding:56px 20px 80px;display:grid}.site main>section{animation:share-rise .7s var(--spring) both}.site h2{letter-spacing:-.03em;text-align:center;margin:0 0 22px;font-size:clamp(26px,3.4vw,36px);font-weight:750}.lede{max-width:560px;color:var(--muted);margin:0;font-size:18px;line-height:1.5}.small{font-size:13px}.button.big{padding:13px 22px;font-size:16px;font-weight:600;text-decoration:none}a.button{color:var(--ink);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}a.button.primary{color:var(--on-accent)}.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:center;gap:48px;display:grid}.hero-copy{gap:18px;display:grid}.eyebrow{color:var(--accent);background:var(--accent-soft);border-radius:999px;justify-self:start;margin:0;padding:4px 12px;font-size:13px;font-weight:650}.hero h1{letter-spacing:-.045em;margin:0;font-size:clamp(44px,6.4vw,76px);font-weight:800;line-height:1.02}.gradient-text{background:var(--ai-gradient);color:#0000;-webkit-background-clip:text;background-clip:text}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.demo{background:var(--surface);box-shadow:var(--raise-3);border-radius:20px;overflow:hidden}.demo-bar{border-bottom:1px solid var(--hairline);color:var(--muted);align-items:center;gap:6px;padding:11px 14px;font-size:12.5px;font-weight:600;display:flex}.demo-bar i{background:#ff5f57;border-radius:50%;width:11px;height:11px}.demo-bar i:nth-child(2){background:#febc2e}.demo-bar i:nth-child(3){background:#28c840;margin-right:8px}.demo-body{background:radial-gradient(var(--dot) 1px, transparent 1.2px) 0 0 / 16px 16px, var(--paper);grid-template-columns:.85fr 1fr;min-height:360px;display:grid}.demo-lines{border-right:1px solid var(--hairline);background:var(--surface);counter-reset:line;align-content:start;gap:8px;margin:0;padding:22px 18px;list-style:none;display:grid}.demo-lines li{color:var(--ink);counter-increment:line;gap:10px;font:500 13.5px/1.4 ui-monospace,SF Mono,Menlo,monospace;display:flex}.demo-lines li:before{content:counter(line);color:var(--muted);opacity:.6}.demo-lines span{white-space:nowrap;border-right:2px solid var(--accent);width:0;animation:10s steps(14,end) infinite type-line;animation-delay:calc(var(--n) * 1.4s);display:inline-block;overflow:hidden}@keyframes type-line{0%{border-color:var(--accent);width:0}9%{border-color:var(--accent);width:14ch}11%,88%{border-color:#0000;width:14ch}96%,to{border-color:#0000;width:0}}.demo-canvas{width:100%;height:100%;padding:12px}.demo-canvas rect,.demo-canvas .decision{fill:var(--surface);stroke:color-mix(in srgb, var(--ink) 22%, transparent);stroke-width:1.2px}.demo-canvas .pill{fill:var(--ink);stroke:none}.demo-canvas .decision{fill:#ffe08a;stroke:#c9a227}.demo-canvas path:not(.decision){fill:none;stroke:var(--accent);stroke-width:1.6px}.demo-canvas text{fill:var(--ink);text-anchor:middle;font:600 11.5px -apple-system,BlinkMacSystemFont,Plus Jakarta Sans Variable,sans-serif}.demo-canvas .pill+text{fill:var(--surface)}.demo-canvas .decision+text{fill:#4a3500}.demo-canvas .label{fill:var(--muted);text-anchor:start;font-size:10px}.demo-step{opacity:0;transform-box:fill-box;transform-origin:50%;animation:grow-step 10s var(--spring) infinite;animation-delay:calc(var(--n) * 1.4s + .9s)}@keyframes grow-step{0%{opacity:0;translate:0 -6px;scale:.7}6%,82%{opacity:1;translate:0;scale:1}90%,to{opacity:0;scale:.96}}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.feature{background:var(--surface);box-shadow:var(--raise-1);transition:transform .42s var(--spring), box-shadow var(--medium) var(--ease);border-radius:20px;align-content:start;gap:8px;padding:22px;display:grid}.feature:hover{box-shadow:var(--raise-2);transform:translateY(-4px)}.feature h3{letter-spacing:-.015em;margin:6px 0 0;font-size:17px;font-weight:700}.feature p{margin:0;font-size:14.5px;line-height:1.5}.feature-icon{color:#fff;background:var(--ai-gradient);width:40px;height:40px;box-shadow:0 6px 16px -8px var(--ai-glow);border-radius:12px;place-items:center;display:grid}.feature-icon svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.feature:nth-child(3n+2) .feature-icon{background:linear-gradient(140deg,#14b8a6,#0a8f8a)}.feature:nth-child(3n) .feature-icon{background:linear-gradient(140deg,#3b82f6,#6366f1)}.steps ol{counter-reset:step;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.steps li{background:var(--surface);box-shadow:var(--raise-1);counter-increment:step;border-radius:20px;gap:6px;padding:22px 22px 22px 66px;display:grid;position:relative}.steps li:before{content:counter(step);width:32px;height:32px;color:var(--on-accent);background:var(--accent);border-radius:50%;place-items:center;font-weight:700;display:grid;position:absolute;top:20px;left:20px}.steps b{font-size:16px}.pricing{justify-items:center;gap:22px;display:grid}.price-cards{grid-template-columns:repeat(2,minmax(0,340px));gap:18px;display:grid}.price-card{background:var(--surface);box-shadow:var(--raise-1);border-radius:24px;align-content:start;gap:12px;padding:26px;display:grid;position:relative}.price-card.pro{box-shadow:0 0 0 2px var(--accent), var(--raise-2)}.price-card h3{margin:0;font-size:18px;font-weight:700}.price-card .amount{letter-spacing:-.04em;animation:chip-pick .42s var(--spring);margin:0;font-size:42px;font-weight:800}.price-card .amount small{color:var(--muted);letter-spacing:0;margin-left:3px;font-size:15px;font-weight:500}.price-card>p.muted{margin:-6px 0 4px;font-size:13.5px}.price-card .button{min-height:42px;font-size:15px;font-weight:600}.price-card ul{gap:0;margin:6px 0 0;padding:0;list-style:none;display:grid}.price-card li{border-top:1px solid var(--hairline);justify-content:space-between;gap:12px;padding:9px 0;font-size:13.5px;display:flex}.price-card li span{color:var(--muted)}.price-card li b{text-align:right;font-weight:600}.popular{color:#fff;background:var(--ai-gradient);box-shadow:0 6px 14px -6px var(--ai-glow);border-radius:999px;padding:4px 11px;font-size:12px;font-weight:700;position:absolute;top:-12px;right:22px}.faq{gap:10px;width:min(720px,100%);margin:0 auto;display:grid}.faq details{background:var(--surface);box-shadow:var(--raise-1);border-radius:16px;padding:4px 20px}.faq summary{cursor:pointer;justify-content:space-between;gap:12px;padding:14px 0;font-size:15.5px;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--muted);transition:rotate .3s var(--spring);font-size:20px;line-height:1}.faq details[open] summary:after{rotate:45deg}.faq details p{margin:0 0 16px;line-height:1.55}.closing{text-align:center;background:var(--surface);box-shadow:var(--raise-1);border-radius:28px;justify-items:center;gap:18px;padding:48px 20px;display:grid}.closing h2{margin:0}.site-foot{border-top:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;width:min(1120px,100%);margin:0 auto;padding:28px 20px 40px;display:flex}.site-foot nav{flex-wrap:wrap;gap:18px;display:flex}.site-foot nav a{color:var(--muted);font-size:14px;text-decoration:none}.site-foot nav a:hover{color:var(--ink)}.pricing-page{text-align:center;justify-items:center;gap:36px!important}.pricing-page h1,.legal h1{letter-spacing:-.04em;margin:0;font-size:clamp(36px,5vw,52px);font-weight:800}.pricing-page .lede{margin:-20px auto 0}.pricing-page .faq{text-align:left}.legal{max-width:760px!important;display:block!important}.legal>p.muted{margin:8px 0 22px;font-size:13.5px}.legal h2{text-align:left;margin:34px 0 10px;font-size:21px}.legal p,.legal li{font-size:15.5px;line-height:1.65}.legal ul{padding-left:20px}.legal li+li{margin-top:6px}@media (width<=860px){.hero,.steps ol,.price-cards,.feature-grid{grid-template-columns:minmax(0,1fr)}.site main{gap:64px;padding-top:32px}.site-head nav a.wide-only{display:none}.demo-body{min-height:300px}}@media (prefers-reduced-motion:reduce){.demo-lines span{border-color:#0000;width:14ch;animation:none}.demo-step{opacity:1;animation:none}.site main>section,.price-card .amount{animation:none}}.settings{gap:18px;width:min(680px,100%);margin:0 auto;padding:28px 20px 64px;display:grid}.settings h1{letter-spacing:-.03em;margin:0 0 4px;font-size:32px;font-weight:750}.back-link{color:var(--accent);justify-self:start;align-items:center;gap:4px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.settings-card{background:var(--surface);box-shadow:var(--raise-1);animation:share-rise .46s var(--spring) both;border-radius:20px;gap:4px;padding:18px 20px;display:grid}.settings-card h2{margin:0 0 6px;font-size:16px;font-weight:700}.setting{border-top:1px solid var(--hairline);grid-template-columns:140px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:46px;display:grid}.setting:first-of-type{border-top:0}.setting>span:first-child{color:var(--muted);font-size:14px}.setting .value{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:6px;font-size:14.5px;display:flex}.setting .field{height:36px;font:inherit;padding:0 12px;font-size:14.5px}.verified{color:var(--green);background:color-mix(in srgb, var(--green) 14%, transparent);border-radius:999px;padding:1px 8px;font-size:11.5px;font-weight:600}.saved-note{color:var(--green);animation:share-rise .3s var(--spring);font-weight:600}.setting-actions{flex-wrap:wrap;gap:8px;padding-top:10px;display:flex}.setting-actions .upgrade-pill{height:36px;padding:0 16px}.danger-zone{box-shadow:0 0 0 1px color-mix(in srgb, var(--red) 25%, transparent), var(--raise-1)}.danger-zone p{margin:0 0 10px;font-size:14px}.danger-button{color:var(--red);border-color:color-mix(in srgb, var(--red) 40%, transparent);justify-self:start}.danger-button:hover:not(:disabled){background:color-mix(in srgb, var(--red) 10%, transparent)}.danger-button.solid{color:#fff;background:var(--red);border-color:var(--red)}.delete-confirm{animation:share-rise .36s var(--spring);gap:10px;display:grid}.delete-confirm label{color:var(--muted);gap:6px;font-size:13.5px;display:grid}.delete-confirm .field{height:38px;font:inherit;color:var(--ink);padding:0 12px}@media (width<=560px){.setting{grid-template-columns:minmax(0,1fr);gap:4px;padding:8px 0}}.feedback-sheet{background:var(--surface);width:min(460px,100%);box-shadow:var(--raise-3);animation:sheet-in .52s var(--spring) both;border-radius:24px;gap:14px;padding:20px;display:grid}.feedback-head{justify-content:space-between;align-items:center;display:flex}.feedback-head h2{margin:0;font-size:19px;font-weight:700}.chips.kinds{grid-template-columns:repeat(3,1fr)}.chips.kinds button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.chips.kinds .icon{width:15px;height:15px}.feedback-sheet textarea{min-height:120px;color:var(--ink);background:var(--fill-quiet);font:inherit;resize:vertical;border:0;border-radius:12px;padding:12px;font-size:14.5px}.feedback-sheet textarea:focus{background:var(--surface);box-shadow:var(--focus-ring)}.feedback-foot{justify-content:space-between;align-items:center;gap:12px;display:flex}.feedback-foot small{font-size:12px}.feedback-done{text-align:center;justify-items:center;gap:8px;padding:18px 0 10px;display:grid}.feedback-done h2{margin:8px 0 0;font-size:22px}.feedback-done p{margin:0}.dock-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linejoin:round;width:15px;height:15px}.dock-button{place-items:center;display:grid}.who-link{min-width:0;color:inherit;transition:background-color var(--fast) var(--ease);border-radius:10px;flex:calc(100% - 4px);align-items:center;gap:8px;margin:-2px;padding:2px;text-decoration:none;display:flex}.who-link:hover{background:var(--fill-quiet)}.who-link .who{flex:1}.sidebar .feedback-link{color:var(--muted);margin-top:auto}.sidebar .feedback-link+.plan-box{margin-top:0}.sidebar .feedback-link .icon{width:16px;height:16px}.demo-lines span{border-right-color:#0000;animation-fill-mode:backwards}.setting .theme-switch{justify-self:start}.canvas .react-flow__handle.port,.canvas .react-flow__node:hover .box:not(.ghost) .port,.canvas .box.current:not(.ghost) .port,.canvas .react-flow__node:hover>.group-box>.port{visibility:hidden;opacity:0}.canvas .react-flow__handle.connector{visibility:hidden;opacity:0;cursor:crosshair;width:22px;min-width:0;height:22px;min-height:0;transition:opacity var(--fast) var(--ease), visibility 0s linear var(--fast);background:0 0;border:0;border-radius:50%}.canvas .react-flow__handle.connector:after{content:"";background:var(--accent);border:2px solid var(--surface);transition:scale .22s var(--spring);border-radius:50%;position:absolute;inset:6px;box-shadow:0 1px 3px #0003}.canvas .react-flow__handle.connector:hover:after{scale:1.35}.canvas .react-flow__handle.connector.react-flow__handle-top{top:-26px}.canvas .react-flow__handle.connector.react-flow__handle-bottom{top:auto;bottom:-26px}.canvas .react-flow__handle.connector.react-flow__handle-left{left:-26px}.canvas .react-flow__handle.connector.react-flow__handle-right{left:auto;right:-26px}.canvas .react-flow__node:hover .box:not(.ghost) .connector,.canvas .box.picked .connector,.canvas .react-flow__node:hover>.group-box>.connector{visibility:visible;opacity:1;transition-delay:0s}.canvas .box.editing .connector{visibility:hidden!important}.canvas .react-flow__handle.connector:before{content:"";background:0 0;position:absolute}.canvas .react-flow__handle.connector.react-flow__handle-top:before{height:30px;top:50%;left:0;right:0}.canvas .react-flow__handle.connector.react-flow__handle-bottom:before{height:30px;bottom:50%;left:0;right:0}.canvas .react-flow__handle.connector.react-flow__handle-left:before{width:30px;top:0;bottom:0;left:50%}.canvas .react-flow__handle.connector.react-flow__handle-right:before{width:30px;top:0;bottom:0;right:50%}.canvas .react-flow__handle.connector{transition:opacity var(--fast) var(--ease) .18s, visibility 0s linear .34s}.canvas .react-flow__node:hover .box:not(.ghost) .connector,.canvas .box.picked .connector,.canvas .react-flow__node:hover>.group-box>.connector{transition:opacity var(--fast) var(--ease), visibility 0s}.resize.ne,.resize.nw,.resize.se,.resize.sw{background:var(--surface);border:1.5px solid color-mix(in srgb, var(--ink) 40%, transparent);border-radius:50%;width:10px;height:10px;box-shadow:0 1px 2px #0000001f}.resize.ne{top:-5px;right:-5px}.resize.nw{top:-5px;left:-5px}.resize.se{bottom:-5px;right:-5px}.resize.sw{bottom:-5px;left:-5px}.resize.ne:hover,.resize.nw:hover,.resize.se:hover,.resize.sw:hover{border-color:var(--accent);scale:1.2}.toolbox button[aria-pressed=true]{color:var(--on-accent);background:var(--accent);box-shadow:0 2px 8px -2px color-mix(in srgb, var(--accent) 60%, transparent)}.toolbox button[aria-pressed=true] .shape-icon *{stroke:currentColor}.draw-layer{z-index:30;cursor:crosshair;touch-action:none;position:absolute;inset:0}.draw-tip{color:var(--ink);background:var(--glass-strong);-webkit-backdrop-filter:var(--vibrancy);backdrop-filter:var(--vibrancy);box-shadow:var(--raise-2);pointer-events:none;animation:share-rise .3s var(--spring);border-radius:999px;padding:7px 14px;font-size:13px;position:absolute;top:14px;left:50%;translate:-50%}.draw-preview{border:1.5px dashed var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent);pointer-events:none;border-radius:8px;position:fixed}.draw-preview[data-shape=pill],.draw-preview[data-shape=circle]{border-radius:999px}.layout-switch{height:30px;color:var(--ink);font:inherit;cursor:pointer;transition:background-color var(--fast) var(--ease);background:0 0;border:0;border-radius:999px;flex:none;align-items:center;gap:8px;padding:0 10px 0 6px;font-size:13px;font-weight:500;display:inline-flex}.layout-switch:hover:not(:disabled){background:var(--fill-quiet)}.layout-switch:disabled{opacity:.45;cursor:default}.layout-switch .track{background:var(--fill-quiet);width:30px;height:18px;box-shadow:inset 0 0 0 1px var(--hairline);transition:background-color .26s var(--ease);border-radius:999px;position:relative}.layout-switch .knob{width:14px;height:14px;transition:translate .32s var(--spring);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000040}.layout-switch[aria-checked=true] .track{background:var(--accent);box-shadow:none}.layout-switch[aria-checked=true] .knob{translate:12px}.canvas .react-flow__panel{z-index:35}.auth-shell{background:var(--paper);grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100vh;display:grid}.auth-art{color:#fff;background:radial-gradient(120% 90% at 0 0,#2dd4bf 0%,#0000 55%),radial-gradient(90% 80% at 100% 100%,#8b5cf6 0%,#0000 60%),linear-gradient(140deg,#0d9488,#2563eb 60%,#6d28d9);grid-template-rows:auto 1fr auto;gap:24px;padding:32px 44px 44px;display:grid;position:relative;overflow:hidden}.auth-art:after{content:"";pointer-events:none;background:radial-gradient(#ffffff29 1px,#0000 1.3px) 0 0/18px 18px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 85%);mask-image:linear-gradient(#000,#0000 85%)}.site-brand.light{color:#fff;z-index:1;position:relative}.site-brand.light .brand-mark{background:#ffffff2e;box-shadow:inset 0 0 0 1px #ffffff59}.art-flow{z-index:1;align-content:center;justify-items:center;gap:0;display:grid;position:relative}.art-box{color:#0f172a;opacity:0;min-width:150px;animation:art-in .7s var(--spring) forwards, art-float 6s ease-in-out infinite;animation-delay:calc(var(--n) * .16s), calc(var(--n) * .16s + .7s);background:#ffffffeb;border-radius:12px;place-items:center;padding:12px 20px;font-size:14px;font-weight:650;display:grid;box-shadow:0 12px 30px -12px #00000073}.art-box.pill{color:#fff;background:#0f172a;border-radius:999px}.art-box.diamond{background:#fde68a;border-radius:14px;width:112px;min-width:0;height:112px;padding:0;rotate:45deg}.art-box.diamond span{color:#4a3500;rotate:-45deg}.art-box.glow{box-shadow:0 0 0 4px #ffffff59,0 16px 34px -10px #00000080}.art-line{transform-origin:top;width:2px;height:30px;animation:art-line .5s var(--ease) forwards;animation-delay:calc(var(--n) * .16s);background:#ffffffbf;scale:1 0}.art-box.diamond+.art-line,.art-line+.art-box.diamond{margin-top:0}.art-line:has(+.diamond){height:42px}.art-box.diamond+.art-line{height:42px}@keyframes art-in{0%{opacity:0;translate:0 10px;scale:.9}to{opacity:1;translate:0;scale:1}}@keyframes art-line{to{scale:1}}@keyframes art-float{50%{translate:0 -3px}}.art-copy{z-index:1;gap:14px;max-width:440px;display:grid;position:relative}.art-copy h2{letter-spacing:-.03em;text-align:left;margin:0;font-size:clamp(26px,2.6vw,34px);font-weight:750;line-height:1.12}.art-copy ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.art-copy li{opacity:.95;align-items:flex-start;gap:10px;font-size:15px;line-height:1.45;display:flex}.art-copy svg{fill:none;stroke:#fff;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;background:#fff3;border-radius:50%;flex:none;width:20px;height:20px;padding:3px}.auth-side{align-content:center;justify-items:center;gap:18px;padding:40px 24px;display:grid}.auth-mobile-brand{display:none}.auth-card{background:var(--surface);width:min(420px,100%);box-shadow:var(--raise-2);animation:sheet-in .56s var(--spring) both;border-radius:24px;gap:22px;padding:32px 30px 28px;display:grid}.auth-card header{gap:6px;display:grid}.auth-card h1{letter-spacing:-.03em;margin:0;font-size:28px;font-weight:750}.auth-card header p{margin:0;font-size:14.5px}.auth-form{gap:16px;display:grid}.auth-form>*{animation:share-rise .46s var(--spring) both}.auth-form>:nth-child(2){animation-delay:40ms}.auth-form>:nth-child(3){animation-delay:80ms}.auth-form>:nth-child(4){animation-delay:.12s}.auth-form>:nth-child(n+5){animation-delay:.16s}.auth-form .lead{margin:0;font-size:14.5px;line-height:1.5}.auth-field{gap:7px;display:grid}.auth-label{color:var(--ink);font-size:13px;font-weight:600}.auth-input{background:var(--fill-quiet);height:46px;transition:background-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);border-radius:12px;align-items:center;gap:10px;padding:0 14px;display:flex;position:relative}.auth-input:focus-within{background:var(--surface);box-shadow:var(--focus-ring)}.auth-input .icon{width:17px;height:17px;color:var(--muted);transition:color var(--fast) var(--ease);flex:none}.auth-input:focus-within .icon{color:var(--accent)}.auth-input input{min-width:0;height:100%;color:var(--ink);font:inherit;border:0;outline:none;flex:1;padding:0;font-size:15px;box-shadow:none!important;background:0 0!important}.auth-input input::placeholder{color:color-mix(in srgb, var(--muted) 75%, transparent)}.reveal{color:var(--accent);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:8px;flex:none;padding:4px 8px;font-size:12.5px;font-weight:600}.reveal:hover{background:color-mix(in srgb, var(--accent) 10%, transparent)}.forgot{color:var(--accent);justify-self:end;margin-top:-2px;font-size:13px;font-weight:600;text-decoration:none}.forgot:hover{text-decoration:underline}.strength{align-items:center;gap:8px;font-size:12px;display:flex}.strength .bars{grid-template-columns:repeat(3,28px);gap:4px;display:grid}.strength .bars i{background:var(--fill-quiet);height:4px;transition:background-color .3s var(--ease);border-radius:999px}.strength[data-score="1"] .bars i:first-child{background:var(--orange)}.strength[data-score="2"] .bars i:nth-child(-n+2){background:var(--yellow)}.strength[data-score="3"] .bars i{background:var(--green)}.strength[data-score="0"] small{color:var(--muted)}.auth-submit{justify-content:center;align-items:center;width:100%;min-height:48px;font-size:15.5px;font-weight:650;display:flex;position:relative;overflow:hidden}.auth-submit.busy:after{content:"";background:linear-gradient(110deg,#0000 30%,#ffffff4d 50%,#0000 70%);animation:1.1s linear infinite url-sweep;position:absolute;inset:0;translate:-110%}.or{color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;font-size:12.5px;display:grid}.or:before,.or:after{content:"";background:var(--hairline);height:1px}.google{justify-content:center;min-height:44px;display:flex}.switch{text-align:center;margin:0;font-size:14px}.switch a,.auth-form a{color:var(--accent);font-weight:600;text-decoration:none}.guest{background:var(--fill-quiet);transition:background-color var(--fast) var(--ease);border-radius:999px;justify-content:center;justify-self:center;align-items:center;gap:4px;padding:8px 14px;font-size:13.5px;display:inline-flex;color:var(--ink)!important;font-weight:600!important}.guest:hover{background:color-mix(in srgb, var(--accent) 12%, transparent)}.guest .icon{width:15px;height:15px;transition:translate .26s var(--spring)}.guest:hover .icon{translate:3px}.auth-legal{margin:0;font-size:12.5px}.auth-legal a{color:var(--muted)}.auth-form .notice{color:var(--ink);background:color-mix(in srgb, var(--green) 12%, var(--surface));border-radius:10px;margin:0;padding:10px 12px;font-size:13.5px}@media (width<=860px){.auth-shell{grid-template-columns:minmax(0,1fr)}.auth-art{display:none}.auth-mobile-brand{display:inline-flex}.auth-side{align-content:start;padding-top:28px}.auth-card{box-shadow:var(--raise-1);padding:26px 20px}}@media (prefers-reduced-motion:reduce){.art-box,.art-line,.auth-card,.auth-form>*{opacity:1;scale:1;animation:none!important}}.auth-side{grid-template-columns:minmax(0,min(420px,100%));justify-content:center}.auth-card{width:100%}.auth-card,.auth-form{grid-template-columns:minmax(0,1fr)}.auth-top{justify-content:space-between;align-items:center;gap:12px;width:min(420px,100%);margin-bottom:18px;display:flex}.auth-back{color:var(--muted);background:var(--fill-quiet);transition:color .2s, background .2s, transform .25s var(--spring);border-radius:999px;align-items:center;gap:4px;padding:6px 12px 6px 8px;font-size:14px;text-decoration:none;display:inline-flex}.auth-back .icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px;transition:transform .25s var(--spring)}.auth-back:hover{color:var(--accent);background:var(--accent-soft)}.auth-back:hover .icon{transform:translate(-3px)}.auth-back:focus-visible{box-shadow:var(--focus-ring);outline:none}@media (width<=860px){.auth-top{flex-direction:row-reverse}}.editor-bar .brand{flex:none}@media (width<=1400px){.layout-switch{padding-inline:6px}.layout-switch .switch-word{display:none}}.auth-field{min-width:0}.auth-input{box-sizing:border-box;width:100%;min-width:0}.auth-input input{width:0}.add-diagram{background:color-mix(in srgb, var(--paper) 80%, var(--surface));border:1px solid var(--hairline);border-radius:10px;flex:none;align-items:center;gap:2px;padding:3px;display:flex}.add-label{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;padding:0 6px 0 8px;font-size:12px;font-weight:600}.add-type{min-height:28px;color:var(--ink);font:inherit;cursor:pointer;transition:background-color var(--fast) var(--ease), color var(--fast) var(--ease), transform .25s var(--spring);background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;display:inline-flex}.add-type .icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px;color:var(--muted);transition:color var(--fast) var(--ease)}.add-type:hover{background:var(--surface);box-shadow:var(--raise-1)}.add-type:hover .icon,.add-type[data-active=true] .icon{color:var(--accent)}.add-type:active{transform:scale(.96)}.add-type[data-active=true]{background:var(--surface);box-shadow:var(--raise-1);font-weight:600}.add-type:focus-visible{box-shadow:var(--focus-ring);outline:none}.react-flow__node.frame-node{pointer-events:none!important}.diagram-frame{box-sizing:border-box;transition:border-color .25s var(--ease), background-color .25s var(--ease);border:1.5px dashed #0000;border-radius:18px;position:relative}.canvas.multi .diagram-frame{border-color:color-mix(in srgb, var(--line) 45%, transparent);background:color-mix(in srgb, var(--surface) 30%, transparent)}.canvas.multi .diagram-frame.active{border-style:solid;border-color:color-mix(in srgb, var(--accent) 55%, transparent);background:color-mix(in srgb, var(--accent-soft) 32%, transparent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 7%, transparent)}.frame-bar{pointer-events:all;cursor:grab;-webkit-user-select:none;user-select:none;border-radius:10px;align-items:center;gap:8px;height:30px;padding:0 6px 0 4px;display:flex;position:absolute;top:8px;left:10px;right:10px}.frame-bar:active{cursor:grabbing}.frame-type{width:26px;height:26px;color:var(--muted);background:var(--surface);box-shadow:var(--raise-1);border-radius:8px;flex:none;place-items:center;display:grid}.frame-type .icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.diagram-frame.active .frame-type{color:var(--on-accent);background:var(--accent)}.frame-title{color:var(--ink);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:650;overflow:hidden}.diagram-frame:not(.active) .frame-title{color:var(--muted)}.frame-rename{width:220px;min-width:0;height:26px;color:var(--ink);background:var(--surface);box-shadow:var(--focus-ring);font:inherit;border:0;border-radius:7px;outline:none;padding:0 8px;font-size:14px;font-weight:600}.frame-actions{opacity:0;transition:opacity .2s var(--ease);gap:2px;margin-left:auto;display:flex}.diagram-frame:hover .frame-actions,.diagram-frame.active .frame-actions,.frame-actions:focus-within{opacity:1}.frame-tool{height:26px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;padding:0 9px;font-size:12.5px;display:inline-flex}.frame-tool .icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.frame-tool.icon-only{justify-content:center;width:26px;padding:0}.frame-tool:hover{color:var(--ink);background:var(--surface);box-shadow:var(--raise-1)}.frame-tool.danger:hover{color:var(--error)}.frame-empty{color:var(--muted);place-items:center;margin:0;font-size:13px;display:grid;position:absolute;inset:38px 0 0}.table-box{--er-head:color-mix(in srgb, var(--accent) 12%, var(--surface));--er-ink:var(--accent-strong,var(--accent));min-width:220px;max-width:420px;color:var(--ink);background:var(--surface);border:1px solid color-mix(in srgb, var(--line) 70%, transparent);box-shadow:var(--raise-2);transition:box-shadow .2s var(--ease), opacity .25s var(--ease), border-color .2s var(--ease);border-radius:12px;font-size:13px;overflow:visible}.table-box[data-color]{--er-head:var(--fill);--er-ink:var(--line-color,var(--accent))}.table-box[data-color=blue]{--fill:var(--fill-blue);--line-color:var(--line-blue)}.table-box[data-color=green]{--fill:var(--fill-green);--line-color:var(--line-green)}.table-box[data-color=yellow]{--fill:var(--fill-yellow);--line-color:var(--line-yellow)}.table-box[data-color=orange]{--fill:var(--fill-orange);--line-color:var(--line-orange)}.table-box[data-color=red]{--fill:var(--fill-red);--line-color:var(--line-red)}.table-box[data-color=purple]{--fill:var(--fill-purple);--line-color:var(--line-purple)}.table-box[data-color=gray]{--fill:var(--fill-gray);--line-color:var(--line-gray)}.table-box.current{border-color:color-mix(in srgb, var(--accent) 60%, transparent)}.table-box.picked{border-color:var(--accent);box-shadow:var(--raise-2), 0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent)}.table-box.dragging{box-shadow:0 18px 40px -12px hsl(var(--shadow-color) / .35)}.table-box.dim{opacity:.28}.table-box.fresh{animation:er-fresh 2.4s var(--ease) 2}@keyframes er-fresh{0%,to{box-shadow:var(--raise-2)}40%{box-shadow:var(--raise-2), 0 0 0 5px #22c55e73}}.er-head{background:var(--er-head);border-bottom:1px solid color-mix(in srgb, var(--line) 45%, transparent);border-radius:11px 11px 0 0;align-items:center;gap:8px;padding:0 12px;display:flex;position:relative}.er-icon{fill:none;width:16px;height:16px;stroke:var(--er-ink);stroke-width:1.7px;flex:none}.er-title{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.er-count{color:var(--muted);background:color-mix(in srgb, var(--surface) 70%, transparent);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:600}.er-rows{margin:0;padding:2px 0 4px;list-style:none}.er-row{grid-template-columns:14px 18px minmax(0,1fr) auto auto 20px;align-items:center;gap:6px;padding:0 8px 0 4px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px;display:grid;position:relative}.er-row+.er-row{border-top:1px solid color-mix(in srgb, var(--line) 22%, transparent)}.er-row:hover{background:color-mix(in srgb, var(--accent) 6%, transparent)}.er-row.drop-before{box-shadow:inset 0 2px 0 var(--accent)}.er-key{color:var(--er-ink);place-items:center;display:grid}.er-key .icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.er-row.fk:not(.pk) .er-key{color:var(--muted)}.er-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.er-row.pk .er-name{font-weight:700}.er-type{color:var(--muted);white-space:nowrap;font-size:11.5px}.er-flags{gap:3px;display:flex}.er-flags b{min-width:16px;height:16px;color:var(--muted);background:var(--fill-quiet);font-family:var(--font,inherit);border-radius:4px;place-items:center;padding:0 3px;font-size:10px;font-weight:700;display:grid}.er-grip{width:14px;height:18px;color:var(--muted);cursor:grab;opacity:0;place-items:center;display:grid}.er-grip svg{fill:currentColor;width:8px;height:14px}.er-row:hover .er-grip{opacity:.7}.er-remove{width:20px;height:20px;color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.er-remove .icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:12px;height:12px}.er-row:hover .er-remove{opacity:1}.er-remove:hover{color:var(--error);background:color-mix(in srgb, var(--error) 10%, transparent)}.er-edit{min-width:0;height:22px;color:var(--ink);background:var(--surface);box-shadow:var(--focus-ring);font:inherit;border:0;border-radius:5px;outline:none;grid-column:3/6;padding:0 6px}.er-edit.name{flex:1;height:26px;font-family:inherit;font-size:14px;font-weight:700}.er-empty{color:var(--muted);padding:8px 12px;font-size:12px;font-style:italic}.er-more{width:100%;color:var(--accent);border:0;border-top:1px solid color-mix(in srgb, var(--line) 22%, transparent);font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:0 0 12px 12px;padding:6px 12px 8px;font-size:12px;font-weight:600;display:block}.er-more:hover{background:color-mix(in srgb, var(--accent) 6%, transparent)}.canvas .react-flow__handle.er-port{visibility:visible;background:var(--surface);border:2px solid var(--accent);opacity:0;width:9px;min-width:0;height:9px;min-height:0;transition:opacity .15s var(--ease), transform .2s var(--spring);border-radius:50%}.react-flow__handle.er-port.react-flow__handle-left{left:-5px}.react-flow__handle.er-port.react-flow__handle-right{right:-5px}.react-flow__handle.er-port.head,.read-only .react-flow__handle.er-port{pointer-events:none;opacity:0!important}.er-row:hover .react-flow__handle.er-port,.table-box.picked .react-flow__handle.er-port:not(.head){opacity:1}.react-flow__handle.er-port:hover{background:var(--accent);transform:translateY(-50%)scale(1.35)}.react-flow__edge path.route.er{stroke-width:1.6px}.er-mark{stroke:var(--muted);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.react-flow__edge path.route.er:not(.lit){stroke:color-mix(in srgb, var(--muted) 85%, transparent)}.er-mark.lit{stroke:var(--accent)}.react-flow__edge path.route.er.dim,.er-mark.dim{opacity:.18}.er-editor .cardinality .tool.text{min-width:44px;font-family:ui-monospace,monospace;font-size:12px}.er-editor .cardinality [aria-checked=true]{color:var(--on-accent);background:var(--accent)}.sql-sheet{background:var(--surface);width:min(720px,100%);animation:pop-in .32s var(--spring) both;border-radius:18px;gap:14px;padding:22px;display:grid;box-shadow:0 30px 80px -20px #00000073}.sql-sheet h2{letter-spacing:-.02em;margin:0 0 4px;font-size:20px}.sql-sheet header p{margin:0}.sql-how{background:var(--fill-quiet);border-radius:12px;padding:10px 12px;font-size:13px}.sql-how summary{color:var(--accent);cursor:pointer;font-weight:600}.sql-how ul{gap:8px;margin:10px 0 2px;padding:0;list-style:none;display:grid}.sql-how li{grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.sql-how code{background:var(--surface);white-space:nowrap;border-radius:8px;padding:6px 8px;font-size:12px;overflow-x:auto}.sql-text{resize:vertical;min-height:240px;padding:12px 14px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px;line-height:1.5}.sql-foot{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sql-foot .sql-count{flex:1;font-size:13px}.sql-file{cursor:pointer;position:relative}.sql-file input{opacity:0;cursor:pointer;position:absolute;inset:0}@keyframes pop-in{0%{opacity:0;transform:translateY(10px)scale(.97)}}@media (width<=600px){.sql-how li{grid-template-columns:minmax(0,1fr) auto}.sql-how li b{grid-column:1/-1}}:root{--logo-back:#a7e3dc;--logo-mid:#2ec4b6;--logo-front:#12232a;--logo-node:#2ec4b6;--logo-node-2:#fff;--logo-line:#fff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--logo-back:#1f5f59;--logo-mid:#2ec4b6;--logo-front:#fff;--logo-node:#0a8f8a;--logo-node-2:#12232a;--logo-line:#12232a}}:root[data-theme=dark]{--logo-back:#1f5f59;--logo-mid:#2ec4b6;--logo-front:#fff;--logo-node:#0a8f8a;--logo-node-2:#12232a;--logo-line:#12232a}.logo-mark{transition:transform .35s var(--spring);flex:none;display:block;overflow:visible}.logo-mark .slate-back{fill:var(--logo-back);transition:transform .35s var(--spring);transform-box:view-box}.logo-mark .slate-mid{fill:var(--logo-mid)}.logo-mark .slate-front{fill:var(--logo-front)}.logo-mark .slate-node{fill:var(--logo-node)}.logo-mark .slate-node-2{fill:var(--logo-node-2)}.logo-mark .slate-line{stroke:var(--logo-line)}.wordmark{letter-spacing:-.035em;color:var(--ink);white-space:nowrap;font:800 19px/1 Plus Jakarta Sans Variable,Plus Jakarta Sans,system-ui,sans-serif}.brand,.site-brand,.sidebar-brand{align-items:center;gap:8px;text-decoration:none;display:inline-flex}.editor-bar .brand .wordmark{font-size:18px}.site-head .site-brand .wordmark{font-size:21px}.sidebar-brand .wordmark{font-size:19px}.brand:hover .logo-mark,.site-brand:hover .logo-mark{transform:rotate(-4deg)}.site-brand.light{--logo-back:#ffffff59;--logo-mid:#ffffffa6;--logo-front:#fff;--logo-node:#0a8f8a;--logo-node-2:#12232a;--logo-line:#12232a}.site-brand.light .wordmark{color:#fff}@media (width<=760px){.editor-bar .brand .wordmark{display:none}}.site-brand.auth-mobile-brand{display:none}@media (width<=860px){.site-brand.auth-mobile-brand{display:inline-flex}}.add-divider{background:var(--hairline);width:1px;height:18px;margin:0 3px}.template-sheet{background:var(--surface);width:min(940px,100%);max-height:min(86vh,860px);animation:pop-in .32s var(--spring) both;border-radius:20px;gap:16px;padding:22px;display:grid;overflow:auto;box-shadow:0 30px 80px -20px #00000073}.template-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.template-head h2{letter-spacing:-.02em;margin:0 0 4px;font-size:22px}.template-head p{margin:0}.template-filters{grid-template-columns:repeat(6,auto);justify-content:start;width:fit-content;max-width:100%;overflow-x:auto}.template-filters button{white-space:nowrap;padding:0 12px}.template-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.template-grid li{animation:share-rise .42s var(--spring) both}.template-card{width:100%;height:100%;color:var(--ink);background:var(--paper);border:1px solid var(--hairline);font:inherit;text-align:left;cursor:pointer;transition:transform .3s var(--spring), box-shadow .2s var(--ease), border-color .2s var(--ease), background-color .2s var(--ease);border-radius:16px;gap:14px;padding:14px;display:flex}.template-card:hover{background:var(--surface);border-color:color-mix(in srgb, var(--accent) 40%, transparent);box-shadow:var(--raise-2);transform:translateY(-2px)}.template-card:focus-visible{box-shadow:var(--focus-ring);outline:none}.template-art{width:52px;height:52px;color:var(--accent);background:var(--accent-soft);border-radius:14px;flex:none;place-items:center;display:grid}.template-card[data-type=mind_map] .template-art{color:#b45309;background:color-mix(in srgb, #f59e0b 16%, var(--surface))}.template-card[data-type=architecture] .template-art{color:#4f46e5;background:color-mix(in srgb, #818cf8 18%, var(--surface))}.template-card[data-type=entity_relationship] .template-art{color:#be123c;background:color-mix(in srgb, #fb7185 16%, var(--surface))}.template-card[data-type=mixed] .template-art{color:var(--on-accent);background:var(--ai-gradient)}.template-art .icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.template-text{gap:4px;min-width:0;display:grid}.template-text b{letter-spacing:-.01em;font-size:15px}.template-text small{color:var(--muted);font-size:13px;line-height:1.45}.template-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;font-size:12px;display:flex}@media (width<=600px){.template-sheet{border-radius:18px;padding:16px}.template-grid{grid-template-columns:minmax(0,1fr)}}.sidebar .side-section.folders{display:grid}.side-label-row{justify-content:space-between;align-items:center;padding-right:4px;display:flex}.side-label-row .side-label{margin:0}.side-add{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.side-add .icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:15px;height:15px}.side-add:hover{color:var(--accent);background:var(--accent-soft)}.folder-link{position:relative;padding:0!important}.folder-open{width:100%;min-height:34px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:0 8px;display:flex}.folder-open .icon{width:17px;height:17px;fill:color-mix(in srgb, var(--accent) 18%, transparent);stroke:var(--accent);stroke-width:1.6px;stroke-linejoin:round;flex:none}.folder-link.current{background:var(--accent-soft)}.folder-link.current .folder-open{color:var(--accent);font-weight:600}.folder-link.drop{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}.folder-actions{opacity:0;transition:opacity .15s var(--ease);gap:2px;display:flex;position:absolute;top:50%;right:4px;translate:0 -50%}.folder-link:hover .folder-actions,.folder-actions:focus-within{opacity:1}.folder-link:hover .count{opacity:0}.folder-actions button{width:24px;height:24px;color:var(--muted);background:var(--surface);cursor:pointer;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.folder-actions button:hover{color:var(--ink)}.folder-actions .icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.side-link.editing{padding:2px 4px}.folder-field{width:100%;height:28px;color:var(--ink);background:var(--surface);box-shadow:var(--focus-ring);font:inherit;border:0;border-radius:7px;outline:none;padding:0 8px;font-size:13px}.side-empty{margin:0;padding:2px 8px 6px;font-size:12px;line-height:1.4}.folder-pick{align-items:center;gap:6px;display:inline-flex;position:relative}.folder-pick .icon{fill:none;stroke:currentColor;stroke-width:1.7px;width:15px;height:15px}.folder-pick select{max-width:120px;color:inherit;font:inherit;cursor:pointer;appearance:auto;background:0 0;border:0;padding:0 2px}.folder-pick select:focus{outline:none}.card[draggable=true]{cursor:grab}.count-pill{min-width:18px;height:18px;color:var(--on-accent);background:var(--accent);border-radius:999px;place-items:center;margin-left:6px;padding:0 5px;font-size:11px;font-weight:700;line-height:1;display:inline-grid}.comments-pop{transform-origin:calc(100% - 150px) -8px;width:min(400px,100vw - 24px);max-height:min(72vh,680px);right:-120px;overflow:auto}.comments-pop:before{right:140px}.comments-head{align-items:center;gap:10px;display:flex}.comments-head h2{letter-spacing:-.01em;margin:0;font-size:17px}.comments-head .chips{grid-template-columns:repeat(2,auto);margin-left:auto}.comments-head .chips button{padding:0 10px}.comment-new{background:var(--fill-quiet);border-radius:14px;gap:8px;padding:12px;display:grid}.comment-on{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;font-size:12.5px;display:flex}.comment-on b{color:var(--ink)}.comment-composer{align-items:flex-end;gap:8px;display:flex}.comment-composer textarea,.comment-edit{min-width:0;min-height:40px;max-height:160px;color:var(--ink);background:var(--surface);box-shadow:inset 0 0 0 1px var(--hairline);font:inherit;resize:vertical;border:0;border-radius:10px;flex:1;padding:9px 11px;font-size:13.5px;line-height:1.45}.comment-composer.compact textarea{min-height:34px;padding:7px 10px;font-size:13px}.comment-composer textarea:focus,.comment-edit:focus{box-shadow:var(--focus-ring);outline:none}.button.small{min-height:30px;padding:0 12px;font-size:12.5px}.comment-signin{background:var(--fill-quiet);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;margin:0;padding:12px;font-size:13px;display:flex}.comment-filter{color:var(--muted);align-items:center;gap:8px;margin:0;font-size:12.5px;display:flex}.comment-threads{gap:10px;margin:0;padding:0;list-style:none;display:grid}.comment-thread{background:var(--surface);border:1px solid var(--hairline);animation:share-rise .38s var(--spring) both;border-radius:14px;gap:8px;padding:12px;display:grid}.comment-thread.resolved{opacity:.75}.comment-anchor{max-width:100%;color:var(--accent);background:var(--accent-soft);font:inherit;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border:0;border-radius:999px;justify-self:start;align-items:center;gap:6px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex;overflow:hidden}.comment-anchor:disabled{color:var(--muted);background:var(--fill-quiet);cursor:default}.comment-anchor .icon{fill:none;stroke:currentColor;stroke-width:2px;flex:none;width:12px;height:12px}.comment-entry{gap:4px;display:grid}.comment-head{align-items:center;gap:8px;font-size:13px;display:flex}.comment-head small{font-size:12px}.avatar.small{width:22px;height:22px;color:var(--on-accent);background:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.comment-tools{opacity:0;transition:opacity .15s var(--ease);gap:2px;margin-left:auto;display:flex}.comment-entry:hover .comment-tools,.comment-tools:focus-within{opacity:1}.comment-tools button{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.comment-tools button:hover{color:var(--ink);background:var(--fill-quiet)}.comment-tools .icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.comment-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 0 30px;font-size:13.5px;line-height:1.5}.comment-reply{border-left:2px solid var(--hairline);margin-left:18px;padding-left:12px}.comment-actions{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.comment-actions .comment-composer{flex:1;min-width:200px}.comment-actions .resolve{align-items:center;gap:5px;display:inline-flex}.comment-actions .resolve .icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.comment-empty{text-align:center;margin:4px 0;font-size:13px}.comment-badge{z-index:2;height:22px;color:var(--on-accent);background:var(--accent);border:2px solid var(--surface);cursor:pointer;transition:transform .25s var(--spring);animation:share-rise .36s var(--spring) both;border-radius:999px;align-items:center;gap:3px;padding:0 7px 0 6px;font:700 11px/1 inherit;display:inline-flex;position:absolute;top:-11px;right:-11px;box-shadow:0 2px 6px #0003}.comment-badge:hover{transform:scale(1.08)}.comment-badge .icon{fill:currentColor;stroke:none;width:11px;height:11px}.link-button{color:var(--accent);font:inherit;font-size:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.link-button:hover{text-decoration:underline}.mini-switch{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:13px;display:inline-flex}.mini-switch .track{background:var(--fill-quiet);width:30px;height:18px;box-shadow:inset 0 0 0 1px var(--hairline);transition:background-color .26s var(--ease);border-radius:999px;flex:none;position:relative}.mini-switch .knob{width:14px;height:14px;transition:translate .32s var(--spring);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000040}.mini-switch[aria-checked=true] .track{background:var(--accent);box-shadow:none}.mini-switch[aria-checked=true] .knob{translate:12px}.mini-switch:focus-visible{outline:none}.mini-switch:focus-visible .track{box-shadow:var(--focus-ring)}.key-new{flex-wrap:wrap;gap:8px;display:flex}.key-new .field{flex:1;min-width:200px}.key-made{background:var(--accent-soft);border-radius:14px;gap:8px;padding:12px;display:grid}.key-made p{margin:0;font-size:13.5px}.key-made input{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px}.key-list{gap:6px;margin:4px 0 0;padding:0;list-style:none;display:grid}.key-list li{background:var(--fill-quiet);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.key-list li span{gap:2px;min-width:0;display:grid}.key-list small{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.docs h3{margin:22px 0 8px;font-size:16px}.docs code{background:var(--fill-quiet);border-radius:5px;padding:1px 5px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.88em}.code-block{margin:8px 0 14px;position:relative}.code-block pre{color:#e6edf3;background:#0f1b20;border-radius:14px;margin:0;padding:14px 76px 14px 16px;font-size:12.5px;line-height:1.55;overflow-x:auto}.code-block pre code{color:inherit;font-size:inherit;background:0 0;padding:0}.code-block .button{color:#e6edf3;background:#ffffff1a;position:absolute;top:8px;right:8px}.code-block .button:hover{background:#ffffff2e}.table-box{position:relative}#from-template{align-items:center;gap:6px;display:inline-flex}#from-template .icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linejoin:round;width:16px;height:16px}@media (width<=1600px){.editor-bar{gap:8px}.editor-bar .bar-end{gap:6px}.editor-bar .cluster .button.quiet{padding-inline:8px}.editor-bar .title-field{flex-basis:150px}.editor-bar .save-status{min-width:0}}@media (width<=1500px){.editor-bar .layout-switch{padding-inline:4px}}.editor-bar .bar-start{min-width:max-content}.editor-bar .bar-start .brand,.editor-bar .save-status{flex:none}.editor-bar .title-field{flex:none;width:180px}.editor-bar[data-fit="1"] :is(#add-template,#add-import) .add-word,.editor-bar[data-fit="2"] .add-type .add-word,.editor-bar[data-fit="3"] .add-type .add-word,.editor-bar[data-fit="4"] .add-type .add-word,.editor-bar[data-fit="4"] .add-label,.editor-bar[data-fit="4"] .brand .wordmark{display:none}.editor-bar[data-fit="1"] :is(#add-template,#add-import),.editor-bar[data-fit="2"] .add-type,.editor-bar[data-fit="3"] .add-type,.editor-bar[data-fit="4"] .add-type{padding:4px 7px}.editor-bar:is([data-fit="3"],[data-fit="4"]) .save-status{gap:0;font-size:0}.editor-bar[data-fit="3"] .title-field{width:130px}.editor-bar[data-fit="4"] .title-field{width:110px}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);z-index:60;color:#fff;letter-spacing:0;text-transform:none;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s var(--ease), translate .12s var(--ease);background:#12232a;border-radius:7px;padding:5px 9px;font-size:12px;font-weight:500;line-height:1.2;position:absolute;top:calc(100% + 8px);left:50%;translate:-50% -3px;box-shadow:0 6px 18px -6px #00000059}[data-tip-side=right]:after{top:50%;left:calc(100% + 10px);translate:-3px -50%}[data-tip]:hover:after,[data-tip]:focus-visible:after{opacity:1;transition-delay:.25s;translate:-50%}[data-tip-side=right]:hover:after,[data-tip-side=right]:focus-visible:after{translate:0 -50%}:root[data-theme=dark] [data-tip]:after{color:#12232a;background:#e8f6f4}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) [data-tip]:after{color:#12232a;background:#e8f6f4}}@media (hover:none){[data-tip]:after{display:none}}.share-tabs{grid-template-columns:1fr 1fr}.share-tabs button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.share-tabs .icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.people{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.invite-form{gap:8px;display:flex}.invite-field{background:var(--fill-quiet);min-width:0;height:38px;transition:background-color var(--fast) var(--ease), box-shadow var(--fast) var(--ease);border-radius:11px;flex:1;align-items:center;gap:8px;padding:0 4px 0 11px;display:flex}.invite-field:focus-within{background:var(--surface);box-shadow:var(--focus-ring)}.invite-field>.icon{fill:none;width:16px;height:16px;stroke:var(--muted);stroke-width:1.6px;stroke-linejoin:round;flex:none}.invite-field input{min-width:0;height:100%;color:var(--ink);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:0;font-size:13.5px}.invite-field select,.person-role{height:30px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;padding:0 6px;font-size:12.5px;font-weight:550}.invite-field select:hover,select.person-role:hover{background:color-mix(in srgb, var(--thumb) 60%, transparent)}.invite-form .button{border-radius:11px;flex:none;height:38px;padding-inline:16px}.invite-sent{color:var(--accent-strong,var(--accent));animation:share-in .36s var(--spring) both;align-items:center;gap:6px;margin:-4px 0 0;font-size:12.5px;font-weight:550;display:flex}.invite-sent .icon{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.people-list{grid-template-columns:minmax(0,1fr);gap:2px;max-height:300px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.person{animation:share-in .36s var(--spring) both;border-radius:10px;align-items:center;gap:10px;padding:7px 6px;display:flex}.person:hover{background:var(--fill-quiet)}.person .avatar{color:#fff;background:linear-gradient(135deg, var(--teal), var(--blue));flex:none;width:30px;height:30px;font-size:12.5px}.person-who{flex:1;min-width:0;display:grid}.person-who b,.person-who small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.person-who b{font-size:13.5px;font-weight:600}.person-who small{font-size:12px}.person .you{color:var(--accent);background:var(--accent-soft);vertical-align:1px;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10.5px;font-weight:700}span.person-role{padding:0 4px;font-size:12.5px}.person-remove{width:26px;height:26px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;display:grid}.person-remove:hover{color:var(--error);background:color-mix(in srgb, var(--error) 10%, transparent)}.person-remove .icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:14px;height:14px}.person-remove[data-tip]:after{top:auto;bottom:calc(100% + 6px)}.people-hint{margin:0;font-size:12.5px}.role-chip{height:24px;color:var(--accent);background:var(--accent-soft);white-space:nowrap;border-radius:999px;align-items:center;padding:0 9px;font-size:12px;font-weight:650;display:inline-flex}.invite-card{background:var(--surface);border:1px solid var(--hairline);box-shadow:var(--raise-1);border-radius:16px;align-items:center;gap:14px;margin:4px 0 18px;padding:14px 16px;display:flex}.invite-card>span:last-child{gap:2px;min-width:0;display:grid}.invite-card b{text-overflow:ellipsis;white-space:nowrap;font-size:15.5px;overflow:hidden}.invite-card small{font-size:13px}.invite-icon{background:linear-gradient(140deg, var(--teal), var(--blue));border-radius:13px;flex:none;place-items:center;width:44px;height:44px;display:grid}.invite-icon svg{fill:#fff3;stroke:#fff;stroke-width:1.8px;stroke-linejoin:round;width:22px;height:22px}.invite-page-switch{text-align:center;margin-top:14px}.member-bar .shared-by{white-space:nowrap}.member-error{z-index:20;position:absolute;top:64px;left:50%;translate:-50%}.invite-field select,select.person-role{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5l3 3 3-3' fill='none' stroke='%238a96a0' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 6px center;background-repeat:no-repeat;background-size:12px;padding-right:22px}.card-meta{min-width:0}.card-meta small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}[data-type=org_chart]{--type-colour:var(--indigo);--type-to:var(--blue)}[data-type=journey]{--type-colour:var(--pink);--type-to:var(--orange)}[data-type=sequence]{--type-colour:var(--teal);--type-to:var(--indigo)}.template-card[data-type=org_chart] .template-art{color:#4338ca;background:color-mix(in srgb, #6366f1 15%, var(--surface))}.template-card[data-type=journey] .template-art{color:#be185d;background:color-mix(in srgb, #f472b6 16%, var(--surface))}.template-card[data-type=sequence] .template-art{color:#0f766e;background:color-mix(in srgb, #2dd4bf 16%, var(--surface))}.box[data-variant=person]{width:auto;min-width:176px;max-width:250px;color:var(--ink);background:var(--surface);border:1px solid var(--hairline);box-shadow:var(--raise-1);text-align:left;border-radius:14px;padding:10px 14px 10px 10px;font-weight:400}.box[data-variant=person][data-role=title]{border:1.5px solid color-mix(in srgb, var(--accent) 55%, var(--hairline));box-shadow:0 8px 22px -10px color-mix(in srgb, var(--accent) 60%, transparent);font:inherit}.box .text.person{white-space:normal;align-items:center;gap:10px;display:flex}.person-avatar{color:#fff;background:linear-gradient(135deg, var(--teal), var(--indigo));letter-spacing:.02em;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:12.5px;font-weight:700;display:grid}.box[data-role=title] .person-avatar{background:linear-gradient(135deg, var(--accent), var(--blue))}.person-words{min-width:0;display:grid}.person-words b{font-size:14px;font-weight:650;line-height:1.25}.person-words small{color:var(--muted);font-size:12px;line-height:1.3}.box[data-variant=journey]{max-width:420px}.box[data-variant=stage]{width:auto;min-width:120px;color:var(--ink);background:color-mix(in srgb, var(--pink) 12%, var(--surface));letter-spacing:.04em;text-transform:uppercase;box-shadow:none;border:0;border-radius:999px;padding:8px 18px;font-size:13px;font-weight:700}.box[data-variant=step]{width:158px;min-height:64px;color:var(--ink);background:var(--surface);border:1px solid var(--hairline);border-top:4px solid var(--mood,var(--line));box-shadow:var(--raise-1);text-align:left;border-radius:12px;padding:10px 12px;font-size:13.5px;font-weight:500}.box[data-score="1"]{--mood:#e5484d}.box[data-score="2"]{--mood:#f76b15}.box[data-score="3"]{--mood:#ffc53d}.box[data-score="4"]{--mood:#46a758}.box[data-score="5"]{--mood:#30a46c}.box .text.journey-step{white-space:normal;gap:4px;display:grid}.step-face{font-size:18px;line-height:1}.mood-band{background:color-mix(in srgb, var(--surface) 70%, transparent);border:1px dashed var(--hairline);pointer-events:none;border-radius:14px;position:relative}.mood-band svg{position:absolute;inset:0;overflow:visible}.mood-guide{stroke:var(--hairline);stroke-width:1px;stroke-dasharray:2 5}.mood-line{fill:none;stroke:var(--pink);stroke-width:2.5px;stroke-linecap:round;opacity:.75}.mood-scale{opacity:.65;font-size:15px;position:absolute;left:12px}.mood-scale.top{top:8px}.mood-scale.bottom{bottom:8px}.mood-dot{background:var(--surface);border:2px solid var(--mood,var(--line));width:30px;height:30px;box-shadow:var(--raise-1);border-radius:50%;place-items:center;font-size:17px;display:grid;position:absolute;translate:-50% -50%}.mood-dot[data-score="1"]{--mood:#e5484d}.mood-dot[data-score="2"]{--mood:#f76b15}.mood-dot[data-score="3"]{--mood:#ffc53d}.mood-dot[data-score="4"]{--mood:#46a758}.mood-dot[data-score="5"]{--mood:#30a46c}.mood-dot.unscored{color:var(--muted);opacity:.7;border-style:dashed;font-size:13px;font-weight:700}.mood-pick{gap:1px;display:flex}.mood-pick .tool{min-width:30px;padding:0 4px;font-size:16px}.mood-pick .tool[aria-checked=true]{background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}.box[data-variant=participant]{width:auto;min-width:120px;max-width:220px;color:var(--ink);background:color-mix(in srgb, var(--teal) 10%, var(--surface));border:1.5px solid color-mix(in srgb, var(--teal) 55%, var(--hairline));box-shadow:var(--raise-1);border-radius:10px;padding:10px 16px;font-size:14px;font-weight:650}.lifelines{pointer-events:none;overflow:visible}.lifelines line{stroke:color-mix(in srgb, var(--teal) 45%, var(--line));stroke-width:1.5px;stroke-dasharray:5 5}.react-flow__edge path.route.message{stroke:var(--ink);stroke-width:1.6px;fill:none}.react-flow__edge path.route.message.reply{stroke-dasharray:6 5;stroke:color-mix(in srgb, var(--ink) 70%, transparent)}.react-flow__edge path.route.message.lit,.message-head.lit{stroke:var(--accent)}.message-head{stroke:var(--ink);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.message-head.reply{stroke:color-mix(in srgb, var(--ink) 70%, transparent)}.message-label{color:var(--ink);background:color-mix(in srgb, var(--paper) 88%, transparent);white-space:nowrap;pointer-events:all;cursor:pointer;border-radius:6px;padding:1px 7px;font-size:12.5px;font-weight:500;position:absolute}.read-only .message-label{pointer-events:none}.message-editor{align-items:center;gap:4px;display:flex}.message-editor input{width:200px}.box[data-variant=step]{border-top-color:var(--mood,color-mix(in srgb, var(--ink) 16%, transparent))!important}.react-flow__node.overlay-node{pointer-events:none!important}.editor-bar[data-fit="5"] :is(.add-type .add-word,.add-label,.brand .wordmark){display:none}.editor-bar[data-fit="5"] .add-type{padding:4px 5px}.editor-bar[data-fit="5"] .save-status{gap:0;font-size:0}.editor-bar[data-fit="5"] .title-field{width:84px}.live-people{flex:none;align-items:center;display:inline-flex}.live-face{color:#fff;border:2px solid var(--surface);letter-spacing:.02em;width:26px;height:26px;animation:share-in .36s var(--spring) both;border-radius:50%;place-items:center;margin-left:-6px;font-size:10.5px;font-weight:700;display:grid;box-shadow:0 1px 3px #0000002e}.live-face:first-child{margin-left:0}.live-face.more{color:var(--ink);background:var(--fill-quiet)}.live-offline{color:#8a5a00;background:color-mix(in srgb, #ffc53d 25%, var(--surface));white-space:nowrap;border-radius:999px;margin-right:8px;padding:2px 8px;font-size:11.5px;font-weight:600}.live-pointer{z-index:1000;pointer-events:none;transform-origin:0 0;align-items:flex-start;gap:2px;transition:transform 80ms linear;display:flex;position:absolute;top:0;left:0}.live-pointer svg{filter:drop-shadow(0 1px 2px #0000004d)}.live-pointer span,.live-selection span{color:#fff;white-space:nowrap;border-radius:6px;padding:2px 7px;font-size:11.5px;font-weight:600;box-shadow:0 2px 6px #0003}.live-pointer span{margin-top:14px}.live-selection{z-index:999;pointer-events:none;border:2px solid;border-radius:12px;position:absolute;top:0;left:0}.live-selection span{transform-origin:0 100%;position:absolute;top:-12px;left:-2px;translate:0 -100%}.section-lede{text-align:center;max-width:620px;margin:-10px auto 26px;font-size:16.5px;line-height:1.55}.type-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.type-card{background:var(--surface);box-shadow:var(--raise-1);transition:transform .42s var(--spring), box-shadow var(--medium) var(--ease);border-radius:18px;align-content:start;gap:6px;padding:18px;display:grid}.type-card:hover{box-shadow:var(--raise-2);transform:translateY(-3px)}.try-card{background:linear-gradient(150deg, color-mix(in srgb, var(--accent) 12%, var(--surface)), var(--surface));align-content:center;justify-items:start;gap:10px}.type-card b{letter-spacing:-.01em;font-size:16px}.type-card>.muted{font-size:13.5px;line-height:1.45}.type-icon{background:linear-gradient(140deg, var(--type-colour), var(--type-to));width:40px;height:40px;box-shadow:0 4px 12px -4px color-mix(in srgb, var(--type-colour) 70%, transparent);border-radius:12px;place-items:center;margin-bottom:4px;display:grid}.type-icon svg{fill:none;stroke:#fff;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.type-card code{color:var(--ink);background:var(--paper);white-space:pre;border-radius:10px;gap:2px;margin-top:6px;padding:10px 12px;font:12.5px/1.45 ui-monospace,SF Mono,Menlo,monospace;display:grid;overflow:hidden}.type-card code span:before{content:"› ";color:var(--muted)}.together{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:48px;display:grid}.together-copy{gap:14px;display:grid}.together-copy h2{text-align:left;margin:0}.together-copy>p{margin:0;font-size:16.5px;line-height:1.55}.together-copy ul{gap:12px;margin:6px 0 0;padding:0;list-style:none;display:grid}.together-copy li{gap:10px;font-size:15px;line-height:1.5;display:flex}.together-copy li>svg{fill:none;stroke:#fff;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;background:var(--accent);border-radius:50%;flex:none;width:20px;height:20px;margin-top:2px;padding:3px}.together-pic{background:var(--surface);box-shadow:var(--raise-3);border-radius:20px;position:relative;overflow:hidden}.together-bar{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;display:flex}.together-faces{display:flex}.together-faces i{color:#fff;border:2px solid var(--surface);border-radius:50%;place-items:center;width:26px;height:26px;margin-left:-6px;font-size:10px;font-style:normal;font-weight:700;display:grid}.together-pic>svg{background-image:radial-gradient(color-mix(in srgb, var(--ink) 12%, transparent) 1px, transparent 1px);background-size:16px 16px;width:100%;height:auto;padding:8px 0 14px;display:block}.together-pic rect{fill:var(--surface);stroke:color-mix(in srgb, var(--ink) 22%, transparent);stroke-width:1.4px}.together-pic rect.pill{fill:var(--ink);stroke:none}.together-pic rect.picked{stroke:#8e4ec6;stroke-width:2.4px}.together-pic rect.fresh{stroke:#0a8f8a;stroke-width:2px;animation:together-new 2.4s var(--ease) infinite}.together-pic text{fill:var(--ink);text-anchor:middle;font-size:13px;font-weight:600}.together-pic rect.pill+text{fill:var(--surface)}.together-pic path{fill:none;stroke:color-mix(in srgb, var(--ink) 35%, transparent);stroke-width:1.5px}.together-tag{color:#fff;border-radius:6px;padding:2px 7px;font-size:11.5px;font-weight:600;position:absolute}.together-pointer{animation:together-drift 5s var(--ease) infinite alternate;align-items:flex-start;gap:2px;display:flex;position:absolute}.together-pointer:last-child{animation-delay:-2.5s}.together-pointer>span{color:#fff;border-radius:6px;margin-top:13px;padding:2px 7px;font-size:11.5px;font-weight:600;box-shadow:0 2px 6px #0003}@keyframes together-drift{0%{translate:0}to{translate:-18px 10px}}@keyframes together-new{0%,to{opacity:1}50%{opacity:.55}}.bring-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.bring-more{text-align:center;margin:18px 0 0;font-weight:600}.bring-more a{color:var(--accent)}@media (width<=980px){.type-grid,.bring-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.together{grid-template-columns:minmax(0,1fr)}}@media (width<=560px){.bring-grid{grid-template-columns:minmax(0,1fr)}.type-grid{gap:10px}.type-card{padding:14px}.type-card code{display:none}.try-card{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.together-pointer,.together-pic rect.fresh{animation:none}}.voice-button{place-items:center;display:grid;position:relative}.voice-button[data-tip]:after{top:auto;bottom:calc(100% + 10px);left:0;translate:0 3px}.voice-button[data-tip]:hover:after,.voice-button[data-tip]:focus-visible:after{translate:0}.voice-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:15px;height:15px}.voice-button.on{color:#fff;background:#e5484d;border-color:#e5484d}.voice-button.on:before{content:"";opacity:calc(.25 + var(--level,0) * .75);transform:scale(calc(1 + var(--level,0) * .35));pointer-events:none;border:2px solid #e5484d;border-radius:50%;transition:transform 80ms linear,opacity 80ms linear;position:absolute;inset:-4px}.voice-status{min-width:0;max-width:min(640px,100%);color:var(--ink);background:var(--glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb, var(--line) 50%, transparent);box-shadow:var(--raise-1);border-radius:999px;align-items:center;gap:10px;padding:6px 14px;font-size:13px;display:flex}.voice-status.error{color:#b42318}.voice-dot{background:#e5484d;border-radius:50%;flex:none;width:8px;height:8px;animation:1.6s ease-in-out infinite live}.voice-doing{flex:none;font-weight:600}.voice-heard{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);overflow:hidden}.voice-dismiss{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;flex:none;padding:0;font-weight:600}@media (prefers-reduced-motion:reduce){.voice-dot{animation:none}.voice-button.on:before{transition:none}}.editor{overflow:clip}@media (width<=720px){.editor .bar-end{overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;flex:100%;justify-content:flex-start;width:100%;min-width:0;overflow-x:auto}.editor .bar-end::-webkit-scrollbar{display:none}.editor .bar-end>*{flex:none}.editor-bar{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--surface)}.share-pop,.history-pop,.comments-pop{width:auto;max-height:calc(100dvh - 130px);position:fixed;top:112px;left:12px;right:12px;overflow:auto}.share-pop:before,.history-pop:before,.comments-pop:before{display:none}.export-menu{width:min(300px,100vw - 24px);position:fixed;top:112px;left:auto;right:12px}}@media (width<=640px){.react-flow__node-toolbar{justify-content:center;display:flex;top:auto!important;left:12px!important;right:12px!important;bottom:calc(132px + env(safe-area-inset-bottom))!important;position:fixed!important;transform:none!important}.react-flow__node-toolbar .shape-menu{flex-wrap:wrap;justify-content:center;max-width:100%}}.chat-panel{z-index:12;top:10px;right:max(10px, env(safe-area-inset-right));width:min(420px,100vw - 20px);color:var(--ink);background:var(--surface);box-shadow:var(--raise-3);border:1px solid color-mix(in srgb, var(--line) 60%, transparent);animation:pop .32s var(--spring);border-radius:18px;flex-direction:column;display:flex;position:absolute;bottom:10px;overflow:hidden}.chat-head{border-bottom:1px solid color-mix(in srgb, var(--line) 50%, transparent);align-items:center;gap:4px;padding:10px 10px 10px 14px;display:flex}.chat-title{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;flex:1;align-items:center;gap:6px;margin-left:-8px;padding:6px 8px;font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;display:flex}.chat-title span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-title svg{width:12px;height:12px;color:var(--muted);flex:none}.chat-title:hover,.chat-icon:hover{background:color-mix(in srgb, var(--ink) 6%, transparent)}.chat-icon{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;font-size:19px;display:grid}.chat-icon svg{width:17px;height:17px}.chat-icon.on{color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.chat-history{border-bottom:1px solid color-mix(in srgb, var(--line) 50%, transparent);max-height:45%;padding:6px;overflow:auto}.chat-history-item{border-radius:10px;align-items:center;display:flex}.chat-history-item.on,.chat-history-item:hover{background:color-mix(in srgb, var(--ink) 5%, transparent)}.chat-history-item>button:first-child{min-width:0;color:inherit;text-align:left;cursor:pointer;font:inherit;background:0 0;border:0;flex:1;gap:2px;padding:8px 10px;display:grid}.chat-history-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.chat-history-item small{color:var(--muted);font-size:11.5px}.chat-list{flex-direction:column;flex:1;gap:12px;padding:14px;font-size:14px;line-height:1.5;display:flex;overflow:auto}.chat-msg{overflow-wrap:anywhere;max-width:100%}.chat-msg.me{color:#fff;background:var(--ink);white-space:pre-wrap;border-radius:16px 16px 4px;align-self:flex-end;max-width:85%;padding:9px 13px}:root[data-theme=dark] .chat-msg.me{color:#12232a;background:#e5efec}.chat-msg.ai{align-self:stretch}.chat-msg.ai p{margin:0 0 8px}.chat-msg.ai ul,.chat-msg.ai ol{margin:0 0 8px;padding-left:20px}.chat-msg.ai li{margin:2px 0}.chat-msg.ai code{background:color-mix(in srgb, var(--ink) 7%, transparent);border-radius:5px;padding:1px 5px;font-size:12.5px}.chat-mode-tag{color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;margin-bottom:6px;padding:1px 8px;font-size:10.5px;font-weight:700;display:inline-block}.chat-questions{background:color-mix(in srgb, var(--accent) 7%, transparent);border-radius:12px;gap:10px;margin:6px 0 4px;padding:12px;display:grid}.chat-question p{font-weight:600;margin:0 0 6px!important}.chat-options{flex-wrap:wrap;gap:6px;display:flex}.chat-options button{color:var(--ink);background:var(--surface);border:1px solid color-mix(in srgb, var(--line) 80%, transparent);cursor:pointer;border-radius:999px;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:500;line-height:1.2}.chat-options button:hover:not(:disabled),.chat-options button.on{color:var(--accent);border-color:var(--accent)}.chat-options button:disabled{opacity:.55;cursor:default}.chat-proposal{border:1.5px solid color-mix(in srgb, var(--accent) 50%, transparent);border-radius:12px;margin:6px 0 4px;padding:12px}.chat-proposal.applied{border-color:color-mix(in srgb, var(--line) 80%, transparent)}.chat-proposal.dismissed{opacity:.65;border-style:dashed}.chat-proposal header{justify-content:space-between;gap:8px;margin-bottom:6px;font-size:13px;display:flex}.chat-proposal header span{color:var(--muted);font-size:12px}.chat-proposal ul{margin:0 0 10px;padding-left:18px;font-size:13px}.chat-proposal-actions{gap:6px;display:flex}.chat-build{margin-top:4px}.chat-empty{color:var(--muted);gap:12px;margin:auto 0;font-size:13.5px;display:grid}.chat-empty strong{color:var(--ink);font-weight:600}.chat-typing{gap:4px;padding:6px 0;display:inline-flex}.chat-typing i{background:var(--muted);border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite chat-dot}.chat-typing i:nth-child(2){animation-delay:.15s}.chat-typing i:nth-child(3){animation-delay:.3s}@keyframes chat-dot{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.chat-working{color:var(--accent);font-size:12.5px;font-weight:600}.chat-error{color:#b42318;margin:0;font-size:13px}.chat-note{color:var(--muted);margin:0;padding:16px}.chat-readonly{color:var(--muted);border-top:1px solid color-mix(in srgb, var(--line) 50%, transparent);justify-items:start;gap:8px;padding:12px 14px;font-size:13px;display:grid}.chat-compose{border-top:1px solid color-mix(in srgb, var(--line) 50%, transparent);gap:8px;padding:10px 12px 12px;display:grid}.chat-modes{background:color-mix(in srgb, var(--ink) 6%, transparent);border-radius:9px;justify-self:start;gap:2px;padding:2px;display:flex}.chat-modes button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:4px 12px;font-family:inherit;font-size:12.5px;font-weight:600;line-height:1.2}.chat-modes button[aria-pressed=true]{color:var(--ink);background:var(--surface);box-shadow:var(--raise-1)}.chat-modes button[data-tip]:after{top:auto;bottom:calc(100% + 8px)}#chat-input{box-sizing:border-box;width:100%;min-height:48px;max-height:160px;color:inherit;border:1.5px solid color-mix(in srgb, var(--line) 90%, transparent);resize:vertical;background:0 0;border-radius:12px;padding:9px 11px;font-family:inherit;font-size:14px;line-height:1.4}#chat-input:focus{border-color:var(--accent);outline:none}.chat-compose-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.chat-compose-foot .remaining{color:var(--muted);font-size:11.5px}@media (width<=640px){.chat-panel{z-index:40;border-radius:18px 18px 0 0;width:100%;height:calc(100dvh - 150px);position:fixed;inset:auto 0 0;box-shadow:0 -12px 40px #0000002e}}.toolbox .library-tool{color:var(--accent);margin-top:3px}.toolbox .library-tool[aria-expanded=true]{background:var(--accent-soft)}.shape-library{z-index:31;width:312px;max-height:calc(100% - 90px);color:var(--ink);background:var(--surface);border:1px solid color-mix(in srgb, var(--line) 60%, transparent);box-shadow:var(--raise-2);animation:pop var(--medium) var(--ease);border-radius:12px;flex-direction:column;font-size:13px;display:flex;position:absolute;top:15px;left:72px}.shape-library header{justify-content:space-between;align-items:center;gap:8px;padding:12px 12px 6px 14px;display:flex}.shape-library header strong{white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.library-close{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;font-size:20px;line-height:1}.library-close:hover{color:var(--ink);background:var(--fill-quiet)}.library-search{gap:6px;padding:0 12px 8px;display:flex}.library-search input{min-width:0;height:34px;color:var(--ink);background:var(--fill-quiet);font:inherit;border:1px solid #0000;border-radius:8px;flex:1;padding:0 10px}.library-search input:focus{background:var(--surface);border-color:var(--accent);outline:none}.library-packs-button{height:34px;color:var(--ink);border:1px solid var(--line);font:inherit;cursor:pointer;background:0 0;border-radius:8px;flex:none;padding:0 10px;font-weight:600}.library-packs-button.on,.library-packs-button:hover{color:var(--accent);border-color:var(--accent)}.library-packs{background:var(--fill-quiet);border-radius:8px;gap:2px;margin:0 12px 8px;padding:6px;list-style:none;display:grid}.library-packs label{cursor:pointer;border-radius:6px;align-items:flex-start;gap:8px;padding:5px 6px;display:flex}.library-packs label:hover{background:var(--surface)}.library-packs input{accent-color:var(--accent);margin-top:2px}.library-packs span{line-height:1.3;display:grid}.library-packs small{color:var(--muted);font-size:11.5px}.library-body{overscroll-behavior:contain;flex:1;min-height:0;padding:0 12px 10px;overflow-y:auto}.library-body h3{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:10px 2px 6px;font-size:11.5px;font-weight:600}.library-grid{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.library-grid.icons{grid-template-columns:repeat(6,1fr)}.library-tile{min-width:0;color:var(--ink);font:inherit;cursor:grab;background:0 0;border:0;border-radius:8px;align-content:start;justify-items:center;gap:4px;padding:8px 2px 6px;display:grid}.library-tile:hover{color:var(--accent);background:var(--accent-soft)}.library-tile[aria-pressed=true]{color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1.5px var(--accent)}.library-tile .shape-icon{width:30px;height:30px}.library-tile .shape-icon *{stroke-width:5px}.library-tile .shape-icon .solid{fill:currentColor}.library-glyph{width:24px;height:24px;margin:3px 0}.library-tile small{max-width:100%;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;line-height:1.2;overflow:hidden}.library-grid.icons small{display:none}.library-tile:hover small{color:inherit}.library-target{gap:6px;margin-top:4px;display:flex}.library-target .button{flex:1;height:32px;font-size:12.5px}.library-note{color:var(--muted);margin:8px 2px;font-size:12px}.library-note .link-button{margin-left:0}.library-credit{color:var(--muted);margin:14px 2px 0;font-size:11px}.library-credit a{color:inherit}.shape .solid{fill:color-mix(in srgb, var(--ink) 80%, transparent);stroke:none}.box[data-color] .shape .solid{fill:var(--line-color)}.shape .thick{stroke-width:4px}.shape-icon .solid{fill:currentColor}.box[data-shape=triangle]{width:150px;min-height:120px;padding:52px 30px 12px}.box[data-shape=hexagon],.box[data-shape=octagon],.box[data-shape=pentagon]{width:150px;min-height:120px;padding:24px 26px}.box[data-shape=pentagon]{padding-top:34px}.box[data-shape=trapezoid]{width:190px;min-height:60px;padding:10px 34px}.box[data-shape=star]{width:150px;min-height:144px;padding:52px 40px 30px;font-size:13px}.box[data-shape=cross]{width:130px;min-height:130px;padding:44px;font-size:13px}.box[data-shape=cloud]{width:200px;min-height:120px;padding:42px 30px 22px}.box[data-shape=note]{width:170px;min-height:90px;padding:22px 16px 12px}.box[data-shape=callout]{width:190px;min-height:96px;padding:12px 14px 34px}.box[data-shape^=arrow_]{width:190px;min-height:76px;padding:18px 48px}.box[data-shape=arrow_right]{padding:18px 54px 18px 14px}.box[data-shape=arrow_left]{padding:18px 14px 18px 54px}.box[data-shape=chevron]{width:180px;min-height:64px;padding:12px 44px}.box[data-shape=sub_process]{width:200px;min-height:60px;padding:10px 30px}.box[data-shape=manual_input]{width:190px;min-height:70px;padding:26px 16px 10px}.box[data-shape=delay],.box[data-shape=display]{width:186px;min-height:64px;padding:12px 36px 12px 20px}.box[data-shape=display]{padding:12px 36px 12px 40px}.box[data-shape=off_page]{width:120px;min-height:100px;padding:18px 16px 40px}.box[data-shape=multi_document]{width:196px;min-height:84px;padding:22px 26px 26px 14px}.box[data-shape=bpmn_end],.box[data-shape=bpmn_intermediate]{width:64px;min-height:64px;padding:0;font-size:12px}.box[data-shape=bpmn_end] .text,.box[data-shape=bpmn_intermediate] .text,.box[data-shape=uml_initial] .text,.box[data-shape=uml_final] .text{width:max-content;max-width:160px;position:absolute;top:calc(100% + 6px);left:50%;translate:-50%}.box[data-shape^=gateway_]{width:96px;min-height:96px;padding:0;font-size:12px}.box[data-shape^=gateway_] .text{width:max-content;max-width:160px;position:absolute;top:calc(100% + 6px);left:50%;translate:-50%}.box[data-shape^=gateway_] .shape>*{fill:var(--decision)}.box[data-shape^=gateway_] .shape .line{fill:none}.box[data-shape=bpmn_subprocess]{width:186px;min-height:72px;padding:12px 14px 24px}.box[data-shape=uml_class]{width:180px;min-height:110px;padding:8px 12px 70px;font-weight:700}.box[data-shape=uml_actor]{width:90px;min-height:120px;padding:0}.box[data-shape=uml_actor] .shape>*{fill:none;stroke-width:2px}.box[data-shape=uml_actor] .text{width:max-content;max-width:160px;position:absolute;top:calc(100% + 2px);left:50%;translate:-50%}.box[data-shape=uml_package]{width:190px;min-height:100px;padding:30px 14px 12px}.box[data-shape=uml_component]{width:190px;min-height:76px;padding:12px 14px 12px 34px}.box[data-shape=uml_initial],.box[data-shape=uml_final]{width:36px;min-height:36px;padding:0;font-size:12px}.box[data-shape=uml_node]{width:190px;min-height:96px;padding:28px 30px 12px 12px}.box[data-shape=dfd_store]{width:190px;min-height:52px;padding:10px 14px 10px 30px}.box[data-shape=dfd_store] .shape>*{fill:none}.box-icon{width:26px;height:26px;color:var(--icon-color,color-mix(in srgb, var(--ink) 78%, transparent));flex:none;margin:0 auto 6px;display:block}.box[data-color] .box-icon{--icon-color:var(--line-color)}.box[data-role=title] .box-icon{--icon-color:currentColor}.box.outlined[data-icon]{align-content:center}.box[data-shape=icon]{background:0 0;border:0;width:120px;min-height:0;padding:0;box-shadow:none!important}.box[data-shape=icon] .box-icon{background:var(--surface);border:1.5px solid color-mix(in srgb, var(--ink) 18%, transparent);box-sizing:content-box;border-radius:14px;width:52px;height:52px;margin-bottom:6px;padding:10px}.box[data-shape=icon].current .box-icon{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.box[data-shape=icon][data-color] .box-icon{background:var(--fill);border-color:var(--line-color)}.box[data-shape=icon] .text{font-size:13px}@media (width<=720px){.shape-library{z-index:40;top:auto;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));width:auto;max-height:min(100% - 16px,560px)}.library-grid{grid-template-columns:repeat(5,1fr)}.library-grid.icons{grid-template-columns:repeat(7,1fr)}}.legal pre.licence{max-height:320px;color:var(--muted);background:var(--fill-quiet);white-space:pre-wrap;border-radius:10px;padding:14px 16px;font-size:12px;line-height:1.5;overflow:auto}button.live-face{font:inherit;cursor:pointer;transition:box-shadow var(--quick) var(--ease), translate var(--quick) var(--ease);padding:0;font-size:10.5px;font-weight:700}button.live-face:hover{translate:0 -1px}.following-frame{z-index:25;pointer-events:none;animation:share-in .24s var(--ease) both;border:3px solid;border-radius:4px;position:absolute;inset:0}.following-frame span{color:#fff;white-space:nowrap;pointer-events:auto;border-radius:999px;align-items:center;gap:10px;padding:5px 6px 5px 12px;font-size:12.5px;font-weight:600;display:inline-flex;position:absolute;top:10px;left:50%;translate:-50%;box-shadow:0 4px 14px #0000002e}.following-frame button{color:inherit;font:inherit;cursor:pointer;background:#ffffff38;border:0;border-radius:999px;padding:3px 10px}.following-frame button:hover{background:#ffffff57}.live-selection.typing{border-style:dashed;animation:1.4s ease-in-out infinite live-typing}@keyframes live-typing{50%{opacity:.55}}.live-dots{text-align:left;width:14px;font-style:normal;display:inline-block}.live-dots:after{content:"…";vertical-align:bottom;width:0;animation:1.2s steps(4,end) infinite live-dots;display:inline-block;overflow:hidden}@keyframes live-dots{to{width:1.1em}}@media (prefers-reduced-motion:reduce){.live-selection.typing,.live-dots:after{width:auto;animation:none}}.route.faded{opacity:.14;transition:opacity var(--medium) var(--ease)}.edge-label.faded,.box[data-faded]{opacity:.28;transition:opacity var(--medium) var(--ease)}.flow-dot{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.flows-spot{margin:12px}.flows-panel{width:220px;color:var(--ink);background:var(--surface);border:1px solid color-mix(in srgb, var(--line) 60%, transparent);box-shadow:var(--raise-2);border-radius:12px;padding:6px;font-size:13px}.flows-panel header{justify-content:space-between;align-items:center;gap:6px;padding:0 2px;display:flex}.flows-title{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:4px 6px;font-weight:700;display:inline-flex}.flows-title small{color:var(--muted);font-weight:500}.flows-title:after{content:"";opacity:.6;border:1.5px solid;border-width:0 1.5px 1.5px 0;width:6px;height:6px;translate:0 -2px;rotate:45deg}.flows-panel.closed .flows-title:after{translate:0;rotate:-45deg}.flows-panel header .link-button{font-size:12px}.flows-panel ul{gap:1px;margin:4px 0 0;padding:0;list-style:none;display:grid}.flows-panel li{border-radius:8px;align-items:center;gap:6px;padding:2px 2px 2px 8px;display:flex}.flows-panel li:hover{background:var(--fill-quiet)}.flows-panel li.on{background:var(--accent-soft)}.flows-panel li.off .flow-name,.flows-panel li.off .flow-dot{opacity:.4}.flow-name{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;justify-content:space-between;align-items:center;gap:6px;padding:5px 2px;display:flex}.flows-panel li.on .flow-name{font-weight:700}.flow-name small{color:var(--muted);font-size:11px}.flows-panel li input{min-width:0;height:28px;font:inherit;border:1px solid var(--accent);border-radius:6px;flex:1;padding:0 6px}.flow-tool{width:26px;height:26px;color:var(--muted);cursor:pointer;opacity:.7;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.flow-tool:hover{color:var(--ink);background:var(--surface);opacity:1}.flow-tool svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.flows-pick{position:relative}.flows-count{color:#fff;background:var(--accent);border-radius:7px;min-width:14px;height:14px;padding:0 3px;font-size:9.5px;font-weight:700;line-height:14px;position:absolute;top:1px;right:1px}.edge-editor .line-flows{text-align:left;gap:6px;width:240px;padding:10px;display:grid;left:auto;right:0}.line-flows strong{padding:0 2px;font-size:12.5px}.line-flows ul{gap:1px;margin:0;padding:0;list-style:none;display:grid}.edge-editor .line-flows li button{width:100%;height:32px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;padding:0 6px;font-size:13px;display:flex}.edge-editor .line-flows li button:hover{background:var(--fill-quiet)}.flow-check{border:1.5px solid color-mix(in srgb, var(--ink) 35%, transparent);border-radius:4px;flex:none;place-items:center;width:16px;height:16px;display:grid}.line-flows button[aria-checked=true] .flow-check{background:var(--accent);border-color:var(--accent)}.flow-check svg{fill:none;stroke:#fff;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:12px;height:12px}.flow-label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.line-flows form{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.edge-editor .line-flows form input{width:100%;min-width:0;height:32px;padding:0 9px;font-size:13px}.edge-editor .line-flows form button{color:#fff;background:var(--accent);height:32px;font:inherit;cursor:pointer;border:0;border-radius:7px;flex:none;padding:0 12px;font-size:12.5px;font-weight:600}.edge-editor .line-flows form button:disabled{color:var(--muted);background:var(--fill-quiet);cursor:default}.line-flows small{color:var(--muted);padding:0 2px;font-size:11px;line-height:1.4}.line-flows code{background:var(--fill-quiet);white-space:nowrap;border-radius:4px;padding:1px 4px;font-size:10.5px}@media (width<=720px){.flows-panel{width:180px}.flows-spot{margin:8px}}.chat-compose.dropping{outline:2px dashed var(--accent);outline-offset:-4px;background:var(--accent-soft)}.chat-attachment{background:var(--fill-quiet);border:1px solid color-mix(in srgb, var(--line) 50%, transparent);border-radius:10px;align-items:center;gap:8px;margin:0 0 6px;padding:7px 8px 7px 10px;font-size:12.5px;display:flex}.chat-attachment>svg{fill:none;width:20px;height:20px;stroke:var(--accent);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none}.chat-attachment>span{flex:1;min-width:0;line-height:1.3;display:grid}.chat-attachment b{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chat-attachment small{color:var(--muted)}.chat-detach{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;font-size:18px;line-height:1}.chat-detach:hover{color:var(--ink);background:var(--surface)}.chat-clip{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;margin-right:auto;padding:0;display:grid}.chat-clip:hover:not(:disabled){color:var(--accent);background:var(--accent-soft)}.chat-clip:disabled{opacity:.4;cursor:default}.chat-clip svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.chat-msg-file{background:#ffffff29;border-radius:7px;align-items:center;gap:6px;margin-bottom:4px;padding:5px 8px;font-size:12px;font-weight:600;display:flex}.chat-msg-file svg{fill:none;stroke:currentColor;stroke-width:1.8px;width:15px;height:15px}.doc-view pre.doc-text{font:14px/1.6 Inter,system-ui,sans-serif}:root{--hl-yellow:#fde68a;--hl-green:#bbf7d0;--hl-pink:#fbcfe8;--hl-blue:#bfdbfe;--hl-orange:#fed7aa}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--hl-yellow:#facc1561;--hl-green:#4ade8052;--hl-pink:#f472b657;--hl-blue:#60a5fa57;--hl-orange:#fb923c5c}}:root[data-theme=dark]{--hl-yellow:#facc1561;--hl-green:#4ade8052;--hl-pink:#f472b657;--hl-blue:#60a5fa57;--hl-orange:#fb923c5c}[data-highlight=yellow]{--hl:var(--hl-yellow)}[data-highlight=green]{--hl:var(--hl-green)}[data-highlight=pink]{--hl:var(--hl-pink)}[data-highlight=blue]{--hl:var(--hl-blue)}[data-highlight=orange]{--hl:var(--hl-orange)}.box .words.highlighted,.box mark{color:inherit;background:var(--hl);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:3px;padding:0 .12em}.box .words.highlighted mark{background:0 0;padding:0;font-weight:700}.highlight-pick{align-content:center;justify-items:center;gap:1px;width:30px;min-width:30px!important;padding:0!important;display:inline-grid!important}.highlight-pick .icon{width:17px;height:17px}.highlight-pick .colour-bar{background:var(--hl,transparent);border-radius:2px;width:16px;height:4px;display:block;box-shadow:inset 0 0 0 .5px #0003}.highlight-list{text-align:left;gap:10px;width:236px;padding:12px;display:grid}.highlight-swatches{gap:8px;display:flex}.shape-menu .highlight-swatches button{background:var(--hl);cursor:pointer;border:1px solid #0000001f;border-radius:50%;width:28px;min-width:28px;height:28px;padding:0}.shape-menu .highlight-swatches button[aria-pressed=true]{box-shadow:0 0 0 2px var(--surface), 0 0 0 3.5px var(--ink)}.shape-menu .highlight-swatches button.none{background:linear-gradient(135deg, var(--surface) 46%, var(--error) 47%, var(--error) 53%, var(--surface) 54%)}.highlight-list small{color:var(--muted);font-size:11.5px;line-height:1.5}.highlight-list code,.highlight-list kbd{background:var(--fill-quiet);border:1px solid var(--line);border-radius:4px;padding:0 4px;font:500 10.5px IBM Plex Mono,ui-monospace,monospace}.box-link{z-index:2;width:24px;height:24px;color:var(--accent);background:var(--surface);border:1.5px solid var(--accent);box-shadow:var(--raise-1);cursor:pointer;transition:transform var(--quick) var(--ease);border-radius:50%;place-items:center;display:grid;position:absolute;top:-11px;right:-11px}.box-link:hover{color:#fff;background:var(--accent);transform:scale(1.08)}.box-link .icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.link-pop{text-align:left;gap:8px;width:300px;padding:12px;display:grid}.link-pop label{font-size:12.5px;font-weight:700}.link-row{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.shape-menu .link-pop input{width:100%;height:32px;font:inherit;background:var(--fill-quiet);border:1px solid #0000;border-radius:7px;padding:0 9px;font-size:13px}.shape-menu .link-pop input:focus{background:var(--surface);border-color:var(--accent);outline:none}.shape-menu .link-pop .save{color:#fff;background:var(--accent);height:32px;font:inherit;cursor:pointer;border:0;border-radius:7px;padding:0 12px;font-size:12.5px;font-weight:600}.shape-menu .link-pop .remove{color:var(--error);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;padding:2px 0;font-size:12.5px}.link-problem{color:var(--error);font-size:12px}.group-box[data-drop=into]{background:color-mix(in srgb, var(--accent-soft) 55%, transparent);border:2px solid var(--accent)}.group-box[data-drop=leaving]{border-style:dashed;border-color:color-mix(in srgb, var(--muted) 70%, transparent);background:0 0}.group-drop-hint{color:var(--accent);margin-left:8px;font-size:12px;font-style:normal;font-weight:500}.group-box[data-drop=leaving] .group-drop-hint{color:var(--muted)}.group-box>.group-resize{visibility:hidden;opacity:0;transition:opacity var(--fast) var(--ease)}.canvas .react-flow__node:hover>.group-box>.group-resize,.group-box>.group-resize:active{visibility:visible;opacity:1}@keyframes live-breathe{0%,to{box-shadow:0 0 0 2px color-mix(in srgb, var(--green) 30%, transparent);transform:scale(1)}50%{box-shadow:0 0 0 5px color-mix(in srgb, var(--green) 12%, transparent);transform:scale(1.3)}}@keyframes live-landed{0%{box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 25%, transparent);transform:scale(1)}35%{box-shadow:0 0 0 7px color-mix(in srgb, var(--green) 30%, transparent);transform:scale(1.55)}to{box-shadow:0 0 0 3px color-mix(in srgb, var(--green) 25%, transparent);transform:scale(1)}}#live-ai[aria-pressed=true] .live-dot[data-landed]{animation:live-landed .52s var(--ease) 1}#live-ai[aria-pressed=true][data-status=checking] .live-dot{animation:1.1s ease-in-out infinite live-breathe}#live-ai[aria-pressed=true][data-status=waiting] .live-dot{background:var(--line-orange,#e8a33d);box-shadow:0 0 0 3px color-mix(in srgb, var(--line-orange,#e8a33d) 25%, transparent);animation:none}@media (prefers-reduced-motion:reduce){#live-ai[aria-pressed=true] .live-dot[data-landed]{animation:none}#live-ai[aria-pressed=true][data-status=checking] .live-dot{background:color-mix(in srgb, var(--green) 55%, var(--surface));box-shadow:0 0 0 4px color-mix(in srgb, var(--green) 35%, transparent);animation:none}}.chat-proposal.outdated{opacity:.75}.chat-proposal-note{color:var(--muted);margin:8px 0 0;font-size:12.5px;line-height:1.45}.canvas .box.chosen{outline:2px solid var(--accent);outline-offset:4px}.canvas .box.chosen:not(.outlined):after{content:"";border-radius:inherit;background:color-mix(in srgb, var(--accent) 8%, transparent);pointer-events:none;position:absolute;inset:0}.marquee{z-index:6;pointer-events:none;border:1.5px solid var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);border-radius:4px;position:absolute}.context-menu{z-index:1200;min-width:220px;color:var(--ink);background:color-mix(in srgb, var(--surface) 96%, transparent);-webkit-backdrop-filter:var(--vibrancy);backdrop-filter:var(--vibrancy);border:1px solid color-mix(in srgb, var(--line) 70%, transparent);box-shadow:var(--raise-3);isolation:isolate;animation:pop .16s var(--spring);border-radius:12px;padding:6px;font-size:13.5px;position:absolute}.context-menu ul{margin:0;padding:0;list-style:none}.context-menu button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:18px;padding:7px 10px;display:flex}.context-menu button:hover:not(:disabled),.context-menu button[aria-expanded=true]{background:var(--fill-quiet)}.context-menu button:disabled{opacity:.4;cursor:default}.context-menu button.danger{color:var(--line-red)}.context-keys{color:var(--muted);font-size:12px}.context-divider{background:color-mix(in srgb, var(--line) 70%, transparent);height:1px;margin:5px 4px}.context-sub{position:relative}.context-submenu{min-width:180px;top:-6px;left:calc(100% + 4px)}.free-lines{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.free-line .route{fill:none}.free-line-hit{fill:none;stroke:#0000;stroke-width:16px;pointer-events:stroke;cursor:pointer}.free-line.picked .route{filter:drop-shadow(0 0 3px color-mix(in srgb, var(--accent) 70%, transparent))}.free-end{fill:var(--surface);stroke:var(--accent);pointer-events:all;cursor:grab}.free-label{fill:var(--ink);paint-order:stroke;stroke:var(--paper);stroke-width:4px;stroke-linejoin:round;pointer-events:none;font-size:12.5px;font-weight:500}.free-line-tools{transform-origin:0 0;z-index:20;pointer-events:all;position:absolute;top:0;left:0}.free-line-tools input{width:120px}.draw-line-preview{pointer-events:none;width:100%;height:100%;position:fixed;inset:0;overflow:visible}.draw-line-preview line{stroke:var(--accent);stroke-width:2px;stroke-dasharray:6 4}.toolbox-divider{background:color-mix(in srgb, var(--line) 50%, transparent);height:1px;margin:3px 6px;display:block}.diagram-frame>.frame-resize{pointer-events:auto;opacity:0;transition:opacity var(--fast) var(--ease)}.canvas.multi .diagram-frame.active>.frame-resize,.diagram-frame>.frame-resize:hover,.diagram-frame>.frame-resize:active{opacity:1}.canvas:not(.multi) .diagram-frame>.frame-resize{display:none}.diagram-frame>.resize.ne,.diagram-frame>.resize.nw{top:-6px}.toolbox{flex-direction:column;max-height:calc(100dvh - 140px);display:flex;overflow:visible}.toolbox-items{scrollbar-width:none;overscroll-behavior:contain;gap:3px;min-height:0;display:grid;overflow:hidden auto}.toolbox-items::-webkit-scrollbar{display:none}.toolbox .toolbox-more{height:22px;color:var(--muted);cursor:pointer;flex:none}.toolbox .toolbox-more:hover{color:var(--accent)}.toolbox .toolbox-more:after{content:none}.toolbox .toolbox-more.up{box-shadow:0 4px 0 -3px color-mix(in srgb, var(--line) 50%, transparent);margin-bottom:2px}.toolbox .toolbox-more.down{box-shadow:0 -4px 0 -3px color-mix(in srgb, var(--line) 50%, transparent);margin-top:2px}@media (width<=720px){.toolbox{max-height:42dvh}}.suggestions button.is-group{align-items:center;gap:7px;display:flex}.suggestions .suggestion-icon{fill:none;width:15px;height:15px;stroke:var(--accent);stroke-width:1.6px;flex:none}.suggestions .suggestion-kind{color:var(--muted);background:color-mix(in srgb, var(--accent) 10%, transparent);border-radius:999px;margin-left:auto;padding:1px 6px;font-size:11px}:is(html:has(.canvas),body:has(.canvas)){overscroll-behavior-x:none}.canvas{overscroll-behavior:none}.canvas.draw-only .react-flow{background-image:none}.canvas.draw-only .react-flow__node[data-id=ghost]{opacity:0;pointer-events:none}.canvas.draw-only .react-flow__edge[data-id=ghost-edge]{display:none}.canvas.draw-only .react-flow__background-pattern.dots,.canvas.draw-only .react-flow__background circle{fill:var(--dot)}.ws-mark{color:#fff;background:var(--ws,var(--blue));border-radius:30%;flex:none;place-items:center;font-weight:700;line-height:1;display:inline-grid}.ws-mark[data-colour=blue],.ws-colour[data-colour=blue]{--ws:var(--blue)}.ws-mark[data-colour=green],.ws-colour[data-colour=green]{--ws:var(--green)}.ws-mark[data-colour=orange],.ws-colour[data-colour=orange]{--ws:var(--orange)}.ws-mark[data-colour=purple],.ws-colour[data-colour=purple]{--ws:var(--purple)}.ws-mark[data-colour=pink],.ws-colour[data-colour=pink]{--ws:var(--pink)}.ws-mark[data-colour=teal],.ws-colour[data-colour=teal]{--ws:var(--teal)}.ws-mark[data-colour=gray],.ws-colour[data-colour=gray]{--ws:var(--gray)}.ws-mark.add{width:22px;height:22px}.ws-mark.personal,.ws-mark.add{color:var(--muted);background:var(--fill-quiet,color-mix(in srgb, var(--ink) 7%, transparent))}.ws-mark svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:62%;height:62%}.ws-switcher{position:relative}.ws-current{width:100%;min-height:40px;color:var(--ink);background:var(--surface);border:1px solid var(--hairline);font:inherit;text-align:left;cursor:pointer;transition:background-color var(--fast) var(--ease);border-radius:10px;align-items:center;gap:9px;padding:0 8px;font-size:13.5px;font-weight:600;display:flex}.ws-current:hover{background:color-mix(in srgb, var(--ink) 4%, var(--surface))}.ws-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ws-chevron{color:var(--muted)}.ws-menu{z-index:40;background:var(--surface);width:auto;max-height:min(420px,70vh);box-shadow:var(--raise-3);animation:fade-in .16s var(--ease) both;border-radius:14px;gap:2px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.ws-option{color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:8px;display:flex}.ws-option:hover,.ws-option[aria-checked=true]{background:color-mix(in srgb, var(--ink) 6%, transparent)}.ws-option-text{flex:1;gap:2px;min-width:0;display:grid}.ws-option-text small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ws-option-text b{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.ws-option-text small{font-size:12px}.ws-new{border-top:1px solid var(--hairline);border-radius:0 0 9px 9px;margin-top:4px}.ws-sheet{gap:14px}.ws-sheet-head{align-items:center;gap:14px;padding-right:30px;display:flex}.ws-sheet-head h2{letter-spacing:-.02em;margin:0;font-size:21px;font-weight:750}.ws-sheet-head p{margin:4px 0 0;font-size:13.5px}.ws-field{gap:6px;display:grid}.ws-field>span{color:var(--muted);font-size:13px}.ws-field .field{height:40px;font:inherit;padding:0 12px}.ws-colours{flex-wrap:wrap;gap:8px;display:flex}.ws-colour{background:var(--ws);width:26px;height:26px;box-shadow:0 0 0 2px var(--surface), 0 0 0 2px transparent;cursor:pointer;transition:box-shadow var(--fast) var(--ease), scale var(--fast) var(--ease);border:0;border-radius:50%;padding:0}.ws-colour:hover{scale:1.08}.ws-colour[aria-checked=true]{box-shadow:0 0 0 2px var(--surface), 0 0 0 4px var(--ws)}.ws-settings-head{align-items:center;gap:14px;display:flex}.ws-settings-head h1{margin:0}.ws-settings-head p{margin:4px 0 0;font-size:14px}.ws-state[data-state=grace]{color:var(--orange)}.ws-state[data-state=locked]{color:var(--red)}.ws-invite{flex-wrap:wrap;gap:8px;padding:8px 0;display:flex}.ws-invite .field{height:38px;font:inherit;padding:0 12px;font-size:14px}.ws-invite input.field{flex:220px;min-width:0}.ws-people{margin:4px 0 0;padding:0;list-style:none;display:grid}.ws-person{border-top:1px solid var(--hairline);align-items:center;gap:12px;min-height:56px;display:flex}.ws-person .avatar{flex:none}.ws-person-text{flex:1;gap:2px;min-width:0;display:grid}.ws-person-text b{font-size:14px;font-weight:600}.ws-person-text small{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.ws-person.pending .ws-person-text b{color:var(--muted);font-weight:500}.ws-role{height:32px;font:inherit;padding:0 8px;font-size:13px}.ws-role-chip{color:var(--muted);background:color-mix(in srgb, var(--ink) 6%, transparent);border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600}.ws-link{border-top:1px solid var(--hairline);gap:8px;padding:12px 0 2px;display:grid}.ws-link>div:first-child{gap:2px;display:grid}.ws-link>div:first-child b{font-size:14px}.ws-link small{font-size:12.5px}.ws-link-row{gap:8px;display:flex}.ws-link-row .field{min-width:0;height:36px;font:inherit;flex:1;padding:0 10px;font-size:13px}.ws-link>.button{justify-self:start}.move-pick .icon{transform:none}.sidebar .ws-switcher{margin:2px 0 6px}@media (width<=860px){.sidebar .ws-switcher{flex:180px;order:2;margin:0}.ws-person{flex-wrap:wrap;padding:8px 0}}.ws-chip{max-width:180px;height:28px;color:var(--ink);background:color-mix(in srgb, var(--ink) 5%, transparent);border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 9px 0 5px;font-size:12.5px;font-weight:600;text-decoration:none;display:inline-flex}.ws-chip span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ws-chip:hover{background:color-mix(in srgb, var(--ink) 9%, transparent)}@media (width<=860px){.ws-chip span:last-child{display:none}.ws-chip{padding:0 5px}}.sso-button{width:100%;max-width:340px;height:40px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:999px;justify-content:center;align-items:center;gap:10px;margin:0 auto;font-size:14px;font-weight:500;text-decoration:none;display:flex}.sso-button:hover{background:color-mix(in srgb, var(--ink) 4%, var(--surface))}.ws-plan-choice{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0;display:grid}.ws-plan-option{color:var(--ink);background:var(--surface);border:1px solid var(--line);font:inherit;text-align:left;cursor:pointer;border-radius:12px;gap:3px;padding:12px 14px;display:grid}.ws-plan-option[aria-checked=true]{border-color:var(--accent-strong,var(--blue));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent-strong,var(--blue)) 18%, transparent)}.ws-plan-option b{font-size:14px}.ws-plan-option small{font-size:12.5px}.ws-seats .field{width:84px;height:34px;font:inherit;padding:0 10px}.banner.ws-join{align-items:center;gap:12px}.banner.ws-join>span:nth-child(2){flex:1}.auth-form .sso-button,.auth-form .sso-button:visited{color:var(--ink)}.workspace-access{background:color-mix(in srgb, var(--ink) 4%, transparent);border-radius:12px;align-items:center;gap:10px;margin:4px 0 8px;padding:10px 12px;font-size:13px;line-height:1.4;display:flex}.plan-sheet{gap:10px}.plan-sheet h2{letter-spacing:-.02em;margin:0 40px 4px 0;font-size:21px;font-weight:750}.plan-sheet p{margin:0;font-size:14px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[data-colour=blue]{--team:var(--blue)}[data-colour=green]{--team:var(--green)}[data-colour=orange]{--team:var(--orange)}[data-colour=purple]{--team:var(--purple)}[data-colour=pink]{--team:var(--pink)}[data-colour=teal]{--team:var(--teal)}[data-colour=gray]{--team:var(--gray)}.team-dot{background:var(--team,var(--gray));border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.team-chip{max-width:140px;color:color-mix(in srgb, var(--team,var(--gray)) 70%, var(--ink));background:color-mix(in srgb, var(--team,var(--gray)) 13%, transparent);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11.5px;font-weight:600;display:inline-flex;overflow:hidden}.team-chip .icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:11px;height:11px}.team-label{align-items:center;gap:6px;display:flex;margin-top:8px!important}.folder-group+.folder-group{margin-top:2px}.folder-form{background:var(--surface);box-shadow:0 0 0 1px var(--line);border-radius:10px;gap:6px;margin:4px 0 8px;padding:8px;display:grid}.folder-form .field{height:30px;font-size:13px}.folder-form small{font-size:11.5px;line-height:1.35}.folder-form-actions{justify-content:flex-end;gap:6px;display:flex}.folder-form-actions .button{height:28px;padding:0 10px;font-size:12.5px}.check-line{align-items:center;gap:6px;font-size:12.5px;display:flex}.check-line input:disabled+*{color:var(--muted)}.check-line:has(input:disabled){color:var(--muted)}.team-list{gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.team-row{border:1px solid var(--line);border-radius:12px;gap:8px;padding:12px;display:grid}.team-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.team-head .team-dot{width:10px;height:10px}.team-head small{flex:1;min-width:120px}.team-tools{align-items:center;gap:4px;display:flex}.team-tools .field,.team-add{width:auto;height:30px;font-size:13px}.team-rename{width:180px;height:30px}.team-people{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.team-person{background:color-mix(in srgb, var(--ink) 6%, transparent);border-radius:999px;align-items:center;gap:4px;padding:3px 4px 3px 10px;font-size:12.5px;display:inline-flex}.team-person:not(:has(button)){padding-right:10px}.team-person button{width:18px;height:18px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;font-size:14px;line-height:1;display:grid}.team-person button:hover{color:var(--ink);background:color-mix(in srgb, var(--ink) 10%, transparent)}.person-teams{flex-wrap:wrap;gap:4px;margin-top:3px;display:flex}.workspace-access.private .team-dot{width:10px;height:10px;margin:6px 6px 0}.team-shares{gap:8px;display:grid}.team-share-pick select:first-of-type{flex:1}.team-avatar{color:#fff;background:var(--team,var(--gray))!important}@media (width<=640px){.team-tools,.team-rename{width:100%}}#workspace-teams .ws-invite select{min-width:96px}.team-tools .field{min-width:92px}.ws-chip{white-space:nowrap}.ws-chip>span:not(.team-chip){text-overflow:ellipsis;min-width:0;max-width:160px;overflow:hidden}.ws-chip .team-chip{flex:none}.ws-chip:has(.team-chip){max-width:300px}.ws-chip:has(.team-chip)>span:not(.team-chip){max-width:140px}.folder-form-label{color:var(--muted);font-size:11px;font-weight:600}select:not(.folder-pick select){background-image:var(--chevron)!important;background-position:right 10px center!important;background-repeat:no-repeat!important;background-size:14px 14px!important;padding-right:32px!important}.invite-field select:not(.folder-pick select),select.person-role{background-position:right 6px center!important;background-size:12px 12px!important;padding-right:22px!important}.box[data-service]{text-align:left;grid-template-columns:34px minmax(0,1fr);align-content:center;align-items:center;column-gap:10px;min-height:54px;padding:8px 12px 8px 9px;display:grid}.box[data-service]>:is(.text,.edit,.service-kind,.file-thumb){grid-column:2}.box[data-service] .text,.box[data-service] .edit{text-align:left}.box[data-service=blue]{--svc:var(--blue)}.box[data-service=green]{--svc:var(--green)}.box[data-service=orange]{--svc:var(--orange)}.box[data-service=purple]{--svc:var(--purple)}.box[data-service=pink]{--svc:var(--pink)}.box[data-service=teal]{--svc:var(--teal)}.box[data-service=indigo]{--svc:var(--indigo)}.box[data-service=red]{--svc:var(--red)}.box[data-service=gray]{--svc:var(--gray)}.service-tile{width:34px;height:34px;color:var(--svc);background:color-mix(in srgb, var(--svc) 14%, transparent);border-radius:9px;grid-area:1/1/span 2;place-items:center;display:grid}.box[data-color] .service-tile{color:var(--line-color);background:color-mix(in srgb, var(--line-color) 14%, transparent)}.service-tile .box-icon{width:20px;height:20px;color:inherit;margin:0}.service-kind{color:var(--muted);flex-wrap:wrap;align-items:center;gap:5px;margin-top:1px;font-size:11.5px;font-weight:500;line-height:1.25;display:flex}.cloud-tag{letter-spacing:.03em;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ink) 14%, transparent);border-radius:4px;padding:0 5px;font-size:9.5px;font-weight:700}.box[data-service]:not(:has(.service-kind)) .service-tile{grid-row:1}.box[data-service]:has(.service-kind)>.text{align-self:end}.box[data-service]>.service-kind{align-self:start}.library-service{width:34px;height:34px}.library-service .library-glyph{width:20px;height:20px}.library-service[data-family=blue]{--svc:var(--blue)}.library-service[data-family=green]{--svc:var(--green)}.library-service[data-family=orange]{--svc:var(--orange)}.library-service[data-family=purple]{--svc:var(--purple)}.library-service[data-family=pink]{--svc:var(--pink)}.library-service[data-family=teal]{--svc:var(--teal)}.library-service[data-family=indigo]{--svc:var(--indigo)}.library-service[data-family=red]{--svc:var(--red)}.library-service[data-family=gray]{--svc:var(--gray)}.service-tile:has(.aws-icon){border-radius:0;background:0 0!important}.service-tile .box-icon.aws-icon{width:32px;height:32px}.box[data-shape=icon] .box-icon.aws-icon{width:56px;height:56px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.library-glyph.aws-icon{border-radius:0}.session-limit{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.session-limit .value{justify-items:start;gap:6px;display:grid}.session-limit select{width:auto;min-width:170px}.email-setting .value{justify-items:start;gap:6px;display:grid}.email-change{gap:8px;width:min(100%,360px);display:grid}.email-change-actions{justify-content:flex-end;gap:8px;display:flex}.box[data-shape=database][data-service]{column-gap:8px;padding:26px 12px 12px 10px}.box[data-service]>:is(.service-tile,.service-kind){z-index:1;position:relative}.box[data-service]>:is(.text,.service-kind){justify-self:start}.site main.article-index,.site main.article{display:block}.article-index{max-width:980px!important}.article-index h1,.article h1{letter-spacing:-.035em;margin:6px 0 12px;font-size:clamp(32px,4.6vw,48px);font-weight:800;line-height:1.08}.article-index .lede{margin-bottom:36px}.article-index h2{text-align:left;margin:36px 0 14px;font-size:20px}.article-cards{grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.article-card{box-sizing:border-box;height:100%;color:var(--ink);background:var(--surface);box-shadow:var(--raise-1);transition:transform .3s var(--spring), box-shadow var(--medium) var(--ease);border-radius:16px;align-content:start;gap:8px;padding:20px;text-decoration:none;display:grid}.article-card:hover{box-shadow:var(--raise-2);transform:translateY(-3px)}.article-card b{letter-spacing:-.01em;font-size:16.5px;line-height:1.3}.article-card .muted{font-size:14px;line-height:1.5}.post-tag{color:var(--accent);background:var(--accent-soft,var(--fill-quiet));border-radius:999px;justify-self:start;padding:3px 9px;font-size:12px;font-weight:650}.post-meta{font-size:13.5px}.article-more{text-align:center;margin-top:36px}.article-more a,.article-body a:not(.button),.crumbs a{color:var(--accent)}.article{max-width:1040px!important}.article>.lede{max-width:720px}.crumbs{color:var(--muted);margin-bottom:10px;font-size:14px}.crumbs a{font-weight:600;text-decoration:none}.article-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:48px;margin-top:34px;display:grid}.article-layout:not(:has(.article-toc)){grid-template-columns:minmax(0,1fr)}.article-toc{gap:10px;font-size:14px;display:grid;position:sticky;top:84px}.article-toc ol{border-left:2px solid var(--hairline);gap:8px;margin:0;padding:0;list-style:none;display:grid}.article-toc a{color:var(--muted);padding-left:12px;line-height:1.35;text-decoration:none;display:block}.article-toc a:hover{color:var(--ink)}.article-body{max-width:720px}.article-body h2{text-align:left;margin:42px 0 12px;scroll-margin-top:84px;font-size:25px}.article-body h2:first-child{margin-top:0}.article-body h3{letter-spacing:-.01em;margin:28px 0 8px;scroll-margin-top:84px;font-size:18.5px}.article-body p,.article-body li{font-size:16.5px;line-height:1.7}.article-body p{margin:0 0 16px}.article-body ul,.article-body ol{margin:0 0 18px;padding-left:22px}.article-body li+li{margin-top:6px}.article-body code{background:var(--fill-quiet,var(--sunken));border-radius:6px;padding:1px 6px;font-size:.9em}.article-body pre.typed{background:var(--surface);box-shadow:var(--raise-1);border-radius:12px;margin:0 0 18px;padding:16px 18px;font-size:14.5px;line-height:1.6;overflow-x:auto}.article-body pre.typed code{font-size:inherit;white-space:pre;background:0 0;padding:0}.callout{background:var(--accent-soft,var(--fill-quiet));border-radius:12px;margin:0 0 18px;padding:14px 18px;font-size:15.5px;line-height:1.6}.article-try{flex-wrap:wrap;align-items:center;gap:12px;display:flex;margin:26px 0!important}.article-try .button,.article-cta .button{text-decoration:none}.article-cta{background:var(--surface);box-shadow:var(--raise-1);border-radius:18px;gap:10px;margin:40px 0 0;padding:24px;display:grid}.article-cta b{letter-spacing:-.02em;font-size:20px}.article-cta-actions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.article-steps{border-top:1px solid var(--hairline);justify-content:space-between;gap:14px;margin-top:44px;padding-top:22px;display:flex}.article-steps a{gap:3px;font-weight:650;text-decoration:none;display:grid;color:var(--ink)!important}.article-steps a.next{text-align:right;margin-left:auto}.article-steps .muted{font-size:13px;font-weight:500}.article-related{margin-top:44px}.article-related h2{font-size:22px}@media (width<=860px){.article-layout{grid-template-columns:minmax(0,1fr);gap:20px}.article-toc{background:var(--surface);box-shadow:var(--raise-1);border-radius:14px;padding:16px;position:static}}.shortcuts-help{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.shortcuts-help a.button{text-decoration:none}.tour-ring{z-index:60;pointer-events:none;border:2px solid var(--accent-strong,var(--accent));box-shadow:0 0 0 4px color-mix(in srgb, var(--accent-strong,var(--accent)) 22%, transparent);transition:left .18s var(--ease), top .18s var(--ease), width .18s var(--ease), height .18s var(--ease);border-radius:14px;animation:1.8s ease-in-out infinite tour-pulse;position:fixed}@keyframes tour-pulse{50%{box-shadow:0 0 0 9px color-mix(in srgb, var(--accent-strong,var(--accent)) 10%, transparent)}}.tour-card{z-index:61;box-sizing:border-box;color:var(--ink);background:var(--surface);border:1px solid var(--hairline);box-shadow:var(--raise-2), 0 18px 48px #0000002e;animation:pop var(--medium) var(--ease);transition:left .2s var(--ease), top .2s var(--ease);border-radius:16px;gap:8px;padding:18px 18px 14px;display:grid;position:fixed}.tour-card h2{letter-spacing:-.015em;text-align:left;margin:0;font-size:17px}.tour-card p{color:var(--muted);margin:0;font-size:14.5px;line-height:1.5}.tour-count{letter-spacing:.02em;text-transform:uppercase;font-size:12px;font-weight:600}.tour-more a{color:var(--accent);font-weight:600}.tour-actions{align-items:center;gap:6px;margin-top:6px;display:flex}.tour-push{flex:1}@media (prefers-reduced-motion:reduce){.tour-ring,.tour-card{transition:none;animation:none}}
