/* ============================================================
   سیستم طراحی سامانه ایساتیس — توکن‌های پایه
   ------------------------------------------------------------
   تمام رنگ‌ها، فاصله‌ها، گردی گوشه‌ها و سایه‌ها فقط از اینجا
   می‌آیند. هیچ فایل دیگری نباید رنگ سخت‌کدشده داشته باشد.

   پالت بر پایه‌ی خاکستری‌های خنثی (نه آبی اشباع) طراحی شده —
   همان الگویی که نرم‌افزارهای سازمانی بین‌المللی استفاده می‌کنند:
   سطح‌های خنثی، یک رنگ تأکیدی محدود، و رنگ‌های معنایی فقط
   برای وضعیت‌ها.
   ============================================================ */

:root {
  /* ---------- سطح‌ها (بر پایه‌ی GitHub Primer) ---------- */
  --bg:            #f6f8fa;   /* پس‌زمینه‌ی کل صفحه — canvas.subtle */
  --surface:       #ffffff;   /* کارت‌ها، پنل‌ها، جدول‌ها — canvas.default */
  --surface-2:     #f6f8fa;   /* سربرگ جدول، ورودی‌ها — canvas.inset */
  --surface-3:     #eaeef2;   /* حالت hover */
  --row-alt:       #fafbfc;   /* ردیف‌های زوج جدول */
  --surface-sunken:#eaeef2;

  /* ---------- خطوط ---------- */
  /* عمداً پررنگ‌تر از قبل: مرز جدول‌ها باید واضح دیده شود */
  --border:        #d1d9e0;   /* border.default در Primer */
  --border-strong: #afb8c1;   /* border.emphasis */
  --border-subtle: #d8dee4;

  /* ---------- متن ---------- */
  --text:          #1f2328;   /* fg.default */
  --text-secondary:#59636e;   /* fg.muted */
  --text-muted:    #6e7781;   /* fg.subtle */
  --text-on-accent:#ffffff;

  /* ---------- رنگ تأکیدی ---------- */
  --accent:        #0969da;   /* accent.fg */
  --accent-hover:  #0860ca;
  --accent-active: #0757ba;
  --accent-subtle: #ddf4ff;   /* accent.subtle */
  --accent-border: #54aeff;

  /* ---------- رنگ‌های معنایی ---------- */
  --success:        #1a7f37;
  --success-subtle: #dafbe1;
  --success-border: #4ac26b;

  --warning:        #9a6700;
  --warning-subtle: #fff8c5;
  --warning-border: #d4a72c;

  --danger:         #cf222e;
  --danger-subtle:  #ffebe9;
  --danger-border:  #ff8182;

  --info:           #8250df;
  --info-subtle:    #fbefff;
  --info-border:    #c297ff;

  /* ---------- برند (ثابت در هر دو حالت — متن سفید رویش می‌نشیند) ---------- */
  --brand:         #1f2328;
  --brand-strong:  #010409;
  --brand-soft:    #32383f;

  /* ---------- فاصله‌گذاری (مقیاس ۴px) ---------- */
  --sp-1: 4px;   --sp-2: 8px;   --sp-3: 12px;  --sp-4: 16px;
  --sp-5: 20px;  --sp-6: 24px;  --sp-8: 32px;  --sp-10: 40px;

  /* ---------- گردی گوشه (Primer روی ۶px است) ---------- */
  --r-sm: 4px;  --r-md: 6px;  --r-lg: 8px;  --r-xl: 12px;  --r-full: 999px;

  /* ---------- سایه ---------- */
  --shadow-sm: 0 1px 0 rgba(31,35,40,.04);
  --shadow-md: 0 3px 6px rgba(140,149,159,.15);
  --shadow-lg: 0 8px 24px rgba(140,149,159,.2);
  --shadow-xl: 0 12px 28px rgba(140,149,159,.3);

  /* ---------- تایپوگرافی ---------- */
  /* وزن‌ها عمداً یک پله سنگین‌تر از حالت متعارف‌اند — درخواست: فونت بولدتر.
     Vazirmatn وزن‌های ۴۰۰ تا ۹۰۰ را دارد، پس همه‌ی این‌ها واقعی رندر می‌شوند. */
  --font: 'Vazirmatn', Tahoma, system-ui, sans-serif;
  --fw-normal:   500;   /* متن عادی */
  --fw-medium:   600;   /* برچسب‌ها، متن تأکیدی */
  --fw-semibold: 700;   /* سربرگ جدول، عنوان کارت */
  --fw-bold:     800;   /* عنوان صفحه، اعداد شاخص */

  --fs-xs:  12px;  --fs-sm:  13px;  --fs-base: 14px;
  --fs-md:  15px;  --fs-lg:  17px;  --fs-xl:   20px;  --fs-2xl: 26px;
  --lh-tight: 1.35;  --lh-normal: 1.6;

  /* ---------- چیدمان ---------- */
  /* کارتابل: پس‌زمینه‌ی متمایز از محتوا تا به‌عنوان ناحیه‌ی مستقل خوانده شود */
  --sidebar-bg:      #eaeef2;
  --sidebar-head-bg: #dfe4ea;

  --sidebar-w:          300px;
  --sidebar-w-collapsed: 68px;
  --topbar-h:            56px;

  --transition: .16s cubic-bezier(.4,0,.2,1);

  /* ------------------------------------------------------------
     لایه‌ی سازگاری با نام‌های قدیمی.

     استایل‌های اختصاصی صفحات (styles.css) هنوز با نام‌های قبلی نوشته
     شده‌اند. به‌جای ویرایش صدها خط، همان نام‌ها را به توکن‌های جدید
     نگاشت می‌کنیم — نتیجه این است که کل CSS قدیمی هم خودکار حالت
     تاریک را پشتیبانی می‌کند. با بازنویسی تدریجی صفحات، این بخش
     کوچک‌تر و در نهایت حذف می‌شود.

     نکته: نام «--white» در کد قدیمی گمراه‌کننده است — مقدارش رنگ
     «متن اصلی» بود، نه سفید.
     ------------------------------------------------------------ */
  --blue-dark:   var(--brand);
  --blue-mid:    var(--accent);
  --blue-accent: var(--accent);
  --blue-light:  var(--accent);
  --blue-glow:   var(--accent-subtle);
  --white:       var(--text);
  --gray-light:  var(--surface-3);
  --gray-mid:    var(--text-muted);
  --gray-dark:   var(--text-secondary);
  --bg-main:     var(--bg);
  --bg-card:     var(--surface);
  --bg-panel:    var(--surface-2);
  --green:  var(--success);
  --yellow: var(--warning);
  --red:    var(--danger);
  --cyan:   var(--info);
  --slate:  var(--text-secondary);
}

/* ============================================================
   حالت تاریک
   ============================================================ */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg:            #0d1117;   /* canvas.default */
    --surface:       #151b23;   /* canvas.subtle — کارت‌ها کمی روشن‌تر از زمینه */
    --surface-2:     #212830;   /* سربرگ جدول، ورودی‌ها */
    --surface-3:     #262c36;   /* hover */
    --row-alt:       #12181f;   /* ردیف‌های زوج جدول */
    --surface-sunken:#010409;
  
    --border:        #3d444d;   /* border.default — در تاریکی هم واضح */
    --border-strong: #656c76;
    --border-subtle: #2f353d;
  
    --text:          #f0f6fc;   /* fg.default */
    --text-secondary:#9198a1;   /* fg.muted */
    --text-muted:    #8b949e;
  
    --accent:        #4493f8;
    --accent-hover:  #6cb6ff;
    --accent-active: #85c0ff;
    --accent-subtle: #121d2f;
    --accent-border: #316dca;
  
    --success:        #3fb950;
    --success-subtle: #0f2913;
    --success-border: #238636;
  
    --warning:        #d29922;
    --warning-subtle: #272115;
    --warning-border: #9e6a03;
  
    --danger:         #f85149;
    --danger-subtle:  #2a1213;
    --danger-border:  #da3633;
  
    --info:           #ab7df8;
    --info-subtle:    #1d1b2e;
    --info-border:    #8957e5;
  
    --sidebar-bg:      #010409;
    --sidebar-head-bg: #0d1117;

    --brand:         #212830;
    --brand-strong:  #010409;
    --brand-soft:    #2f353d;
  
    --shadow-sm: 0 1px 0 rgba(1,4,9,.6);
    --shadow-md: 0 3px 6px rgba(1,4,9,.6);
    --shadow-lg: 0 8px 24px rgba(1,4,9,.7);
    --shadow-xl: 0 12px 28px rgba(1,4,9,.8);
  }
}

/* انتخاب دستی حالت تاریک (کلید تغییر تم) — بر تنظیم سیستم اولویت دارد */
:root[data-theme="dark"] {
  --bg:            #0d1117;   /* canvas.default */
  --surface:       #151b23;   /* canvas.subtle — کارت‌ها کمی روشن‌تر از زمینه */
  --surface-2:     #212830;   /* سربرگ جدول، ورودی‌ها */
  --surface-3:     #262c36;   /* hover */
  --row-alt:       #12181f;   /* ردیف‌های زوج جدول */
  --surface-sunken:#010409;

  --border:        #3d444d;   /* border.default — در تاریکی هم واضح */
  --border-strong: #656c76;
  --border-subtle: #2f353d;

  --text:          #f0f6fc;   /* fg.default */
  --text-secondary:#9198a1;   /* fg.muted */
  --text-muted:    #8b949e;

  --accent:        #4493f8;
  --accent-hover:  #6cb6ff;
  --accent-active: #85c0ff;
  --accent-subtle: #121d2f;
  --accent-border: #316dca;

  --success:        #3fb950;
  --success-subtle: #0f2913;
  --success-border: #238636;

  --warning:        #d29922;
  --warning-subtle: #272115;
  --warning-border: #9e6a03;

  --danger:         #f85149;
  --danger-subtle:  #2a1213;
  --danger-border:  #da3633;

  --info:           #ab7df8;
  --info-subtle:    #1d1b2e;
  --info-border:    #8957e5;

  --sidebar-bg:      #010409;
  --sidebar-head-bg: #0d1117;

  --brand:         #212830;
  --brand-strong:  #010409;
  --brand-soft:    #2f353d;

  --shadow-sm: 0 1px 0 rgba(1,4,9,.6);
  --shadow-md: 0 3px 6px rgba(1,4,9,.6);
  --shadow-lg: 0 8px 24px rgba(1,4,9,.7);
  --shadow-xl: 0 12px 28px rgba(1,4,9,.8);
}
