/* p1450108174216-listing-component-isolation-v1
 * Third-step root-cause architecture after .214/.215 browser evidence.
 * Different approach: dedicated markup + hard component isolation instead of another
 * generic selector patch. Provider/category Wishlist, availability and primary CTA
 * no longer inherit legacy control / pseudo-element presentation.
 */

:root{
  --aw216-ink:#082a52;
  --aw216-ink-strong:#06244a;
  --aw216-muted:#61758a;
  --aw216-line:rgba(20,52,82,.11);
  --aw216-border:rgba(20,52,82,.13);
  --aw216-blue:#0a3568;
  --aw216-blue-hover:#082d5a;
  --aw216-saved:#a4384a;
}

/* --------------------------------------------------------------------------
   Component isolation: these three controls are no longer styled by legacy
   .heart-button / .delivery-line / .main-action cascade rules.
   -------------------------------------------------------------------------- */
[data-aw-listing-surface] .aw-listing-wishlist-form{
  all:unset!important;
  box-sizing:border-box!important;
  position:absolute!important;
  z-index:12!important;
  display:block!important;
  width:30px!important;
  height:30px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
  overflow:visible!important;
  pointer-events:auto!important;
}
[data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control]{
  all:unset!important;
  box-sizing:border-box!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  display:grid!important;
  place-items:center!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  min-height:30px!important;
  max-width:30px!important;
  max-height:30px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid rgba(18,54,87,.16)!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.98)!important;
  color:#0a315f!important;
  box-shadow:0 2px 7px rgba(8,42,82,.065)!important;
  filter:none!important;
  transform:none!important;
  opacity:1!important;
  visibility:visible!important;
  cursor:pointer!important;
  line-height:1!important;
  font:inherit!important;
  text-decoration:none!important;
  overflow:hidden!important;
  pointer-events:auto!important;
  transition:border-color .16s ease,color .16s ease,box-shadow .16s ease,background-color .16s ease!important;
}
[data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control]:hover{
  border-color:rgba(18,54,87,.30)!important;
  background:#fff!important;
  box-shadow:0 3px 9px rgba(8,42,82,.09)!important;
  transform:none!important;
}
[data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control]:focus-visible{
  outline:2px solid rgba(20,91,118,.34)!important;
  outline-offset:2px!important;
}
[data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control][aria-pressed="true"],
[data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control].is-saved{
  color:var(--aw216-saved)!important;
  background:#fff!important;
  border-color:rgba(164,56,74,.24)!important;
  box-shadow:0 2px 7px rgba(164,56,74,.055)!important;
  transform:none!important;
}
[data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control] .aw-heart-icon[data-basket-heart-icon]{
  display:block!important;
  width:15px!important;
  height:15px!important;
  min-width:15px!important;
  min-height:15px!important;
  max-width:15px!important;
  max-height:15px!important;
  margin:0!important;
  padding:0!important;
  fill:transparent!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  filter:none!important;
  transform:none!important;
  pointer-events:none!important;
  overflow:visible!important;
}
[data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control][aria-pressed="true"] .aw-heart-icon[data-basket-heart-icon] path,
[data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control].is-saved .aw-heart-icon[data-basket-heart-icon] path{
  fill:currentColor!important;
  stroke:currentColor!important;
}

/* Explicitly kill all legacy status decoration. The browser artifact before
   "Lieferbar" was caused by pseudo/background cascade, so .216 uses text only. */
[data-aw-listing-surface] .aw-listing-availability[data-aw-listing-availability]{
  all:unset!important;
  box-sizing:border-box!important;
  display:block!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  margin:7px 0 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  color:#506a80!important;
  box-shadow:none!important;
  text-shadow:none!important;
  filter:none!important;
  transform:none!important;
  font-family:inherit!important;
  font-size:.79rem!important;
  font-weight:640!important;
  line-height:1.3!important;
  letter-spacing:0!important;
  text-decoration:none!important;
  opacity:1!important;
  visibility:visible!important;
}
[data-aw-listing-surface] .aw-listing-availability[data-aw-listing-availability]::before,
[data-aw-listing-surface] .aw-listing-availability[data-aw-listing-availability]::after{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
}

/* Dedicated CTA: reset legacy .main-action scaling/width/pill rules first. */
[data-aw-listing-surface] .aw-listing-primary-action[data-aw-listing-primary-action]{
  all:unset!important;
  box-sizing:border-box!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:144px!important;
  max-width:190px!important;
  min-height:36px!important;
  height:36px!important;
  max-height:36px!important;
  margin:0!important;
  padding:8px 13px!important;
  border:1px solid rgba(5,38,77,.08)!important;
  border-radius:8px!important;
  background:var(--aw216-blue)!important;
  background-image:none!important;
  color:#fff!important;
  box-shadow:0 3px 9px rgba(8,42,82,.10)!important;
  filter:none!important;
  transform:none!important;
  font-family:inherit!important;
  font-size:.77rem!important;
  font-weight:760!important;
  line-height:1.15!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  overflow:hidden!important;
}
[data-aw-listing-surface] .aw-listing-primary-action[data-aw-listing-primary-action]:hover{
  background:var(--aw216-blue-hover)!important;
  color:#fff!important;
  box-shadow:0 4px 11px rgba(8,42,82,.13)!important;
  transform:none!important;
}
[data-aw-listing-surface] .aw-listing-primary-action[data-aw-listing-primary-action]:focus-visible{
  outline:2px solid rgba(20,91,118,.34)!important;
  outline-offset:2px!important;
}

/* --------------------------------------------------------------------------
   Provider listing: compact premium row; controls stay within their own cells.
   -------------------------------------------------------------------------- */
.provider-profile-page [data-aw-listing-surface="provider"].provider-offer-card-v3{
  grid-template-columns:100px minmax(250px,1.45fr) minmax(128px,.62fr) minmax(128px,.62fr) minmax(150px,.72fr)!important;
  gap:20px!important;
  min-height:124px!important;
  padding:14px 0!important;
  border-bottom:1px solid var(--aw216-line)!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
  overflow:visible!important;
}
.provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-media{
  position:relative!important;
  width:92px!important;
  height:92px!important;
  overflow:visible!important;
  isolation:isolate!important;
}
.provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-media>a:not(.heart-button){
  width:88px!important;
  height:88px!important;
  border:1px solid rgba(20,52,82,.075)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 2px 10px rgba(8,42,82,.035)!important;
}
.provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-media img,
.provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-media .product-image-placeholder{
  max-width:78px!important;
  max-height:78px!important;
}
.provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-media>.aw-listing-wishlist-form{
  top:3px!important;
  right:-1px!important;
  left:auto!important;
  bottom:auto!important;
}
.provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-title{
  font-size:1.05rem!important;
  line-height:1.25!important;
}
.provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-product>p{
  margin-top:4px!important;
  font-size:.81rem!important;
}
.provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-actions{
  display:grid!important;
  justify-items:end!important;
  gap:7px!important;
}
.provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-actions .aw-listing-primary-action{
  justify-self:end!important;
}

/* --------------------------------------------------------------------------
   Category listing: same isolated controls, slightly denser visual rhythm.
   -------------------------------------------------------------------------- */
.category-page [data-aw-listing-surface="category"].category-product-card{
  grid-template-columns:100px minmax(0,1fr)!important;
  gap:20px!important;
  min-height:128px!important;
  padding:14px 0!important;
  border-bottom:1px solid var(--aw216-line)!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
  overflow:visible!important;
}
.category-page [data-aw-listing-surface="category"] .product-media{
  width:92px!important;
  height:92px!important;
  border:1px solid rgba(20,52,82,.075)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 2px 10px rgba(8,42,82,.035)!important;
  overflow:hidden!important;
}
.category-page [data-aw-listing-surface="category"] .product-media img,
.category-page [data-aw-listing-surface="category"] .product-media .product-image-placeholder{
  max-width:78px!important;
  max-height:80px!important;
}
.category-page [data-aw-listing-surface="category"] .product-card-top{
  all:unset!important;
  box-sizing:border-box!important;
  position:absolute!important;
  z-index:12!important;
  top:17px!important;
  left:66px!important;
  width:30px!important;
  height:30px!important;
  margin:0!important;
  padding:0!important;
  pointer-events:none!important;
}
.category-page [data-aw-listing-surface="category"] .product-card-top>.aw-listing-wishlist-form{
  position:static!important;
  inset:auto!important;
  pointer-events:auto!important;
}
.category-page [data-aw-listing-surface="category"] .product-card-body-v2{
  grid-template-columns:minmax(225px,1.28fr) minmax(245px,.92fr) minmax(145px,.58fr)!important;
  column-gap:22px!important;
}
.category-page [data-aw-listing-surface="category"] .product-name{
  font-size:1.03rem!important;
  line-height:1.25!important;
}
.category-page [data-aw-listing-surface="category"] .product-card-meta{
  margin-top:4px!important;
  font-size:.79rem!important;
}
.category-page [data-aw-listing-surface="category"] .product-facts-v2{
  gap:0 18px!important;
}
.category-page [data-aw-listing-surface="category"] .card-actions{
  align-self:center!important;
  justify-items:end!important;
}
.category-page [data-aw-listing-surface="category"] .card-actions .aw-listing-primary-action{
  justify-self:end!important;
}

/* --------------------------------------------------------------------------
   Responsive: never let legacy responsive rules re-inflate isolated controls.
   -------------------------------------------------------------------------- */
@media (max-width:1180px){
  .provider-profile-page [data-aw-listing-surface="provider"].provider-offer-card-v3{
    grid-template-columns:94px minmax(220px,1.35fr) minmax(118px,.58fr) minmax(118px,.58fr)!important;
    gap:16px!important;
  }
  .provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-actions{
    grid-column:2/-1!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:12px!important;
  }
  .category-page [data-aw-listing-surface="category"] .product-card-body-v2{
    grid-template-columns:minmax(210px,1.15fr) minmax(230px,.9fr)!important;
    column-gap:18px!important;
  }
  .category-page [data-aw-listing-surface="category"] .card-actions{
    grid-column:1/-1!important;
    justify-content:flex-end!important;
    margin-top:8px!important;
  }
}

@media (max-width:900px){
  .provider-profile-page [data-aw-listing-surface="provider"].provider-offer-card-v3{
    grid-template-columns:88px minmax(0,1fr) minmax(112px,.46fr)!important;
    gap:14px!important;
    min-height:0!important;
    padding:13px 0!important;
  }
  .provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-market{display:none!important}
  .provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-actions{grid-column:2/-1!important}
  .category-page [data-aw-listing-surface="category"] .product-card-body-v2{
    grid-template-columns:minmax(0,1fr)!important;
    column-gap:0!important;
  }
  .category-page [data-aw-listing-surface="category"] .product-name,
  .category-page [data-aw-listing-surface="category"] .product-card-meta,
  .category-page [data-aw-listing-surface="category"] .aw-listing-availability,
  .category-page [data-aw-listing-surface="category"] .product-facts-v2,
  .category-page [data-aw-listing-surface="category"] .card-actions{
    grid-column:1!important;
    grid-row:auto!important;
  }
  .category-page [data-aw-listing-surface="category"] .product-facts-v2{margin-top:10px!important;max-width:420px!important}
  .category-page [data-aw-listing-surface="category"] .card-actions{justify-content:flex-start!important}
  .category-page [data-aw-listing-surface="category"] .card-actions .aw-listing-primary-action{justify-self:start!important}
}

@media (max-width:620px){
  [data-aw-listing-surface] .aw-listing-wishlist-form{
    width:28px!important;
    height:28px!important;
  }
  [data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control]{
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    min-height:28px!important;
    max-width:28px!important;
    max-height:28px!important;
  }
  [data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control] .aw-heart-icon[data-basket-heart-icon]{
    width:14px!important;
    height:14px!important;
    min-width:14px!important;
    min-height:14px!important;
    max-width:14px!important;
    max-height:14px!important;
  }
  [data-aw-listing-surface] .aw-listing-primary-action[data-aw-listing-primary-action]{
    min-width:0!important;
    max-width:180px!important;
    min-height:34px!important;
    height:34px!important;
    max-height:34px!important;
    padding:7px 11px!important;
    font-size:.75rem!important;
  }
  .provider-profile-page [data-aw-listing-surface="provider"].provider-offer-card-v3{
    grid-template-columns:76px minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;
    gap:9px 12px!important;
    padding:12px 0!important;
  }
  .provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-media{
    width:76px!important;
    height:76px!important;
  }
  .provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-media>a:not(.heart-button){
    width:72px!important;
    height:72px!important;
    border-radius:14px!important;
  }
  .provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-media img,
  .provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-media .product-image-placeholder{
    max-width:64px!important;
    max-height:64px!important;
  }
  .provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-media>.aw-listing-wishlist-form{
    top:2px!important;
    right:-1px!important;
  }
  .provider-profile-page [data-aw-listing-surface="provider"] .provider-offer-actions{
    grid-column:2!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
  }
  .category-page [data-aw-listing-surface="category"].category-product-card{
    grid-template-columns:76px minmax(0,1fr)!important;
    gap:12px!important;
    padding:12px 0!important;
  }
  .category-page [data-aw-listing-surface="category"] .product-media{
    width:74px!important;
    height:74px!important;
    border-radius:14px!important;
  }
  .category-page [data-aw-listing-surface="category"] .product-media img,
  .category-page [data-aw-listing-surface="category"] .product-media .product-image-placeholder{
    max-width:64px!important;
    max-height:64px!important;
  }
  .category-page [data-aw-listing-surface="category"] .product-card-top{
    top:12px!important;
    left:49px!important;
    width:28px!important;
    height:28px!important;
  }
  .category-page [data-aw-listing-surface="category"] .product-name{font-size:.98rem!important}
  .category-page [data-aw-listing-surface="category"] .product-facts-v2{grid-template-columns:1fr 1fr!important;gap:8px 14px!important}
}

@media (prefers-reduced-motion:reduce){
  [data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control],
  [data-aw-listing-surface] .aw-listing-primary-action[data-aw-listing-primary-action]{transition:none!important}
}

html[data-aw-contrast="dark"] [data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control]{
  background:#102e4e!important;
  border-color:#43617d!important;
  color:#e7f0f8!important;
}
html[data-aw-contrast="dark"] [data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control][aria-pressed="true"],
html[data-aw-contrast="dark"] [data-aw-listing-surface] .aw-listing-heart-button[data-aw-listing-heart-control].is-saved{
  background:#102e4e!important;
  border-color:#80505d!important;
  color:#ffc3cb!important;
}
