/* 答答像素马尔济斯 widget —— 纯前端。浅色绒球团成小狗。
 * 移动端安全关键：整只狗的动作(呼吸/弹跳/晃)作用在 SVG 根元素上(合成层、栅格化一次)，
 * 不作用在内层 SVG 节点(否则 iOS 每帧重栅格化→卡死)。内层零件动画(眨眼/敲爪/星星)仅桌面端。 */

/* 头像版（保留备用） */
.dada-dog.dm-avatar{ width:32px; height:24px; display:inline-block; vertical-align:top; pointer-events:auto; cursor:pointer; user-select:none; -webkit-user-select:none; image-rendering:pixelated; }

/* 发送键里的狗 */
.btn-send.dada-send{ background:transparent; box-shadow:none; width:56px; height:44px; border-radius:0; padding:0; }
.btn-send.dada-send:hover{ box-shadow:none; }
.btn-send.dada-send:disabled{ opacity:1; cursor:default; }
.btn-send.dada-send svg{ width:100%; height:100%; }
.dada-dog.dm-send{ width:100%; height:100%; display:block; image-rendering:pixelated; }

/* 登录页静态狗 */
.dada-dog.dada-login{ width:88px; height:64px; display:inline-block; image-rendering:pixelated; }

/* SVG 根：整只狗的动作在这里（合成层，移动端安全） */
.dada-dog svg{ width:100%; height:100%; overflow:visible; display:block; transform-origin:50% 100%; will-change:transform; animation:dm-breathe 3.4s ease-in-out infinite; }
@keyframes dm-breathe{ 0%,100%{ transform:translateY(0) } 50%{ transform:translateY(-1px) } }

.dada-dog .dm-rig{ transform-box:fill-box; transform-origin:50% 100%; }
.dada-dog .dm-shadow{ transform-box:fill-box; transform-origin:50% 50%; }

/* 内层零件（眨眼/敲爪/思考点/星星，桌面端动；手机端由下方媒体查询关掉） */
.dada-dog .dm-ear{ transform-box:fill-box; transform-origin:50% 0; transition:transform .25s steps(2); }
.dada-dog .dm-eye{ transform-box:fill-box; transform-origin:50% 50%; animation:dm-blink 4.6s step-end infinite; }
@keyframes dm-blink{ 0%,95%,100%{ transform:scaleY(1) } 96%,99%{ transform:scaleY(.15) } }
.dada-dog .dm-paw-l,.dada-dog .dm-paw-r{ transform-box:fill-box; }
.dada-dog .dm-tongue,.dada-dog .dm-sparkles,.dada-dog .dm-spark{ opacity:0; }
.dada-dog .dm-think{ opacity:0; transition:opacity .15s steps(2); }
.dada-dog .dm-think .dm-dot{ animation:dm-dot 1.05s step-end infinite; }
.dada-dog .dm-think .dm-dot:nth-child(2){ animation-delay:.35s }
.dada-dog .dm-think .dm-dot:nth-child(3){ animation-delay:.7s }
@keyframes dm-dot{ 0%,66%,100%{ opacity:.25 } 33%{ opacity:1 } }

/* ── 状态（整只狗动作在 svg，零件在内层节点） ── */
.dada-dog.dm-listening .dm-ear-l{ transform:translateY(-1px) rotate(-12deg) }
.dada-dog.dm-listening .dm-ear-r{ transform:translateY(-1px) rotate(12deg) }

.dada-dog.dm-thinking svg{ animation:dm-wobble 1.6s ease-in-out infinite }
.dada-dog.dm-thinking .dm-think{ opacity:1 }
.dada-dog.dm-thinking .dm-paw-l{ animation:dm-tap .34s step-end infinite }
.dada-dog.dm-thinking .dm-paw-r{ animation:dm-tap .34s step-end infinite .17s }
@keyframes dm-wobble{ 0%,100%{ transform:rotate(-2.5deg) } 50%{ transform:rotate(2.5deg) } }
@keyframes dm-tap{ 0%{ transform:translateY(0) } 50%{ transform:translateY(1.4px) } }

.dada-dog.dm-reporting svg{ animation:dm-wobble 2.4s ease-in-out infinite }
.dada-dog.dm-reporting .dm-think{ opacity:1 }
.dada-dog.dm-reporting .dm-think .dm-dot{ animation-duration:.7s }
.dada-dog.dm-reporting .dm-eye{ animation:none; transform:scaleY(.4) }

.dada-dog.dm-talking svg{ animation:dm-hop .82s ease-in-out infinite }
.dada-dog.dm-talking .dm-tongue{ opacity:1 }
.dada-dog.dm-talking .dm-sparkles{ opacity:1 }
.dada-dog.dm-talking .dm-spark{ animation:dm-spark .9s step-end infinite; animation-delay:var(--d,0s); }
/* 温柔小跳：跳得低、挤压轻、软着陆 */
@keyframes dm-hop{
  0%,100%{ transform:translateY(0) scale(1,1) }
  22%{ transform:translateY(0) scale(1.04,.96) }
  50%{ transform:translateY(-3px) scale(.98,1.03) }
  76%{ transform:translateY(0) scale(1.02,.98) }
}
@keyframes dm-spark{ 0%{ opacity:0 } 15%{ opacity:1 } 45%{ opacity:0 } 100%{ opacity:0 } }

.dada-dog.dm-sad .dm-ear-l{ transform:translateY(2px) rotate(18deg) }
.dada-dog.dm-sad .dm-ear-r{ transform:translateY(2px) rotate(-18deg) }
.dada-dog.dm-sad svg{ animation:none; transform:translateY(1px) scale(1.04,.94) }

.dada-dog.dm-poke svg{ animation:dm-pop .5s ease }
@keyframes dm-pop{
  0%,100%{ transform:translateY(0) scale(1,1) }
  25%{ transform:translateY(0) scale(1.08,.92) }
  55%{ transform:translateY(-6px) scale(.96,1.05) }
  80%{ transform:translateY(0) scale(1.03,.97) }
}

/* 手机端现在全开：整只狗动作在 SVG 根(合成层)；内层零件全是 step-end 离散(眨眼/敲爪)
 * 或 opacity(思考点/星星)——都不每帧重栅格化，iOS 可扛。 */
@media (prefers-reduced-motion:reduce){ .dada-dog *{ animation:none !important; } }
