:root {
  --upper-bound-green: #c7ffba;
  --benchmark-blue: #bae1ff;
  --lookup-orange: #ffd18c;
}

.upper-bound-performance {
  background-color: var(--upper-bound-green);
}

.benchmark-performance {
  background-color: var(--benchmark-blue);
}

.uses-lookup {
  background-color: var(--lookup-orange);
}

.centre-table {
  display: flex;
  justify-content: center;
}

.centre-table table {
  margin-right: 2em;
}

.data-table {
  text-align: center;
}

.data-table th {
  font-weight: bold;
  min-width: 2em;
  vertical-align: middle;
}

.data-table td {
  min-width: 4em;
  border: 2px solid transparent;
}

.data-table td:hover {
  border: 2px solid;
}

th.vertical-title {
  position: relative;
}

th.vertical-title div {
  position: absolute;
  transform: translate(-50%, -50%) rotate(-90deg);
  top: 50%;
  left: 50%;
  white-space: nowrap;
}

