/* Phase 7: presentation around native WooCommerce single-product hooks/forms. */
.single-product .dzkeys-commerce { padding-block: var(--dzkeys-space-6); }
.single-product .dzkeys-commerce div.product:not(li) {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--dzkeys-space-6);
  min-width: 0;
  position: relative;
}
.single-product .dzkeys-commerce div.product .woocommerce-product-gallery,
.single-product .dzkeys-commerce div.product .summary.entry-summary {
  float: none;
  width: auto;
  min-width: 0;
  margin: 0;
}
.single-product .dzkeys-commerce .woocommerce-product-gallery {
  align-self: start;
  padding: var(--dzkeys-space-3);
  background: var(--dzkeys-color-surface);
  border: 1px solid var(--dzkeys-color-border);
  border-radius: var(--dzkeys-radius-panel);
}
.single-product .dzkeys-commerce .woocommerce-product-gallery__wrapper { margin: 0; }
.single-product .dzkeys-commerce .woocommerce-product-gallery__image a { display: block; }
/* Preserve full cover artwork within the native gallery. */
.single-product .dzkeys-commerce div.product .woocommerce-product-gallery__image img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 36rem;
  object-fit: contain !important;
  aspect-ratio: 3 / 4;
}
.single-product .dzkeys-commerce .flex-control-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: var(--dzkeys-space-2);
  margin-block: var(--dzkeys-space-3) 0;
  padding: 0;
  list-style: none;
}
.single-product .dzkeys-commerce .flex-control-thumbs li { width: 4rem; float: none; }
.single-product .dzkeys-commerce .summary.entry-summary {
  padding: var(--dzkeys-space-5);
  background: var(--dzkeys-color-surface);
  border: 1px solid var(--dzkeys-color-border);
  border-radius: var(--dzkeys-radius-panel);
  align-self: start;
  overflow-wrap: anywhere;
}
.single-product .dzkeys-commerce .product_title { font-size: clamp(1.25rem, 3vw, 1.75rem); }
.single-product .dzkeys-commerce .summary .price { color: var(--dzkeys-color-heading); font-size: 1.375rem; }
.single-product .dzkeys-commerce .summary .price del { color: var(--dzkeys-color-muted); font-size: 0.875em; }
.single-product .dzkeys-commerce .summary .price ins { text-decoration: none; }
.single-product .dzkeys-commerce form.cart { margin-block: var(--dzkeys-space-5); }
.single-product .dzkeys-commerce table.variations { width: 100%; border-collapse: collapse; }
.single-product .dzkeys-commerce table.variations th,
.single-product .dzkeys-commerce table.variations td { display: block; padding: 0; text-align: start; border: 0; }
.single-product .dzkeys-commerce table.variations label { display: block; margin-block-end: var(--dzkeys-space-2); }
.single-product .dzkeys-commerce div.product form.cart table.variations select { width: 100%; max-width: 100%; box-sizing: border-box; margin: 0 !important; direction: ltr; unicode-bidi: plaintext; text-align: start; }
.single-product .dzkeys-commerce .reset_variations { display: inline-block; margin-block-start: var(--dzkeys-space-2); }
.single-product .dzkeys-commerce form.cart .quantity { float: none; display: inline-block; margin: 0 var(--dzkeys-space-2) var(--dzkeys-space-2) 0; }
.single-product .dzkeys-commerce .quantity .qty { width: 4.5rem; text-align: center; }
.single-product .dzkeys-commerce div.product form.cart button.single_add_to_cart_button,
.single-product .dzkeys-commerce #review_form input#submit {
  min-height: var(--dzkeys-control-min);
  padding: var(--dzkeys-space-2) var(--dzkeys-space-5);
  background: var(--dzkeys-color-primary);
  color: var(--dzkeys-color-on-primary);
  border: 1px solid var(--dzkeys-color-primary);
  border-radius: var(--dzkeys-radius-control);
  float: none;
  white-space: normal;
}
.single-product .dzkeys-commerce div.product form.cart button.single_add_to_cart_button.disabled { opacity: 0.5; }
.single-product .dzkeys-commerce .product_meta { font-size: var(--dzkeys-font-size-small); color: var(--dzkeys-color-muted); }
.single-product .dzkeys-commerce .product_meta > span { display: block; }
.single-product .dzkeys-commerce .woocommerce-tabs,
.single-product .dzkeys-commerce .related,
.single-product .dzkeys-commerce .up-sells { grid-column: 1 / -1; min-width: 0; }
.single-product .dzkeys-commerce .woocommerce-tabs { padding: var(--dzkeys-space-5); border: 1px solid var(--dzkeys-color-border); border-radius: var(--dzkeys-radius-panel); background: var(--dzkeys-color-surface); }
.single-product .dzkeys-commerce .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; gap: var(--dzkeys-space-2); padding: 0; margin-block: 0 var(--dzkeys-space-5); }
.single-product .dzkeys-commerce .woocommerce-tabs ul.tabs::before,
.single-product .dzkeys-commerce .woocommerce-tabs ul.tabs li::before,
.single-product .dzkeys-commerce .woocommerce-tabs ul.tabs li::after { display: none; }
.single-product .dzkeys-commerce .woocommerce-tabs ul.tabs li { margin: 0; background: transparent; border: 1px solid var(--dzkeys-color-border); border-radius: var(--dzkeys-radius-control); }
.single-product .dzkeys-commerce .woocommerce-tabs ul.tabs li a { color: var(--dzkeys-color-text); min-height: var(--dzkeys-control-min); padding: var(--dzkeys-space-2) var(--dzkeys-space-3); }
.single-product .dzkeys-commerce .woocommerce-tabs ul.tabs li.active { border-color: var(--dzkeys-color-primary); background: var(--dzkeys-color-header); }
.single-product .dzkeys-commerce .woocommerce-tabs .panel { margin: 0; }
.single-product .dzkeys-commerce #review_form textarea { width: 100%; }
.single-product .dzkeys-commerce .woocommerce-product-attributes { width: 100%; overflow-wrap: anywhere; }
@media (min-width: 768px) {
  .single-product .dzkeys-commerce div.product:not(li) { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
@media (max-width: 600px) {
  .single-product .dzkeys-commerce .summary.entry-summary,
  .single-product .dzkeys-commerce .woocommerce-tabs { padding: var(--dzkeys-space-3); }
}

.single-product .woocommerce-product-gallery__trigger{display:none}

.single-product .summary .dzkeys-direct-whatsapp { display:inline-flex;align-items:center;gap:.5rem;min-height:44px;background:var(--dzkeys-color-whatsapp);color:var(--dzkeys-color-on-whatsapp);border-radius:var(--dzkeys-radius-control);padding:.65rem 1rem; }
.dzkeys-rental-duration label {display:block;margin-bottom:.5rem;}
.dzkeys-rental-duration select {width:100%;margin-bottom:1rem;}
