.trajectory-details[data-v-5f887341]{height:100%;background:#fff;box-sizing:border-box}.details-header[data-v-5f887341]{display:flex;align-items:center;height:38px;padding:0 10px;color:#111;font-size:15px;border-bottom:1px solid #eef1f6;box-sizing:border-box}.back-button[data-v-5f887341]{padding:0;margin-right:10px;color:#111;font-size:14px;line-height:1;background:transparent;border:0;cursor:pointer}.person-name[data-v-5f887341]{font-weight:500}.details-card[data-v-5f887341]{margin:0 8px;height:calc(100% - 38px);box-sizing:border-box;overflow-y:auto}.details-toolbar[data-v-5f887341]{display:flex;align-items:center;justify-content:space-between;height:44px;padding:0 12px;border-bottom:1px solid #e8edf5;box-sizing:border-box}.date-filter[data-v-5f887341]{display:flex;align-items:center;color:#647386;font-size:14px}.date-filter[data-v-5f887341] .el-date-editor.el-input{width:152px}.date-filter[data-v-5f887341] .el-input__inner{height:32px;line-height:32px;border-radius:2px}.emptyCl[data-v-5f887341]{height:calc(100% - 44px);display:flex;align-items:center;justify-content:center}.cross-count[data-v-5f887341]{color:#ff1d2d;font-size:14px;font-weight:500}.timeline[data-v-5f887341]{position:relative;padding:14px 14px 24px 96px}.timeline[data-v-5f887341] .el-timeline{padding-left:0}.timeline[data-v-5f887341] .el-timeline-item{padding-bottom:26px}.timeline[data-v-5f887341] .el-timeline-item:last-child{padding-bottom:0}.timeline[data-v-5f887341] .el-timeline-item__tail{left:4px;border-left-color:#dfe3ea}.timeline[data-v-5f887341] .el-timeline-item__node{left:0;width:9px;height:9px}.timeline[data-v-5f887341] .el-timeline-item__wrapper{top:-5px;padding-left:16px}.timeline .trajectory-item[data-v-5f887341]{position:relative;min-height:70px;cursor:pointer}.timeline .trajectory-item .trajectory-time[data-v-5f887341]{position:absolute;top:0;left:-90px;width:86px;color:#7b8794;font-size:14px;font-weight:600;line-height:24px;text-align:left}.timeline .trajectory-item .trajectory-content[data-v-5f887341]{margin:-2px -4px;padding:2px 4px;border-radius:4px;color:#17233d;transition:background-color .2s ease,box-shadow .2s ease}.timeline .trajectory-item .trajectory-content.is-valid .status-tag[data-v-5f887341]{color:#67b31b;background:#eefbdc}.timeline .trajectory-item .trajectory-content.is-cross .trajectory-title[data-v-5f887341]{color:#ff1d2d}.timeline .trajectory-item .trajectory-content.is-cross .status-tag[data-v-5f887341]{color:#ff1d2d;background:#ffecef}.timeline .trajectory-item .trajectory-content.is-timeout .status-tag[data-v-5f887341]{color:#17233d;background:#f1f2f4}.timeline .trajectory-item .trajectory-content .trajectory-title[data-v-5f887341]{display:flex;align-items:center;min-height:24px;font-size:14px;line-height:24px}.timeline .trajectory-item .trajectory-content .trajectory-title .status-tag[data-v-5f887341]{flex:0 0 auto;min-width:42px;height:22px;margin-right:10px;padding:0 8px;border-radius:4px;font-size:12px;line-height:22px;text-align:center;box-sizing:border-box}.timeline .trajectory-item .trajectory-content .trajectory-title .address[data-v-5f887341]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline .trajectory-item .trajectory-content .device-info[data-v-5f887341]{margin-top:8px;color:#9aa4b2;font-size:13px;line-height:18px}.timeline .trajectory-item.is-flashing .trajectory-content[data-v-5f887341]{animation:trace-detail-flash-data-v-5f887341 1.2s ease-in-out}.timeline .is-valid-tag[data-v-5f887341]{color:#67b31b!important;background:#eefbdc!important}.timeline .is-cross-tag[data-v-5f887341]{color:#ff1d2d!important;background:#ffecef!important}.timeline .is-timeout-tag[data-v-5f887341]{color:#17233d!important;background:#f1f2f4!important}@keyframes trace-detail-flash-data-v-5f887341{0%,to{background:transparent;box-shadow:0 0 0 2px rgba(64,158,255,.16)}25%,75%{background:#ecf5ff;box-shadow:0 0 0 3px rgba(64,158,255,.34)}50%{background:transparent;box-shadow:0 0 0 2px rgba(64,158,255,.16)}}.home-map-page[data-v-2cf8aa93]{height:calc(100vh - 105px);min-height:680px;padding:0 4px 4px;color:#1f2d3d;background:#f5f7fb;box-sizing:border-box}.page-title[data-v-2cf8aa93]{height:45px;padding:0 12px;font-size:14px;font-weight:700;color:#111;background:#fff;border:1px solid #e5eaf2;border-bottom:0;border-radius:6px 6px 0 0;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between}.map-layout[data-v-2cf8aa93]{display:flex;align-items:stretch;height:calc(100% - 45px);background:#fff;border:1px solid #e5eaf2;box-sizing:border-box}.map-layout.summary-collapsed .map-search[data-v-2cf8aa93]{right:28px}.map-panel[data-v-2cf8aa93]{position:relative;flex:1;min-width:0;overflow:hidden;background:#e9eef5}.mock-map[data-v-2cf8aa93],.real-map[data-v-2cf8aa93]{position:absolute;inset:0}.real-map[data-v-2cf8aa93]{opacity:0;transition:opacity .2s ease}.real-map.is-ready[data-v-2cf8aa93]{opacity:1;z-index:1}.mock-map[data-v-2cf8aa93]{z-index:0;overflow:hidden;background:linear-gradient(90deg,hsla(0,0%,100%,.58) 1px,transparent 0) 0 0 78px,linear-gradient(hsla(0,0%,100%,.58) 1px,transparent 0) 0 0 78px,#edf2f7}.mock-map.is-hidden[data-v-2cf8aa93]{display:none}.map-search[data-v-2cf8aa93]{position:absolute;z-index:3;top:14px;right:20px;display:flex;width:315px;height:34px}.map-search[data-v-2cf8aa93] .el-input__inner{height:34px;line-height:34px;border-radius:2px 0 0 2px}.map-search .el-button[data-v-2cf8aa93]{width:72px;height:34px;margin-left:8px;border-radius:2px}.summary-panel[data-v-2cf8aa93]{position:relative;z-index:3;width:460px;height:100%;border-left:1px solid #e0e6ef;background:#fff;box-sizing:border-box}.summary-panel[data-v-2cf8aa93]:before{position:absolute;top:0;bottom:0;left:-14px;width:14px;content:"";pointer-events:none;background:linear-gradient(90deg,rgba(31,45,61,0),rgba(31,45,61,.14))}.summary-toggle[data-v-2cf8aa93]{position:relative;right:-1px;z-index:4;align-self:center;width:18px;height:104px;margin:0 -1px 0 -18px;padding:0;color:#8c97a8;background:#fff;border:1px solid #d9e2ec;border-right-color:#e0e6ef;border-right:none;border-radius:5px 0 0 5px;cursor:pointer;box-shadow:-1px 0 4px rgba(31,45,61,.08);transition:color .15s ease,background .15s ease}.summary-toggle[data-v-2cf8aa93]:hover{color:#409eff;background:#fff}.summary-toggle i[data-v-2cf8aa93]{font-size:14px}.summary-title[data-v-2cf8aa93]{height:42px;padding:0 18px;line-height:42px;font-size:14px;font-weight:700}.summary-filter[data-v-2cf8aa93]{display:flex;align-items:center;gap:8px;height:42px;padding:0 14px;font-size:13px;color:#526071}.summary-filter[data-v-2cf8aa93] .el-date-editor.el-input{width:142px}.summary-filter[data-v-2cf8aa93] .el-input__inner{height:32px;line-height:32px;border-radius:2px}.summary-filter strong[data-v-2cf8aa93]{margin-left:auto;font-weight:500;color:#1f2d3d}.office-list[data-v-2cf8aa93]{height:calc(100% - 84px);overflow-y:auto;border-top:1px solid #edf0f5}.empty-state[data-v-2cf8aa93]{display:flex;align-items:center;justify-content:center;color:#8c97a8;font-size:13px;height:100%}.office-section[data-v-2cf8aa93]{border-bottom:1px solid #edf0f5}.office-header[data-v-2cf8aa93]{display:flex;align-items:center;height:42px;padding:0 16px;font-size:13px;color:#1f2d3d;cursor:pointer;user-select:none}.office-header .el-icon-arrow-right[data-v-2cf8aa93]{margin-right:6px;color:#526071;transition:transform .15s ease}.office-header .el-icon-arrow-right.expanded[data-v-2cf8aa93]{transform:rotate(90deg)}.office-icon[data-v-2cf8aa93]{margin-right:8px;font-size:18px;color:#409eff}.person-grid[data-v-2cf8aa93]{display:grid;grid-template-columns:repeat(6,54px);gap:15px;padding:0 14px 12px 30px}.person-grid .button[data-v-2cf8aa93]{width:54px;padding:4px;font-size:14px;color:#111;background:#fff;border:1px solid #dcdfe6;border-radius:2px;cursor:pointer;text-align:center}.person-grid .button.active[data-v-2cf8aa93]{color:#0b61ff;border-color:#1f75ff;background:#f6fbff}.area[data-v-2cf8aa93],.map-label[data-v-2cf8aa93],.road[data-v-2cf8aa93],.water[data-v-2cf8aa93]{position:absolute}.water[data-v-2cf8aa93]{background:#cfeaff;opacity:.85}.water-one[data-v-2cf8aa93]{right:-70px;bottom:80px;width:250px;height:80px;border-radius:48% 52% 45% 55%;transform:rotate(-18deg)}.water-two[data-v-2cf8aa93]{right:32px;bottom:8px;width:115px;height:180px;border-radius:58% 42% 48% 52%;transform:rotate(13deg)}.area[data-v-2cf8aa93]{background:rgba(222,232,241,.85);border-radius:12px}.area-one[data-v-2cf8aa93]{left:28%;top:40%;width:18%;height:26%}.area-two[data-v-2cf8aa93]{left:58%;top:18%;width:15%;height:22%}.area-three[data-v-2cf8aa93]{left:72%;top:64%;width:16%;height:20%}.road[data-v-2cf8aa93]{height:18px;line-height:18px;text-align:center;color:#8b6a2c;border:1px solid rgba(240,190,76,.8);background:#ffd36d;box-shadow:0 0 0 5px rgba(255,222,138,.5);transform-origin:center}.road span[data-v-2cf8aa93]{display:inline-block;font-size:12px;transform:rotate(0)}.road.vertical-road[data-v-2cf8aa93]{width:18px;writing-mode:vertical-rl}.road.minor-road[data-v-2cf8aa93]{height:10px;line-height:10px;color:#7e8794;border-color:#c8d2dd;background:#fff;box-shadow:0 0 0 4px rgba(210,219,228,.7)}.road.minor-road.vertical-road[data-v-2cf8aa93]{width:10px}.map-label[data-v-2cf8aa93]{display:flex;align-items:center;max-width:138px;font-size:12px;line-height:16px;color:#8b62d9;white-space:nowrap}.map-label i[data-v-2cf8aa93]{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;margin-right:3px;color:#fff;font-size:11px;border-radius:50% 50% 50% 2px;background:#9b62e6;transform:rotate(-45deg)}.map-label i[data-v-2cf8aa93]:before{transform:rotate(45deg)}.map-label.food[data-v-2cf8aa93]{color:#f0832f}.map-label.food i[data-v-2cf8aa93]{background:#ff8b2b}.map-label.building[data-v-2cf8aa93],.map-label.traffic[data-v-2cf8aa93]{color:#5d83be}.map-label.building i[data-v-2cf8aa93],.map-label.traffic i[data-v-2cf8aa93]{background:#6d8cc2}.map-label.medical[data-v-2cf8aa93]{color:#ff5265}.map-label.medical i[data-v-2cf8aa93]{background:#ff5265}.map-label.school[data-v-2cf8aa93]{color:#28b9c9}.map-label.school i[data-v-2cf8aa93]{background:#28b9c9}.ellipsis[data-v-2cf8aa93]{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-clamp:1;overflow:hidden;text-overflow:ellipsis}