$neon-green: #00d6c0; $neon-blue: #00fff4; $neon-cyan: #00ffe6; .task-detail-container { width: 100%; height: 100%; // 主要内容区域 display: grid; grid-template-columns: 750px 1fr; grid-template-rows: 1fr 176px; grid-template-areas: 'robot content' 'task-list task-list'; gap: 40px; .robot-section { grid-area: robot; display: flex; flex-direction: column; align-items: center; gap: 30px; padding: 100px 0; .section-title { font-size: 48px; color: $neon-cyan; font-weight: 600; text-align: center; line-height: 72px; letter-spacing: 2px; } .robot-container { position: relative; margin-top: 40px; padding-top: 40px; display: flex; flex-direction: column; justify-content: center; .robot-image { width: 486px; height: 438px; margin-left: 20px; } .placeholder-image { width: 100%; height: 100%; background: transparent; } .robot-pedestal { width: 512px; height: 83px; } .robot-status { position: absolute; top: 10px; right: 10px; display: flex; gap: 16px; .status-dot { width: 16px; height: 16px; border-radius: 50%; animation: scale-pulse 1.5s infinite ease-in-out; &:nth-child(1) { background: #dd3131; } &:nth-child(2) { background: #fa8b0d; animation-delay: 0.4s; } &:nth-child(3) { background: #fdd330; animation-delay: 0.8s; } } } } .stats-section { width: 100%; margin-top: 80px; display: flex; flex-direction: column; align-items: center; gap: 40px; .stat-item { display: flex; align-items: center; gap: 10px; .stat-label { color: $neon-cyan; font-weight: 600; font-size: 40px; line-height: 72px; letter-spacing: 2px; white-space: nowrap; } .number-container { display: flex; gap: 10px; .number-item { width: 82px; height: 95px; padding-bottom: 6px; background: url('@/assets/images/number_box.png'); background-size: 100% 100%; display: flex; align-items: center; justify-content: center; font-weight: 600; font-size: 73px; line-height: 72px; letter-spacing: 2px; color: $neon-cyan; } } .stat-unit { color: $neon-cyan; font-weight: 600; font-size: 40px; line-height: 72px; letter-spacing: 2px; white-space: nowrap; } } } } .content-section { grid-area: content; height: 100%; display: flex; flex-direction: column; gap: 30px; border: 1px solid $neon-cyan; border-left-color: #086f6a; border-right-color: #086f6a; // border-radius: 8px; padding-bottom: 20px; overflow: hidden; } .task-list-section { grid-area: task-list; width: calc(100% - 40px); height: 176px; margin: 0 0 0 auto; padding: 20px 30px; border-top: 2px solid rgba(0, 255, 230, 0.5); border-bottom: 2px solid rgba(0, 255, 230, 0.5); background: radial-gradient(ellipse at center, transparent 60%, rgba(9, 51, 56, 0.8) 100%); .task-list-container { height: 100%; display: flex; overflow-x: auto; &::-webkit-scrollbar { display: none; } .task-item { flex-shrink: 0; width: 408px; display: flex; justify-content: center; align-items: center; gap: 10px; min-width: 150px; padding: 20px 0; border-top: 1px solid rgba(0, 255, 230, 0.3); border-left: 1px solid rgba(0, 255, 230, 0.3); cursor: pointer; &:last-child { border-right: 1px solid rgba(0, 255, 230, 0.3); } &.is-selected { background: rgba(0, 255, 230, 0.1); } .task-title { display: flex; align-items: center; font-weight: 400; font-size: 32px; color: $neon-cyan; line-height: 72px; letter-spacing: 1px; .clock-icon { color: $neon-cyan; margin-right: 8px; } } .task-time { font-weight: 400; font-size: 32px; color: $neon-blue; } .task-status { width: 28px; height: 28px; margin-left: 32px; border-radius: 50%; &.success { background: #13ccff; } &.warning, &.info { background: #00ff8c; } &.danger { background: #f72626; } } } } } } // 状态点动画 @keyframes scale-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.5); } }