/**
 * Booking return option chips — transfer forms (home + service)
 * CSS-only visual highlight; checkbox logic unchanged.
 */

:root {
  --hrh-ret-same-bg: #ecfdf5;
  --hrh-ret-same-border: #86efac;
  --hrh-ret-same-bg-hover: #d1fae5;
  --hrh-ret-same-border-hover: #4ade80;
  --hrh-ret-same-bg-checked: #bbf7d0;
  --hrh-ret-same-border-checked: #16a34a;

  --hrh-ret-diff-bg: #eff6ff;
  --hrh-ret-diff-border: #93c5fd;
  --hrh-ret-diff-bg-hover: #dbeafe;
  --hrh-ret-diff-border-hover: #60a5fa;
  --hrh-ret-diff-bg-checked: #bfdbfe;
  --hrh-ret-diff-border-checked: #2563eb;

  --hrh-ret-chip-radius: 8px;
  --hrh-ret-chip-pad-y: 5px;
  --hrh-ret-chip-pad-x: 10px;
  --hrh-ret-chip-gap: 6px;
  --hrh-ret-chip-font: 12px;
}

/* ── Pattern A: checkbox + label (D9 + legacy) ── */
.hero-transfer-form .hrh-d9-return-check-inline,
form[data-hrh-booking-form="home-transfer"] .hrh-d9-return-check-inline,
.hero-transfer-form .x_slider_checkbox.float_left,
form[data-hrh-booking-form="home-transfer"] .x_slider_checkbox.float_left {
  gap: 8px 10px !important;
}

.hero-transfer-form .hrh-d9-return-check-inline #return_same,
form[data-hrh-booking-form="home-transfer"] .hrh-d9-return-check-inline #return_same,
.hero-transfer-form .hrh-d9-return-check-inline #return_diff,
form[data-hrh-booking-form="home-transfer"] .hrh-d9-return-check-inline #return_diff,
.hero-transfer-form .hrh-d9-return-check-inline #return_same_m,
form[data-hrh-booking-form="home-transfer"] .hrh-d9-return-check-inline #return_same_m,
.hero-transfer-form .hrh-d9-return-check-inline #return_diff_m,
form[data-hrh-booking-form="home-transfer"] .hrh-d9-return-check-inline #return_diff_m,
.hero-transfer-form .x_slider_checkbox #return_same,
form[data-hrh-booking-form="home-transfer"] .x_slider_checkbox #return_same,
.hero-transfer-form .x_slider_checkbox #return_diff,
form[data-hrh-booking-form="home-transfer"] .x_slider_checkbox #return_diff,
.hero-transfer-form .x_slider_checkbox #return_same_m,
form[data-hrh-booking-form="home-transfer"] .x_slider_checkbox #return_same_m,
.hero-transfer-form .x_slider_checkbox #return_diff_m,
form[data-hrh-booking-form="home-transfer"] .x_slider_checkbox #return_diff_m {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.hero-transfer-form #return_same + label,
form[data-hrh-booking-form="home-transfer"] #return_same + label,
.hero-transfer-form #return_same_m + label,
form[data-hrh-booking-form="home-transfer"] #return_same_m + label {
  display: inline-flex;
  align-items: center;
  gap: var(--hrh-ret-chip-gap);
  margin: 0 !important;
  padding: var(--hrh-ret-chip-pad-y) var(--hrh-ret-chip-pad-x);
  font-size: var(--hrh-ret-chip-font) !important;
  font-weight: 600 !important;
  line-height: 1.25;
  color: #14532d !important;
  background: var(--hrh-ret-same-bg);
  border: 1.5px solid var(--hrh-ret-same-border);
  border-radius: var(--hrh-ret-chip-radius);
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
  white-space: nowrap;
}

.hero-transfer-form #return_diff + label,
form[data-hrh-booking-form="home-transfer"] #return_diff + label,
.hero-transfer-form #return_diff_m + label,
form[data-hrh-booking-form="home-transfer"] #return_diff_m + label {
  display: inline-flex;
  align-items: center;
  gap: var(--hrh-ret-chip-gap);
  margin: 0 !important;
  padding: var(--hrh-ret-chip-pad-y) var(--hrh-ret-chip-pad-x);
  font-size: var(--hrh-ret-chip-font) !important;
  font-weight: 600 !important;
  line-height: 1.25;
  color: #1e3a8a !important;
  background: var(--hrh-ret-diff-bg);
  border: 1.5px solid var(--hrh-ret-diff-border);
  border-radius: var(--hrh-ret-chip-radius);
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
  white-space: nowrap;
}

.hero-transfer-form #return_same:not(:checked) + label:hover,
form[data-hrh-booking-form="home-transfer"] #return_same:not(:checked) + label:hover,
.hero-transfer-form #return_same_m:not(:checked) + label:hover,
form[data-hrh-booking-form="home-transfer"] #return_same_m:not(:checked) + label:hover {
  background: var(--hrh-ret-same-bg-hover);
  border-color: var(--hrh-ret-same-border-hover);
}

.hero-transfer-form #return_diff:not(:checked) + label:hover,
form[data-hrh-booking-form="home-transfer"] #return_diff:not(:checked) + label:hover,
.hero-transfer-form #return_diff_m:not(:checked) + label:hover,
form[data-hrh-booking-form="home-transfer"] #return_diff_m:not(:checked) + label:hover {
  background: var(--hrh-ret-diff-bg-hover);
  border-color: var(--hrh-ret-diff-border-hover);
}

.hero-transfer-form #return_same:checked + label,
form[data-hrh-booking-form="home-transfer"] #return_same:checked + label,
.hero-transfer-form #return_same_m:checked + label,
form[data-hrh-booking-form="home-transfer"] #return_same_m:checked + label {
  background: var(--hrh-ret-same-bg-checked);
  border-color: var(--hrh-ret-same-border-checked);
  box-shadow: 0 0 0 2px rgba(22, 163, 74, 0.14);
}

.hero-transfer-form #return_diff:checked + label,
form[data-hrh-booking-form="home-transfer"] #return_diff:checked + label,
.hero-transfer-form #return_diff_m:checked + label,
form[data-hrh-booking-form="home-transfer"] #return_diff_m:checked + label {
  background: var(--hrh-ret-diff-bg-checked);
  border-color: var(--hrh-ret-diff-border-checked);
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.14);
}

.hero-transfer-form #return_same + label::before,
form[data-hrh-booking-form="home-transfer"] #return_same + label::before,
.hero-transfer-form #return_same_m + label::before,
form[data-hrh-booking-form="home-transfer"] #return_same_m + label::before,
.hero-transfer-form #return_diff + label::before,
form[data-hrh-booking-form="home-transfer"] #return_diff + label::before,
.hero-transfer-form #return_diff_m + label::before,
form[data-hrh-booking-form="home-transfer"] #return_diff_m + label::before {
  content: "";
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  border-radius: 3px;
  background: #fff center/10px 10px no-repeat;
  box-sizing: border-box;
}

.hero-transfer-form #return_same + label::before,
form[data-hrh-booking-form="home-transfer"] #return_same + label::before,
.hero-transfer-form #return_same_m + label::before,
form[data-hrh-booking-form="home-transfer"] #return_same_m + label::before {
  border: 1.5px solid #22c55e;
}

.hero-transfer-form #return_diff + label::before,
form[data-hrh-booking-form="home-transfer"] #return_diff + label::before,
.hero-transfer-form #return_diff_m + label::before,
form[data-hrh-booking-form="home-transfer"] #return_diff_m + label::before {
  border: 1.5px solid #3b82f6;
}

.hero-transfer-form #return_same:checked + label::before,
form[data-hrh-booking-form="home-transfer"] #return_same:checked + label::before,
.hero-transfer-form #return_same_m:checked + label::before,
form[data-hrh-booking-form="home-transfer"] #return_same_m:checked + label::before {
  background-color: #16a34a;
  border-color: #16a34a;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='%23fff' d='M4.5 8.5L2 6l1-1 1.5 1.5L9 3l1 1z'/%3E%3C/svg%3E");
}

.hero-transfer-form #return_diff:checked + label::before,
form[data-hrh-booking-form="home-transfer"] #return_diff:checked + label::before,
.hero-transfer-form #return_diff_m:checked + label::before,
form[data-hrh-booking-form="home-transfer"] #return_diff_m:checked + label::before {
  background-color: #2563eb;
  border-color: #2563eb;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='%23fff' d='M4.5 8.5L2 6l1-1 1.5 1.5L9 3l1 1z'/%3E%3C/svg%3E");
}

/* ── Pattern B: label wraps input (Arabic home, service v2, service AR) ── */
.ar-bk-card .ar-chk-label:has(#return_same),
.ar-bk-card .ar-chk-label:has(#return_same_m),
.shv2-opts-row .shv2-chk-lbl:has(#return_same),
.sp-ret-opts .sp-radio:has(#return_same) {
  padding: var(--hrh-ret-chip-pad-y) var(--hrh-ret-chip-pad-x);
  background: var(--hrh-ret-same-bg);
  border: 1.5px solid var(--hrh-ret-same-border);
  border-radius: var(--hrh-ret-chip-radius);
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
  color: #14532d !important;
}

.ar-bk-card .ar-chk-label:has(#return_diff),
.ar-bk-card .ar-chk-label:has(#return_diff_m),
.shv2-opts-row .shv2-chk-lbl:has(#return_diff),
.sp-ret-opts .sp-radio:has(#return_diff) {
  padding: var(--hrh-ret-chip-pad-y) var(--hrh-ret-chip-pad-x);
  background: var(--hrh-ret-diff-bg);
  border: 1.5px solid var(--hrh-ret-diff-border);
  border-radius: var(--hrh-ret-chip-radius);
  transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
  color: #1e3a8a !important;
}

.ar-bk-card .ar-chk-label:has(#return_same):hover,
.ar-bk-card .ar-chk-label:has(#return_same_m):hover,
.shv2-opts-row .shv2-chk-lbl:has(#return_same):hover,
.sp-ret-opts .sp-radio:has(#return_same):hover {
  background: var(--hrh-ret-same-bg-hover);
  border-color: var(--hrh-ret-same-border-hover);
}

.ar-bk-card .ar-chk-label:has(#return_diff):hover,
.ar-bk-card .ar-chk-label:has(#return_diff_m):hover,
.shv2-opts-row .shv2-chk-lbl:has(#return_diff):hover,
.sp-ret-opts .sp-radio:has(#return_diff):hover {
  background: var(--hrh-ret-diff-bg-hover);
  border-color: var(--hrh-ret-diff-border-hover);
}

.ar-bk-card .ar-chk-label:has(#return_same:checked),
.ar-bk-card .ar-chk-label:has(#return_same_m:checked),
.shv2-opts-row .shv2-chk-lbl:has(#return_same:checked),
.sp-ret-opts .sp-radio:has(#return_same:checked) {
  background: var(--hrh-ret-same-bg-checked);
  border-color: var(--hrh-ret-same-border-checked);
  box-shadow: 0 0 0 2px rgba(22, 163, 74, 0.14);
}

.ar-bk-card .ar-chk-label:has(#return_diff:checked),
.ar-bk-card .ar-chk-label:has(#return_diff_m:checked),
.shv2-opts-row .shv2-chk-lbl:has(#return_diff:checked),
.sp-ret-opts .sp-radio:has(#return_diff:checked) {
  background: var(--hrh-ret-diff-bg-checked);
  border-color: var(--hrh-ret-diff-border-checked);
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.14);
}

.ar-bk-card .ar-chk-label:has(#return_same) span,
.ar-bk-card .ar-chk-label:has(#return_same_m) span,
.ar-bk-card .ar-chk-label:has(#return_diff) span,
.ar-bk-card .ar-chk-label:has(#return_diff_m) span {
  font-weight: 600;
}

.ar-bk-card .ar-chk-label:has(#return_same) .ar-chk,
.ar-bk-card .ar-chk-label:has(#return_same_m) .ar-chk {
  accent-color: #16a34a;
}

.ar-bk-card .ar-chk-label:has(#return_diff) .ar-chk,
.ar-bk-card .ar-chk-label:has(#return_diff_m) .ar-chk {
  accent-color: #2563eb;
}

.shv2-opts-row .shv2-chk-lbl:has(#return_same) .shv2-chk {
  accent-color: #16a34a;
}

.shv2-opts-row .shv2-chk-lbl:has(#return_diff) .shv2-chk {
  accent-color: #2563eb;
}

.sp-ret-opts .sp-radio:has(#return_same) input {
  accent-color: #16a34a;
}

.sp-ret-opts .sp-radio:has(#return_diff) input {
  accent-color: #2563eb;
}

.sp-ret-opts .sp-radio:has(#return_same) span,
.sp-ret-opts .sp-radio:has(#return_diff) span {
  font-weight: 600;
}

/* ── Discount badge (slightly more prominent, still distinct from gold CTA) ── */
.hrh-d9-return-discount-hint,
.ar-bk-card .ar-return-hint {
  padding: 3px 11px !important;
  min-height: 24px !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: rgba(252, 177, 66, 0.42) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #fffdf6 0%, #faf3e4 100%) !important;
  box-shadow: 0 1px 2px rgba(122, 106, 74, 0.08), 0 1px 0 rgba(255, 255, 255, 0.9) inset !important;
  color: #6b5c45 !important;
}

.hrh-d9-return-discount-hint__ico,
.ar-bk-card .ar-return-hint__ico {
  width: 16px !important;
  height: 16px !important;
  font-size: 9px !important;
  box-shadow: 0 1px 2px rgba(252, 177, 66, 0.35);
}

/* ── Row spacing: minimal height increase ── */
.ar-bk-card .ar-return-row {
  gap: 10px 12px;
  padding-top: 4px;
  padding-bottom: 4px;
}

.shv2-opts-row {
  gap: 10px;
  padding-top: 4px;
  padding-bottom: 4px;
}

.sp-ret-opts {
  gap: 10px;
}

/* ── Mobile: wrap chips, keep compact ── */
@media (max-width: 767px) {
  .hero-transfer-form .hrh-d9-return-check-inline,
  form[data-hrh-booking-form="home-transfer"] .hrh-d9-return-check-inline,
  .hero-transfer-form .x_slider_checkbox.float_left,
  form[data-hrh-booking-form="home-transfer"] .x_slider_checkbox.float_left {
    gap: 8px !important;
  }

  .hero-transfer-form #return_same + label,
  form[data-hrh-booking-form="home-transfer"] #return_same + label,
  .hero-transfer-form #return_same_m + label,
  form[data-hrh-booking-form="home-transfer"] #return_same_m + label,
  .hero-transfer-form #return_diff + label,
  form[data-hrh-booking-form="home-transfer"] #return_diff + label,
  .hero-transfer-form #return_diff_m + label,
  form[data-hrh-booking-form="home-transfer"] #return_diff_m + label {
    font-size: 11.5px !important;
    padding: 5px 9px;
  }

  .ar-bk-card .ar-return-row {
    gap: 8px 10px;
  }

  .hrh-d9-return-discount-hint,
  .ar-bk-card .ar-return-hint {
    flex: 1 1 100%;
    justify-content: center;
    white-space: normal;
    text-align: center;
  }
}
