/* ========== Tejarat Novin — Design Tokens ========== */
@import url('https://fonts.googleapis.com/css2?family=Vazirmatn:wght@300;400;500;600;700;800;900&display=swap');

:root {
  --bg: #08030f;
  --bg-soft: #0e0620;
  --surface: #150930;
  --surface-2: #1d0f40;
  --surface-3: #281458;
  --border: rgba(168, 140, 255, 0.12);
  --border-strong: rgba(168, 140, 255, 0.22);
  --text: #f4f1ff;
  --text-muted: #b3a8d4;
  --text-dim: #7a6da0;

  --violet: #8b5cf6;
  --violet-strong: #7c3aed;
  --violet-soft: #a78bfa;
  --magenta: #d946ef;
  --indigo: #6366f1;
  --cyan: #22d3ee;
  --pink: #f0abfc;

  --grad-1: linear-gradient(135deg, #a78bfa 0%, #d946ef 50%, #f0abfc 100%);
  --grad-2: linear-gradient(135deg, #22d3ee 0%, #a78bfa 50%, #d946ef 100%);
  --grad-3: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);

  --radius-sm: 10px;
  --radius: 16px;
  --radius-lg: 24px;
  --radius-xl: 32px;

  --shadow-glow: 0 0 80px -20px rgba(139, 92, 246, 0.5);
  --shadow-card: 0 20px 60px -20px rgba(0, 0, 0, 0.6), 0 0 0 1px var(--border);

  --container: 1280px;
  --header-h: 72px;

  --font-fa: 'Vazirmatn', system-ui, sans-serif;
  --font-mono: 'Vazirmatn', monospace;

  --ease: cubic-bezier(.22, 1, .36, 1);
  --ease-out: cubic-bezier(.16, 1, .3, 1);
}

[data-theme="light"] {
  --bg: #fafaff;
  --bg-soft: #f3f0fc;
  --surface: #ffffff;
  --surface-2: #f8f5ff;
  --surface-3: #ece5fa;
  --border: rgba(45, 18, 95, 0.08);
  --border-strong: rgba(45, 18, 95, 0.18);
  --text: #14082b;
  --text-muted: #4a3d72;
  --text-dim: #7e74a3;
  --shadow-glow: 0 0 80px -20px rgba(139, 92, 246, 0.35);
  --shadow-card: 0 20px 60px -30px rgba(45, 18, 95, 0.25), 0 0 0 1px var(--border);
}

/* ===== Base ===== */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html, body {
  margin: 0; padding: 0;
  background: var(--bg);
  color: var(--text);
  font-family: var(--font-fa);
  direction: rtl;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overflow-x: clip;
  transition: background .5s var(--ease), color .5s var(--ease);
}
body { font-size: 17px; line-height: 1.7; }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; border: 0; background: 0; color: inherit; }
img { max-width: 100%; display: block; }
h1, h2, h3, h4, h5 { margin: 0; line-height: 1.15; font-weight: 700; letter-spacing: -0.01em; }
::selection { background: var(--violet); color: white; }
p { margin: 0 0 1em; }
