.label {
  background-color: @label-bg;
  color: @label-color;
  font-size: @label-size;
  font-weight: @label-weight;
  padding: 3px 8px;
  text-shadow: none;
  border-radius: 1.25em;
  text-transform: uppercase;

  &.flat-edge-right {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    text-transform: none;
  }

  &.flat-edge-left {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    text-transform: none;
  }
}

.label-primary {
  background-color: @label-primary;
  color: @label-color;
}

.label-outline-primary {
  background-color: @label-color;
  color: @label-primary;
  border: 1px solid @label-primary;
}

.label-accent {
  background-color: @label-accent;
  color: @label-color;
}

.label-outline-accent {
  background-color: @label-color;
  color: @label-accent;
  border: 1px solid @label-accent;
}

.label-alternate1 {
  background-color: @label-alternate1;
  color: @label-color;
}

.label-outline-alternate1 {
  background-color: @label-color;
  color: @label-alternate1;
  border: 1px solid @label-alternate1;
}

.label-alternate2 {
  background-color: @label-alternate2;
  color: @label-color;
}

.label-outline-alternate2 {
  background-color: @label-color;
  color: @label-alternate2;
  border: 1px solid @label-alternate2;
}

.label-alternate3 {
  background-color: @label-alternate3;
  color: @label-color;
}

.label-outline-alternate3 {
  background-color: @label-color;
  color: @label-alternate3;
  border: 1px solid @label-alternate3;
}

.label-vibrant1 {
  background-color: @label-vibrant1;
  color: @label-color;
}

.label-outline-vibrant1 {
  background-color: @label-color;
  color: @label-vibrant1;
  border: 1px solid @label-vibrant1;
}

.label-vibrant2 {
  background-color: @label-vibrant2;
  color: @label-color;
}

.label-outline-vibrant2 {
  background-color: @label-color;
  color: @label-vibrant2;
  border: 1px solid @label-vibrant2;
}

.label-alert {
  .label-accent();
}

.label-critical {
  background-color: @critical;
  color: @label-color;
}

.label-outline-critical {
  background-color: @label-color;
  color: @critical;
  border: 1px solid @critical;
}

.label-ok {
  background-color: @ok;
  color: @label-color;
}

.label-outline-ok {
  background-color: @label-color;
  color: @ok;
  border: 1px solid @ok;
}

.label-warning {
  background-color: @warning;
  color: @label-color;
}

.label-outline-warning {
  background-color: @label-color;
  color: @warning;
  border: 1px solid @warning;
}

.label-error {
  .label-critical();
}

.label-default {
  .label-accent();
}

.label-grey1 {
  background-color: @grey1;
  color: @label-color;
}

.label-outline-grey1 {
  background-color: @label-color;
  color: @grey1;
  border: 1px solid @grey1;
}

.label-grey2 {
  background-color: @grey2;
  color: @label-color;
}

.label-outline-grey2 {
  background-color: @label-color;
  color: @grey2;
  border: 1px solid @grey2;
}

.label-grey3 {
  background-color: @grey3;
  color: @label-color;
}

.label-outline-grey3 {
  background-color: @label-color;
  color: @grey3;
  border: 1px solid @grey3;
}

.label-grey4 {
  background-color: @grey4;
  color: @label-color;
}

.label-outline-grey4 {
  background-color: @label-color;
  color: @grey4;
  border: 1px solid @grey4;
}

.label-grey5 {
  background-color: @grey5;
  color: @label-color;
}

.label-outline-grey5 {
  background-color: @label-color;
  color: @grey5;
  border: 1px solid @grey5;
}
