.swatch .header, .swatchEle {
  display: inline-block;
  vertical-align: middle
}

.swatch {
  margin: 0.7em 0 15px
}

.swatch .header, .swatch label {
  margin: 0;
  text-transform: uppercase
}

.swatch .header {
  font-family: Avenir-Bold;
  font-size: 10px
}

.swatchEle {
  /* padding-left: 15px */
}

.swatch .swatch-element .crossed-out, .swatch input {
  display: none
}

.swatch label {
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  float: left;

  min-width: {
      {
      width
    }
  }

   !important;

  height: {
      {
      height
    }
  }

   !important;
  border:1px solid #d3d3d3;
  background-color:transparent;
  font-size:13px;
  text-align:center;

  line-height: {
      {
      height
    }
  }

  ;
  white-space:nowrap;
  font-family:Avenir-Normal
}

.swatch-element label {
  padding: 0 10px
}

.color.swatch-element label {
  padding: 0
}

.swatch input:checked+label {
  border: 1px solid #000
}

.swatch .swatch-element {
  float: left;
  -webkit-transform: translateZ(0);
  -webkit-font-smoothing: antialiased;
  margin: 0 10px 0 0;
  position: relative
}

.crossed-out {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0
}

.swatch .swatch-element.soldout .crossed-out {
  display: block
}

.swatch .swatch-element.soldout label {
  filter: alpha(opacity=60);
  -khtml-opacity: .6;
  -moz-opacity: .6;
  opacity: .6
}

.swatch .tooltip {
  text-align: center;
  background: gray;
  color: #fff;
  bottom: 100%;
  padding: 10px;
  display: block;
  position: absolute;
  width: 100px;

  left: {
      {
      width | remove: 'px'| to_number | divided_by: 2 | minus: 50 | plus: 2
    }
  }

  px;
  margin-bottom:15px;
  filter:alpha(opacity=0);
  -khtml-opacity:0;
  -moz-opacity:0;
  opacity:0;
  visibility:hidden;
  -webkit-transform:translateY(10px);
  -moz-transform:translateY(10px);
  -ms-transform:translateY(10px);
  -o-transform:translateY(10px);
  transform:translateY(10px);
  -webkit-transition:all .25s ease-out;
  -moz-transition:all .25s ease-out;
  -ms-transition:all .25s ease-out;
  -o-transition:all .25s ease-out;
  transition:all .25s ease-out;
  -webkit-box-shadow:2px 2px 6px rgba(0, 0, 0, .28);
  -moz-box-shadow:2px 2px 6px rgba(0, 0, 0, .28);
  -ms-box-shadow:2px 2px 6px rgba(0, 0, 0, .28);
  -o-box-shadow:2px 2px 6px rgba(0, 0, 0, .28);
  box-shadow:2px 2px 6px rgba(0, 0, 0, .28);
  z-index:10000;
  -moz-box-sizing:border-box;
  -webkit-box-sizing:border-box;
  box-sizing:border-box
}

.swatch .tooltip:before {
  bottom: -20px;
  content: " ";
  display: block;
  height: 20px;
  left: 0;
  position: absolute;
  width: 100%
}

.swatch .tooltip:after {
  border-left: solid transparent 10px;
  border-right: solid transparent 10px;
  border-top: solid gray 10px;
  bottom: -10px;
  content: " ";
  height: 0;
  left: 50%;
  margin-left: -13px;
  position: absolute;
  width: 0
}

.swatch .swatch-element:hover .tooltip {
  filter: alpha(opacity=100);
  -khtml-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0)
}

.swatch.error {
  background-color: #E8D2D2 !important;
  color: #333 !important;
  padding: 1em;
  border-radius: 5px
}

.swatch.error p {
  margin: .7em 0
}

.swatch.error p:first-child {
  margin-top: 0
}

.swatch.error p:last-child {
  margin-bottom: 0
}

.swatch.error code {
  font-family: monospace
}
