@keyframes elastic-rotate {
  /* 主旋转阶段：完整一圈（360°） */
  0% {
    transform: rotate(0deg);
    animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1.2); /* 慢→快→慢 */
  }
  /* 第一次过冲+回弹（模拟球体第一次弹跳） */
  54% {
    animation-timing-function: cubic-bezier(0.5, 0, 0.5, 1.5); /* 弹性缓冲 */
  }
  69% {
    transform: rotate(375deg); /* 过冲15° */
  }
  82% {
    transform: rotate(350deg); /* 回弹-5° */
  }

  /* 第二次弱过冲（能量衰减） */
  82% {
    animation-timing-function: cubic-bezier(0.3, 0, 0.7, 1.2); /* 阻尼效应 */
  }
  92% {
    transform: rotate(367deg); /* 过冲5° */
  }

  /* 最终复位 */
  92% {
    animation-timing-function: cubic-bezier(0.1, 0, 0.6, 0.9); /* 缓慢停止 */
  }
  100% {
    transform: rotate(360deg);
  }
}

/* 应用动画 */
.sidebar .app-name-link img {
  animation: elastic-rotate 2.4s forwards;
  transform-origin: center;
  filter: drop-shadow(0 0 2px rgba(0,0,0,0.1)); /* 增加运动模糊感 */
}