.wkf-product-configurator{
  --wkf-compare-min-width:148px;
  --wkf-config-primary:#0055ad;
  --wkf-config-primary-dark:#003f82;
  --wkf-config-text:#1d2935;
  --wkf-config-muted:#657487;
  --wkf-config-border:#dce3ea;
  --wkf-config-surface:#fff;
  --wkf-config-soft:#f7f9fb;
  --wkf-config-gap:20px;
  --wkf-compare-bg:#fff;
  --wkf-compare-color:var(--wkf-config-primary);
  --wkf-compare-border:var(--wkf-config-primary);
  --wkf-compare-hover-bg:#f0f6fc;
  --wkf-compare-hover-color:#fff;
  --wkf-compare-hover-border:var(--wkf-config-primary-dark);
  position:relative;
  display:grid;
  gap:var(--wkf-config-gap);
  width:100%;
  min-width:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:var(--wkf-config-text);
  font:inherit;
}
.wkf-product-configurator *{box-sizing:border-box}
.wkf-product-configurator button,.wkf-product-configurator select,.wkf-product-configurator input{font:inherit}
.wkf-product-configurator__form{display:grid;gap:12px;margin:0}
.wkf-product-configurator__variations{display:grid;gap:12px}
.wkf-product-configurator__variation-field{display:grid;grid-template-columns:minmax(86px,.25fr) minmax(0,1fr);align-items:center;gap:16px}
.wkf-product-configurator__variation-field label{margin:0;color:var(--wkf-config-text);font-weight:650;line-height:1.35}
.wkf-product-configurator__variation-field select{
  width:100%;
  min-width:0;
  min-height:40px;
  margin:0;
  padding:7px 38px 7px 12px;
  border:1px solid #cfd8e1;
  border-radius:5px;
  background-color:#fff;
  color:var(--wkf-config-text);
  line-height:1.3;
  cursor:pointer;
}
.wkf-product-configurator__variation-field select:focus-visible{outline:3px solid rgba(0,85,173,.18);outline-offset:1px;border-color:var(--wkf-config-primary)}
.wkf-product-configurator__variants-link{
  justify-self:start;
  margin:-2px 0 2px min(calc(25% + 16px),102px);
  padding:0;
  border:0;
  background:transparent;
  color:var(--wkf-config-primary);
  font-size:.88rem;
  line-height:1.35;
  text-decoration:none;
  cursor:pointer;
}
.wkf-product-configurator__variants-link:hover,.wkf-product-configurator__variants-link:focus-visible{text-decoration:underline;color:var(--wkf-config-primary-dark)}
.wkf-product-configurator__actions{
  display:grid;
  grid-template-columns:minmax(70px,auto) minmax(180px,1fr) auto;
  align-items:stretch;
  gap:12px;
  margin:0;
}
.wkf-product-configurator__quantity{width:76px;min-width:0}
.wkf-product-configurator__quantity .quantity{width:100%;height:100%;margin:0!important;background:#fff!important}
.wkf-product-configurator__quantity .qty{
  width:100%!important;
  min-height:40px;
  height:40px;
  margin:0!important;
  padding:8px 6px;
  border:1px solid #cfd8e1;
  border-radius:5px;
  background:#fff!important;
  color:var(--wkf-config-text);
  text-align:center;
}
.wkf-product-configurator__request-button,.wkf-product-configurator__compare-button{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-width:0;
  min-height:40px;
  margin:0!important;
  padding:8px 15px;
  border:1px solid transparent;
  border-radius:6px!important;
  text-align:center;
  text-decoration:none!important;
  font-weight:650;
  line-height:1.25;
  cursor:pointer;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.wkf-product-configurator__request-button{background:var(--wkf-config-primary)!important;border-color:var(--wkf-config-primary)!important;color:#fff!important}
.wkf-product-configurator__request-button:hover,.wkf-product-configurator__request-button:focus-visible{background:var(--wkf-config-primary-dark)!important;border-color:var(--wkf-config-primary-dark)!important;color:#fff!important}
.wkf-product-configurator__request-button.disabled,.wkf-product-configurator__request-button:disabled{opacity:.52;cursor:not-allowed}
.wkf-product-configurator__external-compare{display:contents}
.wkf-product-configurator__external-compare>span,.wkf-product-configurator__external-compare>div{display:contents}
.wkf-product-configurator__compare-button{min-width:var(--wkf-compare-min-width);background:var(--wkf-compare-bg)!important;border-color:var(--wkf-compare-border)!important;color:var(--wkf-compare-color)!important}
.wkf-product-configurator__compare-button:hover,.wkf-product-configurator__compare-button:focus-visible,.wkf-product-configurator__compare-button:active,.wkf-product-configurator__compare-button.is-wkf-hover,.wkf-product-configurator__compare-button.is-wkf-pressed{background:var(--wkf-compare-hover-bg)!important;border-color:var(--wkf-compare-hover-border)!important;color:var(--wkf-compare-hover-color)!important}
.wkf-product-configurator__compare-icon,.wkf-product-compare-button__icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:20px;height:20px;color:inherit;line-height:1}
.wkf-product-configurator__compare-icon svg,.wkf-product-compare-button__icon svg{display:block;width:100%;height:100%}
.wkf-product-configurator__compare-icon svg:not(.e-font-icon-svg),.wkf-product-compare-button__icon svg:not(.e-font-icon-svg){fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.wkf-product-configurator__compare-icon svg.e-font-icon-svg{fill:currentColor;stroke:none}
.wkf-product-configurator__compare-icon i{display:inline-flex;align-items:center;justify-content:center;width:1em;height:1em;font-size:1em;color:inherit}
.wkf-product-configurator__highlights{display:grid;gap:10px;min-width:0;margin-top:-8px}
.wkf-product-configurator__highlights[hidden]{display:none!important}
.wkf-product-configurator__highlights-title{margin:0!important;color:var(--wkf-config-primary);font-size:1rem;line-height:1.35;font-weight:700}
.wkf-product-configurator__highlight-list{display:grid;margin:0;min-width:0}
.wkf-product-configurator__highlight{
  --wkf-highlight-label-width:48%;
  display:grid;
  grid-template-columns:minmax(0,var(--wkf-highlight-label-width)) minmax(0,1fr);
  align-items:start;
  gap:16px;
  margin:0;
  padding:10px 0;
  border-bottom:1px solid var(--wkf-config-border);
}
.wkf-product-configurator__highlight:last-child{border-bottom:0}
.wkf-product-configurator__highlight dt,.wkf-product-configurator__highlight dd{min-width:0;margin:0;line-height:1.42}
.wkf-product-configurator__highlight dt{display:flex;align-items:flex-start;gap:10px;color:var(--wkf-config-primary);font-weight:620}
.wkf-product-configurator__highlight dd{color:#4d5b6a;overflow-wrap:anywhere}
.wkf-product-configurator__highlight-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:20px;height:20px;color:var(--wkf-config-primary)}
.wkf-product-configurator__highlight-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.wkf-product-configurator__highlight-icon svg path:not([fill="none"]){fill:currentColor;stroke:none}
.wkf-product-configurator--no-icons .wkf-product-configurator__highlight dt{gap:0}
.wkf-product-configurator__empty,.wkf-product-configurator__editor-notice{padding:14px 16px;border:1px dashed var(--wkf-config-border);border-radius:7px;background:var(--wkf-config-soft);color:var(--wkf-config-muted)}
.wkf-product-configurator__dialog{
  width:min(920px,calc(100vw - 32px));
  max-height:min(84vh,760px);
  margin:auto;
  padding:0;
  overflow:hidden;
  border:1px solid var(--wkf-config-border);
  border-radius:13px;
  background:#fff;
  color:var(--wkf-config-text);
  box-shadow:0 26px 70px rgba(11,32,52,.28);
}
.wkf-product-configurator__dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.wkf-product-configurator__dialog::backdrop{background:rgba(13,30,48,.56);backdrop-filter:blur(2px)}
.wkf-product-configurator__dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:20px 22px;border-bottom:1px solid var(--wkf-config-border);background:#fff}
.wkf-product-configurator__dialog-header h3{margin:3px 0 0;font-size:1.25rem;line-height:1.25;color:inherit}
.wkf-product-configurator__dialog-kicker{display:block;color:var(--wkf-config-primary);font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.wkf-product-configurator__dialog-close{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid var(--wkf-config-border);border-radius:50%;background:#fff;color:var(--wkf-config-text);font-size:1.55rem;line-height:1;cursor:pointer}
.wkf-product-configurator__dialog-close:hover,.wkf-product-configurator__dialog-close:focus-visible{border-color:var(--wkf-config-primary);color:var(--wkf-config-primary)}
.wkf-product-configurator__variant-options{display:grid;gap:10px;padding:18px 22px 24px;overflow:auto;background:var(--wkf-config-soft)}
.wkf-product-configurator__variant-option{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:14px 16px;border:1px solid var(--wkf-config-border);border-radius:8px;background:#fff;color:var(--wkf-config-text);text-align:left;cursor:pointer}
.wkf-product-configurator__variant-option:hover,.wkf-product-configurator__variant-option:focus-visible{border-color:var(--wkf-config-primary);box-shadow:0 3px 12px rgba(0,78,158,.08)}
.wkf-product-configurator__variant-option span:first-child{display:grid;gap:4px}
.wkf-product-configurator__variant-option small{color:var(--wkf-config-muted)}
.wkf-product-configurator__compare-message{min-height:0;padding:0 22px;color:var(--wkf-config-muted)}
.wkf-product-configurator__compare-message:not(:empty){padding-top:16px}
.wkf-product-configurator__compare-content{padding:18px 22px 24px;overflow:auto}
.wkf-product-configurator__compare-grid{display:grid;min-width:620px;border:1px solid var(--wkf-config-border);border-radius:9px;overflow:hidden}
.wkf-product-configurator__compare-row{display:grid;grid-template-columns:180px repeat(var(--wkf-compare-count),minmax(180px,1fr));border-bottom:1px solid var(--wkf-config-border)}
.wkf-product-configurator__compare-row:last-child{border-bottom:0}
.wkf-product-configurator__compare-cell{min-width:0;padding:12px 14px;border-right:1px solid var(--wkf-config-border);overflow-wrap:anywhere}
.wkf-product-configurator__compare-cell:last-child{border-right:0}
.wkf-product-configurator__compare-cell--label{background:var(--wkf-config-soft);font-weight:650;color:var(--wkf-config-text)}
.wkf-product-configurator__compare-product{display:grid;gap:7px}
.wkf-product-configurator__compare-product img{width:80px!important;height:64px!important;max-width:100%!important;object-fit:contain!important;object-position:center!important}
.wkf-product-configurator__compare-product a{color:var(--wkf-config-primary);font-weight:680;text-decoration:none}
.wkf-product-configurator__compare-product small{color:var(--wkf-config-muted)}
.wkf-product-configurator__compare-remove{justify-self:start;padding:4px 0;border:0;background:transparent;color:#a12a24;font-size:.82rem;cursor:pointer}
.wkf-product-configurator__dialog-footer{display:flex;justify-content:space-between;gap:12px;padding:16px 22px;border-top:1px solid var(--wkf-config-border);background:#fff}
.wkf-product-configurator__clear-compare,.wkf-product-configurator__dialog-done{min-height:40px;padding:8px 14px;border:1px solid var(--wkf-config-border);border-radius:6px;background:#fff;color:var(--wkf-config-text);cursor:pointer}
.wkf-product-configurator__dialog-done{margin-left:auto;background:var(--wkf-config-primary);border-color:var(--wkf-config-primary);color:#fff}
.wkf-product-configurator__form .single_variation{display:none!important}
.wkf-product-configurator__form .reset_variations{display:none!important}
.wkf-product-configurator__form .stock,.wkf-product-configurator__form .price{display:none!important}
@media (max-width:767px){
  .wkf-product-configurator__variation-field{grid-template-columns:1fr;gap:7px}
  .wkf-product-configurator__variants-link{margin:0;justify-self:start}
  .wkf-product-configurator__actions{grid-template-columns:1fr}
  .wkf-product-configurator__quantity{width:100%}
  .wkf-product-configurator__quantity .qty{min-height:40px;height:40px}
  .wkf-product-configurator__request-button,.wkf-product-configurator__compare-button{width:100%}
  .wkf-product-configurator__dialog{width:calc(100vw - 20px);max-height:calc(100vh - 20px);border-radius:10px}
  .wkf-product-configurator__dialog-header,.wkf-product-configurator__compare-content,.wkf-product-configurator__variant-options,.wkf-product-configurator__dialog-footer{padding-left:16px;padding-right:16px}
}
@media (max-width:480px){
  .wkf-product-configurator__highlight{grid-template-columns:1fr;gap:4px;padding:11px 0}
  .wkf-product-configurator__highlight dd{padding-left:30px}
  .wkf-product-configurator--no-icons .wkf-product-configurator__highlight dd{padding-left:0}
  .wkf-product-configurator__dialog-footer{flex-direction:column}
  .wkf-product-configurator__dialog-footer>*{width:100%}
}
@media (prefers-reduced-motion:reduce){.wkf-product-configurator *{scroll-behavior:auto!important;transition:none!important}}
.wkf-product-configurator--no-icons .wkf-product-configurator__highlight-icon{display:none}

/* 2.3.7: Elementor-Icon ersetzt auch bei Addify ausschließlich die sichtbare Darstellung. */
.wkf-product-configurator .wkf-product-configurator__compare-button--external::before,
.wkf-product-configurator .wkf-product-configurator__compare-button--external::after{content:none!important;display:none!important}
.wkf-product-configurator .wkf-product-configurator__compare-icon,
.wkf-product-configurator .wkf-product-configurator__compare-icon i,
.wkf-product-configurator .wkf-product-configurator__compare-icon svg{color:inherit!important}
.wkf-product-configurator .wkf-product-configurator__compare-icon svg path,
.wkf-product-configurator .wkf-product-configurator__compare-icon svg line,
.wkf-product-configurator .wkf-product-configurator__compare-icon svg polyline{stroke:currentColor!important}
.wkf-product-configurator .wkf-product-configurator__compare-icon svg.e-font-icon-svg path{fill:currentColor!important;stroke:none!important}

/* 2.5.0 – Preis, Bestellstatus und Nachfolgemodell */
.wkf-product-configurator__price[hidden]{display:none!important}
.wkf-product-configurator__price{min-width:0}
.wkf-product-configurator__price-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px 11px;min-width:0}
.wkf-product-configurator__price-label{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;background:#eaf3fb;color:var(--wkf-config-primary);font-size:.76rem;font-weight:700;line-height:1.2}
.wkf-product-configurator__price-current{color:var(--wkf-config-text);font-size:1.45rem;font-weight:720;line-height:1.15}
.wkf-product-configurator__price-current .woocommerce-Price-amount{white-space:nowrap}
.wkf-product-configurator__price-old{color:var(--wkf-config-muted);font-size:.92rem}
.wkf-product-configurator__price-note{color:var(--wkf-config-muted);font-size:.82rem;line-height:1.35}
.wkf-product-configurator__availability{display:grid;gap:4px;padding:11px 13px;border:1px solid var(--wkf-config-border);border-left-width:4px;border-radius:7px;background:#f8fafc;line-height:1.4}
.wkf-product-configurator__availability strong{font-size:.9rem}
.wkf-product-configurator__availability span{color:var(--wkf-config-muted);font-size:.84rem}
.wkf-product-configurator__availability--on_request{border-left-color:#0055ad;background:#f3f8fd}
.wkf-product-configurator__availability--temporarily_unavailable{border-left-color:#b26a00;background:#fff8e8}
.wkf-product-configurator__availability--discontinued{border-left-color:#b42318;background:#fff4f2}
.wkf-product-configurator__availability--discontinued strong{color:#9f1f18}
.wkf-product-configurator__actions--compare-only{grid-template-columns:auto;justify-content:end}
.wkf-product-configurator__successor{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:15px;padding:14px;border:1px solid #cfe0ef;border-radius:9px;background:#f5f9fd}
.wkf-product-configurator__successor-image{display:grid;place-items:center;width:88px;height:74px;padding:5px;border-radius:7px;background:#fff}
.wkf-product-configurator__successor-image img{display:block;max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;object-fit:contain!important;object-position:center!important}
.wkf-product-configurator__successor-copy{display:grid;gap:3px;min-width:0}
.wkf-product-configurator__successor-copy>span{color:var(--wkf-config-primary);font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.wkf-product-configurator__successor-copy strong{font-size:1rem;line-height:1.3}
.wkf-product-configurator__successor-copy p{margin:2px 0;color:var(--wkf-config-muted);font-size:.82rem;line-height:1.4}
.wkf-product-configurator__successor-copy a{justify-self:start;color:var(--wkf-config-primary);font-size:.84rem;font-weight:650;text-decoration:none}
.wkf-product-configurator__successor-copy a:hover,.wkf-product-configurator__successor-copy a:focus-visible{text-decoration:underline;color:var(--wkf-config-primary-dark)}

/* Externe Compare-Plugins verwenden dieselben CSS-Variablen wie das Elementor-Widget. */
@media(max-width:767px){
  .wkf-product-configurator__price-line{align-items:flex-start}
  .wkf-product-configurator__price-note{flex-basis:100%}
  .wkf-product-configurator__successor{grid-template-columns:72px minmax(0,1fr)}
  .wkf-product-configurator__successor-image{width:72px;height:64px}
}
@media(max-width:420px){
  .wkf-product-configurator__successor{grid-template-columns:1fr}
  .wkf-product-configurator__successor-image{width:100%;height:96px}
}

/* 4.8.1 – sichtbare Artikelnummer ohne Präfix im Einzelprodukt-Widget */
.wkf-product-configurator__part-number{justify-self:end;margin-top:-2px;color:var(--wkf-config-muted);font-size:.78rem;line-height:1.25;letter-spacing:.025em;overflow-wrap:anywhere}
.wkf-product-configurator__part-number[hidden]{display:none!important}
@media(max-width:767px){.wkf-product-configurator__part-number{justify-self:start}}

img[data-wkf-full-product-image="1"]{display:block!important;position:static!important;inset:auto!important;float:none!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;margin:auto!important;object-fit:contain!important;object-position:center!important;transform:none!important;translate:none!important;scale:none!important;clip:auto!important;clip-path:none!important}


/* 4.12.13 – natives Vergleichsicon */
.wkf-product-configurator__compare-button .wkf-product-compare-button__icon{color:inherit!important;opacity:1!important}
.wkf-product-configurator__compare-button .wkf-product-compare-button__icon svg.wkf-compare-arrows{display:block!important;width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;opacity:1!important}
.wkf-product-configurator__compare-button .wkf-product-compare-button__icon svg.wkf-compare-arrows path{fill:none!important;stroke:currentColor!important;opacity:1!important}


/* 4.15.46 – Vergleichsbutton: Text und Icon bleiben im aktiven Hover-Zustand weiß. */
.wkf-product-configurator__compare-button:not(.is-selected):hover,
.wkf-product-configurator__compare-button:not(.is-selected):focus-visible,
.wkf-product-configurator__compare-button:not(.is-selected):active,
.wkf-product-configurator__compare-button:not(.is-selected).is-wkf-hover,
.wkf-product-configurator__compare-button:not(.is-selected).is-wkf-pressed,
.wkf-product-configurator__compare-button:not(.is-selected):hover .wkf-product-compare-button__label,
.wkf-product-configurator__compare-button:not(.is-selected):focus-visible .wkf-product-compare-button__label,
.wkf-product-configurator__compare-button:not(.is-selected):hover .wkf-product-compare-button__icon,
.wkf-product-configurator__compare-button:not(.is-selected):focus-visible .wkf-product-compare-button__icon{
  color:#fff!important;
}
