.axis {
  font: 10px sans-serif;
}
.axis path,
.axis line {
  fill: none;
  stroke: #D4D8DA;
  stroke-width: 2px;
  shape-rendering: crispEdges;
}
.line {
  fill: none;
  stroke: steelblue;
  stroke-width: 2px;
}
.overlay {
  fill: none;
  pointer-events: all;
}
.focus circle {
  fill: #F1F3F3;
  stroke: #6F257F;
  stroke-width: 5px;
}
.hover-line {
  stroke: #6F257F;
  stroke-width: 2px;
  stroke-dasharray: 3, 3;
}
.app {
  display: flex;
  justify-content: center;
  margin: 50px;
  align-items: center;
  flex-direction: column;
}
.app .reset {
  align-self: center;
  font-size: 40px;
  font-weight: bold;
  cursor: pointer;
}
.app .controls {
  display: flex;
  width: 800px;
  justify-content: space-around;
  font-size: 30px;
  cursor: pointer;
  margin: 20px;
  border: 1px solid;
  color: steelblue;
}
.app .controls > div {
  padding: 9px;
}
.app .controls .btn:not(:last-child) {
  border-right: 1px solid steelblue;
}
.tooltip {
  position: relative;
  display: flex;
  width: 170px;
  height: 45px;
  pointer-events: none;
  background: white;
  justify-content: center;
  align-items: center;
  visibility: hidden;
  flex-direction: column;
  border: 2px solid steelblue;
}
.tooltip > span {
  padding: 5px;
}
