.kha-pp-wrap{display:block;margin:18px 0 26px;}
.kha-pp-preview-host{display:none;}
.kha-pp-wrap.kha-pp-mobile-panel-ready .kha-pp-preview-host{display:block;}
.kha-pp-right{width:100%;max-width:100%;}
.kha-pp-canvas-wrap{background:#fff;border:1px solid #e6ece8;border-radius:14px;padding:14px;box-shadow:0 6px 18px rgba(0,0,0,.04);}
#kha-pp-canvas{width:100%;height:auto;display:block;}
.kha-pp-hint{font-size:12px;opacity:.78;margin-top:10px;line-height:1.55;}
.kha-pp-field{margin-bottom:18px;}
.kha-pp-field label{display:block;font-weight:600;margin-bottom:6px;}
.kha-pp-field label small{font-weight:400;opacity:.75;}
.kha-pp-input-row{display:flex;gap:10px;align-items:center;}
.kha-pp-input-row input[type=text]{flex:1;min-width:0;border:1px solid #e6ece8;border-radius:10px;padding:12px 12px;font-size:14px;}
.kha-pp-clear{border:1px solid #e6ece8;background:#fafcfb;border-radius:10px;padding:10px 12px;font-size:12px;cursor:pointer;}
.kha-pp-counter{font-size:12px;opacity:.7;margin-top:6px;}
.kha-pp-upload-hint{font-size:12px;opacity:.75;margin-top:6px;line-height:1.5;}
.woocommerce-product-gallery.kha-pp-gallery-enhanced .kha-pp-gallery-preview,
.kha-pp-gallery-preview--fallback{width:100%;margin:0 0 18px;}
.woocommerce-product-gallery.kha-pp-gallery-enhanced .kha-pp-preview-host,
.kha-pp-gallery-preview--fallback .kha-pp-preview-host{display:block;}
.woocommerce-product-gallery.kha-pp-gallery-enhanced .kha-pp-canvas-wrap{padding:18px;border-radius:16px;}
.woocommerce-product-gallery.kha-pp-gallery-enhanced .kha-pp-hint{padding:0 2px;}
.single-product div.product .woocommerce-product-gallery.kha-pp-gallery-enhanced{display:block;}

@media (max-width: 900px){
  .kha-pp-right{max-width:100%;}
}

.woocommerce-product-gallery.kha-pp-gallery-enhanced .woocommerce-product-gallery__image--placeholder{display:none!important;}
.kha-pp-photo-tools{margin-top:12px;padding:12px;border:1px solid #e6ece8;border-radius:12px;background:#fafcfb;display:grid;gap:9px;}
.kha-pp-tool-row{display:grid;grid-template-columns:95px 1fr;gap:10px;align-items:center;font-size:12px;}
.kha-pp-tool-row label{margin:0;font-size:12px;font-weight:600;opacity:.78;}
.kha-pp-tool-row input[type=range]{width:100%;}
.kha-pp-reset-photo{justify-self:start;border:1px solid #e6ece8;background:#ebeae7;border-radius:10px;padding:8px 12px;font-size:12px;cursor:pointer;}

.kha-pp-mobile-editor-panel{display:none;margin-top:12px;border:1px solid #e6ece8;border-radius:14px;background:#fff;overflow:hidden;}
.kha-pp-mobile-editor-toggle{width:100%;border:0;background:#f7faf8;padding:13px 14px;font-size:14px;font-weight:700;text-align:left;cursor:pointer;position:relative;}
.kha-pp-mobile-editor-toggle:after{content:'+';position:absolute;right:14px;top:50%;transform:translateY(-50%);font-weight:700;font-size:18px;}
.kha-pp-mobile-editor-panel.is-open .kha-pp-mobile-editor-toggle:after{content:'–';}
.kha-pp-mobile-editor-content{display:none;padding:14px;}
.kha-pp-mobile-editor-panel.is-open .kha-pp-mobile-editor-content{display:block;}
.kha-pp-mobile-editor-content .kha-pp-field{margin-bottom:14px;}
.kha-pp-mobile-editor-content .kha-pp-photo-tools{margin-top:10px;}
.kha-pp-mobile-editor-content .kha-pp-tool-row{grid-template-columns:82px 1fr;}

@media (max-width: 767px){
  .kha-pp-wrap.kha-pp-initialized .kha-pp-preview-host{display:block;}
  .kha-pp-mobile-editor-panel{display:block;}
  .kha-pp-right{display:none;}
  .woocommerce-product-gallery.kha-pp-gallery-enhanced .kha-pp-canvas-wrap{padding:10px;border-radius:14px;}
  .kha-pp-hint{font-size:11px;}
}

@media (min-width: 768px){
  .kha-pp-right{display:block;}
}


.kha-pp-file-input{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

.kha-pp-dropzone{
  border:2px dashed #d7ddd9;
  border-radius:14px;
  background:#fff;
  padding:18px 16px;
  text-align:center;
  cursor:pointer;
  transition:border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
  margin-bottom:12px;
}

.kha-pp-dropzone:hover,
.kha-pp-dropzone:focus,
.kha-pp-dropzone.is-dragover{
  border-color:#b9a36a;
  background:#fffdf6;
  box-shadow:0 8px 22px rgba(0,0,0,.06);
  outline:none;
}

.kha-pp-dropzone.is-dragover{
  transform:translateY(-1px);
}

.kha-pp-dropzone-title{
  font-size:15px;
  line-height:1.25;
  font-weight:800;
  color:#1f1f1f;
  margin-bottom:5px;
}

.kha-pp-dropzone-subtitle{
  font-size:12px;
  line-height:1.45;
  color:#6f6f6f;
}

.kha-pp-dropzone-formats{
  font-size:11px;
  color:#999;
  margin-top:7px;
}

.kha-pp-dropzone-file{
  font-size:12px;
  font-weight:700;
  color:#2f6b3d;
  margin-top:9px;
  min-height:16px;
  word-break:break-word;
}


/* Compatibility: VEB Variation Swatches / Variation Gallery replaces the default Woo gallery markup. */

/* Personalizer mode: keep only the KHA preview visible. Hide the extra VEB gallery/slider/thumbs. */
.kha-pp-veb-gallery-suppressed .veb-variation-gallery-wrapper > :not(.kha-pp-veb-gallery-preview){
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.kha-pp-veb-gallery-suppressed .veb-variation-gallery-container,
.kha-pp-veb-gallery-suppressed .veb-variation-gallery-slider-wrapper,
.kha-pp-veb-gallery-suppressed .veb-variation-gallery-slider,
.kha-pp-veb-gallery-suppressed .veb-variation-gallery-thumbnail-wrapper,
.kha-pp-veb-gallery-suppressed .veb-variation-gallery-thumbnail-slider,
.kha-pp-veb-gallery-suppressed .veb-variation-gallery-trigger{
  display:none!important;
}

.kha-pp-veb-gallery-enhanced .kha-pp-veb-gallery-preview{
  width:100%;
  margin:0 0 18px;
  position:relative;
  z-index:2;
}
.kha-pp-veb-gallery-enhanced .kha-pp-preview-host{
  display:block;
}
.kha-pp-veb-gallery-enhanced .kha-pp-canvas-wrap{
  padding:18px;
  border-radius:16px;
}
.kha-pp-veb-gallery-enhanced .kha-pp-hint{
  padding:0 2px;
}
@media (max-width: 767px){
  .kha-pp-veb-gallery-enhanced .kha-pp-canvas-wrap{
    padding:10px;
    border-radius:14px;
  }
}
