.fc table {
  margin:0;
}

.fc tr {
  border:none;
}

.fc a, .fc a:hover {
  box-shadow: 0 0 0;
  -webkit-box-shadow: none;
  transition: none;
  cursor:pointer;
  text-decoration: none;
}

.fc button, .pgc-calendar-filter label {
  font-weight:normal;
}

.pgc-calendar-widget.fc-toolbar {
  font-size:80%;
}

.pgc-calendar-widget h2 {
  font-size:100%;
}

/* To fix bug where listview does not respect hieght:auto setting */
.fc-scroller {
  height: auto !important;
}

.fc-view-container {
  position: relative;
}

.pgc-loading .fc-view-container:after,
.pgc-loading-error .fc-view-container:after {
  position:absolute;
  top:0;
  left:0;
  z-index:1;
  padding:.2rem;
}

.pgc-loading .fc-view-container:after {
  content: "Loading...";
  background-color:#fcf8e3;
}

.pgc-loading-error .fc-view-container:after {
  background-color:red;
  content: "Error";
}

.pgc-calendar-filter input[type=checkbox]:focus + label span,
.pgc-calendar-filter input[type=checkbox]:active + label span {
  outline: 1px dashed black;
}

.pgc-calendar-filter input[type=checkbox] {
  opacity:0; /* display:none and visibility:hidden are not accessible */
  position:absolute; /* remove from document flow */
}

.pgc-calendar-color {
  width:1rem;
  height:1rem;
  padding:0 .2rem;
  opacity:.4;
}

.pgc-calendar-filter input[type=checkbox]:checked + label span {
  opacity:1;
}

.pgc-calendar-filter input[type=checkbox] + label span:before {
  content: "✔";
  line-height:1rem;
  visibility:hidden;
}

.pgc-calendar-filter input[type=checkbox]:checked + label span:before {
  visibility: visible;
}
