table.navigation td {
  padding-left: 10px;
  padding-right: 10px;
}

table.navigation th {
  text-align: right;
}

table td.number {
  text-align: right;
}

span.error {
  color: red;
  font-weight: bold;
}

table.lookup {
  background-color: #cee7f0;
  padding: 5px;
}

table.instances th, td {
  white-space: nowrap;
  padding-left: 5px;
  padding-right: 5px;
}

table.instances tr {
  padding-top: 1px;
  padding-bottom: 1px;
}

table.instances tr:nth-child(even) {
  background-color: #eeeeee;
}

table.instances td.strategy {
  background-color: #fafafa;
  padding-top: 5px;
  padding-bottom: 5px;
}

ul.lozenge-list li {
  margin-bottom: 5px;
}

span.non-cancellative-lozenge {
  background-color: hsl(0, 70%, 90%);
  box-shadow: 0 0 0 1.5px hsl(0, 70%, 80%);
  border-radius: 3px;
}

span.cancellative-lozenge {
  background-color: hsl(51, 70%, 90%);
  box-shadow: 0 0 0 1.5px hsl(51, 70%, 80%);
  border-radius: 3px;
}

span.group-lozenge {
  background-color: hsl(102, 70%, 90%);
  box-shadow: 0 0 0 1.5px hsl(102, 70%, 80%);
  border-radius: 3px;
}

span.monoid-lozenge {
  background-color: hsl(0, 0%, 90%);
  box-shadow: 0 0 0 1.5px hsl(0, 0%, 80%);
  border-radius: 3px;
}

span.commutative-lozenge {
  background-color: hsl(205, 70%, 90%);
  box-shadow: 0 0 0 1.5px hsl(205, 70%, 80%);
  border-radius: 3px;
}

span.finite-lozenge {
  background-color: hsl(257, 70%, 90%);
  box-shadow: 0 0 0 1.5px hsl(257, 70%, 80%);
  border-radius: 3px;
}

span.infinite-lozenge {
  background-color: hsl(308, 70%, 90%);
  box-shadow: 0 0 0 1.5px hsl(308, 70%, 80%);
  border-radius: 3px;
}

table.profile td:nth-child(even) {
  background-color: #eeeeee;
}

table.fcrs td {
  padding-left: 5px;
  padding-right: 5px;
}

table.profile th {
  padding-right: 3px;
  text-align: right;
  vertical-align: bottom;
}

table.profile td {
  padding-left: 3px;
  padding-right: 3px;
  vertical-align: bottom;
}

table.cayley { border-collapse: collapse; }
table.cayley td, table.cayley th { font-weight: normal; text-align: left; border: 1px solid black; padding: 5pt; }

table.cayley td.idempotent, table.cayley th.idempotent { font-weight: bold; }

#plainrules { display: none; }
#plainreduced { display: none; }

pre { background-color: #eeeeee; }
table.normalform {
  background-color: #cee7f0;
  padding: 5px;
}

table.normalform th {
  text-align: right;
  white-space: nowrap;
  vertical-align: baseline;
  padding-right: 10px;
}

.path {
  padding-left: 1em;
  border-spacing: 1em 0px;
  background-color: #eeeeee;
}

.step {
  padding-left: 2em;
}

.overlap {
  display: inline-grid;
  align-items: baseline;
  padding-left: 2em;
  padding-right: 2em;
  background-color: #eeeeee;
}

.left {
  text-align: right;
  grid-column: 1;
}

.right {
  text-align: left;
  grid-column: 2;
}

table.factors th {
  background-color: #eeeeee;
}

table.factors th,
table.factors td {
  padding-left: 5px;
  padding-right: 5px;
}

span.factor {
  box-shadow: 0 0 0 1.5px #966fd6;
  border-radius: 3px;
}