/* [Nyx 2026-10-08] Efeitos dos itens do menu do site (Painel admin > Menus > ✨ opções do item) */
.nyx-mi-icon { margin-right: 4px; font-style: normal; }
.nyx-mi-text { display: inline-block; }
.nyx-mi-badge { display: inline-block; margin-left: 5px; padding: 0 4px; border-radius: 3px; font-size: 8px; line-height: 12px; font-weight: bold;
	color: #fff !important; -webkit-text-fill-color: #fff; letter-spacing: .3px; vertical-align: 1px; text-transform: uppercase; box-shadow: 0 0 3px rgba(0, 0, 0, .6); }
.nyx-pulse { animation: nyxBadgePulse 1.4s ease-in-out infinite; }
@keyframes nyxBadgePulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.15); filter: brightness(1.3); } }

/* efeitos no texto */
.nyx-fx-glow .nyx-mi-text { animation: nyxGlow 1.8s ease-in-out infinite; }
@keyframes nyxGlow { 0%, 100% { text-shadow: 0 0 1px currentColor; } 50% { text-shadow: 0 0 6px currentColor, 0 0 10px currentColor; } }
.nyx-fx-blink .nyx-mi-text { animation: nyxBlink 1.6s ease-in-out infinite; }
@keyframes nyxBlink { 0%, 100% { opacity: 1; } 50% { opacity: .45; } }
.nyx-fx-rainbow .nyx-mi-text, .nyx-fx-fire .nyx-mi-text, .nyx-fx-gold .nyx-mi-text, .nyx-fx-shimmer .nyx-mi-text {
	background-size: 200% auto; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; animation: nyxSlideBg 3s linear infinite; }
.nyx-fx-rainbow .nyx-mi-text { background-image: linear-gradient(90deg, #ff4d4d, #ffb84d, #fff44d, #4dff88, #4dc3ff, #b84dff, #ff4d4d); }
.nyx-fx-fire .nyx-mi-text { background-image: linear-gradient(90deg, #ffde59, #ff8c1a, #ff3b1a, #ff8c1a, #ffde59); animation-duration: 1.8s; }
.nyx-fx-gold .nyx-mi-text { background-image: linear-gradient(90deg, #b8860b, #ffd700, #fff8dc, #ffd700, #b8860b); }
.nyx-fx-shimmer .nyx-mi-text { background-image: linear-gradient(90deg, currentColor 0%, currentColor 40%, #ffffff 50%, currentColor 60%, currentColor 100%); animation-duration: 2.5s; }
@keyframes nyxSlideBg { from { background-position: 0% 50%; } to { background-position: 200% 50%; } }

/* ao passar o mouse */
.Submenuitem .SubmenuitemLabel { transition: transform .2s ease; }
.Submenuitem .nyx-mi-text { transition: text-shadow .2s ease, letter-spacing .2s ease; }
.nyx-hv-slide:hover .SubmenuitemLabel { transform: translateX(5px); }
.nyx-hv-grow:hover .SubmenuitemLabel { transform: scale(1.07); transform-origin: 22px center; }
.nyx-hv-glow:hover .nyx-mi-text { text-shadow: 0 0 6px #fff, 0 0 10px currentColor; }
.nyx-hv-shake:hover .SubmenuitemLabel { animation: nyxShake .4s ease; }
@keyframes nyxShake { 0%, 100% { transform: translateX(0); } 20%, 60% { transform: translateX(-2px); } 40%, 80% { transform: translateX(2px); } }
.nyx-hv-spread:hover .nyx-mi-text { letter-spacing: .6px; }

@media (prefers-reduced-motion: reduce) {
	.Submenuitem, .Submenuitem * { animation: none !important; transition: none !important; }
}

/* fundo do item: efeito animado (cor em --nyx-c) e cor ao passar o mouse (data-hbg, ver MouseOverSubmenuItem) */
.Submenuitem[class*="nyx-bg-"] { --nyx-c: #ffd700; }
.nyx-bg-shine { background-image: linear-gradient(110deg, transparent 35%, color-mix(in srgb, var(--nyx-c) 45%, transparent) 50%, transparent 65%);
	background-size: 250% 100%; background-repeat: no-repeat; animation: nyxBgShine 2.8s ease-in-out infinite; }
@keyframes nyxBgShine { 0% { background-position: 130% 0; } 60%, 100% { background-position: -30% 0; } }
.nyx-bg-pulse { animation: nyxBgPulse 2s ease-in-out infinite; }
@keyframes nyxBgPulse { 0%, 100% { box-shadow: inset 0 0 0 transparent; } 50% { box-shadow: inset 0 0 10px color-mix(in srgb, var(--nyx-c) 70%, transparent); } }
.nyx-bg-wave { background-image: linear-gradient(90deg, transparent, color-mix(in srgb, var(--nyx-c) 35%, transparent), transparent);
	background-size: 200% 100%; animation: nyxBgWave 3s linear infinite; }
@keyframes nyxBgWave { from { background-position: 200% 0; } to { background-position: 0 0; } }
.nyx-bg-fire { background-image: linear-gradient(to top, color-mix(in srgb, var(--nyx-c) 55%, transparent), transparent 75%);
	background-size: 100% 200%; animation: nyxBgFire 1.1s ease-in-out infinite alternate; }
@keyframes nyxBgFire { from { background-position: 0 100%; filter: brightness(1); } to { background-position: 0 70%; filter: brightness(1.15); } }
.nyx-bg-sparkle { background-image: radial-gradient(circle, var(--nyx-c) 0 1px, transparent 1.5px), radial-gradient(circle, color-mix(in srgb, var(--nyx-c) 70%, transparent) 0 1px, transparent 1.5px);
	background-size: 23px 17px, 31px 19px; background-position: 0 0, 11px 7px; animation: nyxBgSparkle 2.4s linear infinite; }
@keyframes nyxBgSparkle { 0% { background-position: 0 0, 11px 7px; opacity: 1; } 50% { opacity: .75; } 100% { background-position: 23px -17px, -20px 26px; opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .Submenuitem[class*="nyx-bg-"] { animation: none !important; } }
