/* 圖示內部循環動畫：幅度細、節奏柔和 */
.ic { width: 100%; height: 100%; display: block; overflow: visible; }
.ic * { transform-box: view-box; }

/* 母乳（奶樽）：輕搖、奶面波動、奶滴 */
.ic-bottle .bottle { animation: ic-rock 3.2s ease-in-out infinite; }
@keyframes ic-rock { 0%, 100% { transform: rotate(-4deg); } 50% { transform: rotate(4deg); } }
.ic-bottle .milk { animation: ic-milk 2.2s ease-in-out infinite; }
@keyframes ic-milk { 0%, 100% { transform: translateY(0.6px) skewY(-1.5deg); } 50% { transform: translateY(-0.6px) skewY(1.5deg); } }
.ic-bottle .drop { animation: ic-drop 3.2s ease-in-out infinite; }
@keyframes ic-drop { 0%, 100% { transform: translate(-2px, 1px) scale(0.75); opacity: 0.7; } 50% { transform: translate(2px, 0) scale(1.05); opacity: 1; } }
/* 母獸哺乳（備用版本） */
.ic-milk .baby { transform-origin: 56px 82px; animation: ic-suckle 1.1s ease-in-out infinite; }
.ic-milk .baby.b2 { transform-origin: 74px 82px; animation-delay: -0.5s; }
.ic-milk .mom { transform-origin: 56px 66px; animation: ic-breathe-soft 3.6s ease-in-out infinite; }
.ic-milk .mom-tail { transform-origin: 80px 47px; animation: ic-tail 3.6s ease-in-out infinite; }
@keyframes ic-suckle {
  0%, 100% { transform: translate(0, 0) rotate(0deg); }
  45% { transform: translate(-0.8px, -1.3px) rotate(-3deg); }
  60% { transform: translate(-0.6px, -1px) rotate(-2.2deg); }
}
@keyframes ic-breathe-soft { 0%, 100% { transform: scale(1, 1); } 50% { transform: scale(1.012, 1.03); } }
@keyframes ic-tail { 0%, 100% { transform: rotate(0deg); } 50% { transform: rotate(9deg); } }

/* 毛髮：逐根輕擺 */
.ic-hair .strand { animation: ic-sway 2.6s ease-in-out infinite; }
.ic-hair .s1 { animation-delay: -0.35s; }
.ic-hair .s2 { animation-delay: -0.7s; }
.ic-hair .s3 { animation-delay: -1.05s; }
.ic-hair .s4 { animation-delay: -1.4s; }
@keyframes ic-sway { 0%, 100% { transform: rotate(-6deg); } 50% { transform: rotate(6deg); } }

/* 肺：緩慢擴張收縮，空氣沿氣管進入 */
.ic-lung .lungs { animation: ic-lung 3.4s ease-in-out infinite; }
@keyframes ic-lung { 0%, 100% { transform: scale(0.93, 0.94); } 50% { transform: scale(1.03, 1.035); } }
.ic-lung .air { animation: ic-air 3.4s ease-in infinite; opacity: 0; }
.ic-lung .air.a2 { animation-delay: 0.45s; }
@keyframes ic-air {
  0% { transform: translateY(0); opacity: 0; }
  8% { opacity: 0.95; }
  40% { transform: translateY(26px); opacity: 0; }
  100% { transform: translateY(26px); opacity: 0; }
}

/* 脊柱：一節一節柔和亮起 */
.ic-spine .vglow { opacity: 0; animation: ic-vglow 2.8s ease-in-out infinite; }
.ic-spine .v1 { animation-delay: 0.16s; }
.ic-spine .v2 { animation-delay: 0.32s; }
.ic-spine .v3 { animation-delay: 0.48s; }
.ic-spine .v4 { animation-delay: 0.64s; }
.ic-spine .v5 { animation-delay: 0.8s; }
.ic-spine .v6 { animation-delay: 0.96s; }
@keyframes ic-vglow { 0% { opacity: 0; } 14% { opacity: 1; } 34% { opacity: 0; } 100% { opacity: 0; } }

/* 羽毛：輕擺 */
.ic-feather .feather { animation: ic-feather 3s ease-in-out infinite; }
@keyframes ic-feather { 0%, 100% { transform: rotate(-6deg); } 50% { transform: rotate(6deg); } }

/* 鰓（魚頭特寫）：鰓蓋柔和開合、泡泡、偶爾眨眼 */
.ic-gill .operculum { animation: ic-gill 2.6s ease-in-out infinite; }
@keyframes ic-gill { 0%, 100% { transform: rotate(0deg); } 50% { transform: rotate(-8deg) translateX(-1.5px); } }
.ic-gill .eye { animation: ic-blink 4.8s ease-in-out infinite; }
@keyframes ic-blink { 0%, 92%, 100% { transform: scaleY(1); } 95% { transform: scaleY(0.12); } }
.ic-gill .bubble { opacity: 0; animation: ic-bubble3 2.6s ease-out infinite; }
.ic-gill .b2 { animation-delay: 1.3s; }
@keyframes ic-bubble3 { 0% { transform: translate(2px, 8px) scale(0.5); opacity: 0; } 20% { opacity: 1; } 100% { transform: translate(-1px, -26px) scale(1.1); opacity: 0; } }

/* 六隻腳：三腳步態交替 */
.ic-sixlegs .leg-a { animation: ic-leg-a 1.1s ease-in-out infinite; }
.ic-sixlegs .leg-b { animation: ic-leg-b 1.1s ease-in-out infinite; }
@keyframes ic-leg-a { 0%, 100% { transform: rotate(-11deg); } 50% { transform: rotate(11deg); } }
@keyframes ic-leg-b { 0%, 100% { transform: rotate(11deg); } 50% { transform: rotate(-11deg); } }
.ic-sixlegs .bug { animation: ic-bug 1.1s ease-in-out infinite; }
@keyframes ic-bug { 0%, 100% { transform: rotate(-1.5deg); } 50% { transform: rotate(1.5deg); } }

@media (prefers-reduced-motion: reduce) {
  .ic * { animation-duration: 6s !important; }
}
