/* ============================================================
   PosBiz Cloud — Design tokens
   Derived from the approved brand guidelines board (purple master).
   Three layers: primitives → semantic → component. (UX-001)
   ============================================================ */

:root {
  /* ---- Brand primitives (logo-derived) ---- */
  --brand-50:#FAF3F8; --brand-100:#F2DDEA; --brand-200:#E5BED6; --brand-300:#D492BC;
  --brand-400:#C769A7; --brand-500:#A3478B; --brand-600:#8E3D78; --brand-700:#753262;
  --brand-800:#5C274E; --brand-900:#3F1B36; --brand-950:#271124;

  /* Logo primary (muted deep purple) for structural accents */
  --logo-primary:#875A7B;

  /* Signature gradients */
  --grad-primary: linear-gradient(90deg,#875A7B,#C769A7);
  --grad-dark: linear-gradient(135deg,#6A2E64,#A3478B);

  /* ---- Neutral primitives ---- */
  --ink-950:#17121A; --ink-900:#1E1824; --ink-800:#2A2331; --ink-700:#3A3140;
  --ink-600:#524858; --ink-500:#6B6272; --ink-400:#8F8799; --ink-300:#A8A1B0;
  --ink-200:#CCC7D2; --ink-100:#E9E6ED; --ink-50:#F4F2F7; --white:#FFFFFF;

  /* ---- Semantic (light theme) ---- */
  --bg:#F7F5F9;
  --surface:#FFFFFF;
  --surface-2:#F4F2F7;
  --surface-3:#EDEAF1;
  --border:#E4E0EA;
  --border-strong:#D2CCDA;
  --text:#221B2A;
  --text-muted:#6B6272;
  --text-faint:#9A93A5;

  --accent:var(--brand-500);
  --accent-strong:var(--brand-600);
  --accent-soft:var(--brand-100);
  --accent-contrast:#FFFFFF;
  --ring:rgba(163,71,139,.35);
  --focus-ring:0 0 0 3px var(--ring);

  --success:#178A5E; --success-soft:#E1F4EC; --success-text:#116B49;
  --warning:#9A6A08; --warning-soft:#FBF1DC; --warning-text:#7A5306;
  --danger:#C43A4C; --danger-soft:#FAE7EA; --danger-text:#A62C3D;
  --info:#4B56C0; --info-soft:#E9EAFB; --info-text:#3A44A0;

  /* ---- Layout ---- */
  --radius-s:8px; --radius:12px; --radius-l:16px; --radius-pill:999px;
  --shadow-1:0 1px 2px rgba(23,18,26,.05),0 1px 6px rgba(23,18,26,.04);
  --shadow-2:0 4px 16px rgba(23,18,26,.08),0 1px 3px rgba(23,18,26,.05);
  --shadow-3:0 16px 48px rgba(23,18,26,.16);
  --nav-w:256px; --nav-w-collapsed:68px; --topbar-h:56px;

  /* ---- Type ---- */
  --font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
  --font-ar:'Noto Sans Arabic','Inter',Tahoma,sans-serif;

  /* ---- Motion (120–200ms, purposeful) ---- */
  --t-fast:120ms; --t-med:180ms; --ease:cubic-bezier(.4,0,.2,1);
}

/* ---- Dark theme (dashboard / dark mode from brand board) ---- */
[data-theme="dark"] {
  --bg:#131017;
  --surface:#1B1622;
  --surface-2:#221B2B;
  --surface-3:#2A2236;
  --border:#332A40;
  --border-strong:#453A54;
  --text:#F2EEF6;
  --text-muted:#B4ACBF;
  --text-faint:#857C96;
  --accent:var(--brand-400);
  --accent-strong:var(--brand-300);
  --accent-soft:rgba(199,105,167,.14);
  --accent-contrast:#1C1220;
  --ring:rgba(199,105,167,.4);
  --shadow-1:0 1px 2px rgba(0,0,0,.3);
  --shadow-2:0 4px 16px rgba(0,0,0,.35);
  --shadow-3:0 16px 48px rgba(0,0,0,.5);
  --success:#3DBE8C; --success-soft:rgba(61,190,140,.14);
  --warning:#E2A93B; --warning-soft:rgba(226,169,59,.14);
  --danger:#E86A7C; --danger-soft:rgba(232,106,124,.14);
  --info:#8A94E8; --info-soft:rgba(138,148,232,.14);
}

[dir="rtl"] { --font: var(--font-ar); }

/* Compact density option for dense tables (accounting/inventory/reports) */
[data-density="compact"] { --row-h:36px; }
:root { --row-h:44px; }
