/* app/assets/stylesheets/animation.css */
@keyframes shake {
  0%, 100% { transform: translateX(0); }
  10%, 30%, 50%, 70%, 90% { transform: translateX(-3px); }
  20%, 40%, 60%, 80% { transform: translateX(3px); }
}

.animate-shake {
  animation: shake 0.5s cubic-bezier(.36,.07,.19,.97) both;
}

/* Tooltip styles */
.tooltip {
  background: #1f2937;
  color: white;
  padding: 0.5rem;
  border-radius: 0.25rem;
  font-size: 0.75rem;
  position: absolute;
  top: 0;
  left: 0;
  max-width: 250px;
  width: max-content;
  z-index: 9999;
  opacity: 0;
  pointer-events: none;
  transition: opacity 150ms ease-in-out;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.tooltip.open {
  opacity: 1;
}

.tooltip .arrow {
  position: absolute;
  width: 8px;
  height: 8px;
  background: inherit;
  visibility: hidden;
}

.tooltip .arrow:before {
  content: '';
  position: absolute;
  width: 8px;
  height: 8px;
  background: inherit;
  visibility: visible;
  transform: rotate(45deg);
}