PluginProbe ʕ •ᴥ•ʔ
Appointment Booking Plugin – LatePoint | Calendar & Scheduling for WordPress / 5.1.8
Appointment Booking Plugin – LatePoint | Calendar & Scheduling for WordPress v5.1.8
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 / admin / _calendars.scss
latepoint / lib / assets / stylesheets / admin Last commit date
_activities.scss 1 year ago _addons.scss 1 year ago _agents.scss 1 year ago _animations.scss 1 year ago _booking_form_preview.scss 1 year ago _bookings.scss 1 year ago _bundles.scss 1 year ago _buttons.scss 1 year ago _calendars.scss 1 year ago _categories.scss 1 year ago _customers.scss 1 year ago _dark.scss 1 year ago _daterangepicker.scss 1 year ago _elements.scss 1 year ago _forms.scss 1 year ago _grid.scss 1 year ago _grid_variables.scss 1 year ago _icons.scss 1 year ago _latecheckbox.scss 1 year ago _lateselect.scss 1 year ago _layout.scss 1 year ago _lightbox.scss 1 year ago _menu.scss 1 year ago _messages.scss 1 year ago _misc.scss 1 year ago _mixins.scss 1 year ago _notifications.scss 1 year ago _orders.scss 1 year ago _pickr.scss 1 year ago _processes.scss 1 year ago _quick_availability.scss 1 year ago _reminders.scss 1 year ago _responsive.scss 1 year ago _roles.scss 1 year ago _schedule.scss 1 year ago _services.scss 1 year ago _settings.scss 1 year ago _side-panel.scss 1 year ago _steps.scss 1 year ago _tables.scss 1 year ago _type.scss 1 year ago _updates.scss 1 year ago _utilities.scss 1 year ago _variables.scss 1 year ago _widgets.scss 1 year ago _wizard.scss 1 year ago
_calendars.scss
3432 lines
1 // DAILY CALENDAR STYLES
2 // --------------------
3
4
5 // CALENDAR WIDGET - FULL MONTH - SELECTABLE
6 .daily-agent-side {
7 padding-left: 40px;
8 }
9
10 .daily-agent-availability-w {
11 padding: 10px 0px 20px 0px;
12
13 h3 {
14 text-align: center;
15 margin-top: 0px;
16 margin-bottom: 15px;
17
18 span {
19 color: $brand-primary;
20 border-bottom: 1px dotted $brand-primary;
21 }
22 }
23 }
24
25 .cc-availability-toggler {
26 margin-right: 10px;
27
28 .os-form-group.os-form-toggler-group {
29 margin-bottom: 0px;
30 }
31
32 .os-form-group.os-form-toggler-group label {
33 padding: 7px 10px 7px 0px;
34 }
35
36 .os-form-group.os-form-toggler-group .os-toggler-label-w {
37 padding: 0px;
38 }
39 }
40
41 .calendar-view-wrapper {
42 position: relative;
43
44 &.os-loading {
45 opacity: 0.7;
46
47 &:before {
48 top: 20px;
49 }
50
51 .ch-filter, .ch-info, .ma-head-info {
52 position: relative;
53
54 span {
55 visibility: hidden;
56 }
57
58 &:before {
59 @include loading-circle($brand-primary, 25px);
60 }
61 }
62 }
63
64 .no-results-w {
65 }
66 }
67
68 .os-calendar-settings-extra {
69 display: none;
70 align-items: center;
71 gap: 10px;
72 padding: 15px 0;
73 border-top: 1px solid $border-color-light;
74 margin-left: auto;
75
76 .resource-filters-wrapper {
77 margin-left: auto;
78 display: flex;
79 align-items: center;
80 gap: 10px;
81 }
82
83 label {
84
85 }
86
87 .os-form-group.os-form-group-transparent {
88 margin: 0;
89 display: flex;
90 gap: 8px;
91 align-items: center;
92
93 label {
94 margin: 0;
95 font-size: $font-size-base;
96 }
97
98 select {
99 border-radius: 6px;
100 padding: 5px 15px 5px 10px !important;
101 height: auto;
102 min-height: initial;
103 }
104
105 }
106
107 .cc-availability-toggler-w {
108 display: flex;
109 align-items: center;
110 margin-right: auto;
111
112 .cc-availability-toggler {
113 border: 1px solid $border-color-light;
114 padding: 0 5px 0 8px;
115 border-radius: 6px;
116
117 &:hover {
118 border-color: darken($border-color-strong, 20%);
119 }
120
121 .os-form-group.os-form-toggler-group:hover {
122 box-shadow: none;
123 background-color: transparent;
124 }
125 }
126
127 .cc-service-availability-selector {
128 display: none;
129 }
130
131 &.show-availability-selector {
132 display: block;
133 }
134 }
135 }
136
137 .os-calendar-settings-form {
138 &.show-extra-settings {
139 .os-calendar-settings-extra {
140 display: flex;
141 }
142
143 .os-current-month-label-w .os-calendar-settings-toggler-wrapper .calendar-settings-toggler {
144 background-color: #eff0f5;
145 }
146 }
147 }
148
149 .os-calendar-settings-main {
150 padding-bottom: 15px;
151
152 .os-current-month-label-w {
153 padding-top: 20px;
154 display: flex;
155 justify-content: space-between;
156 align-items: flex-end;
157
158 .os-month-filters-buttons-w {
159 display: flex;
160 align-items: center;
161 }
162
163 select {
164 min-height: 34px;
165 font-size: $font-size-base;
166 }
167
168 .os-current-month-label {
169 font-size: floor($font-size-base * 2);
170 margin: 0px;
171 margin-right: auto;
172 padding: 0px;
173 line-height: 1;
174 position: relative;
175 color: $headings-color;
176
177 .current-day {
178 z-index: 2;
179 }
180
181 .current-month {
182 z-index: 2;
183 position: relative;
184 font-weight: $body-font-weight-bold;
185 }
186
187 .current-year {
188 font-weight: $body-font-weight-black;
189 color: $calendar-year-color;
190 position: absolute;
191 font-size: 80px;
192 line-height: 79px;
193 bottom: -7px;
194 display: block;
195 margin: 0px;
196 left: -0px;
197 z-index: 1;
198 }
199 }
200
201 .latepoint-btn {
202 line-height: 1;
203 }
204
205 .os-month-service-selector {
206 margin-left: auto;
207 margin-right: 20px;
208 display: flex;
209 align-items: center;
210 padding-right: 20px;
211 border-right: 1px solid rgba(0, 0, 0, 0.1);
212
213 label {
214 margin-right: 5px;
215 display: block;
216 margin-left: auto;
217 color: $color-faded;
218 }
219
220 input {
221 display: block;
222 }
223 }
224
225 .os-calendar-settings-toggler-wrapper {
226
227 .calendar-settings-toggler {
228 text-decoration: none;
229 padding: 4px 6px;
230 font-size: 24px;
231 line-height: 20px;
232 color: $headings-color;
233 cursor: pointer;
234 border-radius: 6px;
235 background-color: #fff;
236 display: block;
237
238 &:hover {
239 background-color: #eff0f5;
240 }
241
242 &:focus {
243 box-shadow: none;
244 }
245 }
246 }
247
248
249 .os-month-control-buttons-w {
250 position: relative;
251 display: flex;
252 justify-content: space-between;
253 gap: 10px;
254 align-items: center;
255
256 .cc-action-prev, .cc-action-next {
257 position: relative;
258 bottom: auto;
259 top: auto;
260 left: auto;
261 right: auto;
262 transform: none;
263 padding: 3px 4px;
264 line-height: 1;
265 font-size: 20px;
266 color: $brand-primary;
267 }
268
269 .os-month-today-btn {
270 margin: 0px 15px;
271 }
272 }
273 }
274 }
275
276 .daily-availability-calendar-wrapper {
277 display: flex;
278 align-items: center;
279 margin-bottom: 25px;
280 background-color: #fff;
281 border: 1px solid #ddd;
282 border-radius: $border-radius;
283 margin-top: 10px;
284
285 .daily-calendar-action-navigation-btn {
286 padding: 35px 15px 10px 15px;
287 display: block;
288 text-decoration: none;
289 color: $headings-color;
290 font-size: 16px;
291
292 &:hover {
293 background-color: $brand-primary;
294 color: #fff;
295 border-color: $brand-primary;
296 }
297
298 &:focus {
299 outline: none;
300 box-shadow: none;
301 }
302
303 &:first-child {
304 border-right: none;
305 }
306
307 &:last-child {
308 border-left: none;
309 }
310 }
311 }
312
313 .daily-availability-calendar {
314 flex: 1;
315
316 .os-monthly-calendar-days {
317 }
318
319 .calendar-and-buttons-w {
320 display: flex;
321
322 button {
323 display: block;
324 border: none;
325 padding: 0 7px;
326 color: $headings-color;
327 cursor: pointer;
328 background-color: #fff;
329 padding-top: 28px;
330 font-size: 16px;
331 border: 1px solid rgba(0, 0, 0, 0.1);
332 }
333
334 .os-monthly-calendar-days-w {
335 flex: 1;
336 }
337 }
338
339 .os-weekdays {
340 display: flex;
341 align-items: center;
342 justify-content: space-between;
343
344 .weekday {
345 text-transform: uppercase;
346 font-size: $font-size-base * 0.7;
347 color: lighten($brand-primary, 20%);
348 font-weight: $body-font-weight-bold;
349 letter-spacing: 2px;
350 width: 14.2%;
351 text-align: center;
352 padding: 5px 0px;
353
354 &.weekday-6, &.weekday-7 {
355 color: #ccb63b;
356 background-color: #fffef2;
357 }
358 }
359 }
360
361 .os-current-month-label-w {
362 position: relative;
363
364 .cc-availability-toggler {
365 }
366
367 .cc-location-selector,
368 .cc-service-selector {
369 padding-right: 20px;
370 margin-right: 20px;
371 border-right: 1px solid rgba(0, 0, 0, 0.1);
372 }
373
374
375 .os-current-month-label {
376 text-align: center;
377 font-weight: $body-font-weight-bold;
378 font-size: $font-size-base * 1.1;
379 color: $headings-color;
380 margin-bottom: 15px;
381
382 .current-day {
383 display: inline-block;
384 vertical-align: middle;
385 }
386
387 .current-year {
388 display: inline-block;
389 vertical-align: middle;
390 color: rgba($headings-color, 0.4);
391 margin-left: 3px;
392 }
393
394 .current-month {
395 }
396 }
397 }
398
399
400 .os-monthly-calendar-days-w {
401 display: none;
402
403 &.active {
404 display: block;
405 }
406 }
407
408 .os-monthly-calendar-days {
409 display: flex;
410 flex-wrap: wrap;
411 justify-content: space-between;
412 box-shadow: inset 0px -4px 0px #eee;
413
414 .os-day {
415 flex: 1;
416 padding: 2.3%;
417 text-align: left;
418 font-size: floor($font-size-base * 0.9);
419 font-weight: $body-font-weight-bold;
420 cursor: pointer;
421
422 &.week-day-6,
423 &.week-day-7 {
424 background-color: #fffef2;
425 }
426
427 &.os-day-next-month,
428 &.os-day-prev-month {
429 color: #B7BCCB;
430 background-color: #fff;
431 }
432
433 &.os-day-current {
434 .os-day-box {
435 background-color: #f5f6fb;
436 }
437 }
438
439 &.os-day-passed {
440 .os-day-box {
441 background-color: #f5f6fb;
442 box-shadow: inset 0px -4px 0px #eee;
443
444 .os-day-number {
445 color: #B7BCCB;
446 }
447 }
448 }
449
450 &.os-today {
451 .os-day-box {
452 background-color: #fff6cb;
453 }
454 }
455
456 // MONTH SETTINGS
457 &.os-month-next,
458 &.os-month-prev {
459 .os-day-box {
460 opacity: 0.4;
461
462 &:hover {
463 opacity: 1;
464 }
465 }
466 }
467
468 .os-day-box {
469 padding-bottom: 100%;
470 border-radius: $border-radius;
471 position: relative;
472 overflow: hidden;
473 }
474
475 .os-day-number {
476 color: #525765;
477 white-space: nowrap;
478 }
479
480 &:hover, &.selected {
481 .os-day-box {
482 .os-day-number {
483 transform: scale(1.3) translateY(-5px);
484 }
485
486 .os-day-status {
487 transform: scaleY(1.6);
488 }
489 }
490 }
491
492
493 &.selected {
494 z-index: 2;
495
496 .os-day-box {
497 box-shadow: inset 0px -12px 0px $brand-primary;
498
499 .os-day-status {
500 display: none;
501 background-color: $brand-primary;
502 }
503
504 .os-day-status {
505 .day-available {
506 display: none;
507 }
508 }
509 }
510 }
511 }
512 }
513
514
515 .os-day-status {
516 margin: 0px;
517 margin-top: 10px;
518 height: 4px;
519 border-radius: 2px;
520 overflow: hidden;
521 bottom: 3px;
522 left: 3px;
523 right: 3px;
524 transition: all 0.3s ease;
525 position: absolute;
526 background-color: #eee;
527
528 .day-available {
529 background-color: #80dc6e;
530 top: 0px;
531 bottom: 0px;
532 position: absolute;
533 z-index: 1;
534 min-width: 3px;
535 }
536 }
537
538 &.horizontal-calendar {
539 padding: 0px;
540 box-shadow: none;
541 background-color: transparent;
542
543 .os-available-slots-tooltip {
544 display: none;
545 }
546
547 .os-months {
548 border-bottom: none;
549 background-color: #fff;
550 border-radius: 0px;
551 }
552
553 .os-monthly-calendar-days .os-day.os-day-passed .os-day-box .os-day-number {
554 color: #525765;
555 }
556
557
558 .os-monthly-calendar-days {
559 flex-wrap: nowrap;
560
561 .os-day {
562 padding: 0px;
563 overflow: visible;
564 position: relative;
565
566 &:last-child {
567 border-right: none;
568 }
569
570 &.os-today {
571 position: relative;
572
573 &:before {
574 content: "";
575 width: 6px;
576 height: 6px;
577 background-color: #f87373;
578 border-radius: 10px;
579 position: absolute;
580 top: 2px;
581 right: 2px;
582 }
583 }
584
585 .os-day-box {
586 padding: 0px 5px;
587 border-radius: 0px;
588 background-color: transparent;
589 overflow: visible;
590 border-right: 1px solid rgba(0, 0, 0, 0.1);
591 text-align: center;
592 }
593
594 &:first-child {
595 .os-day-box {
596 border-left: 1px solid rgba(0, 0, 0, 0.1);
597 }
598 }
599
600 .os-day-weekday {
601 color: #f9f9f9;
602 font-weight: $body-font-weight-bold;
603 text-transform: uppercase;
604 letter-spacing: 1px;
605 font-size: 15px;
606 position: absolute;
607 top: 5px;
608 left: 8px;
609 right: 0;
610 overflow: hidden;
611
612 &:first-letter {
613 font-size: 24px;
614 color: #f1f1f1;
615 letter-spacing: -2px;
616 }
617 }
618
619 .os-day-status {
620 bottom: 0px;
621 margin: 0px;
622 left: -1px;
623 right: -1px;
624 border-radius: 0px;
625 height: 4px;
626 transform-origin: bottom left;
627 transition: transform 0.1s ease;
628 }
629
630 .os-day-number {
631 font-size: floor($font-size-base * 1.1);
632 padding: 35px 0 12px 0;
633 transition: transform 0.1s ease;
634 }
635
636 &.week-day-6,
637 &.week-day-7 {
638 background-color: #fefbf6;
639
640 .os-day-weekday {
641 color: #f6f2ec;
642
643 &:first-letter {
644 color: #f3ece1;
645 }
646 }
647 }
648
649 &.week-day-7 {
650 }
651 }
652 }
653 }
654 }
655
656 .calendar-wrapper {
657 &[data-view="list"]="list""] {
658 .cc-actions, .cc-availability-toggler-w {
659 display: none;
660 }
661 }
662
663 &.os-loading {
664 .no-results-w {
665 .icon-w {
666 position: relative;
667
668 &:before {
669 @include loading-circle($brand-primary, 20px);
670 }
671
672 .latepoint-icon {
673 color: transparent;
674 }
675 }
676 }
677
678 .ch-filter {
679 .ch-filter-trigger {
680 display: none;
681 }
682
683 &:before {
684 @include loading-circle($brand-primary, 20px);
685 }
686 }
687 }
688
689 .calendar-hours {
690 position: relative;
691 }
692
693 .ch-filter {
694 background-color: #fff;
695 border: 1px solid #ddd;
696 border-bottom: 1px solid #ccc;
697 border-right: none;
698 height: 50px;
699 margin-bottom: 20px;
700 position: relative;
701 text-align: center;
702 display: flex;
703 flex-direction: column;
704 align-items: center;
705 border-radius: $border-radius 0 0 $border-radius;
706 box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.05);
707
708 span {
709 color: #c4cbe1;
710 line-height: 1;
711 padding: 3px 0;
712 font-weight: $body-font-weight-bold;
713 font-size: floor($font-size-base * 0.7);
714
715 &:first-child {
716 margin-top: auto;
717 border-bottom: 1px solid $border-color-strong;
718 }
719
720 &:last-child {
721 margin-bottom: auto;
722 }
723 }
724
725 .ch-filter-trigger {
726 width: 5px;
727 top: 50%;
728 left: 50%;
729 background-color: rgba(0, 0, 0, 0.3);
730 height: 5px;
731 position: absolute;
732 transform: translate(-50%, -50%);
733 box-shadow: 8px 0px 0px rgba(0, 0, 0, 0.3), -8px 0px 0px rgba(0, 0, 0, 0.3);
734 border-radius: 1px;
735 }
736 }
737
738 .calendar-daily-agent-w {
739 }
740
741 .da-head-agents {
742 display: flex;
743 background-color: #fff;
744 height: 50px;
745 margin-bottom: 20px;
746 }
747
748 .ch-agents {
749 flex: 1;
750 position: relative;
751
752 .day-action-trigger {
753 left: auto;
754 right: 20px;
755 }
756
757 &:hover {
758 .day-action-trigger {
759 display: block;
760 }
761 }
762 }
763
764 .da-agents-bookings {
765 display: flex;
766
767 .da-agent-bookings {
768 }
769
770 .da-agent-bookings-and-periods {
771 flex: 1;
772 position: relative;
773
774 &:first-child {
775 .ch-day-periods .chd-period {
776 &:before {
777 }
778
779 .chd-period-minutes-value {
780 }
781 }
782 }
783 }
784 }
785
786 .da-head-agent {
787 display: flex;
788 align-items: center;
789 padding: 10px 5px;
790 border-top: 1px solid #ddd;
791 border-bottom: 1px solid #ccc;
792 border-right: 1px solid rgba(0, 0, 0, 0.1);
793 flex: 1;
794 background-color: transparent;
795 position: relative;
796 box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.05);
797
798 &:first-child:before {
799 content: "";
800 position: absolute;
801 bottom: -21px;
802 left: -1px;
803 height: 20px;
804 width: 1px;
805 background-color: rgba(0, 0, 0, 0.05);
806 }
807
808 &:after {
809 content: "";
810 position: absolute;
811 bottom: -21px;
812 right: -1px;
813 height: 20px;
814 width: 1px;
815 background-color: rgba(0, 0, 0, 0.05);
816 }
817
818 &:last-child {
819 border-top-right-radius: $border-radius;
820 }
821
822 .da-head-agent-avatar {
823 width: 30px;
824 height: 30px;
825 border-radius: 20px;
826 background-size: cover;
827 background-position: center center;
828 margin-right: 10px;
829 margin-left: auto;
830 }
831
832 .da-head-agent-name {
833 text-decoration: none;
834 color: $headings-color;
835 border-bottom: 1px dotted rgba($brand-primary, 0.4);
836 font-weight: $body-font-weight-bold;
837 margin-right: auto;
838 white-space: nowrap;
839
840 &:hover {
841 color: $brand-primary;
842 }
843 }
844 }
845 }
846
847 .daily-agent-calendar-w {
848 position: relative;
849
850 .current-time-indicator {
851 height: 3px;
852 background-color: #ff7c7c;
853 position: absolute;
854 top: 30%;
855 left: 0px;
856 right: 0px;
857 z-index: 998;
858
859 span {
860 position: absolute;
861 left: 0px;
862 top: 50%;
863 transform: translateY(-50%);
864 background-color: #fc6262;
865 padding: 3px 5px;
866 border-radius: 4px;
867 color: #fff;
868 font-weight: $body-font-weight-bold;
869 font-size: floor($font-size-base * 0.8);
870 }
871 }
872
873 &.make-scrollable {
874 .ch-agents {
875 overflow: auto;
876 }
877
878 .da-head-agent {
879 flex: 0 0 240px;
880 }
881
882 .da-agents-bookings .da-agent-bookings-and-periods {
883 flex: 0 0 240px;
884 }
885
886 .da-agent-bookings-and-periods {
887 &:first-child {
888 .ch-day-periods .chd-period .chd-period-minutes-value {
889 left: auto;
890 right: 0px;
891 transform: translate(100%, -50%);
892 }
893 }
894 }
895 }
896 }
897
898 .calendar-wrapper .da-head-agent .da-head-agent-name {
899 max-width: 130px;
900 overflow: hidden;
901 }
902
903 .calendar-wrapper {
904
905 &.os-loading {
906 .daily-availability-calendar .os-monthly-calendar-days .os-day.selected .os-day-box {
907 position: relative;
908
909 .os-day-number {
910 }
911
912 &:after {
913 @include loading-circle(#fff);
914 top: 12px;
915 left: 12px;
916 }
917 }
918 }
919 }
920
921
922 .calendar-daily-head-w {
923 display: flex;
924 align-items: center;
925 margin-bottom: 20px;
926 padding-bottom: 10px;
927 border-bottom: 1px solid rgba(0, 0, 0, 0.05);
928
929 .calendar-daily-target-date {
930 color: $color-faded;
931 font-size: $font-size-base * 1.4;
932 font-weight: $body-font-weight-bold;
933 line-height: 1.43;
934
935 &.agent-has-day-off {
936 color: #ec7e70;
937 }
938 }
939
940 label {
941 margin-left: auto;
942 margin-right: 5px;
943 color: $color-faded;
944 }
945 }
946
947 .cc-view {
948 margin-right: 15px;
949 padding-right: 15px;
950 border-right: 1px solid $border-color-lightest;
951
952 .view-toggler {
953 display: flex;
954 align-items: center;
955 border-radius: 6px;
956 border: 1px solid $border-color-strong;
957 line-height: 1;
958 gap: 5px;
959
960 .os-form-select-group {
961 display: none;
962 }
963
964 .view-selector {
965 padding: 6px 15px 8px;
966 font-weight: $body-font-weight-bold;
967 font-size: $font-size-base;
968 display: block;
969 text-decoration: none;
970 color: $body-color;
971 border-radius: 6px;
972
973 &:focus {
974 outline: none;
975 box-shadow: none;
976 }
977
978 &.selected {
979 box-shadow: 0 0 0 1px $brand-primary, inset 0 0 0 1px $brand-primary;
980 color: $headings-color;
981 }
982 }
983 }
984
985 .os-form-group.os-form-group-transparent.os-form-select-group {
986 margin-bottom: 0;
987
988 select.os-form-control {
989 font-size: 16px;
990 line-height: 1.5;
991 text-decoration: none;
992 background-color: #fff;
993 border: 1px solid $border-color-strong;
994 border-radius: 6px;
995 padding: 4px 15px 4px 10px !important;
996 height: auto;
997 min-height: initial;
998 }
999 }
1000
1001 }
1002
1003 .cc-actions {
1004 display: flex;
1005 align-items: center;
1006 gap: 10px;
1007 margin-right: 15px;
1008 padding-right: 15px;
1009 border-right: 1px solid $border-color-lightest;
1010
1011 .cc-action-today {
1012 position: relative;
1013 line-height: 1.5;
1014 display: flex;
1015 align-items: center;
1016 font-size: 16px;
1017 text-decoration: none;
1018 background-color: #fff;
1019 border: 1px solid $border-color-strong;
1020 border-radius: 6px;
1021 padding: 4px 14px 4px 10px;
1022 color: $headings-color;
1023
1024 span {
1025 display: inline-block;
1026 }
1027
1028 &:before {
1029 content: "";
1030 background-color: #f87373;
1031 border-radius: 50%;
1032 width: 8px;
1033 height: 8px;
1034 display: block;
1035 margin-right: 10px;
1036 }
1037
1038 &:hover {
1039 color: $brand-primary;
1040 border-color: $brand-primary;
1041 }
1042 }
1043
1044 .cc-navigate-arrows {
1045 display: flex;
1046 gap: 5px;
1047 align-items: center;
1048 }
1049
1050 .cc-action-prev,
1051 .cc-action-next {
1052 font-size: 16px;
1053 box-shadow: none;
1054 outline: none;
1055 color: #111;
1056 margin: 0px;
1057 line-height: 1;
1058 vertical-align: middle;
1059 cursor: pointer;
1060 background-color: #fff;
1061 border: 1px solid $border-color-strong;
1062 border-radius: 6px;
1063 padding: 8px 8px;
1064 display: block;
1065 text-decoration: none;
1066 position: relative;
1067
1068 i {
1069 display: block;
1070 }
1071
1072 &.os-loading {
1073 color: transparent !important;
1074
1075 span, i {
1076 line-height: 1;
1077 color: transparent !important;
1078 }
1079
1080 &:after {
1081 display: block;
1082 content: "";
1083 width: 14px;
1084 height: 14px;
1085 border-bottom: 2px solid $body-color;
1086 border-left: 2px solid $body-color;
1087 border-top: 2px solid $body-color;
1088 border-right: 2px solid rgba(0, 0, 0, 0);
1089 border-radius: 20px;
1090 position: absolute;
1091 top: 50%;
1092 left: 50%;
1093 transform: translate(-50%, -50%);
1094 animation: os-loading 700ms infinite linear;
1095 }
1096 }
1097
1098 &:hover {
1099 color: $brand-primary;
1100 border-color: $brand-primary;
1101 }
1102
1103 &.disabled {
1104 color: rgba(0, 0, 0, 0.1);
1105 }
1106 }
1107
1108 }
1109
1110
1111 .calendar-daily-agent-w {
1112 .calendar-hours {
1113 display: flex;
1114
1115 .ch-hours {
1116 flex: 0 0 61px;
1117 border-right: 1px solid #ddd;
1118
1119 .chh-period {
1120 height: $period_height;
1121 vertical-align: middle;
1122 text-align: right;
1123 line-height: $period_height;
1124 font-size: $font-size-base * 0.8;
1125 color: #AAB1CB;
1126 font-weight: $body-font-weight-bold;
1127
1128 &.last-period {
1129 height: 1px !important;
1130 }
1131
1132 &.chh-period-minutes {
1133 position: relative;
1134
1135 span {
1136 display: none;
1137 }
1138
1139 &:before {
1140 content: "";
1141 height: 1px;
1142 width: 3px;
1143 background-color: rgba(0, 0, 0, 0.2);
1144 position: absolute;
1145 top: -1px;
1146 right: -2px;
1147 }
1148 }
1149
1150 &.chh-period-hour {
1151 position: relative;
1152 padding-right: 10px;
1153 white-space: nowrap;
1154 text-transform: uppercase;
1155
1156 span {
1157 transform: translateY(-50%);
1158 display: block;
1159 }
1160
1161 &:before {
1162 content: "";
1163 height: 1px;
1164 width: 5px;
1165 background-color: rgba(0, 0, 0, 0.6);
1166 position: absolute;
1167 top: 0px;
1168 right: -3px;
1169 }
1170 }
1171
1172 &.chh-period-disabled {
1173 background-color: rgba(0, 0, 0, 0.03);
1174 }
1175 }
1176 }
1177
1178 .ch-day-periods {
1179 flex: 1;
1180 border-right: 1px solid rgba(0, 0, 0, 0.05);
1181 position: relative;
1182
1183 .chd-period {
1184 height: $period_height;
1185 position: relative;
1186 cursor: copy;
1187
1188 &.chd-period-off {
1189 background-image: repeating-linear-gradient(90deg, #fff, #fff 2px, #cfcfcf 2px, #c2c2c2 3px);
1190
1191 &:hover {
1192 &:before {
1193 border-top-color: #E42806;
1194 }
1195
1196 .chd-period-minutes-value {
1197 @include minutes-label-not-available();
1198 }
1199 }
1200 }
1201
1202 &:before {
1203 content: "";
1204 height: 1px;
1205 top: -1px;
1206 position: absolute;
1207 left: 0px;
1208 right: 0px;
1209 border-top: 1px dotted transparent;
1210 z-index: 999;
1211 }
1212
1213 .chd-period-minutes-value {
1214 position: absolute;
1215 top: 0px;
1216 left: 0px;
1217 z-index: 9999;
1218 transform: translate(-100%, -50%);
1219 display: none;
1220 @include minutes-label();
1221 }
1222
1223 &.os-loading {
1224 .chd-period-minutes-value {
1225 color: transparent;
1226
1227 &:after {
1228 @include loading-circle(#fff);
1229 }
1230 }
1231 }
1232
1233 &:hover {
1234 .chd-period-minutes-value {
1235 display: block;
1236 }
1237
1238 &:before {
1239 border-top-color: #111;
1240 }
1241 }
1242
1243 &.last-period {
1244 height: 1px !important;
1245 }
1246
1247 &.chd-period-hour {
1248 border-top: 1px solid rgba(0, 0, 0, 0.05);
1249
1250 &:first-child {
1251 }
1252 }
1253
1254 &.chd-period-disabled {
1255 background-color: rgba(0, 0, 0, 0.03);
1256 }
1257 }
1258
1259 &.ch-day-tue,
1260 &.ch-day-thu {
1261 background-color: #fafbfd;
1262 }
1263
1264 &.ch-day-6,
1265 &.ch-day-7 {
1266 }
1267 }
1268
1269
1270 .ch-day-booking {
1271 background-color: #1449ff;
1272 color: #fff;
1273 padding: 3px 6px;
1274 border: 1px solid #fff;
1275 position: absolute;
1276 left: 5px;
1277 right: 5px;
1278 text-align: left;
1279 z-index: 1000;
1280 cursor: pointer;
1281 transition: all 0.2s ease;
1282
1283 &.status-pending {
1284 &:before {
1285 @include latepointfont_admin("\e94e");
1286 position: absolute;
1287 bottom: 5px;
1288 right: 5px;
1289 color: #fff;
1290 font-size: 16px;
1291 }
1292 }
1293
1294 &:hover {
1295 left: 0px;
1296 right: 0px;
1297 min-height: 60px;
1298
1299 .booking-time {
1300 color: rgba(255, 255, 255, 0.9);
1301 }
1302 }
1303
1304 .ch-day-buffer-before {
1305 position: absolute;
1306 border: 1px dashed rgba(0, 0, 0, 0.15);
1307 border-bottom: none;
1308 border-radius: $border-radius-sm $border-radius-sm 0px 0px;
1309 z-index: -1;
1310 left: 0px;
1311 right: 0px;
1312 top: 0px;
1313 transform: translateY(-100%);
1314 }
1315
1316 .ch-day-buffer-after {
1317 position: absolute;
1318 border: 1px dashed rgba(0, 0, 0, 0.15);
1319 border-top: none;
1320 border-radius: 0px 0px $border-radius-sm $border-radius-sm;
1321 z-index: -1;
1322 left: 0px;
1323 right: 0px;
1324 bottom: 0px;
1325 transform: translateY(100%);
1326 }
1327
1328 .ch-day-booking-i {
1329 }
1330
1331 .booked-percentage {
1332 width: 70px;
1333 background-color: rgba(255, 255, 255, 0.4);
1334 border-radius: 2px;
1335 margin: 0px auto;
1336 margin-top: 2px;
1337
1338 .booked-bar {
1339 background-color: #fff;
1340 border-radius: 2px;
1341 height: 6px;
1342 }
1343 }
1344
1345 .booking-attendees {
1346 font-size: floor($font-size-base * 0.65);
1347 color: rgba(255, 255, 255, 0.7);
1348 text-align: center;
1349 position: absolute;
1350 bottom: 5px;
1351 right: 5px;
1352 line-height: 1.2;
1353
1354 span {
1355 color: #fff;
1356 }
1357 }
1358
1359 .booking-service-name {
1360 color: #fff;
1361 font-size: $font-size-base * 1;
1362 font-weight: $body-font-weight-bold;
1363 white-space: nowrap;
1364 width: 100%;
1365 overflow: hidden;
1366 text-align: left;
1367 }
1368
1369 .booking-time {
1370 color: rgba(255, 255, 255, 0.7);
1371 font-weight: $body-font-weight-bold;
1372 font-size: $font-size-base * 0.75;
1373 line-height: 1.2;
1374 }
1375
1376 &.os-loading {
1377 &:after {
1378 @include loading-circle($brand-primary);
1379 left: -10px;
1380 }
1381
1382 animation: animate_appointment_small_box 0.8s ease infinite;
1383 }
1384 }
1385 }
1386 }
1387
1388
1389 // WEEKLY CALENDAR STYLES
1390 // -----------------------
1391
1392 .calendar-week-agent-w {
1393 .agent-weekly-calendar {
1394 display: none;
1395
1396 &.selected {
1397 display: block;
1398 }
1399
1400 .current-time-indicator {
1401 height: 3px;
1402 background-color: #ff7c7c;
1403 position: absolute;
1404 top: 30%;
1405 left: 0px;
1406 right: 0px;
1407 z-index: 998;
1408
1409 &:before {
1410 position: absolute;
1411 content: "";
1412 display: block;
1413 left: 0px;
1414 top: 50%;
1415 transform: translateY(-50%);
1416 background-color: #fc6262;
1417 padding: 6px;
1418 border-radius: 50%;
1419 }
1420 }
1421 }
1422
1423 .cc-filters {
1424 display: flex;
1425 margin-left: auto;
1426 margin-right: 20px;
1427 padding-right: 20px;
1428 border-right: 1px solid rgba(0, 0, 0, 0.1);
1429
1430 select {
1431 font-size: $font-size-base;
1432 min-height: 34px;
1433 }
1434
1435 > div + div {
1436 margin-left: 10px;
1437 }
1438 }
1439
1440 .calendar-controls {
1441 display: flex;
1442 justify-content: space-between;
1443 align-items: flex-end;
1444 margin-bottom: 15px;
1445 padding-top: 30px;
1446 }
1447
1448 .cc-agent-selector {
1449
1450 }
1451
1452 .cc-date {
1453 font-size: floor($font-size-base * 2);
1454 line-height: 1;
1455 font-weight: $body-font-weight-bold;
1456 color: #c4cbe1;
1457 position: relative;
1458
1459 .cc-month {
1460 z-index: 2;
1461 position: relative;
1462 color: $brand-primary;
1463 }
1464
1465 .cc-year {
1466 font-weight: $body-font-weight-black;
1467 color: $calendar-year-color;
1468 position: absolute;
1469 font-size: 100px;
1470 line-height: 100px;
1471 bottom: -7px;
1472 display: block;
1473 margin: 0px;
1474 left: -0px;
1475 z-index: 1;
1476 }
1477 }
1478
1479
1480 .ch-day {
1481 background-color: #fff;
1482 font-size: floor($font-size-base * 1.15);
1483 text-align: center;
1484 color: #c4cbe1;
1485 line-height: 1;
1486 padding: 16px 10px;
1487 position: relative;
1488 z-index: 2;
1489 border-top: 1px solid $border-color-main;
1490 border-bottom: 1px solid $border-color-strong;
1491 border-right: 1px solid rgba(0, 0, 0, 0.05);
1492 box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.05);
1493
1494 span, strong {
1495 display: inline-block;
1496 }
1497
1498 strong {
1499 font-weight: $body-font-weight-bold;
1500 color: $body-color;
1501 margin-left: 5px;
1502 }
1503
1504 &.ch-day-tue,
1505 &.ch-day-thu {
1506 background-color: #F8F8F9;
1507 }
1508
1509 &.ch-day-6,
1510 &.ch-day-7 {
1511 background-color: #faf8f2;
1512
1513 span {
1514 color: #c9bd93;
1515 }
1516 }
1517
1518 &:last-child {
1519 border-right: none;
1520 }
1521
1522 &.is-today {
1523 &:before {
1524 content: "";
1525 background-color: #FF0F42;
1526 width: 10px;
1527 height: 10px;
1528 position: absolute;
1529 top: 10px;
1530 right: 10px;
1531 border-radius: 10px;
1532 }
1533 }
1534 }
1535
1536
1537 .calendar-hours {
1538 display: flex;
1539
1540 .ch-info {
1541 position: relative;
1542 background-color: #fff;
1543 border: 1px solid $border-color-main;
1544 border-bottom-color: $border-color-strong;
1545 border-right: none;
1546 padding: 10px 15px;
1547 line-height: 1;
1548 text-align: center;
1549 color: #c4cbe1;
1550 flex: 0 0 60px;
1551 font-weight: $body-font-weight-bold;
1552 font-size: floor($font-size-base * 0.7);
1553 box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.05);
1554 border-radius: $border-radius 0 0 $border-radius;
1555
1556 span {
1557 display: block;
1558 padding: 2px 0;
1559 }
1560
1561 span + span {
1562 border-top: 1px solid $border-color-light;
1563 }
1564
1565 & + .chh-period.chh-period-hour {
1566 span {
1567 display: none !important;
1568 }
1569
1570 &:before {
1571 display: none !important;
1572 }
1573 }
1574 }
1575
1576 .ch-hours {
1577 flex: 0 0 70px;
1578 border-right: 1px solid $border-color-strong;
1579
1580 .chh-period {
1581 height: $period_height;
1582 vertical-align: middle;
1583 text-align: right;
1584 line-height: $period_height;
1585 font-size: floor($font-size-base * 0.75);
1586 color: #AAB1CB;
1587 font-weight: $body-font-weight-bold;
1588
1589 &.last-period {
1590 height: 1px !important;
1591 }
1592
1593 &.chh-period-minutes {
1594 position: relative;
1595 text-transform: uppercase;
1596
1597 span {
1598 display: none;
1599 }
1600
1601 &:before {
1602 content: "";
1603 height: 1px;
1604 width: 3px;
1605 background-color: rgba(0, 0, 0, 0.2);
1606 position: absolute;
1607 top: -1px;
1608 right: -2px;
1609 }
1610 }
1611
1612 &.chh-period-hour {
1613 position: relative;
1614 padding-right: 10px;
1615 text-transform: uppercase;
1616
1617 span {
1618 transform: translateY(-50%);
1619 display: block;
1620 }
1621
1622 &:before {
1623 content: "";
1624 height: 1px;
1625 width: 5px;
1626 background-color: rgba(0, 0, 0, 0.6);
1627 position: absolute;
1628 top: 0px;
1629 right: -3px;
1630 }
1631 }
1632
1633 &.chh-period-disabled {
1634 background-color: rgba(0, 0, 0, 0.03);
1635 }
1636 }
1637 }
1638
1639 .ch-day-periods-w {
1640 display: flex;
1641 flex: 1;
1642
1643 .ch-day-periods-i {
1644 flex: 1;
1645
1646 &:hover {
1647 .day-action-trigger {
1648 display: block;
1649 }
1650 }
1651
1652 &:last-child {
1653 .ch-day {
1654 border-right-color: $border-color-strong;
1655 border-top-right-radius: $border-radius;
1656 }
1657 }
1658 }
1659 }
1660
1661 .ch-day-periods {
1662 border-right: 1px solid rgba(0, 0, 0, 0.05);
1663 position: relative;
1664
1665 .chd-period {
1666 height: $period_height;
1667 position: relative;
1668 cursor: copy;
1669
1670 &:hover {
1671 z-index: 6;
1672 }
1673
1674 &.chd-period-off {
1675 background-image: repeating-linear-gradient(90deg, #fff, #fff 2px, #cfcfcf 2px, #c2c2c2 3px);
1676
1677
1678 &:hover {
1679 &:before {
1680 border-top-color: #E42806;
1681 }
1682
1683 .chd-period-minutes-value {
1684 @include minutes-label-not-available();
1685 }
1686 }
1687 }
1688
1689 &:before {
1690 content: "";
1691 height: 1px;
1692 z-index: 3;
1693 top: -1px;
1694 position: absolute;
1695 left: 0px;
1696 right: 0px;
1697 border-top: 1px dotted transparent;
1698 }
1699
1700 .chd-period-minutes-value {
1701 position: absolute;
1702 top: 0px;
1703 left: 50%;
1704 z-index: 3;
1705 transform: translate(-50%, -50%);
1706 display: none;
1707 @include minutes-label();
1708 }
1709
1710 &.os-loading {
1711 .chd-period-minutes-value {
1712 color: transparent;
1713
1714 &:after {
1715 @include loading-circle(#fff);
1716 }
1717 }
1718 }
1719
1720 &:hover {
1721 .chd-period-minutes-value {
1722 display: block;
1723 }
1724
1725 &:before {
1726 border-top-color: #111;
1727 }
1728 }
1729
1730 &.last-period {
1731 height: 1px !important;
1732 }
1733
1734 &.chd-period-hour {
1735 border-top: 1px solid rgba(0, 0, 0, 0.05);
1736
1737 &:first-child {
1738 border-top: none;
1739 }
1740 }
1741
1742 &.chd-period-disabled {
1743 background-color: rgba(0, 0, 0, 0.03);
1744 }
1745 }
1746
1747 &.ch-day-tue,
1748 &.ch-day-thu {
1749 background-color: #fafbfd;
1750 }
1751
1752 &.ch-day-6,
1753 &.ch-day-7 {
1754 background-color: #FBF8EF;
1755 }
1756 }
1757
1758 .ch-day-booking {
1759 background-color: #1449ff;
1760 color: #fff;
1761 padding: 3px 6px;
1762 border: 1px solid #fff;
1763 position: absolute;
1764 left: 5px;
1765 right: 5px;
1766 text-align: left;
1767 z-index: 4;
1768 cursor: pointer;
1769 transition: all 0.2s ease;
1770 overflow: hidden;
1771
1772 &.status-pending {
1773 &:before {
1774 @include latepointfont_admin("\e94e");
1775 position: absolute;
1776 bottom: 5px;
1777 right: 5px;
1778 color: #fff;
1779 font-size: 18px;
1780 }
1781 }
1782
1783 &:hover {
1784 transform: translateY(-3px);
1785 min-height: 60px !important;
1786 left: 0px;
1787 right: 0px;
1788 z-index: 5;
1789
1790 .booking-time {
1791 color: rgba(255, 255, 255, 0.9);
1792 }
1793 }
1794
1795 .ch-day-buffer-before {
1796 position: absolute;
1797 border: 1px dashed rgba(0, 0, 0, 0.15);
1798 border-bottom: none;
1799 border-radius: $border-radius-sm $border-radius-sm 0px 0px;
1800 z-index: -1;
1801 left: 0px;
1802 right: 0px;
1803 top: 0px;
1804 transform: translateY(-100%);
1805 }
1806
1807 .ch-day-buffer-after {
1808 position: absolute;
1809 border: 1px dashed rgba(0, 0, 0, 0.15);
1810 border-top: none;
1811 border-radius: 0px 0px $border-radius-sm $border-radius-sm;
1812 z-index: -1;
1813 left: 0px;
1814 right: 0px;
1815 bottom: 0px;
1816 transform: translateY(100%);
1817 }
1818
1819 .ch-day-booking-i {
1820 }
1821
1822 .booked-percentage {
1823 width: 70px;
1824 background-color: rgba(255, 255, 255, 0.4);
1825 margin: 0px auto;
1826 margin-top: 2px;
1827
1828 .booked-bar {
1829 background-color: #fff;
1830 height: 4px;
1831 }
1832 }
1833
1834 .booking-attendees {
1835 font-size: $font-size-base * 0.65;
1836 color: rgba(255, 255, 255, 0.7);
1837 text-align: center;
1838 position: absolute;
1839 bottom: 5px;
1840 right: 5px;
1841 line-height: 1.2;
1842
1843 span {
1844 color: #fff;
1845 }
1846 }
1847
1848 .booking-service-name {
1849 color: #fff;
1850 font-size: floor($font-size-base * 0.95);
1851 font-weight: $body-font-weight-bold;
1852 white-space: nowrap;
1853 width: 100%;
1854 overflow: hidden;
1855 text-align: left;
1856 }
1857
1858 .booking-time {
1859 color: rgba(255, 255, 255, 0.7);
1860 font-size: floor($font-size-base * 0.8);
1861 white-space: nowrap;
1862 }
1863
1864 &.os-loading {
1865 &:after {
1866 @include loading-circle($brand-primary);
1867 left: -10px;
1868 }
1869
1870 animation: animate_appointment_small_box 0.8s ease infinite;
1871 }
1872 }
1873 }
1874 }
1875
1876
1877 // MONTHLY CALENDAR STYLES
1878 // -----------------------
1879
1880
1881 .calendar-month-agents-w {
1882 position: relative;
1883 $day-height: 35px;
1884
1885 &.os-loading {
1886 .ma-days-with-bookings-i {
1887 opacity: 0.5;
1888 }
1889
1890 &:after {
1891 @include loading-circle($brand-primary, 24px);
1892 top: 25px;
1893 left: 40px;
1894 z-index: 999;
1895 }
1896
1897 .ma-head-info {
1898 color: transparent;
1899
1900 span + span {
1901 border-top-color: transparent;
1902 }
1903 }
1904 }
1905
1906 .ma-head {
1907 display: flex;
1908 z-index: 2;
1909 position: absolute;
1910 top: 0px;
1911 left: 80px;
1912 right: 0px;
1913 }
1914
1915 .ma-head-info {
1916 padding: 12px 15px 5px 15px;
1917 text-align: center;
1918 color: $color-faded;
1919 width: 80px;
1920 height: 52px;
1921 font-weight: $body-font-weight-bold;
1922 font-size: $font-size-base * 0.7;
1923 background-color: #fff;
1924 border-top: 1px solid $border-color-strong;
1925 border-bottom: 1px solid $border-color-strong;
1926 position: relative;
1927
1928 span {
1929 display: block;
1930 }
1931
1932 span + span {
1933 border-top: 1px solid rgba(0, 0, 0, 0.1);
1934 }
1935 }
1936
1937 .ma-head-agent {
1938 display: flex;
1939 align-items: center;
1940 padding: 10px 20px;
1941 border-top: 1px solid $border-color-strong;
1942 border-bottom: 1px solid $border-color-strong;
1943 border-right: 1px solid $border-color-strong;
1944 flex: 0 0 249px;
1945 background-color: #fff;
1946
1947 .ma-head-agent-avatar {
1948 width: 30px;
1949 height: 30px;
1950 border-radius: 20px;
1951 background-size: cover;
1952 background-position: center center;
1953 margin-right: 10px;
1954 margin-left: auto;
1955 }
1956
1957 .ma-head-agent-name {
1958 font-weight: $body-font-weight-bold;
1959 margin-right: auto;
1960 white-space: nowrap;
1961 }
1962 }
1963
1964 .ma-month-label {
1965 color: #fff;
1966 font-weight: $body-font-weight-bold;
1967 text-align: center;
1968 display: flex;
1969
1970 div {
1971 padding: 3px;
1972 background-color: $brand-primary;
1973 flex: 0 0 250px;
1974 color: $brand-primary;
1975 box-shadow: 0px -1px 0px $brand-primary, 0px 1px 0px $brand-primary;
1976 position: relative;
1977 z-index: 2;
1978 }
1979 }
1980
1981 .ma-floated-days-w {
1982 position: absolute;
1983 top: 0px;
1984 left: 0px;
1985 z-index: 3;
1986 border-right: 1px solid $border-color-strong;
1987 border-left: 1px solid $border-color-strong;
1988
1989
1990 .ma-month-label {
1991 display: block;
1992
1993 div {
1994 flex: 1;
1995 color: #fff;
1996 }
1997 }
1998
1999 .ma-day {
2000 display: flex;
2001 height: $day-height;
2002 position: relative;
2003
2004 &.is-today {
2005 &:after {
2006 background-color: #FF0F42;
2007 position: absolute;
2008 top: 2px;
2009 left: 2px;
2010 width: 6px;
2011 height: 6px;
2012 border-radius: 50%;
2013 display: block;
2014 content: "";
2015 }
2016 }
2017
2018 .ma-day-info {
2019 display: flex;
2020 align-items: stretch;
2021 font-size: $font-size-base * 0.7;
2022 font-weight: $body-font-weight-bold;
2023 flex: 0 0 80px;
2024 background-color: #fff;
2025
2026 .ma-day-number {
2027 border-right: 1px solid $border-color-lightest;
2028 flex: 0 0 30px;
2029 line-height: $day-height;
2030 text-align: center;
2031 }
2032
2033 .ma-day-weekday {
2034 text-transform: uppercase;
2035 letter-spacing: 2px;
2036 text-align: center;
2037 flex: 0 0 50px;
2038 color: $color-faded;
2039 line-height: $day-height;
2040 }
2041 }
2042 }
2043 }
2044
2045 .ma-days-with-bookings-w {
2046 padding-left: 80px;
2047 position: relative;
2048 overflow-x: auto;
2049
2050 .ma-days-with-bookings-i {
2051 padding-top: 52px;
2052 }
2053
2054 .ma-day {
2055 display: flex;
2056 height: $day-height;
2057
2058 .ma-day-agent-bookings {
2059 border-right: 1px solid #d8d8d8;
2060 flex: 0 0 249px;
2061 position: relative;
2062
2063 .ma-day-work-periods {
2064 display: none;
2065 position: absolute;
2066 top: 0px;
2067 left: 50%;
2068 transform: translate(-50%, -100%);
2069 background-color: #5c95ff;
2070 color: #fff;
2071 padding: 3px 6px 4px;
2072 font-size: floor($font-size-base * 0.7);
2073 font-weight: $body-font-weight-bold;
2074 letter-spacing: 0.5px;
2075 text-transform: uppercase;
2076 white-space: nowrap;
2077
2078 .ma-day-label {
2079 color: rgba(255, 255, 255, 0.8);
2080 margin-right: 3px;
2081 }
2082
2083 .ma-day-work-period + .ma-day-work-period {
2084 margin-left: 5px;
2085 border-left: 2px solid rgba(255, 255, 255, 0.3);
2086 padding-left: 5px;
2087 }
2088 }
2089
2090 cursor: copy;
2091
2092 &.is-day-off {
2093 cursor: not-allowed;
2094 }
2095
2096 &:hover {
2097 box-shadow: 0px 0px 0px 2px #6b9fff, 0px 0px 0px 6px rgba(107, 159, 255, 0.22);
2098 z-index: 9999;
2099 position: relative;
2100 background-color: #fff !important;
2101
2102 .ma-day-work-periods {
2103 display: flex;
2104 }
2105
2106 &.is-day-off {
2107 box-shadow: 0px 0px 0px 2px #fc6f6f, 0px 0px 0px 6px rgba(255, 103, 103, 0.22);
2108 }
2109 }
2110
2111 .ma-day-off {
2112 top: 3px;
2113 bottom: 3px;
2114 left: 0px;
2115 right: 0px;
2116 position: absolute;
2117 background-image: repeating-linear-gradient(90deg, #fff, #fff 2px, #cfcfcf 2px, #c2c2c2 3px);
2118
2119 strong {
2120 color: rgba(255, 255, 255, 0.8);
2121 }
2122
2123 span {
2124 position: absolute;
2125 top: 0px;
2126 left: 50%;
2127 color: #fff;
2128 padding: 3px 6px 4px;
2129 line-height: 1.1;
2130 background-color: #e02727;
2131 display: none;
2132 transform: translate(-50%, -100%);
2133 font-size: floor($font-size-base * 0.7);
2134 text-transform: uppercase;
2135 font-weight: $body-font-weight-bold;
2136 letter-spacing: 0.5px;
2137 }
2138
2139 &.full:hover {
2140 background-image: repeating-linear-gradient(90deg, #fff, #fff 2px, #e86464 2px, #e86464 3px);
2141
2142 span {
2143 display: block;
2144 }
2145 }
2146 }
2147
2148 .ma-day-booking {
2149 top: 12px;
2150 bottom: 12px;
2151 position: absolute;
2152 cursor: pointer;
2153 box-shadow: inset -1px 0px 0px 0px #fff;
2154
2155 &:hover {
2156 }
2157
2158 &.os-loading {
2159 top: 10px;
2160 bottom: 10px;
2161
2162 &:after {
2163 @include loading-circle(#fff);
2164 }
2165 }
2166
2167 .appointment-box-small {
2168 position: absolute;
2169 top: 0px;
2170 left: 50%;
2171 transform: translate(-50%, -120%);
2172 visibility: hidden;
2173 opacity: 0;
2174 transition: all 0.2s ease;
2175 display: block;
2176 align-items: flex-start;
2177 box-shadow: 0 20px 40px 0 rgba(108, 120, 143, 0.15), 0 1px 2px 0 rgba(206, 211, 222, 0.7);
2178 z-index: 999;
2179
2180 .appointment-info {
2181 flex: 1;
2182 padding: 15px 30px 10px 20px
2183 }
2184
2185 .customer-info-w {
2186 flex: 1;
2187 padding: 15px 10px 15px 20px;
2188 align-items: flex-start;
2189 border-left: none;
2190 border-top: 1px solid rgba(0, 0, 0, 0.05);
2191 }
2192 }
2193
2194 &:hover {
2195 top: 10px;
2196 bottom: 10px;
2197
2198 .appointment-box-small {
2199 transform: translate(-50%, -105%);
2200 visibility: visible;
2201 opacity: 1;
2202 }
2203
2204 &:first-child {
2205 }
2206
2207 &:last-child {
2208 }
2209 }
2210 }
2211
2212 &:first-child {
2213 .appointment-box-small {
2214 left: 0px;
2215 transform: translate(0%, -120%);
2216 }
2217
2218 .ma-day-booking:hover {
2219 .appointment-box-small {
2220 transform: translate(0%, -105%);
2221 }
2222 }
2223 }
2224
2225 &:last-child {
2226 .appointment-box-small {
2227 left: auto;
2228 right: 0px;
2229 transform: translate(0%, -120%);
2230 }
2231
2232 .ma-day-booking:hover {
2233 .appointment-box-small {
2234 transform: translate(0%, -105%);
2235 }
2236 }
2237 }
2238 }
2239
2240 &:nth-child(1),
2241 &:nth-child(2),
2242 &:nth-child(3),
2243 &:nth-child(4),
2244 &:nth-child(5) {
2245 .ma-day-booking {
2246 .appointment-box-small {
2247 top: auto;
2248 bottom: 0px;
2249 transform: translate(-50%, 110%);
2250 }
2251
2252 &:hover {
2253 .appointment-box-small {
2254 transform: translate(-50%, 100%);
2255 }
2256 }
2257 }
2258
2259 .ma-day-agent-bookings {
2260 &:first-child {
2261 .appointment-box-small {
2262 left: 0px;
2263 top: auto;
2264 bottom: 0px;
2265 transform: translate(5%, 105%);
2266 }
2267
2268 .ma-day-booking:hover {
2269 .appointment-box-small {
2270 transform: translate(0%, 100%);
2271 }
2272 }
2273 }
2274
2275 &:last-child {
2276 .appointment-box-small {
2277 left: auto;
2278 right: 0px;
2279 top: auto;
2280 bottom: 0px;
2281 transform: translate(0%, 105%);
2282 }
2283
2284 .ma-day-booking:hover {
2285 .appointment-box-small {
2286 transform: translate(0%, 100%);
2287 }
2288 }
2289 }
2290 }
2291 }
2292 }
2293 }
2294
2295 .ma-floated-days-w,
2296 .ma-days-with-bookings-w {
2297 .ma-day {
2298 border-bottom: 1px solid $border-color-lightest;
2299
2300 &:nth-child(even) {
2301 .ma-day-agent-bookings {
2302 }
2303
2304 .ma-day-info {
2305 .ma-day-number {
2306 }
2307
2308 .ma-day-weekday {
2309 }
2310 }
2311 }
2312
2313 &.ma-day-number-5 {
2314 }
2315
2316 &.ma-day-number-6,
2317 &.ma-day-number-7 {
2318 .ma-day-info {
2319 background-color: #f9f9f9;
2320 }
2321
2322 .ma-day-agent-bookings {
2323 background-color: #f9f9f9;
2324 }
2325 }
2326
2327 &.ma-day-number-7 {
2328 border-bottom-color: $border-color-strong;
2329
2330 .ma-day-agent-bookings {
2331 }
2332
2333 .ma-day-info {
2334 }
2335
2336 &:hover {
2337 .ma-day-agent-bookings {
2338 }
2339 }
2340 }
2341
2342 &:last-child {
2343 border-bottom-color: $border-color-strong;
2344 }
2345 }
2346 }
2347
2348
2349 &.calendar-month-not-scrollable {
2350 .ma-days-with-bookings-w {
2351 overflow-x: visible;
2352 }
2353
2354 .ma-head-agent {
2355 flex: 1;
2356 }
2357
2358 .ma-days-with-bookings-w .ma-day .ma-day-agent-bookings {
2359 flex: 1;
2360 }
2361 }
2362
2363 }
2364
2365
2366 .full-screen-year-calendar-w {
2367 position: fixed;
2368 top: 0px;
2369 right: 0px;
2370 bottom: 0px;
2371 left: 0px;
2372 background-color: #fff;
2373 z-index: 99999;
2374 overflow-y: scroll;
2375 display: none;
2376
2377 .fsy-header {
2378 border-bottom: 1px solid rgba(0, 0, 0, 0.05);
2379 padding: 10px 40px;
2380
2381 h2 {
2382 margin: 0px;
2383 line-height: 1.2;
2384 font-size: floor($headings-font-size * 1.5);
2385 }
2386 }
2387
2388 .full-screen-year-calendar {
2389
2390 }
2391
2392 .full-screen-year-calendar-months {
2393 display: flex;
2394 flex-wrap: wrap;
2395 padding: 0px 20px;
2396
2397 .fsy-month {
2398 flex: 0 0 25%;
2399 padding: 15px 20px;
2400
2401 .fsy-month-name {
2402 font-size: floor($font-size-base);
2403 color: $headings-color;
2404 font-weight: $body-font-weight-bold;
2405 padding-bottom: 5px;
2406 border-bottom: 1px solid rgba(0, 0, 0, 0.05);
2407 margin-bottom: 5px;
2408 }
2409 }
2410 }
2411
2412 .os-monthly-calendar-days {
2413 display: flex;
2414 flex-wrap: wrap;
2415 justify-content: space-between;
2416
2417 .os-day {
2418 width: 14.2%;
2419 padding: 2.4%;
2420 text-align: center;
2421 font-size: floor($font-size-base * 0.85);
2422 font-weight: $body-font-weight-bold;
2423 cursor: pointer;
2424
2425 &.week-day-6,
2426 &.week-day-7 {
2427 .os-day-box {
2428 background-color: #fff3e2 !important;
2429 }
2430 }
2431
2432 &.os-day-next-month,
2433 &.os-day-prev-month {
2434 color: #B7BCCB;
2435 background-color: #fff;
2436 }
2437
2438 &.os-day-current {
2439 .os-day-box {
2440 background-color: #f5f6fb;
2441 }
2442 }
2443
2444 &.os-day-passed {
2445 .os-day-box {
2446 background-color: #eaedf5;
2447
2448 .os-day-number {
2449 color: rgb(178, 185, 204);
2450 }
2451 }
2452 }
2453
2454 &.os-today {
2455 .os-day-box {
2456 background-color: #fff6cb;
2457 }
2458 }
2459
2460 // MONTH SETTINGS
2461 &.os-month-next,
2462 &.os-month-prev {
2463 .os-day-box {
2464 opacity: 0.4;
2465
2466 &:hover {
2467 opacity: 1;
2468 }
2469 }
2470 }
2471
2472 .os-day-box {
2473 padding-bottom: 100%;
2474 border-radius: $border-radius;
2475 position: relative;
2476 overflow: hidden;
2477 }
2478
2479 .os-day-number {
2480 position: absolute;
2481 top: 50%;
2482 left: 50%;
2483 transform: translate(-50%, -50%);
2484 }
2485
2486 &:hover {
2487 .os-day-box {
2488 .os-day-number {
2489 font-size: floor($font-size-base * 0.9);
2490 color: $brand-primary;
2491 }
2492 }
2493 }
2494
2495 &.selected {
2496 .os-day-box {
2497 background-color: $brand-primary;
2498 color: #fff;
2499
2500 .os-day-number {
2501 }
2502
2503 .os-day-status {
2504 display: none;
2505 }
2506 }
2507 }
2508 }
2509 }
2510 }
2511
2512 .custom-day-calendar {
2513 &[data-period-type="range"]="range""] {
2514 .custom-day-settings-w .os-form-group.os-form-group-transparent select {
2515 width: 110px;
2516 }
2517 }
2518
2519 &[data-picking="start"]="start""] {
2520 .start-day-input-w .os-form-group.os-form-group-transparent.os-form-textfield-group label {
2521 color: $brand-primary;
2522 }
2523
2524 .start-day-input-w .os-form-group.os-form-group-transparent.os-form-textfield-group .os-form-control {
2525 border-bottom-color: $brand-primary;
2526 }
2527 }
2528
2529 &[data-picking="end"]="end""] {
2530 .end-day-input-w .os-form-group.os-form-group-transparent.os-form-textfield-group label {
2531 color: $brand-primary;
2532 }
2533
2534 .end-day-input-w .os-form-group.os-form-group-transparent.os-form-textfield-group .os-form-control {
2535 border-bottom-color: $brand-primary;
2536 }
2537 }
2538
2539 &[data-period-type="single"]="single""] {
2540 .custom-day-settings-w .os-form-group {
2541 flex: 1;
2542 }
2543
2544 .start-day-input-w,
2545 .end-day-input-w {
2546 display: none;
2547 }
2548 }
2549 }
2550
2551 .custom-day-settings-w {
2552 display: flex;
2553 margin-bottom: 10px;
2554 padding-bottom: 20px;
2555 border-bottom: 1px solid $border-color-main;
2556
2557 .os-form-group {
2558 margin-bottom: 0px;
2559
2560 select {
2561 transition: none;
2562 }
2563
2564 &.os-form-textfield-group {
2565 label {
2566 top: 2px;
2567 left: 0px;
2568 font-size: 13px;
2569 }
2570
2571 .os-form-control {
2572 &:focus {
2573 border-bottom-color: $brand-primary;
2574 }
2575 }
2576 }
2577 }
2578
2579 .start-day-input-w {
2580 margin-left: 10px;
2581 flex: 1;
2582 }
2583
2584 .end-day-input-w {
2585 margin-left: 10px;
2586 flex: 1;
2587 position: relative;
2588 }
2589 }
2590
2591 .custom-day-schedule-w {
2592 display: flex;
2593
2594 .custom-day-calendar {
2595 flex: 0 0 360px;
2596 padding-right: 30px;
2597 }
2598
2599 .custom-day-schedule {
2600 flex: 1;
2601 padding-left: 30px;
2602 border-left: 1px solid rgba(0, 0, 0, 0.05);
2603 animation: 0.5s cubic-bezier(.45, 1.1, .4, 1) 0s wizardWrapperAnimation;
2604 animation-fill-mode: both;
2605 max-height: 70vh;
2606 overflow: auto;
2607
2608 .custom-day-schedule-head {
2609 padding-bottom: 10px;
2610 border-bottom: 1px solid rgba(0, 0, 0, 0.05);
2611 margin-bottom: 10px;
2612 text-align: center;
2613
2614 h3 {
2615 margin: 0px;
2616 margin-right: auto;
2617 line-height: 2.1;
2618 }
2619 }
2620
2621 .weekday-schedule-form {
2622 padding-bottom: 0px;
2623 }
2624 }
2625
2626 .ws-period {
2627 margin-bottom: 10px;
2628 }
2629 }
2630
2631 .latepoint-lightbox-w {
2632 &.hide-schedule {
2633 .latepoint-lightbox-i {
2634 width: 400px !important;
2635 }
2636
2637 .custom-day-calendar {
2638 padding: 0px;
2639 flex: 1;
2640 }
2641
2642 .custom-day-schedule {
2643 display: none;
2644 }
2645 }
2646 }
2647
2648 .custom-day-calendar {
2649
2650 }
2651
2652 .custom-day-calendar-head {
2653 display: flex;
2654 justify-content: space-between;
2655 align-items: center;
2656 padding-bottom: 10px;
2657 border-bottom: 1px solid rgba(0, 0, 0, 0.05);
2658 margin-bottom: 10px;
2659
2660 .os-form-group {
2661 margin-bottom: 0px;
2662
2663 & + .os-form-group {
2664 margin-left: 5px;
2665 }
2666
2667 select {
2668 height: 18px;
2669 padding: 4px 20px 4px 8px !important;
2670 }
2671 }
2672
2673 h3 {
2674 margin: 0px;
2675 margin-right: auto;
2676 line-height: 1.1;
2677 }
2678 }
2679
2680 .custom-day-calendar-month {
2681 position: relative;
2682
2683 &.os-loading {
2684 &:after {
2685 @include loading-circle($brand-primary, 52px);
2686 }
2687
2688 animation: animate_appointment_small_box 0.8s ease infinite;
2689 }
2690
2691 .os-monthly-calendar-days {
2692 display: flex;
2693 flex-wrap: wrap;
2694 justify-content: space-between;
2695 margin: 0px -2%;
2696
2697 .os-day {
2698 width: 14.2%;
2699 padding: 2%;
2700 text-align: center;
2701 font-size: floor($font-size-base);
2702 font-weight: $body-font-weight-bold;
2703 cursor: pointer;
2704
2705 &.week-day-6,
2706 &.week-day-7 {
2707 .os-day-box {
2708 background-color: #fff3e2 !important;
2709 }
2710 }
2711
2712 &.os-day-next-month,
2713 &.os-day-prev-month {
2714 color: #B7BCCB;
2715 background-color: #fff;
2716 }
2717
2718 &.os-day-current {
2719 .os-day-box {
2720 background-color: #f5f6fb;
2721 }
2722 }
2723
2724 &.os-day-passed {
2725 .os-day-box {
2726 background-color: #eaedf5;
2727
2728 .os-day-number {
2729 color: rgb(178, 185, 204);
2730 }
2731 }
2732 }
2733
2734 &.os-today {
2735 .os-day-box {
2736 background-color: #fff6cb;
2737 }
2738 }
2739
2740 // MONTH SETTINGS
2741 &.os-month-next,
2742 &.os-month-prev {
2743 .os-day-box {
2744 opacity: 0.3;
2745
2746 &:hover {
2747 opacity: 1;
2748 }
2749 }
2750
2751 &.selected {
2752 .os-day-box {
2753 opacity: 1;
2754 }
2755 }
2756 }
2757
2758 .os-day-box {
2759 padding-bottom: 100%;
2760 border-radius: $border-radius;
2761 position: relative;
2762 overflow: hidden;
2763 }
2764
2765 .os-day-number {
2766 position: absolute;
2767 top: 50%;
2768 left: 50%;
2769 transform: translate(-50%, -50%);
2770 }
2771
2772 &:hover {
2773 .os-day-box {
2774 .os-day-number {
2775 font-size: floor($font-size-base * 1.3);
2776 color: $brand-primary;
2777 }
2778 }
2779 }
2780
2781 &.selected {
2782 .os-day-box {
2783 background-color: $brand-primary !important;
2784 color: #fff;
2785
2786 .os-day-number {
2787 font-size: floor($font-size-base * 1.3);
2788 color: #fff;
2789 }
2790
2791 .os-day-status {
2792 display: none;
2793 }
2794 }
2795 }
2796 }
2797 }
2798 }
2799
2800 .daily-calendar-stats-row {
2801 display: flex;
2802
2803 &:first-child {
2804 border-bottom: 1px solid rgba(0, 0, 0, 0.1);
2805 }
2806
2807 .os-info-tile.tile-centered {
2808 flex: 0 0 50%;
2809 margin: 0px;
2810 padding: 35px 15px;
2811
2812 & + .os-info-tile {
2813 border-left: 1px solid rgba(0, 0, 0, 0.1);
2814 }
2815 }
2816 }
2817
2818 .monthly-calendar-headers {
2819 display: flex;
2820 justify-content: space-between;
2821 padding-bottom: 10px;
2822
2823 .os-form-group.os-form-group-transparent {
2824 margin-bottom: 0px;
2825 }
2826
2827 .os-form-group + .os-form-group {
2828 margin-left: 5px;
2829 }
2830
2831 .monthly-calendar-date-selectors {
2832 display: flex;
2833 }
2834
2835 .monthly-calendar-request-selectors {
2836 display: flex;
2837 align-items: center;
2838
2839 .availability-label {
2840 font-weight: $body-font-weight-bold;
2841 color: $color-faded;
2842 margin-right: 5px;
2843 }
2844 }
2845 }
2846
2847
2848 .cc-availability-toggler {
2849 .os-form-group.os-form-toggler-group {
2850 margin-bottom: 0px;
2851 }
2852
2853
2854 .os-form-group.os-form-toggler-group label {
2855 padding: 5px 10px 6px 0px;
2856 }
2857 }
2858
2859 .calendar-self-w {
2860 .no-results-w {
2861 background-color: #f8fafd;
2862 padding: 40px;
2863 border-radius: 6px;
2864
2865 h2 {
2866 max-width: 500px;
2867 margin: 0px auto;
2868 margin-bottom: 20px;
2869 line-height: 1.4;
2870 }
2871 }
2872 }
2873
2874 // LIST VIEW
2875
2876 .list-upcoming-bookings-w {
2877 .upcoming-bookings-year {
2878 font-size: 80px;
2879 line-height: 82px;
2880 color: rgba(51, 76, 156, 0.07);
2881 font-weight: $body-font-weight-bold;
2882 margin-bottom: -60px;
2883 margin-top: 30px;
2884
2885 &:first-child {
2886 margin-top: -30px;
2887 }
2888 }
2889
2890 .upcoming-bookings-month {
2891 font-weight: $body-font-weight-bold;
2892 color: $brand-primary;
2893 font-size: floor($font-size-base * 2);
2894 margin-bottom: 10px;
2895 margin-top: 20px;
2896 }
2897
2898 .no-upcoming-bookings {
2899 padding: 20px;
2900 color: $color-faded;
2901 font-size: $font-size-base;
2902 margin-bottom: 10px;
2903 background-color: #f7f8fb;
2904 border-radius: 8px;
2905
2906 &:first-child {
2907 margin-top: 20px;
2908 }
2909 }
2910
2911 .upcoming-booking {
2912 margin-top: -1px;
2913 position: relative;
2914 cursor: pointer;
2915 transition: all 0.1s ease;
2916 z-index: 1;
2917 background-color: #fff;
2918 border: 1px solid #ddd;
2919 border-bottom-color: #ccc;
2920 border-radius: $border-radius;
2921
2922 &.is-new-day {
2923 margin-top: 20px;
2924
2925 &:first-child {
2926 margin-top: 0;
2927 }
2928 }
2929
2930 & + .upcoming-booking:not(.is-new-day) {
2931 }
2932
2933 &:hover {
2934 border-color: $brand-primary;
2935 box-shadow: inset 0 0 0 1px $brand-primary;
2936 z-index: 2;
2937
2938 .booking-color-elem {
2939 display: none;
2940 }
2941
2942 .booking-link {
2943 }
2944
2945 .booking-fancy-date .fancy-day {
2946 }
2947 }
2948
2949 .booking-main-info-i {
2950 display: flex;
2951 align-items: center;
2952 padding: 20px 20px;
2953 border-left: 1px solid $border-color-main;
2954 }
2955
2956 .booking-main-info {
2957 display: flex;
2958 align-items: center;
2959 padding: 1px;
2960 }
2961
2962 .booking-service-name {
2963 font-weight: $body-font-weight-bold;
2964 font-size: floor($font-size-base * 1.1);
2965 margin-bottom: 7px;
2966 }
2967
2968 .booking-link {
2969 opacity: 0;
2970 position: absolute;
2971 top: 50%;
2972 transform: translate3d(0px, -50%, 0);
2973 right: 20px;
2974 font-size: 16px;
2975 color: $brand-primary;
2976 transition: all 0.2s ease;
2977 }
2978
2979 .booking-fancy-date {
2980 padding: 15px;
2981 text-align: center;
2982 flex: 0 0 80px;
2983 position: relative;
2984
2985 .fancy-day {
2986 font-size: 32px;
2987 color: $headings-color;
2988 z-index: 2;
2989 position: relative;
2990 }
2991
2992 .fancy-month {
2993 color: $color-faded;
2994 fonts-size: 18px;
2995 z-index: 2;
2996 position: relative;
2997 }
2998 }
2999
3000 .booking-date-i {
3001 display: flex;
3002 align-items: center;
3003 gap: 3px;
3004
3005 .booking-date {
3006 .latepoint-icon {
3007 font-size: 13px;
3008 color: $brand-primary;
3009 margin-right: 5px;
3010 }
3011 }
3012
3013 .booking-time {
3014 color: $brand-primary;
3015 }
3016
3017 .booking-time-left {
3018 .time-left {
3019 font-weight: $body-font-weight-bold;
3020 }
3021 }
3022
3023 .booking-location, .booking-attendees {
3024 border-left: 1px solid $border-color-main;
3025 padding-left: 10px;
3026 margin-left: 10px;
3027
3028 .latepoint-icon {
3029 font-size: 13px;
3030 color: $brand-primary;
3031 margin-right: 5px;
3032 }
3033 }
3034
3035 .booking-attendees {
3036 display: flex;
3037 align-items: center;
3038
3039 .booked-count-label {
3040 }
3041
3042 .booked-percentage {
3043 background-color: #E6E6E6;
3044 border-radius: 2px;
3045 width: 70px;
3046 margin-left: 10px;
3047
3048 .booked-bar {
3049 border-radius: 2px;
3050 background-color: $brand-primary;
3051 height: 8px;
3052 }
3053 }
3054 }
3055
3056 .booking-attendee {
3057 display: flex;
3058 align-items: center;
3059 gap: 5px;
3060
3061 .avatar-w {
3062 width: 20px;
3063 height: 20px;
3064 margin: 0px;
3065 }
3066 }
3067
3068 }
3069
3070 .booking-color-elem {
3071 right: 5px;
3072 top: 5px;
3073 bottom: 5px;
3074 width: 4px;
3075 border-radius: 2px;
3076 position: absolute;
3077 transition: width 0.1s ease;
3078 z-index: 2;
3079 }
3080
3081 .avatar-w {
3082 width: 50px;
3083 height: 50px;
3084 background-size: cover;
3085 border-radius: 50%;
3086 margin-right: 15px;
3087
3088 .agent-info-tooltip {
3089 display: none;
3090
3091 }
3092 }
3093 }
3094 }
3095
3096 .mobile-calendar-actions-trigger {
3097 display: none;
3098 }
3099
3100 .weekly-calendar-agents-list {
3101 display: flex;
3102 align-items: center;
3103 overflow-x: auto;
3104 $tab-border-radius: 6px;
3105 margin-bottom: 15px;
3106 gap: 20px;
3107 box-shadow: inset 0 -1px 0 0 $border-color-lightest;
3108 padding-top: 20px;
3109 font-size: floor($font-size-base * 1.2);
3110
3111 .wc-label {
3112 color: $color-faded;
3113 font-weight: $body-font-weight-bold;
3114 }
3115
3116 .weekly-calendar-agent-selector {
3117 position: relative;
3118 padding-bottom: 10px;
3119 display: flex;
3120 gap: 7px;
3121 align-items: center;
3122 cursor: pointer;
3123 flex: 0;
3124
3125 .agent-avatar {
3126 width: 30px;
3127 height: 30px;
3128 -webkit-background-size: cover;
3129 background-size: cover;
3130 background-repeat: no-repeat;
3131 background-position: center center;
3132 border-radius: 50%;
3133 display: none;
3134 }
3135
3136 .agent-name {
3137 font-weight: $body-font-weight-bold;
3138 white-space: nowrap;
3139 color: $color-faded;
3140 }
3141
3142 &.selected {
3143 &:after {
3144 content: "";
3145 height: 2px;
3146 background-color: $headings-color;
3147 position: absolute;
3148 bottom: 0px;
3149 left: 0;
3150 right: 0;
3151 }
3152
3153 &:hover {
3154 background-color: #fff;
3155 }
3156
3157 .agent-name {
3158 color: $headings-color;
3159 }
3160 }
3161 }
3162 }
3163
3164 .quick-calendar-actions-buttons {
3165 display: flex;
3166 gap: 10px;
3167 }
3168
3169 .quick-calendar-action-toggler {
3170 display: flex;
3171 gap: 15px;
3172 margin-bottom: 20px;
3173
3174 .quick-calendar-action-toggle {
3175 padding: 8px 5px;
3176 border: 1px solid $border-color-strong;
3177 color: $color-faded;
3178 border-radius: 6px;
3179 flex: 1;
3180 text-align: center;
3181 cursor: pointer;
3182
3183 &.selected {
3184 color: $headings-color;
3185 border-color: $brand-primary;
3186 box-shadow: 0 0 0 1px $brand-primary;
3187 }
3188
3189 &:hover:not(.selected) {
3190 border-color: #111;
3191 }
3192 }
3193 }
3194
3195 .quick-calendar-actions-wrapper.showing-settings {
3196 .quick-calendar-actions {
3197 display: none;
3198 }
3199
3200 .quick-calendar-action-settings {
3201 display: block;
3202 }
3203 }
3204
3205 .quick-calendar-action-settings {
3206 display: none;
3207
3208 .ws-period {
3209 animation: none;
3210 }
3211
3212 &.setting-day-off {
3213 .slot-off-reason {
3214 display: none;
3215 }
3216
3217 .quick-calendar-action-settings-slot-off-title {
3218 display: none;
3219 }
3220
3221 .ws-period {
3222 display: none;
3223 }
3224 }
3225
3226 &.setting-slot-off {
3227 .quick-calendar-action-settings-day-off-title {
3228 display: none;
3229 }
3230 }
3231 }
3232
3233 .os-form-group.os-form-group-transparent {
3234 margin-bottom: 15px;
3235 }
3236
3237 .latepoint-message {
3238 font-size: $body-font-size-s;
3239 line-height: 1.4;
3240 }
3241
3242
3243 .quick-calendar-actions {
3244 .quick-calendar-action {
3245 padding: 15px;
3246 border-radius: 6px;
3247 font-size: $body-font-size-m;
3248 display: flex;
3249 gap: 15px;
3250 align-items: center;
3251 position: relative;
3252 color: $headings-color;
3253 border: 1px solid $border-color-main;
3254 border-bottom-color: darken($border-color-main, 10%);
3255 cursor: pointer;
3256
3257 &:hover {
3258 border-color: $brand-primary;
3259 box-shadow: 0 0 0 1px $brand-primary;
3260
3261 &:before {
3262 background-color: #eef5ff;
3263 }
3264
3265 &.quick-calendar-action-day-off {
3266 &:before {
3267 background-color: #ffe1e1;
3268 }
3269 }
3270
3271 i {
3272 color: $brand-primary;
3273 text-shadow: 2px -2px 0px #fff;
3274 transform: scale(1.1);
3275 }
3276
3277 span {
3278 transform: translateX(5px);
3279 }
3280 }
3281
3282 i {
3283 position: relative;
3284 font-size: 18px;
3285 color: $brand-primary;
3286
3287 &.latepoint-icon-cancel {
3288 color: #ea6161;
3289 }
3290 }
3291
3292 span {
3293 }
3294
3295 i, span {
3296 transition: transform 0.15s ease;
3297 display: block;
3298 }
3299
3300 &:before {
3301 content: "";
3302 width: 30px;
3303 height: 30px;
3304 position: absolute;
3305 left: 9px;
3306 top: 10px;
3307 border-radius: 50%;
3308 }
3309
3310 & + .quick-calendar-action {
3311 margin-top: 15px;
3312 }
3313 }
3314 }
3315
3316
3317 .day-action-trigger {
3318 display: none;
3319 width: 20px;
3320 height: 20px;
3321 position: absolute;
3322 top: 0px;
3323 left: 50%;
3324 transform: translate(-50%, -50%);
3325 background-color: $brand-primary;
3326 border-radius: 50%;
3327 box-shadow: 0 0 0 4px #fff;
3328
3329 &.os-loading {
3330 &:after {
3331 display: none;
3332 }
3333
3334 &:before {
3335 width: auto;
3336 height: auto;
3337 @include loading-circle(#fff, 12px);
3338 }
3339 }
3340
3341 &:before {
3342 content: "";
3343 width: 10px;
3344 height: 2px;
3345 background-color: #fff;
3346 display: block;
3347 top: 50%;
3348 left: 50%;
3349 position: absolute;
3350 transform: translate3d(-50%, -50%, 0);
3351 }
3352
3353 &:after {
3354 position: absolute;
3355 content: "";
3356 width: 10px;
3357 height: 2px;
3358 background-color: #fff;
3359 transform: translate3d(-50%, -50%, 0) rotate(90deg);
3360 display: block;
3361 top: 50%;
3362 left: 50%;
3363 }
3364
3365 &:hover {
3366 background-color: lighten($brand-primary, 10%);
3367
3368 &:before, &:after {
3369 background-color: #fff;
3370 }
3371 }
3372 }
3373
3374
3375 .ch-day-blocked-period {
3376 background-image: repeating-linear-gradient(90deg, #ffe8e8, #ffe8e8 2px, #ffadad 2px, #ffadad 3px);
3377 color: #fff;
3378 position: absolute;
3379 left: 0px;
3380 right: 0px;
3381 text-align: left;
3382 z-index: 999;
3383 cursor: pointer;
3384 transition: all 0.2s ease;
3385
3386 &.os-loading {
3387 &:before {
3388 @include loading-circle(#fff, 12px);
3389 left: auto;
3390 right: 0px;
3391 top: 10px;
3392 }
3393 }
3394
3395 .ch-day-blocked-period-i {
3396 visibility: hidden;
3397 background-color: #ed2e2e;
3398 padding: 3px 6px;
3399 }
3400
3401 .blocked-period-summary {
3402 color: #fff;
3403 }
3404
3405 .blocked-period-time {
3406 color: rgba(255, 255, 255, 0.8);
3407 }
3408
3409 &:hover {
3410 background-image: repeating-linear-gradient(90deg, #ffe8e8, #ffe8e8 2px, #ffadad 2px, #ffadad 3px);
3411
3412 .ch-day-blocked-period-i {
3413 visibility: visible;
3414 }
3415 }
3416 }
3417
3418 .quick-calendar-locked-feature {
3419 text-align: center;
3420 padding: 25px;
3421 background: #fffce8;
3422 border-radius: 12px;
3423
3424 h3 {
3425 margin-bottom: 10px;
3426 }
3427
3428 div {
3429 margin-bottom: 20px;
3430 color: $color-faded;
3431 }
3432 }