/* ============================================================================
 * tables.css — טבלאות דוחות tak-rashuyot  ·  גרסת רענון (v2)
 * ----------------------------------------------------------------------------
 * מטרה: היררכיה וקריאוּת בלי להגדיל ריווח (אילוץ צפיפות נתונים).
 * תלוי ב-tokens.css. RTL מלא. תואם WeasyPrint (ראו @media print בתחתית).
 *
 * שימוש בתבנית:
 *   <div class="rpt-wrap">
 *     <table class="rpt">
 *       <thead> ... <th class="num">ינואר</th> ... </thead>
 *       <tbody>
 *         <tr> <td class="id-col">משפחה</td> ... <td class="num">17,714</td> ... </tr>
 *       </tbody>
 *       <tfoot> <tr class="total"> ... </tfoot>
 *     </table>
 *   </div>
 *
 * הסגנונות כאן חלים *רק* על אלמנטים עם class="rpt" (opt-in). טבלאות קיימות
 * שלא משתמשות ב-class הזה — לא יושפעו. ראה README של design_handoff.
 * ============================================================================ */

.rpt-wrap {
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  overflow: auto;                 /* גלילה אופקית לטבלאות חודשים רחבות */
  box-shadow: var(--shadow-card);
  background: var(--surface);
}

.rpt {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--font-body);
  font-size: var(--text-base);    /* 14 — ללא שינוי בצפיפות */
  color: var(--ink-700);
}

/* ── כותרת דביקה כהה ─────────────────────────────────────────────────────── */
.rpt thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--navy-800);
  color: var(--brand-primary-soft);
  font-weight: var(--fw-semibold);
  font-size: var(--text-sm);
  text-align: right;
  padding: 9px 14px;
  white-space: nowrap;
}
.rpt thead th.num { text-align: left; font-variant-numeric: tabular-nums; }
.rpt thead th.center { text-align: center; }

/* ── תאי גוף — padding זהה ל-v1, zebra עדין ─────────────────────────────── */
.rpt tbody td {
  padding: 9px 12px;
  border-bottom: 1px solid var(--ink-100);
  white-space: nowrap;
}
.rpt tbody tr:nth-child(even) { background: var(--ink-50); }
.rpt tbody tr:hover { background: var(--brand-primary-soft); }

/* ── עמודת זיהוי מקובעת (שם / משפחה) ─────────────────────────────────────── */
.rpt .id-col {
  position: sticky;
  inset-inline-end: 0;            /* RTL: נדבק לימין */
  background: var(--brand-primary-soft);
  font-weight: var(--fw-semibold);
  color: var(--ink-800);
  z-index: 1;
}
.rpt tbody tr:hover .id-col { background: var(--ink-100); }

/* ── מספרים פיננסיים — mono, tabular, מיושר ─────────────────────────────── */
.rpt .num {
  text-align: left;
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
}
.rpt .center { text-align: center; }
/* ערכים שליליים — minus תמיד משמאל גם ב-RTL */
.rpt .neg { color: var(--color-danger-text); font-weight: var(--fw-bold); direction: ltr; unicode-bidi: isolate; }
.rpt .pos { color: var(--color-success-text); font-weight: var(--fw-semibold); }
.rpt .muted { color: var(--ink-400); }

/* ── שורת סיכום ─────────────────────────────────────────────────────────── */
.rpt tfoot .total td {
  background: var(--brand-primary-soft);
  border-top: 2px solid var(--border-strong);
  font-weight: var(--fw-bold);
  color: var(--ink-900);
  padding: 11px 12px;
  position: sticky;
  bottom: 0;
}

/* ── תגיות סטטוס (pills) — צבע = משמעות ─────────────────────────────────── */
.rpt-status {
  display: inline-block;
  font: var(--fw-semibold) 11.5px var(--font-body);
  border-radius: var(--radius-pill);
  padding: 2px 9px;
  white-space: nowrap;
}
.rpt-status.is-ok    { color: var(--color-success-text); background: var(--color-success-bg); }
.rpt-status.is-warn  { color: var(--color-warning-text); background: var(--color-warning-bg); }
.rpt-status.is-danger{ color: var(--color-danger-text);  background: var(--color-danger-bg); }
.rpt-status.is-draft { color: var(--ink-500);        background: var(--ink-100); }

/* ── עמודת פעולות — אייקונים שקטים (משתמש ב-.btn-icon מ-buttons.css) ─────── */
.rpt .actions { text-align: center; }
.rpt .actions .btn-icon { margin-inline: 1px; }

/* ============================================================================
 * print / WeasyPrint
 * ============================================================================ */
@media print {
  .rpt-wrap { overflow: visible; box-shadow: none; border-color: var(--ink-400); }
  .rpt thead th { position: static; background: var(--ink-100) !important; color: var(--ink-800) !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .rpt .id-col { position: static; }
  .rpt tbody tr:nth-child(even) { background: var(--ink-50) !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .rpt tbody tr { page-break-inside: avoid; }
  .rpt tfoot .total td { position: static; }
  .rpt-status, .rpt .neg, .rpt .pos { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
