/* ==========================================================================
   Ink & Gold — Color System
   Derivado do ícone do app CRM. Ouro é reservado a valor/conquista/CTA principal.
   ========================================================================== */

:root {
  /* --- Brand: Ink (primária) --- */
  --ink-50:  #F4F4F5;
  --ink-100: #E6E6E9;
  --ink-200: #D2D2D7;
  --ink-300: #BEBEC4;
  --ink-400: #8A8A90;
  --ink-500: #5A5A62;
  --ink-600: #45454F;
  --ink-700: #303039;
  --ink-800: #23232B; /* base */
  --ink-900: #1C1C22;
  --ink-950: #161619;

  /* --- Brand: Gold (acento — usar com parcimônia) --- */
  --gold-50:  #FDFAF3;
  --gold-100: #FAF3E6;
  --gold-200: #F4E5CB;
  --gold-300: #ECD3A5;
  --gold-400: #E0BC7C;
  --gold-500: #D5A957;
  --gold-600: #C99A46; /* base */
  --gold-700: #B4883A;
  --gold-800: #9A7530;
  --gold-900: #7A5B22;
  --gold-950: #5C4417;

  /* --- Neutros frios --- */
  --warm-surface: #FFFFFF;
  --warm-raised:  #F0F0F3;
  --warm-canvas:  #F4F4F6;
  --warm-border:  #E2E2E7;
  --warm-muted:   #C0C0C8;
  --warm-subtle:  #6B6B78;

  /* --- Semânticas --- */
  --success: #2FA36B;
  --warning: #E0912B;
  --error:   #D64545;
  --info:    #3B7BB0;

  /* ======================================================================
     Tokens semânticos — LIGHT (padrão)
     ====================================================================== */
  --bg:              var(--warm-canvas);
  --surface:         var(--warm-surface);
  --surface-raised:  var(--warm-raised);
  --border:          var(--warm-border);
  --text:            var(--ink-800);
  --text-secondary:  var(--ink-500);
  --text-subtle:     var(--warm-subtle);

  --accent:          var(--gold-600);
  --accent-contrast: var(--ink-800); /* Ink sobre ouro — branco sobre ouro falha (2.56:1) */
  --accent-text:     var(--gold-800); /* ouro legível como TEXTO sobre superfícies claras */

  --btn-primary-bg:   var(--ink-800);
  --btn-primary-text: #FFFFFF;
  --btn-secondary-bg: var(--warm-canvas);
  --btn-secondary-text: var(--ink-800);

  /* Status fill/text/border — light defaults */
  --fill-success: #F0F9F4; --text-success: #166B44; --border-success: #C8EAD8;
  --fill-warn:    #FAF5E8; --text-warn:    #7A5B22; --border-warn:    #EFD89A;
  --fill-danger:  #FAF0F0; --text-danger:  #9B2A2A; --border-danger:  #F2CACA;
  --fill-gold:    #FAF0CC; --text-gold:    #7A5B22; --border-gold:    #EFD89A;
  --fill-primary: #EEF3FF;
}

/* ======================================================================
   Tokens semânticos — DARK
   Aplique via [data-theme="dark"] ou .dark no elemento raiz.
   ====================================================================== */
@media (prefers-color-scheme: dark) {
  :root {
    /* Superfícies — progressão real de elevação por luminosidade */
    --bg:               #151517;
    --surface:          #1D1D21;
    --surface-raised:   #26262C;
    --surface-overlay:  #2F2F37; /* modais, dropdowns, popovers, tooltips */
    --border:           #34343C;
    --border-subtle:    #26262C; /* divisórias internas discretas */

    /* Texto — 3 degraus reais de contraste */
    --text:            #F2F1EC;
    --text-secondary:  #B4B4BC; /* subtítulos / texto de apoio */
    --text-muted:      #8A8A93; /* labels, metadados */
    --text-subtle:     #6B6B74; /* placeholders, captions */

    /* Acento de marca (dourado) */
    --accent:          #D9A94E;
    --accent-contrast: var(--ink-950);
    --accent-text:     #E0BC7C;

    /* Info — badge "Novo" e indicadores informativos não-urgentes */
    --info:            #7DA9E8;

    /* Focus ring — halo suave, não borda sólida */
    --focus-ring:      #E8C97A;

    --btn-primary-bg:   #F2F1EC;
    --btn-primary-text: var(--ink-950);
    --btn-secondary-bg: #34343C;
    --btn-secondary-text: #F2F1EC;

    --cz: #22C55E; --tm: #FBBF24; --el: #93C5FD;
    --cz-fg: #052e16; --tm-fg: #1C0F00; --el-fg: #0B1A3A;

    /* Tinta de fundo de negócio (6%) para escaneamento rápido em cards */
    --card-tint-cz: rgba(34,197,94,.06);
    --card-tint-tm: rgba(251,191,36,.06);
    --card-tint-el: rgba(147,197,253,.06);

    /* Warm tokens → dark equivalents */
    --warm-surface: #1D1D21;
    --warm-raised:  #26262C;
    --warm-canvas:  #151517;
    --warm-border:  #34343C;
    --warm-muted:   #4A4A54;
    --warm-subtle:  #6B6B74;

    /* Status fill/text/border tokens */
    --fill-success: rgba(47,163,107,.12);  --text-success: #4ADE80; --border-success: rgba(47,163,107,.3);
    --fill-warn:    rgba(224,145,43,.12);  --text-warn:    #F5B94A; --border-warn:    rgba(224,145,43,.3);
    --fill-danger:  rgba(214,69,69,.12);   --text-danger:  #F87171; --border-danger:  rgba(214,69,69,.3);
    --fill-gold:    rgba(217,169,78,.12);  --text-gold:    #F5B94A; --border-gold:    rgba(217,169,78,.3);
    --fill-primary: rgba(37,99,235,.14);

    /* Gold scale → versões dark */
    --gold-50:  rgba(209,169,78,.10);
    --gold-100: rgba(209,169,78,.16);
    --gold-300: rgba(209,169,78,.40);
    --gold-700: #E0BC7C;

    /* Ink scale — barra de performance em dark fica cinza médio */
    --ink-200: #3A3A42;
  }
}

[data-theme="dark"] {
  /* Superfícies — progressão real de elevação por luminosidade */
  --bg:               #151517;
  --surface:          #1D1D21;
  --surface-raised:   #26262C;
  --surface-overlay:  #2F2F37;
  --border:           #34343C;
  --border-subtle:    #26262C;

  /* Texto — 3 degraus reais de contraste */
  --text:            #F2F1EC;
  --text-secondary:  #B4B4BC;
  --text-muted:      #8A8A93;
  --text-subtle:     #6B6B74;

  /* Acento de marca */
  --accent:          #D9A94E;
  --accent-contrast: var(--ink-950);
  --accent-text:     #E0BC7C;

  --info:            #7DA9E8;
  --focus-ring:      #E8C97A;

  --btn-primary-bg:   #F2F1EC;
  --btn-primary-text: var(--ink-950);
  --btn-secondary-bg: #34343C;
  --btn-secondary-text: #F2F1EC;

  --cz: #22C55E; --tm: #FBBF24; --el: #93C5FD;
  --cz-fg: #052e16; --tm-fg: #1C0F00; --el-fg: #0B1A3A;

  --card-tint-cz: rgba(34,197,94,.06);
  --card-tint-tm: rgba(251,191,36,.06);
  --card-tint-el: rgba(147,197,253,.06);

  /* Warm tokens → dark equivalents */
  --warm-surface: #1D1D21;
  --warm-raised:  #26262C;
  --warm-canvas:  #151517;
  --warm-border:  #34343C;
  --warm-muted:   #4A4A54;
  --warm-subtle:  #6B6B74;

  /* Status fill/text/border tokens */
  --fill-success: rgba(47,163,107,.12);  --text-success: #4ADE80; --border-success: rgba(47,163,107,.3);
  --fill-warn:    rgba(224,145,43,.12);  --text-warn:    #F5B94A; --border-warn:    rgba(224,145,43,.3);
  --fill-danger:  rgba(214,69,69,.12);   --text-danger:  #F87171; --border-danger:  rgba(214,69,69,.3);
  --fill-gold:    rgba(217,169,78,.12);  --text-gold:    #F5B94A; --border-gold:    rgba(217,169,78,.3);
  --fill-primary: rgba(37,99,235,.14);

  --gold-50:  rgba(209,169,78,.10);
  --gold-100: rgba(209,169,78,.16);
  --gold-300: rgba(209,169,78,.40);
  --gold-700: #E0BC7C;

  --ink-200: #3A3A42;
}

[data-theme="light"] {
  /* Status fill/text/border tokens — light values */
  --fill-success: #F0F9F4; --text-success: #166B44; --border-success: #C8EAD8;
  --fill-warn:    #FAF5E8; --text-warn:    #7A5B22; --border-warn:    #EFD89A;
  --fill-danger:  #FAF0F0; --text-danger:  #9B2A2A; --border-danger:  #F2CACA;
  --fill-gold:    #FAF0CC; --text-gold:    #7A5B22; --border-gold:    #EFD89A;
}

[data-theme="light"] {
  --bg:              var(--warm-canvas);
  --surface:         var(--warm-surface);
  --surface-raised:  var(--warm-raised);
  --border:          var(--warm-border);
  --text:            var(--ink-800);
  --text-secondary:  var(--ink-500);
  --text-subtle:     var(--warm-subtle);

  --accent:          var(--gold-600);
  --accent-contrast: var(--ink-800);
  --accent-text:     var(--gold-800);

  --btn-primary-bg:   var(--ink-800);
  --btn-primary-text: #FFFFFF;
  --btn-secondary-bg: var(--warm-canvas);
  --btn-secondary-text: var(--ink-800);

  --cz: #16A34A; --tm: #D4A017; --el: #60A5FA;
  --cz-fg: #fff; --tm-fg: #1C0F00; --el-fg: #0B1A3A;
}
