.device-detail-page[data-v-0a3e45dd]{height:100%;display:flex;flex-direction:column;overflow:hidden}.page-header[data-v-0a3e45dd]{display:flex;align-items:center;padding:14px 24px;border-bottom:1px solid rgba(64,158,255,.12);flex-shrink:0}.page-title[data-v-0a3e45dd]{font-size:20px;font-weight:700;color:#e4eaf2;margin-left:12px}.device-count[data-v-0a3e45dd]{font-size:15px;color:#4a5568;margin-left:16px}.top-section[data-v-0a3e45dd]{flex:1;display:flex;gap:16px;padding:16px 24px;overflow:hidden;min-height:0}.video-panel[data-v-0a3e45dd]{flex:1;display:flex;flex-direction:column;background:rgba(14,30,53,.88);border:1px solid rgba(64,158,255,.12);border-radius:10px;overflow:hidden}.video-header[data-v-0a3e45dd]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid hsla(0,0%,100%,.05)}.video-title[data-v-0a3e45dd]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:#e4eaf2}.video-title i[data-v-0a3e45dd]{color:#409eff}.video-header-right[data-v-0a3e45dd]{display:flex;align-items:center;gap:12px}.ptz-btn[data-v-0a3e45dd]{padding:5px 12px}.video-status[data-v-0a3e45dd]{display:flex;align-items:center;gap:6px;font-size:13px;padding:4px 12px;border-radius:12px}.video-status.online[data-v-0a3e45dd]{color:#67c23a;background:rgba(103,194,58,.1)}.video-status.online .status-dot[data-v-0a3e45dd]{background:#67c23a}.video-status.offline[data-v-0a3e45dd]{color:#f56c6c;background:rgba(245,108,108,.1)}.video-status.offline .status-dot[data-v-0a3e45dd]{background:#f56c6c}.status-dot[data-v-0a3e45dd]{width:8px;height:8px;border-radius:50%}.video-container[data-v-0a3e45dd]{flex:1;display:flex;align-items:center;justify-content:center;background:#000;min-height:200px}.video-container video[data-v-0a3e45dd]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.video-placeholder[data-v-0a3e45dd]{display:flex;flex-direction:column;align-items:center;color:#4a5568}.video-placeholder i[data-v-0a3e45dd]{font-size:56px;margin-bottom:12px;opacity:.3}.video-placeholder p[data-v-0a3e45dd]{font-size:15px;margin:0}.video-placeholder .placeholder-hint[data-v-0a3e45dd]{font-size:13px;margin-top:8px;opacity:.7}.video-info[data-v-0a3e45dd]{display:flex;gap:24px;padding:12px 16px;border-top:1px solid hsla(0,0%,100%,.05);background:#0f2137}.info-item[data-v-0a3e45dd]{display:flex;align-items:center;gap:6px;font-size:13px}.info-label[data-v-0a3e45dd]{color:#4a5568}.info-value[data-v-0a3e45dd]{color:#e4eaf2}.info-value.danger[data-v-0a3e45dd]{color:#f56c6c}.device-panel[data-v-0a3e45dd]{width:220px;flex-shrink:0;display:flex;flex-direction:column;background:rgba(14,30,53,.88);border:1px solid rgba(64,158,255,.12);border-radius:10px;overflow:hidden}.device-panel-header[data-v-0a3e45dd]{padding:12px 14px;border-bottom:1px solid hsla(0,0%,100%,.05);flex-shrink:0}.device-panel-title[data-v-0a3e45dd]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#e4eaf2}.device-panel-title i[data-v-0a3e45dd]{color:#409eff}.device-list[data-v-0a3e45dd]{flex:1;overflow-y:auto;padding:8px}.device-card[data-v-0a3e45dd]{display:flex;align-items:center;gap:10px;padding:10px 12px;border:2px solid transparent;border-radius:6px;cursor:pointer;transition:all .2s;margin-bottom:6px}.device-card[data-v-0a3e45dd]:last-child{margin-bottom:0}.device-card[data-v-0a3e45dd]:hover{background:hsla(0,0%,100%,.03);border-color:rgba(64,158,255,.35)}.device-card.active[data-v-0a3e45dd]{border-color:#409eff;background:rgba(64,158,255,.08)}.device-card.online .device-dot[data-v-0a3e45dd]{background:#67c23a}.device-card.offline .device-dot[data-v-0a3e45dd]{background:#f56c6c}.device-card.online.active[data-v-0a3e45dd]{border-color:#67c23a}.device-card.offline.active[data-v-0a3e45dd]{border-color:#f56c6c}.device-dot[data-v-0a3e45dd]{width:10px;height:10px;border-radius:50%;flex-shrink:0}.device-info[data-v-0a3e45dd]{display:flex;flex-direction:column;gap:3px;min-width:0}.device-name[data-v-0a3e45dd]{font-size:14px;color:#e4eaf2;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.device-meta[data-v-0a3e45dd]{display:flex;align-items:center;gap:8px}.device-type[data-v-0a3e45dd]{font-size:12px;color:#4a5568}.device-status-text[data-v-0a3e45dd]{font-size:12px}.online .device-status-text[data-v-0a3e45dd]{color:#67c23a}.offline .device-status-text[data-v-0a3e45dd]{color:#f56c6c}.bottom-section[data-v-0a3e45dd]{height:38%;flex-shrink:0;padding:0 24px 16px;display:flex;flex-direction:column;overflow:hidden}.bottom-section[data-v-0a3e45dd] .bottom-tabs{height:100%;display:flex;flex-direction:column;background:rgba(14,30,53,.88);border:1px solid rgba(64,158,255,.12);border-radius:10px;overflow:hidden}.bottom-section[data-v-0a3e45dd] .bottom-tabs .el-tabs__header{margin:0;padding:0 16px;border-bottom:1px solid hsla(0,0%,100%,.05);flex-shrink:0}.bottom-section[data-v-0a3e45dd] .bottom-tabs .el-tabs__nav-wrap:after{display:none}.bottom-section[data-v-0a3e45dd] .bottom-tabs .el-tabs__item{height:40px;line-height:40px;color:#7e8fa6;font-size:14px}.bottom-section[data-v-0a3e45dd] .bottom-tabs .el-tabs__item.is-active{color:#409eff}.bottom-section[data-v-0a3e45dd] .bottom-tabs .el-tabs__item:hover{color:#5cb3ff}.bottom-section[data-v-0a3e45dd] .bottom-tabs .el-tabs__active-bar{background-color:#409eff}.bottom-section[data-v-0a3e45dd] .bottom-tabs .el-tabs__content{flex:1;overflow:hidden}.bottom-section[data-v-0a3e45dd] .bottom-tabs .el-tabs__content .el-tab-pane{height:100%;display:flex;flex-direction:column}.bottom-tab-toolbar[data-v-0a3e45dd]{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;flex-shrink:0;border-bottom:1px solid hsla(0,0%,100%,.04)}.toolbar-label[data-v-0a3e45dd]{display:flex;align-items:center;gap:6px;font-size:14px;color:#7e8fa6}.toolbar-label i[data-v-0a3e45dd]{color:#409eff;font-size:15px}[data-v-0a3e45dd] .el-date-editor--datetimerange{width:460px!important;background:hsla(0,0%,100%,.04);border:1px solid rgba(64,158,255,.12);border-radius:6px;transition:border-color .2s}[data-v-0a3e45dd] .el-date-editor--datetimerange:hover{border-color:rgba(64,158,255,.35)}[data-v-0a3e45dd] .el-date-editor--datetimerange.is-active{border-color:#409eff;box-shadow:0 0 8px rgba(64,158,255,.25)}[data-v-0a3e45dd] .el-date-editor--datetimerange .el-range-input{background:transparent;color:#e4eaf2}[data-v-0a3e45dd] .el-date-editor--datetimerange .el-range-input::-moz-placeholder{color:#4a5568}[data-v-0a3e45dd] .el-date-editor--datetimerange .el-range-input::placeholder{color:#4a5568}[data-v-0a3e45dd] .el-date-editor--datetimerange .el-range-separator,[data-v-0a3e45dd] .el-date-editor--datetimerange .el-range__close-icon,[data-v-0a3e45dd] .el-date-editor--datetimerange .el-range__icon{color:#7e8fa6}.history-table-wrap[data-v-0a3e45dd]{flex:1;overflow:hidden;position:relative}.history-table-wrap[data-v-0a3e45dd] .el-table{background:transparent}.history-table-wrap[data-v-0a3e45dd] .el-table:before{display:none}.history-table-wrap[data-v-0a3e45dd] .el-table .el-table__body-wrapper,.history-table-wrap[data-v-0a3e45dd] .el-table tr{background:transparent}.history-table-wrap[data-v-0a3e45dd] .el-table .el-table__row--striped td{background:hsla(0,0%,100%,.02)}.screenshot-list[data-v-0a3e45dd]{flex:1;overflow-y:auto;padding:0 16px 12px;position:relative}.screenshot-grid[data-v-0a3e45dd]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.screenshot-card[data-v-0a3e45dd]{background:#0f2137;border:1px solid rgba(64,158,255,.12);border-radius:6px;overflow:hidden;cursor:pointer;transition:all .2s}.screenshot-card[data-v-0a3e45dd]:hover{border-color:rgba(64,158,255,.35);transform:translateY(-2px)}.screenshot-card.has-disease[data-v-0a3e45dd]{border-color:rgba(245,108,108,.3)}.screenshot-img-wrap[data-v-0a3e45dd]{position:relative;width:100%;aspect-ratio:16/9;background:#000}.screenshot-img-wrap img[data-v-0a3e45dd]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.disease-badge[data-v-0a3e45dd]{position:absolute;top:6px;right:6px;padding:2px 8px;font-size:12px;font-weight:600;color:#fff;background:#f56c6c;border-radius:3px}.screenshot-info[data-v-0a3e45dd]{padding:8px 10px;display:flex;align-items:center;justify-content:space-between}.screenshot-time[data-v-0a3e45dd]{font-size:12px;color:#7e8fa6;font-family:Consolas,Monaco,monospace}.screenshot-type[data-v-0a3e45dd]{font-size:12px;color:#e6a23c;padding:1px 6px;background:rgba(230,162,60,.12);border-radius:3px}.text-danger[data-v-0a3e45dd]{color:#f56c6c;font-weight:600}.text-muted[data-v-0a3e45dd]{color:#4a5568}.disease-types[data-v-0a3e45dd]{color:#e6a23c;font-size:14px}.empty-state[data-v-0a3e45dd]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#4a5568;padding:24px 0}.empty-state i[data-v-0a3e45dd]{font-size:36px;margin-bottom:10px;opacity:.3}.empty-state p[data-v-0a3e45dd]{font-size:14px;margin:0}.viewer-fade-enter-active[data-v-0a3e45dd],.viewer-fade-leave-active[data-v-0a3e45dd]{transition:opacity .25s}.viewer-fade-enter[data-v-0a3e45dd],.viewer-fade-leave-to[data-v-0a3e45dd]{opacity:0}.screenshot-viewer[data-v-0a3e45dd]{position:fixed;top:0;left:0;right:0;bottom:0;z-index:3000;background:rgba(0,0,0,.88);display:flex;align-items:center;justify-content:center;outline:none}.viewer-close[data-v-0a3e45dd]{position:absolute;top:20px;right:24px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:hsla(0,0%,100%,.08);color:hsla(0,0%,100%,.7);font-size:20px;cursor:pointer;transition:all .2s;z-index:10}.viewer-close[data-v-0a3e45dd]:hover{background:hsla(0,0%,100%,.15);color:#fff}.viewer-arrow[data-v-0a3e45dd]{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:hsla(0,0%,100%,.08);color:hsla(0,0%,100%,.7);font-size:24px;cursor:pointer;transition:all .2s;z-index:10}.viewer-arrow[data-v-0a3e45dd]:hover:not(.disabled){background:hsla(0,0%,100%,.15);color:#fff}.viewer-arrow.disabled[data-v-0a3e45dd]{opacity:.2;cursor:default}.viewer-arrow-left[data-v-0a3e45dd]{left:24px}.viewer-arrow-right[data-v-0a3e45dd]{right:24px}.viewer-body[data-v-0a3e45dd]{width:70vw;display:flex;flex-direction:column;border-radius:10px;overflow:hidden;background:rgba(14,30,53,.88);border:1px solid rgba(64,158,255,.12);box-shadow:0 8px 40px rgba(0,0,0,.5)}.viewer-img-wrap[data-v-0a3e45dd]{position:relative;width:100%;height:70vh;display:flex;align-items:center;justify-content:center;background:#000}.viewer-img-wrap img[data-v-0a3e45dd]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.viewer-img-wrap .disease-badge[data-v-0a3e45dd]{position:absolute;top:12px;right:12px;padding:4px 14px;font-size:14px;font-weight:600;color:#fff;background:#f56c6c;border-radius:4px}.viewer-info-bar[data-v-0a3e45dd]{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-top:1px solid hsla(0,0%,100%,.06);background:#0f2137;flex-shrink:0}.viewer-info-left[data-v-0a3e45dd]{display:flex;align-items:center;gap:16px}.viewer-time[data-v-0a3e45dd]{display:flex;align-items:center;gap:6px;font-size:14px;color:#7e8fa6;font-family:Consolas,Monaco,monospace}.viewer-time i[data-v-0a3e45dd]{color:#409eff;font-size:15px}.viewer-disease-type[data-v-0a3e45dd]{font-size:13px;color:#e6a23c;padding:2px 10px;background:rgba(230,162,60,.12);border-radius:3px}.viewer-counter[data-v-0a3e45dd]{font-size:13px;color:#4a5568;font-family:Consolas,Monaco,monospace}.dark-datetime-picker{background:#0f2137!important;border:1px solid rgba(64,158,255,.12)!important;color:#e4eaf2!important}.dark-datetime-picker .el-picker-panel__body-wrapper{background:#0f2137}.dark-datetime-picker .el-picker-panel__sidebar{background:rgba(0,0,0,.15);border-right:1px solid rgba(64,158,255,.12)}.dark-datetime-picker .el-picker-panel__shortcut{color:#7e8fa6;font-size:13px;padding:6px 12px;transition:color .15s,background .15s}.dark-datetime-picker .el-picker-panel__shortcut:hover{color:#5cb3ff;background:rgba(64,158,255,.08)}.dark-datetime-picker .el-date-range-picker__header{color:#e4eaf2}.dark-datetime-picker .el-date-range-picker__header .el-picker-panel__icon-btn{color:#7e8fa6}.dark-datetime-picker .el-date-range-picker__header div{color:#e4eaf2;font-size:14px}.dark-datetime-picker .el-date-table th{color:#7e8fa6!important}.dark-datetime-picker .el-date-table td{color:#7e8fa6}.dark-datetime-picker .el-date-table td.available{color:#e4eaf2}.dark-datetime-picker .el-date-table td.today span{color:#409eff;font-weight:600}.dark-datetime-picker .el-date-table td.in-range div{background:rgba(64,158,255,.12)}.dark-datetime-picker .el-date-table td.end-date span,.dark-datetime-picker .el-date-table td.start-date span{background:#409eff!important;color:#fff!important}.dark-datetime-picker .el-date-table td.available:hover span{background:rgba(64,158,255,.25)!important;color:#fff}.dark-datetime-picker .el-date-range-picker__time-header{border-bottom:1px solid rgba(64,158,255,.12)}.dark-datetime-picker .el-date-range-picker__time-header .el-input__inner{background:hsla(0,0%,100%,.04);border-color:rgba(64,158,255,.12);color:#e4eaf2}.dark-datetime-picker .el-time-panel{background:#0f2137!important;border-color:rgba(64,158,255,.12)!important}.dark-datetime-picker .el-time-spinner__item{color:#7e8fa6}.dark-datetime-picker .el-time-spinner__item.active{color:#e4eaf2!important;font-weight:600}.dark-datetime-picker .el-time-spinner__item:hover{background:rgba(64,158,255,.08)}.dark-datetime-picker .el-picker-panel__footer{background:#0f2137;border-top:1px solid rgba(64,158,255,.12)}.dark-datetime-picker .el-picker-panel__footer .el-button--text{color:#7e8fa6}.dark-datetime-picker .el-picker-panel__footer .el-button--default.is-plain{background:transparent;border-color:rgba(64,158,255,.12);color:#7e8fa6}.dark-datetime-picker .el-picker-panel__footer .el-button--default.is-plain:hover{border-color:rgba(64,158,255,.35);color:#e4eaf2}.dark-datetime-picker .el-picker-panel__footer .el-button--primary{background:#409eff;border-color:#409eff}.dark-datetime-picker .popper__arrow{border-bottom-color:rgba(64,158,255,.12)!important}.dark-datetime-picker .popper__arrow:after{border-bottom-color:#0f2137!important}