/* Modern look & feel (English-only). Uses admin CSS vars for colors & sizes */
.wcmbp{
  --wcmbp-primary:#6C5CE7;
  --wcmbp-accent:#F1F5FF;
  --wcmbp-text:#111827;
  --wcmbp-font:16px;
  --wcmbp-title:20px;
  --wcmbp-radius:12px;
  font-size:var(--wcmbp-font);
  color:var(--wcmbp-text);
}

.wcmbp-head{display:flex;gap:.4rem;align-items:baseline;margin-bottom:.75rem}
.wcmbp-title{font-weight:500;font-size:var(--wcmbp-title);}
.wcmbp-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.flatpickr-monthDropdown-months{ display:none !important; } /* mes como texto */
.numInputWrapper span{ display:none; }                      /* oculta flechas del año */
/* Calendar container */
.wcmbp-calendar{background:var(--wcmbp-accent);border-radius:16px;padding:12px;box-shadow:0 6px 18px rgba(17,24,39,.06)}
/* Hide input field */
.wcmbp .wcmbp-date{position:absolute;opacity:0;height:0;width:0;padding:0;margin:0;border:0;pointer-events:none}

/* Flatpickr modern theme overrides */
.flatpickr-calendar{box-shadow:none;background:transparent;border:0}
.flatpickr-calendar.inline{margin:0}
.flatpickr-months{display:flex;justify-content:center;align-items:center;margin-bottom:8px}
.flatpickr-months .flatpickr-prev-month, .flatpickr-months .flatpickr-next-month{
  position:static; display:inline-grid; place-items:center; width:32px; height:32px;
  border-radius:999px; color:var(--wcmbp-text); opacity:.8
}
.flatpickr-months .flatpickr-prev-month:hover, .flatpickr-months .flatpickr-next-month:hover{ background:#fff }
.flatpickr-current-month{font-weight:500;font-size:14px;color:var(--wcmbp-text)}
.flatpickr-weekdays{margin-bottom:6px}
span.flatpickr-weekday{font-weight:600;color:#6b7280}

/* Day cells */
.flatpickr-day{
  border-radius:10px; border:0; font-weight:400; color:var(--wcmbp-text); max-width: initial !important;
  transition:all .15s ease
}
.flatpickr-day:hover{ background:#fff; }
.flatpickr-day.today{ box-shadow:inset 0 0 0 2px var(--wcmbp-primary); }
.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange{
  background:var(--wcmbp-primary); color:#fff; box-shadow:none;
}
button.wcmbp-slot {
    border-color: #f1f1f1 !important;
    color: #2d2d37 !important;
    background: #f1f1f1 !important;
    padding: 10px !important;
}
.flatpickr-current-month span.cur-month{
  font-weight: 400;
  font-size: 16px;
}
input.numInput.cur-year {
    padding: 0 10px !important;
    border: none !important;
}
.flatpickr-day.today:hover {
    color: #2d2d37;
    background: transparent;
}
button.wcmbp-slot:hover, span.flatpickr-day.selected:hover{
    border-color: #07A0AE !important;
    color: #ffffff !important;
    background: #07A0AE !important;
}
button.wcmbp-slot.selected{
    border-color: #07A0AE !important;
    color: #ffffff !important;
    background: #07A0AE !important;
}

.flatpickr-days {
    width: 100%;
}
.dayContainer {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    -webkit-justify-content: flex-start;
}
/* Times grid: 3 columns minimum */
.wcmbp-times{
  padding:12px;
  max-height:340px;overflow:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px
}
.wcmbp-slot{
  display:inline-block;text-align:center;padding:10px 12px;border-radius:var(--wcmbp-radius);
  border:1px solid #e5e7eb;background:#fafafa;cursor:pointer;transition:all .15s ease;font-weight:600
}
.wcmbp-slot:hover{border-color:var(--wcmbp-primary);background:#fff}
.wcmbp-slot.selected{background:var(--wcmbp-primary);color:#fff;border-color:var(--wcmbp-primary)}
.wcmbp-selected{margin-top:16px;display:flex;flex-direction:column;gap:.35rem}
.wcmbp-selected .label{font-weight:500}
.wcmbp-noslots{grid-column:1/-1;padding:12px;color:#6b7280}
.flatpickr-calendar.animate.inline {
    width: 100%;
}
.flatpickr-rContainer {
    width: 100%;
}
@media (max-width:768px){
  .wcmbp-grid{grid-template-columns:1fr}
  .wcmbp-times{max-height:280px;grid-template-columns:repeat(2,minmax(0,1fr))}
}