.md-availability .vcal-day {
  min-height: 58px;
  padding: 7px 2px 5px;
  border: 1px solid #cce7de;
  background: #e4f7f1;
  color: #17483d;
  font-weight: 800;
  line-height: 1;
}
.md-availability .vcal-day:not(:disabled):hover {
  border-color: #65bea5;
  background: #d1f1e7;
  color: #103f34;
}
.vcal-day .vcal-price {
  display: block;
  margin-top: 6px;
  color: #39766a;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: -0.2px;
}
.vcal-day.is-booked {
  border-color: #cf5047;
  background: #df554c;
  color: #fff;
  cursor: not-allowed;
}
.vcal-day.is-pending {
  border-color: #a87308;
  background: #bd8613;
  color: #fff;
  cursor: not-allowed;
}
.vcal-day.is-pending-boundary {
  border-color: #e5b84d !important;
  color: #171717 !important;
  cursor: pointer;
  text-shadow: none !important;
}
.vcal-day.is-pending-boundary-start {
  background: linear-gradient(
    135deg,
    #edf8fb 0 49%,
    #ffe29a 50% 100%
  ) !important;
}
.vcal-day.is-pending-boundary-end {
  background: linear-gradient(
    135deg,
    #ffe29a 0 49%,
    #edf8fb 50% 100%
  ) !important;
}

/* Rezervasyon sınır günleri aynı gün yeni giriş/çıkış için müsaittir. */
.vcal-day.is-turnover-start:not(.is-turnover-shared),
.vcal-day.is-turnover-end:not(.is-turnover-shared) {
  border-color:#cce7de !important;
  background:#edf8fb !important;
  color:#17483d !important;
  cursor:pointer !important;
  box-shadow:none !important;
}
.vcal-day.is-turnover-start:not(.is-turnover-shared) .vcal-price,
.vcal-day.is-turnover-end:not(.is-turnover-shared) .vcal-price {color:#39766a !important;}
.vcal-day.is-turnover-start.is-end,
.vcal-day.is-turnover-end.is-start {
  border-color:#1fa9ed !important;
  background:#1fa9ed !important;
  color:#fff !important;
  box-shadow:0 5px 13px rgba(31,169,237,.28) !important;
}
.vcal-day.is-turnover-start.is-end .vcal-price,
.vcal-day.is-turnover-end.is-start .vcal-price {color:#fff !important;}
.vcal-day.is-pending-boundary-shared {
  background: linear-gradient(
    135deg,
    #ffe29a 0 48%,
    #fff 48% 52%,
    #ffaaaa 52% 100%
  ) !important;
}
.vcal-day.is-pending-boundary b,
.vcal-day.is-pending-boundary .vcal-price {
  position: relative;
  z-index: 1;
  color: #171717 !important;
  opacity: 1 !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.75) !important;
}
.vcal-day.is-booked .vcal-price,
.vcal-day.is-pending .vcal-price {
  color: rgba(255, 255, 255, 0.88);
}
.vcal-day.is-turnover {
  border-color: #fff;
  background: linear-gradient(135deg, #dc423b 0 49%, #2e78c7 50% 100%);
  color: #fff;
  cursor: pointer;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.7);
}
.vcal-day.is-turnover .vcal-price {
  color: #fff;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}
.vcal-day.is-past {
  border-color: #e3e8e6;
  background: #f2f4f3;
  color: #a9b2ae;
  cursor: not-allowed;
}
.vcal-day.is-past .vcal-price {
  color: #b2bbb8;
}
.vcal-day.is-range {
  border-color: #f1ae72;
  background: #fff0e1;
  color: #b35814;
}
.vcal-day.is-start,
.vcal-day.is-end {
  z-index: 2;
  border-color: #ef7e19;
  background: #ef7e19;
  color: #fff;
  box-shadow: 0 5px 13px rgba(239, 126, 25, 0.25);
}
.vcal-day.is-start .vcal-price,
.vcal-day.is-end .vcal-price {
  color: #fff;
}
.vcal-day.is-start:before,
.vcal-day.is-end:before {
  top: -13px;
  z-index: 3;
}
html[lang="en"] .vcal-day.is-start:before {content:"Check-in" !important;}
html[lang="en"] .vcal-day.is-end:before {content:"Check-out" !important;}
.vcal-feedback {
  display: none;
  margin: 12px 0 0;
  padding: 10px 12px;
  border-radius: 9px;
  background: #fff0ed;
  color: #ac4237;
  font-size: 10px;
  font-weight: 800;
}
.vcal-feedback.is-visible {
  display: block;
}
.md-calendar-legend {
  gap: 12px;
  flex-wrap: wrap;
}
.md-calendar-legend span i {
  border: 1px solid transparent;
}
.md-calendar-legend .available i {
  border-color: #a8d9ca;
  background: #e4f7f1;
}
.md-calendar-legend .pending i {
  background: #bd8613;
}
.md-calendar-legend .booked i {
  background: #df554c;
}
.md-calendar-legend .turnover i {
  background: linear-gradient(135deg, #dc423b 0 49%, #2e78c7 50% 100%);
}
.md-calendar-legend .selected i {
  background: #ef7e19;
}
.md-booking-popover .vcal-day {
  min-height: 54px;
}
.md-booking-popover .vcal-feedback {
  margin-bottom: 4px;
}
.vcal-day.is-turnover.is-start,
.vcal-day.is-turnover.is-end {
  color: #092b4c !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.9);
}
.vcal-day.is-turnover.is-start .vcal-price,
.vcal-day.is-turnover.is-end .vcal-price {
  color: #174665 !important;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.95);
}
.vcal-day.is-turnover-start {
  background: linear-gradient(
    135deg,
    #edf8fb 0 49%,
    #ffaaa9 50% 100%
  ) !important;
}
.vcal-day.is-turnover-end {
  background: linear-gradient(
    135deg,
    #ffaaa9 0 49%,
    #edf8fb 50% 100%
  ) !important;
}
.vcal-day.is-start,
.vcal-day.is-end,
.vcal-day.is-turnover.is-start,
.vcal-day.is-turnover.is-end {
  border-color: #1fa9ed !important;
  background: #1fa9ed !important;
  color: #fff !important;
  text-shadow: none !important;
  box-shadow: 0 5px 13px rgba(31, 169, 237, 0.28) !important;
}
.vcal-day.is-start .vcal-price,
.vcal-day.is-end .vcal-price,
.vcal-day.is-turnover.is-start .vcal-price,
.vcal-day.is-turnover.is-end .vcal-price {
  color: #fff !important;
  text-shadow: none !important;
}
.vcal-day.is-turnover-shared {
  border-color: #fff !important;
  background: linear-gradient(
    135deg,
    #ffaaa9 0 48.5%,
    #fff 48.5% 51.5%,
    #ffaaa9 51.5% 100%
  ) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.75) !important;
}
.vcal-day.is-turnover-end.is-start {
  border-color: #1fa9ed !important;
  background: linear-gradient(
    135deg,
    #ffaaaa 0 49%,
    #1fa9ed 50% 100%
  ) !important;
  color: #fff !important;
  box-shadow: 0 5px 13px rgba(31, 169, 237, 0.28) !important;
}
.vcal-day.is-turnover-end.is-start b,
.vcal-day.is-turnover-end.is-start .vcal-price {
  color: #fff !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.22) !important;
}
.vcal-day.is-turnover-start.is-end {
  border-color: #1fa9ed !important;
  background: linear-gradient(
    135deg,
    #1fa9ed 0 49%,
    #ffaaaa 50% 100%
  ) !important;
  color: #fff !important;
  box-shadow: 0 5px 13px rgba(31, 169, 237, 0.28) !important;
}
.vcal-day.is-turnover-start.is-end b,
.vcal-day.is-turnover-start.is-end .vcal-price {
  color: #fff !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.22) !important;
}
.vcal-day.is-booked,
.vcal-day.is-pending {
  color: #171717 !important;
  text-shadow: none !important;
}
.vcal-day.is-booked b,
.vcal-day.is-pending b {
  color: #171717 !important;
}
.vcal-day.is-booked .vcal-price,
.vcal-day.is-pending .vcal-price {
  color: #171717 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}
.vcal-day.is-turnover:not(.is-start):not(.is-end) {
  color: #171717 !important;
}
.vcal-day.is-turnover:not(.is-start):not(.is-end) .vcal-price {
  color: #171717 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  text-shadow: none !important;
}
@media (max-width: 700px) {
  .md-availability .vcal-day {
    min-height: 52px;
  }
  .vcal-day .vcal-price {
    font-size: 7px;
  }
  .md-calendar-legend {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}

/* Son kural: yarım kırmızı sınır gününü normal müsait/seçilebilir göster. */
.vcal-day.is-turnover-start:not(.is-turnover-shared):not(.is-start):not(.is-end),
.vcal-day.is-turnover-end:not(.is-turnover-shared):not(.is-start):not(.is-end){border-color:#cce7de!important;background:#edf8fb!important;color:#17483d!important;cursor:pointer!important;box-shadow:none!important}
.vcal-day.is-turnover-start:not(.is-turnover-shared):not(.is-start):not(.is-end) .vcal-price,
.vcal-day.is-turnover-end:not(.is-turnover-shared):not(.is-start):not(.is-end) .vcal-price{color:#39766a!important}
.vcal-day.is-turnover-start.is-end,
.vcal-day.is-turnover-end.is-start{border-color:#1fa9ed!important;background:#1fa9ed!important;color:#fff!important;box-shadow:0 5px 13px rgba(31,169,237,.28)!important}
.vcal-day.is-turnover-start.is-end .vcal-price,
.vcal-day.is-turnover-end.is-start .vcal-price{color:#fff!important}
.md-coupon small {
  display: block;
  flex-basis: 100%;
  margin-top: 7px;
  font-size: 12px;
  font-weight: 600;
}
.md-coupon small.success {
  color: #0b9b73;
}
.md-coupon small.error {
  color: #d9483b;
}
.md-booking-summary .promo-discount b {
  color: #25bc73 !important;
}
.md-availability .md-calendar-legend {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: center;
  gap: 20px !important;
  margin-top: 24px !important;
  padding: 18px 4px 2px !important;
}
.md-availability .md-calendar-legend span {
  gap: 9px !important;
  color: #526477;
  font-size: 11px;
  white-space: nowrap;
}
.md-availability .md-calendar-legend span:nth-child(2),
.md-availability .md-calendar-legend span:nth-child(3) {
  justify-self: center;
}
.md-availability .md-calendar-legend span:last-child {
  justify-self: end;
}
.md-availability .md-calendar-legend span i {
  width: 16px;
  height: 16px;
  border: 0 !important;
  border-radius: 6px;
}
.md-availability .md-calendar-legend .available i {
  background: #edf8fb;
}
.md-availability .md-calendar-legend .pending i {
  background: #ffe29a;
}
.md-availability .md-calendar-legend .booked i {
  background: #ffaaaa;
}
.md-availability .md-calendar-legend .turnover i {
  border-radius: 0;
  background: linear-gradient(
    45deg,
    #ffaaaa 0 46%,
    #fff 46% 56%,
    #ffaaaa 56% 100%
  );
}
@media (max-width: 700px) {
  .md-availability .md-calendar-legend {
    grid-template-columns: 1fr 1fr !important;
    gap: 13px 20px !important;
  }
.md-availability .md-calendar-legend span:nth-child(n) {
    justify-self: start;
  }
}

/* Sınır günü: seçilmeden müsait, seçilince mavi + rezervasyon durumu. */
.vcal-day.is-pending-boundary-start:not(.is-start):not(.is-end){border-color:#e3c36c!important;background:linear-gradient(135deg,#edf8fb 0 49%,#ffe29a 50% 100%)!important;color:#17483d!important;cursor:pointer!important;box-shadow:none!important}
.vcal-day.is-pending-boundary-end:not(.is-start):not(.is-end){border-color:#e3c36c!important;background:linear-gradient(135deg,#ffe29a 0 49%,#edf8fb 50% 100%)!important;color:#17483d!important;cursor:pointer!important;box-shadow:none!important}
.vcal-day.is-turnover-start:not(.is-turnover-shared):not(.is-start):not(.is-end){border-color:#efaaa7!important;background:linear-gradient(135deg,#edf8fb 0 49%,#ff6b67 50% 100%)!important;color:#17483d!important;cursor:pointer!important;box-shadow:none!important}
.vcal-day.is-turnover-end:not(.is-turnover-shared):not(.is-start):not(.is-end){border-color:#efaaa7!important;background:linear-gradient(135deg,#ff6b67 0 49%,#edf8fb 50% 100%)!important;color:#17483d!important;cursor:pointer!important;box-shadow:none!important}
.vcal-day.is-pending-boundary-start.is-end{background:linear-gradient(135deg,#1fa9ed 0 49%,#ffe29a 50% 100%)!important}
.vcal-day.is-pending-boundary-end.is-start{background:linear-gradient(135deg,#ffe29a 0 49%,#1fa9ed 50% 100%)!important}
.vcal-day.is-turnover-start.is-end{background:linear-gradient(135deg,#1fa9ed 0 49%,#ff6b67 50% 100%)!important}
.vcal-day.is-turnover-end.is-start{background:linear-gradient(135deg,#ff6b67 0 49%,#1fa9ed 50% 100%)!important}
.vcal-day.is-pending-boundary-start.is-end,
.vcal-day.is-pending-boundary-end.is-start,
.vcal-day.is-turnover-start.is-end,
.vcal-day.is-turnover-end.is-start{border-color:#1fa9ed!important;color:#fff!important;cursor:pointer!important;box-shadow:0 5px 13px rgba(31,169,237,.28)!important}
.vcal-day.is-pending-boundary-start.is-end .vcal-price,
.vcal-day.is-pending-boundary-end.is-start .vcal-price,
.vcal-day.is-turnover-start.is-end .vcal-price,
.vcal-day.is-turnover-end.is-start .vcal-price{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.22)!important}

/* Her rezervasyon seçiminde giriş sağ yarı, çıkış sol yarı olarak işaretlenir. */
.vcal-day.is-start{background:linear-gradient(135deg,#edf8fb 0 49%,#1fa9ed 50% 100%)!important;border-color:#1fa9ed!important}
.vcal-day.is-end{background:linear-gradient(135deg,#1fa9ed 0 49%,#edf8fb 50% 100%)!important;border-color:#1fa9ed!important}
.vcal-day.is-start.is-end{background:#1fa9ed!important}
.vcal-day.is-start>b,.vcal-day.is-end>b{color:#071b3b!important;text-shadow:none!important}

/* Her iki takvimde secili aralik ayni mavi, gun rakamlari daima siyah. */
.vcal-day.is-range{border-color:#1fa9ed!important;background:#1fa9ed!important;color:#071b3b!important}
.vcal-day>b,.vcal-day.is-past>b,.vcal-day.is-pending>b,.vcal-day.is-booked>b,.vcal-day.is-turnover>b,.vcal-day.is-pending-boundary>b,.vcal-day.is-start>b,.vcal-day.is-end>b,.vcal-day.is-range>b{position:relative!important;z-index:4!important;color:#071b3b!important;opacity:1!important;text-shadow:none!important}

/* Indirimden onceki fiyat, guncel fiyatin hemen ustunde kirmizi ve cizili. */
.vcal-day del{display:block!important;margin:2px 0 0!important;color:#e32636!important;font-size:8px!important;font-weight:900!important;line-height:9px!important;text-decoration-line:line-through!important;text-decoration-color:#e32636!important;text-decoration-thickness:1.5px!important;opacity:1!important}.vcal-day del+.vcal-price{margin-top:2px!important}

/* Takvim tipografisi: gun ve fiyat metinlerinde normal/orta agirlik. */
.vcal-month h3,.vcal-head strong{font-weight:500!important}.vcal-grid>small{font-weight:400!important}.vcal-day,.vcal-day>b{font-weight:500!important}.vcal-day .vcal-price,.vcal-day del{font-weight:500!important;text-shadow:none!important}

/* Son tipografi ayari: tum metinler daha ince, eski ve yeni fiyat ayni ebatta. */
.vcal-month h3,.vcal-head strong,.vcal-grid>small,.vcal-day,.vcal-day>b,.vcal-day .vcal-price,.vcal-day del{font-weight:400!important}.vcal-day del,.vcal-day .vcal-price{font-size:8px!important;line-height:9px!important;letter-spacing:0!important}

/* Opsiyon ve bekleyen gunleri koyu turuncu yerine acik sari goster. */
.vcal-day.is-pending,.vcal-day.is-pending-boundary,.vcal-day.is-pending-boundary-start,.vcal-day.is-pending-boundary-end,.vcal-day.is-pending-boundary-shared{border-color:#efbd4e!important;background:#ffe29a!important;color:#533b08!important}
.md-calendar-legend .pending i{background:#ffe29a!important;border:1px solid #efbd4e!important}
