/* Baseline tokens; visual.css layers the proposed identity over these compatibility roles. */
:root{
  --palette-white:#fff;--palette-admin-ink:#14253c;--palette-admin-muted:#52657c;
  --palette-admin-line:#dfe6ee;--palette-admin-bg:#f3f6fa;--palette-admin-sidebar:#10243b;
  --palette-action:#245ac2;--palette-control-line:#bbc8d8;
  --palette-store-ink:#f4f6ff;--palette-store-muted:#a7b5cc;--palette-store-border:#29334b;
  --palette-store-bg:#0b1020;--palette-store-focus:#a8c4ff;
  --color-control-border:var(--palette-control-line);--color-surface-light:var(--palette-white);
  --color-admin-focus:#81aaff;--color-store-focus:var(--palette-store-focus);
  --font-fa:Estedad,Inter,sans-serif;--font-en:Inter,Estedad,sans-serif;
  --font-body-size:15px;--line-height-fa:1.85;--line-height-en:1.65;
  --radius-control:9px;--touch-target:44px;--motion-fast:.18s;
  /* Compatibility contract: brand.js writes --blue and --brand-color at root. */
  --ink:var(--palette-admin-ink);--muted:var(--palette-admin-muted);
  --line:var(--palette-admin-line);--blue:var(--palette-action);
  --bg:var(--palette-admin-bg);--sidebar:var(--palette-admin-sidebar);--radius:16px;
}
.store-page{
  --ink:var(--palette-store-ink);--muted:var(--palette-store-muted);
  --accent:#88aaff;--border:var(--palette-store-border);
}

:root {
  --font-manrope: Manrope, Vazirmatn, Arial, sans-serif;
  --font-vazirmatn: Vazirmatn, Manrope, Tahoma, sans-serif;
  --space-unit: 4px;
  --type-body: 14px;
  --type-label: 12px;
  --type-section: 16px;
  --type-hero: clamp(26px, 7.2vw, 32px);
}
