.glow-icon {
    display: inline-block;
    line-height: 1;
    vertical-align: middle;
}

.glow-icon.icon-diamond {
    color: #00e5ff;
    animation: glowDiamond 1.8s ease-in-out infinite;
}

.glow-icon.icon-star {
    color: #ffd600;
    animation: glowStar 2.4s ease-in-out infinite;
}

.glow-icon.icon-lightning {
    color: #d1f5ff;
    animation: glowLightning 1.2s ease-in-out infinite;
}

.glow-icon.icon-crown {
    color: #ffca28;
    animation: glowCrown 2.8s ease-in-out infinite;
}

.glow-icon.icon-rainbow {
    animation: glowRainbow 3s linear infinite;
}

.glow-icon.icon-target {
    color: #ff1744;
    animation: glowTarget 1.5s ease-in-out infinite;
}

.glow-icon.icon-mystic {
    color: #e040fb;
    animation: glowMystic 3.8s linear infinite;
}

.glow-icon.icon-hex {
    color: #76ff03;
    animation: glowHex 1.6s steps(8) infinite;
}

.glow-icon.icon-default {
    animation: glowDefault 2s ease-in-out infinite;
}

@keyframes glowDiamond {
    0%, 100% { transform: scale(1); filter: brightness(1); }
    50% { transform: scale(1.15); filter: brightness(1.35); }
}

@keyframes glowStar {
    0%, 100% { transform: rotate(0deg) scale(1); }
    25% { transform: rotate(8deg) scale(1.06); }
    75% { transform: rotate(-8deg) scale(1.06); }
    50% { transform: rotate(0deg) scale(1.2); }
}

@keyframes glowLightning {
    0%, 100% { opacity: 1; transform: scale(1); }
    20% { opacity: 0.45; transform: scale(0.96); }
    35% { opacity: 1; transform: scale(1.2); }
    55% { opacity: 0.55; transform: scale(1); }
    70% { opacity: 1; transform: scale(1.12); }
}

@keyframes glowCrown {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-1px) scale(1.12); }
}

@keyframes glowRainbow {
    0%   { color: #ff1744; }
    16%  { color: #ff9100; }
    33%  { color: #ffea00; }
    50%  { color: #00e676; }
    66%  { color: #00b0ff; }
    83%  { color: #651fff; }
    100% { color: #ff1744; }
}

@keyframes glowTarget {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.24); }
}

@keyframes glowMystic {
    0% { transform: rotate(0deg) scale(1); }
    25% { transform: rotate(90deg) scale(1.08); }
    50% { transform: rotate(180deg) scale(1); }
    75% { transform: rotate(270deg) scale(1.08); }
    100% { transform: rotate(360deg) scale(1); }
}

@keyframes glowHex {
    0%, 100% { opacity: 1; transform: scale(1); }
    25% { opacity: 0.55; transform: scale(0.98); }
    45% { opacity: 1; transform: scale(1.1); }
    75% { opacity: 0.7; transform: scale(1.02); }
}

@keyframes glowDefault {
    0%, 100% { transform: scale(1); filter: brightness(1) saturate(1.4); }
    50% { transform: scale(1.14); filter: brightness(1.45) saturate(1.9); }
}
