:root{
  /* رنگ برند */
  --pf-brand:#f43a75;
  --pf-brand-2:#ff8fb3;

  /* دارکِ لایت با ته‌مایه‌ی برند (نه آبی) */
  --pf-bg:#17141a;        /* پس‌زمینه کلی */
  --pf-bg-soft:#1e1921;   /* کارت/پنل */
  --pf-bg-softer:#241d26; /* اجزای داخل کارت */
  --pf-border:#4d2a3d;    /* مرز با ته‌مایه برند */
  --pf-text:#f5f7fb;
  --pf-text-soft:#d8e0f2;

  --pf-danger:#ef4444;
}

/* پس‌زمینه و هدر */
body{ background-color: var(--pf-bg); }
.pf-order{ max-width:1060px; margin:10rem auto 2rem; padding:0 1rem 2rem; color:var(--pf-text); }
.pf-order-heading{
  text-align:center; color:var(--pf-brand); font-weight:900; font-size:1.38rem;
  margin:28px 0 18px; letter-spacing:.2px;
}

/* استپر */
.pf-stepper{ display:flex; gap:8px;}
.pf-step{
  flex:1; text-align:center; font-weight:800; color:var(--pf-text-soft);
  background:linear-gradient(180deg,var(--pf-bg-soft), #1a1520);
  border:1px solid color-mix(in srgb,var(--pf-border), 45% transparent);
  padding:.62rem .8rem; border-radius:12px;
}
.pf-step i{ color:var(--pf-brand); margin-left:.45rem; }
.pf-step.active{
  color:#2c0f1c; background:linear-gradient(135deg,var(--pf-brand),var(--pf-brand-2));
  border-color:color-mix(in srgb,var(--pf-brand), 35% transparent);
}
.pf-step.active i{ color:#2c0f1c; }

/* کارت‌ها */
.pf-card{
  background:linear-gradient(180deg,var(--pf-bg-soft),var(--pf-bg-softer));
  border:1px solid color-mix(in srgb,var(--pf-border), 35% transparent);
  border-radius:14px; padding:14px; margin-bottom:12px;
  box-shadow:inset 0 0 0 1px #ffffff0a, 0 8px 20px #00000033;
}
.pf-title{
  font-weight:900; font-size:1.02rem; margin-bottom:10px; display:flex; align-items:center; gap:.5rem;
  color:var(--pf-brand);
}
.pf-title i{ color:var(--pf-brand); }

/* هدر کارت با یادداشت سمت چپ */
.pf-card-header{
  display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px;
}
.pf-note-small{
  font-size:.8rem; color:var(--pf-text-soft);
  opacity:.9; white-space:nowrap;
}

/* گرید عمومی */
.pf-grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
@media (max-width:720px){ .pf-grid{ grid-template-columns:1fr; } }

/* گرید سه‌ستونه مخصوص اطلاعات سفارش‌دهنده */
.pf-grid.pf-grid-3{ grid-template-columns:repeat(3,1fr); }
@media (max-width:900px){ .pf-grid.pf-grid-3{ grid-template-columns:1fr 1fr; } }
@media (max-width:720px){ .pf-grid.pf-grid-3{ grid-template-columns:1fr; } }

/* فیلدها */
.pf-field{ display:flex; flex-direction:column; gap:6px; }
.pf-label{ color:var(--pf-brand); font-size:.9rem; text-align:center; font-weight:800; }
.pf-upload-label{ margin-bottom:8px; color:var(--pf-brand); font-weight:800; }
.pf-input,.pf-select,.pf-textarea{
  background:#221c25; border:1px solid color-mix(in srgb,var(--pf-border), 30% transparent);
  border-radius:12px; color:var(--pf-text); padding:.66rem .8rem;
  outline:none; box-shadow:inset 0 0 0 1px #ffffff08; text-align:center;
  font-family: 'YekanBakh' !important;
}
.pf-input:focus,.pf-select:focus,.pf-textarea:focus{
  border-color:color-mix(in srgb,var(--pf-brand), 30% transparent);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--pf-brand), 88% transparent), inset 0 0 0 1px #ffffff10;
}
.pf-textarea{ min-height:110px; resize:vertical; }

/* آپلود قدیمی (سازگاری عقب‌رو) */
.pf-upload{
  border:1px dashed color-mix(in srgb,var(--pf-border), 35% transparent);
  border-radius:12px; padding:12px; background:#221b23; text-align:center;
}
.pf-upload input[type=file]{ display:none; }
.pf-previews{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:10px; }
@media (max-width:720px){ .pf-previews{ grid-template-columns:repeat(2,1fr); } }
.pf-thumb{ aspect-ratio:1/1; background:#251d27; border:1px solid #4d2a3d; border-radius:10px; overflow:hidden; display:grid; place-items:center; font-size:.85rem; color:#dbb4c3; }
.pf-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }

/* ===== آپلود جدید: گرید ۳تایی + اسلات‌ها + حذف ===== */
.pf-photos-grid{
  display:grid; gap:12px;
  grid-template-columns: repeat(3, 1fr);
}
@media (max-width:720px){
  .pf-photos-grid{ grid-template-columns:1fr 1fr; }
}
.pf-photo-slot{
  position:relative;
  border:1px dashed color-mix(in srgb,var(--pf-border), 35% transparent);
  border-radius:14px; min-height:140px;
  display:flex; align-items:center; justify-content:center;
  background: color-mix(in srgb, var(--pf-bg), transparent 15%);
  overflow:hidden; cursor:pointer;
  box-shadow:inset 0 0 0 1px #ffffff08;
}
.pf-photo-slot.has-file{ border-style:solid; }
.pf-photo-slot img{ width:100%; height:100%; object-fit:cover; display:block; }
.pf-photo-empty{
  display:flex; flex-direction:column; align-items:center; gap:8px; pointer-events:none;
  color:var(--pf-text-soft);
}
.pf-photo-empty i{ font-size:24px; color:var(--pf-brand); opacity:.9; }
.pf-photo-remove{
  position:absolute; top:8px; inset-inline-end:8px; border:none;
  background: color-mix(in srgb, #000, transparent 40%);
  color:#fff; border-radius:10px; padding:6px 10px; cursor:pointer;
  box-shadow: 0 2px 6px #00000066;
}
.pf-photo-remove:hover{ background: color-mix(in srgb, #000, transparent 20%); }

/* Chip Input (Autocomplete) */
.pf-chip-input{
  position:relative; background:#221c25; border:1px solid color-mix(in srgb,var(--pf-border), 30% transparent);
  border-radius:12px; padding:.4rem .6rem; min-height:46px; display:flex; flex-wrap:wrap; gap:6px; justify-content:center;
}
.pf-chip-input input{
  flex:1 1 220px; min-width:180px; border:none; outline:none; background:transparent; color:var(--pf-text);
  text-align:center; padding:.3rem .4rem;
}
.pf-chip{
  display:inline-flex; align-items:center; gap:8px; padding:.36rem .62rem;
  background:#2d1220; color:#ffd4e1; border:1px solid color-mix(in srgb,var(--pf-brand), 55% transparent);
  border-radius:999px; font-size:.85rem; font-weight:700;
}
.pf-chip .x{ cursor:pointer; opacity:.85; }
.pf-chip .x:hover{ opacity:1; }

.pf-suggest{
  position:absolute; left:8px; right:8px; top:100%; margin-top:6px; z-index:50;
  background:#2a222c; border:1px solid #4d2a3d; border-radius:12px; box-shadow:0 18px 30px #00000050; max-height:260px; overflow:auto;
}
.pf-suggest-item{
  padding:.58rem .8rem; display:flex; align-items:center; justify-content:center; cursor:pointer; color:var(--pf-text-soft);
  border-bottom:1px solid #3b2833;
}
.pf-suggest-item:last-child{ border-bottom:none; }
.pf-suggest-item:hover, .pf-suggest-item.active{ background:#321927; color:#fff; }
.pf-suggest .empty{ padding:.58rem .8rem; text-align:center; color:#e1b8c7; }

/* پکیج‌ها و افزودنی‌ها */
.pf-packages{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
@media (max-width:900px){ .pf-packages{ grid-template-columns:1fr; } }
.pf-pack{
  border:1px solid color-mix(in srgb,var(--pf-border), 35% transparent);
  background:linear-gradient(180deg,#221b23,#1f1820);
  border-radius:14px; padding:14px; cursor:pointer; transition:.18s; box-shadow:inset 0 0 0 1px #ffffff08; text-align:center;
}
.pf-pack:hover{ transform:translateY(-2px); }
.pf-pack.active{ outline:2px solid color-mix(in srgb,var(--pf-brand), 35% transparent); box-shadow:0 0 0 6px color-mix(in srgb,var(--pf-brand), 88% transparent); }
.pf-pack-title{ font-weight:900; color:var(--pf-text); }
.pf-pack-price{ font-size:1.05rem; font-weight:900; margin-top:6px; color:var(--pf-brand); }

.pf-addons{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
@media (max-width:720px){ .pf-addons{ grid-template-columns:1fr; } }
.pf-addon{ display:flex; align-items:center; justify-content:space-between; background:#211922; border:1px solid #4d2a3d; border-radius:12px; padding:.62rem .8rem; }
.pf-addon .pf-qty{ display:flex; align-items:center; gap:8px; }
.pf-addon input[type=number]{ width:100px; text-align:center; }

/* فاکتور */
.pf-invoice{ background:linear-gradient(180deg,#221b23,#1f1820); border:1px solid #4d2a3d; border-radius:14px; padding:12px; }
.pf-inv-row{ display:flex; justify-content:space-between; padding:.48rem 0; border-bottom:1px solid #3b2833; }
.pf-inv-row:last-child{ border-bottom:none; }
.pf-inv-total{ font-weight:900; font-size:1.08rem; color:var(--pf-brand); }

/* دکمه‌ها */
.pf-actions{ display:flex; gap:8px; flex-wrap:wrap; margin-top:10px; }
.pf-actions.two .pf-btn .pf-btn-green{ flex:1; }
.pf-btn{
  appearance:none; border:1px solid color-mix(in srgb,var(--pf-brand), 45% transparent);
  background:color-mix(in srgb,var(--pf-brand), 90% transparent);
  color:var(--pf-brand); font-weight:900; padding:.66rem 1rem;
  border-radius:12px; cursor:pointer; transition:.18s ease; box-shadow:inset 0 0 0 1px #ffffff08, 0 2px 0 #00000033;
  display:inline-flex; align-items:center; gap:10px;
}
.pf-btn.with-icon{ flex-direction:row-reverse; }
.pf-btn:hover{
  background:color-mix(in srgb,var(--pf-brand), 85% transparent);
  border-color:color-mix(in srgb,var(--pf-brand), 25% transparent);
  color:#ff96b7;
}
.pf-btn:active{ transform:translateY(1px); }
.pf-btn:focus-visible{
  outline:2px solid color-mix(in srgb,var(--pf-brand), 25% transparent);
  outline-offset:2px;
}
.pf-btn-green{
  appearance:none; border:1px solid color-mix(in srgb,#3af4bd, 45% transparent);
  background:color-mix(in srgb,#3af4bd, 90% transparent);
  color:#3af4bd; font-weight:900; padding:.66rem 1rem;
  border-radius:12px; cursor:pointer; transition:.18s ease; box-shadow:inset 0 0 0 1px #ffffff08, 0 2px 0 #00000033;
  display:inline-flex; align-items:center; gap:10px;
}
.pf-btn-green i {
  --fa-primary-color: #3af4bd;
  --fa-secondary-color: #3af4bd;
  --fa-secondary-opacity: .35;
  color: #3af4bd;
}

.pf-btn-green.with-icon{ flex-direction:row-reverse; }
.pf-btn-green:hover{
  background:color-mix(in srgb,#3af4bd, 85% transparent);
  border-color:color-mix(in srgb,#3af4bd, 25% transparent);
  color:#96ffdf;
}
.pf-btn-green:active{ transform:translateY(1px); }
.pf-btn-green:focus-visible{
  outline:2px solid color-mix(in srgb,#3af4bd, 25% transparent);
  outline-offset:2px;
}

.pf-btn-block{ width:100%; display:flex; justify-content:center; }

@media (max-width:600px){
  .pf-actions.two{ flex-direction:column; }
  .pf-btn-block-sm{ width:100%; display:flex; justify-content:center; }
}

/* ارورها */
.pf-err{ color:#fecaca; background:#ef44441a; border:1px solid #ef44441f; padding:.5rem .7rem; border-radius:10px; margin-top:8px; display:none; text-align:center; }
.pf-err.show{ display:block; }

/* مهمان */
.pf-order-guest{ text-align:center; background:var(--pf-bg-soft); border:1px solid color-mix(in srgb,var(--pf-border), 35% transparent); border-radius:14px; padding:18px; }

/* FA duotone */
.fa-duotone{ --fa-primary-color: currentColor; --fa-secondary-color: currentColor; --fa-secondary-opacity:.35; color:var(--pf-brand); }

/* ردیف دکمه‌ها */
.pf-actions.center{
  display:flex;
  flex-direction:row;
  align-items:stretch;
  justify-content:center;
  gap:12px;
  width:100%;
}
.pf-actions.center .pf-btn .pf-btn-green {
  flex:1 1 0;
  width:auto;
  justify-content:center;
}
.pf-btn.with-icon{
  display:inline-flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:10px;
}
.pf-btn-green.with-icon{
  display:inline-flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:10px;
}
.pf-btn.with-icon i{ margin:0 !important; }
.pf-btn-green.with-icon i{ margin:0 !important; }

@media (max-width: 640px){
  .pf-actions.center{ flex-direction:column; }
  .pf-actions.center .pf-btn{ width:100%; }
    .pf-actions.center .pf-btn-green{ width:100%; }
}

/* سه‌ستونه برای اطلاعات سفارش‌دهنده */
.pf-grid.pf-grid-3{ grid-template-columns:repeat(3,1fr); }
@media (max-width:900px){ .pf-grid.pf-grid-3{ grid-template-columns:1fr 1fr; } }
@media (max-width:720px){ .pf-grid.pf-grid-3{ grid-template-columns:1fr; } }

/* لیبل با آیکون */
.pf-label i{ color:var(--pf-brand); margin-inline-start:.4rem; }

/* ارور فیلدها */
.pf-field.pf-error .pf-input,
.pf-field.pf-error .pf-textarea,
.pf-field.pf-error .pf-chip-input{
  border-color: color-mix(in srgb, var(--pf-danger), 25% transparent);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--pf-danger), 88% transparent), inset 0 0 0 1px #ffffff10;
}
.pf-field-msg{
  color:#fecaca; background:#ef44441a; border:1px solid #ef44441f;
  padding:.4rem .6rem; border-radius:10px; margin-top:6px; text-align:center; font-size:.85rem;
  font-family: 'YekanBakh' !important;
}

/* هدر کارت آپلود + نکته سمت چپ بالا */
.pf-card-header{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }
.pf-note-small{ font-size:.8rem; color:var(--pf-text-soft); opacity:.9; white-space:nowrap; }

/* هایلایت و انیمیشن خطا برای هدایت کاربر */
@keyframes pfShake {
  10%, 90% { transform: translateX(-1px); }
  20%, 80% { transform: translateX(2px); }
  30%, 50%, 70% { transform: translateX(-4px); }
  40%, 60% { transform: translateX(4px); }
}
.pf-shake { animation: pfShake .45s ease; }

/* رنگ اختصاصی هر کارت پکیج از متغیر --pk می‌آید */
.pf-pack { --pk: var(--pf-brand); }
.pf-pack .pf-pack-title{ color: var(--pk); font-weight:900; }
.pf-pack .pf-pack-price{ color: var(--pk); }
.pf-pack.active{
  outline:2px solid color-mix(in srgb, var(--pk), 35% transparent);
  box-shadow:0 0 0 6px color-mix(in srgb, var(--pk), 88% transparent);
}

/* چیدمان جدید پکیج‌ها (کمی فاصله بیشتر برای CTA) */
.pf-packages.pf-packages-new { gap:14px; }
.pf-pack .pf-pack-cta{ margin-top:10px; display:flex; justify-content:center; }

/* دکمهٔ جزئیات (کوچک و شفاف با لهجه رنگ پکیج) */
.pf-btn-sm{ padding:.48rem .75rem; font-size:.92rem; }
.pf-btn-ghost{
  background: transparent;
  border-color: color-mix(in srgb, var(--pk), 35% transparent);
  color: var(--pk);
}
.pf-btn-ghost:hover{
  background: color-mix(in srgb, var(--pk), 90% transparent);
  border-color: color-mix(in srgb, var(--pk), 20% transparent);
  color: color-mix(in srgb, var(--pk), 10% transparent);
}

/* ===== Modal (پاپ‌آپ جزئیات پکیج) ===== */
.pf-modal{
  position:fixed; inset:0; display:none; align-items:center; justify-content:center; z-index:9999;
}
.pf-modal.open{ display:flex; }
.pf-modal-backdrop{
  position:absolute; inset:0; background:#00000090; backdrop-filter: blur(2px);
}
.pf-modal-dialog{
  position:relative; max-width:860px; width:clamp(320px, 92vw, 860px);
  max-height:90vh; overflow:auto;
  background:linear-gradient(180deg,var(--pf-bg-soft),var(--pf-bg-softer));
  border:1px solid color-mix(in srgb, var(--pf-border), 35% transparent);
  border-top:4px solid var(--pk, var(--pf-brand));
  border-radius:16px; padding:16px;
  box-shadow: 0 24px 60px #00000066, inset 0 0 0 1px #ffffff0a;
}
.pf-modal-close{
  position:absolute; top:8px; inset-inline-start:8px;
  border:1px solid color-mix(in srgb, var(--pf-border), 35% transparent);
  background:rgba(31, 26, 34, 0.4); color:var(--pf-text); border-radius:10px; padding:.35rem .55rem; cursor:pointer;
  height: 40px; width:40px; z-index: 2;
}
.pf-modal-close:hover{ background:#2a2430; }
.pf-modal-body{ color:var(--pf-text); }

/* انیمیشن خطا (اگر قبلاً نداشتی) */
@keyframes pfShake {
  10%, 90% { transform: translateX(-1px); }
  20%, 80% { transform: translateX(2px); }
  30%, 50%, 70% { transform: translateX(-4px); }
  40%, 60% { transform: translateX(4px); }
}
.pf-shake { animation: pfShake .45s ease; }

/* رنگ اختصاصی هر کارت پکیج */
.pf-pack { --pk: var(--pf-brand); }
.pf-pack .pf-pack-title{ color: var(--pk); font-weight:900; }
.pf-pack .pf-pack-price{ color: var(--pk); }
.pf-pack.active{
  outline:2px solid color-mix(in srgb, var(--pk), 35% transparent);
  box-shadow:0 0 0 6px color-mix(in srgb, var(--pk), 88% transparent);
}

/* چیدمان جدید پکیج‌ها */
.pf-packages.pf-packages-new { gap:14px; }
.pf-pack .pf-pack-cta{ margin-top:10px; display:flex; justify-content:center; }

/* دکمهٔ جزئیات: آیکون هم‌رنگ پکیج */
.pf-btn-sm{ padding:.48rem .75rem; font-size:.92rem; }
.pf-btn-ghost{
  background: transparent;
  border-color: color-mix(in srgb, var(--pk), 35% transparent);
  color: var(--pk);
}
.pf-btn-ghost:hover{
  background: color-mix(in srgb, var(--pk), 90% transparent);
  border-color: color-mix(in srgb, var(--pk), 20% transparent);
  color: color-mix(in srgb, var(--pk), 10% transparent);
}
.pf-btn-ghost i{ color: var(--pk); } /* نکته 4 */

/* ===== Modal (پاپ‌آپ جزئیات) ===== */
.pf-modal{
  position:fixed; inset:0; display:none; align-items:center; justify-content:center; z-index:9999;
}
.pf-modal.open{ display:flex; }
.pf-modal-backdrop{
  position:absolute; inset:0; background:#00000090; backdrop-filter: blur(2px);
}
.pf-modal-dialog{
  position:relative;
  width:480px; max-width:92vw; /* نکته 2 */
  max-height:90vh;
  overflow:auto; /* اما اسکرول‌بارش پنهان میشه پایین */
  background:linear-gradient(180deg,var(--pf-bg-soft),var(--pf-bg-softer));
  border:1px solid color-mix(in srgb, var(--pf-border), 35% transparent);
  border-top:4px solid var(--pk, var(--pf-brand));
  border-radius:16px; padding:16px;
  box-shadow: 0 24px 60px #00000066, inset 0 0 0 1px #ffffff0a;
}
.pf-modal-close{
  position:absolute; top:8px; inset-inline-start:8px;
  border:1px solid color-mix(in srgb, var(--pf-border), 35% transparent);
  background:#1f1a22; color:var(--pf-text); border-radius:10px; padding:.35rem .55rem; cursor:pointer;
}
.pf-modal-close:hover{ background:#2a2430; }
.pf-modal-body{ color:var(--pf-text); }

/* مخفی‌کردن اسکرول‌بار پاپ‌آپ (نکته 3) */
.pf-modal-dialog::-webkit-scrollbar{ width:0; height:0; }
.pf-modal-dialog{ scrollbar-width: none; -ms-overflow-style: none; }

/* ===== افزودنی‌ها؛ چیدمان جدید ===== */
.pf-addons-grid{
  display:grid; grid-template-columns:1fr; gap:10px;
}
@media (min-width:720px){
  .pf-addons-grid{ grid-template-columns:1fr 1fr; }
}
.pf-addon-row{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  background:#211922; border:1px solid #4d2a3d; border-radius:12px; padding:.66rem .8rem;
  height: 60px;
}
.pf-addon-info{
  display:flex; align-items:center; gap:10px; font-weight:800; color:var(--pf-text);
}
.pf-addon-info span {
    font-size: small;
}
.pf-addon-info i{ color: var(--pf-brand); opacity:.9; }
.pf-addon-actions{
  display:flex; align-items:center; gap:10px;
}
.pf-price-mini{ color:var(--pf-text-soft); font-size:.8rem; }

/* تاگل بولی (بدون تیک؛ بزرگ و شیک) */
.pf-toggle{
  width:64px; height:34px; border-radius:999px; position:relative; border:1px solid color-mix(in srgb, var(--pf-brand), 35% transparent);
  background:#241d26; cursor:pointer; transition:.18s ease;
}
.pf-toggle .knob{
  position:absolute; top:3px; inset-inline-end:3px; width:28px; height:28px; border-radius:50%;
  background:linear-gradient(180deg,#2c2030,#201924); box-shadow:0 1px 3px #00000066, inset 0 0 0 1px #ffffff10;
  transition:.18s ease;
}
.pf-toggle.on{ background: color-mix(in srgb, var(--pf-brand), 70% transparent); border-color: color-mix(in srgb, var(--pf-brand), 20% transparent); }
.pf-toggle.on .knob{
  inset-inline-start:3px; inset-inline-end:auto;
  background: linear-gradient(180deg, var(--pf-brand-2), var(--pf-brand));
}

/* استپر تعداد */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

input[type=number] {
    -moz-appearance:textfield; /* Firefox */
}
.pf-input-mini{ width:40px; text-align:center; font-size: small; font-family: 'YekanBakh' !important; }
.pf-stepper{ display:flex; align-items:center; gap:8px; }
.pf-stepper-btn{
  border:1px solid color-mix(in srgb,var(--pf-border), 35% transparent);
  background:#1f1820; color:var(--pf-text); border-radius:10px; padding:.4rem .55rem; cursor:pointer;
}
.pf-stepper-btn:hover{ background:#2a222b; }

/* ===== بخش قیمت با ساب‌تایتل ===== */
.pf-pricing{ background:linear-gradient(180deg,#221b23,#1f1820); border:1px solid #4d2a3d; border-radius:14px; padding:12px; }
.pf-price-section{ margin-bottom:10px; }
.pf-price-subtitle{
  display:flex; align-items:center; gap:8px; color:var(--pf-brand); font-weight:900; margin-bottom:6px;
}
.pf-price-subtitle i{ color: var(--pf-brand); }

/* ردیف‌ها و جمع کل (قبلی‌ها حفظ می‌شوند) */
.pf-inv-row{ display:flex; justify-content:space-between; padding:.48rem 0; border-bottom:1px solid #3b2833; }
.pf-inv-row:last-child{ border-bottom:none; }
.pf-inv-total{ font-weight:900; font-size:1.08rem; color:var(--pf-brand); }

/* ردیف دکمه‌ها: ادامه راست، بازگشت چپ (نکته 8) */
.pf-actions.between{ display:flex; justify-content:space-between; gap:12px; }
@media (max-width:640px){
  .pf-actions.between{ flex-direction:column; }
}

/* هایلایت خطا (اگر قبلاً نداری) */
@keyframes pfShake {
  10%, 90% { transform: translateX(-1px); }
  20%, 80% { transform: translateX(2px); }
  30%, 50%, 70% { transform: translateX(-4px); }
  40%, 60% { transform: translateX(4px); }
}
.pf-shake { animation: pfShake .45s ease; }

/* ---------------------- */
/* افزوده‌های موردنیاز جدید */
/* ---------------------- */

/* تب‌های کودک‌ها در استپ ۲ (دکمه‌های تمام‌عرض و کنارهم) */
.pf-child-tabs{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap:10px;
  margin:6px 0 12px;
}
.pf-child-tab{
  width:100%;
  text-align:center;
  padding:.66rem 1rem;
  border-radius:12px;
  border:1px solid color-mix(in srgb,var(--pf-border), 35% transparent);
  background:#221b23;
  color:var(--pf-text);
  font-weight:900;
  cursor:pointer;
  transition:.18s ease;
  font-family: 'YekanBakh' !important;
}
.pf-child-tab:hover{ background:#261e28; }
.pf-child-tab.active{
  background:linear-gradient(135deg,var(--pf-brand),var(--pf-brand-2));
  color:#2c0f1c;
  border-color:color-mix(in srgb,var(--pf-brand), 25% transparent);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--pf-brand), 88% transparent);
}

/* (اختیاری) اگر داخل عنوان پکیج تعداد افراد را با span.pf-pack-persons نشان دهی */
.pf-pack-title .pf-pack-persons{
  color:var(--pf-text-soft);
  font-weight:700;
  margin-inline-start:.4rem;
  font-family: 'YekanBakh';
  font-size: small;
}

::placeholder {
  color: rgba(255, 255, 255, 0.1);
  opacity: 1; /* Firefox */
}

::-ms-input-placeholder { /* Edge 12 -18 */
  color: rgba(255, 255, 255, 0.1);
}

