/* Estilos específicos para a página de carrinho */

.secao-carrinho {
  padding: 60px 0;
  margin-top: 80px;
}

.titulo-pagina {
  font-size: 2rem;
  margin-bottom: 30px;
}

.container-carrinho {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 30px;
}

/* Itens do carrinho */
.itens-carrinho {
  background-color: white;
  border-radius: 8px;
  box-shadow: var(--sombra);
  overflow: hidden;
}

.cabecalho-carrinho {
  display: grid;
  grid-template-columns: 3fr 1fr 1fr 1fr 50px;
  padding: 15px 20px;
  background-color: var(--cor-clara);
  font-weight: 600;
}

.item-carrinho {
  display: grid;
  grid-template-columns: 3fr 1fr 1fr 1fr 50px;
  padding: 20px;
  border-bottom: 1px solid var(--cor-borda);
  align-items: center;
}

.info-produto-carrinho {
  display: flex;
  align-items: center;
  gap: 15px;
}

.imagem-produto-carrinho {
  width: 80px;
  height: 80px;
  border-radius: 4px;
  object-fit: cover;
}

.detalhes-produto-carrinho h3 {
  margin-bottom: 5px;
  font-size: 1rem;
}

.controles-quantidade-carrinho {
  display: flex;
  align-items: center;
  gap: 10px;
}

.botao-quantidade {
  width: 30px;
  height: 30px;
  border-radius: 4px;
  border: 1px solid var(--cor-borda);
  background-color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: var(--transicao);
}

.botao-quantidade:hover {
  background-color: var(--cor-clara);
}

.input-quantidade {
  width: 40px;
  height: 30px;
  border-radius: 4px;
  border: 1px solid var(--cor-borda);
  text-align: center;
}

.botao-remover-carrinho {
  background: none;
  border: none;
  color: var(--cor-texto-claro);
  cursor: pointer;
  transition: var(--transicao);
}

.botao-remover-carrinho:hover {
  color: var(--cor-destaque);
}

.carrinho-vazio {
  padding: 50px 20px;
  text-align: center;
}

.carrinho-vazio i {
  font-size: 3rem;
  color: var(--cor-texto-claro);
  margin-bottom: 20px;
}

.carrinho-vazio p {
  margin-bottom: 20px;
  color: var(--cor-texto-claro);
}

/* Resumo do pedido */
.resumo-carrinho {
  background-color: white;
  border-radius: 8px;
  box-shadow: var(--sombra);
  padding: 25px;
  height: fit-content;
}

.resumo-carrinho h2 {
  margin-bottom: 20px;
  font-size: 1.3rem;
}

.linha-resumo {
  display: flex;
  justify-content: space-between;
  margin-bottom: 15px;
}

.linha-resumo.total {
  font-size: 1.2rem;
  font-weight: 700;
  color: var(--cor-primaria);
}

.linha-resumo.desconto {
  color: var(--cor-sucesso);
}

.divisor-resumo {
  height: 1px;
  background-color: var(--cor-borda);
  margin: 15px 0;
}

.container-cupom {
  display: flex;
  gap: 10px;
  margin-bottom: 20px;
}

.container-cupom input {
  flex: 1;
  padding: 10px;
  border: 1px solid var(--cor-borda);
  border-radius: 4px;
}

.largura-total {
  width: 100%;
  margin-bottom: 15px;
}

.continuar-comprando {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  color: var(--cor-primaria);
  font-weight: 500;
}

/* Responsivo */
@media (max-width: 992px) {
  .container-carrinho {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .cabecalho-carrinho {
    display: none;
  }

  .item-carrinho {
    grid-template-columns: 1fr;
    gap: 15px;
  }

  .info-produto-carrinho {
    grid-column: 1 / -1;
  }

  .preco-carrinho,
  .quantidade-carrinho,
  .total-carrinho {
    display: flex;
    justify-content: space-between;
    padding: 5px 0;
  }

  .preco-carrinho::before {
    content: "Preço:";
    font-weight: 600;
  }

  .quantidade-carrinho::before {
    content: "Quantidade:";
    font-weight: 600;
  }

  .total-carrinho::before {
    content: "Total:";
    font-weight: 600;
  }

  .remover-carrinho {
    text-align: right;
  }
}
