/* ============================================================
   Crowd Index — tokens.css
   منبعِ واحدِ توکن‌های «سیستم طراحی v3.0.0 — مونوکروم سیگنال»
   (Main Monochrome Signal · نسخهٔ اصلی · ۳۰ تیر ۱۴۰۵)

   هم index.html هم صفحاتِ تولیدشدهٔ SSG از همین فایل می‌خوانند،
   تا کلِ سایت دقیقاً یک زبانِ بصری داشته باشد.

   قاعدهٔ سیستم: هرگز مقدارِ خام — همیشه نامِ توکن.
   هویت: سفیدِ خالص محتوا را حمل می‌کند · مشکیِ غنی ساختار می‌سازد ·
         نارنجی #FF5C00 فقط یک تصمیم را نقطه‌گذاری می‌کند (زیرِ ۲٪ سطح).
   عمق: مرز-محور. سایه فقط برای لایه‌های شناور (modal/dropdown/sticky).

   نکتهٔ نگهداری: نامِ توکن‌ها نسبت به v2.1 تغییر نکرده تا ۲٬۶۰۱ صفحهٔ
   تولیدشده بدونِ بازتولید، خودکار به v3.0 تم بخورند. فقط «مقدار»ها عوض شده‌اند.
   ============================================================ */

/* ---------- فونت‌های بومی (بدونِ وابستگی به CDN) ----------
   چهار نقشِ فونت (بخش ۳.۱ سیستم):
   نمایشی: Estedad (متغیر) · بدنه: Vazirmatn · دادهٔ عددی: Inter · عدد hero: Archivo */

/* Estedad — variable (wght 100–900) · فقط وزن‌های تیتر استفاده می‌شود */
@font-face{font-family:'Estedad';font-weight:100 900;font-style:normal;font-display:swap;
  src:url('fonts/Estedad-Var-Arabic.woff2') format('woff2');
  unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC;}
@font-face{font-family:'Estedad';font-weight:100 900;font-style:normal;font-display:swap;
  src:url('fonts/Estedad-Var-Latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215;}

/* Inter — variable (wght 100–900) · دادهٔ عددی (tnum) */
@font-face{font-family:'Inter';font-weight:100 900;font-style:normal;font-display:swap;
  src:url('fonts/Inter-Var-Latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215;}

/* Archivo — variable (wght 100–900) · عدد hero (KPI) */
@font-face{font-family:'Archivo';font-weight:100 900;font-style:normal;font-display:swap;
  src:url('fonts/Archivo-Var-Latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215;}

/* Vazirmatn — بدنهٔ فارسی */
@font-face{font-family:'Vazirmatn';font-weight:300;font-style:normal;font-display:swap;
  src:url('fonts/Vazirmatn-Light.woff2') format('woff2');}
@font-face{font-family:'Vazirmatn';font-weight:400;font-style:normal;font-display:swap;
  src:url('fonts/Vazirmatn-Regular.woff2') format('woff2');}
@font-face{font-family:'Vazirmatn';font-weight:500;font-style:normal;font-display:swap;
  src:url('fonts/Vazirmatn-Medium.woff2') format('woff2');}
@font-face{font-family:'Vazirmatn';font-weight:600;font-style:normal;font-display:swap;
  src:url('fonts/Vazirmatn-SemiBold.woff2') format('woff2');}
@font-face{font-family:'Vazirmatn';font-weight:700;font-style:normal;font-display:swap;
  src:url('fonts/Vazirmatn-Bold.woff2') format('woff2');}
@font-face{font-family:'Vazirmatn';font-weight:800;font-style:normal;font-display:swap;
  src:url('fonts/Vazirmatn-ExtraBold.woff2') format('woff2');}

:root{
  /* ---------- سطوح (بخش ۲.۱) ---------- */
  --surface-base:#ffffff;   /* paper — همیشه سفیدِ خالص. کِرم/بژ/خاکستریِ گرم ممنوع. */
  --surface-raised:#fafafa; /* hover، ناحیهٔ ثانویه، گروه‌بندیِ ظریف */
  --surface-alt:#f0f0f0;    /* گروهِ کنترل، ناحیهٔ غیرفعال */
  --zebra:#fafafa;          /* فقط جدولِ بلند >~۳۰ ردیف */

  /* ---------- مرکّب ---------- */
  --ink-strong:#09090a;     /* تیتر، کاور، ساختارِ اصلی */
  --ink-body:#29292b;       /* پاراگراف و متنِ جدول */
  --ink-secondary:#4a4a4d;
  --ink-muted:#68686b;      /* برچسبِ ثانویه و متادیتا */
  --ink-faint:#929295;      /* پانویس، placeholder، متنِ غیرفعال */

  /* ---------- خطوط ---------- */
  --border-default:#e5e5e5; /* کارت، ردیفِ جدول، جداکننده */
  --border-strong:#b9b9bb;  /* محور، مرزِ مهم */

  /* ---------- کنش (بخش ۷.۵) — پیش‌فرض مشکیِ غنی، نه نارنجی ---------- */
  --accent:#111112;         /* دکمهٔ اصلی و ساختارِ انتخاب‌شده */
  --accent-hover:#000000;
  --accent-bright:#29292b;
  --accent-bg:#f0f0f0;      /* زمینهٔ خنثیِ حالتِ انتخاب */
  --accent-on-dark:#ffffff;

  /* ---------- امضای نارنجی (بخش ۲.۲) ----------
     دوز: معمولاً زیرِ ۲٪ سطحِ صفحه. یک امضا در سرصفحه،
     یا یک نقطهٔ دادهٔ برجسته در یک نمودار. هرگز رنگِ عمومیِ دکمه/کارت/جداکننده. */
  --signal:#ff5c00;
  --signal-soft:#fff0e7;
  --signal-ink:#09090a;     /* متنِ روی نارنجی: مشکی، نه سفید */

  /* ---------- معنایی (بخش ۲.۳) ---------- */
  --positive:#1d7a55; --positive-bg:#e7f3ed;
  --negative:#bc3d4c; --negative-bg:#f9e8eb;
  --warning:#976100;  --warning-bg:#f8efd9;   /* هشدار = کهربایی، نه نارنجی */
  --neutral:#68686b;  --neutral-bg:#f0f0f0;
  --highlight:#976100;

  /* ---------- نمودار (بخش ۲.۴) — اول مونوکروم ---------- */
  --chart-1:#111112;  /* سریِ اصلی / واقعی */
  --chart-2:#747477;  /* مقایسه / بودجه */
  --chart-3:#b3b3b5;  /* زمینهٔ ثانویه */
  --chart-4:#ff5c00;  /* فقط یک برجسته‌سازیِ انتخاب‌شده */
  --chart-5:#9c9c9f;  /* هدف، مبنا، مرجع */
  --chart-wf-pos:#1d7a55; --chart-wf-neg:#bc3d4c; --chart-wf-bridge:#9c9c9f;

  /* ---------- فونت — چهار نقش ---------- */
  --font-display:'Estedad','Vazirmatn',Tahoma,sans-serif;
  --font-fa:'Vazirmatn',Tahoma,Arial,sans-serif;
  --font-num:'Inter',system-ui,sans-serif;
  --font-hero:'Archivo','Inter',system-ui,sans-serif;
  --font-mono:'SF Mono','Fira Code',Consolas,monospace;

  /* ---------- مقیاسِ تایپ (بخش ۳.۲ · وب) ---------- */
  --text-display:46px; --text-h1:34px; --text-h2:28px; --text-h3:20px; --text-h4:15px;
  --text-body-lg:16px; --text-body:14px; --text-body-sm:12.5px;
  --text-caption:11px; --text-label:11px;
  --text-number-lg:18px; --text-number-xl:32px; --text-number-hero:42px;

  /* ---------- ارتفاعِ خط (فارسی به فضای بیشتری نیاز دارد) ---------- */
  --lh-display:1.28; --lh-h1:1.30; --lh-h2:1.35; --lh-h3:1.40;
  --lh-body-lg:1.85; --lh-body:1.70; --lh-kpi:1.05;

  /* ---------- Tracking ---------- */
  --tracking-tight:-0.02em; --tracking-normal:0; --tracking-wide:0.04em;

  /* ---------- فاصله (بخش ۴.۱ — فقط این پله‌ها) ---------- */
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:20px;
  --space-6:24px; --space-8:32px; --space-10:40px; --space-12:48px; --space-16:64px; --space-20:80px;

  /* ---------- شعاع (بخش ۴.۲) ---------- */
  --radius-none:0;
  --radius-sm:4px;    /* micro / انتهای میله نمودار */
  --radius-md:8px;    /* کنترل / دکمه */
  --radius-lg:14px;   /* کارت / ورودی */
  --radius-panel:22px;/* پنلِ بزرگ / modal */
  --radius-full:999px;

  /* ---------- سایه — فقط برای شناورها (بخش ۴.۳) ---------- */
  --shadow-overlay:0 12px 32px rgba(9,9,10,.14);
  --shadow-modal:0 24px 64px rgba(9,9,10,.18);

  /* ---------- حرکت ---------- */
  --duration-fast:100ms; --duration-normal:200ms; --duration-slow:350ms;
  --easing-standard:cubic-bezier(0.4,0,0.2,1);
  --easing-enter:cubic-bezier(0,0,0.2,1);
  --easing-exit:cubic-bezier(0.4,0,1,1);
}

/* ---------- حالتِ تیره (بخش ۹.۴) — همان دوزِ نارنجی ---------- */
.dark{
  --surface-base:#0f0f10; --surface-raised:#18181a; --surface-alt:#212124;
  --zebra:#18181a;
  --ink-strong:#ffffff; --ink-body:#e4e4e6; --ink-secondary:#c2c2c5;
  --ink-muted:#98989c; --ink-faint:#727276;
  --border-default:#2a2a2d; --border-strong:#45454a;
  --accent:#ffffff; --accent-hover:#e4e4e6; --accent-bright:#c2c2c5;
  --accent-bg:#212124; --accent-on-dark:#09090a;
  --signal:#ff5c00; --signal-soft:#2a1509;
  --positive:#4cbd8b; --positive-bg:#11251c;
  --negative:#e0737f; --negative-bg:#2e161a;
  --warning:#d9a441;  --warning-bg:#2b2110;
  --neutral:#98989c;  --neutral-bg:#212124;
  --chart-1:#ffffff; --chart-2:#98989c; --chart-3:#55555a;
  --chart-4:#ff5c00; --chart-5:#727276;
  --shadow-overlay:0 12px 32px rgba(0,0,0,.6);
  --shadow-modal:0 24px 64px rgba(0,0,0,.7);
}

/* ---------- پایه ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased}
body{
  font-family:var(--font-fa);
  background:var(--surface-base);
  color:var(--ink-body);
  direction:rtl; line-height:var(--lh-body); font-size:var(--text-body);
  text-rendering:optimizeLegibility;
}
a{color:var(--ink-strong);text-decoration:none;text-underline-offset:3px}
a:hover{text-decoration:underline}
h1,h2,h3,.display{font-family:var(--font-display);color:var(--ink-strong)}
h1{font-size:var(--text-h1);font-weight:750;line-height:var(--lh-h1);letter-spacing:var(--tracking-tight)}
h2{font-size:var(--text-h2);font-weight:700;line-height:var(--lh-h2)}
h3{font-size:var(--text-h3);font-weight:650;line-height:var(--lh-h3)}

/* قانونِ ارقام (بخش ۳.۳): هر دادهٔ عددی با Inter و tnum، بی‌طرف (LTR). */
.num{font-family:var(--font-num);direction:ltr;unicode-bidi:isolate;
     font-feature-settings:"tnum";font-variant-numeric:tabular-nums}

/* عدد hero (KPI بزرگ) — Archivo */
.hero-num{font-family:var(--font-hero);font-weight:700;letter-spacing:var(--tracking-tight);
     direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums;
     line-height:var(--lh-kpi)}

/* متنِ لاتین درونِ جملهٔ فارسی باید ایزوله شود */
.ltr{direction:ltr;unicode-bidi:isolate}

/* ---------- امضای اصلی: تیرکِ پایانی (بخش ۵) ----------
   خطِ ۱px مشکی که به یک پایانهٔ نارنجیِ ۲۴×۴ ختم می‌شود.
   فقط یک بار در سرصفحهٔ صفحه/گزارش. روی هر H2/H3/کارت/KPI ممنوع. */
.terminal-rule{display:flex;align-items:center;gap:0;margin-bottom:var(--space-5)}
.terminal-rule::before{content:'';flex:1;height:1px;background:var(--ink-strong)}
.terminal-rule::after{content:'';width:24px;height:4px;background:var(--signal);flex:none}
.terminal-rule.short::before{flex:none;width:96px}

/* .tick — نشانگرِ ساختاریِ خنثی (بازمانده از v2.1، اکنون مونوکروم).
   عمداً نارنجی نیست: در نشانه‌گذاریِ موجود چندین بار تکرار می‌شود و
   نارنجی‌کردنِ آن قانونِ دوزِ ۲٪ را می‌شکند. */
.tick{display:block;width:24px;height:3px;background:var(--ink-strong);
      border-radius:var(--radius-sm);margin-bottom:var(--space-3)}
.tick.on-dark{background:var(--accent-on-dark)}
/* تنها موردِ مجازِ نارنجی روی .tick — یک بار در بازکنندهٔ صفحه */
.tick.signal{background:var(--signal)}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* ---------- چاپ ---------- */
@media print{
  body{background:#fff;color:#000}
  .no-print{display:none!important}
  a{text-decoration:none;color:#000}
}


/* ══════════════════════════════════════════════════════════════
   نشانه — «سهمِ آخر» و سه گونهٔ دیگر
   واحدها currentColor نمی‌گیرند تا در زمینهٔ تیره هم درست بمانند:
   .u از --ink-strong و .s از --signal تغذیه می‌شود.
   ══════════════════════════════════════════════════════════════ */
.cimark{display:block;flex:none}
.cimark .u{fill:var(--ink-strong)}
.cimark .s{fill:var(--signal)}

/* سربرگ */
.cimark-brand{width:28px;height:28px}

/* نشانه‌های کوچکِ کنارِ عنوانِ نمودار — هرکدام منطقِ همان نمودار را رمزگذاری می‌کنند */
.cimark-h{display:inline-block;width:17px;height:17px;
  vertical-align:-3px;margin-inline-end:var(--space-2);opacity:.92}

/* سربرگِ چاپ */
.cimark-print{width:22px;height:22px;margin-bottom:var(--space-3)}

/* بارگذاری — نشانه همان کاری را می‌کند که تصویرش می‌کند: انباشته می‌شود */
.cimark-load{width:34px;height:34px}
.cimark-load .u,.cimark-load .s{opacity:.18;animation:ciStack 1.7s ease-in-out infinite}
.cimark-load .u:nth-of-type(1){animation-delay:0s}
.cimark-load .u:nth-of-type(2){animation-delay:.13s}
.cimark-load .u:nth-of-type(3){animation-delay:.26s}
.cimark-load .u:nth-of-type(4){animation-delay:.39s}
.cimark-load .s{animation-delay:.62s}
@keyframes ciStack{0%,72%,100%{opacity:.18}18%,52%{opacity:1}}
@media(prefers-reduced-motion:reduce){
  .cimark-load .u,.cimark-load .s{animation:none;opacity:1}
}
