/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* Enaro mobile UX + accessibility refinements */
.wd-skip-links {
  display: block !important;
  visibility: visible !important;
  position: fixed !important;
  left: 0 !important;
  top: 0 !important;
  width: 100% !important;
  height: 0 !important;
  overflow: visible !important;
  z-index: 1000000 !important;
  pointer-events: none !important;
}
.wd-skip-links a {
  display: block !important;
  visibility: visible !important;
  position: absolute !important;
  left: -10000px !important;
  top: 12px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  padding: 10px 16px !important;
  box-sizing: border-box !important;
  opacity: 0 !important;
  pointer-events: auto !important;
}
.wd-skip-links a:focus,
.wd-skip-links a:focus-visible {
  left: 16px !important;
  opacity: 1 !important;
  visibility: visible !important;
  width: auto !important;
  height: auto !important;
  background: #111 !important;
  color: #fff !important;
  border: 2px solid #fff !important;
  border-radius: 6px !important;
  outline: 3px solid #111 !important;
  text-decoration: none !important;
}

/* Strong readable contrast for secondary store controls. */
.woocommerce .shop-loop-head .woocommerce-result-count,
.woocommerce .shop-loop-head .woocommerce-ordering label,
.woocommerce .wd-products-per-page a,
.woocommerce .wd-products-shop-view a,
.woocommerce .filters-area .wd-widget-title,
.woocommerce .filters-area .wd-widget a,
.woocommerce .price_slider_amount .price_label,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-privacy-policy-text,
.woocommerce form .form-row label,
.woocommerce .product_meta,
.woocommerce .product_meta a {
  color: #333 !important;
}
.woocommerce .wd-products-per-page a:hover,
.woocommerce .wd-products-shop-view a:hover,
.woocommerce .filters-area .wd-widget a:hover,
.woocommerce .product_meta a:hover {
  color: #111 !important;
}

/* Keyboard focus: keep controls visibly identifiable without relying on color alone. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid #111 !important;
  outline-offset: 2px !important;
}

/* Accessible skip link: hidden off-canvas until keyboard focus. */
.wd-skip-links a {
  clip: rect(1px, 1px, 1px, 1px) !important;
  clip-path: inset(50%) !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}
.wd-skip-links a:focus,
.wd-skip-links a:focus-visible {
  clip: auto !important;
  clip-path: none !important;
  width: auto !important;
  height: auto !important;
  white-space: normal !important;
}

/* WooCommerce archive image consistency: reserve a stable 4:5 frame and crop without distortion. */
.woocommerce-shop .product-grid-item .product-element-top,
.post-type-archive-product .product-grid-item .product-element-top,
.tax-product_cat .product-grid-item .product-element-top,
.tax-product_tag .product-grid-item .product-element-top {
  aspect-ratio: 4 / 5;
  overflow: hidden;
}
.woocommerce-shop .product-grid-item .product-element-top img,
.post-type-archive-product .product-grid-item .product-element-top img,
.tax-product_cat .product-grid-item .product-element-top img,
.tax-product_tag .product-grid-item .product-element-top img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

@media (max-width: 1024px) {
  /* Header and store actions: comfortable 44px+ touch targets. */
  .wd-header-mobile-nav > a,
  .wd-header-search-mobile > a,
  .wd-header-cart > a,
  .wd-header-wishlist > a,
  .wd-header-my-account > a,
  .wd-tools-element > a {
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .wd-header-mobile-nav .wd-tools-icon,
  .wd-header-search-mobile .wd-tools-icon,
  .wd-header-cart .wd-tools-icon,
  .wd-header-wishlist .wd-tools-icon {
    min-width: 22px;
    min-height: 22px;
  }

  /* Mobile menu rows and submenu controls. */
  .wd-nav-mobile > li > a,
  .wd-nav-mobile .wd-sub-menu > li > a {
    min-height: 48px;
    padding-top: 12px;
    padding-bottom: 12px;
    display: flex;
    align-items: center;
  }

  .wd-nav-mobile .wd-with-children > a,
  .wd-nav-mobile .menu-item-has-children > a {
    padding-right: 52px;
  }

  /* Product-card actions and archive controls. */
  .product-grid-item .wd-action-btn > a,
  .product-grid-item .wd-add-btn > a,
  .wd-filter-buttons > a,
  .wd-show-sidebar-btn > a,
  .wd-products-per-page .per-page-variation,
  .wd-products-shop-view .shop-view {
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .wd-filter-buttons > a,
  .wd-show-sidebar-btn > a {
    padding-left: 14px;
    padding-right: 14px;
  }

  .filters-area .wd-widget a {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
  }

  /* Prevent iOS form zoom while preserving normal pinch-to-zoom. */
  input[type="email"], input[type="date"], input[type="search"], input[type="number"],
  input[type="text"], input[type="tel"], input[type="url"], input[type="password"],
  textarea, select {
    font-size: 16px;
  }

  /* Checkout/cart primary actions remain easy to tap. */
  .woocommerce .button,
  .woocommerce a.button,
  .woocommerce button.button,
  .woocommerce input.button,
  .woocommerce .checkout-button,
  .woocommerce .wc-backward {
    min-height: 44px;
  }

  /* Keep the mobile sticky toolbar easy to operate. */
  .wd-toolbar .wd-tools-element > a {
    min-width: 48px;
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
