/* components.css — 样式组件补充分隔 */
/* shake 动画定义在布局CSS中已包含 */

/* 加载指示器 */
.loading-dots::after {
  content: '…';
  animation: dots 1.5s steps(4, end) infinite;
}
@keyframes dots {
  0%   { content: ''; }
  25%  { content: '.'; }
  50%  { content: '..'; }
  75%  { content: '...'; }
}

/* 存档提示临时闪现 */
.system-feedback {
  position: fixed;
  bottom: 60px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--bg-card);
  color: var(--text-system);
  padding: 8px 20px;
  border-radius: 20px;
  font-size: 0.8rem;
  z-index: 300;
  animation: fadeOut 2s ease forwards;
  pointer-events: none;
}
@keyframes fadeOut {
  0%   { opacity: 1; }
  70%  { opacity: 1; }
  100% { opacity: 0; }
}
