#app{font-family:Avenir,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-align:center;color:#3e5573}.noselect,.noselect[data-v-73e18829],.noselect[data-v-5745872f]{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.service-chip[data-v-03277356]{transition:box-shadow .3s ease,letter-spacing .3s ease}.service-chip[data-v-03277356]:hover{box-shadow:0 0 12px currentColor;letter-spacing:1px}.noselect[data-v-03277356]{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.visually-hidden[data-v-2e54b80f]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.vacuum-map-wrap[data-v-99437b40]{position:relative;background:#1a1a1a;border-radius:8px;overflow:hidden;width:100%;height:65vh;min-height:320px;touch-action:none;cursor:grab;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vacuum-map-wrap[data-v-99437b40]:active{cursor:grabbing}.vacuum-map-wrap.pin-mode[data-v-99437b40]{cursor:crosshair}.vacuum-map-banner[data-v-99437b40]{position:absolute;top:8px;left:8px;right:8px;background:rgba(255,193,7,.85);color:#000;padding:4px 8px;border-radius:6px;font-size:12px;text-align:center;pointer-events:none;z-index:2}.vacuum-map-canvas[data-v-99437b40]{position:absolute;top:0;left:0;display:block;-ms-interpolation-mode:nearest-neighbor;image-rendering:pixelated;image-rendering:crisp-edges;will-change:transform}.vacuum-map-controls[data-v-99437b40]{position:absolute;right:8px;bottom:8px;display:flex;flex-direction:column;gap:4px;background:rgba(0,0,0,.55);border-radius:6px;padding:4px;z-index:2}.vacuum-map-empty[data-v-99437b40]{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.marker-layer[data-v-99437b40]{position:absolute;inset:0;pointer-events:none;z-index:1}.marker-layer .v-icon[data-v-99437b40]{position:absolute;transform:translate(-50%,-50%);text-shadow:0 0 4px rgba(0,0,0,.85)}.robot-marker[data-v-99437b40]{font-size:42px!important;color:#ff5252!important}.charger-marker[data-v-99437b40]{font-size:26px!important;color:#4caf50!important}.goto-marker[data-v-99437b40]{font-size:34px!important;color:#ffd740!important;animation:goto-pulse-data-v-99437b40 1.2s ease-out infinite}@keyframes goto-pulse-data-v-99437b40{0%{transform:translate(-50%,-50%) scale(1);opacity:1}50%{transform:translate(-50%,-50%) scale(1.15);opacity:.7}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.kv-grid[data-v-04e57a74]{display:grid;grid-template-columns:auto 1fr;-moz-column-gap:16px;column-gap:16px;row-gap:4px;font-size:13px;line-height:1.4;text-align:left}.kv-label[data-v-04e57a74]{color:hsla(0,0%,100%,.6);white-space:nowrap}.kv-value[data-v-04e57a74]{color:#fff}.joystick-pad[data-v-4248ce15]{width:240px;height:240px;margin:0 auto;border-radius:50%;background:radial-gradient(circle at center,#2a2a2a 0,#1a1a1a 70%,#111 100%);position:relative;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid #444;box-shadow:inset 0 0 16px rgba(0,0,0,.6)}.pad-axis[data-v-4248ce15]{position:absolute;background:hsla(0,0%,100%,.06)}.pad-axis-x[data-v-4248ce15]{left:8%;right:8%;top:50%;height:1px;transform:translateY(-50%)}.pad-axis-y[data-v-4248ce15]{top:8%;bottom:8%;left:50%;width:1px;transform:translateX(-50%)}.pad-knob[data-v-4248ce15]{position:absolute;left:50%;top:50%;width:60px;height:60px;margin-left:-30px;margin-top:-30px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ff8a80,#d32f2f);box-shadow:0 4px 10px rgba(0,0,0,.55);transition:transform 80ms ease-out;pointer-events:none}.readout[data-v-4248ce15]{font-family:monospace;font-size:12px;color:hsla(0,0%,100%,.75)}.readout-label[data-v-4248ce15]{color:hsla(0,0%,100%,.45);margin-right:4px}.readout-sep[data-v-4248ce15]{margin:0 10px;color:hsla(0,0%,100%,.25)}.hint[data-v-4248ce15]{font-size:11px;color:hsla(0,0%,100%,.45)}.hint .v-icon[data-v-4248ce15]{vertical-align:-2px;margin-right:4px;color:hsla(0,0%,100%,.45)}.vacuum-view[data-v-441593fe]{color:#fff}.room-tile[data-v-441593fe]{cursor:pointer;transition:transform .12s ease}.room-tile[data-v-441593fe]:hover{transform:translateY(-2px)}.kv-tree[data-v-5a0d9a5f]{text-align:left}.kv-tree-nested[data-v-5a0d9a5f]{margin-left:16px;padding-left:12px;border-left:2px solid hsla(0,0%,100%,.08);margin-top:4px;margin-bottom:8px}.kv-row[data-v-5a0d9a5f]{padding:2px 0}.kv-pair[data-v-5a0d9a5f]{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:6px 8px;border-bottom:1px solid hsla(0,0%,100%,.05)}.kv-pair[data-v-5a0d9a5f]:last-child{border-bottom:none}.kv-key[data-v-5a0d9a5f]{color:#888;font-size:13px;white-space:nowrap}.kv-value[data-v-5a0d9a5f]{font-family:Consolas,Courier New,monospace;font-size:14px;color:#d4d4d4;text-align:right;word-break:break-all}.kv-group-label[data-v-5a0d9a5f]{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#5b9bd5;margin-top:8px;margin-bottom:4px;font-weight:600}.kv-empty[data-v-5a0d9a5f]{color:#666;font-style:italic;padding:8px}.kv-path[data-v-9adbda32]{font-family:Consolas,Courier New,monospace;font-size:13px;color:#888;font-weight:400}.kv-placeholder[data-v-9adbda32]{color:#666;font-style:italic;padding:8px}.response-block[data-v-9adbda32]{background-color:#1e1e1e;color:#d4d4d4;padding:12px;border-radius:4px;overflow-x:auto;font-family:Consolas,Courier New,monospace;font-size:13px;white-space:pre-wrap;word-break:break-all;text-align:left}