*{margin:0;padding:0;box-sizing:border-box}body{font-family:PingFang SC,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000a1a;color:#d9e0ee;overflow:hidden}#root{width:100vw;height:100vh}.dashboard[data-v-c8474e5d]{width:100vw;height:100vh;display:flex;flex-direction:column;position:relative}.dashboard[data-v-c8474e5d]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 20%,rgba(30,96,233,.08) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(48,205,164,.05) 0%,transparent 50%);pointer-events:none}.header[data-v-c8474e5d]{height:60px;display:flex;align-items:center;justify-content:center;position:relative;z-index:10}.header-bg[data-v-c8474e5d]{position:absolute;top:0;left:0;right:0;height:100%;background:linear-gradient(180deg,rgba(4,30,80,.6) 0%,transparent 100%);border-bottom:1px solid rgba(31,97,233,.3)}.header-title[data-v-c8474e5d]{font-size:34px;font-weight:700;letter-spacing:6px;color:#fff;position:relative;z-index:1}.header-left[data-v-c8474e5d]{position:absolute;left:30px;display:flex;align-items:center;z-index:1}.header-right[data-v-c8474e5d]{position:absolute;right:30px;display:flex;align-items:center;gap:20px;z-index:1}.header-time[data-v-c8474e5d]{font-size:13px;color:#8ed2ff}.fullscreen-btn[data-v-c8474e5d]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid rgba(31,97,233,.4);background:#08143299;border-radius:4px;color:#8ed2ff;cursor:pointer;transition:all .3s ease}.fullscreen-btn[data-v-c8474e5d]:hover{background:#1f61e933;border-color:#1f61e9b3;color:#fff}.fullscreen-btn[data-v-c8474e5d]:active{transform:scale(.95)}.main-content[data-v-c8474e5d]{flex:1;display:grid;grid-template-columns:1fr 1.3fr 1.15fr;gap:12px;padding:12px;position:relative;z-index:1;min-height:0;width:100%;height:calc(100vh - 60px)}.left-panel[data-v-c8474e5d],.center-panel[data-v-c8474e5d],.right-panel[data-v-c8474e5d]{display:flex;flex-direction:column;gap:10px;overflow:hidden;min-height:0;height:100%}.panel-card[data-v-c8474e5d]{background:#040c23d9;border:1px solid rgba(31,97,233,.18);border-radius:4px;padding:12px;position:relative;overflow:hidden;flex-shrink:0}.panel-card[data-v-c8474e5d]:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(31,97,233,.5),transparent)}.panel-card[data-v-c8474e5d]:after{content:"";position:absolute;top:0;left:0;width:12px;height:12px;border-top:1px solid rgba(31,97,233,.6);border-left:1px solid rgba(31,97,233,.6)}.card-title[data-v-c8474e5d]{font-size:13px;font-weight:600;color:#d9e0ee;margin-bottom:10px;display:flex;align-items:center;gap:6px}.card-title[data-v-c8474e5d]:before{content:"";width:3px;height:13px;background:#1f61e9;border-radius:1px}.map-card .card-title[data-v-c8474e5d]{justify-content:center;gap:12px}.map-card .card-title[data-v-c8474e5d]:before{content:"";flex:1;height:1px;width:auto;background:linear-gradient(to right,transparent,rgba(31,97,233,.4));border-radius:0}.map-card .card-title[data-v-c8474e5d]:after{content:"";flex:1;height:1px;background:linear-gradient(to left,transparent,rgba(31,97,233,.4))}.stats-grid[data-v-c8474e5d]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;flex:1}.stat-item[data-v-c8474e5d]{text-align:center;padding:12px 8px;background:#08143299;border-radius:3px;border:1px solid rgba(31,97,233,.12);display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80px}.stat-icon[data-v-c8474e5d]{display:flex;align-items:center;justify-content:center;margin-bottom:6px;height:24px;width:24px}.stat-value[data-v-c8474e5d]{font-size:18px;font-weight:600;color:#30cda4;margin-bottom:2px}.stat-label[data-v-c8474e5d]{font-size:11px;color:#8ca7c3}.chart-container[data-v-c8474e5d]{width:100%;height:calc(100% - 35px);min-height:140px}.center-panel .map-card[data-v-c8474e5d]{flex:1;display:flex;flex-direction:column;min-height:180px;overflow:hidden}.center-panel .map-card .center-map[data-v-c8474e5d]{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;position:relative}.map-placeholder[data-v-c8474e5d]{width:100%;height:100%;background:#040c2380;border:1px solid rgba(31,97,233,.15);border-radius:4px;display:flex;align-items:center;justify-content:center;color:#8ca7c3;font-size:14px}.map-areas[data-v-c8474e5d]{position:absolute;top:15px;left:15px;right:15px;display:flex;gap:6px;flex-wrap:wrap}.map-area-tag[data-v-c8474e5d]{padding:3px 10px;background:#0f234680;border:1px solid rgba(31,97,233,.25);border-radius:2px;font-size:10px;color:#8ca7c3}.map-area-tag.active[data-v-c8474e5d]{background:#e8903a33;border-color:#e8903a80;color:#e8903a}.bottom-row[data-v-c8474e5d]{display:grid;grid-template-columns:40% 60%;gap:12px;flex:1;min-height:0;overflow:hidden}.bottom-row .panel-card[data-v-c8474e5d]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.quality-card .quality-progress[data-v-c8474e5d]{flex:1;overflow:hidden}.alarm-card[data-v-c8474e5d]{flex:1;display:flex;flex-direction:column;overflow:hidden}.alarm-stats[data-v-c8474e5d]{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px;flex-shrink:0}.alarm-stat-item[data-v-c8474e5d]{text-align:center;padding:10px 6px;background:#08143299;border-radius:3px;border:1px solid rgba(31,97,233,.12)}.alarm-stat-value[data-v-c8474e5d]{font-size:20px;font-weight:600;line-height:1.2}.alarm-stat-value.danger[data-v-c8474e5d]{color:#e84040}.alarm-stat-value.warning[data-v-c8474e5d]{color:#e8903a}.alarm-stat-value.processing[data-v-c8474e5d]{color:#1f61e9}.alarm-stat-value.resolved[data-v-c8474e5d]{color:#30cda4}.alarm-stat-label[data-v-c8474e5d]{font-size:10px;color:#7e8792;margin-top:2px}.alarm-table-wrap[data-v-c8474e5d]{flex:1;min-height:0;overflow:hidden}.alarm-table-wrap[data-v-c8474e5d]::-webkit-scrollbar{width:3px}.alarm-table-wrap[data-v-c8474e5d]::-webkit-scrollbar-track{background:#0f23464d}.alarm-table-wrap[data-v-c8474e5d]::-webkit-scrollbar-thumb{background:#1f61e940;border-radius:2px}.alarm-table[data-v-c8474e5d]{width:100%;border-collapse:collapse;font-size:11px}.alarm-table thead[data-v-c8474e5d]{position:sticky;top:0;z-index:1}.alarm-table th[data-v-c8474e5d]{color:#7e8792;font-weight:500;font-size:10px;padding:6px 4px;text-align:left;border-bottom:1px solid rgba(31,97,233,.2);background:#040c23f2}.alarm-table td[data-v-c8474e5d]{padding:6px 4px;color:#c0cada;border-bottom:1px solid rgba(31,97,233,.06);white-space:nowrap}.alarm-table tbody tr[data-v-c8474e5d]{height:32px}.alarm-td-time[data-v-c8474e5d]{color:#7e8792;font-size:10px}.alarm-td-desc[data-v-c8474e5d]{color:#d9e0ee;max-width:100px;overflow:hidden;text-overflow:ellipsis}.alarm-type-tag[data-v-c8474e5d]{padding:1px 6px;border-radius:4px;font-size:10px}.alarm-type-tag.danger[data-v-c8474e5d]{background:#e8404026;color:#e84040}.alarm-type-tag.warning[data-v-c8474e5d]{background:#e8903a26;color:#e8903a}.alarm-type-tag.info[data-v-c8474e5d]{background:#1f61e926;color:#1f61e9}.alarm-status-tag[data-v-c8474e5d]{padding:1px 6px;border-radius:4px;font-size:10px}.alarm-status-tag.pending[data-v-c8474e5d]{background:#e8404026;color:#e84040}.alarm-status-tag.processing[data-v-c8474e5d]{background:#e8903a26;color:#e8903a}.alarm-status-tag.resolved[data-v-c8474e5d]{background:#30cda426;color:#30cda4}.quality-progress[data-v-c8474e5d]{display:flex;flex-direction:column;height:100%;overflow:hidden}.quality-top[data-v-c8474e5d]{display:flex;gap:12px;flex-shrink:0;align-items:center}.quality-stats[data-v-c8474e5d]{flex:1;display:flex;flex-direction:column;gap:6px}.quality-stat-item[data-v-c8474e5d]{text-align:center;padding:10px 8px;background:#08143299;border-radius:3px;border:1px solid rgba(31,97,233,.12)}.quality-stat-label[data-v-c8474e5d]{display:block;color:#8ca7c3;font-size:10px;margin-bottom:4px}.quality-stat-value[data-v-c8474e5d]{font-size:18px;font-weight:600;color:#30cda4}.quality-warning-row[data-v-c8474e5d]{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;background:#08143299;border-radius:3px;border:1px solid rgba(31,97,233,.12);flex-shrink:0;margin:6px 0}.quality-warning-label[data-v-c8474e5d]{color:#e8903a;font-size:11px}.quality-warning-value[data-v-c8474e5d]{font-size:16px;font-weight:600;color:#e84040}.progress-circle[data-v-c8474e5d]{position:relative;width:110px;height:110px;flex-shrink:0}.progress-circle svg[data-v-c8474e5d]{width:100%;height:100%}.progress-value[data-v-c8474e5d]{position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);font-size:24px;font-weight:600;color:#30cda4}.progress-label-text[data-v-c8474e5d]{position:absolute;top:62%;left:50%;transform:translate(-50%);font-size:11px;color:#8ca7c3;white-space:nowrap}.quality-list[data-v-c8474e5d]{flex:1;min-height:0;overflow-y:auto;padding-top:6px;border-top:1px solid rgba(31,97,233,.15)}.quality-list-title[data-v-c8474e5d]{font-size:11px;color:#8ca7c3;margin-bottom:6px}.quality-item[data-v-c8474e5d]{display:flex;align-items:center;margin-bottom:4px}.quality-name[data-v-c8474e5d]{font-size:10px;color:#7e8792;width:52px}.quality-bar[data-v-c8474e5d]{flex:1;height:6px;background:#0f234699;border-radius:3px;overflow:hidden;margin:0 6px}.quality-fill[data-v-c8474e5d]{height:100%;background:linear-gradient(90deg,#1f61e9,#30cda4);border-radius:3px}.quality-percent[data-v-c8474e5d]{font-size:10px;color:#30cda4;width:32px;text-align:right}.storage-summary[data-v-c8474e5d]{display:flex;justify-content:space-between;margin-top:8px;padding-top:8px;border-top:1px solid rgba(31,97,233,.15)}.summary-label[data-v-c8474e5d]{font-size:11px;color:#7e8792}.summary-value[data-v-c8474e5d]{font-size:18px;font-weight:600;color:#1f61e9}.alarm-list[data-v-c8474e5d]{display:flex;flex-direction:column;gap:6px;height:100%;overflow-y:auto}.alarm-list[data-v-c8474e5d]::-webkit-scrollbar{width:3px}.alarm-list[data-v-c8474e5d]::-webkit-scrollbar-track{background:#0f23464d}.alarm-list[data-v-c8474e5d]::-webkit-scrollbar-thumb{background:#1f61e940;border-radius:2px}.alarm-item[data-v-c8474e5d]{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid rgba(31,97,233,.08)}.alarm-icon[data-v-c8474e5d]{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:4px;font-size:14px;flex-shrink:0}.alarm-icon.danger[data-v-c8474e5d]{background:#e8404026}.alarm-icon.warning[data-v-c8474e5d]{background:#e8903a26}.alarm-content[data-v-c8474e5d]{flex:1;min-width:0}.alarm-time[data-v-c8474e5d]{font-size:10px;color:#7e8792}.alarm-desc[data-v-c8474e5d]{font-size:12px;margin-top:2px;color:#d9e0ee}.alarm-area[data-v-c8474e5d]{font-size:10px;color:#e8903a;margin-top:1px}.alarm-status[data-v-c8474e5d]{padding:2px 7px;border-radius:6px;font-size:10px;flex-shrink:0}.alarm-status.pending[data-v-c8474e5d]{background:#e8404026;color:#e84040}.alarm-status.processing[data-v-c8474e5d]{background:#e8903a26;color:#e8903a}.right-panel .panel-card[data-v-c8474e5d]:not(:last-child){flex-shrink:0}.right-panel .panel-card[data-v-c8474e5d]:last-child{flex:1;min-height:0}.right-panel .panel-card[data-v-c8474e5d]:nth-child(3){flex-shrink:0;height:210px;display:flex;flex-direction:column}.right-panel .panel-card:nth-child(3) .robot-table-wrapper[data-v-c8474e5d]{flex:1;min-height:0;overflow-y:auto;max-height:155px}.right-panel .panel-card[data-v-c8474e5d]:nth-child(4){flex-shrink:0;height:240px;display:flex;flex-direction:column}.right-panel .panel-card:nth-child(4) .task-log[data-v-c8474e5d]{flex:1;min-height:0;overflow-y:auto;max-height:185px}.robot-status[data-v-c8474e5d]{display:flex;align-items:center;gap:16px;flex-shrink:0}.status-list[data-v-c8474e5d]{flex:1}.status-item[data-v-c8474e5d]{display:flex;align-items:center;gap:8px;margin-bottom:10px}.status-dot[data-v-c8474e5d]{width:9px;height:9px;border-radius:50%;flex-shrink:0}.status-dot.online[data-v-c8474e5d]{background:#30cda4;box-shadow:0 0 6px #30cda466}.status-dot.offline[data-v-c8474e5d]{background:#5a6478}.status-dot.collecting[data-v-c8474e5d]{background:#1f61e9;box-shadow:0 0 6px #1f61e966;animation:pulse-c8474e5d 1.5s infinite}@keyframes pulse-c8474e5d{0%,to{opacity:1}50%{opacity:.5}}.status-label[data-v-c8474e5d]{flex:1;font-size:12px;color:#c0cada}.status-count[data-v-c8474e5d]{font-size:15px;font-weight:600;color:#d9e0ee;margin-right:6px}.status-percent[data-v-c8474e5d]{font-size:12px;color:#7e8792}.status-ring[data-v-c8474e5d]{position:relative;width:110px;height:110px;flex-shrink:0}.ring-total[data-v-c8474e5d]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.ring-label[data-v-c8474e5d]{font-size:11px;color:#7e8792}.ring-value[data-v-c8474e5d]{font-size:22px;font-weight:600;color:#d9e0ee}.robot-table[data-v-c8474e5d]{width:100%;border-collapse:collapse;font-size:11px}.robot-table-wrapper[data-v-c8474e5d]{overflow:hidden;max-height:150px}.robot-table-wrapper[data-v-c8474e5d]::-webkit-scrollbar{width:3px}.robot-table tbody tr[data-v-c8474e5d]{height:30px}.robot-table-wrapper[data-v-c8474e5d]::-webkit-scrollbar-track{background:#0f23464d}.robot-table-wrapper[data-v-c8474e5d]::-webkit-scrollbar-thumb{background:#1f61e940;border-radius:2px}.robot-table th[data-v-c8474e5d],.robot-table td[data-v-c8474e5d]{padding:5px 4px;text-align:left;border-bottom:1px solid rgba(31,97,233,.08)}.robot-table thead[data-v-c8474e5d]{position:sticky;top:0;z-index:1}.robot-table th[data-v-c8474e5d]{color:#7e8792;font-weight:500;font-size:10px;background:#040c23f2}.robot-table td[data-v-c8474e5d]{color:#c0cada;font-size:11px}.robot-id[data-v-c8474e5d]{color:#30cda4;font-weight:500}.task-log[data-v-c8474e5d]{overflow:hidden;max-height:180px}.task-log[data-v-c8474e5d]::-webkit-scrollbar{width:3px}.task-log[data-v-c8474e5d]::-webkit-scrollbar-track{background:#0f23464d}.task-log[data-v-c8474e5d]::-webkit-scrollbar-thumb{background:#1f61e940;border-radius:2px}.log-table[data-v-c8474e5d]{width:100%;border-collapse:collapse;font-size:11px}.log-table thead[data-v-c8474e5d]{position:sticky;top:0;z-index:1}.log-table th[data-v-c8474e5d]{color:#7e8792;font-weight:500;font-size:10px;padding:5px 4px;text-align:left;border-bottom:1px solid rgba(31,97,233,.2);background:#040c23f2}.log-table td[data-v-c8474e5d]{padding:4px;color:#c0cada;border-bottom:1px solid rgba(31,97,233,.06);white-space:nowrap}.log-table tbody tr[data-v-c8474e5d]{height:28px}.log-td-time[data-v-c8474e5d]{color:#7e8792;font-size:10px}.log-td-task[data-v-c8474e5d]{color:#d9e0ee}.log-td-robot[data-v-c8474e5d]{color:#30cda4;font-size:10px}.log-td-area[data-v-c8474e5d]{color:#e8903a;font-size:10px}.log-td-status[data-v-c8474e5d]{padding:1px 5px;border-radius:4px;font-size:9px;background:#30cda41f;color:#30cda4}.resource-grid[data-v-c8474e5d]{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.resource-item[data-v-c8474e5d]{text-align:center;padding:8px}.resource-circle[data-v-c8474e5d]{position:relative;width:55px;height:55px;margin:0 auto 6px}.resource-percent[data-v-c8474e5d]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;font-weight:600;color:#30cda4}.resource-label[data-v-c8474e5d]{font-size:10px;color:#7e8792}.network-section[data-v-c8474e5d]{margin-top:12px}.network-chart[data-v-c8474e5d]{height:70px}
