/* Base Icon Styles */
[class^="icon-"] {
    display: inline-block;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    text-align: center;
}

/* Time & Date */
.icon-clock::before { content: "🕒"; }
.icon-calendar::before { content: "📅"; }

/* Users & Social */
.icon-users::before { content: "👥"; }
.icon-user::before { content: "👤"; }
.icon-user-plus::before { content: "➕👤"; }
.icon-mail::before { content: "✉️"; }
.icon-bell::before { content: "🔔"; }
.icon-chat::before { content: "💬"; }

/* Navigation */
.icon-chevron-left::before { content: "◀"; }
.icon-chevron-right::before { content: "▶"; }
.icon-chevron-up::before { content: "▲"; }
.icon-chevron-down::before { content: "▼"; }

/* Items & Inventory */
.icon-backpack::before { content: "🎒"; }
.icon-coins::before { content: "💰"; }
.icon-diamond::before { content: "💎"; }
.icon-sparkles::before { content: "✨"; }
.icon-gift::before { content: "🎁"; }
.icon-shop::before { content: "🏪"; }
.icon-gavel::before { content: "🔨"; }

/* Adventure & Combat */
.icon-map::before { content: "🗺️"; }
.icon-compass::before { content: "🧭"; }
.icon-scroll::before { content: "📜"; }
.icon-book::before { content: "📚"; }
.icon-dungeon::before { content: "🏰"; }
.icon-swords::before { content: "⚔️"; }
.icon-shield::before { content: "🛡️"; }
.icon-flag::before { content: "🏳️"; }

/* Mystical & Magical */
.icon-stars::before { content: "✨"; }
.icon-crystal::before { content: "💎"; }
.icon-crystal-ball::before { content: "🔮"; }
.icon-cards::before { content: "🃏"; }
.icon-seasons::before { content: "🍂"; }
.icon-code::before { content: "👨‍💻"; }
.icon-trophy::before { content: "🏆"; }

/* Seasonal Icons */
.icon-spring::before { content: "🌸"; }
.icon-summer::before { content: "☀️"; }
.icon-autumn::before { content: "🍁"; }
.icon-winter::before { content: "❄️"; }

/* Zodiac Icons */
.icon-aries::before { content: "♈"; }
.icon-taurus::before { content: "♉"; }
.icon-gemini::before { content: "♊"; }
.icon-cancer::before { content: "♋"; }
.icon-leo::before { content: "♌"; }
.icon-virgo::before { content: "♍"; }
.icon-libra::before { content: "♎"; }
.icon-scorpio::before { content: "♏"; }
.icon-sagittarius::before { content: "♐"; }
.icon-capricorn::before { content: "♑"; }
.icon-aquarius::before { content: "♒"; }
.icon-pisces::before { content: "♓"; }

/* Element Icons */
.icon-fire::before { content: "🔥"; }
.icon-water::before { content: "💧"; }
.icon-earth::before { content: "🌿"; }
.icon-air::before { content: "💨"; }
.icon-light::before { content: "✨"; }
.icon-dark::before { content: "🌑"; }

/* Status Effect Icons */
.icon-poison::before { content: "☠️"; }
.icon-heal::before { content: "💚"; }
.icon-buff::before { content: "⬆️"; }
.icon-debuff::before { content: "⬇️"; }
.icon-stun::before { content: "💫"; }
.icon-sleep::before { content: "💤"; }

/* Icon Sizes */
.icon-xs { font-size: 0.75em; }
.icon-sm { font-size: 0.875em; }
.icon-md { font-size: 1em; }
.icon-lg { font-size: 1.25em; }
.icon-xl { font-size: 1.5em; }
.icon-2x { font-size: 2em; }
.icon-3x { font-size: 3em; }

/* Icon Colors */
.icon-gold { color: var(--c-fx-gold); }
.icon-sky { color: var(--c-fx-sky); }
.icon-rose { color: var(--c-fx-rose); }
.icon-success { color: var(--c-fx-success); }
.icon-error { color: var(--c-fx-error); }
.icon-info { color: var(--c-fx-info); }

/* Icon Animations */
.icon-spin {
    animation: icon-spin 2s infinite linear;
}

.icon-pulse {
    animation: icon-pulse 2s infinite ease-in-out;
}

.icon-bounce {
    animation: icon-bounce 2s infinite;
}

@keyframes icon-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

@keyframes icon-pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.2); }
    100% { transform: scale(1); }
}

@keyframes icon-bounce {
    0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
    40% { transform: translateY(-10px); }
    60% { transform: translateY(-5px); }
}
