table[data-sortable] {
  border-collapse: collapse;
}

table[data-sortable] th {
  vertical-align: bottom;
}

table[data-sortable] th span {
  border-bottom: 2px solid black;
  display: flex;
  font-family: var(--heading);
  font-size: 0.85rem;
  font-weight: bold;
  text-transform: uppercase;
}

table[data-sortable] th, table[data-sortable] td {
  padding: 1rem 0.5rem;
}

table[data-sortable] th:not([data-sortable="false"]) {
  cursor: pointer;
}

table[data-sortable] th:not([data-sortable="false"]) span:after {
  color: var(--blue);
  content: "\25BE";
  display: block;
  margin-left: 1rem;
}

table[data-sortable] th[data-sorted="true"] span {
  background-color: #F4F4F4;
  padding: 0.5rem 0.5rem 0 0.5rem;
}

table[data-sortable] th:not([data-sortable="false"]):hover span:after,
table[data-sortable] th[data-sorted="true"] span:after {
  color: black;
}

table[data-sortable] th[data-sorted-direction="descending"] span:after {
  transform: rotateZ(180deg);
}
