/* p1450108174214-category-flat-wishlist-contract-v1
 * Root cause follow-up after .213 browser acceptance:
 * - Category commerce data is correct, but the surface still nests cards inside cards.
 * - Wishlist JS replaced the persistent inline SVG with Unicode text after state changes.
 * This contract flattens the category surface and keeps the heart interaction DOM-stable.
 */

/* Category page shell: information hierarchy instead of stacked rounded containers. */
.category-page .category-hero{
  padding:18px 0 16px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.category-page .category-hero .eyebrow{margin-bottom:6px!important}
.category-page .category-hero h1{margin-bottom:8px!important}
.category-page .category-hero>p:last-of-type{max-width:70ch!important}
.category-page .category-facts{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px 20px!important;
  margin-top:13px!important;
}
.category-page .category-facts span{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--aw-ui-muted,#607286)!important;
  font-size:.82rem!important;
  font-weight:720!important;
}
.category-page .category-facts span+span::before{
  content:"·";
  margin-right:18px;
  color:#9aabba;
}

/* Result heading: a toolbar line, not another card. */
.category-page .category-result-toolbar{
  margin:0 0 18px!important;
  padding:0 0 13px!important;
  border:0!important;
  border-bottom:1px solid rgba(21,54,83,.15)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.category-page .category-result-toolbar h2{margin:0 0 3px!important}
.category-page .category-result-toolbar p{margin:0!important;color:var(--aw-ui-muted,#607286)!important}

/* Desktop filter becomes a quiet rail, not a white card inside the page. */
@media (min-width:901px){
  .category-page .category-results-layout{
    grid-template-columns:minmax(205px,232px) minmax(0,1fr)!important;
    gap:26px!important;
  }
  .category-page .category-filter-panel{
    padding:0 22px 0 0!important;
    border-right:1px solid rgba(21,54,83,.13)!important;
    background:transparent!important;
  }
  .category-page .category-filter-form{
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .category-page .category-filter-head{
    padding:0 0 12px!important;
    border:0!important;
    border-bottom:1px solid rgba(21,54,83,.12)!important;
    background:transparent!important;
  }
  .category-page .category-filter-fields{padding:14px 0 0!important}
  .category-page .category-filter-actions{
    padding:15px 0 0!important;
    border-top:1px solid rgba(21,54,83,.12)!important;
    background:transparent!important;
  }
}
.category-page :where(.category-secondary-filters,.category-more-filters){
  border:0!important;
  border-top:1px solid rgba(21,54,83,.12)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.category-page :where(.category-secondary-filters,.category-more-filters)>summary{
  padding:11px 0!important;
}
.category-page :where(.category-secondary-filters,.category-more-filters)>:not(summary){
  padding-left:0!important;
  padding-right:0!important;
}

/* Category product row: one comparison row, no price-card / total-card / provider-card nesting. */
.category-page .category-product-list{
  gap:0!important;
  border-top:1px solid rgba(21,54,83,.14)!important;
}
.category-page .category-product-card{
  min-height:126px!important;
  border:0!important;
  border-bottom:1px solid rgba(21,54,83,.13)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
  overflow:hidden!important;
}
.category-page .category-product-card:hover{
  border-color:rgba(21,54,83,.18)!important;
  background:rgba(247,250,253,.72)!important;
  box-shadow:none!important;
  transform:none!important;
}
.category-page .category-product-card .product-media{
  background:transparent!important;
  border:0!important;
  overflow:hidden!important;
}
.category-page .category-product-card .product-media img,
.category-page .category-product-card .product-media .product-image-placeholder{
  display:block!important;
  max-width:88px!important;
  max-height:96px!important;
  margin:auto!important;
  object-fit:contain!important;
}
.category-page .category-product-card .product-card-body-v2{
  background:transparent!important;
}
.category-page .category-product-card .product-facts-v2{
  gap:0!important;
  align-items:stretch!important;
}
.category-page .category-product-card .product-facts-v2>:where(.fact-price,.fact-total-price-v4,.fact-provider){
  min-height:0!important;
  margin:0!important;
  padding:5px 14px!important;
  border:0!important;
  border-left:1px solid rgba(21,54,83,.12)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.category-page .category-product-card .product-facts-v2>.fact-price{
  border-left:0!important;
  padding-left:0!important;
}
.category-page .category-product-card .fact-provider{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  color:#37536e!important;
}
.category-page .category-product-card .fact-total-price-v4{
  color:#0b5660!important;
}
.category-page .category-product-card .fact-total-price-v4 strong{
  color:#0b5660!important;
}
.category-page .category-product-card .product-card-current-price-v4>small,
.category-page .category-product-card .fact-total-price-v4>small{
  margin:0 0 3px!important;
}
.category-page .category-product-card .card-actions{
  padding:0!important;
}
.category-page .category-product-card .main-action{
  min-height:42px!important;
  border-radius:10px!important;
  box-shadow:none!important;
}

/* Heart: visible, click-target remains above media, and saved state is class/data driven. */
.heart-button[data-basket-heart-button]{
  cursor:pointer!important;
  pointer-events:auto!important;
}
.heart-button[data-basket-heart-button] .aw-heart-icon[data-basket-heart-icon]{
  display:block!important;
  width:20px!important;
  height:20px!important;
  overflow:visible!important;
  pointer-events:none!important;
}
.heart-button[data-basket-heart-button] .aw-heart-icon[data-basket-heart-icon] path{
  display:block!important;
  fill:transparent!important;
  stroke:currentColor!important;
  stroke-width:1.85!important;
}
.heart-button[data-basket-heart-button][aria-pressed="true"] .aw-heart-icon[data-basket-heart-icon] path,
.heart-button[data-basket-heart-button].is-saved .aw-heart-icon[data-basket-heart-icon] path{
  fill:currentColor!important;
  stroke:currentColor!important;
}

@media (max-width:900px){
  /* Mobile filter remains an intentional drawer/sheet; the page behind it stays flat. */
  .category-page .category-filter-form{
    box-shadow:none!important;
  }
  .category-page .category-result-toolbar{
    padding-bottom:12px!important;
  }
}

@media (max-width:620px){
  .category-page .category-product-card{
    grid-template-columns:84px minmax(0,1fr)!important;
  }
  .category-page .category-product-card .product-media img,
  .category-page .category-product-card .product-media .product-image-placeholder{
    max-width:72px!important;
    max-height:86px!important;
  }
  .category-page .category-product-card .product-facts-v2{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    row-gap:7px!important;
  }
  .category-page .category-product-card .product-facts-v2>:where(.fact-price,.fact-total-price-v4,.fact-provider){
    padding:5px 9px!important;
  }
  .category-page .category-product-card .fact-total-price-v4{
    border-left:1px solid rgba(21,54,83,.12)!important;
  }
  .category-page .category-product-card .fact-provider{
    grid-column:1/-1!important;
    justify-content:flex-start!important;
    border-left:0!important;
    border-top:1px solid rgba(21,54,83,.1)!important;
    padding-left:0!important;
    text-align:left!important;
  }
  .category-page .category-facts span+span::before{margin-right:10px}
}
