:root {
  /* Typography */
  --font-sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  --font-mono: 'SF Mono', 'Fira Code', 'Cascadia Code', Consolas, monospace;

  --text-xs: 0.75rem;
  --text-sm: 0.8125rem;
  --text-base: 0.875rem;
  --text-lg: 1rem;
  --text-xl: 1.25rem;
  --text-2xl: 1.5rem;
  --text-3xl: 2rem;

  /* Spacing */
  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  --sp-5: 1.25rem;
  --sp-6: 1.5rem;
  --sp-8: 2rem;
  --sp-10: 2.5rem;
  --sp-12: 3rem;
  --sp-16: 4rem;

  /* Radius */
  --r-sm: 4px;
  --r-md: 6px;
  --r-lg: 8px;
  --r-xl: 12px;

  /* Colors — Dark OS theme */
  --c-bg: #0f1117;
  --c-surface: #1a1d27;
  --c-surface-raised: #222636;
  --c-surface-overlay: #2a2e3f;
  --c-border: #2e3348;
  --c-border-subtle: #252939;

  --c-text: #e1e4ed;
  --c-text-muted: #8b90a5;
  --c-text-dim: #5c6178;

  --c-accent: #6c8cff;
  --c-accent-hover: #849dff;
  --c-accent-muted: rgba(108, 140, 255, 0.15);

  --c-success: #4ade80;
  --c-success-muted: rgba(74, 222, 128, 0.15);
  --c-warning: #fbbf24;
  --c-warning-muted: rgba(251, 191, 36, 0.15);
  --c-danger: #f87171;
  --c-danger-muted: rgba(248, 113, 113, 0.15);
  --c-info: #60a5fa;

  /* Stage colors */
  --c-stage-complete: var(--c-success);
  --c-stage-active: var(--c-accent);
  --c-stage-upcoming: var(--c-text-dim);
  --c-stage-skipped: var(--c-border);

  /* Lane colors */
  --c-lane-rapid: #f59e0b;
  --c-lane-standard: var(--c-accent);
  --c-lane-deep: #a78bfa;

  /* Role colors */
  --c-role-director: #f59e0b;
  --c-role-architect: #a78bfa;
  --c-role-executor: var(--c-accent);
  --c-role-verifier: var(--c-success);
  --c-role-closer: #f472b6;
  --c-role-evolution: #f472b6; /* backward compat — will be removed in V1 */

  /* OrchestrOS-core */
  --c-orchestros-core: #f59e0b;
  --c-orchestros-core-muted: rgba(245, 158, 11, 0.12);

  /* Shadows */
  --shadow-sm: 0 1px 2px rgba(0,0,0,0.3);
  --shadow-md: 0 2px 8px rgba(0,0,0,0.35);
  --shadow-lg: 0 4px 16px rgba(0,0,0,0.4);

  /* Transitions */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --duration-fast: 120ms;
  --duration-normal: 200ms;
  --duration-slow: 350ms;

  /* Layout */
  --nav-width: 220px;
  --header-height: 52px;
  --assistant-width: 320px;
  --assistant-collapsed-width: 48px;
  /* Backward compat aliases */
  --guidance-width: var(--assistant-width);
  --guidance-collapsed-width: var(--assistant-collapsed-width);

  /* Mobile / Touch */
  --touch-target-min: 44px;
  --font-input-mobile: 16px; /* prevents iOS auto-zoom on input focus */
}
