@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700&display=swap";.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))}:root{font-family:DM Sans,system-ui,sans-serif;color:#e9f5f1;background:#071111;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:0;min-height:100vh;overflow:auto}body.ide-body{min-width:1050px;min-height:680px;overflow:hidden}button{font:inherit}.app-shell{display:grid;grid-template:72px 1fr / 270px 1fr 300px;width:100vw;height:100vh;background:#081313}.topbar{grid-column:1 / 4;display:flex;align-items:center;padding:0 22px;border-bottom:1px solid #213130;background:#0b1717}.brand{width:248px;display:flex;gap:12px;align-items:center}.brand-mark{flex:0 0 42px;width:42px;height:42px;overflow:hidden;border:1px solid rgba(255,255,255,.9);border-radius:11px;background:#fff url(/assets/domusx-dmxp-logos-v2.png) -11px -8px / 123px 82px no-repeat;box-shadow:0 5px 14px #0000003d}.brand div,.brand small{display:block}.brand strong{font:700 18px Manrope}.brand small{color:#6e8581;font-size:11px;margin-top:2px}.project-title{flex:1;padding:10px;border:0;color:#bfd0cc;background:transparent;cursor:pointer;font-size:14px;text-align:left}.project-title:hover{color:#e7f5f1}.project-title small{margin-left:8px;color:#67807b}.online-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#52dea9;margin-right:8px;box-shadow:0 0 12px #52dea9}.actions{display:flex;gap:9px;align-items:center}.actions button,.test-button{border:0;border-radius:9px;padding:10px 15px;cursor:pointer;font-weight:700}.ghost{color:#a9bfba;background:#162524}.primary{color:#071311;background:#55e3b2}.color-flag{display:flex;align-items:center;gap:7px;margin-right:4px;color:#829792;font-size:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.color-flag input{position:absolute;opacity:0;pointer-events:none}.color-flag i{position:relative;width:32px;height:18px;border-radius:99px;background:#263936;transition:.2s}.color-flag i:after{content:"";position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:#708480;transition:.2s}.color-flag input:checked+i{background:linear-gradient(90deg,#55e3b2,#b38cff)}.color-flag input:checked+i:after{left:17px;background:#fff}.user-chip{display:flex;align-items:center;gap:7px;margin-right:4px;padding-right:10px;border-right:1px solid #213432}.user-chip>span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;color:#0a1715;background:#72d8b7;font-size:9px;font-weight:800}.user-chip div{min-width:72px}.user-chip b{display:block;max-width:110px;overflow:hidden;color:#a9bdb8;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.user-chip button{margin:1px 0 0!important;padding:0!important;color:#617a74!important;background:transparent!important;font-size:8px!important;font-weight:600!important}.device-panel,.inspector{padding:24px 18px;background:#0b1717;overflow:auto}.device-panel{border-right:1px solid #213130}.inspector{border-left:1px solid #213130}.eyebrow{display:block;color:#5de1b5;font-size:9px;font-weight:800;letter-spacing:.14em}.panel-heading h2,.inspector h2{font:700 21px Manrope;margin:5px 0}.panel-heading p{color:#6e8581;font-size:12px;margin:0 0 22px}.palette-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:17px 0 12px;padding:4px;border-radius:9px;background:#071312}.palette-tabs button{padding:8px 4px;border:0;border-radius:6px;color:#6f8580;background:transparent;cursor:pointer;font-size:11px;font-weight:700}.palette-tabs button.active{color:#cce0db;background:#1a2b29;box-shadow:0 2px 7px #00000038}.palette-summary{margin:0 0 12px;color:#687e79;font-size:10px}.block-search{width:100%;margin-bottom:14px;padding:10px 11px;border:1px solid #283d39;border-radius:8px;outline:none;color:#d2e2de;background:#0f1e1c;font:inherit;font-size:11px}.block-search:focus{border-color:#4dcc9f}.block-category{margin:0 0 18px}.block-category h3{display:flex;align-items:center;justify-content:space-between;margin:0 3px 7px;color:#718681;font-size:9px;letter-spacing:.09em;text-transform:uppercase}.block-category h3 span{display:grid;place-items:center;min-width:18px;height:18px;border-radius:9px;color:#54716a;background:#142522;font-size:8px}.block-card{display:grid;grid-template-columns:32px 1fr 12px;gap:9px;align-items:center;margin:6px 0;padding:9px;border:1px solid #233936;border-radius:9px;background:#0f1e1c;cursor:grab;transition:border-color .15s,transform .15s}.block-card:hover{border-color:#3d6b61;transform:translate(2px)}.block-card:active{cursor:grabbing}.block-card>i{display:grid;place-items:center;width:31px;height:31px;border-radius:7px;color:#64dfb6;background:#18302b;font-style:normal;font-size:11px;font-weight:800}.block-card b,.block-card span{display:block}.block-card b{color:#bed0cc;font-size:11px}.block-card span{max-width:150px;margin-top:2px;overflow:hidden;color:#607570;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.block-card em{color:#405752;font-style:normal;font-size:10px}.no-blocks{color:#677d78;font-size:11px;text-align:center}.device-discovery-toolbar{margin:0 0 13px;padding:10px;border:1px solid #244039;border-radius:10px;background:#0c1b19}.device-discovery-toolbar .palette-summary{margin-bottom:8px}.device-discovery-toolbar button{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:9px;border:1px solid #376a5d;border-radius:8px;color:#9ce9cd;background:#153129;cursor:pointer;font-size:10px;font-weight:800}.device-discovery-toolbar button:hover:not(:disabled){border-color:#55e3b2;background:#193a31}.device-discovery-toolbar button:disabled{cursor:wait;opacity:.65}.device-discovery-toolbar small{display:block;margin-top:8px;color:#718781;font-size:9px;line-height:1.35}.device-discovery-toolbar .spin{display:inline-block;animation:device-scan-spin .8s linear infinite}@keyframes device-scan-spin{to{transform:rotate(360deg)}}.gateway-manager-button{display:grid;grid-template-columns:28px 1fr auto;gap:9px;align-items:center;width:100%;margin:0 0 14px;padding:10px;border:1px solid #31554b;border-radius:10px;color:#b9d2cb;background:#122620;cursor:pointer;text-align:left}.gateway-manager-button:hover{border-color:#51d8aa}.gateway-manager-button>span{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;color:#65e1b8;background:#1b3a31}.gateway-manager-button b,.gateway-manager-button small{display:block}.gateway-manager-button b{font-size:10px}.gateway-manager-button small{margin-top:2px;color:#687e78;font-size:7px}.gateway-manager-button i{color:#5c7971;font-style:normal}.gateway-modal-backdrop{z-index:1500}.gateway-modal{display:flex;flex-direction:column;width:min(1180px,96vw);height:min(820px,94vh);overflow:hidden;border:1px solid #315049;border-radius:19px;background:#091613;box-shadow:0 35px 100px #000000b3}.gateway-modal>header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:22px 25px 18px;border-bottom:1px solid #20362f}.gateway-modal h2{margin:4px 0 2px;font:700 24px Manrope}.gateway-modal header p{margin:0;color:#6e837e;font-size:10px}.gateway-downloads{display:flex;gap:7px;align-items:center}.gateway-downloads a{padding:9px 11px;border:1px solid #31594e;border-radius:8px;color:#8ddfc3;background:#122821;font-size:8px;font-weight:800;text-decoration:none}.gateway-layout{display:grid;grid-template-columns:250px 1fr;min-height:0;flex:1}.gateway-list{padding:19px 16px;overflow:auto;border-right:1px solid #1e342e;background:#0a1714}.gateway-list>button{display:grid;grid-template-columns:8px 1fr;gap:9px;align-items:center;width:100%;margin:8px 0;padding:11px;border:1px solid #253d36;border-radius:9px;color:#9fb5af;background:#0e201b;cursor:pointer;text-align:left}.gateway-list>button.active{border-color:#4eac8d;background:#143027}.gateway-list button>i,.gateway-status-strip i{width:7px;height:7px;border-radius:50%;background:#697a76}.gateway-list button>i.online,.gateway-status-strip i.online{background:#50dba8;box-shadow:0 0 8px #50dba8}.gateway-list button b,.gateway-list button small{display:block}.gateway-list button b{font-size:9px}.gateway-list button small{margin-top:3px;color:#607770;font-size:7px}.gateway-list>p{padding:16px 8px;color:#5f756f;font-size:9px}.gateway-pairing-form{margin-top:20px;padding-top:15px;border-top:1px solid #21362f}.gateway-pairing-form b{display:block;margin-bottom:8px;font-size:9px}.gateway-pairing-form input{width:100%;margin:4px 0;padding:9px;border:1px solid #29433b;border-radius:7px;outline:0;color:#c9dbd6;background:#10201c;font:inherit;font-size:8px}.gateway-pairing-form button{width:100%;margin-top:7px;padding:9px;border:0;border-radius:7px;color:#071410;background:#56dcae;cursor:pointer;font-size:8px;font-weight:800}.gateway-content{position:relative;min-width:0;overflow:auto}.pairing-receipt{position:sticky;z-index:3;top:0;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:15px 22px;border-bottom:1px solid #4d7b6c;color:#b9d3cb;background:#173a30;box-shadow:0 8px 22px #00000047}.pairing-receipt strong{display:block;margin:5px 0;color:#fff;font:800 25px Manrope;letter-spacing:.15em}.pairing-receipt p{margin:0;color:#95afa7;font-size:8px}.pairing-receipt button{padding:8px 10px;border:0;border-radius:7px;color:#143329;background:#78e5be;cursor:pointer;font-size:8px;font-weight:800}.gateway-empty{display:grid;place-items:center;min-height:100%;align-content:center;color:#5e746d;text-align:center}.gateway-empty>span{font-size:38px}.gateway-empty h3{margin:12px 0 5px;color:#a5bab4}.gateway-empty p{max-width:340px;font-size:9px}.gateway-status-strip{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:1px;border-bottom:1px solid #21362f;background:#21362f}.gateway-status-strip>div{display:flex;gap:9px;align-items:center;padding:13px 18px;background:#0d1c18}.gateway-status-strip>div:not(:first-child){display:grid;grid-template-columns:1fr auto;gap:2px 8px}.gateway-status-strip span,.gateway-status-strip small{color:#687e78;font-size:7px}.gateway-status-strip b{font-size:10px}.gateway-status-strip .synced{color:#56dcae}.gateway-status-strip .pending{color:#f3bd61}.gateway-sections{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:17px}.gateway-sections fieldset{min-width:0;margin:0;padding:14px;border:1px solid #263f37;border-radius:11px;background:#0d1d19}.gateway-sections legend{padding:0 7px;color:#65caaa;font-size:8px;font-weight:800;text-transform:uppercase}.gateway-sections label:not(.gateway-check){display:block;margin:8px 0;color:#728880;font-size:7px;font-weight:700}.gateway-sections input:not([type=checkbox]),.gateway-sections select{display:block;width:100%;margin-top:5px;padding:8px;border:1px solid #29443c;border-radius:7px;outline:0;color:#c8d9d4;background:#10211d;font:inherit;font-size:8px}.gateway-sections input[type=range]{padding:0;accent-color:#56dcae}.gateway-readonly,.diagnostics>div:first-of-type{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:11px}.gateway-readonly span,.diagnostics span{padding:8px;border-radius:7px;color:#60766f;background:#0a1714;font-size:6px}.gateway-readonly b,.diagnostics b{display:block;margin-top:3px;overflow:hidden;color:#a8bbb6;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.gateway-check{display:flex;gap:8px;align-items:center;margin:10px 0;color:#91a59f;cursor:pointer;font-size:8px}.gateway-check input{position:absolute;opacity:0}.gateway-check i{position:relative;width:29px;height:16px;border-radius:10px;background:#293c37}.gateway-check i:after{content:"";position:absolute;top:3px;left:3px;width:10px;height:10px;border-radius:50%;background:#71857f;transition:.15s}.gateway-check input:checked+i{background:#286d58}.gateway-check input:checked+i:after{left:16px;background:#76e6bd}.gateway-note{margin:11px 0 0;color:#566d66;font-size:7px;line-height:1.45}.security-state{display:flex;gap:9px;align-items:center;padding:10px;border:1px solid #2d5146;border-radius:8px;background:#10271f}.security-state>span{color:#5be0b2;font-size:18px}.security-state b,.security-state small{display:block}.security-state b{font-size:8px}.security-state small{margin-top:2px;color:#698078;font-size:6px}.gateway-command,.gateway-actions button{padding:8px 10px;border:1px solid #31564b;border-radius:7px;color:#92d7bf;background:#142b24;cursor:pointer;font-size:7px;font-weight:800}.diagnostics{grid-column:1 / -1}.diagnostics>div:first-of-type{grid-template-columns:repeat(6,1fr)}.gateway-actions{display:flex;gap:7px;margin-top:12px}.gateway-actions .danger{margin-left:auto;color:#e4978d;border-color:#5d3833;background:#2b1d1b}.gateway-modal>footer{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 22px;border-top:1px solid #21362f;color:#6c827b;background:#091410;font-size:8px}.gateway-modal>footer>div{display:flex;gap:7px}.gateway-modal>footer button{border:0;border-radius:8px;padding:9px 12px;cursor:pointer;font-size:8px;font-weight:800}@media(max-width:900px){.gateway-layout{grid-template-columns:205px 1fr}.gateway-sections{grid-template-columns:1fr}.diagnostics{grid-column:auto}.diagnostics>div:first-of-type{grid-template-columns:1fr 1fr}.gateway-downloads a{display:none}}.gateway-status-strip{grid-template-columns:1.6fr 1fr 1fr 1.1fr}.matter-local-link{display:inline-block;margin-top:10px;text-decoration:none}@media(max-width:720px){.gateway-status-strip{grid-template-columns:1fr 1fr}}.pairing-actions{display:flex;gap:7px;align-items:center}.pairing-actions .primary{color:#082018;background:#78e5be}.palette-tabs.three{grid-template-columns:repeat(3,1fr)}.structure-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:15px 0 18px}.structure-actions button{padding:9px;border:1px solid #315047;border-radius:8px;color:#79dfbc;background:#132923;cursor:pointer;font-size:10px;font-weight:700}.structure-actions button:hover{border-color:#58bd9b;background:#18352d}.tree-section{display:block;margin:13px 8px 7px;color:#536b65;font-size:8px;font-weight:800;letter-spacing:.12em}.macro-heading{margin-top:24px}.tree-item{display:grid;grid-template-columns:23px 1fr auto;align-items:center;width:100%;min-height:34px;padding:6px 10px;border:0;border-radius:7px;color:#8da39d;background:transparent;cursor:pointer;text-align:left}.tree-item:hover{color:#c5d7d2;background:#122522}.tree-item.active{color:#d9eae5;background:#19332d;box-shadow:inset 2px 0 #55e3b2}.tree-item i{color:#5ccda8;font-style:normal;font-size:12px}.tree-item span{overflow:hidden;font-size:10px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.tree-item small{color:#536b65;font-size:8px}.tree-item.root span{font-weight:800}.macro-tree-row{display:grid;grid-template-columns:1fr auto;gap:4px;align-items:center}.macro-use{padding:6px 7px;border:0;border-radius:6px;color:#d8ac63;background:#2b2519;cursor:pointer;font-size:8px;font-weight:700}.macro-use:disabled{cursor:not-allowed;opacity:.35}.tree-empty{margin:8px;color:#5c736d;font-size:9px;line-height:1.45}.room-tree{padding:4px 0}.room-tree-branch{position:relative}.room-tree-row{display:grid;grid-template-columns:19px minmax(0,1fr) auto;gap:2px;align-items:center;min-height:45px;margin:2px 0;padding:3px 4px 3px 3px;border:1px solid transparent;border-radius:9px;transition:background .15s,border-color .15s}.room-tree-row:hover{border-color:#243c36;background:#10211e}.room-tree-row.active{border-color:#356b5a;background:linear-gradient(90deg,#17352d,#11241f);box-shadow:inset 2px 0 #55e3b2}.tree-chevron{display:grid;place-items:center;width:18px;height:26px;padding:0;border:0;color:#6e8982;background:transparent;cursor:pointer;font-size:15px}.tree-chevron:hover{color:#a9c2bb}.tree-chevron.empty{cursor:default}.room-tree-main{display:grid;grid-template-columns:29px minmax(0,1fr);gap:8px;align-items:center;min-width:0;padding:4px 0;border:0;color:#a8bcb6;background:transparent;cursor:pointer;text-align:left}.room-tree-main>i{display:grid;place-items:center;width:27px;height:27px;border-radius:7px;color:#5cdbb0;background:#163029;font-style:normal;font-size:12px}.room-tree-main>i.folder{color:#e0b766;background:#302919}.room-tree-main span,.room-tree-main b,.room-tree-main small{display:block;min-width:0}.room-tree-main b{overflow:hidden;color:inherit;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.room-tree-main small{margin-top:3px;color:#536b64;font-size:7px;white-space:nowrap}.room-tree-main.editing,.macro-tree-main.editing{cursor:text}.room-tree-main input,.macro-tree-main input{width:100%;min-width:0;padding:7px 8px;border:1px solid #54d8ab;border-radius:6px;outline:none;color:#e1f0ec;background:#091815;font:700 9px Manrope;box-shadow:0 0 0 2px #54d8ab1a}.tree-row-actions{display:flex;gap:3px;align-items:center}.tree-row-actions em{display:grid;place-items:center;min-width:18px;height:18px;border-radius:9px;color:#6d8a81;background:#172b26;font-style:normal;font-size:7px;font-weight:800}.tree-rename{display:grid;place-items:center;width:23px;height:23px;padding:0;border:0;border-radius:6px;color:#678079;background:transparent;cursor:pointer;font-size:11px}.tree-rename:hover{color:#72e1bb;background:#1b342e}.room-tree-children{position:relative;margin-left:12px;padding-left:8px;border-left:1px solid #29423b}.room-tree-children:before{content:"";position:absolute;top:0;left:-1px;width:8px;height:22px;border-bottom:1px solid #29423b}.macro-tree{display:flex;flex-direction:column;gap:5px}.macro-tree-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:4px;align-items:center;padding:5px;border:1px solid #27382f;border-radius:9px;background:#121f19}.macro-tree-row.active{border-color:#6b5c38;background:#282318}.macro-tree-main{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;align-items:center;min-width:0;padding:0;border:0;color:#b9c9c4;background:transparent;cursor:pointer;text-align:left}.macro-tree-main>i{display:grid;place-items:center;width:29px;height:29px;border-radius:7px;color:#edc46f;background:#332b19;font-style:normal;font-size:11px;font-weight:800}.macro-tree-main span,.macro-tree-main b,.macro-tree-main small{display:block;min-width:0}.macro-tree-main b{overflow:hidden;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.macro-tree-main small{margin-top:3px;color:#665e48;font-size:7px}.macro-use{white-space:nowrap}.device-card{display:grid;grid-template-columns:40px 1fr 20px;gap:10px;padding:13px;margin:10px 0;border:1px solid #253a37;border-radius:12px;background:#101f1e;cursor:grab}.device-card:active{cursor:grabbing}.device-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;background:#17322d;color:#5de1b5;font-size:20px}.device-icon.output{color:#ffca69;background:#322918}.device-card b,.device-card span,.device-card small{display:block}.device-card b{font-size:13px}.device-card span{color:#778d89;font-size:11px;margin:3px 0 7px}.device-card small{color:#8aa09c;font-size:10px}.device-card small i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#51daa6;margin-right:5px}.device-card button{border:0;color:#607570;background:transparent;cursor:pointer}.hint{display:flex;flex-direction:column;gap:6px;margin-top:25px;padding:13px;border-left:2px solid #314a45;color:#718783;font-size:11px}.hint b{color:#a8bcb8}.canvas{position:relative;background:radial-gradient(circle at 50% 50%,#112322 0,#081313 70%)}.canvas-label{position:absolute;z-index:5;top:22px;left:26px}.canvas-label h1{font:700 19px Manrope;margin:4px 0}.breadcrumbs{display:flex;gap:4px;align-items:center}.breadcrumbs span{display:flex;align-items:center;gap:4px}.breadcrumbs i{color:#3d5b54;font-style:normal}.breadcrumbs button{padding:0;border:0;color:#5de1b5;background:transparent;cursor:pointer;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.breadcrumbs button:hover{color:#a0f2d5}.statusbar{position:absolute;z-index:5;bottom:17px;left:50%;transform:translate(-50%);display:flex;gap:8px;align-items:center;max-width:70%;padding:9px 14px;border:1px solid #28423d;border-radius:99px;color:#94aaa5;background:#0c1d1beb;font-size:11px}.status-check{color:#5de1b5}.dx-node{position:relative;display:block;min-width:205px;padding:13px 15px 12px;border:1px solid #35504b;border-radius:13px;background:#112321;box-shadow:0 14px 30px #00000047}.dx-node.selected{border-color:#5de1b5;box-shadow:0 0 0 2px #5de1b51f,0 14px 30px #00000047}.node-header{display:flex;align-items:center;gap:10px;min-height:40px}.node-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:10px;color:#5de1b5;background:#18332e;font-size:16px;font-weight:800}.block-node .node-icon{color:#ffcc74;background:#332a1b;font-size:11px}.dx-node strong,.dx-node small{display:block}.dx-node strong{margin:3px 0;font-size:12px}.dx-node small{color:#627a75;font-size:7px}.node-ports{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:7px}.port-row{display:flex;align-items:center;gap:5px;height:23px;color:#9cafaa;font-size:9px}.output-port{justify-content:flex-end;text-align:right}.port-row small{font-size:6px;text-transform:uppercase}.typed-handle{width:12px!important;height:12px!important;border:3px solid #10201e!important;background:#5de1b5!important}.container-node{min-width:225px;border-color:#5b5040;background:linear-gradient(145deg,#162922,#1b2017)}.container-node .node-icon{color:#ffd176;background:#3a2e18}.container-node:after{content:"DOPPIO CLIC PER APRIRE";display:block;margin-top:8px;padding-top:7px;border-top:1px solid rgba(255,209,118,.12);color:#75684f;font-size:6px;letter-spacing:.12em;text-align:center}.hierarchy-link-badge{position:absolute;top:-10px;right:-10px;display:grid;place-items:center;min-width:28px;height:21px;padding:0 6px;border:2px solid #10201e;border-radius:11px;color:#10201e;background:#78d8ff;box-shadow:0 4px 12px #00000059;font-size:8px;font-weight:900}.hierarchy-boundary-node{min-width:245px;max-width:285px;border-color:#407b8e;background:linear-gradient(145deg,#11282d,#0f2025);box-shadow:0 0 0 1px #78d8ff14,0 15px 35px #00000059}.hierarchy-boundary-node .node-icon{color:#78d8ff;background:#173943}.hierarchy-boundary-node .node-header strong{max-width:205px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hierarchy-boundary-node .eyebrow{color:#78d8ff}.hierarchy-boundary-node.enter{border-left:3px solid #78d8ff}.hierarchy-boundary-node.exit{border-right:3px solid #78d8ff}.hierarchy-boundary-node .node-ports{margin-top:4px}.hierarchy-boundary-node .port-row{color:#84b8c6}.react-flow__edge-text{letter-spacing:.03em}.react-flow__edge-textbg{stroke:#294b52;stroke-width:1px}.node-context-menu{position:fixed;z-index:1200;width:230px;padding:8px;border:1px solid #36524b;border-radius:11px;color:#baccc7;background:#0d1c1a;box-shadow:0 18px 50px #0000008c}.node-context-menu>span,.node-context-menu>b{display:block;padding:3px 7px}.node-context-menu>span{color:#536d66;font-size:7px;font-weight:800;letter-spacing:.11em}.node-context-menu>b{margin-bottom:6px;overflow:hidden;color:#d2e2de;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.node-context-menu button{width:100%;margin:2px 0;padding:9px;border:0;border-radius:7px;color:#9fc1b8;background:#162a26;cursor:pointer;font-size:9px;font-weight:700;text-align:left}.node-context-menu button:hover{color:#d8ebe5;background:#204039}.node-context-menu button:disabled{cursor:not-allowed;opacity:.35}.node-context-menu small{display:block;padding:6px 7px 3px;color:#587069;font-size:7px;line-height:1.4}.react-flow__edge-path{stroke:#53e6b3;stroke-width:2}.react-flow__controls{border:1px solid #29413e;border-radius:8px;overflow:hidden;box-shadow:none}.react-flow__controls-button{color:#9ab0ab;background:#122321;border-bottom-color:#29413e}.react-flow__controls-button:hover{background:#1a302d}.react-flow__controls-button svg{fill:currentColor}.react-flow__minimap{border:1px solid #29413e;border-radius:8px;background:#0c1b1a}.signal-colors .signal-Boolean small{color:#55e3b2}.signal-colors .signal-Integer small{color:#74a7ff}.signal-colors .signal-Float small{color:#b38cff}.signal-colors .signal-Percentage small{color:#ffbd59}.signal-colors .signal-Temperature small{color:#ff6f61}.signal-colors .signal-Humidity small{color:#43c9e7}.signal-colors .signal-Power small{color:#f28bd2}.signal-colors .signal-Energy small{color:#d7e35b}.signal-colors .signal-Event small{color:#fff}.signal-colors .signal-String small{color:#9aa9a6}.signal-colors .typed-handle.signal-Boolean{background:#55e3b2!important}.signal-colors .typed-handle.signal-Integer{background:#74a7ff!important}.signal-colors .typed-handle.signal-Float{background:#b38cff!important}.signal-colors .typed-handle.signal-Percentage{background:#ffbd59!important}.signal-colors .typed-handle.signal-Temperature{background:#ff6f61!important}.signal-colors .typed-handle.signal-Humidity{background:#43c9e7!important}.signal-colors .typed-handle.signal-Power{background:#f28bd2!important}.signal-colors .typed-handle.signal-Energy{background:#d7e35b!important}.signal-colors .typed-handle.signal-Event{background:#fff!important}.signal-colors .typed-handle.signal-String{background:#9aa9a6!important}.signal-legend{position:absolute;z-index:5;top:22px;right:22px;display:flex;flex-wrap:wrap;gap:7px 11px;align-items:center;max-width:55%;padding:8px 11px;border:1px solid #29413e;border-radius:9px;color:#829792;background:#091816eb;font-size:8px}.signal-legend b{color:#bdcfca;font-size:9px}.signal-legend span{display:flex;align-items:center;gap:4px}.signal-legend i{width:7px;height:7px;border-radius:50%;box-shadow:0 0 7px currentColor}.inspector h2{margin-bottom:20px}.empty-properties p{color:#728783;font-size:11px;line-height:1.5}.inspector-divider{height:1px;margin:25px 0;background:#223432}.block-description{margin:10px 0 16px;color:#758a86;font-size:10px;line-height:1.45}.field{display:block;margin:14px 0}.field>span,.property-readonly>span{display:block;margin-bottom:6px;color:#819792;font-size:10px;font-weight:600}.field input,.field select{width:100%;padding:10px;border:1px solid #2b413d;border-radius:8px;outline:none;color:#d9e8e4;background:#101f1e;font:inherit;font-size:12px}.field input:focus,.field select:focus{border-color:#55dbae;box-shadow:0 0 0 2px #55dbae1a}.field-with-unit{position:relative}.field-with-unit input{padding-right:40px}.field-with-unit i{position:absolute;right:11px;top:10px;color:#607873;font-style:normal;font-size:10px}.property-readonly{display:grid;grid-template-columns:1fr auto;align-items:center;padding:9px 0;border-bottom:1px solid #1d302d}.property-readonly>span{margin:0}.property-readonly b{color:#b9cbc7;font-size:10px;font-weight:600}.toggle-field{display:flex;align-items:center;justify-content:space-between;margin:15px 0;color:#91a5a1;font-size:11px;cursor:pointer}.toggle-field input{position:absolute;opacity:0;pointer-events:none}.toggle-field i{position:relative;width:36px;height:20px;border-radius:99px;background:#263a37;transition:.2s}.toggle-field i:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#718681;transition:.2s}.toggle-field input:checked+i{background:#2b745e}.toggle-field input:checked+i:after{left:19px;background:#62e4b8}.property-note{margin:17px 0 0;color:#5f7570;font-size:9px;line-height:1.45}.relay{display:flex;gap:13px;align-items:center;padding:15px;border:1px solid #2a3b39;border-radius:12px;background:#101e1d}.relay>span{width:42px;height:42px;border-radius:50%;background:#2b3836;box-shadow:inset 0 0 0 8px #182421;transition:.2s}.relay.on>span{background:#ffd36f;box-shadow:0 0 25px #ffd36f73,inset 0 0 0 8px #6a5930}.relay b,.relay small{display:block}.relay small{color:#758a86;font-size:9px;margin-top:4px;letter-spacing:.1em}.relay.on small{color:#ffd36f}.test-button{width:100%;margin-top:12px;color:#071311;background:#55e3b2}.explain{color:#6f8581;font-size:11px;line-height:1.55}.log{margin-top:28px}.log p{display:grid;grid-template-columns:55px 1fr;gap:6px;margin:9px 0;color:#9bb0ac;font-size:10px;line-height:1.35}.log time{color:#506762}.open-container-button{width:100%;margin-top:16px;padding:10px;border:1px solid #645637;border-radius:8px;color:#f0c86e;background:#2c2618;cursor:pointer;font-size:10px;font-weight:800}.auth-shell{display:grid;grid-template-columns:minmax(430px,44%) 1fr;width:100vw;height:100vh;min-height:680px;background:#091413}.auth-story{position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:36px 46px;border-right:1px solid #203532;background:radial-gradient(circle at 25% 75%,rgba(49,139,111,.22),transparent 38%),linear-gradient(145deg,#0d211e,#071210 68%)}.auth-story:after{content:"";position:absolute;right:-150px;bottom:-140px;width:430px;height:430px;border:1px solid rgba(84,226,178,.12);border-radius:50%;box-shadow:0 0 0 55px #54e2b206,0 0 0 110px #54e2b205}.auth-brand{position:relative;z-index:1;width:min(390px,100%);padding:10px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:17px;background:#fff;box-shadow:0 18px 45px #00000047}.auth-brand img{display:block;width:100%;height:auto;border-radius:10px}.story-copy{position:relative;z-index:1;max-width:490px}.story-copy h1{margin:10px 0 18px;font:700 clamp(35px,4vw,55px)/1.08 Manrope;letter-spacing:-.035em}.story-copy>p{max-width:460px;color:#829c95;font-size:14px;line-height:1.65}.story-copy ul{margin:27px 0 0;padding:0;list-style:none}.story-copy li{margin:11px 0;color:#a6bbb5;font-size:12px}.story-copy li i{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:8px;border-radius:50%;color:#55e3b2;background:#17322b;font-style:normal}.auth-version{position:relative;z-index:1;color:#48625b;font-size:9px}.auth-panel{display:grid;place-items:center;overflow:auto;padding:35px}.auth-card{width:min(410px,100%);padding:35px 38px;border:1px solid #233936;border-radius:18px;background:#0d1b1a;box-shadow:0 30px 70px #0000004d}.auth-card h2{margin:7px 0;font:700 27px Manrope}.auth-card>p{margin:0 0 21px;color:#718781;font-size:11px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:20px;padding:4px;border-radius:9px;background:#071312}.auth-tabs button{padding:9px;border:0;border-radius:6px;color:#667e77;background:transparent;cursor:pointer;font-size:11px;font-weight:700}.auth-tabs button.active{color:#cde0db;background:#1a2e2a}.auth-field{display:block;margin:13px 0}.auth-field span{display:block;margin-bottom:6px;color:#8aa09a;font-size:10px;font-weight:600}.auth-field input{width:100%;padding:11px 12px;border:1px solid #2a413d;border-radius:8px;outline:none;color:#d9e8e4;background:#101f1e;font:inherit;font-size:12px}.auth-field input:focus{border-color:#55dbae;box-shadow:0 0 0 2px #55dbae1a}.auth-check{display:flex;align-items:center;gap:8px;margin:12px 0;color:#748a84;font-size:9px;cursor:pointer}.auth-check input{position:absolute;opacity:0}.auth-check i{display:grid;place-items:center;width:15px;height:15px;border:1px solid #39504a;border-radius:4px;background:#111f1d}.auth-check input:checked+i{border-color:#55e3b2;background:#55e3b2}.auth-check input:checked+i:after{content:"✓";color:#071311;font-size:10px;font-weight:900}.auth-error{margin:12px 0;padding:9px 11px;border:1px solid rgba(255,111,97,.3);border-radius:7px;color:#ff9187;background:#ff6f6112;font-size:10px}.auth-submit{width:100%;margin-top:8px;padding:12px;border:0;border-radius:9px;color:#071311;background:#55e3b2;cursor:pointer;font:700 11px Manrope}.auth-submit:disabled{cursor:wait;opacity:.6}.local-account-note{display:flex;flex-direction:column;gap:4px;margin-top:20px;padding:11px;border-left:2px solid #2e5d50;color:#5f7770;background:#0b1716;font-size:8px;line-height:1.45}.local-account-note b{color:#89a099}.auth-success{margin:12px 0;padding:9px 11px;border:1px solid rgba(85,227,178,.3);border-radius:7px;color:#71e9c0;background:#55e3b212;font-size:10px}.verification-receipt{padding:20px 0 5px;text-align:center}.mail-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 16px;border-radius:18px;color:#55e3b2;background:#17342e;font-size:25px}.verification-receipt h2{margin-bottom:10px}.verification-receipt>p{color:#7f958f;font-size:11px;line-height:1.6}.verification-receipt>p b{color:#c0d2cd}.verification-receipt>small{display:block;margin-top:14px;color:#536b65;font-size:8px;line-height:1.5}.dev-verify-link{display:block;margin:16px 0 7px;padding:11px;border:1px dashed #39735f;border-radius:8px;color:#69e1b7;background:#55e3b20d;font-size:10px;font-weight:700;text-decoration:none}.auth-secondary{width:100%;margin-top:8px;padding:12px;border:0;border-radius:9px;color:#a9beb8;background:#182a27;cursor:pointer;font:700 11px Manrope}.project-file-input{display:none}.project-modal-backdrop{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:34px;background:#020908c7;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.project-modal{display:flex;flex-direction:column;width:min(930px,94vw);max-height:min(760px,91vh);overflow:hidden;border:1px solid #2b4640;border-radius:18px;background:#0b1917;box-shadow:0 35px 90px #0009}.project-modal>header{display:flex;justify-content:space-between;padding:25px 27px 20px;border-bottom:1px solid #213733}.project-modal h2{margin:5px 0 3px;font:700 24px Manrope}.project-modal header p{margin:0;color:#728983;font-size:11px}.modal-close{align-self:flex-start;width:34px;height:34px;border:0;border-radius:9px;color:#819690;background:#172925;cursor:pointer;font-size:22px}.project-create{display:grid;grid-template-columns:1fr auto auto;gap:9px;padding:17px 27px;border-bottom:1px solid #1d302d;background:#0d1d1a}.project-create input{min-width:0;padding:11px 13px;border:1px solid #304a44;border-radius:9px;outline:none;color:#dceae6;background:#101f1d;font:inherit}.project-create input:focus{border-color:#55dbae}.project-create button{padding:10px 14px;border:0;border-radius:9px;cursor:pointer;font-weight:700}.project-list{min-height:190px;overflow:auto;padding:13px 27px 20px}.project-empty{padding:52px 20px;color:#6c837d;text-align:center;font-size:12px}.project-row{display:grid;grid-template-columns:42px minmax(180px,1fr) auto auto;gap:12px;align-items:center;margin:8px 0;padding:13px;border:1px solid #233b36;border-radius:11px;background:#0f201d}.project-row.current{border-color:#397562;background:#112720}.project-symbol{display:grid;place-items:center;width:39px;height:39px;border-radius:10px;color:#0b1917;background:#55e3b2;font-size:10px;font-weight:900}.project-meta{min-width:0}.project-meta input{display:block;width:100%;padding:4px 5px;border:1px solid transparent;border-radius:5px;outline:none;color:#c9dad5;background:transparent;font:700 12px Manrope}.project-meta input:hover,.project-meta input:focus{border-color:#345049;background:#0b1917}.project-meta small{display:block;margin:3px 5px 0;color:#5e756f;font-size:8px}.current-badge{padding:5px 7px;border-radius:99px;color:#63dfb6;background:#18372e;font-size:7px;font-weight:800;letter-spacing:.08em}.project-row-actions{display:flex;gap:5px}.project-row-actions button{padding:7px 9px;border:0;border-radius:7px;color:#9db1ac;background:#1a2e2a;cursor:pointer;font-size:9px;font-weight:700}.project-row-actions button:hover{color:#d8e8e4;background:#25413b}.project-row-actions button.danger{color:#d18a83;background:#2a1d1c}.project-row-actions button.danger:hover{color:#ffaaa1;background:#412421}.project-modal>footer{display:flex;gap:8px;align-items:center;padding:13px 27px;border-top:1px solid #213733;color:#627872;background:#091512;font-size:9px}.project-modal footer b{color:#61dfb5}.project-modal footer small{margin-left:auto;color:#506760}.hierarchy-dialog-backdrop{z-index:1300}.hierarchy-dialog{width:min(720px,92vw);overflow:hidden;border:1px solid #31554b;border-radius:18px;background:#0b1917;box-shadow:0 35px 90px #000000a6}.hierarchy-dialog>header{display:flex;justify-content:space-between;padding:24px 26px 19px;border-bottom:1px solid #203833}.hierarchy-dialog h2{margin:5px 0 3px;font:700 23px Manrope}.hierarchy-dialog header p{margin:0;color:#708680;font-size:10px}.hierarchy-route{display:flex;flex-wrap:wrap;gap:5px;padding:11px 26px;border-bottom:1px solid #1d302c;color:#6e8b83;background:#0a1614;font-size:8px;font-weight:700}.hierarchy-route span{display:flex;gap:5px}.hierarchy-route i{color:#3c5a52;font-style:normal}.hierarchy-form{display:grid;grid-template-columns:1fr 85px 1fr;gap:13px;align-items:end;padding:22px 26px}.hierarchy-form label>span{display:block;margin-bottom:7px;color:#7d958f;font-size:9px;font-weight:700}.hierarchy-form select{width:100%;min-width:0;padding:10px;border:1px solid #2c4640;border-radius:8px;outline:none;color:#d3e3df;background:#10211e;font:inherit;font-size:9px}.hierarchy-form select:focus{border-color:#54d8ab}.hierarchy-arrow{padding-bottom:11px;color:#65bfa2;font-size:8px;font-weight:800;text-align:center}.hierarchy-existing{max-height:220px;overflow:auto;padding:2px 26px 18px}.hierarchy-existing>p{padding:16px;border:1px dashed #284039;border-radius:8px;color:#5f7770;font-size:9px;text-align:center}.hierarchy-existing article{display:grid;grid-template-columns:1fr auto;gap:9px;align-items:center;margin-top:8px;padding:9px 10px;border:1px solid #263d37;border-radius:8px;background:#0e201c}.hierarchy-existing article>div{display:grid;grid-template-columns:1fr auto 1fr auto;gap:7px;align-items:center;min-width:0}.hierarchy-existing article b{overflow:hidden;color:#9fb5af;font-size:7px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.hierarchy-existing article i{color:#5dd9b0;font-style:normal}.hierarchy-existing article small{padding:3px 5px;border-radius:5px;color:#73c7ab;background:#17342c;font-size:6px}.hierarchy-existing article button{padding:6px 7px;border:0;border-radius:6px;color:#d98981;background:#2e201e;cursor:pointer;font-size:7px}.hierarchy-dialog>footer{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:14px 26px;border-top:1px solid #203833;background:#091512}.hierarchy-dialog footer>small{max-width:340px;color:#526a63;font-size:7px;line-height:1.4}.hierarchy-dialog footer>div{display:flex;gap:7px}.hierarchy-dialog footer button{padding:9px 12px;border:0;border-radius:8px;cursor:pointer;font-size:9px;font-weight:800}.hierarchy-dialog footer button:disabled{cursor:not-allowed;opacity:.35}@media(max-width:1200px){.app-shell{grid-template-columns:240px 1fr 260px}.brand{width:218px}}.device-group{margin:12px 0 17px;padding-top:8px;border-top:1px solid #1d302d}.device-group>h3{margin:0 2px 7px;color:#9eb4ae;font-size:10px}.device-group>h3 span{display:block;margin-top:3px;color:#526a64;font-size:7px;font-weight:500}.device-group .device-card{margin:6px 0}.gateway-inventory-card{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;margin:6px 0;padding:13px;border:1px solid #31554b;border-radius:12px;color:#b9d2cb;background:#122620;cursor:pointer;text-align:left}.gateway-inventory-card:hover{border-color:#51d8aa;background:#153028}.gateway-inventory-card b,.gateway-inventory-card span,.gateway-inventory-card small{display:block}.gateway-inventory-card b{font-size:12px}.gateway-inventory-card span{margin:3px 0 7px;color:#778d89;font-size:10px}.gateway-inventory-card small{color:#8aa09c;font-size:9px}.gateway-inventory-card small i{display:inline-block;width:6px;height:6px;margin-right:5px;border-radius:50%;background:#697a76}.gateway-inventory-card small i.online{background:#51daa6;box-shadow:0 0 7px #51daa6a6}.gateway-inventory-card small i.offline{background:#d76b62;box-shadow:0 0 7px #d76b6273}.gateway-inventory-statuses{display:flex!important;flex-wrap:wrap;gap:5px 9px;align-items:center}.gateway-inventory-card .gateway-inventory-statuses>span{display:inline-flex;gap:0;align-items:center;margin:0;color:#8aa09c;font-size:9px}.gateway-inventory-card .gateway-inventory-statuses .gateway-inventory-ip{color:#637a74}.gateway-inventory-card em{align-self:start;padding:4px 6px;border:1px solid #36584f;border-radius:999px;color:#7da99c;font-size:6px;font-style:normal;font-weight:800;text-transform:uppercase;white-space:nowrap}.hmi-open-button{display:flex;gap:6px;align-items:center;color:#8bdcff;background:#132c34;box-shadow:inset 0 0 0 1px #285563}.hmi-open-button span{font-size:14px}.hmi-modal-backdrop{position:fixed;z-index:2100;inset:0;display:grid;place-items:center;padding:12px;background:#020808e0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hmi-editor{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(1560px,98vw);height:min(930px,97vh);overflow:hidden;border:1px solid #31554c;border-radius:20px;background:#091513;box-shadow:0 38px 110px #000000b8}.hmi-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:18px 23px 14px;border-bottom:1px solid #203732;background:#0b1917}.hmi-header h2{margin:3px 0 2px;font:700 23px Manrope}.hmi-header p{margin:0;color:#68817a;font-size:9px}.hmi-header-actions{display:flex;gap:9px;align-items:center}.hmi-header-actions a{padding:9px 11px;border:1px solid #30574d;border-radius:8px;color:#7ad8b8;background:#112620;font-size:8px;font-weight:800;text-decoration:none}.hmi-toolbar{display:grid;grid-template-columns:1fr auto auto;gap:20px;align-items:center;min-height:52px;padding:8px 18px;border-bottom:1px solid #20352f;background:#0d1c19}.hmi-screens{display:flex;gap:5px;min-width:0;overflow:auto}.hmi-screens button{padding:8px 11px;border:1px solid #29423b;border-radius:7px;color:#718a83;background:#10201d;cursor:pointer;font-size:8px;font-weight:700;white-space:nowrap}.hmi-screens button.active{border-color:#55d9ac;color:#d8e9e4;background:#17362d}.hmi-toolbar>label{display:flex;gap:8px;align-items:center;color:#7f958f;font-size:8px}.hmi-toolbar input[type=range]{width:95px;accent-color:#56dfb1}.hmi-preview-toggle input{position:absolute;opacity:0}.hmi-preview-toggle i{position:relative;width:30px;height:17px;border-radius:99px;background:#2b3e39}.hmi-preview-toggle i:after{content:"";position:absolute;top:3px;left:3px;width:11px;height:11px;border-radius:50%;background:#788b86;transition:.15s}.hmi-preview-toggle input:checked+i{background:#286e59}.hmi-preview-toggle input:checked+i:after{left:16px;background:#69e3b9}.hmi-layout{display:grid;grid-template-columns:245px minmax(390px,1fr) 290px;min-height:0}.hmi-library,.hmi-properties{min-width:0;overflow:auto;padding:18px;background:#0b1916}.hmi-library{border-right:1px solid #203630}.hmi-properties{border-left:1px solid #203630}.hmi-library h3,.hmi-properties h3{margin:5px 0 14px;font:700 16px Manrope}.hmi-library>article{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center;margin:7px 0;padding:9px;border:1px solid #294139;border-radius:9px;background:#10211d;cursor:grab;-webkit-user-select:none;user-select:none}.hmi-library>article:active{cursor:grabbing}.hmi-library article>i{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;color:#75e0bc;background:#18362d;font:800 11px Manrope}.hmi-library article b,.hmi-library article small{display:block}.hmi-library article b{color:#b9cdc7;font-size:9px}.hmi-library article small{margin-top:2px;color:#5f7770;font-size:7px}.hmi-library article>span{color:#48615a;font-size:10px}.hmi-hardware-note{margin-top:17px;padding:12px;border:1px solid #27473d;border-radius:9px;color:#6d857e;background:#0d201b;font-size:7px;line-height:1.5}.hmi-hardware-note b,.hmi-hardware-note span,.hmi-hardware-note small{display:block}.hmi-hardware-note b{margin-bottom:4px;color:#64d7b1;font-size:8px}.hmi-hardware-note small{margin-top:7px;color:#587068}.hmi-workspace{position:relative;display:grid;place-items:center;min-width:0;overflow:auto;padding:35px;background-color:#071210;background-image:linear-gradient(rgba(91,140,128,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(91,140,128,.06) 1px,transparent 1px);background-size:16px 16px}.hmi-device-frame{position:relative;padding:29px 19px 38px;border:2px solid #40534f;border-radius:24px;background:linear-gradient(145deg,#1d2927,#0b1110 65%);box-shadow:0 28px 65px #0000009e,inset 0 0 0 3px #111b19}.hmi-speaker{position:absolute;top:14px;left:50%;width:36px;height:4px;border-radius:5px;background:#44534f;transform:translate(-50%)}.hmi-usb{position:absolute;bottom:13px;left:50%;color:#4d625c;font-size:6px;font-weight:800;transform:translate(-50%)}.hmi-screen{position:relative;width:284px;height:528px;overflow:hidden;border:1px solid #38504b;border-radius:10px;box-shadow:inset 0 0 20px #00000047,0 0 24px #1e79621f;touch-action:none}.hmi-screen:before{content:"";position:absolute;z-index:0;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:13.2px 13.2px}.hmi-empty{position:absolute;inset:0;display:grid;place-items:center;align-content:center;color:#3f5a53;pointer-events:none}.hmi-empty span{font-size:30px}.hmi-empty b,.hmi-empty small{margin-top:5px;font-size:9px}.hmi-empty small{color:#304a43;font-size:7px}.hmi-rulers{position:absolute;top:17px;left:50%;color:#4e6860;font-size:7px;transform:translate(-50%)}.hmi-rulers i{position:fixed;margin:265px 0 0 190px;font-style:normal;writing-mode:vertical-rl}.hmi-resolution{position:absolute;right:18px;bottom:14px;text-align:right}.hmi-resolution b,.hmi-resolution span{display:block}.hmi-resolution b{color:#779089;font-size:8px}.hmi-resolution span{margin-top:3px;color:#3e5951;font-size:6px}.hmi-widget{position:absolute;z-index:1;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:5px;cursor:move;-webkit-user-select:none;user-select:none}.hmi-widget.selected{z-index:3;outline:2px solid #6ce6bd;outline-offset:2px;box-shadow:0 0 0 1px #071312,0 0 15px #6ce6bd59}.hmi-widget small,.hmi-widget b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hmi-widget-label{display:flex;align-items:center;padding:0 7px;border-color:transparent}.hmi-widget-value{display:grid;align-content:center;padding:5px 8px}.hmi-widget-value small{font-size:.45em;opacity:.62}.hmi-widget-value b{margin-top:2px;font-size:1em}.hmi-widget-indicator{display:grid;grid-template-columns:13px 1fr auto;gap:5px;align-items:center;padding:4px 7px}.hmi-widget-indicator i{width:9px;height:9px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor}.hmi-widget-indicator b{font-size:.62em}.hmi-widget-indicator small{font-size:.52em;opacity:.7}.hmi-widget-bar{display:grid;grid-template:auto auto / 1fr auto;gap:3px 5px;align-content:center;padding:4px 7px}.hmi-widget-bar small,.hmi-widget-bar b{font-size:.55em}.hmi-widget-bar>div{grid-column:1 / 3;height:7px;overflow:hidden;border-radius:6px;background:#ffffff1a}.hmi-widget-bar>div i{display:block;width:68%;height:100%;border-radius:inherit;background:currentColor}.hmi-widget-gauge{display:grid;place-items:center;align-content:center}.hmi-gauge-ring{position:absolute;top:7px;width:60%;aspect-ratio:2/1;overflow:hidden;border:7px solid rgba(255,255,255,.1);border-bottom:0;border-radius:99px 99px 0 0}.hmi-gauge-ring i{position:absolute;bottom:-2px;left:50%;width:40%;height:2px;background:currentColor;transform:rotate(-24deg);transform-origin:left}.hmi-widget-gauge b{margin-top:24px;font-size:.78em}.hmi-widget-gauge small{margin-top:2px;font-size:.44em;opacity:.65}.hmi-widget-chart{padding:5px 7px}.hmi-widget-chart small{font-size:.5em;opacity:.7}.hmi-chart-line{display:flex;gap:3px;align-items:flex-end;height:70%;padding-top:5px}.hmi-chart-line i{flex:1;border-radius:2px 2px 0 0;background:currentColor;opacity:.7}.hmi-chart-line i:nth-child(1){height:30%}.hmi-chart-line i:nth-child(2){height:64%}.hmi-chart-line i:nth-child(3){height:46%}.hmi-chart-line i:nth-child(4){height:82%}.hmi-chart-line i:nth-child(5){height:70%}.hmi-widget-panel{padding:7px;border-color:#ffffff24}.hmi-widget-panel b{font-size:.6em;opacity:.75}.hmi-properties-heading{display:flex;justify-content:space-between;gap:10px}.hmi-properties-heading>div:last-child{display:flex;gap:5px}.hmi-properties-heading button{width:30px;height:30px;border:1px solid #2b4840;border-radius:7px;color:#8da39d;background:#132722;cursor:pointer}.hmi-properties>label,.hmi-property-grid label{display:block;margin:11px 0;color:#81968f;font-size:8px;font-weight:700}.hmi-properties label>span{display:block;margin-bottom:5px}.hmi-properties input:not([type=range]),.hmi-properties select{width:100%;min-width:0;padding:8px;border:1px solid #2b443d;border-radius:7px;outline:0;color:#d0e0dc;background:#10201d;font:inherit;font-size:8px}.hmi-properties input[type=color]{height:35px;padding:3px}.hmi-properties input[type=range]{width:100%;accent-color:#5be0b3}.hmi-property-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hmi-property-grid label{margin:3px 0}.hmi-layers{margin-top:20px;padding-top:13px;border-top:1px solid #243a34}.hmi-layers>b{display:block;margin-bottom:7px;color:#829991;font-size:8px}.hmi-layers button{display:flex;gap:7px;align-items:center;width:100%;margin:5px 0;padding:7px;border:1px solid #294039;border-radius:7px;color:#93aaa3;background:#10201d;cursor:pointer;font-size:8px;text-align:left}.hmi-layers button span{display:grid;place-items:center;width:21px;height:21px;border-radius:5px;color:#61dcb4;background:#18332b;font-weight:800}.hmi-layers small{color:#566f67;font-size:8px}.hmi-delete-screen{width:100%;margin-top:18px;padding:9px;border:1px solid #5b3834;border-radius:8px;color:#db8d85;background:#291b1a;cursor:pointer;font-size:8px;font-weight:800}.hmi-delete-screen:disabled{opacity:.3;cursor:not-allowed}.hmi-footer{display:grid;grid-template-columns:minmax(160px,auto) minmax(230px,1fr) auto;gap:15px;align-items:center;padding:12px 20px;border-top:1px solid #203630;color:#82968f;background:#091411;font-size:8px}.hmi-footer>div{display:flex;gap:7px;align-items:center}.hmi-footer button{padding:9px 12px;border:0;border-radius:8px;cursor:pointer;font-size:8px;font-weight:800}.hmi-footer button:disabled{cursor:not-allowed;opacity:.38}.hmi-deploy-state.success{color:#66dfb7}.hmi-deploy-state.error{color:#f1968d}.hmi-deploy-state.busy .online-dot{background:#f3bd61;box-shadow:0 0 10px #f3bd61}.hmi-target{display:grid;grid-template-columns:auto minmax(140px,330px);gap:8px;align-items:center;justify-content:center;color:#5f7770;font-size:7px;font-weight:800;text-transform:uppercase}.hmi-target select{min-width:0;padding:8px;border:1px solid #2b4840;border-radius:7px;outline:0;color:#a9bdb7;background:#10201d;font:inherit;font-size:8px;text-transform:none}.hmi-deploy-button{color:#071311!important;background:linear-gradient(135deg,#62e4b8,#55b9ff)!important}@media(max-width:1250px){.hmi-layout{grid-template-columns:210px minmax(350px,1fr) 255px}.hmi-library,.hmi-properties{padding:13px}.hmi-screen{width:258px;height:480px}.hmi-open-button{padding-inline:10px!important}.hmi-open-button span{display:none}}.gateway-static-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0}.gateway-static-grid label{min-width:0}.gateway-static-grid input{width:100%;box-sizing:border-box}.gateway-pairing-progress{width:min(460px,100%);min-width:0;margin-top:14px}.gateway-pairing-progress>div:first-child{display:flex;justify-content:space-between;gap:18px;margin-bottom:7px;color:#b8d4cb;font-size:8px}.gateway-pairing-progress>div:first-child b{color:#76e6bd;font-size:10px}.gateway-pairing-progress [role=progressbar]{height:9px;overflow:hidden;border:1px solid #3e6d5e;border-radius:999px;background:#0c211b}.account-role-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0 0 16px}.account-role-picker button{display:grid;grid-template-columns:30px 1fr;gap:8px;align-items:center;padding:10px;border:1px solid #293f3b;border-radius:9px;color:#82968f;background:#0d1d1b;cursor:pointer;text-align:left}.account-role-picker button.active{border-color:#55dbae;color:#cce0da;background:#132b25;box-shadow:0 0 0 2px #55dbae14}.account-role-picker i{display:grid;place-items:center;width:29px;height:29px;border-radius:7px;color:#58d9ad;background:#17332b;font-style:normal}.account-role-picker b,.account-role-picker small{display:block}.account-role-picker b{font-size:8px}.account-role-picker small{margin-top:2px;color:#61766f;font-size:6px;line-height:1.3}.home-page{--ink:#09232d;--navy:#071b26;--green:#63c53b;--blue:#1598d4;--paper:#f4f7f5;color:var(--ink);background:#f8faf9;overflow:hidden}.home-page a{color:inherit;text-decoration:none}.home-nav{position:absolute;z-index:20;top:0;left:50%;display:flex;align-items:center;justify-content:space-between;width:min(1280px,calc(100% - 64px));height:90px;border-bottom:1px solid rgba(255,255,255,.17);color:#fff;transform:translate(-50%)}.home-brand{display:flex;gap:12px;align-items:center}.home-brand-mark{width:42px;height:42px;border:1px solid rgba(255,255,255,.6);border-radius:11px;background:#fff url(/assets/domusx-dmxp-logos-v2.png) -11px -8px / 123px 82px no-repeat}.home-brand strong,.home-brand small{display:block}.home-brand strong{color:#fff;font:800 20px Manrope;letter-spacing:.08em}.home-brand strong span{color:#65c83d}.home-brand small{margin-top:2px;color:#91a9b3;font-size:7px;letter-spacing:.11em;text-transform:uppercase}.home-nav nav{display:flex;gap:19px}.home-nav nav a{color:#bbcad0;font-size:11px;font-weight:700}.home-nav nav a:hover{color:#fff}.home-button{display:inline-flex;gap:12px;align-items:center;justify-content:center;min-height:49px;padding:0 20px;border:1px solid #78df51;border-radius:8px;color:#092117!important;background:#69cd43;font-size:12px;font-weight:800;box-shadow:0 12px 30px #18643a38;transition:transform .2s,background .2s}.home-button:hover{background:#7bd957;transform:translateY(-2px)}.home-button.compact{min-height:40px;padding:0 15px;font-size:10px}.home-button svg{width:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}.home-hero{position:relative;min-height:790px;color:#fff;background:#061822}.home-hero:after{content:"";position:absolute;inset:0;background:#03111a21;pointer-events:none}.home-hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.95}.home-hero-content{position:relative;z-index:2;width:min(1280px,calc(100% - 64px));margin:auto;padding-top:190px}.home-kicker{display:block;color:#5dbd39;font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.home-kicker i{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:#66cf42;box-shadow:0 0 12px #66cf42}.home-hero h1{max-width:780px;margin:20px 0 22px;color:#fff;font:700 clamp(43px,5.5vw,76px)/1.04 Manrope;letter-spacing:-.045em}.home-hero h1 em{color:#69cd43;font-style:normal}.home-hero-content>p{max-width:620px;margin:0;color:#b6c8d0;font-size:16px;line-height:1.75}.home-hero-actions{display:flex;gap:24px;align-items:center;margin-top:34px}.home-link{padding:12px 0;border-bottom:1px solid #55707b;color:#d7e2e6!important;font-size:12px;font-weight:700}.home-proof{display:flex;gap:0;margin:58px 0 0;padding:0;list-style:none}.home-proof li{min-width:175px;padding:0 26px;border-left:1px solid rgba(255,255,255,.2)}.home-proof li:first-child{padding-left:0;border-left:0}.home-proof b,.home-proof span{display:block}.home-proof b{font:700 13px Manrope}.home-proof span{margin-top:5px;color:#78919b;font-size:9px}.home-intro,.home-devices,.ide-preview{width:min(1280px,calc(100% - 64px));margin:auto;padding:112px 0}.home-section-heading{max-width:720px;margin-bottom:52px}.home-section-heading h2{margin:12px 0 17px;color:var(--ink);font:700 clamp(35px,4vw,55px)/1.06 Manrope;letter-spacing:-.04em}.home-section-heading>p,.split-heading>p{margin:0;color:#62747a;font-size:15px;line-height:1.7}.workflow-strip{display:grid;grid-template-columns:repeat(5,1fr);margin-bottom:80px;border:1px solid #d8e2dd;border-radius:16px;background:#fff;box-shadow:0 18px 55px #12313112}.workflow-strip article{position:relative;min-height:165px;padding:27px;border-left:1px solid #e0e8e4}.workflow-strip article:first-child{border-left:0}.workflow-strip article:not(:last-child):after{content:"→";position:absolute;z-index:2;top:72px;right:-9px;display:grid;place-items:center;width:18px;height:18px;border:1px solid #d8e2dd;border-radius:50%;color:#4cb72b;background:#fff;font-size:9px}.workflow-strip span,.workflow-strip b,.workflow-strip small{display:block}.workflow-strip span{color:#57b934;font:700 10px Manrope}.workflow-strip b{margin-top:24px;font:700 18px Manrope}.workflow-strip small{margin-top:8px;color:#718087;font-size:10px;line-height:1.45}.architecture-card{display:grid;grid-template-columns:.85fr 1.15fr;min-height:575px;overflow:hidden;border-radius:24px;color:#fff;background:#08212c;box-shadow:0 30px 80px #08232d29}.architecture-copy{display:flex;flex-direction:column;justify-content:center;padding:70px;border-right:1px solid #1c3944}.architecture-copy h3{margin:13px 0 22px;font:700 40px/1.1 Manrope;letter-spacing:-.035em}.architecture-copy>p{margin:0;color:#9ab0b8;font-size:14px;line-height:1.75}.architecture-note{display:flex;gap:10px;align-items:center;margin-top:30px;padding-top:24px;border-top:1px solid #23404a;color:#aabcc2;font-size:9px}.architecture-note i{width:8px;height:8px;border-radius:50%;background:#65c83e;box-shadow:0 0 10px #65c83e}.matter-ecosystem-note{display:grid;grid-template-columns:104px 1fr;gap:16px;align-items:center;margin-top:22px;padding:16px;border:1px solid rgba(99,230,184,.3);border-radius:13px;background:linear-gradient(135deg,#63e6b81a,#1ba4df12)}.matter-mark{display:grid;place-items:center;width:104px;min-height:52px;padding:10px 12px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:#071923;box-shadow:0 0 22px #63e6b82b}.matter-mark img{display:block;width:100%;height:auto;object-fit:contain}.matter-ecosystem-note b{color:#e9fffa;font:700 12px Manrope}.matter-ecosystem-note p{margin:5px 0 0;color:#9ab7b5;font-size:10px;line-height:1.55}.matter-assistants{grid-column:2;display:flex;flex-wrap:wrap;gap:7px}.matter-assistants span{padding:6px 9px;border:1px solid #33545a;border-radius:99px;color:#b9d6d5;background:#0a2029;font-size:8px;font-weight:700}.architecture-diagram{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px;background:#0a2632}.diagram-cloud,.diagram-gateway{display:flex;flex-direction:column;align-items:center;min-width:280px;padding:22px;border:1px solid #34515c;border-radius:14px;background:#0d2c38;text-align:center;box-shadow:0 15px 30px #0000002b}.diagram-cloud>span{color:#1ba4df;font-size:30px}.diagram-cloud b,.diagram-gateway b{margin-top:8px;font:700 14px Manrope}.diagram-cloud small,.diagram-gateway small{margin-top:5px;color:#718f9a;font-size:8px}.diagram-line.vertical{position:relative;width:1px;height:52px;background:#2b6975}.diagram-line.vertical span,.diagram-line.split span{position:absolute;top:19px;left:10px;color:#577d87;font-size:7px;white-space:nowrap}.diagram-gateway{flex-direction:row;gap:14px;min-width:310px;text-align:left}.diagram-gateway>span{display:grid;place-items:center;width:45px;height:45px;border:1px solid #4b966c;border-radius:10px;color:#75db51;background:#12382e;font:800 12px Manrope}.diagram-gateway b{margin:0}.diagram-line.split{position:relative;width:74%;height:55px;border-bottom:1px solid #2c6671}.diagram-line.split:before{content:"";position:absolute;top:0;left:50%;height:55px;border-left:1px solid #2c6671}.diagram-line.split span{top:20px;left:calc(50% + 10px)}.diagram-devices{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%}.diagram-devices>div{display:flex;flex-direction:column;align-items:center;padding:14px 8px;border:1px solid #284b56;border-radius:10px;background:#0c2a35}.diagram-devices i{color:#23a7df;font-style:normal;font-size:17px}.diagram-devices b{margin-top:7px;font-size:9px}.diagram-devices small{margin-top:3px;color:#5c7b85;font-size:7px}.home-devices{padding-top:40px}.split-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:80px;align-items:end;max-width:none}.split-heading h2{margin-bottom:0}.device-showcase{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.device-showcase article{min-height:265px;padding:27px;border:1px solid #dce5e1;border-radius:15px;background:#fff;transition:transform .2s,border-color .2s,box-shadow .2s}.device-showcase article:hover{border-color:#a9cbb5;box-shadow:0 18px 45px #14413017;transform:translateY(-5px)}.device-symbol{display:grid;place-items:center;width:56px;height:56px;margin-bottom:28px;border:1px solid #cce0d2;border-radius:13px;color:#2c9e45;background:#edf7ef;font:800 12px Manrope}.device-showcase article>span{color:#438e5b;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.device-showcase h3{margin:10px 0;font:700 17px Manrope}.device-showcase p{margin:0;color:#6b7d82;font-size:11px;line-height:1.6}.roadmap-note{margin:20px 0 0;color:#809094;font-size:9px}.dmxp-section{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding:115px max(32px,calc((100vw - 1280px)/2));color:#fff;background:#071c28}.dmxp-protocol-logo{display:block;width:min(260px,70%);height:auto;margin-bottom:20px;border-radius:12px}.dmxp-logo{display:block;margin-bottom:28px;color:#fff;font:800 48px Manrope;letter-spacing:.04em}.dmxp-logo span{color:#179fdd}.dmxp-copy h2,.security-copy h2{margin:12px 0 22px;font:700 clamp(35px,4vw,53px)/1.06 Manrope;letter-spacing:-.04em}.dmxp-copy>p{max-width:580px;margin:0;color:#9ab0ba;font-size:14px;line-height:1.75}.dmxp-section .home-kicker{color:#25a9df}.service-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.service-list span{padding:8px 11px;border:1px solid #284b5c;border-radius:99px;color:#91b7c5;background:#0b2633;font-size:8px;font-weight:700}.protocol-stack{padding:28px;border:1px solid #2a4754;border-radius:20px;background:#0a2531;box-shadow:0 30px 70px #00000038}.protocol-stack>div{margin-bottom:9px;padding:24px;border-radius:12px}.protocol-stack small,.protocol-stack b,.protocol-stack span{display:block}.protocol-stack small{color:#4e7c8f;font-size:7px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.protocol-stack b{margin-top:7px;font:700 17px Manrope}.protocol-stack span{margin-top:6px;color:#7e9ba6;font-size:9px}.stack-top{border:1px solid #168fc1;background:#0a3142}.stack-middle{border:1px solid #416657;background:#102d2b}.stack-transports{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0!important}.stack-transports>div{padding:15px 9px;border:1px solid #2d4650;border-radius:9px;background:#0b202a;text-align:center}.stack-transports i{color:#31aadb;font-style:normal;font-size:17px}.stack-transports b{font-size:9px}.stack-transports small{margin-top:5px;letter-spacing:0;text-transform:none}.protocol-stack>p{display:flex;gap:8px;align-items:center;margin:19px 4px 2px;color:#6b8a95;font-size:8px}.protocol-stack>p i{width:7px;height:7px;border-radius:50%;background:#56c037}.dmxp-benefits{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px}.dmxp-benefits article{display:grid;grid-template-columns:29px 1fr;gap:13px;min-height:165px;padding:23px;border:1px solid #284754;border-radius:12px;background:#0a2430}.dmxp-benefits article>span{display:grid;place-items:center;width:29px;height:29px;border:1px solid #237ca0;border-radius:7px;color:#49bbe8;background:#0b3142;font:800 8px Manrope}.dmxp-benefits h3{margin:4px 0 9px;color:#d8e7ec;font:700 12px/1.25 Manrope}.dmxp-benefits p{margin:0;color:#7896a1;font-size:8px;line-height:1.6}.dmxp-security-note{grid-column:1 / -1;display:grid;grid-template-columns:42px 1fr auto;gap:16px;align-items:center;padding:22px 25px;border:1px solid #426b58;border-radius:12px;background:#0d2b2c}.dmxp-security-note>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #4a916c;border-radius:50%;color:#6bd89e;background:#123b30;font-size:18px}.dmxp-security-note b{display:block;color:#cee4dc;font:700 11px Manrope}.dmxp-security-note p{margin:5px 0 0;color:#7f9e98;font-size:8px;line-height:1.55}.dmxp-security-note small{max-width:250px;padding-left:18px;border-left:1px solid #315049;color:#617d77;font-size:7px;line-height:1.5}.security-section{padding:115px max(32px,calc((100vw - 1280px)/2));color:#fff;background:#0a1217}.security-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}.security-home-logo{display:block;width:176px;height:176px;margin-bottom:24px;overflow:hidden;border:1px solid rgba(217,74,67,.3);border-radius:18px;background:#fff;box-shadow:0 18px 45px #0000004d;transition:transform .25s,border-color .25s}.security-home-logo:hover{border-color:#d94a43;transform:translateY(-4px)}.security-home-logo img{display:block;width:100%;height:100%;object-fit:contain}.security-badge{display:inline-block;margin-bottom:25px;padding:7px 10px;border:1px solid #6c3e40;border-radius:4px;color:#e58d86;background:#25191b;font-size:7px;font-weight:800;letter-spacing:.13em}.security-copy .home-kicker{color:#d95b55}.security-copy>p{max-width:630px;color:#98a6aa;font-size:14px;line-height:1.75}.security-features{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:31px 0 25px}.security-features span{display:flex;gap:10px;align-items:center;padding:13px;border:1px solid #29383e;border-radius:8px;color:#bec8cb;background:#101d22;font-size:10px;font-weight:700}.security-features i{color:#e06d66;font-style:normal}.security-copy>small{display:block;color:#66757a;font-size:8px;line-height:1.5}.security-visual{position:relative;height:490px;border:1px solid #293941;border-radius:24px;background:#0d1a20}.security-visual:before,.security-visual:after{content:"";position:absolute;top:50%;left:50%;border:1px solid #263941;border-radius:50%;transform:translate(-50%,-50%)}.security-visual:before{width:330px;height:330px}.security-visual:after{width:220px;height:220px}.security-core{position:absolute;z-index:2;top:50%;left:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;width:150px;height:150px;border:1px solid #8b4947;border-radius:50%;background:#271b1e;transform:translate(-50%,-50%);box-shadow:0 0 45px #cf504821}.security-core span{display:grid;place-items:center;width:43px;height:43px;border-radius:10px;color:#fff;background:#bc4e48;font:800 12px Manrope}.security-core b{margin-top:12px;font:700 12px Manrope}.security-core small{margin-top:5px;color:#957d80;font-size:6px}.security-orbit{position:absolute;z-index:3;display:flex;gap:8px;align-items:center;padding:10px 13px;border:1px solid #34434a;border-radius:8px;color:#b8c2c5;background:#121f24;font-size:8px}.security-orbit i{color:#dd625b;font-style:normal}.orbit-one{top:61px;left:50%;transform:translate(-50%)}.orbit-two{top:50%;right:34px;transform:translateY(-50%)}.orbit-three{bottom:60px;left:50%;transform:translate(-50%)}.orbit-four{top:50%;left:34px;transform:translateY(-50%)}.sound-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;align-items:center;padding:115px max(32px,calc((100vw - 1280px)/2));color:#f5efff;background:radial-gradient(circle at 74% 34%,rgba(153,87,255,.2),transparent 34%),linear-gradient(145deg,#100b19,#181026 58%,#0c0913)}.sound-home-logo{display:block;width:176px;height:176px;margin-bottom:24px;overflow:hidden;border:1px solid rgba(155,92,255,.38);border-radius:18px;background:#fff;box-shadow:0 18px 45px #00000052;transition:transform .25s,border-color .25s}.sound-home-logo:hover{border-color:#9b5cff;transform:translateY(-4px)}.sound-home-logo img{display:block;width:100%;height:100%;object-fit:contain}.sound-badge{display:inline-flex;gap:8px;align-items:center;margin-bottom:23px;padding:7px 11px;border:1px solid #68429d;border-radius:99px;color:#d2afff;background:#27183c;font-size:7px;font-weight:800;letter-spacing:.13em}.sound-badge i{color:#bf83ff;font-style:normal;font-size:12px}.sound-copy .home-kicker{color:#a86bf1}.sound-copy h2{margin:13px 0 22px;font:700 clamp(38px,4.2vw,56px)/1.04 Manrope;letter-spacing:-.045em}.sound-copy h2 em{color:#b77afa;font-style:normal}.sound-copy>p{max-width:610px;margin:0;color:#a49aaf;font-size:14px;line-height:1.75}.sound-capabilities{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:30px 0 23px}.sound-capabilities article{display:grid;grid-template-columns:34px 1fr;gap:11px;padding:14px;border:1px solid #38264f;border-radius:10px;background:#221633c7}.sound-capabilities article>i{display:grid;place-items:center;width:33px;height:33px;border-radius:8px;color:#c492ff;background:#392251;font-style:normal}.sound-capabilities b,.sound-capabilities span{display:block}.sound-capabilities b{margin-bottom:4px;color:#e8dcf7;font-size:9px}.sound-capabilities span{color:#8e809d;font-size:7px;line-height:1.5}.sound-copy>small{display:block;max-width:610px;color:#6e6378;font-size:8px;line-height:1.55}.sound-console{overflow:hidden;border:1px solid #513674;border-radius:20px;background:#160e22f5;box-shadow:0 35px 90px #0000005c,0 0 55px #8e4ceb14}.sound-console>header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:17px 20px;border-bottom:1px solid #39274f;background:#1c122a}.sound-console>header>div{display:flex;gap:10px;align-items:center}.sound-console header span small,.sound-console header span b{display:block}.sound-console header small{color:#776887;font-size:6px;letter-spacing:.1em}.sound-console header b{margin-top:3px;color:#e2d7ee;font-size:10px}.sound-console header>i{color:#a875e8;font-size:7px;font-style:normal}.sound-live-dot{width:8px;height:8px;border-radius:50%;background:#b66eff;box-shadow:0 0 13px #b66eff}.sound-now-playing{display:grid;grid-template-columns:58px 1fr 44px;gap:15px;align-items:center;margin:22px;padding:17px;border:1px solid #412c5a;border-radius:13px;background:linear-gradient(135deg,#2e1c43,#21152f)}.sound-cover{display:grid;place-items:center;width:58px;height:58px;border:1px solid #8754c3;border-radius:12px;color:#fff;background:radial-gradient(circle at 35% 30%,#bc7bff,#6831a2 60%,#301843);font:800 12px Manrope;box-shadow:0 12px 28px #00000040}.sound-now-playing small{color:#9273ae;font-size:6px;font-weight:800;letter-spacing:.11em}.sound-now-playing h3{margin:4px 0 2px;color:#f1e7fb;font:700 18px Manrope}.sound-now-playing p{margin:0;color:#8c7b9b;font-size:7px}.sound-now-playing button{display:grid;place-items:center;width:42px;height:42px;border:1px solid #9b65d3;border-radius:50%;color:#1c0d2c;background:#bc7cff;cursor:pointer;font-size:12px;font-weight:800}.sound-scenarios{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:0 22px 18px}.sound-scenarios button{padding:10px 5px;border:1px solid #39274d;border-radius:8px;color:#81728e;background:#191125;cursor:pointer;font-size:7px;font-weight:800}.sound-scenarios button:hover,.sound-scenarios button.active{border-color:#a364e4;color:#f0dfff;background:#3a2353;box-shadow:0 0 0 2px #ad69f114}.sound-zones{display:grid;gap:7px;margin:0 22px 22px}.sound-zones article{display:grid;grid-template-columns:30px 1fr 38px;gap:10px;align-items:center;padding:11px 13px;border:1px solid #312340;border-radius:9px;background:#171020}.sound-zones article.active{border-color:#553873;background:#21142f}.sound-zones article>i{display:grid;place-items:center;width:29px;height:29px;border-radius:7px;color:#a978dd;background:#2c1b3e;font-style:normal}.sound-zones article span b,.sound-zones article span small{display:block}.sound-zones article span b{color:#dfd4e9;font-size:8px}.sound-zones article span small{margin-top:2px;color:#71647e;font-size:6px}.sound-zones article strong{color:#bc83ef;font-size:8px;text-align:right}.sound-zones input{grid-column:2 / 4;width:100%;height:4px;margin-top:-4px;accent-color:#b66cff}.sound-console>footer{display:flex;justify-content:space-between;gap:18px;padding:14px 20px;border-top:1px solid #362449;color:#786887;background:#150e1e;font-size:7px}.sound-console footer span{display:flex;gap:7px;align-items:center}.sound-console footer span i{width:6px;height:6px;border-radius:50%;background:#af6aef;box-shadow:0 0 9px #af6aef}.sound-console footer b{color:#a987c8}.ide-preview{padding-bottom:130px}.fbd-demo{overflow:hidden;border:1px solid #254039;border-radius:20px;background:#081713;box-shadow:0 30px 80px #041c142e}.fbd-top{display:flex;justify-content:space-between;padding:18px 22px;border-bottom:1px solid #223b35;color:#819790;background:#0d201b;font-size:8px}.fbd-top b{color:#69d8b3}.fbd-canvas{height:330px;overflow-x:auto;background-color:#091a16;background-image:radial-gradient(#254238 1px,transparent 1px);background-size:18px 18px}.fbd-stage{position:relative;width:1100px;height:330px;margin:auto}.fbd-canvas .node{position:absolute;z-index:2;width:160px;min-height:110px;padding:15px;border:1px solid #31544a;border-radius:9px;color:#c3d4cf;background:#102721;box-shadow:0 12px 25px #00000040}.node small,.node b,.node span,.node em{display:block}.node small{color:#54caa3;font-size:6px;letter-spacing:.1em}.node b{margin:7px 0 12px;font-size:10px}.node span,.node em{position:relative;margin:5px 0;color:#718982;font-size:7px;font-style:normal}.node em{text-align:right}.node .demo-port{position:absolute;z-index:3;top:50%;width:10px;height:10px;border:2px solid #62d8b0;border-radius:50%;background:#102721;transform:translateY(-50%)}.node .demo-port.input{left:-6px}.node .demo-port.output{right:-6px}.node.logic .demo-port.input.a{top:39px}.node.logic .demo-port.input.b{top:71px}.presence{top:51px;left:40px}.lux{top:191px;left:40px}.logic{top:115px;left:365px}.timer{top:115px;left:650px}.light{top:115px;left:900px}.fbd-stage svg{position:absolute;z-index:1;inset:0;width:1100px;height:330px}.fbd-stage path{fill:none;stroke:#57cfaa;stroke-width:2;vector-effect:non-scaling-stroke}.room-logic-demo{display:grid;grid-template-columns:.9fr 1.1fr;gap:18px;margin-top:24px}.room-tree-panel,.cross-room-panel{min-height:420px;padding:34px;border:1px solid #d8e3de;border-radius:17px;background:#fff;box-shadow:0 15px 45px #143d3012}.room-tree-panel h3{margin:11px 0 10px;font:700 27px Manrope}.room-tree-panel>p{margin:0 0 24px;color:#6d7e83;font-size:10px;line-height:1.6}.room-tree{padding:15px;border:1px solid #e0e8e4;border-radius:11px;background:#f7faf8}.room-tree>div:not(.tree-children),.tree-children>div{display:grid;grid-template-columns:27px 1fr auto;gap:9px;align-items:center;min-height:40px;padding:7px 10px;border-radius:7px;color:#35524c;font-size:9px}.room-tree i{display:grid;place-items:center;width:25px;height:25px;border-radius:6px;color:#30985b;background:#e0f0e5;font-style:normal}.room-tree small{color:#8a9995;font-size:7px}.tree-level.one{margin-left:22px}.tree-level.two{margin-left:44px}.tree-children{position:relative;display:grid;gap:5px;margin-left:66px;padding-left:20px}.tree-children:before{content:"";position:absolute;top:0;bottom:20px;left:5px;border-left:1px solid #b9cec2}.tree-children>div{grid-template-columns:27px 1fr;border:1px solid #dce8e1;background:#fff}.tree-children span b,.tree-children span small{display:block}.tree-children span small{margin-top:2px}.cross-room-panel{display:flex;flex-direction:column;color:#d4e3df;background:#0b1c18;border-color:#29443c}.cross-room-heading{display:flex;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid #263f38}.cross-room-heading span{color:#63d9b0;font-size:8px;font-weight:800;letter-spacing:.12em}.cross-room-heading small{color:#617a73;font-size:7px}.room-flow{display:grid;grid-template-columns:160px 1fr 160px;gap:15px;align-items:center;flex:1}.room-flow article{position:relative;padding:18px;border:1px solid #376055;border-radius:10px;background:#112a23}.room-flow article small,.room-flow article b,.room-flow article span{display:block}.room-flow article small{color:#59c9a4;font-size:6px;letter-spacing:.1em}.room-flow article b{margin:8px 0 13px;font-size:10px}.room-flow article span{color:#769088;font-size:7px}.room-port{position:absolute;top:50%;right:-7px;width:12px;height:12px;border:2px solid #64dcb4;border-radius:50%;background:#112a23;transform:translateY(-50%)}.room-port.left{right:auto;left:-7px}.room-connection{position:relative;display:flex;align-items:center;justify-content:center;height:2px;background:#59d2aa}.room-connection span{position:absolute;bottom:10px;padding:5px 8px;border:1px solid #315248;border-radius:5px;color:#79a398;background:#0c1f1a;font-size:6px;white-space:nowrap}.room-connection i{position:absolute;right:-2px;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;color:#0c201a;background:#63d9b0;font-size:9px;font-style:normal;font-weight:800}.room-result{display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:center;padding:15px;border:1px solid #315349;border-radius:9px;background:#102820}.room-result>i{display:grid;place-items:center;width:33px;height:33px;border-radius:50%;color:#072218;background:#62d9af;font-style:normal;font-weight:800}.room-result b,.room-result span{display:block}.room-result b{margin-bottom:4px;color:#bcd1cb;font-size:8px}.room-result span{color:#6e8880;font-size:7px;line-height:1.45}.home-cta{padding:105px 32px;color:#fff;background:#0b2b2b;text-align:center}.home-cta h2{margin:13px 0 15px;font:700 clamp(36px,4vw,56px) Manrope;letter-spacing:-.04em}.home-cta p{margin:0 0 30px;color:#99b0ad;font-size:14px}.home-footer{display:grid;grid-template-columns:1fr auto 1fr;gap:30px;align-items:center;min-height:120px;padding:24px max(32px,calc((100vw - 1280px)/2));color:#fff;background:#071818}.home-footer p{color:#69817e;font-size:8px;text-align:center}.home-footer>div{display:flex;gap:20px;justify-content:flex-end}.home-footer>div a{color:#829894;font-size:9px;font-weight:700}.account-section{display:grid;grid-template-columns:1.15fr .85fr;gap:90px;align-items:center;padding:115px max(32px,calc((100vw - 1280px)/2));border-top:1px solid #dbe5e0;background:#eef4f1}.account-copy h2{max-width:650px;margin:13px 0 20px;font:700 clamp(36px,4vw,54px)/1.06 Manrope;letter-spacing:-.04em}.account-copy>p{max-width:650px;color:#61747a;font-size:14px;line-height:1.75}.account-copy ul{display:grid;gap:16px;margin:31px 0 0;padding:0;list-style:none}.account-copy li{display:grid;grid-template-columns:29px 1fr;gap:12px;align-items:start;color:#6d7e83;font-size:10px;line-height:1.55}.account-copy li>i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#18752f;background:#d9eddc;font-size:11px;font-style:normal;font-weight:800}.account-copy li b{display:block;margin-bottom:2px;color:#17343a;font-size:11px}.account-card{display:flex;flex-direction:column;align-items:center;padding:48px;border:1px solid #d3e1da;border-radius:20px;background:#fff;box-shadow:0 28px 70px #133e301c;text-align:center}.account-icon{display:grid;place-items:center;width:62px;height:62px;border:1px solid #9cd0a6;border-radius:15px;color:#fff;background:#249447;font:800 16px Manrope}.account-card h3{margin:23px 0 10px;font:700 26px Manrope}.account-card>p{max-width:370px;margin:0 0 26px;color:#718187;font-size:11px;line-height:1.65}.account-login{width:100%}.account-register{margin-top:20px;color:#63747a!important;font-size:10px}.account-register b{color:#248f43}.account-card>small{margin-top:14px;color:#97a3a6;font-size:7px}.consumer-app-section{display:grid;grid-template-columns:1fr .8fr;gap:75px 95px;align-items:center;padding:115px max(32px,calc((100vw - 1280px)/2));color:#e6f3ef;background:radial-gradient(circle at 78% 34%,rgba(43,157,116,.16),transparent 31%),#071916}.consumer-app-section .home-kicker{color:#61ddb0}.consumer-app-copy h2{max-width:650px;margin:13px 0 21px;font:700 clamp(38px,4.2vw,58px)/1.04 Manrope;letter-spacing:-.045em}.consumer-app-copy>p{max-width:650px;margin:0;color:#8da59e;font-size:14px;line-height:1.75}.consumer-app-copy>.home-button{margin-top:29px}.consumer-app-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:30px}.consumer-app-points article{display:grid;grid-template-columns:34px 1fr;gap:11px;padding:15px;border:1px solid #24443b;border-radius:10px;background:#0c241e}.consumer-app-points article>i{display:grid;place-items:center;width:33px;height:33px;border-radius:8px;color:#68ddb4;background:#15392f;font-style:normal}.consumer-app-points b,.consumer-app-points span{display:block}.consumer-app-points b{margin-bottom:4px;color:#d8eae4;font-size:9px}.consumer-app-points span{color:#718b83;font-size:7px;line-height:1.5}.consumer-app-demo{display:grid;justify-items:center}.consumer-app-demo>small{margin-top:14px;color:#54736a;font-size:7px}.consumer-app-phone{width:min(390px,100%);overflow:hidden;border:8px solid #19332c;border-radius:29px;color:#173a34;background:#f3f7f5;box-shadow:0 35px 80px #00000061,0 0 0 1px #345a4f}.consumer-app-phone>header{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:18px;color:#e2f1ec;background:#0d2a23}.consumer-app-phone>header>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;color:#082019;background:#63d9ae;font:800 10px Manrope}.consumer-app-phone header small,.consumer-app-phone header b{display:block}.consumer-app-phone header small{color:#66877d;font-size:5px;letter-spacing:.1em}.consumer-app-phone header b{margin-top:3px;font-size:10px}.consumer-app-phone header>i{color:#6adcae;font-size:6px;font-style:normal}.consumer-app-room{padding:22px 20px 13px}.consumer-app-room span,.consumer-app-room small{display:block}.consumer-app-room span{font:700 19px Manrope}.consumer-app-room small{margin-top:4px;color:#8a9c97;font-size:6px}.consumer-app-status{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 18px}.consumer-app-status article{padding:13px;border:1px solid #d9e5e0;border-radius:10px;background:#fff}.consumer-app-status small,.consumer-app-status b,.consumer-app-status span{display:block}.consumer-app-status small{color:#899a95;font-size:5px;font-weight:800}.consumer-app-status b{margin-top:5px;font:700 18px Manrope}.consumer-app-status span{margin-top:2px;color:#4e9b70;font-size:6px}.consumer-app-controls{display:grid;gap:7px;padding:14px 18px 18px}.consumer-app-controls>article{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:13px;border:1px solid #dce6e2;border-radius:10px;background:#fff}.consumer-app-controls article>div:first-child{display:grid;grid-template-columns:31px 1fr;gap:9px;align-items:center}.consumer-app-controls article>div:first-child>i{display:grid;place-items:center;width:31px;height:31px;border-radius:8px;color:#23965d;background:#e8f4ed;font-size:8px;font-style:normal;font-weight:800}.consumer-app-controls b,.consumer-app-controls small{display:block}.consumer-app-controls b{font-size:8px}.consumer-app-controls small{margin-top:3px;color:#8b9b96;font-size:6px}.consumer-app-controls article>button{position:relative;width:37px;height:21px;padding:0;border:0;border-radius:99px;background:#cad7d2;cursor:pointer}.consumer-app-controls article>button i{position:absolute;top:4px;left:4px;width:13px;height:13px;border-radius:50%;background:#fff;transition:.2s}.consumer-app-controls article>button.on{background:#3ab77d}.consumer-app-controls article>button.on i{left:20px}.consumer-stepper{display:flex;gap:6px;align-items:center}.consumer-stepper button{display:grid;place-items:center;width:25px;height:25px;padding:0;border:1px solid #d0dfd9;border-radius:7px;color:#39855f;background:#f0f6f3;cursor:pointer}.consumer-stepper b{min-width:36px;font-size:9px;text-align:center}.consumer-app-controls .shutter{grid-template-columns:1fr}.consumer-app-controls input[type=range]{width:100%;accent-color:#2fa66e}.consumer-app-phone>nav{display:grid;grid-template-columns:repeat(4,1fr);padding:8px 10px 11px;border-top:1px solid #dce6e2;background:#fff}.consumer-app-phone>nav button{display:grid;justify-items:center;gap:3px;padding:5px;border:0;color:#98a7a2;background:transparent;font-size:5px}.consumer-app-phone>nav i{font-size:12px;font-style:normal}.consumer-app-phone>nav .active{color:#299a64}.consumer-app-flow{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;overflow:hidden;border:1px solid #234139;border-radius:14px;background:#234139}.consumer-app-flow article{display:grid;grid-template-columns:34px 1fr;gap:12px;min-height:115px;padding:23px;background:#0b211c}.consumer-app-flow article>i{display:grid;place-items:center;width:34px;height:34px;border:1px solid #34725d;border-radius:50%;color:#6cdcb5;font-size:7px;font-style:normal;font-weight:800}.consumer-app-flow b,.consumer-app-flow span{display:block}.consumer-app-flow b{margin-bottom:5px;color:#cee2dc;font-size:9px}.consumer-app-flow span{color:#67827a;font-size:7px;line-height:1.5}.ai-engineer-section{padding:115px max(32px,calc((100vw - 1280px)/2));color:#f7f1df;background:#11130f}.ai-engineer-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:90px;align-items:end;margin-bottom:58px}.plus-badge{display:inline-flex;gap:8px;align-items:center;margin-bottom:24px;padding:7px 11px;border:1px solid #806b31;border-radius:99px;color:#dfc46f;background:#292413;font-size:7px;font-weight:800;letter-spacing:.13em}.plus-badge i{color:#f0d47d;font-style:normal}.ai-kicker{display:block;color:#c7a946;font-size:10px;font-weight:800;letter-spacing:.18em}.ai-engineer-heading h2{margin:13px 0 0;font:700 clamp(38px,4.4vw,58px)/1.04 Manrope;letter-spacing:-.045em}.ai-engineer-heading h2 em{color:#d4b655;font-style:normal}.ai-heading-copy p{margin:0;color:#a7a693;font-size:14px;line-height:1.75}.ai-heading-copy span{display:inline-block;margin-top:18px;padding-left:11px;border-left:2px solid #bd9d3c;color:#c7b871;font-size:8px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.ai-engineer-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}.ai-console{overflow:hidden;min-height:510px;border:1px solid #5d522c;border-radius:18px;background:#181b16;box-shadow:0 30px 70px #00000052}.ai-console>header{display:flex;justify-content:space-between;padding:17px 20px;border-bottom:1px solid #37351f;background:#1d2019;font-size:8px}.ai-console>header span{display:flex;gap:8px;align-items:center;font-weight:800}.ai-console>header span i{width:7px;height:7px;border-radius:50%;background:#d8ba56;box-shadow:0 0 10px #d8ba56}.ai-console>header b{color:#bba455;font-size:7px;letter-spacing:.08em;text-transform:uppercase}.ai-conversation{padding:34px}.ai-user-message{max-width:78%;margin-left:auto;padding:17px 19px;border:1px solid #4b4930;border-radius:13px 13px 3px;color:#d8d5c5;background:#252820;font-size:10px;line-height:1.6}.ai-response{display:grid;grid-template-columns:34px 1fr;gap:12px;margin-top:29px}.ai-avatar{display:grid;place-items:center;width:34px;height:34px;border:1px solid #8d7939;border-radius:9px;color:#e2c661;background:#302a16;font-size:13px}.ai-response b{display:block;color:#e7ddba;font:700 11px Manrope}.ai-response p{margin:6px 0 0;color:#999b89;font-size:9px;line-height:1.55}.ai-mini-flow{display:flex;gap:7px;align-items:center;margin:24px 0 21px 46px;padding:13px;border:1px solid #3e3c25;border-radius:9px;background:#12150f}.ai-mini-flow span{flex:1;padding:8px 5px;border:1px solid #514b28;border-radius:6px;color:#cbbb78;background:#222219;font-size:7px;font-weight:700;text-align:center}.ai-mini-flow i{color:#8f7a37;font-size:8px;font-style:normal}.ai-conversation button{float:right;padding:10px 13px;border:1px solid #997f31;border-radius:7px;color:#1d1a0c;background:#d0b24f;font:800 8px DM Sans}.ai-console>footer{display:flex;justify-content:space-between;align-items:center;margin:0 22px 20px;padding:12px 14px;border:1px solid #3f3e2b;border-radius:9px;color:#73776a;background:#12150f;font-size:8px}.ai-console>footer i{display:grid;place-items:center;width:26px;height:26px;border-radius:7px;color:#211c0b;background:#c6a948;font-style:normal;font-weight:800}.ai-capabilities{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ai-capabilities article{display:grid;grid-template-columns:28px 1fr;gap:13px;align-content:start;min-height:245px;padding:26px;border:1px solid #373725;border-radius:14px;background:#181b16}.ai-capabilities article>span{display:grid;place-items:center;width:28px;height:28px;border:1px solid #74642d;border-radius:7px;color:#d6b955;background:#292513;font:800 8px Manrope}.ai-capabilities h3{margin:4px 0 10px;color:#e6ddbc;font:700 14px/1.25 Manrope}.ai-capabilities p{margin:0;color:#868a79;font-size:9px;line-height:1.65}.ai-trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:22px;overflow:hidden;border:1px solid #373725;border-radius:12px;background:#373725}.ai-trust-strip>div{display:grid;grid-template-columns:30px 1fr;gap:11px;padding:20px;background:#181b16}.ai-trust-strip i{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;color:#dfc05d;background:#2b2716;font-style:normal}.ai-trust-strip b,.ai-trust-strip span{display:block}.ai-trust-strip b{margin-bottom:4px;color:#d5cfb6;font-size:9px}.ai-trust-strip span{color:#7d8172;font-size:8px;line-height:1.5}.ai-roadmap-note{margin:17px 0 0;color:#65695e;font-size:8px;line-height:1.5}@media(max-width:950px){.home-nav{width:calc(100% - 36px)}.home-nav nav{display:none}.home-nav .home-button{padding:0 11px}.home-hero{min-height:760px}.home-hero>img{object-position:63% center;opacity:.5}.home-hero-content{width:calc(100% - 36px);padding-top:180px}.home-hero h1{font-size:48px}.home-proof{gap:22px}.home-proof li{min-width:0;padding:0 0 0 20px}.home-intro,.home-devices,.ide-preview{width:calc(100% - 36px);padding:80px 0}.workflow-strip{grid-template-columns:1fr}.workflow-strip article{min-height:110px;border-top:1px solid #e0e8e4;border-left:0}.workflow-strip article:first-child{border-top:0}.workflow-strip article:not(:last-child):after{top:auto;right:50%;bottom:-9px;content:"↓"}.workflow-strip b{margin-top:12px}.architecture-card,.dmxp-section,.security-grid,.sound-section,.account-section,.ai-engineer-heading,.ai-engineer-grid,.room-logic-demo,.consumer-app-section{grid-template-columns:1fr}.architecture-copy{padding:45px;border-right:0;border-bottom:1px solid #1c3944}.architecture-diagram{padding:40px 25px}.split-heading{grid-template-columns:1fr;gap:20px}.device-showcase{grid-template-columns:1fr 1fr}.dmxp-section,.security-section,.sound-section,.account-section,.ai-engineer-section,.consumer-app-section{gap:55px;padding:85px 18px}.security-grid,.ai-engineer-heading{gap:55px}.dmxp-benefits{grid-template-columns:1fr 1fr}.dmxp-security-note{grid-template-columns:42px 1fr}.dmxp-security-note small{grid-column:2;padding:12px 0 0;border-top:1px solid #315049;border-left:0}.consumer-app-flow{grid-template-columns:1fr 1fr}.fbd-demo{overflow-x:auto}.fbd-canvas,.fbd-top{min-width:900px}.home-footer{grid-template-columns:1fr;text-align:center}.home-footer .home-brand,.home-footer>div{justify-content:center}}@media(max-width:560px){.home-nav .home-brand small{display:none}.home-nav .home-button{font-size:8px}.home-nav .home-button svg{display:none}.home-hero{min-height:735px}.home-hero h1{font-size:39px}.home-hero-content>p{font-size:14px}.home-proof{gap:14px}.home-proof li{padding-left:14px}.home-proof b{font-size:11px}.home-proof span{font-size:7px}.home-section-heading h2{font-size:36px}.device-showcase,.dmxp-benefits,.consumer-app-points,.consumer-app-flow,.sound-capabilities{grid-template-columns:1fr}.architecture-copy{padding:38px 26px}.architecture-copy h3{font-size:33px}.architecture-diagram{overflow-x:auto;align-items:flex-start}.architecture-diagram>*{align-self:center}.diagram-devices{min-width:430px}.stack-transports{grid-template-columns:1fr 1fr}.security-visual{height:390px}.security-visual:before{width:280px;height:280px}.security-features{grid-template-columns:1fr}.orbit-two{right:8px}.orbit-four{left:8px}.sound-scenarios{grid-template-columns:1fr 1fr}.sound-now-playing{grid-template-columns:48px 1fr 38px;margin:16px}.sound-cover{width:48px;height:48px}.sound-scenarios,.sound-zones{margin-right:16px;margin-left:16px}.home-hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.account-card{padding:36px 24px}.ai-capabilities,.ai-trust-strip{grid-template-columns:1fr}.ai-capabilities article{min-height:0}.ai-conversation{padding:25px 18px}.ai-mini-flow{margin-left:0;overflow-x:auto}.ai-mini-flow span{min-width:68px}.room-tree-panel,.cross-room-panel{padding:25px 18px}.room-flow{grid-template-columns:135px 1fr 135px;gap:8px}}.account-type-cards{display:grid;gap:9px;margin:27px 0}.account-type-cards article{display:grid;grid-template-columns:40px 1fr;gap:13px;padding:17px;border:1px solid #d5e2db;border-radius:11px;background:#fff}.account-type-cards article>i{display:grid;place-items:center;width:39px;height:39px;border-radius:9px;color:#188445;background:#e1f1e5;font-style:normal;font-size:16px}.account-type-cards b,.account-type-cards span,.account-type-cards a{display:block}.account-type-cards b{color:#17383b;font:700 12px Manrope}.account-type-cards span{margin-top:4px;color:#718287;font-size:8px;line-height:1.5}.account-type-cards a{margin-top:8px;color:#218d47;font-size:8px;font-weight:800}.bms-shell{display:grid;grid-template-columns:235px 1fr;width:100vw;height:100vh;color:#17312f;background:#f2f6f4}.bms-sidebar{display:flex;flex-direction:column;min-height:0;padding:25px 18px;color:#dcebe7;background:#0a1b18}.bms-brand{display:flex;gap:11px;align-items:center;padding:0 8px 27px;border-bottom:1px solid #20352f}.bms-brand>span{display:grid;place-items:center;width:39px;height:39px;border-radius:10px;color:#082019;background:#62d9ae;font:800 11px Manrope}.bms-brand b,.bms-brand small{display:block}.bms-brand b{font:800 14px Manrope;letter-spacing:.1em}.bms-brand small{margin-top:3px;color:#57716a;font-size:7px}.bms-sidebar nav{display:grid;gap:5px;margin-top:28px}.bms-sidebar nav button{display:flex;gap:11px;align-items:center;padding:12px 13px;border:0;border-radius:8px;color:#718b84;background:transparent;cursor:pointer;font-size:9px;font-weight:700;text-align:left}.bms-sidebar nav button.active{color:#d9ebe5;background:#153128}.bms-sidebar nav i{width:19px;color:#5ed4aa;font-size:14px;font-style:normal;text-align:center}.bms-user{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center;margin-top:auto;padding:15px 8px 0;border-top:1px solid #20352f}.bms-user>span{display:grid;place-items:center;width:33px;height:33px;border-radius:9px;color:#092019;background:#65d7ae;font-size:8px;font-weight:800}.bms-user b,.bms-user small{display:block}.bms-user b{max-width:90px;overflow:hidden;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.bms-user small{margin-top:2px;color:#58726b;font-size:6px}.bms-user button{padding:5px;border:0;color:#6d837d;background:transparent;cursor:pointer;font-size:7px}.bms-main{min-width:0;overflow:auto;padding:36px 42px 50px}.bms-main>header{display:flex;gap:25px;align-items:center}.bms-main>header>div:first-child{flex:1}.bms-main h1{margin:5px 0;color:#153531;font:700 29px Manrope}.bms-main>header p{margin:0;color:#7b8d89;font-size:9px}.bms-project-select small{display:block;margin-bottom:5px;color:#82938e;font-size:5px;font-weight:800;letter-spacing:.08em}.bms-main>header select{padding:10px 12px;border:1px solid #d5e1dc;border-radius:8px;color:#3d5651;background:#fff;font:inherit;font-size:8px}.bms-live{display:flex;gap:7px;align-items:center;padding:9px 11px;border:1px solid #cde3d7;border-radius:99px;color:#2e8958;background:#edf8f1;font-size:7px;font-weight:800}.bms-live i{width:7px;height:7px;border-radius:50%;background:#38ba70;box-shadow:0 0 8px #38ba70}.bms-empty{display:grid;place-items:center;min-height:480px;margin-top:30px;padding:50px;border:1px dashed #cbdad3;border-radius:17px;align-content:center;color:#71847f;background:#fff;text-align:center}.bms-empty>span{font-size:42px}.bms-empty h2{margin:15px 0 8px;color:#31504a;font:700 21px Manrope}.bms-empty p{max-width:480px;font-size:10px;line-height:1.6}.bms-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:30px 0 17px}.bms-summary article{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;min-height:112px;padding:18px;border:1px solid #d9e3df;border-radius:13px;background:#fff;box-shadow:0 8px 22px #15392f0a}.bms-summary article>span{display:grid;place-items:center;width:41px;height:41px;border-radius:10px;color:#25945b;background:#e7f4ec;font:800 10px Manrope}.bms-summary small,.bms-summary b,.bms-summary p{display:block}.bms-summary small{color:#879590;font-size:6px;font-weight:800;letter-spacing:.08em}.bms-summary b{margin-top:6px;color:#1d3b36;font:700 18px Manrope}.bms-summary b em{color:#9aa8a4;font-size:9px;font-style:normal}.bms-summary p{margin:3px 0 0;color:#8a9894;font-size:6px}.bms-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:17px}.bms-rooms,.bms-energy,.bms-events{padding:23px;border:1px solid #d9e3df;border-radius:14px;background:#fff;box-shadow:0 8px 24px #15392f0a}.bms-rooms>header,.bms-energy>header,.bms-events>header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:17px;border-bottom:1px solid #e5ebe8}.bms-rooms h2,.bms-energy h2,.bms-events h2{margin:0;color:#28443f;font:700 15px Manrope}.bms-rooms header p,.bms-energy header p{margin:4px 0 0;color:#8a9894;font-size:7px}.bms-rooms header>span,.bms-energy header>b{padding:6px 8px;border-radius:6px;color:#448566;background:#edf5f0;font-size:6px}.bms-rooms>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.bms-rooms article{display:grid;grid-template-columns:31px 1fr auto;gap:9px;align-items:center;padding:12px;border:1px solid #e0e8e4;border-radius:9px}.bms-rooms article>i{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;color:#2c9560;background:#e8f4ed;font-style:normal}.bms-rooms article b,.bms-rooms article small{display:block}.bms-rooms article b{font-size:8px}.bms-rooms article small{margin-top:3px;color:#91a09c;font-size:6px}.room-state{color:#42a66e;font-size:5px;font-weight:800}.bms-inline-empty{color:#879792;font-size:8px}.bms-chart{display:flex;gap:7px;align-items:flex-end;height:155px;padding:20px 4px 5px}.bms-chart i{flex:1;min-height:8px;border-radius:3px 3px 0 0;background:#55c991;opacity:.82}.bms-energy>footer{display:flex;justify-content:space-between;color:#a0aaa7;font-size:5px}.bms-data-wait{display:flex;gap:7px;align-items:center;margin-top:17px;padding:10px;border-radius:8px;color:#768983;background:#f1f6f3;font-size:6px}.bms-data-wait i{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;color:#fff;background:#69ad88;font-style:normal}.bms-events{margin-top:17px}.bms-events header span{color:#8f9d99;font-size:6px}.bms-events>div{display:grid;grid-template-columns:31px 1fr auto;gap:11px;align-items:center;padding-top:16px}.bms-events>div>i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#16834a;background:#e1f2e7;font-style:normal}.bms-events b,.bms-events span{display:block}.bms-events b{font-size:8px}.bms-events span{color:#899893;font-size:7px}.bms-events time{color:#a2aca9;font-size:6px}@media(max-width:1250px){.bms-shell{grid-template-columns:205px 1fr}.bms-main{padding:30px 25px}.bms-summary{grid-template-columns:1fr 1fr}}@media(max-width:760px){body.ide-body{min-width:0;min-height:100vh;overflow:auto}.bms-shell{grid-template-columns:1fr;width:100%;height:auto;min-height:100vh}.bms-sidebar{position:sticky;z-index:20;top:0;display:grid;grid-template-columns:auto 1fr;align-items:center;padding:10px 13px}.bms-brand{padding:0;border:0}.bms-brand>span{width:34px;height:34px}.bms-brand small{display:none}.bms-sidebar nav{display:flex;justify-content:flex-end;margin:0}.bms-sidebar nav button{display:grid;justify-items:center;gap:2px;padding:7px;font-size:5px}.bms-sidebar nav i{font-size:12px}.bms-sidebar nav button:nth-child(4),.bms-sidebar nav button:nth-child(5){display:none}.bms-user{display:none}.bms-main{overflow:visible;padding:23px 14px 35px}.bms-main>header{display:grid;grid-template-columns:1fr auto;gap:14px}.bms-main>header>div:first-child{grid-column:1/-1}.bms-main h1{font-size:24px}.bms-project-select{min-width:0}.bms-main>header select{max-width:190px}.bms-summary{grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}.bms-summary article{grid-template-columns:34px 1fr;min-height:94px;padding:12px}.bms-summary article>span{width:34px;height:34px}.bms-summary b{font-size:14px}.bms-grid{grid-template-columns:1fr}.bms-rooms,.bms-energy,.bms-events{padding:17px}.bms-rooms>div{grid-template-columns:1fr}.bms-empty{min-height:360px;padding:30px 18px}}.gateway-pairing-progress [role=progressbar] i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#25a97c,#65e1b8);box-shadow:0 0 12px #56dcae73;transition:width .45s ease}.gateway-pairing-progress.complete [role=progressbar] i{background:linear-gradient(90deg,#42c994,#9bf1d2)}.gateway-readonly a{color:#63e6b8;font-weight:700;text-decoration:none}@media(max-width:760px){.gateway-static-grid{grid-template-columns:1fr}}.zigbee-join-status{display:flex;gap:11px;align-items:center;margin:14px 17px 0;padding:12px 15px;border:1px solid #37433d;border-radius:10px;background:#111d19}.zigbee-join-status>i{width:10px;height:10px;flex:0 0 auto;border-radius:50%;background:#6d7774}.zigbee-join-status>span{min-width:0;flex:1}.zigbee-join-status b,.zigbee-join-status small{display:block}.zigbee-join-status b{font-size:9px}.consumer-app-section{grid-template-columns:.62fr 1.38fr;gap:70px}.consumer-app-demo{min-width:0;width:100%}.consumer-app-console{width:100%;min-width:0;overflow:hidden;border:1px solid #345a4f;border-radius:20px;color:#173a34;background:#f3f7f5;box-shadow:0 35px 80px #00000061}.consumer-app-console>header{display:grid;grid-template-columns:39px 1fr auto;gap:11px;align-items:center;padding:16px 18px;color:#e2f1ec;background:#0d2a23}.consumer-app-console>header>span{display:grid;place-items:center;width:39px;height:39px;border-radius:10px;color:#082019;background:#63d9ae;font:800 10px Manrope}.consumer-app-console>header small,.consumer-app-console>header b{display:block}.consumer-app-console>header small{color:#66877d;font-size:5px;letter-spacing:.1em}.consumer-app-console>header b{margin-top:3px;font-size:10px}.consumer-app-console>header>i{color:#6adcae;font-size:6px;font-style:normal}.consumer-app-workspace{display:grid;grid-template-columns:135px minmax(260px,.9fr) minmax(260px,1fr);min-height:520px}.consumer-app-workspace>nav{padding:13px 9px;border-right:1px solid #dce6e2;background:#fff}.consumer-app-workspace>nav button{display:grid;grid-template-columns:26px 1fr;gap:8px;align-items:center;width:100%;margin:3px 0;padding:10px 8px;border:0;border-radius:8px;color:#70857f;background:transparent;cursor:pointer;text-align:left}.consumer-app-workspace>nav button:hover,.consumer-app-workspace>nav button.active{color:#1d6848;background:#e8f4ed}.consumer-app-workspace>nav button>i{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;color:#299a64;background:#edf7f1;font-size:10px;font-style:normal}.consumer-app-workspace>nav button.active>i{color:#fff;background:#299a64}.consumer-app-workspace>nav b,.consumer-app-workspace>nav small{display:block}.consumer-app-workspace>nav b{font-size:7px}.consumer-app-workspace>nav small{margin-top:2px;color:#9aa9a5;font-size:5px}.consumer-plan-area{min-width:0;padding:17px;border-right:1px solid #dce6e2;background:#edf3f0}.consumer-plan-area>header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:13px}.consumer-plan-area header small,.consumer-plan-area header b{display:block}.consumer-plan-area header small{color:#84958f;font-size:5px;letter-spacing:.1em}.consumer-plan-area header b{margin-top:4px;font-size:11px}.consumer-plan-area header>span{padding:5px 7px;border-radius:99px;color:#4c856a;background:#dfece5;font-size:5px}.consumer-floorplan{display:grid;grid-template:1fr .88fr .48fr / 1fr 1fr;gap:5px;height:430px;padding:8px;border:1px solid #c8d9d1;border-radius:11px;background:#c8d9d1;box-shadow:0 12px 28px #1844331a;transform:perspective(1100px) rotateX(2deg);transform-origin:center bottom}.consumer-floorplan>button{position:relative;display:grid;place-items:center;align-content:center;min-width:0;padding:8px;border:2px solid transparent;color:#48645d;background:#fff;cursor:pointer;transition:transform .18s,border-color .18s,background .18s}.consumer-floorplan>button:hover,.consumer-floorplan>button.active{z-index:2;border-color:#36ae77;background:#eef9f3;transform:translateY(-2px)}.consumer-floorplan button>i,.consumer-floorplan button>b,.consumer-floorplan button>small{display:block}.consumer-floorplan button>i{color:#42a977;font-size:20px;font-style:normal}.consumer-floorplan button>b{margin-top:7px;font-size:8px}.consumer-floorplan button>small{margin-top:4px;color:#8a9b96;font-size:5px;text-align:center}.consumer-floorplan button>em{position:absolute;top:9px;right:9px;width:6px;height:6px;border-radius:50%;background:#b8c5c0}.consumer-floorplan button>em.online{background:#43bd7e;box-shadow:0 0 7px #43bd7e}.floor-kitchen{border-radius:8px 2px 2px}.floor-living{grid-row:1/3;grid-column:2;border-radius:2px 8px 2px 2px}.floor-bedroom{border-radius:2px}.floor-technical{border-radius:2px 2px 2px 8px}.floor-hall{display:flex;grid-column:1/-1;gap:8px;align-items:center;justify-content:center;color:#748983;background:#e4ece8;font-size:5px;letter-spacing:.11em}.floor-hall i{color:#35a873;font-size:13px;font-style:normal}.consumer-room-panel{min-width:0;padding:18px;background:#f8faf9}.consumer-room-panel>header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:13px;border-bottom:1px solid #dfe8e4}.consumer-room-panel header small{color:#8a9a95;font-size:5px;letter-spacing:.1em}.consumer-room-panel h3{margin:4px 0 0;font:700 18px Manrope}.consumer-room-panel header>span{color:#32a66b;font-size:6px}.consumer-home-overview>p{margin:16px 0;color:#738781;font-size:7px;line-height:1.55}.consumer-home-overview>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}.consumer-home-overview article{padding:12px;border:1px solid #dce6e2;border-radius:8px;background:#fff}.consumer-home-overview article small,.consumer-home-overview article b,.consumer-home-overview article span{display:block}.consumer-home-overview article small{color:#8b9b96;font-size:5px}.consumer-home-overview article b{margin-top:5px;font:700 14px Manrope}.consumer-home-overview article span{margin-top:2px;color:#44a071;font-size:5px}.consumer-home-overview>section{display:grid;grid-template-columns:28px 1fr;gap:9px;align-items:center;margin-top:11px;padding:11px;border-radius:8px;color:#58766c;background:#e8f3ed}.consumer-home-overview>section>i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#fff;background:#39a96f;font-style:normal}.consumer-home-overview section b,.consumer-home-overview section span{display:block}.consumer-home-overview section b{margin-bottom:3px;color:#29533f;font-size:7px}.consumer-home-overview section span{font-size:6px}.consumer-device-list{display:grid;gap:7px;margin-top:14px}.consumer-device-list>article,.consumer-heat-pump{display:grid;grid-template-columns:30px 1fr auto;gap:9px;align-items:center;padding:11px;border:1px solid #dce6e2;border-radius:9px;background:#fff}.consumer-device-list article>i,.consumer-heat-pump>i{display:grid;place-items:center;width:30px;height:30px;border-radius:7px;color:#269661;background:#e7f4ec;font-size:7px;font-style:normal;font-weight:800}.consumer-device-list article b,.consumer-device-list article small,.consumer-heat-pump b,.consumer-heat-pump small{display:block}.consumer-device-list article b,.consumer-heat-pump b{font-size:7px}.consumer-device-list article small,.consumer-heat-pump small{margin-top:3px;color:#8a9a95;font-size:5px}.consumer-device-list article>button,.consumer-heat-pump>button{position:relative;min-width:38px;height:22px;padding:0 7px;border:0;border-radius:99px;color:#728781;background:#cad7d2;cursor:pointer;font-size:5px}.consumer-device-list article>button>i,.consumer-heat-pump>button>i{position:absolute;top:4px;left:4px;width:14px;height:14px;border-radius:50%;background:#fff;transition:.2s}.consumer-device-list article>button.on,.consumer-heat-pump>button.on{background:#37ae73}.consumer-device-list article>button.on>i,.consumer-heat-pump>button.on>i{left:20px}.consumer-device-list article>button.sensor,.consumer-device-list article>button.pulse,.consumer-device-list article>button.scene{height:auto;padding:7px;border:1px solid #cfe0d8;border-radius:7px;color:#37805e;background:#edf5f1}.consumer-device-list article>button.active{border-color:#49b27a;color:#176340;background:#dff2e7}.consumer-device-list .range{grid-template-columns:30px 1fr}.consumer-device-list .range input{grid-column:1/-1;width:100%;accent-color:#2ba56c}.consumer-logic-note{padding:9px;border-radius:7px;color:#547a6d;background:#e7f2ec;font-size:6px;text-align:center}.consumer-technical{display:grid;gap:9px;margin-top:14px}.consumer-temperature-inputs{display:grid;gap:8px}.consumer-temperature-inputs label{display:block;padding:10px;border:1px solid #dce6e2;border-radius:8px;background:#fff}.consumer-temperature-inputs label span{display:flex;justify-content:space-between;color:#758781;font-size:6px}.consumer-temperature-inputs label b{color:#246846}.consumer-temperature-inputs input{width:100%;margin-top:8px;accent-color:#299d67}.consumer-compensation{display:grid;grid-template-columns:1fr 1fr;gap:7px}.consumer-compensation article{padding:11px;border:1px solid #cfe2d8;border-radius:8px;background:#eaf5ef}.consumer-compensation small,.consumer-compensation b,.consumer-compensation span{display:block}.consumer-compensation small{color:#729080;font-size:5px}.consumer-compensation b{margin-top:5px;color:#196342;font:700 15px Manrope}.consumer-compensation span{margin-top:2px;color:#6d897b;font-size:5px}.consumer-climate-logic{display:flex;flex-wrap:wrap;gap:4px;align-items:center;justify-content:center;padding:9px;border:1px solid #dce6e2;border-radius:8px;background:#fff}.consumer-climate-logic span{padding:5px;border-radius:5px;color:#337157;background:#e8f3ed;font-size:5px}.consumer-climate-logic i{color:#45a877;font-size:6px;font-style:normal}.consumer-app-console>footer{display:flex;justify-content:space-between;padding:10px 15px;border-top:1px solid #dce6e2;color:#789089;background:#fff;font-size:5px}.consumer-app-console>footer i{color:#36ad73;font-style:normal}@media(max-width:1100px){.consumer-app-section{grid-template-columns:1fr}.consumer-app-console{max-width:930px}.consumer-app-workspace{grid-template-columns:125px minmax(250px,.9fr) minmax(250px,1fr)}}@media(max-width:760px){.consumer-app-demo{overflow-x:auto;justify-items:start;padding-bottom:8px}.consumer-app-console{min-width:720px}.consumer-app-workspace{grid-template-columns:115px 285px 1fr;min-height:500px}.consumer-floorplan{height:410px}}.consumer-home-3d{display:grid;gap:8px;height:430px}.consumer-house-stage{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden;border:1px solid #ccddd5;border-radius:12px;background:radial-gradient(circle at 50% 48%,#fff 0,#f5faf7 48%,#e4eee9);box-shadow:inset 0 0 35px #1e5c420f}.consumer-house-stage:after{position:absolute;right:10px;bottom:8px;color:#8da49b;content:"VISTA 3D · LIVE";font-size:4px;font-weight:800;letter-spacing:.12em}.consumer-house-stage>img{display:block;width:94%;height:94%;object-fit:contain;filter:drop-shadow(0 18px 18px rgba(24,65,50,.16))}.house-badge{position:absolute;z-index:2;display:grid;grid-template-columns:19px 1fr;gap:0 6px;align-items:center;min-width:86px;padding:7px 8px;border:1px solid rgba(202,222,213,.95);border-radius:8px;color:#2d5144;background:#ffffffe6;box-shadow:0 8px 20px #1746341f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.house-badge>i{grid-row:1/3;display:grid;place-items:center;width:19px;height:19px;border-radius:6px;color:#fff;background:#31a66e;font-size:6px;font-style:normal}.house-badge b,.house-badge small{display:block}.house-badge b{font-size:7px}.house-badge small{margin-top:2px;color:#83968f;font-size:4px}.house-badge.solar{top:12px;left:12px}.house-badge.devices{top:12px;right:12px}.house-badge.devices>i{color:#42c180;background:#e4f4eb}.house-badge.comfort{right:12px;bottom:13px}.house-general-info{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.house-general-info article{display:grid;grid-template-columns:23px 1fr;gap:7px;align-items:center;min-width:0;padding:8px;border:1px solid #d8e5df;border-radius:8px;background:#fff}.house-general-info article>i{display:grid;place-items:center;width:23px;height:23px;border-radius:6px;color:#24945f;background:#e7f4ec;font-size:6px;font-style:normal;font-weight:800}.house-general-info small,.house-general-info b{display:block}.house-general-info small{overflow:hidden;color:#8a9b96;font-size:4px;text-overflow:ellipsis;white-space:nowrap}.house-general-info b{margin-top:3px;overflow:hidden;font-size:6px;text-overflow:ellipsis;white-space:nowrap}.zigbee-join-status small{margin-top:3px;color:#71847e;font-size:7px}.zigbee-join-status strong{font:800 17px Manrope;letter-spacing:.05em}.zigbee-join-status.open{border-color:#9a762f;background:#2b2414}.zigbee-join-status.open>i{background:#ffc75a;box-shadow:0 0 10px #ffc75ab3}.zigbee-join-status.open b,.zigbee-join-status.open strong{color:#ffd77d}.guided-node.light{top:auto;left:auto}.home-menu-toggle,.home-mobile-menu,.home-mobile-backdrop{display:none}body.home-menu-open{overflow:hidden}@media(max-width:950px){.home-nav{position:fixed;top:0;left:0;z-index:80;width:100%;height:72px;padding:0 18px;border-bottom:1px solid rgba(255,255,255,.12);background:#061615e0;box-shadow:0 10px 30px #00000029;transform:none;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.home-nav>nav,.home-nav>.home-button.compact{display:none}.home-nav>.home-brand{position:relative;z-index:3}.home-menu-toggle{position:relative;z-index:3;display:flex;flex-direction:column;gap:5px;justify-content:center;align-items:center;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.16);border-radius:11px;color:#fff;background:#ffffff0f;cursor:pointer}.home-menu-toggle i{display:block;width:18px;height:1.5px;border-radius:3px;background:currentColor;transition:transform .28s ease,opacity .2s ease,width .28s ease}.home-menu-toggle.open i:first-child{transform:translateY(6.5px) rotate(45deg)}.home-menu-toggle.open i:nth-child(2){width:0;opacity:0}.home-menu-toggle.open i:last-child{transform:translateY(-6.5px) rotate(-45deg)}.home-mobile-backdrop{position:fixed;inset:0;z-index:1;display:block;width:100%;height:100%;padding:0;border:0;visibility:hidden;opacity:0;background:#020b0a94;cursor:default;transition:opacity .28s ease,visibility .28s ease;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.home-mobile-backdrop.open{visibility:visible;opacity:1}.home-mobile-menu{position:fixed;top:86px;right:18px;left:18px;z-index:2;display:block;max-height:calc(100vh - 104px);padding:22px;overflow:auto;border:1px solid rgba(116,222,185,.25);border-radius:18px;visibility:hidden;opacity:0;color:#eaf8f4;background:linear-gradient(145deg,#0a231ffa,#051514fa);box-shadow:0 28px 70px #0000006b;transform:translateY(-12px) scale(.98);transform-origin:top center;pointer-events:none;transition:opacity .28s ease,transform .28s ease,visibility .28s ease}.home-mobile-menu.open{visibility:visible;opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.home-mobile-menu>span{display:block;margin:0 0 11px;color:#56dcae;font-size:8px;font-weight:800;letter-spacing:.16em}.home-mobile-menu nav{display:grid;gap:0}.home-mobile-menu nav a{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:center;min-height:45px;border-bottom:1px solid rgba(255,255,255,.08);color:#dcece8;font:700 14px Manrope}.home-mobile-menu nav a:hover{color:#72e4bd}.home-mobile-menu nav a small{color:#4d766c;font:700 8px DM Sans}.home-mobile-menu>.home-button{justify-content:center;width:100%;margin-top:19px}.home-mobile-menu>small{display:block;margin-top:13px;color:#506c66;font-size:6px;letter-spacing:.12em;text-align:center}}@media(max-width:560px){.home-nav{padding:0 14px}.home-mobile-menu{top:82px;right:12px;left:12px;max-height:calc(100vh - 94px);padding:19px;border-radius:15px}}@media(prefers-reduced-motion:reduce){.home-menu-toggle i,.home-mobile-backdrop,.home-mobile-menu{transition:none}}.zigbee-join-status.closed strong{color:#78837f}.hmi-demo-section{padding:110px max(32px,calc((100vw - 1280px)/2));color:#dcebe6;background:#081a1a}.hmi-demo-shell{overflow:hidden;border:1px solid #2b4c45;border-radius:18px;background:#0b1717;box-shadow:0 28px 80px #00000040}.hmi-demo-toolbar,.hmi-demo-footer{display:flex;align-items:center;gap:16px;padding:15px 20px;border-bottom:1px solid #213b36;color:#77928a;background:#0e211e;font-size:8px}.hmi-demo-toolbar b{margin-left:auto;color:#66d9b2}.hmi-demo-workspace{display:grid;grid-template-columns:145px minmax(420px,1fr) 220px;min-height:400px}.hmi-palette{padding:20px 14px;border-right:1px solid #203b35;background:#0b1b18}.hmi-palette>small,.hmi-properties>small{display:block;color:#54736a;font-size:7px;font-weight:800;letter-spacing:.13em}.hmi-palette button{display:flex;gap:9px;align-items:center;width:100%;margin-top:10px;padding:10px 9px;border:1px solid #23443c;border-radius:8px;color:#92aaa3;background:#10221f;cursor:pointer;text-align:left;font-size:8px}.hmi-palette button.active,.hmi-palette button:hover{border-color:#50bd94;color:#d9eee7;background:#16372e}.hmi-palette button i{display:grid;place-items:center;width:23px;height:23px;border-radius:6px;color:#68d7b0;background:#183c32;font-style:normal;font-size:12px}.hmi-palette-gap{margin-top:26px}.hmi-screen{padding:27px;background:#0a1515}.hmi-screen-top{display:flex;justify-content:space-between;margin-bottom:18px;padding:10px 13px;border:1px solid #284941;border-radius:8px;color:#d9ebe4;background:#102420;font-size:8px}.hmi-screen-top span{color:#60d5aa;font-size:7px}.hmi-screen-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hmi-widget{position:relative;min-height:135px;padding:17px;border:1px solid #29483f;border-radius:12px;color:#c9ddd6;background:#10221f;cursor:pointer;text-align:left}.hmi-widget:hover,.hmi-widget.selected{border-color:#60d6ae;box-shadow:0 0 0 2px #60d6ae24}.hmi-widget small,.hmi-widget b,.hmi-widget span{display:block}.hmi-widget small{color:#568f7b;font-size:6px;font-weight:800;letter-spacing:.12em}.hmi-widget b{margin-top:8px;font-size:10px}.hmi-widget span{margin-top:12px;color:#829d94;font-size:8px}.hmi-button-widget strong{display:block;margin-top:9px;color:#63d8ad;font-size:26px}.hmi-button-widget>span{color:#e8bf6c}.hmi-switch-widget i{display:block;width:41px;height:22px;margin-top:18px;border-radius:99px;background:#27644f}.hmi-switch-widget i em{display:block;width:16px;height:16px;margin:3px 0 0 22px;border-radius:50%;background:#72e1b9}.hmi-slider-track{height:6px;margin-top:28px!important;border-radius:99px;background:#213e37}.hmi-slider-track i{display:block;width:65%;height:100%;border-radius:99px;background:#65d8af}.hmi-slider-widget strong{position:absolute;right:17px;bottom:16px;color:#6fe0b5;font-size:15px}.hmi-value-widget>strong{display:block;margin-top:19px;color:#70c9ed;font:700 26px Manrope}.hmi-value-widget>span{margin-top:4px}.hmi-properties{padding:20px 16px;border-left:1px solid #203b35;background:#0b1b18}.hmi-properties h3{margin:12px 0 8px;color:#edf7f3;font:700 16px Manrope}.hmi-type-chip{display:inline-block;padding:5px 7px;border:1px solid #347e67;border-radius:5px;color:#65d6ae;background:#12352b;font-size:7px;font-weight:800}.hmi-properties label{display:block;margin-top:21px;color:#718b83;font-size:7px;font-weight:800}.hmi-properties input{display:block;width:100%;margin-top:6px;padding:9px;border:1px solid #28483f;border-radius:6px;color:#c8ded6;background:#10231f;font:inherit;font-size:8px}.hmi-property-note{display:flex;gap:8px;margin-top:24px;padding:10px;border:1px solid #29483f;border-radius:7px;color:#78978d;background:#10231f;font-size:7px}.hmi-property-note i{color:#66d7ad;font-style:normal}.hmi-demo-footer{justify-content:space-between;border-top:1px solid #213b36;border-bottom:0;font-size:7px}.hmi-demo-footer b{color:#d8ebe4}.hmi-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:17px}.hmi-steps article{padding:17px;border:1px solid #204039;border-radius:10px;background:#0c211d}.hmi-steps article b,.hmi-steps article span,.hmi-steps article small{display:block}.hmi-steps article b{color:#61d1a8;font-size:8px}.hmi-steps article span{margin-top:8px;color:#c6ddd5;font:700 10px Manrope}.hmi-steps article small{margin-top:6px;color:#729189;font-size:7px;line-height:1.5}@media(max-width:900px){.hmi-demo-workspace{grid-template-columns:125px minmax(360px,1fr) 190px}.hmi-steps{grid-template-columns:1fr 1fr}}.dmxp-protocol-logo-frame{display:grid;place-items:center;width:min(280px,75%);margin-bottom:24px;padding:16px 18px;overflow:hidden;border:1px solid rgba(255,255,255,.78);border-radius:14px;background:#fff;box-shadow:0 14px 34px #0000002e}.dmxp-protocol-logo-frame .dmxp-protocol-logo{display:block;width:100%;height:auto;margin:0;border-radius:0;object-fit:contain;object-position:center;transform:translate(-5.8%)}.home-page.motion-ready .reveal-on-scroll{opacity:0;filter:blur(7px);transform:translate3d(0,34px,0) scale(.985);transition:opacity .75s cubic-bezier(.2,.75,.25,1),transform .85s cubic-bezier(.16,1,.3,1),filter .7s ease;transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform,filter}.home-page.motion-ready .reveal-on-scroll.is-visible{opacity:1;filter:blur(0);transform:translateZ(0) scale(1)}.home-page.motion-ready .home-hero-content{animation:homeHeroReveal 1s cubic-bezier(.16,1,.3,1) both}.home-page.motion-ready .home-hero>img{animation:homeHeroImage 1.6s cubic-bezier(.2,.75,.25,1) both}.home-page.motion-ready .architecture-card.is-visible,.home-page.motion-ready .protocol-stack.is-visible,.home-page.motion-ready .fbd-demo.is-visible,.home-page.motion-ready .hmi-demo-shell.is-visible{box-shadow:0 32px 90px #0c52412e,0 0 0 1px #5bdcb10a}@keyframes homeHeroReveal{0%{opacity:0;transform:translate3d(0,28px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes homeHeroImage{0%{opacity:.45;transform:scale(1.055)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.home-page *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.home-page .reveal-on-scroll{opacity:1!important;filter:none!important;transform:none!important}}.guided-demo-section{padding:110px max(32px,calc((100vw - 1280px)/2));color:#dcebe6;background:linear-gradient(180deg,#061412,#09211c)}.guided-demo-section .home-section-heading{margin-bottom:38px}.guided-demo-section .home-section-heading h2{color:#fff}.guided-demo-section .home-section-heading p{color:#88a39b}.guided-demo-shell{overflow:hidden;border:1px solid #2e5047;border-radius:20px;background:#0a1815;box-shadow:0 34px 100px #0000004d}.guided-demo-header{display:flex;justify-content:space-between;align-items:center;padding:17px 21px;border-bottom:1px solid #223d36;background:#0e211d}.guided-demo-header>div{display:grid;grid-template-columns:9px auto;gap:2px 9px;align-items:center}.guided-demo-header b{font:700 11px Manrope}.guided-demo-header small{grid-column:2;color:#637d75;font-size:7px}.guided-live-dot{grid-row:span 2;width:8px;height:8px;border-radius:50%;background:#57d7aa;box-shadow:0 0 12px #57d7aa}.guided-demo-header button{padding:8px 11px;border:1px solid #31574d;border-radius:7px;color:#86b6a6;background:#102a23;cursor:pointer;font-size:7px;font-weight:800}.guided-steps{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid #223d36;background:#0b1b18}.guided-steps button{position:relative;display:flex;gap:8px;align-items:center;justify-content:center;min-height:58px;border:0;border-right:1px solid #1d342e;color:#58716a;background:transparent;cursor:default;font-size:8px}.guided-steps button:last-child{border-right:0}.guided-steps button i{display:grid;place-items:center;width:22px;height:22px;border:1px solid #29483f;border-radius:50%;font-style:normal;font-size:7px}.guided-steps button.active{color:#d8ebe4;background:#102820}.guided-steps button.active i{border-color:#58d3a8;color:#092019;background:#58d3a8;box-shadow:0 0 15px #58d3a840}.guided-steps button.done{color:#6ec6a6;cursor:pointer}.guided-steps button.done i{border-color:#397f68;color:#5ed8ad;background:#13372d}.guided-demo-content{min-height:465px}.guided-panel{min-height:465px;padding:45px}.guided-kicker{color:#5fcda8;font-size:7px;font-weight:800;letter-spacing:.14em}.guided-panel h3{margin:10px 0 9px;color:#ecf7f3;font:700 28px Manrope}.guided-panel>p,.guided-copy p{margin:0;color:#809b93;font-size:10px;line-height:1.6}.room-choice>div{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:35px}.room-choice button{min-height:180px;padding:23px;border:1px solid #29483f;border-radius:13px;color:#adc3bc;background:#10231f;cursor:pointer;text-align:left;transition:.2s}.room-choice button:hover,.room-choice button.selected{border-color:#5bd2a9;background:#15352c;box-shadow:0 0 0 2px #5bd2a91a;transform:translateY(-3px)}.room-choice button i,.room-choice button b,.room-choice button small{display:block}.room-choice button i{color:#65d9af;font-style:normal;font-size:28px}.room-choice button b{margin-top:25px;color:#e6f2ee;font:700 15px Manrope}.room-choice button small{margin-top:6px;color:#718b83;font-size:7px}.guided-copy{margin-bottom:24px}.guided-logic-workspace{display:grid;grid-template-columns:160px 1fr;min-height:330px;overflow:hidden;border:1px solid #29483f;border-radius:13px}.guided-logic-workspace aside{padding:15px;border-right:1px solid #29483f;background:#0d1f1b}.guided-logic-workspace aside>small,.guided-dropzone>small{color:#57766d;font-size:6px;font-weight:800;letter-spacing:.12em}.guided-logic-workspace aside button{display:block;width:100%;margin-top:9px;padding:11px;border:1px solid #2a4c42;border-radius:7px;color:#9db4ac;background:#122923;cursor:grab;text-align:left}.guided-logic-workspace aside button.used{opacity:.45}.guided-logic-workspace aside b,.guided-logic-workspace aside span{display:block}.guided-logic-workspace aside b{font-size:8px}.guided-logic-workspace aside span{margin-top:3px;color:#607b72;font-size:6px}.guided-dropzone{position:relative;padding:16px;background-color:#091713;background-image:radial-gradient(#254238 1px,transparent 1px);background-size:17px 17px}.guided-node-row{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:72px;align-items:center;min-height:178px}.guided-node{position:relative;z-index:2;min-height:86px;padding:13px;border:1px solid #3a6659;border-radius:8px;background:#112a23;box-shadow:0 9px 20px #0003}.guided-node small,.guided-node b{display:block}.guided-node small{color:#55b895;font-size:5px}.guided-node b{margin-top:10px;color:#cadbd5;font-size:8px}.guided-port{position:absolute;z-index:4;top:50%;width:16px;height:16px;padding:0;border:3px solid #5ed9ae;border-radius:50%;background:#112a23;cursor:crosshair;transform:translateY(-50%);transition:transform .15s,background .15s,box-shadow .15s}.guided-port:hover,.guided-port:focus-visible{background:#66dfb5;box-shadow:0 0 0 5px #5ed9ae29;transform:translateY(-50%) scale(1.15);outline:0}.guided-port.in{left:-9px}.guided-port.out{right:-9px}.guided-port.out.selected{background:#ffe077;border-color:#ffe077;box-shadow:0 0 0 6px #ffe0772b,0 0 15px #ffe07773}.guided-node-placeholder{display:grid;place-items:center;min-height:86px;border:1px dashed #315048;border-radius:8px;color:#526d65;background:#0d1f1bb3;font-size:7px;line-height:1.5;text-align:center}.guided-node-row svg{position:absolute;z-index:1;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.guided-node-row path{fill:none;stroke:#5bd4a9;stroke-width:3;vector-effect:non-scaling-stroke}.guided-node-row text{fill:#7de0bd;paint-order:stroke;stroke:#091713;stroke-width:4px;font:700 7px DM Sans;text-anchor:middle}.guided-connection-status{display:flex;gap:9px;align-items:center;margin:-2px 0 0;padding:9px 11px;border:1px solid #2f4e45;border-radius:8px;color:#6f8e84;background:#0e231eeb}.guided-connection-status.selecting{border-color:#8b7338;color:#d6be79}.guided-connection-status.connected{border-color:#3d806b;color:#76d5b3}.guided-connection-status>i{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#17362d;font-style:normal}.guided-connection-status b,.guided-connection-status small{display:block}.guided-connection-status b{color:#c2d8d1;font-size:7px}.guided-connection-status small{margin-top:2px;font-size:6px}.guided-wire-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.guided-wire-list button{display:flex;gap:8px;align-items:center;padding:6px 8px;border:1px solid #315a4e;border-radius:6px;color:#83baa8;background:#112b24;cursor:pointer;font-size:6px}.guided-wire-list button i{color:#d28b7d;font-style:normal;font-size:11px;line-height:1}.hmi-test{display:grid;grid-template-columns:1fr 330px;gap:40px;align-items:center}.guided-hmi-device{overflow:hidden;border:8px solid #172b27;border-radius:22px;background:#0d221e;box-shadow:0 20px 50px #00000059}.guided-hmi-device header{display:flex;justify-content:space-between;padding:12px 15px;color:#bdd3cb;background:#102d27;font-size:7px}.guided-hmi-device header span{color:#58d3a7}.guided-hmi-room{padding:25px;text-align:center}.guided-hmi-room>small{color:#5d8277;font-size:6px;letter-spacing:.12em}.guided-bulb{margin:15px auto 8px;color:#344b45;font-size:52px;transition:.25s}.guided-bulb.on{color:#ffcf65;filter:drop-shadow(0 0 13px rgba(255,207,101,.55))}.guided-hmi-room>b{display:block;font-size:10px}.guided-hmi-room button{display:flex;gap:8px;align-items:center;justify-content:center;width:95px;margin:19px auto 0;padding:8px;border:1px solid #31574d;border-radius:99px;color:#79958c;background:#152b26;cursor:pointer}.guided-hmi-room button i{position:relative;width:29px;height:15px;border-radius:99px;background:#2a413b}.guided-hmi-room button i:after{content:"";position:absolute;top:3px;left:3px;width:9px;height:9px;border-radius:50%;background:#71857f;transition:.2s}.guided-hmi-room button[aria-pressed=true]{color:#66d9ae;border-color:#3b846d;background:#14372d}.guided-hmi-room button[aria-pressed=true] i{background:#2c7b61}.guided-hmi-room button[aria-pressed=true] i:after{left:17px;background:#74e0b8}.guided-hmi-room button span{font-size:6px;font-weight:800}.guided-sim-result{grid-column:1 / -1;display:flex;gap:10px;align-items:center;padding:13px;border:1px solid #29483f;border-radius:9px;color:#6d8980;background:#10231f}.guided-sim-result.ok{border-color:#397762;color:#87b7a7}.guided-sim-result>i{font-style:normal;font-size:18px}.guided-sim-result b,.guided-sim-result span{display:block}.guided-sim-result b{margin-bottom:3px;color:#bcd2ca;font-size:8px}.guided-sim-result span{font-size:7px}.deploy-simulation{text-align:center}.guided-deploy-card{max-width:650px;margin:30px auto 0;padding:25px;border:1px solid #2e5147;border-radius:14px;background:#10241f}.guided-deploy-target{display:grid;grid-template-columns:45px 1fr auto;gap:13px;align-items:center;text-align:left}.guided-deploy-target>i{display:grid;place-items:center;width:45px;height:45px;border:1px solid #43806d;border-radius:10px;color:#68d8b0;background:#17372e;font-style:normal;font-weight:800}.guided-deploy-target b,.guided-deploy-target small{display:block}.guided-deploy-target b{font-size:9px}.guided-deploy-target small{margin-top:4px;color:#67837a;font-size:6px}.guided-deploy-target em{color:#6fcfac;font-size:7px;font-style:normal}.guided-progress{height:8px;margin-top:25px;overflow:hidden;border-radius:99px;background:#203b34}.guided-progress i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#44b883,#73e3bc);transition:width .1s linear}.guided-deploy-card>strong{display:block;margin-top:9px;color:#69d7ad;font-size:10px}.guided-deploy-card>button{margin-top:20px;padding:11px 16px;border:0;border-radius:8px;color:#092019;background:#65d6ad;cursor:pointer;font-size:8px;font-weight:800}.guided-deploy-card>button:disabled{color:#6a8980;background:#203b34;cursor:default}.guided-complete{text-align:center}.guided-success-mark{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 22px;border-radius:50%;color:#0a2119;background:#67d9af;font-size:30px;box-shadow:0 0 35px #67d9af40}.guided-complete>p{max-width:600px;margin:0 auto}.guided-complete>div:not(.guided-success-mark){display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:25px 0}.guided-complete>div span{padding:8px 10px;border:1px solid #31564b;border-radius:7px;color:#8db2a6;background:#10261f;font-size:7px}.guided-complete>div i{color:#62d8ac;font-style:normal}.guided-demo-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-height:68px;padding:13px 20px;border-top:1px solid #223d36;background:#0d201c}.guided-demo-actions>span{margin-right:auto;color:#607b72;font-size:7px}.guided-demo-actions button{padding:10px 15px;border-radius:8px;cursor:pointer;font-size:8px;font-weight:800}.guided-back{border:1px solid #31534a;color:#8aa49c;background:#11251f}.guided-next{border:0;color:#082018;background:#63d7ad}.guided-next:disabled{color:#536b64;background:#203830;cursor:not-allowed}@media(max-width:900px){.guided-demo-section{padding:80px 18px}.guided-demo-shell{overflow-x:auto}.guided-demo-header,.guided-steps,.guided-demo-content,.guided-demo-actions{min-width:760px}.hmi-test{grid-template-columns:1fr 300px}.room-choice>div{gap:9px}.guided-panel{padding:32px}}.canvas{min-width:0;min-height:0;overflow:hidden}.canvas>.react-flow{position:absolute;inset:0;width:100%;height:100%}.canvas-label{pointer-events:none}.canvas-label button{pointer-events:auto}.signal-legend,.statusbar{pointer-events:none}.online-view-flag{padding:5px 8px;border:1px solid transparent;border-radius:10px;transition:.2s}.online-view-flag.connecting{border-color:#ffca693d;color:#d3b273}.online-view-flag.live{border-color:#55e3b24d;color:#76dfbb;background:#55e3b20f}.online-view-flag.error{border-color:#ff68684d;color:#ff9292}.online-view-flag.live i{box-shadow:0 0 16px #55e3b240}.node-live-value{display:grid;grid-template-columns:7px 1fr auto;align-items:center;gap:7px;margin:8px 0 3px;padding:7px 9px;border:1px solid #29433e;border-radius:8px;color:#819792;background:#0511108c;font-size:7px;font-weight:800;letter-spacing:.08em}.node-live-value i{width:7px;height:7px;border-radius:50%;background:#6a7e79}.node-live-value b{color:#d7e7e3;font-size:11px;letter-spacing:0}.node-live-value.fresh{border-color:#55e3b259}.node-live-value.fresh i{background:#55e3b2;box-shadow:0 0 9px #55e3b2cc}.node-live-value.stale i{background:#ffb54d}.device-card small strong{display:inline;margin-left:7px;color:#d4e8e2;font-size:10px}.device-card small strong.fresh{color:#65e2b8}.device-card small strong.stale{color:#ffbd63}.online-view-status{color:#809590}.online-view-status.live{color:#5de1b5}.online-view-status.connecting{color:#ffca69}.online-view-status.error{color:#ff8585}.domusx-minimap{width:210px!important;height:140px!important;border-color:#3b6259!important;box-shadow:0 12px 32px #00000061}.domusx-minimap .react-flow__minimap-mask{fill:#051010b8}.architecture-diagram .diagram-gateway{display:grid;grid-template-columns:45px 1fr 45px;align-items:center;gap:14px;text-align:center}.architecture-diagram .diagram-gateway:after{content:"";display:block;width:45px;height:1px}.architecture-diagram .diagram-gateway>div{display:grid;place-items:center;min-width:0}.contact-section{display:grid;grid-template-columns:1fr .9fr;gap:90px;align-items:start;padding:115px max(32px,calc((100vw - 1280px)/2));color:#173632;background:#eef4f1}.contact-copy h2{max-width:650px;margin:13px 0 20px;font:700 clamp(38px,4.2vw,58px)/1.05 Manrope;letter-spacing:-.045em}.contact-copy>p{max-width:650px;margin:0;color:#667a76;font-size:14px;line-height:1.75}.contact-paths{display:grid;gap:9px;margin:31px 0 24px}.contact-paths article{display:grid;grid-template-columns:42px 1fr;gap:13px;align-items:center;padding:15px;border:1px solid #d4e1db;border-radius:11px;background:#ffffffb8}.contact-paths article>i{display:grid;place-items:center;width:41px;height:41px;border-radius:9px;color:#177c49;background:#dff0e7;font-style:normal;font-size:13px;font-weight:800}.contact-paths b,.contact-paths span{display:block}.contact-paths b{font:700 11px Manrope}.contact-paths span{margin-top:4px;color:#70827d;font-size:8px;line-height:1.5}.contact-email{display:inline-flex;gap:11px;align-items:center;padding:11px 14px;border:1px solid #bdd7ca;border-radius:10px;color:#245c4d;background:#fff}.contact-email>span{display:grid;place-items:center;width:31px;height:31px;border-radius:8px;color:#fff;background:#228e59;font-weight:800}.contact-email small,.contact-email b{display:block}.contact-email small{color:#81928d;font-size:6px;letter-spacing:.11em}.contact-email b{margin-top:3px;font-size:10px}.contact-form{padding:34px;border:1px solid #d1dfd8;border-radius:18px;background:#fff;box-shadow:0 28px 70px #133e301a}.contact-form-kicker{color:#218c58;font-size:7px;font-weight:800;letter-spacing:.15em}.contact-form h3{margin:8px 0 24px;font:700 26px Manrope}.contact-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contact-form label{display:block;margin:12px 0}.contact-form label>span{display:flex;justify-content:space-between;margin-bottom:6px;color:#506964;font-size:8px;font-weight:800}.contact-form label>span small{color:#9aa9a5;font-size:6px;font-weight:600}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:11px 12px;border:1px solid #d4e0da;border-radius:8px;outline:0;color:#284640;background:#f8fbf9;font:inherit;font-size:10px}.contact-form textarea{resize:vertical;line-height:1.55}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#44a878;box-shadow:0 0 0 3px #44a8781a}.contact-form>button{display:flex;gap:10px;align-items:center;justify-content:center;width:100%;margin-top:18px;padding:13px;border:0;border-radius:9px;color:#fff;background:#218e59;cursor:pointer;font:800 9px Manrope}.contact-form>button:hover:not(:disabled){background:#187747}.contact-form>button:disabled{cursor:wait;opacity:.7}.contact-form>button svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.6}.contact-form>small{display:block;margin-top:11px;color:#94a19d;font-size:7px;text-align:center}.contact-form .contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-result.sent{color:#218e59;font-weight:800}.contact-result.error{color:#b44b40;font-weight:800}@media(max-width:950px){.contact-section{grid-template-columns:1fr;gap:50px;padding:85px 18px}}@media(max-width:560px){.contact-field-grid{grid-template-columns:1fr;gap:0}.contact-form{padding:26px 20px}.contact-paths article{align-items:start}}.security-page{min-height:100vh;color:#edf2f1;background:#080c0f}.security-page a{color:inherit;text-decoration:none}.security-page-nav{position:absolute;z-index:20;top:0;left:50%;display:grid;grid-template-columns:1fr auto 1fr;gap:34px;align-items:center;width:min(1380px,calc(100% - 64px));height:104px;border-bottom:1px solid rgba(255,255,255,.1);transform:translate(-50%)}.security-page-brand{display:flex;align-items:center;width:max-content;height:86px}.security-page-brand img{display:block;width:92px;height:82px;object-fit:contain;filter:drop-shadow(0 0 15px rgba(211,74,65,.15))}.security-page-nav nav{display:flex;gap:27px}.security-page-nav nav a{color:#9ca7aa;font-size:9px;font-weight:700;transition:color .2s}.security-page-nav nav a:hover{color:#fff}.security-nav-cta{justify-self:end;padding:11px 15px;border:1px solid #75413e;border-radius:8px;color:#e6b2ae!important;background:#241719;font-size:8px;font-weight:800}.security-nav-cta span{margin-left:8px;color:#eb756d}.security-page-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center;min-height:850px;padding:165px max(32px,calc((100vw - 1280px)/2)) 90px;overflow:hidden;background:radial-gradient(circle at 78% 42%,rgba(188,64,57,.17),transparent 31%),radial-gradient(circle at 12% 70%,rgba(28,68,75,.19),transparent 32%),#080d10}.security-page-kicker{display:flex;gap:9px;align-items:center;color:#e27871;font-size:8px;font-weight:800;letter-spacing:.16em}.security-page-kicker i{width:7px;height:7px;border-radius:50%;background:#d3564e;box-shadow:0 0 12px #d3564e}.security-hero-copy h1{max-width:780px;margin:24px 0;font:700 clamp(47px,5.4vw,75px)/1.01 Manrope;letter-spacing:-.055em}.security-hero-copy h1 em{color:#d8625a;font-style:normal}.security-hero-copy>p{max-width:680px;margin:0;color:#8d999d;font-size:15px;line-height:1.8}.security-hero-actions{display:flex;gap:12px;margin-top:34px}.security-hero-actions a{padding:13px 17px;border:1px solid #703b38;border-radius:8px;color:#f1cfcc;background:#261719;font-size:9px;font-weight:800}.security-hero-actions a+a{color:#849095;border-color:#2e3a3f;background:#10171b}.security-hero-actions span{margin-left:9px;color:#f07970}.security-hero-proof{display:flex;gap:0;margin:52px 0 0;padding:0;list-style:none}.security-hero-proof li{min-width:140px;padding:0 25px;border-left:1px solid #273239}.security-hero-proof li:first-child{padding-left:0;border:0}.security-hero-proof b,.security-hero-proof span{display:block}.security-hero-proof b{color:#d7dede;font:700 12px Manrope}.security-hero-proof span{margin-top:5px;color:#56636a;font-size:7px}.security-hero-console{overflow:hidden;border:1px solid #3c3437;border-radius:23px;background:#10161ae8;box-shadow:0 35px 90px #00000073}.security-hero-console>header{display:flex;justify-content:space-between;padding:17px 20px;border-bottom:1px solid #332d30;color:#849095;background:#11181c;font-size:7px}.security-hero-console>header span{display:flex;gap:8px;align-items:center;font-weight:800;letter-spacing:.1em}.security-hero-console>header i{width:6px;height:6px;border-radius:50%;background:#62d698;box-shadow:0 0 8px #62d698}.security-hero-console>header b{color:#61c894}.security-console-ring{display:grid;place-items:center;min-height:330px;background:radial-gradient(circle,rgba(202,67,59,.13),transparent 40%)}.security-console-ring>div{position:relative;display:grid;place-items:center;width:180px;height:180px;border:1px solid #70423f;border-radius:50%;background:#20171a;box-shadow:0 0 0 35px #7d37340f,0 0 0 70px #7d373406}.security-console-ring>div:before{content:"";position:absolute;inset:-7px;border-top:2px solid #de685f;border-right:2px solid transparent;border-radius:50%;transform:rotate(35deg)}.security-console-ring span{display:grid;place-items:center;width:49px;height:49px;border-radius:12px;color:#fff;background:#be4f48;font:800 13px Manrope}.security-console-ring b{margin-top:-20px;color:#e9d9d8;font:700 14px Manrope;letter-spacing:.08em}.security-console-ring small{margin-top:-22px;color:#956b69;font-size:6px;letter-spacing:.15em}.security-console-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border-top:1px solid #332d30;background:#332d30}.security-console-stats article{padding:18px;background:#11181c}.security-console-stats small,.security-console-stats b,.security-console-stats span{display:block}.security-console-stats small{color:#59666c;font-size:6px;font-weight:800}.security-console-stats b{margin:8px 0 4px;color:#d7dfe0;font:700 13px Manrope}.security-console-stats span{color:#667278;font-size:6px}.security-architecture{padding:115px max(32px,calc((100vw - 1280px)/2));background:#0c1215}.security-section-heading{display:grid;grid-template-columns:.7fr 1.2fr 1fr;gap:45px;align-items:end;margin-bottom:55px}.security-section-heading>span{align-self:start;color:#d75f58;font-size:8px;font-weight:800;letter-spacing:.18em}.security-section-heading h2{margin:0;font:700 clamp(35px,4vw,54px)/1.05 Manrope;letter-spacing:-.04em}.security-section-heading p{margin:0;color:#7e8b8f;font-size:12px;line-height:1.7}.security-architecture-board{padding:34px;border:1px solid #303b40;border-radius:23px;background:#0a0f12;box-shadow:0 30px 70px #00000040}.security-architecture-top{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.security-architecture-top article{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:center;padding:16px;border:1px solid #303b40;border-radius:10px;background:#11181c}.security-architecture-top i{display:grid;place-items:center;width:39px;height:39px;border-radius:9px;color:#aab8bb;background:#202a2f;font-style:normal;font-size:8px;font-weight:800}.security-architecture-top b,.security-architecture-top small{display:block}.security-architecture-top b{font-size:10px}.security-architecture-top small{margin-top:4px;color:#647178;font-size:7px}.security-architecture-link{position:relative;width:1px;height:48px;margin:auto;background:#65403f}.security-architecture-link span{position:absolute;top:17px;left:12px;color:#725c5c;font-size:6px;white-space:nowrap}.security-core-card{display:grid;grid-template-columns:58px 1fr auto;gap:17px;align-items:center;width:min(660px,100%);margin:auto;padding:22px;border:1px solid #804844;border-radius:13px;background:#241719;box-shadow:0 0 35px #b73d3614}.security-core-card>span{display:grid;place-items:center;width:57px;height:57px;border-radius:12px;color:#fff;background:#bf514a;font:800 14px Manrope}.security-core-card small,.security-core-card b,.security-core-card p{display:block;margin:0}.security-core-card small{color:#cc6861;font-size:6px;font-weight:800;letter-spacing:.13em}.security-core-card b{margin:5px 0;font:700 15px Manrope}.security-core-card p{color:#7f6b6c;font-size:7px}.security-core-card em{padding:7px 9px;border-radius:99px;color:#71d5a1;background:#173025;font-size:6px;font-style:normal;font-weight:800}.security-architecture-split{position:relative;width:75%;height:58px;margin:auto;border-bottom:1px solid #65403f}.security-architecture-split:before{content:"";position:absolute;top:0;left:50%;height:58px;border-left:1px solid #65403f}.security-architecture-split span{position:absolute;top:20px;left:calc(50% + 11px);color:#a35a56;font-size:6px;font-weight:800;letter-spacing:.1em}.security-edge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.security-edge-grid article{display:flex;flex-direction:column;align-items:center;padding:19px 10px;border:1px solid #303b40;border-radius:10px;background:#11181c;text-align:center}.security-edge-grid i{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;color:#dc6c64;background:#2c1b1d;font-size:14px;font-style:normal}.security-edge-grid b{margin-top:10px;font-size:9px}.security-edge-grid small{margin-top:4px;color:#5e6c72;font-size:6px}.security-architecture-board aside{display:grid;grid-template-columns:auto 1fr;gap:18px;margin-top:18px;padding:17px 20px;border:1px solid #3b4b4d;border-radius:10px;background:#111b1d}.security-architecture-board aside b{color:#d6dddc;font-size:8px}.security-architecture-board aside span{color:#748284;font-size:8px;line-height:1.55}@media(max-width:950px){.security-page-nav{grid-template-columns:1fr auto}.security-page-nav nav{display:none}.security-page-hero{grid-template-columns:1fr;padding-top:150px}.security-section-heading{grid-template-columns:1fr;gap:18px}.security-architecture-top{grid-template-columns:1fr}.security-architecture-link span{display:none}}@media(max-width:560px){.security-page-nav{width:calc(100% - 36px)}.security-page-brand img{width:78px;height:72px}.security-nav-cta{padding:10px}.security-page-hero,.security-architecture{padding-right:18px;padding-left:18px}.security-hero-copy h1{font-size:42px}.security-hero-actions,.security-hero-proof{flex-direction:column}.security-hero-proof li{padding:13px 0;border-top:1px solid #273239;border-left:0}.security-console-stats,.security-edge-grid{grid-template-columns:1fr 1fr}.security-core-card{grid-template-columns:48px 1fr}.security-core-card>span{width:47px;height:47px}.security-core-card em{grid-column:2;width:max-content}.security-architecture-board{padding:18px}.security-architecture-board aside{grid-template-columns:1fr}}.security-system,.security-cycle,.security-roadmap,.security-validation{padding:115px max(32px,calc((100vw - 1280px)/2))}.security-system{background:#edf1f0;color:#142126}.security-system .security-section-heading p,.security-cycle .security-section-heading p{color:#68777b}.security-component-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.security-component-grid article{position:relative;min-height:290px;padding:27px;overflow:hidden;border:1px solid #d1d9d7;border-radius:14px;background:#fff;transition:transform .25s,border-color .25s,box-shadow .25s}.security-component-grid article:hover{border-color:#c68580;box-shadow:0 22px 45px #36202117;transform:translateY(-5px)}.security-component-grid article>i{display:grid;place-items:center;width:53px;height:53px;border-radius:12px;color:#b24c46;background:#f3e4e2;font-style:normal;font-size:8px;font-weight:800}.security-component-grid article>span{position:absolute;top:28px;right:28px;color:#c4cecb;font:700 11px Manrope}.security-component-grid h3{margin:29px 0 11px;font:700 18px Manrope}.security-component-grid p{margin:0;color:#68777c;font-size:10px;line-height:1.65}.security-component-grid small{display:block;margin-top:19px;padding-top:15px;border-top:1px solid #e3e8e6;color:#9b6c69;font-size:7px;line-height:1.5}.security-boundary{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center;padding:115px max(32px,calc((100vw - 1280px)/2));background:#101619}.security-boundary-copy>span,.security-dmxp-copy>span,.security-validation-copy>span{color:#dc625b;font-size:8px;font-weight:800;letter-spacing:.17em}.security-boundary-copy h2,.security-dmxp-copy h2,.security-validation-copy h2{margin:18px 0 22px;font:700 clamp(38px,4vw,56px)/1.04 Manrope;letter-spacing:-.045em}.security-boundary-copy h2 em{color:#da625b;font-style:normal}.security-boundary-copy p,.security-dmxp-copy>p,.security-validation-copy p{margin:0;color:#7d898d;font-size:13px;line-height:1.75}.security-boundary-panels{display:grid;grid-template-columns:1fr 1fr;gap:12px}.security-boundary-panels article{padding:25px;border:1px solid #334044;border-radius:14px;background:#151d21}.security-boundary-panels article.allowed{border-color:#315047}.security-boundary-panels article.blocked{border-color:#593838;background:#1c1517}.security-boundary-panels header{display:grid;grid-template-columns:39px 1fr;gap:12px;align-items:center;padding-bottom:19px;border-bottom:1px solid #303b3f}.security-boundary-panels header>i{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;font-style:normal;font-weight:800}.security-boundary-panels .allowed header>i{color:#65d49d;background:#183429}.security-boundary-panels .blocked header>i{color:#e07169;background:#351e20}.security-boundary-panels small,.security-boundary-panels b{display:block}.security-boundary-panels small{color:#627176;font-size:6px;letter-spacing:.1em}.security-boundary-panels b{margin-top:4px;font-size:11px}.security-boundary-panels ul{display:grid;gap:12px;margin:20px 0 0;padding:0;list-style:none}.security-boundary-panels li{position:relative;padding-left:16px;color:#929da0;font-size:8px;line-height:1.5}.security-boundary-panels li:before{position:absolute;left:0;color:#62cc97;content:"+"}.security-boundary-panels .blocked li:before{color:#dc625b;content:"×"}.security-cycle{color:#18262a;background:#f8faf9}.security-state-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:11px;align-items:center}.security-state-flow article{min-height:175px;padding:20px;border:1px solid #d5dedb;border-radius:13px;background:#fff}.security-state-flow article>span{color:#a7b2af;font-size:7px;font-weight:800}.security-state-flow article>i{display:grid;place-items:center;width:41px;height:41px;margin:24px 0 18px;border-radius:50%;color:#3b8d69;background:#e3f1ea;font-style:normal;font-weight:800}.security-state-flow article.alarm{color:#fff;border-color:#b64b45;background:#b94c46;box-shadow:0 18px 40px #a7363033}.security-state-flow article.alarm>i{color:#fff;background:#d86962}.security-state-flow b,.security-state-flow small{display:block}.security-state-flow b{font:700 11px Manrope}.security-state-flow small{margin-top:5px;color:#80908b;font-size:7px}.security-state-flow article.alarm small{color:#ecc6c3}.security-state-flow>em{color:#adbbb7;font-style:normal}.security-zone-states{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;padding:16px;border:1px solid #d8e0de;border-radius:11px;background:#fff}.security-zone-states span{display:flex;gap:7px;align-items:center;color:#71817d;font-size:7px}.security-zone-states i{width:7px;height:7px;border-radius:50%;background:#98a5a1}.security-zone-states i.normal{background:#49b47d}.security-zone-states i.open{background:#e0a94d}.security-zone-states i.alarm,.security-zone-states i.tamper{background:#d9554d}.security-zone-states i.fault{background:#b77b42}.security-zone-states i.unknown{background:#879097}.security-dmxp{display:grid;grid-template-columns:1fr .9fr;gap:90px;align-items:center;padding:115px max(32px,calc((100vw - 1280px)/2));background:#09151b}.security-dmxp-copy ul{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:30px 0 0;padding:0;list-style:none}.security-dmxp-copy li{padding:15px;border:1px solid #293b42;border-radius:9px;background:#0e1c22}.security-dmxp-copy li b,.security-dmxp-copy li span{display:block}.security-dmxp-copy li b{color:#d6e0e1;font-size:9px}.security-dmxp-copy li span{margin-top:5px;color:#64777d;font-size:7px;line-height:1.5}.security-message-stack{padding:27px;border:1px solid #34454b;border-radius:20px;background:#0d1a20;box-shadow:0 28px 70px #0000004d}.security-message-stack header{display:flex;justify-content:space-between;padding:0 5px 18px;color:#cbd8da;font-size:9px}.security-message-stack header small{color:#60757b;font-size:6px;letter-spacing:.12em}.security-message-stack>div{display:flex;justify-content:space-between;margin-top:8px;padding:16px;border:1px solid #2c4148;border-radius:9px;color:#9eb0b4;background:#102129;font:600 9px monospace}.security-message-stack>div em{color:#517782;font:800 6px DM Sans;letter-spacing:.1em}.security-message-stack>div.critical{border-color:#765040;background:#241e19}.security-message-stack>div.critical em{color:#dc9f6a}.security-message-stack>div.alarm{border-color:#80433f;color:#f0bdb9;background:#28191b}.security-message-stack>div.alarm em{color:#e56860}.security-message-stack footer{display:flex;gap:8px;align-items:center;padding:19px 5px 0;color:#607278;font-size:7px}.security-message-stack footer i{width:7px;height:7px;border-radius:50%;background:#df625a}.security-roadmap{background:#edf1f0;color:#172529}.security-roadmap .security-section-heading p{color:#6d7b7f}.security-roadmap-track{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;overflow:hidden;border:1px solid #d1dad7;border-radius:16px;background:#d1dad7}.security-roadmap-track article{position:relative;min-height:350px;padding:25px;background:#fff}.security-roadmap-track article.active{color:#fff;background:#a9433e}.security-roadmap-track article>span{display:grid;place-items:center;width:40px;height:40px;border:1px solid #d2dcda;border-radius:50%;color:#a84b46;font:800 10px Manrope}.security-roadmap-track article.active>span{color:#fff;border-color:#d37973;background:#bd514b}.security-roadmap-track article>small{position:absolute;top:31px;right:23px;color:#9da9a6;font-size:6px;font-weight:800;letter-spacing:.1em}.security-roadmap-track article.active>small{color:#e7b4b0}.security-roadmap-track h3{margin:55px 0 12px;font:700 15px/1.25 Manrope}.security-roadmap-track p{min-height:65px;margin:0;color:#6d7b7f;font-size:8px;line-height:1.6}.security-roadmap-track article.active p{color:#e6c4c1}.security-roadmap-track ul{display:grid;gap:9px;margin:24px 0 0;padding:18px 0 0;border-top:1px solid #e1e7e5;list-style:none}.security-roadmap-track article.active ul{border-color:#c76560}.security-roadmap-track li{color:#87938f;font-size:7px}.security-roadmap-track li:before{margin-right:7px;color:#b34f49;content:"✓"}.security-roadmap-track article.active li{color:#f0d4d2}.security-roadmap-track article.active li:before{color:#fff}.security-validation{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;background:#101619}.security-validation-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.security-validation-grid article{min-height:180px;padding:22px;border:1px solid #303c40;border-radius:11px;background:#151d21}.security-validation-grid article>span{color:#b4524d;font-size:8px;font-weight:800}.security-validation-grid b{display:block;margin:25px 0 8px;font:700 12px Manrope}.security-validation-grid p{margin:0;color:#718085;font-size:8px;line-height:1.6}.security-page-cta{padding:110px 32px;color:#fff;background:radial-gradient(circle at 50% 120%,rgba(130,45,41,.28),transparent 43%),#090d10;text-align:center}.security-page-cta>span{color:#d45d56;font-size:8px;font-weight:800;letter-spacing:.18em}.security-page-cta h2{margin:18px auto;font:700 clamp(40px,4.6vw,62px)/1.03 Manrope;letter-spacing:-.045em}.security-page-cta p{max-width:650px;margin:0 auto;color:#7d898d;font-size:12px;line-height:1.7}.security-page-cta a{display:inline-block;margin-top:29px;padding:14px 18px;border:1px solid #873f3b;border-radius:8px;color:#f1d2d0;background:#2a181a;font-size:9px;font-weight:800}.security-page-cta a b{margin-left:10px;color:#e66d65}.security-page-footer{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:center;min-height:120px;padding:25px max(32px,calc((100vw - 1280px)/2));border-top:1px solid #20292d;background:#080c0f}.security-page-footer p{margin:0;color:#566268;font-size:7px;line-height:1.5;text-align:center}.security-page-footer>div{display:flex;gap:19px;justify-content:flex-end}.security-page-footer>div a{color:#7c888c;font-size:8px;font-weight:700}.security-reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.security-reveal.visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.security-reveal{opacity:1;transform:none;transition:none}}@media(max-width:950px){.security-component-grid{grid-template-columns:1fr 1fr}.security-boundary,.security-dmxp,.security-validation{grid-template-columns:1fr;gap:50px}.security-state-flow{grid-template-columns:1fr}.security-state-flow>em{text-align:center;transform:rotate(90deg)}.security-roadmap-track{grid-template-columns:1fr 1fr}.security-page-footer{grid-template-columns:1fr;justify-items:center}.security-page-footer>div{justify-content:center}}@media(max-width:560px){.security-system,.security-cycle,.security-dmxp,.security-roadmap,.security-validation,.security-boundary{padding:80px 18px}.security-component-grid,.security-boundary-panels,.security-dmxp-copy ul,.security-validation-grid,.security-roadmap-track{grid-template-columns:1fr}.security-roadmap-track article{min-height:300px}.security-message-stack{padding:18px}.security-message-stack>div{gap:10px;font-size:7px}.security-page-footer{padding:35px 18px}.security-page-footer p{max-width:330px}.security-page-footer>div{flex-wrap:wrap}}html,body,#root,.home-page,.security-page{max-width:100%;overflow-x:clip}.home-page img,.security-page img{max-width:100%}@media(max-width:760px){.home-intro,.home-devices,.ide-preview{width:calc(100% - 36px);padding:78px 0}.home-section-heading{margin-bottom:34px}.home-section-heading h2{font-size:clamp(32px,10vw,42px)}.home-section-heading>p,.split-heading>p{font-size:13px}.workflow-strip{grid-template-columns:1fr;margin-bottom:52px}.workflow-strip article{min-height:0;padding:22px;border-top:1px solid #e0e8e4;border-left:0}.workflow-strip article:first-child{border-top:0}.workflow-strip article:not(:last-child):after{top:auto;right:24px;bottom:-10px;content:"↓"}.workflow-strip b{margin-top:10px}.architecture-card{min-height:0}.architecture-copy{padding:38px 24px}.architecture-diagram{width:100%;padding:35px 18px;overflow:visible}.diagram-cloud,.diagram-gateway{width:100%;min-width:0}.architecture-diagram .diagram-gateway{grid-template-columns:45px 1fr}.architecture-diagram .diagram-gateway:after{display:none}.diagram-line.split{width:82%}.diagram-devices{grid-template-columns:1fr 1fr;width:100%;min-width:0}.matter-ecosystem-note{grid-template-columns:86px 1fr;padding:14px}.matter-mark{width:86px;min-height:46px;padding:8px 10px}.matter-assistants{grid-column:1 / -1}.guided-demo-section{padding:76px 18px}.guided-demo-shell{width:100%;overflow:hidden}.guided-demo-header{flex-wrap:wrap;gap:12px;padding:15px}.guided-demo-header>div{min-width:0}.guided-demo-header button{min-height:40px}.guided-steps{grid-template-columns:repeat(5,minmax(0,1fr))}.guided-steps button{flex-direction:column;gap:4px;min-width:0;min-height:65px;padding:7px 2px;font-size:6px}.guided-steps button i{width:20px;height:20px}.guided-panel{min-width:0;min-height:0;padding:28px 16px}.guided-panel h3{font-size:24px}.room-choice>div{grid-template-columns:1fr;margin-top:24px}.room-choice button{min-height:116px}.room-choice button b{margin-top:13px}.guided-logic-workspace{grid-template-columns:1fr;min-height:0}.guided-logic-workspace aside{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:12px;border-right:0;border-bottom:1px solid #29483f}.guided-logic-workspace aside>small{grid-column:1/-1}.guided-logic-workspace aside button{min-width:0;min-height:54px;margin:0;padding:8px 6px;text-align:center}.guided-dropzone{min-width:0;padding:16px 14px}.guided-node-row{grid-template-columns:1fr;gap:42px;min-height:430px;padding:24px 12px}.guided-node,.guided-node-placeholder{width:100%;min-width:0;min-height:82px}.guided-port.in,.guided-port.out{left:50%;right:auto;transform:translate(-50%,-50%)}.guided-port.in{top:-9px}.guided-port.out{top:auto;bottom:-9px;transform:translate(-50%,50%)}.guided-port:hover,.guided-port:focus-visible{transform:translate(-50%,-50%) scale(1.15)}.guided-port.out:hover,.guided-port.out:focus-visible{transform:translate(-50%,50%) scale(1.15)}.guided-node-row text{font-size:8px}.guided-connection-status{align-items:flex-start}.guided-wire-list button{min-height:38px}.hmi-test{grid-template-columns:1fr;gap:24px}.guided-hmi-device{width:min(100%,330px);margin:auto}.guided-sim-result{grid-column:1}.guided-deploy-target{grid-template-columns:42px 1fr}.guided-deploy-target em{grid-column:2}.guided-demo-actions{flex-wrap:wrap;min-width:0;padding:12px 14px}.guided-demo-actions>span{flex-basis:100%}.guided-demo-actions button{min-height:42px}.fbd-demo{overflow:hidden}.fbd-top{flex-wrap:wrap;gap:8px;min-width:0}.fbd-canvas{height:auto;min-width:0;overflow:visible;padding:18px}.fbd-stage{display:grid;grid-template-columns:1fr 1fr;gap:38px 10px;width:100%;height:auto}.fbd-canvas .node{position:relative;top:auto;left:auto;width:auto;min-width:0;min-height:96px}.fbd-canvas .node.logic,.fbd-canvas .node.timer,.fbd-canvas .node.light{grid-column:1/-1}.fbd-canvas .node:after{position:absolute;left:50%;bottom:-31px;color:#57cfaa;content:"↓";font-size:22px;transform:translate(-50%)}.fbd-canvas .node.light:after{display:none}.fbd-canvas .demo-port,.fbd-stage svg{display:none}.room-tree-panel,.cross-room-panel{min-height:0}.tree-level.one{margin-left:10px}.tree-level.two{margin-left:20px}.tree-children{margin-left:30px;padding-left:12px}.room-flow{grid-template-columns:1fr;gap:16px;padding:24px 0}.room-connection{width:2px;height:48px;margin:auto}.room-connection span{bottom:auto;left:12px;white-space:nowrap}.room-connection i{right:auto;bottom:-2px;left:-8px;transform:rotate(90deg)}.room-port{inset:auto auto -7px 50%;transform:translate(-50%)}.room-port.left{inset:-7px auto auto 50%;transform:translate(-50%)}.hmi-demo-section{padding:76px 18px}.hmi-demo-shell{width:100%}.hmi-demo-toolbar,.hmi-demo-footer{flex-wrap:wrap;justify-content:space-between;gap:8px;padding:13px}.hmi-demo-toolbar b{margin-left:0}.hmi-demo-workspace{grid-template-columns:1fr;min-height:0}.hmi-palette{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:14px;border-right:0;border-bottom:1px solid #203b35}.hmi-palette>small{grid-column:1/-1}.hmi-palette button{justify-content:center;min-width:0;min-height:52px;margin:0;padding:7px 4px;text-align:center}.hmi-palette button i{flex:0 0 23px}.hmi-palette-gap{margin-top:5px!important}.hmi-screen{padding:16px 12px}.hmi-screen-top{flex-wrap:wrap;gap:7px}.hmi-screen-grid{grid-template-columns:1fr 1fr;gap:8px}.hmi-widget{min-height:125px;padding:13px}.hmi-properties{border-top:1px solid #203b35;border-left:0}.hmi-steps{grid-template-columns:1fr 1fr}.consumer-app-demo{width:100%;overflow:visible;padding:0}.consumer-app-console{width:100%;min-width:0}.consumer-app-console>header{flex-wrap:wrap}.consumer-app-console>header>i{width:100%;margin-left:0}.consumer-app-workspace{grid-template-columns:1fr;min-height:0}.consumer-app-workspace>nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:8px;border-right:0;border-bottom:1px solid #dce6e2}.consumer-app-workspace>nav button{grid-template-columns:1fr;justify-items:center;min-width:0;min-height:66px;padding:7px 3px;text-align:center}.consumer-app-workspace>nav button>span{min-width:0}.consumer-app-workspace>nav small{display:none}.consumer-plan-area{padding:13px;border-right:0;border-bottom:1px solid #dce6e2}.consumer-plan-area>header{gap:8px}.consumer-plan-area header>span{text-align:right}.consumer-floorplan{height:330px}.consumer-room-panel{padding:14px}.consumer-home-3d{height:390px}.house-badge{min-width:76px;padding:6px}.house-general-info{grid-template-columns:1fr}.house-general-info article{padding:7px}.sound-now-playing{grid-template-columns:42px 1fr 38px}.sound-console>header,.sound-console>footer{flex-wrap:wrap;gap:8px}.sound-zones article{grid-template-columns:34px 1fr auto}.security-home-logo,.sound-home-logo{width:148px;height:148px}.ai-mini-flow{flex-wrap:wrap;overflow:visible}.ai-mini-flow span{flex:1 1 72px;min-width:0}.ai-mini-flow i{transform:rotate(90deg)}}@media(max-width:420px){.home-hero-content{width:calc(100% - 36px);padding-top:160px}.home-hero h1{font-size:36px}.home-proof{display:grid;grid-template-columns:1fr 1fr;row-gap:18px}.home-proof li{min-width:0;padding:0 12px}.home-proof li:nth-child(3){padding-left:0;border-left:0}.diagram-devices,.hmi-screen-grid,.hmi-steps{grid-template-columns:1fr}.stack-transports{grid-template-columns:1fr 1fr}.guided-logic-workspace aside{grid-template-columns:1fr}.guided-logic-workspace aside>small{grid-column:1}.guided-node-row{padding-right:4px;padding-left:4px}.guided-steps button span{max-width:100%;overflow:hidden;text-overflow:ellipsis}.sound-scenarios{grid-template-columns:1fr 1fr}.security-visual{transform:scale(.9);transform-origin:center}.security-page-nav{width:calc(100% - 24px)}.security-page-brand img{width:66px;height:62px}.security-nav-cta{font-size:7px}}.security-detail-link{display:inline-flex;gap:10px;align-items:center;margin:0 0 18px;padding:11px 14px;border:1px solid #73413f;border-radius:8px;color:#e7aaa5;background:#27191b;font-size:8px;font-weight:800;text-decoration:none}.security-detail-link b{color:#ee746c}.gateway-pairing-form select{width:100%;margin:4px 0;padding:9px;border:1px solid #29433b;border-radius:7px;outline:0;color:#c9dbd6;background:#10201c;font:inherit;font-size:8px}.gateway-project-access{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:13px 18px;border-bottom:1px solid #34594e;background:linear-gradient(90deg,#102a23,#0d1c18)}.gateway-project-access b,.gateway-project-access small{display:block}.gateway-project-access b{margin-top:3px;color:#73e3bb;font-size:11px}.gateway-project-access small{margin-top:3px;color:#82978f;font-size:8px}.gateway-project-access label{color:#81968f;font-size:8px}.gateway-project-access select{display:block;min-width:150px;margin-top:4px;padding:8px;border:1px solid #356052;border-radius:7px;color:#d1e7df;background:#10251f}.gateway-sections fieldset:disabled{opacity:.58}.hmi-widget-button{display:grid;place-items:center;border-color:#ffffff40;box-shadow:inset 0 -3px #0003}.hmi-widget-button b{font-size:.72em}.hmi-widget-switch{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:5px 8px}.hmi-widget-switch b{font-size:.62em}.hmi-widget-switch>span{position:relative;width:28px;height:15px;border-radius:20px;background:currentColor}.hmi-widget-switch>span i{position:absolute;top:2px;right:2px;width:11px;height:11px;border-radius:50%;background:#071312;box-shadow:0 1px 3px #00000080}.hmi-widget-slider{display:grid;grid-template:auto auto / 1fr auto;gap:3px 5px;align-content:center;padding:5px 8px}.hmi-widget-slider small,.hmi-widget-slider b{font-size:.55em}.hmi-widget-slider>div{position:relative;grid-column:1 / 3;height:5px;margin:3px 5px;border-radius:5px;background:#ffffff21}.hmi-widget-slider>div:before{content:"";display:block;width:68%;height:100%;border-radius:inherit;background:currentColor}.hmi-widget-slider>div i{position:absolute;top:50%;left:68%;width:12px;height:12px;border:2px solid #071312;border-radius:50%;background:currentColor;transform:translate(-50%,-50%)}
