/* 微信聊天界面样式 */ .chat-detail-container { display: flex; flex-direction: column; height: 100vh; background-color: #e5e5e5; font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Helvetica, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif; } /* 连接状态显示样式 */ .connection-status { padding: 8rpx 0; text-align: center; font-size: 24rpx; color: #fff; position: relative; z-index: 10; } .connection-status.connecting { background-color: #FF9800; } .connection-status.connected { background-color: #4CAF50; } .connection-status.error { background-color: #F44336; } .connection-status.disconnected { background-color: #9E9E9E; } .status-text { display: inline-block; padding: 0 20rpx; border-radius: 10rpx; } .reconnect-btn { display: inline-block; margin-left: 20rpx; padding: 0 20rpx; font-size: 24rpx; line-height: 40rpx; background-color: rgba(255, 255, 255, 0.3); color: #fff; border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 16rpx; } .test-mode-switch { padding: 20rpx; background-color: #f8f8f8; display: flex; align-items: center; justify-content: center; border-bottom: 1rpx solid #e8e8e8; } .mode-label { margin-left: 20rpx; font-size: 28rpx; color: #666; } /* 消息列表区域 - 微信风格 */ .wechat-message-list { flex: 1; padding: 20rpx 20rpx 40rpx; box-sizing: border-box; overflow-y: auto; background-color: #e5e5e5; } /* 消息容器 */ .wechat-message-container { display: flex; flex-direction: column; gap: 20rpx; } /* 时间显示 */ .wechat-time-display { display: flex; justify-content: center; margin: 20rpx 0; } .wechat-time-text { background-color: rgba(0, 0, 0, 0.1); color: #fff; font-size: 24rpx; padding: 6rpx 20rpx; border-radius: 12rpx; } /* 系统消息 */ .wechat-system-message { display: flex; justify-content: center; margin: 10rpx 0; } .wechat-system-content { background-color: rgba(255, 255, 255, 0.8); border-radius: 18rpx; padding: 16rpx 24rpx; max-width: 80%; box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.05); } .wechat-warning-title { color: #ff0000; font-size: 28rpx; font-weight: bold; margin-bottom: 10rpx; } .wechat-system-text { color: #606266; font-size: 26rpx; line-height: 36rpx; } /* 商品信息卡片 */ .wechat-goods-card { display: flex; background-color: #ffffff; border-radius: 18rpx; padding: 20rpx; margin: 10rpx 0; box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.05); align-self: flex-start; max-width: 80%; } .wechat-goods-avatar { width: 120rpx; height: 120rpx; background-color: #f0f0f0; border-radius: 8rpx; flex-shrink: 0; margin-right: 20rpx; } .wechat-goods-content { flex: 1; min-width: 0; } .wechat-goods-title { font-size: 28rpx; color: #303133; font-weight: 500; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; margin-bottom: 10rpx; } .wechat-goods-desc { font-size: 26rpx; color: #606266; display: block; margin-bottom: 10rpx; line-height: 36rpx; } .wechat-goods-footer { display: flex; justify-content: space-between; align-items: center; } .wechat-goods-price { font-size: 32rpx; color: #e64340; font-weight: bold; } .wechat-goods-type { font-size: 24rpx; color: #909399; background-color: #f0f9ff; padding: 4rpx 16rpx; border-radius: 12rpx; } /* 消息项 */ .wechat-message-item { display: flex; margin: 10rpx 0; align-items: flex-end; } /* 对方消息 */ .wechat-other-message { flex-direction: row; } /* 我的消息 */ .wechat-my-message { flex-direction: row-reverse; } /* 头像 - 圆形 */ .wechat-avatar { width: 76rpx; height: 76rpx; border-radius: 50%; background-color: #9aa5b1; display: flex; align-items: center; justify-content: center; margin: 0 12rpx; flex-shrink: 0; overflow: hidden; } .wechat-my-avatar { background-color: #d8d8d8; } .wechat-avatar-text { color: #ffffff; font-size: 32rpx; font-weight: 500; } /* 消息包装器 */ .wechat-message-wrapper { max-width: 75%; display: flex; flex-direction: column; align-items: flex-start; gap: 6rpx; } /* 客服姓名显示 */ .wechat-message-name { font-size: 24rpx; color: #909399; margin-left: 4rpx; margin-bottom: 2rpx; } .wechat-my-wrapper { align-items: flex-end; } /* 消息气泡 - 添加三角形箭头 */ .wechat-message-bubble { position: relative; padding: 14rpx 20rpx; max-width: 100%; word-wrap: break-word; word-break: break-all; } .wechat-other-bubble { background-color: #ffffff; border-radius: 18rpx; } .wechat-my-bubble { background-color: #07c160; border-radius: 18rpx; } /* 对方消息气泡三角形 */ .wechat-other-bubble::before { content: ''; position: absolute; left: -10rpx; bottom: 18rpx; width: 0; height: 0; border-style: solid; border-width: 10rpx 10rpx 10rpx 0; border-color: transparent #ffffff transparent transparent; } /* 我的消息气泡三角形 */ .wechat-my-bubble::before { content: ''; position: absolute; right: -10rpx; bottom: 18rpx; width: 0; height: 0; border-style: solid; border-width: 10rpx 0 10rpx 10rpx; border-color: transparent transparent transparent #07c160; } /* 消息文本 */ .wechat-message-text { font-size: 32rpx; line-height: 44rpx; color: #303133; } .wechat-my-text { color: #ffffff; } /* 图片消息样式 - 使用微信插件风格 */ .wechat-message-image { width: 280rpx; height: 280rpx; max-width: 75%; max-height: 500rpx; border-radius: 16rpx; margin: 8rpx 0; box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.1); background-color: #f5f5f5; } /* 对方图片消息样式 - 左侧缩进 */ .wechat-other-image { margin-left: 16rpx; align-self: flex-start; } /* 我的图片消息样式 - 右侧缩进 */ .wechat-my-image { margin-right: 16rpx; align-self: flex-end; } /* 消息项调整,确保图片和文本消息对齐 */ .wechat-message-item { align-items: flex-start; padding: 4rpx 0; } /* 消息时间 */ .wechat-message-time { font-size: 22rpx; color: #909399; padding: 0 4rpx; } .wechat-my-time { text-align: right; } /* 输入区域 - 微信风格 */ .wechat-input-area { background-color: #f5f5f5; border-top: 1rpx solid #d8d8d8; padding: 12rpx 20rpx; box-sizing: border-box; } /* 输入工具栏 */ .wechat-input-toolbar { display: flex; align-items: center; gap: 16rpx; } /* 底部安全区域适配 */ @media screen and (min-height: 812px) { .wechat-input-area { padding-bottom: calc(12rpx + env(safe-area-inset-bottom, 0rpx)); } } /* 左侧按钮 */ .wechat-input-left { display: flex; align-items: center; gap: 10rpx; } /* 右侧按钮 */ .wechat-input-right { display: flex; align-items: center; gap: 10rpx; } /* 表情按钮 */ .wechat-emoji-btn { width: 64rpx; height: 64rpx; display: flex; align-items: center; justify-content: center; font-size: 36rpx; } /* 语音按钮 */ .wechat-voice-btn { width: 64rpx; height: 64rpx; display: flex; align-items: center; justify-content: center; font-size: 36rpx; } /* 更多按钮 */ .wechat-more-btn { width: 64rpx; height: 64rpx; display: flex; align-items: center; justify-content: center; font-size: 44rpx; color: #606266; } /* 发送按钮 */ .wechat-send-btn { background-color: #07c160; color: #ffffff; font-size: 28rpx; padding: 0 28rpx; height: 64rpx; line-height: 64rpx; border-radius: 32rpx; text-align: center; } /* 发送按钮禁用状态 */ .wechat-send-btn:disabled { background-color: #c8c8c8; color: #ffffff; cursor: not-allowed; } /* 发送按钮点击状态 */ .wechat-send-btn:active:not(:disabled) { background-color: #06b354; } /* 输入框包装器 */ .wechat-input-wrapper { flex: 1; background-color: #ffffff; border: 1rpx solid #d8d8d8; border-radius: 32rpx; padding: 0 20rpx; min-height: 64rpx; max-height: 180rpx; display: flex; align-items: center; box-shadow: inset 0 2rpx 4rpx rgba(0, 0, 0, 0.05); } /* 消息输入框 */ .wechat-message-input { flex: 1; font-size: 32rpx; color: #303133; min-height: 44rpx; max-height: 160rpx; line-height: 44rpx; padding: 0; margin: 10rpx 0; }