PluginProbe
VikBooking Hotel Booking Engine & PMS / 1.8.16
VikBooking Hotel Booking Engine & PMS v1.8.16
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 / modules / mod_vikbooking_chat / assets / style.css

style.css in VikBooking Hotel Booking Engine & PMS 1.8.16, at modules/mod_vikbooking_chat/assets/style.css

282 lines 7.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 /* widget */
2
3 .vbo-chat-session-widget {
4 position: fixed;
5 bottom: 20px;
6 right: 20px;
7 z-index: 9999;
8 margin: 0;
9 }
10
11 .vbo-chat-session-widget * {
12 box-sizing: border-box;
13 }
14
15 /* widget toggle */
16
17 .vbo-chat-widget-toggle {
18 opacity: 0;
19 transform: scale(0.8);
20 }
21 .vbo-chat-widget-toggle.bounce-in {
22 animation: bounceIn .6s ease-out forwards;
23 }
24 .vbo-chat-widget-toggle a {
25 background: var(--vbo-chat-widget-btn-background) !important;
26 width: 60px;
27 height: 60px;
28 border-radius: 50%;
29 color: var(--vbo-chat-widget-btn-color) !important;
30 display: flex;
31 align-items: center;
32 justify-content: center;
33 text-decoration: none !important;
34 }
35 .vbo-chat-widget-toggle a:hover {
36 transition-property: all;
37 transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
38 transition-duration: 150ms;
39 transform: scale(1.05, 1.05);
40 }
41 .vbo-chat-widget-toggle i {
42 font-size: 26px;
43 }
44
45 @keyframes bounceIn {
46 0% {
47 opacity: 0;
48 transform: scale(0.8);
49 }
50 40% {
51 opacity: 1;
52 transform: scale(1.2);
53 }
54 70% {
55 transform: scale(0.95);
56 }
57 100% {
58 opacity: 1;
59 transform: scale(1);
60 }
61 }
62
63 /* widget container */
64
65 .vbo-chat-widget-toggle a[data-unread]:before {
66 content: attr(data-unread);
67 background: #900;
68 min-width: 20px;
69 height: 20px;
70 font-size: 12px;
71 display: flex;
72 align-items: center;
73 justify-content: center;
74 color: #fff;
75 border-radius: 25px;
76 position: absolute;
77 top: 0;
78 right: 0;
79 padding: 0 2px;
80 transform: translate(10%, -10%);
81 }
82 .vbo-chat-widget-toggle a[data-unread="0"]:before {
83 display: none;
84 }
85
86 .vbo-chat-session-widget .vbo-chat-widget-container {
87 width: min(500px, calc(100vw - 40px));
88 flex-direction: column;
89 background: #fff; /* @todo */
90 color: #333;
91 padding: 0;
92 border-radius: 16px;
93 overflow: hidden;
94 box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
95 display: none;
96 }
97 .vbo-chat-session-widget .vbo-chat-widget-container.slide-in {
98 display: flex;
99 transform-origin: bottom right;
100 animation: chatOpen 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
101 }
102 @keyframes chatOpen {
103 from {
104 opacity: 0;
105 transform: translateY(20px) scale(0.95);
106 }
107 to {
108 opacity: 1;
109 transform: translateY(0) scale(1);
110 }
111 }
112
113 .vbo-chat-session-widget a:focus,
114 .vbo-chat-session-widget a:active {
115 outline: none !important;
116 background: transparent !important;
117 }
118
119 /* widget head */
120
121 .vbo-chat-session-widget .vbo-chat-widget-container .vbo-chat-widget-head {
122 display: flex;
123 align-items: center;
124 justify-content: space-between;
125 font-size: 18px;
126 font-weight: bold;
127 padding: 12px 16px;
128 background: var(--vbo-chat-widget-btn-background);
129 color: var(--vbo-chat-widget-btn-color);
130 }
131 .vbo-chat-session-widget .vbo-chat-widget-container .vbo-chat-widget-head a {
132 color: var(--vbo-chat-widget-btn-color) !important;
133 display: inline-flex;
134 padding: 2px 4px;
135 border-radius: 4px;
136 text-decoration: none;
137 justify-content: center;
138 align-items: center;
139 }
140 .vbo-chat-session-widget .vbo-chat-widget-container .vbo-chat-widget-head a:hover {
141 color: var(--vbo-chat-widget-btn-background) !important;
142 background: var(--vbo-chat-widget-btn-color) !important;
143 }
144
145 /* widget body */
146
147 .vbo-chat-session-widget .vbo-chat-widget-container .vbo-chat-widget-body {
148 position: relative;
149 }
150 .vbo-chat-session-widget .vbo-chat-widget-container .vbo-chat-widget-body .vbo-chat-session-placeholder {
151 position: absolute;
152 top: 0;
153 left: 0;
154 width: 100%;
155 height: calc(100vh - 250px);
156 }
157
158 /* chat element */
159
160 .vbo-chat-session-widget .vbo-chat-wrapper .chat-conversation {
161 max-height: calc(100vh - 250px);
162 height: calc(100vh - 250px);
163 padding: 0 10px;
164 margin-bottom: 60px;
165 font-size: 14px;
166 }
167 .vbo-chat-session-widget .vbo-chat-wrapper .chat-conversation .chat-datetime-separator {
168 font-size: 14px;
169 }
170
171 .vbo-chat-session-widget .vbo-chat-wrapper .chat-input-footer {
172 padding: 5px 10px 18px 5px;
173 bottom: 0;
174 background: #fff; /* @todo */
175 }
176
177 /* start session form */
178
179 .vbo-chat-session-widget .vbo-chat-session-start-form {
180 padding: 30px 30px 50px;
181 }
182 .vbo-chat-session-widget .vbo-chat-session-form-intro {
183 margin-bottom: 30px;
184 }
185 .vbo-chat-session-widget .vbo-chat-session-form-control {
186 margin-top: 15px;
187 }
188 .vbo-chat-session-widget .vbo-chat-session-form-control label {
189 display: block;
190 margin: 0 0 5px;
191 padding: 0;
192 }
193 .vbo-chat-session-widget .vbo-chat-session-form-control input {
194 outline: 0;
195 padding: 0 10px;
196 background: var(--vbo-input-style);
197 border: 1px solid var(--vbo-border-color);
198 color: var(--vbo-text-color);
199 border-radius: 8px;
200 min-height: 40px;
201 }
202 .vbo-chat-session-widget .vbo-chat-session-form-control input:invalid:not(:placeholder-shown),
203 .vbo-chat-session-widget .vbo-chat-session-form-control input.invalid {
204 border-color: #9d261d !important;
205 background: #f2dede !important;
206 }
207 .vbo-chat-session-widget .vbo-chat-session-form-control input, .vbo-chat-session-widget .vbo-chat-session-form-control button {
208 width: 100%;
209 margin: 0;
210 }
211 .vbo-chat-session-widget .vbo-chat-session-form-control .vbo-chat-session-form-help {
212 margin-top: 5px;
213 font-size: smaller;
214 font-style: italic;
215 }
216 .vbo-chat-session-widget .vbo-chat-session-form-control .start-chat-session {
217 position: relative;
218 }
219 .vbo-chat-session-widget .vbo-chat-session-form-control .start-chat-session .loading-spinner {
220 position: absolute;
221 top: 50%;
222 right: 10px;
223 transform: translateY(-50%);
224 }
225
226 /* chat empty placeholder */
227
228 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner {
229 display: flex;
230 flex-direction: column;
231 justify-content: space-between;
232 height: 100%;
233 padding: 10px;
234 }
235 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-greetings {
236 flex: 1;
237 display: flex;
238 justify-content: center;
239 align-items: center;
240 flex-direction: column;
241 }
242 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-greetings .greetings-title {
243 font-size: 32px;
244 font-weight: 600;
245 }
246 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-greetings .greetings-subtitle {
247 font-size: 20px;
248 }
249 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-faqs {
250 font-size: 16px;
251 transform: translateY(calc(100% + 20px));
252 transition: transform .4s ease;
253 }
254 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-faqs.slide-in {
255 transform: translateY(0);
256 }
257 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-faqs ul {
258 list-style-type: none;
259 padding: 0;
260 margin: 0;
261 }
262 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-faqs li {
263 padding: 5px 0;
264 }
265 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-faqs li:not(:last-child) {
266 border-bottom: 1px solid #f2f2f2; /* @todo */
267 }
268 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-faqs a {
269 display: block;
270 text-decoration: none;
271 padding: 5px 10px;
272 border-radius: 8px;
273 transform: scale(1);
274 transition: transform .3s ease;
275 }
276 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-faqs a:hover,
277 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-faqs a:active,
278 .vbo-chat-session-widget .vbo-chat-session-placeholder-inner .vbo-chat-placeholder-faqs a:focus {
279 background: var(--vbo-chat-widget-btn-background) !important;
280 color: var(--vbo-chat-widget-btn-color) !important;
281 transform: scale(1.01);
282 }