table.table-mobile {
  position: relative;
}
table.table-mobile.table-dark td:after {
  filter: invert(1);
}
table.table-mobile thead {
  text-align: left;
}
@media screen and (max-width: 38rem) {
  table.table-mobile thead tr {
    display: block;
  }
  table.table-mobile thead th {
    display: none;
  }
}
@media screen and (max-width: 38rem) {
  table.table-mobile tbody td {
    display: block;
    position: relative;
    padding: 0.6rem;
  }
  table.table-mobile tbody td:before {
    content: attr(data-label);
    font-weight: bold;
    margin-right: 0.5rem;
  }
  table.table-mobile tbody td:after {
    content: " ";
    position: absolute;
    right: 1.2rem;
    left: auto;
    top: 0.8rem;
    bottom: auto;
    height: 10px;
    width: 10px;
    border-bottom: solid 1px #333;
    border-right: solid 1px #333;
    transform: rotate(45deg);
    pointer-events: none;
  }
  table.table-mobile tbody td:not(:first-child) {
    position: relative;
    height: 0;
    padding: 0 1rem;
    opacity: 0;
    overflow: hidden;
  }
  table.table-mobile tbody td:not(:first-child):before {
    content: attr(data-label);
    font-weight: bold;
    font-size: 80%;
  }
  table.table-mobile tbody td:not(:first-child):after {
    content: none;
  }
  table.table-mobile tbody tr.open {
    box-shadow: inset 0.2rem 0 0 rgba(0, 0, 0, 0.2);
  }
  table.table-mobile tbody tr.open td {
    height: auto;
    overflow: visible;
    opacity: 1;
  }
  table.table-mobile tbody tr.open td:after {
    border-bottom: none;
    border-right: none;
    border-top: solid 1px black;
    border-left: solid 1px black;
    top: 1rem;
  }
  table.table-mobile tbody tr.open td:not(:first-child) {
    padding: 0.5rem;
  }
}