PluginProbe
Booking Calendar / 11.6.1
Booking Calendar v11.6.1
11.8.3 11.8.2 11.8.1 11.8 11.7 11.6.1 11.6 11.5 11.4.3 11.4.2 11.4.1 11.4 11.3 11.2.1 11.2 11.1 11.0 10.15.7 10.15.6 10.1.3 10.10 10.10.1 10.10.2 10.11 10.11.2 All 203 releases
booking / includes / booking-appointment / _src / booking-appointment.css

booking-appointment.css in Booking Calendar 11.6.1, at includes/booking-appointment/_src/booking-appointment.css

451 lines 14.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 .wpbc_booking_appointment {
2 box-sizing: border-box;
3 margin: 0 auto;
4 max-width: 860px;
5 position: relative;
6 }
7 .wpbc_booking_ui_theme_scope, .wpbc_booking_appointment__loading {
8 --wpbc-appointment-accent: var(--wpbc_form-choice-checked-border-color, #465160);
9 --wpbc-appointment-accent-text: var(--wpbc_form-accent-contrast-color, var(--wpbc_form-button-text-color, #fff));
10 --wpbc-appointment-border: var(--wpbc_form-field-border-color, #dcdcde);
11 --wpbc-appointment-error: var(--wpbc_form-label-error-color, #d63638);
12 --wpbc-appointment-focus: var(--wpbc_form-choice-focus-color, var(--wpbc_form-field-focus-border-color, #465160));
13 --wpbc-appointment-focus-shadow: var(--wpbc_form-field-focus-shadow-color, var(--wpbc-appointment-focus));
14 --wpbc-appointment-muted: var(--wpbc_form-label-sublabel-color, #646970);
15 --wpbc-appointment-surface: var(--wpbc_form-field-background-color, #fff);
16 --wpbc-appointment-surface-text: var(--wpbc_form-field-text-color, #1d2327);
17 --wpbc-appointment-text: var(--wpbc_form-label-color, #1d2327);
18 color: var(--wpbc-appointment-text);
19 }
20 .wpbc_booking_appointment *, .wpbc_booking_appointment *::before, .wpbc_booking_appointment *::after {
21 box-sizing: border-box;
22 }
23 .wpbc_booking_appointment:not([data-appointment-stage="booking"]) > .wpbc_booking_appointment__stage {
24 background: var(--wpbc-bfb-form-background, #fff);
25 border: var(--wpbc-bfb-form-border-width, 1px) solid var(--wpbc-bfb-form-border-color, #ccc);
26 border-radius: var(--wpbc-bfb-form-border-radius, 2px);
27 box-shadow: var(--wpbc-bfb-form-box-shadow, rgba(0, 0, 0, .05) 0 2px 6px 0);
28 padding: var(--wpbc-bfb-form-padding, 10px 30px);
29 }
30 .wpbc_booking_appointment .wpbc_booking_appointment__progress {
31 align-items: start;
32 display: grid;
33 grid-template-columns: repeat(3, minmax(0, 1fr));
34 list-style: none;
35 margin: 0 0 28px;
36 padding: 0;
37 width: 100%;
38 }
39 .wpbc_booking_appointment[data-appointment-stage="booking"] > .wpbc_booking_appointment__stage > .wpbc_booking_appointment__progress {
40 background: var(--wpbc-bfb-form-background, #fff);
41 border: var(--wpbc-bfb-form-border-width, 1px) solid var(--wpbc-bfb-form-border-color, #ccc);
42 border-radius: var(--wpbc-bfb-form-border-radius, 2px);
43 box-shadow: var(--wpbc-bfb-form-box-shadow, rgba(0, 0, 0, .05) 0 2px 6px 0);
44 padding: var(--wpbc-bfb-form-padding, 10px 30px);
45 }
46 .wpbc_booking_appointment .wpbc_booking_appointment__progress_step {
47 align-items: center;
48 color: var(--wpbc-appointment-muted);
49 display: flex;
50 flex-direction: column;
51 font-size: 13px;
52 gap: 7px;
53 line-height: 1.35;
54 min-width: 0;
55 position: relative;
56 text-align: center;
57 margin:0;
58 }
59 .wpbc_booking_appointment .wpbc_booking_appointment__progress_step:not(:last-child)::after {
60 background: var(--wpbc-appointment-border);
61 content: "";
62 height: 1px;
63 left: calc(50% + 15px);
64 position: absolute;
65 right: calc(-50% + 15px);
66 top: 15px;
67 }
68 .wpbc_booking_appointment .wpbc_booking_appointment__progress_step.is-complete::after {
69 background: var(--wpbc-appointment-accent);
70 }
71 .wpbc_booking_appointment .wpbc_booking_appointment__progress_number {
72 align-items: center;
73 background: var(--wpbc-appointment-surface);
74 border: 1px solid var(--wpbc-appointment-border);
75 border-radius: 50%;
76 color: var(--wpbc-appointment-surface-text);
77 display: inline-flex;
78 flex: 0 0 30px;
79 font-weight: 600;
80 height: 30px;
81 justify-content: center;
82 line-height: 1;
83 position: relative;
84 width: 30px;
85 z-index: 1;
86 }
87 .wpbc_booking_appointment .wpbc_booking_appointment__progress_label {
88 display: block;
89 max-width: 100%;
90 }
91 .wpbc_booking_appointment .wpbc_booking_appointment__progress_step.is-active {
92 color: var(--wpbc-appointment-text);
93 font-weight: 600;
94 }
95 .wpbc_booking_appointment .wpbc_booking_appointment__progress_step.is-active .wpbc_booking_appointment__progress_number, .wpbc_booking_appointment .wpbc_booking_appointment__progress_step.is-complete .wpbc_booking_appointment__progress_number {
96 background: var(--wpbc-appointment-accent);
97 border-color: var(--wpbc-appointment-accent);
98 color: var(--wpbc-appointment-accent-text);
99 }
100 .wpbc_booking_appointment__heading {
101 margin: 0 0 18px;
102 }
103 .wpbc_booking_appointment__heading h3 {
104 color: var(--wpbc-appointment-text);
105 font-size: 24px;
106 line-height: 1.25;
107 margin: 0 0 5px;
108 }
109 .wpbc_booking_appointment__heading h3:focus{
110 border-radius: var(--wpbc_form-field-border-radius,8px);
111 box-shadow: 0 0 0 2px var(--wpbc_form-button-focus-inner-color,var(--wpbc-bfb-form-background,var(--wpbc_form-field-background-color,#fff)));
112 outline: 0px dashed var(--wpbc_form-button-focus-outline-color,var(--wpbc_form-field-focus-border-color,var(--wpbc_form-button-background-color,#066aab)));
113 outline-offset: 2px;
114 }
115 .wpbc_booking_appointment__heading p {
116 color: var(--wpbc-appointment-muted);
117 margin: 0;
118 }
119 .wpbc_booking_appointment__choices {
120 display: grid;
121 gap: 10px;
122 grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
123 }
124 .wpbc_booking_appointment__catalog {
125 display: flex;
126 flex-direction: column;
127 gap: 14px;
128 }
129 .wpbc_booking_appointment__catalog_filters {
130 display: grid;
131 gap: 10px;
132 grid-template-columns: minmax(0, 1fr);
133 }
134 .wpbc_booking_appointment__catalog_filters input {
135 background: var(--wpbc-appointment-surface);
136 border: 1px solid var(--wpbc-appointment-border);
137 border-radius: var(--wpbc_form-field-border-radius, 6px);
138 color: var(--wpbc-appointment-surface-text);
139 font: inherit;
140 min-height: 42px;
141 padding: 8px 11px;
142 width: 100%;
143 }
144 .wpbc_booking_appointment__catalog_filters input:focus {
145 border-color: var(--wpbc-appointment-focus);
146 box-shadow: 0 0 0 2px var(--wpbc-appointment-focus-shadow);
147 outline: 0;
148 }
149 .wpbc_booking_appointment__catalog--list .wpbc_booking_appointment__catalog_items {
150 grid-template-columns: minmax(0, 1fr);
151 }
152 .wpbc_booking_appointment__catalog--explicit-columns .wpbc_booking_appointment__catalog_items {
153 grid-template-columns: repeat(var(--wpbc-appointment-catalog-items-per-row), minmax(0, 1fr));
154 }
155 .wpbc_booking_appointment__catalog--explicit-item-width .wpbc_booking_appointment__catalog_items {
156 grid-template-columns: repeat(auto-fill, minmax(0, var(--wpbc-appointment-catalog-item-track-width)));
157 justify-content: start;
158 }
159 .wpbc_booking_appointment__catalog--explicit-item-width .wpbc_booking_appointment__catalog_card {
160 width: 100%;
161 }
162 .wpbc_booking_appointment__catalog--bounded .wpbc_booking_appointment__catalog_items {
163 justify-items: start;
164 }
165 .wpbc_booking_appointment__catalog--bounded .wpbc_booking_appointment__catalog_card {
166 max-width: var(--wpbc-appointment-catalog-item-max-width);
167 width: 100%;
168 }
169 .wpbc_booking_appointment__catalog--grid .wpbc_booking_appointment__catalog_card {
170 align-items: stretch;
171 flex-direction: column;
172 min-height: 260px;
173 max-width: Min( 400px, 100% );
174 }
175 .wpbc_booking_appointment__catalog--grid.wpbc_booking_appointment__catalog--without-images .wpbc_booking_appointment__catalog_card {
176 min-height: 150px;
177 }
178 .wpbc_booking_appointment__catalog--grid .wpbc_booking_appointment__catalog_card--without-image {
179 min-height: 150px;
180 }
181 .wpbc_booking_appointment__catalog--grid .wpbc_booking_appointment__service_image,
182 .wpbc_booking_appointment__catalog--grid .wpbc_booking_appointment__provider_avatar {
183 border-radius: calc(var(--wpbc_form-field-border-radius, 8px) - 2px);
184 flex-basis: 150px;
185 font-size: 24px;
186 height: 150px;
187 width: 100%;
188 }
189 .wpbc_booking_appointment__catalog--grid .wpbc_booking_appointment__choice_mark {
190 background: var(--wpbc-appointment-surface);
191 inset-block-start: 25px;
192 inset-inline-end: 25px;
193 position: absolute;
194 }
195 .wpbc_booking_appointment__catalog--grid .wpbc_booking_appointment__choice_body {
196 flex: 1 1 auto;
197 }
198 .wpbc_booking_appointment__catalog_empty {
199 color: var(--wpbc-appointment-muted);
200 margin: 0;
201 padding: 12px 0;
202 }
203 .wpbc_booking_appointment__choice {
204 align-items: center;
205 background: var(--wpbc-appointment-surface);
206 border: 1px solid var(--wpbc-appointment-border);
207 border-radius: var(--wpbc_form-field-border-radius, 8px);
208 color: var(--wpbc-appointment-surface-text);
209 cursor: pointer;
210 display: flex;
211 gap: 12px;
212 min-height: 86px;
213 padding: 15px 16px;
214 position: relative;
215 transition: border-color .15s ease, box-shadow .15s ease;
216 }
217 .wpbc_booking_appointment__catalog [hidden] {
218 display: none !important;
219 }
220 .wpbc_booking_appointment__choice:hover {
221 border-color: var(--wpbc_form-field-focus-border-color, var(--wpbc-appointment-focus));
222 }
223 .wpbc_booking_appointment__choice:focus-within {
224 box-shadow: 0 0 0 2px var(--wpbc-appointment-focus-shadow);
225 outline: none;
226 }
227 .wpbc_booking_appointment__choice > input {
228 opacity: 0;
229 pointer-events: none;
230 position: absolute;
231 }
232 .wpbc_booking_appointment__choice:has(input:checked), .wpbc_booking_appointment__choice.is-selected {
233 border-color: var(--wpbc-appointment-accent);
234 box-shadow: inset 3px 0 0 var(--wpbc-appointment-accent);
235 }
236 .wpbc_booking_appointment__choice_body {
237 display: flex;
238 flex: 1;
239 flex-direction: column;
240 min-width: 0;
241 }
242 .wpbc_booking_appointment__choice_body strong {
243 color: var(--wpbc-appointment-surface-text);
244 font-size: 16px;
245 line-height: 1.3;
246 }
247 .wpbc_booking_appointment__choice_meta, .wpbc_booking_appointment__choice_description {
248 color: var(--wpbc-appointment-muted);
249 font-size: 13px;
250 line-height: 1.4;
251 margin-top: 3px;
252 }
253 .wpbc_booking_appointment__choice_mark {
254 border: 2px solid var(--wpbc-appointment-border);
255 border-radius: 50%;
256 flex: 0 0 auto;
257 height: 18px;
258 width: 18px;
259 }
260 .wpbc_booking_appointment__choice input:checked ~ .wpbc_booking_appointment__choice_mark {
261 border: 5px solid var(--wpbc-appointment-accent);
262 }
263 .wpbc_booking_appointment__service_image {
264 background: var(--wpbc_form-field-background-color, var(--wpbc-appointment-surface));
265 box-sizing: border-box;
266 display: block;
267 flex: 0 0 54px;
268 height: 54px;
269 overflow: hidden;
270 width: 54px;
271 border-radius: 50%;
272 border: 2px solid var(--wpbc_form-field-background-color, var(--wpbc-appointment-surface));
273 outline: 1px solid var(--wpbc-appointment-border);
274 }
275 .wpbc_booking_appointment__service_image img {
276 display: block;
277 height: 100%;
278 object-fit: cover;
279 width: 100%;
280 }
281 .wpbc_booking_appointment__provider_avatar {
282 align-items: center;
283 background: var(--wpbc-appointment-provider-avatar-background, var(--wpbc_form-button-light-background-color, #eef0ff));
284 border: 1px solid var(--wpbc-appointment-provider-avatar-border-color, var(--wpbc_form-button-light-border-color, var(--wpbc-appointment-border)));
285 border-radius: 50%;
286 color: var(--wpbc-appointment-provider-avatar-text-color, var(--wpbc_form-button-light-text-color, #3044a5));
287 display: inline-flex;
288 flex: 0 0 44px;
289 font-weight: 600;
290 height: 44px;
291 justify-content: center;
292 overflow: hidden;
293 width: 44px;
294 }
295 .wpbc_booking_appointment__provider_avatar img {
296 display: block;
297 height: 100%;
298 object-fit: cover;
299 width: 100%;
300 }
301 .wpbc_booking_appointment__actions {
302 display: flex;
303 gap: 10px;
304 justify-content: flex-end;
305 margin-top: 20px;
306 }
307 .wpbc_booking_appointment__selected, .wpbc_booking_appointment__booking_header {
308 background: var(--wpbc-appointment-surface);
309 background-color: color-mix(in srgb, var(--wpbc-bfb-form-background) 90%, transparent);
310 border: 1px solid var(--wpbc-appointment-border);
311 border-radius: var(--wpbc-bfb-form-border-radius, 7px);
312 color: var(--wpbc-appointment-surface-text);
313 display: flex;
314 margin-bottom: 22px;
315 padding: 13px 16px;
316 }
317 .wpbc_booking_appointment__selected {
318 align-items: baseline;
319 flex-wrap: wrap;
320 gap: 7px 12px;
321 }
322 .wpbc_booking_appointment__selected > span, .wpbc_booking_appointment__booking_header_content > span {
323 color: var(--wpbc-appointment-muted);
324 font-size: 12px;
325 text-transform: uppercase;
326 }
327 .wpbc_booking_appointment__selected small, .wpbc_booking_appointment__booking_header small {
328 color: var(--wpbc-appointment-muted);
329 }
330 .wpbc_booking_appointment__booking_header {
331 align-items: center;
332 gap: 16px 24px;
333 justify-content: flex-start;
334 }
335 .wpbc_booking_appointment__booking_header_content {
336 display: flex;
337 flex: 1 1 auto;
338 flex-direction: column;
339 min-width: 0;
340 }
341 .wpbc_booking_appointment__booking_header_image {
342 flex: 0 0 54px;
343 }
344 .wpbc_booking_appointment__booking_header .wpbc_booking_appointment__change {
345 margin-inline-start: auto;
346 }
347 .wpbc_booking_appointment__selected strong, .wpbc_booking_appointment__booking_header strong {
348 color: var(--wpbc-appointment-surface-text);
349 }
350 .wpbc_booking_appointment__booking_header strong {
351 font-size: 18px;
352 margin: 2px 0;
353 }
354 .wpbc_booking_appointment__notice, .wpbc_booking_appointment__ajax_notice {
355 background: var(--wpbc-appointment-surface);
356 border: 1px solid var(--wpbc-appointment-error);
357 border-left-width: 4px;
358 border-radius: var(--wpbc_form-field-border-radius, 4px);
359 color: var(--wpbc-appointment-error);
360 padding: 12px 14px;
361 }
362 .wpbc_booking_appointment__notice--empty {
363 border-color: var(--wpbc-appointment-focus);
364 color: var(--wpbc-appointment-text);
365 }
366 .wpbc_booking_appointment__ajax_notice {
367 margin-top: 12px;
368 }
369 .wpbc_booking_appointment__notice_action {
370 color: inherit;
371 font-weight: 600;
372 text-decoration: underline;
373 text-underline-offset: 2px;
374 }
375 .wpbc_booking_appointment__notice_action:focus,
376 .wpbc_booking_appointment__notice_action:hover {
377 color: inherit;
378 text-decoration-thickness: 2px;
379 }
380 .wpbc_booking_appointment__loading {
381 align-items: center;
382 background: var(--wpbc-appointment-surface);
383 background-color: color-mix(in srgb, var(--wpbc-appointment-surface) 98%, transparent);
384 color: var(--wpbc-appointment-surface-text);
385 inset: 0;
386 justify-content: center;
387 position: absolute;
388 z-index: 9999;
389 }
390 .wpbc_booking_appointment__loading:not([hidden]) {
391 display: flex;
392 }
393 .wpbc_booking_appointment__spinner {
394 animation: wpbc-appointment-spin .8s linear infinite;
395 border: 2px solid var(--wpbc-appointment-border);
396 border-radius: 50%;
397 border-top-color: var(--wpbc-appointment-accent);
398 height: 22px;
399 margin-right: 9px;
400 width: 22px;
401 }
402 .wpbc_booking_appointment__fixed_duration_field {
403 display: none !important;
404 }
405 .wpbc_booking_appointment .wpbc_booking_appointment__time_notice {
406 display: flex;
407 gap: 7px;
408 margin: 10px 0 0;
409 max-width: 100%;
410 }
411 .wpbc_booking_appointment .wpbc_booking_appointment__time_notice .menu_icon {
412 flex: 0 0 auto;
413 }
414 @keyframes wpbc-appointment-spin {
415 to {
416 transform: rotate(360deg);
417 }
418 }
419 @media (max-width: 600px) {
420 .wpbc_booking_appointment__booking_header {
421 align-items: flex-start;
422 flex-wrap: wrap;
423 gap: 12px 16px;
424 }
425 .wpbc_booking_appointment__booking_header_image {
426 flex-basis: 48px;
427 height: 48px;
428 width: 48px;
429 }
430 .wpbc_booking_appointment__booking_header .wpbc_booking_appointment__change {
431 flex: 1 0 100%;
432 margin-inline-start: 0;
433 text-align: center;
434 }
435 .wpbc_booking_appointment .wpbc_booking_appointment__progress {
436 margin-bottom: 22px;
437 }
438 .wpbc_booking_appointment .wpbc_booking_appointment__progress_step {
439 font-size: 12px;
440 gap: 5px;
441 }
442 .wpbc_booking_appointment__choices,
443 .wpbc_booking_appointment__catalog--explicit-columns .wpbc_booking_appointment__catalog_items,
444 .wpbc_booking_appointment__catalog--explicit-item-width .wpbc_booking_appointment__catalog_items {
445 grid-template-columns: 1fr;
446 }
447 .wpbc_booking_appointment__catalog--bounded .wpbc_booking_appointment__catalog_card {
448 max-width: none;
449 }
450 }
451