/* ===========================================================================
   HortiGest — tokens do design system.

   Reusa a estrutura do DARE Labs (dare-labs-plataform/labs/app/assets/
   stylesheets/app.css): CSS puro sobre Propshaft, tokens em :root, BEM.
   Duas divergencias deliberadas, ambas funcionais — ver ADR-0004.

   TEMA CLARO, nao escuro.
   O DARE Labs usa fundo #0B1120. Aqui a tela de medicao e usada em pe, na
   estufa, SOB SOL DIRETO, onde tema escuro perde legibilidade por reflexo.
   Como toda a paleta vive aqui, virar tema escuro depois e substituir estes
   valores — nao reescrever componente.

   FONTES AUTO-HOSPEDADAS, sem Google Fonts.
   Duas razoes independentes: a CSP e default-src 'self', e a tela de medicao
   funciona offline — fonte via CDN nao carregaria em campo, causando fallback
   e deslocamento de layout no meio de uma leitura de EC.
   Orbitron (fonte de marca do DARE Labs) fica de fora: digitos de leitura ruim
   a distancia, e o numero que mais importa aqui e a dose em gramas.
   ======================================================================== */

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/inter-latin-400-normal-1e94a563.woff2") format("woff2");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/inter-latin-500-normal-5949f5fc.woff2") format("woff2");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/inter-latin-600-normal-a957bd0d.woff2") format("woff2");
}
@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/inter-latin-700-normal-cbc762c0.woff2") format("woff2");
}

:root {
  /* ---- Verde: identidade adotada do prototipo do cliente ---------------- */
  --verde-900: #14432A;   /* sidebar */
  --verde-700: #166534;   /* cabecalhos, item ativo */
  --verde-500: #16A34A;   /* acao primaria, status dentro do padrao */
  --verde-100: #DCFCE7;   /* fundo de destaque */

  /* ---- Semantica de status: e regra de negocio, nao estetica -----------
     --verde-500  dentro do padrao / acao primaria
     --ambar      ALERTA — exige atencao, nao impede nada
     --vermelho   BLOQUEIO — algo esta impedido

     Vermelho SO para bloqueio. pH fora da faixa e informacao, nao falha:
     pinta-lo de vermelho treina o operador a ignorar vermelho, e ai o
     bloqueio de carencia — o controle mais importante do sistema — perde
     forca justamente onde importa.                                        */
  --ambar: #D97706;
  --ambar-fundo: #FEF3C7;
  --vermelho: #DC2626;
  --vermelho-fundo: #FEE2E2;

  /* ---- Superficies e texto --------------------------------------------- */
  --bg: #F8FAF9;
  --card: #FFFFFF;
  --line: #E2E8F0;
  --line-strong: #CBD5E1;
  --texto: #0F172A;       /* 16:1 sobre --card */
  --dim: #64748B;         /* 4.8:1 sobre --card — apoio, nunca texto principal */
  --branco: #FFFFFF;

  /* ---- Forma ------------------------------------------------------------ */
  --r: 14px;
  --r-sm: 10px;
  --sidebar-w: 248px;
  --maxw: 1180px;

  /* ---- Tipografia ------------------------------------------------------- */
  --fonte: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
}
