/* assets/css/style.css - estilo personalizado (tema rosa) */
:root{
  --brand:#d63384; /* rosa principal */
  --brand-dark:#b02666;
  --muted-bg:#fff0f6;
  /* sombra deslocada 3px direita/baixo, blur discreto */
  --card-shadow: 3px 3px 6px rgba(0,0,0,0.14);
  --card-shadow-hover: 6px 10px 18px rgba(0,0,0,0.18);
}
body { background: #fff6fb; color:#333; font-family: Georgia, 'Times New Roman', Times, serif; font-size: 1rem; }
.product-card { position:relative; overflow:hidden; border:1px solid rgba(214,51,132,0.06); border-radius:12px !important; box-shadow: var(--card-shadow); background:#fff; transition: transform .18s ease, box-shadow .24s ease; }
.product-card .card-img-top, .product-card img {
  width:100%;
  height:auto; /* manter altura proporcional */
  border-radius: 0 !important; /* imagens dos cards sem arredondamento */
  display: block;
}
.product-card .card-body { min-height:180px; }
.badge-discount { position:absolute; top:10px; left:10px; background:var(--brand); color:#fff; padding:6px 8px; border-radius:4px; font-weight:700; }
.btn-primary { background: linear-gradient(90deg,var(--brand),var(--brand-dark)) !important; color:#fff !important; border:none !important; }
.btn-primary:hover { background: linear-gradient(90deg,var(--brand-dark),#9b1b52) !important; }

.btn-offer { background: linear-gradient(90deg,#28a745,#1e7e34) !important; color:#fff !important; border:none !important; }
.btn-offer:hover { background: linear-gradient(90deg,#1e7e34,#19692a) !important; }
.popular { box-shadow: 0 0 0 6px rgba(214,51,132,0.06); border:1px solid rgba(214,51,132,0.12); }
@media (max-width:576px) {
  .product-card .card-img-top, .product-card img { width:100%; height:auto; }
}

/* imagem da página de produto (detalhe) */
.product-img { border-radius:12px; max-width:100%; }

/* Make product image links fill block and remove link decoration */
.product-link { display:block; }
.product-link img { display:block; border-radius:0 !important; width:100%; height:auto; }

/* Filter / search card styles */
.filter-card { background: #fff; border-radius: 12px; padding: 12px; margin-bottom: 18px; box-shadow: var(--card-shadow); border: 1px solid rgba(214,51,132,0.06); transition: box-shadow .22s ease, transform .18s ease; }
.filter-card .form-control, .filter-card .form-select { border-radius: 8px; }
.filter-card .btn { min-width: 110px; }
.filter-card .btn-outline-secondary { border-color: rgba(0,0,0,0.08); }
.filter-note { font-size:0.9rem; color: #6b2240; }

/* Pagination tweaks */
.pagination .page-link { color: var(--brand); }
.pagination .page-item.active .page-link { background: var(--brand); border-color: var(--brand); color: #fff; }

/* Admin navbar */
.admin-navbar { background: linear-gradient(90deg,var(--brand),var(--brand-dark)); }
.admin-navbar .navbar-brand, .admin-navbar .nav-link { color: #fff !important; }
.admin-navbar .dropdown-menu { min-width:180px; }

/* brand logo next to site title */
.brand-logo { width:48px; height:48px; object-fit:cover; margin-right:10px; vertical-align:middle; border-radius:50%; box-shadow: 3px 3px 6px rgba(0,0,0,0.16); }

/* footer style: slightly stronger pink than page background */
.site-footer { background: #ffe6f3; color: #333; border-top: 1px solid rgba(214,51,132,0.06); }
.site-footer small { color: #6b2240; }



/* Título do produto (vinho forte) */
.product-card .card-title, .product-title { color: #6b2240; }

/* Preço antigo (riscado) em vermelho */
.price-old { color: #b02a2a !important; text-decoration-color: #b02a2a !important; }

/* Prevent filter buttons from wrapping and avoid overlap */
.filter-card .filter-actions {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  white-space: nowrap;
}
.filter-card .filter-actions .btn {
  white-space: nowrap;
}
.filter-card .card-body { overflow: visible; }

/* Product info area: price + discount above the offer button */
.product-info { margin-top: 0.75rem; }
.product-info .price { display:flex; align-items:center; gap:0.5rem; }
.product-info .d-flex.mb-2 { margin-bottom:0.5rem; }
.discount-btn { background:#b02a2a; color:#fff; border:none; padding:.25rem .55rem; border-radius:8px; font-weight:700; font-size:.9rem; }
.discount-btn:hover { background:#8f201f; color:#fff; }

/* Categories card (list of categories) */
.categories-card { border-radius:12px; box-shadow: var(--card-shadow); border: 1px solid rgba(214,51,132,0.06); background:#fff; }
.categories-card .list-group-item { border: none; }

/* Hover elevation for cards */
.product-card:hover, .categories-card:hover { transform: translateY(-8px); box-shadow: var(--card-shadow-hover); z-index:2; }
.filter-card:hover { box-shadow: var(--card-shadow-hover); }


/* Logo / site title: use Georgia (serif) */
.navbar-brand span { font-family: Georgia, 'Times New Roman', Times, serif; font-weight:700; font-size:1.05rem; letter-spacing:0.2px; }
.admin-navbar .navbar-brand span { color: #fff; }

.site-title { font-family: 'Playfair Display', Georgia, 'Times New Roman', Times, serif; font-size:1.5em; font-weight:700; letter-spacing:0; color: var(--brand); line-height:1; }
@media (max-width:576px) { .site-title { font-size:1.2em; } }

/* Favicon: remover sombra e manter cantos arredondados (não circular) */
img.brand-logo[src$="/favicon.png"], img.brand-logo[src$="favicon.png"] {
  box-shadow: none !important;
  border-radius: 8px !important;
}

/* Sombra no título do site (topo.php) */
.site-title { text-shadow: 3px 3px 6px rgba(0,0,0,0.14); }





