.hr_pc {
  width: 350px;
  position: relative;
}
.hr_pc__select_text {
  margin: 10px 0;
  text-align: center;
}
.hr_pc__error {
  color: red;
  margin: 10px 0;
  text-align: center;
}
.hr_pc__buttons {
  display: flex;
  margin-top: 20px;
  justify-content: space-between;
}
.hr_pc__button {
  padding: 5px 8px;
  border-radius: 3px;
  border: 1px solid rgba(0, 0, 0, 0);
}
.hr_pc__button:not(:disabled):hover {
  cursor: pointer;
}
.hr_pc__button:disabled {
  opacity: 0.5;
}
.hr_pc__button:disabled :hover {
  cursor: not-allowed;
}
.hr_pc__clear_button {
  color: #333;
  border-color: #333;
  background-color: #fff;
}
.hr_pc__apply_button {
  color: #fff;
  background-color: #333;
}
.hr_tooltip {
  z-index: 10;
  width: 180px;
  color: #fff;
  font-size: 14px;
  position: absolute;
  border-radius: 3px;
  background-color: #333;
}
.hr_tooltip__content {
  padding: 5px 8px;
}
.hr_cal {
  --hr_cal-color_selectable: #333;
  --hr_cal-bg_selectable: #e4f4d9;
  --hr_cal-price_color_selectable: #666;
  --hr_cal-color_passthrough: #999;
  --hr_cal-bg_passthrough: #eee;
  --hr_cal-price_color_passthrough: #999;
  --hr_cal-color_selected: #333;
  --hr_cal-bg_selected: #b7db9f;
  --hr_cal-price_color_selected: #666;
  --hr_cal-color_blocked: #881616;
  --hr_cal-bg_blocked: #fdd2d2;
  --hr_cal-color_booked: #881616;
  --hr_cal-bg_booked: #fdd2d2;
  --hr_cal-color_disabled: #999;
  --hr_cal-bg_disabled: #eee;
  --hr_cal-color_unavailable: #999;
  --hr_cal-bg_unavailable: #eee;
  width: 350px;
  margin: 0 auto;
  text-align: center;
}
.hr_cal__navigation {
  display: flex;
  flex-wrap: nowrap;
  margin-bottom: 10px;
  align-items: center;
}
.hr_cal__nav {
  padding: 5px;
  color: #999;
  border-radius: 3px;
  border: 1px solid #999;
  background-color: rgba(0, 0, 0, 0);
}
.hr_cal__nav:not(:disabled):hover {
  cursor: pointer;
  color: #333;
  border-color: #333;
}
.hr_cal__nav:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.hr_cal__month {
  flex-grow: 1;
  padding: 5px;
  font-size: 20px;
}
.hr_cal__weekdays {
  display: grid;
  font-weight: bold;
  margin-bottom: 10px;
  grid-template-columns: repeat(7, 1fr);
}
.hr_cal__days {
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
}
.hr_cal .day {
  height: 50px;
  flex: 0 0 50px;
  display: flex;
  text-align: center;
  line-height: 50px;
  overflow: hidden;
  user-select: none;
  position: relative;
  flex-direction: column;
}
.hr_cal .day .price {
  left: 0;
  right: 0;
  top: 50%;
  z-index: 5;
  color: var(--hr_cal-price_color_selectable);
  line-height: 1;
  font-size: 11px;
  margin-top: 8px;
  position: absolute;
  text-align: center;
}
.hr_cal .day .date {
  z-index: 5;
  position: relative;
  box-shadow: 1px 1px 0 0 #fff inset;
}
.hr_cal .day.disabled,
.hr_cal .day.unavailable {
  color: var(--hr_cal-color_unavailable);
}
.hr_cal .day.disabled .price,
.hr_cal .day.unavailable .price {
  display: none;
}
.hr_cal .day:not(.selectable):not(.disabled):not(.selected).booked {
  color: var(--hr_cal-color_booked);
}
.hr_cal .day:not(.selectable):not(.disabled):not(.selected).booked .price {
  display: none;
}
.hr_cal .day:not(.selectable):not(.disabled):not(.selected).blocked {
  color: var(--hr_cal-color_blocked);
}
.hr_cal .day:not(.selectable):not(.disabled):not(.selected).blocked .price {
  display: none;
}
.hr_cal .day:not(.disabled):not(.selected).pass-through {
  color: var(--hr_cal-color_passthrough);
}
.hr_cal .day:not(.disabled):not(.selected).pass-through .price {
  color: var(--hr_cal-price_color_passthrough);
}
.hr_cal .day:not(.disabled).checkin-blocked:not(.pass-through) {
  color: var(--hr_cal-color_blocked);
}
.hr_cal .day:not(.disabled).checkin-blocked:not(.pass-through) .price {
  display: none;
}
.hr_cal .day:not(.disabled).checkin-booked {
  color: var(--hr_cal-color_booked);
}
.hr_cal .day:not(.disabled).checkin-booked .price {
  display: none;
}
.hr_cal
  .day:not(.checkin-booked):not(.checkin-blocked):not(.unavailable):not(.disabled):not(
    .pass-through
  )
  .date,
.hr_cal .day.selectable:not(.pass-through) .date,
.hr_cal .day.selected .date {
  font-weight: 600;
}
.hr_cal .day.selectable .date {
  color: var(--hr_cal-color_selectable);
}
.hr_cal .day:not(.disabled) {
  cursor: pointer;
}
.hr_cal .day:not(.disabled).selected,
.hr_cal .day:not(.disabled).hovered {
  color: var(--hr_cal-color_selected) !important;
}
.hr_cal .day:not(.disabled).selected .price,
.hr_cal .day:not(.disabled).hovered .price {
  color: var(--hr_cal-price_color_selected) !important;
}
.hr_cal .day:not(.disabled).disabled:hover,
.hr_cal .day:not(.disabled).booked:hover {
  cursor: not-allowed;
}
.hr_cal.color-flat .day.disabled,
.hr_cal.color-flat .day.unavailable {
  background-color: var(--hr_cal-bg_unavailable);
}
.hr_cal.color-flat .day:not(.disabled).checkout-available {
  background-color: var(--hr_cal-bg_selectable);
}
.hr_cal.color-flat .day:not(.disabled).checkout-booked {
  background-color: var(--hr_cal-bg_unavailable);
}
.hr_cal.color-flat .day:not(.disabled).checkin-blocked:not(.pass-through):not(.checkout-available) {
  background-color: var(--hr_cal-bg_blocked);
}
.hr_cal.color-flat .day:not(.disabled).checkin-available {
  background-color: var(--hr_cal-bg_selectable);
}
.hr_cal.color-flat .day:not(.disabled).checkin-booked {
  background-color: var(--hr_cal-bg_unavailable);
}
.hr_cal.color-flat .day:not(.disabled).selected,
.hr_cal.color-flat .day:not(.disabled).hovered {
  background: var(--hr_cal-bg_selected) !important;
}
.hr_cal.color-striped .day {
  color: var(--hr_cal-color_selectable);
}
.hr_cal.color-striped .day .before,
.hr_cal.color-striped .day .after {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  content: '';
  position: absolute;
}
.hr_cal.color-striped .day .before,
.hr_cal.color-striped .day .after {
  background-color: var(--hr_cal-bg_selectable);
}
.hr_cal.color-striped .day .after {
  width: 100%;
  padding-bottom: calc(100% + 1px);
  transform: skewX(-45deg);
  transform-origin: 0 100%;
}
.hr_cal.color-striped .day.disabled .before,
.hr_cal.color-striped .day.unavailable .before {
  background-color: var(--hr_cal-bg_unavailable);
}
.hr_cal.color-striped .day.disabled .after,
.hr_cal.color-striped .day.unavailable .after {
  transform: none;
  transform-origin: 0 0;
  padding-bottom: 0;
  background: linear-gradient(
    to top left,
    rgba(0, 0, 0, 0) 0%,
    rgba(0, 0, 0, 0) calc(50% - 0.8px),
    rgba(0, 0, 0, 0.1) 50%,
    rgba(0, 0, 0, 0) calc(50% + 0.8px),
    rgba(0, 0, 0, 0) 100%
  );
}
.hr_cal.color-striped .day:not(.selectable):not(.disabled):not(.selected).booked .before,
.hr_cal.color-striped .day:not(.selectable):not(.disabled):not(.selected).booked .after {
  background-color: var(--hr_cal-bg_booked);
}
.hr_cal.color-striped .day:not(.selectable):not(.disabled):not(.selected).blocked .before,
.hr_cal.color-striped .day:not(.selectable):not(.disabled):not(.selected).blocked .after {
  background-color: var(--hr_cal-bg_blocked);
}
.hr_cal.color-striped .day:not(.disabled):not(.selected).pass-through .before,
.hr_cal.color-striped .day:not(.disabled):not(.selected).pass-through .after {
  background-color: var(--hr_cal-bg_passthrough);
}
.hr_cal.color-striped .day:not(.disabled).checkout-available:not(.selectable-first) .before {
  background-color: var(--hr_cal-bg_selectable);
}
.hr_cal.color-striped .day:not(.disabled).checkout-blocked:not(.pass-through) .before {
  background-color: var(--hr_cal-bg_blocked);
}
.hr_cal.color-striped .day:not(.disabled).checkout-booked .before {
  background-color: var(--hr_cal-bg_booked);
}
.hr_cal.color-striped .day:not(.disabled).checkin-available .after {
  background-color: var(--hr_cal-bg_selectable);
}
.hr_cal.color-striped
  .day:not(.disabled).checkin-blocked:not(.pass-through):not(.selectable-last)
  .after {
  background-color: var(--hr_cal-bg_blocked);
}
.hr_cal.color-striped .day:not(.disabled).checkin-booked .after {
  background-color: var(--hr_cal-bg_booked);
}
.hr_cal.color-striped .day:not(.disabled).selectable-first .before {
  background: var(--hr_cal-bg_disabled);
}
.hr_cal.color-striped .day:not(.disabled).selectable-last .after {
  background: var(--hr_cal-bg_disabled);
}
.hr_cal.color-striped .day:not(.disabled) {
  cursor: pointer;
}
.hr_cal.color-striped .day:not(.disabled).selected:not(.checkin) .before,
.hr_cal.color-striped .day:not(.disabled).selected:not(.checkout) .after,
.hr_cal.color-striped .day:not(.disabled).hovered:not(.checkin) .before,
.hr_cal.color-striped .day:not(.disabled).hovered:not(.checkout) .after {
  background: var(--hr_cal-bg_selected) !important;
}
