/* ManilaStay v1-2-7: theme-owned date/time picker for hero booking forms. */
.ms-hero-form-card .ms-picker-input {
  cursor: pointer;
  caret-color: transparent;
  background-repeat: no-repeat;
  background-position: right 0.9rem center;
  background-size: 1.05rem 1.05rem;
  padding-right: 2.75rem;
}
.ms-hero-form-card .ms-date-picker-input { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%23b8c4ca' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Crect x='3.5' y='4.5' width='17' height='16' rx='2.5'/%3E%3Cpath d='M8 2.8v4M16 2.8v4M3.5 9h17'/%3E%3C/svg%3E"); }
.ms-hero-form-card .ms-time-picker-input { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%23b8c4ca' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M12 7.5V12l3.2 2'/%3E%3C/svg%3E"); }
.ms-picker-popover { position: absolute; z-index: 9999; width: min(18rem, calc(100vw - 2rem)); background: rgba(10, 18, 26, 0.98); border: 1px solid rgba(184, 196, 202, 0.28); border-radius: 14px; box-shadow: 0 18px 45px rgba(0, 0, 0, 0.55); color: #f8fafc; padding: 0.85rem; }
.ms-picker-popover[hidden] { display: none !important; }
.ms-picker-header { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; margin-bottom: 0.75rem; }
.ms-picker-title { font-size: 0.9rem; font-weight: 700; letter-spacing: 0.01em; }
.ms-picker-nav, .ms-picker-day, .ms-picker-time-option { appearance: none; border: 1px solid rgba(184, 196, 202, 0.22); background: rgba(10, 18, 26, 0.8); color: #f8fafc; border-radius: 999px; cursor: pointer; }
.ms-picker-nav { width: 2rem; height: 2rem; line-height: 1; font-size: 1rem; }
.ms-picker-weekdays, .ms-picker-days { display: grid; grid-template-columns: repeat(7, 1fr); gap: 0.3rem; }
.ms-picker-weekday { color: rgba(248, 250, 252, 0.62); font-size: 0.68rem; font-weight: 700; text-align: center; text-transform: uppercase; }
.ms-picker-day { min-height: 2rem; border-radius: 9px; font-size: 0.82rem; }
.ms-picker-day:hover, .ms-picker-day:focus-visible, .ms-picker-time-option:hover, .ms-picker-time-option:focus-visible { border-color: rgba(213, 75, 15, 0.85); outline: none; }
.ms-picker-day.is-selected, .ms-picker-time-option.is-selected { background: #d54b0f; border-color: #d54b0f; color: #ffffff; }
.ms-picker-day.is-disabled { visibility: hidden; pointer-events: none; }
.ms-picker-time-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.45rem; max-height: 14rem; overflow-y: auto; padding-right: 0.15rem; }
.ms-picker-time-option { min-height: 2.15rem; border-radius: 10px; font-size: 0.82rem; }
@media (max-width: 767px) { .ms-picker-popover { width: min(20rem, calc(100vw - 2rem)); } }
