懒羊羊
2023-08-30 1ac2bc1590406d9babec036e154d8d08f34a6aa1
提交 | 用户 | 时间
1ac2bc 1 @charset "UTF-8";
2 .fc {
3   direction: ltr;
4   text-align: left;
5 }
6
7 .fc-rtl {
8   text-align: right;
9 }
10
11 body .fc {
12   /* extra precedence to overcome jqui */
13   font-size: 1em;
14 }
15
16 /* Colors
17 --------------------------------------------------------------------------------------------------*/
18 .fc-highlight {
19   /* when user is selecting cells */
20   background: #bce8f1;
21   opacity: 0.3;
22 }
23
24 .fc-bgevent {
25   /* default look for background events */
26   background: #8fdf82;
27   opacity: 0.3;
28 }
29
30 .fc-nonbusiness {
31   /* default look for non-business-hours areas */
32   /* will inherit .fc-bgevent's styles */
33   background: #d7d7d7;
34 }
35
36 /* Popover
37 --------------------------------------------------------------------------------------------------*/
38 .fc-popover {
39   position: absolute;
40   box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
41 }
42
43 .fc-popover .fc-header {
44   /* TODO: be more consistent with fc-head/fc-body */
45   display: flex;
46   flex-direction: row;
47   justify-content: space-between;
48   align-items: center;
49   padding: 2px 4px;
50 }
51
52 .fc-rtl .fc-popover .fc-header {
53   flex-direction: row-reverse;
54 }
55
56 .fc-popover .fc-header .fc-title {
57   margin: 0 2px;
58 }
59
60 .fc-popover .fc-header .fc-close {
61   cursor: pointer;
62   opacity: 0.65;
63   font-size: 1.1em;
64 }
65
66 /* Misc Reusable Components
67 --------------------------------------------------------------------------------------------------*/
68 .fc-divider {
69   border-style: solid;
70   border-width: 1px;
71 }
72
73 hr.fc-divider {
74   height: 0;
75   margin: 0;
76   padding: 0 0 2px;
77   /* height is unreliable across browsers, so use padding */
78   border-width: 1px 0;
79 }
80
81 .fc-bg,
82 .fc-bgevent-skeleton,
83 .fc-highlight-skeleton,
84 .fc-mirror-skeleton {
85   /* these element should always cling to top-left/right corners */
86   position: absolute;
87   top: 0;
88   left: 0;
89   right: 0;
90 }
91
92 .fc-bg {
93   bottom: 0;
94   /* strech bg to bottom edge */
95 }
96
97 .fc-bg table {
98   height: 100%;
99   /* strech bg to bottom edge */
100 }
101
102 /* Tables
103 --------------------------------------------------------------------------------------------------*/
104 .fc table {
105   width: 100%;
106   box-sizing: border-box;
107   /* fix scrollbar issue in firefox */
108   table-layout: fixed;
109   border-collapse: collapse;
110   border-spacing: 0;
111   font-size: 1em;
112   /* normalize cross-browser */
113 }
114
115 .fc th {
116   text-align: center;
117 }
118
119 .fc th,
120 .fc td {
121   border-style: solid;
122   border-width: 1px;
123   padding: 0;
124   vertical-align: top;
125 }
126
127 .fc td.fc-today {
128   border-style: double;
129   /* overcome neighboring borders */
130 }
131
132 /* Internal Nav Links
133 --------------------------------------------------------------------------------------------------*/
134 a[data-goto] {
135   cursor: pointer;
136 }
137
138 a[data-goto]:hover {
139   text-decoration: underline;
140 }
141
142 /* Fake Table Rows
143 --------------------------------------------------------------------------------------------------*/
144 .fc .fc-row {
145   /* extra precedence to overcome themes forcing a 1px border */
146   /* no visible border by default. but make available if need be (scrollbar width compensation) */
147   border-style: solid;
148   border-width: 0;
149 }
150
151 .fc-row table {
152   /* don't put left/right border on anything within a fake row.
153      the outer tbody will worry about this */
154   border-left: 0 hidden transparent;
155   border-right: 0 hidden transparent;
156   /* no bottom borders on rows */
157   border-bottom: 0 hidden transparent;
158 }
159
160 .fc-row:first-child table {
161   border-top: 0 hidden transparent;
162   /* no top border on first row */
163 }
164
165 /* Day Row (used within the header and the DayGrid)
166 --------------------------------------------------------------------------------------------------*/
167 .fc-row {
168   position: relative;
169 }
170
171 .fc-row .fc-bg {
172   z-index: 1;
173 }
174
175 /* highlighting cells & background event skeleton */
176 .fc-row .fc-bgevent-skeleton,
177 .fc-row .fc-highlight-skeleton {
178   bottom: 0;
179   /* stretch skeleton to bottom of row */
180 }
181
182 .fc-row .fc-bgevent-skeleton table,
183 .fc-row .fc-highlight-skeleton table {
184   height: 100%;
185   /* stretch skeleton to bottom of row */
186 }
187
188 .fc-row .fc-highlight-skeleton td,
189 .fc-row .fc-bgevent-skeleton td {
190   border-color: transparent;
191 }
192
193 .fc-row .fc-bgevent-skeleton {
194   z-index: 2;
195 }
196
197 .fc-row .fc-highlight-skeleton {
198   z-index: 3;
199 }
200
201 /*
202 row content (which contains day/week numbers and events) as well as "mirror" (which contains
203 temporary rendered events).
204 */
205 .fc-row .fc-content-skeleton {
206   position: relative;
207   z-index: 4;
208   padding-bottom: 2px;
209   /* matches the space above the events */
210 }
211
212 .fc-row .fc-mirror-skeleton {
213   z-index: 5;
214 }
215
216 .fc .fc-row .fc-content-skeleton table,
217 .fc .fc-row .fc-content-skeleton td,
218 .fc .fc-row .fc-mirror-skeleton td {
219   /* see-through to the background below */
220   /* extra precedence to prevent theme-provided backgrounds */
221   background: none;
222   /* in case <td>s are globally styled */
223   border-color: transparent;
224 }
225
226 .fc-row .fc-content-skeleton td,
227 .fc-row .fc-mirror-skeleton td {
228   /* don't put a border between events and/or the day number */
229   border-bottom: 0;
230 }
231
232 .fc-row .fc-content-skeleton tbody td,
233 .fc-row .fc-mirror-skeleton tbody td {
234   /* don't put a border between event cells */
235   border-top: 0;
236 }
237
238 /* Scrolling Container
239 --------------------------------------------------------------------------------------------------*/
240 .fc-scroller {
241   -webkit-overflow-scrolling: touch;
242 }
243
244 /* TODO: move to timegrid/daygrid */
245 .fc-scroller > .fc-day-grid,
246 .fc-scroller > .fc-time-grid {
247   position: relative;
248   /* re-scope all positions */
249   width: 100%;
250   /* hack to force re-sizing this inner element when scrollbars appear/disappear */
251 }
252
253 /* Global Event Styles
254 --------------------------------------------------------------------------------------------------*/
255 .fc-event {
256   position: relative;
257   /* for resize handle and other inner positioning */
258   display: block;
259   /* make the <a> tag block */
260   font-size: 0.85em;
261   line-height: 1.4;
262   border-radius: 3px;
263   border: 1px solid #3788d8;
264 }
265
266 .fc-event,
267 .fc-event-dot {
268   background-color: #3788d8;
269   /* default BACKGROUND color */
270 }
271
272 .fc-event,
273 .fc-event:hover {
274   color: #fff;
275   /* default TEXT color */
276   text-decoration: none;
277   /* if <a> has an href */
278 }
279
280 .fc-event[href],
281 .fc-event.fc-draggable {
282   cursor: pointer;
283   /* give events with links and draggable events a hand mouse pointer */
284 }
285
286 .fc-not-allowed,
287 .fc-not-allowed .fc-event {
288   /* to override an event's custom cursor */
289   cursor: not-allowed;
290 }
291
292 .fc-event .fc-content {
293   position: relative;
294   z-index: 2;
295 }
296
297 /* resizer (cursor AND touch devices) */
298 .fc-event .fc-resizer {
299   position: absolute;
300   z-index: 4;
301 }
302
303 /* resizer (touch devices) */
304 .fc-event .fc-resizer {
305   display: none;
306 }
307
308 .fc-event.fc-allow-mouse-resize .fc-resizer,
309 .fc-event.fc-selected .fc-resizer {
310   /* only show when hovering or selected (with touch) */
311   display: block;
312 }
313
314 /* hit area */
315 .fc-event.fc-selected .fc-resizer:before {
316   /* 40x40 touch area */
317   content: "";
318   position: absolute;
319   z-index: 9999;
320   /* user of this util can scope within a lower z-index */
321   top: 50%;
322   left: 50%;
323   width: 40px;
324   height: 40px;
325   margin-left: -20px;
326   margin-top: -20px;
327 }
328
329 /* Event Selection (only for touch devices)
330 --------------------------------------------------------------------------------------------------*/
331 .fc-event.fc-selected {
332   z-index: 9999 !important;
333   /* overcomes inline z-index */
334   box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
335 }
336
337 .fc-event.fc-selected:after {
338   content: "";
339   position: absolute;
340   z-index: 1;
341   /* same z-index as fc-bg, behind text */
342   /* overcome the borders */
343   top: -1px;
344   right: -1px;
345   bottom: -1px;
346   left: -1px;
347   /* darkening effect */
348   background: #000;
349   opacity: 0.25;
350 }
351
352 /* Event Dragging
353 --------------------------------------------------------------------------------------------------*/
354 .fc-event.fc-dragging.fc-selected {
355   box-shadow: 0 2px 7px rgba(0, 0, 0, 0.3);
356 }
357
358 .fc-event.fc-dragging:not(.fc-selected) {
359   opacity: 0.75;
360 }
361
362 /* Horizontal Events
363 --------------------------------------------------------------------------------------------------*/
364 /* bigger touch area when selected */
365 .fc-h-event.fc-selected:before {
366   content: "";
367   position: absolute;
368   z-index: 3;
369   /* below resizers */
370   top: -10px;
371   bottom: -10px;
372   left: 0;
373   right: 0;
374 }
375
376 /* events that are continuing to/from another week. kill rounded corners and butt up against edge */
377 .fc-ltr .fc-h-event.fc-not-start,
378 .fc-rtl .fc-h-event.fc-not-end {
379   margin-left: 0;
380   border-left-width: 0;
381   padding-left: 1px;
382   /* replace the border with padding */
383   border-top-left-radius: 0;
384   border-bottom-left-radius: 0;
385 }
386
387 .fc-ltr .fc-h-event.fc-not-end,
388 .fc-rtl .fc-h-event.fc-not-start {
389   margin-right: 0;
390   border-right-width: 0;
391   padding-right: 1px;
392   /* replace the border with padding */
393   border-top-right-radius: 0;
394   border-bottom-right-radius: 0;
395 }
396
397 /* resizer (cursor AND touch devices) */
398 /* left resizer  */
399 .fc-ltr .fc-h-event .fc-start-resizer,
400 .fc-rtl .fc-h-event .fc-end-resizer {
401   cursor: w-resize;
402   left: -1px;
403   /* overcome border */
404 }
405
406 /* right resizer */
407 .fc-ltr .fc-h-event .fc-end-resizer,
408 .fc-rtl .fc-h-event .fc-start-resizer {
409   cursor: e-resize;
410   right: -1px;
411   /* overcome border */
412 }
413
414 /* resizer (mouse devices) */
415 .fc-h-event.fc-allow-mouse-resize .fc-resizer {
416   width: 7px;
417   top: -1px;
418   /* overcome top border */
419   bottom: -1px;
420   /* overcome bottom border */
421 }
422
423 /* resizer (touch devices) */
424 .fc-h-event.fc-selected .fc-resizer {
425   /* 8x8 little dot */
426   border-radius: 4px;
427   border-width: 1px;
428   width: 6px;
429   height: 6px;
430   border-style: solid;
431   border-color: inherit;
432   background: #fff;
433   /* vertically center */
434   top: 50%;
435   margin-top: -4px;
436 }
437
438 /* left resizer  */
439 .fc-ltr .fc-h-event.fc-selected .fc-start-resizer,
440 .fc-rtl .fc-h-event.fc-selected .fc-end-resizer {
441   margin-left: -4px;
442   /* centers the 8x8 dot on the left edge */
443 }
444
445 /* right resizer */
446 .fc-ltr .fc-h-event.fc-selected .fc-end-resizer,
447 .fc-rtl .fc-h-event.fc-selected .fc-start-resizer {
448   margin-right: -4px;
449   /* centers the 8x8 dot on the right edge */
450 }
451
452 /* DayGrid events
453 ----------------------------------------------------------------------------------------------------
454 We use the full "fc-day-grid-event" class instead of using descendants because the event won't
455 be a descendant of the grid when it is being dragged.
456 */
457 .fc-day-grid-event {
458   margin: 1px 2px 0;
459   /* spacing between events and edges */
460   padding: 0 1px;
461 }
462
463 tr:first-child > td > .fc-day-grid-event {
464   margin-top: 2px;
465   /* a little bit more space before the first event */
466 }
467
468 .fc-mirror-skeleton tr:first-child > td > .fc-day-grid-event {
469   margin-top: 0;
470   /* except for mirror skeleton */
471 }
472
473 .fc-day-grid-event .fc-content {
474   /* force events to be one-line tall */
475   white-space: nowrap;
476   overflow: hidden;
477 }
478
479 .fc-day-grid-event .fc-time {
480   font-weight: bold;
481 }
482
483 /* resizer (cursor devices) */
484 /* left resizer  */
485 .fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer,
486 .fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer {
487   margin-left: -2px;
488   /* to the day cell's edge */
489 }
490
491 /* right resizer */
492 .fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer,
493 .fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer {
494   margin-right: -2px;
495   /* to the day cell's edge */
496 }
497
498 /* Event Limiting
499 --------------------------------------------------------------------------------------------------*/
500 /* "more" link that represents hidden events */
501 a.fc-more {
502   margin: 1px 3px;
503   font-size: 0.85em;
504   cursor: pointer;
505   text-decoration: none;
506 }
507
508 a.fc-more:hover {
509   text-decoration: underline;
510 }
511
512 .fc-limited {
513   /* rows and cells that are hidden because of a "more" link */
514   display: none;
515 }
516
517 /* popover that appears when "more" link is clicked */
518 .fc-day-grid .fc-row {
519   z-index: 1;
520   /* make the "more" popover one higher than this */
521 }
522
523 .fc-more-popover {
524   z-index: 2;
525   width: 220px;
526 }
527
528 .fc-more-popover .fc-event-container {
529   padding: 10px;
530 }
531
532 /* Now Indicator
533 --------------------------------------------------------------------------------------------------*/
534 .fc-now-indicator {
535   position: absolute;
536   border: 0 solid red;
537 }
538
539 /* Utilities
540 --------------------------------------------------------------------------------------------------*/
541 .fc-unselectable {
542   -webkit-user-select: none;
543   -khtml-user-select: none;
544   -moz-user-select: none;
545   -ms-user-select: none;
546   user-select: none;
547   -webkit-touch-callout: none;
548   -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
549 }
550
551 /*
552 TODO: more distinction between this file and common.css
553 */
554 /* Colors
555 --------------------------------------------------------------------------------------------------*/
556 .fc-unthemed th,
557 .fc-unthemed td,
558 .fc-unthemed thead,
559 .fc-unthemed tbody,
560 .fc-unthemed .fc-divider,
561 .fc-unthemed .fc-row,
562 .fc-unthemed .fc-content,
563 .fc-unthemed .fc-popover,
564 .fc-unthemed .fc-list-view,
565 .fc-unthemed .fc-list-heading td {
566   border-color: #ddd;
567 }
568
569 .fc-unthemed .fc-popover {
570   background-color: #fff;
571 }
572
573 .fc-unthemed .fc-divider,
574 .fc-unthemed .fc-popover .fc-header,
575 .fc-unthemed .fc-list-heading td {
576   background: #eee;
577 }
578
579 .fc-unthemed td.fc-today {
580   background: #fcf8e3;
581 }
582
583 .fc-unthemed .fc-disabled-day {
584   background: #d7d7d7;
585   opacity: 0.3;
586 }
587
588 /* Icons
589 --------------------------------------------------------------------------------------------------
590 from https://feathericons.com/ and built with IcoMoon
591 */
592 @font-face {
593   font-family: "fcicons";
594   src: url("data:application/x-font-ttf;charset=utf-8;base64,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") format("truetype");
595   font-weight: normal;
596   font-style: normal;
597 }
598 .fc-icon {
599   /* use !important to prevent issues with browser extensions that change fonts */
600   font-family: "fcicons" !important;
601   speak: none;
602   font-style: normal;
603   font-weight: normal;
604   font-variant: normal;
605   text-transform: none;
606   line-height: 1;
607   /* Better Font Rendering =========== */
608   -webkit-font-smoothing: antialiased;
609   -moz-osx-font-smoothing: grayscale;
610 }
611
612 .fc-icon-chevron-left:before {
613   content: "";
614 }
615
616 .fc-icon-chevron-right:before {
617   content: "";
618 }
619
620 .fc-icon-chevrons-left:before {
621   content: "";
622 }
623
624 .fc-icon-chevrons-right:before {
625   content: "";
626 }
627
628 .fc-icon-minus-square:before {
629   content: "";
630 }
631
632 .fc-icon-plus-square:before {
633   content: "";
634 }
635
636 .fc-icon-x:before {
637   content: "";
638 }
639
640 .fc-icon {
641   display: inline-block;
642   width: 1em;
643   height: 1em;
644   text-align: center;
645 }
646
647 /* Buttons
648 --------------------------------------------------------------------------------------------------
649 Lots taken from Flatly (MIT): https://bootswatch.com/4/flatly/bootstrap.css
650 */
651 /* reset */
652 .fc-button {
653   border-radius: 0;
654   overflow: visible;
655   text-transform: none;
656   margin: 0;
657   font-family: inherit;
658   font-size: inherit;
659   line-height: inherit;
660 }
661
662 .fc-button:focus {
663   outline: 1px dotted;
664   outline: 5px auto -webkit-focus-ring-color;
665 }
666
667 .fc-button {
668   -webkit-appearance: button;
669 }
670
671 .fc-button:not(:disabled) {
672   cursor: pointer;
673 }
674
675 .fc-button::-moz-focus-inner {
676   padding: 0;
677   border-style: none;
678 }
679
680 /* theme */
681 .fc-button {
682   display: inline-block;
683   font-weight: 400;
684   color: #212529;
685   text-align: center;
686   vertical-align: middle;
687   -webkit-user-select: none;
688   -moz-user-select: none;
689   -ms-user-select: none;
690   user-select: none;
691   background-color: transparent;
692   border: 1px solid transparent;
693   padding: 0.4em 0.65em;
694   font-size: 1em;
695   line-height: 1.5;
696   border-radius: 0.25em;
697 }
698
699 .fc-button:hover {
700   color: #212529;
701   text-decoration: none;
702 }
703
704 .fc-button:focus {
705   outline: 0;
706   -webkit-box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25);
707   box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25);
708 }
709
710 .fc-button:disabled {
711   opacity: 0.65;
712 }
713
714 /* "primary" coloring */
715 .fc-button-primary {
716   color: #fff;
717   background-color: #2C3E50;
718   border-color: #2C3E50;
719 }
720
721 .fc-button-primary:hover {
722   color: #fff;
723   background-color: #1e2b37;
724   border-color: #1a252f;
725 }
726
727 .fc-button-primary:focus {
728   -webkit-box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
729   box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
730 }
731
732 .fc-button-primary:disabled {
733   color: #fff;
734   background-color: #2C3E50;
735   border-color: #2C3E50;
736 }
737
738 .fc-button-primary:not(:disabled):active,
739 .fc-button-primary:not(:disabled).fc-button-active {
740   color: #fff;
741   background-color: #1a252f;
742   border-color: #151e27;
743 }
744
745 .fc-button-primary:not(:disabled):active:focus,
746 .fc-button-primary:not(:disabled).fc-button-active:focus {
747   -webkit-box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
748   box-shadow: 0 0 0 0.2rem rgba(76, 91, 106, 0.5);
749 }
750
751 /* icons within buttons */
752 .fc-button .fc-icon {
753   vertical-align: middle;
754   font-size: 1.5em;
755 }
756
757 /* Buttons Groups
758 --------------------------------------------------------------------------------------------------*/
759 .fc-button-group {
760   position: relative;
761   display: -webkit-inline-box;
762   display: -ms-inline-flexbox;
763   display: inline-flex;
764   vertical-align: middle;
765 }
766
767 .fc-button-group > .fc-button {
768   position: relative;
769   -webkit-box-flex: 1;
770   -ms-flex: 1 1 auto;
771   flex: 1 1 auto;
772 }
773
774 .fc-button-group > .fc-button:hover {
775   z-index: 1;
776 }
777
778 .fc-button-group > .fc-button:focus,
779 .fc-button-group > .fc-button:active,
780 .fc-button-group > .fc-button.fc-button-active {
781   z-index: 1;
782 }
783
784 .fc-button-group > .fc-button:not(:first-child) {
785   margin-left: -1px;
786 }
787
788 .fc-button-group > .fc-button:not(:last-child) {
789   border-top-right-radius: 0;
790   border-bottom-right-radius: 0;
791 }
792
793 .fc-button-group > .fc-button:not(:first-child) {
794   border-top-left-radius: 0;
795   border-bottom-left-radius: 0;
796 }
797
798 /* Popover
799 --------------------------------------------------------------------------------------------------*/
800 .fc-unthemed .fc-popover {
801   border-width: 1px;
802   border-style: solid;
803 }
804
805 /* List View
806 --------------------------------------------------------------------------------------------------*/
807 .fc-unthemed .fc-list-item:hover td {
808   background-color: #f5f5f5;
809 }
810
811 /* Toolbar
812 --------------------------------------------------------------------------------------------------*/
813 .fc-toolbar {
814   display: flex;
815   justify-content: space-between;
816   align-items: center;
817 }
818
819 .fc-toolbar.fc-header-toolbar {
820   margin-bottom: 1.5em;
821 }
822
823 .fc-toolbar.fc-footer-toolbar {
824   margin-top: 1.5em;
825 }
826
827 /* inner content */
828 .fc-toolbar > * > :not(:first-child) {
829   margin-left: 0.75em;
830 }
831
832 .fc-toolbar h2 {
833   font-size: 1.75em;
834   margin: 0;
835 }
836
837 /* View Structure
838 --------------------------------------------------------------------------------------------------*/
839 .fc-view-container {
840   position: relative;
841 }
842
843 /* undo twitter bootstrap's box-sizing rules. normalizes positioning techniques */
844 /* don't do this for the toolbar because we'll want bootstrap to style those buttons as some pt */
845 .fc-view-container *,
846 .fc-view-container *:before,
847 .fc-view-container *:after {
848   -webkit-box-sizing: content-box;
849   -moz-box-sizing: content-box;
850   box-sizing: content-box;
851 }
852
853 .fc-view,
854 .fc-view > table {
855   /* so dragged elements can be above the view's main element */
856   position: relative;
857   z-index: 1;
858 }
859
860 @media print {
861   .fc {
862     max-width: 100% !important;
863   }
864
865   /* Global Event Restyling
866   --------------------------------------------------------------------------------------------------*/
867   .fc-event {
868     background: #fff !important;
869     color: #000 !important;
870     page-break-inside: avoid;
871   }
872
873   .fc-event .fc-resizer {
874     display: none;
875   }
876
877   /* Table & Day-Row Restyling
878   --------------------------------------------------------------------------------------------------*/
879   .fc th,
880 .fc td,
881 .fc hr,
882 .fc thead,
883 .fc tbody,
884 .fc-row {
885     border-color: #ccc !important;
886     background: #fff !important;
887   }
888
889   /* kill the overlaid, absolutely-positioned components */
890   /* common... */
891   .fc-bg,
892 .fc-bgevent-skeleton,
893 .fc-highlight-skeleton,
894 .fc-mirror-skeleton,
895 .fc-bgevent-container,
896 .fc-business-container,
897 .fc-highlight-container,
898 .fc-mirror-container {
899     display: none;
900   }
901
902   /* don't force a min-height on rows (for DayGrid) */
903   .fc tbody .fc-row {
904     height: auto !important;
905     /* undo height that JS set in distributeHeight */
906     min-height: 0 !important;
907     /* undo the min-height from each view's specific stylesheet */
908   }
909
910   .fc tbody .fc-row .fc-content-skeleton {
911     position: static;
912     /* undo .fc-rigid */
913     padding-bottom: 0 !important;
914     /* use a more border-friendly method for this... */
915   }
916
917   .fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td {
918     /* only works in newer browsers */
919     padding-bottom: 1em;
920     /* ...gives space within the skeleton. also ensures min height in a way */
921   }
922
923   .fc tbody .fc-row .fc-content-skeleton table {
924     /* provides a min-height for the row, but only effective for IE, which exaggerates this value,
925        making it look more like 3em. for other browers, it will already be this tall */
926     height: 1em;
927   }
928
929   /* Undo month-view event limiting. Display all events and hide the "more" links
930   --------------------------------------------------------------------------------------------------*/
931   .fc-more-cell,
932 .fc-more {
933     display: none !important;
934   }
935
936   .fc tr.fc-limited {
937     display: table-row !important;
938   }
939
940   .fc td.fc-limited {
941     display: table-cell !important;
942   }
943
944   .fc-popover {
945     display: none;
946     /* never display the "more.." popover in print mode */
947   }
948
949   /* TimeGrid Restyling
950   --------------------------------------------------------------------------------------------------*/
951   /* undo the min-height 100% trick used to fill the container's height */
952   .fc-time-grid {
953     min-height: 0 !important;
954   }
955
956   /* don't display the side axis at all ("all-day" and time cells) */
957   .fc-timeGrid-view .fc-axis {
958     display: none;
959   }
960
961   /* don't display the horizontal lines */
962   .fc-slats,
963 .fc-time-grid hr {
964     /* this hr is used when height is underused and needs to be filled */
965     display: none !important;
966     /* important overrides inline declaration */
967   }
968
969   /* let the container that holds the events be naturally positioned and create real height */
970   .fc-time-grid .fc-content-skeleton {
971     position: static;
972   }
973
974   /* in case there are no events, we still want some height */
975   .fc-time-grid .fc-content-skeleton table {
976     height: 4em;
977   }
978
979   /* kill the horizontal spacing made by the event container. event margins will be done below */
980   .fc-time-grid .fc-event-container {
981     margin: 0 !important;
982   }
983
984   /* TimeGrid *Event* Restyling
985   --------------------------------------------------------------------------------------------------*/
986   /* naturally position events, vertically stacking them */
987   .fc-time-grid .fc-event {
988     position: static !important;
989     margin: 3px 2px !important;
990   }
991
992   /* for events that continue to a future day, give the bottom border back */
993   .fc-time-grid .fc-event.fc-not-end {
994     border-bottom-width: 1px !important;
995   }
996
997   /* indicate the event continues via "..." text */
998   .fc-time-grid .fc-event.fc-not-end:after {
999     content: "...";
1000   }
1001
1002   /* for events that are continuations from previous days, give the top border back */
1003   .fc-time-grid .fc-event.fc-not-start {
1004     border-top-width: 1px !important;
1005   }
1006
1007   /* indicate the event is a continuation via "..." text */
1008   .fc-time-grid .fc-event.fc-not-start:before {
1009     content: "...";
1010   }
1011
1012   /* time */
1013   /* undo a previous declaration and let the time text span to a second line */
1014   .fc-time-grid .fc-event .fc-time {
1015     white-space: normal !important;
1016   }
1017
1018   /* hide the the time that is normally displayed... */
1019   .fc-time-grid .fc-event .fc-time span {
1020     display: none;
1021   }
1022
1023   /* ...replace it with a more verbose version (includes AM/PM) stored in an html attribute */
1024   .fc-time-grid .fc-event .fc-time:after {
1025     content: attr(data-full);
1026   }
1027
1028   /* Vertical Scroller & Containers
1029   --------------------------------------------------------------------------------------------------*/
1030   /* kill the scrollbars and allow natural height */
1031   .fc-scroller,
1032 .fc-day-grid-container,
1033 .fc-time-grid-container {
1034     /* */
1035     overflow: visible !important;
1036     height: auto !important;
1037   }
1038
1039   /* kill the horizontal border/padding used to compensate for scrollbars */
1040   .fc-row {
1041     border: 0 !important;
1042     margin: 0 !important;
1043   }
1044
1045   /* Button Controls
1046   --------------------------------------------------------------------------------------------------*/
1047   .fc-button-group,
1048 .fc button {
1049     display: none;
1050     /* don't display any button-related controls */
1051   }
1052 }