@keyframes fadeInOut {
    0% {opacity: 1;}
    50% {opacity: 0;}
    100% {opacity: 1;}
}

#animate-text {
    animation: fadeInOut 5s infinite; /* Анимация будет повторяться бесконечно каждые 5 секунд */
}

/* якорный мини-тост под ссылкой */
.copy-toast{
  position: fixed;               /* позиционируем к вьюпорту по координатам элемента */
  left: 0; top: 0;               /* координаты задаём из JS */
  transform: translateX(-50%) translateY(4px);
  background:#111; color:#fff;
  padding:8px 12px; border-radius:12px;
  font:500 14px/1.25 Inter, system-ui, sans-serif;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
  opacity:0; pointer-events:none; z-index:999999;
  transition:opacity .18s ease, transform .18s ease;
  white-space:nowrap;
}
.copy-toast::after{              /* маленькая стрелочка вверх */
  content:""; position:absolute; top:-6px; left:50%; transform:translateX(-50%);
  border:6px solid transparent; border-bottom-color:#111;
}
.copy-toast.show{ opacity:1; transform: translateX(-50%) translateY(0); }

@media (prefers-reduced-motion: reduce){
  .copy-toast{ transition:none; }
}