.hzbr-zone-box,
.hzbr-inline-card {
  background: #ffffff;
  border: 1px solid #e3e8f1;
  border-radius: 12px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
  padding: 20px;
  margin: 0 0 24px;
  max-width: 100%;
  font-family: inherit;
}

.hzbr-inline-card {
  margin: 0 0 18px;
  box-shadow: none;
}

.hzbr-zone-head strong,
.hzbr-inline-title {
  display: block;
  font-size: 20px;
  line-height: 1.25;
  color: #202734;
  margin-bottom: 6px;
  font-weight: 700;
}

.hzbr-zone-head span,
.hzbr-inline-desc {
  display: block;
  color: #667085;
  font-size: 14px;
  margin-bottom: 16px;
}

.hzbr-zone-form {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.hzbr-zone-form input {
  width: 220px;
  max-width: 100%;
  border: 1px solid #d8dee9;
  border-radius: 8px;
  padding: 12px 14px;
  min-height: 44px;
  font-size: 15px;
  background: #ffffff;
}

.hzbr-zone-form button,
.hzbr-add-rush-btn {
  border: 0;
  border-radius: 8px;
  background: #6d72dc;
  color: #ffffff;
  font-weight: 700;
  padding: 12px 18px;
  min-height: 44px;
  cursor: pointer;
}

.hzbr-zone-form button:hover,
.hzbr-add-rush-btn:hover {
  opacity: 0.92;
}

.hzbr-zone-result {
  display: none;
  margin-top: 16px;
  padding: 14px 16px;
  border-radius: 10px;
  font-size: 14px;
  line-height: 1.45;
}

.hzbr-zone-result strong {
  font-size: 15px;
}

.hzbr-zone-result.hzbr-success,
.hzbr-zone-result.hzbr-error,
.hzbr-zone-result.hzbr-warning {
  display: block;
}

.hzbr-zone-result.hzbr-success {
  background: #edf9f1;
  border: 1px solid #bee8ca;
  color: #146c2e;
}

.hzbr-zone-result.hzbr-error {
  background: #fff1f1;
  border: 1px solid #ffc9c9;
  color: #9b1c1c;
}

.hzbr-zone-result.hzbr-warning {
  background: #fff8e8;
  border: 1px solid #ffe0a3;
  color: #7a4b00;
}

.hzbr-zone-note {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #edf0f5;
  color: #667085;
  font-size: 13px;
  line-height: 1.55;
}

.hzbr-inline-note {
  margin-top: 12px;
}

.hzbr-actions {
  margin-top: 12px;
}

.hzbr-hidden-rush-extra {
  display: none !important;
}

@media (max-width: 640px) {
  .hzbr-zone-box,
  .hzbr-inline-card {
    padding: 16px;
  }
  .hzbr-zone-form input,
  .hzbr-zone-form button,
  .hzbr-add-rush-btn {
    width: 100%;
  }
}
.hzbr-rush-panel {
  display: block;
  margin-bottom: 14px;
}
/* v1.3.1: hide only the native Rush Service Fee card during normal days; the Booknetic step is still skipped by JS. */
.hzbr-hidden-rush-extra { display: none !important; }

/* v1.4.0: Service Extras is kept internally for Booknetic price calculation, but hidden from the customer experience. */
.hzbr-internal-extras-step .hzbr-rush-panel {
  display: block !important;
}
.hzbr-internal-extras-step .hzbr-zone-result:not(.hzbr-rush-panel):not(.hzbr-manual-warning) {
  display: none;
}
.hzbr-hide-service-extras-step-label .booknetic_appointment_steps_footer,
.hzbr-hide-service-extras-step-label .bkntc_booking_panel_footer {
  pointer-events: auto;
}

/* v1.4.1: internal extras processing without freezing the form. */
.hzbr-internal-extras-step .booknetic_appointment_container_body > *:not(.hzbr-rush-panel):not(.hzbr-manual-warning),
.hzbr-internal-extras-step .booknetic_appointment_body > *:not(.hzbr-rush-panel):not(.hzbr-manual-warning),
.hzbr-internal-extras-step .bkntc_booking_panel_content > *:not(.hzbr-rush-panel):not(.hzbr-manual-warning) {
  opacity: 0.25;
}


/* v1.5.0 final behavior: Service Extras is an internal step only. */
.hzbr-auto-skip-extras .booknetic_appointment_container_body,
.hzbr-auto-skip-extras .booknetic_appointment_body,
.hzbr-auto-skip-extras .bkntc_booking_panel_content,
.hzbr-auto-skip-extras .booknetic_appointment_steps_body,
.hzbr-auto-skip-extras .booknetic_right_side,
.hzbr-auto-skip-extras .bkntc_right_side {
  opacity: 0 !important;
  pointer-events: none !important;
}

.hzbr-rush-panel {
  display: block !important;
  max-width: 100% !important;
  min-height: 0 !important;
  margin: 0 0 16px !important;
  padding: 16px 18px !important;
  border-radius: 10px !important;
  box-sizing: border-box !important;
}

.hzbr-rush-panel .hzbr-rush-status {
  margin-top: 10px;
  font-weight: 700;
}

.hzbr-accept-rush-btn {
  border: 0 !important;
  border-radius: 8px !important;
  background: #6d72dc !important;
  color: #fff !important;
  font-weight: 700 !important;
  padding: 11px 18px !important;
  min-height: 42px !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.hzbr-accept-rush-btn:disabled {
  opacity: .65 !important;
  cursor: wait !important;
}

/* Once the native extra is selected, keep Booknetic's checked state but hide the native card/list. */
.hzbr-rush-extra-selected.hzbr-internal-extras-step .booknetic_appointment_container_body > *:not(.hzbr-rush-panel):not(.hzbr-manual-warning),
.hzbr-rush-extra-selected.hzbr-internal-extras-step .booknetic_appointment_body > *:not(.hzbr-rush-panel):not(.hzbr-manual-warning),
.hzbr-rush-extra-selected.hzbr-internal-extras-step .bkntc_booking_panel_content > *:not(.hzbr-rush-panel):not(.hzbr-manual-warning) {
  display: none !important;
}

/* v1.6.0 stable flow: normal days skip Service Extras; rush days show only the native Rush Service Fee card. */
.hzbr-rush-required-step .booknetic_appointment_container_body,
.hzbr-rush-required-step .booknetic_appointment_body,
.hzbr-rush-required-step .bkntc_booking_panel_content,
.hzbr-rush-required-step .booknetic_appointment_steps_body,
.hzbr-rush-required-step .booknetic_right_side,
.hzbr-rush-required-step .bkntc_right_side {
  opacity: 1 !important;
  pointer-events: auto !important;
}

.hzbr-rush-required-step .booknetic_appointment_container_body > *,
.hzbr-rush-required-step .booknetic_appointment_body > *,
.hzbr-rush-required-step .bkntc_booking_panel_content > *,
.hzbr-rush-required-step .booknetic_appointment_steps_body > *,
.hzbr-rush-required-step .booknetic_right_side > *,
.hzbr-rush-required-step .bkntc_right_side > * {
  opacity: 1 !important;
  pointer-events: auto !important;
}

.hzbr-hide-non-rush-extra {
  display: none !important;
}

.hzbr-rush-required-step .hzbr-manual-warning {
  display: block !important;
  margin-bottom: 12px !important;
}

.hzbr-rush-required-step .hzbr-hidden-rush-extra {
  display: block !important;
}

/* v1.6.1: compact rush layout and make native fee card usable */
.hzbr-rush-panel,
.hzbr-rush-required-step .hzbr-rush-panel {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 12px 14px !important;
  margin: 0 0 10px !important;
  line-height: 1.35 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}
.hzbr-rush-panel strong { display:block !important; margin:0 0 4px !important; font-size:14px !important; }
.hzbr-rush-panel span,
.hzbr-rush-panel small { display:block !important; margin:0 0 4px !important; font-size:13px !important; }
.hzbr-rush-panel .hzbr-actions { margin-top:8px !important; }
.hzbr-manual-warning,
.hzbr-rush-required-step .hzbr-manual-warning {
  height:auto !important;
  min-height:0 !important;
  padding:10px 12px !important;
  margin:0 0 8px !important;
  line-height:1.3 !important;
}
.hzbr-rush-required-step .booknetic_service_extra_card,
.hzbr-rush-required-step .booknetic_extra_card,
.hzbr-rush-required-step .bkntc_service_extra_card,
.hzbr-rush-required-step .booknetic_service_extra,
.hzbr-rush-required-step .bkntc_service_extra,
.hzbr-rush-required-step .booknetic_service_extra_item,
.hzbr-rush-required-step [data-extra-id],
.hzbr-rush-required-step [data-service-extra-id] {
  cursor:pointer !important;
}
