.map-wrapper[data-v-37b3314a]{position:relative;width:100%;height:clamp(480px,64vh,720px);min-height:480px;overflow:hidden;background:#f1f3ef}canvas[data-v-37b3314a]{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.tool-select canvas[data-v-37b3314a]{cursor:default}.tool-pan canvas[data-v-37b3314a]{cursor:grab}.tool-pan canvas[data-v-37b3314a]:active{cursor:grabbing}.map-legend[data-v-37b3314a]{position:absolute;left:12px;bottom:10px;display:flex;flex-wrap:wrap;gap:10px;padding:6px 8px;border:1px solid rgba(37,48,42,.14);border-radius:4px;background:#ffffffed;color:#59635d;font-size:10px}.map-legend span[data-v-37b3314a]{display:inline-flex;align-items:center;gap:5px}.map-legend i[data-v-37b3314a]{display:block;width:16px;height:0}.legend-path[data-v-37b3314a]{border-top:2px dashed #117b74}.legend-trace[data-v-37b3314a]{border-top:3px solid #315f92}.legend-obstacle[data-v-37b3314a]{height:8px!important;border:1px dashed #d58a2f;background:#d58a2f55}.legend-footprint[data-v-37b3314a]{height:10px!important;width:10px!important;border:1px dashed #315f92;border-radius:50%}@media(max-width:800px){.map-wrapper[data-v-37b3314a]{height:55vh;min-height:420px}.map-legend[data-v-37b3314a]{right:12px}}.editor-panel[data-v-4c2ef6f0]{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.editor-header[data-v-4c2ef6f0]{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;border-bottom:1px solid var(--line)}.editor-header h2[data-v-4c2ef6f0]{margin:2px 0 0;font-size:15px;line-height:1.2}.section-kicker[data-v-4c2ef6f0]{margin:0;color:var(--text-tertiary);font-size:10px;text-transform:uppercase}.icon-button[data-v-4c2ef6f0]{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:0;border-radius:4px;color:var(--text-secondary);background:transparent;cursor:pointer}.icon-button[data-v-4c2ef6f0]:hover{background:var(--surface-hover)}.coordinate-row[data-v-4c2ef6f0]{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:9px 14px;border-bottom:1px solid var(--line);color:var(--text-secondary);font-size:11px;font-variant-numeric:tabular-nums}.coordinate-row span[data-v-4c2ef6f0]:last-child{grid-column:1 / -1;color:var(--accent)}.editor-form[data-v-4c2ef6f0]{display:grid;gap:10px;padding:14px}label[data-v-4c2ef6f0]{display:grid;gap:5px;color:var(--text-secondary);font-size:11px}input[data-v-4c2ef6f0],select[data-v-4c2ef6f0],textarea[data-v-4c2ef6f0]{width:100%;min-width:0;border:1px solid var(--line-strong);border-radius:4px;background:#fff;color:var(--text);font:inherit;font-size:12px}input[data-v-4c2ef6f0],select[data-v-4c2ef6f0]{height:34px;padding:0 9px}textarea[data-v-4c2ef6f0]{resize:vertical;padding:8px 9px}.check-row[data-v-4c2ef6f0]{display:flex;grid-auto-flow:column;align-items:center;justify-content:start;gap:7px}.check-row input[data-v-4c2ef6f0]{width:15px;height:15px;accent-color:var(--accent)}.field-grid[data-v-4c2ef6f0],.form-actions[data-v-4c2ef6f0]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.primary-button[data-v-4c2ef6f0],.danger-button[data-v-4c2ef6f0]{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;border-radius:4px;font-weight:600;font-size:12px;cursor:pointer}.primary-button[data-v-4c2ef6f0]{border:1px solid var(--accent);background:var(--accent);color:#fff}.danger-button[data-v-4c2ef6f0]{border:1px solid #d4aaa6;background:#fff;color:#983a33}.primary-button[data-v-4c2ef6f0]:disabled,.danger-button[data-v-4c2ef6f0]:disabled{opacity:.5;cursor:wait}.readonly-block[data-v-4c2ef6f0]{display:grid;grid-template-columns:1fr auto;gap:8px 12px;padding:11px;border:1px solid var(--line);border-radius:4px;background:var(--surface-subtle);font-size:11px}.readonly-block span[data-v-4c2ef6f0]{color:var(--text-tertiary)}.readonly-block strong[data-v-4c2ef6f0]{font-weight:600}.furniture-readonly[data-v-4c2ef6f0]{margin:14px}.editor-empty[data-v-4c2ef6f0]{padding:42px 14px;color:var(--text-tertiary);font-size:12px;text-align:center}.map-toolbar[data-v-63f69342]{display:flex;align-items:center;min-height:42px;padding:5px 8px;gap:4px;border-bottom:1px solid var(--line);background:var(--surface)}.tool-button[data-v-63f69342],.icon-button[data-v-63f69342]{display:inline-flex;align-items:center;justify-content:center;height:32px;border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer}.tool-button[data-v-63f69342]{gap:6px;padding:0 10px;border-radius:4px;font-size:12px}.icon-button[data-v-63f69342]{width:32px;border-radius:4px}.tool-button[data-v-63f69342]:hover,.icon-button[data-v-63f69342]:hover{background:var(--surface-hover);color:var(--text)}.tool-button.active[data-v-63f69342]{border-color:#a6c9ba;background:#e9f4ef;color:#0f6b4c}.tool-separator[data-v-63f69342]{width:1px;height:22px;margin:0 4px;background:var(--line)}.tool-spacer[data-v-63f69342]{flex:1}.zoom-label[data-v-63f69342]{width:42px;color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-size:11px;text-align:right}@media(max-width:650px){.tool-button span[data-v-63f69342]{display:none}.tool-button[data-v-63f69342]{width:32px;padding:0}}.capability-panel[data-v-8657f859]{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}header[data-v-8657f859]{padding:12px 14px;border-bottom:1px solid var(--line)}header p[data-v-8657f859]{margin:0;color:var(--text-tertiary);font-size:10px}header h2[data-v-8657f859]{margin:2px 0 0;font-size:14px}.capability-columns[data-v-8657f859]{display:grid;grid-template-columns:repeat(3,1fr)}.capability-columns>div[data-v-8657f859]{display:grid;grid-template-columns:20px minmax(0,1fr);gap:5px 7px;align-content:start;padding:12px;border-right:1px solid var(--line)}.capability-columns>div[data-v-8657f859]:last-child{border-right:0}.capability-columns svg[data-v-8657f859]{color:var(--accent)}.capability-columns strong[data-v-8657f859]{font-size:11px}.capability-columns span[data-v-8657f859]{grid-column:2;color:var(--text-secondary);font-size:9px;line-height:1.4}@media(max-width:820px){.capability-columns[data-v-8657f859]{grid-template-columns:1fr}.capability-columns>div[data-v-8657f859]{border-right:0;border-bottom:1px solid var(--line)}}.timeline-panel[data-v-bb2dc67a]{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.panel-header[data-v-bb2dc67a]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line)}.panel-header p[data-v-bb2dc67a]{margin:0;color:var(--text-tertiary);font-size:10px}.panel-header h2[data-v-bb2dc67a]{margin:2px 0 0;font-size:14px}.panel-header>span[data-v-bb2dc67a]{color:var(--text-tertiary);font-size:10px}.timeline[data-v-bb2dc67a]{max-height:330px;margin:0;padding:0;overflow:auto;list-style:none}.timeline li[data-v-bb2dc67a]{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;padding:9px 12px;border-bottom:1px solid var(--line)}.timeline li[data-v-bb2dc67a]:last-child{border-bottom:0}.event-icon[data-v-bb2dc67a]{color:#637069}.warning .event-icon[data-v-bb2dc67a]{color:#a66a17}.error .event-icon[data-v-bb2dc67a]{color:#a33d35}.success .event-icon[data-v-bb2dc67a]{color:#147052}.timeline li>div[data-v-bb2dc67a]:last-child{display:grid;gap:3px;min-width:0}.timeline strong[data-v-bb2dc67a]{font-size:11px;font-weight:600;line-height:1.45}.timeline span[data-v-bb2dc67a]{color:var(--text-tertiary);font-family:var(--mono);font-size:8px;overflow-wrap:anywhere}.empty[data-v-bb2dc67a]{margin:0;padding:28px 14px;color:var(--text-tertiary);font-size:11px;text-align:center}.mission-panel[data-v-e5700bba]{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.panel-header[data-v-e5700bba]{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border-bottom:1px solid var(--line)}.panel-header h2[data-v-e5700bba]{margin:2px 0 0;font-size:15px}.section-kicker[data-v-e5700bba]{margin:0;color:var(--text-tertiary);font-size:10px;text-transform:uppercase}.status-chip[data-v-e5700bba]{max-width:130px;padding:4px 7px;border:1px solid var(--line);border-radius:3px;background:var(--surface-subtle);color:var(--text-secondary);font-family:var(--mono);font-size:9px;overflow-wrap:anywhere}.status-chip.navigating[data-v-e5700bba],.status-chip.observing[data-v-e5700bba]{border-color:#9bc8b7;background:#e8f4ef;color:#106548}.status-chip.needs_assistance[data-v-e5700bba],.status-chip.replanning[data-v-e5700bba]{border-color:#dfbd83;background:#fff6e5;color:#8d5a13}.status-chip.failed[data-v-e5700bba]{border-color:#ddb0ac;background:#fbebea;color:#913b34}.metric-grid[data-v-e5700bba]{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.metric-grid>div[data-v-e5700bba]{display:grid;grid-template-columns:18px 1fr;gap:2px 7px;min-width:0;padding:10px 12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.metric-grid>div[data-v-e5700bba]:nth-child(2n){border-right:0}.metric-grid svg[data-v-e5700bba],.sensor-dot[data-v-e5700bba]{grid-row:1 / 3;align-self:center;color:var(--accent)}.metric-grid span[data-v-e5700bba]{color:var(--text-tertiary);font-size:10px}.metric-grid strong[data-v-e5700bba]{min-width:0;font-size:12px;overflow-wrap:anywhere}.sensor-dot[data-v-e5700bba]{width:8px;height:8px;border:2px solid var(--accent);border-radius:50%;margin-left:3px}.counter-row[data-v-e5700bba]{display:flex;justify-content:space-between;gap:8px;padding:9px 12px;border-bottom:1px solid var(--line);color:var(--text-secondary);font-size:10px;font-variant-numeric:tabular-nums}.counter-row strong[data-v-e5700bba]{color:var(--text)}.intent-block[data-v-e5700bba]{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;padding:12px}.intent-block div[data-v-e5700bba]{display:grid;gap:3px;min-width:0}.intent-block span[data-v-e5700bba]{color:var(--text-tertiary);font-size:10px}.intent-block strong[data-v-e5700bba]{font-size:11px;overflow-wrap:anywhere}.confidence[data-v-e5700bba]{grid-column:1 / -1;grid-template-columns:1fr auto!important}.confidence i[data-v-e5700bba]{grid-column:1 / -1;height:4px;overflow:hidden;background:#e2e7e2}.confidence b[data-v-e5700bba]{display:block;height:100%;background:var(--accent)}.failure[data-v-e5700bba]{margin:0 12px 12px;padding:9px 10px;border-left:3px solid #a43f37;background:#faeceb;color:#762e29;font-size:11px;line-height:1.5}.failure strong[data-v-e5700bba]{display:block;font-family:var(--mono);font-size:9px}.result-block[data-v-e5700bba]{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px;padding:12px;border-top:1px solid var(--line);background:#edf6f1}.result-block div[data-v-e5700bba]{display:grid;gap:2px;min-width:0}.result-block span[data-v-e5700bba]{color:var(--text-tertiary);font-size:9px}.result-block strong[data-v-e5700bba]{font-size:11px;overflow-wrap:anywhere}.search-panel[data-v-fe5280da]{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.panel-header[data-v-fe5280da]{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line)}.panel-header p[data-v-fe5280da]{margin:0;color:var(--text-tertiary);font-size:10px}.panel-header h2[data-v-fe5280da]{margin:2px 0 0;font-size:14px}.panel-header svg[data-v-fe5280da]{color:var(--accent)}.area-list[data-v-fe5280da]{max-height:300px;overflow:auto}.area-row[data-v-fe5280da]{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:3px 8px;padding:10px 12px;border-bottom:1px solid var(--line)}.area-row[data-v-fe5280da]:last-child{border-bottom:0}.area-row.active[data-v-fe5280da]{background:#eef7f2}.area-icon[data-v-fe5280da]{grid-row:1 / 3;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary)}.active .area-icon[data-v-fe5280da]{color:var(--accent)}.searched .area-icon[data-v-fe5280da]{color:#315f92}.area-copy[data-v-fe5280da]{display:grid;gap:2px;min-width:0}.area-copy strong[data-v-fe5280da]{font-size:11px}.area-copy span[data-v-fe5280da],.area-status[data-v-fe5280da]{color:var(--text-tertiary);font-size:9px}.area-status[data-v-fe5280da]{align-self:start;white-space:nowrap}.score-track[data-v-fe5280da]{grid-column:2 / 4;height:3px;background:#e3e7e3}.score-track i[data-v-fe5280da]{display:block;height:100%;background:#789c8c}.area-row p[data-v-fe5280da]{grid-column:2 / 4;margin:3px 0 0;color:var(--text-secondary);font-size:9px;line-height:1.4}.empty[data-v-fe5280da]{margin:0;padding:28px 14px;color:var(--text-tertiary);font-size:11px;text-align:center}.command-bar[data-v-0ff37004]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.command-input[data-v-0ff37004]{display:grid;gap:6px}label[data-v-0ff37004]{color:var(--text-secondary);font-size:11px;font-weight:600}.input-row[data-v-0ff37004]{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}input[data-v-0ff37004]{min-width:0;height:39px;padding:0 11px;border:1px solid var(--line-strong);border-radius:4px;background:#fff;color:var(--text);font-size:13px}input[data-v-0ff37004]:focus{outline:2px solid #b8d9cb;border-color:var(--accent)}.primary-button[data-v-0ff37004],.control-button[data-v-0ff37004]{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:39px;padding:0 14px;border-radius:4px;font-weight:600;font-size:12px;cursor:pointer;white-space:nowrap}.primary-button[data-v-0ff37004],.control-button.primary[data-v-0ff37004]{border:1px solid var(--accent);background:var(--accent);color:#fff}.control-button[data-v-0ff37004]{border:1px solid var(--line-strong);background:#fff;color:var(--text)}.control-button.danger[data-v-0ff37004]{border-color:#d5aaa6;color:#923a34}button[data-v-0ff37004]:disabled{opacity:.5;cursor:wait}.task-controls[data-v-0ff37004]{display:flex;gap:6px}@media(max-width:720px){.command-bar[data-v-0ff37004]{grid-template-columns:1fr}.task-controls[data-v-0ff37004]{justify-content:flex-end}}.app-shell[data-v-3380324d]{min-height:100vh;background:var(--app-bg);color:var(--text)}.topbar[data-v-3380324d]{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 18px;border-bottom:1px solid var(--line);background:#fffffff5}.brand-block[data-v-3380324d]{display:flex;align-items:center;gap:9px}.brand-block>svg[data-v-3380324d]{color:var(--accent)}.brand-block div[data-v-3380324d]{display:grid;gap:1px}.brand-block strong[data-v-3380324d]{font-size:14px}.brand-block span[data-v-3380324d]{color:var(--text-tertiary);font-size:10px}.system-meta[data-v-3380324d]{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:10px}.system-meta>span[data-v-3380324d]{display:inline-flex;align-items:center;gap:5px;min-height:25px;padding:0 7px;border:1px solid var(--line);border-radius:3px;background:var(--surface)}.adapter-badge[data-v-3380324d]{color:#315f92}.connection.connected[data-v-3380324d]{color:var(--accent)}.refresh-button[data-v-3380324d]{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--text-secondary);cursor:pointer}.error-banner[data-v-3380324d]{display:flex;align-items:center;gap:8px;padding:9px 18px;border-bottom:1px solid #dbadaa;background:#faeaea;color:#81342f;font-size:11px}.loading-state[data-v-3380324d]{display:grid;min-height:calc(100vh - 56px);place-items:center;color:var(--text-tertiary);font-size:12px}.workbench[data-v-3380324d]{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:12px;padding:12px 12px 0}.map-surface[data-v-3380324d]{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.surface-header[data-v-3380324d]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid var(--line)}.surface-header p[data-v-3380324d]{margin:0;color:var(--text-tertiary);font-family:var(--mono);font-size:9px}.surface-header h1[data-v-3380324d]{margin:2px 0 0;font-size:15px}.surface-summary[data-v-3380324d]{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 12px;color:var(--text-secondary);font-size:10px;font-variant-numeric:tabular-nums}.side-rail[data-v-3380324d]{display:grid;align-content:start;gap:10px;min-width:0}.operations[data-v-3380324d]{display:grid;gap:10px;padding:10px 12px 18px}.operations-grid[data-v-3380324d]{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(480px,1.2fr);gap:10px}@media(max-width:1080px){.workbench[data-v-3380324d]{grid-template-columns:1fr}.side-rail[data-v-3380324d]{grid-template-columns:repeat(2,minmax(0,1fr))}.side-rail[data-v-3380324d]>:last-child{grid-column:1 / -1}.operations-grid[data-v-3380324d]{grid-template-columns:1fr}}@media(max-width:700px){.topbar[data-v-3380324d]{align-items:flex-start;padding:10px 12px;gap:8px}.system-meta[data-v-3380324d]{justify-content:flex-end;flex-wrap:wrap}.system-meta>span[data-v-3380324d]:first-child{display:none}.workbench[data-v-3380324d],.operations[data-v-3380324d]{padding-left:6px;padding-right:6px}.side-rail[data-v-3380324d]{grid-template-columns:1fr}.side-rail[data-v-3380324d]>:last-child{grid-column:auto}.surface-header[data-v-3380324d]{align-items:flex-start}.surface-summary[data-v-3380324d]{max-width:150px}}:root{font-family:Inter,Segoe UI,Microsoft YaHei,Arial,sans-serif;color:#202722;background:#f3f5f2;font-synthesis:none;text-rendering:optimizeLegibility;--app-bg: #f3f5f2;--surface: #ffffff;--surface-subtle: #f7f9f6;--surface-hover: #eef2ee;--line: #d9ded9;--line-strong: #bdc5be;--text: #202722;--text-secondary: #59635d;--text-tertiary: #7a847d;--accent: #167553;--radius: 6px;--mono: "Cascadia Mono", "SFMono-Regular", Consolas, monospace}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font-family:inherit;letter-spacing:0}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #9fc9b7;outline-offset:1px}button{letter-spacing:0}::selection{background:#cce2d8;color:#173126}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:6px;background:#b8c0ba;background-clip:content-box}::-webkit-scrollbar-track{background:transparent}
