:root{
  --violet:#7b2cbf; --violet2:#9d4edd;
  --ink:#1f1f29; --muted:#6c6c76; --border:#eee; --card:#fff;
}

/* HERO */
.collection-hero{ position:relative; border-radius:18px; overflow:hidden; min-height:220px; }
.collection-hero__bg{
  position:absolute; inset:0; background-size:cover; background-position:center; filter:brightness(.8);
  transform:scale(1.02);
}
.collection-hero__overlay{ position:absolute; inset:0; background:linear-gradient(0deg, rgba(0,0,0,.45), rgba(0,0,0,.05)); }
.collection-hero__content{
  position:relative; z-index:2; padding:28px 20px; display:flex; align-items:flex-end; min-height:220px;
}
.collection-title{ color:#fff; font-weight:800; font-size:2rem; margin:0; }

/* FILTRES */
.card{ background:var(--card); border:1px solid var(--border); border-radius:16px; padding:14px; }
.filters__row{ display:grid; grid-template-columns: 1fr auto auto auto auto; gap:12px; align-items:center; }
.filters__chips{ display:flex; gap:8px; overflow:auto; padding-bottom:6px; }
.chip{
  display:inline-flex; align-items:center; gap:6px; padding:8px 12px; border-radius:999px; border:1px solid #e9e4ff;
  background:#faf7ff; color:#4b2ca6; font-weight:700; white-space:nowrap; text-decoration:none;
}
.chip--active{ background:linear-gradient(90deg,var(--violet),var(--violet2)); color:#fff; border-color:transparent; }

.filters__search .form-control{ min-width:200px; height:42px; border-radius:10px; }
.filters__price{ display:flex; align-items:center; gap:6px; }
.filters__price .form-control{ width:120px; height:42px; border-radius:10px; }
.filters__sort .form-select{ height:42px; border-radius:10px; }
.filters__actions{ display:flex; gap:8px; }
.btn{ height:42px; padding:0 16px; border-radius:10px; font-weight:700; }
.btn-primary{ background:linear-gradient(90deg,var(--violet),var(--violet2)); border:none; }
.btn-light{ background:#f4f4f4; border:1px solid #e9e9e9; }

/* PRODUITS */
.product-card{ background:var(--card); border:1px solid var(--border); border-radius:16px; padding:10px; transition:.2s ease; }
.product-card:hover{ transform:translateY(-3px); box-shadow:0 14px 34px rgba(30,12,75,.12); border-color:#e7dbff; }
.product-card__img{ position:relative; border-radius:12px; overflow:hidden; background:#fcfbff; }
.product-card__img img{ width:100%; height:230px; object-fit:cover; display:block; }
.product-card__badge{
  position:absolute; top:10px; inset-inline-start:10px; z-index:2;
  background:linear-gradient(90deg,var(--violet),var(--violet2)); color:#fff; font-weight:800; font-size:12px;
  padding:6px 10px; border-radius:999px;
}
.product-title a{ color:var(--ink); text-decoration:none; }
.product-title a:hover{ color:var(--violet2); }
.product-price span{ font-weight:800; }
.product-price del{ margin-inline-start:6px; opacity:.6; }

/* VIDES */
.empty-state{ text-align:center; padding:28px; border:1px dashed var(--border); border-radius:16px; background:#fafafa; color:var(--muted);}
.empty-state .emoji{ font-size:28px; margin-bottom:6px; }

/* Responsive */
@media (max-width:1199.98px){
  .filters__row{ grid-template-columns: 1fr auto auto auto; }
  .filters__actions{ grid-column: 1 / -1; justify-content:flex-end; }
}
@media (max-width:767.98px){
  .filters__row{ grid-template-columns: 1fr; }
  .filters__search .form-control{ width:100%; }
  .filters__price .form-control{ width:100%; }
  .filters__actions{ justify-content:stretch; }
  .btn{ flex:1; }
  .product-card__img img{ height:200px; }
}
