PluginProbe ʕ •ᴥ•ʔ
Appointment Booking Plugin – LatePoint | Calendar & Scheduling for WordPress / trunk
Appointment Booking Plugin – LatePoint | Calendar & Scheduling for WordPress vtrunk
5.6.9 5.6.8 5.6.7 5.6.6 5.6.5 5.6.4 5.6.3 5.6.2 5.6.1 5.6.0 5.5.2 5.5.1 5.5.0 5.4.2 trunk 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.1.8 5.1.9 5.1.91 5.1.92 5.1.93 5.1.94 5.2.0 5.2.1 5.2.10 5.2.11 5.2.2 5.2.3 5.2.4 5.2.5 5.2.6 5.2.7 5.2.8 5.2.9 5.3.0 5.3.1 5.3.2 5.4.0 5.4.1
latepoint / lib / assets / stylesheets / front / _booking.scss
latepoint / lib / assets / stylesheets / front Last commit date
_animations.scss 9 months ago _booking.scss 23 hours ago _booking_animations.scss 1 year ago _buttons.scss 9 months ago _calendar.scss 3 months ago _customer_dashboard.scss 23 hours ago _forms.scss 9 months ago _grid.scss 1 year ago _icons.scss 9 months ago _items.scss 9 months ago _lightbox.scss 2 weeks ago _login.scss 9 months ago _mixins.scss 1 year ago _notifications.scss 9 months ago _print.scss 1 year ago _responsive.scss 9 months ago _shared.scss 1 year ago _shortcodes.scss 1 year ago _type.scss 1 year ago _utilities.scss 1 year ago _variables.scss 9 months ago
_booking.scss
2584 lines
1 .entry-content a,
2 .entry-summary a,
3 .widget a,
4 .site-footer .widget-area a,
5 .posts-navigation a,
6 .widget_authors a strong {
7 box-shadow: none;
8 }
9
10 .os_trigger_booking {
11 cursor: pointer;
12 }
13
14 .latepoint-step-svg-highlight {
15 fill: #020202;
16 }
17 .latepoint-step-svg-base {
18 fill: #020202;
19 }
20
21 .latepoint-w {
22 line-height: 1.3;
23 max-width: initial !important;
24
25 strong,
26 b {
27 font-weight: $body-font-weight-bold;
28 }
29 ul {
30 li {
31 list-style: none;
32 }
33 }
34 }
35
36 .latepoint-customer-box-title {
37 font-size: $body-font-size-m;
38 color: $headings-color;
39 font-weight: $body-font-weight-bold;
40 margin-bottom: 10px;
41 }
42
43 .latepoint-customer-box-desc {
44 margin-bottom: 5px;
45 font-size: $body-font-size-xs;
46 }
47
48 .login-options-wrapper {
49 display: flex;
50 justify-content: space-between;
51 align-items: flex-end;
52 margin-bottom: 10px;
53 .login-options-col {
54 &.os-full {
55 flex: 1;
56 }
57 }
58 }
59 .latepoint-customer-otp-option {
60 label {
61 display: flex;
62 gap: 5px;
63 align-items: center;
64 margin: 0;
65 padding: 5px;
66 cursor: pointer;
67 font-size: $body-font-size-s;
68 color: $body-color;
69 border-radius: $border-radius;
70 &:hover {
71 background-color: #f8f8f8;
72 }
73 }
74 input,
75 span {
76 display: block;
77 margin: 0;
78 padding: 0;
79 &:focus {
80 outline: none;
81 }
82 &:focus-visible {
83 box-shadow: 0 0 0 1px $brand-primary;
84 outline: none;
85 }
86 }
87 }
88
89 .customer-login-method-wrapper {
90 &.os-hidden {
91 display: none;
92 }
93 }
94
95 .login-via-label {
96 font-size: $body-font-size-m;
97 color: $headings-color;
98 }
99 .login-options-via {
100 display: flex;
101 align-items: center;
102 gap: 10px;
103 }
104
105 .login-options-via-wrapper {
106 display: flex;
107 background-color: #f2f2f4;
108 border-radius: $border-radius;
109 padding: 4px;
110 align-items: center;
111 .login-option-label {
112 margin-right: 5px;
113 color: $color-faded;
114 font-size: $body-font-size-xs;
115 }
116 .login-option {
117 border-radius: $border-radius;
118 padding: 4px 8px;
119 color: $color-faded;
120 cursor: pointer;
121 &.os-default {
122 order: -1;
123 }
124 &:hover {
125 color: $headings-color;
126 }
127 &.os-selected {
128 background-color: #fff;
129 color: $headings-color;
130 box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.1);
131 }
132 }
133 }
134 .os-customer-login-w {
135 .os-customer-login-buttons {
136 display: flex;
137 justify-content: space-between;
138 align-items: center;
139 }
140 }
141 .os-customer-otp-notice {
142 background-color: #f2f2f4;
143 border-radius: $border-radius;
144 padding: 15px;
145 padding-bottom: 16px;
146 font-size: $body-font-size-xs;
147 margin-bottom: 15px;
148 text-align: center;
149 line-height: 1;
150 }
151 .os-customer-wrapped-box {
152 padding: 20px;
153 border: 1px solid $border-color-strong;
154 border-bottom-color: darken($border-color-strong, 10%);
155 border-radius: $border-radius;
156 margin-bottom: 15px;
157 box-shadow: 0 2px 2px rgba(0, 0, 0, 0.07);
158 position: relative;
159 animation: 0.3s cubic-bezier(0.05, 0.45, 0.1, 1) 0s up20op;
160 animation-fill-mode: both;
161 &.os-unwrapped {
162 padding: 0;
163 border: none;
164 box-shadow: none;
165 }
166 .latepoint-customer-otp-close {
167 position: absolute;
168 top: 15px;
169 right: 15px;
170 color: $body-color;
171 font-size: 14px;
172 cursor: pointer;
173 padding: 5px;
174 line-height: 1;
175 i {
176 display: block;
177 }
178 &:hover {
179 background-color: #eee;
180 border-radius: $border-radius;
181 }
182 }
183 .os-form-group {
184 animation: none;
185 transition: none !important;
186 }
187 .latepoint-customer-otp-sub-wrapper {
188 display: flex;
189 justify-content: space-between;
190 align-items: center;
191 font-size: $body-font-size-xs;
192 margin-top: 10px;
193 a {
194 text-decoration: none;
195 border-bottom: 1px solid $brand-primary;
196 color: $brand-primary;
197 font-size: $body-font-size-xs;
198 &.os-loading {
199 color: transparent !important;
200 position: relative;
201 border-color: transparent;
202 &:before {
203 @include loading-circle($brand-primary, 10px);
204 }
205 }
206 }
207 }
208 }
209
210 .latepoint-book-form-wrapper {
211 &.os-loading {
212 .latepoint-form-w {
213 min-height: 300px;
214 &:before {
215 @include loading-circle($brand-primary, 40px);
216 }
217 }
218 }
219 }
220
221 .latepoint-w {
222 .load-customer-step-trigger {
223 position: relative;
224 &.os-loading {
225 i {
226 color: transparent;
227 }
228 &:before {
229 @include loading-circle($brand-primary, 12px);
230 }
231 }
232 }
233 .slot-not-available-wrapper {
234 text-align: center;
235 padding: 50px;
236 width: 400px;
237 position: relative;
238 .latepoint-lightbox-close {
239 position: absolute;
240 top: 10px;
241 right: 10px;
242 line-height: 1;
243 font-size: 18px;
244 padding: 5px;
245 cursor: pointer;
246 &:hover {
247 background-color: #f7f7f7;
248 }
249 }
250
251 .icon-w {
252 margin-bottom: 20px;
253
254 i {
255 background: #ffd1d1;
256 padding: 15px;
257 border-radius: 40px;
258 color: #a31818;
259 font-size: 28px;
260 display: inline-block;
261 }
262 }
263
264 h2 {
265 margin: 0 0 10px 0;
266 font-size: $headings-font-size-l;
267 color: $headings-color;
268 line-height: 1.2;
269 }
270
271 .desc {
272 font-size: $body-font-size-m;
273 margin-bottom: 20px;
274 }
275
276 .booking-date-time-info {
277 .info-label {
278 color: $color-faded;
279 margin-bottom: 5px;
280 }
281
282 .info-value {
283 font-weight: $body-font-weight-bold;
284 }
285 }
286 }
287 &.latepoint-lightbox-form {
288 max-height: 100%;
289 display: flex;
290 overflow: hidden;
291 }
292 // Booking form on page
293 &.latepoint-inline-form {
294 margin: 20px 0;
295 display: flex;
296 .latepoint-booking-form-element {
297 box-shadow:
298 0 10px 30px 0 rgba(115, 125, 146, 0.11),
299 0 1px 2px 0 rgba(160, 170, 185, 0.6);
300 margin: 0px auto;
301 .latepoint-lightbox-close {
302 display: none !important;
303 }
304 .latepoint-form-w .latepoint-heading-w .latepoint-lightbox-summary-trigger {
305 font-size: 20px;
306 }
307 .latepoint-heading-w {
308 text-align: center;
309 }
310 .latepoint-form-w .latepoint-body {
311 max-height: inherit;
312 }
313 }
314 }
315 &.latepoint-with-summary {
316 .latepoint-lightbox-i {
317 transition: all 0.4s cubic-bezier(0.05, 0.45, 0.1, 1);
318 }
319 .latepoint-booking-form-element {
320 transition: all 0.4s cubic-bezier(0.05, 0.45, 0.1, 1);
321 }
322 }
323 &.latepoint-hide-side-panel {
324 .latepoint-booking-form-element {
325 .latepoint-form-w .latepoint-heading-w {
326 .os-heading-text {
327 }
328 }
329
330 .latepoint-summary-w .summary-header {
331 }
332 &.hidden-buttons .latepoint-form-w .latepoint-body {
333 }
334 &.hidden-buttons .latepoint-form-w .latepoint-body:after {
335 }
336 .latepoint-form-w {
337 .latepoint-heading-w {
338 }
339 .latepoint-body {
340 }
341 .latepoint-footer {
342 .latepoint-progress {
343 display: none;
344 }
345 }
346 }
347 .latepoint-side-panel {
348 display: none;
349 }
350 .step-datepicker-w {
351 }
352 }
353 &.latepoint-inline-form {
354 .latepoint-booking-form-element {
355 }
356 }
357 }
358 }
359 .latepoint-w .latepoint-booking-form-element {
360 display: flex;
361 align-items: stretch;
362 position: relative;
363
364 &[class*="current-step-payment__"]*="current-step-payment__""] {
365 .latepoint-summary-w {
366 .checkout-from-summary-panel-btn-wrapper {
367 display: none;
368 }
369 .summary-box .summary-box-content {
370 .os-remove-item-from-cart {
371 display: none;
372 }
373 }
374 }
375 }
376
377 .latepoint-add-another-item-trigger-wrapper.on-summary {
378 text-align: right;
379 .latepoint-add-another-item-trigger {
380 display: inline-flex;
381 align-items: center;
382 gap: 5px;
383 color: $brand-primary;
384 font-weight: $body-font-weight-bold;
385 font-size: floor($font-size-base * 0.9);
386 line-height: 1.5;
387 cursor: pointer;
388 &:focus-visible {
389 outline: 2px solid $brand-primary;
390 }
391 span {
392 border-bottom: 1px dotted $brand-primary;
393 }
394 div + div {
395 margin: 0 auto;
396 }
397 .latepoint-icon {
398 font-size: 13px;
399 }
400 &:hover {
401 span {
402 border-bottom-style: solid;
403 }
404 }
405 }
406 }
407
408 h1,
409 h2,
410 h3,
411 h4,
412 h5 {
413 color: var(--latepoint-headings-color);
414 }
415
416 a {
417 text-decoration: none;
418 }
419 &.current-step-booking__datepicker {
420 .latepoint-side-panel .latepoint-timezone-selector-w {
421 display: block;
422 }
423 }
424 &.current-step-confirmation {
425 .latepoint-form-w .latepoint-heading-w {
426 border-bottom: none;
427 position: fixed;
428 top: 10px;
429 right: 10px;
430 z-index: 99999;
431 padding: 0;
432 .os-heading-text {
433 display: none;
434 }
435 .latepoint-lightbox-close {
436 margin-left: 0;
437 padding: 5px;
438 }
439 }
440 }
441
442 .latepoint-progress {
443 text-align: center;
444 color: $color-faded;
445 font-size: floor($font-size-base);
446 padding-top: 15px;
447 margin-bottom: 30px;
448 display: none;
449
450 ul {
451 list-style: none;
452 margin: 0px auto;
453 padding: 0px;
454 text-align: center;
455 justify-content: center;
456 display: flex;
457 gap: 10px;
458 li {
459 display: block;
460 flex: 0;
461 margin: 0px;
462 padding: 0px;
463 .progress-item {
464 height: 5px;
465 width: 5px;
466 background-color: rgba(0, 0, 0, 0.07);
467 display: block;
468 color: $color-faded;
469 text-decoration: none;
470 position: relative;
471 box-shadow: none;
472 font-weight: $body-font-weight-bold;
473 font-size: floor($font-size-base * 0.9);
474 span {
475 position: absolute;
476 display: block;
477 left: 50%;
478 top: -5px;
479 transform: translate(-50%, -150%);
480 display: inline-block;
481 background-color: $brand-primary;
482 color: #fff;
483 padding: 3px 6px;
484 line-height: 1.1;
485 visibility: hidden;
486 opacity: 0;
487 transition: all 0.2s ease;
488 white-space: nowrap;
489 }
490 &:hover {
491 background-color: rgba(0, 0, 0, 0.15);
492 span {
493 opacity: 1;
494 transform: translate(-50%, -105%);
495 visibility: visible;
496 }
497 }
498 }
499 &.active {
500 .progress-item {
501 }
502 }
503 &.active,
504 &.complete {
505 .progress-item {
506 background-color: color-mix(in srgb, $brand-primary 20%, transparent);
507 &:hover {
508 background-color: $brand-primary;
509 }
510 }
511 }
512 }
513 }
514 }
515 .info-box {
516 background-color: #fff3cb;
517 margin-top: 20px;
518 padding: 10px;
519 font-size: floor($font-size-base * 0.9);
520 color: #4e4841;
521 .info-box-buttons {
522 margin-top: 10px;
523 a {
524 background-color: #fff;
525 color: $body-color;
526 font-weight: $body-font-weight-bold;
527 padding: 3px 8px;
528 display: inline-block;
529 text-decoration: none;
530 box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
531 }
532 }
533 }
534
535 .latepoint-side-panel {
536 flex: 0 0 $booking-side-panel-width;
537 width: $booking-side-panel-width;
538 background-color: $booking-side-panel-bg;
539 border-right: 1px solid rgba(0, 0, 0, 0.1);
540 padding: 40px 40px 25px 40px;
541 text-align: center;
542 display: flex;
543 flex-direction: column;
544 justify-content: space-between;
545 border-radius: $border-radius-md 0px 0px $border-radius-md;
546 position: relative;
547
548 .latepoint-timezone-selector-w {
549 margin-top: 15px;
550 display: none;
551 position: relative;
552 border-top: 1px solid rgba(0, 0, 0, 0.1);
553 padding-top: 10px;
554 &.os-loading {
555 &:before {
556 @include loading-circle($color: $body-color, $width: 12px);
557 left: -13px;
558 right: auto;
559 top: auto;
560 bottom: 1px;
561 z-index: 9999;
562 }
563 }
564 .os-form-group.os-form-select-group label {
565 display: block !important;
566 font-size: floor($font-size-base * 0.85) !important;
567 color: $color-faded;
568 margin-bottom: 3px;
569 }
570 .os-form-group.os-form-select-group select.os-form-control {
571 height: 26px !important;
572 padding: 0px 3px !important;
573 font-size: floor($font-size-base * 0.85) !important;
574 }
575 .os-form-group {
576 margin-bottom: 0px !important;
577 }
578 select {
579 text-align-last: center;
580 text-align: center;
581 }
582 }
583
584 .latepoint-step-desc-w {
585 padding: 0px 0px 50px 0px;
586 color: $color-faded;
587 margin-bottom: auto;
588 .latepoint-step-desc-library {
589 display: none;
590 }
591 .latepoint-step-desc {
592 .latepoint-desc-media {
593 width: 80px;
594 height: 80px;
595 background-size: contain;
596 background-repeat: no-repeat;
597 background-position: bottom center;
598 display: inline-block;
599 margin-bottom: 20px;
600 position: relative;
601 &.svg-w {
602 width: 70px;
603 height: auto;
604 &:before {
605 content: "";
606 width: 40px;
607 height: 40px;
608 background-color: color-mix(in srgb, $brand-primary 20%, transparent);
609 position: absolute;
610 bottom: 50%;
611 right: 50%;
612 z-index: 1;
613 }
614 svg {
615 z-index: 2;
616 position: relative;
617 }
618 }
619 }
620 .latepoint-desc-title {
621 padding-top: 0px;
622 margin-bottom: 5px;
623 font-size: $headings-font-size-l;
624 line-height: 1.2;
625 }
626 .latepoint-desc-content {
627 }
628 }
629 }
630
631 .latepoint-questions {
632 color: $color-faded;
633 margin-top: 0;
634
635 h5 {
636 margin: 0px;
637 line-height: 1.4;
638 margin-bottom: 5px;
639 position: relative;
640 font-size: $headings-font-size-s;
641 text-transform: none;
642 letter-spacing: normal;
643 }
644 p:last-child {
645 margin-bottom: 0px;
646 }
647 a {
648 text-decoration: underline;
649 }
650 }
651 }
652 .latepoint-form-w {
653 flex: 0 0 $booking-form-content-width;
654 width: $booking-form-content-width;
655 background-color: #fff;
656 border-radius: 0px $border-radius-md $border-radius-md 0px;
657 position: relative;
658 z-index: 2;
659
660 &.showing-item-details-popup {
661 .latepoint-body {
662 padding: 0;
663 }
664 .latepoint-footer,
665 .latepoint-heading-w,
666 .latepoint-step-content {
667 display: none;
668 }
669 }
670 form {
671 background-color: #fff;
672 padding: 0px;
673 min-height: 100%;
674 }
675
676 .select-total-attendees-w {
677 align-items: center;
678 padding: 30px 15px;
679 justify-content: space-around;
680 -webkit-user-select: none;
681 -moz-user-select: none;
682 -ms-user-select: none;
683
684 .select-total-attendees-label {
685 padding-right: 20px;
686 h4 {
687 margin: 0px !important;
688 padding: 0px !important;
689 font-size: floor($headings-font-size * 1.4);
690 }
691 .sta-sub-label {
692 font-size: floor($font-size-base * 0.9);
693 color: $color-faded;
694 }
695 }
696 .total-attendees-selector-w {
697 background-color: #fff;
698 display: flex;
699 align-items: center;
700 padding: 5px 10px;
701 border: 1px solid $form-input-border-color;
702 outline-style: none;
703 &:hover {
704 }
705 input {
706 text-align: center;
707 border: none !important;
708 padding: 0px 5px !important;
709 font-size: floor($font-size-base * 1.5) !important;
710 font-weight: $body-font-weight-bold;
711 width: 50px !important;
712 margin: 0px !important;
713 background-color: #fff !important;
714 color: $body-color !important;
715 box-shadow: none !important;
716 &::placeholder {
717 color: rgba(0, 0, 0, 0.1);
718 }
719 &:focus {
720 outline: none !important;
721 box-shadow: none !important;
722 }
723 }
724 .total-attendees-selector {
725 cursor: pointer;
726 color: rgba(0, 0, 0, 0.8);
727 font-size: 20px;
728 background-color: #f3f4f9;
729 padding: 4px;
730 line-height: 1;
731 flex: 0;
732 text-align: center;
733 &:hover {
734 color: #fff;
735 background-color: $brand-primary;
736 }
737 }
738 }
739
740 &.style-centered {
741 text-align: center;
742 .total-attendees-selector-w {
743 width: 150px;
744 margin: 0px auto;
745 justify-content: space-between;
746 input {
747 font-size: floor($font-size-base * 2.2) !important;
748 width: 100% !important;
749 line-height: 1.4 !important;
750 font-family: $mono-font-family;
751 }
752 }
753 .select-total-attendees-label {
754 margin-bottom: 20px;
755 padding: 0px;
756 h4 {
757 font-size: floor($headings-font-size * 1.8);
758 }
759 .sta-sub-label {
760 font-size: floor($font-size-base * 1.2);
761 }
762 }
763 }
764 }
765
766 .latepoint-form {
767 display: flex;
768 justify-content: stretch;
769 flex-direction: column;
770 }
771
772 .latepoint-heading-w {
773 background-color: #fff;
774 padding: 15px 15px 15px 40px;
775 border-bottom: 1px solid rgba(0, 0, 0, 0.05);
776 text-align: left;
777 display: flex;
778 align-items: center;
779 &.os-hidden {
780 display: none;
781 }
782
783 .latepoint-lightbox-summary-trigger {
784 padding: 5px;
785 order: 1;
786 }
787 .latepoint-lightbox-summary-trigger,
788 .latepoint-lightbox-close {
789 transform: none;
790 position: relative;
791 top: auto;
792 right: auto;
793 left: auto;
794 order: 1;
795 }
796 .latepoint-lightbox-close {
797 order: 2;
798 margin-left: 10px;
799 }
800 .latepoint-lightbox-summary-trigger {
801 color: #1e222b;
802 font-size: 20px;
803 box-shadow: none;
804 line-height: 18px;
805 z-index: 2;
806 display: none;
807 position: relative;
808 span {
809 position: absolute;
810 top: -3px;
811 right: -3px;
812 font-size: $body-font-size-xxs;
813 box-shadow: 0 0 0 2px #fff;
814 background-color: #000;
815 color: #fff;
816 padding: 2px;
817 border-radius: 50%;
818 line-height: 1;
819 min-width: $body-font-size-xxs;
820 text-align: center;
821 box-sizing: content-box;
822 }
823 i {
824 line-height: 1;
825 display: block;
826 }
827 }
828 .latepoint-lightbox-close {
829 color: #1e222b;
830 font-size: 20px;
831 box-shadow: none;
832 display: block;
833 line-height: 18px;
834 z-index: 2;
835 position: relative;
836 top: 0;
837 left: 0;
838 &:focus-visible {
839 outline: 2px solid $brand-primary;
840 }
841 i {
842 line-height: 1;
843 display: block;
844 }
845 }
846 .os-heading-text {
847 margin: 0px;
848 font-size: $headings-font-size-l;
849 line-height: 1.2;
850 margin-right: auto;
851 padding: 3px 0;
852 }
853 .os-heading-text-library {
854 display: none;
855 }
856 }
857 .latepoint-body {
858 padding: 40px;
859 flex: 1;
860 overflow-y: auto;
861 transition: all 0.2s ease;
862 position: relative;
863 min-height: 200px;
864 h3,
865 h4 {
866 color: $headings-color;
867 }
868 .os-step-header {
869 margin-top: 0px;
870 margin-bottom: 25px;
871 }
872 h3 {
873 font-size: floor($headings-font-size * 1.4);
874 }
875 h4 {
876 font-size: floor($headings-font-size * 1.2);
877 padding: 0px;
878 }
879 }
880 .latepoint-footer {
881 position: relative;
882 padding: 10px;
883 border-top: 1px solid rgba(0, 0, 0, 0.05);
884 display: flex;
885 justify-content: space-between;
886 background-color: #fff;
887 &.force-hide {
888 display: none;
889 }
890 .latepoint-progress {
891 display: none;
892 position: absolute;
893 top: 50%;
894 left: 50%;
895 transform: translate(-50%, -50%);
896 padding: 0px;
897 ul li {
898 flex: 0 0 5px;
899 .progress-item {
900 width: 5px;
901 height: 5px;
902 }
903 }
904 }
905
906 .latepoint-next-btn {
907 margin-left: auto;
908 animation: 0.3s cubic-bezier(0.45, 1.1, 0.4, 1.2) 0s both latepointNextBtn;
909
910 &.disabled {
911 display: none;
912 }
913 &:focus-visible {
914 outline: 2px solid $brand-primary;
915 }
916 }
917 .latepoint-prev-btn {
918 animation: 0.3s cubic-bezier(0.45, 1, 0.4, 1.2) 0s both latepointPrevBtn;
919
920 &.disabled {
921 display: none;
922 }
923 &:focus-visible {
924 outline: 2px solid $brand-primary;
925 }
926 }
927 .latepoint-btn {
928 font-weight: $body-font-weight-bold;
929 box-shadow: none;
930 padding: 8px 14px;
931 font-size: floor($font-size-base * 0.95);
932 &.disabled {
933 background-color: #e3e6f0;
934 color: #b5bad2;
935 span {
936 color: #b5bad2;
937 }
938 i {
939 color: #b5bad2;
940 }
941 }
942 i {
943 font-size: 9px;
944 transition: transform 0.1s ease;
945 }
946 span {
947 }
948 i + span {
949 margin-left: 5px;
950 }
951 span + i {
952 margin-left: 5px;
953 }
954 &.latepoint-btn-white {
955 }
956 &:hover {
957 &.latepoint-next-btn {
958 i {
959 transform: translateX(3px);
960 }
961 }
962 &.latepoint-prev-btn {
963 i {
964 transform: translateX(-3px);
965 }
966 }
967 }
968 }
969 }
970 }
971
972 .latepoint-step-content {
973 color: $color-faded;
974 min-height: 140px;
975 text-align: left;
976 &.is-hidden {
977 display: none;
978 }
979 .latepoint-step-content-text-centered {
980 text-align: center;
981 margin-bottom: 15px;
982 > h4 {
983 margin-bottom: 5px;
984 }
985 }
986 .latepoint-step-content-text-left {
987 padding: 0 0 15px 0;
988 a {
989 text-decoration: underline;
990 color: $brand-primary;
991 }
992 > p:last-child:first-child {
993 margin: 0 !important;
994 }
995 > h4 {
996 margin-bottom: 5px;
997 }
998 }
999 .lp-payment-charge-amount {
1000 border-radius: $border-radius;
1001 background-color: #fbf6e1;
1002 color: #877865;
1003 margin-bottom: 20px;
1004 padding: 15px;
1005 text-align: center;
1006 strong {
1007 color: #000;
1008 }
1009 }
1010 }
1011
1012 .lp-demo-mode-msg {
1013 padding: 8px 10px;
1014 background-color: #ffd534;
1015 color: #211f1a;
1016 font-size: $font-size-base;
1017 font-weight: $body-font-weight-bold;
1018 margin-bottom: 10px;
1019 text-align: center;
1020 }
1021 &.latepoint-border-radius-rounded {
1022 .os-day-status {
1023 }
1024 .lp-demo-mode-msg {
1025 border-radius: $rounded-borders-radius;
1026 }
1027
1028 .os-available-slots-tooltip,
1029 .dp-capacity {
1030 border-radius: 4px;
1031 }
1032 }
1033
1034 .step-payment-w,
1035 .step-payment-pay-w {
1036 .lp-payment-method-content {
1037 position: relative;
1038 display: none;
1039 &.os-loading {
1040 .lp-payment-method-content-i {
1041 opacity: 0;
1042 min-height: 50px;
1043 }
1044 &:before {
1045 @include loading-circle($brand-primary, 40px);
1046 z-index: 9999;
1047 }
1048 }
1049 }
1050 .lp-paypal-connect-button-container {
1051 paypal-button,
1052 venmo-button,
1053 paypal-pay-later-button {
1054 display: block;
1055 width: 100%;
1056 }
1057
1058 venmo-button,
1059 paypal-pay-later-button {
1060 margin-top: 10px;
1061 }
1062 }
1063 .lp-paypal-card-separator {
1064 display: flex;
1065 align-items: center;
1066 gap: 12px;
1067 margin: 16px 0;
1068 color: $color-faded;
1069 font-size: floor($font-size-base * 0.85);
1070 &:before,
1071 &:after {
1072 content: "";
1073 flex: 1;
1074 height: 1px;
1075 background-color: rgba(0, 0, 0, 0.1);
1076 }
1077 span {
1078 white-space: nowrap;
1079 }
1080 }
1081 .lp-paypal-card-fields-container {
1082 .lp-card-number-field,
1083 .lp-card-expiry-field,
1084 .lp-card-cvv-field {
1085 margin-bottom: 10px;
1086 height: 45px;
1087 overflow: hidden;
1088 paypal-hosted-card-field {
1089 display: block;
1090 height: 100%;
1091 }
1092 }
1093 .lp-card-fields-row {
1094 display: flex;
1095 gap: 11px;
1096 .lp-card-expiry-field,
1097 .lp-card-cvv-field {
1098 flex: 1;
1099 }
1100 }
1101 .lp-card-submit-btn {
1102 width: 100%;
1103 margin-top: 4px;
1104 }
1105 }
1106 .lp-paypal-card-disclosure {
1107 display: flex;
1108 align-items: center;
1109 justify-content: center;
1110 gap: 6px;
1111 font-size: floor($font-size-base * 0.8);
1112 color: $color-faded;
1113 margin-top: 8px;
1114 img {
1115 display: block;
1116 width: 16px;
1117 height: 16px;
1118 }
1119 }
1120 .payment-total-info {
1121 display: flex;
1122 justify-content: space-between;
1123 align-items: center;
1124 background-color: #fff7d0;
1125 padding: 5px 10px;
1126 color: #8a7f66;
1127 font-size: floor($font-size-base * 1.2);
1128 margin-top: 20px;
1129 div {
1130 white-space: nowrap;
1131 }
1132 .lp-price-value {
1133 font-weight: $body-font-weight-bold;
1134 color: $headings-color;
1135 > span {
1136 text-decoration: line-through;
1137 display: inline-block;
1138 margin-right: 3px;
1139 opacity: 0.5;
1140 font-size: floor($font-size-base * 1);
1141 }
1142 }
1143 a {
1144 color: #846337;
1145 display: block;
1146 text-decoration: none;
1147 background-color: rgba(255, 255, 255, 0.61);
1148 font-weight: $body-font-weight-bold;
1149 padding: 2px;
1150 border-radius: 2px 5px;
1151 font-size: floor($font-size-base * 0.9);
1152 margin-left: 30px;
1153 }
1154 .payment-deposit-price-w,
1155 .payment-total-price-w {
1156 padding: 4px 0px;
1157 margin: 0px auto;
1158 }
1159 .payment-deposit-price-w {
1160 display: none;
1161 }
1162 &.paying-deposit {
1163 .payment-total-price-w {
1164 display: none;
1165 }
1166 .payment-deposit-price-w {
1167 display: block;
1168 }
1169 }
1170 .coupon-code-trigger-w {
1171 }
1172 .applied-coupon-code {
1173 display: none;
1174 padding: 4px 5px 4px 8px;
1175 line-height: 1;
1176 background-color: #fff;
1177 color: #111;
1178 border: 1px dashed #111;
1179 font-weight: $body-font-weight-bold;
1180 font-size: floor($font-size-base * 0.9);
1181 margin-left: 20px;
1182 text-transform: uppercase;
1183 vertical-align: middle;
1184 position: relative;
1185 .coupon-code-self {
1186 display: inline-block;
1187 vertical-align: middle;
1188 line-height: 1.1;
1189 }
1190 .coupon-code-clear {
1191 line-height: 1.1;
1192 display: inline-block;
1193 vertical-align: middle;
1194 margin-left: 3px;
1195 cursor: pointer;
1196 position: relative;
1197 &.os-loading {
1198 &:before {
1199 @include loading-circle($color: #111, $width: 10px);
1200 right: -5px;
1201 left: auto;
1202 }
1203 i {
1204 opacity: 0;
1205 }
1206 }
1207 }
1208 }
1209 .coupon-code-input-w {
1210 display: none;
1211 position: relative;
1212 margin-left: 20px !important;
1213 &.os-loading {
1214 &:before {
1215 @include loading-circle(#a45d00, 12px);
1216 left: -13px;
1217 }
1218 }
1219 input.coupon-code-input {
1220 border: none !important;
1221 border: 1px solid #d0bca8 !important;
1222 padding: 5px 7px !important;
1223 background-color: #fff !important;
1224 box-shadow: none !important;
1225 font-size: floor($font-size-base * 0.9) !important;
1226 line-height: 1.3 !important;
1227 display: block !important;
1228 width: 135px !important;
1229 margin: 0px !important;
1230 border-radius: 0px !important;
1231 &:focus,
1232 &:active {
1233 box-shadow: none !important;
1234 outline: none !important;
1235 }
1236 &::placeholder {
1237 color: #a38e7b !important;
1238 }
1239 }
1240 .coupon-code-input-submit {
1241 position: absolute;
1242 top: 50%;
1243 right: 5px;
1244 transform: translateY(-50%);
1245 vertical-align: middle;
1246 background-color: $brand-primary;
1247 color: #fff;
1248 text-transform: uppercase;
1249 padding: 2px 5px;
1250 font-size: floor($font-size-base * 0.8);
1251 font-weight: $body-font-weight-bold;
1252 cursor: pointer;
1253 }
1254 }
1255 &.entering-coupon {
1256 .coupon-code-trigger-w {
1257 display: none;
1258 }
1259 .coupon-code-input-w {
1260 display: block;
1261 }
1262 }
1263 &.coupon-is-applied {
1264 .coupon-code-trigger-w {
1265 display: none;
1266 }
1267 .coupon-code-input-w {
1268 display: none;
1269 }
1270 .applied-coupon-code {
1271 display: block;
1272 }
1273 }
1274 }
1275 > h4 {
1276 margin-bottom: 10px;
1277 }
1278 .lp-payment-methods-w {
1279 display: none;
1280 }
1281 .lp-payment-portions-w {
1282 display: none;
1283 }
1284 .lp-payment-times-w {
1285 display: none;
1286 }
1287 .lp-paypal-btn-trigger-w {
1288 text-align: center;
1289 .lp-paypal-demo-mode-trigger {
1290 display: inline-block;
1291 text-align: center;
1292 padding: 10px 20px;
1293 background-color: #fac555;
1294 border-radius: 40px;
1295 color: #111;
1296 margin-top: 15px;
1297 font-weight: $body-font-weight-bold;
1298 cursor: pointer;
1299 &:hover {
1300 box-shadow: 0px 0px 0px 2px #ffb011;
1301 }
1302 span {
1303 display: inline-block;
1304 vertical-align: middle;
1305 padding-left: 10px;
1306 margin-left: 10px;
1307 border-left: 1px solid rgba(0, 0, 0, 0.1);
1308 }
1309 img {
1310 height: 20px;
1311 width: auto;
1312 display: inline-block;
1313 vertical-align: middle;
1314 }
1315 }
1316 .lp-paypal-btn-trigger {
1317 padding: 20px 0px 5px;
1318 position: relative;
1319 min-height: 60px;
1320 &:before {
1321 @include loading-circle($brand-primary, 20px);
1322 top: 35px;
1323 }
1324 }
1325 }
1326
1327 &[data-sub-step="payment-times"]="payment-times""] {
1328 .lp-payment-times-w {
1329 display: block;
1330 }
1331 }
1332 &[data-sub-step="payment-methods"]="payment-methods""] {
1333 .lp-payment-methods-w {
1334 display: block;
1335 }
1336 }
1337 &[data-sub-step="payment-portions"]="payment-portions""] {
1338 .lp-payment-portions-w {
1339 display: block;
1340 }
1341 }
1342 &[data-sub-step="payment-method-content"]="payment-method-content""] {
1343 .lp-payment-method-content {
1344 }
1345 }
1346 }
1347
1348 .latepoint-step-content {
1349 .latepoint-step-content-text-centered {
1350 display: none;
1351 }
1352 .os-service-durations {
1353 .os-item {
1354 position: relative;
1355 .os-duration-value {
1356 font-size: floor($font-size-base * 3.3);
1357 font-weight: $body-font-weight-bold;
1358 line-height: 1.1;
1359 color: $headings-color;
1360 font-family: $mono-font-family;
1361 }
1362 .os-duration-label {
1363 color: $color-faded;
1364 }
1365 .os-duration-sub-label {
1366 opacity: 0.8;
1367 color: $color-faded;
1368 span {
1369 font-weight: $body-font-weight-bold;
1370 color: $brand-primary;
1371 }
1372 }
1373 .os-duration-price {
1374 font-family: $mono-font-family;
1375 position: absolute;
1376 top: 0px;
1377 right: 0px;
1378 padding: 5px;
1379 color: $brand-primary;
1380 line-height: 1;
1381 font-size: floor($font-size-base * 1.1);
1382 font-weight: $body-font-weight-bold;
1383 }
1384 }
1385 }
1386 .os-services {
1387 + .os-item-categories-holder {
1388 }
1389 }
1390 .os-services_ {
1391 list-style-type: none !important;
1392 margin: 0px !important;
1393 padding: 0px !important;
1394
1395 .os-item {
1396 margin-bottom: 15px;
1397 list-style: none;
1398 .os-item-i {
1399 display: flex;
1400 background: #ffffff;
1401 border: 1px solid #e5e7ee;
1402 align-items: center;
1403 box-shadow: none;
1404 outline: none;
1405 padding: 10px 15px;
1406 color: $body-color;
1407 text-decoration: none;
1408 &:hover {
1409 border-color: $brand-primary;
1410 text-decoration: none;
1411 }
1412 .service-img-w {
1413 flex: 0 0 40px;
1414 height: 40px;
1415 background-size: contain;
1416 background-repeat: no-repeat;
1417 background-position: center center;
1418 text-align: center;
1419 margin-right: 15px;
1420 }
1421 .service-name-w {
1422 padding: 10px 0px;
1423 margin-right: auto;
1424 .service-name {
1425 font-weight: $body-font-weight-bold;
1426 font-size: floor($font-size-base * 1.2);
1427 display: block;
1428 }
1429 .service-desc {
1430 color: $color-faded;
1431 font-size: floor($font-size-base * 0.9);
1432 display: block;
1433 margin-top: 3px;
1434 }
1435 }
1436 .service-price-w {
1437 border-left: 1px solid rgba(0, 0, 0, 0.05);
1438 padding-left: 15px;
1439 margin-left: 10px;
1440 text-align: center;
1441 .service-price {
1442 display: block;
1443 color: #d09f1d;
1444 font-size: floor($font-size-base * 1.6);
1445 line-height: 1.1;
1446 font-weight: $body-font-weight-bold;
1447 }
1448 .service-price-label {
1449 display: block;
1450 color: $color-faded;
1451 font-size: floor($font-size-base * 0.8);
1452 white-space: nowrap;
1453 }
1454 }
1455 }
1456 &:last-child {
1457 }
1458 &.selected {
1459 .os-service-durations {
1460 display: flex;
1461 }
1462 > .os-item-i {
1463 border-color: $brand-primary;
1464 }
1465 }
1466 &.with-description {
1467 a .service-name-w {
1468 padding: 5px 0px;
1469 }
1470 }
1471 }
1472 }
1473 }
1474 }
1475
1476 .lp-strike {
1477 text-decoration: line-through;
1478 opacity: 0.8;
1479 }
1480
1481 // Verify
1482 .latepoint-booking-form-element {
1483 .step-verify-w {
1484 .os-recurring-bookings-count {
1485 margin-top: 10px;
1486 }
1487 .summary-box.main-box .summary-box-booking-date-box {
1488 display: none;
1489 }
1490 .cart-item-wrapper {
1491 position: relative;
1492 margin-bottom: 25px;
1493 &.multi-item {
1494 padding: 15px;
1495 border: 1px solid #e2e2e2;
1496 border-bottom-color: #d2d2d2;
1497 box-shadow: 0 2px rgba(0, 0, 0, 0.05);
1498
1499 .summary-box-heading {
1500 margin-bottom: 0px;
1501 margin-top: 0;
1502 .sbh-line {
1503 display: none;
1504 }
1505 }
1506 .summary-box .sbc-big-item {
1507 font-size: $headings-font-size-m;
1508 }
1509 .summary-box-heading {
1510 display: none;
1511 }
1512 .summary-box-heading .sbh-item {
1513 font-size: $body-font-size-xs;
1514 font-weight: $body-font-weight-normal;
1515 }
1516 .summary-boxes-columns {
1517 border-top: 1px solid rgba(0, 0, 0, 0.05);
1518 padding-top: 10px;
1519 margin-top: 15px;
1520 }
1521 }
1522 &.single-item {
1523 .os-remove-item-from-cart {
1524 display: none;
1525 }
1526 .summary-box .sbc-big-item {
1527 font-size: $headings-font-size-m;
1528 }
1529 .summary-box .sbc-highlighted-item {
1530 font-size: $headings-font-size-s;
1531 }
1532 }
1533 .summary-box.main-box {
1534 padding: 0;
1535 }
1536 .os-remove-item-from-cart {
1537 box-shadow: 0 0 0 4px #fff;
1538 color: #fff;
1539 top: -5px;
1540 right: -5px;
1541 background-color: #f64f4f;
1542 .os-remove-from-cart-icon {
1543 background-color: #fff;
1544 }
1545 }
1546 }
1547 .latepoint-add-another-item-trigger-wrapper.on-summary {
1548 display: none;
1549 }
1550 .latepoint-add-another-item-trigger-wrapper.on-verify {
1551 margin-top: 20px;
1552 .latepoint-add-another-item-trigger {
1553 align-items: center;
1554 padding: 8px 10px;
1555 border: 1px dotted $headings-color;
1556 color: $headings-color;
1557 display: flex;
1558 gap: 10px;
1559 font-weight: $body-font-weight-bold;
1560 cursor: pointer;
1561
1562 &:focus-visible {
1563 outline: 2px solid $brand-primary;
1564 }
1565 span {
1566 margin: 0 auto;
1567 }
1568 &:hover {
1569 border-style: solid;
1570 }
1571 }
1572 }
1573 .cart-summary-main-section {
1574 > .summary-heading:first-child {
1575 margin-top: 0;
1576 }
1577 > .summary-box.main-box:first-child {
1578 padding-top: 0;
1579 }
1580 }
1581 .scheduling-bundle-booking-summary {
1582 .part-of-bundle-message {
1583 padding: 10px;
1584 background-color: #f1f3ff;
1585 margin-bottom: 15px;
1586 font-size: $font-size-base;
1587 a {
1588 color: $brand-primary;
1589 text-decoration: none;
1590 border-bottom: 1px dotted $brand-primary;
1591 }
1592 }
1593 .summary-box.main-box {
1594 padding-top: 0;
1595 padding-bottom: 20px;
1596 }
1597 .sbc-big-item {
1598 font-size: $body-font-size-l;
1599 }
1600 .sbc-highlighted-item {
1601 font-size: $body-font-size-m;
1602 }
1603 }
1604 .payment-summary-info {
1605 .confirmation-info-w {
1606 margin-top: 0px;
1607 }
1608 }
1609
1610 .coupon-code-wrapper-on-verify {
1611 margin-top: 10px;
1612 text-align: right;
1613 .coupon-code-trigger-on-verify-w {
1614 padding: 8px 0 9px;
1615 line-height: 1;
1616 a {
1617 border-bottom: 1px solid $brand-primary;
1618 font-size: $body-font-size-xs;
1619 color: $brand-primary;
1620 }
1621 }
1622 .applied-coupon-code-wrapper {
1623 align-items: center;
1624 gap: 5px;
1625 display: none;
1626 background-color: #f7f7f7;
1627 padding: 10px;
1628 .coupon-code-label {
1629 color: $body-color;
1630 font-size: floor($font-size-base * 0.95);
1631 }
1632 }
1633 .applied-coupon-code {
1634 padding: 2px 2px 2px 5px;
1635 background-color: #fff;
1636 color: #000;
1637 border: 1px dotted #000;
1638 line-height: 1;
1639 font-weight: $body-font-weight-bold;
1640 font-size: floor($font-size-base * 0.9);
1641 text-transform: uppercase;
1642 position: relative;
1643 display: flex;
1644 align-items: center;
1645 gap: 5px;
1646 .coupon-code-self {
1647 display: block;
1648 vertical-align: middle;
1649 line-height: 1;
1650 }
1651 .coupon-code-clear {
1652 line-height: 1;
1653 display: block;
1654 cursor: pointer;
1655 position: relative;
1656 font-size: 10px;
1657 padding: 3px;
1658 &:hover {
1659 background-color: #000;
1660 color: #fff;
1661 }
1662 &.os-loading {
1663 &:before {
1664 @include loading-circle($color: #fff, $width: 10px);
1665 right: -5px;
1666 left: auto;
1667 }
1668 i {
1669 opacity: 0;
1670 }
1671 }
1672 }
1673 }
1674 .coupon-code-input-w {
1675 display: none;
1676 position: relative;
1677 &.os-loading {
1678 &:before {
1679 @include loading-circle($brand-primary, 12px);
1680 left: -13px;
1681 }
1682 }
1683 input.coupon-code-input {
1684 border: none !important;
1685 border: 1px solid #383838 !important;
1686 padding: 5px 7px !important;
1687 background-color: #fff !important;
1688 box-shadow: none !important;
1689 font-size: floor($font-size-base * 0.9) !important;
1690 line-height: 1 !important;
1691 display: block !important;
1692 width: auto !important;
1693 flex: 1;
1694 margin: 0px !important;
1695 border-radius: 0px !important;
1696 &:focus,
1697 &:active {
1698 box-shadow: none !important;
1699 outline: none !important;
1700 }
1701 &::placeholder {
1702 color: #8f8f8f !important;
1703 }
1704 }
1705 .coupon-code-input-cancel,
1706 .coupon-code-input-submit {
1707 padding: 9px 12px;
1708 line-height: 1;
1709 font-size: floor($font-size-base * 0.95);
1710 font-weight: $body-font-weight-bold;
1711 cursor: pointer;
1712 }
1713 .coupon-code-input-submit {
1714 background-color: $brand-primary;
1715 color: #fff;
1716 }
1717 .coupon-code-input-cancel {
1718 background-color: #eee;
1719 color: #444;
1720 }
1721 }
1722 &.entering-coupon {
1723 .coupon-code-trigger-on-verify-w {
1724 display: none;
1725 }
1726 .coupon-code-trigger-on-verify-w {
1727 display: none;
1728 }
1729 .coupon-code-input-w {
1730 display: flex;
1731 align-items: center;
1732 justify-content: flex-start;
1733 gap: 10px;
1734 }
1735 }
1736 &.coupon-is-applied {
1737 .coupon-code-trigger-on-verify-w {
1738 display: none;
1739 }
1740 .coupon-code-input-w {
1741 display: none;
1742 }
1743 .applied-coupon-code-wrapper {
1744 display: flex;
1745 }
1746 }
1747 }
1748 }
1749 }
1750
1751 // Confirmation
1752 .latepoint-booking-form-element {
1753 .step-confirmation-w {
1754 .summary-box-wrapper + .summary-box-wrapper {
1755 margin-top: 15px;
1756 padding-top: 10px;
1757 }
1758 .confirmation-head-info {
1759 position: relative;
1760 }
1761 .add-to-calendar-wrapper {
1762 display: inline-block;
1763 }
1764
1765 .qr-code-on-full-summary {
1766 &.show-vevent-qr-code {
1767 .qr-code-vevent {
1768 display: block;
1769 margin: 0px auto 30px auto;
1770 padding-bottom: 20px;
1771 border-bottom: 1px dashed rgba(0, 0, 0, 0.1);
1772 }
1773 .qr-show-trigger {
1774 display: none;
1775 }
1776 }
1777 .qr-code-booking-info {
1778 display: none;
1779 }
1780 .qr-code-vevent {
1781 display: none;
1782 img {
1783 display: block;
1784 margin: 0px auto;
1785 }
1786 .qr-code-label {
1787 text-align: center;
1788 font-size: floor($font-size-base * 0.9);
1789 font-weight: $body-font-weight-bold;
1790 text-align: center;
1791 font-weight: 500;
1792 padding: 10px 15px;
1793 background: #fff1af;
1794 line-height: 1.4;
1795 color: #000;
1796 }
1797 }
1798 }
1799 .payment-summary-info {
1800 .confirmation-info-w {
1801 margin-top: 0px;
1802 }
1803 }
1804 .confirmation-header {
1805 margin-bottom: 0px;
1806 margin-top: 0px;
1807 }
1808 .confirmation-number {
1809 color: $color-faded;
1810 padding-top: 0px;
1811 margin-bottom: 8px;
1812 font-size: floor($font-size-base * 0.9);
1813 letter-spacing: 0.5px;
1814 text-transform: uppercase;
1815 font-weight: $body-font-weight-bold;
1816 strong {
1817 font-size: floor($font-size-base * 2.6);
1818 letter-spacing: normal;
1819 color: $headings-color;
1820 display: block;
1821 line-height: 1.1;
1822 }
1823 .confirmation-checkmark {
1824 padding: 10px;
1825 font-size: 25px;
1826 color: #fff;
1827 background-color: #83de3a;
1828 box-shadow: 0 0 0 5px #daffba;
1829 border-radius: 50%;
1830 line-height: 25px;
1831 width: 45px;
1832 height: 45px;
1833 }
1834 }
1835 .step-confirmation-set-password {
1836 margin-top: 20px;
1837 display: none;
1838
1839 h4 {
1840 margin-bottom: 10px;
1841 }
1842 .set-password-fields {
1843 display: flex;
1844 align-items: center;
1845 .os-form-group {
1846 flex: 1;
1847 margin: 0px;
1848 margin-bottom: 0px !important;
1849 margin-right: 10px;
1850 &.os-form-textfield-group.has-value label {
1851 display: none !important;
1852 }
1853 &.os-form-textfield-group input.os-form-control {
1854 padding: 7px 10px 7px 10px !important;
1855 }
1856 }
1857 .latepoint-btn {
1858 flex: 0;
1859 white-space: nowrap;
1860 display: block;
1861 text-align: center;
1862 padding: 9px 20px;
1863 }
1864 }
1865 }
1866 .confirmation-cabinet-info {
1867 background-color: #f5f6ff;
1868 margin-top: 20px;
1869 text-align: center;
1870 padding: 20px 40px;
1871 display: none;
1872 .confirmation-cabinet-text {
1873 color: $headings-color;
1874 margin-bottom: 10px;
1875 font-size: floor($font-size-base * 1.2);
1876 font-weight: $body-font-weight-bold;
1877 }
1878 .confirmation-cabinet-link-w {
1879 }
1880 .confirmation-cabinet-link {
1881 font-size: floor($font-size-base);
1882 background-color: $brand-primary;
1883 color: #fff !important;
1884 padding: 8px 15px !important;
1885 font-weight: $body-font-weight-bold;
1886 text-decoration: none !important;
1887 border: none !important;
1888 display: inline-block !important;
1889 }
1890 }
1891 }
1892 }
1893
1894 .booking-status-info-wrapper {
1895 display: flex;
1896 gap: 10px;
1897 padding: 15px 30px;
1898 border-bottom: 1px solid rgba(0, 0, 0, 0.08);
1899 margin: -30px;
1900 margin-bottom: 0;
1901 align-items: center;
1902 .booking-status-icon {
1903 width: 24px;
1904 height: 24px;
1905 background-color: #eee;
1906 position: relative;
1907 border-radius: $border-radius;
1908 }
1909 .booking-status-label {
1910 font-weight: $body-font-weight-bold;
1911 font-size: $body-font-size-s;
1912 }
1913 .booking-confirmation {
1914 margin-left: auto;
1915 font-size: $body-font-size-xs;
1916 color: $color-faded;
1917 strong {
1918 color: $headings-color;
1919 }
1920 }
1921 &.status-cancelled {
1922 .booking-status-icon {
1923 background-color: #ffa6a6;
1924 &:before {
1925 @include latepointfont("\e927");
1926 position: absolute;
1927 top: 50%;
1928 left: 50%;
1929 transform: translate(-50%, -50%);
1930 font-size: 16px;
1931 }
1932 }
1933 }
1934 &.status-approved {
1935 .booking-status-icon {
1936 background-color: #a0ffa4;
1937 &:before {
1938 @include latepointfont("\e928");
1939 position: absolute;
1940 top: 50%;
1941 left: 50%;
1942 transform: translate(-50%, -50%);
1943 font-size: 16px;
1944 }
1945 }
1946 }
1947 }
1948 .full-summary-wrapper,
1949 .confirmation-info-w {
1950 .summary-status-wrapper {
1951 padding: 0 0 30px 0;
1952 color: $headings-color;
1953 font-size: $body-font-size-s;
1954 margin-bottom: 10px;
1955 border-bottom: 10px solid rgba(0, 0, 0, 0.03);
1956 .summary-status-inner {
1957 display: flex;
1958 flex-direction: column;
1959 align-items: center;
1960 .ss-title {
1961 font-size: $headings-font-size-xl;
1962 font-weight: $headings-font-weight-bold;
1963 font-family: $headings-font-family;
1964 text-align: center;
1965 }
1966 .ss-description {
1967 color: $color-faded;
1968 font-weight: $body-font-weight-normal;
1969 font-size: $body-font-size-s;
1970 margin-top: 3px;
1971 text-align: center;
1972 }
1973 .ss-icon {
1974 margin-bottom: 25px;
1975 animation: 1s cubic-bezier(0.05, 0.45, 0.1, 1) 0.1s statusIconPop;
1976 animation-fill-mode: both;
1977 }
1978 .ss-confirmation-number {
1979 font-size: $body-font-size-xs;
1980 text-transform: uppercase;
1981 letter-spacing: 0.5px;
1982 color: $color-faded;
1983 margin-top: 15px;
1984 padding: 3px 5px;
1985 background-color: rgba(0, 0, 0, 0.03);
1986 span {
1987 }
1988 strong {
1989 color: $headings-color;
1990 }
1991 }
1992 }
1993 &.summary-status-style-green {
1994 .ss-icon {
1995 display: block;
1996 padding: 15px;
1997 background-color: #98ff96;
1998 border-radius: 50%;
1999 box-shadow: 0 0 0 10px #e1ffe0;
2000 &:before {
2001 @include latepointfont("\e928");
2002 color: #000;
2003 line-height: 24px;
2004 display: block;
2005 font-size: 24px;
2006 }
2007 }
2008 }
2009
2010 &.summary-status-style-yellow {
2011 .ss-icon {
2012 display: block;
2013 padding: 10px;
2014 background-color: #ffe196;
2015 border-radius: 50%;
2016 box-shadow: 0 0 0 10px #fff2e0;
2017 width: 44px;
2018 text-align: center;
2019
2020 &:before {
2021 content: "i";
2022 color: #000;
2023 line-height: 24px;
2024 display: block;
2025 font-size: 24px;
2026 }
2027 }
2028 }
2029 }
2030
2031 .summary-price-item-w.spi-sub {
2032 padding-left: 20px;
2033 position: relative;
2034 &:before {
2035 content: "";
2036 width: 5px;
2037 height: 5px;
2038 border-left: 1px solid $color-faded;
2039 border-bottom: 1px solid $color-faded;
2040 position: absolute;
2041 top: 50%;
2042 left: 10px;
2043 transform: translateY(-50%);
2044 }
2045 }
2046 .summary-price-breakdown-wrapper {
2047 &.multi-item {
2048 .subtotal-separator {
2049 border-top: 1px solid $border-color-light;
2050 padding-bottom: 10px;
2051 margin-top: 10px;
2052 }
2053 }
2054 }
2055 .order-item-bundle-info-wrapper {
2056 display: flex;
2057 align-items: flex-start;
2058 gap: 20px;
2059 padding: 15px 0 5px 0;
2060
2061 .bundle-icon {
2062 padding: 13px;
2063 line-height: 24px;
2064 font-size: 24px;
2065 background-color: #f1f1f1;
2066 border-radius: 50%;
2067 color: $headings-color;
2068 i {
2069 display: block;
2070 }
2071 }
2072 .summary-box.main-box {
2073 padding: 0;
2074 }
2075 }
2076 .schedule-bundle-booking-btn-wrapper {
2077 padding-bottom: 20px;
2078 margin-left: 70px;
2079 }
2080 .schedule-bundle-booking-btn {
2081 padding: 4px 0;
2082 background-color: #fff;
2083 display: inline-flex;
2084 gap: 8px;
2085 font-weight: $body-font-weight-normal;
2086 color: $brand-primary;
2087 text-decoration: none;
2088 border: none;
2089 align-items: center;
2090 box-shadow: none;
2091 cursor: pointer;
2092 position: relative;
2093 &.os-loading {
2094 &:before {
2095 @include loading-circle($brand-primary, 14px);
2096 left: auto;
2097 right: -5px;
2098 }
2099 i {
2100 visibility: hidden;
2101 }
2102 }
2103 &:hover {
2104 span {
2105 border-bottom-style: solid;
2106 }
2107 i {
2108 transform: translateX(3px);
2109 }
2110 }
2111 span {
2112 border-bottom: 1px dotted $brand-primary;
2113 }
2114 i {
2115 font-size: 9px;
2116 transition: transform 0.2s ease;
2117 }
2118 }
2119 .summary-price-breakdown-wrapper {
2120 margin-top: 30px;
2121 }
2122 .confirmation-app-info {
2123 }
2124 .confirmation-customer-info {
2125 }
2126 .summary-box-heading {
2127 margin-bottom: 10px;
2128 .sbh-line {
2129 }
2130 }
2131 .summary-box {
2132 padding-bottom: 0;
2133 }
2134 .summary-box .sbc-main-item {
2135 color: $headings-color;
2136 font-size: $body-font-size-s;
2137 font-weight: $body-font-weight-bold;
2138 }
2139 }
2140
2141 // Confirmation & Verification list of label-value pairs
2142 .confirmation-info-w {
2143 position: relative;
2144
2145 .order-summary-items-heading {
2146 display: none;
2147 }
2148
2149 .price-breakdown-unfold {
2150 display: none;
2151 }
2152
2153 ul {
2154 list-style-type: none;
2155 padding: 0px;
2156 margin: 0px;
2157 display: flex;
2158 flex-wrap: wrap;
2159 li {
2160 flex: 0 0 50%;
2161 list-style-type: none;
2162 margin: 0px;
2163 color: $color-faded;
2164 font-weight: $body-font-weight-bold;
2165 padding: 7px 10px 7px 0px;
2166 line-height: 1.4;
2167 font-size: floor($font-size-base * 0.75);
2168 letter-spacing: 0.6px;
2169 text-transform: uppercase;
2170 border-bottom: 1px solid rgba(0, 0, 0, 0.05);
2171 strong {
2172 text-transform: none;
2173 letter-spacing: normal;
2174 color: $body-color;
2175 display: block;
2176 font-size: $font-size-base;
2177 }
2178 }
2179 }
2180 .confirmation-section-heading {
2181 font-size: floor($headings-font-size * 1.3);
2182 display: block;
2183 border-bottom: 1px solid $brand-primary;
2184 margin: 15px 0px 5px 0px;
2185 color: $brand-primary;
2186 }
2187 }
2188
2189 .latepoint-booking-form-element {
2190 &.hidden-buttons {
2191 .latepoint-form-w .latepoint-body {
2192 &:after {
2193 height: 40px;
2194 }
2195 }
2196 .latepoint-form-w .latepoint-footer {
2197 display: none;
2198 }
2199 }
2200 @import "../shared/step_customer";
2201 @import "../shared/step_datepicker";
2202 }
2203
2204 @import "../shared/auth";
2205
2206 .latepoint-message {
2207 border-radius: $border-radius;
2208 &.latepoint-message-success {
2209 padding: 10px 15px;
2210 font-weight: $body-font-weight-bold;
2211 margin-bottom: 15px;
2212 background: #eeffed;
2213 color: #0d7f24;
2214 text-align: center;
2215 border: 1px solid #a9e3a2;
2216 box-shadow: 0px 1px 4px -1px rgba(79, 239, 88, 0.6);
2217 }
2218 &.latepoint-message-error {
2219 padding: 10px;
2220 font-weight: $body-font-weight-bold;
2221 margin-bottom: 15px;
2222 background: #ffcfcf;
2223 color: #750e0e;
2224 text-align: center;
2225 border: 1px solid #ffcfcf;
2226 box-shadow: none;
2227 }
2228 &.latepoint-message-warning {
2229 padding: 10px;
2230 font-weight: $body-font-weight-bold;
2231 margin-bottom: 15px;
2232 background: #ffeabe;
2233 color: #75450e;
2234 text-align: center;
2235 border: 1px solid #c16d18;
2236 box-shadow: 0px 2px 4px rgba(64, 55, 40, 0.05);
2237 }
2238 &.latepoint-message-info {
2239 padding: 10px;
2240 font-weight: $body-font-weight-bold;
2241 margin-bottom: 15px;
2242 background: #eee;
2243 color: #111;
2244 text-align: center;
2245 }
2246 }
2247
2248 .os-booking-limit-reached {
2249 position: absolute;
2250 top: 10px;
2251 right: 10px;
2252 left: 10px;
2253 bottom: 10px;
2254 background-color: #fff0f0;
2255 border: 1px solid #b95252;
2256 color: #b95252;
2257 font-size: floor($font-size-base * 1.2);
2258 text-align: center;
2259 padding: 30px;
2260 display: flex;
2261 align-items: center;
2262 .os-booking-limit-icon-w {
2263 margin-bottom: 10px;
2264 font-size: 40px;
2265 color: #d8adb0;
2266 line-height: 1;
2267 }
2268 h3 {
2269 color: #5f1b1b;
2270 margin-bottom: 10px;
2271 margin-top: 0px;
2272 padding: 0px;
2273 }
2274 }
2275
2276 .latepoint-w {
2277 &.customer-dashboard-order-summary-lightbox,
2278 &.customer-dashboard-booking-summary-lightbox {
2279 .os-item-details-popup {
2280 position: relative;
2281 background-color: #fff;
2282 display: none;
2283 margin: -30px -30px -30px -30px;
2284 &.open {
2285 display: block;
2286 }
2287 }
2288 }
2289 .latepoint-booking-form-element {
2290 .os-item-details-popup-inner {
2291 }
2292 .os-item-details-popup {
2293 }
2294 }
2295
2296 .os-item-details-popup {
2297 display: none;
2298 &.open {
2299 display: block;
2300 }
2301
2302 .os-item-details-popup-close {
2303 position: absolute;
2304 top: 0px;
2305 right: 0px;
2306 background-color: #ff5151;
2307 color: #fff;
2308 padding: 10px;
2309 font-size: floor($font-size-base * 0.9);
2310 font-weight: $body-font-weight-bold;
2311 z-index: 9999;
2312
2313 span,
2314 i {
2315 display: inline-block;
2316 vertical-align: middle;
2317 line-height: 1;
2318 }
2319
2320 span {
2321 margin-right: 10px;
2322 }
2323 }
2324
2325 .os-item-details-popup-inner {
2326 .item-details-popup-head {
2327 background-size: cover;
2328 background-position: center center;
2329 padding: 80px 40px 40px 40px;
2330 position: relative;
2331
2332 h3 {
2333 color: #fff;
2334 text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
2335 font-size: floor($headings-font-size * 2);
2336 margin: 0px;
2337 z-index: 2;
2338 position: relative;
2339 }
2340
2341 .item-details-popup-title {
2342 margin-top: 5px;
2343 color: rgba(255, 255, 255, 0.8);
2344 z-index: 2;
2345 position: relative;
2346 font-size: floor($font-size-base * 1.4);
2347 }
2348
2349 &:before {
2350 content: "";
2351 position: absolute;
2352 top: 0px;
2353 left: 0px;
2354 bottom: 0px;
2355 right: 0px;
2356 background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.1));
2357 z-index: 1;
2358 }
2359 }
2360
2361 .item-details-popup-content {
2362 padding: 40px;
2363 font-size: floor($font-size-base * 1.1);
2364 line-height: floor($font-size-base * 1.4);
2365 position: relative;
2366 z-index: 2;
2367
2368 .bio-curve {
2369 position: absolute;
2370 top: 1px;
2371 left: 0px;
2372 right: 0px;
2373 bottom: 0px;
2374 transform: translateY(-100%);
2375 display: block;
2376 width: 100%;
2377 max-width: 100%;
2378 height: auto;
2379 z-index: 9999;
2380 }
2381
2382 .item-details-popup-features {
2383 display: flex;
2384 justify-content: space-between;
2385 padding-bottom: 20px;
2386 margin-top: -15px;
2387 border-bottom: 1px solid rgba(0, 0, 0, 0.05);
2388 margin-bottom: 30px;
2389
2390 .item-details-popup-feature {
2391 flex: 1;
2392 padding: 0px 15px;
2393
2394 &:first-child {
2395 padding-left: 0px;
2396 }
2397
2398 &:last-child {
2399 padding-right: 0px;
2400 }
2401
2402 .item-details-popup-feature-value {
2403 @include font-headers();
2404 font-size: floor($headings-font-size * 1.8);
2405 font-weight: $headings-font-weight-bold;
2406 line-height: 1.2;
2407 color: $brand-primary;
2408 }
2409
2410 .item-details-popup-feature-label {
2411 font-size: floor($font-size-base * 0.9);
2412 color: $color-faded;
2413 }
2414
2415 & + .item-details-popup-feature {
2416 border-left: 1px solid rgba(0, 0, 0, 0.05);
2417 }
2418 }
2419 }
2420
2421 .item-details-popup-content-i {
2422 &::first-letter {
2423 @include font-headers();
2424 font-size: floor($headings-font-size * 1.8);
2425 line-height: floor($font-size-base * 1.4);
2426 color: $brand-primary;
2427 font-weight: $headings-font-weight-bold;
2428 padding-right: 1px;
2429 }
2430 }
2431 }
2432 }
2433 }
2434 }
2435
2436 .add-to-calendar-wrapper {
2437 position: relative;
2438 &.show-types {
2439 .add-to-calendar-types {
2440 display: flex;
2441 }
2442 .open-calendar-types {
2443 visibility: hidden;
2444 }
2445 }
2446 }
2447
2448 .add-to-calendar-types {
2449 border: 1px solid #aaa;
2450 box-shadow:
2451 0 4px 20px -2px rgba(0, 0, 0, 0.1),
2452 0 1px 2px 0 rgba(0, 0, 0, 0.2);
2453 background-color: #eee;
2454 display: none;
2455 flex-direction: column;
2456 position: absolute;
2457 gap: 1px;
2458 top: 0%;
2459 left: 0;
2460 animation: 0.15s cubic-bezier(0.05, 0.45, 0.1, 1) 0s up20;
2461 animation-fill-mode: both;
2462 z-index: 1;
2463 .atc-heading-wrapper {
2464 padding: 5px;
2465 padding-left: 10px;
2466 font-weight: $body-font-weight-bold;
2467 display: flex;
2468 font-size: $font-size-base;
2469 justify-content: space-between;
2470 align-items: center;
2471 background-color: #f2f2f2;
2472 .close-calendar-types {
2473 line-height: 12px;
2474 font-size: 14px;
2475 padding: 3px;
2476 background-color: #ddd;
2477 text-align: center;
2478 cursor: pointer;
2479 &:hover {
2480 background-color: $brand-primary;
2481 color: #fff;
2482 }
2483 &:before {
2484 line-height: 1;
2485 @include latepointfont("\e90a");
2486 }
2487 }
2488 }
2489 .atc-type {
2490 padding: 10px;
2491 padding-right: 15px;
2492 display: flex;
2493 gap: 10px;
2494 align-items: center;
2495 cursor: pointer;
2496 background-color: #fff;
2497 text-decoration: none;
2498 position: relative;
2499 &:hover {
2500 box-shadow:
2501 0 0 0 1px $brand-primary,
2502 inset 0 0 0 1px $brand-primary;
2503 z-index: 1;
2504 }
2505 .atc-type-image {
2506 width: 18px;
2507 height: 18px;
2508 background-size: contain;
2509 background-repeat: no-repeat;
2510 background-position: center left;
2511 }
2512 .atc-type-name {
2513 font-weight: $body-font-weight-bold;
2514 font-size: $font-size-base;
2515 color: $body-color;
2516 white-space: nowrap;
2517 }
2518 &.atc-type-apple .atc-type-image {
2519 background-image: url(#{$images-path}/apple-logo-compact.png);
2520 }
2521 &.atc-type-google .atc-type-image {
2522 background-image: url(#{$images-path}/google-logo-compact.png);
2523 }
2524 &.atc-type-outlook .atc-type-image {
2525 background-image: url(#{$images-path}/outlook-logo-compact.png);
2526 }
2527 &.atc-type-office-365 .atc-type-image {
2528 background-image: url(#{$images-path}/office-365-logo-compact.jpg);
2529 }
2530 }
2531 }
2532
2533 .latepoint-continue-intent-loading {
2534 position: fixed;
2535 top: 0;
2536 right: 0;
2537 bottom: 0;
2538 left: 0;
2539 z-index: 999999;
2540 background-color: rgba(0, 0, 0, 0.6);
2541 &:before {
2542 display: block;
2543 content: "";
2544 width: 50px;
2545 height: 50px;
2546 border-bottom: 4px solid #fff;
2547 border-left: 4px solid #fff;
2548 border-top: 4px solid #fff;
2549 border-right: 4px solid rgba(255, 255, 255, 0);
2550 border-radius: 50%;
2551 position: absolute;
2552 top: 50%;
2553 left: 50%;
2554 transform: translate(-50%, -50%);
2555 animation: os-loading 700ms infinite linear;
2556 background-color: transparent !important;
2557 z-index: 999;
2558 }
2559 }
2560
2561 .os-verifiable-field-wrapper {
2562 position: relative;
2563 .os-verified-badge {
2564 position: absolute;
2565 right: 10px;
2566 top: 3px;
2567 font-size: $body-font-size-xs;
2568 background-color: #d5ffc6;
2569 color: #175908;
2570 padding: 3px;
2571 line-height: 1;
2572 border-radius: 20px;
2573 display: flex;
2574 gap: 5px;
2575 z-index: 1;
2576 animation: 0.3s ease 0.4s selectedSlotCheckmarkOpacity;
2577 animation-fill-mode: both;
2578
2579 .latepoint-icon {
2580 font-size: 10px;
2581 }
2582 }
2583 }
2584