/*
 Theme Name: Astra Child
 Template: astra
*/

/* === GLOBAL FONT === */
body {
  font-family: 'Hind Siliguri','Noto Sans Bengali',sans-serif;
  background:#f9f9f9;
}

/* === PAGE WIDTH & CONTAINER ALIGNMENT === */
.ast-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  width: 100%;
  box-sizing: border-box;
}

.site-content {
  width: 100%;
  overflow-x: hidden;
}

/* === WOOCOMMERCE PRODUCT GRID ALIGNMENT === */
.woocommerce ul.products,
.woocommerce-page ul.products {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px;
  padding: 0;
  list-style: none;
  justify-content: flex-start;
  align-items: stretch;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  width: 100%;
  padding: 0 15px;
  margin-bottom: 30px;
  box-sizing: border-box;
}

/* Desktop: 4 columns */
@media (min-width: 1200px) {
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product {
    width: calc(25% - 30px);
    flex: 0 0 calc(25% - 30px);
  }
}

/* Tablet: 3 columns */
@media (min-width: 768px) and (max-width: 1199px) {
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product {
    width: calc(33.333% - 30px);
    flex: 0 0 calc(33.333% - 30px);
  }
}

/* Mobile: 2 columns */
@media (min-width: 480px) and (max-width: 767px) {
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product {
    width: calc(50% - 30px);
    flex: 0 0 calc(50% - 30px);
  }
}

/* Small Mobile: 1 column */
@media (max-width: 479px) {
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product {
    width: 100%;
    flex: 0 0 100%;
  }
}

/* === GLOBAL WOOCOMMERCE PRICE STYLE === */
.woocommerce-js ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
  line-height:1.3;
  margin-bottom:.5em;
  font-weight:700;
  font-size:1.5em;
}
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.widget_layered_nav_filters ul li.chosen a,
.woocommerce-page ul.products li.product .ast-woo-product-category,
.wc-layered-nav-rating a {
  color:#FF355E;
}

/* ------------------------------------
   PRODUCT CARD  (Lovable style)
------------------------------------ */
.autokid-product-card{
  list-style:none;
  background:#fff;
  border-radius:16px;
  overflow:hidden;
  padding:16px;
  box-shadow:0 8px 20px rgba(0,0,0,0.08);
  display:flex;
  flex-direction:column;
  position:relative;
  transition:transform .3s ease,box-shadow .3s ease;
  height:100%;
  box-sizing:border-box;
}

.autokid-product-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
  position: relative;
}
.autokid-product-card:hover{
  transform:translateY(-6px) scale(1.02);
  box-shadow:0 12px 30px rgba(0,0,0,0.15);
}

/* --- BADGES --- */
.autokid-badges{
  position:absolute;
  top:12px;left:12px;right:12px;
  display:flex;
  justify-content:space-between;
  z-index:10;
}
.autokid-badges .badge{
  font-size:13px;
  font-weight:700;
  padding:6px 12px;
  border-radius:20px;
  color:#fff;
  box-shadow:0 4px 8px rgba(0,0,0,.1);
}
.autokid-badges .stock,
.autokid-badges .featured{background:#ff2c63;}
.autokid-badges .discount{
  background:#ffd400;
  color:#111;
  border-radius:999px;
  white-space:nowrap;
  padding:6px 14px;
  transform:translateX(10px) translateY(-6px);
  opacity:0;
  transition:transform .35s cubic-bezier(.2,.9,.3,1),opacity .3s ease;
}
.autokid-product-card:hover .autokid-badges .discount{
  transform:translateX(0) translateY(-4px);
  opacity:1;
}
.autokid-badges .discount .discount-old-price{
  display:block;
  margin-top:4px;
  font-size:.72rem;
  color:#fff;
  text-decoration:line-through;
  font-weight:600;
  background:rgba(128,128,128,.5);
  padding:2px 6px;
  border-radius:8px;
}

/* --- IMAGE --- */
.autokid-image{
  display:block;
  width:100%;
  border-radius:12px;
  overflow:hidden;
  margin-bottom:12px;
}
.autokid-image img{
  width:100%;
  height:auto;
  object-fit:cover;
  transition:filter .3s ease,opacity .3s ease;
}
.autokid-product-card:hover .autokid-image img{
  filter:brightness(.96);
  opacity:.98;
}

/* --- INFO --- */
.autokid-info{
  text-align:left;
  display:flex;
  flex-direction:column;
}
.autokid-title{
  font-size:1rem;
  font-weight:600;
  color:#111;
  margin:0 0 10px;
  line-height:1.4;
}
.autokid-title a{text-decoration:none;color:inherit;}

/* --- PRICE + CART ROW --- */
.autokid-bottom{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-top:auto;
  width:100%;
  gap:10px;
}
.autokid-price{
  font-size:1.2rem;
  font-weight:700;
  color:#FF355E;
}
.autokid-price del{
  color:#999;
  font-size:.9rem;
  margin-left:6px;
}

/* --- ADD TO CART ICON BUTTON --- */
.autokid-cart .button{
  display:flex!important;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:10px;
  background:#FF355E!important;
  border:none!important;
  box-shadow:0 4px 8px rgba(255,44,99,.2);
  text-decoration:none!important;
  overflow:hidden;
  font-size:0!important; /* hide text */
  transition:transform .25s ease,background .25s ease;
  position:relative;
}
.autokid-cart .button span,
.autokid-cart .button .added_to_cart,
.autokid-cart .button:after{display:none!important;}
.autokid-cart .button::before{
  content:"\f07a"; /* shopping cart */
  font-family:"Font Awesome 5 Free";
  font-weight:900;
  font-size:16px;
  color:#fff;
  line-height:1;
}
.autokid-cart .button:hover{
  background:#ff4c7a!important;
  transform:scale(1.08);
}

/* ------------------------------------
   MENU ICON + UNDERLINE ANIMATION
------------------------------------ */
.main-header-menu li a,
.main-navigation .menu>li>a{
  display:inline-flex!important;
  align-items:center;
  gap:10px;
  font-weight:600;
  position:relative;
  padding-bottom:6px;
  text-decoration:none;
  color:inherit;
}
.main-header-menu li a i,
.main-navigation .menu li a i{
  font-size:17px;
  line-height:1;
  vertical-align:middle;
}

/* underline gradient animation */
.main-header-menu li a::after,
.main-navigation .menu li a::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  transform:translateX(-50%) scaleX(0);
  transform-origin:center;
  width:70%;
  height:3px;
  border-radius:6px;
  background:linear-gradient(90deg,#FF355E 0%,#FFD400 100%);
  transition:transform .35s cubic-bezier(.2,.9,.3,1);
  opacity:.95;
}
.main-header-menu li a:hover::after,
.main-navigation .menu li a:hover::after,
.main-header-menu li.current-menu-item>a::after{
  transform:translateX(-50%) scaleX(1);
}

/* ------------------------------------
   RESPONSIVE
------------------------------------ */
@media(max-width:1024px){
  .ast-container {
    padding: 0 15px;
  }
  .woocommerce ul.products,
  .woocommerce-page ul.products {
    margin: 0 -10px;
  }
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product {
    padding: 0 10px;
    margin-bottom: 20px;
  }
  .autokid-product-card{padding:12px;border-radius:12px;}
  .autokid-badges{top:8px;left:8px;right:8px;}
  .autokid-cart .button{width:40px;height:40px;}
  .main-header-menu li a{gap:8px;}
}
@media(max-width:768px){
  .ast-container {
    padding: 0 12px;
  }
  .woocommerce ul.products,
  .woocommerce-page ul.products {
    margin: 0 -8px;
  }
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product {
    padding: 0 8px;
    margin-bottom: 16px;
  }
  .autokid-price{font-size:1rem;}
  .autokid-badges .badge{font-size:12px;padding:5px 10px;}
  .main-header-menu li a{gap:6px;}
}
@media(max-width:479px){
  .ast-container {
    padding: 0 10px;
  }
  .woocommerce ul.products,
  .woocommerce-page ul.products {
    margin: 0;
  }
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product {
    padding: 0;
    margin-bottom: 16px;
  }
}
