/* Trovabando — Color tokens
   Calibrated to the official Brand Guidelines v2.6 (B.2.20 Palette cromatica,
   B.2.21 / C.1.01 Sfumature, B.3 Brand Architecture).
   Institutional colours: Blu #07577C and Verde #31B087.
   Gradients are always 2-colour: blue (pos 0) → one of the 5 base colours
   (pos 100), used horizontally or vertically. */

:root {
  /* ---- Brand core (institutional) ---- */
  --tb-blue:  #07577C;  /* Blu Trovabando — RGB 7/87/124. Always the gradient start. */
  --tb-green: #31B087;  /* Verde Trovabando — RGB 49/176/135. Primary accent. */

  /* The 5 base colours of the visual identity (gradient end-points / brand architecture) */
  --base-green:       #31B087;  /* Masterbrand */
  --base-sky:         #68ABDE;  /* Trovabando PROFESSIONAL */
  --base-violet:      #B77DB5;  /* Trovabando ADVISORY */
  --base-lime:        #C5CC73;  /* Trovabando MARKETPLACE */
  --base-red:         #B64C4B;  /* Trovabando OPEN */

  /* Secondary palette (lighter companions, B.2.20 second row) */
  --sec-coral:        #F29075;
  --sec-magenta:      #AE3376;
  --sec-yellow:       #FECC51;
  --sec-periwinkle:   #8591C5;

  /* Sub-brand symbol tints (alias) */
  --brand-professional: var(--base-sky);
  --brand-advisory:     var(--base-violet);
  --brand-marketplace:  var(--base-lime);
  --brand-open:         var(--base-red);

  /* Brand blue scale (around #07577C) */
  --blue-900: #042F44;
  --blue-800: #06435F;
  --blue-700: #074F6F;
  --blue-600: #07577C;   /* base */
  --blue-500: #1A6E94;
  --blue-400: #4A8FAE;
  --blue-300: #84B5CE;
  --blue-200: #B6D3E1;
  --blue-100: #DEEBF1;
  --blue-50:  #F0F6FA;

  /* Brand green scale (around #31B087) */
  --green-900: #114A38;
  --green-800: #1A6B51;
  --green-700: #218265;
  --green-600: #299A78;
  --green-500: #31B087;  /* base */
  --green-400: #5EC29D;
  --green-300: #88D2B6;
  --green-200: #B5E3D2;
  --green-100: #DCF2EA;
  --green-50:  #EFF9F5;

  /* ---- Neutrals (slightly petrol-tinted) ---- */
  --ink-900: #0C1E27;   /* near-black, primary text on light */
  --ink-700: #26383F;
  --ink-600: #43555B;   /* secondary text */
  --ink-500: #6D7D82;   /* muted text */
  --ink-400: #96A3A7;
  --ink-300: #C1CBCE;   /* borders strong */
  --ink-200: #DDE4E6;   /* borders / dividers */
  --ink-100: #ECF0F1;   /* hairlines, subtle fills */
  --ink-50:  #F4F8F9;   /* app background */
  --white:   #FFFFFF;

  /* ---- Semantic ---- */
  --success:     #31B087;
  --success-bg:  #DCF2EA;
  --warning:     #D99A2B;
  --warning-bg:  #FBF0DA;
  --danger:      #B64C4B;   /* brand red */
  --danger-bg:   #F6E0DF;
  --info:        #07577C;
  --info-bg:     #DEEBF1;

  /* ---- Semantic aliases (use these in product UI) ---- */
  --text-strong:    var(--ink-900);
  --text-body:      var(--ink-700);
  --text-muted:     var(--ink-500);
  --text-inverse:   var(--white);
  --text-on-brand:  var(--white);
  --text-link:      var(--green-700);

  --surface-page:   var(--ink-50);
  --surface-card:   var(--white);
  --surface-sunken: var(--ink-100);
  --surface-brand:  var(--tb-blue);
  --surface-accent: var(--green-50);

  --border-subtle:  var(--ink-200);
  --border-default: var(--ink-300);
  --border-strong:  var(--ink-600);
  --border-focus:   var(--green-500);

  --accent:         var(--green-500);
  --accent-strong:  var(--green-700);

  /* ---- Signature gradients (2-colour, blue → base) ---- */
  --gradient-brand: linear-gradient(90deg, var(--tb-blue) 0%, var(--tb-green) 100%);
  --gradient-brand-v: linear-gradient(180deg, var(--tb-blue) 0%, var(--tb-green) 100%); /* @kind color */
  --gradient-text: linear-gradient(90deg, var(--tb-blue) 0%, var(--tb-green) 100%); /* @kind color */
  /* Sub-brand gradients (blue → sub-brand base) */
  --gradient-professional: linear-gradient(90deg, var(--tb-blue) 0%, var(--base-sky) 100%); /* @kind color */
  --gradient-advisory:     linear-gradient(90deg, var(--tb-blue) 0%, var(--base-violet) 100%); /* @kind color */
  --gradient-marketplace:  linear-gradient(90deg, var(--tb-blue) 0%, var(--base-lime) 100%); /* @kind color */
  --gradient-open:         linear-gradient(90deg, var(--tb-blue) 0%, var(--base-red) 100%); /* @kind color */
  /* Protection scrim for text over photography / busy patterns */
  --scrim-bottom: linear-gradient(to top, rgba(6,30,40,0.80) 0%, rgba(6,30,40,0.30) 45%, rgba(6,30,40,0) 100%); /* @kind color */
}
