/* ===== GLOBAL ===== */
body{
  background:#f4f6f9;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  margin:0;
  padding:0;
}

/* ===== TOP BAR ===== */
.top-bar{
  background:#111827;
  color:#fff;
  font-size:14px;
  padding:5px 0;
}

/* ===== NAVBAR ===== */
.navbar-nav .nav-link{color:#333;}
.navbar-nav .nav-link:hover{color:#16a34a;}
.navbar-nav li{position:relative;}

.navbar-nav .dropdown:hover>.dropdown-menu{
  display:block;
}
.dropdown-menu{
  transition:all .3s ease;
  z-index:999;
}
.dropdown-menu .dropdown-menu{
  left:100%;
  top:0;
  position:absolute;
  margin-top:-1px;
}
.navbar-nav .dropdown-menu a{
  white-space:nowrap;
}

@media(max-width:991px){
  .dropdown-menu{position:static !important;}
}

/* ===== HERO SLIDER ===== */
.hero-slide{
  background:#fff;
  border-radius:20px;
  overflow:hidden;
  margin-bottom:30px;
}
.hero-text h2{
  font-weight:800;
  font-size:1.8rem;
}
.hero-text p{
  color:#555;
  font-size:1rem;
}

/* ===== PRODUCT CARD ===== */
.product-card{
  background:#fff;
  border-radius:16px;
  border:1px solid #e5e7eb;
  transition:.3s;
  margin-bottom:20px;
  cursor:pointer;
}
.product-card:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 35px rgba(0,0,0,.12);
}
.product-img{
  height:200px;
  object-fit:cover;
  border-radius:12px 12px 0 0;
}
.product-card-body{
  padding:10px;
}
.price{
  font-weight:700;
  color:#16a34a;
  font-size:1.1rem;
}
.add-to-cart{
  margin-top:5px;
}

/* ===== PARTNERS ===== */
.partner-wrapper{
  overflow-x:auto;
  white-space:nowrap;
}
.partner img{
  max-height:60px;
  filter:grayscale(100%);
  opacity:.7;
  transition:.5s;
  margin:10px auto;
}
.partner img:hover{
  filter:none;
  opacity:1;
}

/* ===== FOOTER ===== */
footer{
  background:#111827;
  color:#9ca3af;
  padding-top:30px;
}
footer a{
  color:#9ca3af;
  text-decoration:none;
}
footer a:hover{
  color:#fff;
}



/* ===== PRODUCT PAGE ===== */
.product-wrap{
  background:#fff;
  border-radius:14px;
  padding:25px;
}
.product-img{
  width:100%;
  height:380px;
  object-fit:contain;
  background:#fafafa;
  border-radius:12px;
}
.related-card{
  border:1px solid #eee;
  border-radius:12px;
  padding:15px;
  background:#fff;
  transition:.3s;
}
.related-card:hover{
  transform:translateY(-4px);
  box-shadow:0 10px 25px rgba(0,0,0,.08);
}




/* ===== CART PAGE ===== */
.cart-img{
  width:70px;
  height:70px;
  object-fit:cover;
  border-radius:8px;
  background:#f3f4f6;
}
.cart-summary{
  position:sticky;
  top:90px;
}
.cart-empty{
  max-width:500px;
  margin:auto;
}


/* ===== LOGIN PAGE ===== */
.login-card{
  max-width:420px;
  margin:auto;
}


/* ===== REGISTER PAGE ===== */
.register-card{
  max-width:420px;
  margin:auto;
}


/* ===== CHECKOUT PAGE ===== */
.checkout-summary{
  position:sticky;
  top:90px;
}


/* ===== ORDER HISTORY ===== */
.order-card{
  transition:.3s;
}
.order-card:hover{
  box-shadow:0 12px 28px rgba(0,0,0,.08);
  transform:translateY(-2px);
}


/* ===== USER PANEL ===== */
.user-sidebar{
  position:sticky;
  top:90px;
}
.user-link{
  display:block;
  padding:10px 12px;
  border-radius:8px;
  color:#374151;
  text-decoration:none;
  margin-bottom:5px;
  font-weight:500;
}
.user-link i{
  margin-right:8px;
}
.user-link:hover{
  background:#f3f4f6;
  color:#16a34a;
}
.user-link.active{
  background:#16a34a;
  color:#fff;
}
.user-link.disabled{
  opacity:.5;
  pointer-events:none;
}

/* ===== ORDER CARD ===== */
.order-card{
  transition:.3s;
}
.order-card:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(0,0,0,.08);
}


/* ===== PARTNER MARQUEE ===== */
.partner-marquee{
  overflow:hidden;
  width:100%;
  background:#fff;
  padding:30px 0;
}
.partner-track{
  display:flex;
  width:max-content;
  animation: marquee 28s linear infinite;
}
.partner-item{
  padding:0 45px;
  flex:0 0 auto;
}
.partner-item img{
  height:60px;
  filter:grayscale(100%);
  opacity:.8;
  transition:.3s;
}
.partner-item img:hover{
  filter:none;
  opacity:1;
}
@keyframes marquee{
  0%{ transform:translateX(0); }
  100%{ transform:translateX(-50%); }
}
}