/*
 * اسکریپت خواندن: قالب جدول، تیتر و عناصر خواندن.
 * ---------------------------------------------------------------------------
 * پیوست ۳۲ (اصلاح چیدمان):
 *  - جدول‌ها روی موبایل دیگر با display:block قالب سایت کوچک نمی‌شوند؛
 *    نمایش «جدول واقعی» + پیمایش افقی + شکستن واژه فقط در صورت نیاز.
 *  - مقیاس تایپوگرافی یکدست شد (پیش‌تر em تودرتو اندازه‌ها را ۱۲ تا ۱۵٫۶
 *    پیکسل می‌کرد و در کنار پاراگراف ۱۶ پیکسلی «کوچک/بزرگ» دیده می‌شد).
 *  - تصویر شاخص و تصویرهای درون متن: عرض کامل، نسبت حفظ‌شده، گوشهٔ یکدست.
 *  - روی موبایل، جدول برچسب‌دار به کارت تبدیل می‌شود (بدون پیمایش افقی).
 *  - متن‌های ریز جعبهٔ ارجاع/نویسنده/فهرست از ۱۲ پیکسل به ۱۳–۱۵ پیکسل رسید.
 */

/* ---------- جدول ---------- */
.scg-responsive-table{
  max-inline-size:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  margin-block:1.25rem;
  border:1px solid #dce5eb;
  border-radius:12px;
  background:#fff;
}
.scg-responsive-table:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.scg-responsive-table caption{text-align:start;font-weight:700;padding:.75rem}

/* جدول، جدول بماند (قالب سایت آن را block می‌کند و ستون‌ها به‌هم می‌ریزند). */
.z-content-main .wp-block-post-content .scg-responsive-table table,
.scg-responsive-table table{
  display:table !important;
  inline-size:100%;
  max-inline-size:none;
  min-inline-size:0;
  border-collapse:collapse;
  border-spacing:0;
  margin:0;
  font:inherit;
  font-size:1rem;
  line-height:1.75;
}
.scg-responsive-table th,
.scg-responsive-table td{
  padding:.7rem .85rem;
  text-align:start;
  vertical-align:middle;
  border:1px solid #dce5eb;
  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;
  hyphens:none;
  font-size:1rem;
}
.scg-responsive-table thead th{
  background:#f1f5f8;
  font-weight:700;
  white-space:nowrap;
}
.scg-responsive-table tbody tr:nth-child(even) td{background:#fafcfd}
.scg-responsive-table a{text-underline-offset:.2em}

/* روی صفحهٔ باریک: ستون‌ها به اندازهٔ محتوا باز می‌شوند و صفحه فقط
   به‌اندازهٔ لازم پیمایش افقی می‌شود؛ دیگر واژه از وسط نمی‌شکند. */
@media (max-width:760px){
  .z-content-main .wp-block-post-content .scg-responsive-table table,
  .scg-responsive-table table{
    inline-size:max-content;
    min-inline-size:100%;
  }
  .scg-responsive-table th,
  .scg-responsive-table td{
    padding:.6rem .7rem;
    font-size:.9375rem;
    overflow-wrap:normal;
  }
  .scg-responsive-table thead th{white-space:nowrap}
}

/* نشانهٔ پیمایش: لبهٔ سایه‌دار تا کاربر بداند جدول ادامه دارد. */
.scg-responsive-table{
  background-image:
    linear-gradient(to left, rgba(15,23,42,.12), rgba(15,23,42,0)),
    linear-gradient(to left, rgba(15,23,42,0), rgba(15,23,42,.12));
  background-position:100% 0, 0 0;
  background-repeat:no-repeat;
  background-size:22px 100%, 22px 100%;
  background-attachment:local, local;
}

/* ---------- متن و فهرست‌ها ---------- */
.single .wp-block-post-content p,
.single .wp-block-post-content li{
  font-size:1rem;
  line-height:1.95;
}
.single .wp-block-post-content li{margin-block:.35rem}
.single .wp-block-post-content h2{font-size:1.4375rem;line-height:1.6;margin-block:2rem .85rem}
.single .wp-block-post-content h3{font-size:1.125rem;line-height:1.65;margin-block:1.5rem .6rem}
.single .wp-block-post-content figcaption{font-size:.8125rem;line-height:1.8;color:#5b6b7b}

/* ---------- تصویرها ---------- */
.single .wp-block-post-content img,
.single .wp-block-post-featured-image img{
  max-inline-size:100%;
  block-size:auto;
  border-radius:14px;
}
.single .wp-block-post-featured-image{margin-block:0 1.5rem}
.single .wp-block-post-featured-image img{inline-size:100%;object-fit:cover}

/* ---------- جعبه‌های ماژول (پاسخ کوتاه، ارجاع، نویسنده) ----------
   اندازه‌ها به مقیاس ثابت rem برگردانده شد تا تودرتو شدن em اندازه‌ها را
   کوچک/بزرگ نکند. قالب سایت قواعد خود را با .z-single-main + ناحیه نشانه
   می‌گیرد؛ برای همین انتخاب‌گرها با body.single و .wp-block-post-content
   دو سطح اختصاصی‌تر نوشته شده‌اند تا اندازه‌ها واقعاً ثابت بمانند. */
body.single .wp-block-post-content{font-size:1rem}
body.single .wp-block-post-content p,
body.single .wp-block-post-content li,
body.single .wp-block-post-content ul,
body.single .wp-block-post-content ol{font-size:1rem;line-height:1.95}

body.single .wp-block-post-content .zalo-quick-answer,
body.single .wp-block-post-content .zalo-quick-answer p,
body.single .wp-block-post-content .zalo-quick-answer li,
body.single .wp-block-post-content .zalo-qa-text{font-size:1rem;line-height:1.95}
body.single .wp-block-post-content .zalo-qa-label{font-size:.8125rem;letter-spacing:0}

body.single .wp-block-post-content .zalo-cite,
body.single .wp-block-post-content .zalo-cite-help,
body.single .wp-block-post-content .zalo-cite-title,
body.single .wp-block-post-content .zalo-cite-meta,
body.single .wp-block-post-content .zalo-cite-meta span,
body.single .wp-block-post-content .zalo-cite-meta time,
body.single .wp-block-post-content .zalo-cite-apa,
body.single .wp-block-post-content .zalo-cite-apa a,
body.single .wp-block-post-content .zalo-cite-links{font-size:.875rem;line-height:1.9}
body.single .wp-block-post-content .zalo-cite-title{font-size:.9375rem;font-weight:700}
body.single .wp-block-post-content .zalo-cite-meta{gap:.35rem 1rem;flex-wrap:wrap}
body.single .wp-block-post-content .zalo-cite-apa{overflow-wrap:anywhere;word-break:normal}
body.single .wp-block-post-content .zalo-cite-links{gap:.45rem;padding-block-start:.85rem}
body.single .wp-block-post-content .zalo-cite-links a{
  display:inline-block;
  padding:.28rem .7rem;
  border:1px solid #dce5eb;
  border-radius:999px;
  font-size:.8125rem;
  line-height:1.7;
  text-decoration:none;
}

body.single .wp-block-post-content .zalo-author-bio,
body.single .wp-block-post-content .zalo-author-bio p{font-size:.9375rem;line-height:1.9}
body.single .wp-block-post-content .zalo-author-links,
body.single .wp-block-post-content .zalo-author-links a{font-size:.875rem;line-height:1.9}
body.single .wp-block-post-content .zalo-author-avatar img,
body.single .wp-block-post-content .zalo-author-avatar .avatar{
  inline-size:44px;
  block-size:44px;
  max-inline-size:none;
  border-radius:50%;
  object-fit:cover;
}

/* فهرست مطالب درون‌متن (دسکتاپ و موبایل) هم‌اندازهٔ متن بدنه دیده شود. */
body.single .wp-block-post-content .z-outline-list,
body.single .wp-block-post-content .z-outline-list li,
body.single .wp-block-post-content .z-outline-list a,
body.single .wp-block-post-content .z-outline-level-2,
body.single .wp-block-post-content .z-toc{font-size:.875rem;line-height:1.9}

/* ---------- برچسب‌ها ---------- */
.z-post-tags{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}
.z-post-tags .wp-block-post-terms__separator{display:none}
.z-post-tags a{
  display:inline-block;
  padding:.28rem .7rem;
  border:1px solid #dce5eb;
  border-radius:999px;
  font-size:.8125rem;
  line-height:1.7;
  text-decoration:none;
}

/* ---------- فهرست مقاله (TOC) ---------- */
.scg-reading-toc{margin-block:1.25rem;padding:.85rem 1.1rem;border:1px solid #dce5eb;border-radius:12px;font:inherit}
.scg-reading-toc summary{cursor:pointer;font-weight:700;font-size:1rem}
.scg-reading-toc ol{margin-block:.6rem 0;padding-inline-start:1.4rem;font-size:.9375rem;line-height:1.9}
.scg-reading-toc a{color:inherit;text-decoration:underline;text-underline-offset:.2em}
[id^=scg-section-]{scroll-margin-block-start:5rem}

/* ---------- جدول روی صفحهٔ باریک: کارت به‌جای پیمایش افقی ----------
   افزونه هنگام نمایش، برچسب هر ستون را از thead روی هر td می‌گذارد
   (data-label) و کلاس scg-table-labeled را اضافه می‌کند. پس هر ردیف روی
   موبایل به یک کارت برچسب‌دار تبدیل می‌شود: نه پیمایش افقی، نه شکستن واژه.
   جدول‌های بدون thead همان حالت پیمایش افقی را نگه می‌دارند. */
@media (max-width:640px){
  .scg-table-labeled{
    overflow-x:visible;
    border:0;
    border-radius:0;
    background-image:none;
    margin-block:1rem;
  }
  .z-content-main .wp-block-post-content .scg-table-labeled table,
  .scg-table-labeled table{
    display:block !important;
    inline-size:100%;
    min-inline-size:0;
    border-collapse:separate;
    font-size:1rem;
  }
  .scg-table-labeled thead{
    position:absolute;
    inline-size:1px;
    block-size:1px;
    margin:-1px;
    padding:0;
    overflow:hidden;
    clip-path:inset(50%);
    white-space:nowrap;
    border:0;
  }
  .scg-table-labeled tbody,
  .scg-table-labeled tr,
  .scg-table-labeled td{display:block}
  .scg-table-labeled tr{
    border:1px solid #dce5eb;
    border-radius:12px;
    background:#fff;
    overflow:hidden;
    margin-block-end:.85rem;
  }
  .scg-table-labeled tbody tr:nth-child(even) td{background:transparent}
  .scg-table-labeled td{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:.9rem;
    border:0;
    border-block-end:1px solid #eef2f6;
    padding:.6rem .85rem;
    font-size:.9375rem;
    overflow-wrap:break-word;
  }
  .scg-table-labeled tr td:last-child{border-block-end:0}
  .scg-table-labeled td::before{
    content:attr(data-label);
    flex:0 0 44%;
    font-size:.8125rem;
    font-weight:700;
    line-height:1.9;
    color:#5b6b7b;
  }
  .scg-table-labeled td:not([data-label])::before{content:none}
}

@media print{
  .scg-responsive-table{overflow:visible;background-image:none}
  .scg-responsive-table table{inline-size:100%;min-inline-size:0}
  .scg-reading-toc{display:none}
}

/* ---------- فهرست مطالب یکسان (scg-toc) ----------
   یک نمایشگر برای همهٔ نوشته‌ها: غیرکشویی، یک‌ستونه، شمارهٔ فارسی.
   پیش از این سه شکل متفاوت روی سایت بود (details افزونه، بلوک mk-toc
   قدیمی، و صفحهٔ بدون فهرست)؛ اکنون همه یک ظاهر دارند. */
.scg-toc{
  margin:1.6rem 0 2rem;
  border:1px solid #dce7f1;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
  direction:rtl;
  text-align:right;
  font:inherit;
}
.scg-toc__title{
  display:flex;
  align-items:center;
  gap:.5rem;
  margin:0;
  padding:.85rem 1.15rem;
  font-size:1rem;
  font-weight:800;
  line-height:1.7;
  color:#1a2942;
  background:linear-gradient(180deg,#f7fbff,#eef7fe);
  border-block-end:1px solid #dce7f1;
}
.scg-toc__icon{color:#0ea5e9;font-size:.9rem;line-height:1}
.scg-toc__list{
  list-style:none;
  margin:0;
  padding:.85rem 1rem 1rem;
  display:flex;
  flex-direction:column;
  gap:.5rem;
  counter-reset:none;
}
.scg-toc__list>li{margin:0;padding:0}
.scg-toc__list>li::marker{content:none}
.scg-toc__list>li>a{
  display:flex;
  align-items:center;
  gap:.6rem;
  padding:.55rem .7rem;
  border:1px solid #e8eef5;
  border-radius:10px;
  background:#f8fafc;
  color:#1f3a5f;
  font-size:.95rem;
  font-weight:600;
  line-height:1.75;
  text-decoration:none;
  transition:background .18s,border-color .18s,color .18s;
}
.scg-toc__num{
  display:inline-flex;
  flex:0 0 1.65rem;
  align-items:center;
  justify-content:center;
  width:1.65rem;
  height:1.65rem;
  border-radius:7px;
  background:#e0f2fe;
  color:#0369a1;
  font-size:.8rem;
  font-weight:800;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.scg-toc__text{flex:1 1 auto;min-width:0;overflow-wrap:break-word}
.scg-toc__list>li>a:hover,
.scg-toc__list>li>a:focus-visible{
  color:#0b4a70;
  background:#eff8ff;
  border-color:#bae6fd;
}
.scg-toc__list>li>a:focus-visible{outline:2px solid #0ea5e9;outline-offset:2px}
@media (max-width:640px){
  .scg-toc{margin:1.25rem 0 1.5rem;border-radius:12px}
  .scg-toc__title{padding:.75rem .9rem;font-size:.95rem}
  .scg-toc__list{padding:.7rem .75rem .85rem;gap:.42rem}
  .scg-toc__list>li>a{padding:.5rem .6rem;font-size:.9rem}
  .scg-toc__num{flex:0 0 1.5rem;width:1.5rem;height:1.5rem;font-size:.75rem}
}
@media print{.scg-toc{break-inside:avoid}}
/* لنگر تیترها زیر هدر چسبان نرود. */
:where(h2,h3)[id]{scroll-margin-block-start:5rem}

/* ===== سایت: فونت وزیرمتن + فهرست مطالب + فوتر موبایل ===== */
/* =============================================================================
 * استایل سراسری سایت آی پی باما (scg-site)
 * -----------------------------------------------------------------------------
 * ۱) فونت وزیرمتن (Vazirmatn) در وزن‌های Light/Regular/Medium/Bold — میزبانی
 *    محلی روی همین سایت (بدون وابستگی به CDN خارجی).
 * ۲) فهرست مطالب: فشرده‌تر (فضای خالی کمتر) و قابل باز/بسته شدن، پیش‌فرض باز.
 * ۳) فوتر در موبایل: همه چیز وسط‌چین و تک‌ستونی.
 * این فایل در فوتر چاپ می‌شود تا بر استایل‌های درون‌خطی بلوک‌ها اولویت داشته باشد.
 * ========================================================================== */

/* ---------- ۱) فونت وزیرمتن --------------------------------------------- */
@font-face {
  font-family: 'Vazirmatn';
  src: url('https://ipbama.ir/wp-content/uploads/2026/11/Vazirmatn-Light.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Vazirmatn';
  src: url('https://ipbama.ir/wp-content/uploads/2026/11/Vazirmatn-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Vazirmatn';
  src: url('https://ipbama.ir/wp-content/uploads/2026/11/Vazirmatn-Medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Vazirmatn';
  src: url('https://ipbama.ir/wp-content/uploads/2026/11/Vazirmatn-Bold.woff2') format('woff2');
  font-weight: 700 900;
  font-style: normal;
  font-display: swap;
}

html body,
html body input,
html body textarea,
html body select,
html body button,
html body .wp-block-post-content,
html body .wp-block-navigation,
html body .wp-block-group,
html body .wp-block-query,
html body .ipf,
html body .ipf * {
  font-family: 'Vazirmatn', 'Vazir', Tahoma, 'Segoe UI', sans-serif !important;
}

/* وزن‌ها: متن اصلی سبک (300)، رابط کاربری متوسط (500)، تیترها پررنگ (700+) */
body { font-weight: 300; }
p, li, td, dd, figcaption { font-weight: 300; }
h1, h2, h3, h4, h5, h6 { font-weight: 700; line-height: 1.65; }
strong, b, th, summary { font-weight: 700; }
button, input[type="submit"], .wp-block-button__link, .ipf-cta { font-weight: 500; }
/* اعداد فارسی لاتین‌نما نباشند */
body { font-variant-numeric: normal; }

/* ---------- ۲) فهرست مطالب ---------------------------------------------- */
.scg-toc {
  margin: 1.4rem 0 1.9rem !important;
  border: 1px solid #dce7f1;
  border-radius: 14px;
  background: #fff;
  overflow: hidden;
  direction: rtl;
  text-align: right;
  box-shadow: 0 1px 2px rgba(16, 42, 67, .04);
}
.scg-toc > summary.scg-toc__title {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin: 0;
  padding: .7rem 1.05rem;
  font-size: .98rem;
  font-weight: 700;
  line-height: 1.6;
  color: #1a2942;
  background: linear-gradient(180deg, #f7fbff, #eef7fe);
  border: 0;
  cursor: pointer;
  list-style: none;
  user-select: none;
}
.scg-toc > summary.scg-toc__title::-webkit-details-marker { display: none; }
.scg-toc > summary.scg-toc__title::marker { content: none; }
.scg-toc > summary.scg-toc__title:focus-visible { outline: 2px solid #0ea5e9; outline-offset: -2px; }
.scg-toc[open] > summary.scg-toc__title { border-block-end: 1px solid #dce7f1; }
.scg-toc .scg-toc__icon { color: #0ea5e9; font-size: .95rem; line-height: 1; }
/* شِورون انتهای سربرگ */
.scg-toc > summary.scg-toc__title::after {
  content: "";
  margin-inline-start: auto;
  width: .5rem;
  height: .5rem;
  border-right: 2px solid #7d8fa1;
  border-bottom: 2px solid #7d8fa1;
  transform: rotate(45deg);
  transition: transform .2s ease;
}
.scg-toc:not([open]) > summary.scg-toc__title::after { transform: rotate(-45deg); }
.scg-toc:not([open]) > summary.scg-toc__title { border-block-end: 0; }

.scg-toc__list {
  list-style: none !important;
  margin: 0 !important;
  padding: .6rem .7rem .7rem !important;
  display: flex;
  flex-direction: column;
  gap: 4px;
  counter-reset: none;
}
.scg-toc__list > li {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.55;
}
.scg-toc__list > li > a {
  display: flex;
  align-items: center;
  gap: .55rem;
  padding: .38rem .6rem;
  border: 1px solid #eef2f7;
  border-radius: 9px;
  background: #fafcfe;
  color: #1f3a5f;
  font-size: .9rem;
  font-weight: 400;
  line-height: 1.6;
  text-decoration: none;
  transition: background .16s, border-color .16s, color .16s;
}
.scg-toc__num {
  display: inline-flex;
  flex: 0 0 1.5rem;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 6px;
  background: #e0f2fe;
  color: #0369a1;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.scg-toc__text { flex: 1 1 auto; min-width: 0; overflow-wrap: break-word; }
.scg-toc__list > li > a:hover,
.scg-toc__list > li > a:focus-visible {
  color: #0b4a70;
  background: #eff8ff;
  border-color: #bae6fd;
}
.scg-toc__list > li > a:focus-visible { outline: 2px solid #0ea5e9; outline-offset: 1px; }
@media (max-width: 640px) {
  .scg-toc { margin: 1.1rem 0 1.4rem !important; border-radius: 12px; }
  .scg-toc > summary.scg-toc__title { padding: .62rem .8rem; font-size: .92rem; }
  .scg-toc__list { padding: .5rem .55rem .6rem !important; gap: 3px; }
  .scg-toc__list > li > a { padding: .34rem .5rem; font-size: .85rem; gap: .45rem; }
  .scg-toc__num { flex: 0 0 1.35rem; width: 1.35rem; height: 1.35rem; font-size: .7rem; }
}
/* چاپ: فهرست همیشه باز و بدون شمارندهٔ رابط */
@media print {
  .scg-toc { break-inside: avoid; }
  .scg-toc > summary.scg-toc__title::after { display: none; }
}

/* ---------- ۳) فوتر در موبایل: وسط‌چین -------------------------------- */
@media (max-width: 640px) {
  .ipf { text-align: center !important; }
  .ipf-inner { padding: 2rem 16px 1rem !important; }
  .ipf-grid {
    display: block !important;
    text-align: center !important;
  }
  .ipf-brandcol,
  .ipf-col,
  .ipf-col:last-child {
    grid-column: auto !important;
    width: 100% !important;
    border: 0 !important;
    padding: 0 0 18px !important;
    margin: 0 0 4px !important;
    text-align: center !important;
  }
  .ipf-col + .ipf-col { border-top: 1px solid #1a2942 !important; padding-top: 16px !important; }
  .ipf-brand,
  .ipf-badges,
  .ipf-contact,
  .ipf-links,
  .ipf-soc,
  .ipf-bottom {
    justify-content: center !important;
    text-align: center !important;
    align-items: center !important;
  }
  .ipf-brand { flex-direction: column; gap: 6px; }
  .ipf-about { max-width: none !important; text-align: center !important; margin-inline: auto !important; }
  .ipf-badges { justify-content: center !important; }
  .ipf-contact { flex-wrap: wrap !important; gap: 8px !important; }
  .ipf-contact a { flex: 1 1 100% !important; justify-content: center !important; }
  .ipf-cta { margin-inline: auto !important; display: inline-flex !important; justify-content: center !important; }
  .ipf h3.ipf-t {
    text-align: center !important;
    padding: 0 0 .55rem !important;
    border: 0 !important;
  }
  .ipf h3.ipf-t::before,
  .ipf h3.ipf-t::after { display: none !important; }
  .ipf ul { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 2px; text-align: center !important; }
  .ipf ul li { text-align: center !important; }
  .ipf ul li a { display: inline-block !important; text-align: center !important; }
  .ipf .ipf-post ul li a,
  .ipf .wp-block-query .wp-block-post-title,
  .ipf .wp-block-query .wp-block-post-date { text-align: center !important; }
  .ipf .wp-block-post-template { align-items: center !important; }
  .ipf .wp-block-post { text-align: center !important; }
  .ipf .wp-block-post-featured-image { margin-inline: auto !important; }
  .ipf-bottom {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 10px !important;
    margin-top: 1.2rem !important;
  }
  .ipf-copy { text-align: center !important; width: 100%; }
  .ipf-links { justify-content: center !important; }
}
