/*
Theme Name: BlackCore Gamer
Description: Tema Premium para loja de games, otimizado para Elementor e WooCommerce com estética Dark/Neon.
Author: Antigravity AI
Version: 1.0.0
Text Domain: blackcore-gamer
Tags: dark, ecommerce, elementor, woocommerce
*/

:root {
    --bc-bg-primary: #0a0a0c;
    --bc-bg-secondary: #131418;
    --bc-accent: #00F305;
    --bc-accent-hover: #00cc5c;
    --bc-text-main: #f0f0f0;
    --bc-text-muted: #999999;
    --bc-border: rgba(255, 255, 255, 0.1);
    --bc-border-accent: rgba(0, 243, 5, 0.3);
}

html,
body {
    overflow-x: hidden;
    width: 100%;
    position: relative;
}

body {
    background-color: var(--bc-bg-primary);
    color: var(--bc-text-main);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    margin: 0;
    padding: 0;
}

/* Estilos Globais Header e Footer base */
.site-header,
.site-footer {
    display: block;
}

/* Container do WooCommerce para melhorar layout por padrão */
.blackcore-wc-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px 20px;
}

/* Esconder Breadcrumbs para ganhar espaço */
.woocommerce-breadcrumb {
    display: none !important;
}

/* =====================================================
   BLOCO DE PREÇO — FUNDO BRANCO, TEXTO PRETO
   ===================================================== */

/* Layout Lado a Lado */
.single-product div.product {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 30px !important;
    align-items: flex-start !important;
    justify-content: center !important;
    max-width: 1250px !important;
    margin: 10px auto !important;
}

.single-product div.product .woocommerce-product-gallery {
    flex: 1 1 500px !important;
    max-width: 600px !important;
}

/* Bloco de Preço: Fundo BRANCO obrigatório */
body.single-product div.product .summary.entry-summary,
.single-product div.product .summary.entry-summary,
.woocommerce-page .summary.entry-summary {
    flex: 1 1 450px !important;
    max-width: 550px !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    padding: 35px !important;
    border-radius: 24px !important;
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.15) !important;
    border: none !important;
}

/* Título do produto — sempre preto e visível */
.single-product .summary.entry-summary h1.product_title,
.single-product .entry-summary .product_title {
    color: #000000 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Forçar todos os textos internos para preto, EXCETO preço riscado */
.summary.entry-summary h1,
.summary.entry-summary .product_title,
.summary.entry-summary .price,
.summary.entry-summary .price ins,
.summary.entry-summary .price ins span,
.summary.entry-summary .price ins bdi,
.summary.entry-summary .woocommerce-product-details__short-description,
.summary.entry-summary .ttl-frete,
.summary.entry-summary .ip-frete,
.summary.entry-summary .ip-frete b,
.summary.entry-summary p,
.summary.entry-summary span:not(.bc-percentage-badge),
.summary.entry-summary div:not(.bc-rich-price-wrapper):not(.bc-percentage-badge),
.summary.entry-summary strong,
.summary.entry-summary label {
    color: #000000 !important;
}

/* Preço riscado (De: R$...) em VERMELHO */
.woocommerce .price del,
.woocommerce .price del span,
.woocommerce .price del bdi,
.summary.entry-summary .price del,
.summary.entry-summary .price del span,
.summary.entry-summary .price del bdi {
    color: #cc0000 !important;
    opacity: 1 !important;
}

/* Estrelas de avaliação em verde */
.summary.entry-summary .fas.fa-star,
.summary.entry-summary .far.fa-star {
    color: #008a03 !important;
}

/* Bloco de Frete */
.summary.entry-summary .fretefundo {
    background: #f4f4f4 !important;
    border: 1px solid #e0e0e0 !important;
}

.summary.entry-summary .ip-frete,
.summary.entry-summary .ip-frete b {
    color: #008a03 !important;
}

/* Botão COMPRAR AGORA */
.summary.entry-summary .single_add_to_cart_button {
    background-color: #00F305 !important;
    color: #000000 !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    border-radius: 12px !important;
    padding: 20px !important;
}

/* Esconder cápsula de desconto */
.bc-discount-capsule {
    display: none !important;
}

/* Remover fundo preto herdado do WooCommerce no wrapper de preço */
.bc-rich-price-wrapper,
.summary.entry-summary .bc-rich-price-wrapper {
    background: transparent !important;
    background-color: transparent !important;
}

/* Forçar PREÇO DE VENDA em VERDE NEON - Tamanho Restaurado */
body.single-product .bc-rich-price-wrapper ins .amount,
body.single-product .bc-rich-price-wrapper ins .amount *,
body.single-product .summary.entry-summary .price ins .amount,
body.single-product .summary.entry-summary .price ins .amount *,
body.single-product .bc-rich-price-wrapper > .amount,
body.single-product .bc-rich-price-wrapper > .amount * {
    color: #00F305 !important;
    text-shadow: 0.5px 0.5px 1.5px rgba(0, 0, 0, 0.15) !important;
    font-size: 42px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
}

/* Símbolo de Moeda (R$) em PRETO conforme solicitado */
body.single-product .summary.entry-summary .price ins .woocommerce-Price-currencySymbol,
body.single-product .bc-rich-price-wrapper ins .woocommerce-Price-currencySymbol,
body.single-product .bc-rich-price-wrapper > .amount .woocommerce-Price-currencySymbol {
    color: #000000 !important;
    text-shadow: none !important;
    margin-right: 3px !important;
}

/* Garantir que o Preço Riscado (DE:) NÃO seja verde nem grande */
.woocommerce .price del,
.woocommerce .price del *,
.bc-rich-price-wrapper del,
.bc-rich-price-wrapper del * {
    color: #cc0000 !important;
    font-size: 15px !important;
    text-shadow: none !important;
    font-weight: 600 !important;
    text-decoration: line-through !important;
}

/* Preço nas Listagens de Produtos (Loja/Categorias) */
.woocommerce ul.products li.product .price,
.woocommerce div.product .related.products .price,
.products .price {
    font-size: 24px !important;
    font-weight: 900 !important;
    color: #00F305 !important;
    display: block !important;
    margin-top: 10px !important;
}

/* Símbolo de Moeda (R$) apenas em Produtos Relacionados (Verde Padrão da Loja) */
.woocommerce div.product .related.products .price .woocommerce-Price-currencySymbol,
.woocommerce .related.products .price .woocommerce-Price-currencySymbol {
    color: #00F305 !important;
}

/* Forçar R$ do preço riscado para Vermelho */
.price del .woocommerce-Price-currencySymbol,
del .woocommerce-Price-currencySymbol {
    color: #ff4d4d !important;
}

/* Títulos Gerais (Loja/Categorias) */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
    font-size: 28px !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
    margin-bottom: 2px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    color: #ffffff !important;
}

/* Títulos Específicos para Produtos Relacionados (MENORES) */
.related.products ul.products li.product h2,
.related.products ul.products li.product .woocommerce-loop-product__title {
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

/* Estrelas Gerais */
.woocommerce ul.products li.product .star-rating {
    font-size: 32px !important;
    width: 175px !important;
    margin-top: 0 !important;
    margin-bottom: 12px !important;
}

/* Estrelas Específicas para Produtos Relacionados (MENORES) */
.related.products ul.products li.product .star-rating,
.woocommerce div.product .related.products .star-rating {
    font-size: 16px !important;
    width: 85px !important;
    margin-bottom: 8px !important;
}

/* =====================================================
   ÍCONES DE CREDIBILIDADE (TRUST BADGES) — PRETOS
   ===================================================== */

.bc-trust-badges {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
    margin-top: 20px !important;
    justify-content: flex-start !important;
}

.bc-trust-badge {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #00F305 !important;
    /* Texto em Verde */
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Ícones VERDES — desktop */
.bc-trust-badge i {
    font-size: 18px !important;
    color: #00F305 !important;
    /* Ícones em Verde */
}

/* Ícones MENORES no celular */
@media (max-width: 768px) {
    .bc-trust-badge {
        font-size: 12px !important;
    }

    .bc-trust-badge i {
        font-size: 14px !important;
    }

    .single-product div.product {
        display: block !important;
        /* Muda para block no mobile para evitar conflitos de flexbox */
        margin: 0 auto !important;
        padding: 10px 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Alvo em containers que podem estar espremendo o conteúdo (Elementor/Temas) */
    .single-product #page,
    .single-product .site,
    .single-product .elementor-section-boxed>.elementor-container {
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .single-product div.product .woocommerce-product-gallery,
    .single-product div.product .summary.entry-summary {
        max-width: 100% !important;
        width: 100% !important;
        display: block !important;
        margin: 0 0 20px 0 !important;
        box-sizing: border-box !important;
    }

    .single-product div.product .summary.entry-summary {
        padding: 30px 20px !important;
        /* Padding confortável */
        border-radius: 20px !important;
        background-color: #ffffff !important;
    }

    /* Corrige o problema do Elementor/JS redimensionando via inline style */
    .elementor-column-wrap,
    .elementor-widget-wrap {
        padding: 0 !important;
        width: 100% !important;
    }

    /* Centraliza botão de compra no mobile */
    .summary.entry-summary .cart,
    .summary.entry-summary form.cart {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
    }

    .summary.entry-summary .single_add_to_cart_button {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        /* Ajuste sutil para a esquerda conforme solicitado */
        position: relative !important;
        left: -4px !important;
    }

    /* Credibilidade em uma linha no mobile — FORÇADO */
    .bc-trust-badges {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        justify-content: center !important;
        gap: 4px !important;
        width: 100% !important;
        margin: 25px auto 0 !important;
        padding: 0 !important;
    }

    .bc-trust-badge {
        flex: 1 !important;
        white-space: nowrap !important;
        font-size: 9px !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 4px !important;
        min-width: 0 !important;
    }

    .bc-trust-badge i {
        font-size: 14px !important;
    }

    /* Otimização do Grid de Produtos no Mobile */
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product {
        padding: 0 !important;
        margin-bottom: 25px !important;
    }

    .woocommerce ul.products li.product a img,
    .woocommerce-page ul.products li.product a img {
        width: 100% !important;
        height: 220px !important; /* Aumentado para 220px para ampliar a imagem */
        object-fit: cover !important;
        margin: 0 !important;
        padding: 0 !important;
        display: block !important;
    }

    .woocommerce ul.products li.product a,
    .woocommerce-page ul.products li.product a {
        padding: 0 !important;
        margin: 0 !important;
    }
}

/* =====================================================
   GALERIA DE IMAGENS — MICRO BORDA E SELEÇÃO CORRIGIDA
   ===================================================== */

.woocommerce-product-gallery__image img {
    border: 2px solid #00F305 !important; /* Borda verde neon em volta da imagem principal */
    border-radius: 15px !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    display: block !important;
    box-shadow: 0 0 15px rgba(0, 243, 5, 0.1) !important;
    margin: 20px !important; /* Margem aumentada para evitar corte pelo overflow:hidden */
}

.woocommerce-product-gallery .flex-control-nav.flex-control-thumbs {
    margin-top: 80px !important; /* Espaço aumentado significativamente */
    padding: 15px 0 !important; /* Padding para as bordas das miniaturas não serem cortadas */
    position: relative !important;
}

.woocommerce-product-gallery .flex-control-thumbs li img {
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 10px !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    display: block !important;
}

.woocommerce-product-gallery .flex-control-thumbs li {
    padding: 5px !important; /* Aumentado para não cortar a borda de seleção */
    box-sizing: border-box !important;
    overflow: visible !important;
    border: none !important;
}

.woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
    border: 2px solid #00F305 !important;
    box-shadow: 0 0 8px rgba(0, 243, 5, 0.2) !important;
    box-sizing: border-box !important;
}

/* ==========================================================================
   ESTILIZAÇÃO DAS AVALIAÇÕES PADRÃO (Woocommerce)
   ========================================================================== */
.woocommerce-tabs {
    margin-top: 50px !important;
    border: none !important;
}

.woocommerce-tabs ul.tabs {
    display: flex !important;
    justify-content: center !important;
    gap: 20px !important;
    border: none !important;
    padding: 0 !important;
    margin-bottom: 20px !important;
}

.woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: 1px solid rgba(0, 243, 5, 0.3) !important;
    border-radius: 30px !important;
    padding: 8px 25px !important;
}

.woocommerce-tabs ul.tabs li.active {
    background: rgba(0, 243, 5, 0.1) !important;
    border-color: #00F305 !important;
}

.woocommerce-tabs ul.tabs li a {
    color: #00F305 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

.woocommerce-Tabs-panel--reviews {
    background: #ffffff !important;
    color: #000000 !important;
    padding: 40px !important;
    border-radius: 24px !important;
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.1) !important;
    max-width: 1000px !important;
    margin: 0 auto !important;
}

.woocommerce-Tabs-panel--reviews h2,
.woocommerce-Tabs-panel--reviews h3,
.woocommerce-Tabs-panel--reviews label,
.woocommerce-Tabs-panel--reviews p,
.woocommerce-Tabs-panel--reviews span,
.woocommerce-Tabs-panel--reviews strong {
    color: #000000 !important;
    font-family: 'Inter', sans-serif !important;
}

.woocommerce-Reviews .comment-text {
    border: 1px solid #f0f0f0 !important;
    border-radius: 16px !important;
    padding: 25px !important;
    background: #fafafa !important;
    margin-bottom: 20px !important;
}

.star-rating span:before,
.star-rating:before {
    color: #008a03 !important;
}

#review_form_wrapper {
    background: #fdfdfd !important;
    border: 1px solid #eee !important;
    padding: 30px !important;
    border-radius: 16px !important;
}

#review_form_wrapper input,
#review_form_wrapper textarea {
    border: 1px solid #ddd !important;
    border-radius: 8px !important;
    padding: 12px !important;
}

#review_form_wrapper .submit {
    background: #00F305 !important;
    color: #000 !important;
    font-weight: 900 !important;
    padding: 15px 30px !important;
    border-radius: 10px !important;
    text-transform: uppercase !important;
}

/* =====================================================
   FORÇAR TAMANHOS NO MOBILE PARA O PRODUCT GRID
   ===================================================== */
@media (max-width: 768px) {
    /* Título do Widget Product Grid */
    .bc-product-content .bc-product-title,
    h3.bc-product-title {
        font-size: 32px !important;
        line-height: 1.1 !important;
        margin-bottom: 2px !important;
        font-weight: 900 !important;
    }
    /* Estrelas do Widget Product Grid */
    .bc-product-content .bc-product-stars,
    div.bc-product-stars {
        font-size: 38px !important;
        margin-bottom: 12px !important;
        line-height: 1 !important;
        display: block !important;
    }

    /* Títulos da Loja/Categorias Padrão */
    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce ul.products li.product h2 {
        font-size: 32px !important;
        line-height: 1.1 !important;
        margin-bottom: 2px !important;
    }

    /* Estrelas da Loja/Categorias Padrão */
    .woocommerce ul.products li.product .star-rating {
        font-size: 30px !important;
        width: 165px !important;
    }

    /* Produtos Relacionados Mobile (Ainda menores) */
    .related.products ul.products li.product h2,
    .related.products ul.products li.product .woocommerce-loop-product__title {
        font-size: 15px !important;
    }
    .related.products ul.products li.product .star-rating {
        font-size: 14px !important;
        width: 75px !important;
    }
}