/* ============================================================
   UAIOXENTE — CSS DEFINITIVO COM CLASSES OFICIAIS LI
   Classes de página + classes de cor do editor
   Aplicar em: Aparência > Editar CSS
   ============================================================ */

/* 1. FONTE GLOBAL */
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;700;800&display=swap');

body {
  font-family: 'Nunito', sans-serif;
}

/* ----------------------------------------------------------
   2. CORES E ELEMENTOS GLOBAIS DO EDITOR
   ---------------------------------------------------------- */

.preco-por,
.produto-preco {
  font-weight: 800;
  font-size: 1.1rem;
}

.preco-de {
  font-size: 0.8rem;
  color: #aaaaaa;
  font-weight: 400;
}

.vitrine-titulo,
.titulo-secao {
  font-weight: 800;
  font-size: 1.35rem;
  color: #1D1D2E;
  padding-bottom: 6px;
  display: inline-block;
  margin-bottom: 1.2rem;
}

.vitrine-titulo.borda-principal,
.titulo-secao.borda-principal {
  border-bottom-width: 3px;
  border-bottom-style: solid;
  border-top: none;
  border-left: none;
  border-right: none;
}

.btn-comprar.fundo-principal,
.botao-comprar.fundo-principal,
.adicionar-carrinho.fundo-principal,
.btn-primary.fundo-principal {
  color: #ffffff;
  font-weight: 800;
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: none;
  border-radius: 8px;
  padding: 12px 24px;
  cursor: pointer;
  -webkit-transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.btn-comprar.fundo-principal:hover,
.botao-comprar.fundo-principal:hover,
.adicionar-carrinho.fundo-principal:hover {
  opacity: 0.88;
  color: #ffffff;
  text-decoration: none;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

a.cor-principal:hover {
  opacity: 0.8;
  text-decoration: none;
}

i.fundo-principal,
.icon.fundo-principal {
  border-radius: 50%;
  padding: 6px;
  color: #ffffff;
}

div.borda-principal,
.caixa.borda-principal {
  border-width: 2px;
  border-style: solid;
  border-radius: 8px;
  padding: 16px;
}

.badge.fundo-secundario,
.etiqueta.fundo-secundario {
  border-radius: 4px;
  padding: 3px 8px;
  font-size: 0.75rem;
  font-weight: 700;
}

.cor-secundaria {
  font-size: 0.9rem;
}

/* ----------------------------------------------------------
   3. PAGINA INICIAL
   ---------------------------------------------------------- */

.pagina-inicial .produto-vitrine {
  border-radius: 10px;
  border: 1px solid #e8e8e8;
  overflow: hidden;
  -webkit-transition: -webkit-transform 0.25s ease, box-shadow 0.25s ease;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.pagina-inicial .produto-vitrine:hover {
  -webkit-transform: translateY(-5px);
  transform: translateY(-5px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
}

.pagina-inicial .produto-vitrine img {
  width: 100%;
  display: block;
  -webkit-transition: -webkit-transform 0.35s ease;
  transition: transform 0.35s ease;
}

.pagina-inicial .produto-vitrine:hover img {
  -webkit-transform: scale(1.04);
  transform: scale(1.04);
}

/* ----------------------------------------------------------
   4. PAGINA CATEGORIA
   ---------------------------------------------------------- */

.pagina-categoria .produto-vitrine {
  border-radius: 10px;
  border: 1px solid #e8e8e8;
  overflow: hidden;
  -webkit-transition: -webkit-transform 0.25s ease, box-shadow 0.25s ease;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.pagina-categoria .produto-vitrine:hover {
  -webkit-transform: translateY(-5px);
  transform: translateY(-5px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
}

.pagina-categoria .produto-vitrine img {
  width: 100%;
  display: block;
  -webkit-transition: -webkit-transform 0.35s ease;
  transition: transform 0.35s ease;
}

.pagina-categoria .produto-vitrine:hover img {
  -webkit-transform: scale(1.04);
  transform: scale(1.04);
}

/* ----------------------------------------------------------
   5. PAGINA PRODUTO
   ---------------------------------------------------------- */

.pagina-produto h1,
.pagina-produto .produto-nome {
  font-weight: 800;
  font-size: 1.5rem;
  color: #1D1D2E;
  line-height: 1.3;
}

.pagina-produto .preco-por {
  font-size: 1.6rem;
  font-weight: 800;
}

.pagina-produto .produto-descricao {
  font-size: 0.95rem;
  line-height: 1.7;
  color: #555555;
}

.pagina-produto .produto-imagem img {
  border-radius: 10px;
  border: 1px solid #e8e8e8;
}

.pagina-produto .btn-comprar,
.pagina-produto .adicionar-carrinho,
.pagina-produto .botao-comprar {
  font-weight: 800;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: none;
  border-radius: 8px;
  padding: 14px 28px;
  cursor: pointer;
  -webkit-transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.pagina-produto .btn-comprar:hover,
.pagina-produto .adicionar-carrinho:hover {
  opacity: 0.88;
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
  text-decoration: none;
}

/* ----------------------------------------------------------
   6. PAGINA CARRINHO
   ---------------------------------------------------------- */

.pagina-carrinho h1 {
  font-weight: 800;
  color: #1D1D2E;
}

.pagina-carrinho .carrinho-total {
  font-weight: 800;
  font-size: 1.2rem;
}

.pagina-carrinho .btn-finalizar,
.pagina-carrinho .botao-finalizar {
  font-weight: 800;
  font-size: 1rem;
  text-transform: uppercase;
  border: none;
  border-radius: 8px;
  padding: 14px 28px;
  cursor: pointer;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}

.pagina-carrinho .btn-finalizar:hover {
  opacity: 0.88;
  text-decoration: none;
}

/* ----------------------------------------------------------
   7. PAGINA CADASTRO E CONTA
   ---------------------------------------------------------- */

.pagina-cadastro h1,
.pagina-conta h1 {
  font-weight: 800;
  color: #1D1D2E;
}

.pagina-cadastro input[type="text"],
.pagina-cadastro input[type="email"],
.pagina-cadastro input[type="tel"],
.pagina-cadastro input[type="password"],
.pagina-conta input[type="text"],
.pagina-conta input[type="email"],
.pagina-conta input[type="password"] {
  border: 1.5px solid #e0e0e0;
  border-radius: 7px;
  padding: 10px 14px;
  font-family: 'Nunito', sans-serif;
  font-size: 0.95rem;
  outline: none;
  width: 100%;
  -webkit-transition: border-color 0.2s ease;
  transition: border-color 0.2s ease;
}

/* ----------------------------------------------------------
   8. PAGINA FINALIZACAO
   ---------------------------------------------------------- */

.pagina-finalizacao h1 {
  font-weight: 800;
  color: #1D1D2E;
}

.pagina-finalizacao input[type="submit"] {
  font-weight: 800;
  border: none;
  border-radius: 8px;
  padding: 14px 28px;
  cursor: pointer;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}

.pagina-finalizacao input[type="submit"]:hover {
  opacity: 0.88;
}

/* ----------------------------------------------------------
   9. TEMA ESCURO
   ---------------------------------------------------------- */

.tema-escuro .produto-vitrine {
  border-color: #2a2a3e;
  background-color: #25253a;
}

.tema-escuro .preco-de {
  color: #888888;
}

.tema-escuro .produto-descricao {
  color: #cccccc;
}

/* ----------------------------------------------------------
   10. SCROLL, IMAGENS E SELECAO DE TEXTO
   ---------------------------------------------------------- */

html {
  scroll-behavior: smooth;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

::-moz-selection {
  color: #ffffff;
}

::selection {
  color: #ffffff;
}

/* ----------------------------------------------------------
   11. RESPONSIVO MOBILE
   ---------------------------------------------------------- */

@media (max-width: 767px) {
  .pagina-inicial .produto-vitrine,
  .pagina-categoria .produto-vitrine {
    border-radius: 8px;
  }

  .pagina-produto .preco-por {
    font-size: 1.3rem;
  }

  .pagina-produto .btn-comprar,
  .pagina-produto .adicionar-carrinho,
  .pagina-carrinho .btn-finalizar {
    width: 100%;
    text-align: center;
    display: block;
  }
}