/* Load after action-feedback.css. Scope is present only during hybrid playback. */
.hybrid-motion{position:fixed;inset:0;z-index:31;overflow:hidden;pointer-events:none!important;isolation:isolate}
.hybrid-motion *{box-sizing:border-box;pointer-events:none!important}
.hybrid-motion-active .action-feedback-label{background:#e5d1a5;color:#202921;border:2px solid #393f31;border-radius:3px;box-shadow:2px 3px 0 #101a1d;text-shadow:none;font:700 16px/20px system-ui,sans-serif}
.hybrid-motion-active .action-feedback-label.action-feedback-hurt{background:#d5a58a;color:#321d17;border-color:#623e30}
.hybrid-motion-active .action-feedback-label.action-feedback-heal{background:#c4d1a3;color:#253321;border-color:#526246}
.hybrid-motion-active .action-feedback-label.action-feedback-guard{background:#bed0cc;color:#213434;border-color:#4e6460}
.hybrid-motion-active .action-feedback-impact{border-color:#d5b16f;border-radius:4px;box-shadow:none}
.hybrid-motion-active .action-feedback-impact.action-feedback-hurt{border-color:#bb7458;box-shadow:none}
.hybrid-motion-active .action-feedback-impact.action-feedback-heal{border-color:#a5bd7a;box-shadow:none}
.hybrid-motion-active .action-feedback-impact.action-feedback-guard{border-color:#9dbab4;box-shadow:none}
.hybrid-motion-active .action-feedback-trail{background:#d5b16f;box-shadow:none;height:3px}
.hybrid-motion-active .action-feedback-trail>i{background:#e5d1a5;border:2px solid #414a36;box-shadow:none;border-radius:1px}
.hm-card-lift{position:absolute;border:3px solid #e5d1a5;border-radius:4px;background:#e5d1a51a;animation:hm-card .22s ease-out both}
.hm-health{position:absolute;overflow:hidden;min-height:5px;background:#302d27;border:1px solid #887950;border-radius:2px}
.hm-health-fill{position:absolute;left:0;top:0;bottom:0;background:#9ca867;transition:width .18s ease-out}
.hm-actor{animation:hm-lunge .28s ease-out both!important}
.hm-actor-left{animation:hm-lunge-left .28s ease-out both!important}
@keyframes hm-lunge{0%,100%{translate:0 0}40%{translate:8px -3px}}
@keyframes hm-lunge-left{0%,100%{translate:0 0}40%{translate:-8px -3px}}
@keyframes hm-card{from{transform:translateY(0);opacity:1}to{transform:translateY(-10px);opacity:0}}
.hm-reduced .hm-card-lift,.hm-reduced .hm-health{display:none}
@media(prefers-reduced-motion:reduce){.hm-actor,.hm-actor-left{animation:none!important;translate:none}.hm-card-lift,.hm-health{display:none}.hm-health-fill{transition:none}}
/* Ordered resolved enemy actions. Base keeps labels; these cues never add damage text. */
.hybrid-motion-ordered .action-feedback-trail,.hybrid-motion-ordered .action-feedback-impact{display:none!important}
.hm-source-active{outline:3px solid #dec485!important;outline-offset:3px;box-shadow:0 0 10px #d0ac5a88!important}
.hm-target-active{outline:3px solid #cc6f50!important;outline-offset:3px;box-shadow:0 0 10px #b4514777!important}
.hm-block-active{outline:3px solid #a3c3bc!important;outline-offset:3px}
.hm-heal-active{outline:3px solid #a6c785!important;outline-offset:3px;box-shadow:0 0 10px #8dad6b88!important}
.hm-direction{position:absolute;height:3px;background:#e5cf91;transform-origin:0 50%;opacity:.85;animation:hm-direction .28s ease-out both}
.hm-direction::after{content:'';position:absolute;right:-1px;top:-5px;border-left:11px solid #e5cf91;border-top:6px solid transparent;border-bottom:6px solid transparent}
.hm-heal-cue{position:absolute;width:24px;height:24px;color:#b8d790;animation:hm-heal .28s ease-out both}
.hm-heal-cue>svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2}
.hm-health-fill{background:#b64b42}
@keyframes hm-direction{0%{opacity:.1;scale:.85 1}25%,70%{opacity:.9}100%{opacity:0}}
@keyframes hm-heal{0%{opacity:0;translate:0 4px}25%,75%{opacity:1}100%{opacity:0;translate:0 -3px}}
@media(prefers-reduced-motion:reduce){.hm-direction,.hm-heal-cue{display:none!important}.hm-source-active,.hm-target-active,.hm-block-active,.hm-heal-active{box-shadow:none!important}}
