/* Design Tokens — Monument Valley palette */
/* Source of truth: config/design-system.json */

@layer tokens {
  :root {
    /* ---- Typography ---- */
    --font-display: 'Outfit', ui-rounded, 'Avenir Next', 'Segoe UI', sans-serif;
    --font-body: 'Nunito Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

    --text-2xs: 0.6875rem;
    --text-xs: 0.75rem;
    --text-sm: 0.875rem;
    --text-base: 1rem;
    --text-lg: 1.125rem;
    --text-xl: 1.375rem;
    --text-2xl: 1.75rem;
    --text-3xl: 2.25rem;
    --text-4xl: 3rem;
    --text-5xl: 4rem;

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

    --tracking-wide: 0.08em;
    --tracking-wider: 0.18em;

    /* ---- Monument Valley hues ----
       Each hue is a flat pastel with a light (top face),
       mid (right face) and deep (left face) variant. */
    --mv-sand:        #f2dfc4;
    --mv-sand-light:  #fbf0dd;
    --mv-sand-deep:   #d8bf9d;

    --mv-cream:       #fdf4e8;
    --mv-parchment:   #f6e8d5;

    --mv-coral:       #ec7a67;
    --mv-coral-light: #f79b86;
    --mv-coral-deep:  #c6584f;

    --mv-rose:        #e0899c;
    --mv-rose-light:  #efa8b6;
    --mv-rose-deep:   #b96076;

    --mv-crimson:     #c4506a;
    --mv-crimson-light:#d97186;
    --mv-crimson-deep:#9a3651;

    --mv-gold:        #f0bd5c;
    --mv-gold-light:  #fad687;
    --mv-gold-deep:   #cf9433;

    --mv-amber:       #e69248;
    --mv-amber-light: #f4ae6a;
    --mv-amber-deep:  #c06f2c;

    --mv-teal:        #5fbfae;
    --mv-teal-light:  #86d6c6;
    --mv-teal-deep:   #3d9689;

    --mv-sky:         #7fb0d8;
    --mv-sky-light:   #a3caea;
    --mv-sky-deep:    #5686b2;

    --mv-violet:      #9182bd;
    --mv-violet-light:#ada0d2;
    --mv-violet-deep: #6a5c96;

    --mv-indigo:      #56497f;
    --mv-indigo-light:#6f6199;
    --mv-indigo-deep: #3b3059;

    --mv-night:       #2c2545;
    --mv-ink:         #352f52;

    /* ---- Surfaces ---- */
    --sky-1: #fdf0e2;
    --sky-2: #f7dfd4;
    --sky-3: #e2c8dd;
    --sky-4: #c3aed6;

    --color-background: var(--sky-1);
    --color-surface: rgba(255, 252, 246, 0.72);
    --color-surface-solid: #fdf7ee;
    --color-border: rgba(86, 73, 127, 0.16);
    --color-border-strong: rgba(86, 73, 127, 0.3);

    --color-ink: #35304f;
    --color-ink-soft: #5c557d;
    --color-ink-faint: #8b83a8;
    --color-accent: var(--mv-crimson);
    --color-ring: var(--mv-violet);

    /* ---- Spacing ---- */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    --space-6: 2rem;
    --space-7: 3rem;
    --space-8: 4rem;
    --space-9: 6rem;

    /* ---- Radius ---- */
    --radius-sm: 0.375rem;
    --radius-md: 0.625rem;
    --radius-lg: 1rem;
    --radius-xl: 1.5rem;
    --radius-full: 9999px;

    /* ---- Elevation (soft, diffuse — never harsh) ---- */
    --shadow-sm: 0 1px 2px rgba(60, 44, 90, 0.06);
    --shadow-md: 0 6px 18px -6px rgba(60, 44, 90, 0.18);
    --shadow-lg: 0 18px 44px -14px rgba(60, 44, 90, 0.26);

    /* ---- Motion ---- */
    --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
    --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
    --transition-fast: 160ms var(--ease-out);
    --transition-normal: 320ms var(--ease-out);
    --transition-slow: 620ms var(--ease-out);

    /* ---- Layout ---- */
    --rail-width: 13rem;
    --content-width: 44rem;
  }

  @media (prefers-reduced-motion: reduce) {
    :root {
      --transition-fast: 1ms;
      --transition-normal: 1ms;
      --transition-slow: 1ms;
    }
  }
}
