.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:Architects Daughter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/architects-daughter-latin-ext-400-normal-BsHeVfRr.woff2)format("woff2"),url(/assets/architects-daughter-latin-ext-400-normal-FqHtA13I.woff)format("woff");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:Architects Daughter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/architects-daughter-latin-400-normal-DOGE_9Aw.woff2)format("woff2"),url(/assets/architects-daughter-latin-400-normal-Ze4cbGW2.woff)format("woff");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:500;src:url(/assets/caveat-cyrillic-ext-500-normal-DcrB4vVx.woff2)format("woff2"),url(/assets/caveat-cyrillic-ext-500-normal-DqTXtm5N.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/caveat-cyrillic-500-normal-DpMZbbjM.woff2)format("woff2"),url(/assets/caveat-cyrillic-500-normal-DLSfp5IU.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/caveat-latin-ext-500-normal-jKqJW7bC.woff2)format("woff2"),url(/assets/caveat-latin-ext-500-normal-wUUXxlbS.woff)format("woff");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:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/caveat-latin-500-normal-B9SDL8cy.woff2)format("woff2"),url(/assets/caveat-latin-500-normal-Do9veZfZ.woff)format("woff");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:700;src:url(/assets/caveat-cyrillic-ext-700-normal-CrK2-ngJ.woff2)format("woff2"),url(/assets/caveat-cyrillic-ext-700-normal-DjFGiEhD.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/caveat-cyrillic-700-normal-BIyejhEL.woff2)format("woff2"),url(/assets/caveat-cyrillic-700-normal-Bhcx9qBB.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/caveat-latin-ext-700-normal-DFbRgDry.woff2)format("woff2"),url(/assets/caveat-latin-ext-700-normal-DjJQd59I.woff)format("woff");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: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");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2)format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2)format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=)format("woff2"),url(data:font/woff;base64,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)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQAAAAQtAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVDYAdBEICoRkg3gLIAABNgIkAzoEIAWFIgeBFAwHG1wHKI7DuPEacDIiFJ/g+f47+1/7dIcdXTlD8DKqmcw4eIC+AOCPf6+qiWq3h6+aSCLNJDnkqX9Xl+rv/6dSBcwSBCzEoVqxNbp5SqPMYdKBQhBq1dK9ggSsgYUoGnHOqttMECvWjIJfPA8cjQAuAEAQLAiClASc7M6OkfbO/nHs6ACmCYBxZXKP4s9uXIHECh4AdEhX0yIHC6jzgAb65sshStMMChwEfWVjZe8Anset/6H93x8jOyL5fuS67z4Dlam+BPyH/pV2FLCZAOnU0XPzCQGiJ7AkXgSFhqDEB4AAoAAN2ExDgM10joCNfDQUbvxaXM8LovT79D9MEyYU9+q/myT9p/m8uWi2mLJBPbzcih2wYIPzBDFNvABt315OXwy8BaRnbo5hXsOS5taknX4FguiaZnd4vQ7HxnBnm3SPYXHrQbclvOgyDhsHnZPO8f3G5I2fbr34Y7+hzRozVzyw5bKHdu03plXgvE9FO/Uz4/xPUKd8/PHk+R+JODnlg1lDTv3Qed77zDNqRszaqHUQT248kUPGzBXXXHGFnHrVVdft2m8c4PhpjB+/QEqMU54xruc6m3w8++XNXx4sya9rMvNq88m6X1zeOMlRuQ+/nvNw4+ZrCt58yDdSVOQdfoi/jc/ePfZY+1taYaH21FH2Y4fGG+RVNJkIN4SSiWj3ZKGG1oojoYr2SNWFVbHvY1XX1PR+H6y+oKrqgmryqj1UXnmk5cKWysPM3R4Uh5svYo6saAtU3V297+d91U/X/frzLvUdqiqfruKvhx5+OeOYxbHI7SenQum+PTw/fvRLGQ/jiufOn3/S+vlsfGn9h4Zb96fekZ7xRups68FhVCYCWHHvZVIPxjanr3NABSALqkR7FMBOulF9ScHvV3np+6pK/eEzRx877K3/z65pvwN89eGtV3Ly5ft/25ngaiSYDVYUAAKvIKimMdLO6YBQEY+aZpbXZ5WinTBQXwAA4LMAXuNUBPCSTmMfjd6jpNLNjbToDuBpaR9AoTBbUeERO2o0erNeR6KFne5HK/nOQA+VBtFnt1LtBj6pJQIutnLwipz/Ix9OYNSqZQEreiQELIkKmRIRNWdewpiIZVGtVi0J6xWR0ComIGpFnN+AVStWzUtIWBNXq0iRuJCYqDUJcYXiopYUWhUzp8iQTv20dtO84Agw6YrhuOijfqUKlSpRAruvTq9WdeQw2vs5SUsCYhdt7icIt1nNkseKPZzgV6q4FfYbH4ZIBcThYTEgLIgIkYRbJLl7/rks+ObZDxydE8W9LymoUMiqZUVbtVv0GNkcispQM0IpEG7sBdK9IYr6aKKLRaxiQxO7OMQphrUlGIscFbElV6LF5S0dQN5RbRoUdRbWWOYCy8sB83RxS7FqG/UEQslE5Nsd5v93uF3T0bLiypD/uJhn3q9fCAA=)format("woff2"),url(data:font/woff;base64,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)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-cyrillic-600-normal-EVf6-Yzo.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-600-normal-8K4wrrwR.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-greek-600-normal-H7WoG9Et.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-600-normal-mc2nkWzM.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-600-normal-OWROknRo.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-ext-600-normal-BfB_LPfz.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-600-normal-DObL3zCW.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-600-normal-BfsvjouI.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,d09GMgABAAAAAASAABAAAAAACNgAAAQlAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVEwAdBEICoRkg3gLIAABNgIkAzoEIAWEaAeBFAwHGzgHSJ4DbjN9OmtkIy0becnT/RjJ4uGfw99974/GXrhoTCqLok66NY3jTloEUdrmwCevn/Ls30xSpFlZ6UJMrW+fTNwAEdSuvSzCRANvEgnjUmw8swT+87+w7I/7qb8XlIB7NpGBjXiUjRX0b7ZpJ8+orRLzvGhWYCMdAU3BbRdPuqOeKAXuRKAWEEJJCIEQqNbLD9osq2kBviL8A4Fq4yLgAa+6DNaiAwcYOrqYHfgQcMgL3AFgG4fHHqREEUBSxUtmBfzNWxXADfviy8Kff7dA4QfFBQG6fnoX5Dh+gEEcIVRKtMIYhc/kCgsCDiarQY4QWpEKQoYTAAIJUcaHAHIXIN9BooBWhEAr0j7QzAkh1RnEWOY4wuRW8uX/f5o5W8gXcjriOUb9z/wjACRuWaWrpKIyLMQ/DUDN/TT+ErgHRpPBIRQrKCcZCvxBBCBEkSD4lKMjRblQlCvpQHPsSZE9R6K2o/vpXkGboKWbbltxx2feLT+a6KJb5293n7vTt53uwOzUO4gYc5eedhvS+a1bbdNuIiSA89cuGo25IZh6DXrJJIIUUibFUG0zt+ijO+cvnj8fjVm4cKlvN90DwzrdMmy8H9GjDyv90Xz2W10PVj3oTY7LLfwfmxMHoef+8n33R0duOxF3LPCYFXtymWNdcLBD3VF4S91+GWf8c9k7sZC6fPpnbENnCmayerBNki0ZbFUXiHV/wkxWklGmydCkaR5o0oZnlj3oSVdnZKjTITaXStOyWGYakzUgTSt1gvSs/otJL1FkzE/3e+aXvj7n+TOv9HkZ6evS4e3OXafCx8iqJfNGpQLM7rkt0ppRJ8N3gd1IjHLaROM0cLkhdf2NQjZ4bmjo2mBWKJ4CPA4IZXX9hFlPBnhxWhXzgBGQ88QeRD3j1/AD5a/JxMnL5gK5deaC2H7HvK98gngBbzfWLKD0g2ufeA7nMsQepBwDgpdhy90BzC+8DSCers8O6KKloYn0RCtKo9EM9LsAd7AgNBhFGEAsvl4K1LpCiCIF3IZHFUKvX5AqfUPBgkO+ovHpUNJtOJSN6hDWWxAigkCt9hbEXdaOHLvI6lM5gQA79LRYOpUsWBpKYu2klOQULGlGCwOzHIkSmYmZKBlQrlmCQ0mDv5SeiVyiemVqVJGyEDJhKemY1dLT0YsnpKch0UbKxExJTydIigQpkiUvYA3SVFDqFH2uNggh343VmPs2ycX0DIYwPYTigMak5AjS0ohI8zmoo4EJwypS4iVcDOuDuvRMgytHPa5LTjnoc1YiCcT0tBI3qjXxqqFomJf2PylAOHMDRp1HGBaDQCTiIC7iQSH4iEICRHMZkUlqk/KsOmVSGlOK7NIseRNZFp3NkbNaLateTmKScHGTAyu2WqQf6lD8rMNg1+lKTcpwkfvQ/7eRMwAA)format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAAbAAA8AAAAACLwAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABWAAAABgAAAAcABQABEdQT1MAAAFwAAAAHgAAAB5EdEx1R1NVQgAAAZAAAAAnAAAAKLj8uOpPUy8yAAABuAAAAFEAAABgGDBcS1NUQVQAAAIMAAAAPgAAAEzrJ8wpY21hcAAAAkwAAABRAAAAdAyHCodnYXNwAAACoAAAAAgAAAAIAAAAEGdseWYAAAKoAAAB6wAAAmCgFyn6aGVhZAAABJQAAAA2AAAANhSU8UNoaGVhAAAEzAAAAB8AAAAkAc0A/2htdHgAAATsAAAAHwAAADoe9gKVbG9jYQAABQwAAAAgAAAAIATdBZ9tYXhwAAAFLAAAABwAAAAgAIcCb25hbWUAAAVIAAABBwAAAmg1nlsfcG9zdAAABlAAAABwAAAAlNdzMTB42mNgZGBg4GGAAEYgZAWTjCAeAAG0ABkAAQAAAAoAHAAcAAFERkxUAAgABAAAAAD//wAAAAAAAHjaY2BkYGDgYlADQiYXN58QBqGcxJI8Bj4GEGABEf//g0gAWkkFVQB42mNgYYpi2sPAysDA1MUUwcDA4A2hGeMYjBgdgKIMDJwMUMDEzoAEvJyAxAIGXpaXzH/+XWFgYP7DqKPAwDj//nWgSjWmW0BZBQZWAB8jDeMAAAB42gXBsQ1AABQFwHufiI5CYQBDaVVIlBLLmckM7kT0CpPCop79uIPz3q4MojUrSFcvtVIfGlEZQfgB9IwGBAAAeNpVyEcBwkAQBdCXHnoVgJU44Y4pFIAFUAOJiS23ZOZ3lKhwVSlkr91xdlQp7dwMnr5FWb/rMQQW26v+h3xT+IRHGEIBCvNr9Wh0OUU7NxUUAAAAAAEAAf//AA942m0QNZQUMfQn2Zt1Gcdhd2Dt/DLJrOLu0OHu7u4uJf3D+odLhUOLu0MLJVQ7S3C4u+S7/w8EJgIgFz8XkgR+ACrH5V5xGaH4RHTSPY7q3KsCH+LnlWQLLrqAi4DBAsBM5HghBkBVqlopy6vSVDKZkiSvdenY5e3p6+k+R+qCMUKioe/Jp08j82bzGEUZ0wTV6s8K5AJOAgIQncPd2rNGBEVgCms/0U1oVCbUNAyTc8ehRP70eNfKsEI8cnjZzsfIj+5VuhVisUK3itvofhX1fmViCTwAQGBo9QuO4Y8QEZ4eADWJJJNtTlsMXdYkKdXCGbN0zSCU2UkrIemobtGGDYsWbcjNGcKd57ncc0c0DqybjfKz166d7d7pP9NZUrYXL7bLaMhkViox0TNTHYkbcVL09P/Tswlk6ATWj55Jxmz+vauh6/+2Tf1tO2huPj930E/KC2+LxbcFzooBNrPfoX4zGJ/+nfEFBdalCyu878DyeQbod2dQAUxGqNoNm6bDHQEqJfrnWzvmeQM+LJ7HXyPN3Xbz3DmcdM/pmR4B8WI9NR2Nqjw/B4DgOsmiM+QCEADVod7rC/euJNnDh4VnK0mgF8ITBkDielQzaAsXTEJ1o6fPyFpW7YzpJDG+fzydjvcfD98ArHSFeAAAAQAAAAI2BCpkDTZfDzz1AAMD6AAAAADb0qaaAAAAANva0PL5PP7UBJID/AABAAYAAgAAAAAAAHjaY2BkYGD+8+8KAwPLhp82f3NYJgFFUAEfAK0mBsoAeNpjimCIAmJlJCwOxR5ArIlEM0AxCBxiqAMA3bsHpgAAAAAaADsARgBRAG4AdgCoALAA5QEKAQoBCgEKARcBMHjaY2BkYGDgZ9zBkMewhYENzEMAZgYmAC0aAfh42oyQA25FUQBET20EtW27DWrbcfVtcx1dzV9V40adpLdmXiZzMnfmCSjlnhyycouATFa14SwaeTScTSEPhnOYJmM4l+7XbR71pA3n08ml4XL12585C0qpNpz/ds+sCuXFhitFcIwPD9d42SIsd+Pglgsscht2ZZIuPyHmGWFEfksQh5KweFhy4Jb7lNp0fsA6u2xjIcyysmsceNXaU8MrDSn14eaOc3WCaI9OaGWcYWlM19d16+u+9XX/1l9gW+nCv55q/NdnrEh+EgRf/4LejlEk0akSi/z3tzwkKHeqc4v2LBGR25UFUZPeL3/WhgM11LthmKclg2NGH4st+nj8qQkARipb8wB42mNgYgCD/6kMRkCKkQEd8AOxCsNJRiYGG0ZmRhZGVkY2RnYGZkYORk5GLkZuNsekotSyVPbSvEwDE0dXCO1qAeW7QfmWrOmJubmJYJ6BowGTcxBfYnJpSWpyfm6SXnJicSoPSMbYwAzMAQCg7RyY)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-cyrillic-700-normal-BWTpRfYl.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-700-normal-CEoEElIJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-greek-700-normal-C6CZE3T8.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-700-normal-DEigVDxa.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-700-normal-BDLVIk2r.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-ext-700-normal-CZipNAKV.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-700-normal-CxPITLHs.woff)format("woff");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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-ext-400-normal-CuPM9foi.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-400-normal-xaE7D4Sw.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-cyrillic-400-normal-xAOo5cBP.woff2)format("woff2"),url(/assets/nunito-cyrillic-400-normal-D1j0u8EH.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-vietnamese-400-normal-BHkVbP3T.woff2)format("woff2"),url(/assets/nunito-vietnamese-400-normal-DtOtW02z.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-ext-400-normal-i-8OOpdj.woff2)format("woff2"),url(/assets/nunito-latin-ext-400-normal-CjMJVfGn.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/nunito-latin-400-normal-r8SDr6Up.woff2)format("woff2"),url(/assets/nunito-latin-400-normal-DKg4f3fz.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-ext-700-normal-BuR0mlCG.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-700-normal-DfoqN4Gs.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-cyrillic-700-normal-DP36NgGt.woff2)format("woff2"),url(/assets/nunito-cyrillic-700-normal-DfHRUDv-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-vietnamese-700-normal-Ch8EUCfz.woff2)format("woff2"),url(/assets/nunito-vietnamese-700-normal-C9SQsXvj.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-ext-700-normal-BWeMsAzO.woff2)format("woff2"),url(/assets/nunito-latin-ext-700-normal-D4woHhbd.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/nunito-latin-700-normal-Dort48En.woff2)format("woff2"),url(/assets/nunito-latin-700-normal-OcDqTBcA.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-ext-800-normal-B-cvGohL.woff2)format("woff2"),url(/assets/nunito-cyrillic-ext-800-normal-pjRatrRO.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-cyrillic-800-normal-D3igD7Kl.woff2)format("woff2"),url(/assets/nunito-cyrillic-800-normal-DymMgApb.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-vietnamese-800-normal-D_CZYdm9.woff2)format("woff2"),url(/assets/nunito-vietnamese-800-normal-Dz0hZPb5.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-ext-800-normal-CtU8tJOV.woff2)format("woff2"),url(/assets/nunito-latin-ext-800-normal-CDcxIxx8.woff)format("woff");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:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2"),url(/assets/nunito-latin-800-normal-D-J0wlBY.woff)format("woff");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}:root{--bg:#0b0d11;--floor:#101318;--grid:#1b2029;--panel:#151922;--panel-border:#2a3140;--metal:#2b313d;--metal-hi:#3a4353;--metal-lo:#1c2129;--text:#e8eaf0;--muted:#8d95a8;--accent:#ffb020;--hazard-a:#f3b21b;--hazard-b:#1a1a1a;--fam-client:#5b8cff;--fam-edge:#38c6e0;--fam-gateway:#d37cff;--fam-source:#9fb0c8;--fam-compute:#f2a93b;--fam-stream:#b07cff;--fam-batch:#ff6f91;--fam-data:#2fbf9f;--fam-building:#ff7a45;--fam-note:#8d95a8;--lamp-idle:#6b7280;--lamp-busy:#3ddc84;--lamp-failing:#ff5c7a;--bronze:#cd7f32;--silver:#b8c2cc;--gold:#f5c542;--radius:6px;--on-accent:#0b0d11;--hint:#b6bdcc;--danger:#ff5c7a;--danger-text:#ffb3c0;--danger-border:#5c2030;--danger-bg:#3a1520;--rim:#fff;--shade:#000;--hard-shadow:#000;--hard-line:#000;--scrim:#06080cb8;--port-hi:#9aa4b8;--port-lo:#5c6678;--minimap-mask:#0009;color:var(--text);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:ui-sans-serif,system-ui,Segoe UI,Roboto,sans-serif;font-size:14px}:root[data-theme=light]{--bg:#f4f5f7;--floor:#fff;--grid:#e3e6eb;--panel:#fff;--panel-border:#d9dde4;--metal:#e8ebef;--metal-hi:#f6f7f9;--metal-lo:#dde1e7;--text:#1b1f27;--muted:#5c6577;--accent:#a85d00;--hazard-a:#f3b21b;--hazard-b:#1a1a1a;--fam-client:#2f63d6;--fam-edge:#0b7f99;--fam-gateway:#9a3fc4;--fam-source:#55657d;--fam-compute:#b06a00;--fam-stream:#7447cc;--fam-batch:#c42f5a;--fam-data:#0f7f68;--fam-building:#c4501d;--fam-note:#6b7280;--lamp-idle:#9ca3af;--lamp-busy:#16a34a;--lamp-failing:#dc2646;--on-accent:#fff;--hint:#5c6577;--danger:#c81e45;--danger-text:#9b1235;--danger-border:#f2b8c6;--danger-bg:#fdecef;--rim:#10182a;--shade:#10182859;--hard-shadow:#1018281f;--hard-line:#8a93a3;--scrim:#1e243059;--port-hi:#fff;--port-lo:#c5ccd6;--minimap-mask:#e4e7ecb3;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;overflow:hidden}@supports (height:100dvh){html,body,#root{height:100dvh}}button{font:inherit;color:inherit}.app{flex-direction:column;height:100%;display:flex}.topbar{background:linear-gradient(var(--metal-hi), var(--metal));border-bottom:2px solid var(--metal-lo);height:46px;box-shadow:0 2px 0 var(--hard-shadow);align-items:center;gap:12px;padding:0 12px;display:flex}.brand{letter-spacing:.02em;color:var(--accent);align-items:center;gap:6px;font-weight:700;display:flex}.select{background:var(--metal-lo);color:var(--text);border:1px solid var(--panel-border);border-radius:4px;padding:4px 8px}.crumbs{align-items:center;gap:4px;min-width:0;display:flex}.crumb-wrap{align-items:center;gap:4px;display:inline-flex}.crumb{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px}.crumb:hover{background:color-mix(in srgb, var(--rim) 8%, transparent)}.spacer{flex:1}.zoom{font-variant-numeric:tabular-nums;text-align:right;min-width:48px;font-weight:600}.workspace{flex:1;min-height:0;display:flex;position:relative}.canvas-wrap{flex:1;min-width:0;position:relative}.canvas{position:absolute;inset:0}.inspector{border-left:2px solid var(--metal-lo);background:var(--panel);width:300px;padding:14px;overflow:auto}.inspector h3{margin:0 0 2px;font-size:16px}.inspector h4{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:14px 0 6px;font-size:12px}.inspector__head{align-items:center;gap:10px;margin-bottom:10px;display:flex}.inspector__title{flex:1;min-width:0}.inspector__close{flex:none;margin-left:auto}.inspector-tab{z-index:5;background:var(--metal);border:1px solid var(--metal-lo);cursor:pointer;border-right:none;border-radius:6px 0 0 6px;place-items:center;width:28px;height:32px;display:grid;position:absolute;top:8px;right:0}.hint{color:var(--hint);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:12px;overflow:hidden}.crumbs{white-space:nowrap}.crumb{text-overflow:ellipsis;max-width:180px;overflow:hidden}.inspector p{margin:6px 0;line-height:1.45}.plain{margin:0;padding:0;list-style:none}.plain li{padding:3px 0}.kv{grid-template-columns:auto 1fr;gap:2px 10px;margin:8px 0;font-size:13px;display:grid}.kv div{display:contents}.kv dt{color:var(--muted)}.kv dd{margin:0}.muted{color:var(--muted);font-size:.92em}.react-flow{background:var(--floor)}.react-flow__pane{cursor:grab}.react-flow__controls{background:var(--metal);border:1px solid var(--metal-lo);box-shadow:0 2px 0 var(--hard-shadow)}.react-flow__controls button{background:var(--metal);border-bottom:1px solid var(--metal-lo);fill:var(--text)}.react-flow__controls button:hover{background:var(--metal-hi)}.react-flow__minimap{border:1px solid var(--metal-lo);background:var(--panel)!important}.port{z-index:3;cursor:crosshair;opacity:.45;background:0 0;border:none;border-radius:50%;width:22px;height:22px;transition:opacity .12s}.port:after{content:"";background:linear-gradient(var(--port-hi), var(--port-lo));border:2px solid var(--hard-line);box-sizing:border-box;box-shadow:0 0 0 1px color-mix(in srgb, var(--rim) 15%, transparent);border-radius:3px;position:absolute;inset:4px}.react-flow__node:hover .port,.port:hover,.react-flow__node.selected .port,.canvas[data-connecting] .port{opacity:1}.port:hover:after,.react-flow__node.selected .port:after,.port.connectingto:after,.port.valid:after{background:var(--accent);border-color:var(--hard-line)}.port--floor{width:26px;height:26px}.port--floor:after{inset:5px}.react-flow__connection-path{stroke:var(--accent);stroke-width:3px;stroke-dasharray:6 4}.inspector.fam-client{--fam:var(--fam-client)}.inspector.fam-edge{--fam:var(--fam-edge)}.inspector.fam-gateway{--fam:var(--fam-gateway)}.inspector.fam-source{--fam:var(--fam-source)}.inspector.fam-compute{--fam:var(--fam-compute)}.inspector.fam-stream{--fam:var(--fam-stream)}.inspector.fam-batch{--fam:var(--fam-batch)}.inspector.fam-data{--fam:var(--fam-data)}.inspector.fam-building{--fam:var(--fam-building)}.inspector.fam-note{--fam:var(--fam-note)}.building__toggle{background:var(--metal-lo);border:1px solid var(--hard-line);width:20px;height:18px;color:var(--accent);cursor:pointer;border-radius:3px;place-items:center;margin-left:auto;padding:0;display:grid}.building__toggle:hover{background:var(--metal-hi)}.building__toggle svg{display:block}.building__add{color:var(--lamp-busy)}.alias-badge{background:var(--metal-lo);border:1px solid var(--hard-line);width:16px;height:16px;color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb, var(--rim) 12%, transparent);border-radius:3px;flex:none;place-items:center;display:inline-grid}.alias-panel{background:color-mix(in srgb, var(--accent) 10%, transparent);border:1px dashed color-mix(in srgb, var(--accent) 55%, transparent);border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px;padding:8px 10px;font-size:12px;line-height:1.4;display:flex}.alias-panel>span:not(.alias-badge){flex:160px;min-width:0}.react-flow__nodesselection{display:none!important}.react-flow__node-floor{cursor:default;pointer-events:none!important}.react-flow__node-portal{cursor:pointer}.react-flow__node-portal .port{pointer-events:none;opacity:0!important}.palette__target{color:var(--text);background:color-mix(in srgb, var(--accent) 14%, transparent);border:1px solid color-mix(in srgb, var(--accent) 50%, transparent);border-radius:6px;align-items:center;gap:6px;margin:0 12px 8px;padding:4px 8px;font-size:12px;display:flex}.palette__target-label{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.palette__target-clear{color:var(--muted);cursor:pointer;background:0 0;border:none;flex:none;place-items:center;padding:0;display:grid}.palette__target-clear:hover{color:var(--text)}.bend{pointer-events:all;cursor:grab;z-index:6;background:var(--accent);border:2px solid var(--hard-line);width:14px;height:14px;box-shadow:0 0 0 2px color-mix(in srgb, var(--rim) 45%, transparent);border-radius:3px;position:absolute}.bend--mid{background:var(--panel);border-color:var(--accent);border-radius:50%;width:12px;height:12px}.bend:hover{filter:brightness(1.25)}.bend:active{cursor:grabbing}.canvas[data-lod=far] .bend{display:none}.palette{border-right:2px solid var(--metal-lo);background:var(--panel);flex-direction:column;width:240px;min-height:0;display:flex;position:relative}.palette__head{align-items:center;gap:8px;padding:14px 12px 8px;display:flex}.palette__close{flex:none;margin-left:auto}.palette-tab{z-index:5;background:var(--metal);border:1px solid var(--metal-lo);cursor:pointer;border-left:none;border-radius:0 6px 6px 0;place-items:center;width:28px;height:32px;display:grid;position:absolute;top:8px;left:0}.search{background:var(--metal-lo);border:1px solid var(--panel-border);color:var(--muted);border-radius:4px;align-items:center;gap:6px;margin:0 12px 8px;padding:4px 8px;display:flex}.search input{min-width:0;color:var(--text);font:inherit;background:0 0;border:none;outline:none;flex:1}.palette__bykind{gap:6px;margin:0 12px 8px;display:flex}.palette__bykind .select{flex:1;min-width:0}.palette__list{flex:1;padding:0 8px 8px;overflow:auto}.palette__list h4{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:10px 4px 4px;font-size:11px}.preset{cursor:pointer;text-align:left;--fam:var(--fam-note);background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;width:100%;padding:5px 6px;display:flex}.preset.fam-client{--fam:var(--fam-client)}.preset.fam-edge{--fam:var(--fam-edge)}.preset.fam-gateway{--fam:var(--fam-gateway)}.preset.fam-source{--fam:var(--fam-source)}.preset.fam-compute{--fam:var(--fam-compute)}.preset.fam-stream{--fam:var(--fam-stream)}.preset.fam-batch{--fam:var(--fam-batch)}.preset.fam-data{--fam:var(--fam-data)}.preset.fam-building{--fam:var(--fam-building)}.preset.fam-note{--fam:var(--fam-note)}.preset:hover{background:color-mix(in srgb, var(--rim) 5%, transparent);border-color:var(--panel-border)}.preset__icon{background:var(--metal-lo);border:1px solid var(--hard-line);width:28px;height:28px;color:var(--fam);border-radius:4px;flex:none;place-items:center;display:grid}.preset__text{flex-direction:column;min-width:0;line-height:1.2;display:flex}.preset__label{font-size:13px;font-weight:600}.preset__text .muted{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.palette__hint{border-top:1px solid var(--panel-border);margin:0;padding:8px 12px;font-size:11px}.preset{cursor:grab}body[data-preset-drag],body[data-preset-drag] *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.preset-ghost{z-index:45;transform-origin:0 0;pointer-events:none;opacity:.8;filter:saturate(.55);position:fixed}.preset-ghost:not([data-over]){opacity:.6}.preset-slot{z-index:44;pointer-events:none;border:2px solid var(--accent);border-radius:var(--radius);background:color-mix(in srgb, var(--accent) 14%, transparent);position:fixed}.preset-caption{z-index:46;pointer-events:none;white-space:nowrap;color:var(--text);background:var(--panel);border:1px solid var(--panel-border);isolation:isolate;border-radius:999px;padding:2px 8px;font-size:11px;position:fixed;transform:translate(-50%,-100%)}.preset-caption[data-hold]{border-color:var(--accent);overflow:hidden}.preset-caption[data-hold]:before{content:"";z-index:-1;background:color-mix(in srgb, var(--accent) 35%, transparent);transform-origin:0;animation:drop-hold var(--hold-ms,1s) linear forwards;position:absolute;inset:0}.preset-ghost>*{width:100%;height:100%}.react-flow__node[data-drop=target]{outline:calc(2px / var(--zoom,1)) dashed var(--accent);outline-offset:calc(3px / var(--zoom,1))}.react-flow__node[data-drop=hold]{outline:calc(2px / var(--zoom,1)) solid var(--accent);outline-offset:calc(3px / var(--zoom,1))}@keyframes drop-hold{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.form{flex-direction:column;gap:8px;margin:8px 0 10px;display:flex}.form label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);flex-direction:column;gap:3px;font-size:11px;display:flex}.form label.check{flex-direction:row;align-items:center;gap:8px}.form label.check input{accent-color:var(--accent);flex:none;margin:0}.form label .muted{text-transform:none;letter-spacing:0}.form input,.form select,.form textarea{font:inherit;text-transform:none;letter-spacing:0;color:var(--text);background:var(--metal-lo);border:1px solid var(--panel-border);border-radius:4px;padding:5px 8px;font-size:13px}.form textarea{resize:vertical}.form input[type=range]{background:0 0;border:none;flex:1;padding:0}.form .num{width:92px}.row{align-items:center;gap:6px;display:flex}.row.wrap{flex-wrap:wrap;margin:6px 0 10px}.mono{font-variant-numeric:tabular-nums;min-width:36px;color:var(--text);font-size:12px}.btn--danger{color:var(--danger-text);border-color:var(--danger-border)}.btn--danger:hover{background:var(--danger-bg)}.btn:disabled{opacity:.4;cursor:default}.link{color:var(--text);cursor:pointer;background:0 0;border:none;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.speed{color:var(--muted);align-items:center;gap:6px;display:flex}.speed input[type=range]{width:80px;accent-color:var(--accent)}.help{position:relative}.help summary{list-style:none}.help summary::-webkit-details-marker{display:none}.help__pop{z-index:20;background:var(--panel);border:1px solid var(--panel-border);width:340px;box-shadow:0 8px 24px color-mix(in srgb, var(--shade) 60%, transparent);border-radius:6px;padding:10px 12px;font-size:12px;line-height:1.4;position:absolute;top:34px;right:0}.help__pop b{color:var(--accent);text-transform:uppercase;letter-spacing:.06em;margin-top:6px;font-size:11px;display:block}.help__pop b:first-child{margin-top:0}.help__pop div{color:var(--muted)}.crumb{max-width:220px}.react-flow__edgelabel-renderer{z-index:1001}.filemenu__toggle.is-on{color:var(--accent);border-color:var(--accent)}.filemenu__pop{z-index:40;background:var(--panel);border:1px solid var(--panel-border);width:280px;max-height:calc(100vh - 64px);box-shadow:0 8px 24px color-mix(in srgb, var(--shade) 60%, transparent);border-radius:8px;padding:6px;position:fixed;top:52px;left:8px;overflow:auto}.menuitem{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;width:100%;padding:7px 8px;font-size:13px;display:flex}.menuitem:hover:not(:disabled){background:color-mix(in srgb, var(--rim) 6%, transparent)}.menuitem.is-on{background:color-mix(in srgb, var(--rim) 8%, transparent)}.menuitem__end{margin-left:auto}.filemenu__sub{max-height:calc(100vh - 16px)}.menuitem:disabled{color:var(--muted);cursor:default}.menuitem svg{color:var(--muted)}.filemenu__sep{border:none;border-top:1px solid var(--panel-border);margin:6px 4px}.filemenu__label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:4px 8px 2px;font-size:11px}.filemenu__seg{margin:4px 8px 8px}.filemenu__seg .btn--seg{flex:1;justify-content:center;padding:6px 8px;font-size:13px}.theme-switch.filemenu__seg--grid{grid-template-columns:repeat(3,1fr);gap:3px;display:grid}.theme-switch.filemenu__seg--grid .btn--seg{border-radius:4px;padding:6px 4px}.filemenu__note{color:var(--muted);margin:2px 8px 6px;font-size:12px}.filemenu__option{flex-direction:column;display:flex}.filemenu__option-label{color:var(--muted);margin:2px 8px 0;font-size:12px}.filemenu__option .filemenu__seg{margin-top:3px}.filemenu__empty{margin:4px 8px 6px;font-size:12px}.filemenu__files{margin:0;padding:0;list-style:none}.btn--icon{padding:4px 6px}.file{border:1px solid #0000;border-radius:6px;align-items:stretch;display:flex}.file.is-active{background:color-mix(in srgb, var(--accent) 14%, transparent);border-color:color-mix(in srgb, var(--accent) 50%, transparent)}.file:hover:not(.is-active){background:color-mix(in srgb, var(--rim) 5%, transparent)}.file__open,.file--template{text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:1px;min-width:0;padding:5px 8px;line-height:1.2;display:flex}.file__name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:13px;font-weight:600;overflow:hidden}.file .muted{font-size:11px}.file__close{color:var(--muted);cursor:pointer;opacity:0;background:0 0;border:none;padding:0 8px}.file:hover .file__close,.file.is-active .file__close{opacity:1}@media (hover:none){.file__close{opacity:1}}.file__close:hover{color:var(--danger)}.file--template{border:1px solid #0000;border-radius:6px;width:100%}.file--template:hover{background:color-mix(in srgb, var(--rim) 5%, transparent);border-color:var(--panel-border)}.crumb--root{font-weight:700}.welcome{z-index:30;overscroll-behavior:contain;background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:24px 16px;display:flex;position:absolute;inset:0;overflow:auto}.welcome__card{background:var(--panel);border:2px solid var(--metal-lo);width:min(680px,100%);box-shadow:0 16px 48px color-mix(in srgb, var(--shade) 60%, transparent), inset 0 1px 0 color-mix(in srgb, var(--rim) 6%, transparent);border-radius:10px;margin:auto;padding:24px 28px;position:relative}.welcome__close{position:absolute;top:10px;right:10px}.welcome__brand{color:var(--accent);align-items:center;gap:8px;font-size:20px;font-weight:800;display:flex}.welcome h4{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:18px 0 8px;font-size:11px}.welcome__grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:10px;display:grid}.tpl{text-align:left;cursor:pointer;background:linear-gradient(160deg, var(--metal-hi), var(--metal));border:2px solid var(--metal-lo);box-shadow:0 3px 0 var(--hard-shadow);border-radius:8px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.tpl:hover{border-color:var(--accent)}.tpl__name{font-size:15px;font-weight:700}.tpl__tag{color:var(--text);opacity:.85;font-size:12.5px}.welcome__hint{overflow-wrap:anywhere;margin-top:14px;font-size:12px}.welcome code{background:var(--metal-lo);border-radius:3px;padding:1px 5px;font-size:11px}@media (width<=760px){.palette,.inspector{z-index:25;width:min(300px,88vw);box-shadow:0 0 32px color-mix(in srgb, var(--shade) 60%, transparent);position:absolute;top:0;bottom:0}.palette{left:0}.inspector{right:0}.topbar{scrollbar-width:none;gap:8px;padding:0 8px;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 32px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 32px),#0000)}.topbar::-webkit-scrollbar{display:none}.topbar>*{flex:none}.help__pop{width:auto;position:fixed;top:52px;left:8px;right:8px}.welcome{padding:12px}.welcome__card{padding:18px 16px}.welcome__brand{font-size:18px}.tpl{padding:10px 12px}.palette-tab,.inspector-tab{width:40px;height:44px}.filemenu__pop{width:auto;right:8px}.btn{min-height:36px}.btn--icon{min-width:36px}.inspector__close,.palette__close{min-width:40px;min-height:40px}.react-flow__controls-button{width:36px;height:36px}.react-flow__minimap{display:none}}.react-flow__resize-control.handle.resizer__handle{border:2px solid var(--hard-line);background:var(--accent);width:11px;height:11px;box-shadow:0 0 0 1px color-mix(in srgb, var(--rim) 35%, transparent), inset 0 1px 0 color-mix(in srgb, var(--rim) 30%, transparent);border-radius:50%}.react-flow__resize-control.handle.resizer__handle:hover{background:var(--accent)}.react-flow__resize-control.line.resizer__line{border-color:color-mix(in srgb, var(--accent) 55%, transparent);border-style:dashed}.react-flow__resize-control.line.resizer__line.right,.react-flow__resize-control.line.resizer__line.left{border-left-width:2px;border-right-width:2px}.react-flow__resize-control.line.resizer__line.top,.react-flow__resize-control.line.resizer__line.bottom{border-top-width:2px;border-bottom-width:2px}.textbar{gap:6px;margin-top:-2px}.textbar__size{font:inherit;color:var(--text);background:var(--metal-lo);border:1px solid var(--panel-border);border-radius:4px;padding:3px 4px;font-size:12px}.textbar__seg{display:inline-flex}.textbar .btn{padding:4px 6px}.canvas[data-lod=far] .react-flow__background{opacity:.55}.inspector{scrollbar-width:thin;scrollbar-color:var(--metal-hi) var(--metal-lo);scrollbar-gutter:stable}.inspector__more{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:linear-gradient(transparent, var(--panel) 45%);pointer-events:none;justify-content:center;align-items:center;gap:4px;margin:-8px -14px -14px;padding:14px 0 8px;font-size:11px;display:flex;position:sticky;bottom:-14px}.topbar>*{flex:none}.topbar .crumbs{flex:0 auto;min-width:0;overflow:hidden}.topbar .spacer{flex:1 1 0;min-width:8px}.topbar .btn,.theme-switch{white-space:nowrap}.crumb-wrap{flex:0 auto;min-width:0}.crumb{flex:0 auto;min-width:56px}.crumbs>.crumb-wrap:last-child{flex-shrink:0}.canvas[data-embed] .port{visibility:hidden}.embed-bar{z-index:5;pointer-events:none;align-items:center;gap:8px;display:flex;position:absolute;top:8px;left:8px;right:8px}.embed-bar__name{pointer-events:auto;background:var(--panel);border:1px solid var(--panel-border);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;align-items:center;gap:2px;min-width:0;max-width:calc(100% - 110px);padding:3px 8px;font-size:12px;font-weight:600;display:flex;overflow:hidden}.embed-bar__name>*{text-overflow:ellipsis;flex:0 auto;min-width:0;overflow:hidden}.embed-bar__name>svg{flex:none}.embed-bar__crumb{font-weight:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0}.embed-bar__crumb:hover{text-decoration:underline}.embed-bar__open{pointer-events:auto;flex:none;align-items:center;gap:4px;margin-left:auto;font-size:12px;text-decoration:none;display:inline-flex}.embed-error{z-index:5;border-radius:4px;position:absolute;bottom:8px;left:8px;right:8px}@media (pointer:coarse){.canvas[data-embed] .react-flow__controls-zoomin,.canvas[data-embed] .react-flow__controls-zoomout{display:none}.canvas[data-embed] .react-flow__controls-button{width:32px;height:32px}}.react-flow__edges:has(.react-flow__edge:hover) .react-flow__edge:not(:hover,.selected){opacity:.3;transition:opacity .12s}.btn--toggle.is-on{color:var(--accent);border-color:var(--accent)}.embed-dialog{z-index:50;background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:24px 16px;display:flex;position:fixed;inset:0;overflow:auto}.embed-dialog__card{background:var(--panel);border:2px solid var(--metal-lo);width:min(560px,100%);box-shadow:0 16px 48px color-mix(in srgb, var(--shade) 60%, transparent);border-radius:10px;margin:auto;padding:20px 22px;position:relative}.embed-dialog__card h3{margin:0 32px 4px 0;font-size:16px}.embed-dialog__close{position:absolute;top:10px;right:10px}.embed-dialog__row{justify-content:space-between;align-items:center;display:flex}.embed-dialog__field{text-transform:uppercase;letter-spacing:.06em;color:var(--text);flex-direction:column;gap:3px;font-size:11px;display:flex}.embed-dialog__copy{text-transform:none;letter-spacing:0;border-color:var(--metal-hi);padding:2px 10px;font-size:12px}.embed-dialog .form textarea,.embed-dialog .form input{word-break:break-all;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:12px;font-weight:400;line-height:1.5}.embed-dialog__source{border-left:3px solid var(--accent);background:var(--metal-lo);border-radius:0 4px 4px 0;margin:12px 0 4px;padding:8px 10px;font-size:13px}.embed-dialog__warn{color:var(--accent);margin:8px 0 0;font-size:12px}.embed-dialog__footer{border-top:1px solid var(--panel-border);justify-content:flex-end;margin-top:14px;padding-top:12px;display:flex}.embed-dialog__preview{color:var(--text);border-color:var(--metal-hi);text-decoration:none}.agent-dialog .form textarea{word-break:normal;white-space:pre-wrap}.agent-dialog .embed-dialog__footer{flex-wrap:wrap;align-items:flex-start;gap:8px}.agent-dialog__skill{flex-direction:column;align-items:flex-end;gap:4px;font-size:11px;display:flex}.agent-dialog code{font-size:11px}@media (width<=520px){.agent-dialog .embed-dialog__footer>.btn{flex:1;justify-content:center}.agent-dialog__skill{flex-basis:100%;align-items:stretch}.agent-dialog__skill .btn{justify-content:center}}.btn{background:var(--metal-lo);border:1px solid var(--panel-border);cursor:pointer;border-radius:4px;align-items:center;gap:5px;padding:4px 9px;font-size:12px;display:inline-flex}.btn:hover{background:var(--metal-hi)}.io{gap:4px;display:flex}.theme-switch{display:flex}.btn--seg{border-radius:0}.btn--seg:first-child{border-radius:4px 0 0 4px}.btn--seg:last-child{border-radius:0 4px 4px 0}.btn--seg.is-on{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:700}.banner{align-items:center;gap:10px;padding:6px 12px;font-size:13px;display:flex}.banner--error{background:var(--danger-bg);color:var(--danger-text);border-bottom:1px solid var(--danger-border)}.banner .btn{margin-left:auto}.canvas[data-style=schematic]{--sch-hair:calc(1px / var(--zoom,1));--sch-font:"IBM Plex Mono", ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;--floor:var(--sch-bg);--grid:var(--sch-shell-grid);--accent:var(--sch-shell-accent);--panel:var(--sch-shell-panel);--metal:var(--sch-shell-metal);--metal-hi:var(--sch-shell-metal-hi);--metal-lo:var(--sch-shell-metal-lo);--text:var(--sch-text-hi);--muted:var(--sch-dim);--minimap-mask:color-mix(in srgb, var(--sch-bg) 60%, transparent);font-family:var(--sch-font)}.canvas[data-style=schematic] .react-flow__minimap{border-color:var(--sch-inset);background:var(--sch-bg)}.canvas[data-style=schematic] .react-flow__controls{border-color:var(--sch-inset);box-shadow:none}.canvas[data-style=schematic] .react-flow__controls button{border-color:var(--sch-inset)}.canvas[data-style=schematic][data-lod=far] .react-flow__background{opacity:0}.canvas[data-style=schematic] .react-flow__pane{background:0 0}.canvas[data-style=schematic] .react-flow__controls,.canvas[data-style=schematic] .react-flow__controls button{background:var(--sch-bg);fill:var(--sch-text)}.canvas[data-style=schematic] .port{opacity:0;background:0 0;border:none;border-radius:50%;width:22px;height:22px}.canvas[data-style=schematic] .react-flow__node:hover .port,.canvas[data-style=schematic] .port:hover,.canvas[data-style=schematic] .react-flow__node.selected .port,.canvas[data-style=schematic][data-connecting] .port{opacity:1}.canvas[data-style=schematic] .port:after{background:var(--sch-port);border:1px solid var(--sch-bg);box-shadow:none;border-radius:50%;inset:7px}.canvas[data-style=schematic] .port--floor:after{inset:9px}.canvas[data-style=schematic] .port:hover:after,.canvas[data-style=schematic] .react-flow__node.selected .port:after,.canvas[data-style=schematic] .port.connectingto:after,.canvas[data-style=schematic] .port.valid:after{background:var(--sch-pulse)}.canvas[data-style=schematic] .react-flow__connection-path{stroke:var(--sch-text);stroke-width:1px;stroke-dasharray:4 4}.canvas[data-style=schematic] .building__toggle{border:1px solid var(--sch-inset);width:18px;height:18px;color:var(--sch-dim);background:0 0;border-radius:0}.canvas[data-style=schematic] .building__toggle:hover{color:var(--sch-text-hi);border-color:var(--sch-line)}.canvas[data-style=schematic] .building__add{color:var(--sch-dim)}.canvas[data-style=schematic] .alias-badge{border:1px solid var(--sch-inset);width:14px;height:14px;box-shadow:none;color:var(--sch-dim);background:0 0;border-radius:0}.canvas[data-style=schematic] .bend{border:1px solid var(--sch-bg);box-shadow:0 0 0 1px var(--sch-line);border-radius:0}.canvas[data-style=schematic] .bend--mid{background:var(--sch-bg);border-color:var(--sch-text);border-radius:50%}.canvas[data-style=schematic] .react-flow__resize-control.handle.resizer__handle{border:1px solid var(--sch-bg);box-shadow:0 0 0 1px var(--sch-line);border-radius:0}.canvas[data-style=schematic] .react-flow__resize-control.line.resizer__line{border-color:var(--sch-faint)}.sch-card{background:var(--sch-card);border:var(--sch-hair) solid var(--sch-line);width:100%;height:100%;color:var(--sch-text);font:500 13px/18px var(--sch-font);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:10px;padding:0 14px;display:flex;position:relative;overflow:hidden}.sch-card:before{content:"";inset:calc(3 * var(--sch-hair));border:var(--sch-hair) solid var(--sch-inset);pointer-events:none;position:absolute}.sch-card>*{position:relative}.sch-card__icon{color:var(--sch-icon);flex:none;display:inline-flex}[data-fam=client]>.sch-card__icon{color:var(--sch-fam-client)}[data-fam=edge]>.sch-card__icon{color:var(--sch-fam-edge)}[data-fam=gateway]>.sch-card__icon{color:var(--sch-fam-gateway)}[data-fam=source]>.sch-card__icon{color:var(--sch-fam-source)}[data-fam=compute]>.sch-card__icon{color:var(--sch-fam-compute)}[data-fam=stream]>.sch-card__icon{color:var(--sch-fam-stream)}[data-fam=batch]>.sch-card__icon{color:var(--sch-fam-batch)}[data-fam=data]>.sch-card__icon{color:var(--sch-fam-data)}[data-fam=building]>.sch-card__icon{color:var(--sch-fam-building)}[data-fam=note]>.sch-card__icon{color:var(--sch-fam-note)}.sch-card__label{-webkit-line-clamp:2;white-space:normal;overflow-wrap:break-word;-webkit-box-orient:vertical;flex:0 auto;min-width:min-content;line-height:16px;display:-webkit-box;overflow:hidden}.sch-card__label[data-sized]{font-size:var(--label-size);line-height:1.3}.sch-card__count{color:var(--sch-faint);flex:none;font-size:11px;font-weight:400}.sch-card__detail{text-overflow:ellipsis;min-width:0;color:var(--sch-dim);flex:0 100 auto;margin-left:auto;padding-left:6px;font-size:12px;font-weight:400;overflow:hidden}.sch-card .alias-badge{flex:none}.sch-chip{color:var(--sch-dim);flex:none;align-items:center;gap:5px;font-size:11px;font-weight:400;display:inline-flex}.sch-chip:before{content:"";background:var(--sch-dim);border-radius:50%;width:6px;height:6px}.sch-chip--bronze:before{background:#b0753b}.sch-chip--silver:before{background:#a3acb6}.sch-chip--gold:before{background:#d6b04a}.sch-card:hover{border-color:var(--sch-hover)}.sch-card.is-selected{border-color:var(--sch-sel);background:linear-gradient(90deg, var(--sch-sel-a) 55%, var(--sch-sel-b))}.sch-card.is-selected:before{border-color:var(--sch-sel-inset)}.sch-card.is-selected .sch-card__label{color:var(--sch-text-hi)}.sch-card[data-mirror]{opacity:.6}.sch-card[data-align=center] .sch-card__label{margin-left:auto}.sch-card[data-align=center] .sch-card__detail{margin-left:0}.sch-card[data-align=center]:after{content:"";margin-left:auto}.sch-card[data-align=right] .sch-card__label{margin-left:auto}.sch-card[data-align=right] .sch-card__detail{margin-left:0}.sch-card[data-sized]{white-space:normal}.sch-card[data-sized] .sch-card__label{overflow-wrap:anywhere}.sch-card--building{box-shadow:5px 5px 0 calc(-1 * var(--sch-hair)) var(--sch-bg), 5px 5px 0 0 var(--sch-line)}.sch-card--building.is-selected{box-shadow:5px 5px 0 calc(-1 * var(--sch-hair)) var(--sch-bg), 5px 5px 0 0 var(--sch-sel)}.sch-card[data-cluster]{--sch-stack:var(--sch-stack-line);box-shadow:6px -6px 0 calc(-1 * var(--sch-hair)) var(--sch-bg), 6px -6px 0 0 var(--sch-stack), 12px -12px 0 calc(-1 * var(--sch-hair)) var(--sch-bg), 12px -12px 0 0 var(--sch-stack)}.sch-card[data-cluster].is-selected{--sch-stack:var(--sch-sel)}.sch-card--building[data-cluster]{box-shadow:6px -6px 0 calc(-1 * var(--sch-hair)) var(--sch-bg), 6px -6px 0 0 var(--sch-stack), 12px -12px 0 calc(-1 * var(--sch-hair)) var(--sch-bg), 12px -12px 0 0 var(--sch-stack), 5px 5px 0 calc(-1 * var(--sch-hair)) var(--sch-bg), 5px 5px 0 0 var(--sch-stack)}.sch-tools{flex:none;gap:4px;display:inline-flex}.sch-card--building .sch-tools{margin-left:4px}.sch-frame{background:var(--sch-frame-fill);border:var(--sch-hair) solid var(--sch-line);width:100%;height:100%;position:relative}.sch-frame.is-selected{border-color:var(--sch-sel)}.sch-frame--alias{border-style:dashed}.sch-frame--focused{border-color:var(--sch-hover);box-shadow:0 0 0 1px var(--sch-bg), 0 0 80px var(--sch-glow)}.sch-frame__tab{color:var(--sch-icon);font:400 12px/18px var(--sch-font);white-space:nowrap;align-items:center;gap:8px;margin-bottom:8px;display:flex;position:absolute;bottom:100%;left:-1px}.sch-frame__label{color:var(--sch-text);font-weight:500}.sch-frame__label[data-sized]{font-size:var(--label-size)}.sch-frame__meta{color:var(--sch-faint);font-size:11px}.sch-frame__tab .sch-tools{margin-left:4px}.sch-frame__tab[data-align=center]{left:50%;transform:translate(-50%)}.sch-frame__tab[data-align=right]{left:auto;right:-1px}.react-flow__node-floor .sch-frame__tab{pointer-events:all}.sch-frame--focused .sch-frame__tab{font-size:13px}.sch-portal{background:var(--sch-bg);border:var(--sch-hair) dashed var(--sch-line);width:100%;height:100%;color:var(--sch-dim);font:400 12px var(--sch-font);font-size:clamp(12px, 12px / var(--zoom,1), 18px);white-space:nowrap;align-items:center;gap:8px;padding:0 12px;display:flex;overflow:hidden}.sch-portal__label{text-overflow:ellipsis;color:var(--sch-text);overflow:hidden}.sch-portal:hover,.sch-portal.is-selected{border-style:solid;border-color:var(--sch-sel)}.sch-note{border:var(--sch-hair) dashed var(--sch-inset);width:100%;height:100%;color:var(--sch-dim);font:400 12px/1.5 var(--sch-font);white-space:pre-wrap;padding:10px 12px;overflow:hidden}.sch-note.is-selected{border-color:var(--sch-sel)}.sch-note__text[data-sized]{font-size:var(--label-size)}.sch-wire__line{fill:none;stroke:var(--sch-wire);stroke-width:1.25px;vector-effect:non-scaling-stroke}.sch-wire--batch .sch-wire__line{stroke-dasharray:10 4}.sch-wire--dependency .sch-wire__line{stroke:var(--sch-wire-dep);stroke-dasharray:2 5}.react-flow__edge:hover .sch-wire__line{stroke:var(--sch-wire-hi)}.sch-wire.is-selected .sch-wire__line{stroke:var(--sch-sel)}.sch-wire__end{fill:var(--sch-port)}.sch-wire.is-selected .sch-wire__end{fill:var(--sch-text-hi)}.sch-pulse__dot{fill:var(--sch-pulse)}.sch-pulse__glow{fill:var(--sch-pulse);opacity:.16}.sch-wire__label{pointer-events:all;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:var(--sch-bg);max-width:260px;color:var(--sch-wire);font:400 11px/16px var(--sch-font);font-variant-numeric:tabular-nums;padding:0 5px;position:absolute;overflow:hidden}.sch-wire__label:hover{color:var(--sch-text)}.sch-wire__label.is-selected{color:var(--sch-text-hi);outline:1px solid var(--sch-line)}.sch-wire__label--empty{color:var(--sch-faint)}.canvas[data-style=schematic][data-lod=mid] .sch-card{font-size:14px}.canvas[data-style=schematic][data-lod=mid] .sch-card__label{line-height:17px}.canvas[data-style=schematic][data-lod=mid] .sch-card__detail,.canvas[data-style=schematic][data-lod=mid] .sch-chip{display:none}.canvas[data-style=schematic][data-lod=mid] .sch-wire__label{font-size:13px;line-height:18px}.canvas[data-style=schematic][data-lod=mid] .sch-frame__tab{font-size:15px}.canvas[data-style=schematic][data-lod=far] .sch-card{white-space:normal;font-size:19px;line-height:21px}.canvas[data-style=schematic][data-lod=far] .sch-card__label{line-height:21px}.canvas[data-style=schematic][data-lod=far] .sch-tools,.canvas[data-style=schematic][data-lod=far] .sch-frame__meta,.canvas[data-style=schematic][data-lod=far] .sch-card__detail,.canvas[data-style=schematic][data-lod=far] .sch-chip,.canvas[data-style=schematic][data-lod=far] .sch-wire__label:not(.is-selected){display:none}.canvas[data-style=schematic][data-lod=far] .sch-card__icon svg{width:22px;height:22px}.canvas[data-style=schematic][data-lod=far] .sch-frame__tab{font-size:22px;line-height:28px}.canvas[data-style=schematic][data-lod=far] .sch-note{font-size:18px}.canvas[data-style=schematic][data-lod=far] .sch-card__count{color:var(--sch-dim);font-size:17px}.canvas[data-style=schematic][data-lod=far] .sch-wire__line{stroke:var(--sch-wire-hi);stroke-width:1.5px}.canvas[data-style=schematic][data-lod=far] .sch-wire--dependency .sch-wire__line{stroke:var(--sch-wire-dep-far)}.canvas[data-mode=shape]{--floor:var(--shp-bg);--grid:var(--shp-grid);--accent:var(--shp-accent);--panel:var(--shp-panel);--metal:var(--shp-metal);--metal-hi:var(--shp-metal-hi);--metal-lo:var(--shp-metal-lo);--text:var(--shp-text);--muted:var(--shp-muted);--minimap-mask:color-mix(in srgb, var(--shp-bg) 60%, transparent);background:var(--shp-bg)}.canvas[data-mode=shape] .react-flow__pane{background:0 0}.canvas[data-mode=shape] .react-flow__minimap{background:var(--shp-bg);border-color:var(--shp-frame)}.canvas[data-mode=shape] .react-flow__controls,.canvas[data-mode=shape] .react-flow__controls button{background:var(--shp-panel);border-color:var(--shp-frame);fill:var(--shp-text);box-shadow:none}.shp-defs{position:absolute}.backdrop{pointer-events:none;z-index:-1;position:absolute;inset:0}.canvas[data-mode=shape] .port{opacity:0;background:0 0;border:none;border-radius:50%;width:22px;height:22px}.canvas[data-mode=shape] .react-flow__node:hover .port,.canvas[data-mode=shape] .port:hover,.canvas[data-mode=shape] .react-flow__node.selected .port,.canvas[data-mode=shape][data-connecting] .port{opacity:1}.canvas[data-mode=shape] .port:after{background:var(--shp-wire);border:1.5px solid var(--shp-bg);box-shadow:none;border-radius:50%;inset:7px}.canvas[data-mode=shape] .port--floor:after{inset:8px}.canvas[data-mode=shape] .port:hover:after,.canvas[data-mode=shape] .react-flow__node.selected .port:after,.canvas[data-mode=shape] .port.connectingto:after,.canvas[data-mode=shape] .port.valid:after{background:var(--shp-sel)}.canvas[data-mode=shape] .react-flow__connection-path{stroke:var(--shp-sel);stroke-width:1.5px;stroke-dasharray:5 4}.canvas[data-mode=shape] .building__toggle{background:color-mix(in srgb, var(--o) 18%, transparent);border:1px solid color-mix(in srgb, var(--o) 45%, transparent);color:inherit}.canvas[data-mode=shape] .shp-floor .building__toggle{border-color:var(--shp-frame);background:0 0}.canvas[data-mode=shape] .bend{border:1px solid var(--shp-bg);box-shadow:0 0 0 1px var(--shp-wire);background:var(--shp-wire)}.shp{width:100%;height:100%;position:relative}.shp[data-mirror]{opacity:.6}.shp-svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.shp-svg path{vector-effect:non-scaling-stroke;stroke-linejoin:round}.shp-body{fill:var(--f);stroke:var(--shp-solid-stroke);stroke-width:1.5px}.shp-shade,.shp-stack{fill:color-mix(in srgb, var(--f) 62%, var(--shp-shade-mix));stroke:var(--shp-solid-stroke);stroke-width:1.5px}.shp-line{fill:none;stroke:var(--o);stroke-width:1.6px;opacity:.85}.shp-text{color:var(--o);text-align:center;pointer-events:none;flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute;transform:translate(-50%,-50%)}.shp-text[data-align=left]{text-align:left;align-items:flex-start}.shp-text[data-align=right]{text-align:right;align-items:flex-end}.shp-label{-webkit-line-clamp:2;overflow-wrap:break-word;--lbl:var(--shp-label-size,13px);max-width:100%;font-size:clamp(calc(var(--lbl) * .75), calc(var(--fit-room,10000px) / var(--fit-ems,1)), var(--lbl));-webkit-box-orient:vertical;font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}.shp-label[data-sized]{--lbl:var(--label-size)}.shp-tech{text-overflow:ellipsis;white-space:nowrap;opacity:.75;max-width:100%;font-size:11px;overflow:hidden}.shp-chips{gap:4px;display:flex}.shp-chip{border:1px solid;border-radius:3px;padding:0 5px;font-size:10px}.shp-badges{color:var(--o);gap:3px;display:flex;position:absolute;top:4px;right:6px}.canvas[data-fill=outline] .shp-body,.canvas[data-fill=outline] .shp-shade,.canvas[data-fill=outline] .shp-stack{fill:var(--shp-bg);stroke:var(--i);stroke-width:1.8px}.canvas[data-fill=outline] .shp-line,.canvas[data-fill=outline] .shp-badges{stroke:var(--i);color:var(--i)}.canvas[data-fill=outline] .shp-text{color:var(--i)}.canvas[data-fill=hatched] .shp-body,.canvas[data-fill=hatched] .shp-shade,.canvas[data-fill=hatched] .shp-stack{stroke:var(--i);stroke-width:1.6px}.canvas[data-fill=hatched] .shp-stack,.canvas[data-fill=hatched] .shp-shade{fill:var(--shp-bg)}.canvas[data-fill=hatched] .shp-line{stroke:var(--i)}.canvas[data-fill=hatched] .shp-text,.canvas[data-fill=hatched] .shp-badges{color:var(--shp-text)}.canvas[data-fill=hatched] .shp-label,.canvas[data-fill=hatched] .shp-tech{text-shadow:0 0 3px var(--shp-bg), 0 0 3px var(--shp-bg), 0 0 2px var(--shp-bg)}.canvas[data-fill] .shp.is-selected .shp-body{stroke:var(--shp-sel);stroke-width:3px}.shp-note{background:var(--shp-note);width:100%;height:100%;color:var(--shp-note-text);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%);white-space:pre-wrap;padding:10px 12px;font-size:12px;line-height:1.45;overflow:hidden}.shp-note.is-selected{outline:2px solid var(--shp-sel);outline-offset:2px}.shp-note__text[data-sized]{font-size:var(--label-size)}.shp-bldg{background:var(--f);width:100%;height:100%;color:var(--o);border:1.5px solid var(--shp-solid-stroke);border-radius:8px;align-items:center;gap:8px;padding:0 12px;font-size:14px;font-weight:700;display:flex;position:relative;overflow:hidden}.shp-bldg:after{content:"";border-radius:inherit;box-shadow:5px 5px 0 -1px var(--shp-bg), 5px 5px 0 0 color-mix(in srgb, var(--f) 70%, var(--shp-shade-mix));pointer-events:none;position:absolute;inset:0}.shp-bldg__icon{flex:none;display:inline-flex}.shp-bldg__label{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:0 auto;min-width:0;line-height:1.2;display:-webkit-box;overflow:hidden}.shp-bldg__label[data-sized]{font-size:var(--label-size)}.shp-bldg__count{background:color-mix(in srgb, var(--o) 22%, transparent);text-align:center;border-radius:10px;flex:none;min-width:20px;padding:0 6px;font-size:11px}.shp-tools{flex:none;gap:4px;margin-left:auto;display:inline-flex}.canvas[data-fill] .shp-bldg.is-selected{border-color:var(--shp-sel);border-width:2.5px}.shp-bldg[data-mirror]{opacity:.6}.canvas[data-fill=outline] .shp-bldg{background:var(--shp-bg);border:1.8px solid var(--i);color:var(--i)}.canvas[data-fill=hatched] .shp-bldg{background:repeating-linear-gradient(-41deg, color-mix(in srgb, var(--f) 55%, var(--shp-bg)) 0 2px, var(--shp-bg) 2px 6px);border:1.6px solid var(--i);color:var(--shp-text);text-shadow:0 0 3px var(--shp-bg)}.shp-floor{background:var(--shp-frame-fill);border:1.5px solid var(--shp-frame);border-radius:14px;width:100%;height:100%;position:relative}.shp-floor.is-selected{border-color:var(--shp-sel)}.shp-floor--alias{border-style:dashed}.shp-floor--focused{border-width:2px}.shp-floor__tab{color:var(--shp-frame-text);white-space:nowrap;align-items:center;gap:8px;font-size:12px;display:flex;position:absolute;top:12px;left:16px;right:16px}.shp-floor__tab[data-align=center]{justify-content:center}.shp-floor__tab[data-align=right]{justify-content:flex-end}.shp-floor__label{text-overflow:ellipsis;letter-spacing:.06em;text-transform:uppercase;font-weight:800;overflow:hidden}.shp-floor__label[data-sized]{font-size:var(--label-size)}.shp-floor__meta{color:var(--shp-muted);font-size:11px}.shp-floor__tab .shp-tools{margin-left:4px}.react-flow__node-floor .shp-floor__tab{pointer-events:all}.shp-portal{background:var(--shp-bg);border:1.5px dashed var(--i);width:100%;height:100%;color:var(--shp-text);font-size:clamp(12px, 12px / var(--zoom,1), 18px);white-space:nowrap;border-radius:18px;align-items:center;gap:8px;padding:0 12px;display:flex;overflow:hidden}.shp-portal__label{text-overflow:ellipsis;overflow:hidden}.shp-portal.is-selected,.shp-portal:hover{border-style:solid}.shp-wire__line{fill:none;stroke:var(--shp-wire);stroke-width:2px}.shp-wire--stream .shp-wire__line{stroke-dasharray:7 5}.shp-wire--batch .shp-wire__line{stroke-dasharray:2 5;stroke-linecap:round}.shp-wire--dependency .shp-wire__line{stroke-dasharray:1 4;stroke-linecap:round;opacity:.7}.react-flow__edge:hover .shp-wire__line,.shp-wire.is-selected .shp-wire__line{stroke:var(--shp-sel)}.shp-wire__head--triangle{fill:var(--shp-wire)}.shp-wire__head--open{fill:none;stroke:var(--shp-wire);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.shp-wire__dot{fill:var(--shp-wire)}.shp-wire.is-selected .shp-wire__head--triangle,.shp-wire.is-selected .shp-wire__dot{fill:var(--shp-sel)}.shp-wire.is-selected .shp-wire__head--open{stroke:var(--shp-sel)}.shp-wire__label{background:var(--shp-halo);max-width:280px;color:var(--shp-wire-text);white-space:nowrap;pointer-events:all;cursor:pointer;border-radius:4px;flex-direction:column;align-items:center;padding:2px 6px;font-size:12px;font-weight:700;line-height:15px;display:flex;position:absolute}.shp-wire__text,.shp-wire__rate{text-overflow:ellipsis;max-width:100%;overflow:hidden}.shp-wire__rate{opacity:.75;font-size:.85em;font-weight:400}.shp-wire__label.is-selected{outline:1.5px solid var(--shp-sel)}.canvas[data-mode=shape][data-lod=mid] .shp-label{--lbl:calc(var(--shp-label-size,13px) * 1.15)}.canvas[data-mode=shape][data-lod=mid] .shp-tech,.canvas[data-mode=shape][data-lod=mid] .shp-chips{display:none}.canvas[data-mode=shape][data-lod=far] .shp-label{--lbl:calc(var(--shp-label-size,13px) * 1.55)}.canvas[data-mode=shape][data-lod=far] .shp-bldg{font-size:20px}.canvas[data-mode=shape][data-lod=far] .shp-tech,.canvas[data-mode=shape][data-lod=far] .shp-chips,.canvas[data-mode=shape][data-lod=far] .shp-floor__meta,.canvas[data-mode=shape][data-lod=far] .shp-tools,.canvas[data-mode=shape][data-lod=far] .shp-wire__label:not(.is-selected){display:none}.canvas[data-mode=shape][data-lod=far] .shp-floor__tab{font-size:20px}.canvas[data-pen=hand]{font-synthesis:none}.ink-hatch{fill:none;stroke:color-mix(in srgb, var(--f) 38%, var(--shp-bg));stroke-width:1.2px;stroke-linecap:round}.canvas[data-pen=hand] .shp-svg path,.shp-inkbox path{stroke-linecap:round;stroke-linejoin:round}.canvas[data-pen=hand][data-fill=solid] .shp-body,.canvas[data-pen=hand][data-fill=solid] .shp-shade,.canvas[data-pen=hand][data-fill=solid] .shp-stack{stroke:var(--i);stroke-width:1.6px}.canvas[data-pen=hand][data-fill=hatched] .shp-body{fill:var(--shp-bg)}.canvas[data-fill] .shp-bldg.is-selected .shp-body{stroke:var(--shp-sel);stroke-width:2.5px}.shp-inkbox{pointer-events:none;z-index:-1;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.shp-bldg,.shp-floor,.shp-note{isolation:isolate}.canvas[data-fill] .shp-bldg[data-inked],.canvas[data-fill] .shp-floor[data-inked],.canvas[data-fill] .shp-note[data-inked]{clip-path:none;background:0 0;border-color:#0000;outline-color:#0000;overflow:visible}.canvas[data-fill] .shp-bldg[data-inked]:after{display:none}.shp-floor-ink{fill:var(--shp-frame-fill);stroke:var(--shp-frame);stroke-width:1.5px}.shp-floor--focused .shp-floor-ink{stroke-width:2px}.shp-floor--alias .shp-floor-ink{stroke-dasharray:8 6}.shp-floor.is-selected .shp-floor-ink{stroke:var(--shp-sel)}.shp-note-ink{fill:var(--shp-note);stroke:color-mix(in srgb, var(--shp-note-text) 80%, var(--shp-note));stroke-width:1.2px}.canvas[data-style=blocks]{font-family:Nunito,ui-sans-serif,system-ui,sans-serif}.canvas[data-style=blocks][data-fill=solid] .shp-svg,.canvas[data-style=blocks][data-fill=solid] .shp-bldg,.canvas[data-style=blocks] .shp-note{filter:drop-shadow(0 1.5px 2px var(--shp-shadow))}.canvas[data-style=blocks] .shp-label{font-weight:800}.canvas[data-style=blocks][data-pen=hand]{--shp-label-size:14px;font-family:Architects Daughter,Nunito,cursive}.canvas[data-style=blocks][data-pen=hand] .shp-svg,.canvas[data-style=blocks][data-pen=hand] .shp-bldg,.canvas[data-style=blocks][data-pen=hand] .shp-note{filter:none}.canvas[data-style=cloud]{--shp-label-size:13px;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.canvas[data-style=cloud][data-pen=hand]{--shp-label-size:14px;font-family:Architects Daughter,Inter,cursive}.cld-card{width:100%;height:100%;color:var(--shp-text);position:relative}.cld-card[data-mirror]{opacity:.6}.cld-card__face{fill:var(--cld-card);stroke:var(--cld-card-line);stroke-width:1px}.cld-card.is-selected .cld-card__face:not(.cld-card__stack){stroke:var(--shp-sel);stroke-width:2px}.cld-card .shp-body{stroke-width:1.5px}.cld-card__icon{color:var(--o);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute}.canvas[data-fill=outline] .cld-card__icon{color:var(--i)}.cld-card__text{top:50%;left:var(--text-left);text-align:left;pointer-events:none;flex-direction:column;align-items:flex-start;gap:2px;display:flex;position:absolute;right:10px;transform:translateY(-50%)}.cld-card__text[data-align=center]{text-align:center;align-items:center}.cld-card__text[data-align=right]{text-align:right;align-items:flex-end}.cld-card .shp-label{-webkit-hyphens:auto;hyphens:auto;font-weight:600}.cld-card .shp-tech{color:var(--shp-muted);opacity:1}.cld-card__end{color:var(--shp-muted);align-items:center;gap:4px;display:flex;position:absolute;top:6px;right:8px}.cld-bldg{width:100%;height:100%}.cld-bldg .cld-card__text{right:88px}.cld-card__strip{display:none}.canvas[data-style=cloud][data-lod=far] .cld-card__strip{display:inline}.canvas[data-style=cloud][data-lod=far] .cld-card__tile,.canvas[data-style=cloud][data-lod=far] .cld-card__icon{display:none}.canvas[data-style=cloud][data-lod=far] .cld-card__text{left:16px}.canvas[data-style=cloud][data-lod=far] .cld-card .shp-label{--fit-room:var(--fit-room-far)}.cld-bldg .cld-card__end{top:50%;transform:translateY(-50%)}.cld-card__count{background:color-mix(in srgb, var(--f) 16%, transparent);min-width:22px;color:var(--shp-text);text-align:center;border-radius:10px;padding:1px 6px;font-size:11px;font-weight:600}.canvas[data-style=cloud] .cld-bldg .building__toggle{border-color:var(--cld-card-line);color:var(--shp-text);background:0 0}.cld-group{isolation:isolate;background:var(--shp-frame-fill);border:1.5px solid var(--i);width:100%;height:100%;position:relative}.cld-group--focused{border-width:2px}.cld-group--alias{border-style:dashed}.cld-group.is-selected{border-color:var(--shp-sel)}.cld-group[data-inked]{border-color:#0000}.cld-group-ink{stroke:var(--i);stroke-width:1.5px}.cld-group--alias .cld-group-ink{stroke-dasharray:8 6}.cld-group.is-selected .cld-group-ink{stroke:var(--shp-sel)}.canvas[data-style=cloud] .cld-group__head{height:32px;color:var(--shp-frame-text);font-size:13px;top:0;left:0;right:12px}.cld-group__tag{background:var(--f);width:32px;height:32px;color:var(--o);flex:none;justify-content:center;align-items:center;display:flex}.canvas[data-fill=outline] .cld-group__tag{background:var(--shp-bg);border:1.5px solid var(--i);color:var(--i)}.canvas[data-style=cloud] .cld-group__label{letter-spacing:0;text-transform:none;font-weight:600}.canvas[data-style=cloud] .cld-group .building__toggle{border-color:var(--shp-frame);color:var(--shp-frame-text);background:0 0}.canvas[data-style=cloud][data-lod=far] .cld-group__head{height:40px}.canvas[data-style=cloud][data-lod=far] .cld-group__tag{width:40px;height:40px}.canvas[data-style=cloud] .shp-note{clip-path:none;border:1px solid var(--shp-frame);border-radius:4px}.canvas[data-style=cloud] .shp-wire__label{border-radius:2px;font-weight:500}.canvas[data-style=cloud] .shp-wire__line{stroke-width:1.5px}.canvas[data-style=cloud][data-lod=far] .cld-bldg .cld-card__text{right:44px}.canvas[data-style=blueprint]{--shp-label-size:12px;font-family:IBM Plex Mono,ui-monospace,monospace}.canvas[data-style=blueprint] .shp-label,.canvas[data-style=blueprint] .shp-tech,.canvas[data-style=blueprint] .shp-bldg,.canvas[data-style=blueprint] .shp-floor__tab,.canvas[data-style=blueprint] .shp-portal,.canvas[data-style=blueprint] .shp-note,.canvas[data-style=blueprint] .shp-wire__label{text-transform:uppercase;letter-spacing:.04em}.canvas[data-style=blueprint] .shp-label{font-weight:600}.canvas[data-style=blueprint] .shp-tech{font-size:10px}.canvas[data-style=blueprint] .shp-svg path{stroke-width:1.4px}.canvas[data-style=blueprint] .shp-bldg{outline:1px solid var(--i);outline-offset:3px;border-radius:0;font-size:12px;font-weight:600}.canvas[data-style=blueprint] .shp-bldg:after{box-shadow:none}.canvas[data-style=blueprint] .shp-bldg__count{background:0 0;border:1px solid;border-radius:0}.canvas[data-style=blueprint] .shp-floor{border:1.6px dashed var(--shp-frame);border-radius:0}.canvas[data-style=blueprint] .shp-floor__label{border-bottom:1px solid var(--shp-frame);letter-spacing:.14em;padding-bottom:3px;font-weight:600}.canvas[data-style=blueprint] .shp-note{border:1px solid var(--shp-frame);clip-path:none;font-size:11px}.canvas[data-style=blueprint] .shp-portal{border-radius:0}.canvas[data-style=blueprint] .shp-wire__line{stroke-width:1.3px}.canvas[data-style=blueprint] .shp-wire__label{border-radius:0;font-size:10.5px;font-weight:500;line-height:14px}.canvas[data-style=blueprint][data-pen=hand]{--shp-label-size:13px;font-family:Architects Daughter,IBM Plex Mono,cursive}.canvas[data-style=blueprint][data-pen=hand] .shp-wire__label{font-size:12px;line-height:16px}.canvas[data-style=blueprint] .shp-floor-ink{stroke-dasharray:10 5;stroke-width:1.6px}.canvas[data-style=sticky]{--shp-label-size:22px;font-family:Caveat,cursive}.stk-cork{opacity:var(--stk-grain);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9 0 0 0 -0.36'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23g)'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='420'%3E%3Cfilter id='f' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.03' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0.9 0 0 0 -0.45'/%3E%3C/filter%3E%3Crect width='420' height='420' filter='url(%23f)'/%3E%3C/svg%3E")}:root[data-theme=dark] .stk-cork{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9 0 0 0 -0.36'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23g)'/%3E%3C/svg%3E")}.canvas[data-lod=far] .stk-cork{opacity:calc(var(--stk-grain) * .6)}.stk-wrap,.stk{width:100%;height:100%;position:relative}.stk[data-mirror]{opacity:.6}.stk-paper{background-color:var(--f);background-image:linear-gradient(to bottom, transparent 72%, color-mix(in srgb, var(--shp-shadow) 28%, transparent));box-shadow:0 7px 10px -5px var(--shp-shadow), 0 1px 2px color-mix(in srgb, var(--shp-shadow) 60%, transparent);color:var(--o);border-radius:2px 2px 3px 3px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.stk-paper--under{background-color:color-mix(in srgb, var(--f) 82%, var(--shp-shadow));translate:6px -5px}.stk.is-selected .stk-paper:not(.stk-paper--under){outline:2px solid var(--shp-sel);outline-offset:3px}.stk-pin{background:radial-gradient(circle at 35% 35%, var(--stk-pin-hi) 0 18%, var(--stk-pin) 48%);width:11px;height:11px;box-shadow:1px 2px 2px var(--shp-shadow);border-radius:50%;margin-left:-5.5px;position:absolute;top:5px;left:50%}.stk-icon{opacity:.55;display:inline-flex;position:absolute;top:7px;left:8px}.stk-badges{opacity:.75;gap:3px;display:flex;position:absolute;top:6px;right:8px}.stk-text{text-align:center;flex-direction:column;align-items:center;gap:2px;max-width:100%;padding:14px 12px 6px;display:flex}.stk-text[data-align=left]{text-align:left;align-items:flex-start}.stk-text[data-align=right]{text-align:right;align-items:flex-end}.stk .shp-label{-webkit-line-clamp:3;line-height:1.05}.stk .shp-chip{font-family:Caveat,cursive;font-size:14px}.stk-wrap--pad .stk-text{padding-bottom:22px}.stk-pad__foot{justify-content:space-between;align-items:center;font-size:16px;display:flex;position:absolute;bottom:5px;left:10px;right:8px}.stk-pad__count{opacity:.75}.stk-card{width:100%;height:100%;position:relative}.stk-card__paper{background-color:var(--shp-note);background-image:repeating-linear-gradient(to bottom, transparent 0 20px, var(--stk-rule) 20px 21px);box-shadow:0 6px 10px -5px var(--shp-shadow);color:var(--shp-note-text);white-space:pre-wrap;background-position:0 9px;padding:10px 12px 6px;font-size:17px;line-height:21px;position:absolute;inset:0;overflow:hidden}.stk-card.is-selected .stk-card__paper{outline:2px solid var(--shp-sel);outline-offset:3px}.stk-card__text[data-sized]{font-size:var(--label-size)}.stk-tape{background:var(--stk-tape);width:70px;height:20px;box-shadow:0 1px 1px color-mix(in srgb, var(--shp-shadow) 40%, transparent);margin-left:-35px;position:absolute;top:-9px;left:50%;transform:rotate(-3deg)}.stk-sheet{background:var(--shp-frame-fill);width:100%;height:100%;box-shadow:0 12px 24px -12px var(--shp-shadow), 0 1px 3px color-mix(in srgb, var(--shp-shadow) 70%, transparent);position:relative}.stk-sheet--alias{outline:2px dashed var(--shp-muted);outline-offset:-10px}.stk-sheet.is-selected{outline:2px solid var(--shp-sel);outline-offset:4px}.stk-tape--left,.stk-tape--right{margin-left:0;top:-8px}.stk-tape--left{left:20px;transform:rotate(-24deg)}.stk-tape--right{left:auto;right:20px;transform:rotate(24deg)}.canvas[data-style=sticky] .stk-sheet__head{color:var(--shp-frame-text);gap:10px;font-size:17px;top:12px;left:26px;right:22px}.canvas[data-style=sticky] .stk-sheet__label{letter-spacing:0;text-transform:none;font-size:30px;font-weight:700;line-height:1.1}.canvas[data-style=sticky][data-lod=far] .stk-sheet__label{font-size:36px}.canvas[data-style=sticky] .stk-sheet .shp-floor__meta{font-size:17px}.canvas[data-style=sticky] .stk-sheet .building__toggle{border-color:color-mix(in srgb, var(--shp-frame-text) 35%, transparent);color:var(--shp-frame-text);background:0 0}.canvas[data-style=sticky] .shp-wire__line{stroke-width:1.8px}.canvas[data-style=sticky] .shp-wire__label{box-shadow:0 1px 2px -1px var(--shp-shadow);border-radius:0;padding:2px 6px;font-size:18px;font-weight:700;line-height:19px}.canvas[data-style=sticky] .shp-wire__rate{font-weight:500}.canvas[data-style=sticky] .shp-portal{font-size:clamp(16px, 16px / var(--zoom,1), 24px)}.canvas[data-style=terminal]{--shp-label-size:13px;font-family:JetBrains Mono,IBM Plex Mono,ui-monospace,monospace}.trm-bars{background-image:linear-gradient(to bottom, var(--trm-bar) 50%, transparent 50%)}.canvas[data-lod=far] .trm-bars{opacity:.6}.trm{border:1.3px solid var(--f);background:var(--shp-bg);width:100%;height:100%;color:var(--shp-text);justify-content:center;align-items:center;display:flex;position:relative}.trm[data-mirror]{opacity:.6}.trm[data-cluster]{box-shadow:5px -5px 0 -1.3px var(--shp-bg), 5px -5px 0 0 var(--f)}.trm.is-selected{outline:1.5px solid var(--shp-sel);outline-offset:3px}.trm--building{border:4px double var(--f)}.trm-tag{background:var(--f);color:var(--o);padding:0 6px;font-size:11px;font-weight:700;line-height:15px;position:absolute;top:-1px;left:-1px}.trm--building .trm-tag{top:-4px;left:-4px}.trm-badges{color:var(--f);position:absolute;top:3px;right:5px}.trm-text{text-align:center;flex-direction:column;align-items:center;gap:2px;max-width:100%;padding:14px 10px 4px;display:flex}.trm-text[data-align=left]{text-align:left;align-self:stretch;align-items:flex-start}.trm-text[data-align=right]{text-align:right;align-self:stretch;align-items:flex-end}.trm .shp-label{text-shadow:0 0 6px var(--trm-glow);font-weight:600}.trm .shp-tech{color:var(--shp-muted);opacity:1}.trm-chip{color:var(--f);font-size:11px}.trm-foot{color:var(--shp-muted);align-items:center;gap:6px;font-size:11px;display:flex;position:absolute;bottom:3px;right:6px}.canvas[data-style=terminal] .building__toggle{border-color:var(--shp-muted);color:var(--shp-text);background:0 0;border-radius:0}.trm-note{width:100%;height:100%;color:var(--shp-note-text);white-space:pre-wrap;padding:6px 4px;font-size:12px;line-height:1.5;overflow:hidden}.trm-note.is-selected{outline:1.5px dashed var(--shp-sel);outline-offset:2px}.trm-note__mark{opacity:.7}.trm-note__text[data-sized]{font-size:var(--label-size)}.trm-panel{border:4px double var(--shp-frame);width:100%;height:100%;position:relative}.trm-panel--alias{border-style:dashed;border-width:1.5px}.trm-panel.is-selected{border-color:var(--shp-sel)}.canvas[data-style=terminal] .trm-panel__head{gap:8px;font-size:12px;top:-11px;left:14px;right:14px}.canvas[data-style=terminal] .trm-panel__label{background:var(--shp-frame);color:var(--shp-frame-text);letter-spacing:0;text-transform:none;padding:0 8px;font-weight:700;line-height:18px}.trm-panel.is-selected .trm-panel__label{background:var(--shp-sel)}.canvas[data-style=terminal] .trm-panel .shp-floor__meta,.canvas[data-style=terminal] .trm-panel .shp-tools{background:var(--shp-bg);padding:0 4px}.canvas[data-style=terminal] .shp-wire__line{stroke-width:1.3px}.canvas[data-style=terminal] .shp-wire__label{border-radius:0;padding:1px 4px;font-size:11.5px;font-weight:500;line-height:15px}.canvas[data-style=terminal] .shp-portal{border-radius:0}
