PluginProbe
Booking Calendar / 11.5
Booking Calendar v11.5
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-resource-selector / _src / booking-resource-selector.css

booking-resource-selector.css in Booking Calendar 11.5, at includes/booking-resource-selector/_src/booking-resource-selector.css

300 lines 9.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 .wpbc_booking_resource_selector {
2 box-sizing: border-box;
3 margin: 0 auto;
4 max-width: 860px;
5 position: relative;
6 }
7 .wpbc_booking_resource_selector .wpbc_booking_ui_theme_scope,
8 .wpbc_booking_resource_selector__loading {
9 --wpbc-resource-selector-accent: var(--wpbc_form-choice-checked-border-color, #465160);
10 --wpbc-resource-selector-accent-text: var(--wpbc_form-accent-contrast-color, var(--wpbc_form-button-text-color, #fff));
11 --wpbc-resource-selector-border: var(--wpbc_form-field-border-color, #dcdcde);
12 --wpbc-resource-selector-error: var(--wpbc_form-label-error-color, #d63638);
13 --wpbc-resource-selector-focus: var(--wpbc_form-choice-focus-color, var(--wpbc_form-field-focus-border-color, #465160));
14 --wpbc-resource-selector-muted: var(--wpbc_form-label-sublabel-color, #646970);
15 --wpbc-resource-selector-surface: var(--wpbc_form-field-background-color, #fff);
16 --wpbc-resource-selector-surface-text: var(--wpbc_form-field-text-color, #1d2327);
17 --wpbc-resource-selector-text: var(--wpbc_form-label-color, #1d2327);
18 color: var(--wpbc-resource-selector-text);
19 }
20 .wpbc_booking_resource_selector *,
21 .wpbc_booking_resource_selector *::before,
22 .wpbc_booking_resource_selector *::after {
23 box-sizing: border-box;
24 }
25 .wpbc_booking_resource_selector:not([data-resource-selector-stage="booking"]) > .wpbc_booking_resource_selector__stage {
26 background: var(--wpbc-bfb-form-background, #fff);
27 border: var(--wpbc-bfb-form-border-width, 1px) solid var(--wpbc-bfb-form-border-color, #ccc);
28 border-radius: var(--wpbc-bfb-form-border-radius, 2px);
29 box-shadow: var(--wpbc-bfb-form-box-shadow, rgba(0, 0, 0, .05) 0 2px 6px 0);
30 padding: var(--wpbc-bfb-form-padding, 10px 30px);
31 }
32 .wpbc_booking_resource_selector__progress {
33 align-items: start;
34 display: grid;
35 grid-template-columns: repeat(2, minmax(0, 1fr));
36 list-style: none;
37 margin: 0 0 28px;
38 padding: 0;
39 width: 100%;
40 }
41 .wpbc_booking_resource_selector[data-resource-selector-stage="booking"] > .wpbc_booking_resource_selector__stage > .wpbc_booking_resource_selector__progress {
42 background: var(--wpbc-bfb-form-background, #fff);
43 border: var(--wpbc-bfb-form-border-width, 1px) solid var(--wpbc-bfb-form-border-color, #ccc);
44 border-radius: var(--wpbc-bfb-form-border-radius, 2px);
45 box-shadow: var(--wpbc-bfb-form-box-shadow, rgba(0, 0, 0, .05) 0 2px 6px 0);
46 padding: var(--wpbc-bfb-form-padding, 10px 30px);
47 }
48 .wpbc_booking_resource_selector__progress_step {
49 align-items: center;
50 color: var(--wpbc-resource-selector-muted);
51 display: flex;
52 flex-direction: column;
53 font-size: 13px;
54 gap: 7px;
55 line-height: 1.35;
56 min-width: 0;
57 position: relative;
58 text-align: center;
59 }
60 .wpbc_booking_resource_selector__progress_step:not(:last-child)::after {
61 background: var(--wpbc-resource-selector-border);
62 content: "";
63 height: 1px;
64 left: calc(50% + 15px);
65 position: absolute;
66 right: calc(-50% + 15px);
67 top: 15px;
68 }
69 .wpbc_booking_resource_selector__progress_step.is-complete::after {
70 background: var(--wpbc-resource-selector-accent);
71 }
72 .wpbc_booking_resource_selector__progress_number {
73 align-items: center;
74 background: var(--wpbc-resource-selector-surface);
75 border: 1px solid var(--wpbc-resource-selector-border);
76 border-radius: 50%;
77 color: var(--wpbc-resource-selector-surface-text);
78 display: inline-flex;
79 flex: 0 0 30px;
80 font-weight: 600;
81 height: 30px;
82 justify-content: center;
83 line-height: 1;
84 position: relative;
85 width: 30px;
86 z-index: 1;
87 }
88 .wpbc_booking_resource_selector__progress_step.is-active {
89 color: var(--wpbc-resource-selector-text);
90 font-weight: 600;
91 }
92 .wpbc_booking_resource_selector__progress_step.is-active .wpbc_booking_resource_selector__progress_number,
93 .wpbc_booking_resource_selector__progress_step.is-complete .wpbc_booking_resource_selector__progress_number {
94 background: var(--wpbc-resource-selector-accent);
95 border-color: var(--wpbc-resource-selector-accent);
96 color: var(--wpbc-resource-selector-accent-text);
97 }
98 .wpbc_booking_resource_selector__heading {
99 margin: 0 0 18px;
100 }
101 .wpbc_booking_resource_selector__heading h3 {
102 color: var(--wpbc-resource-selector-text);
103 font-size: 24px;
104 line-height: 1.25;
105 margin: 0 0 5px;
106 }
107 .wpbc_booking_resource_selector__heading h3:focus {
108 border-radius: var(--wpbc_form-field-border-radius, 8px);
109 box-shadow: 0 0 0 2px var(--wpbc_form-field-focus-shadow-color, var(--wpbc-resource-selector-focus));
110 outline: 0;
111 }
112 .wpbc_booking_resource_selector__heading p {
113 color: var(--wpbc-resource-selector-muted);
114 margin: 0;
115 }
116 .wpbc_booking_resource_selector__choices {
117 display: grid;
118 gap: 10px;
119 grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
120 }
121 .wpbc_booking_resource_selector__choice {
122 align-items: center;
123 background: var(--wpbc-resource-selector-surface);
124 border: 1px solid var(--wpbc-resource-selector-border);
125 border-radius: var(--wpbc_form-field-border-radius, 8px);
126 color: var(--wpbc-resource-selector-surface-text);
127 cursor: pointer;
128 display: flex;
129 gap: 12px;
130 min-height: 86px;
131 padding: 15px 16px;
132 position: relative;
133 transition: border-color .15s ease, box-shadow .15s ease;
134 }
135 .wpbc_booking_resource_selector__choice:hover {
136 border-color: var(--wpbc-resource-selector-focus);
137 }
138 .wpbc_booking_resource_selector__choice:focus-within {
139 box-shadow: 0 0 0 2px var(--wpbc_form-field-focus-shadow-color, var(--wpbc-resource-selector-focus));
140 outline: none;
141 }
142 .wpbc_booking_resource_selector__choice > input {
143 opacity: 0;
144 pointer-events: none;
145 position: absolute;
146 }
147 .wpbc_booking_resource_selector__choice:has(input:checked),
148 .wpbc_booking_resource_selector__choice.is-selected {
149 border-color: var(--wpbc-resource-selector-accent);
150 box-shadow: inset 3px 0 0 var(--wpbc-resource-selector-accent);
151 }
152 .wpbc_booking_resource_selector__choice_body {
153 display: flex;
154 flex: 1;
155 flex-direction: column;
156 min-width: 0;
157 }
158 .wpbc_booking_resource_selector__choice_body strong {
159 color: var(--wpbc-resource-selector-surface-text);
160 font-size: 16px;
161 line-height: 1.3;
162 }
163 .wpbc_booking_resource_selector__choice_description {
164 color: var(--wpbc-resource-selector-muted);
165 font-size: 13px;
166 line-height: 1.4;
167 margin-top: 3px;
168 }
169 .wpbc_booking_resource_selector__resource_icon {
170 align-items: center;
171 background: var(--wpbc_form-button-light-background-color, #eef0ff);
172 border: 1px solid var(--wpbc_form-button-light-border-color, var(--wpbc-resource-selector-border));
173 border-radius: 50%;
174 color: var(--wpbc_form-button-light-text-color, #3044a5);
175 display: inline-flex;
176 flex: 0 0 44px;
177 font-size: 12px;
178 font-weight: 700;
179 height: 44px;
180 justify-content: center;
181 overflow: hidden;
182 width: 44px;
183 }
184 .wpbc_booking_resource_selector__resource_icon img {
185 height: 100%;
186 object-fit: cover;
187 width: 100%;
188 }
189 .wpbc_booking_resource_selector__choice_mark {
190 border: 2px solid var(--wpbc-resource-selector-border);
191 border-radius: 50%;
192 flex: 0 0 auto;
193 height: 18px;
194 width: 18px;
195 }
196 .wpbc_booking_resource_selector__choice input:checked ~ .wpbc_booking_resource_selector__choice_mark {
197 border: 5px solid var(--wpbc-resource-selector-accent);
198 }
199 .wpbc_booking_resource_selector__actions {
200 display: flex;
201 gap: 10px;
202 justify-content: flex-end;
203 margin-top: 20px;
204 }
205 .wpbc_booking_resource_selector__booking_header {
206 align-items: center;
207 background: var(--wpbc-resource-selector-surface);
208 border: 1px solid var(--wpbc-resource-selector-border);
209 border-radius: var(--wpbc-bfb-form-border-radius, 7px);
210 color: var(--wpbc-resource-selector-surface-text);
211 display: flex;
212 justify-content: space-between;
213 margin-bottom: 22px;
214 padding: 13px 16px;
215 }
216 .wpbc_booking_resource_selector__booking_header > div {
217 display: flex;
218 flex-direction: column;
219 gap: 3px;
220 }
221 .wpbc_booking_resource_selector__booking_header span {
222 color: var(--wpbc-resource-selector-muted);
223 font-size: 12px;
224 text-transform: uppercase;
225 }
226 .wpbc_booking_resource_selector__notice,
227 .wpbc_booking_resource_selector__ajax_notice {
228 background: #fcf0f1;
229 border-left: 4px solid var(--wpbc-resource-selector-error);
230 color: var(--wpbc-resource-selector-text);
231 padding: 12px 14px;
232 }
233 .wpbc_booking_resource_selector__notice--empty {
234 background: #f0f6fc;
235 border-left-color: #72aee6;
236 }
237 .wpbc_booking_resource_selector__ajax_notice {
238 margin-top: 12px;
239 }
240 .wpbc_booking_resource_selector__loading {
241 align-items: center;
242 background: rgba(255, 255, 255, .92);
243 border: 1px solid var(--wpbc-resource-selector-border);
244 border-radius: 6px;
245 box-shadow: 0 1px 3px rgba(0, 0, 0, .08);
246 display: flex;
247 gap: 10px;
248 left: 50%;
249 padding: 10px 14px;
250 position: absolute;
251 top: 22px;
252 transform: translateX(-50%);
253 z-index: 20;
254 }
255 .wpbc_booking_resource_selector__loading[hidden] {
256 display: none;
257 }
258 .wpbc_booking_resource_selector__spinner {
259 animation: wpbc-resource-selector-spin .8s linear infinite;
260 border: 2px solid var(--wpbc-resource-selector-border);
261 border-radius: 50%;
262 border-top-color: var(--wpbc-resource-selector-accent);
263 height: 18px;
264 width: 18px;
265 }
266 .wpbc_booking_resource_selector.is-loading > .wpbc_booking_resource_selector__stage {
267 opacity: .55;
268 pointer-events: none;
269 }
270 @keyframes wpbc-resource-selector-spin {
271 to {
272 transform: rotate(360deg);
273 }
274 }
275 @media (max-width: 600px) {
276 .wpbc_booking_resource_selector:not([data-resource-selector-stage="booking"]) > .wpbc_booking_resource_selector__stage,
277 .wpbc_booking_resource_selector[data-resource-selector-stage="booking"] > .wpbc_booking_resource_selector__stage > .wpbc_booking_resource_selector__progress {
278 padding: 16px;
279 }
280 .wpbc_booking_resource_selector__booking_header {
281 align-items: flex-start;
282 flex-direction: column;
283 gap: 12px;
284 }
285 .wpbc_booking_resource_selector__actions {
286 justify-content: stretch;
287 }
288 .wpbc_booking_resource_selector__actions .wpbc_button {
289 width: 100%;
290 }
291 }
292 @media (prefers-reduced-motion: reduce) {
293 .wpbc_booking_resource_selector__choice {
294 transition: none;
295 }
296 .wpbc_booking_resource_selector__spinner {
297 animation-duration: 1.6s;
298 }
299 }
300