/* Anti-FOUC — carregamento suave (header + home) */

@keyframes apex-shimmer {
    0% { opacity: 0.55; }
    50% { opacity: 0.85; }
    100% { opacity: 0.55; }
}

/* Header: não mostra navbar Vue até o inject DonaldBet */
.navbar.navtop-color:not(.apex-ready) .nav-menu {
    opacity: 0;
}

.navbar.navtop-color.apex-ready .nav-menu {
    opacity: 1;
    transition: opacity 0.12s ease;
}

.navbar.navtop-color:not(.apex-ready) {
    min-height: 3.5rem;
}

/* Home: oculta hero grande */
html.apex-home-page .relative.mb-6:has(.main-banner) {
    display: none !important;
}

/* Carrossel Vue só some quando o Apex montou com sucesso */
html.apex-home-page.apex-banners-mounted .relative.mb-6:has(.recommended-banner) {
    display: none !important;
}

html.apex-home-page .custom-pulse.mb-6.h-44,
html.apex-home-page div.custom-pulse.mb-6.h-44 {
    display: none !important;
}

/* Carrossel Apex: reserva espaço até montar */
html.apex-home-page:not(.apex-home-ready) .apex-home-banners {
    visibility: hidden;
    height: 0;
    margin: 0;
    overflow: hidden;
}

html.apex-home-page.apex-home-ready .apex-home-banners {
    visibility: visible;
    height: auto;
}

/* Menu circular: fade-in suave */
html.apex-home-page .apex-home-menu {
    animation: apex-fade-in 0.15s ease;
}

@keyframes apex-fade-in {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Esconde menu de categorias Vue na home */
html.apex-home-page .mb-4.xl\:mb-11:has(.site-filter-item) {
    display: none !important;
}
