/* ============================================================
   hotel-room-info.css  v2
   Structure:
     Card-level  → Hotel City · Meal Preference · No. of Rooms
     Per-room    → accordion rows (occupancy · adults · children
                   [age+bed pref] · infants)
   All selectors scoped to .hotel-room-list
   ============================================================ */

/* ── CSS Variables ── */
.hotel-room-list {
  --hr-surface:        #ffffff;
  --hr-surface-2:      #f8f7f5;
  --hr-border:         #e2e0db;
  --hr-border-hover:   #c8c5be;
  --hr-border-focus:   #1a1a1a;
  --hr-text: #0e0e0e;
  --hr-text-sec:       #6b6760;
  --hr-text-muted:     #9e9b96;
  --hr-accent: #8e2cf1;
  --hr-accent-light:   #eef1fd;
  --hr-danger:         #e33b2d;
  --hr-success:        #1a9e5c;
  --hr-success-light:  #edf8f3;
  --hr-radius-xs:      4px;
  --hr-radius-sm:      6px;
  --hr-radius:         10px;
  --hr-radius-lg:      14px;
  --hr-shadow-sm:      0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);
  --hr-shadow:         0 4px 12px rgba(0,0,0,.08), 0 2px 4px rgba(0,0,0,.05);
  --hr-transition:     160ms ease;
  --hr-font:           'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --hr-font-mono:      'DM Mono', 'SF Mono', 'Fira Code', monospace;

  font-family: var(--hr-font);
}

/* ============================================================
   CARD SHELL
   ============================================================ */
.hotel-room-list .hotel-card {
  background: var(--hr-surface);
  border: 1px solid var(--hr-border);
  border-radius: var(--hr-radius-lg);
  box-shadow: var(--hr-shadow-sm);
  margin-bottom: 20px;
  transition: box-shadow var(--hr-transition);
  overflow: hidden;
}
.hotel-room-list .hotel-card:hover {
  box-shadow: var(--hr-shadow);
}

/* ── Card Header ── */
.hotel-room-list .hotel-card__header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  background: var(--hr-surface-2);
  border-bottom: 1px solid var(--hr-border);
}
.hotel-room-list .hotel-step-badge {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--hr-text);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  font-family: var(--hr-font-mono);
  display: grid;
  place-items: center;
  flex-shrink: 0;
}
.hotel-room-list .hotel-card__title {
  font-size: 13.5px;
  font-weight: 600;
  letter-spacing: -.01em;
  color: var(--hr-text);
}

/* ============================================================
   HOTEL-LEVEL FIELDS  (City · Meal Pref · Room Count)
   ============================================================ */
.hotel-room-list .hotel-top-fields {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  gap: 14px;
  padding: 16px 18px;
  border-bottom: 1px solid var(--hr-border);
  align-items: flex-end;
}


/* ============================================================
   SHARED FIELD GROUP
   ============================================================ */
.hotel-room-list .hotel-field-group {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.hotel-room-list .hotel-field-group > label {
  font-size: 11px;
  font-weight: 600;
  color: var(--hr-text-sec);
  text-transform: uppercase;
  letter-spacing: .055em;
  white-space: nowrap;
}
.hotel-room-list .hotel-required {
  color: var(--hr-danger);
  margin-left: 1px;
}

/* ── Text input ── */
.hotel-room-list .hotel-input {
  height: 38px;
  padding: 0 10px;
  border: 1px solid var(--hr-border);
  border-radius: var(--hr-radius-sm);
  font-family: var(--hr-font);
  font-size: 13.5px;
  color: var(--hr-text);
  background: var(--hr-surface);
  width: 100%;
  transition: border-color var(--hr-transition), box-shadow var(--hr-transition);
}
.hotel-room-list .hotel-input:focus {
  outline: none;
  border-color: var(--hr-border-focus);
  box-shadow: 0 0 0 3px rgba(26,26,26,.07);
}
.hotel-room-list .hotel-input::placeholder {
  color: var(--hr-text-muted);
}
.hotel-room-list input[type="number"].hotel-input {
  -moz-appearance: textfield;
}
.hotel-room-list input[type="number"].hotel-input::-webkit-inner-spin-button,
.hotel-room-list input[type="number"].hotel-input::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

/* ── Select ── */
.hotel-room-list .hotel-select-wrapper {
  position: relative;
}
.hotel-room-list .hotel-select-wrapper::after {
  content: '';
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid var(--hr-text-sec);
  pointer-events: none;
}
.hotel-room-list .hotel-select {
  appearance: none;
  -webkit-appearance: none;
  height: 38px;
  padding: 0 28px 0 10px;
  border: 1px solid var(--hr-border);
  border-radius: var(--hr-radius-sm);
  font-family: var(--hr-font);
  font-size: 13.5px;
  color: var(--hr-text);
  background: var(--hr-surface);
  width: 100%;
  cursor: pointer;
  transition: border-color var(--hr-transition), box-shadow var(--hr-transition);
}
.hotel-room-list .hotel-select:focus {
  outline: none;
  border-color: var(--hr-border-focus);
  box-shadow: 0 0 0 3px rgba(26,26,26,.07);
}

/* ── Stepper ── */
.hotel-room-list .hotel-stepper {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--hr-border);
  border-radius: var(--hr-radius-sm);
  overflow: hidden;
  background: var(--hr-surface);
  height: 38px;
  transition: border-color var(--hr-transition);
}
.hotel-room-list .hotel-stepper:focus-within {
  border-color: var(--hr-border-focus);
  box-shadow: 0 0 0 3px rgba(26,26,26,.07);
}
.hotel-room-list .hotel-stepper__btn {
  width: 34px;
  height: 100%;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 17px;
  font-weight: 400;
  color: var(--hr-text-sec);
  display: grid;
  place-items: center;
  flex-shrink: 0;
  line-height: 1;
  transition: background var(--hr-transition), color var(--hr-transition);
}
.hotel-room-list .hotel-stepper__btn:hover {
  background: var(--hr-surface-2);
  color: var(--hr-text);
}
.hotel-room-list .hotel-stepper__btn:active {
  background: var(--hr-border);
}
.hotel-room-list .hotel-stepper__value {
  min-width: 34px;
  text-align: center;
  font-size: 14px;
  font-weight: 600;
  font-family: var(--hr-font-mono);
  color: var(--hr-text);
  padding: 0 2px;
  user-select: none;
  border-left: 1px solid var(--hr-border);
  border-right: 1px solid var(--hr-border);
  height: 100%;
  display: grid;
  place-items: center;
}

/* ── Room-count master stepper accent ── */
.hotel-room-list .hotel-stepper--master {
  border-color: var(--hr-accent);
}
.hotel-room-list .hotel-stepper--master .hotel-stepper__btn {
  color: var(--hr-accent);
}
.hotel-room-list .hotel-stepper--master .hotel-stepper__btn:hover {
  background: var(--hr-accent-light);
}
.hotel-room-list .hotel-stepper--master .hotel-stepper__value {
  border-color: var(--hr-accent);
  color: var(--hr-accent);
}
.hotel-room-list .room-row__fields .room-category-dropdown {
  grid-column: span 2;
}

/* Target the field-group that wraps the room-category dropdown */
.hotel-room-list .room-row__fields .hotel-field-group:has(.room-category-dropdown) {
  grid-column: span 2;
}
.hotel-room-list .room-row__fields .hotel-stepper {
  width: 70%;
}

/* ============================================================
   ROOM ROWS SECTION
   ============================================================ */
.hotel-room-list .hotel-rooms-section {
  padding: 0 18px 16px;
}
.hotel-room-list .hotel-rooms-section__label {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-weight: 700;
  color: var(--hr-text-sec);
  text-transform: uppercase;
  letter-spacing: .07em;
  padding: 14px 0 10px;
}
.hotel-room-list .hotel-rooms-section__label svg {
  flex-shrink: 0;
}

/* ── Room row (accordion) ── */
.hotel-room-list .room-row {
  border: 1px solid var(--hr-border);
  border-radius: var(--hr-radius);
  margin-bottom: 8px;
  background: var(--hr-surface);
  overflow: hidden;
  transition: border-color var(--hr-transition), box-shadow var(--hr-transition);
}
.hotel-room-list .room-row:last-child {
  margin-bottom: 0;
}
.hotel-room-list .room-row:hover {
  border-color: var(--hr-border-hover);
}
.hotel-room-list .room-row[data-open="true"] {
  border-color: var(--hr-accent);
  box-shadow: 0 0 0 3px rgba(45,91,227,.07);
}

/* ── Accordion trigger ── */
.hotel-room-list .room-row__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 11px 14px;
  background: var(--hr-surface-2);
  border: none;
  width: 100%;
  text-align: left;
  cursor: pointer;
  transition: background var(--hr-transition);
}
.hotel-room-list .room-row__trigger:hover {
  background: #f0efe9;
}
.hotel-room-list .room-row[data-open="true"] .room-row__trigger {
  background: var(--hr-accent-light);
  border-bottom: 1px solid #d0d9f8;
}
.hotel-room-list .room-row__trigger-left {
  display: flex;
  align-items: center;
  gap: 9px;
  flex: 1;
  min-width: 0;
}

/* badge */
.hotel-room-list .room-badge {
  width: 22px;
  height: 22px;
  border-radius: var(--hr-radius-xs);
  background: var(--hr-text-sec);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  font-family: var(--hr-font-mono);
  display: grid;
  place-items: center;
  flex-shrink: 0;
  transition: background var(--hr-transition);
}
.hotel-room-list .room-row[data-open="true"] .room-badge {
  background: var(--hr-accent);
}

/* name */
.hotel-room-list .room-row__name {
  font-size: 13px;
  font-weight: 600;
  color: var(--hr-text);
  white-space: nowrap;
}

/* summary (collapsed) */
.hotel-room-list .room-row__summary {
  font-size: 12px;
  color: var(--hr-text-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1;
  min-width: 0;
}

/* configured pill */
.hotel-room-list .room-configured-pill {
  display: none;
  align-items: center;
  gap: 4px;
  background: var(--hr-success-light);
  color: var(--hr-success);
  border-radius: 20px;
  padding: 2px 8px;
  font-size: 10.5px;
  font-weight: 700;
  white-space: nowrap;
  flex-shrink: 0;
  letter-spacing: .02em;
}
.hotel-room-list .room-configured-pill.visible {
  display: inline-flex;
}

/* chevron */
.hotel-room-list .room-row__chevron {
  flex-shrink: 0;
  color: var(--hr-text-muted);
  transition: transform var(--hr-transition), color var(--hr-transition);
}
.hotel-room-list .room-row[data-open="true"] .room-row__chevron {
  transform: rotate(180deg);
  color: var(--hr-accent);
}

/* ── Accordion body ── */
.hotel-room-list .room-row__body {
  display: none;
  padding: 14px;
}
.hotel-room-list .room-row[data-open="true"] .room-row__body {
  display: block;
  animation: hrBodyIn 180ms ease both;
}
@keyframes hrBodyIn {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ── Fields grid inside room row ── */
.hotel-room-list .room-row__fields {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 12px;
}

/* ============================================================
   CHILDREN DETAILS SECTION
   ============================================================ */
.hotel-room-list .room-children-section {
  display: none;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px dashed var(--hr-border);
}
.hotel-room-list .room-children-section.visible {
  display: block;
  animation: hrBodyIn 180ms ease both;
}
.hotel-room-list .room-children-section__title {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 700;
  color: var(--hr-text-sec);
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: 10px;
}

/* child detail row */
.hotel-room-list .child-detail-row {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 10px;
  padding: 10px 12px;
  background: var(--hr-surface-2);
  border: 1px solid var(--hr-border);
  border-radius: var(--hr-radius-sm);
  margin-bottom: 7px;
  transition: border-color var(--hr-transition);
}
.hotel-room-list .child-detail-row:last-child {
  margin-bottom: 0;
}
.hotel-room-list .child-detail-row:focus-within {
  border-color: var(--hr-border-hover);
}
.hotel-room-list .child-detail-row__label {
  font-size: 11.5px;
  font-weight: 700;
  color: var(--hr-text-muted);
  white-space: nowrap;
  min-width: 46px;
  padding-bottom: 8px;
  font-family: var(--hr-font-mono);
}
.hotel-room-list .child-detail-row .hotel-field-group {
  min-width: 100px;
  flex: 1;
}
.hotel-room-list .child-detail-row .hotel-field-group > label {
  font-size: 10px;
}
.hotel-room-list .child-detail-row .hotel-input {
  height: 34px;
  font-size: 13px;
}
.hotel-room-list .child-detail-row .hotel-select {
  height: 34px;
  font-size: 13px;
}

/* ============================================================
   GRAND SUMMARY
   ============================================================ */
.hotel-room-list .hotel-grand-summary {
  display: none;
  margin: 0 18px 16px;
  border: 1px solid var(--hr-border);
  border-radius: var(--hr-radius);
  overflow: hidden;
}
.hotel-room-list .hotel-grand-summary.visible {
  display: block;
}
.hotel-room-list .hotel-grand-summary__header {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 9px 14px;
  font-size: 11px;
  font-weight: 700;
  color: var(--hr-text-sec);
  text-transform: uppercase;
  letter-spacing: .07em;
  background: var(--hr-surface-2);
  border-bottom: 1px solid var(--hr-border);
}
.hotel-room-list .hotel-grand-summary__body {
  padding: 10px 14px;
  font-size: 12.5px;
  line-height: 2;
  font-family: var(--hr-font-mono);
  color: var(--hr-text);
  white-space: pre-wrap;
}

/* ============================================================
   CITY AUTOCOMPLETE
   ============================================================ */
.hotel-room-list .hotel-city-container {
  position: relative;
}
.hotel-room-list .hotel-city-input {
  padding-right: 28px;
}
.hotel-city-clear {
  position: absolute;
  right: 7px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  color: var(--hr-text-muted);
  padding: 3px;
  display: none;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  line-height: 0;
  transition: color var(--hr-transition), background var(--hr-transition);
}
.hotel-city-clear:hover {
  color: var(--hr-text);
  background: var(--hr-border);
}
.hotel-room-list .hotel-city-input.has-value ~ .hotel-city-clear {
  display: flex;
}

/* dropdown (portal — appended to body) */
.hotel-city-dropdown {
  list-style: none;
  background: #fff;
  border: 1px solid #e2e0db;
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0,0,0,.10), 0 4px 8px rgba(0,0,0,.06);
  overflow-y: auto;
  max-height: 230px;
  display: none;
  z-index: 999999;
  padding: 4px 0;
}
.hotel-city-dropdown--open {
  display: block;
}
.hotel-city-option {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: 13px;
  font-family: 'DM Sans', -apple-system, sans-serif;
  cursor: pointer;
  color: #1a1a1a;
  line-height: 1.3;
  transition: background 160ms ease;
}
.hotel-city-option:hover,
.hotel-city-option--highlighted {
  background: #eef1fd;
  color: #2d5be3;
}
.hotel-city-option--highlighted .hotel-city-option__icon {
  color: #2d5be3;
}
.hotel-city-option--meta {
  color: #9e9b96;
  cursor: default;
  font-size: 12px;
  gap: 6px;
}
.hotel-city-option--meta:hover {
  background: transparent;
  color: #9e9b96;
}
.hotel-city-option__icon {
  color: #9e9b96;
  flex-shrink: 0;
}
.hotel-city-spinner {
  width: 12px;
  height: 12px;
  border: 2px solid #e2e0db;
  border-top-color: #2d5be3;
  border-radius: 50%;
  animation: hrSpin .7s linear infinite;
  display: inline-block;
  flex-shrink: 0;
}
@keyframes hrSpin { to { transform: rotate(360deg); } }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 640px) {
  .hotel-room-list .hotel-top-fields {
    grid-template-columns: 1fr 1fr;
  }
  .hotel-room-list .hotel-top-fields .hotel-field-group:last-child {
    grid-column: span 2;
  }
  .hotel-room-list .room-row__fields {
    grid-template-columns: 1fr 1fr;
  }
  .hotel-room-list .room-row__summary {
    display: none;
  }
}
@media (max-width: 420px) {
  .hotel-room-list .hotel-top-fields {
    grid-template-columns: 1fr;
  }
  .hotel-room-list .hotel-top-fields .hotel-field-group:last-child {
    grid-column: auto;
  }
  .hotel-room-list .room-row__fields {
    grid-template-columns: 1fr;
  }
  .hotel-room-list .child-detail-row {
    flex-direction: column;
    align-items: flex-start;
  }
  .hotel-room-list .child-detail-row .hotel-field-group {
    width: 100%;
    min-width: unset;
  }
}
.hotel-room-list .hotel-card__footer {
 display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 1rem;
  border-top: 1px solid #e5e7eb;
  background-color: #f9fafb;
}


.hotel-btn {
   display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  height: 2rem;
  padding-inline: 0.75rem;
  border-radius: 0.375rem;
  font-size: 0.75rem;
  font-weight: 500;
  cursor: pointer;
  border: 1px solid;
  background-color: #ffffff;
  transition: background-color 150ms ease, border-color 150ms ease;
}
.hotel-btn--add {
   border-color: #d1d5db;
   background-color: #ece9ff;
}


.hotel-btn--remove {
  border-color: #ea0f0f;
  background-color: #ffd8d8;
  color: #333;
}

.hotel-btn:hover {
  opacity: 0.9;
}



.hotel-multi-dropdown {
  position: relative;
}

.hotel-multi-display {
  border: 1px solid #ddd;
  padding: 8px;
  cursor: pointer;
  border-radius: 6px;
  background: #fff;
}

.hotel-multi-options {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  display: none;
  z-index: 9999;
  padding: 8px;
  max-height: 200px;        /* ← limits height */
  overflow-y: auto;         /* ← enables scroll */
}

.hotel-multi-options label {
  display: block;
  margin-bottom: 4px;
  cursor: pointer;
}


/* Remove overflow:hidden from room-row so dropdowns aren't clipped */
.hotel-room-list .room-row {
  overflow: visible;
}

/* Give the room category dropdown a high z-index to float above siblings */
.hotel-room-list .room-category-dropdown .hotel-multi-options {
  z-index: 99999;
}

/* Also fix hotel category dropdown at card level */
.hotel-room-list .hotel-multi-dropdown .hotel-multi-options {
  z-index: 99999;
}

/*!* ============================================================*/
/*   hotel-room-info.css*/
/*   ============================================================ *!*/

/*!* ── List wrapper ── *!*/
/*.hotel-room-list {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 0.5rem;*/
/*  max-width: 100%;*/
/*  margin-inline: auto;*/
/*}*/

/*!* ── Card ── *!*/
/*.hotel-card {*/
/*  background-color: #ffffff;*/
/*  border: 1px solid #e5e7eb;*/
/*  border-radius: 0.5rem 0.5rem 0 0;*/
/*  overflow: visible;*/
/*  position: relative;*/
/*}*/

/*!* ── Card header ── *!*/
/*.hotel-card__header {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: space-between;*/
/*  padding: 0.75rem 1rem;*/
/*  border-bottom: 1px solid #e5e7eb;*/
/*}*/

/*.hotel-card__header-left {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 0.5rem;*/
/*}*/

/*.hotel-step-badge {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  width: 22px;*/
/*  height: 22px;*/
/*  flex-shrink: 0;*/
/*  border-radius: 50%;*/
/*  background-color: #ede9fe;*/
/*  color: #6d28d9;*/
/*  font-size: 0.6875rem;*/
/*  font-weight: 700;*/
/*  user-select: none;*/
/*}*/

/*.hotel-card__title {*/
/*  font-size: 0.8125rem;*/
/*  font-weight: 600;*/
/*  color: #374151;*/
/*}*/

/*!* ── Fields row ── *!*/
/*.hotel-card__fields {*/
/*  display: flex;*/
/*  flex-wrap: wrap;*/
/*  align-items: flex-end;*/
/*  gap: 0.75rem;*/
/*  padding: 0.875rem 1rem;*/
/*  overflow: visible;*/
/*  !* no stacking context here — lets dropdown escape *!*/
/*  isolation: auto;*/
/*}*/

/*!* ── Field group ── *!*/
/*.hotel-field-group {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 0.25rem;*/
/*  position: relative;*/
/*  min-width: 140px;*/
/*}*/

/*.hotel-field-group label {*/
/*  font-size: 0.75rem;*/
/*  font-weight: 500;*/
/*  color: #374151;*/
/*}*/

/*.hotel-required { color: #dc2626; }*/

/*!* ── Select wrapper (for native <select> fields only) ── *!*/
/*.hotel-select-wrapper {*/
/*  position: relative;*/
/*  width: 100%;*/
/*}*/

/*!* ── Native <select> ── *!*/
/*select.hotel-select {*/
/*  appearance: none;*/
/*  -webkit-appearance: none;*/
/*  height: 2.25rem;*/
/*  padding-left: 0.625rem;*/
/*  padding-right: 1.75rem;*/
/*  border: 1px solid #d1d5db;*/
/*  border-radius: 0.375rem;*/
/*  background-color: #ffffff;*/
/*  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");*/
/*  background-repeat: no-repeat;*/
/*  background-position: right 0.5rem center;*/
/*  font-size: 0.8125rem;*/
/*  color: #111827;*/
/*  cursor: pointer;*/
/*  min-width: 140px;*/
/*  width: 100%;*/
/*  outline: none;*/
/*  transition: border-color 150ms ease, box-shadow 150ms ease;*/
/*}*/

/*select.hotel-select:focus {*/
/*  border-color: #6d28d9;*/
/*  box-shadow: 0 0 0 2px #ede9fe;*/
/*}*/

/*!* ── Stepper ── *!*/
/*.hotel-stepper {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  height: 2.25rem;*/
/*  width: 108px;*/
/*  border: 1px solid #d1d5db;*/
/*  border-radius: 0.375rem;*/
/*  overflow: hidden;*/
/*  background-color: #ffffff;*/
/*}*/

/*.hotel-stepper__btn {*/
/*  width: 30px;*/
/*  height: 100%;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  background: none;*/
/*  border: none;*/
/*  font-size: 1rem;*/
/*  color: #6b7280;*/
/*  cursor: pointer;*/
/*  transition: background-color 150ms ease;*/
/*  flex-shrink: 0;*/
/*}*/

/*.hotel-stepper__btn:hover  { background-color: #f9fafb; }*/
/*.hotel-stepper__btn:active { background-color: #f3f4f6; }*/

/*.hotel-stepper__value {*/
/*  flex: 1;*/
/*  text-align: center;*/
/*  font-size: 0.8125rem;*/
/*  font-weight: 500;*/
/*  color: #111827;*/
/*  height: 100%;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  user-select: none;*/
/*  border-left: 1px solid #e5e7eb;*/
/*  border-right: 1px solid #e5e7eb;*/
/*}*/

/*!* ── Vertical separator ── *!*/
/*.hotel-separator {*/
/*  display: none;*/
/*  width: 1px;*/
/*  height: 2.25rem;*/
/*  background-color: #e5e7eb;*/
/*  flex-shrink: 0;*/
/*  margin-inline: 0.125rem;*/
/*}*/

/*@media (min-width: 768px) {*/
/*  .hotel-separator { display: block; }*/
/*}*/

/*!* ── Card footer ── *!*/
/*.hotel-card__footer {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 0.5rem;*/
/*  padding: 0.625rem 1rem;*/
/*  border-top: 1px solid #e5e7eb;*/
/*  background-color: #f9fafb;*/
/*}*/

/*!* ── Buttons ── *!*/
/*.hotel-btn {*/
/*  display: inline-flex;*/
/*  align-items: center;*/
/*  gap: 0.375rem;*/
/*  height: 2rem;*/
/*  padding-inline: 0.75rem;*/
/*  border-radius: 0.375rem;*/
/*  font-size: 0.75rem;*/
/*  font-weight: 500;*/
/*  cursor: pointer;*/
/*  border: 1px solid;*/
/*  background-color: #ffffff;*/
/*  transition: background-color 150ms ease, border-color 150ms ease;*/
/*}*/

/*.hotel-btn--default { border-color: #d1d5db; color: #374151; }*/
/*.hotel-btn--default:hover { background-color: #f9fafb; border-color: #9ca3af; }*/
/*.hotel-btn--danger  { border-color: #fca5a5; color: #b91c1c; }*/
/*.hotel-btn--danger:hover  { background-color: #fef2f2; border-color: #f87171; }*/


/*!* ============================================================*/
/*   CITY AUTOCOMPLETE*/
/*   Mirrors .city-select + city-covered dropdown pattern.*/
/*   All classes prefixed hotel-city- — zero conflict with*/
/*   native <select>.hotel-select or Google Maps styles.*/
/*   ============================================================ *!*/

/*!* Container div (replaces .hotel-select-wrapper for city field) *!*/
/*.hotel-city-container {*/
/*  position: relative;*/
/*  width: 100%;*/
/*  !* Do NOT set z-index here — let :focus-within on .hotel-field-group handle it *!*/
/*  !* Do NOT set overflow:hidden — would clip the dropdown *!*/
/*}*/

/*!* Suppress any Google pac-container that attaches nearby *!*/
/*.hotel-city-container .pac-container {*/
/*  display: none !important;*/
/*}*/

/*!* Loading state — spins the search icon via ::before *!*/
/*.hotel-city-container.is-loading::before {*/
/*  animation: hotel-city-spin 0.7s linear infinite;*/
/*}*/

/*!* Search icon (mirrors city-covered's plain padding approach — no pseudo magic) *!*/
/*.hotel-city-input {*/
/*  !* ── reset: this is an <input type="text">, NOT a <select> ── *!*/
/*  appearance: none;*/
/*  -webkit-appearance: none;*/
/*  background-image: none;*/
/*  background-color: #ffffff;*/

/*  !* ── sizing ── *!*/
/*  display: block;*/
/*  height: 2.25rem;*/
/*  width: 100%;*/
/*  min-width: 180px;*/
/*  box-sizing: border-box;*/

/*  !* left pad for search icon, right pad for clear btn *!*/
/*  padding: 0 1.875rem 0 1.875rem;*/

/*  !* ── border ── *!*/
/*  border: 1px solid #d1d5db;*/
/*  border-radius: 0.375rem;*/

/*  !* ── typography ── *!*/
/*  font-size: 0.8125rem;*/
/*  font-family: inherit;*/
/*  color: #111827;*/
/*  line-height: 1.4;*/
/*  cursor: text;*/

/*  outline: none;*/
/*  transition: border-color 150ms ease, box-shadow 150ms ease;*/
/*}*/

/*.hotel-city-input::placeholder { color: #9ca3af; }*/

/*.hotel-city-input:focus {*/
/*  border-color: #6d28d9;*/
/*  box-shadow: 0 0 0 2px #ede9fe;*/
/*}*/

/*.hotel-city-input.has-value {*/
/*  border-color: #a78bfa;*/
/*}*/

/*!* Search icon via container ::before *!*/
/*.hotel-city-container::before {*/
/*  content: "";*/
/*  position: absolute;*/
/*  left: 0.575rem;*/
/*  top: 50%;*/
/*  transform: translateY(-50%);*/
/*  width: 13px;*/
/*  height: 13px;*/
/*  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='13' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");*/
/*  background-repeat: no-repeat;*/
/*  background-size: contain;*/
/*  pointer-events: none;*/
/*  z-index: 2;*/
/*}*/

/*@keyframes hotel-city-spin {*/
/*  to { transform: translateY(-50%) rotate(360deg); }*/
/*}*/

/*!* Clear ✕ button *!*/
/*.hotel-city-clear {*/
/*  position: absolute;*/
/*  right: 0.4rem;*/
/*  top: 50%;*/
/*  transform: translateY(-50%);*/
/*  width: 18px;*/
/*  height: 18px;*/
/*  border-radius: 50%;*/
/*  background: #e5e7eb;*/
/*  border: none;*/
/*  cursor: pointer;*/
/*  display: none;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  padding: 0;*/
/*  transition: background 150ms ease;*/
/*  z-index: 2;*/
/*}*/

/*.hotel-city-clear:hover { background: #d1d5db; }*/

/*.hotel-city-input.has-value ~ .hotel-city-clear {*/
/*  display: flex;*/
/*}*/


/*!* ============================================================*/
/*   AUTOCOMPLETE DROPDOWN*/
/*   Mirrors .s2-dropdown from city-covered-sightseeing.css*/
/*   but prefixed hotel-city- to stay fully isolated.*/
/*   ============================================================ *!*/

/*.hotel-city-dropdown {*/
/*  !* position:fixed + top/left/width/z-index are set by JS positionDropdown()*/
/*     so the dropdown is a body-level portal — immune to any parent clipping *!*/

/*  background: #ffffff;*/
/*  border: 1px solid #c4b5fd;*/
/*  border-radius: 0.5rem;*/
/*  list-style: none;*/
/*  margin: 0;*/
/*  padding: 0.25rem;*/

/*  !* hidden by default — shown via hotel-city-dropdown--open class *!*/
/*  opacity: 0;*/
/*  transform: translateY(-4px);*/
/*  pointer-events: none;*/
/*  transition: opacity 150ms ease, transform 150ms ease;*/

/*  max-height: 240px;*/
/*  overflow-y: auto;*/
/*  overflow-x: hidden;*/

/*  box-shadow:*/
/*    0 4px 6px -1px rgba(109, 40, 217, 0.08),*/
/*    0 10px 24px -4px rgba(109, 40, 217, 0.12);*/

/*  font-family: inherit;*/
/*  font-size: 0.8125rem;*/
/*  line-height: 1.4;*/
/*  color: #374151;*/

/*  scrollbar-width: thin;*/
/*  scrollbar-color: #c4b5fd #f5f3ff;*/
/*}*/

/*.hotel-city-dropdown::-webkit-scrollbar       { width: 5px; }*/
/*.hotel-city-dropdown::-webkit-scrollbar-track { background: #f5f3ff; border-radius: 99px; }*/
/*.hotel-city-dropdown::-webkit-scrollbar-thumb { background: #c4b5fd; border-radius: 99px; }*/

/*!* open state *!*/
/*.hotel-city-dropdown.hotel-city-dropdown--open {*/
/*  opacity: 1;*/
/*  transform: translateY(0);*/
/*  pointer-events: auto;*/
/*}*/

/*!* ── Option row ── *!*/
/*.hotel-city-option {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 0.5rem;*/
/*  padding: 0.45rem 0.625rem;*/
/*  border-radius: 0.375rem;*/
/*  cursor: pointer;*/
/*  font-size: 0.8125rem;*/
/*  color: #374151;*/
/*  line-height: 1.3;*/
/*  transition: background-color 120ms ease, color 120ms ease;*/
/*  !* hard reset so Maps cannot inflate this *!*/
/*  background-image: none;*/
/*  background-color: transparent;*/
/*  min-height: unset;*/
/*  height: auto;*/
/*  width: auto;*/
/*}*/

/*.hotel-city-option + .hotel-city-option { margin-top: 1px; }*/

/*!* ── Pin icon — hard-capped so Maps cannot treat it as a marker ── *!*/
/*.hotel-city-option__icon {*/
/*  display: inline-block;*/
/*  flex-shrink: 0;*/
/*  width: 13px;*/
/*  height: 13px;*/
/*  min-width: 13px;*/
/*  min-height: 13px;*/
/*  max-width: 13px;*/
/*  max-height: 13px;*/
/*  opacity: 0.4;*/
/*  position: static;*/
/*  transform: none;*/
/*  margin: 0;*/
/*  padding: 0;*/
/*  background: none;*/
/*  border: none;*/
/*  box-shadow: none;*/
/*  color: currentColor;*/
/*  vertical-align: middle;*/
/*}*/

/*!* ── Option text ── *!*/
/*.hotel-city-option__text {*/
/*  flex: 1;*/
/*  min-width: 0;*/
/*  white-space: nowrap;*/
/*  overflow: hidden;*/
/*  text-overflow: ellipsis;*/
/*  font-size: 0.8125rem;*/
/*}*/

/*!* highlighted match chars *!*/
/*.hotel-city-option__text mark {*/
/*  background: none;*/
/*  color: #6d28d9;*/
/*  font-weight: 700;*/
/*}*/

/*!* hover / keyboard-highlighted *!*/
/*.hotel-city-option:hover,*/
/*.hotel-city-option--highlighted {*/
/*  background-color: #f5f3ff;*/
/*  color: #5b21b6;*/
/*}*/

/*.hotel-city-option:hover .hotel-city-option__icon,*/
/*.hotel-city-option--highlighted .hotel-city-option__icon {*/
/*  opacity: 0.85;*/
/*}*/

/*!* ── Meta rows (loading / empty / error) ── *!*/
/*.hotel-city-option--meta {*/
/*  justify-content: center;*/
/*  color: #9ca3af;*/
/*  font-style: italic;*/
/*  cursor: default;*/
/*  gap: 0.375rem;*/
/*  background-color: transparent;*/
/*}*/

/*.hotel-city-option--meta:hover { background: none; color: #9ca3af; }*/

/*!* ── Spinner ── *!*/
/*.hotel-city-spinner {*/
/*  display: inline-block;*/
/*  width: 13px;*/
/*  height: 13px;*/
/*  min-width: 13px;*/
/*  flex-shrink: 0;*/
/*  border: 2px solid #e5e7eb;*/
/*  border-top-color: #6d28d9;*/
/*  border-radius: 50%;*/
/*  background: none;*/
/*  position: static;*/
/*}*/
/*!* ============================================================*/
/*   CHILDREN DETAILS SECTION*/
/*   Matches hotel-room-info.css design system.*/
/*   ============================================================ *!*/

/*!* ── Section wrapper ── *!*/
/*.hotel-children-details {*/
/*  border-top: 1px solid #e5e7eb;*/
/*  padding: 0.875rem 1rem;*/
/*  background-color: #faf5ff;*/
/*}*/

/*!* ── Section header ── *!*/
/*.hotel-children-details__header {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 0.375rem;*/
/*  font-size: 0.75rem;*/
/*  font-weight: 600;*/
/*  color: #6d28d9;*/
/*  margin-bottom: 0.75rem;*/
/*}*/

/*.hotel-children-details__header svg {*/
/*  flex-shrink: 0;*/
/*  color: #6d28d9;*/
/*  opacity: 0.75;*/
/*}*/

/*!* ── Rows container ── *!*/
/*.hotel-children-rows {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 0.5rem;*/
/*}*/

/*!* ── Single child row ── *!*/
/*.hotel-child-row {*/
/*  display: flex;*/
/*  flex-wrap: wrap;*/
/*  align-items: flex-end;*/
/*  gap: 0.625rem;*/
/*  padding: 0.625rem 0.75rem;*/
/*  background-color: #ffffff;*/
/*  border: 1px solid #e5e7eb;*/
/*  border-radius: 0.375rem;*/
/*}*/

/*!* ── Child label (e.g. "Child 1") ── *!*/
/*.hotel-child-row__label {*/
/*  font-size: 0.75rem;*/
/*  font-weight: 600;*/
/*  color: #6d28d9;*/
/*  background-color: #ede9fe;*/
/*  border-radius: 0.25rem;*/
/*  padding: 0.125rem 0.5rem;*/
/*  align-self: center;*/
/*  white-space: nowrap;*/
/*  flex-shrink: 0;*/
/*  height: 1.5rem;*/
/*  display: flex;*/
/*  align-items: center;*/
/*}*/

/*!* ── Age field group ── *!*/
/*.hotel-child-row__age {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 0.25rem;*/
/*  min-width: 90px;*/
/*}*/

/*.hotel-child-row__age label,*/
/*.hotel-child-row__bed label {*/
/*  font-size: 0.75rem;*/
/*  font-weight: 500;*/
/*  color: #374151;*/
/*}*/

/*!* ── Bed preference field group ── *!*/
/*.hotel-child-row__bed {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 0.25rem;*/
/*  min-width: 160px;*/
/*  flex: 1;*/
/*}*/

/*!* ── Number input (age) ── *!*/
/*.hotel-input {*/
/*  appearance: none;*/
/*  -webkit-appearance: none;*/
/*  height: 2.25rem;*/
/*  padding: 0 0.625rem;*/
/*  border: 1px solid #d1d5db;*/
/*  border-radius: 0.375rem;*/
/*  background-color: #ffffff;*/
/*  font-size: 0.8125rem;*/
/*  font-family: inherit;*/
/*  color: #111827;*/
/*  width: 100%;*/
/*  box-sizing: border-box;*/
/*  outline: none;*/
/*  transition: border-color 150ms ease, box-shadow 150ms ease;*/
/*}*/

/*.hotel-input:focus {*/
/*  border-color: #6d28d9;*/
/*  box-shadow: 0 0 0 2px #ede9fe;*/
/*}*/

/*.hotel-input::placeholder {*/
/*  color: #9ca3af;*/
/*}*/

/*!* ── Spinner buttons on number input (Chrome/Safari) ── *!*/
/*.hotel-input[type="number"]::-webkit-inner-spin-button,*/
/*.hotel-input[type="number"]::-webkit-outer-spin-button {*/
/*  opacity: 1;*/
/*  cursor: pointer;*/
/*}*/

/*!* ── Empty state (when no children rows yet) ── *!*/
/*.hotel-children-rows:empty::after {*/
/*  content: "No children added yet.";*/
/*  font-size: 0.75rem;*/
/*  color: #9ca3af;*/
/*  font-style: italic;*/
/*  display: block;*/
/*  text-align: center;*/
/*  padding: 0.5rem 0;*/
/*}*/
/*!* ============================================================*/
/*   ROOM SUMMARY*/
/*   ============================================================ *!*/

/*.hotel-summary {*/
/*  display: none;*/
/*  border: 1px solid #e5e7eb;*/
/*  border-radius: 0.5rem;*/
/*  background-color: #ffffff;*/
/*  overflow: hidden;*/
/*}*/

/*.hotel-summary__header {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 0.375rem;*/
/*  padding: 0.5rem 1rem;*/
/*  background-color: #f9fafb;*/
/*  border-bottom: 1px solid #e5e7eb;*/
/*}*/

/*.hotel-summary__header svg {*/
/*  flex-shrink: 0;*/
/*  color: #6d28d9;*/
/*}*/

/*.hotel-summary__title {*/
/*  font-size: 0.75rem;*/
/*  font-weight: 600;*/
/*  color: #374151;*/
/*}*/

/*.hotel-summary__body {*/
/*  padding: 0.5rem 0.75rem;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 0.25rem;*/
/*}*/

/*!* ── Per-room row ── *!*/
/*.hotel-summary-row {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 0.5rem;*/
/*  padding: 0.375rem 0.5rem;*/
/*  border-radius: 0.375rem;*/
/*  background-color: #faf5ff;*/
/*  border: 1px solid #ede9fe;*/
/*  font-size: 0.75rem;*/
/*}*/

/*.hotel-summary-row__index {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  width: 18px;*/
/*  height: 18px;*/
/*  flex-shrink: 0;*/
/*  border-radius: 50%;*/
/*  background-color: #6d28d9;*/
/*  color: #ffffff;*/
/*  font-size: 0.5625rem;*/
/*  font-weight: 700;*/
/*}*/

/*.hotel-summary-row__name {*/
/*  font-weight: 600;*/
/*  color: #374151;*/
/*  white-space: nowrap;*/
/*  min-width: 48px;*/
/*}*/

/*.hotel-summary-row__arrow {*/
/*  color: #9ca3af;*/
/*  font-size: 0.6875rem;*/
/*  flex-shrink: 0;*/
/*}*/

/*.hotel-summary-row__chips {*/
/*  display: flex;*/
/*  flex-wrap: wrap;*/
/*  gap: 0.25rem;*/
/*  flex: 1;*/
/*}*/

/*.hotel-summary-chip {*/
/*  display: inline-flex;*/
/*  align-items: center;*/
/*  gap: 0.2rem;*/
/*  padding: 0.1rem 0.4rem;*/
/*  border-radius: 9999px;*/
/*  font-size: 0.625rem;*/
/*  font-weight: 600;*/
/*  border: 1px solid;*/
/*  white-space: nowrap;*/
/*}*/

/*.hotel-summary-chip--rooms {*/
/*  background-color: #ede9fe;*/
/*  color: #5b21b6;*/
/*  border-color: #c4b5fd;*/
/*}*/

/*.hotel-summary-chip--adults {*/
/*  background-color: #dbeafe;*/
/*  color: #1e40af;*/
/*  border-color: #93c5fd;*/
/*}*/

/*.hotel-summary-chip--children {*/
/*  background-color: #dcfce7;*/
/*  color: #166534;*/
/*  border-color: #86efac;*/
/*}*/

/*.hotel-summary-chip--infants {*/
/*  background-color: #fef9c3;*/
/*  color: #854d0e;*/
/*  border-color: #fde047;*/
/*}*/

/*.hotel-summary-chip svg {*/
/*  flex-shrink: 0;*/
/*}*/

/*.hotel-summary-row__total {*/
/*  margin-left: auto;*/
/*  font-size: 0.6875rem;*/
/*  color: #9ca3af;*/
/*  white-space: nowrap;*/
/*  flex-shrink: 0;*/
/*}*/

/*.hotel-summary-row__total strong {*/
/*  color: #6d28d9;*/
/*  font-weight: 700;*/
/*}*/
/*!* ── Children details — visible state ── *!*/
/*.hotel-children-details[style*="display:block"],*/
/*.hotel-children-details[style*="display: block"] {*/
/*  display: block !important;*/
/*}*/
/* ============================================================
   room-list.css — Hotel Details Card Component
   All classes prefixed with hotel-
   ============================================================ */

/*!* ── Wrapper ── *!*/
/*.hotel-room-list {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 0.5rem;*/
/*  max-width: 100%;*/
/*  margin-inline: auto;*/
/*}*/

/*!* ── Card ── *!*/
/*.hotel-card {*/
/*  background-color: #ffffff;*/
/*  border: 1px solid #e5e7eb;*/
/*  border-radius: 0.5rem 0.5rem 0 0;*/
/*  overflow: hidden;*/
/*}*/

/*!* ── Card header ── *!*/
/*.hotel-card__header {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: space-between;*/
/*  padding: 0.75rem 1rem;*/
/*  border-bottom: 1px solid #e5e7eb;*/
/*  background-color: #ffffff;*/
/*}*/

/*.hotel-card__header-left {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 0.5rem;*/
/*}*/

/*!* ── Step badge ── *!*/
/*.hotel-step-badge {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  width: 22px;*/
/*  height: 22px;*/
/*  flex-shrink: 0;*/
/*  border-radius: 50%;*/
/*  background-color: #ede9fe;*/
/*  color: #6d28d9;*/
/*  font-size: 0.6875rem;*/
/*  font-weight: 700;*/
/*}*/

/*!* ── Card title ── *!*/
/*.hotel-card__title {*/
/*  font-size: 0.8125rem;*/
/*  font-weight: 600;*/
/*  color: #374151;*/
/*}*/

/*!* ── Status badge ── *!*/
/*.hotel-status-badge {*/
/*  display: inline-block;*/
/*  font-size: 0.6875rem;*/
/*  font-weight: 500;*/
/*  padding: 0.125rem 0.5rem;*/
/*  border-radius: 0.375rem;*/
/*  background-color: #fffbeb;*/
/*  color: #92400e;*/
/*  border: 1px solid #fde68a;*/
/*}*/

/*!* ── Fields row ── *!*/
/*.hotel-card__fields {*/
/*  display: flex;*/
/*  flex-wrap: wrap;*/
/*  align-items: flex-end;*/
/*  gap: 0.75rem;*/
/*  padding: 0.875rem 1rem;*/
/*}*/

/*!* ── Field group ── *!*/
/*.hotel-field-group {*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  gap: 0.25rem;*/
/*}*/

/*.hotel-field-group label {*/
/*  font-size: 0.75rem;*/
/*  font-weight: 500;*/
/*  color: #374151;*/
/*}*/

/*!* ── Required asterisk ── *!*/
/*.hotel-required {*/
/*  color: #dc2626;*/
/*}*/

/*!* ── Select wrapper & select ── *!*/
/*.hotel-select-wrapper {*/
/*  position: relative;*/
/*}*/

/*.hotel-select {*/
/*  appearance: none;*/
/*  -webkit-appearance: none;*/
/*  height: 2.25rem;*/
/*  padding-left: 0.625rem;*/
/*  padding-right: 1.75rem;*/
/*  border: 1px solid #d1d5db;*/
/*  border-radius: 0.375rem;*/
/*  background-color: #ffffff;*/
/*  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");*/
/*  background-repeat: no-repeat;*/
/*  background-position: right 0.5rem center;*/
/*  font-size: 0.8125rem;*/
/*  color: #111827;*/
/*  cursor: pointer;*/
/*  min-width: 140px;*/
/*  outline: none;*/
/*  transition: border-color 150ms ease;*/
/*}*/

/*.hotel-select:focus {*/
/*  border-color: #6d28d9;*/
/*  box-shadow: 0 0 0 2px #ede9fe;*/
/*}*/

/*!* ── Stepper ── *!*/
/*.hotel-stepper {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  height: 2.25rem;*/
/*  width: 108px;*/
/*  border: 1px solid #d1d5db;*/
/*  border-radius: 0.375rem;*/
/*  overflow: hidden;*/
/*  background-color: #ffffff;*/
/*}*/

/*.hotel-stepper__btn {*/
/*  width: 30px;*/
/*  height: 100%;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  background: none;*/
/*  border: none;*/
/*  font-size: 1rem;*/
/*  color: #6b7280;*/
/*  cursor: pointer;*/
/*  transition: background-color 150ms ease;*/
/*  flex-shrink: 0;*/
/*}*/

/*.hotel-stepper__btn:hover {*/
/*  background-color: #f9fafb;*/
/*}*/

/*.hotel-stepper__btn:active {*/
/*  background-color: #f3f4f6;*/
/*}*/

/*.hotel-stepper__btn--disabled {*/
/*  color: #d1d5db;*/
/*  cursor: not-allowed;*/
/*}*/

/*.hotel-stepper__btn--disabled:hover {*/
/*  background-color: transparent;*/
/*}*/

/*.hotel-stepper__value {*/
/*  flex: 1;*/
/*  text-align: center;*/
/*  font-size: 0.8125rem;*/
/*  font-weight: 500;*/
/*  color: #111827;*/
/*  height: 100%;*/
/*  display: flex;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  user-select: none;*/
/*  border-left: 1px solid #e5e7eb;*/
/*  border-right: 1px solid #e5e7eb;*/
/*}*/

/*!* ── Vertical separator ── *!*/
/*.hotel-separator {*/
/*  display: none;*/
/*  width: 1px;*/
/*  height: 2.25rem;*/
/*  background-color: #e5e7eb;*/
/*  flex-shrink: 0;*/
/*  margin-inline: 0.125rem;*/
/*}*/

/*@media (min-width: 768px) {*/
/*  .hotel-separator {*/
/*    display: block;*/
/*  }*/
/*}*/

/*!* ── Summary bar ── *!*/
/*.hotel-summary-bar {*/
/*  display: flex;*/
/*  flex-wrap: wrap;*/
/*  align-items: center;*/
/*  gap: 0.375rem;*/
/*  padding: 0.5rem 1rem;*/
/*  background-color: #f9fafb;*/
/*  border-top: 1px solid #e5e7eb;*/
/*}*/

/*.hotel-summary-bar__text {*/
/*  font-size: 0.6875rem;*/
/*  color: #9ca3af;*/
/*}*/

/*!* ── Card footer ── *!*/
/*.hotel-card__footer {*/
/*  display: flex;*/
/*  align-items: center;*/
/*  gap: 0.5rem;*/
/*  padding: 0.625rem 1rem;*/
/*  border-top: 1px solid #e5e7eb;*/
/*  background-color: #f9fafb;*/
/*}*/

/*!* ── Buttons ── *!*/
/*.hotel-btn {*/
/*  display: inline-flex;*/
/*  align-items: center;*/
/*  gap: 0.375rem;*/
/*  height: 2rem;*/
/*  padding-inline: 0.75rem;*/
/*  border-radius: 0.375rem;*/
/*  font-size: 0.75rem;*/
/*  font-weight: 500;*/
/*  cursor: pointer;*/
/*  border: 1px solid;*/
/*  background-color: #ffffff;*/
/*  transition: background-color 150ms ease, border-color 150ms ease;*/
/*}*/

/*.hotel-btn--default {*/
/*  border-color: #d1d5db;*/
/*  color: #374151;*/
/*}*/

/*.hotel-btn--default:hover {*/
/*  background-color: #f9fafb;*/
/*  border-color: #9ca3af;*/
/*}*/

/*.hotel-btn--danger {*/
/*  border-color: #fca5a5;*/
/*  color: #b91c1c;*/
/*}*/

/*.hotel-btn--danger:hover {*/
/*  background-color: #fef2f2;*/
/*  border-co!* ── Wrapper ── */

