PluginProbe
VikBooking Hotel Booking Engine & PMS / 1.8.7
VikBooking Hotel Booking Engine & PMS v1.8.7
1.8.16 1.8.15 1.8.14 1.8.13 1.8.12 1.8.11 1.8.10 1.8.9 1.8.6 1.8.7 1.8.8 trunk 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 All 37 releases
vikbooking / site / resources / chat.css

chat.css in VikBooking Hotel Booking Engine & PMS 1.8.7, at site/resources/chat.css

322 lines 8.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* wrapper */
2
3 .vbo-chat-wrapper {
4 display: flex;
5 height: 100%;
6 min-height: 300px;
7 background: var(--vcm-chat-background);
8 }
9
10 /* conversation */
11
12 .vbo-chat-wrapper .chat-messages-panel {
13 flex: 1;
14 align-self: flex-end;
15 height: 100%;
16 position: relative;
17 }
18
19 .vbo-chat-wrapper .chat-conversation {
20 overflow-y: scroll;
21 padding: 10px 10px 20px;
22 height: calc(100% - 50px);
23 max-height: none;
24 box-sizing: border-box;
25 }
26
27 .vbo-chat-wrapper .chat-conversation .chat-message {
28 width: 100%;
29 display: inline-block;
30 position: relative;
31 }
32 .vbo-chat-wrapper .chat-conversation .chat-message.has-actions {
33 margin-bottom: 20px;
34 }
35
36 @media screen and (min-width: 1380px) {
37 .vbo-chat-wrapper .chat-conversation .chat-message.has-actions + .is-a-separator {
38 margin-top: -10px;
39 }
40 }
41
42 .vbo-chat-wrapper .chat-conversation .chat-message .speech-bubble {
43 position: relative;
44 border-radius: 16px;
45 padding: 7px 12px;
46 margin: 2px 10px;
47 width: auto;
48 max-width: 60%;
49 word-break: break-word;
50
51 -webkit-transition: -webkit-transform 0.5s ease;
52 -moz-transition: -moz-transform 0.5s ease;
53 -o-transition: -o-transform 0.5s ease;
54 transition: transform 0.5s ease;
55 }
56
57 .vbo-chat-wrapper .chat-conversation .message-content.is-attachment {
58 max-width: 40%;
59 }
60
61 .vbo-chat-wrapper .chat-conversation .message-error-result {
62 text-align: right;
63 margin: 4px 4px 0 0;
64 font-style: italic;
65 color: #9b1212;
66 }
67 .vbo-chat-wrapper .chat-conversation .chat-message .speech-recipient-avatar {
68 float: left;
69 }
70 .vbo-chat-wrapper .chat-conversation .chat-message .speech-sender-avatar {
71 float: right;
72 }
73 .vbo-chat-wrapper .chat-conversation .chat-message .speech-user-avatar img {
74 width: 30px;
75 height: 30px;
76 object-fit: cover;
77 border-radius: 50%;
78 }
79 .vbo-chat-wrapper .chat-conversation .chat-message .speech-user-avatar > span {
80 display: inline-block;
81 width: 30px;
82 height: 30px;
83 line-height: 30px;
84 text-align: center;
85 border-radius: 50%;
86 border: 1px aliceblue;
87 background: linear-gradient(180deg, rgb(160, 164, 176) 0%, rgb(139, 142, 153) 100%);
88 font-weight: bold;
89 color: #fff;
90 font-size: 12px;
91 cursor: default;
92 }
93 .vbo-chat-wrapper .chat-conversation .chat-message .speech-bubble.sent {
94 float: right;
95 background: #e9f2ff;
96 border: 1px solid #c3d7ea;
97 border-bottom-width: 2px;
98 color: #2a3670;
99 border-top-right-radius: 0;
100 }
101 .vbo-chat-wrapper .chat-conversation .chat-message .speech-bubble.received {
102 float: left;
103 background: #fff;
104 border: 1px solid #eee;
105 border-bottom-width: 2px;
106 color: #444;
107 border-top-left-radius: 0;
108 }
109 .vbo-chat-wrapper .chat-conversation .chat-message.message-empty:not(.is-attachment) * {
110 display: none;
111 }
112
113 .vbo-chat-wrapper .chat-conversation .chat-message .speech-bubble.sent.need-animation {
114 transform: translateX(calc(100% + 10px));
115 }
116 .vbo-chat-wrapper .chat-conversation .chat-message .speech-bubble.received.need-animation {
117 transform: translateX(calc(-100% - 10px));
118 }
119
120 .vbo-chat-wrapper .chat-conversation .chat-message:not(.is-attachment) .speech-bubble a,
121 .vbo-chat-wrapper .chat-conversation .chat-message:not(.is-attachment) .speech-bubble a:hover {
122 text-decoration: underline !important;
123 }
124
125 .vbo-chat-wrapper .chat-conversation .chat-message.is-attachment .speech-bubble {
126 margin-top: -3px;
127 }
128 .vbo-chat-wrapper .chat-conversation .chat-message.is-attachment .speech-bubble * {
129 cursor: pointer;
130 }
131 .vbo-chat-wrapper .chat-conversation .chat-message.is-attachment .speech-bubble video,
132 .vbo-chat-wrapper .chat-conversation .chat-message.is-attachment .speech-bubble audio {
133 margin: 5px 0;
134 border-radius: 4px;
135 max-width: 100%;
136 }
137 .vbo-chat-wrapper .chat-conversation .chat-message.is-attachment .speech-bubble img {
138 margin: 5px 0;
139 border-radius: 4px;
140 max-width: 100%;
141 max-height: 200px;
142 display: block;
143 }
144
145 .vbo-chat-wrapper .chat-conversation .chat-message.is-attachment .speech-bubble video,
146 .vbo-chat-wrapper .chat-conversation .chat-message.is-attachment .speech-bubble audio {
147 /* video and audio tags seems to have a margin bottom by default */
148 margin: 5px 0 0 0;
149 }
150
151 .vbo-chat-wrapper .chat-conversation .chat-message.is-attachment .speech-bubble i {
152 margin: 5px 0;
153 font-size: 64px;
154 }
155
156 .vbo-chat-wrapper .chat-conversation .chat-message .speech-bubble i {
157 margin-left: 5px;
158 cursor: pointer;
159 }
160
161 .vbo-chat-wrapper .chat-conversation .chat-message .message-content .content-author {
162 font-weight: 500;
163 margin-bottom: 4px;
164 }
165 .vbo-chat-wrapper .chat-conversation .chat-message .message-content.sent .content-author {
166 text-align: right;
167 }
168
169 .vbo-chat-wrapper .chat-conversation .chat-datetime-separator {
170 width: 100%;
171 margin: 10px 0;
172 font-weight: bold;
173 text-align: center;
174 }
175
176 /* footer */
177
178 .vbo-chat-wrapper .chat-input-footer {
179 position: absolute;
180 bottom: 18px;
181 left: 0;
182 box-sizing: border-box;
183 width: 100%;
184 }
185 .vbo-chat-wrapper .chat-input-footer .textarea-input {
186 position: relative;
187 display: flex;
188 }
189 .vbo-chat-wrapper .chat-input-footer .textarea-input textarea {
190 resize: none;
191 width: calc(100% - 42px);
192 max-height: 70px;
193 margin: 0;
194 border: 1px solid #999;
195 border-radius: 20px;
196 font-size: 14px;
197 padding: 10px 40px 10px 12px;
198 box-sizing: initial;
199 min-height: auto;
200
201 position: absolute;
202 left: 40px;
203 width: calc(100% - 94px);
204 bottom: -4px;
205 }
206 .vbo-chat-wrapper .chat-input-footer .textarea-input .send-message-actions {
207 display: flex;
208 align-self: center;
209 margin-right: 4px;
210 gap: 4px;
211 }
212 .vbo-chat-wrapper .chat-input-footer .textarea-input .chat-action-btn {
213 font-size: 16px;
214 cursor: pointer;
215 color: #333;
216 display: inline-block;
217 width: 34px;
218 height: 34px;
219 text-align: center;
220 line-height: 34px;
221 background: var(--vbo-basic-btn);
222 border-radius: 50%;
223
224 /* remove native style */
225 padding: 0;
226 margin: 0;
227 border: none;
228 outline: none;
229 box-shadow: none;
230 appearance: none;
231 -webkit-appearance: none;
232 -moz-appearance: none;
233 }
234 .vbo-chat-wrapper .chat-input-footer .textarea-input .chat-action-btn:hover {
235 color: var(--vbo-base-color-hover);
236 }
237 .vbo-chat-wrapper .chat-input-footer .textarea-input .chat-action-btn.vbo-tooltip:before {
238 margin-bottom: 4px !important;
239 }
240 .vbo-chat-wrapper .chat-input-footer .textarea-input .manual-send-message {
241 display: inline-block;
242 position: absolute;
243 right: 5px;
244 top: 50%;
245 transform: translate(0, -50%);
246 padding: 0;
247 margin: 0 0 0 0;
248 font-size: 14px;
249 cursor: pointer;
250 width: 34px;
251 height: 34px;
252 line-height: 34px;
253 background: var(--vbo-base-color);
254 color: #fff;
255 text-align: center;
256 border-radius: 50%;
257 }
258 .vbo-chat-wrapper .chat-input-footer .textarea-input .manual-send-message:hover {
259 background: var(--vbo-base-color-hover);
260 }
261
262 .vbo-chat-wrapper .chat-input-footer .textarea-input textarea:focus {
263 border-color: rgba(82, 168, 236, 0.8);
264 -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px rgba(82, 168, 236, .6) !important;
265 -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px rgba(82, 168, 236, .6) !important;
266 box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px rgba(82, 168, 236, .6) !important;
267 }
268
269 .vbo-chat-wrapper .chat-input-footer .chat-uploads-bar {
270 width: 100%;
271 display: inline-block;
272 margin: 6px 0 -12px;
273 }
274 .vbo-chat-wrapper .chat-input-footer .chat-uploads-bar .chat-progress-wrap {
275 width: 100px;
276 float: left;
277 }
278 .vbo-chat-wrapper .chat-input-footer .chat-uploads-bar .chat-uploads-tab {
279 display: flex;
280 flex-wrap: wrap;
281 justify-content: end;
282 gap: 2px 5px;
283 }
284 .vbo-chat-wrapper .chat-input-footer .chat-uploads-bar .chat-attachment {
285 display: inline-block;
286 padding: 2px 6px;
287 margin: 0;
288 border: 1px solid #ccc;
289 border-radius: 4px;
290 background: #ededed;
291 font-size: 13px;
292 }
293 .vbo-chat-wrapper .chat-input-footer .chat-uploads-bar .chat-attachment i {
294 margin-left: 5px;
295 vertical-align: middle;
296 cursor: pointer;
297 }
298 .vbo-chat-wrapper .chat-input-footer .chat-uploads-bar .chat-attachment i:hover {
299 color: #777;
300 }
301
302 /* progress bar */
303
304 .vbo-chat-wrapper .chat-input-footer .chat-uploads-bar .chat-progress-wrap .chat-progress-bar {
305 background-color: #f1f1f1;
306 color: #333;
307 border-radius: 16px;
308 margin: 4px 4px 0;
309 width: 120px;
310 }
311 .vbo-chat-wrapper .chat-input-footer .chat-uploads-bar .chat-progress-wrap .chat-progress-bar > div {
312 background-color: #2196F3;
313 color: #fff;
314 width: 0%;
315 height: 16px;
316 line-height: 16px;
317 border-radius: 16px;
318 text-align: center;
319 font-size: smaller;
320 transition: width 0.5s ease 0s;
321 padding: 2px 0;
322 }