.page-companion.yoyo-feedback-affirm img { transform-origin: 52% 85%; animation: yoyo-affirm-nod .76s ease-in-out both; }
.yoyo-feedback-companion-mark { position: absolute; top: 1px; right: 7px; z-index: 2; display: grid; place-items: center; width: 24px; height: 24px; border: 1px solid #315844; border-radius: 50%; background: #f4e9c9; color: #315844; font: 800 16px/1 sans-serif; box-shadow: 1px 2px 0 #294d3d17; animation: yoyo-affirm-mark 1s ease-out both; }
.yoyo-feedback-companion-mark::before { content: '✦'; position: absolute; top: -7px; right: -10px; color: #bc8654; font-size: 14px; }
@keyframes yoyo-affirm-nod { 0%,100% { transform: translateY(0) rotate(0); } 25% { transform: translateY(-5px) rotate(-4deg); } 55% { transform: translateY(1px) rotate(3deg); } 76% { transform: translateY(-2px) rotate(-1deg); } }
@keyframes yoyo-affirm-mark { 0% { opacity: 0; transform: translateY(7px) scale(.8); } 18%,80% { opacity: 1; transform: translateY(0) scale(1); } 100% { opacity: 0; transform: translateY(-3px) scale(1); } }

@media (prefers-reduced-motion: reduce) { .page-companion.yoyo-feedback-affirm img, .yoyo-feedback-companion-mark { animation: none !important; } }
