/* ================= ثبت‌نام زائرین برای سفر اربعین — کامپوننت‌های اختصاصی ================= */
/* پایه‌ی رنگ، فونت و ساختار کارت از arbaeen-bus-request.css به ارث می‌رسد */

.card{ margin-top:-90px; }
.req-mark{ color:var(--maroon); }

/* ---------- شمارنده تعداد نفرات ---------- */
.qty-stepper{
  display:flex; align-items:stretch; gap:0; max-width:220px;
  border:1.5px solid #ded4b8; border-radius:12px; overflow:hidden; background:#fffdf8;
}
.qty-stepper input{
  flex:1; text-align:center; border:none; background:transparent; font-weight:800; font-size:18px;
  color:var(--ink); font-family:inherit; -moz-appearance:textfield;
}
.qty-stepper input::-webkit-outer-spin-button,
.qty-stepper input::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.qty-stepper input:focus{ outline:none; }
.qty-btn{
  width:46px; flex:none; border:none; background:var(--green-deep); color:var(--gold-soft);
  font-size:20px; font-weight:800; cursor:pointer; transition:.2s background;
}
.qty-btn:hover{ background:var(--green-mid); }
.qty-btn:active{ transform:scale(.96); }

/* ---------- راهنمای بازه ---------- */
.range-hint{ font-size:13.5px; color:var(--muted); margin:-6px 0 16px; }
.range-hint b{ color:var(--green-deep); }

/* ---------- نوار کارت‌های روز (بازه تاریخی محدود) ---------- */
.chip-strip{
  display:flex; gap:10px; overflow-x:auto; padding:6px 2px 14px;
  scroll-snap-type:x proximity;
}
.chip-strip::-webkit-scrollbar{ height:6px; }
.chip-strip::-webkit-scrollbar-thumb{ background:var(--line); border-radius:6px; }

.day-chip{
  scroll-snap-align:start; flex:none; width:74px; padding:12px 6px 10px; border-radius:14px;
  border:1.5px solid #ded4b8; background:#fffdf8; cursor:pointer; text-align:center;
  transition:.18s all; font-family:inherit; color:var(--ink);
}
.day-chip .wd{ display:block; font-size:12px; color:var(--muted); margin-bottom:4px; font-weight:600; }
.day-chip .dnum{ display:block; font-size:20px; font-weight:900; color:var(--green-deep); }
.day-chip .mo{ display:block; font-size:11px; color:var(--muted); margin-top:2px; }

.day-chip:hover{ border-color:var(--green-mid); box-shadow:0 6px 16px -8px rgba(11,61,46,.25); }

.day-chip.selected{
  background:var(--green-deep); border-color:var(--green-deep);
}
.day-chip.selected .wd, .day-chip.selected .dnum, .day-chip.selected .mo{ color:var(--gold-soft); }

/* ---------- خلاصه بازه انتخابی ---------- */
.range-summary{
  background:#eef6f0; border:1.5px dashed var(--green-mid); border-radius:14px;
  padding:14px 18px; font-size:14.5px; font-weight:700; color:var(--green-deep); margin-bottom:6px;
}
.range-summary .ph{ color:var(--muted); font-weight:500; }
.range-actions{ text-align:left; margin-bottom:20px; }
.range-clear{
  border:none; background:none; color:var(--maroon); font-size:13px; font-weight:700; cursor:pointer; padding:6px 2px;
}
.range-clear:hover{ text-decoration:underline; }

@media(max-width:480px){
  .day-chip{ width:64px; }
}

/* ---------- انتخاب مسیر و قیمت (ثبت‌نام انفرادی) ---------- */
.rt-price{
  float:left; background:linear-gradient(135deg,#e6c866,#c9a227); color:#1b1508;
  font-size:12.5px; font-weight:800; padding:3px 13px; border-radius:20px; white-space:nowrap;
}
@media(max-width:520px){
  .rt-price{ float:none; display:inline-block; margin-top:6px; }
}
.reg-total{
  background:#eef6f0; border:1.5px dashed var(--green-mid); border-radius:14px;
  padding:14px 18px; margin-top:4px;
}
.reg-total .t1{ font-size:13px; color:var(--muted); margin-bottom:2px; }
.reg-total .t2{ font-weight:900; font-size:21px; color:var(--green-deep); }

/* ---------- کد پیگیری در پیام موفقیت ---------- */
.track-code{
  display:inline-block; background:#eef6f0; border:1.5px dashed var(--green-mid);
  border-radius:12px; padding:10px 22px; margin:6px auto 14px !important;
  font-size:15px; color:var(--green-deep) !important;
}
.track-code b{ font-size:19px; letter-spacing:1px; }
