PluginProbe ʕ •ᴥ•ʔ
VikAppointments Services Booking Calendar / 1.2.21
VikAppointments Services Booking Calendar v1.2.21
1.2.21 1.2.20 trunk 1.2.17 1.2.18 1.2.19
vikappointments / site / assets / css / toast.css
vikappointments / site / assets / css Last commit date
adapter 1 day ago colorpicker 1 day ago customizer 1 day ago flags 1 day ago fontawesome 1 day ago images 1 day ago tel 1 day ago themes 1 day ago confirmdialog.css 1 day ago contextmenu.css 1 day ago environment.css 1 day ago index.html 1 day ago input-select.css 1 day ago jquery-ui.min.css 1 day ago jquery-ui.structure.min.css 1 day ago jquery-ui.theme.min.css 1 day ago jquery.fancybox.css 1 day ago toast.css 1 day ago vap-emparea.css 1 day ago vikappointments-mobile.css 1 day ago vikappointments.css 1 day ago
toast.css
326 lines
1 /* toast common */
2
3 .vap-toast-wrapper {
4 position: fixed;
5 width: 400px;
6 z-index: 100000;
7 }
8 .vap-toast-wrapper.ready {
9 transition: 0.4s ease all;
10 -moz-transition: 0.4s ease all;
11 -webkit-transition: 0.4s ease all;
12 }
13 .vap-toast-wrapper.clickable {
14 cursor: pointer;
15 }
16 .vap-toast-wrapper .toast-message {
17 background: none repeat scroll 0 0 #fff;
18 }
19 .vap-toast-wrapper .toast-message-content {
20 padding: 20px 25px;
21 margin: 0;
22 font-size: 14px;
23 font-weight: bold;
24 border: 1px solid #333;
25 border-radius: 1px;
26 color: #333;
27 background-color: rgba(64, 64, 64, 0.15);
28 }
29 .vap-toast-wrapper .toast-message-content.error {
30 border: 1px solid #990000;
31 background-color: rgba(153, 0, 0, 0.20)
32 }
33 .vap-toast-wrapper .toast-message-content.success {
34 border: 1px solid #59a27b;
35 background-color: rgba(112, 204, 135, 0.40);
36 }
37 .vap-toast-wrapper .toast-message-content.warning {
38 border: 1px solid #e08950;
39 background-color: rgba(224, 137, 80, 0.35);
40 }
41 .vap-toast-wrapper .toast-message-content.notice {
42 border: 1px solid #36add7;
43 background-color: rgba(54, 173, 215, 0.20);
44 }
45
46 /* toast hidden positions */
47 .vap-toast-wrapper.top-left,
48 .vap-toast-wrapper.top-center,
49 .vap-toast-wrapper.top-right {
50 /*
51 Use a higher margin to avoid seeing the toast on
52 browsers (like Safari) that lets the user to scroll
53 even if the page reached the end.
54 Same thing for the bottom position.
55 */
56 top: -100px;
57 transform: translateY(-100%);
58 }
59 .vap-toast-wrapper.top-left,
60 .vap-toast-wrapper.bottom-left {
61 left: 10px;
62 }
63 .vap-toast-wrapper.top-right,
64 .vap-toast-wrapper.bottom-right {
65 right: 10px;
66 }
67 .vap-toast-wrapper.top-center {
68 left: 50%;
69 transform: translate(-50%, -100%);
70 }
71
72 .vap-toast-wrapper.bottom-left,
73 .vap-toast-wrapper.bottom-center,
74 .vap-toast-wrapper.bottom-right {
75 bottom: -100px;
76 transform: translateY(100%);
77 }
78 .vap-toast-wrapper.bottom-center {
79 left: 50%;
80 transform: translate(-50%, 100%);
81 }
82
83 /* toast slide-in positions */
84
85 .vap-toast-wrapper.top-left.toast-slide-in,
86 .vap-toast-wrapper.top-center.toast-slide-in,
87 .vap-toast-wrapper.top-right.toast-slide-in {
88 transform: translateY(0%);
89 top: 10px;
90 }
91 .vap-toast-wrapper.bottom-left.toast-slide-in,
92 .vap-toast-wrapper.bottom-center.toast-slide-in,
93 .vap-toast-wrapper.bottom-right.toast-slide-in {
94 transform: translateY(0%);
95 bottom: 15px;
96 }
97
98 .vap-toast-wrapper.top-center.toast-slide-in,
99 .vap-toast-wrapper.bottom-center.toast-slide-in {
100 transform: translate(-50%, 0%);
101 }
102
103 /* shake effect */
104
105 .vap-toast-wrapper.do-shake {
106 backface-visibility: hidden;
107 perspective: 1000px;
108 }
109
110 .vap-toast-wrapper.top-center.do-shake,
111 .vap-toast-wrapper.bottom-center.do-shake {
112 animation: shake-animation-center 0.82s cubic-bezier(.36, .07, .19, .97) both;
113 transform: translate3d(-50%, 0, 0) !important;
114 }
115 @keyframes shake-animation-center {
116 10%, 90% {
117 transform: translate3d(-50.5%, 0, 0);
118 }
119
120 20%, 80% {
121 transform: translate3d(-49%, 0, 0);
122 }
123
124 30%, 50%, 70% {
125 transform: translate3d(-52%, 0, 0);
126 }
127
128 40%, 60% {
129 transform: translate3d(-48%, 0, 0);
130 }
131 }
132
133 .vap-toast-wrapper.top-left.do-shake,
134 .vap-toast-wrapper.top-right.do-shake,
135 .vap-toast-wrapper.bottom-left.do-shake,
136 .vap-toast-wrapper.bottom-right.do-shake {
137 animation: shake-animation-side 0.82s cubic-bezier(.36, .07, .19, .97) both;
138 }
139 @keyframes shake-animation-side {
140 10%, 90% {
141 transform: translate3d(-0.5%, 0, 0);
142 }
143
144 20%, 80% {
145 transform: translate3d(1%, 0, 0);
146 }
147
148 30%, 50%, 70% {
149 transform: translate3d(-2%, 0, 0);
150 }
151
152 40%, 60% {
153 transform: translate3d(2%, 0, 0);
154 }
155 }
156
157 @media screen and (max-width: 480px) {
158 .vap-toast-wrapper {
159 right: 10px !important;
160 width: calc(100% - 20px) !important;
161 }
162 }
163
164 /* toast message template */
165
166 .vap-pushnotif-wrapper {
167 display: flex;
168 align-items: center;
169 }
170 .vap-pushnotif-wrapper .push-notif-icon {
171 margin-right: 10px;
172 }
173 .vap-pushnotif-wrapper .push-notif-icon i {
174 font-size: 32px;
175 font-weight: bold;
176 }
177 .vap-pushnotif-wrapper .push-notif-icon img {
178 max-width: 48px;
179 max-height: 48px;
180 }
181 .vap-pushnotif-wrapper .push-notif-text {
182 flex: 1;
183 max-width: 100%;
184 }
185 .vap-pushnotif-wrapper .push-notif-text .push-notif-title {
186 font-size: larger;
187 font-weight: bold;
188 }
189 .vap-pushnotif-wrapper .push-notif-text .push-notif-body {
190 font-weight: 500;
191 }
192 .vap-pushnotif-wrapper .push-notif-text .push-notif-title + .push-notif-body {
193 margin-top: 5px;
194 }
195
196 /* push notification template */
197
198 .vap-toast-wrapper.push-notif .toast-message {
199 background: transparent;
200 /* disable selection */
201 -webkit-touch-callout: none; /* iOS Safari */
202 -webkit-user-select: none; /* Safari */
203 -khtml-user-select: none; /* Konqueror HTML */
204 -moz-user-select: none; /* Old versions of Firefox */
205 -ms-user-select: none; /* Internet Explorer/Edge */
206 user-select: none; /* Non-prefixed version, currently
207 supported by Chrome, Edge, Opera and Firefox */
208 }
209 .vap-toast-wrapper.push-notif .toast-message-content {
210 overflow: hidden;
211 font-size: .875rem;
212 font-weight: normal;
213 background-color: rgba(255,255,255,.90);
214 background-clip: padding-box;
215 border: 1px solid rgba(0,0,0,.1);
216 box-shadow: 0 .25rem .75rem rgba(0,0,0,.1);
217 -webkit-backdrop-filter: blur(10px);
218 backdrop-filter: blur(10px);
219 border-radius: .25rem;
220 padding: 0;
221 }
222 .vap-toast-wrapper.push-notif .vap-pushnotif-wrapper .push-notif-header {
223 display: flex;
224 align-items: center;
225 padding: .5rem .75rem;
226 background-color: rgba(255,255,255,.90);
227 background-clip: padding-box;
228 border-bottom: 1px solid rgba(0,0,0,.05);
229 }
230 .vap-toast-wrapper.push-notif .vap-pushnotif-wrapper .push-notif-header .push-notif-icon {
231 display: flex;
232 }
233 .vap-toast-wrapper.push-notif .vap-pushnotif-wrapper .push-notif-header .push-notif-icon i {
234 font-size: 20px;
235 color: #007aff;
236 }
237 .vap-toast-wrapper.push-notif .vap-pushnotif-wrapper .push-notif-header .push-notif-icon img {
238 max-width: 20px;
239 max-height: 20px;
240 }
241 .vap-toast-wrapper.push-notif .vap-pushnotif-wrapper .push-notif-header .push-notif-title {
242 color: #6c757d;
243 font-size: 0.95rem;
244 font-weight: 500;
245 flex: 1;
246 white-space: nowrap;
247 overflow: hidden;
248 text-overflow: ellipsis;
249 }
250 .vap-toast-wrapper.push-notif .vap-pushnotif-wrapper .push-notif-header small {
251 color: #6c757d;
252 font-size: .75rem;
253 margin-left: 5px;
254 }
255 .vap-toast-wrapper.push-notif .vap-pushnotif-wrapper .push-notif-body {
256 padding: .75rem;
257 margin: 0;
258 font-weight: normal;
259 }
260 .vap-toast-wrapper.push-notif .vap-pushnotif-wrapper .push-notif-body .push-notif-body-inner {
261 overflow: hidden;
262 text-overflow: ellipsis;
263 display: -webkit-box;
264 -webkit-line-clamp: 3;
265 -webkit-box-orient: vertical;
266 }
267
268 .vap-toast-wrapper.push-notif.do-shake {
269 animation: none !important;
270 }
271
272 /* success styling */
273
274 .vap-toast-wrapper.push-notif.success .toast-message-content {
275 color: #c7ffd3;
276 background-color: rgba(50, 152, 55, .90);
277 border-color: rgba(4, 74, 19, .10);
278 }
279 .vap-toast-wrapper.push-notif.success .vap-pushnotif-wrapper .push-notif-header {
280 background-color: rgba(34, 140, 40, .90);
281 border-bottom-color: rgba(4, 74, 19, .05);
282 }
283 .vap-toast-wrapper.push-notif.success .vap-pushnotif-wrapper .push-notif-header .push-notif-icon i {
284 color: #c7ffd3;
285 }
286 .vap-toast-wrapper.push-notif.success .vap-pushnotif-wrapper .push-notif-header .push-notif-title,
287 .vap-toast-wrapper.push-notif.success .vap-pushnotif-wrapper .push-notif-header small {
288 color: #c7ffd3;
289 }
290
291 /* error styling */
292
293 .vap-toast-wrapper.push-notif.error .toast-message-content {
294 color: #ffd9e3;
295 background-color: rgba(152, 50, 66, .90);
296 border-color: rgba(152, 12, 34, .10);
297 }
298 .vap-toast-wrapper.push-notif.error .vap-pushnotif-wrapper .push-notif-header {
299 background-color: rgba(138, 37, 53, .90);
300 border-bottom-color: rgba(152, 12, 34, .05);
301 }
302 .vap-toast-wrapper.push-notif.error .vap-pushnotif-wrapper .push-notif-header .push-notif-icon i {
303 color: #ffd9e3;
304 }
305 .vap-toast-wrapper.push-notif.error .vap-pushnotif-wrapper .push-notif-header .push-notif-title,
306 .vap-toast-wrapper.push-notif.error .vap-pushnotif-wrapper .push-notif-header small {
307 color: #ffd9e3;
308 }
309
310 @media (prefers-color-scheme: dark) {
311 .vap-toast-wrapper.push-notif .toast-message-content {
312 background-color: rgba(32,28,37,.90);
313 border-color: rgba(32,28,37,.90);
314 box-shadow: 0 .25rem .75rem rgba(0,0,0,1);
315 }
316 .vap-toast-wrapper.push-notif .vap-pushnotif-wrapper .push-notif-header {
317 background-color: rgba(32,28,37,.90);
318 border-bottom: 1px solid rgba(255,255,255,.05);
319 }
320 .vap-toast-wrapper.push-notif .vap-pushnotif-wrapper .push-notif-header .push-notif-title {
321 color: #a9a5af;
322 }
323 .vap-toast-wrapper.push-notif .vap-pushnotif-wrapper .push-notif-body {
324 color: #e2e2e3;
325 }
326 }