/* PaySlashes product-card content integrity pass — 2026-09-22.
   Final cascade guard against legacy fixed-height/clipping rules. */

/* V2 marketplace cards: content must never be cropped to satisfy an old fixed card height. */
article.pcv2-card{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  align-self:stretch!important;
  overflow:visible!important;
}
article.pcv2-card>.pcv2-media{
  flex:0 0 clamp(190px,22vw,246px)!important;
  height:clamp(190px,22vw,246px)!important;
  min-height:190px!important;
  max-height:246px!important;
  overflow:hidden!important;
}
article.pcv2-card>.pcv2-body{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
article.pcv2-card .pcv2-content{
  display:flex!important;
  flex:0 0 auto!important;
  flex-direction:column!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
article.pcv2-card .pcv2-meta{
  display:flex!important;
  flex:0 0 auto!important;
  flex-wrap:wrap!important;
  height:auto!important;
  min-height:26px!important;
  max-height:none!important;
  overflow:visible!important;
}
article.pcv2-card .pcv2-category,
article.pcv2-card .pcv2-brand{
  height:auto!important;
  min-height:26px!important;
  max-height:none!important;
  line-height:1.2!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
}
article.pcv2-card h3.pcv2-title{
  flex:0 0 auto!important;
  height:auto!important;
  min-height:44px!important;
  max-height:none!important;
  line-height:1.35!important;
  overflow:visible!important;
}
article.pcv2-card h3.pcv2-title a{
  display:block!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
article.pcv2-card .pcv2-spec{
  flex:0 0 auto!important;
  height:auto!important;
  min-height:24px!important;
  max-height:none!important;
  line-height:1.35!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
}
article.pcv2-card .pcv2-price{
  flex:0 0 auto!important;
  height:auto!important;
  min-height:32px!important;
  max-height:none!important;
  flex-wrap:wrap!important;
  overflow:visible!important;
}
article.pcv2-card .pcv2-commerce{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  grid-template-rows:none!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
article.pcv2-card .pcv2-promo,
article.pcv2-card .pcv2-activity{
  flex:0 0 auto!important;
  height:auto!important;
  min-height:20px!important;
  max-height:none!important;
  flex-wrap:wrap!important;
  overflow:visible!important;
}
article.pcv2-card .pcv2-delivery,
article.pcv2-card .pcv2-stock-row{
  flex:0 0 auto!important;
  height:auto!important;
  min-height:30px!important;
  max-height:none!important;
  overflow:visible!important;
}
article.pcv2-card .pcv2-delivery span,
article.pcv2-card .pcv2-stock,
article.pcv2-card .pcv2-shipping{
  white-space:normal!important;
  text-overflow:clip!important;
  overflow:visible!important;
  overflow-wrap:anywhere!important;
}
article.pcv2-card .pcv2-stock,
article.pcv2-card .pcv2-shipping{
  height:auto!important;
  min-height:28px!important;
  max-height:none!important;
  line-height:1.2!important;
  display:inline-flex!important;
  align-items:center!important;
}
article.pcv2-card .pcv2-actions{
  display:grid!important;
  flex:0 0 auto!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  height:auto!important;
  min-height:76px!important;
  max-height:none!important;
  overflow:visible!important;
  margin-top:auto!important;
}
article.pcv2-card .pcv2-btn,
article.pcv2-card .pcv2-buy{
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:36px!important;
  max-height:none!important;
  white-space:normal!important;
  line-height:1.15!important;
  text-align:center!important;
}

/* Product rails: preserve a useful card width; never flex-shrink cards into slivers. */
[data-product-slider]>article.pcv2-card,
.ps-product-slider-track>article.pcv2-card,
.ps-mobile-row-track>article.pcv2-card,
[data-product-row]>article.pcv2-card{
  flex-shrink:0!important;
}

/* Legacy product-card partial: remove text/action clipping without changing business logic. */
.product-card{height:auto!important;max-height:none!important;overflow:visible!important}
.product-card .product-info,
.product-card .product-title,
.product-card .product-title a,
.product-card .product-description,
.product-card .product-spec-line,
.product-card .product-vendor-line,
.product-card .product-price,
.product-card .product-actions{
  max-height:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
.product-card .product-title a,
.product-card .product-description,
.product-card .product-spec-line,
.product-card .product-vendor-line{white-space:normal!important;overflow-wrap:anywhere!important}
.product-card .product-actions{flex-wrap:wrap!important}
.product-card .product-actions .product-btn{min-width:0!important;white-space:normal!important}

@media (max-width:767.98px){
  article.pcv2-card>.pcv2-media{flex-basis:190px!important;height:190px!important;min-height:190px!important;max-height:220px!important}
  article.pcv2-card .pcv2-actions{min-height:74px!important;gap:8px!important}
  article.pcv2-card .pcv2-btn,article.pcv2-card .pcv2-buy{min-height:36px!important}
}
@media (max-width:479.98px){
  body.mobile-ux-shell [data-product-slider]>article.pcv2-card,
  body.mobile-ux-shell .ps-mobile-row-track>article.pcv2-card,
  body.mobile-ux-shell [data-product-row]>article.pcv2-card{
    flex:0 0 calc(100% - 8px)!important;
    width:calc(100% - 8px)!important;
    min-width:calc(100% - 8px)!important;
    max-width:calc(100% - 8px)!important;
  }
}

/* 2026-09-22 narrow-mobile structural hotfix.
   Slider rails must stay rails; the broad mobile-native .products-grid rule must not
   collapse them into two squeezed columns. Non-slider grids become one column only
   on genuinely narrow screens. */
@media (max-width: 767.98px){
  body.mobile-ux-shell [data-product-slider],
  body.mobile-ux-shell .ps-product-slider-track,
  body.mobile-ux-shell .ps-mobile-row-track[data-product-row]{
    display:flex!important;
    flex-flow:row nowrap!important;
    grid-template-columns:none!important;
    align-items:stretch!important;
    min-height:0!important;
    height:auto!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    gap:12px!important;
    scroll-snap-type:x proximity;
  }
  body.mobile-ux-shell [data-product-slider] > article.pcv2-card,
  body.mobile-ux-shell .ps-product-slider-track > article.pcv2-card,
  body.mobile-ux-shell .ps-mobile-row-track[data-product-row] > article.pcv2-card{
    flex:0 0 min(82vw,286px)!important;
    width:min(82vw,286px)!important;
    min-width:min(82vw,286px)!important;
    max-width:min(82vw,286px)!important;
    scroll-snap-align:start;
  }
  body.mobile-ux-shell .ps-product-slider-shell,
  body.mobile-ux-shell .products-grid,
  body.mobile-ux-shell .products-row,
  body.mobile-ux-shell .product-grid,
  body.mobile-ux-shell .jumia-products-grid,
  body.mobile-ux-shell .ps-product-grid{min-height:0!important;height:auto!important;grid-auto-rows:auto!important;align-items:stretch!important}
  body.mobile-ux-shell main#content,
  body.mobile-ux-shell .ps-app-shell{padding-bottom:calc(132px + env(safe-area-inset-bottom))!important}
  body.mobile-ux-shell .ps-ai-shop,
  body.mobile-ux-shell .ps-mobile-support-launcher,
  body.mobile-ux-shell .chatbot-toggle,
  body.mobile-ux-shell .chat-toggle,
  body.mobile-ux-shell .floating-chat-button,
  body.mobile-ux-shell #chatbot-toggle{bottom:calc(96px + env(safe-area-inset-bottom))!important}
}
@media (max-width: 360px){
  body.mobile-ux-shell .products-grid:not([data-product-slider]):not(.ps-product-slider-track):not(.ps-mobile-row-track),
  body.mobile-ux-shell main#content .products-grid:not([data-product-slider]):not(.ps-product-slider-track):not(.ps-mobile-row-track){
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
  }
  body.mobile-ux-shell [data-product-slider] > article.pcv2-card,
  body.mobile-ux-shell .ps-product-slider-track > article.pcv2-card,
  body.mobile-ux-shell .ps-mobile-row-track[data-product-row] > article.pcv2-card{
    flex-basis:calc(100vw - 48px)!important;
    width:calc(100vw - 48px)!important;
    min-width:calc(100vw - 48px)!important;
    max-width:calc(100vw - 48px)!important;
  }
  article.pcv2-card>.pcv2-media{height:176px!important;min-height:176px!important;max-height:176px!important;flex-basis:176px!important}
  article.pcv2-card .pcv2-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
  article.pcv2-card .pcv2-buy{grid-column:1/-1!important}
  article.pcv2-card .pcv2-view{grid-column:1!important}
  article.pcv2-card .pcv2-cart{grid-column:2!important}
}
