/* ========== GLOBAL ========== */
body {
  font-family: 'Poppins', Arial, sans-serif;
  background: #fff;
  color: #1a1a1a;
  margin: 0;
}

/* ========== WRAPPERS ========== */
#main-wrapper {
  width: 100%;
  max-width: 420px;
  margin: 0 auto;
  background: #fff;
  min-height: 100vh;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
}

/* ========== COMMON HEADER (all pages) ========== */
.header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  background: #ffffff;
  box-shadow: 0 1px 0 #eee;
}
.logo {
  font-size: 18px;
  font-weight: 700;
  color: #ad0061;
  letter-spacing: .2px;
  display: flex;
  align-items: center;
  gap: 9px;
  cursor: pointer;
}
.menu-icon {
  font-size: 21px;
  color: #ad0061;
  cursor: pointer;
}
.icon-set {
  display: flex;
  gap: 20px;
}
.icon-set .icon {
  font-size: 21px;
  color: #ad0061;
  cursor: pointer;
}

/* ========== MENU DROPDOWN (all pages) ========== */
/* base state – menu hidden */
#menu-list {
  display: none;
  list-style: none;
  padding: 0;
  margin: 0;
}

/* dropdown overlay just below header */
.header + #menu-list {
  position: absolute;
  top: 52px;
  left: 0;
  right: 0;
  margin: 0;
  padding: 6px 0;
  background: #ffffff;
  border-bottom: 1px solid #eee;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  z-index: 999;
}
#menu-list li {
  padding: 8px 18px;
}
#menu-list a {
  display: block;
  font-size: 14px;
  color: #333;
  text-decoration: none;
}
#menu-list a:hover {
  background: #ffe6f4;
  color: #ad0061;
}

/* ========== HEADER EXTRA (home page sections) ========== */
.adbar {
  background: #FFF3F7;
  color: #A5005B;
  text-align: center;
  font-size: 13px;
  padding: 3px 0;
  border-bottom:1px solid #fedaf0;
}
.search-bar { background:#fff; margin:15px 0 12px 0; padding:0 14px; }
.search-input-wrap {
  display:flex; align-items:center;
  border-radius:22px; border:1.2px solid #FFC0E5;
  position:relative; background:#fff;
}
.search-input-wrap input {
  flex:1; border:none; outline:none;
  font-size:15px; padding:10px 15px 10px 18px;
  border-radius:22px; background:transparent;
}
.search-input-wrap .search-icn {
  position:absolute; right:19px; top:9px;
  color:#ad0061; font-size:20px;
}

/* Categories row - home */
.cat-row {
  display:flex; overflow-x:auto; gap:18px;
  padding:13px 0 14px 14px; background:#fbf4fd;
}
.cat-row::-webkit-scrollbar{display:none;}
.cat-bubble {flex:0 0 62px; text-align:center;}
.cat-bubble img {
  width:38px; height:38px; object-fit:cover;
  border-radius:50%; border:2.5px solid #edbae2;
  margin-bottom:5px;
}
.cat-title {font-size:12px; color:#ad0061;}

/* Banner - home */
.banner-section {padding:0 9px;}
.banner-card {
  background:#FFD9EF; border-radius:18px;
  max-width:400px; margin:15px auto 6px auto;
  box-shadow:0 6px 24px #F7CFEA48;
  text-align:center; padding:18px 16px;
  position:relative;
}
.banner-img {
  width:78px; height:78px; border-radius:9px;
  object-fit:cover; display:block;
  margin:0 auto 11px auto;
}
.banner-title {color:#A5005B; font-size:17px; font-weight:700; margin-bottom:8px;}
.banner-offer {color:#6a165d; font-size:13px;}
.banner-btn {
  background:#AD0061; color:#fff; border:none;
  border-radius:9px; font-weight:600;
  padding:8px 34px; font-size:15px;
  cursor:pointer; margin-top:12px;
}

.superoffer-bar {
  background:#A5005B; color:#fff; padding:8px 0;
  text-align:center; font-size:15px; font-weight:700;
  margin:13px 0 10px 0; border-radius:8px;
  max-width:450px; margin-left:auto; margin-right:auto;
  box-shadow:0 2px 10px #edbae288;
}

/* Home product list (vertical) */
.section-title {
  padding:12px 0 0 14px;
  font-weight:600; font-size:16.5px;
  color:#341232;
}
.product-list { margin:4px 0 50px 0; padding:0 8px; }
.product-card {
  display:flex; align-items:flex-start;
  background:#fff; border-radius:13px;
  box-shadow:0 1.8px 10px #ecc5eaab;
  border:1.1px solid #f8e0ea;
  margin:15px 0 0 0;
  text-decoration:none; color:#181020;
  overflow:hidden; padding:9px 6px 8px 9px;
  min-height:110px;
}
.product-img img {
  width:83px; height:108px; border-radius:7px;
  object-fit:cover; background:#fbe7fa;
}
.product-details { flex:1; padding-left:12px; }
.product-name {
  font-size:14.6px; color:#3b1340;
  font-weight:600; margin-bottom:9px;
  line-height:19px;
}
.product-price { font-size:15.7px; font-weight:700; color:#ad0061; margin-bottom:5px;}
.mrp-price.line-through {font-size:13.2px; color:#c797b9; text-decoration:line-through; margin-left:7px;}
.off-percentage.m-0 {font-size:11.5px; color:#20b355; margin-left:6px; font-weight:700;}
.free-delivery {font-size:12.1px; color:#05ad42; font-weight:600; margin-top:3px;}

/* Home product grid (if used) */
.product-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  padding:18px;
  background:#fff;
  max-width:900px;
  margin:0 auto 35px auto;
}
.product-grid .product-card {
  flex-direction:column;
  box-shadow:0 2px 12px #efe1ec77;
  border:1px solid #eee;
  padding:11px 10px 10px 10px;
}
.prodimg {
  width:100%; height:180px;
  object-fit:cover; border-radius:6px;
  margin-bottom:10px;
}
.prod-title {
  min-height:36px; font-size:13.8px; font-weight:600;
  line-height:1.2; color:#2b133d; margin-bottom:7px;
  display:-webkit-box; -webkit-line-clamp:2;
  -webkit-box-orient:vertical; overflow:hidden;
}
.prod-row {display:flex; align-items:center; gap:8px; margin-bottom:2.5px;}
.prod-price {font-size:15px; font-weight:700; color:#159647;}
.prod-mrp {font-size:13.2px; color:#888; text-decoration:line-through;}
.prod-off {font-size:12.5px; color:#ad0061; font-weight:700;}
.prod-extra {font-size:12px; color:#159647;}
.prod-special {color:#159647; font-weight:500;}
.f-delivery {background:#e9faf1; color:#129a58; font-size:12px; border-radius:7px; padding:2px 9px;}
.prod-rating {margin-top:6px;}
.rbox {background:#159647; color:#fff; padding:2px 11px; border-radius:7px; font-size:13px; font-weight:700;}
.rcount {color:#999; font-size:13px; margin-left:3px;}

/* ========== PRODUCT DETAIL PAGE ========== */
.main-product {
  border-radius:15px;
  box-shadow:0 5px 24px #F7CFEA22;
  margin:12px auto 0 auto;
  padding:18px 10px 35px 10px;
  background:#fff;
}
.main-img img {
  width:100%; max-width:320px; height:320px;
  object-fit:cover; border-radius:12px;
  background:#fae6f3; display:block; margin:0 auto;
}
.main-title {
  font-size:18.5px; color:#291234;
  font-weight:700; text-align:center;
  margin-top:18px;
}
.main-pricebar {
  display:flex; justify-content:center;
  align-items:center; gap:12px;
  margin:10px 0 5px 0;
}
.main-price {color:#159647; font-size:20px; font-weight:700;}
.main-mrp {color:#bba1bb; text-decoration:line-through; font-size:14px;}
.main-off {color:#ad0061; font-size:13px; font-weight:700;}
.free-delivery {color:#20b355; font-size:14px; text-align:center; margin-top:5px;}
.main-buybtn {
  background:#ad0061; color:#fff; border:none;
  border-radius:8px; padding:10px 42px;
  margin:17px auto 15px auto; display:block;
  font-weight:700; font-size:16px; cursor:pointer;
}
main_infobar {
  display:flex; justify-content:center; gap:22px;
  font-size:15px; color:#5a2060; margin:12px 0;
}
.main-ratingpill {text-align:center; margin:18px 0 12px 0;}
.main-rating {background:#20b355; color:#fff; padding:5px 16px; border-radius:18px; font-weight:700;}
.main-rating-count {color:#8a8a8a; font-size:13px; margin-left:7px;}
.main-sectitle {font-weight:700; color:#a5005b; font-size:16px; margin:22px 0 8px 0;}
.main-desc {
  font-size:15px; color:#232021;
  margin:13px 0 18px 0; line-height:1.5;
  padding:0 8px;
}
.main-relatedgrid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:13px; margin:16px 0 0 0;
}
.related-card {
  background:#fff; border:1px solid #f3cdea;
  border-radius:10px; padding:11px;
  box-shadow:0 2px 12px #e5b2d633;
  text-decoration:none; color:#232021;
}
.related-img {
  width:80px; height:98px; object-fit:cover;
  border-radius:7px; margin-bottom:6px;
}
.related-title {
  font-size:13.2px; font-weight:600; min-height:34px;
  display:-webkit-box; -webkit-line-clamp:2;
  -webkit-box-orient:vertical; overflow:hidden;
}
.related-price {font-size:15px; font-weight:700; color:#10a95a;}
.related-mrp {font-size:12px; text-decoration:line-through; color:#bfa3b8; margin-left:5px;}

/* Comments */
.comment-block {
  background:#f6f4fb; border-radius:12px;
  margin-bottom:20px; padding:16px 18px;
  font-size:1rem; box-shadow:0 2px 8px #ad006111;
}
.comment-block img {border-radius:6px; margin-right:8px;}
.comment-block .user {font-weight:600; margin-bottom:3px;}
.comment-block .date {font-size:13px; color:#888; margin-bottom:5px; display:block;}
.comment-block .comment {margin-bottom:7px;}
.comment-block .rating {color:#10b981; font-weight:600;}

/* ========== FOOTER (all pages) ========== */
.footer {
  width:100%; background:#2e0138;
  color:#fff; padding:34px 0 7px 0;
  margin-top:22px;
}
.footer-cols {
  display:flex; justify-content:space-around;
  max-width:420px; margin:auto; font-size:12.7px;
}
.footer a {color:#eee; text-decoration:none;}
.footer-copy {margin-top:8px; font-size:11.5px;}

/* ========== RESPONSIVE ========== */
@media (max-width:650px){
  #main-wrapper {max-width:100vw;}
  .main-img img {max-width:99vw; height:420px;}
  .main-relatedgrid {grid-template-columns:1fr;}
}
@media (max-width:520px){
  .banner-card {max-width:100vw;}
  .cat-row {gap:7px; padding-left:5px;}
  .banner-img {width:47px; height:47px;}
  .product-card {padding:8px 2px;}
  .product-img img {width:65px; height:85px;}
}
