/**
 * Booking flow + home calculator: hover/focus shadow on interactive fields.
 */
.booking-flow-form {
  --booking-field-shadow-hover: 0 4px 16px rgba(0, 0, 0, 0.28), 0 0 0 1px rgba(255, 255, 255, 0.06);
  --booking-field-shadow-focus: 0 8px 22px rgba(190, 24, 93, 0.22), 0 0 0 1px rgba(129, 140, 248, 0.38);
}

.booking-flow-form input:not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([readonly]),
.booking-flow-form select,
.booking-flow-form textarea {
  transition: box-shadow 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}

.booking-flow-form input:not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([readonly]):hover,
.booking-flow-form select:hover,
.booking-flow-form textarea:hover {
  box-shadow: var(--booking-field-shadow-hover);
}

.booking-flow-form input:not([type="hidden"]):not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([readonly]):focus,
.booking-flow-form select:focus,
.booking-flow-form textarea:focus {
  box-shadow: var(--booking-field-shadow-focus);
}

.booking-flow-form .booking-w3-field,
.booking-flow-form .home-w3-field {
  transition: box-shadow 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}

.booking-flow-form .booking-w3-field:hover,
.booking-flow-form .home-w3-field:hover {
  box-shadow: var(--booking-field-shadow-hover);
}

.booking-flow-form .booking-w3-field:focus-within,
.booking-flow-form .home-w3-field:focus-within {
  box-shadow: var(--booking-field-shadow-focus);
}

.booking-flow-form #zy_cus_name,
.booking-flow-form #zy_cus_email,
.booking-flow-form #zy_cus_phone,
.booking-flow-form #zy_cus_notes,
.booking-flow-form #zy_cus_country .person-country-inner {
  transition: box-shadow 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}

.booking-flow-form #zy_cus_name:hover,
.booking-flow-form #zy_cus_email:hover,
.booking-flow-form #zy_cus_phone:hover,
.booking-flow-form #zy_cus_notes:hover,
.booking-flow-form #zy_cus_country:hover .person-country-inner,
.booking-flow-form #zy_cus_country .person-country-inner:hover {
  box-shadow: var(--booking-field-shadow-hover);
}

.booking-flow-form #zy_cus_name:focus-within,
.booking-flow-form #zy_cus_email:focus-within,
.booking-flow-form #zy_cus_phone:focus-within,
.booking-flow-form #zy_cus_notes:focus-within,
.booking-flow-form #zy_cus_country:focus-within .person-country-inner {
  box-shadow: var(--booking-field-shadow-focus);
}

.booking-flow-form .summary-inp {
  transition: box-shadow 0.2s ease, border-color 0.2s ease, background-color 0.2s ease;
}

.booking-flow-form .summary-inp:hover {
  box-shadow: var(--booking-field-shadow-hover);
}

.booking-flow-form .summary-inp:focus {
  box-shadow: var(--booking-field-shadow-focus);
}
