html {
  background-color: var(--bg);
  color: var(--default-color);
  font-family: Roobert, Helvetica, Arial, sans-serif;
  font-size: 1em;
}

table, th, td {
  border-collapse: collapse;
}

.content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.section-wrap {
  width: 90vw;
  max-width: 640px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: var(--bg-light);
}

.section {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.row-wrap-section-wrap {
  width: 80vw;
  max-width: 1600px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  overflow-x: scroll;
  background-color: var(--bg-light);
}

.row-wrap-section {
  display: flex;
  flex-flow: row wrap;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 75px;
  justify-content: space-around;
}

#lookup-form {
  margin: 10px 0px 10px 0px;
}

#links-wrap {
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: center;
}

.link-section {
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: center;
  margin-bottom: 10px;
}

.link-section-title {
  font-size: 1.05em;
  font-weight: bold;
}

.main-link {
  font-size: 1em;
  font-weight: bold;
}

.sublink {
  font-size: 0.8em;
}

#stats-wrap {
  min-height: 640px;
}

#stats {
  margin: 24px 0px 24px 0px;
}

#links-wrap {
  margin: 10px 0px 10px 0px;
}

#links {
  margin: 24px 0px 24px 0px;
}

#leaderboards {
  margin: 48px 0px 48px 0px;
}

.full-section-title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 10px;
}

.section-title, .row-wrap-section-title {
  font-size: 1.5em;
}

.row-wrap-section-title {
  flex-basis: 100%;
  text-align: center;
}

.section-subtitle, .row-wrap-section-subtitle {
  font-size: 1.15em;
  margin-bottom: 12px;
}

.row-wrap-section-subtitle {
  flex-basis: 100%;
  text-align: center;
}

.section-note, .row-wrap-section-note {
  font-size: 0.9em;
  margin-bottom: 12px;
}

.row-wrap-section-note {
  flex-basis: 100%;
  text-align: center;
}

.leaderboard-note {
  font-size: 0.75em;
  flex-basis: 100%;
  text-align: center;
}

a, a:visited {
  color: var(--accent-color);
}

#stat-table, #counter-table {
  width: 80%;
}

#stat-table {
  margin-bottom: 1.25em;
}

.stat-item {
  box-sizing: border-box;
  padding: 5px 5px 5px 5px;
  width: 80%;
}

.stat-breakdown {
  overflow-y: hidden;
  max-height: 0px;

  width: 100%;
  padding-bottom: 1em;

  transition-property: max-height;
  transition-duration: 0.5s;
  transition-timing-function: ease-in-out;
}

.stat-breakdown td {
  width: 100%;

  overflow-y: hidden;
  max-height: inherit;
}

.stat-breakdown-container {
  width: 100%;
  padding-left: 1.25em;
  box-sizing: border-box;

  overflow-y: hidden;
  max-height: inherit;
}

.stat-breakdown-table {
  box-sizing: border-box;
  margin-bottom: 18px;
}

.stat-breakdown .stat-item {
  padding-left: 2em;
}

.leaderboard-item {
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: center;
  margin-bottom: 25px;
}

.leaderboard-label {
  font-size: 1.15em;
  padding-top: 16px;
  padding-left: 16px;
}

.stat-leaderboard {
  text-align: right;
  border-collapse: collapse;
  margin-top: 12px;
  margin-bottom: 12px;
}

.stat-leaderboard td {
  padding: 2px 24px;
  font-size: 1em;
  font-weight: normal !important;
}

.stat-leaderboard td:first-child {
  padding: 2px 16px 2px 8px !important;
}

.stat-leaderboard td:last-child {
  padding: 2px 8px 2px 16px !important;
}

.stat-leaderboard tr:nth-child(odd) {
  background: #FFFFFF10;
}

.expand-stat {
  font-weight: bold;

  text-decoration: underline;
  cursor: pointer;

  padding: 0 0.5em;
}

@media screen and ( min-width: 1200px ) {
  .leaderboard-item { flex-basis: 33%; }                    /* forces three items to a line */
}

@media screen and ( max-width: 1200px ) {
  .leaderboard-item { flex-basis: 50%; }                    /* forces three items to a line */
}

@media screen and ( max-width: 800px ) {
  .leaderboard-item { 
    font-size: 10pt; 
    flex-basis: 100%;  /* forces two items to a line */
  }
}

.single-line {
  flex-basis: 100%;
  display:flex;
  flex-direction: row;
  justify-content: center;
  margin-bottom: 50px;
}

.stat-item:hover {
  background-color: #ffffff20;
}

.stat-label {
  padding-left: 0.5em;
}

.stat-value {
  text-align: right;
  color: var(--accent-color);
}

#first-msg-value, #last-msg-value {
  text-align: left!important;
  padding-left: 2em;
}

.new-line-stat {
  display: block;
  padding: 5px 5px 5px 5px;
  max-width: 75%;
}

.new-line-stat-value {
  color: var(--accent-color);
  margin: 5px;
}

.emote-img {
  height: 28px;
  width: auto;
  margin: 0 1px 0 1px;
}