/* animations.css — R98 动画 */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

.timeline-year-group { animation: fadeInUp 0.4s ease both; }
.timeline-card { animation: fadeInUp 0.35s ease both; }
.member-card { animation: fadeInUp 0.3s ease both; }

.detail-panel, .editor-panel { animation: slideUp 0.35s ease both; }
@keyframes slideUp {
  from { transform: translateY(100%); }
  to { transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
