/* v2.5 frontend - fix white text + price badge always visible + WA */
.spv-wrapper{margin:16px 0;padding:14px;background:#f9f9f9;border:1px solid #e5e5e5;border-radius:12px}
.spv-front-label{font-weight:700;display:block;margin-bottom:10px;font-size:15px;color:#222}
.spv-front-list{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}
.spv-front-btn{
  border:1.5px solid #dcdcde!important;
  padding:8px 14px!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#222!important;
  cursor:pointer!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  font-size:13px!important;
  line-height:1.2!important;
  transition:all .18s!important;
  text-decoration:none!important;
}
.spv-front-btn:hover{
  border-color:#2271b1!important;
  background:#f0f7ff!important;
  color:#0a4a7a!important;
  transform:translateY(-1px)!important;
}
.spv-front-btn.active,
.spv-front-btn.active:hover{
  border-color:#2271b1!important;
  background:#2271b1!important;
  color:#fff!important;
  font-weight:600!important;
  box-shadow:0 2px 6px rgba(34,113,177,.3)!important;
}
.spv-front-btn:disabled{opacity:.45!important;cursor:not-allowed!important}
.spv-color-swatch{width:20px;height:20px;border-radius:50%;display:inline-block;border:1.5px solid rgba(0,0,0,.2);box-shadow:0 1px 2px rgba(0,0,0,.1);flex-shrink:0}
.spv-image-thumb{width:28px;height:28px;object-fit:cover;border-radius:6px;border:1px solid #ddd;flex-shrink:0}
.spv-price-badge{background:#f0f0f0;padding:3px 7px;border-radius:4px;font-size:11px;margin-left:4px;color:#333;font-weight:600}
.spv-front-btn.active .spv-price-badge{background:#fff!important;color:#2271b1!important}
#spv-selected-info{margin-top:10px;font-size:13px;padding:8px 10px;background:#fff;border-radius:6px;border:1px dashed #ccc;display:none;color:#222}
#spv-selected-info.show{display:block!important}
.spv-live-price{margin-top:10px;font-weight:700;font-size:16px;color:#111;background:#fff;padding:6px 10px;border-radius:6px;border:1px solid #e5e5e5;display:none}
.spv-live-price.show{display:block!important}
.spv-cart-varian{display:block!important;margin-top:4px;color:#555;font-size:12px}
.spv-cart-varian strong{color:#111}
.spv-sizechart-front{margin:14px 0}
.spv-sizechart-trigger{font-size:13px;text-decoration:underline!important;cursor:pointer;background:#fff!important;padding:6px 10px;border-radius:6px;border:1px solid #ddd!important;display:inline-flex;align-items:center;gap:4px;color:#2271b1!important}
.spv-sizechart-popup{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);z-index:99999;padding:20px;overflow:auto}
.spv-sizechart-popup-inner{background:#fff;max-width:760px;margin:30px auto;padding:20px;border-radius:12px;position:relative;max-height:90vh;overflow:auto}
.spv-close-popup{position:absolute;top:10px;right:10px;border:none;background:#eee;border-radius:50%;width:36px;height:36px;cursor:pointer;font-size:18px}
.spv-tabel-content table{width:100%;border-collapse:collapse;margin-top:10px}
.spv-tabel-content th,.spv-tabel-content td{border:1px solid #ddd;padding:8px;text-align:left;font-size:13px}
.spv-tabel-content th{background:#f8f9fa;font-weight:600}
@media(max-width:480px){.spv-front-list{gap:6px}.spv-front-btn{padding:7px 10px!important;font-size:12px!important}}

/* v2.9.7: large variation image preview and zoom */
.spv-variation-gallery-preview{margin:14px 0 8px;max-width:520px;cursor:zoom-in;text-align:center;background:#fff;border:1px solid #e5e5e5;border-radius:10px;padding:10px}
.spv-variation-gallery-preview[hidden]{display:none!important}
.spv-variation-gallery-image{display:block;max-width:100%;max-height:460px;width:auto;height:auto;object-fit:contain;margin:0 auto;border-radius:6px}
.spv-variation-gallery-caption{display:block;margin-top:8px;font-size:13px;color:#555}
.spv-variation-lightbox{display:none;position:fixed;inset:0;z-index:100000;background:rgba(0,0,0,.88);align-items:center;justify-content:center;padding:24px;cursor:zoom-out}
.spv-variation-lightbox.is-open{display:flex}
.spv-variation-lightbox img{max-width:min(96vw,1200px);max-height:90vh;width:auto;height:auto;object-fit:contain}
.spv-variation-lightbox-close{position:absolute;top:18px;right:22px;width:44px;height:44px;border:0;border-radius:50%;background:#fff;color:#111;font-size:30px;line-height:1;cursor:pointer}
body.spv-lightbox-open{overflow:hidden}
