/* NC Auto Market - single product layout/content guard.
   Presentation-only: no mutation of descriptions, links, media, or product data. */
body.single-product .ncsm-single-product-page,
body.single-product .ncsm-single-product-shell,
body.single-product .ncsm-single-product-shell > div.product,
body.single-product .ncsm-single-product-shell > div.product > *,
body.single-product .ncsm-single-product-shell .summary,
body.single-product .ncsm-single-product-shell .woocommerce-tabs,
body.single-product .ncsm-single-product-shell .woocommerce-Tabs-panel,
body.single-product .ncsm-single-product-shell .woocommerce-tabs .panel,
body.single-product .ncsm-single-product-shell .woocommerce-product-details__short-description,
body.single-product .ncsm-single-product-shell .ncas-short-description,
body.single-product .ncsm-single-product-shell .ncss-extra-wrap,
body.single-product .ncsm-single-product-shell .ncss-extra-card {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}
/* Grid children must be allowed to shrink even with long unbroken HTML content. */
body.single-product .ncsm-single-product-shell > div.product,
body.single-product .ncsm-single-product-shell .ncss-extra-wrap {
  min-width: 0;
}
/* Apply wrapping to content areas, never to action controls or the entire site. */
body.single-product .ncsm-single-product-shell :is(.woocommerce-Tabs-panel, .woocommerce-product-details__short-description, .ncas-short-description, .ncss-extra-card) {
  overflow-wrap: anywhere;
  word-break: normal;
}
body.single-product .ncsm-single-product-shell :is(.woocommerce-Tabs-panel, .woocommerce-product-details__short-description, .ncas-short-description, .ncss-extra-card) :is(p, h1, h2, h3, h4, h5, h6, li, a, span, strong, em, blockquote) {
  max-width: 100%;
  overflow-wrap: anywhere;
}
/* Images, embeds and third-party widgets cannot impose an oversized min-content width. */
body.single-product .ncsm-single-product-shell :is(.woocommerce-Tabs-panel, .woocommerce-product-details__short-description, .ncas-short-description, .ncss-extra-card) :is(img, video, iframe, embed, object, svg, canvas) {
  max-width: 100% !important;
  box-sizing: border-box;
}
body.single-product .ncsm-single-product-shell :is(.woocommerce-Tabs-panel, .woocommerce-product-details__short-description, .ncas-short-description, .ncss-extra-card) img {
  height: auto;
}
body.single-product .ncsm-single-product-shell :is(.woocommerce-Tabs-panel, .woocommerce-product-details__short-description, .ncas-short-description, .ncss-extra-card) :is(pre, code) {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
/* Wide tables can scroll within their own area, instead of widening the page. */
body.single-product .ncsm-single-product-shell :is(.woocommerce-Tabs-panel, .woocommerce-product-details__short-description, .ncas-short-description, .ncss-extra-card) table {
  display: block;
  max-width: 100% !important;
  overflow-x: auto;
  border-collapse: collapse;
}
body.single-product .ncsm-single-product-shell :is(.woocommerce-Tabs-panel, .woocommerce-product-details__short-description, .ncas-short-description, .ncss-extra-card) :is(.wp-block-embed, .wp-block-embed__wrapper, .wp-video, .video-container, .fluid-width-video-wrapper) {
  max-width: 100% !important;
  min-width: 0;
}
/* Restrict excessive inline widths to the content block; never mask the site's overflow. */
body.single-product .ncsm-single-product-shell :is(.woocommerce-Tabs-panel, .woocommerce-product-details__short-description, .ncas-short-description, .ncss-extra-card) :is(div, section, article, figure, blockquote) {
  max-width: 100% !important;
  min-width: 0;
  box-sizing: border-box;
}
/* Long lists should not push the grid beyond the available width. */
body.single-product .ncsm-single-product-shell :is(.woocommerce-Tabs-panel, .woocommerce-product-details__short-description, .ncas-short-description, .ncss-extra-card) :is(ul, ol) {
  max-width: 100%;
  padding-inline-start: min(2rem, 7vw);
}
@media (max-width: 820px) {
  body.single-product .ncsm-single-product-shell > div.product {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
