/*
  Sistema de tokens — Estoque da torrefação.
  Paleta ancorada no próprio processo de torra: o verde do grão cru
  evolui até o marrom quase-preto da torra escura. Essa progressão
  (verde → canela → castanho → espresso) é o motivo assinatura do app:
  aparece na faixa sob a marca, no topo dos cartões e no anel de foco.
*/

:root {
  /* Cor — neutros quentes (não é o creme #F4F1EA padrão: puxa mais pro cáqui/kraft) */
  --espresso-950: #2a1c13;
  --espresso-800: #4a3323;
  --espresso-600: #6b4c36;
  --kraft-200: #e7dcc4;
  --parchment: #efe6d2;
  --paper: #faf6ec;

  /* Cor — acentos funcionais ligados ao domínio */
  --green-bean: #6f7d47;
  --green-bean-dark: #566139;
  --green-bean-tint: #e7ead9;
  --roast-amber: #a5651f;
  --roast-amber-dark: #7f4c17;
  --roast-amber-tint: #f1e0c8;
  --cinnamon: #c68a4a;
  --brick: #9c3f2a;
  --brick-tint: #f3ded7;

  /* Faixa assinatura (verde grão → canela → espresso) */
  --roast-gradient: linear-gradient(
    90deg,
    var(--green-bean) 0%,
    var(--cinnamon) 45%,
    var(--espresso-800) 85%,
    var(--espresso-950) 100%
  );

  /* Tipografia */
  --font-ui: "Archivo", "Helvetica Neue", Arial, sans-serif;
  --font-data: "IBM Plex Mono", "SFMono-Regular", Menlo, monospace;

  --text-xs: 0.75rem;
  --text-sm: 0.8125rem;
  --text-base: 0.9375rem;
  --text-md: 1.0625rem;
  --text-lg: 1.375rem;
  --text-xl: 1.875rem;

  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;

  /* Espaçamento */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;

  /* Forma */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 14px;
  --border-hairline: 1px solid rgba(42, 28, 19, 0.14);

  /* Elevação */
  --shadow-card: 0 1px 2px rgba(42, 28, 19, 0.06), 0 8px 24px -12px rgba(42, 28, 19, 0.22);
  --shadow-modal: 0 24px 64px -20px rgba(21, 13, 8, 0.45);

  /* Movimento */
  --ease-standard: cubic-bezier(0.2, 0.7, 0.2, 1);
  --duration-fast: 120ms;
  --duration-base: 180ms;
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --duration-fast: 0ms;
    --duration-base: 0ms;
  }
}
