:root{
  /* ---- Base: Mata (verde profundo, fundos de autoridade) ---- */
  --mata-900:#11201A; --mata-800:#17281F; --mata-700:#1F3527; --mata-600:#2C4634;

  /* ---- Base: Musgo / Oliva (cor de assinatura) ---- */
  --musgo-700:#4B5540; --musgo-600:#5E6A4C; --musgo-500:#6F7B57; --musgo-400:#8B9472; --musgo-300:#A9B092;

  /* ---- Base: Areia / Bege (superfícies claras) ---- */
  --areia-50:#FBF9F5; --areia-100:#F4F0E8; --areia-200:#EAE3D6; --areia-300:#DCD2C0; --areia-400:#C8BCA4;

  /* ---- Base: Champanhe (acento cerimonial, uso escasso) ---- */
  --champanhe-400:#D8C7A9; --champanhe-500:#C4AE88; --champanhe-600:#A8916A;

  /* ---- Base: Tinta (texto) ---- */
  --tinta-900:#171A16; --tinta-700:#33372F; --tinta-500:#5C6156; --tinta-400:#7D8377; --tinta-300:#A5A99F;

  /* ---- Semânticos: superfícies ---- */
  --surface-page:var(--areia-50);
  --surface-raised:#FFFFFF;
  --surface-sunken:var(--areia-100);
  --surface-card:#FFFFFF;
  --surface-inverse:var(--mata-800);
  --surface-inverse-soft:var(--mata-700);
  --surface-accent:var(--musgo-600);

  /* ---- Semânticos: texto ---- */
  --text-display:var(--mata-800);
  --text-body:var(--tinta-700);
  --text-muted:var(--tinta-500);
  --text-faint:var(--tinta-400);
  --text-on-inverse:var(--areia-100);
  --text-on-inverse-muted:var(--musgo-300);
  --text-on-accent:var(--areia-50);
  --text-link:var(--musgo-600);
  --text-link-hover:var(--mata-700);

  /* ---- Semânticos: traços e bordas ---- */
  --border-hairline:rgba(23,26,22,.12);
  --border-strong:rgba(23,26,22,.28);
  --border-inverse:rgba(244,240,232,.22);
  --border-accent:var(--musgo-500);

  /* ---- Semânticos: interação ---- */
  --interactive-bg:var(--mata-800);
  --interactive-bg-hover:var(--mata-700);
  --interactive-bg-active:var(--mata-900);
  --interactive-ghost-hover:rgba(94,106,76,.08);
  --focus-ring:var(--musgo-500);

  /* ---- Estado (discretos, apenas em formulários) ---- */
  --state-error:#8C3A2B; --state-error-soft:#F3E5E1;
  --state-success:#4B6B4A; --state-success-soft:#E7EDE5;
  --state-info:var(--musgo-600); --state-info-soft:var(--areia-100);
}
