/* ============================================================
   APSYS — Color tokens
   Signature blue #0B21F4, secondary orange, coral + teal accents.
   Anthracite text, white + cool light-grey surfaces.
   ============================================================ */

:root {
  /* ---- Brand palette (base values) ---- */
  --apsys-blue:        #0B21F4;  /* signature — actions, active states */
  --apsys-blue-700:    #0819C2;  /* hover / pressed */
  --apsys-blue-600:    #2A3DF6;  /* lighter blue */
  --apsys-blue-100:    #E4E7FE;  /* tint surface */
  --apsys-blue-50:     #F1F2FE;  /* faint tint */

  --apsys-orange:      #FF6126;  /* secondary — warnings, highlights */
  --apsys-orange-700:  #E04E16;
  --apsys-orange-100:  #FFE6DC;
  --apsys-orange-50:   #FFF3EE;

  --apsys-coral:       #FF4C70;  /* tertiary — danger, overdue */
  --apsys-coral-700:   #E23357;
  --apsys-coral-100:   #FFE2E8;
  --apsys-coral-50:    #FFF1F4;

  --apsys-teal:        #01BA8F;  /* tertiary — success, complete */
  --apsys-teal-700:    #019473;
  --apsys-teal-100:    #D6F5EC;
  --apsys-teal-50:     #ECFAF6;

  /* ---- Neutrals (anthracite → white, cool cast) ---- */
  --ink-900: #0E1116;  /* near-black anthracite */
  --ink-800: #1A1F27;
  --ink-700: #2C333E;
  --ink-600: #4A525F;
  --ink-500: #6B7480;  /* muted text */
  --ink-400: #959CA8;
  --ink-300: #C4C9D1;  /* borders strong */
  --ink-200: #DFE2E8;  /* borders */
  --ink-150: #E9EBEF;  /* hairlines */
  --ink-100: #F1F3F6;  /* subtle fill */
  --ink-50:  #F7F8FA;  /* app background */
  --white:   #FFFFFF;

  /* ============================================================
     Semantic aliases — use these in components
     ============================================================ */

  /* Text */
  --text-strong:    var(--ink-900);
  --text-body:      var(--ink-800);
  --text-muted:     var(--ink-500);
  --text-subtle:    var(--ink-400);
  --text-on-accent: var(--white);
  --text-link:      var(--apsys-blue);

  /* Surfaces */
  --surface-app:        var(--ink-50);
  --surface-card:       var(--white);
  --surface-sunken:     var(--ink-100);
  --surface-hover:      var(--ink-100);
  --surface-selected:   var(--apsys-blue-50);
  --surface-inverse:    var(--ink-900);

  /* Borders */
  --border-subtle:  var(--ink-150);
  --border-default: var(--ink-200);
  --border-strong:  var(--ink-300);
  --border-focus:   var(--apsys-blue);

  /* Accent (primary action) */
  --accent:          var(--apsys-blue);
  --accent-hover:    var(--apsys-blue-700);
  --accent-tint:     var(--apsys-blue-50);
  --accent-tint-2:   var(--apsys-blue-100);

  /* ---- Status: data-app semantics ---- */
  /* Success / complete / "dossier complet" */
  --status-success-fg:   var(--apsys-teal-700);
  --status-success-bg:   var(--apsys-teal-50);
  --status-success-bd:   var(--apsys-teal-100);
  --status-success-dot:  var(--apsys-teal);

  /* Warning / pending / "en attente" */
  --status-warning-fg:   var(--apsys-orange-700);
  --status-warning-bg:   var(--apsys-orange-50);
  --status-warning-bd:   var(--apsys-orange-100);
  --status-warning-dot:  var(--apsys-orange);

  /* Danger / overdue / "documents manquants" */
  --status-danger-fg:    var(--apsys-coral-700);
  --status-danger-bg:    var(--apsys-coral-50);
  --status-danger-bd:    var(--apsys-coral-100);
  --status-danger-dot:   var(--apsys-coral);

  /* Info / active / in-progress */
  --status-info-fg:      var(--apsys-blue-700);
  --status-info-bg:      var(--apsys-blue-50);
  --status-info-bd:      var(--apsys-blue-100);
  --status-info-dot:     var(--apsys-blue);

  /* Neutral / draft / closed */
  --status-neutral-fg:   var(--ink-600);
  --status-neutral-bg:   var(--ink-100);
  --status-neutral-bd:   var(--ink-200);
  --status-neutral-dot:  var(--ink-400);
}
