/*
 * tokens.css — عقد الرموز الموحّد لِـ NIMROD (Phase 1)
 * ============================================================
 * هذا الملف هو **المصدر الوحيد** لرموز التصميم العامّة. راجع
 * docs/DESIGN_SYSTEM.md و docs/DESIGN_SYSTEM_PLAN.md §4.
 *
 * يجب تحميله **قبل** admin-theme.css في كل قالب أساس
 * (base.html · base_chat_embed.html · accounts/login.html).
 *
 * طبقات الملف:
 *   1) PRIMITIVES — قيم خام: مسافات · أنصاف أقطار · زمن الحركة. (إضافية)
 *   2) COMPAT     — لوحة الرموز العامّة القائمة، نُقِلت حرفياً من
 *                   admin-theme.css. هي مصدر الحقيقة للأسماء القديمة
 *                   (--fc-* · --user-* · --at-* · --nimrod-* وتجاوزات --bs-*).
 *   3) SEMANTIC   — طبقة --n-* الدلالية: أسماء مستقرّة تشير إلى (2).
 *                   الشيفرة الجديدة تستعمل --n-* فقط. (إضافية)
 *
 * قاعدة: لا تُعرَّف قيمة لون خام في أي ملف آخر. عرّفها هنا واستعمل الرمز.
 * ============================================================ */

/* ============================================================
   1) PRIMITIVES — بدائيات إضافية (لا مستهلك حالي، عقد مستقبلي)
   ============================================================ */
:root {
  /* مقياس المسافات */
  --n-space-2xs: 0.25rem;
  --n-space-xs:  0.5rem;
  --n-space-sm:  0.75rem;
  --n-space-md:  1rem;
  --n-space-lg:  1.5rem;
  --n-space-xl:  2rem;
  --n-space-2xl: 3rem;

  /* أنصاف الأقطار — مطابقة لمقياس Finance Canvas القائم */
  --n-radius-sm: 12px;   /* == --fc-radius-sm */
  --n-radius-md: 16px;   /* == --fc-radius-md */
  --n-radius-lg: 22px;   /* == --fc-radius-lg */
  --n-radius-pill: 999px;

  /* زمن الحركة — يوحّد القيم المبعثرة (0.2s/0.3s) عبر القاعدة */
  --n-motion-fast: 150ms;
  --n-motion-base: 250ms;
  --n-motion-slow: 400ms;
  --n-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

/* ============================================================
   2) COMPAT — لوحة الرموز العامّة (نُقِلت حرفياً من admin-theme.css)
   لا تُعدّل القيم هنا دون مراجعة docs/DESIGN_SYSTEM.md.
   ============================================================ */
:root,
[data-bs-theme="light"] {
  --user-primary: #EC6A4A;
  --user-primary-rgb: 236, 106, 74;
  --user-primary-dark: #D95032;
  --user-primary-soft: rgba(var(--user-primary-rgb), 0.10);
  --bs-primary: var(--user-primary);
  --bs-primary-rgb: var(--user-primary-rgb);
  --bs-purple: var(--user-primary);
}

[data-bs-theme="dark"] {
  --bs-primary: var(--user-primary);
  --bs-primary-rgb: var(--user-primary-rgb);
  --bs-purple: var(--user-primary);
}

/* ============================================================
   0a. Finance Canvas Design Tokens — الرموز الموحّدة الجديدة
   (تُستخدم عبر كل الصفحات لإعطاء مظهر موحّد كريمي/مرجاني)
   ============================================================ */
:root,
[data-bs-theme="light"] {
  --fc-cream: #EEF2F6;
  --fc-cream-soft: #F8FAFC;
  --fc-cream-2: #E2E8F0;
  --fc-surface: #FFFFFF;
  --fc-ink: #15171A;
  --fc-ink-soft: #4A4742;
  --fc-muted: #6B7280;
  --fc-line: rgba(15,23,42,0.14);
  --fc-coral: var(--user-primary);
  --fc-coral-2: var(--user-primary-dark);
  --fc-coral-dark: var(--user-primary-dark);
  --fc-coral-soft: var(--user-primary-soft);
  --fc-amber: #F0A94B;
  --fc-radius-lg: 22px;
  --fc-radius-md: 16px;
  --fc-radius-sm: 12px;
  --fc-shadow-soft: 0 8px 24px rgba(15,23,42,0.08), 0 1px 2px rgba(15,23,42,0.08);
  --fc-shadow-hover: 0 16px 40px rgba(15,23,42,0.13), 0 2px 6px rgba(15,23,42,0.08);
  --bs-body-bg: var(--fc-cream);
  --bs-body-color: var(--fc-ink);
  --bs-border-color: #D4DCE8;
  --bs-secondary-bg: #E9EEF5;
  --bs-tertiary-bg: #F3F6FA;
}

[data-bs-theme="dark"] {
  --fc-cream: #0F1217;
  --fc-cream-2: #171C24;
  --fc-surface: #202631;
  --fc-ink: #F5F1EC;
  --fc-ink-soft: #D3CDC5;
  --fc-muted: #B3BAC7;
  --fc-line: rgba(226,232,240,0.15);
  --fc-coral: var(--user-primary);
  --fc-coral-2: var(--user-primary-dark);
  --fc-coral-dark: var(--user-primary-dark);
  --fc-coral-soft: rgba(var(--user-primary-rgb), 0.18);
  --fc-amber: #F0A94B;
  --fc-shadow-soft: 0 10px 30px rgba(0,0,0,0.42), 0 0 0 1px rgba(226,232,240,0.05);
  --fc-shadow-hover: 0 18px 48px rgba(0,0,0,0.58), 0 0 0 1px rgba(226,232,240,0.09);
  --bs-body-bg: var(--fc-cream);
  --bs-body-color: var(--fc-ink);
  --bs-border-color: rgba(226,232,240,0.16);
  --bs-secondary-bg: #171C24;
  --bs-tertiary-bg: #202631;
}

/* ============================================================
   0b. Theme Variables — متغيرات الثيم
   ============================================================ */
:root,
[data-bs-theme="light"] {
  --nimrod-gold: var(--user-primary);
  --nimrod-bronze: var(--user-primary-dark);
  --nimrod-amber: #F0A94B;
  --nimrod-parchment: #FBFBFB;
  --nimrod-clay: #15171A;
  --nimrod-sky: #0F1115;
  --at-card-hover-shadow: 0 12px 32px rgba(0,0,0,0.08);
  --at-hover-bg: rgba(var(--user-primary-rgb), 0.02);
  --at-subtle-bg: rgba(0,0,0,0.04);
  --at-subtle-border: rgba(0,0,0,0.06);
  --at-chart-grid: rgba(0,0,0,0.05);
  --at-chart-text: #697a8d;
  --at-chart-marker-stroke: #fff;
  --at-chart-track: rgba(0,0,0,0.05);
  --at-chart-label: #8a8d93;
  --at-chart-polygon-stroke: #e8e8e8;
  --at-chart-polygon-fill-1: #f8f8f8;
  --at-chart-polygon-fill-2: #fff;
  --at-slider-handle-bg: #fff;
  --at-modal-border: rgba(0,0,0,0.06);
  --at-info-row-border: rgba(0,0,0,0.04);
  --at-filter-strip-bg: rgba(var(--user-primary-rgb), 0.03);
  --at-detail-item-bg: rgba(var(--user-primary-rgb), 0.03);
  --at-placeholder-color: #b0b0b8;
}

[data-bs-theme="dark"] {
  --nimrod-gold: var(--user-primary);
  --nimrod-bronze: var(--user-primary-dark);
  --nimrod-amber: #F0A94B;
  --nimrod-parchment: #1E1B18;
  --nimrod-clay: #F5F1EC;
  --nimrod-sky: #0B0D10;
  --at-card-hover-shadow: 0 12px 32px rgba(0,0,0,0.3);
  --at-hover-bg: rgba(var(--user-primary-rgb), 0.06);
  --at-subtle-bg: rgba(255,255,255,0.05);
  --at-subtle-border: rgba(255,255,255,0.08);
  --at-chart-grid: rgba(255,255,255,0.1);
  --at-chart-text: #b4b7bd;
  --at-chart-marker-stroke: #2b2c40;
  --at-chart-track: rgba(255,255,255,0.08);
  --at-chart-label: #a8aaae;
  --at-chart-polygon-stroke: rgba(255,255,255,0.12);
  --at-chart-polygon-fill-1: rgba(255,255,255,0.03);
  --at-chart-polygon-fill-2: transparent;
  --at-slider-handle-bg: #2b2c40;
  --at-modal-border: rgba(255,255,255,0.08);
  --at-info-row-border: rgba(255,255,255,0.06);
  --at-filter-strip-bg: rgba(var(--user-primary-rgb), 0.08);
  --at-detail-item-bg: rgba(var(--user-primary-rgb), 0.08);
  --at-placeholder-color: #6e6e7a;
}

/* ============================================================
   3) SEMANTIC — طبقة --n-* الدلالية (إضافية؛ تشير إلى طبقة COMPAT)
   الشيفرة الجديدة تستعمل هذه الأسماء حصراً. تتبع الثيم تلقائياً
   لأنها وسائط غير مباشرة (var) نحو رموز مُعرّفة لكل ثيم.
   ============================================================ */
:root,
[data-bs-theme="light"],
[data-bs-theme="dark"] {
  /* اللون العلامي (accent) — نقطة تخصيص المستخدم الوحيدة */
  --n-accent:        var(--user-primary);
  --n-accent-rgb:    var(--user-primary-rgb);
  --n-accent-strong: var(--user-primary-dark);
  --n-accent-soft:   var(--fc-coral-soft);

  /* الأسطح */
  --n-bg:        var(--fc-cream);        /* خلفية التطبيق */
  --n-bg-soft:   var(--fc-cream-soft);
  --n-bg-sunken: var(--fc-cream-2);
  --n-surface:   var(--fc-surface);      /* البطاقات */

  /* النص */
  --n-text:       var(--fc-ink);
  --n-text-soft:  var(--fc-ink-soft);
  --n-text-muted: var(--fc-muted);

  /* الحدود */
  --n-border:        var(--fc-line);         /* خطوط شعرية */
  --n-border-strong: var(--bs-border-color); /* حدود واضحة */

  /* أنصاف الأقطار والظلال — أسماء دلالية فوق مقياس fc */
  --n-radius-card: var(--fc-radius-md);
  --n-shadow:      var(--fc-shadow-soft);
  --n-shadow-hover: var(--fc-shadow-hover);

  /* ألوان الحالة (من Bootstrap — مصدرها vendor/core.css) */
  --n-success: var(--bs-success);
  --n-danger:  var(--bs-danger);
  --n-warning: var(--bs-warning);
  --n-info:    var(--bs-info);
}
