/*! Multishop BD 11.2.0 — WooCommerce Product Collection card designs. Structural styles only; Gutenberg colors/typography/spacing stay authoritative. */

/* Design tokens are scoped to a Product Collection. Per-block classes have
   direct precedence; global body defaults apply only when a block has no
   rivrun-pc-style-* class. */
:where(.wp-block-woocommerce-product-collection.rivrun-pc-style-minimal),
:where(body.rivrun-pc-global-minimal .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"])) {
  --rr-pc-bg: transparent; --rr-pc-border: transparent; --rr-pc-radius: 14px; --rr-pc-pad: 0px; --rr-pc-shadow: none; --rr-pc-hover-y: 0px; --rr-pc-image-radius: 14px; --rr-pc-button-radius: 999px;
}
:where(.wp-block-woocommerce-product-collection.rivrun-pc-style-soft),
:where(body.rivrun-pc-global-soft .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"])) {
  --rr-pc-bg: var(--rivrun-surface, #fff); --rr-pc-border: var(--rivrun-border, rgba(36,29,40,.10)); --rr-pc-radius: 18px; --rr-pc-pad: 12px; --rr-pc-shadow: 0 8px 28px rgba(36,29,40,.07); --rr-pc-hover-y: -2px; --rr-pc-image-radius: 14px; --rr-pc-button-radius: 14px;
}
:where(.wp-block-woocommerce-product-collection.rivrun-pc-style-elevated),
:where(body.rivrun-pc-global-elevated .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"])) {
  --rr-pc-bg: var(--rivrun-surface, #fff); --rr-pc-border: transparent; --rr-pc-radius: 20px; --rr-pc-pad: 14px; --rr-pc-shadow: 0 16px 44px rgba(36,29,40,.12); --rr-pc-hover-y: -4px; --rr-pc-image-radius: 16px; --rr-pc-button-radius: 15px;
}
:where(.wp-block-woocommerce-product-collection.rivrun-pc-style-outline),
:where(body.rivrun-pc-global-outline .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"])) {
  --rr-pc-bg: transparent; --rr-pc-border: var(--rivrun-border, rgba(36,29,40,.18)); --rr-pc-radius: 16px; --rr-pc-pad: 12px; --rr-pc-shadow: none; --rr-pc-hover-y: -1px; --rr-pc-image-radius: 12px; --rr-pc-button-radius: 12px;
}
:where(.wp-block-woocommerce-product-collection.rivrun-pc-style-image-focus),
:where(body.rivrun-pc-global-image-focus .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"])) {
  --rr-pc-bg: transparent; --rr-pc-border: transparent; --rr-pc-radius: 18px; --rr-pc-pad: 0px; --rr-pc-shadow: none; --rr-pc-hover-y: 0px; --rr-pc-image-radius: 18px; --rr-pc-button-radius: 12px;
}
:where(.wp-block-woocommerce-product-collection.rivrun-pc-style-compact),
:where(body.rivrun-pc-global-compact .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"])) {
  --rr-pc-bg: var(--rivrun-surface, #fff); --rr-pc-border: var(--rivrun-border, rgba(36,29,40,.10)); --rr-pc-radius: 12px; --rr-pc-pad: 8px; --rr-pc-shadow: 0 5px 18px rgba(36,29,40,.06); --rr-pc-hover-y: -1px; --rr-pc-image-radius: 10px; --rr-pc-button-radius: 10px;
}

/* Apply structural card treatment without setting title/price/button colors or
   font sizes. Gutenberg inline/global styles therefore keep the highest useful
   authoring priority. */
:where(.wp-block-woocommerce-product-collection[class*="rivrun-pc-style-"]:not(.rivrun-pc-style-native), body[class*="rivrun-pc-global-"] .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"]))
:where(.wc-block-product-template > li, .wp-block-woocommerce-product-template > li, li.wc-block-product, .wp-block-post.product) {
  box-sizing: border-box;
  min-width: 0;
  padding: var(--rr-pc-pad, 0);
  border: 1px solid var(--rr-pc-border, transparent);
  border-radius: var(--rr-pc-radius, 0);
  background: var(--rr-pc-bg, transparent);
  box-shadow: var(--rr-pc-shadow, none);
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
@media (hover:hover) and (pointer:fine) {
  :where(.wp-block-woocommerce-product-collection[class*="rivrun-pc-style-"]:not(.rivrun-pc-style-native), body[class*="rivrun-pc-global-"] .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"]))
  :where(.wc-block-product-template > li, .wp-block-woocommerce-product-template > li, li.wc-block-product, .wp-block-post.product):hover {
    transform: translateY(var(--rr-pc-hover-y, 0));
  }
}
@media (prefers-reduced-motion: reduce) {
  :where(.wp-block-woocommerce-product-collection[class*="rivrun-pc-style-"]:not(.rivrun-pc-style-native), body[class*="rivrun-pc-global-"] .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"]))
  :where(.wc-block-product-template > li, .wp-block-woocommerce-product-template > li, li.wc-block-product, .wp-block-post.product) { transition: none; transform: none; }
}
:where(.wp-block-woocommerce-product-collection[class*="rivrun-pc-style-"]:not(.rivrun-pc-style-native), body[class*="rivrun-pc-global-"] .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"]))
:where(.wp-block-woocommerce-product-image, .wc-block-components-product-image) {
  overflow: hidden;
  border-radius: var(--rr-pc-image-radius, 0);
}
:where(.wp-block-woocommerce-product-collection[class*="rivrun-pc-style-"]:not(.rivrun-pc-style-native), body[class*="rivrun-pc-global-"] .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"]))
:where(.wp-block-woocommerce-product-image, .wc-block-components-product-image) img {
  display: block; width: 100%; height: auto;
}
:where(.wp-block-woocommerce-product-collection[class*="rivrun-pc-style-"]:not(.rivrun-pc-style-native), body[class*="rivrun-pc-global-"] .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"]))
:where(.wp-block-woocommerce-product-button, .wc-block-components-product-button) :where(a,button) {
  border-radius: var(--rr-pc-button-radius, inherit);
}

/* Image Focus gives the product image more visual weight without changing the
   Product Collection track/columns or WooCommerce interaction attributes. */
:where(.wp-block-woocommerce-product-collection.rivrun-pc-style-image-focus, body.rivrun-pc-global-image-focus .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"]))
:where(.wp-block-woocommerce-product-image, .wc-block-components-product-image) { margin-bottom: .65rem; }

/* Compact design only reduces structural whitespace; nested Gutenberg font-size
   and spacing choices are never overridden with !important. */
:where(.wp-block-woocommerce-product-collection.rivrun-pc-style-compact, body.rivrun-pc-global-compact .wp-block-woocommerce-product-collection:not([class*="rivrun-pc-style-"]))
:where(.wp-block-post-title, .wp-block-woocommerce-product-price, .wp-block-woocommerce-product-button) { margin-block-start: .35rem; margin-block-end: .35rem; }

/* Global fallback also covers classic shop/category and the theme's AJAX cards.
   A Gutenberg Product Collection with a per-block style is unaffected. */
:where(body.rivrun-pc-global-soft, body.rivrun-pc-global-elevated, body.rivrun-pc-global-outline, body.rivrun-pc-global-compact)
:where(ul.products > li.product, .rivrun-ajax-product-card) {
  box-sizing: border-box;
  border-radius: var(--rr-pc-radius, 16px);
}

/* Editor preview: per-block className is persisted by Gutenberg and therefore
   the same structural rules above apply inside the editor canvas. */

/* Global token inheritance also styles classic WooCommerce archive cards and
   the theme's AJAX replacement cards. Per-block Product Collection tokens are
   declared closer to the block and therefore override these inherited values. */
body.rivrun-pc-global-minimal { --rr-pc-bg:transparent;--rr-pc-border:transparent;--rr-pc-radius:14px;--rr-pc-pad:0px;--rr-pc-shadow:none;--rr-pc-hover-y:0px;--rr-pc-image-radius:14px;--rr-pc-button-radius:999px; }
body.rivrun-pc-global-soft { --rr-pc-bg:var(--rivrun-surface,#fff);--rr-pc-border:var(--rivrun-border,rgba(36,29,40,.10));--rr-pc-radius:18px;--rr-pc-pad:12px;--rr-pc-shadow:0 8px 28px rgba(36,29,40,.07);--rr-pc-hover-y:-2px;--rr-pc-image-radius:14px;--rr-pc-button-radius:14px; }
body.rivrun-pc-global-elevated { --rr-pc-bg:var(--rivrun-surface,#fff);--rr-pc-border:transparent;--rr-pc-radius:20px;--rr-pc-pad:14px;--rr-pc-shadow:0 16px 44px rgba(36,29,40,.12);--rr-pc-hover-y:-4px;--rr-pc-image-radius:16px;--rr-pc-button-radius:15px; }
body.rivrun-pc-global-outline { --rr-pc-bg:transparent;--rr-pc-border:var(--rivrun-border,rgba(36,29,40,.18));--rr-pc-radius:16px;--rr-pc-pad:12px;--rr-pc-shadow:none;--rr-pc-hover-y:-1px;--rr-pc-image-radius:12px;--rr-pc-button-radius:12px; }
body.rivrun-pc-global-image-focus { --rr-pc-bg:transparent;--rr-pc-border:transparent;--rr-pc-radius:18px;--rr-pc-pad:0px;--rr-pc-shadow:none;--rr-pc-hover-y:0px;--rr-pc-image-radius:18px;--rr-pc-button-radius:12px; }
body.rivrun-pc-global-compact { --rr-pc-bg:var(--rivrun-surface,#fff);--rr-pc-border:var(--rivrun-border,rgba(36,29,40,.10));--rr-pc-radius:12px;--rr-pc-pad:8px;--rr-pc-shadow:0 5px 18px rgba(36,29,40,.06);--rr-pc-hover-y:-1px;--rr-pc-image-radius:10px;--rr-pc-button-radius:10px; }

:where(body[class*="rivrun-pc-global-"]) :where(ul.products > li.product, .rivrun-ajax-product-card) {
  box-sizing:border-box;
  border:1px solid var(--rr-pc-border,transparent);
  border-radius:var(--rr-pc-radius,0);
  background:var(--rr-pc-bg,transparent);
  box-shadow:var(--rr-pc-shadow,none);
  overflow:hidden;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
:where(body[class*="rivrun-pc-global-"]) ul.products > li.product {
  padding:var(--rr-pc-pad,0);
}
:where(body[class*="rivrun-pc-global-"]) :where(ul.products > li.product, .rivrun-ajax-product-card) :where(img,.wp-block-woocommerce-product-image,.wc-block-components-product-image) {
  border-radius:var(--rr-pc-image-radius,0);
}
@media (hover:hover) and (pointer:fine) {
  :where(body[class*="rivrun-pc-global-"]) :where(ul.products > li.product, .rivrun-ajax-product-card):hover { transform:translateY(var(--rr-pc-hover-y,0)); }
}
