/* stack the variations table so it reads like a clean buy-box section */
.variations_form .variations{border:0;margin:0 0 14px;width:100%;background:none}
.variations_form .variations tbody,
.variations_form .variations tr,
.variations_form .variations td,
.variations_form .variations th{display:block;width:auto;border:0;padding:0;margin:0;background:none}
.variations_form .variations th.label{display:none!important}
.vsw-heading{display:block;font-size:16px;line-height:26px;font-weight:600;color:#33444f;margin:0 0 8px}
.variations_form .variations td.value{margin:0 0 12px}
.variations_form .reset_variations{display:inline-block;font-size:11px;color:#7a8a96;margin-top:6px}

.vsw-wrap{margin:0}
.vsw-swatches{display:flex;gap:8px;flex-wrap:wrap}
.vsw-swatch{flex:1 1 0;min-width:120px;display:flex;flex-direction:row;align-items:center;gap:10px;border:1px solid #d8e0e6;border-radius:10px;padding:11px 12px;background:#fff;cursor:pointer;font:inherit;text-align:left;transition:border-color .12s,background .12s}
.vsw-swatch:hover{border-color:var(--vsw-primary)}
.vsw-swatch.vsw-active{border:2px solid var(--vsw-primary);background:var(--vsw-surface);padding:10px 11px}
.vsw-dot{width:22px;height:22px;border-radius:50%;flex:0 0 auto;border:1px solid rgba(0,0,0,.12);box-sizing:border-box}
.vsw-text{display:flex;flex-direction:column;gap:1px;min-width:0}
.vsw-label{font-size:13px;font-weight:600;color:#33444f}
.vsw-desc{font-size:11px;color:#7a8a96}
.vsw-swatch.vsw-disabled{opacity:.4;cursor:not-allowed}
/* hide the native dropdown (and any theme-generated replacement inside it) */
.vsw-native{display:none!important}
@media(max-width:600px){
  .vsw-swatches{gap:8px}
  /* 2 per row, compact, big tap targets */
  .vsw-swatch{flex:1 1 calc(50% - 4px);min-width:0;gap:8px;padding:10px 11px}
  .vsw-swatch.vsw-active{padding:9px 10px}
  .vsw-dot{width:18px;height:18px}
  .vsw-label{font-size:12.5px}
  .vsw-desc{font-size:10.5px}
}
