/**
 * AqarOS Design Tokens — CSS Custom Properties
 * Source of truth: design-system/tokens/*.json
 * Import in Web (Host.cshtml) and Public Portal (globals.css)
 */

:root {
  /* ── Brand ── */
  --aqaros-brand-ink: #0B1120;
  --aqaros-brand-ink-soft: #151B2B;
  --aqaros-brand-signal: #4F46E5;
  --aqaros-brand-signal-hover: #4338CA;
  --aqaros-brand-signal-soft: #EEF2FF;
  --aqaros-brand-pulse: #0891B2;
  --aqaros-brand-pulse-hover: #0E7490;
  --aqaros-brand-pulse-soft: #ECFEFF;

  /* ── Semantic ── */
  --aqaros-color-success: #059669;
  --aqaros-color-success-soft: #ECFDF5;
  --aqaros-color-warning: #D97706;
  --aqaros-color-warning-soft: #FFFBEB;
  --aqaros-color-danger: #DC2626;
  --aqaros-color-danger-soft: #FEF2F2;
  --aqaros-color-info: #0284C7;
  --aqaros-color-info-soft: #F0F9FF;

  /* ── Light theme surfaces ── */
  --aqaros-bg: #F4F6F9;
  --aqaros-bg-muted: #EEF1F6;
  --aqaros-surface: #FFFFFF;
  --aqaros-surface-elevated: #FFFFFF;
  --aqaros-border: #E2E8F0;
  --aqaros-border-subtle: #EEF1F6;
  --aqaros-text: #0B1120;
  --aqaros-text-secondary: #64748B;
  --aqaros-text-muted: #94A3B8;
  --aqaros-text-disabled: #CBD5E1;
  --aqaros-hover: #F1F5F9;
  --aqaros-focus-ring: #4F46E5;

  /* ── Spacing (4px base) ── */
  --aqaros-space-xs: 4px;
  --aqaros-space-sm: 8px;
  --aqaros-space-md: 12px;
  --aqaros-space-base: 16px;
  --aqaros-space-lg: 24px;
  --aqaros-space-xl: 32px;
  --aqaros-space-2xl: 48px;
  --aqaros-space-3xl: 64px;

  /* ── Radii ── */
  --aqaros-radius-sm: 6px;
  --aqaros-radius-md: 10px;
  --aqaros-radius-lg: 14px;
  --aqaros-radius-xl: 20px;
  --aqaros-radius-full: 9999px;

  /* ── Typography ── */
  --aqaros-font-sans: Inter, system-ui, -apple-system, 'Segoe UI', sans-serif;
  --aqaros-font-arabic: 'Noto Sans Arabic', Inter, system-ui, sans-serif;
  --aqaros-font-mono: 'JetBrains Mono', 'SF Mono', Consolas, monospace;

  /* ── Shadows ── */
  --aqaros-shadow-xs: 0 1px 2px rgba(11, 17, 32, 0.04);
  --aqaros-shadow-sm: 0 1px 3px rgba(11, 17, 32, 0.06), 0 1px 2px rgba(11, 17, 32, 0.04);
  --aqaros-shadow-md: 0 4px 12px rgba(11, 17, 32, 0.06), 0 2px 4px rgba(11, 17, 32, 0.04);
  --aqaros-shadow-lg: 0 12px 24px rgba(11, 17, 32, 0.08), 0 4px 8px rgba(11, 17, 32, 0.04);
  --aqaros-shadow-xl: 0 20px 48px rgba(11, 17, 32, 0.12), 0 8px 16px rgba(11, 17, 32, 0.06);
  --aqaros-shadow-focus: 0 0 0 3px rgba(79, 70, 229, 0.25);

  /* ── Motion ── */
  --aqaros-transition-fast: 150ms cubic-bezier(0.22, 1, 0.36, 1);
  --aqaros-transition-base: 220ms cubic-bezier(0.22, 1, 0.36, 1);
  --aqaros-transition-slow: 350ms cubic-bezier(0.22, 1, 0.36, 1);

  /* ── Layout ── */
  --aqaros-appbar-height: 60px;
  --aqaros-drawer-width: 280px;
  --aqaros-content-max-width: 1480px;

  /* ── Charts ── */
  --aqaros-chart-1: #4F46E5;
  --aqaros-chart-2: #0891B2;
  --aqaros-chart-3: #059669;
  --aqaros-chart-4: #D97706;
  --aqaros-chart-5: #DC2626;

  /* Legacy aliases (Web app compatibility) */
  --aqaros-accent: var(--aqaros-brand-pulse);
  --aqaros-accent-soft: var(--aqaros-brand-pulse-soft);
  --aqaros-primary-soft: var(--aqaros-brand-signal-soft);
  --aqaros-spacing-xs: var(--aqaros-space-xs);
  --aqaros-spacing-sm: var(--aqaros-space-sm);
  --aqaros-spacing-md: var(--aqaros-space-base);
  --aqaros-spacing-lg: var(--aqaros-space-lg);
  --aqaros-spacing-xl: var(--aqaros-space-xl);
  --aqaros-spacing-2xl: var(--aqaros-space-2xl);
}

[data-theme="dark"],
.dark {
  --aqaros-bg: #0B1120;
  --aqaros-bg-muted: #111827;
  --aqaros-surface: #151B2B;
  --aqaros-surface-elevated: #1A2235;
  --aqaros-border: #2A3344;
  --aqaros-border-subtle: #1E2738;
  --aqaros-text: #F8FAFC;
  --aqaros-text-secondary: #94A3B8;
  --aqaros-text-muted: #64748B;
  --aqaros-text-disabled: #475569;
  --aqaros-hover: #1A2235;
  --aqaros-focus-ring: #818CF8;
  --aqaros-brand-signal-soft: rgba(79, 70, 229, 0.15);
  --aqaros-brand-pulse-soft: rgba(8, 145, 178, 0.15);
  --aqaros-color-success-soft: rgba(5, 150, 105, 0.15);
  --aqaros-color-warning-soft: rgba(217, 119, 6, 0.15);
  --aqaros-color-danger-soft: rgba(220, 38, 38, 0.15);
  --aqaros-color-info-soft: rgba(2, 132, 199, 0.15);
}
