:root {
  --kobo_color_black: #2c2c2c;
  --kobo_color_mporto: #703030;
  --kobo_color_mpez: #efeae2;

  --kobo_pinpoint_white: #ffffff;
  --kobo_pinpoint_hover: #5b2525;
  --kobo_pinpoint_border: #d8cfc4;
  --kobo_pinpoint_available: #8c9a5b;
  --kobo_pinpoint_booked: #cfc3b7;
  --kobo_pinpoint_error: #b85b5b;
}

/* Main */
.DOPBSPCalendar-wrapper {
  margin: 0;
}

.DOPBSPCalendar-container,
.DOPBSPCalendar-navigation,
.DOPBSPCalendar-month,
.DOPBSPCalendar-month-year,
.DOPBSPCalendar-hours {
  background: var(--kobo_color_mpez) !important;
  border-color: var(--kobo_color_mpez) !important;
  font-family: var(--kobo_font_body, "Inter", sans-serif) !important;
}

.DOPBSPCalendar-container {
  /* box-shadow: 0 18px 45px rgba(44, 44, 44, 0.12) !important;
  border-radius: 18px !important;
  overflow: hidden;
  color: var(--kobo_color_black) !important; */
  box-shadow: unset !important;
  border-radius: 0;
  overflow: hidden;
  color: var(--kobo_color_black) !important;
}

/* Header */
.DOPBSPCalendar-navigation {
  padding-top: 10px !important;
}

.DOPBSPCalendar-navigation .dopbsp-month-year,
.DOPBSPCalendar-month-year {
  color: var(--kobo_color_black) !important;
  font-family: var(--kobo_font_headings, "Inter", sans-serif) !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
}

/* Week days */
.DOPBSPCalendar-navigation .dopbsp-week .dopbsp-day {
  color: var(--kobo_color_mporto) !important;
  font-family: var(--kobo_font_body, "Inter", sans-serif) !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  font-size: 11px !important;
}

/* Navigation buttons */
.DOPBSPCalendar-navigation .dopbsp-add-btn,
.DOPBSPCalendar-navigation .dopbsp-next-btn,
.DOPBSPCalendar-navigation .dopbsp-previous-btn,
.DOPBSPCalendar-navigation .dopbsp-remove-btn {
  background-color: var(--kobo_color_mporto) !important;
  border-radius: 50% !important;
  transition: all 0.25s ease !important;
}

.DOPBSPCalendar-navigation .dopbsp-add-btn:hover,
.DOPBSPCalendar-navigation .dopbsp-next-btn:hover,
.DOPBSPCalendar-navigation .dopbsp-previous-btn:hover,
.DOPBSPCalendar-navigation .dopbsp-remove-btn:hover {
  background-color: var(--kobo_pinpoint_hover) !important;
  transform: scale(1.08);
}

.DOPBSPCalendar-navigation .dopbsp-add-btn .dopbsp-info,
.DOPBSPCalendar-navigation .dopbsp-next-btn .dopbsp-info,
.DOPBSPCalendar-navigation .dopbsp-previous-btn .dopbsp-info,
.DOPBSPCalendar-navigation .dopbsp-remove-btn .dopbsp-info {
  background: var(--kobo_color_mporto) !important;
  color: #fff !important;
}

/* Days base */
.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-head,
.DOPBSPCalendar-day .dopbsp-bind-left .dopbsp-head,
.DOPBSPCalendar-day .dopbsp-bind-right .dopbsp-head,
.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-head .dopbsp-co,
.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-head .dopbsp-ci {
  background: #fff !important;
  border-top-color: var(--kobo_pinpoint_border) !important;
}

.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-body,
.DOPBSPCalendar-day .dopbsp-bind-left .dopbsp-body,
.DOPBSPCalendar-day .dopbsp-bind-right .dopbsp-body {
  background: #fff !important;
  border-color: #fff !important;
  color: var(--kobo_color_black) !important;
}

.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-head .dopbsp-day {
  color: var(--kobo_color_black) !important;
  font-family: var(--kobo_font_body, "Inter", sans-serif) !important;
  font-weight: 600 !important;
}

.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-body .dopbsp-price,
.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-body .dopbsp-old-price,
.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-body .dopbsp-available,
.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-body .dopbsp-info-body {
  color: var(--kobo_color_black) !important;
  font-family: var(--kobo_font_body, "Inter", sans-serif) !important;
}

/* Available */
.DOPBSPCalendar-day.dopbsp-available .dopbsp-head,
.DOPBSPCalendar-day .dopbsp-head .dopbsp-co.dopbsp-available,
.DOPBSPCalendar-day .dopbsp-head .dopbsp-ci.dopbsp-available,
.DOPBSPCalendar-day .dopbsp-bind-left.dopbsp-extended.dopbsp-available .dopbsp-head {
  background: var(--kobo_pinpoint_available) !important;
  border-color: var(--kobo_pinpoint_available) !important;
}

.DOPBSPCalendar-day.dopbsp-available .dopbsp-head .dopbsp-day {
  color: #fff !important;
}

/* Booked */
.DOPBSPCalendar-day.dopbsp-booked .dopbsp-head,
.DOPBSPCalendar-day .dopbsp-head .dopbsp-co.dopbsp-booked,
.DOPBSPCalendar-day .dopbsp-head .dopbsp-ci.dopbsp-booked {
  background: var(--kobo_pinpoint_booked) !important;
  border-color: var(--kobo_pinpoint_booked) !important;
}

.DOPBSPCalendar-day.dopbsp-booked .dopbsp-head .dopbsp-day {
  color: var(--kobo_color_black) !important;
}

/* Special / unavailable */
.DOPBSPCalendar-day.dopbsp-special .dopbsp-head,
.DOPBSPCalendar-day .dopbsp-head .dopbsp-co.dopbsp-special,
.DOPBSPCalendar-day .dopbsp-head .dopbsp-ci.dopbsp-special,
.DOPBSPCalendar-day.dopbsp-unavailable .dopbsp-head,
.DOPBSPCalendar-day .dopbsp-head .dopbsp-co.dopbsp-unavailable,
.DOPBSPCalendar-day .dopbsp-head .dopbsp-ci.dopbsp-unavailable {
  background: #fff !important;
  border-color: var(--kobo_color_mporto) !important;
}

/* Selected */
.DOPBSPCalendar-day.dopbsp-selected .dopbsp-head,
.DOPBSPCalendar-day.dopbsp-selected .dopbsp-head .dopbsp-co,
.DOPBSPCalendar-day.dopbsp-selected .dopbsp-head .dopbsp-ci,
.DOPBSPCalendar-day.dopbsp-selected .dopbsp-bind-left.dopbsp-extended .dopbsp-head {
  background: var(--kobo_color_mporto) !important;
  border-color: var(--kobo_color_mporto) !important;
}

.DOPBSPCalendar-day.dopbsp-selected .dopbsp-head .dopbsp-day {
  color: #fff !important;
}

/* Past / other month */
.DOPBSPCalendar-day.dopbsp-past-day {
  opacity: 0.22 !important;
}

.DOPBSPCalendar-day.dopbsp-last-month,
.DOPBSPCalendar-day.dopbsp-next-month {
  opacity: 0.45 !important;
}

/* Info icons */
.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-head .dopbsp-info,
.DOPBSPCalendar-hour .dopbsp-bind-middle .dopbsp-info {
  background-color: var(--kobo_color_mporto) !important;
}

.DOPBSPCalendar-day .dopbsp-bind-middle .dopbsp-head .dopbsp-info:hover,
.DOPBSPCalendar-hour .dopbsp-bind-middle .dopbsp-info:hover {
  background-color: var(--kobo_pinpoint_hover) !important;
}

/* Sidebar */
.DOPBSPCalendar-sidebar,
.DOPBSPCalendar-outer-sidebar {
  font-family: var(--kobo_font_body, "Inter", sans-serif) !important;
}

.DOPBSPCalendar-sidebar .dopbsp-module,
.DOPBSPCalendar-outer-sidebar .dopbsp-module {
  background: var(--kobo_color_mpez) !important;
  border: 0 !important;
  margin: 0 0 20px 0;
  padding: 8px 9px 0 9px;
  min-width: 250px;
  border-radius: 0 !important;
}

.DOPBSPCalendar-sidebar .dopbsp-module h4,
.DOPBSPCalendar-outer-sidebar .dopbsp-module h4 {
  color: var(--kobo_color_black) !important;
  font-family: var(--kobo_font_headings, "Inter", sans-serif) !important;
  font-weight: 600 !important;
} 

.DOPBSPCalendar-sidebar .dopbsp-module .dopbsp-message, .DOPBSPCalendar-outer-sidebar .dopbsp-module .dopbsp-message {
	background: #703030 !important;
}

.DOPBSPCalendar-sidebar .dopbsp-module .dopbsp-input-wrapper label,
.DOPBSPCalendar-outer-sidebar .dopbsp-module .dopbsp-input-wrapper label,
.DOPBSPCalendar-sidebar .dopbsp-module .dopbsp-input-wrapper label a,
.DOPBSPCalendar-outer-sidebar .dopbsp-module .dopbsp-input-wrapper label a {
  color: var(--kobo_color_black) !important;
  font-family: var(--kobo_font_body, "Inter", sans-serif) !important;
}

.DOPBSPCalendar-sidebar .dopbsp-module .dopbsp-input-wrapper label:hover,
.DOPBSPCalendar-outer-sidebar .dopbsp-module .dopbsp-input-wrapper label:hover {
  color: var(--kobo_color_mporto) !important;
}

/* Inputs */
.DOPBSPCalendar-sidebar input[type="text"],
.DOPBSPCalendar-outer-sidebar input[type="text"],
.DOPBSPCalendar-sidebar textarea,
.DOPBSPCalendar-outer-sidebar textarea,
.DOPBSPCalendar-sidebar select,
.DOPBSPCalendar-outer-sidebar select {
  background: #fff !important;
  border: 1px solid var(--kobo_pinpoint_border) !important;
  border-radius: 8px !important;
  color: var(--kobo_color_black) !important;
  font-family: var(--kobo_font_body, "Inter", sans-serif) !important;
  box-shadow: none !important;
}

.DOPBSPCalendar-sidebar input[type="text"]:focus,
.DOPBSPCalendar-outer-sidebar input[type="text"]:focus,
.DOPBSPCalendar-sidebar textarea:focus,
.DOPBSPCalendar-outer-sidebar textarea:focus,
.DOPBSPCalendar-sidebar select:focus,
.DOPBSPCalendar-outer-sidebar select:focus {
  border-color: var(--kobo_color_mporto) !important;
  outline: none !important;
}

/* Buttons */
.DOPBSPCalendar-sidebar input[type="button"],
.DOPBSPCalendar-sidebar input[type="submit"],
.DOPBSPCalendar-outer-sidebar input[type="button"],
.DOPBSPCalendar-outer-sidebar input[type="submit"],
.DOPBSPCalendar-sidebar button,
.DOPBSPCalendar-outer-sidebar button {
  background: var(--kobo_color_mporto) !important;
  border: 1px solid var(--kobo_color_mporto) !important;
  border-radius: 999px !important;
  color: #fff !important;
  font-family: var(--kobo_font_body, "Inter", sans-serif) !important;
  font-weight: 600 !important;
  transition: all 0.25s ease !important;
}

.DOPBSPCalendar-sidebar input[type="button"]:hover,
.DOPBSPCalendar-sidebar input[type="submit"]:hover,
.DOPBSPCalendar-outer-sidebar input[type="button"]:hover,
.DOPBSPCalendar-outer-sidebar input[type="submit"]:hover,
.DOPBSPCalendar-sidebar button:hover,
.DOPBSPCalendar-outer-sidebar button:hover {
  background: var(--kobo_pinpoint_hover) !important;
  border-color: var(--kobo_pinpoint_hover) !important;
}

/* Messages / warnings */
.DOPBSPCalendar-sidebar .dopbsp-module .dopbsp-input-wrapper .dopbsp-warning-info .dopbsp-icon,
.DOPBSPCalendar-outer-sidebar .dopbsp-module .dopbsp-input-wrapper .dopbsp-warning-info .dopbsp-icon,
.DOPBSPCalendar-sidebar .dopbsp-module .dopbsp-input-wrapper .dopbsp-warning-info .dopbsp-message,
.DOPBSPCalendar-outer-sidebar .dopbsp-module .dopbsp-input-wrapper .dopbsp-warning-info .dopbsp-message {
  background-color: var(--kobo_pinpoint_error) !important;
}

/* Hours */
.DOPBSPCalendar-hour .dopbsp-bind-middle,
.DOPBSPCalendar-hour .dopbsp-bind-top,
.DOPBSPCalendar-hour .dopbsp-bind-bottom {
  border-color: var(--kobo_color_mporto) !important;
}

.DOPBSPCalendar-hour.dopbsp-available .dopbsp-bind-middle,
.DOPBSPCalendar-hour.dopbsp-available .dopbsp-bind-top,
.DOPBSPCalendar-hour.dopbsp-available .dopbsp-bind-bottom {
  border-color: var(--kobo_pinpoint_available) !important;
}

.DOPBSPCalendar-hour.dopbsp-booked .dopbsp-bind-middle,
.DOPBSPCalendar-hour.dopbsp-booked .dopbsp-bind-top,
.DOPBSPCalendar-hour.dopbsp-booked .dopbsp-bind-bottom {
  border-color: var(--kobo_pinpoint_booked) !important;
}

.DOPBSPCalendar-hour.dopbsp-selected .dopbsp-bind-middle,
.DOPBSPCalendar-hour.dopbsp-selected .dopbsp-bind-top,
.DOPBSPCalendar-hour.dopbsp-selected .dopbsp-bind-bottom {
  border-color: var(--kobo_color_mporto) !important;
}

/* Mobile */
@media (max-width: 767px) {
  .DOPBSPCalendar-container {
	border-radius: 14px !important;
	width: 100% !important;
  }

  .DOPBSPCalendar-navigation .dopbsp-month-year {
	font-size: 20px !important;
  }

  .DOPBSPCalendar-sidebar .dopbsp-module,
  .DOPBSPCalendar-outer-sidebar .dopbsp-module {
	border-radius: 14px !important;
	min-width: 0 !important;
  }
}