/* 对话列表容器 */ .conversation-list { display: flex; flex-direction: column; gap: 12px; padding: 16px 20px; width: 100%; flex: 1; overflow-y: auto; background: linear-gradient(180deg, #f8fafc 0%, #fff 100%); box-sizing: border-box; } /* 空状态 */ .conversation-empty { text-align: center; padding: 40px 20px; color: #999; font-size: 14px; } /* 单条对话项 */ .conversation-item { display: flex; gap: 10px; max-width: 100%; width: 100%; animation: fadeIn 0.3s ease; } @keyframes fadeIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } } /* AI调解员消息 - 左侧 */ .robot-item { align-self: flex-start; } /* 当事人消息 - 右侧 */ .contact-item { align-self: flex-end; flex-direction: row-reverse; } /* 头像通用样式 */ .avatar { width: 38px; height: 38px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 14px; font-weight: 600; flex-shrink: 0; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1); } /* AI调解员头像 */ .robot-avatar { background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%); color: #1976d2; border: 2px solid #90caf9; } /* 当事人头像 */ .contact-avatar { background: linear-gradient(135deg, #e8f5e9 0%, #c8e6c9 100%); color: #388e3c; border: 2px solid #a5d6a7; } /* 消息容器 */ .message-wrapper { display: flex; flex-direction: column; gap: 4px; max-width: 75%; min-width: 200px; } /* 消息头部(名字) */ .message-header { font-size: 12px; color: #666; padding: 0 4px; } .contact-item .message-header { text-align: right; } .speaker-name { font-weight: 600; font-size: 12px; } /* 消息气泡 */ .message-bubble { padding: 12px 16px; border-radius: 16px; font-size: 14px; line-height: 1.6; word-break: break-word; position: relative; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); white-space: pre-wrap; } /* AI调解员气泡 */ .robot-bubble { background: linear-gradient(135deg, #e3f2fd 0%, #e1f5fe 100%); border-top-left-radius: 4px; color: #333; } /* 当事人气泡 */ .contact-bubble { background: linear-gradient(135deg, #e8f5e9 0%, #e8f5e9 100%); border-top-right-radius: 4px; color: #333; } /* 时间戳 */ .message-time { font-size: 11px; color: #999; padding: 2px 4px; } .contact-item .message-time { text-align: right; } /* 滚动条样式 */ .conversation-list::-webkit-scrollbar { width: 6px; } .conversation-list::-webkit-scrollbar-track { background: #f1f1f1; border-radius: 3px; margin: 4px 0; } .conversation-list::-webkit-scrollbar-thumb { background: linear-gradient(180deg, #c1c1c1, #a8a8a8); border-radius: 3px; } .conversation-list::-webkit-scrollbar-thumb:hover { background: linear-gradient(180deg, #a8a8a8, #909090); } /* 响应式 */ @media (max-width: 480px) { .conversation-list { padding: 12px; max-height: calc(60vh - 120px); } .conversation-item { width: 100%; } .message-wrapper { max-width: 80%; min-width: 150px; } .avatar { width: 32px; height: 32px; font-size: 12px; } .message-bubble { padding: 10px 12px; font-size: 13px; } }