/* RC10.37: card actions only, never the main product/checkout/payment actions. */
@layer gamespsn-brand {
 body.gl-brand-2026 #main :is(.gl-game-card,.gl-pdp-related-card,li.product,.gl-cart-rec) a.gl-card-icon-action {
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 36px!important;width:36px!important;min-width:36px!important;max-width:36px!important;
  height:36px!important;min-height:36px!important;padding:0!important;gap:0!important;
  margin:0!important;align-self:center!important;justify-self:end!important;border-radius:9px!important;line-height:1!important;position:relative!important;
 }
 body.gl-brand-2026 #main :is(.gl-game-card,.gl-pdp-related-card,li.product,.gl-cart-rec) a.gl-card-icon-action svg {
  display:block!important;flex:0 0 16px!important;width:16px!important;height:16px!important;margin:0!important;
 }
 body.gl-brand-2026 #main a.gl-card-icon-action:focus-visible {outline:2px solid var(--gs-color-focus)!important;outline-offset:3px!important}
 body.gl-brand-2026 #main :is(.gl-game-body,.gl-pdp-related-body):has(>a.gl-card-icon-action) {
  display:grid!important;grid-template-columns:minmax(0,1fr) 36px!important;grid-template-rows:auto auto minmax(44px,auto)!important;align-content:start!important;min-height:0!important;flex:0 0 auto!important;
  align-items:end!important;gap:7px 9px!important;
 }
 body.gl-brand-2026 #main :is(.gl-game-body,.gl-pdp-related-body):has(>a.gl-card-icon-action) > :is(.gl-game-name,.gl-game-kind,.gl-game-facts,.gl-home-product-facts,.gl-home-card-facts,.gl-pdp-related-name,.gl-pdp-related-meta) {grid-column:1 / -1!important}
 body.gl-brand-2026 #main :is(.gl-game-body,.gl-pdp-related-body):has(>a.gl-card-icon-action) > :is(.gl-game-price,.gl-pdp-related-price) {grid-column:1!important;grid-row:3!important;margin:0!important;min-width:0!important;align-self:center!important}
 body.gl-brand-2026 #main :is(.gl-game-body,.gl-pdp-related-body):has(>a.gl-card-icon-action) > a.gl-card-icon-action {grid-column:2!important;grid-row:3!important;justify-self:end!important;align-self:center!important}
 body.gl-brand-2026 #main :is(.gl-game-body,.gl-pdp-related-body) > .added_to_cart {grid-column:1 / -1!important}
 /* Bound mixed-ratio artwork instead of stretching the whole row to portrait height.
    Original uncropped medium_large sources remain unchanged. */
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec {
  display:flex!important;flex-direction:column!important;align-self:start!important;height:auto!important;min-height:0!important;
  padding:0!important;overflow:hidden!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-img {
  display:flex!important;align-items:center!important;justify-content:center!important;
  box-sizing:border-box!important;width:100%!important;max-width:100%!important;
  height:150px!important;min-height:0!important;max-height:150px!important;
  aspect-ratio:auto!important;margin:0!important;padding:0!important;overflow:hidden!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-img img {
  display:block!important;width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;
  aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;
  margin:0!important;padding:0!important;border-radius:0!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-body {
  display:flex!important;flex-direction:column!important;flex:0 0 auto!important;
  min-height:0!important;gap:8px!important;padding:10px!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-title {
  display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;
  overflow:hidden!important;min-height:2.9em!important;max-height:2.9em!important;
  font-size:12px!important;line-height:1.45!important;margin:0!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-buy {
  display:grid!important;grid-template-columns:minmax(0,1fr) 36px!important;align-items:center!important;gap:7px!important;
  min-height:44px!important;margin:0!important;padding:0!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-price {min-width:0!important;font-size:15px!important;line-height:1.4!important}
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-price del {font-size:11px!important;line-height:1.4!important}
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-add.gl-card-details-action {
  width:auto!important;min-width:0!important;max-width:60%!important;height:auto!important;min-height:44px!important;
  padding:6px 8px!important;font-size:11px!important;text-align:center!important;line-height:1.35!important;white-space:normal!important;
 }
}

/* Paid popup suggestions use the same basket mark; free-gift Select remains text. */
@layer gamespsn-brand {
body.gl-brand-2026 #gl-premium-cart-root .glpm-option > button.glpm-card-icon-action[data-glpm-action=add] {display:inline-flex!important;align-items:center!important;justify-content:center!important;width:36px!important;min-width:36px!important;max-width:36px!important;min-height:36px!important;height:36px!important;padding:0!important;box-sizing:border-box!important}
body.gl-brand-2026 #gl-premium-cart-root .glpm-option > button.glpm-card-icon-action[data-glpm-action=add] svg {width:16px!important;height:16px!important;display:block!important;flex:0 0 16px!important}
}

/* RC10.37: explicit slots prevent legacy four-row related layouts and auto-flow
   from separating price and basket. The 36px visual has a44px hit area. */
@layer gamespsn-brand {
 body.gl-brand-2026 #main :is(.gl-game-body,.gl-pdp-related-body):has(>a.gl-card-icon-action) > :is(.gl-game-name,.gl-pdp-related-name) {grid-row:1!important;min-width:0!important}
 body.gl-brand-2026 #main :is(.gl-game-body,.gl-pdp-related-body):has(>a.gl-card-icon-action) > :is(.gl-game-kind,.gl-game-facts,.gl-home-product-facts,.gl-home-card-facts,.gl-pdp-related-meta) {grid-row:2!important;min-width:0!important}
 body.gl-brand-2026 #main :is(.gl-game-card,.gl-pdp-related-card,li.product,.gl-cart-rec) a.gl-card-icon-action::before,
 body.gl-brand-2026 #gl-premium-cart-root .glpm-option > button.glpm-card-icon-action[data-glpm-action=add]::before {content:"";position:absolute;inset:-4px;background:transparent;pointer-events:auto}
 body.gl-brand-2026 #main .gl-catalog-buy-row {display:grid!important;grid-template-columns:minmax(0,1fr) 36px!important;align-items:center!important;gap:8px!important;min-height:44px!important;width:auto!important;margin:8px 12px 12px!important;padding:0!important;min-width:0!important}
 body.gl-brand-2026 #main .gl-catalog-buy-row > .price {grid-column:1!important;grid-row:1!important;min-width:0!important;width:auto!important;margin:0!important;align-self:center!important}
 body.gl-brand-2026 #main .gl-catalog-buy-row > a.gl-card-icon-action {grid-column:2!important;grid-row:1!important;align-self:center!important}
 body.gl-brand-2026 #main .gl-catalog-buy-row > .added_to_cart {grid-column:1 / -1!important}
 body.gl-brand-2026 #main .gl-catalog-buy-row:not(:has(a.gl-card-icon-action)) {grid-template-columns:minmax(0,1fr)!important}
 body.gl-brand-2026 #main .gl-catalog-buy-row:not(:has(a.gl-card-icon-action)) > .button {min-height:36px!important;width:auto!important;margin:0!important}
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-buy > .gl-cart-rec-price {grid-column:1!important;grid-row:1!important;align-self:center!important}
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-buy > .gl-cart-rec-add {grid-column:2!important;grid-row:1!important;align-self:center!important}
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-buy:has(.gl-card-details-action) {grid-template-columns:minmax(0,1fr) auto!important}
 body.gl-brand-2026 #gl-premium-cart-root .glpm-option > button.glpm-card-icon-action[data-glpm-action=add] {position:relative!important}
 @media(max-width:700px) {
  body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-img {height:120px!important;max-height:120px!important}
 }
}

/* RC10.41: cart recommendations form a full-width, consistently framed row. */
@layer gamespsn-brand {
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-recs {
  width:100%!important;max-width:675px!important;min-width:0!important;box-sizing:border-box!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-recs-grid {
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:start!important;gap:16px!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec {
  box-sizing:border-box!important;min-width:0!important;gap:0!important;
  border:1px solid var(--gs-color-border)!important;
  border-radius:14px!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-img {
  flex:0 0 150px!important;background:var(--gs-color-surface)!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-body {
  box-sizing:border-box!important;width:100%!important;min-width:0!important;padding:12px!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-price {
  overflow-wrap:normal!important;word-break:normal!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-price :is(.amount,bdi) {
  white-space:nowrap!important;
 }
 @media(max-width:940px) {
  body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-recs-grid {
   grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;
  }
 }
 @media(max-width:700px) {
  body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-img {flex-basis:120px!important}
  body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-body {padding:10px!important}
 }
}

/* RC10.44: contain loading feedback in existing basket controls. No animation. */
@layer gamespsn-brand {
 body.gl-brand-2026 :is(#main,#gl-premium-cart-root) .gl-icon-pending {
  position:relative!important;
 }
 body.gl-brand-2026 :is(#main,#gl-premium-cart-root) .gl-icon-pending > :not(.screen-reader-text) {
  visibility:hidden!important;
 }
 body.gl-brand-2026 :is(#main,#gl-premium-cart-root) .gl-icon-pending::after {
  content:"\2026"!important;display:grid!important;place-items:center!important;
  position:absolute!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;
  width:18px!important;height:20px!important;margin:0!important;padding:0!important;
  transform:translate(-50%,-50%)!important;animation:none!important;
  font:700 20px/1 sans-serif!important;color:inherit!important;opacity:1!important;
 }
 /* Keep cart cards intrinsic even when an older stylesheet reserved a body height. */
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec {
  aspect-ratio:auto!important;max-height:none!important;justify-content:flex-start!important;
 }
 body.gl-brand-2026.woocommerce-cart #main.gl-cart-v1421 .gl-cart-rec-body {
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;align-content:start!important;
  height:auto!important;max-height:none!important;aspect-ratio:auto!important;
  justify-content:normal!important;
 }
 /* Paid popup options retain their image/facts but share the price/action row. */
 body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option:has(>button.glpm-card-icon-action) {
  display:grid!important;grid-template-columns:minmax(0,1fr) 36px!important;
  grid-template-rows:67px auto auto minmax(36px,auto)!important;
  height:auto!important;min-height:0!important;align-content:start!important;
  gap:5px 8px!important;padding:6px!important;
 }
 body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > .glpm-option-image {
  grid-column:1 / -1!important;grid-row:1!important;display:block!important;
  width:100%!important;height:67px!important;min-height:0!important;max-height:67px!important;
 }
 body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > .glpm-option-image img {
  width:100%!important;height:100%!important;object-fit:contain!important;
 }
 body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > .glpm-option-text {
  display:contents!important;
 }
 body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > .glpm-option-text > a {
  grid-column:1 / -1!important;grid-row:2!important;display:-webkit-box!important;
  -webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;
  min-height:2.5em!important;max-height:2.5em!important;
 }
 body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > .glpm-option-text > .glpm-facts {
  grid-column:1 / -1!important;grid-row:3!important;min-width:0!important;
 }
 body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > .glpm-option-text > span {
  grid-column:1!important;grid-row:4!important;align-self:center!important;
  min-height:0!important;margin:0!important;
 }
 body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > button.glpm-card-icon-action[data-glpm-action=add] {
  grid-column:2!important;grid-row:4!important;align-self:center!important;justify-self:end!important;
  width:36px!important;height:36px!important;min-height:36px!important;max-height:36px!important;margin:0!important;padding:0!important;
 }
 @media(max-width:700px) {
  body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option:has(>button.glpm-card-icon-action) {
   grid-template-columns:60px minmax(0,1fr) 36px!important;
   grid-template-rows:auto auto auto!important;gap:5px 8px!important;padding:8px!important;
  }
  body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > .glpm-option-image {
   grid-column:1!important;grid-row:1 / 4!important;width:60px!important;height:82px!important;max-height:82px!important;align-self:center!important;
  }
  body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > .glpm-option-text > a {
   grid-column:2 / -1!important;grid-row:1!important;min-height:0!important;max-height:2.7em!important;
  }
  body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > .glpm-option-text > .glpm-facts {
   grid-column:2 / -1!important;grid-row:2!important;
  }
  body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > .glpm-option-text > span {
   grid-column:2!important;grid-row:3!important;
  }
  body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > button.glpm-card-icon-action[data-glpm-action=add] {
   grid-column:3!important;grid-row:3!important;
  }
 }
}

@layer gamespsn-brand {
 @media(max-width:360px) {
  body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option:has(>button.glpm-card-icon-action) {
   grid-template-columns:50px minmax(0,1fr) 36px!important;
  }
  body.gl-brand-2026 #gl-premium-cart-root .glpm-smart-option > .glpm-option-image {
   width:50px!important;height:70px!important;max-height:70px!important;
  }
 }
}
