.events-portlet .portlet-body {
  margin: 0;
  display: grid;
  grid-template-rows: auto 1fr auto;
  grid-template-columns: 100%;
}
.events-portlet .title::before {
  content: "\f1fa";
}
.events-portlet .cal {
  position: absolute;
  top: 1rem;
  width: 2rem;
  height: 2rem;
  border: none;
  overflow: hidden;
  color: var(--grey-500);
  z-index: 1;
  transition-property: color, filter;
  transition-duration: 0.5s;
  transition-timing-function: ease;
}
.events-portlet .cal.left {
  left: 0;
}
.events-portlet .cal.left::before {
  content: "\f284";
}
.events-portlet .cal.right {
  right: 0;
}
.events-portlet .cal.right::before {
  content: "\f285";
}
.events-portlet .cal:hover, .events-portlet .cal:focus {
  color: var(--grey-800);
  font-weight: 800;
  filter: drop-shadow(0px 0px 2px #000);
}
.events-portlet #showCalendar {
  position: relative;
  width: 100%;
  margin: 1rem auto 0 auto;
  font-family: "Open Sans", Arial;
  font-weight: normal;
}
.events-portlet #showCalendar .taglib-calendar {
  position: relative;
  width: 100%;
}
.events-portlet #showCalendar .taglib-calendar table {
  border: none;
}
.events-portlet #showCalendar .taglib-calendar table caption {
  height: 0;
  position: absolute;
  overflow: hidden;
  padding: 0;
}
.events-portlet #showCalendar .taglib-calendar table tr {
  height: 2em;
}
.events-portlet #showCalendar .taglib-calendar .results-header {
  min-height: 1.5rem;
  background: var(--bs-white);
}
.events-portlet #showCalendar .taglib-calendar .results-header th {
  background: none;
  color: var(--grey-700);
}
.events-portlet #showCalendar .taglib-calendar td.calendar-inactive {
  color: var(--grey-400);
}
.events-portlet #showCalendar .taglib-calendar tr td a {
  background: none;
  border: none;
  color: var(--grey-700);
  font-size: 1em;
  font-weight: 600;
  cursor: default;
  padding: 0;
  height: 100%;
  text-decoration: none;
}
.events-portlet #showCalendar .taglib-calendar .calendar-current-day {
  background-color: var(--blue-300);
}
.events-portlet #showCalendar .taglib-calendar .calendar-current-day a {
  color: var(--bs-white);
}
.events-portlet #showCalendar .taglib-calendar .has-events {
  background-color: var(--grey-100);
}
.events-portlet #showCalendar .taglib-calendar .has-events a span {
  color: var(--blue-500);
  padding-bottom: 2px;
  text-decoration: underline;
  cursor: pointer;
}
.events-portlet #showCalendar .taglib-calendar .has-events:hover, 
.events-portlet #showCalendar .taglib-calendar .has-events:focus, 
.events-portlet #showCalendar .taglib-calendar .has-events:focus-within {
  background-color: var(--green-500);
}
.events-portlet #showCalendar .taglib-calendar .has-events:hover a span, 
.events-portlet #showCalendar .taglib-calendar .has-events:focus a span, 
.events-portlet #showCalendar .taglib-calendar .has-events:focus-within a span {
  color: var(--bs-white);
}
.events-portlet #showCalendar .calendar-header {
  height: 2rem;
  background-color: none;
  border-bottom: 1px solid var(--grey-100);
}
.events-portlet #showCalendar .calendar-header th {
  font-weight: normal;
}

.events-portlet .taglib-calendar tr.portlet-section-header th, 
.events-portlet .taglib-calendar tr td {
    border: 0;
}