/* Capps Accounting — Color System
   Brand palette from the Brand & Design Sheet (rev. 2026.07).
   The signature gradient runs PINK → VIOLET → BLUE. */
:root {
  /* ── Brand core ──────────────────────────────── */
  --capps-pink:   #E01783;
  --capps-violet: #7C1FD6;
  --capps-blue:   #0092C9;
  --capps-cyan:   #00E5FF;   /* the terminal cursor accent */
  --capps-ink:    #1B1330;   /* deep violet-black (reversed surfaces) */
  --capps-black:  #14141F;   /* near-black ink */

  /* ── Signature gradients ─────────────────────── */
  --grad-brand:  linear-gradient(135deg, #E01783 0%, #7C1FD6 52%, #0092C9 100%); /* @kind color */
  --grad-bracket: linear-gradient(180deg, #E01783 0%, #7C1FD6 50%, #0092C9 100%); /* @kind color */
  --grad-glow:   radial-gradient(120% 120% at 50% 0%, rgba(124,31,214,0.28) 0%, rgba(20,20,31,0) 60%); /* @kind color */

  /* ── Neutral ramp (cool, violet-tinted) ──────── */
  --c-950: #14141F;
  --c-900: #1B1330;
  --c-800: #262036;
  --c-700: #34304A;
  --c-600: #4E4A63;
  --c-500: #6F6B85;
  --c-400: #9490A8;
  --c-300: #BDB9CC;
  --c-200: #DEDCE7;
  --c-150: #EAE9F1;
  --c-100: #F2F1F7;
  --c-50:  #FAFAFC;
  --white: #FFFFFF;

  /* ── Semantic: text ──────────────────────────── */
  --text-primary:   var(--c-950);
  --text-secondary: var(--c-600);
  --text-muted:     var(--c-500);
  --text-inverse:   #FFFFFF;
  --text-accent:    var(--capps-violet);
  --text-link:      var(--capps-violet);
  --text-link-hover:#5A13A0;

  /* ── Semantic: surface ───────────────────────── */
  --surface-page:    #FFFFFF;
  --surface-card:    #FFFFFF;
  --surface-sunken:  var(--c-50);
  --surface-raised:  #FFFFFF;
  --surface-inverse: var(--capps-ink);
  --surface-accent-soft: #F6EEFC;

  /* ── Semantic: border ────────────────────────── */
  --border-subtle:  var(--c-150);
  --border-default: var(--c-200);
  --border-strong:  var(--c-400);
  --border-ink:     var(--c-950);

  /* ── Semantic: interactive accent ────────────── */
  --accent:        var(--capps-violet);
  --accent-hover:  #6A17BC;
  --accent-press:  #5A13A0;
  --accent-soft:   #F6EEFC;
  --focus-ring:    var(--capps-blue);

  /* ── Semantic: status ────────────────────────── */
  --status-pass:    #12805C;
  --status-pass-soft:#E4F5EE;
  --status-warn:    #B26B00;
  --status-warn-soft:#FBEFD9;
  --status-fail:    #C22850;
  --status-fail-soft:#FBE7EC;
  --status-info:    var(--capps-blue);
  --status-info-soft:#E1F3FA;
}

/* ── Reversed / dark theme (on-dark surfaces) ──── */
[data-theme="dark"] {
  --text-primary:   #F4F3F8;
  --text-secondary: var(--c-300);
  --text-muted:     var(--c-400);
  --text-inverse:   var(--c-950);
  --text-accent:    var(--capps-cyan);
  --text-link:      var(--capps-cyan);
  --text-link-hover:#7CF0FF;

  --surface-page:    var(--capps-black);
  --surface-card:    var(--capps-ink);
  --surface-sunken:  #100F19;
  --surface-raised:  #241C3B;
  --surface-inverse: #FFFFFF;
  --surface-accent-soft: rgba(124,31,214,0.18);

  --border-subtle:  rgba(255,255,255,0.07);
  --border-default: rgba(255,255,255,0.12);
  --border-strong:  rgba(255,255,255,0.24);
  --border-ink:     #FFFFFF;

  --accent:       var(--capps-cyan);
  --accent-hover: #4CEBFF;
  --accent-press: #00C2D9;
  --accent-soft:  rgba(0,229,255,0.14);
  --focus-ring:   var(--capps-cyan);

  --status-pass-soft: rgba(18,128,92,0.22);
  --status-warn-soft: rgba(178,107,0,0.22);
  --status-fail-soft: rgba(194,40,80,0.22);
  --status-info-soft: rgba(0,146,201,0.22);
}
