/* Cursor magnético — puxa o botão em direção ao cursor. */
.btn, .text-link, .ck-card-add {
  --mx: 0px;
  --my: 0px;
  will-change: transform;
}
.btn.is-magnetic, .text-link.is-magnetic {
  transform: translate3d(var(--mx), var(--my), 0) scale(1.04);
  transition: transform .35s cubic-bezier(.22,.61,.36,1);
}
.btn.is-magnetic:hover, .text-link.is-magnetic:hover {
  transform: translate3d(var(--mx), var(--my), 0) scale(1.06);
}
.ck-card-add.is-magnetic {
  transform: translate3d(var(--mx), var(--my), 0) rotate(0deg) scale(1.08);
}
/* Se o magnetic estiver ativo, anula o transform padrão de hover para evitar conflito. */
@media (hover: hover) and (pointer: fine) {
  .btn.is-magnetic:hover { transform: translate3d(var(--mx), var(--my), 0) scale(1.06); }
}
@media (prefers-reduced-motion: reduce) {
  .btn, .text-link, .ck-card-add { will-change: auto; }
}