/* Dryfo Product Grid Enhancements - scoped to product grid pages by enqueue condition */

:root {
  --dryfo-orange: #F49801;
  --dryfo-orange-hover: #e88700;
  --dryfo-burgundy: #562933;
  --dryfo-card-bg: #f8f5f2;
}

.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none !important;
  max-width: 1300px !important;
}

.woocommerce ul.products li.product {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 10px 8px 15px 8px !important;
  background: var(--dryfo-card-bg) !important;
  border-radius: 12px !important;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08) !important;
  min-height: 420px !important;
  box-sizing: border-box !important;
}

.woocommerce ul.products li.product:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 18px 44px rgba(86, 41, 51, 0.12) !important;
  border-color: rgba(244, 152, 1, 0.45) !important;
}

.woocommerce ul.products li.product .product-image-container {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  height: 170px !important;
  overflow: hidden !important;
  padding: 5px !important;
  flex-shrink: 0 !important;
  margin-bottom: 10px !important;
}

.woocommerce ul.products li.product img,
.woocommerce ul.products li.product .woocommerce-loop-product__link img,
.woocommerce ul.products li.product img.wp-post-image,
.woocommerce ul.products li.product img.attachment-woocommerce_thumbnail {
  display: block !important;
  max-width: 95% !important;
  max-height: 90% !important;
  object-fit: contain !important;
  margin: auto !important;
  border-radius: 8px !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.woocommerce ul.products li.product img[src*="placeholder"],
.woocommerce ul.products li.product img[src*="dryfo"],
.woocommerce ul.products li.product img[src*="logo"],
.woocommerce ul.products li.product img[src*="icon"] {
  object-fit: contain !important;
  padding: 10px !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link {
  min-height: 190px !important;
  display: block !important;
}

.product-title-wrapper {
  height: 50px !important;
  min-height: 50px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin-bottom: 10px !important;
  padding: 0 5px !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title a,
.woocommerce ul.products li.product .product-title-wrapper,
.woocommerce ul.products li.product .product-title-wrapper a {
  font-family: 'Geologica', Arial, sans-serif !important;
  color: var(--dryfo-burgundy) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.woocommerce-loop-product__title {
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  text-align: center !important;
  overflow: visible !important;
  text-overflow: ellipsis !important;
  white-space: normal !important;
  word-break: break-word !important;
  display: block !important;
  max-height: calc(1.3em * 2) !important;
}

.loop-product-attrs {
  font-size: 13px !important;
  text-transform: uppercase !important;
  color: rgba(86,41,51,0.6) !important;
  text-align: center !important;
  margin: 0 0 10px 0 !important;
  height: 20px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.woocommerce ul.products li.product .product-weight-selection,
.woocommerce ul.products li.product .empty-weight-spacer {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  height: 34px !important;
  margin: 0 0 10px 0 !important;
  flex-shrink: 0 !important;
}

.woocommerce ul.products li.product select#pa_weight,
.woocommerce ul.products li.product table.variations select {
  width: 100% !important;
  max-width: 160px !important;
  padding: 8px !important;
  height: 40px !important;
  border-radius: 8px !important;
  border: 1px solid var(--dryfo-burgundy) !important;
  background: var(--dryfo-card-bg) !important;
  color: var(--dryfo-burgundy) !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
}

.woocommerce ul.products li.product .product-action-row {
  display: flex !important;
  flex-direction: row !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  height: 50px !important;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
}

.woocommerce ul.products li.product .addify_addto_quote_btn,
.woocommerce ul.products li.product .afrfqbt_single_page,
.woocommerce ul.products li.product .addify-rfq-button,
.woocommerce ul.products li.product a.button.product_type_simple,
.woocommerce ul.products li.product a.button.product_type_variable,
.woocommerce ul.products li.product a.button[href*="o-logariasmos-mou"],
.woocommerce ul.products li.product a.button[href*="my-account"] {
  padding: 0 16px !important;
  height: 40px !important;
  min-width: 115px !important;
  line-height: 40px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  border-radius: 8px !important;
  background: var(--dryfo-orange) !important;
  border: 2px solid var(--dryfo-orange) !important;
  color: #fff !important;
  box-shadow: 0 3px 6px rgba(244,152,1,0.2) !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  vertical-align: middle !important;
  margin: 0 !important;
  cursor: pointer !important;
  transition: all 0.3s !important;
  flex-shrink: 0 !important;
  text-decoration: none !important;
}

.woocommerce ul.products li.product .addify_addto_quote_btn:hover,
.woocommerce ul.products li.product .afrfqbt_single_page:hover,
.woocommerce ul.products li.product .addify-rfq-button:hover,
.woocommerce ul.products li.product a.button.product_type_simple:hover,
.woocommerce ul.products li.product a.button.product_type_variable:hover,
.woocommerce ul.products li.product a.button[href*="o-logariasmos-mou"]:hover,
.woocommerce ul.products li.product a.button[href*="my-account"]:hover {
  background: var(--dryfo-orange-hover) !important;
  border-color: var(--dryfo-orange-hover) !important;
  color: #fff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 5px 12px rgba(244,152,1,0.3) !important;
}

.woocommerce ul.products li.product input.qty {
  width: 55px !important;
  height: 40px !important;
  font-size: 14px !important;
  border-radius: 10px !important;
  text-align: center !important;
  border: 1px solid var(--dryfo-burgundy) !important;
  color: var(--dryfo-burgundy) !important;
  line-height: 40px !important;
  padding: 0 6px !important;
  margin: 0 !important;
  vertical-align: middle !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.woocommerce ul.products li.product input.qty:hover,
.woocommerce ul.products li.product input.qty:focus {
  color: var(--dryfo-orange) !important;
  border-color: var(--dryfo-orange) !important;
  outline: none !important;
}

.grid-total-weight {
  font-weight: 600 !important;
  font-size: 12px !important;
  color: var(--dryfo-burgundy) !important;
  text-align: center !important;
  margin: 0 !important;
  height: 25px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.woocommerce ul.products li.product .product-bottom-actions {
  margin-top: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-end !important;
  width: 100% !important;
  min-height: 120px !important;
  flex-shrink: 0 !important;
}

.woocommerce ul.products li.product table.variations,
.woocommerce ul.products li.product table.variations th,
.woocommerce ul.products li.product table.variations td {
  background: transparent !important;
  padding: 0 !important;
  border: none !important;
  text-align: center !important;
}

.woocommerce ul.products li.product table.variations {
  width: 100% !important;
  margin: 0 !important;
}

.woocommerce ul.products li.product table.variations th {
  display: table-cell !important;
  font-size: 12px !important;
  color: var(--dryfo-burgundy) !important;
  padding-bottom: 2px !important;
}

.woocommerce ul.products li.product a.reset_variations,
.addify_addto_quote_btn + span,
.woocommerce ul.products li.product span.quantity-label {
  display: none !important;
}

.empty-weight-spacer {
  height: 38px !important;
  min-height: 38px !important;
  margin: 0 0 10px 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  flex-shrink: 0 !important;
}

/* Unavailable products: show only notify, hide add-to-quote controls */
ul.products li.product.dryfo-asp-unavailable-card form.variations_form.cart,
ul.products li.product.dryfo-asp-unavailable-card form.cart,
ul.products li.product.dryfo-asp-unavailable-card .product-action-row,
ul.products li.product.dryfo-asp-unavailable-card .grid-total-weight,
ul.products li.product.dryfo-asp-unavailable-card .empty-weight-spacer {
  display: none !important;
}

@media (max-width: 1200px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .woocommerce ul.products li.product {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    height: 450px !important;
  }

  .woocommerce ul.products li.product .woocommerce-loop-product__title {
    height: 40px !important;
    font-size: 15px !important;
  }

  .woocommerce ul.products li.product .loop-product-attrs {
    height: 20px !important;
  }

  .woocommerce ul.products li.product .product-bottom-actions {
    height: 120px !important;
  }

  body,
  html {
    overflow-x: hidden !important;
  }
}

/* v1.0.3 surgical additions only: no grid rebuild */
.woocommerce ul.products li.product a.dryfo-need-variation {
  opacity: .55 !important;
  cursor: not-allowed !important;
}

/* Anti-flash protection without changing the stable layout dimensions */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title a,
.woocommerce ul.products li.product .product-title-wrapper,
.woocommerce ul.products li.product .product-title-wrapper a {
  color: var(--dryfo-burgundy) !important;
  font-family: 'Geologica', Arial, sans-serif !important;
  font-weight: 700 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link img,
.woocommerce ul.products li.product img.wp-post-image,
.woocommerce ul.products li.product img.attachment-woocommerce_thumbnail {
  opacity: 1 !important;
  visibility: visible !important;
}


/* === Premium card only - δεν πειράζει κουμπιά/βάρος/quantity === */

.woocommerce ul.products {
  gap: 24px !important;
}

.woocommerce ul.products li.product {
  background: #fffdfb !important;
  border: 1px solid rgba(244, 152, 1, 0.22) !important;
  border-radius: 22px !important;
  box-shadow: 0 14px 34px rgba(86, 41, 51, 0.08) !important;
  overflow: hidden !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

.woocommerce ul.products li.product:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 18px 44px rgba(86, 41, 51, 0.12) !important;
  border-color: rgba(244, 152, 1, 0.45) !important;
}

.woocommerce ul.products li.product .product-image-container {
  margin-bottom: 16px !important;
}

.woocommerce ul.products li.product img,
.woocommerce ul.products li.product .woocommerce-loop-product__link img,
.woocommerce ul.products li.product img.wp-post-image,
.woocommerce ul.products li.product img.attachment-woocommerce_thumbnail {
  filter: drop-shadow(0 8px 12px rgba(86, 41, 51, 0.13)) !important;
}


/* === Premium compact weight row === */

.woocommerce ul.products li.product table.variations {
  width: 100% !important;
  max-width: 190px !important;
  margin: 0 auto 12px auto !important;
}

.woocommerce ul.products li.product table.variations tbody,
.woocommerce ul.products li.product table.variations tr {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
}

.woocommerce ul.products li.product table.variations th.label {
  display: flex !important;
  width: auto !important;
  min-width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;

  font-size: 12px !important;
  font-weight: 700 !important;
  color: var(--dryfo-burgundy) !important;
  line-height: 34px !important;
}

.woocommerce ul.products li.product table.variations td.value {
  display: flex !important;
  width: auto !important;
  flex: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce ul.products li.product select#pa_weight,
.woocommerce ul.products li.product table.variations select {
  width: 100% !important;
  max-width: 135px !important;
  height: 34px !important;
  min-height: 34px !important;

  padding: 0 12px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(86, 41, 51, 0.14) !important;
  background: #fff !important;
  color: var(--dryfo-burgundy) !important;

  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 34px !important;

  box-shadow: 0 4px 12px rgba(86, 41, 51, 0.04) !important;
}

.woocommerce ul.products li.product select#pa_weight:focus,
.woocommerce ul.products li.product table.variations select:focus {
  outline: none !important;
  border-color: rgba(244, 152, 1, 0.65) !important;
  box-shadow: 0 0 0 3px rgba(244, 152, 1, 0.10) !important;
}



/* PREMIUM quantity + add-to-quote button only */
.woocommerce ul.products li.product .product-action-row,
.woocommerce ul.products li.product .woocommerce-variation-add-to-cart {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
}

/* Quantity */
.woocommerce ul.products li.product input.qty {
  width: 58px !important;
  height: 38px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(86, 41, 51, 0.22) !important;
  background: #fff !important;
  color: #562933 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-align: center !important;
  box-shadow: 0 8px 18px rgba(86, 41, 51, 0.06) !important;
}

/* Add button */
.woocommerce ul.products li.product .afrfqbt_single_page,
.woocommerce ul.products li.product a.button.product_type_simple,
.woocommerce ul.products li.product a.button.product_type_variable {
  height: 38px !important;
  min-width: 130px !important;
  padding: 0 24px !important;
  border-radius: 14px !important;
  background: linear-gradient(135deg, #f7b84d 0%, #f49801 100%) !important;
  border: 1px solid rgba(244, 152, 1, 0.55) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: .2px !important;
  box-shadow: 0 10px 22px rgba(244, 152, 1, 0.18) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}

/* Hover */
.woocommerce ul.products li.product .afrfqbt_single_page:hover,
.woocommerce ul.products li.product a.button.product_type_simple:hover,
.woocommerce ul.products li.product a.button.product_type_variable:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 14px 28px rgba(244, 152, 1, 0.26) !important;
  background: linear-gradient(135deg, #f49801 0%, #e88700 100%) !important;
}

/* Disabled variable button */
.woocommerce ul.products li.product .afrfqbt_single_page.dryfo-need-variation,
.woocommerce ul.products li.product .afrfqbt_single_page.disabled {
  background: linear-gradient(135deg, #f8d08a 0%, #f5bd62 100%) !important;
  border-color: rgba(245, 189, 98, 0.8) !important;
  opacity: 1 !important;
  cursor: not-allowed !important;
  box-shadow: 0 8px 18px rgba(244, 152, 1, 0.10) !important;
}
