/* ═══════════════════════════════════════════════════════════════
   core.css   — Non‑color design tokens
   Never changes between themes. Cached forever.
   ═══════════════════════════════════════════════════════════════ */
:root {
  /* Layout */
  --header-height: 70px;

  /* Typography */
  --font-body: 'Vazirmatn', 'Noto Naskh Arabic', sans-serif;
  --font-display: 'Noto Naskh Arabic', 'Vazirmatn', serif;
  --letter-space: 0.3px;

  /* Motion */
  --transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-bounce: 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);

  /* Border Radius */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  /* Spacing Scale */
  --space-3xl: 48px;
  --space-2xl: 40px;
  --space-xl: 32px;
  --space-lg: 24px;
  --space-md: 16px;
  --space-sm: 12px;
  --space-xs: 8px;
  --space-2xs: 4px;
}

/* ── Floating toggle (base layout — no theme colors) ── */
.dark-mode-floating {
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 9999;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--transition-bounce);
}
.dark-mode-floating:hover { transform: scale(1.1); }
.dark-mode-floating:active { transform: scale(0.95); }
