/* =========================================================
   Reskin do plugin Loja JoySystem (classes bpl-*)
   Carregado DEPOIS do assets/css/public.css do plugin, então
   as regras abaixo têm prioridade sem precisar de !important
   na maior parte dos casos.
   ========================================================= */

.bpl-container{ max-width: 1240px; }

.bpl-arquivo-titulo{
    color: #fff;
    font-size: .95rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-weight: 700;
}

.bpl-filtro-categorias a{
    color: var(--ap-texto-suave, #9aa3af);
    border: 1px solid var(--ap-borda, #1f2733);
    border-radius: 999px;
    padding: 6px 16px;
}
.bpl-filtro-categorias a.bpl-ativo,
.bpl-filtro-categorias a:hover{
    color: #1a1305;
    background: var(--ap-dourado, #d4af37);
    border-color: var(--ap-dourado, #d4af37);
}

/* Card de produto -> estilo "card de resgate" */
.bpl-card{
    background: var(--ap-bg-elevado, #10151d);
    border: 1px solid var(--ap-borda, #1f2733);
    border-radius: 14px;
    overflow: hidden;
    transition: border-color .2s, transform .2s;
}
.bpl-card:hover{
    border-color: var(--ap-borda-dourada, #3a3320);
    transform: translateY(-2px);
}
.bpl-card-imagem{ background: #161b22; position: relative; }
.bpl-sem-imagem{ color: var(--ap-texto-suave, #9aa3af); }

.bpl-selo-desconto,
.bpl-selo-promocao{
    background: var(--ap-dourado, #d4af37);
    color: #1a1305;
    font-weight: 700;
    border-radius: 999px;
}
.bpl-selo-esgotado{
    background: #2a2f38;
    color: #cfd4da;
}

.bpl-card-categoria{
    color: var(--ap-dourado, #d4af37);
    font-size: .68rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-weight: 700;
}
.bpl-card-titulo,
.bpl-card-titulo a{ color: #fff; }
.bpl-card-descricao{ color: var(--ap-texto-suave, #9aa3af); }

.bpl-preco-atual{ color: #fff; font-weight: 700; }
.bpl-preco-antigo{ color: var(--ap-texto-suave, #9aa3af); }
.bpl-preco-parcelas{ color: var(--ap-texto-suave, #9aa3af); }
.bpl-preco-pix-selo{
    background: rgba(37,211,102,.15);
    color: #6be89a;
}

/* Botões */
.bpl-botao-primario,
.bpl-botao-comprar-card,
.bpl-botao-comprar-produto{
    background: var(--ap-dourado, #d4af37);
    color: #1a1305 !important;
    border: none;
    border-radius: 8px;
    font-weight: 700;
    letter-spacing: .02em;
    text-transform: uppercase;
    font-size: .78rem;
}
.bpl-botao-primario:hover,
.bpl-botao-comprar-card:hover,
.bpl-botao-comprar-produto:hover{
    background: var(--ap-dourado-claro, #e9c96b);
}
.bpl-botao-secundario{
    background: transparent;
    color: var(--ap-dourado, #d4af37);
    border: 1px solid var(--ap-borda-dourada, #3a3320);
}
.bpl-botao-desabilitado{
    background: #262c35;
    color: #6b7280;
}

/* Página de produto */
.bpl-pagina-produto{ color: #f2f3f5; }
.bpl-breadcrumb,
.bpl-breadcrumb a{ color: var(--ap-texto-suave, #9aa3af); }
.bpl-imagem-principal,
.bpl-sem-imagem-grande{
    background: var(--ap-bg-elevado, #10151d);
    border: 1px solid var(--ap-borda, #1f2733);
    border-radius: 14px;
}
.bpl-miniatura{
    border: 1px solid var(--ap-borda, #1f2733);
    border-radius: 8px;
}
.bpl-miniatura.ativa,
.bpl-miniatura:hover{ border-color: var(--ap-dourado, #d4af37); }

.bpl-produto-marca{
    color: var(--ap-azul, #3bc2f0);
    font-size: .75rem;
    letter-spacing: .1em;
    text-transform: uppercase;
    font-weight: 700;
}
.bpl-produto-linha-destaque{
    display: block;
    width: 46px;
    height: 3px;
    border-radius: 2px;
    background: var(--ap-azul, #3bc2f0);
    margin: 10px 0 16px;
}
.bpl-produto-nome{ color: #fff; }
.bpl-produto-resumo,
.bpl-produto-descricao{ color: var(--ap-texto-suave, #9aa3af); }
.bpl-preco-grande{ color: #fff; }

.bpl-selo-pontos-produto{
    background: rgba(10,14,20,.88);
    border: 1px solid var(--ap-dourado, #d4af37);
}
.bpl-selo-pontos-produto svg{ color: var(--ap-dourado, #d4af37); }
.bpl-selo-pontos-produto strong{ color: var(--ap-dourado, #d4af37); }

.bpl-botao-favorito{
    background: rgba(10,14,20,.78);
    border: 1px solid var(--ap-borda, #1f2733);
}
.bpl-botao-favorito.ativo{
    color: #ff4d6d;
    border-color: #ff4d6d;
}
.bpl-avaliacao-estrelas{ color: var(--ap-dourado, #d4af37); }
.bpl-avaliacao-total{ color: var(--ap-texto-suave, #9aa3af); }

/* Tags SEO do produto (novo, ver inc/tags-produto.php) */
.ap-produto-tags{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 14px 0;
}
.ap-produto-tags span{
    border: 1px solid var(--ap-borda, #1f2733);
    color: var(--ap-texto, #f2f3f5);
    border-radius: 8px;
    padding: 5px 14px;
    font-size: .74rem;
    letter-spacing: .04em;
    text-transform: uppercase;
    font-weight: 600;
}

.bpl-produto-estoque .bpl-em-estoque{ color: #6be89a; }
.bpl-produto-estoque .bpl-esgotado{ color: #ff8a8a; }

.bpl-quantidade-controles button{
    background: var(--ap-bg-elevado, #10151d);
    border: 1px solid var(--ap-borda, #1f2733);
    color: #fff;
}
.bpl-quantidade-controles input{
    background: var(--ap-bg-elevado, #10151d);
    border: 1px solid var(--ap-borda, #1f2733);
    color: #fff;
}

.bpl-frete-produto-caixa{
    border: 1px solid var(--ap-borda, #1f2733);
    border-radius: 10px;
}
.bpl-pagamento-seguro{ color: var(--ap-texto-suave, #9aa3af); }

/* Área do cliente [bpl_minha_conta] */
.bpl-conta{
    background: var(--ap-bg-elevado, #10151d);
    border: 1px solid var(--ap-borda, #1f2733);
    border-radius: 14px;
    padding: 30px;
    max-width: 700px;
    margin: 40px auto;
    color: #f2f3f5;
}
.bpl-conta input{
    background: var(--ap-bg, #0a0e14);
    border: 1px solid var(--ap-borda, #1f2733);
    color: #fff;
    border-radius: 8px;
}
.bpl-btn-primario{
    background: var(--ap-dourado, #d4af37);
    color: #1a1305;
    border: none;
    border-radius: 8px;
    font-weight: 700;
}
.bpl-btn-secundario{
    background: transparent;
    border: 1px solid var(--ap-borda-dourada, #3a3320);
    color: var(--ap-dourado, #d4af37);
    border-radius: 8px;
}
.bpl-pedido-card{
    background: var(--ap-bg, #0a0e14);
    border: 1px solid var(--ap-borda, #1f2733);
    border-radius: 10px;
}

.bpl-conta-favoritos{ border-top-color: var(--ap-borda, #1f2733); }
.bpl-conta-favoritos h3{ color: #fff; }
.bpl-favorito-card{
    background: var(--ap-bg, #0a0e14);
    border: 1px solid var(--ap-borda, #1f2733);
}
.bpl-favorito-card:hover{ border-color: var(--ap-borda-dourada, #3a3320); }
.bpl-favorito-card-nome{ color: #fff; }
.bpl-favorito-card-preco{ color: var(--ap-dourado, #d4af37); }
