/* Pixel animations */
@keyframes work {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-3px); }
}
@keyframes coinFly {
  0% { opacity: 1; transform: translateY(0) scale(1); }
  100% { opacity: 0; transform: translateY(-80px) scale(0.5); }
}
@keyframes pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}
@keyframes slideUp {
  from { transform: translateY(100%); }
  to { transform: translateY(0); }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-4px); }
  75% { transform: translateX(4px); }
}
#panel:not(.hidden) { animation: slideUp 0.25s ease-out; }
#event-modal:not(.hidden), #result-modal:not(.hidden) { animation: fadeIn 0.2s ease-out; }
.money-change {
  position: fixed; font-size: 16px; font-weight: bold;
  pointer-events: none; z-index: 50;
  animation: coinFly 1.2s ease-out forwards;
}
.money-plus { color: #4ecca3; }
.money-minus { color: #e94560; }
.screen-glow {
  animation: screenGlow 2s ease-in-out infinite alternate;
}
@keyframes screenGlow {
  from { background-color: #0a3; }
  to { background-color: #0f6; }
}
.desk-person.idle { animation: none; opacity: 0.5; }
.progress-flash { animation: pulse 0.5s ease-in-out; }
