.wpsbc-calendars-wrapper {
  width: 100%;
  max-width: 90rem !important;
  margin: 6.4rem auto 0;
  padding: 0 !important;
}

.wpsbc-calendars {
  margin-top: 6.4rem;
  max-width: 90rem !important;
  margin: 2.4rem auto 0;
}
.wpsbc-calendar {
  width: 100%;
  max-width: 100% !important;
}

.wpsbc-container[data-columns] .wpsbc-calendars {
  margin-left: auto;
  margin-right: auto;
}
.wpsbc-container[data-columns] .wpsbc-calendars .wpsbc-calendar {
  margin: 0;
}

.wpsbc-container .wpsbc-calendars .wpsbc-calendar {
  background: transparent;
  border: none;
}

.wpsbc-container .wpsbc-calendars .wpsbc-calendar .wpsbc-calendar-header {
  background: transparent;
  padding: 0;
}

.wpsbc-container .wpsbc-calendars .wpsbc-calendar .wpsbc-calendar-header .wpsbc-select-container select {
  font-size: 2.4rem;
  font-weight: 500;
  border: 1px solid #4bc1c1;
  border-bottom: none;
  height: auto;
  padding: 20px;
  background: #fff;
  border-radius: 2.4rem 2.4rem 0 0;
}

.wpsbc-container .wpsbc-calendars .wpsbc-calendar .wpsbc-calendar-header .wpsbc-calendar-header-navigation {
  padding: 0 5rem;
}

.wpsbc-container .wpsbc-calendars .wpsbc-calendar-wrapper {
  padding: 0;
  border: 1px solid #4bc1c1;
}

.wpsbc-container .wpsbc-calendars .wpsbc-calendar table thead tr th {
  background: #4bc1c1;
  font-size: 2.4rem;
  padding: 1rem;
  font-weight: 500;
  color: #fff;
}

.wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr td .wpsbc-date-inner .wpsbc-date-number {
  font-size: 2.8rem;
  font-weight: 500;
  width: fit-content;
  height: fit-content;
  left: 50%;
  top: 2rem;
  transform: translateX(-50%);
  line-height: 1;
}

.wpsbc-container .wpsbc-calendars .wpsbc-calendar .wpsbc-calendar-header .wpsbc-calendar-header-navigation .wpsbc-next,
.wpsbc-container .wpsbc-calendars .wpsbc-calendar .wpsbc-calendar-header .wpsbc-calendar-header-navigation .wpsbc-prev {
  background: #4bc1c1;
}

.wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-6 div:first-of-type,
.wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-7 div:first-of-type,
.wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-8 div:first-of-type {
  background-color: #fff !important;
}
.wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr td,
.wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr th {
  background: #4bc1c1;
}

.wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-6 div:first-of-type::after {
  content: "●";
  position: absolute;
  top: 65%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 3.2rem;
  width: fit-content;
  height: fit-content;
  color: #4bc1c1;
}

.wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-7 div:first-of-type::after {
  content: "×";
  font-weight: 500;
  position: absolute;
  top: 65%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 3.2rem;
  width: fit-content;
  height: fit-content;
  color: #4bc1c1;
}

.wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-8 div:first-of-type::after {
  content: "▲";
  font-weight: 500;
  position: absolute;
  top: 65%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 3.2rem;
  width: fit-content;
  height: fit-content;
  color: #4bc1c1;
}
.wpsbc-legend {
  border: none;
  padding: 0;
  margin: 0 0 0 auto;
  background: transparent;
}
.wpsbc-calendars-wrapper.wpsbc-legend-position-side .wpsbc-legend {
  position: relative;
  display: flex;
  gap: 1.5em;
  width: max-content;
}

.wpsbc-legend .wpsbc-legend-item-name {
  font-size: 2.4rem;
  line-height: 1.75;
}
.wpsbc-legend .wpsbc-legend-item-icon {
  width: 3.2rem;
  height: 3.2rem;
  margin: 0;
}

.wpsbc-legend .wpsbc-legend-item-icon .wpsbc-legend-item-icon-color::after {
  top: 50% !important;
}

.wpsbc-container.wpsbc-calendar-2 .wpsbc-legend .wpsbc-legend-item-icon-6 div:first-of-type,
.wpsbc-container.wpsbc-calendar-2 .wpsbc-legend .wpsbc-legend-item-icon-7 div:first-of-type,
.wpsbc-container.wpsbc-calendar-2 .wpsbc-legend .wpsbc-legend-item-icon-8 div:first-of-type {
  background: transparent !important;
}

.wpsbc-next.is-disabled,
.wpsbc-prev.is-disabled {
  opacity: 0.7;
}

@media screen and (max-width: 520px) {
  .wpsbc-container .wpsbc-calendars .wpsbc-calendar table thead tr th {
    font-size: 1.6rem;
    padding-bottom: 0 !important;
  }
  .wpsbc-container .wpsbc-calendars .wpsbc-calendar table tr td .wpsbc-date-inner .wpsbc-date-number {
    font-size: 1.4rem;
    font-weight: 500;
    width: fit-content;
    height: fit-content;
    left: 50%;
    top: 0.5rem;
    transform: translateX(-50%);
    line-height: 1;
  }

  .wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-6 div:first-of-type::after {
    content: "●";
    position: absolute;
    top: 65%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1.6rem;
    width: fit-content;
    height: fit-content;
    color: #4bc1c1;
  }

  .wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-7 div:first-of-type::after {
    content: "×";
    font-weight: 500;
    position: absolute;
    top: 65%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1.6rem;
    width: fit-content;
    height: fit-content;
    color: #4bc1c1;
  }

  .wpsbc-container.wpsbc-calendar-2 .wpsbc-legend-item-icon-8 div:first-of-type::after {
    content: "▲";
    font-weight: 500;
    position: absolute;
    top: 65%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 1.6rem;
    width: fit-content;
    height: fit-content;
    color: #4bc1c1;
  }

  .wpsbc-legend .wpsbc-legend-item-name {
    font-size: 1.4rem;
    line-height: 1.75;
  }
  .wpsbc-calendars-wrapper.wpsbc-legend-position-side .wpsbc-legend {
    gap: 1em;
  }
  .wpsbc-legend {
    margin: 0;
  }
  .wpsbc-legend .wpsbc-legend-item-icon {
    width: 1.6rem;
    height: 1.6rem;
  }
  .wpsbc-container .wpsbc-calendars .wpsbc-calendar .wpsbc-calendar-header .wpsbc-select-container select {
    font-size: 1.8rem;
    font-weight: 500;
    border: 1px solid #4bc1c1;
    border-bottom: none;
    height: auto;
    padding: 10px;
    background: #fff;
    border-radius: 2.4rem 2.4rem 0 0;
  }
}
