* { font-family: 'Vazirmatn', system-ui, sans-serif; }
body { margin: 0; }

@keyframes bounce-in {
  0% { transform: scale(0.3); opacity: 0; }
  60% { transform: scale(1.15); }
  100% { transform: scale(1); opacity: 1; }
}
.animate-bounce-in { animation: bounce-in 0.35s ease-out; }

@keyframes wink {
  0%,90%,100% { transform: rotate(0deg) scale(1); }
  45% { transform: rotate(-8deg) scale(1.1); }
}
.animate-wink { animation: wink 3s ease-in-out infinite; display: inline-block; }

.confetti-piece {
  position: absolute;
  top: -20px;
  width: 10px;
  height: 14px;
  border-radius: 2px;
  animation: fall linear forwards;
}
@keyframes fall {
  0% { transform: translateY(-20px) rotate(0deg); opacity: 1; }
  100% { transform: translateY(105vh) rotate(720deg); opacity: 0.3; }
}

/* Scrollbar polish */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* Print styles for invoice */
@media print {
  .no-print, header, footer { display: none !important; }
  body { background: white; }
  #invoice { border: none !important; box-shadow: none !important; }
}