戒酒的李白

【日历功能】完成日历插件的引用,并配置完成了响应的css样式

  1 +
  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 + color: #ffffff !important;
  265 + }
  266 +
  267 + .fc-event,
  268 + .fc-event-dot {
  269 + background-color: #3788d8;
  270 + /* default BACKGROUND color */
  271 + }
  272 +
  273 + .fc-event,
  274 + .fc-event:hover {
  275 + color: #fff;
  276 + /* default TEXT color */
  277 + text-decoration: none;
  278 + /* if <a> has an href */
  279 + }
  280 +
  281 + .fc-event[href],
  282 + .fc-event.fc-draggable {
  283 + cursor: pointer;
  284 + /* give events with links and draggable events a hand mouse pointer */
  285 + }
  286 +
  287 + .fc-not-allowed,
  288 + .fc-not-allowed .fc-event {
  289 + /* to override an event's custom cursor */
  290 + cursor: not-allowed;
  291 + }
  292 +
  293 + .fc-event .fc-content {
  294 + position: relative;
  295 + z-index: 2;
  296 + }
  297 +
  298 + /* resizer (cursor AND touch devices) */
  299 + .fc-event .fc-resizer {
  300 + position: absolute;
  301 + z-index: 4;
  302 + }
  303 +
  304 + /* resizer (touch devices) */
  305 + .fc-event .fc-resizer {
  306 + display: none;
  307 + }
  308 +
  309 + .fc-event.fc-allow-mouse-resize .fc-resizer,
  310 + .fc-event.fc-selected .fc-resizer {
  311 + /* only show when hovering or selected (with touch) */
  312 + display: block;
  313 + }
  314 +
  315 + /* hit area */
  316 + .fc-event.fc-selected .fc-resizer:before {
  317 + /* 40x40 touch area */
  318 + content: "";
  319 + position: absolute;
  320 + z-index: 9999;
  321 + /* user of this util can scope within a lower z-index */
  322 + top: 50%;
  323 + left: 50%;
  324 + width: 40px;
  325 + height: 40px;
  326 + margin-left: -20px;
  327 + margin-top: -20px;
  328 + }
  329 +
  330 + /* Event Selection (only for touch devices)
  331 + --------------------------------------------------------------------------------------------------*/
  332 + .fc-event.fc-selected {
  333 + z-index: 9999 !important;
  334 + /* overcomes inline z-index */
  335 + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  336 + }
  337 +
  338 + .fc-event.fc-selected:after {
  339 + content: "";
  340 + position: absolute;
  341 + z-index: 1;
  342 + /* same z-index as fc-bg, behind text */
  343 + /* overcome the borders */
  344 + top: -1px;
  345 + right: -1px;
  346 + bottom: -1px;
  347 + left: -1px;
  348 + /* darkening effect */
  349 + background: #000;
  350 + opacity: 0.25;
  351 + }
  352 +
  353 + /* Event Dragging
  354 + --------------------------------------------------------------------------------------------------*/
  355 + .fc-event.fc-dragging.fc-selected {
  356 + box-shadow: 0 2px 7px rgba(0, 0, 0, 0.3);
  357 + }
  358 +
  359 + .fc-event.fc-dragging:not(.fc-selected) {
  360 + opacity: 0.75;
  361 + }
  362 +
  363 + /* Horizontal Events
  364 + --------------------------------------------------------------------------------------------------*/
  365 + /* bigger touch area when selected */
  366 + .fc-h-event.fc-selected:before {
  367 + content: "";
  368 + position: absolute;
  369 + z-index: 3;
  370 + /* below resizers */
  371 + top: -10px;
  372 + bottom: -10px;
  373 + left: 0;
  374 + right: 0;
  375 + }
  376 +
  377 + /* events that are continuing to/from another week. kill rounded corners and butt up against edge */
  378 + .fc-ltr .fc-h-event.fc-not-start,
  379 + .fc-rtl .fc-h-event.fc-not-end {
  380 + margin-left: 0;
  381 + border-left-width: 0;
  382 + padding-left: 1px;
  383 + /* replace the border with padding */
  384 + border-top-left-radius: 0;
  385 + border-bottom-left-radius: 0;
  386 + }
  387 +
  388 + .fc-ltr .fc-h-event.fc-not-end,
  389 + .fc-rtl .fc-h-event.fc-not-start {
  390 + margin-right: 0;
  391 + border-right-width: 0;
  392 + padding-right: 1px;
  393 + /* replace the border with padding */
  394 + border-top-right-radius: 0;
  395 + border-bottom-right-radius: 0;
  396 + }
  397 +
  398 + /* resizer (cursor AND touch devices) */
  399 + /* left resizer */
  400 + .fc-ltr .fc-h-event .fc-start-resizer,
  401 + .fc-rtl .fc-h-event .fc-end-resizer {
  402 + cursor: w-resize;
  403 + left: -1px;
  404 + /* overcome border */
  405 + }
  406 +
  407 + /* right resizer */
  408 + .fc-ltr .fc-h-event .fc-end-resizer,
  409 + .fc-rtl .fc-h-event .fc-start-resizer {
  410 + cursor: e-resize;
  411 + right: -1px;
  412 + /* overcome border */
  413 + }
  414 +
  415 + /* resizer (mouse devices) */
  416 + .fc-h-event.fc-allow-mouse-resize .fc-resizer {
  417 + width: 7px;
  418 + top: -1px;
  419 + /* overcome top border */
  420 + bottom: -1px;
  421 + /* overcome bottom border */
  422 + }
  423 +
  424 + /* resizer (touch devices) */
  425 + .fc-h-event.fc-selected .fc-resizer {
  426 + /* 8x8 little dot */
  427 + border-radius: 4px;
  428 + border-width: 1px;
  429 + width: 6px;
  430 + height: 6px;
  431 + border-style: solid;
  432 + border-color: inherit;
  433 + background: #fff;
  434 + /* vertically center */
  435 + top: 50%;
  436 + margin-top: -4px;
  437 + }
  438 +
  439 + /* left resizer */
  440 + .fc-ltr .fc-h-event.fc-selected .fc-start-resizer,
  441 + .fc-rtl .fc-h-event.fc-selected .fc-end-resizer {
  442 + margin-left: -4px;
  443 + /* centers the 8x8 dot on the left edge */
  444 + }
  445 +
  446 + /* right resizer */
  447 + .fc-ltr .fc-h-event.fc-selected .fc-end-resizer,
  448 + .fc-rtl .fc-h-event.fc-selected .fc-start-resizer {
  449 + margin-right: -4px;
  450 + /* centers the 8x8 dot on the right edge */
  451 + }
  452 +
  453 + /* DayGrid events
  454 + ----------------------------------------------------------------------------------------------------
  455 + We use the full "fc-day-grid-event" class instead of using descendants because the event won't
  456 + be a descendant of the grid when it is being dragged.
  457 + */
  458 + .fc-day-grid-event {
  459 + margin: 1px 2px 0;
  460 + /* spacing between events and edges */
  461 + padding: 0 1px;
  462 + }
  463 +
  464 + tr:first-child > td > .fc-day-grid-event {
  465 + margin-top: 2px;
  466 + /* a little bit more space before the first event */
  467 + }
  468 +
  469 + .fc-mirror-skeleton tr:first-child > td > .fc-day-grid-event {
  470 + margin-top: 0;
  471 + /* except for mirror skeleton */
  472 + }
  473 +
  474 + .fc-day-grid-event .fc-content {
  475 + /* force events to be one-line tall */
  476 + white-space: nowrap;
  477 + overflow: hidden;
  478 + }
  479 +
  480 + .fc-day-grid-event .fc-time {
  481 + font-weight: bold;
  482 + }
  483 +
  484 + /* resizer (cursor devices) */
  485 + /* left resizer */
  486 + .fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer,
  487 + .fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer {
  488 + margin-left: -2px;
  489 + /* to the day cell's edge */
  490 + }
  491 +
  492 + /* right resizer */
  493 + .fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer,
  494 + .fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer {
  495 + margin-right: -2px;
  496 + /* to the day cell's edge */
  497 + }
  498 +
  499 + /* Event Limiting
  500 + --------------------------------------------------------------------------------------------------*/
  501 + /* "more" link that represents hidden events */
  502 + a.fc-more {
  503 + margin: 1px 3px;
  504 + font-size: 0.85em;
  505 + cursor: pointer;
  506 + text-decoration: none;
  507 + }
  508 +
  509 + a.fc-more:hover {
  510 + text-decoration: underline;
  511 + }
  512 +
  513 + .fc-limited {
  514 + /* rows and cells that are hidden because of a "more" link */
  515 + display: none;
  516 + }
  517 +
  518 + /* popover that appears when "more" link is clicked */
  519 + .fc-day-grid .fc-row {
  520 + z-index: 1;
  521 + /* make the "more" popover one higher than this */
  522 + }
  523 +
  524 + .fc-more-popover {
  525 + z-index: 2;
  526 + width: 220px;
  527 + }
  528 +
  529 + .fc-more-popover .fc-event-container {
  530 + padding: 10px;
  531 + }
  532 +
  533 + /* Now Indicator
  534 + --------------------------------------------------------------------------------------------------*/
  535 + .fc-now-indicator {
  536 + position: absolute;
  537 + border: 0 solid red;
  538 + }
  539 +
  540 + /* Utilities
  541 + --------------------------------------------------------------------------------------------------*/
  542 + .fc-unselectable {
  543 + -webkit-user-select: none;
  544 + -khtml-user-select: none;
  545 + -moz-user-select: none;
  546 + -ms-user-select: none;
  547 + user-select: none;
  548 + -webkit-touch-callout: none;
  549 + -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  550 + }
  551 +
  552 + /*
  553 + TODO: more distinction between this file and common.css
  554 + */
  555 + /* Colors
  556 + --------------------------------------------------------------------------------------------------*/
  557 + .fc-unthemed th,
  558 + .fc-unthemed td,
  559 + .fc-unthemed thead,
  560 + .fc-unthemed tbody,
  561 + .fc-unthemed .fc-divider,
  562 + .fc-unthemed .fc-row,
  563 + .fc-unthemed .fc-content,
  564 + .fc-unthemed .fc-popover,
  565 + .fc-unthemed .fc-list-view,
  566 + .fc-unthemed .fc-list-heading td {
  567 + border-color: #ddd;
  568 + }
  569 +
  570 + .fc-unthemed .fc-popover {
  571 + background-color: #fff;
  572 + }
  573 +
  574 + .fc-unthemed .fc-divider,
  575 + .fc-unthemed .fc-popover .fc-header,
  576 + .fc-unthemed .fc-list-heading td {
  577 + background: #eee;
  578 + }
  579 +
  580 + .fc-unthemed td.fc-today {
  581 + background: #fcf8e3;
  582 + }
  583 +
  584 + .fc-unthemed .fc-disabled-day {
  585 + background: #d7d7d7;
  586 + opacity: 0.3;
  587 + }
  588 +
  589 + /* Icons
  590 + --------------------------------------------------------------------------------------------------
  591 + from https://feathericons.com/ and built with IcoMoon
  592 + */
  593 + @font-face {
  594 + font-family: "fcicons";
  595 + src: url("data:application/x-font-ttf;charset=utf-8;base64,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") format("truetype");
  596 + font-weight: normal;
  597 + font-style: normal;
  598 + }
  599 + .fc-icon {
  600 + /* use !important to prevent issues with browser extensions that change fonts */
  601 + font-family: "fcicons" !important;
  602 + speak: none;
  603 + font-style: normal;
  604 + font-weight: normal;
  605 + font-variant: normal;
  606 + text-transform: none;
  607 + line-height: 1;
  608 + /* Better Font Rendering =========== */
  609 + -webkit-font-smoothing: antialiased;
  610 + -moz-osx-font-smoothing: grayscale;
  611 + }
  612 +
  613 + .fc-icon-chevron-left:before {
  614 + content: "";
  615 + }
  616 +
  617 + .fc-icon-chevron-right:before {
  618 + content: "";
  619 + }
  620 +
  621 + .fc-icon-chevrons-left:before {
  622 + content: "";
  623 + }
  624 +
  625 + .fc-icon-chevrons-right:before {
  626 + content: "";
  627 + }
  628 +
  629 + .fc-icon-minus-square:before {
  630 + content: "";
  631 + }
  632 +
  633 + .fc-icon-plus-square:before {
  634 + content: "";
  635 + }
  636 +
  637 + .fc-icon-x:before {
  638 + content: "";
  639 + }
  640 +
  641 + .fc-icon {
  642 + display: inline-block;
  643 + width: 1em;
  644 + height: 1em;
  645 + text-align: center;
  646 + }
  647 +
  648 + /* Buttons
  649 + --------------------------------------------------------------------------------------------------
  650 + Lots taken from Flatly (MIT): https://bootswatch.com/4/flatly/bootstrap.css
  651 + */
  652 + /* reset */
  653 + .fc-button {
  654 + border-radius: 0;
  655 + overflow: visible;
  656 + text-transform: none;
  657 + margin: 0;
  658 + font-family: inherit;
  659 + font-size: inherit;
  660 + line-height: inherit;
  661 + }
  662 +
  663 + .fc-button:focus {
  664 + outline: 1px dotted;
  665 + outline: 5px auto -webkit-focus-ring-color;
  666 + }
  667 +
  668 + .fc-button {
  669 + -webkit-appearance: button;
  670 + }
  671 +
  672 + .fc-button:not(:disabled) {
  673 + cursor: pointer;
  674 + }
  675 +
  676 + .fc-button::-moz-focus-inner {
  677 + padding: 0;
  678 + border-style: none;
  679 + }
  680 +
  681 + /* theme */
  682 + .fc-button {
  683 + display: inline-block;
  684 + font-weight: 400;
  685 + color: #212529;
  686 + text-align: center;
  687 + vertical-align: middle;
  688 + -webkit-user-select: none;
  689 + -moz-user-select: none;
  690 + -ms-user-select: none;
  691 + user-select: none;
  692 + background-color: transparent;
  693 + border: 1px solid transparent;
  694 + padding: 0.4em 0.65em;
  695 + font-size: 1em;
  696 + line-height: 1.5;
  697 + border-radius: 0.25em;
  698 + }
  699 +
  700 + .fc-button:hover {
  701 + color: #212529;
  702 + text-decoration: none;
  703 + }
  704 +
  705 + .fc-button:focus {
  706 + outline: 0;
  707 + -webkit-box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25);
  708 + box-shadow: 0 0 0 0.2rem rgba(44, 62, 80, 0.25);
  709 + }
  710 +
  711 + .fc-button:disabled {
  712 + opacity: 0.65;
  713 + }
  714 +
  715 + /* "primary" coloring */
  716 + .fc-button-primary {
  717 + color: #fff;
  718 + background-color: #2C3E50;
  719 + border-color: #2C3E50;
  720 + }
  721 +
  722 + .fc-button-primary:hover {
  723 + color: #fff;
  724 + background-color: #1e2b37;
  725 + border-color: #1a252f;
  726 + }
  727 +
  728 + .fc-button-primary:focus {
  729 + -webkit-box-shadow: none;
  730 + box-shadow: none;
  731 + }
  732 +
  733 + .fc-button-primary:disabled {
  734 + color: #fff;
  735 + background-color: #2C3E50;
  736 + border-color: #2C3E50;
  737 + }
  738 +
  739 + .fc-button-primary:not(:disabled):active,
  740 + .fc-button-primary:not(:disabled).fc-button-active {
  741 + color: #fff;
  742 + background-color: #1a252f;
  743 + border-color: #151e27;
  744 + }
  745 +
  746 + .fc-button-primary:not(:disabled):active:focus,
  747 + .fc-button-primary:not(:disabled).fc-button-active:focus {
  748 + -webkit-box-shadow: none;
  749 + box-shadow: none;
  750 + }
  751 +
  752 + /* icons within buttons */
  753 + .fc-button .fc-icon {
  754 + vertical-align: middle;
  755 + font-size: 1.5em;
  756 + }
  757 +
  758 + /* Buttons Groups
  759 + --------------------------------------------------------------------------------------------------*/
  760 + .fc-button-group {
  761 + position: relative;
  762 + display: -webkit-inline-box;
  763 + display: -ms-inline-flexbox;
  764 + display: inline-flex;
  765 + vertical-align: middle;
  766 + }
  767 +
  768 + .fc-button-group > .fc-button {
  769 + position: relative;
  770 + -webkit-box-flex: 1;
  771 + -ms-flex: 1 1 auto;
  772 + flex: 1 1 auto;
  773 + }
  774 +
  775 + .fc-button-group > .fc-button:hover {
  776 + z-index: 1;
  777 + }
  778 +
  779 + .fc-button-group > .fc-button:focus,
  780 + .fc-button-group > .fc-button:active,
  781 + .fc-button-group > .fc-button.fc-button-active {
  782 + z-index: 1;
  783 + }
  784 +
  785 + .fc-button-group > .fc-button:not(:first-child) {
  786 + margin-left: -1px;
  787 + }
  788 +
  789 + .fc-button-group > .fc-button:not(:last-child) {
  790 + border-top-right-radius: 0;
  791 + border-bottom-right-radius: 0;
  792 + }
  793 +
  794 + .fc-button-group > .fc-button:not(:first-child) {
  795 + border-top-left-radius: 0;
  796 + border-bottom-left-radius: 0;
  797 + }
  798 +
  799 + /* Popover
  800 + --------------------------------------------------------------------------------------------------*/
  801 + .fc-unthemed .fc-popover {
  802 + border-width: 1px;
  803 + border-style: solid;
  804 + }
  805 +
  806 + /* List View
  807 + --------------------------------------------------------------------------------------------------*/
  808 + .fc-unthemed .fc-list-item:hover td {
  809 + background-color: #f5f5f5;
  810 + }
  811 +
  812 + /* Toolbar
  813 + --------------------------------------------------------------------------------------------------*/
  814 + .fc-toolbar {
  815 + display: flex;
  816 + justify-content: space-between;
  817 + align-items: center;
  818 + }
  819 +
  820 + .fc-toolbar.fc-header-toolbar {
  821 + margin-bottom: 1.5em;
  822 + }
  823 +
  824 + .fc-toolbar.fc-footer-toolbar {
  825 + margin-top: 1.5em;
  826 + }
  827 +
  828 + /* inner content */
  829 + .fc-toolbar > * > :not(:first-child) {
  830 + margin-left: 0.75em;
  831 + }
  832 +
  833 + .fc-toolbar h2 {
  834 + font-size: 1.75em;
  835 + margin: 0;
  836 + }
  837 +
  838 + /* View Structure
  839 + --------------------------------------------------------------------------------------------------*/
  840 + .fc-view-container {
  841 + position: relative;
  842 + }
  843 +
  844 + /* undo twitter bootstrap's box-sizing rules. normalizes positioning techniques */
  845 + /* don't do this for the toolbar because we'll want bootstrap to style those buttons as some pt */
  846 + .fc-view-container *,
  847 + .fc-view-container *:before,
  848 + .fc-view-container *:after {
  849 + -webkit-box-sizing: content-box;
  850 + -moz-box-sizing: content-box;
  851 + box-sizing: content-box;
  852 + }
  853 +
  854 + .fc-view,
  855 + .fc-view > table {
  856 + /* so dragged elements can be above the view's main element */
  857 + position: relative;
  858 + z-index: 1;
  859 + }
  860 +
  861 + @media print {
  862 + .fc {
  863 + max-width: 100% !important;
  864 + }
  865 +
  866 + /* Global Event Restyling
  867 + --------------------------------------------------------------------------------------------------*/
  868 + .fc-event {
  869 + background: #fff !important;
  870 + color: #000 !important;
  871 + page-break-inside: avoid;
  872 + }
  873 +
  874 + .fc-event .fc-resizer {
  875 + display: none;
  876 + }
  877 +
  878 + /* Table & Day-Row Restyling
  879 + --------------------------------------------------------------------------------------------------*/
  880 + .fc th,
  881 + .fc td,
  882 + .fc hr,
  883 + .fc thead,
  884 + .fc tbody,
  885 + .fc-row {
  886 + border-color: #ccc !important;
  887 + background: #fff !important;
  888 + }
  889 +
  890 + /* kill the overlaid, absolutely-positioned components */
  891 + /* common... */
  892 + .fc-bg,
  893 + .fc-bgevent-skeleton,
  894 + .fc-highlight-skeleton,
  895 + .fc-mirror-skeleton,
  896 + .fc-bgevent-container,
  897 + .fc-business-container,
  898 + .fc-highlight-container,
  899 + .fc-mirror-container {
  900 + display: none;
  901 + }
  902 +
  903 + /* don't force a min-height on rows (for DayGrid) */
  904 + .fc tbody .fc-row {
  905 + height: auto !important;
  906 + /* undo height that JS set in distributeHeight */
  907 + min-height: 0 !important;
  908 + /* undo the min-height from each view's specific stylesheet */
  909 + }
  910 +
  911 + .fc tbody .fc-row .fc-content-skeleton {
  912 + position: static;
  913 + /* undo .fc-rigid */
  914 + padding-bottom: 0 !important;
  915 + /* use a more border-friendly method for this... */
  916 + }
  917 +
  918 + .fc tbody .fc-row .fc-content-skeleton tbody tr:last-child td {
  919 + /* only works in newer browsers */
  920 + padding-bottom: 1em;
  921 + /* ...gives space within the skeleton. also ensures min height in a way */
  922 + }
  923 +
  924 + .fc tbody .fc-row .fc-content-skeleton table {
  925 + /* provides a min-height for the row, but only effective for IE, which exaggerates this value,
  926 + making it look more like 3em. for other browers, it will already be this tall */
  927 + height: 1em;
  928 + }
  929 +
  930 + /* Undo month-view event limiting. Display all events and hide the "more" links
  931 + --------------------------------------------------------------------------------------------------*/
  932 + .fc-more-cell,
  933 + .fc-more {
  934 + display: none !important;
  935 + }
  936 +
  937 + .fc tr.fc-limited {
  938 + display: table-row !important;
  939 + }
  940 +
  941 + .fc td.fc-limited {
  942 + display: table-cell !important;
  943 + }
  944 +
  945 + .fc-popover {
  946 + display: none;
  947 + /* never display the "more.." popover in print mode */
  948 + }
  949 +
  950 + /* TimeGrid Restyling
  951 + --------------------------------------------------------------------------------------------------*/
  952 + /* undo the min-height 100% trick used to fill the container's height */
  953 + .fc-time-grid {
  954 + min-height: 0 !important;
  955 + }
  956 +
  957 + /* don't display the side axis at all ("all-day" and time cells) */
  958 + .fc-timeGrid-view .fc-axis {
  959 + display: none;
  960 + }
  961 +
  962 + /* don't display the horizontal lines */
  963 + .fc-slats,
  964 + .fc-time-grid hr {
  965 + /* this hr is used when height is underused and needs to be filled */
  966 + display: none !important;
  967 + /* important overrides inline declaration */
  968 + }
  969 +
  970 + /* let the container that holds the events be naturally positioned and create real height */
  971 + .fc-time-grid .fc-content-skeleton {
  972 + position: static;
  973 + }
  974 +
  975 + /* in case there are no events, we still want some height */
  976 + .fc-time-grid .fc-content-skeleton table {
  977 + height: 4em;
  978 + }
  979 +
  980 + /* kill the horizontal spacing made by the event container. event margins will be done below */
  981 + .fc-time-grid .fc-event-container {
  982 + margin: 0 !important;
  983 + }
  984 +
  985 + /* TimeGrid *Event* Restyling
  986 + --------------------------------------------------------------------------------------------------*/
  987 + /* naturally position events, vertically stacking them */
  988 + .fc-time-grid .fc-event {
  989 + position: static !important;
  990 + margin: 3px 2px !important;
  991 + }
  992 +
  993 + /* for events that continue to a future day, give the bottom border back */
  994 + .fc-time-grid .fc-event.fc-not-end {
  995 + border-bottom-width: 1px !important;
  996 + }
  997 +
  998 + /* indicate the event continues via "..." text */
  999 + .fc-time-grid .fc-event.fc-not-end:after {
  1000 + content: "...";
  1001 + }
  1002 +
  1003 + /* for events that are continuations from previous days, give the top border back */
  1004 + .fc-time-grid .fc-event.fc-not-start {
  1005 + border-top-width: 1px !important;
  1006 + }
  1007 +
  1008 + /* indicate the event is a continuation via "..." text */
  1009 + .fc-time-grid .fc-event.fc-not-start:before {
  1010 + content: "...";
  1011 + }
  1012 +
  1013 + /* time */
  1014 + /* undo a previous declaration and let the time text span to a second line */
  1015 + .fc-time-grid .fc-event .fc-time {
  1016 + white-space: normal !important;
  1017 + }
  1018 +
  1019 + /* hide the the time that is normally displayed... */
  1020 + .fc-time-grid .fc-event .fc-time span {
  1021 + display: none;
  1022 + }
  1023 +
  1024 + /* ...replace it with a more verbose version (includes AM/PM) stored in an html attribute */
  1025 + .fc-time-grid .fc-event .fc-time:after {
  1026 + content: attr(data-full);
  1027 + }
  1028 +
  1029 + /* Vertical Scroller & Containers
  1030 + --------------------------------------------------------------------------------------------------*/
  1031 + /* kill the scrollbars and allow natural height */
  1032 + .fc-scroller,
  1033 + .fc-day-grid-container,
  1034 + .fc-time-grid-container {
  1035 + /* */
  1036 + overflow: visible !important;
  1037 + height: auto !important;
  1038 + }
  1039 +
  1040 + /* kill the horizontal border/padding used to compensate for scrollbars */
  1041 + .fc-row {
  1042 + border: 0 !important;
  1043 + margin: 0 !important;
  1044 + }
  1045 +
  1046 + /* Button Controls
  1047 + --------------------------------------------------------------------------------------------------*/
  1048 + .fc-button-group,
  1049 + .fc button {
  1050 + display: none;
  1051 + /* don't display any button-related controls */
  1052 + }
  1053 + }
  1054 +