div.meter-element {
  display: inline-block;
  height: 1em;
  width: 5em;
  vertical-align: -0.2em;

  background: -moz-linear-gradient(top, #e6e6e6, #e6e6e6, #eeeeee 20%, #cccccc 45%, #cccccc 55%);
}

div.meter-optimum {
  float: none ! important;

  height: 100%;
  /*
   * We can't apply the following style to the reference because it will have
   * underisable effectes:
   * width: 100%;
   */

  /* green. */
  background: -moz-linear-gradient(top, #ad7, #ad7, #cea 20%, #7a3 45%, #7a3 55%);
}

div.meter-sub-optimum {
  float: none ! important;

  height: 100%;
  /*
   * We can't apply the following style to the reference because it will have
   * underisable effectes:
   * width: 100%;
   */

  /* orange. */
  background: -moz-linear-gradient(top, #fe7, #fe7, #ffc 20%, #db3 45%, #db3 55%);
}

div.meter-sub-sub-optimum {
  float: none ! important;

  height: 100%;
  /*
   * We can't apply the following style to the reference because it will have
   * underisable effectes:
   * width: 100%;
   */

  /* red. */
  background: -moz-linear-gradient(top, #f77, #f77, #fcc 20%, #d44 45%, #d44 55%);
}

meter, meter::-moz-meter-bar, div.meter-element, div.meter-optimum, div.meter-sub-optimum, div.meter-sub-sub-optimum {
  -moz-appearance: none;
}
