File size: 3,921 Bytes
19bd286
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
/* app/static/css/chat.css - 聊天窗口和消息样式 */

/* 聊天窗口样式 */
.chat-window {
    border: 1px solid var(--border-color);
    border-radius: 8px; /* 调整圆角 */
    height: 400px; /* 增加固定高度 */
    overflow-y: auto;
    padding: 15px; /* 增加内边距 */
    margin-bottom: 20px;
    background-color: var(--background-light); /* 聊天窗口背景 */
    display: flex; /* 启用 Flexbox */
    flex-direction: column; /* 消息垂直堆叠 */
}

.message {
    margin-bottom: 12px; /* 增加消息间距 */
    padding: 10px 15px; /* 调整内边距 */
    border-radius: 18px; /* 更大的圆角,使消息气泡更圆润 */
    max-width: 75%; /* 限制消息宽度 */
    word-wrap: break-word; /* 自动换行 */
}

.message.user {
    background-color: var(--primary-color);
    color: var(--text-light);
    align-self: flex-end;
    margin-left: auto;
    border-bottom-right-radius: 5px; /* 用户消息右下角略微变直 */
}

.message.bot {
    background-color: var(--background-medium);
    color: var(--text-dark);
    align-self: flex-start;
    margin-right: auto;
    border-bottom-left-radius: 5px; /* Bot 消息左下角略微变直 */
}

.message.system {
    background-color: var(--warning-color);
    color: var(--text-dark);
    text-align: center;
    margin: 15px auto;
    font-size: 0.9rem;
    padding: 8px 15px;
    border-radius: 8px;
}

/* 确保图片没有边框 */
.message img {
    max-width: 100%; /* 确保图片不超过其容器 */
    height: auto; /* 保持图片比例 */
    border: none; /* 移除任何边框 */
    outline: none; /* 移除任何轮廓 */
    display: block; /* 避免图片底部出现额外空间 */
    margin: 5px 0; /* 增加图片上下间距 */
}





.input-area {
    display: flex; /* 使用 Flex 布局 */
    align-items: flex-end; /* 底部对齐 */
    gap: 10px; /* 间距 */
    margin-top: 10px; /* 增加与聊天窗口的间距 */
}

.input-area textarea {
    flex-grow: 1; /* 文本框占据剩余空间 */
    min-height: 50px; /* 调整最小高度,更小 */
    max-height: 120px; /* 调整最大高度,更小 */
    resize: vertical; /* 允许垂直调整大小 */
    margin-bottom: 0; /* 移除默认底部外边距 */
    box-sizing: border-box; /* 包含 padding 和 border 在宽度内 */
}

.input-area .button-group {
    display: flex; /* 按钮组内部使用 Flex 布局 */
    gap: 10px; /* 按钮之间的间距 */
    flex-shrink: 0; /* 防止按钮组缩小 */
}

.input-area #image-upload {
    /* 隐藏默认文件输入框,通过 label 触发 */
    display: none;
}

.input-area .file-upload-label,
.input-area #send-button {
    padding: 8px 12px; /* 统一按钮内边距,使其更小 */
    border-radius: 5px; /* 统一按钮圆角,使其更圆润 */
    font-size: 0.85rem; /* 统一按钮字体大小 */
    font-weight: 600;
    transition: background-color 0.3s ease, transform 0.2s ease;
    white-space: nowrap; /* 防止文本换行 */
    display: flex; /* 启用 Flexbox */
    align-items: center; /* 垂直居中 */
    justify-content: center; /* 水平居中 */
    height: 38px; /* 统一按钮高度,使其更小 */
    box-sizing: border-box; /* 确保 padding 和 border 包含在高度内 */
    flex-shrink: 0; /* 防止按钮缩小 */
    flex-grow: 0; /* 防止按钮拉伸 */
}

.input-area .file-upload-label {
    background-color: var(--info-color); /* 信息蓝色 */
    color: var(--text-light);
    cursor: pointer;
}

.input-area .file-upload-label:hover {
    background-color: #138496; /* 鼠标悬停时的深蓝色 */
    transform: translateY(-2px);
}

#send-button {
    background-color: var(--primary-color); /* 蓝色按钮 */
    color: var(--text-light);
    cursor: pointer;
}

#send-button:hover {
    background-color: var(--primary-dark); /* 鼠标悬停时的深蓝色 */
    transform: translateY(-2px);
}