/*
 * .btn-press — a mesma sensação de press do botão "Continuar" do onboarding.
 * Valores idênticos a src/components/onboarding/CtaPressable.tsx:
 *   press-in: translateY(3px) scaleX(1.012) scaleY(0.94)
 *             60ms  cubic-bezier(0.4, 0.6, 0.5, 1)
 *   release:  translateY(0) scale(1, 1)
 *             480ms cubic-bezier(0.22, 2.1, 0.36, 0.92)  <- o ressalto
 *
 * Aplicar a qualquer botão sólido: <a class="btn btn-press">, <button class="btn-press">.
 * Só trata do movimento — as cores/tamanho ficam na classe visual do botão.
 */

.btn-press {
  /* A transição em repouso É o release: ao largar, o :active desaparece e o
     elemento volta ao estado base com este ressalto de 480ms. */
  transition: transform 480ms cubic-bezier(0.22, 2.1, 0.36, 0.92);
  transform: translateY(0) scale(1, 1);
  transform-origin: center;

  /* Toque: sem atraso de 300ms, sem flash de seleção, sem menu de contexto
     no long-press — para o press parecer nativo no telemóvel. */
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
}

.btn-press:active {
  transform: translateY(3px) scale(1.012, 0.94);
  transition: transform 60ms cubic-bezier(0.4, 0.6, 0.5, 1);
}

/* Um botão desativado não reage ao press. */
.btn-press:disabled:active,
.btn-press[aria-disabled="true"]:active {
  transform: translateY(0) scale(1, 1);
}

@media (prefers-reduced-motion: reduce) {
  .btn-press,
  .btn-press:active {
    transition: none;
    transform: none;
  }
}
