/**
 * variables.css
 * Design tokens for the Neonika.id design system.
 * Dominant white surfaces, a single confident blue accent, soft shadows,
 * thin borders — refined enterprise-SaaS aesthetic.
 */

:root {
  /* --- Color: neutrals -------------------------------------------- */
  --color-white: #ffffff;
  --color-surface: #ffffff;
  --color-surface-alt: #f7f9fc;
  --color-surface-raised: #ffffff;
  --color-border: #e6eaf2;
  --color-border-strong: #d6dce8;

  --color-ink-900: #0b1220;
  --color-ink-800: #16213a;
  --color-ink-700: #29334a;
  --color-ink-600: #47516b;
  --color-ink-500: #6b7488;
  --color-ink-400: #9299ab;

  /* --- Color: brand accent (blue) ----------------------------------- */
  --color-accent-50: #eef4ff;
  --color-accent-100: #dce8ff;
  --color-accent-300: #7ea7ff;
  --color-accent-500: #2f6bff;
  --color-accent-600: #0b5fff;
  --color-accent-700: #0847c9;
  --color-accent-900: #072d80;

  --color-success: #17a673;
  --color-warning: #d68a1a;
  --color-danger: #e5484d;

  /* --- Gradients ----------------------------------------------------- */
  --gradient-accent: linear-gradient(135deg, var(--color-accent-600) 0%, var(--color-accent-900) 100%);
  --gradient-surface: linear-gradient(180deg, #ffffff 0%, #f5f8fd 100%);
  --gradient-hero-glow-1: radial-gradient(circle, rgba(11, 95, 255, 0.16) 0%, rgba(11, 95, 255, 0) 70%);
  --gradient-hero-glow-2: radial-gradient(circle, rgba(11, 95, 255, 0.10) 0%, rgba(11, 95, 255, 0) 70%);

  /* --- Typography ------------------------------------------------ */
  --font-display: 'Plus Jakarta Sans', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;

  --fs-xs: clamp(0.75rem, 0.72rem + 0.15vw, 0.8125rem);
  --fs-sm: clamp(0.8125rem, 0.79rem + 0.15vw, 0.875rem);
  --fs-base: clamp(0.9375rem, 0.91rem + 0.2vw, 1rem);
  --fs-md: clamp(1.05rem, 1rem + 0.3vw, 1.15rem);
  --fs-lg: clamp(1.2rem, 1.1rem + 0.5vw, 1.4rem);
  --fs-xl: clamp(1.5rem, 1.3rem + 1vw, 1.85rem);
  --fs-2xl: clamp(1.9rem, 1.6rem + 1.6vw, 2.5rem);
  --fs-3xl: clamp(2.3rem, 1.8rem + 2.6vw, 3.4rem);
  --fs-hero: clamp(2.4rem, 1.7rem + 3.6vw, 4.2rem);

  --lh-tight: 1.15;
  --lh-snug: 1.35;
  --lh-normal: 1.6;
  --lh-relaxed: 1.75;

  /* --- Spacing scale ----------------------------------------------- */
  --space-3xs: 0.25rem;
  --space-2xs: 0.5rem;
  --space-xs: 0.75rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2rem;
  --space-xl: 3rem;
  --space-2xl: 4.5rem;
  --space-3xl: 6.5rem;

  /* --- Radius -------------------------------------------------------- */
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-full: 999px;

  /* --- Shadows (very soft, matches "premium/minimal" brief) ----------- */
  --shadow-xs: 0 1px 2px rgba(16, 24, 40, 0.04);
  --shadow-sm: 0 2px 8px rgba(16, 24, 40, 0.06);
  --shadow-md: 0 8px 24px rgba(16, 24, 40, 0.08);
  --shadow-lg: 0 16px 48px rgba(16, 24, 40, 0.10);
  --shadow-accent: 0 12px 28px rgba(11, 95, 255, 0.22);

  /* --- Motion --------------------------------------------------- */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --duration-fast: 160ms;
  --duration-base: 280ms;
  --duration-slow: 520ms;

  /* --- Layout ------------------------------------------------------- */
  --container-max: 1200px;
  --container-pad: clamp(1.25rem, 4vw, 2.5rem);
  --header-height: 76px;
}
