@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } .spinning { animation: spin 550ms cubic-bezier(0.3, 0.9, 0.3, 1.1); } .busy { animation: spin 900ms linear infinite; } @media (prefers-reduced-motion: reduce) { .spinning, .busy { animation: none; } }