/* P1.44.0.4 public UI repair */

/* Merkzettelherz: gespeicherter Zustand ist in jeder Darstellung sichtbar. */
.heart-button [data-basket-heart-icon] {
  display: inline-grid;
  place-items: center;
  width: 1em;
  height: 1em;
  line-height: 1;
}
.heart-button.is-saved,
.heart-button[aria-pressed="true"] {
  color: #b4233b !important;
  background: #fff1f3 !important;
  border-color: #e5a7b1 !important;
  box-shadow: 0 6px 16px rgba(180, 35, 59, .16) !important;
}
.heart-button.is-saved [data-basket-heart-icon],
.heart-button[aria-pressed="true"] [data-basket-heart-icon] {
  font-size: 0 !important;
}
.heart-button.is-saved [data-basket-heart-icon]::before,
.heart-button[aria-pressed="true"] [data-basket-heart-icon]::before {
  content: "♥";
  color: #b4233b;
  font-size: 1.28rem;
  line-height: 1;
}
html[data-aw-contrast="dark"] .heart-button.is-saved,
html[data-aw-contrast="dark"] .heart-button[aria-pressed="true"] {
  color: #ffd1d8 !important;
  background: #542532 !important;
  border-color: #d9798b !important;
}
html[data-aw-contrast="dark"] .heart-button.is-saved [data-basket-heart-icon]::before,
html[data-aw-contrast="dark"] .heart-button[aria-pressed="true"] [data-basket-heart-icon]::before {
  color: #ffd1d8;
}

/* Desktopkopf: mehr Abstand zwischen Aktionszeile und Trennlinie. */
@media (min-width: 1181px) {
  .portal-head .portal-header-row {
    min-height: 94px !important;
    padding-top: 8px !important;
    padding-bottom: 15px !important;
  }
  .portal-head .header-actions {
    align-self: end !important;
  }
  .portal-head .nav-basket-link,
  .portal-head .header-account-row {
    margin-bottom: 0 !important;
  }
}

/* Startseitenkarten: keine großen Leerflächen und keine abgeschnittenen Angaben. */
.portal-homepage .portal-product-row {
  align-items: start !important;
}
.portal-homepage .product-card.portal-product-card.product-card-v4 {
  height: auto !important;
  min-height: 356px !important;
}
.portal-homepage .product-card.portal-product-card.product-card-v4 .product-media {
  height: 132px !important;
  min-height: 132px !important;
  padding: 12px 16px 5px !important;
}
.portal-homepage .product-card.portal-product-card.product-card-v4 .product-media img {
  max-height: 108px !important;
}
.portal-homepage .product-card.portal-product-card.product-card-v4 .product-card-body {
  flex: 0 0 auto !important;
  min-height: 0 !important;
  padding: 11px 12px 13px !important;
}
.portal-homepage .product-card.portal-product-card.product-card-v4 .product-name {
  min-height: 2.5em !important;
  max-height: none !important;
  margin: 0 !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  overflow: hidden !important;
  font-size: .93rem !important;
  line-height: 1.25 !important;
}
.portal-homepage .product-card.portal-product-card.product-card-v4 .product-card-meta {
  min-height: 2.35em !important;
  max-height: 2.35em !important;
  margin: 6px 0 0 !important;
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  overflow: hidden !important;
  white-space: normal !important;
  text-overflow: clip !important;
  font-size: .7rem !important;
  line-height: 1.18 !important;
}
.portal-homepage .product-card.portal-product-card.product-card-v4 .product-card-commerce-v4 {
  margin-top: 10px !important;
  padding-top: 0 !important;
  gap: 4px !important;
}
.portal-homepage .product-card.portal-product-card.product-card-v4 .product-card-price-block-v4 {
  min-height: 48px !important;
}
.portal-homepage .product-card.portal-product-card.product-card-v4 .product-card-total-line {
  min-height: 31px !important;
  margin-top: 3px !important;
  padding: 5px 0 3px !important;
}
.portal-homepage .product-card.portal-product-card.product-card-v4 .product-card-provider-line-v4 {
  min-height: 18px !important;
  margin-top: 1px !important;
}
.portal-homepage .product-card.portal-product-card.product-card-v4 .card-actions {
  margin-top: 6px !important;
}

/* Bei persönlicher Textvergrößerung wachsen Karten mit dem Inhalt. */
html[data-aw-font-scale="large"] .portal-homepage .product-card.portal-product-card.product-card-v4,
html[data-aw-font-scale="larger"] .portal-homepage .product-card.portal-product-card.product-card-v4,
html[data-aw-readable-mode="on"] .portal-homepage .product-card.portal-product-card.product-card-v4 {
  min-height: 0 !important;
}
html[data-aw-font-scale="large"] .portal-homepage .product-card.portal-product-card.product-card-v4 .product-name,
html[data-aw-font-scale="larger"] .portal-homepage .product-card.portal-product-card.product-card-v4 .product-name,
html[data-aw-readable-mode="on"] .portal-homepage .product-card.portal-product-card.product-card-v4 .product-name,
html[data-aw-font-scale="large"] .portal-homepage .product-card.portal-product-card.product-card-v4 .product-card-meta,
html[data-aw-font-scale="larger"] .portal-homepage .product-card.portal-product-card.product-card-v4 .product-card-meta,
html[data-aw-readable-mode="on"] .portal-homepage .product-card.portal-product-card.product-card-v4 .product-card-meta {
  min-height: 0 !important;
  max-height: none !important;
  display: block !important;
  overflow: visible !important;
  -webkit-line-clamp: unset !important;
}

/* Dunkle Darstellung: verschachtelte Flächen und Texte auf Start-, Such- und Produktseiten. */
html[data-aw-contrast="dark"] :where(
  .portal-category-card,
  .portal-homepage .product-card.portal-product-card,
  .portal-module,
  .portal-module-grid > *,
  .search-result-item,
  .search-result-pricebox,
  .result-toolbar,
  .product-price-history-card,
  .price-history-start-state,
  .price-history-stats > div,
  .product-comparison-summary,
  .product-freshness-card,
  .fact-item,
  .variant-card,
  .offer-sortbar,
  .offer-row,
  .offer-pricebox,
  .offer-promotion-box,
  .product-information-card,
  .product-fact-block,
  .ingredient-info-card,
  .product-source-item,
  .product-medical-facts,
  .product-device-profile,
  .product-source-documents,
  .product-safety-notices,
  .product-shortage-notices,
  .detail-related-card .product-card-body,
  .reader-preferences-shell,
  .reader-preferences-field
) {
  color: var(--aw-dark-text) !important;
  background: var(--aw-dark-surface) !important;
  border-color: var(--aw-dark-line) !important;
}
html[data-aw-contrast="dark"] :where(
  .portal-category-card strong,
  .portal-category-card span,
  .portal-homepage .product-card .product-name,
  .portal-homepage .product-card .product-card-current-price,
  .portal-homepage .product-card .product-card-total-line strong,
  .search-result-item h2,
  .search-result-item h3,
  .search-result-item strong,
  .product-price-history-card h2,
  .product-price-history-card strong,
  .variant-card strong,
  .offer-row strong,
  .offer-row dt,
  .product-fact-block summary,
  .ingredient-info-card summary,
  .product-source-item strong,
  .detail-related-card .product-name
) {
  color: var(--aw-dark-text) !important;
}
html[data-aw-contrast="dark"] :where(
  .portal-homepage .product-card .product-card-meta,
  .portal-homepage .product-card .product-card-total-line span,
  .portal-homepage .product-card .product-unit-price,
  .search-result-item p,
  .search-result-item small,
  .price-history-start-state p,
  .product-price-history-card p,
  .variant-card small,
  .offer-row dd,
  .offer-row p,
  .product-fact-block p,
  .ingredient-info-card p,
  .product-source-item p,
  .detail-related-card .product-card-meta
) {
  color: var(--aw-dark-muted) !important;
}
html[data-aw-contrast="dark"] .portal-category-card {
  box-shadow: none !important;
}
html[data-aw-contrast="dark"] .portal-category-card :where(svg, .ui-icon) {
  color: #b9dcff !important;
  stroke: currentColor !important;
}
html[data-aw-contrast="dark"] .portal-homepage .product-card.portal-product-card {
  box-shadow: 0 10px 28px rgba(0, 0, 0, .28) !important;
}
html[data-aw-contrast="dark"] .portal-homepage .product-card.portal-product-card .product-media,
html[data-aw-contrast="dark"] .detail-related-card .product-media,
html[data-aw-contrast="dark"] :where(.provider-real-logo, .offer-shop-logo, .product-source-item figure) {
  background: #f8fafc !important;
  border-color: #ccd7e2 !important;
}
html[data-aw-contrast="dark"] .portal-homepage .product-card .product-card-total-line {
  border-color: var(--aw-dark-line) !important;
}
html[data-aw-contrast="dark"] .portal-homepage .product-card .product-card-provider-line-v4 span,
html[data-aw-contrast="dark"] .delivery-line,
html[data-aw-contrast="dark"] .offer-delivery {
  color: #91e7b2 !important;
}
html[data-aw-contrast="dark"] :where(.price-history-ranges a, .related-filter, .offer-sort-control select) {
  color: var(--aw-dark-text) !important;
  background: var(--aw-dark-surface-2) !important;
  border-color: var(--aw-dark-line) !important;
}
html[data-aw-contrast="dark"] :where(.price-history-ranges a.is-active, .related-filter.is-active) {
  color: #08275b !important;
  background: #dcecff !important;
  border-color: #9dcbff !important;
}
html[data-aw-contrast="dark"] .offer-facts span {
  color: var(--aw-dark-text) !important;
  background: var(--aw-dark-surface-soft) !important;
  border-color: var(--aw-dark-line) !important;
}
html[data-aw-contrast="dark"] .product-source-grid > .product-source-item,
html[data-aw-contrast="dark"] .product-fact-grid > .product-fact-block {
  box-shadow: none !important;
}
html[data-aw-contrast="dark"] .shop-logo-module :where(.provider-real-logo, .provider-logo-tile),
html[data-aw-contrast="dark"] .pharma-brand-module :where(.pharma-brand-tile, .provider-real-logo) {
  background: #fff !important;
  border-color: #d4dee8 !important;
}
html[data-aw-contrast="dark"] .reader-preferences-shell select,
html[data-aw-contrast="dark"] .reader-preferences-shell input {
  color: var(--aw-dark-text) !important;
  background: #0b1721 !important;
  border-color: var(--aw-dark-line) !important;
}

@media (max-width: 1320px) {
  .portal-homepage .product-card.portal-product-card.product-card-v4 {
    min-height: 340px !important;
  }
}
@media (max-width: 860px) {
  .portal-homepage .product-card.portal-product-card.product-card-v4 {
    min-height: 0 !important;
  }
}
@media (forced-colors: active) {
  .heart-button.is-saved [data-basket-heart-icon]::before,
  .heart-button[aria-pressed="true"] [data-basket-heart-icon]::before {
    color: ButtonText;
  }
}
