/* Анимация при ошибке согласия (form-calculate.js → triggerConsentAttention). */
@keyframes wfb-consent-shake {
  0%,
  100% {
    transform: translateX(0);
  }

  15%,
  45%,
  75% {
    transform: translateX(-5px);
  }

  30%,
  60%,
  90% {
    transform: translateX(5px);
  }
}

@keyframes wfb-consent-checkbox-pulse {
  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.55);
    outline-color: #ef4444;
  }

  50% {
    box-shadow: 0 0 0 6px rgba(239, 68, 68, 0);
    outline-color: #dc2626;
  }
}

.wfb-consent-attention {
  animation: wfb-consent-shake 0.65s ease-in-out;
  background-color: #fef2f2;
  border-radius: 0.375rem;
  padding: 0.375rem 0.25rem;
  margin-left: -0.25rem;
  margin-right: -0.25rem;
}

.wfb-consent-attention input[type='checkbox'].wfb-validation-error {
  animation: wfb-consent-checkbox-pulse 0.9s ease-in-out 3;
  outline: 2px solid #ef4444 !important;
  outline-offset: 1px;
}

@media (prefers-reduced-motion: reduce) {
  .wfb-consent-attention {
    animation: none;
  }

  .wfb-consent-attention input[type='checkbox'].wfb-validation-error {
    animation: none;
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.35);
  }
}
