/* 设备详情页样式 */ .device-info { margin-bottom: 20rpx; } .info-row { display: flex; flex-direction: row; justify-content: space-between; align-items: center; padding: 16rpx 0; border-bottom: 1rpx solid #f5f5f5; } .info-row:last-child { border-bottom: none; } .info-label { font-size: 26rpx; color: #666; } .info-value { font-size: 26rpx; color: #333; } .data-section { margin-bottom: 20rpx; } .section-header { display: flex; flex-direction: row; justify-content: space-between; align-items: center; margin-bottom: 16rpx; } .section-title { font-size: 30rpx; font-weight: 600; color: #333; } .clear-btn { font-size: 24rpx; color: #ff4d4f; } .data-list { max-height: 600rpx; overflow-y: auto; } .data-item { display: flex; flex-direction: row; align-items: center; padding: 16rpx 0; border-bottom: 1rpx solid #f5f5f5; } .data-item:last-child { border-bottom: none; } .data-time { width: 140rpx; font-size: 24rpx; color: #999; } .data-hex { flex: 1; font-size: 24rpx; color: #333; font-family: monospace; word-break: break-all; } .data-flag { width: 120rpx; text-align: right; } .uploaded { font-size: 22rpx; color: #52c41a; } .pending { font-size: 22rpx; color: #bbb; } .empty-hint { font-size: 24rpx; color: #bbb; margin-top: 12rpx; } /* 采集控制卡片 */ .collect-control { display: flex; flex-direction: column; } .collect-row { display: flex; flex-direction: row; justify-content: space-between; align-items: center; } .collect-text { flex: 1; padding-right: 20rpx; } .collect-title { font-size: 28rpx; font-weight: 600; color: #333; } .collect-sub { font-size: 22rpx; color: #999; margin-top: 6rpx; } .collect-status { display: flex; flex-direction: row; align-items: center; margin-top: 24rpx; } .status-label { font-size: 24rpx; color: #666; margin-right: 16rpx; } .collect-meta { display: flex; flex-direction: row; align-items: center; font-size: 22rpx; color: #999; margin-top: 12rpx; } .collect-meta .dot { margin: 0 8rpx; } .notice-text { margin-top: 16rpx; font-size: 22rpx; color: #fa8c16; } .notice-text.error { color: #ff4d4f; } .stats-section { display: flex; flex-direction: row; margin-bottom: 20rpx; } .stat-item { flex: 1; display: flex; flex-direction: column; align-items: center; padding: 16rpx 0; } .stat-value { font-size: 40rpx; font-weight: 600; color: #1890ff; } .stat-label { font-size: 24rpx; color: #999; margin-top: 8rpx; } .action-group { display: flex; flex-direction: row; flex-wrap: wrap; gap: 16rpx; padding: 20rpx 0; } .btn-flush, .btn-clear, .btn-command { flex: 1; min-width: 200rpx; display: flex; align-items: center; justify-content: center; height: 80rpx; line-height: 1; font-size: 28rpx; border-radius: 8rpx; border: none; padding: 0; margin: 0; } .btn-flush::after, .btn-clear::after, .btn-command::after { border: none; } .btn-flush { background-color: #722ed1; color: #fff; } .btn-flush[disabled] { background-color: #b37feb; color: #fff; } .btn-clear { background-color: #ff4d4f; color: #fff; } .btn-command { background-color: #52c41a; color: #fff; }