/* Дії іконок з avtorska-icons.ai. Частина іконки з класом a-p виконує анімацію, назва якої в --a
   (розмітку ставить scripts/icon_actions.py). Центр обертання задано в координатах іконки 256x256.
   Запуск: клас на батьківському елементі, див. site-b.css (.is-acting, наведення). Спільне для B, C і аркуша іконок. */
.a-p { transform-box: view-box; }
@keyframes a-ring { 0%, 70%, 100% { rotate: 0deg; } 10% { rotate: -14deg; } 20% { rotate: 12deg; } 30% { rotate: -10deg; } 40% { rotate: 8deg; } 50% { rotate: -5deg; } 60% { rotate: 3deg; } }
@keyframes a-press { 0%, 50%, 100% { translate: 0 0; } 25%, 75% { translate: var(--dx, 0px) var(--dy, 0px); } }
@keyframes a-drop { 0%, 100% { translate: 0 0; } 35% { translate: 0 calc(-1 * var(--h, 16px)); } 62% { translate: 0 3px; } 80% { translate: 0 -1px; } }
@keyframes a-pulse { 0%, 45%, 100% { scale: 1; } 20% { scale: var(--s, 1.15); } 65% { scale: calc((var(--s, 1.15) + 1) / 2); } }
@keyframes a-spin { from { rotate: 0deg; } to { rotate: var(--r, 360deg); } }
@keyframes a-flash { 0%, 60%, 100% { opacity: 1; } 15%, 45% { opacity: 0.15; } 30% { opacity: 1; } }
@keyframes a-zap { 0%, 50%, 100% { opacity: 1; translate: 0 0; } 10% { opacity: 0.2; translate: -3px 2px; } 20% { opacity: 1; translate: 3px -2px; } 30% { opacity: 0.3; translate: -2px 0; } 40% { opacity: 1; translate: 1px 1px; } }
@keyframes a-twinkle { 0%, 100% { scale: 1; rotate: 0deg; } 35% { scale: 0.3; rotate: 45deg; } 65% { scale: 1.35; rotate: 90deg; } }
@keyframes a-float { 0%, 100% { translate: 0 0; scale: 1; } 45% { translate: 0 -10px; scale: 1.15; } }
@keyframes a-rise { 0%, 100% { translate: 0 0; opacity: 1; } 45% { translate: 0 -10px; opacity: 0.2; } 46% { translate: 0 6px; opacity: 0; } }
@keyframes a-tug { 0%, 55%, 100% { translate: 0 0; rotate: 0deg; } 25% { translate: var(--dx, 0px) var(--dy, 0px); rotate: var(--r, 0deg); } 75% { translate: calc(var(--dx, 0px) * 0.5) calc(var(--dy, 0px) * 0.5); rotate: calc(var(--r, 0deg) * 0.5); } }
@keyframes a-wiggle { 0%, 80%, 100% { rotate: 0deg; } 20% { rotate: var(--r, 8deg); } 40% { rotate: calc(var(--r, 8deg) * -0.7); } 60% { rotate: calc(var(--r, 8deg) * 0.4); } }
@keyframes a-buzz { 0%, 80%, 100% { translate: 0 0; } 10%, 30%, 50%, 70% { translate: -2.5px 0; } 20%, 40%, 60% { translate: 2.5px 0; } }
@keyframes a-hop { 0%, 55%, 100% { translate: 0 0; } 25% { translate: 0 calc(-1 * var(--h, 10px)); } 72% { translate: 0 calc(var(--h, 10px) * -0.35); } }
@keyframes a-fade { 0%, 100% { opacity: 1; } 35%, 60% { opacity: 0; } }
@keyframes a-squeeze { 0%, 60%, 100% { scale: 1 1; } 25% { scale: 0.86 1.03; } }
@keyframes a-scan { 0%, 100% { translate: 0 0; } 25% { translate: -9px -7px; } 50% { translate: 5px -12px; } 75% { translate: -4px 3px; } }
@keyframes a-tilt { 0%, 100% { rotate: 0deg; } 35%, 65% { rotate: var(--r, -6deg); } }
@keyframes a-ripple { 0%, 100% { scale: 1; opacity: 1; } 35% { scale: 1.07; opacity: 0.35; } }
@keyframes a-nod { 0%, 50%, 100% { translate: 0 0; rotate: 0deg; } 25% { translate: 0 -5px; rotate: -4deg; } 75% { translate: 0 -3px; rotate: 3deg; } }
@keyframes a-pop2 { 0%, 100% { scale: 1; } 30% { scale: 0.8; } 60% { scale: 1.1; } }
@keyframes a-breathe { 0%, 100% { scale: 1 1; } 30% { scale: 1 0.55; } 60% { scale: 1 1.1; } }
@keyframes a-throb { 0%, 50%, 100% { scale: 1; } 20% { scale: 1.05; } 35% { scale: 0.98; } }
@keyframes a-brush { 0%, 100% { translate: 0 0; } 15%, 45%, 75% { translate: 0 -7px; } 30%, 60%, 90% { translate: 0 4px; } }
@keyframes a-scrape { 0%, 40%, 80%, 100% { translate: 0 0; } 20%, 60% { translate: var(--dx, 0px) var(--dy, 0px); } }
