/* ============================================================
   Vime Digital — Color tokens
   Brand palette extracted from the official logo + elements art:
     Purple   #5C13E6   (primary)
     Magenta  #AA00FF   (gradient partner / energy)
     Lime     #C3F85F   (accent / spark)
     Off-white#F8F8F8   (page)
     Black    #000000 / White #FFFFFF
   ============================================================ */
:root {
  /* ---- Brand: Purple ---- */
  --vime-purple-50:  #F4EFFE;
  --vime-purple-100: #E8DEFD;
  --vime-purple-200: #CDB6F9;
  --vime-purple-300: #AC86F3;
  --vime-purple-400: #8A52EE;
  --vime-purple-500: #6E26E9;
  --vime-purple-600: #5C13E6;   /* core brand */
  --vime-purple-700: #4A0FBA;
  --vime-purple-800: #380C8C;
  --vime-purple-900: #260A5E;

  /* ---- Brand: Magenta (gradient partner) ---- */
  --vime-magenta:    #AA00FF;
  --vime-magenta-600:#9500DE;

  /* ---- Brand: Lime ---- */
  --vime-lime-50:  #F4FDE6;
  --vime-lime-100: #EAFBCB;
  --vime-lime-300: #D6F995;
  --vime-lime:     #C3F85F;   /* core accent */
  --vime-lime-600: #A6E232;   /* lime that reads on white */
  --vime-lime-700: #7FB317;

  /* ---- Neutrals (slightly violet-cool ink) ---- */
  --white:    #FFFFFF;
  --off-white:#F8F8F8;
  --gray-50:  #F4F4F6;
  --gray-100: #EAEAEE;
  --gray-200: #D9D8E0;
  --gray-300: #BFBECB;
  --gray-400: #9B99AC;
  --gray-500: #76748A;
  --gray-600: #565468;
  --gray-700: #3D3B4C;
  --gray-800: #262534;
  --gray-900: #15141F;
  --ink:      #0C0B14;
  --black:    #000000;

  /* ---- Signature gradient ---- */
  --vime-gradient: linear-gradient(110deg, #5C13E6 0%, #8A14F0 45%, #AA00FF 100%); /* @kind color */
  --vime-gradient-soft: linear-gradient(135deg, #6E26E9 0%, #AA00FF 100%); /* @kind color */

  /* ---- Semantic: surfaces ---- */
  --surface-page:    var(--off-white);
  --surface-card:    var(--white);
  --surface-raised:  var(--white);
  --surface-sunken:  var(--gray-50);
  --surface-inverse: var(--ink);
  --surface-brand:   var(--vime-purple-600);
  --surface-accent:  var(--vime-lime);

  /* ---- Semantic: text ---- */
  --text-primary:   var(--ink);
  --text-secondary: var(--gray-600);
  --text-muted:     var(--gray-400);
  --text-inverse:   var(--white);
  --text-on-brand:  var(--white);
  --text-on-accent: var(--ink);
  --text-link:      var(--vime-purple-600);

  /* ---- Semantic: borders ---- */
  --border-subtle:  var(--gray-100);
  --border-default: var(--gray-200);
  --border-strong:  var(--gray-300);
  --border-brand:   var(--vime-purple-600);

  /* ---- Semantic: brand actions ---- */
  --brand:          var(--vime-purple-600);
  --brand-hover:    var(--vime-purple-700);
  --brand-active:   var(--vime-purple-800);
  --brand-contrast: var(--white);
  --accent:         var(--vime-lime);
  --accent-hover:   var(--vime-lime-300);
  --accent-contrast:var(--ink);

  /* ---- Focus ---- */
  --focus-ring: 0 0 0 3px rgba(92, 19, 230, 0.35);

  /* ---- Status ---- */
  --success:      #18A957;
  --success-soft: #E4F7EC;
  --warning:      #E8920C;
  --warning-soft: #FCF1DD;
  --danger:       #E5484D;
  --danger-soft:  #FBE7E8;
  --info:         var(--vime-purple-500);
  --info-soft:    var(--vime-purple-50);
}
