/* Cosméticos de perfil — efectos equipados (Store premium) */

.sp-avatar-wrap,
.social-left-avatar,
.social-story-owner-avatar,
.social-composer-avatar,
.ws-preview-avatar-shell {
  position: relative;
}

.pcos-avatar-frame {
  position: absolute;
  inset: -30px;
  pointer-events: none;
  z-index: 4;
  border-radius: 50%;
}
.pcos-af {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.pcos-avatar-sunflowers .pcos-af-1::before {
  content: "🌻 🌻 🌻";
  position: absolute;
  top: 2%;
  left: 50%;
  transform: translateX(-50%);
  font-size: clamp(0.65rem, 2.8vw, 1rem);
  white-space: nowrap;
  letter-spacing: -0.15em;
  filter: drop-shadow(0 2px 4px rgba(234, 179, 8, 0.45));
  animation: pcos-sway 3.2s ease-in-out infinite;
}
.pcos-avatar-sunflowers .pcos-af-2::before { content: "🌻"; top: 28%; left: -4%; font-size: 0.85rem; position: absolute; animation: pcos-sway-l 3.6s ease-in-out infinite reverse; }
.pcos-avatar-sunflowers .pcos-af-2::after  { content: "🌻"; top: 28%; right: -4%; font-size: 0.85rem; position: absolute; animation: pcos-sway-r 3.4s ease-in-out infinite; }
.pcos-avatar-sunflowers .pcos-af-3::before { content: "🍃"; top: 12%; left: 18%; font-size: 0.7rem; position: absolute; animation: pcos-leaf 4s ease-in-out infinite; }
.pcos-avatar-sunflowers .pcos-af-3::after  { content: "🍃"; top: 12%; right: 18%; font-size: 0.7rem; position: absolute; animation: pcos-leaf 4.2s ease-in-out infinite reverse; }
.pcos-avatar-sunflowers .pcos-af-4::before { content: ""; position: absolute; inset: 6%; border-radius: 50%; border: 2px dashed rgba(234, 179, 8, 0.35); animation: pcos-ring-spin 18s linear infinite; }

.pcos-avatar-moon-crystal .pcos-af-1::before {
  content: "🌙";
  position: absolute;
  top: -18%;
  left: 50%;
  transform: translateX(-50%);
  font-size: clamp(1.4rem, 5vw, 2.1rem);
  filter: drop-shadow(0 0 10px rgba(167, 139, 250, 0.9)) drop-shadow(0 0 20px rgba(99, 102, 241, 0.5));
  animation: pcos-moon-float 3s ease-in-out infinite;
}
.pcos-avatar-moon-crystal .pcos-af-2::before { content: "💎"; top: 8%; left: 8%; font-size: 0.55rem; position: absolute; animation: pcos-crystal 2.2s ease-in-out infinite; }
.pcos-avatar-moon-crystal .pcos-af-2::after  { content: "💎"; top: 8%; right: 8%; font-size: 0.55rem; position: absolute; animation: pcos-crystal 2.5s ease-in-out infinite 0.4s; }
.pcos-avatar-moon-crystal .pcos-af-3::before { content: "✨"; bottom: 18%; left: 5%; font-size: 0.5rem; position: absolute; animation: pcos-sparkle-blink 1.8s ease-in-out infinite; }
.pcos-avatar-moon-crystal .pcos-af-3::after  { content: "✨"; bottom: 22%; right: 6%; font-size: 0.45rem; position: absolute; animation: pcos-sparkle-blink 2s ease-in-out infinite 0.6s; }
.pcos-avatar-moon-crystal .pcos-af-4::before { content: ""; position: absolute; inset: 4%; border-radius: 50%; box-shadow: 0 0 18px rgba(139, 92, 246, 0.35), inset 0 0 12px rgba(167, 139, 250, 0.15); animation: pcos-aura-pulse 2.8s ease-in-out infinite; }

.pcos-avatar-celestial .pcos-af-1::before { content: "☀️"; position: absolute; top: -14%; left: 50%; transform: translateX(-50%); font-size: clamp(0.9rem, 3vw, 1.3rem); animation: pcos-sun-pulse 2.5s ease-in-out infinite; }
.pcos-avatar-celestial .pcos-af-2::before { content: ""; position: absolute; inset: 2%; border-radius: 50%; border: 2px solid rgba(251, 191, 36, 0.65); box-shadow: 0 0 12px rgba(251, 191, 36, 0.35); animation: pcos-ring-spin 12s linear infinite; }
.pcos-avatar-celestial .pcos-af-3::before { content: "⭐"; top: 42%; left: -6%; font-size: 0.55rem; position: absolute; animation: pcos-orbit-star 5s linear infinite; }
.pcos-avatar-celestial .pcos-af-3::after  { content: "⭐"; top: 42%; right: -6%; font-size: 0.55rem; position: absolute; animation: pcos-orbit-star 5s linear infinite reverse; }
.pcos-avatar-celestial .pcos-af-4::before { content: "🪐"; bottom: 0; left: 50%; transform: translateX(-50%); font-size: 0.5rem; position: absolute; opacity: 0.85; animation: pcos-bob 3s ease-in-out infinite; }

.pcos-avatar-cat .pcos-af-1::before { content: "🐱"; position: absolute; top: -20%; left: 22%; font-size: 0.75rem; transform: rotate(-12deg); animation: pcos-ear-wiggle 2.5s ease-in-out infinite; }
.pcos-avatar-cat .pcos-af-1::after  { content: "🐱"; position: absolute; top: -20%; right: 22%; font-size: 0.75rem; transform: scaleX(-1) rotate(-12deg); animation: pcos-ear-wiggle 2.5s ease-in-out infinite 0.2s; }
.pcos-avatar-cat .pcos-af-2::before { content: ""; position: absolute; top: 52%; left: 8%; width: 14%; height: 1px; background: linear-gradient(90deg, transparent, rgba(30,30,30,0.7)); box-shadow: 0 3px 0 rgba(30,30,30,0.5), 0 6px 0 rgba(30,30,30,0.35); transform: rotate(-8deg); }
.pcos-avatar-cat .pcos-af-2::after  { content: ""; position: absolute; top: 52%; right: 8%; width: 14%; height: 1px; background: linear-gradient(270deg, transparent, rgba(30,30,30,0.7)); box-shadow: 0 3px 0 rgba(30,30,30,0.5), 0 6px 0 rgba(30,30,30,0.35); transform: rotate(8deg); }
.pcos-avatar-cat .pcos-af-3::before { content: "💗"; bottom: -2%; right: 10%; font-size: 0.55rem; position: absolute; animation: pcos-heart-float 2.8s ease-in-out infinite; }
.pcos-avatar-cat .pcos-af-4::before { content: ""; position: absolute; inset: 8%; border-radius: 50%; border: 2px solid rgba(244, 114, 182, 0.35); }

.pcos-avatar-kawaii .pcos-af-1::before { content: "💕"; top: -8%; right: 0; font-size: 0.7rem; position: absolute; animation: pcos-heart-float 2.2s ease-in-out infinite; }
.pcos-avatar-kawaii .pcos-af-1::after  { content: "💖"; top: 15%; left: -6%; font-size: 0.65rem; position: absolute; animation: pcos-heart-float 2.6s ease-in-out infinite 0.3s; }
.pcos-avatar-kawaii .pcos-af-2::before { content: "💗"; bottom: 10%; right: -4%; font-size: 0.6rem; position: absolute; animation: pcos-heart-float 2.4s ease-in-out infinite 0.6s; }
.pcos-avatar-kawaii .pcos-af-2::after  { content: "😍"; bottom: -6%; left: 50%; transform: translateX(-50%); font-size: 0.85rem; position: absolute; animation: pcos-bob 2.8s ease-in-out infinite; }
.pcos-avatar-kawaii .pcos-af-3::before { content: ""; position: absolute; inset: 5%; border-radius: 50%; border: 2px dotted rgba(244, 114, 182, 0.45); animation: pcos-ring-spin 20s linear infinite reverse; }
.pcos-avatar-kawaii .pcos-af-4::before { content: "✨"; top: 5%; left: 50%; transform: translateX(-50%); font-size: 0.45rem; position: absolute; animation: pcos-sparkle-blink 1.5s ease-in-out infinite; }

.pcos-avatar-anime .pcos-af-1::before { content: ""; position: absolute; top: -5%; left: 50%; width: 120%; height: 35%; transform: translateX(-50%); background: repeating-linear-gradient(90deg, transparent 0 8%, rgba(255,255,255,0.15) 8% 10%, transparent 10% 18%); clip-path: polygon(50% 100%, 0 0, 100% 0); animation: pcos-anime-flash 1.2s ease-in-out infinite; }
.pcos-avatar-anime .pcos-af-2::before { content: "あ!"; position: absolute; bottom: -8%; right: -2%; font-size: 0.75rem; font-weight: 900; color: #fff; background: #ec4899; border: 2px solid #fff; border-radius: 50% 50% 50% 8%; padding: 2px 6px; box-shadow: 0 2px 8px rgba(236, 72, 153, 0.5); animation: pcos-bubble-pop 2s ease-in-out infinite; }
.pcos-avatar-anime .pcos-af-3::before { content: "💥"; top: 8%; left: -4%; font-size: 0.7rem; position: absolute; animation: pcos-pop 1.5s ease-in-out infinite; }
.pcos-avatar-anime .pcos-af-3::after  { content: "⚡"; top: 20%; right: -6%; font-size: 0.65rem; position: absolute; animation: pcos-pop 1.7s ease-in-out infinite 0.2s; }
.pcos-avatar-anime .pcos-af-4::before { content: ""; position: absolute; inset: 0; border-radius: 50%; border: 2px solid rgba(236, 72, 153, 0.4); animation: pcos-ring-pulse 1.8s ease-in-out infinite; }

.pcos-avatar-stars .pcos-af-1::before { content: ""; position: absolute; inset: 0; border-radius: 50%; border: 2px solid rgba(251, 191, 36, 0.5); animation: pcos-ring-spin 8s linear infinite; }
.pcos-avatar-stars .pcos-af-2::before { content: "⭐"; top: -6%; left: 50%; transform: translateX(-50%); font-size: 0.7rem; position: absolute; animation: pcos-star-twinkle 1.6s ease-in-out infinite; }
.pcos-avatar-stars .pcos-af-2::after  { content: "⭐"; bottom: -4%; left: 50%; transform: translateX(-50%); font-size: 0.55rem; position: absolute; animation: pcos-star-twinkle 1.8s ease-in-out infinite 0.4s; }
.pcos-avatar-stars .pcos-af-3::before { content: "✦"; top: 50%; left: -8%; font-size: 0.65rem; color: #fbbf24; position: absolute; animation: pcos-orbit-star 6s linear infinite; }
.pcos-avatar-stars .pcos-af-3::after  { content: "✦"; top: 50%; right: -8%; font-size: 0.65rem; color: #fbbf24; position: absolute; animation: pcos-orbit-star 6s linear infinite reverse; }
.pcos-avatar-stars .pcos-af-4::before { content: ""; position: absolute; inset: 10%; border-radius: 50%; background: radial-gradient(circle, rgba(251, 191, 36, 0.12) 0%, transparent 70%); animation: pcos-aura-pulse 2s ease-in-out infinite; }

.pcos-avatar-drip-moon .pcos-af-1::before { content: "🌙"; position: absolute; top: -16%; left: 50%; transform: translateX(-50%); font-size: clamp(1.2rem, 4vw, 1.8rem); filter: drop-shadow(0 0 12px rgba(236, 72, 153, 0.7)) hue-rotate(-15deg); animation: pcos-moon-float 2.8s ease-in-out infinite; }
.pcos-avatar-drip-moon .pcos-af-2::before { content: ""; position: absolute; top: 18%; left: 46%; width: 8%; height: 18%; background: linear-gradient(180deg, rgba(236, 72, 153, 0.8), rgba(167, 139, 250, 0.4)); border-radius: 0 0 50% 50%; animation: pcos-drip 2.2s ease-in-out infinite; }
.pcos-avatar-drip-moon .pcos-af-3::before { content: "💧"; top: 38%; left: 44%; font-size: 0.4rem; position: absolute; opacity: 0; animation: pcos-drip-drop 2.2s ease-in-out infinite; }
.pcos-avatar-drip-moon .pcos-af-4::before { content: ""; position: absolute; inset: 5%; border-radius: 50%; box-shadow: 0 0 20px rgba(236, 72, 153, 0.35), 0 0 30px rgba(167, 139, 250, 0.25); animation: pcos-aura-pulse 2.5s ease-in-out infinite; }

.pcos-avatar-hood .pcos-af-1::before { content: ""; position: absolute; top: -8%; left: 50%; width: 95%; height: 55%; transform: translateX(-50%); background: radial-gradient(ellipse at 50% 0%, #dc2626 0%, #991b1b 55%, transparent 72%); border-radius: 50% 50% 30% 30%; filter: drop-shadow(0 4px 8px rgba(0,0,0,0.35)); }
.pcos-avatar-hood .pcos-af-2::before { content: ""; position: absolute; top: 28%; left: 50%; width: 14%; height: 10%; transform: translateX(-50%); background: linear-gradient(145deg, #e5e7eb, #9ca3af); border-radius: 50%; box-shadow: inset 0 1px 2px rgba(255,255,255,0.6); }
.pcos-avatar-hood .pcos-af-3::before { content: ""; position: absolute; inset: 12%; border-radius: 50%; border: 1px solid rgba(220, 38, 38, 0.25); }

.pcos-avatar-butterflies .pcos-af-1::before,
.pcos-avatar-butterflies .pcos-af-2::before { content: "🦋"; position: absolute; font-size: 0.8rem; animation: pcos-butterfly-orbit 4s ease-in-out infinite; }
.pcos-avatar-butterflies .pcos-af-1::before { top: 5%; left: -5%; animation-delay: 0s; }
.pcos-avatar-butterflies .pcos-af-2::before { bottom: 10%; right: -5%; animation-delay: -2s; font-size: 0.65rem; }
.pcos-avatar-butterflies .pcos-af-3::before { content: "🦋"; top: 40%; right: -8%; font-size: 0.55rem; position: absolute; animation: pcos-butterfly-orbit 5s ease-in-out infinite -1s; }

.pcos-avatar-sparkles .pcos-af-1::before { content: "✨"; top: 0; left: 10%; font-size: 0.55rem; position: absolute; animation: pcos-sparkle-blink 1.4s ease-in-out infinite; }
.pcos-avatar-sparkles .pcos-af-1::after  { content: "✨"; bottom: 5%; right: 8%; font-size: 0.5rem; position: absolute; animation: pcos-sparkle-blink 1.6s ease-in-out infinite 0.3s; }
.pcos-avatar-sparkles .pcos-af-2::before { content: "⭐"; top: 35%; left: -6%; font-size: 0.45rem; position: absolute; animation: pcos-sparkle-blink 1.8s ease-in-out infinite 0.6s; }
.pcos-avatar-sparkles .pcos-af-2::after  { content: "💫"; top: 20%; right: -4%; font-size: 0.5rem; position: absolute; animation: pcos-sparkle-blink 1.5s ease-in-out infinite 0.9s; }
.pcos-avatar-sparkles .pcos-af-3::before { content: ""; position: absolute; inset: 8%; border-radius: 50%; border: 1px solid rgba(251, 191, 36, 0.35); animation: pcos-ring-pulse 2.5s ease-in-out infinite; }

.sp-name.pcos-name,
.ws-preview-name.pcos-name,
h1.pcos-name { position: relative; display: inline-block; }
.pcos-name-inner { position: relative; z-index: 1; }
.pcos-name-fx { position: absolute; inset: -14px -22px; pointer-events: none; z-index: 2; overflow: visible; }
.pcos-ns { position: absolute; font-style: normal; font-size: 0.72rem; line-height: 1; opacity: 0; animation: pcos-ns-float 2.4s ease-in-out infinite; }
.pcos-ns::before { content: "✦"; }
.pcos-name-sparkle-diamond .pcos-ns::before,
.pcos-name-glitter .pcos-ns::before { content: "✨"; }
.pcos-name-sparkle-rainbow .pcos-ns::before { content: "💫"; }
.pcos-name-starfield .pcos-ns::before { content: "⭐"; }
.pcos-ns-1 { top: 0; left: 5%; animation-delay: 0s; }
.pcos-ns-2 { top: 18%; right: 0; animation-delay: -0.4s; }
.pcos-ns-3 { bottom: 8%; left: 12%; animation-delay: -0.8s; }
.pcos-ns-4 { top: 38%; left: -4%; animation-delay: -1.2s; }
.pcos-ns-5 { bottom: 0; right: 8%; animation-delay: -1.6s; }
.pcos-ns-6 { top: 8%; right: 18%; animation-delay: -2s; }

.pcos-name-sparkle-diamond .pcos-name-inner {
  background: linear-gradient(120deg, #fff7ed 0%, #fde68a 25%, #fff 50%, #fcd34d 75%, #fef3c7 100%);
  background-size: 200% auto;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 0 8px rgba(251, 191, 36, 0.45));
  animation: pcos-text-shine 3s linear infinite;
}
.pcos-name-sparkle-diamond::after {
  content: "";
  position: absolute;
  inset: -4px -8px;
  background: radial-gradient(circle at 30% 50%, rgba(255,255,255,0.15), transparent 55%);
  pointer-events: none;
  animation: pcos-aura-pulse 2.5s ease-in-out infinite;
}

.pcos-name-sparkle-rainbow .pcos-name-inner {
  background: linear-gradient(90deg, #f472b6, #a78bfa, #38bdf8, #4ade80, #fbbf24, #f472b6);
  background-size: 300% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: pcos-rainbow-slide 4s linear infinite;
}
.pcos-name-sparkle-rainbow .pcos-ns { animation-duration: 2s; animation-name: pcos-ns-rainbow; }

.pcos-name-glitter .pcos-name-inner { color: #fef9c3; text-shadow: 0 0 8px rgba(251, 191, 36, 0.6), 0 0 16px rgba(255, 255, 255, 0.25); }
.pcos-name-glitter .pcos-ns { animation-duration: 1.2s; font-size: 0.6rem; }
.pcos-name-glitter::before {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(90deg, transparent 0 40px, rgba(255,255,255,0.08) 40px 41px);
  pointer-events: none;
  animation: pcos-glitter-scan 2.5s linear infinite;
}

.pcos-name-neon-pulse .pcos-name-inner { color: #e0f2fe; animation: pcos-neon-text 2s ease-in-out infinite; }

.pcos-name-starfield .pcos-name-inner { color: #e2e8f0; text-shadow: 0 0 12px rgba(148, 163, 184, 0.5); }
.pcos-name-starfield::before {
  content: "";
  position: absolute;
  inset: -20px -30px;
  background-image:
    radial-gradient(1px 1px at 10% 20%, rgba(255,255,255,0.9), transparent),
    radial-gradient(1px 1px at 80% 40%, rgba(255,255,255,0.7), transparent),
    radial-gradient(1.5px 1.5px at 50% 80%, rgba(251, 191, 36, 0.8), transparent),
    radial-gradient(1px 1px at 30% 60%, rgba(255,255,255,0.6), transparent);
  animation: pcos-stars-drift 8s linear infinite;
  pointer-events: none;
  opacity: 0.8;
}

.pcos-name-gold .pcos-name-inner { color: #fcd34d; text-shadow: 0 0 10px rgba(251, 191, 36, 0.55), 0 0 20px rgba(251, 191, 36, 0.25); }

.pcos-name-fire .pcos-name-inner {
  background: linear-gradient(180deg, #fef08a 0%, #f97316 35%, #ef4444 70%, #7f1d1d 100%);
  background-size: 100% 200%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 0 6px rgba(249, 115, 22, 0.6));
  animation: pcos-fire-flicker 1.5s ease-in-out infinite alternate;
}

.pcos-name-shimmer .pcos-name-inner { position: relative; color: #f1f5f9; }
.pcos-name-shimmer .pcos-name-inner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 35%, rgba(255,255,255,0.85) 50%, transparent 65%);
  -webkit-background-clip: text;
  background-clip: text;
  animation: pcos-shimmer-pass 2.8s ease-in-out infinite;
  pointer-events: none;
}

.sp-cover-wrap { position: relative; overflow: hidden; }
.pcos-cover-overlay { position: absolute; inset: 0; pointer-events: none; z-index: 2; }
.pcos-cover-aurora {
  background: linear-gradient(120deg, rgba(16, 185, 129, 0.25), transparent 40%), linear-gradient(240deg, rgba(139, 92, 246, 0.3), transparent 45%), linear-gradient(60deg, rgba(56, 189, 248, 0.2), transparent 50%);
  background-size: 200% 200%;
  animation: pcos-aurora 8s ease-in-out infinite;
  mix-blend-mode: screen;
}
.pcos-cover-neon {
  background: radial-gradient(ellipse at 20% 80%, rgba(236, 72, 153, 0.35), transparent 50%), radial-gradient(ellipse at 80% 20%, rgba(34, 211, 238, 0.35), transparent 50%);
  animation: pcos-neon-cover 3s ease-in-out infinite;
  mix-blend-mode: screen;
}
.pcos-cover-cinematic {
  background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.15) 100%), repeating-linear-gradient(0deg, transparent 0 2px, rgba(255,255,255,0.03) 2px 3px);
  animation: pcos-cinematic-grain 0.5s steps(2) infinite;
}
.pcos-cover-cinematic::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 70% 30%, rgba(251, 191, 36, 0.12), transparent 45%);
  animation: pcos-aura-pulse 4s ease-in-out infinite;
}

.social-story-ring,
.ws-preview-story-ring { position: relative; }
.pcos-story-sparkle { background: conic-gradient(from 0deg, #fbbf24, #fff, #a78bfa, #f472b6, #fbbf24); animation: pcos-ring-spin 3s linear infinite; padding: 3px; }
.pcos-story-gold { background: linear-gradient(135deg, #fcd34d, #f59e0b, #fde68a, #d97706); background-size: 200% 200%; animation: pcos-gold-ring 2.5s ease-in-out infinite; padding: 3px; box-shadow: 0 0 12px rgba(251, 191, 36, 0.45); }
.pcos-story-neon { background: conic-gradient(from 0deg, #22d3ee, #a855f7, #ec4899, #22d3ee); animation: pcos-ring-spin 2s linear infinite; padding: 3px; box-shadow: 0 0 16px rgba(34, 211, 238, 0.35); }

@keyframes pcos-sway { 0%, 100% { transform: translateX(-50%) rotate(-4deg); } 50% { transform: translateX(-50%) rotate(4deg); } }
@keyframes pcos-sway-l { 0%, 100% { transform: rotate(-4deg); } 50% { transform: rotate(4deg); } }
@keyframes pcos-sway-r { 0%, 100% { transform: rotate(4deg); } 50% { transform: rotate(-4deg); } }
@keyframes pcos-leaf { 0%, 100% { transform: rotate(-8deg) translateY(0); opacity: 0.85; } 50% { transform: rotate(8deg) translateY(-2px); opacity: 1; } }
@keyframes pcos-ring-spin { to { transform: rotate(360deg); } }
@keyframes pcos-moon-float { 0%, 100% { transform: translateX(-50%) translateY(0); } 50% { transform: translateX(-50%) translateY(-3px); } }
@keyframes pcos-crystal { 0%, 100% { opacity: 0.5; transform: translateY(0); } 50% { opacity: 1; transform: translateY(2px); } }
@keyframes pcos-sparkle-blink { 0%, 100% { opacity: 0.2; transform: scale(0.7); } 50% { opacity: 1; transform: scale(1.1); } }
@keyframes pcos-aura-pulse { 0%, 100% { opacity: 0.5; } 50% { opacity: 1; } }
@keyframes pcos-sun-pulse { 0%, 100% { transform: translateX(-50%) scale(1); filter: brightness(1); } 50% { transform: translateX(-50%) scale(1.08); filter: brightness(1.2); } }
@keyframes pcos-orbit-star { 0% { transform: rotate(0deg) translateX(4px) rotate(0deg); } 100% { transform: rotate(360deg) translateX(4px) rotate(-360deg); } }
@keyframes pcos-bob { 0%, 100% { transform: translateX(-50%) translateY(0); } 50% { transform: translateX(-50%) translateY(-4px); } }
@keyframes pcos-ear-wiggle { 0%, 100% { transform: rotate(-12deg); } 50% { transform: rotate(-6deg) translateY(-2px); } }
@keyframes pcos-heart-float { 0%, 100% { transform: translateY(0) scale(1); opacity: 0.85; } 50% { transform: translateY(-5px) scale(1.1); opacity: 1; } }
@keyframes pcos-anime-flash { 0%, 100% { opacity: 0.4; } 50% { opacity: 1; } }
@keyframes pcos-bubble-pop { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.08); } }
@keyframes pcos-pop { 0%, 100% { transform: scale(0.85); opacity: 0.7; } 50% { transform: scale(1.15); opacity: 1; } }
@keyframes pcos-ring-pulse { 0%, 100% { transform: scale(1); opacity: 0.6; } 50% { transform: scale(1.04); opacity: 1; } }
@keyframes pcos-star-twinkle { 0%, 100% { opacity: 0.4; transform: translateX(-50%) scale(0.8); } 50% { opacity: 1; transform: translateX(-50%) scale(1.15); } }
@keyframes pcos-drip { 0%, 100% { height: 12%; opacity: 0.7; } 50% { height: 22%; opacity: 1; } }
@keyframes pcos-drip-drop { 0%, 40% { opacity: 0; transform: translateY(0); } 60% { opacity: 1; } 100% { opacity: 0; transform: translateY(12px); } }
@keyframes pcos-butterfly-orbit { 0%, 100% { transform: translate(0, 0) rotate(0deg); } 25% { transform: translate(4px, -6px) rotate(8deg); } 50% { transform: translate(0, -10px) rotate(0deg); } 75% { transform: translate(-4px, -4px) rotate(-8deg); } }
@keyframes pcos-ns-float { 0%, 100% { opacity: 0; transform: scale(0.4) translateY(4px); } 25% { opacity: 1; transform: scale(1) translateY(0); } 75% { opacity: 0.55; transform: scale(0.8) translateY(-6px); } }
@keyframes pcos-ns-rainbow { 0%, 100% { opacity: 0; transform: scale(0.5); filter: hue-rotate(0deg); } 50% { opacity: 1; transform: scale(1.1); filter: hue-rotate(180deg); } }
@keyframes pcos-text-shine { to { background-position: 200% center; } }
@keyframes pcos-rainbow-slide { to { background-position: 300% 0; } }
@keyframes pcos-glitter-scan { to { transform: translateX(40px); } }
@keyframes pcos-neon-text { 0%, 100% { text-shadow: 0 0 6px #22d3ee, 0 0 14px #22d3ee, 0 0 2px #fff; color: #e0f2fe; } 50% { text-shadow: 0 0 8px #ec4899, 0 0 18px #ec4899, 0 0 2px #fff; color: #fce7f3; } }
@keyframes pcos-stars-drift { to { transform: translateX(20px); } }
@keyframes pcos-fire-flicker { 0% { background-position: 0 0; filter: drop-shadow(0 0 6px rgba(249, 115, 22, 0.5)); } 100% { background-position: 0 100%; filter: drop-shadow(0 0 10px rgba(239, 68, 68, 0.7)); } }
@keyframes pcos-shimmer-pass { 0% { transform: translateX(-120%); } 100% { transform: translateX(120%); } }
@keyframes pcos-aurora { 0%, 100% { background-position: 0% 50%; opacity: 0.75; } 50% { background-position: 100% 50%; opacity: 1; } }
@keyframes pcos-neon-cover { 0%, 100% { opacity: 0.65; filter: hue-rotate(0deg); } 50% { opacity: 1; filter: hue-rotate(30deg); } }
@keyframes pcos-cinematic-grain { 0% { opacity: 0.9; } 50% { opacity: 1; } 100% { opacity: 0.92; } }
@keyframes pcos-gold-ring { 0%, 100% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } }

@media (prefers-reduced-motion: reduce) {
  .pcos-avatar-frame *,
  .pcos-name-fx *,
  .pcos-cover-overlay,
  .pcos-name-inner,
  .pcos-story-sparkle,
  .pcos-story-gold,
  .pcos-story-neon { animation: none !important; }
}


