/* ============================================================================
   wb-ui · thinking-state（思考态标签）
   1:1 移植自 aicss.dev ThinkingState.module.css（fetched 2026-08-13）。
   上游只有 shimmer 单态；四态枚举是 wb-ui 按真实字段扩展：
     running → shimmer（workbench.thinking 进行中）
     ok      → 静态 muted（思考结束，outcome=ok 同款枚举）
     error   → 静态 danger（run.status=failed / outcome=error）
     empty   → 不渲染（该 run 无 workbench.thinking 事件）
   依赖 lib/tokens.css 的 --wbui-*；本文件零裸色。
   ========================================================================== */

.wbui-thinking-state {
  font-family: var(--wbui-sans);
  font-size: 13px;          /* 上游原值 */
  line-height: 18px;        /* 上游原值 */
  font-weight: var(--wbui-fw-medium);
}

/* running：上游 .shimmer 逐值（渐变断点、300% 尺寸、2.25s 曲线动画） */
.wbui-thinking-state[data-state="running"] {
  color: transparent;
  -webkit-text-fill-color: transparent;
  background: linear-gradient(
    90deg,
    var(--wbui-label-shimmer-ink) 0%, var(--wbui-label-shimmer-ink) 30%,
    var(--wbui-label-shimmer-fade) 45%, var(--wbui-label-shimmer-fade) 55%,
    var(--wbui-label-shimmer-ink) 70%, var(--wbui-label-shimmer-ink) 100%
  );
  background-size: 300% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  animation: wbui-label-shine 2.25s cubic-bezier(0.25, 0.1, 0.25, 1) infinite;
}

@keyframes wbui-label-shine {
  0%, 18% { background-position: 100% 0; }
  82%, 100% { background-position: 0% 0; }
}

.wbui-thinking-state[data-state="ok"] {
  color: var(--wbui-ink-2);
}

.wbui-thinking-state[data-state="error"] {
  color: var(--wbui-danger);
}

.wbui-thinking-state[data-state="empty"] {
  display: none;
}

/* 无障碍：用户减少动效时停掉流光，退化为静态 muted */
@media (prefers-reduced-motion: reduce) {
  .wbui-thinking-state[data-state="running"] {
    animation: none;
    color: var(--wbui-ink-2);
    -webkit-text-fill-color: currentColor;
    background: none;
  }
}
