.kac-box{max-width:100%;font-size:15px}.kac-card{background:#fff;border:1px solid #dfe5eb;border-radius:.75rem;box-shadow:0 .25rem .85rem rgba(0,0,0,.05);overflow:hidden}.kac-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:1.2rem 1.35rem;border-bottom:1px solid #e8edf2;background:#fff}.kac-kicker{font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;font-weight:700;color:#00645f}.kac-head h2{font-size:1.45rem;margin:.1rem 0;color:#18232f;font-weight:700}.kac-head p{margin:0;color:#66727f}.kac-from-price{text-align:right;white-space:nowrap;color:#18232f}.kac-from-price span{display:block;color:#66727f;font-size:.82rem}.kac-from-price strong{display:block;font-size:1.35rem;color:#00645f}.kac-main-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(290px,.9fr);gap:1rem;padding:1rem}.kac-panel{border:1px solid #e1e7ed;border-radius:.65rem;background:#fbfcfd;padding:1rem}.kac-panel-title{font-size:1.05rem;font-weight:700;color:#18232f;margin-bottom:.9rem}.kac-field{margin-bottom:1rem}.kac-field label{display:block;font-weight:700;margin-bottom:.35rem;color:#26313d}.kac-field small{display:block;margin-top:.25rem;color:#66727f}.kac-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.kac-box input[type=number]{text-align:right}.kac-box .form-control,.kac-box .form-select,.kac-box .input-group-text{border-color:#cfd8e3}.kac-box .form-control:focus,.kac-box .form-select:focus{border-color:#00645f;box-shadow:0 0 0 .18rem rgba(0,100,95,.12)}.kac-hint-list{display:grid;gap:.35rem;background:#fff;border:1px solid #e5ebf1;border-radius:.55rem;padding:.75rem;color:#536170;font-size:.88rem}.kac-error{background:#fff3f3;border:1px solid #f0b6b6;color:#a00000;border-radius:.55rem;padding:.7rem .8rem;margin-top:.9rem}.kac-result-panel{background:#fff}.kac-result-list{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.kac-result-list>div{border:1px solid #e5ebf1;border-radius:.55rem;background:#fbfcfd;padding:.7rem}.kac-result-list span{display:block;color:#66727f;font-size:.8rem}.kac-result-list strong{display:block;color:#18232f;font-size:1.05rem}.kac-total-price{display:flex;justify-content:space-between;align-items:end;margin-top:1rem;background:#00645f;color:#fff;border-radius:.65rem;padding:.9rem 1rem}.kac-total-price span{font-size:.85rem;opacity:.85}.kac-total-price strong{font-size:1.55rem;line-height:1}.kac-submit{width:100%;margin-top:1rem;font-weight:700}.kac-submit.disabled,.kac-submit:disabled{opacity:.55;cursor:not-allowed}
.kac-preview{display:none;margin-top:1rem;background:#fff;border:1px solid #dfe5eb;border-radius:.75rem;box-shadow:0 .25rem .85rem rgba(0,0,0,.04);overflow:hidden}.kac-preview-head{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;border-bottom:1px solid #e8edf2;color:#18232f}.kac-preview-head span{font-size:.82rem;color:#66727f}.kac-preview-stage{position:relative;min-height:310px;background:linear-gradient(180deg,#fbfcfd,#f4f6f8);display:flex;align-items:center;justify-content:center;padding:2.6rem 5rem 2.4rem}.kac-plate-wrap{display:flex;align-items:center;justify-content:center;width:310px;height:230px}.kac-plate{position:relative;width:220px;height:130px;border:1px solid #6d7379;background:linear-gradient(135deg,#8d9296,#e2e4e5 45%,#6f7478);box-shadow:0 10px 22px rgba(0,0,0,.22);transition:width .18s ease,height .18s ease,border-color .18s ease,filter .18s ease}.kac-plate:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.16) 0,rgba(255,255,255,.16) 1px,rgba(0,0,0,.04) 2px,rgba(0,0,0,.04) 4px);mix-blend-mode:screen}.kac-plate-shine{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.22),transparent 30%,rgba(255,255,255,.15) 55%,transparent)}.kac-plate.is-valid{border-color:#00645f;filter:saturate(1.05)}.kac-plate.is-invalid{border-color:#b00020}.kac-dimension{position:absolute;color:#0059b2;font-weight:700;font-size:.9rem}.kac-dimension-width{top:2rem;left:50%;transform:translateX(-50%);width:300px;border-top:1px dashed #78828d;text-align:center}.kac-dimension-width span{position:relative;top:-.75rem;background:#fbfcfd;padding:0 .5rem}.kac-dimension-height{left:2.2rem;top:50%;transform:translateY(-50%) rotate(-90deg);width:220px;border-top:1px dashed #78828d;text-align:center}.kac-dimension-height span{position:relative;top:-.75rem;background:#f7f9fb;padding:0 .5rem}.kac-thickness-preview{position:absolute;right:1rem;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:.6rem;color:#536170;font-size:.85rem}.kac-thickness-bar{width:9px;height:12px;border:1px solid #6d7379;background:linear-gradient(90deg,#c7cbcf,#f4f4f4);transition:height .18s ease}.kac-preview-status{border-top:1px solid #e8edf2;background:#f8f9fa;padding:.7rem 1rem;color:#66727f;font-size:.9rem}.kac-preview-status.is-ok{background:#eefaf4;color:#117239}.kac-preview-status.is-error{background:#fff3f3;color:#a00000}@media(max-width:991.98px){.kac-main-grid{grid-template-columns:1fr}.kac-preview-stage{min-height:280px;padding:2.4rem 3.2rem}.kac-thickness-preview{position:static;transform:none;justify-content:center;margin-top:1rem}.kac-preview-stage{flex-direction:column}.kac-dimension-height{left:.8rem}}@media(max-width:575.98px){.kac-head{display:block}.kac-from-price{text-align:left;margin-top:.75rem}.kac-main-grid{padding:.75rem}.kac-two-cols,.kac-result-list{grid-template-columns:1fr}.kac-preview-stage{padding:2.4rem 1rem}.kac-dimension-height{display:none}.kac-dimension-width{width:240px}.kac-plate-wrap{width:260px;height:200px}}


/* KCS 7.2.3: Live-Vorschau im eigentlichen Produktbildbereich */
.kac-preview-host{position:relative!important;min-height:520px!important;overflow:visible!important}.kac-preview-host>.kac-original-media-hidden{display:none!important}.kac-preview.is-in-product-image{margin:0!important;width:100%;height:100%;min-height:520px;border-radius:.75rem;box-shadow:none}.kac-preview.is-in-product-image .kac-preview-head{padding:1rem 1.25rem}.kac-preview.is-in-product-image .kac-preview-head strong:before{content:"";display:inline-block;width:.65rem;height:.65rem;background:#2eb872;border-radius:50%;margin-right:.55rem;vertical-align:.05rem}.kac-preview.is-in-product-image .kac-preview-stage{min-height:420px;padding:4rem 6rem 3.4rem;background:linear-gradient(180deg,#fafbfc 0,#f3f5f7 76%,#eceff2 100%)}.kac-preview.is-in-product-image .kac-plate-wrap{width:520px;height:330px;max-width:100%}.kac-preview.is-in-product-image .kac-plate{width:390px;height:240px;border-color:#4f565d;box-shadow:0 16px 30px rgba(0,0,0,.28)}.kac-preview.is-in-product-image .kac-dimension-width{top:3.1rem;width:520px;max-width:72%;border-top:2px solid #0b5fc1}.kac-preview.is-in-product-image .kac-dimension-width span{background:#fafbfc;color:#0b5fc1;font-size:1.05rem}.kac-preview.is-in-product-image .kac-dimension-height{left:2.1rem;width:310px;border-top:2px solid #0b5fc1}.kac-preview.is-in-product-image .kac-dimension-height span{background:#f7f9fb;color:#0b5fc1;font-size:1.05rem}.kac-preview.is-in-product-image .kac-thickness-preview{right:1.25rem}.kac-preview.is-in-product-image .kac-preview-status{margin:1rem 1.25rem 1.25rem;border:1px solid #bfe8d0;border-radius:.65rem;background:#eefaf4;color:#116b38}.kac-preview.is-in-product-image .kac-preview-status.is-error{border-color:#f0b6b6;background:#fff3f3;color:#a00000}@media(max-width:991.98px){.kac-preview-host{min-height:430px!important}.kac-preview.is-in-product-image{min-height:430px}.kac-preview.is-in-product-image .kac-preview-stage{min-height:330px;padding:3.2rem 3rem 2.4rem}.kac-preview.is-in-product-image .kac-plate-wrap{width:340px;height:240px}.kac-preview.is-in-product-image .kac-dimension-width{max-width:74%;width:340px}.kac-preview.is-in-product-image .kac-dimension-height{width:220px;left:.75rem}}@media(max-width:575.98px){.kac-preview-host{min-height:360px!important}.kac-preview.is-in-product-image{min-height:360px}.kac-preview.is-in-product-image .kac-preview-stage{min-height:270px;padding:3rem 1rem 2rem}.kac-preview.is-in-product-image .kac-plate-wrap{width:260px;height:200px}.kac-preview.is-in-product-image .kac-dimension-width{width:250px;max-width:80%}}

/* v7.2.4 Detailseite: Vorschau im Bildfeld und Metadaten unten */
.kac-product-meta-bottom{border-top:1px solid #e5ebf1;padding-top:.8rem;color:#26313d}
.kac-product-meta-bottom .kac-product-shipping{color:#26313d}
.kac-product-meta-bottom .kac-product-shipping img{max-height:18px;margin:0 .25rem}
.kac-article-price-bottom{background:#fff;border:1px solid #dfe5eb;border-radius:.65rem;padding:.85rem 1rem;text-align:right}
.kac-article-price-bottom .kac-article-price-value{font-size:1.35rem;font-weight:700;color:#00645f;line-height:1.15}
.kac-article-price-bottom .kac-article-price-note{font-size:.85rem;color:#66727f;margin-top:.25rem}
.kac-preview:not(.has-size) .kac-dimension{display:none}
.kac-preview:not(.has-size) .kac-plate{opacity:.88}
.kac-preview.is-in-product-image{margin-top:0}
.kac-preview.is-in-product-image .kac-preview-stage{min-height:360px}
@media (max-width:767.98px){.kac-article-price-bottom{text-align:left}.kac-preview.is-in-product-image .kac-preview-stage{min-height:300px}}

/* KCS 7.2.5: Detailseitenpreisblock entfernt und Maßlinien mit Abstand zur Vorschau */
.kac-article-price-bottom{display:none!important}
.kac-preview.is-in-product-image .kac-preview-stage{padding-left:7.5rem!important;padding-right:4.5rem!important;padding-top:4.5rem!important}
.kac-preview.is-in-product-image .kac-dimension-width{top:3.45rem!important;max-width:68%!important}
.kac-preview.is-in-product-image .kac-dimension-height{left:3.35rem!important;width:250px!important}
.kac-preview.is-in-product-image .kac-plate-wrap{margin-left:.75rem!important}
@media(max-width:991.98px){.kac-preview.is-in-product-image .kac-preview-stage{padding-left:4.6rem!important;padding-right:2.5rem!important}.kac-preview.is-in-product-image .kac-dimension-height{left:1.25rem!important;width:205px!important}.kac-preview.is-in-product-image .kac-plate-wrap{margin-left:.3rem!important}}
@media(max-width:575.98px){.kac-preview.is-in-product-image .kac-preview-stage{padding-left:1rem!important;padding-right:1rem!important}.kac-preview.is-in-product-image .kac-dimension-height{display:none!important}.kac-preview.is-in-product-image .kac-dimension-width{max-width:82%!important}}

/* KCS 8.0.2: Produktfoto bleibt beim Seitenaufruf sichtbar; Live-Vorschau erscheint erst nach Eingabe */
.kac-preview.kac-preview-active{display:block!important}

.kac-tax-shipping-info {
  margin-top: .25rem;
  font-size: .85rem;
  font-weight: 400;
  color: #6c757d;
  line-height: 1.35;
}
.kac-tax-shipping-info a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* KCS 8.0.5: Übersichtlicher Preis- und Warenkorbbereich */
.kac-total-price{
  display:block;
  margin-top:1rem;
  background:#f6fbfa;
  color:#18232f;
  border:2px solid #00645f;
  border-radius:.8rem;
  padding:1rem;
  box-shadow:0 .35rem 1rem rgba(0,100,95,.08);
}
.kac-total-price-main{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:1rem;
}
.kac-total-price-label span{
  display:block;
  color:#00645f;
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  opacity:1;
}
.kac-total-price-label small{
  display:block;
  margin-top:.18rem;
  color:#536170;
  font-size:.86rem;
  font-weight:600;
}
.kac-total-price strong{
  color:#00645f;
  font-size:1.9rem;
  line-height:1;
  white-space:nowrap;
}
.kac-total-price strong span{
  font-size:inherit;
  opacity:1;
}
.kac-tax-shipping-info{
  margin-top:.75rem;
  padding-top:.65rem;
  border-top:1px solid rgba(0,100,95,.22);
  font-size:.88rem;
  font-weight:500;
  color:#536170;
  line-height:1.4;
}
.kac-tax-shipping-info a{
  color:#00645f;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:2px;
}
.kac-submit{
  width:100%;
  margin-top:.85rem;
  padding:.9rem 1rem;
  border-radius:.7rem;
  font-size:1.05rem;
  font-weight:800;
  letter-spacing:.01em;
}
.kac-submit:not(:disabled){
  background:#00645f;
  border-color:#00645f;
  color:#fff;
  box-shadow:0 .35rem .9rem rgba(0,100,95,.18);
}
.kac-submit:not(:disabled):hover,
.kac-submit:not(:disabled):focus{
  background:#004f4b;
  border-color:#004f4b;
  color:#fff;
}
@media(max-width:575.98px){
  .kac-total-price-main{display:block}
  .kac-total-price strong{display:block;margin-top:.55rem;font-size:1.75rem}
}


/* KCS 8.0.7: Preisblock bereinigt und responsive Darstellung verbessert */
.kac-total-price-label small{display:none!important}
.kac-result-panel{min-width:0}
.kac-total-price-main{min-width:0}
.kac-total-price strong{overflow-wrap:anywhere;text-align:right}
.kac-tax-shipping-info{overflow-wrap:anywhere}
@media(max-width:767.98px){
  .kac-card{border-radius:.6rem}
  .kac-head{padding:1rem}
  .kac-main-grid{padding:.75rem;gap:.75rem}
  .kac-panel{padding:.85rem}
  .kac-total-price{padding:.9rem;border-radius:.7rem}
  .kac-total-price-main{align-items:flex-start}
  .kac-total-price strong{font-size:1.7rem}
  .kac-tax-shipping-info{font-size:.84rem}
}
@media(max-width:575.98px){
  .kac-total-price-main{display:flex;flex-direction:column;align-items:stretch;gap:.35rem}
  .kac-total-price strong{display:block;margin-top:0;text-align:left;font-size:1.65rem;line-height:1.1}
  .kac-submit{padding:.85rem .9rem;font-size:1rem}
}
@media(max-width:380px){
  .kac-head h2{font-size:1.25rem}
  .kac-total-price strong{font-size:1.48rem}
  .kac-result-list>div{padding:.6rem}
}

/* KCS 8.0.8: Robuste Preisbox für sehr lange Gesamtpreise */
.kac-total-price{
  width:100%;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
  overflow:visible;
}
.kac-total-price-main{
  display:grid;
  grid-template-columns:minmax(8rem,auto) minmax(0,1fr);
  align-items:end;
  column-gap:1rem;
  row-gap:.45rem;
  width:100%;
  min-width:0;
}
.kac-total-price-label{
  min-width:0;
}
.kac-total-price strong{
  display:block;
  min-width:0;
  max-width:100%;
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
  hyphens:none;
  text-align:right;
  font-size:clamp(1.45rem,2.4vw,2.15rem);
  line-height:1.08;
}
.kac-total-price strong span{
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
}
@media(min-width:992px){
  .kac-result-panel{
    min-width:min(100%, 22rem);
  }
}
@media(max-width:575.98px){
  .kac-total-price-main{
    grid-template-columns:1fr;
    align-items:start;
  }
  .kac-total-price strong{
    text-align:left;
    font-size:clamp(1.35rem,8vw,1.85rem);
  }
}


/* KCS 8.0.9: Preis bleibt immer in einer Zeile; Box wächst statt Preis umzubrechen */
.kac-result-panel{
  overflow:visible;
}
.kac-total-price{
  display:block;
  width:max-content;
  min-width:100%;
  max-width:calc(100vw - 2rem);
  box-sizing:border-box;
  overflow-x:auto;
  overflow-y:hidden;
}
.kac-total-price-main{
  display:grid;
  grid-template-columns:auto max-content;
  align-items:end;
  justify-content:space-between;
  gap:.75rem 1.25rem;
  width:100%;
  min-width:max-content;
}
.kac-total-price strong,
.kac-total-price strong span,
#kac-price{
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
.kac-total-price strong{
  min-width:max-content;
  max-width:none;
  text-align:right;
  font-size:clamp(1.45rem,1.25rem + 1vw,2.15rem);
  line-height:1.05;
}
.kac-tax-shipping-info{
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
}
@media(max-width:575.98px){
  .kac-total-price{
    width:100%;
    min-width:0;
    max-width:100%;
  }
  .kac-total-price-main{
    grid-template-columns:1fr;
    min-width:0;
  }
  .kac-total-price strong{
    text-align:left;
    font-size:clamp(1.2rem,5.7vw,1.65rem);
  }
}


/* KCS 8.0.10: Produktbild/Live-Vorschau auf Höhe des Rechners ausrichten */
.kac-aligned-product-media{
  transition:margin-top .18s ease;
}
@media(max-width:991.98px){
  .kac-aligned-product-media{
    margin-top:0!important;
  }
}

/* KCS 8.0.13: Formen Viereck/Kreis und Eckenradius */
.kac-radius-field small,
.kac-diameter-field small{display:block;margin-top:.35rem;color:#6c757d;line-height:1.35}
.kac-plate.is-circle{border-radius:50%!important}
.kac-result-list>div strong{min-width:0;text-align:right}
@media(max-width:575.98px){.kac-result-list>div strong{text-align:left}}

/* KCS 8.0.14: Formabhängige Maßeingabe */
.kac-diameter-field[style*="display: none"]{display:none!important}
