body {
  margin: 0;
  padding: 0;
}

h1, h2, h3 {
  margin: 1em 1em 1em 1em;
}

nav {
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  font-weight: bold;
  background-color: #333333;
}

nav ul {
  display: flex;
  gap: 2em;
}

nav ul li {
  list-style: none;
  display: flex;
}

nav ul li a {
  color: white;
  text-decoration: none;
}

img.type {
  height: 1em;
  width: 1em;
  vertical-align: middle;
}

table.evenshade {
  border-collapse: collapse;
}

table.evenshade tr:nth-child(even) {
  background-color: rgba(192, 192, 192, 0.8);
}

/* mons sorted by foo for various leagues */
table.bounded tr :nth-child(1) {
  text-align: center;
}

table.bounded tr :nth-child(n+3) {
  text-align: right;
  padding: 0 0 0 1em;
}

table.dynas {
  margin: 0 0 0 1em;
}

/* best dynamax attackers (by type and unified) */
table.dynas tr :nth-child(1) {
  text-align: center;
}

table.dynas tr :nth-child(n+4) {
  text-align: right;
  padding: 0 0 0 1em;
}

table.nofoo {
  padding: 0 0 0 1em;
}

table.nofoo tr :nth-child(1) { /* type */
  text-align: center;
}

table.goodhundos {
  margin: 0 0 0 1em;
}

table.goodhundos tr :nth-child(1) { /* type */
  text-align: center;
}

table.goodhundos tr :nth-child(2) { /* form */
  text-align: left;
}

table.goodhundos tr :nth-child(n+3):nth-child(-n+10) { /* stats */
  text-align: right;
  padding: 0 0 0 1em;
}

#functional {
  margin: 0 0 0 1em;
}

#functional tr>:nth-child(1) { /* type */
  text-align: center;
}

#functional tr>:nth-child(2) { /* form */
  text-align: left;
}

#functional tr>:nth-child(n+3) { /* configs */
  text-align: right;
  padding: 0 0 0 1em;
}

#teffect {
  margin: 0 1em 0 1em;
}

#teffect tr :nth-child(1) {
  text-align: center;
}

table.cattack3x3 tr>:nth-child(2) { /* P_-3 */
  text-align: right;
}

table.cattack3x3 tr>:nth-child(n+2) { /* everything but "STAB?" */
  text-align: right;
  padding: 0 0 0 1em;
}

table.fattack3x3 tr>:nth-child(2) { /* Turns */
  text-align: right;
}

table.fattack3x3 tr>:nth-child(n+3) { /* P_-3-- */
  text-align: right;
  padding: 0 0 0 1em;
}

table.cattackNx1 { /* attack page */
  margin: 0 1em 0 1em;
}

table.cattackNx1 tr>:nth-child(2) { /* Turns */
  text-align: right;
}

table.cattackNx1 tr>:nth-child(n+3) { /* everything but "STAB?" */
  text-align: right;
  padding: 0 0 0 1em;
}

table.fattackNx1 { /* attack page */
  margin: 0 1em 0 1em;
}

table.fattackNx1 tr>:nth-child(2) { /* Turns */
  text-align: right;
}

table.fattackNx1 tr>:nth-child(n+3) { /* P_-3-- */
  text-align: right;
  padding: 0 0 0 1em;
}

#coverset {
  margin: 0 1em 0 1em;
}

#allforms { /* all forms table */
  margin: 0 1em 0 1em;
}

#allforms tr>:nth-child(1) { /* dex # */
  font-size: large;
}

#allforms tr>:nth-child(3) { /* form */
  font-size: large;
}

img.monradar {
  width: 480px;
  height: auto;
}

#leaguestats { /* league summaries, *not* mon pages */
  background-color: #ddd;
  margin: 0 auto 2em auto;
}

#leaguestats tr>:nth-child(n+2) { /* stats */
  text-align: right;
  padding: 0 0 0 1em;
}

#tablecontainer {
  width: fit-content;
  margin: 0 1em 0 1em;
}

#stateffect { /* attack pages */
  font-weight: bold;
  text-align: center;
  background-color: rgb(16, 16, 16, 1);
  color: white;
  font-size: 1.5em;
}

div.intro {
  text-align: justify;
  text-justify: inter-word;
  font-size: large;
  padding: 1em;
}

.atktext { /* generic text on attack pages */
  padding: 0 1em 0 1em;
}

#basics { /* mon pages */
  padding: 0 1em 0 1em;
}

#transitions { /* mon pages */
  padding: 0 1em 0 1em;
}

#atkeffect { /* mon pages */
  padding: 0 1em 0 1em;
}

table.fastattacks, table.chargedattacks {
  margin: 0 1em 1em 1em;
}

table.fastattacks tr>:nth-child(n+2) { /* mon pages, attack */
  text-align: left;
}

table.chargedattacks tr>:nth-child(n+2) { /* mon pages, attack */
  text-align: left;
}

table.fastattacks tr>:nth-child(n+3) { /* mon pages, stats */
  text-align: right;
  padding: 0 0 0 1em;
}

table.chargedattacks tr>:nth-child(n+3) { /* mon pages, stats */
  text-align: right;
  padding: 0 0 0 1em;
}

.monleaguestats { /* mon pages */
  padding: 0 1em 1em 1em;
}

.monleaguestats tr>:nth-child(n+2) { /* stats */
  text-align: right;
  padding: 0 0 0 1em;
}

.monivcontainer { /* mon page, per league */
  padding: 0 0 0 1em;
}

table.monivs tr :nth-child(n+2) {
  text-align: right;
  padding: 0 0 0 1em;
}

#philo {
  background-color: #ddd;
}

/* type effectiveness colors */
.teneg3 {
  background-color: rgba(208, 255, 208, 0.75);
  text-align: center;
}

.teneg2 {
  background-color: rgba(224, 255, 224, 0.75);
  text-align: center;
}

.teneg1 {
  background-color: rgba(240, 255, 240, 0.75);
  text-align: center;
}

.tepos0 {
  background-color: rgba(255, 255, 255, 0.75);
  text-align: center;
}

.tepos1 {
  background-color: rgba(255, 240, 240, 0.75);
  text-align: center;
}

.tepos2 {
  background-color: rgba(255, 224, 224, 0.75);
  text-align: center;
}

/* there is no positive 3, but this is used for inverted negative 3 */
.tepos3 {
  background-color: rgba(255, 208, 208, 0.75);
  text-align: center;
}
