
/* CBR custom date/time picker — previous */
.cbr-picker-source{
  position:absolute!important;width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;overflow:hidden!important;
  clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
  opacity:0!important;pointer-events:none!important;
}
.cbr-picker-display{
  width:100%!important;min-height:52px!important;box-sizing:border-box!important;
  cursor:pointer!important;user-select:none!important;-webkit-user-select:none!important;
  padding-right:46px!important;background-color:#fff!important;
  background-repeat:no-repeat!important;background-position:right 15px center!important;
  background-size:20px 20px!important;color:#101828!important;caret-color:transparent!important;
}
.cbr-picker-display[data-cbr-visible-type="date"]{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23101828' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 11h18'/%3E%3C/svg%3E");
}
.cbr-picker-display[data-cbr-visible-type="time"]{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23101828' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
}
.cbr-picker-display.input-error{
  border-color:#d92d20!important;box-shadow:0 0 0 3px rgba(217,45,32,.10)!important;
}
.cbr-picker-pop{
  position:fixed!important;z-index:99999!important;box-sizing:border-box!important;
  background:#fff!important;border:1px solid #d9e0e8!important;border-radius:18px!important;
  box-shadow:0 24px 70px rgba(16,24,40,.20)!important;padding:16px!important;
  font-family:inherit!important;color:#101828!important;
}
.cbr-picker-head{
  display:grid!important;grid-template-columns:42px 1fr 42px!important;
  align-items:center!important;gap:8px!important;margin-bottom:12px!important;
}
.cbr-picker-title{
  text-align:center!important;font-size:16px!important;font-weight:850!important;
  text-transform:capitalize!important;
}
.cbr-picker-nav{
  width:40px!important;height:40px!important;border:1px solid #e4e7ec!important;
  border-radius:12px!important;background:#fff!important;color:#101828!important;
  font-size:27px!important;line-height:1!important;cursor:pointer!important;
}
.cbr-picker-nav:hover{background:#f5f7fa!important}
.cbr-weekdays,.cbr-calendar-grid{
  display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:4px!important;
}
.cbr-weekdays{margin-bottom:5px!important}
.cbr-weekdays>div{
  text-align:center!important;font-size:11px!important;font-weight:800!important;
  color:#667085!important;text-transform:uppercase!important;padding:5px 0!important;
}
.cbr-calendar-blank{height:38px!important}
.cbr-calendar-day{
  height:38px!important;border:0!important;border-radius:10px!important;
  background:#fff!important;color:#101828!important;font-size:14px!important;
  font-weight:750!important;cursor:pointer!important;
}
.cbr-calendar-day:hover:not(:disabled){background:#fff1e8!important}
.cbr-calendar-day.today:not(.selected){box-shadow:inset 0 0 0 1px #f06d22!important}
.cbr-calendar-day.selected{background:#e31b23!important;color:#fff!important}
.cbr-calendar-day:disabled,.cbr-calendar-day.disabled{
  color:#a5adba!important;cursor:not-allowed!important;background:#fff!important;opacity:1!important;
}
.cbr-picker-footer{
  display:flex!important;justify-content:flex-end!important;gap:8px!important;
  margin-top:14px!important;padding-top:12px!important;border-top:1px solid #eef1f4!important;
}
.cbr-picker-close,.cbr-picker-done{
  min-height:40px!important;padding:8px 16px!important;border-radius:11px!important;
  font:inherit!important;font-size:13px!important;font-weight:850!important;cursor:pointer!important;
}
.cbr-picker-close{
  border:1px solid #d0d5dd!important;background:#fff!important;color:#344054!important;
}
.cbr-picker-done{
  border:1px solid #e31b23!important;background:#e31b23!important;color:#fff!important;
}
.cbr-time-title{font-size:16px!important;font-weight:850!important;margin:2px 0 14px!important}
.cbr-time-row{
  display:grid!important;grid-template-columns:1fr 24px 1fr!important;
  align-items:center!important;gap:6px!important;
}
.cbr-time-select{
  width:100%!important;min-height:52px!important;border:1px solid #d0d5dd!important;
  border-radius:12px!important;background:#fff!important;color:#101828!important;
  padding:0 12px!important;font:inherit!important;font-size:18px!important;font-weight:800!important;
}
.cbr-time-colon{text-align:center!important;font-size:24px!important;font-weight:900!important}
@media(max-width:640px){
  .cbr-picker-pop{left:12px!important;right:12px!important;width:auto!important;max-width:none!important}
}


/* button-based custom picker display.
   Prevents any browser autofill/native placeholder overlap. */
button.cbr-picker-display{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:left!important;
  border:1px solid #d0d5dd!important;
  border-radius:14px!important;
  font:inherit!important;
  font-size:16px!important;
  font-weight:500!important;
  line-height:1.2!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  outline:none!important;
}
button.cbr-picker-display:hover{
  border-color:#98a2b3!important;
}
button.cbr-picker-display:focus{
  border-color:#667085!important;
  box-shadow:0 0 0 3px rgba(102,112,133,.10)!important;
}
button.cbr-picker-display .cbr-picker-value{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#101828!important;
}
button.cbr-picker-display .cbr-picker-value.is-placeholder{
  color:#101828!important;
  opacity:1!important;
}


/* unavailable booking dates stay visible but cannot be selected */
.cbr-calendar-day:disabled,
.cbr-calendar-day.disabled{
  opacity:1!important;
  color:#a5adba!important;
  text-decoration:none!important;
  cursor:not-allowed!important;
}


/* do not allow the calendar to browse into past months */
.cbr-picker-nav:disabled,
.cbr-picker-nav.disabled{
  opacity:.28!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
  background:#f8fafc!important;
}


/* Prevent duplicate placeholder/time text on multilingual home booking bar.
   Old/cached rules must not render generated content around the custom picker button. */
.cbr-neutral-field::before,
.cbr-neutral-field::after,
button.cbr-picker-display::before,
button.cbr-picker-display::after{
  content:none!important;
  display:none!important;
}
