1 | .color-calendar {
|
2 | position: relative;
|
3 | display: inline-flex;
|
4 | flex-direction: column;
|
5 | width: auto;
|
6 | height: auto;
|
7 | box-sizing: border-box;
|
8 | -webkit-user-select: none;
|
9 | -moz-user-select: none;
|
10 | -ms-user-select: none;
|
11 | user-select: none;
|
12 | overflow: hidden;
|
13 | font-family: var(--cal-font-family-body);
|
14 | font-size: 1rem; }
|
15 |
|
16 | .color-calendar .calendar__header {
|
17 | position: relative;
|
18 | display: grid;
|
19 | grid-template-columns: repeat(7, minmax(20px, 55px));
|
20 | font-family: var(--cal-font-family-header); }
|
21 |
|
22 | .color-calendar .calendar__monthyear {
|
23 | font-size: 1.5rem;
|
24 | margin: 0 auto;
|
25 | text-align: center;
|
26 | grid-column: 2 / span 5;
|
27 | display: flex;
|
28 | align-items: center;
|
29 | justify-content: center; }
|
30 | .color-calendar .calendar__monthyear .calendar__month {
|
31 | cursor: pointer; }
|
32 | .color-calendar .calendar__monthyear .calendar__year {
|
33 | cursor: pointer; }
|
34 |
|
35 | .color-calendar .calendar__arrow {
|
36 | height: 35px;
|
37 | width: 100%;
|
38 | position: relative;
|
39 | -webkit-touch-callout: none;
|
40 | -webkit-user-select: none;
|
41 | -moz-user-select: none;
|
42 | -ms-user-select: none;
|
43 | user-select: none;
|
44 | -webkit-tap-highlight-color: transparent;
|
45 | z-index: 101;
|
46 | display: flex;
|
47 | align-items: center;
|
48 | justify-content: center; }
|
49 | .color-calendar .calendar__arrow-inner {
|
50 | width: 35px;
|
51 | height: 35px;
|
52 | position: relative;
|
53 | cursor: pointer;
|
54 | display: flex;
|
55 | align-items: center;
|
56 | justify-content: center; }
|
57 | .color-calendar .calendar__arrow-prev {
|
58 | position: relative;
|
59 | display: flex;
|
60 | align-items: center;
|
61 | justify-content: center; }
|
62 | .color-calendar .calendar__arrow-prev .calendar__arrow-inner::before {
|
63 | margin-left: 0.3em;
|
64 | transform: rotate(-135deg); }
|
65 | .color-calendar .calendar__arrow-next {
|
66 | position: relative;
|
67 | display: flex;
|
68 | align-items: center;
|
69 | justify-content: center; }
|
70 | .color-calendar .calendar__arrow-next .calendar__arrow-inner::before {
|
71 | margin-right: 0.3em;
|
72 | transform: rotate(45deg); }
|
73 |
|
74 | .color-calendar .calendar__body {
|
75 | height: auto;
|
76 | overflow: hidden; }
|
77 |
|
78 | .color-calendar .calendar__weekdays {
|
79 | display: grid;
|
80 | grid-template-columns: repeat(7, minmax(20px, 55px));
|
81 | margin-bottom: 5px;
|
82 | font-family: var(--cal-font-family-weekdays); }
|
83 | .color-calendar .calendar__weekdays .calendar__weekday {
|
84 | display: flex;
|
85 | align-items: center;
|
86 | justify-content: center;
|
87 | height: 40px; }
|
88 |
|
89 | .color-calendar .calendar__days {
|
90 | display: grid;
|
91 | grid-template-columns: repeat(7, minmax(20px, 55px));
|
92 | grid-template-rows: repeat(6, minmax(30px, 40px));
|
93 | font-family: var(--cal-font-family-body); }
|
94 | .color-calendar .calendar__days .calendar__day {
|
95 | position: relative;
|
96 | z-index: 101;
|
97 | display: flex;
|
98 | align-items: center;
|
99 | justify-content: center; }
|
100 | .color-calendar .calendar__days .calendar__day-text {
|
101 | cursor: pointer; }
|
102 | .color-calendar .calendar__days .calendar__day-box {
|
103 | position: absolute;
|
104 | top: 50%;
|
105 | left: 50%;
|
106 | transform: translate(-50%, -50%);
|
107 | width: calc(55% + 8px);
|
108 | height: 90%;
|
109 | opacity: 0;
|
110 | z-index: -1;
|
111 | cursor: pointer;
|
112 | transition: opacity 0.3s ease-out;
|
113 | will-change: opacity; }
|
114 | .color-calendar .calendar__days .calendar__day-event {
|
115 | }
|
116 | .color-calendar .calendar__days .calendar__day-event .calendar__day-bullet {
|
117 | position: absolute;
|
118 | top: 80%;
|
119 | border-radius: 50%;
|
120 | width: 4px;
|
121 | height: 4px;
|
122 | left: 50%;
|
123 | transform: translateX(-50%);
|
124 | overflow: hidden;
|
125 | cursor: pointer; }
|
126 | .color-calendar .calendar__days .calendar__day-selected:not(.calendar__day-today) .calendar__day-box {
|
127 | position: absolute;
|
128 | top: 50%;
|
129 | left: 50%;
|
130 | transform: translate(-50%, -50%);
|
131 | width: calc(55% + 8px);
|
132 | height: 90%;
|
133 | z-index: -1;
|
134 | cursor: pointer; }
|
135 |
|
136 | .color-calendar .calendar__picker {
|
137 | position: absolute;
|
138 | z-index: 201;
|
139 | width: 100%;
|
140 | top: 75px;
|
141 | left: 0;
|
142 | bottom: 0;
|
143 | background-color: white;
|
144 | display: flex;
|
145 | align-items: center;
|
146 | justify-content: center;
|
147 | visibility: hidden;
|
148 | opacity: 0;
|
149 | transition: all 0.3s ease;
|
150 | font-family: var(--cal-font-family-body); }
|
151 | .color-calendar .calendar__picker .calendar__picker-month {
|
152 | width: 100%;
|
153 | display: grid;
|
154 | grid-template-columns: repeat(3, minmax(0, 1fr));
|
155 | grid-template-rows: repeat(4, minmax(0, 1fr));
|
156 | grid-gap: 1rem 6%;
|
157 | gap: 1rem 6%;
|
158 | margin: 8%;
|
159 | transition: none; }
|
160 | .color-calendar .calendar__picker .calendar__picker-month-option {
|
161 | position: relative;
|
162 | text-align: center;
|
163 | padding: 15px 0;
|
164 | font-weight: 700;
|
165 | color: #323232;
|
166 | border-radius: var(--cal-border-radius);
|
167 | align-self: center;
|
168 | cursor: pointer; }
|
169 | .color-calendar .calendar__picker .calendar__picker-month-option::after {
|
170 | content: "";
|
171 | width: 100%;
|
172 | height: 50px;
|
173 | position: absolute;
|
174 | top: 50%;
|
175 | left: 50%;
|
176 | transform: translate(-50%, -50%);
|
177 | background-color: var(--cal-color-primary);
|
178 | border-radius: var(--cal-border-radius);
|
179 | opacity: 0.1;
|
180 | z-index: -1; }
|
181 | .color-calendar .calendar__picker .calendar__picker-month-option:hover:after {
|
182 | opacity: 0.08; }
|
183 | .color-calendar .calendar__picker .calendar__picker-month-selected {
|
184 | color: white; }
|
185 | .color-calendar .calendar__picker .calendar__picker-month-selected::after {
|
186 | opacity: 1; }
|
187 | .color-calendar .calendar__picker .calendar__picker-month-selected:hover:after {
|
188 | opacity: 0.9; }
|
189 | .color-calendar .calendar__picker .calendar__picker-year {
|
190 | width: 100%;
|
191 | display: grid;
|
192 | grid-template-columns: repeat(3, minmax(0, 1fr));
|
193 | grid-template-rows: repeat(4, minmax(0, 1fr));
|
194 | grid-gap: 1rem 6%;
|
195 | gap: 1rem 6%;
|
196 | margin: 8%;
|
197 | transition: none; }
|
198 | .color-calendar .calendar__picker .calendar__picker-year-option {
|
199 | position: relative;
|
200 | text-align: center;
|
201 | padding: 15px 0;
|
202 | font-weight: 700;
|
203 | color: #323232;
|
204 | border-radius: var(--cal-border-radius);
|
205 | align-self: center;
|
206 | cursor: pointer; }
|
207 | .color-calendar .calendar__picker .calendar__picker-year-option::after {
|
208 | content: "";
|
209 | width: 100%;
|
210 | height: 50px;
|
211 | position: absolute;
|
212 | top: 50%;
|
213 | left: 50%;
|
214 | transform: translate(-50%, -50%);
|
215 | background-color: var(--cal-color-primary);
|
216 | border-radius: var(--cal-border-radius);
|
217 | opacity: 0.1;
|
218 | z-index: -1; }
|
219 | .color-calendar .calendar__picker .calendar__picker-year-option:hover:after {
|
220 | opacity: 0.08; }
|
221 | .color-calendar .calendar__picker .calendar__picker-year-selected {
|
222 | color: white; }
|
223 | .color-calendar .calendar__picker .calendar__picker-year-selected::after {
|
224 | opacity: 1; }
|
225 | .color-calendar .calendar__picker .calendar__picker-year-selected:hover:after {
|
226 | opacity: 0.9; }
|
227 | .color-calendar .calendar__picker .calendar__picker-year-arrow {
|
228 | position: absolute;
|
229 | opacity: 0.4;
|
230 | border-radius: var(--cal-border-radius);
|
231 | cursor: pointer;
|
232 | transition: all 0.3s ease; }
|
233 | .color-calendar .calendar__picker .calendar__picker-year-arrow-left {
|
234 | top: 0;
|
235 | bottom: 0;
|
236 | left: 0;
|
237 | display: flex;
|
238 | align-items: center;
|
239 | justify-content: center;
|
240 | padding-left: 10px;
|
241 | padding-right: 4px; }
|
242 | .color-calendar .calendar__picker .calendar__picker-year-arrow-right {
|
243 | top: 0;
|
244 | bottom: 0;
|
245 | right: 0;
|
246 | display: flex;
|
247 | align-items: center;
|
248 | justify-content: center;
|
249 | padding-left: 4px;
|
250 | padding-right: 10px; }
|
251 | .color-calendar .calendar__picker .calendar__picker-year-arrow:hover {
|
252 | opacity: 1;
|
253 | background-color: #f8f8f8; }
|
254 |
|
255 | .chevron-thin-left {
|
256 | display: inline-block;
|
257 | border-right: 2px solid var(--cal-color-primary);
|
258 | border-bottom: 2px solid var(--cal-color-primary);
|
259 | width: 10px;
|
260 | height: 10px;
|
261 | transform: rotate(-225deg); }
|
262 |
|
263 | .chevron-thin-right {
|
264 | display: inline-block;
|
265 | border-right: 2px solid var(--cal-color-primary);
|
266 | border-bottom: 2px solid var(--cal-color-primary);
|
267 | width: 10px;
|
268 | height: 10px;
|
269 | transform: rotate(-45deg); }
|
270 |
|
271 | .color-calendar.month-left-align .calendar__header .calendar__monthyear {
|
272 | grid-column: 1 / span 5;
|
273 | margin: 0;
|
274 | justify-content: flex-start;
|
275 | padding-left: 5%; }
|
276 |
|
277 | .color-calendar.basic {
|
278 | --cal-color-primary: #000000;
|
279 | --cal-font-family-header: "Work Sans", sans-serif;
|
280 | --cal-font-family-weekdays: "Work Sans", sans-serif;
|
281 | --cal-font-family-body: "Work Sans", sans-serif;
|
282 | --cal-drop-shadow: 0 7px 30px -10px rgba(150, 170, 180, 0.5);
|
283 | --cal-border: none;
|
284 | --cal-border-radius: 0.5rem;
|
285 | --cal-header-color: black;
|
286 | --cal-weekdays-color: black;
|
287 | border-radius: var(--cal-border-radius);
|
288 | box-shadow: var(--cal-drop-shadow);
|
289 | color: var(--cal-color-primary);
|
290 | background-color: white;
|
291 | border: var(--cal-border); }
|
292 |
|
293 | .color-calendar.basic .calendar__header {
|
294 | padding: 20px 14px 0px 14px;
|
295 | color: var(--cal-header-color); }
|
296 |
|
297 | .color-calendar.basic .calendar__monthyear {
|
298 | font-weight: 600;
|
299 | color: var(--cal-header-color); }
|
300 |
|
301 | .color-calendar.basic .calendar__arrow-inner {
|
302 | border-radius: 50%; }
|
303 | .color-calendar.basic .calendar__arrow-inner::before {
|
304 | content: '';
|
305 | width: 0.6em;
|
306 | height: 0.6em;
|
307 | position: absolute;
|
308 | border-style: solid;
|
309 | border-width: 0.15em 0.15em 0 0;
|
310 | display: inline-block;
|
311 | transform-origin: center center;
|
312 | transform: rotate(-45deg);
|
313 | border-radius: 1px;
|
314 | color: var(--cal-header-color); }
|
315 | .color-calendar.basic .calendar__arrow-inner::after {
|
316 | content: '';
|
317 | position: absolute;
|
318 | top: 50%;
|
319 | left: 50%;
|
320 | transform: translate(-50%, -50%);
|
321 | width: 35px;
|
322 | height: 35px;
|
323 | border-radius: 50%;
|
324 | background-color: var(--cal-header-color);
|
325 | opacity: 0;
|
326 | z-index: -1;
|
327 | transition: opacity 0.3s ease;
|
328 | will-change: opacity; }
|
329 | .color-calendar.basic .calendar__arrow-inner:hover::after {
|
330 | transition: opacity 0.3s ease;
|
331 | opacity: 0.05; }
|
332 |
|
333 | .color-calendar.basic .calendar__arrow-prev {
|
334 | position: relative;
|
335 | display: flex;
|
336 | align-items: center;
|
337 | justify-content: center; }
|
338 | .color-calendar.basic .calendar__arrow-prev .calendar__arrow-inner::before {
|
339 | margin-left: 0.3em;
|
340 | transform: rotate(-135deg); }
|
341 |
|
342 | .color-calendar.basic .calendar__arrow-next {
|
343 | position: relative;
|
344 | display: flex;
|
345 | align-items: center;
|
346 | justify-content: center; }
|
347 | .color-calendar.basic .calendar__arrow-next .calendar__arrow-inner::before {
|
348 | margin-right: 0.3em;
|
349 | transform: rotate(45deg); }
|
350 |
|
351 | .color-calendar.basic .calendar__body {
|
352 | padding: 14px; }
|
353 |
|
354 | .color-calendar.basic .calendar__weekdays {
|
355 | display: grid;
|
356 | grid-template-columns: repeat(7, minmax(20px, 55px));
|
357 | margin-bottom: 5px; }
|
358 | .color-calendar.basic .calendar__weekdays .calendar__weekday {
|
359 | font-weight: 500;
|
360 | opacity: 0.6;
|
361 | color: var(--cal-weekdays-color); }
|
362 |
|
363 | .color-calendar.basic .calendar__days .calendar__day-other {
|
364 | color: var(--cal-color-primary);
|
365 | opacity: 0.2; }
|
366 |
|
367 | .color-calendar.basic .calendar__days .calendar__day {
|
368 | font-weight: 600; }
|
369 |
|
370 | .color-calendar.basic .calendar__days .calendar__day-today {
|
371 | font-weight: 700;
|
372 | color: var(--cal-color-primary); }
|
373 | .color-calendar.basic .calendar__days .calendar__day-today .calendar__day-box {
|
374 | border-radius: 0.5rem;
|
375 | background-color: var(--cal-color-primary);
|
376 | opacity: 0.1; }
|
377 |
|
378 | .color-calendar.basic .calendar__days .calendar__day-text:hover ~ .calendar__day-box {
|
379 | opacity: 0.1; }
|
380 |
|
381 | .color-calendar.basic .calendar__days .calendar__day-bullet {
|
382 | background-color: var(--cal-color-primary); }
|
383 | .color-calendar.basic .calendar__days .calendar__day-bullet:hover ~ .calendar__day-box {
|
384 | opacity: 0.1; }
|
385 |
|
386 | .color-calendar.basic .calendar__days .calendar__day-box {
|
387 | border-radius: 0.5rem;
|
388 | background-color: var(--cal-color-primary);
|
389 | box-shadow: 0 3px 15px -5px var(--cal-color-primary); }
|
390 | .color-calendar.basic .calendar__days .calendar__day-box:hover {
|
391 | opacity: 0.1; }
|
392 |
|
393 | .color-calendar.basic .calendar__days .calendar__day-event {
|
394 | font-weight: 700; }
|
395 |
|
396 | .color-calendar.basic .calendar__days .calendar__day-selected {
|
397 | color: white;
|
398 | font-weight: 700; }
|
399 | .color-calendar.basic .calendar__days .calendar__day-selected .calendar__day-box {
|
400 | border-radius: 0.5rem;
|
401 | background-color: var(--cal-color-primary);
|
402 | opacity: 1;
|
403 | box-shadow: 0 3px 15px -5px var(--cal-color-primary); }
|
404 | .color-calendar.basic .calendar__days .calendar__day-selected .calendar__day-text:hover ~ .calendar__day-box {
|
405 | opacity: 1; }
|
406 | .color-calendar.basic .calendar__days .calendar__day-selected .calendar__day-bullet {
|
407 | background-color: white; }
|
408 | .color-calendar.basic .calendar__days .calendar__day-selected .calendar__day-bullet:hover ~ .calendar__day-box {
|
409 | opacity: 1; }
|
410 |
|
411 | .color-calendar.basic .calendar__picker {
|
412 | background-color: white;
|
413 | border-radius: var(--cal-border-radius); }
|
414 | .color-calendar.basic .calendar__picker-month-today {
|
415 | box-shadow: inset 0px 0px 0px 1px var(--cal-color-primary); }
|
416 | .color-calendar.basic .calendar__picker-year-today {
|
417 | box-shadow: inset 0px 0px 0px 1px var(--cal-color-primary); }
|
418 |
|
419 | .color-calendar.basic.color-calendar--small {
|
420 | font-size: 0.8rem; }
|
421 | .color-calendar.basic.color-calendar--small .calendar__header {
|
422 | padding: 10px 10px 0 10px;
|
423 | grid-template-columns: repeat(7, minmax(25px, 41px)); }
|
424 | .color-calendar.basic.color-calendar--small .calendar__header .calendar__monthyear {
|
425 | font-size: 1.2rem; }
|
426 | .color-calendar.basic.color-calendar--small .calendar__header .calendar__arrow-inner, .color-calendar.basic.color-calendar--small .calendar__header .calendar__arrow-inner::after {
|
427 | width: 30px;
|
428 | height: 30px; }
|
429 | .color-calendar.basic.color-calendar--small .calendar__body {
|
430 | padding: 0 10px 10px 10px; }
|
431 | .color-calendar.basic.color-calendar--small .calendar__body .calendar__weekdays {
|
432 | grid-template-columns: repeat(7, minmax(25px, 41px));
|
433 | margin-bottom: 0; }
|
434 | .color-calendar.basic.color-calendar--small .calendar__body .calendar__days {
|
435 | grid-template-columns: repeat(7, minmax(25px, 41px));
|
436 | grid-template-rows: repeat(6, minmax(30px, 35px)); }
|
437 | .color-calendar.basic.color-calendar--small .calendar__body .calendar__picker {
|
438 | top: 55px; }
|
439 | .color-calendar.basic.color-calendar--small .calendar__body .calendar__picker .calendar__picker-month-option {
|
440 | padding: 10px 0; }
|
441 | .color-calendar.basic.color-calendar--small .calendar__body .calendar__picker .calendar__picker-month-option::after {
|
442 | height: 40px; }
|
443 | .color-calendar.basic.color-calendar--small .calendar__body .calendar__picker .calendar__picker-year-option {
|
444 | padding: 10px 0; }
|
445 | .color-calendar.basic.color-calendar--small .calendar__body .calendar__picker .calendar__picker-year-option::after {
|
446 | height: 40px; }
|