/* ====================== UTILITIES ====================== */
.hidden {
  display: none !important;
}

.crypto-glow {
  animation: glow 2s infinite;
}

.float {
  animation: float 3s ease-in-out infinite;
}

.fade-in {
  animation: fadeIn 0.5s ease;
}

.slide-in {
  animation: slideIn 0.5s ease;
}

/* Tooltip */
[data-tooltip] {
  position: relative;
}

[data-tooltip]::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.8);
  color: white;
  padding: 5px 10px;
  border-radius: 4px;
  font-size: 0.8rem;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transition: var(--transition-normal);
  z-index: 1000;
}

[data-tooltip]:hover::after {
  opacity: 1;
  visibility: visible;
  bottom: -35px;
}

.notification {
  animation: slideIn 0.3s ease-out;
}

.notification.hiding {
  animation: slideOut 0.3s ease-in;
}

.btn-success {
  background-color: #4CAF50 !important;
}