/* makes the font 33% larger relative to the icon container */
.xi-x {
  font-size: 1.3333333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}

.xi-2x {
  font-size: 2em;
}

.xi-3x {
  font-size: 3em;
}

.xi-4x {
  font-size: 4em;
}

.xi-5x {
  font-size: 5em;
}

.xi-spin {
  animation: xi-spin 2s infinite linear;
}

@-webkit-keyframes xi-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
@keyframes xi-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
.xi-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  transform: rotate(90deg);
}

.xi-rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  transform: rotate(180deg);
}

.xi-rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  transform: rotate(270deg);
}

.xi-flip-horizontal {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0);
  transform: scale(-1, 1);
}

.xi-flip-vertical {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  transform: scale(1, -1);
}

:root .xi-rotate-90,
:root .xi-rotate-180,
:root .xi-rotate-270,
:root .xi-flip-horizontal,
:root .xi-flip-vertical {
  filter: none;
}

.xi-fw {
  width: 1.2857142857em;
  text-align: center;
}

.xi-ul {
  padding-left: 0;
  margin-left: 2.1428571429em;
  list-style-type: none;
}
.xi-ul > li {
  position: relative;
}

.xi-li {
  position: absolute;
  left: -2.1428571429em;
  width: 2.1428571429em;
  top: 0.1428571429em;
  text-align: center;
}
.xi-li.xi-lg {
  left: -1.8571428571em;
}

.xi-border {
  padding: 0.2em 0.25em 0.15em;
  border: solid 0.08em #eee;
  border-radius: 0.1em;
}

.pull-right {
  float: right;
  margin-right: 0.3em;
}

.pull-left {
  float: left;
  margin-right: 0.3em;
}