:root { --gold: #D4AF37; }

* { font-family: 'Vazirmatn', Tahoma, sans-serif; }

body {
  margin: 0;
  background:
    radial-gradient(1200px 600px at 80% -10%, rgba(212,175,55,0.12), transparent 60%),
    radial-gradient(900px 500px at 10% 110%, rgba(184,134,11,0.10), transparent 60%),
    linear-gradient(160deg, #0d0d0d 0%, #141210 50%, #0a0a0a 100%);
  background-attachment: fixed;
  color: #fef3c7;
}

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #111; }
::-webkit-scrollbar-thumb { background: #b8860b66; border-radius: 4px; }

/* shimmering logo text */
.shimmer-logo {
  background-size: 200% auto;
  animation: shimmer 3.5s linear infinite;
}
@keyframes shimmer {
  0% { background-position: 0% center; }
  100% { background-position: 200% center; }
}

/* ticker pulse when refreshed */
.ticker-pulse {
  animation: pulseGold 0.8s ease;
}
@keyframes pulseGold {
  0% { box-shadow: 0 0 0 0 rgba(212,175,55,0.6); transform: scale(1); }
  50% { box-shadow: 0 0 24px 2px rgba(212,175,55,0.45); transform: scale(1.03); }
  100% { box-shadow: 0 0 0 0 rgba(212,175,55,0); transform: scale(1); }
}

/* toast */
.toast-in { animation: toastUp 0.3s ease; }
@keyframes toastUp {
  from { opacity: 0; transform: translate(-50%, 20px); }
  to { opacity: 1; transform: translate(-50%, 0); }
}

/* subtle sparkle background on cards hover handled by tailwind */
input, select, button, textarea { font-family: inherit; }
input[type=number] { direction: ltr; text-align: right; }