/* ===== MONTRA CATEGORIAS ===== */

.grid-categorias{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(250px,1fr));
  gap:30px;
  margin-top:40px;
}

.categoria-card{
  border:1px solid #ddd;
  padding:25px;
  text-align:center;
  border-radius:8px;
  background:#fff;
  transition:0.2s;
}

.categoria-card:hover{
  transform:translateY(-5px);
  box-shadow:0 6px 14px rgba(0,0,0,0.15);
}

.categoria-card h3{
  margin-bottom:15px;
  font-size:20px;
}

.categoria-img{
  width:100%;
  height:160px;
  object-fit:cover;
  border-radius:6px;
  margin-bottom:10px;
}

/* ===== BOTÕES ===== */

.btn-ver{
  display:inline-block;
  padding:10px 18px;
  background:#504c4c;
  color:#fff;
  text-decoration:none;
  border-radius:22px;
  font-size:14px;
}

.btn-ver:hover{
  background:#333;
}

/* ===== MONTRA PRODUTOS ===== */

.grid-produtos{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:30px;
  margin-top:30px;
}

.produto-card{
  background:#fff;
  border:1px solid #e5e5e5;
  border-radius:10px;
  overflow:hidden;
  text-align:center;
  transition:all 0.25s ease;

  display:flex;
  flex-direction:column;
  height:100%; /* 🔥 importante */

}

.produto-card h3{
  font-size:15px;
  min-height:40px;
}

.produto-card:hover{
  transform:translateY(-6px);
  box-shadow:0 10px 25px rgba(0,0,0,0.15);
}

/* IMAGEM */

.produto-img{
  width:100%;
  height:180px;
  object-fit:contain;
  padding:10px;
  background:#fff;
}

.produto-info{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  flex-grow:1;
  padding:10px;
}

.produto-desc{
  font-size:13px;
  color:#666;
  margin:5px 0 10px;
  min-height:35px;
}

.btn-ver{
  margin-top:auto; /* 🔥 MAGIA AQUI */
}

/* TITULO */
.produto-card h3{
  font-size:15px;
  padding:0 10px;
  min-height:40px;
}

/* PREÇO */
.produto-preco{
  font-size:20px;
  font-weight:700;
  color:#0a7;
  margin:10px 0;
}

/* ===== BREADCRUMB ===== */

.breadcrumb{
  font-size:14px;
  margin-bottom:10px;
  color:#666;
}

.breadcrumb a{
  text-decoration:none;
  color:#666;
}

.breadcrumb a:hover{
  text-decoration:underline;
}

/* ===== CONTROLOS ===== */

.montra-controles{
  display:flex;
  justify-content:flex-end;
  margin-top:20px;
}

.montra-controles select{
  padding:6px 10px;
  margin-left:10px;
  border-radius:5px;
  border:1px solid #ccc;
}

/* ===== CARRINHO ===== */

.carrinho-container {
  max-width: 1100px;
  margin: 40px auto;
  padding: 20px;
}

.carrinho-item {
  display: grid;
  grid-template-columns: 100px 1fr 120px 120px 80px;
  gap: 15px;
  align-items: center;
  border-bottom: 1px solid #ddd;
  padding: 15px 0;
}

.carrinho-item img {
  width: 80px;
  height: 80px;
  object-fit: contain;
}

.carrinho-nome {
  font-size: 16px;
  font-weight: 500;
}

.carrinho-preco,
.carrinho-subtotal {
  font-weight: 600;
}

.carrinho-total {
  text-align: right;
  font-size: 22px;
  margin-top: 20px;
  font-weight: bold;
}

.carrinho-acoes {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
}

.btn-remover {
  background: #ff4d4d;
  color: #fff;
  border: none;
  padding: 6px 10px;
  cursor: pointer;
  border-radius: 4px;
}

.btn-remover:hover {
  background: #cc0000;
}

/* ===== CHECKOUT ===== */

.checkout-container {
  display: flex;
  gap: 40px;
  margin-top: 20px;
}

.checkout-form {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.checkout-form label {
  font-weight: bold;
  margin-top: 10px;
}

.checkout-form input,
.checkout-form textarea,
.checkout-form select {
  padding: 8px;
  border-radius: 6px;
  border: 1px solid #ccc;
}

.checkout-form button {
  padding: 12px;
  background: #14d092;
  border: none;
  color: #fff;
  cursor: pointer;
}

.checkout-resumo {
  width: 300px;
  border-left: 1px solid #ddd;
  padding-left: 20px;
}

#tituloCategoria{
  text-align:center;
  font-size:28px;
  margin-top:20px;
}

#descricaoCategoria{
  text-align:center;
  max-width:700px;
  margin:10px auto 30px;
  color:#666;
  font-size:15px;
  line-height:1.5;
}


.stock-badge{
  font-size:13px;
  font-weight:bold;
  margin-bottom:10px;
}

.stock-ok{
  color:#14d092;
}

.stock-out{
  color:#d33;
}


.pagination button{

    min-width:42px;
    height:42px;

    border:none;

    border-radius:8px;

    margin:0 4px;

    cursor:pointer;

    background:#444;

    color:#fff;

    transition:.2s;

}

.pagination button:hover{

    background:#2d8cf0;

}

.pagination button.ativo{

    background:#2d8cf0;

    color:#fff;

    font-weight:bold;

}


.pagination button:disabled{

    background:#d5d5d5;

    color:#888;

    cursor:not-allowed;

}

