:root { --magus-coin-gold: #c89210; --magus-coin-loss: #c85a66; }
[data-bs-theme="dark"] { --magus-coin-gold: #e4be5a; --magus-coin-loss: #e08b93; }
.magus-coin-icon {
  display: inline-block;
  color: var(--magus-coin-gold);
  animation: magus-coin-spin 8s linear infinite;
  animation-play-state: paused;
}
.magus-coin-icon.coin-visible { animation-play-state: running; }
.dashboard-feature .magus-coin-icon { color: #fff; }
[data-coin-value] { position: relative; font-variant-numeric: tabular-nums; }
.magus-coin-gain { color: var(--magus-coin-gold) !important; }
.magus-coin-loss { color: var(--magus-coin-loss) !important; }
.magus-coin-pulse { animation: magus-coin-pulse 480ms ease-in-out; }
.magus-coin-sparkles {
  position: absolute; inset: 0; pointer-events: none;
  user-select: none; z-index: 1;
}
.magus-coin-sparkles span {
  position: absolute; left: 50%; top: 0;
  font-size: 16px; opacity: 0;
  animation: magus-coin-sparkle 2400ms ease-out forwards;
}
.magus-coin-sparkles span::before { content: "\2726"; }
.magus-coin-sparkles span:nth-child(2) { margin-left: -18px; top: 8px; animation-delay: 60ms; }
.magus-coin-sparkles span:nth-child(3) { margin-left: 14px; top: 6px; animation-delay: 110ms; }
@keyframes magus-coin-spin { to { transform: perspective(600px) rotateY(360deg); } }
@keyframes magus-coin-pulse { 45% { transform: scale(1.08); } }
@keyframes magus-coin-sparkle {
  0% { opacity: 0; transform: translateY(0) scale(.4); }
  15% { opacity: 1; transform: translateY(-12px) scale(1); }
  100% { opacity: 0; transform: translateY(-24px) scale(.92); }
}
@media (prefers-reduced-motion: reduce) {
  .magus-coin-icon, .magus-coin-pulse { animation: none; }
  .magus-coin-sparkles { display: none; }
}
