.identity-verify-container.data-v-2a02c54e { padding: 0; max-width: 100%; margin: 0 auto; height: 100vh; display: flex; flex-direction: column; background-color: #f5f5f5; } .digital-human-container.data-v-2a02c54e { position: relative; width: 100%; height: 100vh; overflow: hidden; background-color: #f0f0f0; } .digital-human-video.data-v-2a02c54e { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; } /* 用户摄像头容器样式 */ .user-camera-container.data-v-2a02c54e { position: absolute; top: 50px; right: 5px; width: 110px; /* 稍微增加宽度 */ height: 160px; /* 稍微增加高度 */ border-radius: 4px; /* 减小圆角 */ overflow: hidden; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); z-index: 20; } /* 用户摄像头视频样式 */ .user-camera-video.data-v-2a02c54e { width: 100%; height: 100%; object-fit: cover; background-color: #333; } .video-player.data-v-2a02c54e { width: 100%; height: 100%; object-fit: cover; outline: none; /* 移除视频获得焦点时的轮廓 */ -webkit-tap-highlight-color: transparent; /* 移除移动设备上的点击高亮 */ } /* 隐藏视频控制条 */ video.data-v-2a02c54e::-webkit-media-controls { display: none !important; } video.data-v-2a02c54e::-webkit-media-controls-enclosure { display: none !important; } video.data-v-2a02c54e::-webkit-media-controls-panel { display: none !important; } video.data-v-2a02c54e::-webkit-media-controls-play-button { display: none !important; } video.data-v-2a02c54e::-webkit-media-controls-timeline { display: none !important; } video.data-v-2a02c54e::-webkit-media-controls-current-time-display { display: none !important; } video.data-v-2a02c54e::-webkit-media-controls-time-remaining-display { display: none !important; } video.data-v-2a02c54e::-webkit-media-controls-mute-button { display: none !important; } video.data-v-2a02c54e::-webkit-media-controls-volume-slider { display: none !important; } video.data-v-2a02c54e::-webkit-media-controls-fullscreen-button { display: none !important; } /* 修改字幕覆盖层样式,使其与图片中的样式一致 */ .subtitle-overlay.data-v-2a02c54e { position: absolute; bottom: 180px; /* 调整位置,使其更靠近底部 */ left: 5%; /* 从左侧留出5%的空间 */ width: 80%; /* 宽度设为90%,两侧各留5%实现居中 */ padding: 15px 20px; /* 增加左右内边距 */ border-radius: 15px; background-color: rgba(255, 255, 255, 0.9); /* 白色半透明背景 */ color: #333; /* 文字颜色为深色 */ text-align: left; /* 文字左对齐 */ font-size: 16px; line-height: 1.5; z-index: 10; margin: 0 auto; /* 添加自动边距实现居中 */ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); /* 添加轻微阴影 */ } /* 添加计时器样式,右侧显示橙色圆点和时间 */ .subtitle-overlay.data-v-2a02c54e::after { content: attr(data-time); position: absolute; right: 20px; bottom: 15px; color: #333; font-size: 14px; } .control-panel.data-v-2a02c54e { padding: 15px; display: flex; justify-content: center; } .control-button.data-v-2a02c54e { padding: 10px 20px; background-color: #4CAF50; color: white; border: none; border-radius: 4px; cursor: pointer; } .loading.data-v-2a02c54e { text-align: center; margin: 20px 0; font-size: 16px; } .response-container.data-v-2a02c54e { margin-top: 20px; padding: 0 20px; display: none; /* 默认隐藏调试信息 */ } /* 当showDebugInfo为true时显示 */ .showDebugInfo .response-container.data-v-2a02c54e { display: block; } .response-item.data-v-2a02c54e { padding: 10px; border: 1px solid #eee; border-radius: 4px; margin-bottom: 10px; background-color: #f9f9f9; } .response-content.data-v-2a02c54e { display: flex; flex-direction: column; } .answer-button-container.data-v-2a02c54e { position: absolute; bottom: 50px; /* 将按钮放在底部而不是75%的位置 */ left: 50%; transform: translateX(-50%); /* 只在X轴上平移,保持水平居中 */ z-index: 20; } /* 修改回答按钮样式 */ .answer-button.data-v-2a02c54e { width: 120px; height: 40px; /* 改为矩形按钮 */ border-radius: 20px; /* 圆角矩形 */ background-color: #ffffff; /* 白色背景 */ color: #333; /* 深色文字 */ font-size: 16px; border: none; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2); display: flex; justify-content: center; align-items: center; cursor: pointer; animation: none; /* 移除脉动动画 */ } .stop-recording-button-container.data-v-2a02c54e { position: absolute; bottom: 50px; /* 统一与其他按钮的位置 */ left: 50%; transform: translateX(-50%); z-index: 20; } .stop-recording-button.data-v-2a02c54e { width: 120px; height: 40px; /* 改为矩形按钮 */ border-radius: 20px; /* 圆角矩形 */ background-color: #e74c3c; /* 白色背景 */ color: #333; /* 深色文字 */ font-size: 16px; border: none; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2); display: flex; justify-content: center; align-items: center; cursor: pointer; animation: none; /* 移除脉动动画 */ } .recording-indicator.data-v-2a02c54e { position: absolute; top: 20px; left: 20px; display: flex; align-items: center; background-color: rgba(255, 255, 255, 0.9); /* 改为白色半透明背景 */ padding: 5px 10px; border-radius: 15px; z-index: 20; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); } .recording-dot.data-v-2a02c54e { width: 12px; height: 12px; background-color: #ff6b00; /* 改为橙色,与图片中的颜色一致 */ border-radius: 50%; margin-right: 8px; animation: blink 1s infinite; } .recording-text.data-v-2a02c54e { color: #333; /* 改为深色文字 */ font-size: 14px; } .timer-text.data-v-2a02c54e { color: #333; /* 改为深色文字 */ font-size: 14px; margin-left: 8px; } .start-recording-button-container.data-v-2a02c54e { position: absolute; bottom: 50px; /* 统一与其他按钮的位置 */ left: 50%; transform: translateX(-50%); z-index: 101; } .start-recording-button.data-v-2a02c54e { width: 120px; height: 40px; /* 改为矩形按钮 */ border-radius: 20px; /* 圆角矩形 */ background-color: #ffffff; /* 白色背景 */ color: #333; /* 深色文字 */ font-size: 16px; border: none; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2); display: flex; justify-content: center; align-items: center; cursor: pointer; animation: none; /* 移除脉动动画 */ } .retry-button-container.data-v-2a02c54e { position: absolute; bottom: 30px; /* 统一与其他按钮的位置 */ left: 50%; transform: translateX(-50%); z-index: 20; } .retry-button.data-v-2a02c54e { padding: 10px 20px; background-color: #ffffff; /* 白色背景 */ color: #333; /* 深色文字 */ font-size: 16px; border: none; border-radius: 20px; /* 圆角矩形 */ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2); cursor: pointer; } .retry-button.data-v-2a02c54e:hover { background-color: #2980b9; } /* 录制时长显示 */ .recording-timer.data-v-2a02c54e { position: absolute; top: 20px; left: 130px; /* 放在录制指示器旁边 */ background-color: rgba(0, 0, 0, 0.6); padding: 5px 10px; border-radius: 15px; z-index: 20; display: flex; flex-direction: column; } .timer-text.data-v-2a02c54e { color: #000; font-size: 14px; font-family: monospace; /* 使用等宽字体,使时间显示更稳定 */ } .remaining-time.data-v-2a02c54e { color: white; font-size: 12px; margin-top: 2px; } .remaining-time.warning.data-v-2a02c54e { color: #ff6b6b; /* 剩余时间少时显示红色 */ animation: blink 1s infinite; /* 使用闪烁动画提醒用户 */ } /* 添加上传状态指示器 */ .upload-status-indicator.data-v-2a02c54e { position: absolute; top: 20px; left: 130px; /* 放在录制指示器旁边 */ background-color: rgba(0, 0, 0, 0.6); padding: 5px 10px; border-radius: 15px; z-index: 20; } .upload-status-content.data-v-2a02c54e { display: flex; align-items: center; } .upload-status-icon.data-v-2a02c54e { width: 12px; height: 12px; border-radius: 50%; margin-right: 8px; } .upload-status-text.data-v-2a02c54e { color: white; font-size: 14px; } .uploading.data-v-2a02c54e { background-color: #e74c3c; } /* 添加倒计时蒙层样式 */ .countdown-overlay.data-v-2a02c54e { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); z-index: 100; display: flex; justify-content: center; align-items: center; } .countdown-content.data-v-2a02c54e { display: flex; flex-direction: column; align-items: center; } .countdown-number.data-v-2a02c54e { font-size: 80px; color: #ffffff; font-weight: bold; margin-bottom: 20px; } .countdown-text.data-v-2a02c54e { font-size: 24px; color: #ffffff; } /* 添加GIF播放器样式 */ .gif-player.data-v-2a02c54e { width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; z-index: 5; /* 确保GIF在视频上方但在字幕和按钮下方 */ }