.react-flow{direction:ltr;--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: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--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: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--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: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--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 rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.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: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--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: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--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: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--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 rgba(0, 0, 0, .08);--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{position:absolute;width:100%;height:100%;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{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.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;-moz-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:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.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:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;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%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;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{position:absolute;z-index:5;margin:15px}.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{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.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{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.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{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;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))}.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{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.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-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.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:Ubuntu;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ubuntu-latin-400-normal-CQJ26Fy6.woff2) format("woff2"),url(/assets/ubuntu-latin-400-normal-ChuJk2Dr.woff) format("woff")}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ubuntu-latin-500-normal-CnjGCQfM.woff2) format("woff2"),url(/assets/ubuntu-latin-500-normal-BMp9VhBY.woff) format("woff")}@font-face{font-family:Ubuntu;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ubuntu-latin-700-normal-DlYwEzNn.woff2) format("woff2"),url(/assets/ubuntu-latin-700-normal-DAmh8SsM.woff) format("woff")}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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 Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer theme{:root,:host{--font-sans:"Ubuntu", "Segoe UI", sans-serif;--font-mono:"JetBrains Mono Variable", "Cascadia Code", "SFMono-Regular", Consolas, monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.sticky{position:sticky}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.resize{resize:both}}:root{font-family:var(--font-sans);color:#e9ede8;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#101316;--panel:#171b1f;--border:#2c3236;--muted:#a0aaa9;--mint:#d3edab;--green:#b1d897;--amber:#efb777;--red:#ee9990;--mono:var(--font-mono);color-scheme:dark;background:#101316}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{cursor:not-allowed;opacity:.45}button,a,input,select{outline-offset:4px}:focus-visible{outline:2px solid var(--mint)}h1:focus{outline:none}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}svg{flex-shrink:0}::selection{color:#fff;background:#43573a}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-thumb{background:#47514d;border-radius:5px}.mono{font-family:var(--mono)}.text-muted{color:var(--muted)}.text-green{color:var(--green)}.text-amber{color:var(--amber)}.text-red{color:var(--red)}.eyebrow{font-family:var(--mono);letter-spacing:1.2px;color:var(--muted);align-items:center;gap:8px;font-size:10px;font-weight:500;line-height:1.5;display:flex}.button{border:1px solid var(--border);border-radius:5px;justify-content:center;align-items:center;gap:12px;min-height:44px;padding:12px 20px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.button.primary{color:#1c2718;background:var(--mint);border-color:var(--mint)}.button.primary:hover:not(:disabled){background:#e2f6c6;border-color:#e2f6c6}.button.secondary{background:#1b2024}.button.secondary:hover:not(:disabled){background:#272d31}.text-link{color:#bbc4bf;align-items:center;gap:7px;padding:4px 0;font-size:12px;font-weight:500;display:inline-flex}.text-link:hover:not(:disabled){color:var(--mint)}.icon-button{width:30px;height:30px;color:var(--muted);border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.icon-button:hover:not(:disabled){color:#f1f4ed;background:#2e3635}.brand{white-space:nowrap;letter-spacing:-.8px;align-items:center;gap:10px;padding:0;font-size:23px;font-weight:700;display:flex}.brand-mark{flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.brand-slash{color:#58635a;margin:0 9px;font-weight:400}.brand-sub{color:#b2b9b2;letter-spacing:.1px;font-size:12px;font-weight:500}.status-dot{background:var(--green);border-radius:100%;flex-shrink:0;width:6px;height:6px;display:inline-block}.status-dot.amber{background:var(--amber)}.site-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:20px;max-width:1440px;min-height:89px;margin:0 auto;padding:0 64px;display:flex}.header-label{font-family:var(--mono);letter-spacing:1.3px;color:var(--muted);align-items:center;gap:8px;font-size:10px;display:flex}.landing-main{max-width:1440px;margin:0 auto;padding:0 64px}.landing-hero{grid-template-columns:.95fr 1.05fr;align-items:center;gap:65px;padding:68px 0 57px;display:grid}.hero-copy .eyebrow{color:var(--mint);margin-bottom:24px}.hero-copy h1{letter-spacing:-4px;font-size:clamp(58px,5.8vw,88px);font-weight:700;line-height:1.04}.hero-copy h1 span{color:var(--mint)}.hero-description{max-width:420px;color:var(--muted);margin:26px 0;font-size:15px;line-height:1.85}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.hero-actions .button{padding:14px 20px}.soon-inline{font-family:var(--mono);border:1px solid #737a78;border-radius:3px;padding:2px 4px;font-size:9px}.hero-footnote{color:#a3ada6;align-items:center;gap:9px;margin-top:20px;font-size:10px;display:flex}.hero-footnote svg{color:var(--green)}.hero-console{background:#15191c;border:1px solid #39403d;border-radius:8px;position:relative;overflow:hidden;transform:translateY(12px);box-shadow:0 20px 65px #0003}.console-title{border-bottom:1px solid var(--border);font-family:var(--mono);color:#b8c0bb;background:#1c2124;justify-content:space-between;align-items:center;padding:15px 20px;font-size:10px;display:flex}.console-title>span:first-child{align-items:center;gap:8px;display:flex}.console-title>span:last-child{color:var(--muted)}.console-incident{align-items:center;gap:12px;padding:27px 21px 12px;display:flex}.incident-icon{width:40px;height:40px;color:var(--amber);background:#49352266;border:1px solid #5d4531;border-radius:6px;place-items:center;display:grid}.console-incident .eyebrow{color:var(--amber);letter-spacing:1px;font-size:9px}.console-incident h2{margin-top:5px;font-size:14px;font-weight:700}.severity{font-family:var(--mono);color:var(--amber);white-space:nowrap;border:1px solid #5a4835;border-radius:3px;margin-left:auto;padding:4px 6px;font-size:9px}.preview-architecture{background-image:radial-gradient(#3b433b 1px,#0000 1px);background-size:16px 16px;justify-content:center;align-items:center;margin:9px 0;padding:45px 24px 47px;display:flex}.preview-node{color:#bbc6be;background:#1e2526;border:1px solid #4a5650;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:11px;min-width:96px;height:83px;font-size:10px;display:flex;position:relative}.preview-node.critical{color:var(--amber);background:#302720;border-color:#ae8052}.preview-wire{background:#75826e;width:64px;height:1px;position:relative}.preview-wire:after{content:"";border-top:1px solid #75826e;border-right:1px solid #75826e;width:5px;height:5px;position:absolute;top:-2px;right:0;transform:rotate(45deg)}.preview-wire span{white-space:nowrap;color:#b8c3b1;font-family:var(--mono);font-size:8px;position:absolute;top:-18px;left:3px}.preview-wire.danger{background:var(--amber)}.preview-wire.danger span{color:var(--amber)}.preview-cpu{font-family:var(--mono);color:var(--amber);background:#312920;border:1px solid #6a4e33;border-radius:3px;padding:3px 7px;font-size:9px;position:absolute;bottom:-26px}.console-metrics{border:1px solid var(--border);border-radius:5px;grid-template-columns:1fr 1fr 1.1fr;margin:7px 20px 20px;display:grid;overflow:hidden}.console-metrics>div{border-right:1px solid var(--border);flex-direction:column;gap:8px;padding:14px 15px;display:flex}.console-metrics>div:last-child{border-right:0}.console-metrics>div>span:first-child{font-family:var(--mono);color:var(--muted);letter-spacing:.5px;font-size:8px}.console-metrics strong{font-family:var(--mono);font-size:24px;font-weight:500}.console-metrics small{color:var(--muted);margin-left:4px;font-size:11px;font-weight:400}.metric-mini-line{font-family:var(--mono);letter-spacing:2px;color:#c19b65;font-size:15px;line-height:16px}.metric-mini-line.red-line{color:#bb7972}.console-metrics .text-muted{align-items:center;gap:5px;min-height:16px;font-size:9px;display:flex}.console-log{font-family:var(--mono);color:#d3b1a7;white-space:nowrap;background:#242022;border-left:2px solid #c3867b;border-radius:2px;align-items:center;gap:10px;margin:0 20px 20px;padding:11px 10px;font-size:9px;display:flex}.console-log>span:first-child{color:#ab9592}.console-log b{color:var(--red);font-size:8px}.terminal-cursor{background:#d3c7ab;width:5px;height:10px;display:inline-block}.console-bottom{border-top:1px solid var(--border);color:var(--muted);align-items:center;gap:6px;padding:14px 19px;font-size:9px;display:flex}.console-bottom .mono{color:#a7b599;margin-left:auto;font-size:8px}.intro-strip{border-block:1px solid var(--border);grid-template-columns:1.3fr 1fr;align-items:center;gap:50px;padding:22px 0;display:grid}.bob-heading{align-items:center;gap:10px;display:flex}.bob-avatar{color:#f3d297;width:34px;height:34px;font-family:var(--font-sans);background:#3b3b2d;border:1px solid #68604a;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:flex;position:relative}.bob-avatar>span{color:var(--green);text-shadow:0 0 2px #131a13;font-size:19px;position:absolute;bottom:-6px;right:-3px}.bob-heading strong{font-size:12px;font-weight:700;display:block}.bob-heading strong>span{color:var(--muted);margin-left:6px;font-size:10px;font-weight:400}.bob-heading small{font-family:var(--mono);color:#a7ada1;letter-spacing:.6px;margin-top:4px;font-size:8px;display:block}.bob-message>p{color:#d1d5c9;margin-top:15px;font-size:12px;line-height:1.8}.bob-signature{color:#a2ad9f;align-items:center;gap:6px;margin-top:15px;font-size:9px;display:flex}.intro-strip .bob-message{grid-template-columns:172px 1fr;align-items:center;gap:24px;display:grid}.intro-strip .bob-message>p{color:#b7beb2;margin:0;font-size:12px}.intro-strip .bob-signature{display:none}.loop-steps{justify-content:flex-end;align-items:center;gap:23px;display:flex}.loop-steps>span{align-items:center;gap:9px;font-size:12px;display:flex}.loop-steps b{font-family:var(--mono);color:var(--green);font-size:10px;font-weight:400}.loop-steps>svg{color:#748069}.missions-section{padding:40px 0 46px;scroll-margin-top:20px}.section-heading{justify-content:space-between;align-items:flex-end;margin-bottom:23px;display:flex}.section-heading h2{letter-spacing:-.5px;margin-top:9px;font-size:23px;font-weight:700}.section-heading>span{align-items:center;gap:6px;font-size:11px;display:flex}.mission-cards{grid-template-columns:repeat(4,1fr);gap:13px;display:grid}.mission-card{text-align:left;border:1px solid var(--border);background:#15191c;border-radius:6px;padding:18px;transition:background .15s,border-color .15s}.mission-card:disabled{opacity:1;color:#a0aaa5}.mission-card.available{background:#1c231b;border-color:#718361}.mission-card.available:hover{border-color:var(--mint);background:#283126}.mission-card-top{color:#aab59e;justify-content:space-between;align-items:center;font-size:9px;display:flex}.mission-card-top .mono{letter-spacing:.7px}.live-label{color:var(--mint);font-family:var(--mono);align-items:center;gap:4px;font-size:8px;display:flex}.mission-company{color:#a7b198;margin-top:27px;margin-bottom:4px;font-size:10px;display:block}.mission-card h3{letter-spacing:-.3px;font-size:19px;font-weight:700}.mission-card p{color:#adb5a5;margin-top:10px;font-size:10px;line-height:1.5}.mission-card-bottom{color:#a5b59c;border-top:1px solid #373e34;justify-content:space-between;margin-top:24px;padding-top:14px;font-size:10px;display:flex}.available .mission-card-bottom{color:var(--mint)}.landing-footer{border-top:1px solid var(--border);color:#b4beb3;justify-content:space-between;align-items:center;max-width:1312px;margin:0 auto;padding:20px 0;font-size:10px;display:flex}.landing-footer>span:last-child{color:var(--muted)}.estimate-note{color:#a0aaa1;font-size:9px;line-height:1.6}.landing-estimate{text-align:center;padding:5px 24px 20px}.panel{border:1px solid var(--border);background:#171b1e;border-radius:6px}.brief-main{max-width:1020px;margin:0 auto;padding:34px 30px 50px}.brief-top{justify-content:space-between;align-items:center;gap:20px;margin:34px 0;display:flex}.brief-top .eyebrow{color:var(--amber)}.brief-top h1{letter-spacing:-2.5px;margin-top:15px;font-size:59px;font-weight:700;line-height:1.2}.brief-top h1>span{color:var(--mint)}.brief-top p{color:var(--muted);margin-top:12px;font-size:14px;line-height:1.8}.brief-stamp{color:var(--amber);font-family:var(--mono);background:#27221d;border:1px solid #614932;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:21px 26px;display:flex}.brief-stamp strong{font-size:18px;font-weight:400}.brief-stamp span{letter-spacing:1px;font-size:8px}.brief-grid{grid-template-columns:1.25fr 1fr;gap:20px;display:grid}.panel-title{border-bottom:1px solid var(--border);color:#c1cabb;align-items:center;gap:9px;padding:17px 21px;display:flex}.panel-title h2{font-size:13px;font-weight:700}.panel-title .mono{color:var(--muted);margin-left:auto;font-size:9px}.brief-context>p{color:#b3bdb7;margin:22px;font-size:13px;line-height:1.9}.traffic-comparison{border:1px solid var(--border);background:#111618;border-radius:5px;justify-content:space-between;align-items:center;gap:12px;margin:0 22px;padding:20px;display:flex}.traffic-comparison>svg{color:#9daa8b}.traffic-comparison span{font-family:var(--mono);color:var(--muted);margin-bottom:8px;font-size:8px;display:block}.traffic-comparison strong{font-family:var(--mono);font-size:24px;font-weight:400}.traffic-comparison small{color:var(--muted);font-size:10px}.support-report{margin:25px 22px}.support-report blockquote{color:#d4d8ce;border-left:2px solid #b99564;margin:10px 0;padding:4px 0 4px 14px;font-size:13px}.support-report p{color:var(--muted);font-size:10px}.brief-infrastructure{border-top:1px solid var(--border);padding:20px 22px}.brief-infrastructure p{font-family:var(--mono);color:#c4cdbd;margin:12px 0;font-size:11px}.brief-infrastructure>span:last-child{color:var(--muted);justify-content:space-between;font-size:11px;display:flex}.brief-infrastructure strong{color:#d6dfca;font-weight:500}.requirements>p{color:var(--muted);margin:23px 22px 5px;font-size:12px;line-height:1.7}.requirements dl{margin:7px 22px}.requirements dl>div{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:15px;padding:19px 0;display:flex}.requirements dt{color:#bcc5bb;font-size:12px}.requirements dd{font-family:var(--mono);color:var(--mint);margin:0;font-size:19px}.requirements dd small{color:#a7b798;font-size:11px}.requirements dl>div:last-child{border:none}.requirement-note{color:var(--muted);padding:16px 22px;font-size:10px}.brief-main>.bob-message{background:#1d211c;border:1px solid #474b38;border-radius:6px;margin:23px 0;padding:21px 23px}.brief-main>.bob-message>p{margin-left:44px}.brief-main>.bob-message .bob-signature{display:none}.brief-footer{justify-content:space-between;align-items:center;gap:20px;margin-top:26px;display:flex}.brief-footer>span{color:var(--muted);align-items:center;gap:7px;font-size:11px;display:flex}.sim-shell{background:#111518}.sim-header{border-bottom:1px solid var(--border);background:#15191b;align-items:center;gap:28px;min-height:57px;padding:0 23px;display:flex}.sim-header .brand{font-size:20px}.sim-header .brand-mark{width:34px;height:34px}.sim-header .brand-sub{font-size:10px}.sim-header nav{color:var(--muted);border-left:1px solid var(--border);align-items:center;gap:12px;padding-left:26px;font-size:11px;display:flex}.sim-header nav strong{color:#dbe2d6;font-weight:400}.sim-header>.text-link{margin-left:auto;font-size:11px}.sim-topbar{border-bottom:1px solid var(--border);align-items:center;gap:34px;min-height:74px;padding:11px 24px;display:flex}.sim-title{margin-right:auto}.sim-title .eyebrow{letter-spacing:.8px;color:#a8b09f;font-size:9px}.sim-id{color:var(--muted)}.sim-title h1{letter-spacing:-.4px;align-items:center;gap:14px;margin-top:6px;font-size:23px;font-weight:700;display:flex}.workspace-status{font-family:var(--mono);letter-spacing:.4px;color:#b5c0ad;background:#242b27;border:1px solid #414a3f;border-radius:3px;justify-content:center;align-items:center;padding:4px 7px;font-size:8px;font-weight:400;display:inline-flex}.workspace-status.incident,.workspace-status.changed{color:var(--amber);background:#2b241d;border-color:#634a30}.workspace-status.stable,.workspace-status.running{color:var(--mint);background:#253022;border-color:#536443}.topbar-stat{flex-direction:column;gap:5px;display:flex}.topbar-stat>span:first-child{font-family:var(--mono);color:var(--muted);letter-spacing:.7px;font-size:8px}.topbar-stat strong{font-family:var(--mono);font-size:18px;font-weight:400}.topbar-stat strong small{color:var(--muted);font-size:10px}.topbar-budget{border-left:1px solid var(--border);gap:3px;padding-left:26px}.topbar-budget>span:last-child{color:#b6c6a3;font-size:9px}.topbar-budget.over-budget strong,.topbar-budget.over-budget>span:last-child{color:var(--red)}.run-controls{min-width:155px;position:relative}.run-button{gap:9px;width:100%;min-height:40px;padding:11px 18px;font-size:12px}.run-button:disabled{opacity:.85}.skip-button{color:var(--mint);text-align:center;font-size:9px;text-decoration:underline;position:absolute;bottom:-17px;left:0;right:0}.workspace-context{border-bottom:1px solid var(--border);color:#c0c6b3;background:#1b1e1a;justify-content:space-between;align-items:center;gap:12px;min-height:38px;padding:9px 24px;font-size:10px;display:flex}.workspace-context>div{align-items:center;gap:8px;display:flex}.workspace-context>.mono{color:#aab39b;letter-spacing:.7px;font-size:8px}.workspace-context .text-link{padding:0;font-size:10px}.sim-grid{grid-template-rows:minmax(330px,1fr) 304px;grid-template-columns:216px minmax(0,1fr) 272px;height:calc(100dvh - 218px);min-height:646px;display:grid}.palette{border-right:1px solid var(--border);background:#171b1e;flex-direction:column;grid-area:1/1/3;min-height:0;display:flex;overflow:auto}.sidebar-heading{justify-content:space-between;align-items:center;gap:5px;padding:18px 16px;display:flex}.sidebar-heading h2{align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.sidebar-heading>span{color:var(--muted);font-size:8px}.component-search{color:#96a293;background:#111719;border:1px solid #373e3d;border-radius:4px;align-items:center;gap:6px;margin:0 14px 10px;padding:8px 9px;display:flex}.component-search input{outline-offset:5px;color:#d8dfd1;background:0 0;border:0;width:100%;min-width:0;font-size:10px}.component-search input::placeholder{color:#a2aca4}.palette-groups{padding:0 8px 15px}.palette-groups section>h3{font-family:var(--mono);letter-spacing:1px;color:#a3afa5;margin:16px 9px 7px;font-size:8px;font-weight:400}.palette-item{text-align:left;border:1px solid #0000;border-radius:4px;align-items:center;gap:9px;width:100%;margin-bottom:3px;padding:9px 7px;display:flex}.palette-item:hover:not(:disabled){background:#252d26;border-color:#45533c}.palette-item:disabled{opacity:1}.component-icon{color:#b9c5ae;background:#252d26;border:1px solid #3f4941;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:29px;height:30px;display:flex}.component-icon.compute{color:#a7c1d9;background:#202930;border-color:#3c4b55}.component-icon.data{color:#cab8d8;background:#2b2630;border-color:#4c4156}.component-icon.reliability,.component-icon.messaging{color:#a6ada6;background:#232728;border-color:#38413d}.palette-item-name{font-size:10px;font-weight:500;line-height:1.4}.palette-item-name>small{color:#a2aca5;margin-top:3px;font-size:9px;font-weight:400;display:block}.palette-plus{color:var(--mint);margin-left:auto}.palette-help{border-top:1px solid var(--border);color:#a3afa4;align-items:flex-start;gap:8px;margin:auto 15px 16px;padding-top:18px;display:flex}.palette-help svg{margin-top:2px}.palette-help p{font-size:10px;line-height:1.7}.canvas-section{background:#121719;flex-direction:column;grid-area:1/2;min-width:0;min-height:0;display:flex}.canvas-toolbar{border-bottom:1px solid #282e30;justify-content:space-between;align-items:center;min-height:42px;padding:0 17px;display:flex}.canvas-toolbar>div{color:#afbbac;align-items:center;gap:9px;display:flex}.canvas-toolbar h2{font-size:11px;font-weight:500}.canvas-env{color:#a7b39e;font-size:9px;font-family:var(--mono);background:#252c22;border:1px solid #414b39;border-radius:3px;padding:2px 5px}.canvas-toolbar .text-link{font-size:10px}.flow-container{flex:1;min-height:0;position:relative}.react-flow{--xy-background-color:#121719;--xy-controls-button-background-color:#242c28;--xy-controls-button-color:#d3ddcb;--xy-controls-button-border-color:#3e493c;--xy-controls-button-background-color-hover:#394436;--xy-node-boxshadow-selected:none}.react-flow__node{border-radius:7px}.architecture-node{background:#1b2323;border:1px solid #4a564d;border-radius:7px;width:179px;box-shadow:0 3px 12px #0002}.architecture-node.is-selected{outline:2px solid var(--mint);outline-offset:3px}.architecture-node.critical,.architecture-node.failed{background:#2c2621;border-color:#b17f54}.architecture-node.warning{border-color:#a79a5a}.node-select{text-align:left;cursor:pointer;border-radius:7px;width:100%;padding:12px}.node-select:focus-visible{outline-offset:4px}.node-top{align-items:center;gap:7px;margin-bottom:10px;display:flex}.node-icon{color:#b4cdb7}.node-icon.postgres{color:#d8b58f}.node-icon.redis{color:#d4c291}.node-kind{font-family:var(--mono);letter-spacing:.8px;color:#aebdad;font-size:7px}.node-added{color:var(--mint);margin-left:auto;font-size:12px}.node-select>strong{letter-spacing:.1px;font-size:12px;font-weight:500;display:block}.node-subtitle{color:#a6b4a5;margin-top:5px;font-size:8px}.node-telemetry{border-top:1px solid #3d473c;justify-content:space-between;align-items:center;gap:4px;margin-top:12px;padding-top:9px;display:flex}.node-telemetry .mono{color:#d6ddcb;font-size:10px}.node-telemetry small{color:#acb79f;font-size:7px}.health-badge{text-transform:uppercase;font-family:var(--mono);letter-spacing:.4px;color:#b9c7ac;background:#2a3329;border:1px solid #485542;border-radius:3px;align-items:center;gap:4px;padding:2px 4px;font-size:7px;display:inline-flex}.health-badge.healthy{color:#c5e6a4;background:#2b3a24;border-color:#587245}.health-badge.critical,.health-badge.failed{color:#ffc186;background:#443023;border-color:#936846}.health-badge.warning{color:#e4d59d;background:#373524;border-color:#8c814b}.health-badge>span{font-size:9px;line-height:9px}.node-traffic{font-family:var(--mono);color:#dce9cb;font-size:14px}.react-flow__handle{background:#bec9ae;border:2px solid #1a241b;width:8px;min-width:8px;height:8px;min-height:8px}.react-flow__controls{box-shadow:none;border:1px solid #414a40;border-radius:5px;bottom:31px;overflow:hidden}.react-flow__controls-button{width:27px;height:27px;padding:7px}.react-flow__attribution{background:#161e19!important;padding:2px 5px!important;font-size:7px!important}.react-flow__attribution a{color:#aebc9f!important}.canvas-fit{color:#d0dbc9;z-index:5;background:#242c28;border:1px solid #414a40;width:29px;height:29px;position:absolute;top:12px;right:14px}.canvas-region{font-family:var(--mono);letter-spacing:.5px;pointer-events:none;color:#acb89f;align-items:center;gap:6px;font-size:8px;display:flex;position:absolute;top:15px;left:17px}.canvas-region>span:last-child{color:#9aa695;letter-spacing:0}.canvas-hint{color:#a1ae9b;pointer-events:none;align-items:center;gap:6px;font-size:8px;display:flex;position:absolute;bottom:13px;left:55px}.canvas-legend{color:#b0bbaa;border-top:1px solid #2a322b;align-items:center;gap:13px;padding:9px 16px;font-size:8px;display:flex}.canvas-legend>span{align-items:center;gap:5px;display:flex}.legend-dot{border-radius:50%;width:5px;height:5px}.legend-dot.neutral{background:#a1ac9c}.legend-dot.green{background:#adce8e}.legend-dot.amber{background:#c8bd83}.legend-dot.red{background:#e4a77c}.node-count{letter-spacing:.6px;margin-left:auto;font-size:7px}.mission-panel{border-left:1px solid var(--border);background:#171b1e;grid-area:1/3/3;overflow:auto}.mission-panel .sidebar-heading{border-bottom:1px solid var(--border);min-height:42px;padding:16px}.mission-panel .sidebar-heading h2{font-size:11px}.mission-panel .sidebar-heading>span{color:var(--mint)}.mission-panel-intro{padding:21px 17px 7px}.mission-panel-intro .eyebrow{font-size:8px}.mission-panel-intro h3{margin-top:9px;font-size:16px;font-weight:700}.mission-panel-intro p{color:var(--muted);margin-top:8px;font-size:10px}.objectives{margin:6px 17px 20px;padding:0;list-style:none}.objectives li{border-bottom:1px solid #2b332f;align-items:center;gap:9px;padding:12px 0;display:flex}.objective-icon{color:#9da994;border:1px solid #455040;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:21px;height:21px;display:inline-flex}.objectives li>div{color:#c5cec0;font-size:10px}.objectives li small{font-family:var(--mono);color:#a1af97;margin-top:4px;font-size:8px;display:block}.objectives li>strong{color:#a3b09c;margin-left:auto;font-size:10px;font-weight:400}.objectives .objective-pass .objective-icon{color:var(--mint);background:#2b3b25;border-color:#4a613b}.objectives .objective-pass>strong{color:var(--mint)}.objectives .objective-fail .objective-icon{color:var(--amber);background:#36281e;border-color:#815735}.objectives .objective-fail>strong{color:var(--amber)}.mission-bob{background:#22271f;border:1px solid #4a4f3b;border-radius:5px;margin:0 14px;padding:16px 13px}.mission-bob .bob-heading{gap:8px}.mission-bob .bob-heading strong{font-size:11px}.mission-bob .bob-heading strong>span{margin-left:3px;font-size:9px}.mission-bob .bob-heading small{font-size:7px}.mission-bob .bob-message>p{font-size:11px;line-height:1.85}.mission-bob .bob-signature{font-size:8px}.learning-tip{color:#abb69f;align-items:flex-start;gap:9px;margin:24px 17px;display:flex}.learning-tip svg{color:#cab27e;margin-top:2px}.learning-tip strong{color:#d3dcc7;font-size:10px;font-weight:500}.learning-tip p{margin-top:7px;font-size:10px;line-height:1.8}.mission-correctness{color:#aab59c;border-top:1px solid #323b2c;align-items:flex-start;gap:6px;margin:23px 17px 18px;padding-top:16px;font-size:9px;line-height:1.8;display:flex}.mission-correctness .status-dot{width:4px;height:4px;margin-top:6px}.inspector{padding:16px}.inspector-back{margin-bottom:20px;font-size:10px}.inspector-title{align-items:center;gap:10px;margin-bottom:15px;display:flex}.inspector-icon{color:#c9e0b0;background:#283225;border:1px solid #4e5e49;border-radius:6px;place-items:center;width:43px;height:43px;display:grid}.inspector-title .eyebrow{font-size:8px}.inspector-title h2{margin-top:5px;font-size:16px;font-weight:700}.inspector-description{color:#adb9a5;margin:15px 0;font-size:11px;line-height:1.8}.inspector-stats{margin:0}.inspector-stats>div{border-bottom:1px solid #30392e;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;font-size:10px;display:flex}.inspector-stats dt{color:#aebaa3}.inspector-stats dd{font-family:var(--mono);color:#d7e3c7;margin:0;font-size:10px}.inspector-cost{margin-bottom:18px}.inline-notice{color:var(--amber);background:#332a20;border-radius:4px;margin-bottom:15px;padding:10px;font-size:10px;line-height:1.7}.resize-control{color:#b7c3ae;margin:18px 0;font-size:10px;display:block}select{color:#d9e5cc;background:#192019;border:1px solid #4a5842;border-radius:4px;min-height:34px;padding:8px 7px;font-size:10px}.ledger-panel{min-width:0;padding:16px}.ledger-heading{color:var(--mint);align-items:flex-start;gap:9px;display:flex}.ledger-heading>svg{flex-shrink:0;margin-top:2px}.ledger-heading h3{margin:0;font-size:14px;font-weight:500}.ledger-heading p,.ledger-explanation,.ledger-footnote{color:#b2c2a3;margin:5px 0 12px;font-size:12px;line-height:1.65}.retry-controls{border:1px solid var(--border);border-radius:5px;flex-wrap:wrap;gap:10px 14px;min-width:0;margin:10px 0 16px;padding:10px 12px;display:flex}.retry-controls legend{color:var(--mint);padding:0 5px;font-size:12px}.retry-controls>div{flex:175px;min-width:0}.retry-controls label{color:#c4d6b1;margin-bottom:6px;font-size:12px;display:block}.retry-controls select{width:100%;max-width:100%;font-size:12px}.retry-controls>p{color:#aab8a0;flex-basis:100%;margin:0;font-size:11px;line-height:1.6}.ledger-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:0 0 12px;display:grid}.ledger-summary>div{background:#19201b;border:1px solid #384132;border-radius:4px;padding:10px}.ledger-summary dt{color:#b2c2a3;margin-bottom:8px;font-size:11px}.ledger-summary dd{font:500 15px var(--mono);color:var(--mint);overflow-wrap:anywhere;margin:0}.ledger-summary .ledger-mismatch{border-color:#9a6356}.ledger-summary .ledger-mismatch dd{color:#f1a98d}.ledger-verdict{color:#c4d6b1;align-items:flex-start;gap:8px;font-size:12px;line-height:1.8;display:flex}.ledger-verdict svg{color:var(--amber);flex-shrink:0;margin-top:3px}.ledger-verdict strong{color:#e9ede8;font-weight:500}.ledger-policy{margin:6px 0 14px}.ledger-policy summary{cursor:pointer;color:var(--mint);font-size:12px;line-height:1.8}.ledger-policy summary>span{color:#b2c2a3;margin-left:10px}.ledger-section{margin-top:20px}.ledger-section-title{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;display:flex}.ledger-section-title h4{margin:0;font-size:13px;font-weight:500}.ledger-section-title>span{color:#b2c2a3;font-size:10px}.ledger-scroll{border:1px solid var(--border);border-radius:4px;max-width:100%;overflow-x:auto}.ledger-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:12px}.ledger-table th,.ledger-table td{text-align:left;border-bottom:1px solid #35402e;padding:11px 10px}.ledger-table th{font-weight:500}.ledger-table thead th{color:#b2c2a3;background:#1b231d;font-size:11px}.ledger-table tbody tr:last-child>*{border-bottom:0}.ledger-table small{color:#aab8a0;margin-top:4px;font-size:10px;display:block}.ledger-duplicate{background:#412920}.ledger-badge{color:#d5e4c9;border:1px solid #4d5c44;border-radius:4px;padding:3px 6px;font-size:11px;line-height:1.4;display:inline-block}.ledger-badge.is-duplicate{color:#ffc3a8;border-color:#a16852}.ledger-badge.is-replay{color:var(--mint);background:#24351f;border-color:#7d966b}.ledger-attempts{gap:8px;display:grid}.ledger-attempt{border:1px solid var(--border);background:#19201b;border-radius:4px;min-width:0;padding:11px 12px}.ledger-attempt>div{flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:11px;display:flex}.ledger-attempt>div>span{color:#b2c2a3;align-items:center;gap:4px;display:inline-flex}.ledger-attempt p{overflow-wrap:anywhere;margin:8px 0;font-size:12px}.ledger-footnote{border-top:1px solid var(--border);margin:18px 0 0;padding-top:12px;font-size:11px}.ledger-empty{color:#b2c2a3;padding:14px 0;font-size:13px;line-height:1.8}.request-evidence{border-top:1px solid var(--border);margin-top:12px;padding-top:9px}.request-evidence summary,.saved-response summary{cursor:pointer;color:var(--mint);font-size:12px;line-height:1.8}.request-evidence summary>span{color:#b2c2a3;margin-left:6px}.request-path{flex-wrap:wrap;gap:8px;margin:12px 0;padding:0;list-style-position:inside;display:flex}.request-path li{background:#243025;border:1px solid #4a5842;border-radius:4px;padding:8px;font-size:12px}.request-messages{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.request-messages h5{color:#c4d6b1;margin:5px 0 8px;font-size:12px;font-weight:500}.request-messages>div{min-width:0}.request-evidence pre,.saved-response pre{white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--border);background:#101618;border-radius:4px;max-width:100%;padding:12px;font-size:11px;line-height:1.8}.saved-response{border:1px solid var(--border);border-radius:4px;margin-block:8px;padding:12px}.saved-response dl{margin:8px 0;font-size:12px;line-height:1.8}.saved-response dl>div{flex-wrap:wrap;gap:8px;display:flex}.saved-response dt{color:#b2c2a3}.saved-response dd{margin:0}@container telemetry (max-width:610px){.request-messages{grid-template-columns:1fr}}.inspector-stats dd{text-align:right}@container telemetry (max-width:470px){.ledger-summary{grid-template-columns:1fr}.ledger-summary>div{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;display:flex}.ledger-summary dt{margin-bottom:0}}.resize-control select{width:100%;margin-top:8px;display:block}.connections{margin:22px 0}.connections h3{color:#c7d5b7;align-items:center;gap:6px;margin-bottom:11px;font-size:10px;font-weight:500;display:flex}.connection-row{color:#bac8ab;justify-content:space-between;align-items:center;padding:3px 0;font-size:10px;display:flex}.connection-form{margin-top:10px}.connection-form label{color:#b1bea3;margin-bottom:5px;font-size:9px;display:block}.connection-form>div{align-items:center;gap:7px;display:flex}.connection-form select{flex:1;width:100px}.connection-form .icon-button{color:var(--mint);background:#303d28;border:1px solid #4b603b}.danger-button{width:100%;color:var(--red);background:#30211f;border-color:#614139;min-height:36px;padding:10px;font-size:10px}.protected-note,.empty-copy{color:#a2b092;font-size:10px;line-height:1.7}.observability{background:#161b1d;border-top:1px solid #404a3a;flex-direction:column;grid-area:2/2;min-width:0;min-height:0;display:flex}.dock-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:6px;min-height:42px;padding:0 15px;display:flex}.dock-header [role=tablist]{gap:20px;height:42px;display:flex}.dock-header [role=tab]{color:#aab8a0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:0 1px;font-size:10px;font-weight:500;display:flex;position:relative}.dock-header [role=tab].active{color:var(--mint);border-color:var(--mint)}.tab-dot{background:var(--amber);border-radius:50%;width:4px;height:4px}.dock-status{font-family:var(--mono);letter-spacing:.4px;color:#a9b59c;white-space:nowrap;font-size:7px}.dock-status.text-amber{color:var(--amber)}.dock-content{outline-offset:-3px;flex:1;min-height:0;overflow:auto}.metrics-panel{padding:15px 15px 8px}.metric-cards{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.metric-card{background:#19201b;border:1px solid #384132;border-radius:4px;min-width:0;overflow:hidden}.metric-label{font-family:var(--mono);letter-spacing:.3px;color:#aab79e;justify-content:space-between;gap:4px;padding:11px 10px 0;font-size:8px;display:flex}.metric-value{font-family:var(--mono);color:#e4edda;padding:5px 10px 0;font-size:24px;font-weight:400;line-height:1.4}.metric-value>span{color:#aab89b;margin-left:4px;font-size:9px}.metric-alert{background:#24231b;border-color:#655137}.metric-alert .metric-value,.metric-alert .metric-label svg{color:var(--amber)}.sparkline{width:100%;height:39px;margin-top:0;display:block}.sparkline polyline{fill:none;stroke-width:1.5px;stroke:#b2cd90;vector-effect:non-scaling-stroke}.sparkline polygon{fill:#afcf8c;opacity:.07}.sparkline.chart-amber polyline{stroke:#d5ad73}.sparkline.chart-amber polygon{fill:#d5ad73}.sparkline.chart-blue polyline{stroke:#91b8c7}.sparkline.chart-blue polygon{fill:#91b8c7}.chart-grid{stroke:#46563a;opacity:.3;fill:none;stroke-width:.6px}.metric-card-footer{color:#a4b396;border-top:1px solid #35402e;padding:7px 9px;font-size:7px}.secondary-metrics{border-bottom:1px solid #343f2e;grid-template-columns:1.2fr 1fr 1fr;gap:10px;margin-top:12px;padding-bottom:12px;display:grid}.secondary-metrics>div{border-right:1px solid #343f2e;flex-wrap:wrap;align-items:center;gap:7px;padding-right:10px;display:flex}.secondary-metrics>div:last-child{border-right:0}.secondary-label{color:#afbea1;font-size:9px}.secondary-label .text-muted{margin-left:3px;font-size:8px}.secondary-metrics strong{font-family:var(--mono);margin-left:auto;font-size:12px;font-weight:400}.secondary-metrics strong small{color:#a2b291;margin-left:3px;font-size:8px}.mini-track{background:#384331;border-radius:2px;width:100%;height:3px;overflow:hidden}.mini-track>span{background:#b39a6f;height:100%;display:block}.telemetry-caption{color:#a3b195;align-items:center;gap:5px;margin-top:9px;font-size:8px;display:flex}.telemetry-caption>span{font-family:var(--mono);margin-left:auto;font-size:6px}.dock-panel-description{color:#b4c0a6;border-bottom:1px solid #2c3626;align-items:center;gap:7px;padding:12px 16px;font-size:10px;display:flex}.dock-panel-description>.mono{color:#9cae89;margin-left:auto;font-size:9px}.log-rows{padding:7px 0}.log-row{font-family:var(--mono);color:#c0c9b5;grid-template-columns:94px 40px 1fr;gap:9px;padding:6px 16px;font-size:9px;line-height:1.6;display:grid}.log-row>time{color:#9dab90}.log-row>strong{color:#b8d39c;font-size:8px;font-weight:400}.log-warn{background:#35301d55}.log-warn>strong,.log-warn>span{color:#e4c089}.log-error{background:#41272255}.log-error>strong,.log-error>span{color:#edb0a2}.dock-empty{color:#acbba1;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:13px;min-height:210px;padding:20px;font-size:12px;display:flex}.traces-panel{padding:13px 18px}.trace-heading{color:#d0ddc1;justify-content:space-between;gap:10px;font-size:11px;display:flex}.trace-heading strong{color:var(--amber);font-weight:400}.method-label{font-family:var(--mono);color:#c0dea3;border:1px solid #4a6338;border-radius:3px;margin-right:5px;padding:2px 5px;font-size:8px}.trace-ruler{color:#a6b69a;font-size:8px;font-family:var(--mono);justify-content:space-between;margin:15px 57px 4px 118px;display:flex}.trace-row{color:#bdcdb0;grid-template-columns:112px 1fr 52px;align-items:center;gap:7px;padding:6px 0;font-size:9px;display:grid}.trace-row>strong{font-family:var(--mono);text-align:right;font-size:9px;font-weight:400}.trace-track{background:repeating-linear-gradient(90deg,#3c4b311a 0 calc(25% - 1px),#465b3633 calc(25% - 1px) 25%);height:13px}.trace-span{background:#8ca974;border:1px solid #b7ce9d;border-radius:2px;min-width:3px;height:100%}.trace-compute .trace-span{background:#577984;border-color:#9cc1cd}.trace-data .trace-span{background:#977344;border-color:#d5b684}.trace-cache .trace-span{background:#a5ba67;border-color:#d5e898}.trace-other .trace-span{background:#7c786c;border-color:#b1b29e}.trace-note{color:#b2c2a3;border-top:1px solid #333f2c;margin-top:10px;padding-top:9px;font-size:9px;line-height:1.7}.cost-panel{grid-template-columns:1.6fr 1fr;gap:20px;padding:18px;display:grid}.cost-table{border-collapse:collapse;text-align:left;width:100%;font-size:10px}.cost-table thead th{font-family:var(--mono);color:#a4b594;padding-bottom:11px;font-size:7px;font-weight:400}.cost-table tbody td{color:#c9d6bc;border-top:1px solid #35432c;padding:10px 4px 10px 0}.cost-table th:not(:first-child),.cost-table td:not(:first-child){text-align:right;font-family:var(--mono);font-size:9px}.cost-table th:not(:first-child){font-size:7px}.cost-summary{background:#25321f;border:1px solid #526742;border-radius:4px;padding:14px}.cost-summary>div>span{font-family:var(--mono);letter-spacing:.5px;color:#b0c09e;font-size:7px;display:block}.cost-summary>div>strong{font-family:var(--mono);color:var(--mint);margin:8px 0 18px;font-size:25px;font-weight:400;display:block}.cost-summary small{color:#b0c09e;font-size:8px}.cost-summary>div:nth-child(2)>strong{margin:8px 0 12px;font-size:12px}.cost-summary p{color:#b1c19f;margin-top:12px;font-size:8px;line-height:1.8}.budget-track{background:#425337;border-radius:3px;height:4px}.budget-track>span{background:var(--mint);border-radius:3px;height:100%}.cost-over{background:#39261f;border-color:#9b6754}.cost-over>div>strong{color:var(--red)}.cost-over .budget-track>span{background:var(--red)}.sim-footer{border-top:1px solid var(--border);background:#171d18;justify-content:space-between;align-items:center;gap:25px;min-height:31px;padding:7px 18px;display:flex}.sim-footer>.mono{letter-spacing:.3px;color:#b2c3a1;white-space:nowrap;align-items:center;gap:5px;font-size:7px;display:flex}.sim-footer>.mono>span:last-child{color:#a4b497;font-size:7px;font-family:var(--font-sans)}.sim-footer .status-dot{width:4px;height:4px}.sim-footer .estimate-note{text-align:right;color:#a7b69a;font-size:7px}.simulation-progress{z-index:10;background:#35472c;width:100%;height:2px;position:absolute}.simulation-progress>span{background:var(--mint);height:100%;transition:width .3s linear;display:block}.mobile-panels{display:none}.completion-dialog{color:#e5efda;background:#1a211b;border:1px solid #5b6d4b;border-radius:10px;width:min(600px,100% - 30px);max-height:calc(100dvh - 40px);margin:auto;padding:32px;overflow:auto;box-shadow:0 30px 100px #0008}.completion-dialog::backdrop{background:#090e0ce3}.dialog-close{position:absolute;top:14px;right:14px}.completion-icon{width:53px;height:53px;color:var(--mint);background:#35472a;border:1px solid #6e8c55;border-radius:13px;place-items:center;margin-bottom:19px;display:grid}.completion-dialog>.eyebrow{color:var(--mint);font-size:9px}.completion-dialog h2{letter-spacing:-1.3px;margin:8px 0 10px;font-size:37px;font-weight:700}.completion-subtitle{color:#b4c6a3;font-size:12px;line-height:1.8}.completion-checks{color:var(--mint);align-items:center;gap:7px;margin:16px 0 23px;font-size:9px;display:flex}.completion-checks svg:not(:first-child){margin-left:10px}.comparison-table{border-collapse:collapse;text-align:left;width:100%}.comparison-table thead th{font-family:var(--mono);color:#aabf97;border-bottom:1px solid #4a5f3a;padding:11px 0;font-size:8px;font-weight:400}.comparison-table th:not(:first-child),.comparison-table td{text-align:right}.comparison-table tbody th{color:#c4d6b1;border-bottom:1px solid #35462b;padding:11px 0;font-size:11px;font-weight:400}.comparison-table td{font-family:var(--mono);color:#b6b59b;border-bottom:1px solid #35462b;padding:11px 0;font-size:11px}.comparison-table td:last-child{color:var(--mint)}.completion-explanation h3{text-transform:uppercase;font-family:var(--mono);letter-spacing:.9px;color:var(--mint);margin-top:22px;font-size:9px;font-weight:400}.completion-explanation p{color:#bfceb0;margin-top:8px;font-size:11px;line-height:1.9}.completion-actions{justify-content:space-between;gap:12px;margin-top:24px;display:flex}.completion-actions .button{padding:11px 16px;font-size:11px}.next-mission{border-top:1px solid #3b4d2f;align-items:center;gap:7px;width:100%;margin-top:22px;padding-top:19px;font-size:10px;display:flex}.next-mission:disabled{opacity:.8}.next-mission>span{font-family:var(--mono);margin-left:auto;font-size:7px}.skip-link{z-index:1000;background:var(--mint);color:#182713;border-radius:4px;padding:12px 20px;font-size:13px;font-weight:500;position:fixed;top:-100px;left:15px}.skip-link:focus{top:12px}.spin{animation:1.5s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1600px){.sim-grid{grid-template-columns:240px minmax(0,1fr) 300px}.palette-item-name{font-size:11px}.mission-panel-intro h3{font-size:18px}.objectives li>div{font-size:11px}.mission-bob .bob-message>p{font-size:12px}}@media(max-width:1200px){.site-header,.landing-main{padding:0 36px}.landing-hero{gap:35px}.hero-copy h1{font-size:66px}.hero-description{font-size:14px}.hero-console{min-width:0}.preview-node{min-width:83px}.preview-wire{width:47px}.console-incident{gap:8px;padding-inline:15px}.console-incident h2{font-size:12px}.severity{font-size:8px}.console-metrics{margin-inline:15px}.console-metrics>div{padding-inline:10px}.console-log{gap:7px;margin-inline:15px;font-size:8px}.console-metrics strong{font-size:21px}.metric-mini-line{letter-spacing:0}.intro-strip{gap:30px}.intro-strip .bob-message{display:block}.intro-strip .bob-message>p{margin-top:12px}.loop-steps{gap:15px}.mission-card{padding:16px}.mission-card h3{font-size:17px}.mission-card p{font-size:9px}.landing-footer{margin-inline:36px}.sim-grid{grid-template-columns:190px minmax(0,1fr) 244px}.sim-topbar{gap:20px;padding-inline:18px}.sim-title h1{gap:10px;font-size:21px}.workspace-status{font-size:7px}.topbar-budget{padding-left:17px}.topbar-stat strong{font-size:16px}.palette-item{gap:6px;padding-inline:5px}.palette-item-name{font-size:9px}.component-icon{width:26px}.dock-header{padding-inline:12px}.dock-header [role=tablist]{gap:13px}.dock-status{font-size:6px}.metric-cards{gap:7px}.metrics-panel{padding-inline:11px}.metric-label{padding-inline:7px;font-size:7px}.metric-value{padding-inline:7px;font-size:20px}.metric-card-footer{padding-inline:6px;font-size:6px}.secondary-metrics{gap:7px}.secondary-metrics>div{padding-right:7px}.secondary-metrics strong{font-size:11px}.secondary-label{font-size:8px}.telemetry-caption>span{display:none}.canvas-hint{font-size:7px}.canvas-legend{gap:9px;font-size:7px}.mission-bob{margin-inline:10px;padding-inline:10px}.mission-bob .bob-heading strong>span{margin:3px 0 0;display:block}.mission-bob .bob-heading small{display:none}.mission-panel-intro{padding-inline:14px}.objectives{margin-inline:14px}.cost-panel{gap:12px;padding:15px}.cost-summary{padding:10px}.cost-table{font-size:9px}}@media(max-width:1000px){.sim-header .brand-sub,.sim-header .brand-slash{display:none}.sim-title h1{flex-wrap:wrap;gap:7px;font-size:20px}.sim-title{max-width:230px}.topbar-stat{min-width:100px}.sim-topbar{gap:17px}.sim-grid{grid-template-rows:430px auto;grid-template-columns:170px minmax(0,1fr);height:auto}.mission-panel{border-left:0;border-right:1px solid var(--border);grid-area:2/1;max-height:430px}.palette{grid-row:1}.canvas-section{grid-area:1/2}.observability{grid-area:2/2;min-height:330px}.mission-panel .sidebar-heading{padding-inline:10px}.mission-panel .sidebar-heading h2{font-size:9px}.mission-panel-intro,.learning-tip,.mission-correctness{display:none}.objectives{margin:6px 10px 16px}.objectives li{gap:5px}.objectives li>div,.objectives li>strong{font-size:8px}.objective-icon{width:17px;height:17px}.mission-bob .bob-message>p{font-size:10px}.mission-bob .bob-signature{display:none}.sim-footer{flex-wrap:wrap;gap:6px}.sim-footer .estimate-note{text-align:left}.inspector{padding:12px}.inspector-title{gap:6px}.inspector-title h2{font-size:12px}.inspector-icon{width:30px;height:30px}.inspector-stats>div{font-size:9px}.inspector-stats dd,.resize-control select{font-size:8px}.connection-form>div{flex-wrap:wrap}.connection-form select{font-size:9px}.palette-item-name{font-size:8px}.palette-plus{width:11px}.canvas-legend{font-size:8px}}@media(max-width:800px){.site-header{min-height:75px;padding-inline:25px}.header-label{display:none}.landing-main{padding-inline:25px}.landing-hero{grid-template-columns:1fr;gap:36px;padding-top:44px}.hero-copy h1{font-size:72px}.hero-description{max-width:520px}.hero-console{width:100%;max-width:590px;transform:none}.console-incident h2{font-size:14px}.preview-node{min-width:106px}.preview-wire{width:90px}.console-metrics strong{font-size:26px}.console-metrics>div{padding:15px}.console-log{font-size:10px}.intro-strip{grid-template-columns:1fr;gap:25px}.intro-strip .bob-message{grid-template-columns:170px 1fr;display:grid}.intro-strip .bob-message>p{margin:0}.loop-steps{border-top:1px solid var(--border);justify-content:flex-start;gap:28px;padding-top:20px}.mission-cards{grid-template-columns:1fr 1fr}.mission-card h3{font-size:20px}.mission-card p{font-size:11px}.landing-footer{flex-direction:column;align-items:flex-start;gap:13px;margin-inline:25px}.brief-grid{grid-template-columns:1fr}.brief-top h1{font-size:50px}.brief-top{margin-top:28px}.brief-stamp{padding:18px}.brief-footer{flex-direction:column-reverse;align-items:stretch;gap:20px}.brief-footer>span{justify-content:center}.brief-main{padding:28px 24px}.requirements dl>div{padding:17px 0}.requirements dd{font-size:20px}}@media(max-width:700px){.sim-header{flex-wrap:wrap;gap:15px;padding:12px 15px}.sim-header nav{border:0;gap:7px;padding:0;font-size:10px}.sim-header nav>span:first-child,.sim-header nav>svg:first-of-type{display:none}.sim-header>.text-link{font-size:9px}.sim-topbar{grid-template-columns:1fr 1fr;gap:16px 20px;padding:17px 15px 21px;display:grid}.sim-title{grid-column:1;max-width:none;margin:0}.sim-title h1{font-size:20px}.workspace-status{font-size:6px}.run-controls{grid-area:1/2;justify-self:end;min-width:0}.run-button{padding:10px 13px;font-size:10px}.topbar-stat{grid-row:2}.topbar-stat strong{font-size:17px}.topbar-budget{border:0;align-items:flex-end;padding:0}.topbar-budget>span:last-child{font-size:8px}.workspace-context{min-height:45px;padding:12px 15px;font-size:9px}.workspace-context .context-hint{display:none}.mobile-panels{border-bottom:1px solid var(--border);background:#1b211c;gap:0;padding:0 13px;display:flex}.mobile-panels>button{color:#a8b999;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:7px;padding:14px 7px;font-size:10px;display:flex}.mobile-panels>button.active{border-color:var(--mint);color:var(--mint)}.sim-grid{flex-direction:column;height:auto;min-height:0;display:flex}.palette,.mission-panel,.canvas-section{display:none}.show-components .palette{border:0;min-height:460px;max-height:650px;display:flex}.show-architecture .canvas-section{height:410px;display:flex}.show-mission .mission-panel{border:0;min-height:460px;max-height:620px;display:block}.observability{min-height:333px;max-height:480px;display:flex}.palette-groups{grid-template-columns:1fr 1fr;gap:0 10px;padding:0 12px 15px;display:grid}.palette-item-name{font-size:11px}.component-icon{width:31px;height:33px}.palette-plus{width:15px}.palette-help{padding-top:14px}.component-search{min-height:36px}.component-search input{font-size:12px}.sidebar-heading h2{font-size:13px}.mission-panel .sidebar-heading{padding:17px}.mission-panel .sidebar-heading h2{font-size:12px}.mission-panel-intro{display:block}.objectives{margin:5px 17px 18px}.objectives li>div,.objectives li>strong{font-size:12px}.objectives li small{font-size:10px}.objectives li{gap:10px;padding-block:13px}.objective-icon{width:22px;height:22px}.mission-bob{margin:0 17px 20px;padding:15px}.mission-bob .bob-message>p{font-size:12px}.mission-bob .bob-heading strong>span{margin-left:7px;display:inline}.mission-bob .bob-heading small{display:block}.inspector{padding:20px}.inspector-title h2{font-size:18px}.inspector-icon{width:45px;height:45px}.inspector-stats>div,.inspector-stats dd,.resize-control,.resize-control select,.connection-row,.connections h3,.connection-form select{font-size:12px}.protected-note{margin-top:20px}.mission-correctness{display:flex}.canvas-hint{max-width:calc(100% - 120px);font-size:7px;line-height:1.5}.canvas-region{font-size:7px}.node-count{display:none}.canvas-legend{justify-content:space-between;padding-inline:13px;font-size:7px}.dock-header{flex-wrap:wrap;gap:0;padding:0 12px}.dock-header [role=tablist]{flex:1;gap:19px}.dock-header [role=tab]{font-size:10px}.dock-status{white-space:normal;text-align:right;max-width:130px;font-size:6px}.metric-cards{grid-template-columns:repeat(2,1fr);gap:10px}.metric-card{min-height:125px}.metric-label{padding:10px 11px 0;font-size:9px}.metric-value{padding-inline:11px;font-size:25px}.metric-card-footer{padding-inline:11px;font-size:8px}.metrics-panel{padding:13px 13px 10px}.secondary-metrics{grid-template-columns:1fr 1fr 1fr}.secondary-metrics>div{flex-direction:column;align-items:flex-start}.secondary-metrics strong{margin:0}.secondary-label{font-size:8px}.telemetry-caption{margin-top:10px;font-size:7px}.cost-panel{grid-template-columns:1fr}.cost-summary{grid-template-columns:1fr 1fr;gap:10px;padding:15px;display:grid}.cost-summary>div>strong{margin-bottom:5px}.cost-summary .budget-track,.cost-summary p{grid-column:1/-1}.cost-table,.cost-table td:not(:first-child){font-size:11px}.log-row{grid-template-columns:78px 32px 1fr;gap:5px;padding-inline:10px;font-size:8px}.log-row>strong{font-size:7px}.trace-row{grid-template-columns:89px 1fr 45px;gap:5px;font-size:8px}.trace-ruler{margin-left:95px}.trace-heading .text-muted{display:none}.traces-panel{padding:15px 12px}.trace-note{margin-top:15px}.sim-footer{gap:8px;padding:12px 15px}.sim-footer .estimate-note{font-size:8px}.completion-dialog{padding:26px 22px}.completion-dialog h2{font-size:33px}.completion-actions{flex-direction:column}.completion-dialog .button{width:100%}.comparison-table thead th{font-size:7px}.next-mission{font-size:9px}}@media(max-width:480px){.site-header{min-height:70px;padding-inline:20px}.brand-sub{font-size:10px}.brand{gap:8px;font-size:21px}.brand-slash{margin-inline:6px}.brand-mark{width:31px;height:31px}.site-header>.text-link{font-size:10px}.landing-main{padding-inline:20px}.landing-hero{padding-top:37px}.hero-copy h1{letter-spacing:-3px;font-size:60px}.hero-copy .eyebrow{font-size:9px}.hero-description{font-size:13px;line-height:1.8}.hero-actions{gap:9px}.hero-actions .button{gap:8px;padding:12px 14px;font-size:11px}.hero-footnote{gap:7px;font-size:8px}.console-title{padding-inline:13px;font-size:8px}.console-incident{padding:20px 13px 8px}.console-incident h2{font-size:10px}.console-incident .eyebrow{font-size:7px}.incident-icon{width:29px;height:32px}.incident-icon svg{width:17px}.severity{padding:3px 4px;font-size:6px}.preview-architecture{padding:31px 13px 36px}.preview-node{min-width:72px;height:75px;font-size:8px}.preview-wire{width:42px}.preview-wire span{font-size:6px}.console-metrics{grid-template-columns:1fr 1fr 1.15fr;margin:9px 12px 14px}.console-metrics>div{padding:11px 8px}.console-metrics strong{font-size:19px}.console-metrics small{font-size:8px}.console-metrics>div>span:first-child{font-size:6px}.console-metrics .text-muted{font-size:7px}.console-log{gap:6px;margin:0 12px 15px;padding:9px 7px;font-size:7px}.console-log b{font-size:6px}.console-bottom{padding:13px;font-size:7px}.console-bottom .mono{font-size:6px}.intro-strip .bob-message{display:block}.intro-strip .bob-message>p{margin-top:13px}.loop-steps{gap:16px}.loop-steps>span{gap:7px;font-size:10px}.loop-steps>svg{width:10px}.section-heading h2{font-size:21px}.section-heading>span{display:none}.mission-cards{gap:10px}.mission-card{padding:14px 12px}.mission-card h3{font-size:15px}.mission-card p{min-height:28px;font-size:9px}.mission-card-top{font-size:7px}.live-label{font-size:6px}.mission-company{margin-top:21px;font-size:9px}.mission-card-bottom{margin-top:19px;font-size:9px}.landing-footer{margin-inline:20px;font-size:9px}.landing-estimate{font-size:8px}.brief-top h1{font-size:42px}.brief-stamp{display:none}.brief-main{padding-inline:20px}.brief-top p{font-size:12px}.traffic-comparison{margin-inline:17px;padding:16px 12px}.traffic-comparison strong{font-size:22px}.traffic-comparison span{font-size:7px}.brief-context>p{margin-inline:17px}.brief-infrastructure{padding-inline:17px}.brief-infrastructure p{font-size:9px}.brief-infrastructure>span:last-child{font-size:10px}.brief-main>.bob-message>p{margin-left:0}.brief-main>.bob-message{padding-inline:18px}.sim-header nav{font-size:9px}.sim-header>.text-link{font-size:8px}.sim-header{gap:12px}.sim-title h1{font-size:18px}.workspace-status{width:max-content;display:block}.sim-id{display:none}.sim-title .eyebrow{font-size:8px}.run-button{font-size:10px}.dock-status{display:none}}.architecture-node{width:209px}.node-select{padding:13px}.node-select>strong{font-size:16px}.node-kind,.node-subtitle{font-size:10px}.node-top{margin-bottom:9px}.node-telemetry .mono{font-size:13px}.node-telemetry small{font-size:10px}.health-badge{padding:3px 5px;font-size:10px}.node-traffic{font-size:18px}.node-telemetry{margin-top:13px;padding-top:10px}.mission-panel:focus-visible{outline-offset:-3px}.log-row{grid-template-columns:104px 43px 1fr;font-size:11px}.log-row>strong{font-size:10px}.trace-row,.trace-row>strong{font-size:11px}.trace-row{grid-template-columns:118px 1fr 57px;padding:7px 0}.trace-note{font-size:11px}.traces-panel{padding-top:15px}.trace-ruler{margin-left:125px;font-size:10px}.trace-heading{font-size:13px}.trace-heading .text-muted{font-size:10px}.cost-table{font-size:12px}.cost-table td:not(:first-child){font-size:11px}.cost-table th,.cost-table th:not(:first-child){font-size:9px}.cost-summary p{font-size:10px}.cost-summary>div>span{font-size:9px}.inspector-description,.inspector-stats>div,.inspector-stats dd{font-size:12px}.resize-control,.resize-control select,.connections h3,.connection-row,.connection-form label,.connection-form select,.protected-note{font-size:11px}.canvas-toolbar h2,.canvas-toolbar .text-link{font-size:12px}.canvas-env{font-size:10px}@media(min-width:1001px){.sim-grid{grid-template-rows:minmax(350px,1fr) 325px;grid-template-columns:226px minmax(0,1fr) 284px;min-height:675px}.sim-header nav,.sim-header>.text-link{font-size:12px}.sim-title .eyebrow,.topbar-stat>span:first-child{font-size:10px}.workspace-status{font-size:9px}.topbar-budget>span:last-child{font-size:10px}.workspace-context{font-size:11px}.workspace-context>.mono{font-size:9px}.sidebar-heading h2,.mission-panel .sidebar-heading h2{font-size:13px}.sidebar-heading>span{font-size:10px}.palette-groups section>h3{margin-top:15px;font-size:10px}.palette-item-name{font-size:12px}.palette-item-name>small{font-size:10px}.palette-item{gap:9px;padding:8px 6px}.palette-help p,.component-search input{font-size:11px}.mission-panel-intro .eyebrow{font-size:10px}.mission-panel-intro h3{font-size:18px}.mission-panel-intro p{font-size:11px}.objectives li>div{font-size:12px}.objectives li>strong{font-size:11px}.objectives li small{font-size:10px}.mission-bob .bob-heading strong{font-size:13px}.mission-bob .bob-heading strong>span{font-size:10px}.mission-bob .bob-heading small{font-size:8px}.mission-bob .bob-message>p{font-size:12px}.mission-bob .bob-signature{font-size:10px}.learning-tip strong,.learning-tip p{font-size:11px}.mission-correctness{font-size:10px}.dock-header [role=tab]{font-size:12px}.dock-status{font-size:8px}.metric-label{font-size:10px}.metric-value{padding-top:7px;font-size:29px}.metric-value>span{font-size:10px}.metric-card-footer{font-size:9px}.sparkline{height:44px}.secondary-label{font-size:10px}.secondary-metrics strong{font-size:14px}.secondary-metrics strong small,.telemetry-caption{font-size:9px}.telemetry-caption>span{display:none}.canvas-region,.canvas-legend{font-size:9px}.node-count{font-size:8px}.canvas-hint,.sim-footer>.mono{font-size:9px}.sim-footer>.mono>span:last-child,.sim-footer .estimate-note{font-size:8px}}@media(min-width:1001px)and (max-width:1200px){.sim-grid{grid-template-columns:204px minmax(0,1fr) 254px}.palette-item-name,.dock-header [role=tab]{font-size:11px}.dock-status{display:none}.metric-label{font-size:9px}.metric-value{font-size:25px}.metric-card-footer,.canvas-hint{font-size:8px}.secondary-metrics strong{font-size:12px}}@media(max-width:700px){.log-row{grid-template-columns:88px 36px 1fr;font-size:10px}.log-row>strong{font-size:9px}.trace-row,.trace-row>strong{font-size:10px}.trace-row{grid-template-columns:95px 1fr 52px}.trace-ruler{margin-left:100px}.trace-note{font-size:10px}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.react-flow__edge.animated path{stroke-dasharray:none!important}}.sandbox-controls{color:#c9d2c4;padding:16px;font-size:12px}.sandbox-controls p{color:var(--muted);line-height:1.6}.sandbox-controls fieldset{border:1px solid #3b4642;border-radius:8px;min-width:0;margin:14px 0;padding:10px 12px}.sandbox-controls legend{color:var(--mint);padding:0 6px;font-size:12px;font-weight:500}.sandbox-controls label{flex-direction:column;gap:6px;margin:10px 0;display:flex}.sandbox-intro{font-size:12px}.sandbox-controls .challenge-prompt{color:#d8e1d2;margin:4px 0 8px;line-height:1.6}.sandbox-controls .challenge-met{color:#f0d9a4;background:#2a2416;border:1px solid #8a7444;border-radius:6px;align-items:center;gap:7px;margin:8px 0;padding:8px 10px;font-weight:500;display:flex}.sandbox-controls input:not([type=checkbox]),.sandbox-controls select,.resize-control input{color:#e5ebe7;background:#192220;border:1px solid #53625b;border-radius:5px;width:100%;min-width:0;padding:7px 8px;font-size:12px}.sandbox-controls input[type=file]{font-size:12px}.sandbox-controls .sandbox-check{flex-direction:row;align-items:flex-start;line-height:1.5}.sandbox-check input{accent-color:var(--mint);margin-top:4px}.sandbox-actions{flex-wrap:wrap;gap:8px;display:flex}.sandbox-controls .button{padding:8px;font-size:12px}.sandbox-controls ul{padding-left:16px;line-height:1.6}.sandbox-controls [role=status]:empty{display:none}.workspace-context>div{min-width:0}.workspace-context>div>span:last-child{overflow-wrap:anywhere}.inspector-position{gap:8px;margin:12px 0;display:flex}.inspector-position label{flex:1;min-width:0;font-size:12px}.inspector-position input{color:#e5ebe7;width:100%;font-family:var(--mono);background:#192220;border:1px solid #53625b;border-radius:4px;margin-top:6px;padding:7px}.node-select>strong{overflow-wrap:anywhere}.canvas-toolbar,.canvas-toolbar-actions{flex-wrap:wrap}.component-settings{border:1px solid #3b4642;border-radius:6px;min-width:0;margin:16px 0;padding:4px 12px 12px}.component-settings legend{color:var(--mint);align-items:center;gap:6px;padding:0 6px;font-size:12px;display:inline-flex}.component-settings .resize-control{margin:12px 0;font-size:12px}.component-settings .resize-control select{font-size:12px}.component-settings .sandbox-check{color:#c4d6b1;align-items:flex-start;gap:8px;margin:10px 0;font-size:12px;line-height:1.5;display:flex}.component-settings .sandbox-check input{accent-color:var(--mint);margin-top:3px}.component-settings .empty-copy{font-size:11px}.fault-controls{border-color:#5b4632}.fault-controls legend{color:var(--amber)}.node-fault{color:var(--amber);font:600 8px var(--mono);letter-spacing:.5px;background:#3a2a1d;border:1px solid #8a5a35;border-radius:3px;align-items:center;gap:3px;margin-left:auto;padding:1px 5px;display:inline-flex}.node-fault+.node-added{margin-left:4px}.architecture-node.has-fault{border-style:dashed}.model-notes{border-left:2px solid var(--amber);background:#261f18;border-radius:0 5px 5px 0;margin:16px 0;padding:10px 12px}.model-notes h3{color:var(--amber);margin-bottom:6px;font-size:12px;font-weight:500}.model-notes ul{margin:0;padding-left:16px}.model-notes li{color:#d9c7ad;margin:4px 0;font-size:11px;line-height:1.6}.section-lede{max-width:620px;color:var(--muted);margin-top:10px;font-size:13px;line-height:1.7}.labs-section,.record-section{border-top:1px solid var(--border);padding:40px 0 46px;scroll-margin-top:20px}.labs-section .section-heading,.record-section .section-heading{flex-wrap:wrap;gap:24px}.labs-section .eyebrow,.record-section .eyebrow{color:var(--mint)}.labs-progress{flex-direction:column;align-items:flex-end;gap:10px;min-width:240px;display:flex}.labs-progress .mono{color:var(--muted);font-size:11px}.progress-track{background:#262d29;border-radius:6px;width:100%;height:6px;display:block;overflow:hidden}.progress-track>span{background:var(--mint);border-radius:6px;height:100%;display:block}.lab-tracks{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:13px;display:grid}.lab-track{border:1px solid var(--border);background:#15191c;border-radius:8px;flex-direction:column;gap:12px;padding:18px;display:flex}.lab-track.is-mastered{background:#1c231b;border-color:#718361}.lab-track header{align-items:center;gap:12px;display:flex}.lab-track h3{font-size:17px;font-weight:700}.lab-track header .mono{color:var(--muted);font-size:10px}.lab-track-icon{background:#1e2526;border:1px solid #3f4a43;border-radius:8px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.lab-track>p{color:#b4beb7;font-size:12px;line-height:1.65}.lab-track ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.lab-track>.text-link{margin-top:auto}.lab-link{text-align:left;color:#dfe6da;background:#1a1f22;border:1px solid #343d37;border-radius:6px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:13px;display:flex}.lab-link:hover{border-color:var(--mint);background:#232b24}.lab-link>span:nth-child(2){flex:1;min-width:0}.lab-link small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.lab-link>svg{color:var(--mint);flex-shrink:0}.lab-status{color:#c9b27c;background:#2b2a20;border:1px solid #514a35;border-radius:6px;flex-shrink:0;place-items:center;width:24px;height:24px;display:grid}.lab-status.is-done{color:#182713;background:var(--mint);border-color:var(--mint)}.guide-shelf{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:18px;display:flex}.guide-shelf>span{color:var(--muted);font-size:12px}.guide-shelf ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.guide-chip{color:#d4dcd1;background:#191e21;border:1px solid #39423d;border-radius:99px;align-items:center;gap:7px;min-height:36px;padding:6px 12px;font-size:12px;display:inline-flex}.guide-chip:hover{border-color:var(--mint);color:var(--mint)}.record-grid{grid-template-columns:minmax(240px,.8fr) 2fr;gap:16px;display:grid}.record-stats{border:1px solid var(--border);background:#15191c;border-radius:8px;margin:0;padding:6px 18px}.record-stats>div{border-bottom:1px solid #2a312d;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:13px;display:flex}.record-stats>div:last-child{border-bottom:0}.record-stats dt{color:#c3ccc0}.record-stats dd{color:#5b665e;gap:3px;margin:0;display:flex}.record-stats dd.mono{color:var(--mint);font-size:13px}.record-stats .is-earned{color:#e8c27b}.badge-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.badge-grid li{color:#9aa59d;border:1px dashed #39423d;border-radius:8px;align-items:flex-start;gap:10px;padding:12px;display:flex}.badge-grid li.is-earned{color:#e9dcc0;background:#241f16;border-style:solid;border-color:#8a7444}.badge-grid strong{font-size:13px;font-weight:500;display:block}.badge-grid small{color:inherit;margin-top:3px;font-size:11px;line-height:1.5;display:block}.badge-icon{background:#22282b;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.is-earned .badge-icon{color:#2a2210;background:#e8c27b}.badge-state{font:10px var(--mono);letter-spacing:.5px;text-transform:uppercase;margin-left:auto}.review-strip{color:#c9d3c0;background:#1d211c;border:1px solid #474b38;border-radius:8px;align-items:center;gap:12px;margin-top:16px;padding:14px 16px;display:flex}.review-strip p{flex:1;font-size:13px;line-height:1.6}.review-dialog .engineer-checkpoint{margin:16px 0}.field-guide{color:#e5ebe2;background:#171c1e;border:1px solid #45524a;border-radius:10px;width:min(760px,100% - 30px);max-height:calc(100dvh - 40px);margin:auto;padding:30px 32px;overflow:auto;box-shadow:0 30px 100px #0008}.field-guide::backdrop{background:#090e0ce3}.field-guide-header{align-items:center;gap:14px;padding-right:30px;display:flex}.field-guide-header .eyebrow{color:var(--mint)}.field-guide-header h2{letter-spacing:-.8px;margin-top:4px;font-size:30px;font-weight:700}.field-guide-icon{background:#1f2729;border:1px solid #4a5650;border-radius:10px;flex-shrink:0;place-items:center;width:60px;height:60px;display:grid}.field-guide-summary{color:#d2dacd;margin:16px 0;font-size:15px;line-height:1.7}.field-guide-bob{background:#1d211c;border:1px solid #474b38;border-radius:8px;align-items:center;gap:14px;padding:12px 16px;display:flex}.field-guide-bob p{color:#d1d5c9;font-size:13px;line-height:1.7}.field-guide-bob strong{color:#e6cb8b;font-weight:500}.field-guide-columns{grid-template-columns:1fr 1fr;gap:0 22px;display:grid}.field-guide-section{margin-top:20px}.field-guide-section h3{font:500 11px var(--mono);letter-spacing:.8px;text-transform:uppercase;color:var(--mint);align-items:center;gap:7px;margin-bottom:8px;display:flex}.field-guide-section ul{margin:0;padding-left:18px;list-style:outside}.field-guide-section li::marker{color:#7f9a6c}.field-guide-section li{color:#c6cfc2;margin:4px 0;font-size:13px;line-height:1.65}.field-guide-model{border-left:2px solid var(--amber);color:#dccbb2;background:#261f18;border-radius:0 6px 6px 0;margin-top:18px;padding:12px 14px;font-size:12px;line-height:1.65}.field-guide-model strong{color:var(--amber);font-weight:500}.field-guide-labs ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.field-guide-labs li{background:#1a1f22;border:1px solid #343d37;border-radius:8px;align-items:center;gap:12px;margin:0;padding:12px;display:flex}.field-guide-labs li.is-done{border-color:#5c6e4c}.field-guide-labs li>div{flex:1;min-width:0}.field-guide-labs strong{color:#e5ebe2;font-size:14px;font-weight:500}.field-guide-labs p{color:#b4beb7;margin-top:3px;font-size:12px;line-height:1.55}.field-guide-labs small{color:var(--muted);align-items:center;gap:4px;margin-top:5px;font-size:11px;display:inline-flex}.field-guide-labs .button{flex-shrink:0;gap:6px;min-height:38px;padding:8px 14px;font-size:12px}.field-guide-empty,.field-guide-note{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 10px;font-size:12px;line-height:1.7;display:flex}.field-guide-note{color:#d9c7ad;margin-top:10px}.field-guide-section .field-guide-links{padding:0;list-style:none}.field-guide-links a{color:#cfe6b2;text-underline-offset:3px;align-items:center;gap:6px;-webkit-text-decoration:underline #5d7149;text-decoration:underline #5d7149;display:inline-flex}.field-guide-links a:hover{color:var(--mint);-webkit-text-decoration-color:var(--mint);text-decoration-color:var(--mint)}.palette-row{align-items:center;gap:2px;display:flex}.palette-row .palette-item{flex:1;min-width:0}.palette-info{color:#8f9b93;flex-shrink:0;width:28px;height:28px}.palette-labs{color:#c9b27c}.palette-compact .palette-info{display:none}.inspector-learn{color:var(--mint);margin:-6px 0 14px;font-size:12px}.lab-guide-link{color:var(--mint);margin-top:10px;font-size:12px}.lab-steps ol{margin:8px 0 0;padding-left:16px;list-style:decimal}.lab-steps li{margin:3px 0;font-size:11px;line-height:1.7}.completion-stars{flex-wrap:wrap;gap:8px;margin:-8px 0 20px;padding:0;list-style:none;display:flex}.completion-stars li{color:#a9b59f;border:1px dashed #4b5845;border-radius:99px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:inline-flex}.completion-stars li.is-earned{color:#f0d9a4;background:#2a2416;border-style:solid;border-color:#8a7444}@media(max-width:900px){.record-grid{grid-template-columns:1fr}.labs-progress{align-items:stretch;width:100%;min-width:0}.labs-progress .button{white-space:normal;text-align:left}}@media(max-width:640px){.field-guide{padding:24px 18px}.field-guide-header h2{font-size:24px}.field-guide-columns{grid-template-columns:1fr}.field-guide-labs li{flex-wrap:wrap}.field-guide-labs .button{width:100%}.review-strip{flex-direction:column;align-items:stretch}}.resize-handle{display:none}.canvas-toolbar-actions{display:flex;align-items:center;gap:17px}.canvas-toolbar-actions>button{white-space:nowrap}.canvas-toolbar-actions>button:last-child{color:var(--mint)}.dock-header-actions{display:flex;align-items:center;gap:9px;margin-left:auto}.dock-header-actions>button{flex-shrink:0}.adjustable-workspace .dock-header{min-height:43px;flex-shrink:0}.adjustable-workspace .dock-content[hidden],#mission-panel-body[hidden]{display:none}.adjustable-workspace>.observability{container-type:inline-size;container-name:telemetry}.adjustable-workspace .dock-content{scrollbar-gutter:stable}.adjustable-workspace .dock-header [role=tablist]{min-width:0;overflow-x:auto;scrollbar-width:thin}.adjustable-workspace .dock-header [role=tab]{flex-shrink:0}.adjustable-workspace .mission-panel>.sidebar-heading{gap:8px}.adjustable-workspace .mission-panel>.sidebar-heading>.mono{margin-left:auto}.adjustable-workspace .sidebar-heading>button{flex-shrink:0}.palette-size{display:none}.mission-rail-label{display:block;writing-mode:vertical-rl;margin:21px auto;font:10px var(--mono);letter-spacing:1.5px;color:#bdcaaa}.adjustable-workspace.dock-collapsed>.observability{min-height:44px;max-height:44px}@media(min-width:901px){.sim-grid.adjustable-workspace{display:grid;grid-template-columns:var(--palette-width) 6px minmax(0,1fr) 6px var(--mission-width);grid-template-rows:minmax(0,1fr) 6px var(--dock-height);height:max(400px,calc(100dvh - 224px));min-height:0}.adjustable-workspace>.palette{grid-column:1;grid-row:1 / 4;display:flex;border-right:0;min-width:0}.adjustable-workspace>.canvas-section{grid-column:3;grid-row:1;display:flex;min-height:0}.adjustable-workspace>.mission-panel{grid-column:5;grid-row:1 / 4;display:block;border:0;max-height:none;min-width:0}.adjustable-workspace>.observability{grid-column:3;grid-row:3;min-height:0;border-top:0}.adjustable-workspace .sidebar-heading{min-height:48px;padding:9px 12px 9px 15px}.adjustable-workspace .sidebar-heading h2{font-size:12px}.adjustable-workspace .palette-item-name{font-size:11px}.adjustable-workspace .palette-item-name>small{font-size:10px}.adjustable-workspace .palette-item{padding:8px 6px;gap:9px}.adjustable-workspace .palette-groups section>h3{font-size:9px}.adjustable-workspace .mission-panel-intro{display:block}.adjustable-workspace .learning-tip,.adjustable-workspace .mission-correctness{display:flex}.adjustable-workspace .objectives{margin-inline:15px}.adjustable-workspace .objectives li{gap:8px}.adjustable-workspace .objectives li>div{font-size:11px}.adjustable-workspace .objectives li>strong{font-size:11px}.adjustable-workspace .objectives li small{font-size:10px}.adjustable-workspace .objective-icon{width:21px;height:21px}.adjustable-workspace .mission-bob .bob-message>p{font-size:12px}.adjustable-workspace .inspector-title h2{font-size:16px}.adjustable-workspace .canvas-toolbar{min-height:43px;padding:0 12px;gap:10px}.adjustable-workspace .canvas-toolbar>div{gap:8px}.adjustable-workspace .canvas-toolbar .canvas-toolbar-actions{gap:14px}.adjustable-workspace .canvas-toolbar h2,.adjustable-workspace .canvas-toolbar .text-link{font-size:11px}.adjustable-workspace .canvas-env{display:none}.adjustable-workspace .canvas-legend{flex-wrap:wrap;gap:7px 10px;font-size:8px;padding:8px 11px}.adjustable-workspace .canvas-hint{max-width:calc(100% - 108px);line-height:1.6;font-size:8px}.adjustable-workspace .canvas-region{font-size:8px}.adjustable-workspace .canvas-region>span:last-child{display:none}.resize-handle{display:flex;justify-content:center;align-items:center;position:relative;z-index:12;background:#1b231d;touch-action:none;-webkit-user-select:none;user-select:none;outline-offset:-1px}.resize-handle:before{content:"";position:absolute;inset:0 -3px}.resize-handle>span{pointer-events:none;display:block;width:2px;height:29px;border-radius:3px;background:#647655;transition:background .15s}.resize-handle:hover,.resize-handle:focus-visible,.resize-handle[data-resizing]{background:#39472e}.resize-handle:hover>span,.resize-handle:focus-visible>span,.resize-handle[data-resizing]>span{background:var(--mint)}.resize-components{grid-column:2;grid-row:1 / 4;cursor:col-resize}.resize-mission{grid-column:4;grid-row:1 / 4;cursor:col-resize}.resize-observability{grid-column:3;grid-row:2;cursor:row-resize}.resize-observability:before{inset:-3px 0}.resize-observability>span{width:36px;height:2px}body:has(.resize-handle[data-resizing]){-webkit-user-select:none;user-select:none}.adjustable-workspace .palette-compact .sidebar-heading{padding:9px 0;justify-content:center}.palette-compact .sidebar-heading h2,.palette-compact .component-search,.palette-compact .palette-help,.palette-compact .palette-item-name,.palette-compact .palette-plus,.palette-compact .palette-groups h3{display:none}.adjustable-workspace .palette-compact .palette-groups{padding:0 5px 14px}.palette-compact .palette-groups>section{border-top:1px solid #34402d;padding-top:8px;margin-top:6px}.adjustable-workspace .palette-compact .palette-item{justify-content:center;padding:5px 0;min-height:43px}.palette-compact .component-icon{position:relative;width:33px;height:32px}.palette-compact .palette-size{display:block;position:absolute;right:-3px;bottom:-3px;background:#172023;border:1px solid #647a82;border-radius:3px;color:#dfedee;font:8px var(--mono);padding:1px 3px}.adjustable-workspace>.mission-compact{overflow:hidden}.adjustable-workspace .mission-compact .sidebar-heading{padding:9px 0;justify-content:center}.mission-compact .sidebar-heading h2,.mission-compact .sidebar-heading>.mono{display:none}.sim-grid.architecture-expanded{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.architecture-expanded>.palette,.architecture-expanded>.mission-panel,.architecture-expanded>.observability,.architecture-expanded>.resize-handle{display:none}.architecture-expanded>.canvas-section{grid-column:1;grid-row:1}.architecture-expanded .canvas-env{display:inline}}@container telemetry (max-width: 720px){.dock-status{display:none}.dock-header{padding-inline:10px;gap:4px}.dock-header [role=tablist]{gap:13px}.dock-header [role=tab]{font-size:11px}.dock-header-actions{gap:0}}@container telemetry (max-width: 610px){.metric-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric-value{font-size:26px}.metric-label{font-size:9px}.metric-card-footer{font-size:8px}.secondary-metrics>div{flex-direction:column;align-items:flex-start}.secondary-metrics strong{margin-left:0}.telemetry-caption{flex-wrap:wrap;line-height:1.6}.telemetry-caption>span{display:none}.cost-panel{grid-template-columns:1fr}.cost-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cost-summary .budget-track,.cost-summary p{grid-column:1 / -1}.log-row{grid-template-columns:82px 35px minmax(0,1fr);font-size:10px;gap:6px;padding-inline:10px}.log-row>span{overflow-wrap:anywhere}.log-row>strong{font-size:9px}.trace-heading .text-muted{display:none}.trace-row{grid-template-columns:95px minmax(0,1fr) 50px;font-size:10px}.trace-row>strong,.trace-note{font-size:10px}.trace-ruler{margin-left:102px}}@media(max-width:900px){.desktop-layout-control{display:none!important}.mobile-panels{display:flex;border-bottom:1px solid var(--border);padding:0 13px;background:#1b211c}.mobile-panels>button{flex:1;display:flex;justify-content:center;align-items:center;gap:7px;font-size:11px;padding:14px 7px;border-bottom:2px solid transparent;color:#a8b999}.mobile-panels>button.active{border-color:var(--mint);color:var(--mint)}.sim-grid.adjustable-workspace{display:flex;flex-direction:column;height:auto;min-height:0}.adjustable-workspace>.palette,.adjustable-workspace>.mission-panel,.adjustable-workspace>.canvas-section{display:none}.adjustable-workspace.show-components>.palette{display:flex;min-height:460px;max-height:650px;border:0}.adjustable-workspace.show-architecture>.canvas-section{display:flex;height:410px}.adjustable-workspace.show-mission>.mission-panel{display:block;max-height:620px;min-height:460px;border:0}.adjustable-workspace>.observability{display:flex;min-height:333px;max-height:480px}.adjustable-workspace.dock-collapsed>.observability{min-height:44px;max-height:44px}.adjustable-workspace .palette-groups{display:grid;grid-template-columns:1fr 1fr;padding:0 12px 15px;gap:0 10px}.adjustable-workspace .palette-item-name{font-size:12px}.adjustable-workspace .component-icon{width:31px;height:33px}.adjustable-workspace .sidebar-heading h2{font-size:13px}.adjustable-workspace .mission-panel-intro{display:block}.adjustable-workspace .objectives li>div,.adjustable-workspace .objectives li>strong{font-size:12px}.adjustable-workspace .objectives{margin-inline:17px}.adjustable-workspace .objectives li{gap:10px}.adjustable-workspace .mission-bob{margin-bottom:20px}.adjustable-workspace .mission-bob .bob-message>p{font-size:12px}.adjustable-workspace .inspector{padding:20px}.adjustable-workspace .inspector-title h2{font-size:18px}.adjustable-workspace .dock-header{flex-wrap:nowrap}.adjustable-workspace .dock-header [role=tablist]{gap:14px}.adjustable-workspace .dock-status{display:none}.canvas-toolbar-actions{gap:8px}}@media(prefers-reduced-motion:reduce){.resize-handle>span{transition:none}}.mono,.console-metrics,.topbar-stat,.node-telemetry,.metric-value,.secondary-metrics,.requirements dd,.objectives li>strong,.inspector-stats dd,.log-row,.trace-row>strong,.cost-table,.cost-summary,.comparison-table{font-variant-numeric:tabular-nums}.log-row,.console-log{font-variant-ligatures:none}.request-evidence pre,.saved-response pre{font-variant-ligatures:none;font-variant-numeric:tabular-nums}.ledger-table .mono,.ledger-attempt .mono,.ledger-summary dd{font-variant-numeric:tabular-nums;font-variant-ligatures:none}.objectives li>strong,.brief-infrastructure strong{font-family:var(--mono)}.workspace-status,.sim-title .eyebrow,.topbar-stat>span:first-child,.topbar-budget>span:last-child,.workspace-context>.mono,.sidebar-heading>span,.mission-panel-intro .eyebrow,.mission-bob .bob-heading small,.mission-bob .bob-signature,.adjustable-workspace .palette-groups section>h3,.adjustable-workspace .canvas-legend,.adjustable-workspace .canvas-hint,.adjustable-workspace .canvas-region,.node-count,.dock-status,.metric-label,.metric-value>span,.metric-card-footer,.secondary-label,.secondary-label .text-muted,.secondary-metrics strong small,.telemetry-caption,.method-label,.cost-table th,.cost-table th:not(:first-child),.cost-summary>div>span,.cost-summary small,.comparison-table thead th,.completion-dialog>.eyebrow,.completion-checks,.completion-explanation h3,.sim-footer>.mono,.sim-footer>.mono>span:last-child,.sim-footer .estimate-note{font-size:10px}.adjustable-workspace .palette-size{font-size:10px}.metric-label{flex-wrap:wrap}.metric-card-footer,.telemetry-caption{line-height:1.6}.canvas-legend,.completion-checks{flex-wrap:wrap}.sim-footer{flex-wrap:wrap;gap:8px 24px}.sim-footer>.mono{flex-wrap:wrap;white-space:normal}.hero-footnote,.console-title,.console-incident .eyebrow,.severity,.preview-wire span,.preview-cpu,.console-metrics>div>span:first-child,.console-metrics .text-muted,.console-log,.console-log b,.console-bottom,.console-bottom .mono,.mission-card-top,.live-label,.mission-company,.mission-card p,.mission-card-bottom,.brief-stamp span,.traffic-comparison span,.panel-title .mono,.bob-heading small,.estimate-note{font-size:10px}.hero-footnote,.console-bottom,.mission-card-top{flex-wrap:wrap}.console-log{flex-wrap:wrap;white-space:normal;overflow-wrap:anywhere}.console-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.console-metrics>div{min-width:0}.console-metrics strong{white-space:nowrap}.console-metrics .text-muted{flex-wrap:wrap}.preview-wire span{left:50%;transform:translate(-50%)}.brief-infrastructure>span:last-child{flex-wrap:wrap;gap:6px}.brief-infrastructure p{overflow-wrap:anywhere}.bob-message>p,.adjustable-workspace .mission-bob .bob-message>p{font-size:13px}@media(max-width:1200px){.console-metrics>div{padding-inline:8px}.console-metrics strong{font-size:20px}}@media(max-width:480px){.hero-copy h1{font-size:clamp(44px,13.5vw,60px);letter-spacing:-2px}.console-incident{flex-wrap:wrap}.console-incident h2{font-size:12px}.console-metrics>div{padding-inline:6px}.console-metrics strong{font-size:16px}.console-metrics small{font-size:10px;margin-left:2px}.preview-node{min-width:0;flex:1;font-size:10px}.preview-wire{width:50px;flex-shrink:0}.preview-wire span{top:-55px}.console-bottom .mono{margin-left:0}}.bob-character{display:inline-block;position:relative;flex:none;padding:0;vertical-align:middle;border-radius:20px;line-height:0;background:none}.bob-character>svg{display:block;width:100%;height:auto;overflow:visible}.bob-character:hover{background:none}.bob-body{transform-origin:90px 174px;animation:bob-breathe 3.8s ease-in-out infinite}.bob-head{transform-origin:90px 107px}.bob-eyes{transform-origin:90px 77px;animation:bob-blink 5.5s infinite}.bob-pupils{transform:translate(var(--bob-look-x, 0px),var(--bob-look-y, 0px));transition:transform .15s ease-out}.bob-arm-right{transform-origin:121px 120px;animation:bob-wave 7s ease-in-out infinite}.bob-arm-left{transform-origin:59px 119px}.bob-shadow{transform-origin:90px 179px;animation:bob-shadow 3.8s ease-in-out infinite}.bob-mood-curious .bob-head{animation:bob-curious 6s ease-in-out infinite}.bob-mood-thinking .bob-head{transform:rotate(-7deg)}.bob-mood-thinking .bob-arm-right{animation:none;transform:rotate(-38deg)}.bob-mood-working .bob-body{animation:bob-work .85s ease-in-out infinite}.bob-mood-working .bob-arm-left{animation:bob-tool .7s ease-in-out infinite alternate}.bob-mood-worried .bob-head{animation:bob-worry 2.5s ease-in-out infinite}.bob-mood-worried .bob-arm-right{animation:none;transform:rotate(-20deg)}.bob-sweat{animation:bob-sweat 1.8s ease-out infinite}.bob-mood-celebrating .bob-body{animation:bob-celebrate .8s ease-in-out 4}.bob-mood-celebrating .bob-arm-right{animation:bob-high-five .45s ease-in-out 7 alternate}.bob-mood-celebrating .bob-arm-left{transform:rotate(110deg)}.bob-sparkles{transform-origin:90px 95px;animation:bob-sparkle .8s ease-in-out 4 alternate}.bob-still *,.bob-still .bob-pupils{animation:none!important;transition:none!important}@keyframes bob-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-3px) rotate(1deg)}}@keyframes bob-blink{0%,42%,46%,90%,94%,to{transform:scaleY(1)}44%,92%{transform:scaleY(.08)}}@keyframes bob-wave{0%,65%,to{transform:rotate(0)}72%,86%{transform:rotate(-15deg)}79%,93%{transform:rotate(8deg)}}@keyframes bob-shadow{0%,to{transform:scaleX(1);opacity:.3}50%{transform:scaleX(.92);opacity:.2}}@keyframes bob-curious{0%,40%,to{transform:rotate(0)}55%,80%{transform:rotate(-6deg)}}@keyframes bob-work{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes bob-tool{0%{transform:rotate(0)}to{transform:rotate(-18deg)}}@keyframes bob-worry{0%,75%,to{transform:rotate(-3deg)}80%,90%{transform:rotate(3deg)}85%,95%{transform:rotate(-3deg)}}@keyframes bob-sweat{0%{opacity:0;transform:translateY(-5px)}30%{opacity:1}to{opacity:0;transform:translateY(12px)}}@keyframes bob-celebrate{0%,to{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-10px) rotate(3deg)}}@keyframes bob-high-five{0%{transform:rotate(-12deg)}to{transform:rotate(15deg)}}@keyframes bob-sparkle{0%{opacity:.4;transform:scale(.92)}to{opacity:1;transform:scale(1.03)}}.bob-coach{display:flex;align-items:center;gap:18px;padding:10px 22px 10px 14px;border-block:1px solid #465445;background:radial-gradient(ellipse at 0% 50%,#35443288,transparent 35%),#1d2622;position:relative}.bob-coach-mascot{display:flex;flex-direction:column;align-items:center;width:96px;flex:none}.bob-name-tag{font:700 11px var(--font-sans);color:#f3cf7a;letter-spacing:1px}.bob-name-tag{text-align:center;line-height:1.35}.bob-name-tag>span{display:block;font:9px var(--mono);color:#b9c6b5;letter-spacing:0}.bob-coach-content{flex:1;min-width:0}.bob-coach-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.bob-note-label{display:flex;align-items:center;gap:7px;color:#c3d5b7;font:10px var(--mono);letter-spacing:.6px}.bob-learning-steps{display:flex;align-items:center;gap:17px;list-style:none;margin:0;padding:0}.bob-learning-steps li{display:flex;align-items:center;gap:5px;color:#a9b5aa;font-size:10px}.bob-learning-steps li>span{width:19px;height:19px;display:grid;place-items:center;border:1px solid #566555;border-radius:50%;font:8px var(--mono)}.bob-learning-steps li.current{color:#f6d582}.bob-learning-steps li.current>span{border-color:#eac36c;background:#504329}.bob-learning-steps li.done{color:var(--mint)}.bob-learning-steps li.done>span{border-color:#9db386}.bob-note h2{font-size:18px;font-weight:700;letter-spacing:-.4px;color:#f0f1e3;line-height:1.3}.bob-note p{margin-top:3px;font-size:13px;line-height:1.55;color:#d2ddcd;max-width:940px}.bob-coach-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;margin-top:7px}.bob-coach-evidence{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 320px}.bob-quip{display:flex;align-items:center;gap:6px;color:#e6c989;font-size:11px;line-height:1.6}.bob-quip>svg{flex:none}.bob-coach-actions{display:flex;align-items:center;gap:17px}.bob-hint-button{font-size:11px;min-height:32px}.bob-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#e1efce;background:#35422c;border:1px solid #6d8054;border-bottom-width:3px;border-radius:7px;padding:8px 12px;min-height:34px;font-size:11px;font-weight:500;transition:transform .15s,background .15s}.bob-action:hover{background:#46573a;transform:translateY(-1px)}.bob-action:active{transform:translateY(1px)}.bob-coach-controls{align-self:flex-start;display:flex;flex-direction:column;gap:4px}.bob-coach-controls>button{color:#b7c7ad}.bob-run-comparison{color:#c7d5bd;font-size:11px;line-height:1.6}.bob-run-comparison>span{display:inline-block;color:#d5e6c4;font:9px var(--mono);border:1px solid #596b4c;border-radius:4px;padding:2px 5px;margin-right:9px}.bob-hint{display:flex;align-items:flex-start;gap:8px;background:#30392a;border-left:2px solid #e7c275;padding:9px 14px;margin-top:8px;border-radius:0 5px 5px 0;color:#e5dfbf;font-size:12px;line-height:1.7}.bob-hint>svg{margin-top:3px;flex:none}.bob-hint[hidden]{display:none}.bob-coach-collapsed{padding-block:7px;gap:12px}.bob-coach-collapsed .bob-coach-mascot{width:44px}.bob-coach-collapsed .bob-character{width:40px!important}.bob-coach-collapsed .bob-name-tag,.bob-coach-collapsed .bob-coach-topline{display:none}.bob-coach-collapsed .bob-note h2{font-size:13px;font-weight:500}.bob-coach-collapsed .bob-coach-controls{align-self:center}.bob-coach-success{border-color:#718e54;background-color:#233322}.technology-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:none;vertical-align:middle;overflow:visible}.technology-icon img{display:block;width:100%;height:100%;object-fit:contain}.technology-kafka img{filter:brightness(0) invert(1)}.replica-mark{position:absolute;right:-4px;bottom:-2px;display:grid;place-items:center;width:11px;height:11px;background:#17374e;border:1px solid #83badb;border-radius:3px;color:#e4f3ff;font:8px var(--mono)}.node-icon .technology-icon{width:26px!important;height:26px!important}.component-icon .technology-icon{width:23px!important;height:23px!important}.inspector-icon .technology-icon{width:32px!important;height:32px!important}.preview-node .technology-icon{width:29px!important;height:29px!important}.is-running .server-led{animation:server-light .9s ease-in-out infinite alternate}@keyframes server-light{0%{opacity:.4}to{opacity:1}}.palette-item.preview-only:disabled{opacity:.75}.architecture-node .node-icon{width:36px;height:35px;border-radius:9px}.architecture-node:hover .node-icon{transform:translateY(-2px);transition:transform .2s}.engineer-checkpoint{margin:20px 14px;padding:14px;border:1px solid #4b5c42;border-radius:8px;background:#253020}.engineer-checkpoint .eyebrow{color:#e6cb8b;font-size:9px;letter-spacing:.4px}.engineer-checkpoint h3{margin:11px 0;font-size:12px;font-weight:500;line-height:1.7}.checkpoint-options{display:grid;gap:7px}.checkpoint-options button{display:flex;align-items:center;gap:8px;text-align:left;background:#1c261b;border:1px solid #55654a;border-radius:5px;padding:9px 8px;color:#d3dfcb;font-size:11px;line-height:1.5;min-height:36px}.checkpoint-options button>span{display:grid;place-items:center;width:19px;height:19px;flex:none;border-radius:4px;background:#3d4b31;font:10px var(--mono)}.checkpoint-options button:hover{border-color:#bad797;background:#35452a}.checkpoint-options button.is-correct{border-color:#b6d892;background:#35452a;color:#e0f3c3}.checkpoint-options button.try-again{border-color:#d4ad70;background:#3b3324}.checkpoint-feedback{margin-top:11px;font-size:11px;line-height:1.7;color:#d4dfc8}.checkpoint-feedback strong{color:#e8d28d}.intro-strip .bob-message{grid-template-columns:205px 1fr;gap:20px}.bob-heading{gap:13px}.bob-heading strong{font-size:15px}.bob-heading strong>span{display:block;margin:3px 0 0}.brief-main>.bob-message{position:relative;padding-left:120px;min-height:142px}.brief-main>.bob-message .bob-character{position:absolute;left:15px;top:16px;width:90px!important}.brief-main>.bob-message>p{margin-left:0}.completion-bob{float:right;margin:-4px 8px 4px 20px}.completion-bob-caption{display:block;font-size:10px;color:#d5e6bd;text-align:center}@media(min-width:901px){.sim-grid.adjustable-workspace{height:max(620px,calc(100dvh - 318px))}main:has(.bob-coach-collapsed) .sim-grid.adjustable-workspace{height:max(620px,calc(100dvh - 252px))}}@media(max-width:1100px){.bob-learning-steps{gap:8px}.bob-note-label{font-size:9px;letter-spacing:0}.bob-coach{gap:14px;padding-inline:12px}.bob-coach-mascot{width:84px}.bob-coach-mascot .bob-character{width:76px!important}.bob-name-tag>span{display:none}.bob-coach-collapsed .bob-coach-mascot{width:44px}.bob-coach-collapsed .bob-coach-mascot .bob-character{width:40px!important}.bob-note h2{font-size:18px}}@media(max-width:700px){.bob-coach{align-items:flex-start;gap:9px;padding:15px 12px}.bob-coach-mascot{width:63px;padding-top:8px}.bob-coach-mascot .bob-character{width:67px!important}.bob-name-tag{font-size:10px}.bob-coach-controls{position:absolute;right:8px;top:7px}.bob-coach-topline{padding-right:18px}.bob-note-label{font-size:8px}.bob-learning-steps{display:none}.bob-note h2{font-size:17px;padding-right:23px}.bob-note p{font-size:12px;padding-right:9px}.bob-quip{font-size:11px}.bob-coach-actions{flex-wrap:wrap;gap:7px 12px}.bob-run-comparison{font-size:10px}.bob-coach-collapsed .bob-coach-controls{position:static}.bob-coach-collapsed .bob-note h2{padding-right:0}.bob-coach-collapsed .bob-coach-mascot{padding-top:0}.intro-strip .bob-message{grid-template-columns:1fr;gap:7px}.intro-strip .bob-heading strong>span{display:inline;margin-left:6px}.brief-main>.bob-message{padding-left:90px}.brief-main>.bob-message .bob-character{width:65px!important;left:10px}.completion-bob{margin-right:0;margin-left:5px}.completion-bob .bob-character{width:82px!important}}@media(prefers-reduced-motion:reduce){.bob-character *,.is-running .server-led{animation:none!important;transition:none!important}.bob-pupils,.bob-action:hover,.architecture-node:hover .node-icon{transform:none}}
