[data-clawd-action="watering"] .pose-watering,[data-clawd-action="soccer"] .pose-soccer,[data-clawd-action="confetti"] .pose-confetti,[data-clawd-action="weld"] .pose-weld,[data-clawd-action="sparkler"] .pose-sparkler,[data-clawd-action="chef"] .pose-chef,[data-clawd-action="hero"] .pose-hero,[data-clawd-action="space"] .pose-space,[data-clawd-action="detective"] .pose-detective,[data-clawd-action="computer"] .pose-computer,[data-clawd-action="wizard"] .pose-wizard{display:inline}
.clawd-source-viewport{overflow:hidden;pointer-events:none}
.clawd-source-strip,.clawd-source-still{image-rendering:pixelated;pointer-events:none}
.clawd-source-still{display:none}
@keyframes clawd-source-strip{to{transform:translateX(var(--source-travel))}}
@media(prefers-reduced-motion:reduce){.clawd-source-strip{display:none}.clawd-source-still{display:inline}}
/* Local story actions: continuous character, separately staged hands and props. */
[data-clawd-action="paperplane"] .pose-paperplane,[data-clawd-action="snowman"] .pose-snowman{display:inline}
.pose-paperplane{--clawd-story-time:8.4s}
.pose-snowman{--clawd-story-time:10.8s}
.paperplane-actor{transform-origin:18px 20px;animation:clawd-paper-bonk var(--clawd-story-time) linear infinite}
.paper-fold-arms{animation:clawd-paper-fold-arms var(--clawd-story-time) steps(1,end) infinite}
.paper-release-arms{animation:clawd-paper-release-arms var(--clawd-story-time) steps(1,end) infinite}
.paper-rest-arms{animation:clawd-paper-rest-arms var(--clawd-story-time) steps(1,end) infinite}
.paper-fold-sheet{animation:clawd-paper-sheet var(--clawd-story-time) linear infinite;transform-origin:18px 13px}
.paperplane-flight{transform:translate(15px,10px);animation:clawd-paper-flight var(--clawd-story-time) linear infinite}
.paperplane-surprise{animation:clawd-paper-surprise var(--clawd-story-time) steps(1,end) infinite}
@keyframes clawd-paper-fold-arms{0%{opacity:1;transform:translateY(0)}6%,18%{transform:translateY(-1px)}12%,24%{transform:translateY(0)}30%,100%{opacity:0}}
@keyframes clawd-paper-release-arms{0%,100%{opacity:0}30%{opacity:1}39%{opacity:0}}
@keyframes clawd-paper-rest-arms{0%{opacity:0}39%,100%{opacity:1}}
@keyframes clawd-paper-sheet{0%,8%,16%{opacity:1;transform:scaleX(1)}4%,12%,22%{transform:scaleX(.7)}25%,100%{opacity:0}}
@keyframes clawd-paper-flight{0%,24%{opacity:0;transform:translate(15px,10px)}25%,30%{opacity:1;transform:translate(15px,10px)}40%{transform:translate(35px,-4px) rotate(-35deg)}51%{transform:translate(27px,-19px) rotate(-155deg)}62%{transform:translate(-5px,-12px) rotate(-255deg)}73%{transform:translate(10px,-2px) rotate(-350deg)}76%{transform:translate(12px,-1px) rotate(-360deg)}87%,94%{opacity:1;transform:translate(6px,16px) rotate(-400deg)}100%{opacity:0;transform:translate(6px,16px) rotate(-400deg)}}
@keyframes clawd-paper-bonk{0%,73%,83%,100%{transform:none}76%{transform:translateY(1px) rotate(-5deg)}79%{transform:translateY(-1px) rotate(3deg)}}
@keyframes clawd-paper-surprise{0%,100%{opacity:0}75%{opacity:1}82%{opacity:0}}
.snow-builder{transform:translateX(-5px)}
.snow-work-arms{animation:clawd-snow-work var(--clawd-story-time) steps(1,end) infinite}
.snow-reach-arms{animation:clawd-snow-reach var(--clawd-story-time) steps(1,end) infinite}
.snowball-bottom{transform:translate(34px,8px);animation:clawd-snow-bottom var(--clawd-story-time) linear infinite;transform-box:fill-box;transform-origin:center}
.snowball-head{transform:translate(36px,-2px);animation:clawd-snow-head var(--clawd-story-time) linear infinite;transform-box:fill-box;transform-origin:center}
.snowman-details{animation:clawd-snow-details var(--clawd-story-time) steps(1,end) infinite}
.snowman-hat{animation:clawd-snow-hat var(--clawd-story-time) linear infinite}
.snowman-santa-hat{display:none}
[data-world-outfit="christmas"] .snowman-santa-hat{display:inline}
[data-world-outfit="christmas"] .snowman-generic-hat{display:none}
.snow-builder .outfit-christmas{animation:clawd-snow-give-hat var(--clawd-story-time) steps(1,end) infinite}
.snow-builder-puzzle{animation:clawd-snow-puzzle var(--clawd-story-time) steps(1,end) infinite}
@keyframes clawd-snow-work{0%,12%,24%,34%{opacity:1;transform:translateY(0)}6%,18%,30%{transform:translateY(1px)}40%{opacity:0}72%,100%{opacity:1;transform:none}}
@keyframes clawd-snow-reach{0%,100%{opacity:0}40%{opacity:1}72%{opacity:0}}
@keyframes clawd-snow-details{0%{opacity:0}50%,100%{opacity:1}}
@keyframes clawd-snow-hat{0%,56%{opacity:0;transform:translate(-24px,-6px)}57%{opacity:1}65%{transform:translate(-4px,-10px)}72%,100%{opacity:1;transform:none}}
@keyframes clawd-snow-give-hat{0%{opacity:1}57%,100%{opacity:0}}
@keyframes clawd-snow-puzzle{0%,100%{opacity:0}80%{opacity:1}94%{opacity:0}}
@media(prefers-reduced-motion:reduce){.paper-release-arms,.paper-fold-sheet,.paperplane-surprise,.snow-reach-arms,.snow-builder-puzzle{display:none}.paperplane-flight{transform:translate(15px,10px)}.snow-builder .outfit-christmas{opacity:0}}
/* Follow-through: visible snow source and a soft bump followed by crying. */
.paperplane-calm-eyes{animation:clawd-paper-calm-eyes var(--clawd-story-time) steps(1,end) infinite}
.paperplane-bump{animation:clawd-paper-bump var(--clawd-story-time) steps(1,end) infinite}
.paperplane-cry-face{animation:clawd-paper-cry-face var(--clawd-story-time) steps(1,end) infinite}
.paperplane-tears{animation:clawd-paper-tears .5s linear infinite}
@keyframes clawd-paper-calm-eyes{0%{opacity:1}80%,100%{opacity:0}}
@keyframes clawd-paper-bump{0%{opacity:0}76%,100%{opacity:1}}
@keyframes clawd-paper-cry-face{0%{opacity:0}80%,100%{opacity:1}}
@keyframes clawd-paper-tears{0%{transform:translateY(0)}100%{transform:translateY(2px)}}
.snow-source-pile{transform-origin:34px 21px;animation:clawd-snow-source var(--clawd-story-time) linear infinite}
.snow-builder{transform-origin:18px 20px;animation:clawd-snow-building var(--clawd-story-time) linear infinite}
@keyframes clawd-snow-source{0%{transform:scaleX(1)}30%{transform:scaleX(.65)}48%,100%{transform:scaleX(.3)}}
@keyframes clawd-snow-building{0%{transform:translate(-5px,0)}7%{transform:translate(-5px,1px) scaleY(.9)}27%{transform:translate(-1px,0) scaleY(.94)}30%{transform:translate(-1px,0)}34%{transform:translate(-5px,1px) scaleY(.9)}40%{transform:translate(-3px,0) scaleY(.94)}48%,100%{transform:translate(-5px,0)}}
@keyframes clawd-snow-bottom{0%{opacity:1;transform:translate(27px,12.5px) scale(.25) rotate(0deg)}12%{transform:translate(30px,10.4px) scale(.6) rotate(90deg)}30%,100%{transform:translate(34px,8px) scale(1) rotate(180deg)}}
@keyframes clawd-snow-head{0%,29%{opacity:0;transform:translate(29px,13.5px) scale(.3) rotate(0deg)}30%{opacity:1}40%{transform:translate(32px,11px) scale(.8) rotate(120deg)}48%,100%{opacity:1;transform:translate(36px,-2px) scale(1) rotate(180deg)}}
@media(prefers-reduced-motion:reduce){.paperplane-bump,.paperplane-cry-face{display:none}}
.snow-working-hand{animation:clawd-snow-working-hand var(--clawd-story-time) steps(1,end) infinite}
@keyframes clawd-snow-working-hand{0%,12%,24%,34%{transform:translateY(3px)}6%,18%,30%{transform:translateY(4px)}40%,100%{transform:none}}
[data-clawd-action="dj"] .pose-dj{display:inline}
/* One eight-second sequence: lift headphones, settle cups, then mix. */
.pose-dj{--dj-time:8s}
.pose-dj .clawd-outfit,.pose-dj .clawd-backpack,.pose-dj .clawd-backpack-strap{display:none}
.dj-performer,.dj-hands{animation:clawd-dj-groove var(--dj-time) steps(1,end) infinite}
.dj-headphones{animation:clawd-dj-headphones var(--dj-time) steps(1,end) infinite}
.dj-hand-left{animation:clawd-dj-left var(--dj-time) steps(1,end) infinite}
.dj-hand-right{animation:clawd-dj-right var(--dj-time) steps(1,end) infinite}
.dj-deck{animation:clawd-dj-deck var(--dj-time) steps(1,end) infinite}
.dj-record-marks{animation:clawd-dj-record .4s steps(2,end) infinite}.dj-mixer-lights{animation:clawd-dj-lights .8s steps(2,end) infinite}
@keyframes clawd-dj-headphones{0%{transform:translateY(-9px)}8%{transform:translateY(-6px)}16%{transform:translateY(-3px)}24%,100%{transform:none}}
@keyframes clawd-dj-left{0%{transform:translateY(-14px)}8%{transform:translateY(-11px)}16%{transform:translateY(-8px)}24%,33%{transform:translateY(-5px)}39%{transform:none}43%,53%,63%,73%,83%,93%{transform:translate(9px,3px)}48%,58%,68%,78%,88%,98%{transform:translate(10px,4px)}100%{transform:translate(9px,3px)}}
@keyframes clawd-dj-right{0%{transform:translateY(-14px)}8%{transform:translateY(-11px)}16%{transform:translateY(-8px)}24%,33%{transform:translateY(-5px)}39%{transform:none}43%,53%,63%,73%,83%,93%{transform:translate(-5px,4px)}48%,58%,68%,78%,88%,98%{transform:translate(-4px,3px)}100%{transform:translate(-5px,4px)}}
@keyframes clawd-dj-deck{0%,39%{visibility:hidden}40%,100%{visibility:visible}}
@keyframes clawd-dj-groove{0%,43%{transform:none}48%,58%,68%,78%,88%,98%{transform:translateY(-1px)}53%,63%,73%,83%,93%,100%{transform:none}}
@keyframes clawd-dj-record{50%{transform:translateX(1px)}}
@keyframes clawd-dj-lights{50%{opacity:.35}}
@media(prefers-reduced-motion:reduce){.dj-headphones,.dj-performer,.dj-hand-left,.dj-hand-right,.dj-deck{animation:none}.dj-hand-left{transform:translate(9px,3px)}.dj-hand-right{transform:translate(-5px,4px)}}

.dj-hand-edge{animation:clawd-dj-hand-edge var(--dj-time) steps(1,end) infinite}
@keyframes clawd-dj-hand-edge{0%,39%{visibility:hidden}40%,100%{visibility:visible}}
@media(prefers-reduced-motion:reduce){.dj-hands,.dj-hand-edge{animation:none}}
