@keyframes subscription-ring-spin{to{transform:rotate(1turn)}}@keyframes subscription-glow-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.9;transform:scale(1.04)}}@keyframes subscription-badge-pop{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes subscription-border-shimmer{0%,to{background-position:0 50%}50%{background-position:100% 50%}}@keyframes subscription-glow-pulse-square{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.65;transform:scale(1.02)}}.subscription-avatar-frame{position:relative;display:inline-flex;flex-shrink:0;isolation:isolate}.subscription-avatar-frame__glow{position:absolute;inset:-3px;border-radius:inherit;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--color-accent) 45%,transparent),transparent 70%);animation:subscription-glow-pulse 2.8s ease-in-out infinite;pointer-events:none}.subscription-avatar-frame__ring{position:absolute;inset:0;border-radius:inherit;background:conic-gradient(from 0deg,var(--color-accent),#fbbf24,#a78bfa,#f472b6,var(--color-accent));animation:subscription-ring-spin 4s linear infinite;pointer-events:none}.subscription-avatar-frame--square .subscription-avatar-frame__ring{background:linear-gradient(135deg,var(--color-accent),#fbbf24 38%,#c4b5fd 68%,var(--color-accent));background-size:220% 220%;animation:subscription-border-shimmer 5.5s ease-in-out infinite}.subscription-avatar-frame--square .subscription-avatar-frame__glow{inset:-2px;animation:subscription-glow-pulse-square 3.4s ease-in-out infinite}.subscription-avatar-frame__inner{position:relative;z-index:1;margin:0;border-radius:inherit;overflow:hidden;background:var(--color-card)}.subscription-avatar-frame--active .subscription-avatar-frame__inner{margin:3px}.subscription-avatar-frame--active.subscription-avatar-frame--square .subscription-avatar-frame__inner{margin:2.5px}.subscription-avatar-frame__badge{position:absolute;z-index:2;display:flex;align-items:center;justify-content:center;border-radius:9999px;background:linear-gradient(135deg,var(--color-accent),#a78bfa);color:#000;box-shadow:0 0 0 2px var(--color-card),0 2px 8px color-mix(in srgb,var(--color-accent) 50%,transparent);animation:subscription-badge-pop 2.4s ease-in-out infinite;pointer-events:none}.subscription-avatar-frame--round .subscription-avatar-frame__badge{right:-2px;bottom:-2px;width:1rem;height:1rem}.subscription-avatar-frame--square .subscription-avatar-frame__badge{right:-4px;top:-4px;width:1.25rem;height:1.25rem}@media (prefers-reduced-motion:reduce){.subscription-avatar-frame__badge,.subscription-avatar-frame__glow,.subscription-avatar-frame__ring{animation:none}}