/**
 * Design Tokens
 * Fonte unica de verdade do design system.
 * Este arquivo deve conter apenas custom properties.
 */

:root {
  /* Core color scale: primary */
  --od-color-primary-50: #eff5ff;
  --od-color-primary-100: #dce9ff;
  --od-color-primary-200: #b9d2ff;
  --od-color-primary-300: #8eb4ff;
  --od-color-primary-400: #5e92ff;
  --od-color-primary-500: #2f6bff;
  --od-color-primary-600: #2457d4;
  --od-color-primary-700: #1b3f8b;
  --od-color-primary-800: #16346f;
  --od-color-primary-900: #10264d;

  /* Core color scale: neutrals */
  --od-color-neutral-0: #ffffff;
  --od-color-neutral-50: #f8fafc;
  --od-color-neutral-100: #f1f5f9;
  --od-color-neutral-200: #e2e8f0;
  --od-color-neutral-300: #cbd5e1;
  --od-color-neutral-400: #94a3b8;
  --od-color-neutral-500: #64748b;
  --od-color-neutral-600: #475569;
  --od-color-neutral-700: #334155;
  --od-color-neutral-800: #1f2937;
  --od-color-neutral-900: #0f172a;

  /* Semantic surfaces */
  --od-color-bg-page: #f5f7fb;
  --od-color-bg-surface: #ffffff;
  --od-color-bg-muted: #eef3ff;
  --od-color-bg-technical: #f8fbff;
  --od-color-text-strong: var(--od-color-neutral-900);
  --od-color-text-body: var(--od-color-neutral-800);
  --od-color-text-muted: var(--od-color-neutral-600);
  --od-color-text-inverse: #ffffff;
  --od-color-border-soft: rgba(15, 23, 42, 0.08);
  --od-color-border-strong: rgba(15, 23, 42, 0.14);
  --od-color-link: var(--od-color-primary-700);
  --od-color-link-hover: var(--od-color-primary-500);

  /* Feedback */
  --od-color-success-50: #ecfdf3;
  --od-color-success-500: #16a34a;
  --od-color-success-700: #166534;
  --od-color-warning-50: #fff7ed;
  --od-color-warning-500: #ea580c;
  --od-color-warning-700: #9a3412;
  --od-color-danger-50: #fef2f2;
  --od-color-danger-500: #dc2626;
  --od-color-danger-700: #991b1b;

  /* Typography */
  --od-font-family-base: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --od-font-family-heading: 'Sora', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --od-font-family-technical: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  --od-font-size-2xs: 0.75rem;
  --od-font-size-xs: 0.8125rem;
  --od-font-size-sm: 0.875rem;
  --od-font-size-md: 1rem;
  --od-font-size-lg: 1.125rem;
  --od-font-size-xl: 1.25rem;
  --od-font-size-2xl: 1.5rem;
  --od-font-size-3xl: 2rem;
  --od-font-size-4xl: 2.75rem;
  --od-font-size-5xl: 3.5rem;

  --od-font-weight-regular: 400;
  --od-font-weight-medium: 500;
  --od-font-weight-semibold: 600;
  --od-font-weight-bold: 700;
  --od-font-weight-extrabold: 800;

  --od-line-height-tight: 1.1;
  --od-line-height-snug: 1.25;
  --od-line-height-base: 1.6;
  --od-line-height-relaxed: 1.75;

  /* Spacing */
  --od-space-2xs: 4px;
  --od-space-xs: 8px;
  --od-space-sm: 12px;
  --od-space-md: 16px;
  --od-space-lg: 24px;
  --od-space-xl: 32px;
  --od-space-2xl: 48px;
  --od-space-3xl: 64px;
  --od-space-4xl: 80px;
  --od-space-5xl: 96px;

  /* Density presets */
  --od-space-section: var(--od-space-4xl);
  --od-space-section-dense: var(--od-space-2xl);
  --od-space-card: var(--od-space-xl);
  --od-space-card-dense: var(--od-space-lg);
  --od-font-size-body-technical: 0.9375rem;

  /* Layout */
  --od-container-max-width: 1200px;
  --od-container-wide-width: 1280px;
  --od-container-narrow-width: 960px;
  --od-grid-gap: 32px;
  --od-grid-gap-dense: 20px;
  --od-header-height: 80px;

  /* Radius */
  --od-radius-xs: 6px;
  --od-radius-sm: 8px;
  --od-radius-md: 12px;
  --od-radius-lg: 18px;
  --od-radius-xl: 28px;
  --od-radius-pill: 999px;
  --od-radius-asym-sm: 0 0 12px 0;
  --od-radius-asym-md: 0 0 18px 0;
  --od-radius-asym-lg: 0 0 24px 0;
  --od-radius-asym-xl: 0 0 32px 0;

  /* Shadows */
  --od-shadow-sm: 0 6px 18px rgba(15, 23, 42, 0.06);
  --od-shadow-md: 0 12px 28px rgba(15, 23, 42, 0.1);
  --od-shadow-lg: 0 20px 44px rgba(15, 23, 42, 0.14);

  /* Motion */
  --od-duration-fast: 180ms;
  --od-duration-normal: 320ms;
  --od-duration-slow: 560ms;
  --od-easing-standard: cubic-bezier(0.22, 1, 0.36, 1);

  /* Breakpoints: reference tokens */
  --od-breakpoint-sm: 640px;
  --od-breakpoint-md: 768px;
  --od-breakpoint-lg: 1024px;
  --od-breakpoint-xl: 1280px;
  --od-breakpoint-2xl: 1440px;

  /* Compatibility aliases for current codebase */
  --color-primary-500: var(--od-color-primary-700);
  --color-primary-600: var(--od-color-primary-800);
  --color-primary-700: var(--od-color-primary-900);
  --color-accent-500: var(--od-color-primary-500);
  --color-neutral-0: var(--od-color-neutral-0);
  --color-neutral-50: var(--od-color-neutral-50);
  --color-neutral-100: var(--od-color-neutral-100);
  --color-neutral-200: var(--od-color-neutral-200);
  --color-neutral-300: var(--od-color-neutral-300);
  --color-neutral-400: var(--od-color-neutral-400);
  --color-neutral-500: var(--od-color-neutral-500);
  --color-neutral-600: var(--od-color-neutral-600);
  --color-neutral-700: var(--od-color-neutral-700);
  --color-neutral-800: var(--od-color-neutral-800);
  --color-neutral-900: var(--od-color-neutral-900);
  --color-success: var(--od-color-success-500);
  --color-warning: var(--od-color-warning-500);
  --color-danger: var(--od-color-danger-500);
  --font-family-heading: var(--od-font-family-heading);
  --font-family-sans: var(--od-font-family-base);
  --font-size-xs: var(--od-font-size-2xs);
  --font-size-sm: var(--od-font-size-sm);
  --font-size-base: var(--od-font-size-md);
  --font-size-lg: var(--od-font-size-lg);
  --font-size-xl: var(--od-font-size-xl);
  --font-size-2xl: var(--od-font-size-2xl);
  --font-size-3xl: var(--od-font-size-3xl);
  --font-size-4xl: var(--od-font-size-4xl);
  --font-size-5xl: var(--od-font-size-5xl);
  --font-size-6xl: calc(var(--od-font-size-5xl) + 1rem);
  --font-weight-regular: var(--od-font-weight-regular);
  --font-weight-medium: var(--od-font-weight-medium);
  --font-weight-semibold: var(--od-font-weight-semibold);
  --font-weight-bold: var(--od-font-weight-bold);
  --font-weight-extrabold: var(--od-font-weight-extrabold);
  --line-height-tight: var(--od-line-height-tight);
  --line-height-normal: var(--od-line-height-base);
  --line-height-relaxed: var(--od-line-height-relaxed);
  --space-1: var(--od-space-2xs);
  --space-2: var(--od-space-xs);
  --space-3: var(--od-space-sm);
  --space-4: var(--od-space-md);
  --space-5: var(--od-space-lg);
  --space-6: var(--od-space-xl);
  --space-7: calc(var(--od-space-xl) + 8px);
  --space-8: var(--od-space-2xl);
  --space-9: var(--od-space-3xl);
  --space-10: var(--od-space-4xl);
  --space-11: var(--od-space-5xl);
  --radius-none: 0px;
  --radius-sm: var(--od-radius-xs);
  --radius-md: var(--od-radius-sm);
  --radius-lg: var(--od-radius-md);
  --shadow-sm: var(--od-shadow-sm);
  --shadow-md: var(--od-shadow-md);
  --shadow-lg: var(--od-shadow-lg);
  --grid-max-width: var(--od-container-max-width);
  --grid-columns: 12;
  --grid-gutter: var(--od-grid-gap);
  --container-padding: var(--od-space-lg);
  --header-height: var(--od-header-height);
  --duration-fast: var(--od-duration-fast);
  --duration-normal: var(--od-duration-normal);
  --duration-slow: var(--od-duration-slow);
  --easing: var(--od-easing-standard);
}
