table#character-selection {
  margin-inline: auto;
}
table#character-selection thead th {
  padding-bottom: 0.5rem;
}
table#character-selection tbody td {
  padding-top: 0.5rem;
}
table#character-selection tbody td + td {
  padding-left: 0.5rem;
}
table#character-selection label {
  white-space: nowrap;
}

button#add-character {
  margin: 0 auto;
  width: 100%;
}

#filters h3 {
  font-size: 1rem;
}

#quantity-filter {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

#reset-filters {
  margin-top: 2em;
}

#encounters {
  display: grid;
  line-height: 1.5;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

.encounter-card {
  padding: 1rem 2rem;
  display: grid;
  grid-template-columns: 3fr 5fr;
}
.encounter-card:nth-child(4n+1), .encounter-card:nth-child(4n+4) {
  background: var(--primary-color-light-70);
}
.encounter-card:nth-child(4n+2), .encounter-card:nth-child(4n+3) {
  background: var(--primary-color-light-90);
}

.evaluation {
  align-self: start;
  padding-right: 1rem;
  line-height: 1.25;
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 1em;
  row-gap: 0.5em;
}

.difficulty {
  grid-column: span 2;
}

.heading {
  font-size: 0.8125rem;
  font-style: italic;
  font-weight: bold;
}

.challenges {
  border-left: 1px solid rgba(0, 0, 0, 0.1);
  padding-left: 1rem;
  display: flex;
  flex-direction: column;
}

.challenge-xp {
  font-size: 0.8125rem;
}

@media screen and (max-width: 640px) {
  #encounters {
    grid-template-columns: 1fr;
  }
  .encounter-card:nth-child(2n+1) {
    background: var(--primary-color-light-70);
  }
  .encounter-card:nth-child(2n+2) {
    background: var(--primary-color-light-90);
  }
}
