.gofeels-dp-wrapper {
  --gdp-primary:      #21283C;
  --gdp-primary-dark: #181f30;
  --gdp-muted:        #617387;
  --gdp-border:       #90A2B3;
  --gdp-bg-field:     #FFFFFF;
  --gdp-error:        #d32f2f;
  --gdp-radius:       6px;
  --gdp-height:       52px;
  --gdp-font:         'Roboto', sans-serif;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1rem;
  width: 100%;
  box-sizing: border-box;
  font-family: var(--gdp-font);
}

/* Todo en una fila: [ícono | check-in → check-out] [Buscar] */
.gofeels-dp-inner {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  width: 100%;
  max-width: 600px;
}

/* Fila principal: campo + botón pegados */
.gofeels-dp-row {
  display: flex;
  align-items: stretch;
  width: 100%;
  gap: 0;
}

/* Campo de fechas — ocupa todo el espacio disponible */
.gofeels-dp-field-group {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.gofeels-dp-label {
  font-size: .7rem;
  color: var(--gdp-muted);
  font-weight: 500;
  letter-spacing: .04em;
  text-transform: uppercase;
  padding: 0 .75rem;
  margin-bottom: 4px;
}

/* Input row — borde izquierdo y vertical, sin borde derecho (lo cierra el botón) */
.gofeels-dp-inputs {
  display: flex;
  align-items: center;
  background: var(--gdp-bg-field);
  border: 1px solid var(--gdp-border);
  border-right: none;
  border-radius: var(--gdp-radius) 0 0 var(--gdp-radius);
  padding: 0 .75rem;
  gap: 8px;
  height: var(--gdp-height);
  box-sizing: border-box;
  transition: border-color .2s, box-shadow .2s;
  cursor: pointer;
}

.gofeels-dp-inputs:focus-within {
  border-color: var(--gdp-primary);
  box-shadow: inset 0 0 0 1px var(--gdp-primary);
  z-index: 1;
}

.gofeels-dp-calendar-icon {
  color: var(--gdp-muted);
  flex-shrink: 0;
  display: block;
}

.gofeels-dp-input {
  border: none !important;
  outline: none !important;
  background: transparent;
  font-family: var(--gdp-font);
  font-size: .875rem;
  color: var(--gdp-primary);
  width: 88px;
  padding: 0;
  cursor: pointer;
}

.gofeels-dp-input::placeholder { color: var(--gdp-muted); }

.gofeels-dp-separator {
  color: var(--gdp-muted);
  font-size: .85rem;
  flex-shrink: 0;
  user-select: none;
}

/* Error debajo de la fila */
.gofeels-dp-error-msg {
  font-size: .72rem;
  color: var(--gdp-error);
  padding: 3px .75rem 0;
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: 18px;
}

/* Botón — pegado al campo, comparte la misma altura */
.gofeels-dp-action {
  flex-shrink: 0;
  display: flex;
  align-items: stretch;
}

.gofeels-dp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: var(--gdp-primary);
  color: #FFF !important;
  font-family: var(--gdp-font);
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-decoration: none !important;
  padding: 0 1.5rem;
  height: var(--gdp-height);
  border-radius: 0 var(--gdp-radius) var(--gdp-radius) 0;
  cursor: pointer;
  transition: background-color .15s;
  border: 1px solid var(--gdp-primary);
  box-sizing: border-box;
  white-space: nowrap;
}

.gofeels-dp-btn:hover { background-color: var(--gdp-primary-dark); border-color: var(--gdp-primary-dark); }

.gofeels-dp-btn[aria-disabled="true"] {
  background-color: #8e97a8;
  border-color: #8e97a8;
  cursor: default;
  pointer-events: none;
}

/* ── Flatpickr ─────────────────────────────────────────────────────── */
.flatpickr-calendar { font-family: var(--gdp-font, sans-serif) !important; border-radius: 8px !important; }
.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange { background: #21283C !important; border-color: #21283C !important; color: #fff !important; }
.flatpickr-day.inRange { background: #E7EDF5 !important; border-color: #E7EDF5 !important; color: #21283C !important; box-shadow: -5px 0 0 #E7EDF5,5px 0 0 #E7EDF5 !important; }
.flatpickr-day:hover:not(.selected):not(.startRange):not(.endRange) { background: #D1DAE7 !important; }
.flatpickr-months .flatpickr-month,.flatpickr-weekdays,span.flatpickr-weekday { background: #21283C !important; color: #fff !important; }
.flatpickr-current-month .flatpickr-monthDropdown-months,.flatpickr-current-month input.cur-year { color: #fff !important; }
.flatpickr-prev-month svg,.flatpickr-next-month svg { fill: #fff !important; }
.flatpickr-months .flatpickr-month { border-radius: 8px 8px 0 0 !important; }

.gofeels-dp-error { color: var(--gdp-error); font-style: italic; font-size: .875rem; }
