/* ═══════════════════════════════════════════════════════════════════
   رزرو وقت مشاوره — «ویزارد پاپ‌آپ نرم + زرین‌پال» نسخه ۹
   گام ۱ در صفحه (گرید وکیل) — گام‌های ۲/۳/۴ در پاپ‌آپ شیشه‌ای نرم
   نکته: این فایل پس از main.css بارگذاری می‌شود؛ bk-* پایه از main.css است.
   ═══════════════════════════════════════════════════════════════════ */

/* ── قفل اسکرول هنگام باز بودن پاپ‌آپ ── */
html.bk-locked, body.bk-locked { overflow: hidden !important; }
html { scrollbar-gutter: stable; }
.bk-sr-only {
  position: absolute !important;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0);
  white-space: nowrap; border: 0;
}

/* ═══════════ هیرو — نشان‌های اعتماد ═══════════ */
.bk-hero h1 { display: flex; align-items: center; gap: 12px; }
.bk-hero h1 svg { color: var(--gold-400); flex-shrink: 0; }
.bk-hero__pills { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 18px; }
.bk-hero__pills span {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 12px; font-weight: 600; color: #e6ecf5;
  background: rgba(255, 255, 255, .07);
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 30px; padding: 6px 13px;
  backdrop-filter: blur(4px);
}
.bk-hero__pills svg { color: var(--gold-400); }

/* ═══════════ سربرگ گام ۱ در صفحه ═══════════ */
.bk-lawyers-wrap {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 22px;
  box-shadow: 0 2px 12px rgba(15, 32, 58, .05);
  min-width: 0;
}
.bk-g1head { display: flex; align-items: flex-start; gap: 13px; margin-bottom: 18px; }
.bk-g1head__ic {
  width: 44px; height: 44px; border-radius: 14px;
  background: var(--gold-grad); color: #1c2436;
  display: grid; place-items: center; flex-shrink: 0;
  box-shadow: 0 4px 14px rgba(212, 175, 55, .32);
}
.bk-g1head__ttl h2 { font-size: 17px; color: var(--navy-850); margin: 0 0 3px; }
.bk-g1head__ttl p { margin: 0; font-size: 12.5px; color: var(--muted); line-height: 1.9; }

/* ═══════════ کارت وکیل — پالیش مدرن ═══════════ */
.bk-lawyers { display: grid; grid-template-columns: repeat(auto-fill, minmax(258px, 1fr)); gap: 12px; }
.bk-lawyer {
  display: flex; align-items: center; gap: 12px; text-align: right;
  background: #fbfcfe; border: 1.5px solid var(--line); border-radius: 16px;
  padding: 15px 15px; cursor: pointer; transition: all .22s ease;
  position: relative; font-family: inherit; min-width: 0;
}
.bk-lawyer:hover {
  border-color: var(--gold-500); transform: translateY(-3px);
  box-shadow: 0 10px 26px rgba(15, 32, 58, .10);
}
.bk-lawyer:hover .bk-lawyer__go { opacity: 1; transform: none; }
.bk-lawyer:focus-visible { outline: 2.5px solid var(--gold-500); outline-offset: 3px; }
.bk-lawyer.is-picked {
  border-color: var(--gold-500); background: #fffdf5;
  box-shadow: 0 0 0 3px rgba(212, 175, 55, .16), 0 10px 26px rgba(15, 32, 58, .08);
}
.bk-lawyer__tick {
  position: absolute; top: 10px; left: 10px; width: 22px; height: 22px;
  border-radius: 50%; background: var(--gold-grad); color: #1c2436;
  display: none; place-items: center;
  box-shadow: 0 3px 8px rgba(201, 162, 75, .45);
}
.bk-lawyer.is-picked .bk-lawyer__tick { display: grid; animation: bkTick .3s var(--ease, ease); }
@keyframes bkTick { from { transform: scale(.4); opacity: 0; } to { transform: scale(1); opacity: 1; } }
.bk-lawyer__ava {
  width: 56px; height: 56px; border-radius: 50%; overflow: hidden; flex-shrink: 0;
  background: #eef1f6; display: grid; place-items: center; color: var(--navy-600);
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .6), 0 2px 8px rgba(15, 32, 58, .08);
}
.bk-lawyer__ava img { width: 100%; height: 100%; object-fit: cover; }
.bk-lawyer__ava--any { background: linear-gradient(135deg, var(--navy-800), var(--navy-600)); color: var(--gold-400); }
.bk-lawyer__info { min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.bk-lawyer__info b { font-size: 14.5px; color: var(--navy-850); }
.bk-lawyer__info small { font-size: 12px; color: var(--muted); line-height: 1.8; }
.bk-lawyer__tags { display: flex; gap: 5px; flex-wrap: wrap; }
.bk-lawyer__tags i { font-style: normal; font-size: 10.5px; background: #eef1f6; color: var(--navy-700); padding: 2px 8px; border-radius: 20px; }
.bk-lawyer__note { font-size: 11.5px; color: var(--ok-600, #2e8b57); display: inline-flex; align-items: center; gap: 4px; }
.bk-lawyer__fit {
  display: inline-flex; align-items: center; gap: 4px; width: fit-content;
  font-size: 10.5px; font-weight: 700; color: #217a4b; background: #e8f6ee;
  padding: 2px 9px; border-radius: 20px;
}
.bk-lawyer__go {
  margin-inline-start: auto; flex-shrink: 0;
  width: 32px; height: 32px; border-radius: 50%;
  display: grid; place-items: center;
  background: #fff; border: 1.5px solid var(--line); color: var(--navy-700);
  opacity: .55; transform: translateX(-4px); transition: all .22s ease;
}
.bk-lawyer:hover .bk-lawyer__go { background: var(--gold-grad); border-color: transparent; color: #1c2436; }
.bk-lawyer.is-picked .bk-lawyer__go { display: none; }

/* ═══════════ نوار «ادامه رزرو» (پس از انتخاب وکیل) ═══════════ */
.bks-resume {
  display: flex; align-items: center; gap: 13px;
  background: linear-gradient(135deg, #fffdf5, #fff8e8);
  border: 1px solid rgba(212, 175, 55, .40);
  border-radius: 16px; padding: 14px 16px; margin-bottom: 16px;
  box-shadow: 0 3px 14px rgba(212, 175, 55, .12);
}
.bks-resume[hidden] { display: none !important; }
.bks-resume__ava {
  width: 48px; height: 48px; border-radius: 50%; overflow: hidden;
  background: #eef1f6; display: grid; place-items: center; flex-shrink: 0;
  box-shadow: 0 0 0 2.5px rgba(212, 175, 55, .35);
}
.bks-resume__ava img { width: 100%; height: 100%; object-fit: cover; }
.bks-resume__ava-any { color: var(--navy-700); }
.bks-resume__txt { min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.bks-resume__txt b { font-size: 14px; color: var(--navy-850); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bks-resume__txt small { font-size: 11.5px; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bks-resume__acts { margin-inline-start: auto; display: flex; align-items: center; gap: 8px; flex-shrink: 0; }
.bks-resume__edit {
  display: inline-flex; align-items: center; gap: 5px;
  background: #fff; border: 1.5px solid var(--line); color: var(--navy-700);
  font-family: inherit; font-size: 12px; font-weight: 700;
  border-radius: 10px; padding: 8px 12px; cursor: pointer; transition: all .2s;
}
.bks-resume__edit:hover { border-color: var(--gold-500); color: #8a6d1a; box-shadow: 0 3px 10px rgba(15, 32, 58, .08); }
.bks-resume__edit:focus-visible, .bks-context__reset:focus-visible { outline: 2px solid var(--gold-500); outline-offset: 2px; }

/* ═══════════ بنر «ادامه هوشمند» (کانتکست از صفحات قبل) ═══════════ */
.bks-context {
  display: flex; align-items: center; gap: 12px;
  background: linear-gradient(135deg, #fffdf5, #fff8e8);
  border: 1px solid rgba(212, 175, 55, .38);
  border-radius: 14px; padding: 13px 16px; margin: 0 0 16px;
  box-shadow: 0 2px 10px rgba(212, 175, 55, .10);
}
.bks-context__ic {
  width: 40px; height: 40px; border-radius: 12px;
  background: var(--gold-grad); color: #1c2436;
  display: grid; place-items: center; flex-shrink: 0;
  box-shadow: 0 3px 10px rgba(212, 175, 55, .30);
}
.bks-context__txt { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.bks-context__txt b { font-size: 13.5px; color: var(--navy-850); }
.bks-context__txt small { font-size: 12px; color: var(--muted); line-height: 1.9; }
.bks-context__reset {
  margin-inline-start: auto; flex-shrink: 0;
  display: inline-flex; align-items: center; gap: 5px;
  background: #fff; border: 1px solid var(--line); color: var(--navy-700);
  font-family: inherit; font-size: 12px; font-weight: 700;
  border-radius: 10px; padding: 8px 13px; cursor: pointer; transition: all .2s;
}
.bks-context__reset:hover { border-color: var(--gold-500); color: #8a6d1a; box-shadow: 0 3px 10px rgba(15, 32, 58, .08); }

/* ═══════════ نوار اعتماد ═══════════ */
.bk-trust {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px;
  margin-top: 16px;
}
.bk-trust__item {
  display: flex; flex-direction: column; align-items: center; text-align: center; gap: 5px;
  background: var(--surface); border: 1px solid var(--line); border-radius: 16px;
  padding: 18px 12px 14px; box-shadow: 0 2px 10px rgba(15, 32, 58, .04);
  transition: all .2s ease;
}
.bk-trust__item:hover { transform: translateY(-2px); box-shadow: 0 8px 20px rgba(15, 32, 58, .08); border-color: rgba(212, 175, 55, .4); }
.bk-trust__ic {
  width: 42px; height: 42px; border-radius: 13px; margin-bottom: 3px;
  background: linear-gradient(135deg, #fdf6e4, #fbf0d2); color: var(--gold-600);
  display: grid; place-items: center;
}
.bk-trust__item b { font-size: 12.5px; color: var(--navy-850); }
.bk-trust__item small { font-size: 11px; color: var(--muted); line-height: 1.7; }

/* ═══════════════════════════════════════════════════════════════════
   پاپ‌آپ نرم (Modal Wizard) — شیشه‌ای + انیمیشن ظریف
   ═══════════════════════════════════════════════════════════════════ */
.bkmodal { display: none; position: fixed; inset: 0; z-index: 1200; }
.bkmodal.is-open { display: block; }
.bkmodal__backdrop {
  position: absolute; inset: 0;
  background: rgba(8, 15, 34, .58);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  opacity: 0; transition: opacity .28s ease;
}
.bkmodal.is-open .bkmodal__backdrop { opacity: 1; }
.bkmodal.is-closing .bkmodal__backdrop { opacity: 0; transition: opacity .18s ease; }

.bkmodal__card {
  position: relative;
  width: min(760px, calc(100% - 32px));
  max-height: calc(100dvh - 48px);
  margin: 24px auto;
  display: flex; flex-direction: column;
  background: var(--surface);
  border-radius: 24px;
  border: 1px solid rgba(255, 255, 255, .6);
  box-shadow: 0 30px 80px rgba(6, 13, 31, .35), 0 0 0 1px rgba(13, 27, 62, .06);
  overflow: hidden;
  opacity: 0; transform: translateY(26px) scale(.97);
  transition: opacity .32s cubic-bezier(.16, 1, .3, 1), transform .32s cubic-bezier(.16, 1, .3, 1);
}
.bkmodal.is-open .bkmodal__card { opacity: 1; transform: none; }
.bkmodal.is-closing .bkmodal__card { opacity: 0; transform: translateY(14px) scale(.985); transition-duration: .18s; }

/* ── سربرگ مودال ── */
.bkmodal__head {
  display: flex; align-items: center; gap: 12px;
  padding: 16px 20px;
  background: linear-gradient(160deg, var(--navy-900), var(--navy-750, var(--navy-700)));
  color: #fff; flex-shrink: 0;
  border-bottom: 3px solid;
  border-image: linear-gradient(90deg, var(--gold-500), rgba(201, 162, 75, .25)) 1;
}
.bkmodal__who { display: flex; align-items: center; gap: 11px; min-width: 0; }
.bkmodal__who-ava {
  width: 44px; height: 44px; border-radius: 50%; overflow: hidden; flex-shrink: 0;
  background: rgba(255, 255, 255, .1);
  box-shadow: 0 0 0 2px rgba(212, 175, 55, .5);
  display: grid; place-items: center;
}
.bkmodal__who-ava img { width: 100%; height: 100%; object-fit: cover; }
.bkmodal__who-any { color: var(--gold-400); display: grid; place-items: center; }
.bkmodal__who-txt { min-width: 0; display: flex; flex-direction: column; gap: 0; }
.bkmodal__who-txt small { font-size: 10.5px; color: #9fb0cc; }
.bkmodal__who-txt b { font-size: 14px; color: #fff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 340px; }
.bkmodal__safe {
  margin-inline-start: auto; flex-shrink: 0;
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 11px; font-weight: 700; color: #8fe6b8;
  background: rgba(31, 157, 97, .16); border: 1px solid rgba(31, 157, 97, .35);
  border-radius: 20px; padding: 5px 11px;
}
.bkmodal__close {
  flex-shrink: 0; width: 36px; height: 36px; border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, .18); background: rgba(255, 255, 255, .08);
  color: #fff; cursor: pointer; display: grid; place-items: center;
  transition: all .2s;
}
.bkmodal__close:hover { background: rgba(212, 79, 79, .25); border-color: rgba(212, 79, 79, .5); transform: rotate(90deg); }
.bkmodal__close:focus-visible { outline: 2px solid var(--gold-400); outline-offset: 2px; }

/* ── نوار گام‌های مودال ── */
.bkmodal__steps {
  display: flex; align-items: center; gap: 6px;
  padding: 12px 18px; flex-shrink: 0;
  background: #f8fafd; border-bottom: 1px solid var(--line);
}
.bkm-step {
  flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: 7px;
  font-size: 12px; font-weight: 700; color: var(--muted);
  background: #fff; border: 1.5px solid var(--line); border-radius: 30px;
  padding: 8px 10px; transition: all .25s ease; white-space: nowrap; min-width: 0;
}
.bkm-step i { display: grid; place-items: center; flex-shrink: 0; }
.bkm-step.is-active {
  color: #1c2436; border-color: transparent;
  background: var(--gold-grad);
  box-shadow: 0 4px 14px rgba(201, 162, 75, .35);
}
.bkm-step.is-done { color: #217a4b; border-color: rgba(31, 157, 97, .3); background: #eefaf3; }
.bkm-step.is-done::after { content: '✓'; font-size: 11px; font-weight: 900; margin-inline-start: 2px; }

/* ── بدنه مودال ── */
.bkmodal__body {
  flex: 1; overflow-y: auto; overscroll-behavior: contain;
  padding: 20px 22px;
  -webkit-overflow-scrolling: touch;
}
.bkmodal__body::-webkit-scrollbar { width: 8px; }
.bkmodal__body::-webkit-scrollbar-thumb { background: #d9dfeb; border-radius: 4px; }
.bkmodal__body::-webkit-scrollbar-thumb:hover { background: #c3ccdd; }
.bkmodal__body::-webkit-scrollbar-track { background: transparent; }

/* ── پن‌ها و انیمیشن جابه‌جایی نرم ── */
.bkpane { display: none; }
.bkpane.is-active { display: block; animation: bkPaneIn .32s cubic-bezier(.16, 1, .3, 1); }
.bkpane.is-active.anim-next { animation-name: bkPaneNext; }
.bkpane.is-active.anim-back { animation-name: bkPaneBack; }
@keyframes bkPaneIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@keyframes bkPaneNext { from { opacity: 0; transform: translateX(-26px); } to { opacity: 1; transform: none; } }
@keyframes bkPaneBack { from { opacity: 0; transform: translateX(26px); } to { opacity: 1; transform: none; } }

.bkpane__head { margin-bottom: 16px; }
.bkpane__head h2 {
  display: flex; align-items: center; gap: 9px;
  font-size: 16.5px; color: var(--navy-850); margin: 0 0 5px;
}
.bkpane__num {
  width: 34px; height: 34px; border-radius: 11px; flex-shrink: 0;
  background: linear-gradient(135deg, #fdf6e4, #f7ead0); color: var(--gold-600);
  display: grid; place-items: center;
}
.bkpane__head p { margin: 0; font-size: 12.5px; color: var(--muted); line-height: 1.9; padding-inline-start: 43px; }

/* ── کارت‌های خدمت (گام ۲) ── */
.bk-svclist { display: flex; flex-direction: column; gap: 9px; }
.bk-svc {
  display: flex; align-items: center; gap: 12px; width: 100%; text-align: right;
  background: #fbfcfe; border: 1.5px solid var(--line); border-radius: 15px;
  padding: 13px 15px; cursor: pointer; transition: all .2s ease;
  font-family: inherit; position: relative; min-width: 0;
}
.bk-svc:hover { border-color: var(--gold-500); background: #fffdf5; transform: translateY(-1px); box-shadow: 0 6px 16px rgba(15, 32, 58, .07); }
.bk-svc:focus-visible { outline: 2.5px solid var(--gold-500); outline-offset: 2px; }
.bk-svc.is-picked { border-color: var(--gold-500); background: #fffdf5; box-shadow: 0 0 0 3px rgba(212, 175, 55, .15); }
.bk-svc__tick {
  width: 24px; height: 24px; border-radius: 50%; flex-shrink: 0;
  border: 2px solid #d4dbe8; color: transparent;
  display: grid; place-items: center; transition: all .2s ease;
  background: #fff;
}
.bk-svc.is-picked .bk-svc__tick { background: var(--gold-grad); border-color: transparent; color: #1c2436; box-shadow: 0 3px 8px rgba(201, 162, 75, .4); }
.bk-svc__txt { min-width: 0; display: flex; flex-direction: column; gap: 2px; flex: 1; }
.bk-svc__txt b { font-size: 13.5px; color: var(--navy-850); }
.bk-svc__txt small { font-size: 11.5px; color: var(--muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bk-svc__price { flex-shrink: 0; font-size: 12px; font-weight: 800; color: var(--navy-800); background: #eef2f9; border-radius: 20px; padding: 5px 12px; white-space: nowrap; }
.bk-svc__price i { font-style: normal; font-size: 10px; font-weight: 600; color: var(--muted); }
.bk-svc.is-picked .bk-svc__price { background: rgba(212, 175, 55, .16); color: #7c5f16; }
.bk-svclist.is-shake, #bkDays.is-shake { animation: bkShake .45s ease; }
@keyframes bkShake {
  0%, 100% { transform: translateX(0); }
  20% { transform: translateX(-6px); } 40% { transform: translateX(6px); }
  60% { transform: translateX(-4px); } 80% { transform: translateX(4px); }
}

/* ── یادداشت فیلتر هوشمند خدمت ── */
.bks-svcmeta {
  display: flex; align-items: flex-start; gap: 7px;
  font-size: 12px; color: var(--muted); line-height: 1.9;
  margin-top: 12px; padding: 9px 12px;
  background: #f6f9fc; border: 1px dashed var(--line); border-radius: 10px;
}
.bks-svcmeta svg { flex-shrink: 0; margin-top: 3px; color: var(--info, #2d6cdf); }

/* ── گام ۳: نوار روز و اسلات‌ها (داخل مودال) ── */
.bkmodal .bk-days { margin-bottom: 16px; }
.bkmodal .bk-slots { min-height: 120px; }
.bkmodal .bk-slotgroup__grid { grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); }
.bkmodal .bk-slot b { font-size: 14.5px; }

/* ── گام ۴: بازبینی نهایی ── */
.bk-review {
  background: linear-gradient(160deg, #f8fafd, #f2f6fb);
  border: 1px solid var(--line); border-radius: 16px;
  padding: 15px 16px 12px; margin-bottom: 18px;
}
.bk-review__tt { display: flex; align-items: center; gap: 7px; font-size: 12.5px; color: #217a4b; margin-bottom: 10px; }
.bk-review__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.bk-review__grid > span {
  display: flex; flex-direction: column; gap: 3px;
  background: #fff; border: 1px solid var(--line); border-radius: 11px;
  padding: 9px 11px; min-width: 0;
}
.bk-review__grid i { color: var(--gold-600); }
.bk-review__grid em { font-style: normal; font-size: 10.5px; color: var(--muted); }
.bk-review__grid b { font-size: 12.5px; color: var(--navy-850); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bk-review__fee { grid-column: span 1; }
.bk-review__fee b { color: var(--gold-600); font-weight: 800; }

/* ── گام ۴: هشدار پرداخت (زرین‌پال) ── */
.pay-notice__exp { display: inline-flex; align-items: center; gap: 5px; margin-top: 7px; color: #a06a12; font-weight: 600; }
.pay-notice__exp svg { flex-shrink: 0; }

/* ── خطای فرم درون مودال ── */
.bkmodal .bk-form-error {
  display: flex; align-items: center; gap: 9px;
  background: var(--err-bg, #fdeaea); border: 1px solid #f2c9c9; color: #a63a3a;
  padding: 11px 14px; border-radius: 12px; font-size: 13px; margin-bottom: 14px;
  animation: bkPaneIn .25s ease;
}
.bkmodal .bk-form-error svg { flex-shrink: 0; }
.bkmodal .bk-form-error[hidden] { display: none; }

/* ── حالت انتقال به درگاه پرداخت ── */
.bk-transfer {
  display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px;
  padding: 46px 20px 40px;
  animation: bkPaneIn .3s ease;
}
.bk-transfer__rings { position: relative; width: 84px; height: 84px; margin-bottom: 8px; }
.bk-transfer__rings i {
  position: absolute; inset: 0; border-radius: 50%;
  border: 2.5px solid rgba(201, 162, 75, .4);
  animation: bkRing 1.6s ease-out infinite;
}
.bk-transfer__rings i:nth-child(2) { animation-delay: .8s; }
@keyframes bkRing { from { transform: scale(.55); opacity: 1; } to { transform: scale(1.25); opacity: 0; } }
.bk-transfer__ic {
  position: absolute; inset: 0; margin: auto; width: 56px; height: 56px;
  border-radius: 50%; background: var(--gold-grad); color: #1c2436;
  display: grid; place-items: center; box-shadow: 0 8px 22px rgba(201, 162, 75, .45);
  animation: bkPulse 1.6s ease-in-out infinite;
}
@keyframes bkPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.06); } }
.bk-transfer b { font-size: 15.5px; color: var(--navy-850); margin-top: 6px; }
.bk-transfer small { font-size: 13px; color: var(--text-2, #45507a); }
.bk-transfer small u { text-decoration: none; font-weight: 800; color: var(--gold-600); }
.bk-transfer__sub { font-size: 11.5px !important; color: var(--muted) !important; }
.bk-transfer .btn { margin-top: 16px; }

/* ── موفقیت درون مودال ── */
.bk-success.is-active { display: block; animation: bkPaneIn .35s ease; }

/* ── پاورقی مودال ── */
.bkmodal__foot {
  display: flex; align-items: center; gap: 10px;
  padding: 13px 20px; flex-shrink: 0;
  background: #fbfcfe; border-top: 1px solid var(--line);
}
.bkmodal__foot[hidden] { display: none; }
.bkmodal__hint { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; color: var(--muted); margin-inline-end: auto; }
.bkmodal__hint svg { color: var(--ok, #1f9d61); flex-shrink: 0; }
.bkmodal__foot .btn { min-width: 150px; justify-content: center; }

/* ═══════════ اعلان شناور (Toast داخلی) ═══════════ */
.bk-toast-host { position: fixed; bottom: 22px; right: 50%; transform: translateX(50%); z-index: 1400; display: flex; flex-direction: column; gap: 8px; align-items: center; pointer-events: none; }
.bk-toast {
  display: flex; align-items: center; gap: 8px;
  background: var(--navy-850); color: #fff;
  font-size: 13px; font-weight: 600;
  border-radius: 12px; padding: 11px 17px;
  box-shadow: 0 12px 30px rgba(6, 13, 31, .35);
  animation: bkToastIn .3s cubic-bezier(.16, 1, .3, 1);
  max-width: min(480px, calc(100vw - 40px));
}
.bk-toast svg { color: #ffb1b1; flex-shrink: 0; }
.bk-toast--ok svg { color: #7fe0ac; }
.bk-toast.is-out { opacity: 0; transform: translateY(8px); transition: all .45s ease; }
@keyframes bkToastIn { from { opacity: 0; transform: translateY(10px) scale(.96); } to { opacity: 1; transform: none; } }

/* ═══════════ ریسپانسیو ═══════════ */
@media (max-width: 900px) {
  .bk-review__grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 760px) {
  /* پاپ‌آپ به‌صورت شیت تمام‌صفحه نرم */
  .bkmodal__card {
    width: 100%; max-height: 100dvh;
    height: 100dvh; margin: 0;
    border-radius: 0;
    transform: translateY(40px);
    border-left: 0; border-right: 0;
  }
  .bkmodal.is-open .bkmodal__card { transform: none; }
  .bkmodal__body { padding: 16px 15px; }
  .bkmodal__head { padding: 13px 15px; }
  .bkmodal__who-txt b { max-width: 180px; }
  .bkmodal__safe { display: none; }
  .bkmodal__steps { padding: 10px 12px; gap: 5px; }
  .bkm-step { font-size: 10.5px; padding: 7px 6px; gap: 4px; }
  .bkmodal__foot { padding: 11px 14px; }
  .bkmodal__foot .btn { flex: 1; min-width: 0; }
  .bkmodal__hint { display: none; }
}

@media (max-width: 640px) {
  .bk-hero { padding: 34px 0 26px; }
  .bk-hero__pills span { font-size: 11px; padding: 5px 10px; }
  .bk-lawyers-wrap { padding: 16px 14px; border-radius: 16px; }
  .bk-g1head__ic { width: 38px; height: 38px; border-radius: 12px; }
  .bk-g1head__ttl h2 { font-size: 15px; }
  .bk-g1head__ttl p { font-size: 11.5px; }
  .bk-lawyers { grid-template-columns: 1fr; }
  .bks-resume { flex-wrap: wrap; padding: 13px 14px; gap: 11px; }
  .bks-resume__acts { margin-inline-start: 0; width: 100%; }
  .bks-resume__acts .btn { flex: 1; justify-content: center; }
  .bks-context { flex-wrap: wrap; padding: 12px 13px; gap: 10px; }
  .bks-context__ic { width: 34px; height: 34px; }
  .bks-context__reset { margin-inline-start: 0; width: 100%; justify-content: center; }
  .bk-trust { grid-template-columns: 1fr; gap: 9px; }
  .bk-trust__item { flex-direction: row; text-align: right; align-items: center; gap: 11px; padding: 12px 14px; }
  .bk-trust__ic { width: 38px; height: 38px; margin-bottom: 0; flex-shrink: 0; }
  .bk-trust__item small { line-height: 1.6; }
  .bk-review__grid { grid-template-columns: 1fr 1fr; }
  .bk-svc { padding: 12px 12px; }
  .bk-svc__price { font-size: 11px; padding: 4px 9px; }
}

@media (max-width: 400px) {
  .bkm-step { font-size: 9.5px; }
  .bkm-step i { display: none; }
  .bkm-step.is-active i, .bkm-step.is-done i { display: grid; }
  .bk-review__grid { grid-template-columns: 1fr; }
  .bk-g1head__ttl h2 { font-size: 14px; }
}

/* ═══════════ کاهش حرکت (Accessibility) ═══════════ */
@media (prefers-reduced-motion: reduce) {
  .bkmodal__backdrop, .bkmodal__card, .bkpane, .bk-transfer, .bk-toast,
  .bk-lawyer, .bk-svc, .bk-trust__item { transition: none !important; animation: none !important; }
  .bk-transfer__rings i, .bk-transfer__ic { animation: none !important; }
}

/* ═══════════ ناحیه امن iOS ═══════════ */
@supports (padding: max(0px)) {
  @media (max-width: 760px) {
    .bkmodal__head { padding-top: max(13px, env(safe-area-inset-top)); }
    .bkmodal__foot { padding-bottom: max(11px, env(safe-area-inset-bottom)); }
  }
}

/* ═══════════ چاپ: فقط رسید چاپ می‌شود (رسید داخل مودال است) ═══════════
   دکمه «چاپ رسید» کلاس is-printing را به body می‌دهد (همان مکانیزم نسخه ۸) */
@media print {
  body:not(.is-printing) .bkmodal { display: none !important; }
  body.is-printing .bkmodal { position: static !important; display: block !important; }
  body.is-printing .bkmodal__backdrop, body.is-printing .bkmodal__head,
  body.is-printing .bkmodal__steps, body.is-printing .bkmodal__foot,
  body.is-printing .bks-context, body.is-printing .bk-transfer { display: none !important; }
  body.is-printing .bkmodal__card {
    width: 100% !important; max-height: none !important; height: auto !important;
    margin: 0; border: 0; box-shadow: none; border-radius: 0;
    opacity: 1 !important; transform: none !important;
  }
  body.is-printing .bkmodal__body { overflow: visible !important; max-height: none !important; padding: 0; }
  body.is-printing .bkpane { display: none !important; }
  body.is-printing .bk-success.is-active { display: block !important; }
  body.is-printing .bk-success .success-actions,
  body.is-printing .bk-success .receipt__actions { display: none !important; }
  .bks-resume, .bk-trust, .bk-steps, .bk-side { display: none !important; }
}
