/* Designer homepage-demo widget: suppress the "Hinweis zur Produktvorschau" popup.
   That notice is meant for the real /designer/ page (explains size/print details for an
   actual purchase); the homepage demo has no size, price or cart, so the notice is confusing
   and covers the "Jetzt fertig gestalten" button. Scoped to the homepage embed only - the
   real Designer page still shows it normally for first-time visitors. */
.wztd-homepage-demo #wztd-master-notice,
.wztd-homepage-embed #wztd-master-notice{display:none!important}

/* Designer homepage-demo widget: its per-object canvas controls (rotate/move toolbar, delete
   button - ids like wztd-m420-object-actions, wztd-m421-object-delete) sometimes get appended
   straight to <body> instead of positioned over the canvas, leaving stray empty-looking bars/
   buttons sitting in the normal page flow near the footer. A properly attached, actively-used
   control is never a direct child of <body>, so hiding only that case is safe. */
body>[id^="wztd-"][id*="-object-"],
body>[class^="wztd-"][class*="-object-"]{display:none!important}

/* Designer homepage-demo widget on mobile: the Designer's own mobile stylesheet locks html/body
   scroll and hides the site footer + cookie-consent banner whenever <html> carries the
   wztd-mobile-ready class - correct on the real /designer/ page (fullscreen mobile editor), but
   the homepage demo widget adds that same class while collapsed, so all of it wrongly hits the
   plain homepage too. frontend-fixes.js toggles wzai-mobile-unlock on <html> only in that broken
   state; these rules use one extra class for higher specificity so they win regardless of CSS
   load order, without touching the Designer plugin's own files. */
@media(max-width:850px){
  html.wztd-mobile-ready.wzai-mobile-unlock,
  html.wztd-mobile-ready.wzai-mobile-unlock body{
    overflow:visible!important;
    height:auto!important;
  }
  html.wztd-mobile-ready.wzai-mobile-unlock footer,
  html.wztd-mobile-ready.wzai-mobile-unlock #footer,
  html.wztd-mobile-ready.wzai-mobile-unlock .footer-wrapper,
  html.wztd-mobile-ready.wzai-mobile-unlock .absolute-footer,
  html.wztd-mobile-ready.wzai-mobile-unlock .footer-1,
  html.wztd-mobile-ready.wzai-mobile-unlock .footer-2,
  html.wztd-mobile-ready.wzai-mobile-unlock .site-footer{
    display:block!important;
    visibility:visible!important;
    height:auto!important;
    min-height:0!important;
    margin:revert!important;
    padding:revert!important;
    overflow:visible!important;
  }
  html.wztd-mobile-ready.wzai-mobile-unlock #cmplz-cookiebanner-container,
  html.wztd-mobile-ready.wzai-mobile-unlock .cmplz-cookiebanner,
  html.wztd-mobile-ready.wzai-mobile-unlock .cmplz-manage-consent{
    display:revert!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}

/* Designer price panel: every WooCommerce price on the site shows "inkl. MwSt.", but the
   Designer's own price sidebar omits it. Add the same suffix for consistent price display. */
#wztd-price::after{content:" inkl. MwSt.";font-size:.65em;font-weight:400;opacity:.75;margin-left:4px}

/* Delivery estimate + size guide on the plain product page (mirrors what the Designer already
   shows inside its own widget, using the same per-product data). */
.wzai-delivery-estimate{margin:8px 0;font-size:.95em;font-weight:600}
.wzai-size-guide-open{background:none;border:none;padding:0;margin:4px 0 12px;color:inherit;text-decoration:underline;font-size:.9em;cursor:pointer;display:block}
.wzai-size-guide-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center}
.wzai-size-guide-modal[hidden]{display:none}
.wzai-size-guide-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.6)}
.wzai-size-guide-card{position:relative;background:#fff;padding:24px;border-radius:6px;max-width:92vw;max-height:88vh;overflow:auto}
.wzai-size-guide-card img{max-width:100%;height:auto;display:block}
.wzai-size-guide-close{position:absolute;top:8px;right:12px;background:none;border:none;font-size:28px;line-height:1;cursor:pointer;color:#333}
