PluginProbe
Booking Calendar / 11.6
Booking Calendar v11.6
11.9 11.8.4 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 All 205 releases
booking / includes / booking-appointment / _src / booking-appointment.css

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

340 lines 11.1 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__choice {
125 align-items: center;
126 background: var(--wpbc-appointment-surface);
127 border: 1px solid var(--wpbc-appointment-border);
128 border-radius: var(--wpbc_form-field-border-radius, 8px);
129 color: var(--wpbc-appointment-surface-text);
130 cursor: pointer;
131 display: flex;
132 gap: 12px;
133 min-height: 86px;
134 padding: 15px 16px;
135 position: relative;
136 transition: border-color .15s ease, box-shadow .15s ease;
137 }
138 .wpbc_booking_appointment__choice:hover {
139 border-color: var(--wpbc_form-field-focus-border-color, var(--wpbc-appointment-focus));
140 }
141 .wpbc_booking_appointment__choice:focus-within {
142 box-shadow: 0 0 0 2px var(--wpbc-appointment-focus-shadow);
143 outline: none;
144 }
145 .wpbc_booking_appointment__choice > input {
146 opacity: 0;
147 pointer-events: none;
148 position: absolute;
149 }
150 .wpbc_booking_appointment__choice:has(input:checked), .wpbc_booking_appointment__choice.is-selected {
151 border-color: var(--wpbc-appointment-accent);
152 box-shadow: inset 3px 0 0 var(--wpbc-appointment-accent);
153 }
154 .wpbc_booking_appointment__choice_body {
155 display: flex;
156 flex: 1;
157 flex-direction: column;
158 min-width: 0;
159 }
160 .wpbc_booking_appointment__choice_body strong {
161 color: var(--wpbc-appointment-surface-text);
162 font-size: 16px;
163 line-height: 1.3;
164 }
165 .wpbc_booking_appointment__choice_meta, .wpbc_booking_appointment__choice_description {
166 color: var(--wpbc-appointment-muted);
167 font-size: 13px;
168 line-height: 1.4;
169 margin-top: 3px;
170 }
171 .wpbc_booking_appointment__choice_mark {
172 border: 2px solid var(--wpbc-appointment-border);
173 border-radius: 50%;
174 flex: 0 0 auto;
175 height: 18px;
176 width: 18px;
177 }
178 .wpbc_booking_appointment__choice input:checked ~ .wpbc_booking_appointment__choice_mark {
179 border: 5px solid var(--wpbc-appointment-accent);
180 }
181 .wpbc_booking_appointment__service_image {
182 background: var(--wpbc_form-field-background-color, var(--wpbc-appointment-surface));
183 box-sizing: border-box;
184 display: block;
185 flex: 0 0 54px;
186 height: 54px;
187 overflow: hidden;
188 width: 54px;
189 border-radius: 50%;
190 border: 2px solid var(--wpbc_form-field-background-color, var(--wpbc-appointment-surface));
191 outline: 1px solid var(--wpbc-appointment-border);
192 }
193 .wpbc_booking_appointment__service_image img {
194 display: block;
195 height: 100%;
196 object-fit: cover;
197 width: 100%;
198 }
199 .wpbc_booking_appointment__provider_avatar {
200 align-items: center;
201 background: var(--wpbc-appointment-provider-avatar-background, var(--wpbc_form-button-light-background-color, #eef0ff));
202 border: 1px solid var(--wpbc-appointment-provider-avatar-border-color, var(--wpbc_form-button-light-border-color, var(--wpbc-appointment-border)));
203 border-radius: 50%;
204 color: var(--wpbc-appointment-provider-avatar-text-color, var(--wpbc_form-button-light-text-color, #3044a5));
205 display: inline-flex;
206 flex: 0 0 44px;
207 font-weight: 600;
208 height: 44px;
209 justify-content: center;
210 overflow: hidden;
211 width: 44px;
212 }
213 .wpbc_booking_appointment__provider_avatar img {
214 display: block;
215 height: 100%;
216 object-fit: cover;
217 width: 100%;
218 }
219 .wpbc_booking_appointment__actions {
220 display: flex;
221 gap: 10px;
222 justify-content: flex-end;
223 margin-top: 20px;
224 }
225 .wpbc_booking_appointment__selected, .wpbc_booking_appointment__booking_header {
226 background: var(--wpbc-appointment-surface);
227 background-color: color-mix(in srgb, var(--wpbc-bfb-form-background) 90%, transparent);
228 border: 1px solid var(--wpbc-appointment-border);
229 border-radius: var(--wpbc-bfb-form-border-radius, 7px);
230 color: var(--wpbc-appointment-surface-text);
231 display: flex;
232 margin-bottom: 22px;
233 padding: 13px 16px;
234 }
235 .wpbc_booking_appointment__selected {
236 align-items: baseline;
237 flex-wrap: wrap;
238 gap: 7px 12px;
239 }
240 .wpbc_booking_appointment__selected > span, .wpbc_booking_appointment__booking_header span {
241 color: var(--wpbc-appointment-muted);
242 font-size: 12px;
243 text-transform: uppercase;
244 }
245 .wpbc_booking_appointment__selected small, .wpbc_booking_appointment__booking_header small {
246 color: var(--wpbc-appointment-muted);
247 }
248 .wpbc_booking_appointment__booking_header {
249 align-items: center;
250 justify-content: space-between;
251 }
252 .wpbc_booking_appointment__booking_header > div {
253 display: flex;
254 flex-direction: column;
255 }
256 .wpbc_booking_appointment__selected strong, .wpbc_booking_appointment__booking_header strong {
257 color: var(--wpbc-appointment-surface-text);
258 }
259 .wpbc_booking_appointment__booking_header strong {
260 font-size: 18px;
261 margin: 2px 0;
262 }
263 .wpbc_booking_appointment__notice, .wpbc_booking_appointment__ajax_notice {
264 background: var(--wpbc-appointment-surface);
265 border: 1px solid var(--wpbc-appointment-error);
266 border-left-width: 4px;
267 border-radius: var(--wpbc_form-field-border-radius, 4px);
268 color: var(--wpbc-appointment-error);
269 padding: 12px 14px;
270 }
271 .wpbc_booking_appointment__notice--empty {
272 border-color: var(--wpbc-appointment-focus);
273 color: var(--wpbc-appointment-text);
274 }
275 .wpbc_booking_appointment__ajax_notice {
276 margin-top: 12px;
277 }
278 .wpbc_booking_appointment__notice_action {
279 color: inherit;
280 font-weight: 600;
281 text-decoration: underline;
282 text-underline-offset: 2px;
283 }
284 .wpbc_booking_appointment__notice_action:focus,
285 .wpbc_booking_appointment__notice_action:hover {
286 color: inherit;
287 text-decoration-thickness: 2px;
288 }
289 .wpbc_booking_appointment__loading {
290 align-items: center;
291 background: var(--wpbc-appointment-surface);
292 background-color: color-mix(in srgb, var(--wpbc-appointment-surface) 98%, transparent);
293 color: var(--wpbc-appointment-surface-text);
294 inset: 0;
295 justify-content: center;
296 position: absolute;
297 z-index: 9999;
298 }
299 .wpbc_booking_appointment__loading:not([hidden]) {
300 display: flex;
301 }
302 .wpbc_booking_appointment__spinner {
303 animation: wpbc-appointment-spin .8s linear infinite;
304 border: 2px solid var(--wpbc-appointment-border);
305 border-radius: 50%;
306 border-top-color: var(--wpbc-appointment-accent);
307 height: 22px;
308 margin-right: 9px;
309 width: 22px;
310 }
311 .wpbc_booking_appointment__fixed_duration_field {
312 display: none !important;
313 }
314 .wpbc_booking_appointment .wpbc_booking_appointment__time_notice {
315 display: flex;
316 gap: 7px;
317 margin: 10px 0 0;
318 max-width: 100%;
319 }
320 .wpbc_booking_appointment .wpbc_booking_appointment__time_notice .menu_icon {
321 flex: 0 0 auto;
322 }
323 @keyframes wpbc-appointment-spin {
324 to {
325 transform: rotate(360deg);
326 }
327 }
328 @media (max-width: 600px) {
329 .wpbc_booking_appointment .wpbc_booking_appointment__progress {
330 margin-bottom: 22px;
331 }
332 .wpbc_booking_appointment .wpbc_booking_appointment__progress_step {
333 font-size: 12px;
334 gap: 5px;
335 }
336 .wpbc_booking_appointment__choices {
337 grid-template-columns: 1fr;
338 }
339 }
340