/*
  Floating third-party widget overlay rules (FH + SH)
  Hides Trusted Shops trustbadge, Klaviyo animated teaser, Zendesk launcher
  and Zendesk messaging window during modal/menu/search states. This must load unconditionally.
*/

.basket-open div[id^="trustbadge-container-"],
.basket-open div[data-testid="animated-teaser"],
.basket-open iframe#launcher,
.basket-open iframe[name="Messaging window"],
.basket-open iframe[title="Messaging window"],
body.fh-mobile-menu-open div[id^="trustbadge-container-"],
body.fh-mobile-menu-open div[data-testid="animated-teaser"],
body.fh-mobile-menu-open iframe#launcher,
body.fh-mobile-menu-open iframe[name="Messaging window"],
body.fh-mobile-menu-open iframe[title="Messaging window"],
body.sh-mobile-menu-open div[id^="trustbadge-container-"],
body.sh-mobile-menu-open div[data-testid="animated-teaser"],
body.sh-mobile-menu-open iframe#launcher,
body.sh-mobile-menu-open iframe[name="Messaging window"],
body.sh-mobile-menu-open iframe[title="Messaging window"],
body.fh-search-overlay-open div[id^="trustbadge-container-"],
body.fh-search-overlay-open div[data-testid="animated-teaser"],
body.fh-search-overlay-open iframe#launcher,
body.sh-search-overlay-open div[id^="trustbadge-container-"],
body.sh-search-overlay-open div[data-testid="animated-teaser"],
body.sh-search-overlay-open iframe#launcher {
  display: none !important;
}

/* Keep :has() selectors isolated so unsupported browsers preserve baseline hiding. */
body:has(div[data-dfd-view="Search"].dfd-root:not([hidden])) div[id^="trustbadge-container-"],
body:has(div[data-dfd-view="Search"].dfd-root:not([hidden])) div[data-testid="animated-teaser"],
body:has(div[data-dfd-view="Search"].dfd-root:not([hidden])) iframe#launcher,
body:has(div[data-dfd-view="Search"].dfd-root:not([hidden])) iframe[name="Messaging window"],
body:has(div[data-dfd-view="Search"].dfd-root:not([hidden])) iframe[title="Messaging window"] {
  display: none !important;
}


.basket-open div[data-dfd-view="Search"].dfd-root {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

@media (max-width: 767.98px) {
  body.hammer-zendesk-window-visible div[id^="trustbadge-container-"],
  body.hammer-zendesk-window-visible div[data-testid="animated-teaser"] {
    display: none !important;
  }
}
