/* General */
.noselect {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Background */
svg .chart rect.background {
  fill: white;
}

/* Series legend */
.legend {
  position: absolute;
  top: 0;
  padding-left: 20px;
}

.legend div.series {
  float: left;
  font-size: 12px;
  margin: 0 10px 0 0;
  cursor: pointer;
}

/* Grid */
svg .grid line {
  stroke: #eee;
  stroke-width: 1px;
  pointer-events: none;
}

/* Bars */
svg .bars .series rect.hover {
  stroke: #666;
  stroke-width: 2px;
}

/* Lines */
svg .lines .series path {
  fill: none;
  stroke-width: 2px;
}

/* Areas */
svg .areas path {
  cursor: pointer;
}

/* Axes */
svg .axis path, .axis line {
  stroke: #ccc;
  fill: none;
  shape-rendering: crispEdges;
}
svg .axis text {
  fill: #666;
  font-size: 10px;
}
svg .axes text.axisLabel {
  font-size: 12px;
  fill: #666;
}

/* info popup */
.info {
  display: none;
  position: absolute;
  background-color: white;
  opacity: 0.9;
  font-size: 12px;
  padding: 5px;
  border: 1px solid #eee;
  line-height: 150%;
  pointer-events: none;
}
.info.visible {
  display: block;
}

/* cursor */
svg .cursor {
  display: none;
  stroke: #999;
  stroke-width: 1;
  opacity: 0.5;
}
svg .cursor.visible {
  display: block;
}

svg .hoverCircles circle {
  display: none;
}
svg .hoverCircles circle.visible {
  display: block;
}