
/* Boutique Roller Bug */

:root{
  --yellow:#E8FF00;
  --dark:#07070A;
  --dark-2:#0E0E15;
  --dark-3:#16161F;
  --white:#F0F0EC;
  --gray:#ACACC4;
  --border:rgba(255,255,255,.08);
}

.shop-hero{
  padding:140px 0 60px;
  text-align:center;
}

.shop-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:1.5rem;
  margin-top:3rem;
}

.product-card{
  background:var(--dark-3);
  border:1px solid var(--border);
  border-radius:10px;
  overflow:hidden;
  transition:.3s;
}

.product-card:hover{
  transform:translateY(-6px);
  border-color:rgba(232,255,0,.3);
}

.product-image{
  height:220px;
  background:linear-gradient(135deg,var(--dark-2),var(--dark));
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:4rem;
}

.product-content{
  padding:1.5rem;
}

.product-title{
  font-size:1.3rem;
  margin-bottom:.5rem;
}

.product-price{
  color:var(--yellow);
  font-size:1.6rem;
  font-weight:700;
  margin:1rem 0;
}

.shop-filter{
  display:flex;
  justify-content:center;
  gap:1rem;
  flex-wrap:wrap;
  margin:2rem 0;
}

.filter-btn{
  background:transparent;
  border:1px solid var(--border);
  color:var(--white);
  padding:.8rem 1.2rem;
  cursor:pointer;
}

.filter-btn.active,
.filter-btn:hover{
  background:var(--yellow);
  color:#000;
}

.hidden-product{
  display:none;
}


.shop-category{
  margin-top:5rem;
}

.shop-category h2{
  margin-bottom:2rem;
  text-align:center;
}

.product-card{
  display:flex;
  flex-direction:column;
  height:100%;
}

.product-image{
  height:260px;
  font-size:5rem;
  background:linear-gradient(135deg,var(--dark-2),var(--dark));
}

.product-content{
  display:flex;
  flex-direction:column;
  gap:1rem;
}

.product-content .btn{
  width:100%;
  text-align:center;
}

.product-card p{
  color:var(--gray);
}

.shop-category{
  margin-top:5rem;
}

.shop-category h2{
  text-align:center;
  margin-bottom:2rem;
}

.product-card{
  display:flex;
  flex-direction:column;
}

.product-image{
  height:260px;
  font-size:5rem;
}

.product-content{
  display:flex;
  flex-direction:column;
  gap:1rem;
}

.product-content .btn{
  width:100%;
  text-align:center;
}

.product-page{
  max-width:1200px;
  margin:140px auto 80px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3rem;
  padding:0 20px;
}

.product-gallery img{
  width:100%;
  border-radius:10px;
}

.product-info h1{
  margin-bottom:1rem;
}

.product-price{
  font-size:2rem;
  color:var(--yellow);
  margin-bottom:2rem;
}

.product-info form{
  display:flex;
  flex-direction:column;
  gap:1rem;
}

.product-info input{
  padding:12px;
  background:var(--dark-2);
  border:1px solid var(--border);
  color:white;
}

@media(max-width:900px){
  .product-page{
    grid-template-columns:1fr;
  }
}

.product-page{
    max-width:1200px;
    margin:140px auto 80px;
    padding:0 20px;

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:4rem;
    align-items:center;
}

.product-photo{
    width:100%;
    border-radius:12px;
    display:block;
}

.product-info h1{
    font-size:5rem;
    line-height:.95;
    text-transform:uppercase;
    margin-bottom:1rem;
}

.product-price{
    color:var(--yellow);
    font-size:2.5rem;
    font-weight:700;
    margin-bottom:1.5rem;
}

.product-description{
    margin-bottom:1.5rem;
}

.product-info label{
    display:block;
    margin-top:1rem;
    margin-bottom:.5rem;
}

.product-info select,
.product-info input{
    width:100%;
    padding:12px;
    background:var(--dark-2);
    border:1px solid var(--border);
    color:white;
}

.product-actions{
    display:flex;
    gap:15px;
    margin-top:25px;
    flex-wrap:wrap;
}

.product-actions .btn{
    flex:1;
    text-align:center;
}

@media(max-width:900px){

    .product-page{
        grid-template-columns:1fr;
    }

    .product-info h1{
        font-size:3rem;
    }

}

/* =========================
   PANIER ROLLER BUG
========================= */

.product-page h1{

    font-size:4rem;

    line-height:0.9;

    margin-bottom:30px;

}

#panier-container{

    max-width:700px;

}

#panier-container .product-card{

    display:flex;

    align-items:center;

    gap:15px;

    padding:15px;

    margin-bottom:15px;

    background:rgba(255,255,255,.03);

    border:1px solid rgba(255,255,255,.08);

    border-radius:12px;

}

.cart-image{

    width:80px;

    height:80px;

    object-fit:cover;

    border-radius:8px;

    flex-shrink:0;

}

#panier-container .product-content{

    flex:1;

}

#panier-container .product-content h3{

    font-size:1.2rem;

    margin-bottom:8px;

}

#panier-container .product-content p{

    font-size:.95rem;

    margin-bottom:6px;

}

#panier-container input{

    width:80px;

    height:40px;

    margin-top:8px;

}

#panier-container .btn{

    margin-top:12px;

    padding:10px 20px;

}

#panier-total{

    margin-top:20px;

}

#panier-total h2{

    color:#ffffff;

    font-size:3rem;

    font-weight:900;

    margin:0;

}

.product-actions{

    margin-top:25px;

    display:flex;

    gap:15px;

    flex-wrap:wrap;

}

.product-actions .btn{

    min-width:220px;

}

@media(max-width:768px){

    .product-page h1{

        font-size:3rem;

    }

    #panier-container .product-card{

        flex-direction:column;

        text-align:center;

    }

    .cart-image{

        width:100px;

        height:100px;

    }

}

/* =========================
   PANIER FLOTTANT
========================= */

.floating-cart{

    position:fixed;

    bottom:25px;

    right:25px;

    z-index:9999;

    background:var(--yellow);

    color:#000;

    padding:15px 25px;

    border-radius:50px;

    text-decoration:none;

    font-weight:700;

    display:flex;

    align-items:center;

    gap:10px;

    box-shadow:0 10px 30px rgba(0,0,0,.35);

}

#floating-cart-count{

    background:#000;

    color:var(--yellow);

    min-width:28px;

    height:28px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    font-size:.85rem;

}
