/* ============================================================
   SINOX API — LEGAL.CSS (page-specific)
   قالب مشترک صفحات حقوقی: قوانین و مقررات · حریم خصوصی · شرایط
   استرداد. محتوا در ستون اصلی (حداکثر ~۷۲ کاراکتر) + «در این صفحه»
   ستون فهرست چسبان (sticky). زیر ۹۶۰ پیکسل فهرست پنهان می‌شود.
   وابسته به tokens/base/components.
   ============================================================ */

/* ---------- ۰. اسکلت صفحه ---------- */
.legal-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 240px;
  align-items: start;
  gap: var(--space-10);
  max-width: var(--container-w-wide);
  margin-inline: auto;
  padding: var(--space-12) var(--space-10) var(--space-24);
}
@media (max-width: 960px) {
  .legal-shell { grid-template-columns: minmax(0, 1fr); padding: var(--space-8) var(--space-4) var(--space-16); }
  .legal-toc { display: none; }
}

/* ---------- ۱. محتوای اصلی ---------- */
.legal-content { max-width: 72ch; min-width: 0; }

.legal-eyebrow { display: flex; align-items: center; gap: var(--space-3); flex-wrap: wrap; }
.legal-badge {
  padding: 4px 12px;
  border-radius: var(--radius-full);
  border: 1px solid var(--border-1);
  background: var(--elev-2);
  font-size: 11.5px;
  font-weight: var(--fw-semibold);
  color: var(--text-2);
}
.legal-updated { font-size: 12.5px; color: var(--text-muted); }

.legal-title {
  margin-top: var(--space-4);
  font-size: var(--fh-h2);
  font-weight: var(--fw-black);
  line-height: 1.35;
}
.legal-lead {
  margin-top: var(--space-3);
  font-size: var(--fs-md);
  line-height: var(--lh-loose);
  color: var(--text-muted);
}

.legal-draft-notice { margin-top: var(--space-6); }

.legal-h2 {
  margin-top: var(--space-8);
  font-size: var(--fh-h4);
  font-weight: var(--fw-extrabold);
  scroll-margin-top: calc(var(--nav-h) + var(--space-4));
}
.legal-content > section:first-of-type .legal-h2 { margin-top: var(--space-10); }

.legal-body {
  margin-top: var(--space-3);
  font-size: var(--fs-md);
  line-height: var(--lh-loose);
  color: var(--text-2);
}
.legal-body + .legal-body { margin-top: var(--space-3); }

.legal-list {
  margin-top: var(--space-3);
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: var(--fs-md);
  line-height: var(--lh-snug);
  color: var(--text-2);
}
.legal-list li { padding-inline-start: var(--space-5); position: relative; }
.legal-list li::before {
  content: '';
  position: absolute;
  inset-inline-start: 4px;
  top: 10px;
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--primary-light);
}

.legal-callout { margin-top: var(--space-4); }

/* ---------- ۲. پیوند بین صفحات حقوقی (پایین محتوا) ---------- */
.legal-crosslinks {
  margin-top: var(--space-10);
  padding-top: var(--space-6);
  border-top: 1px solid var(--border-1);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-5);
  flex-wrap: wrap;
}
.legal-crosslinks-note { font-size: var(--fs-sm); color: var(--text-muted); }
.legal-crosslinks-links { display: flex; gap: var(--space-2); flex-wrap: wrap; }

/* ---------- ۳. ستون «در این صفحه» ---------- */
.legal-toc {
  position: sticky;
  top: calc(var(--nav-h) + var(--space-6));
}
.legal-toc-label {
  padding: 0 10px 12px;
  font-size: 11.5px;
  font-weight: var(--fw-bold);
  letter-spacing: var(--tracking-mono);
  color: var(--text-muted);
}
.legal-toc-list { display: flex; flex-direction: column; gap: 2px; }
.legal-toc-link {
  padding: 6px 10px;
  border-radius: var(--radius-sm);
  font-size: 12.5px;
  color: var(--text-muted);
  transition: color var(--dur-base), background var(--dur-base);
}
.legal-toc-link:hover { color: var(--text-1); background: var(--elev-2); }
.legal-toc-link:focus-visible { outline: 2px solid var(--primary-light); outline-offset: 1px; }

.legal-toc-extra {
  margin-top: var(--space-6);
  border: 1px solid var(--border-1);
  border-radius: var(--radius-lg);
  background: var(--elev-2);
  padding: var(--space-4);
}
.legal-toc-extra-label { font-size: var(--fs-xs); color: var(--text-muted); }
.legal-toc-extra-list { margin-top: 11px; display: flex; flex-direction: column; gap: 9px; font-size: var(--fs-sm); }
.legal-toc-extra-list a { color: var(--text-muted); transition: color var(--dur-base); }
.legal-toc-extra-list a:hover { color: var(--text-1); }
.legal-toc-extra-list a[aria-current="page"] { color: var(--text-1); font-weight: var(--fw-bold); }

/* ---------- عناصر اسناد جدید (هات‌فیکس ۴۴) ---------- */
.legal-h3 { margin: 22px 0 10px; font-size: 15.5px; font-weight: 800; }
.legal-tablewrap { overflow-x: auto; margin: 14px 0; }
.legal-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.legal-table th { text-align: start; padding: 10px 12px; color: var(--text-muted); font-weight: 700; border-bottom: 1px solid var(--border-2); white-space: nowrap; }
.legal-table td { padding: 10px 12px; border-bottom: 1px solid var(--border-1); line-height: 1.9; }
.legal-table tr:last-child td { border-bottom: none; }
.legal-pre { margin: 14px 0; padding: 14px 16px; background: var(--elev-1); border: 1px solid var(--border-1); border-radius: 12px; font-family: var(--font-mono); font-size: 12.5px; direction: rtl; overflow-x: auto; line-height: 2; }
