body {
  font-family: sans-serif;
}
table#scoretable { 
  font-size: 70%;
  border-collapse: collapse; 
  margin-top: 25px;
  border-bottom: 3pt solid black;
}
table#ranktable {
  font-size: 70%;
  width: 100%;
}
table#ranktable td.rank {
  width: 33%;
}
tr {
  text-align: center;
}
tr.score {
  border-top: 1pt solid black;
}
tr.cputime {
  font-size: 80%;
}
thead, tr.head {
  background: white;
  border-top: 3pt solid black;
  border-bottom: 3pt solid black;
  font-weight: bold;
}
tr.head {
  font-size: 150%;
}
tr.main {
  font-weight: bold;
}
tr.main.score {
  border-top: 3pt solid black;
  font-size: 150%;
}
tr.main.cputime {
  font-size: 100%;
}
table#scoretable tr.sub > td:first-child {
  padding-left: 25px;
}
td {
  padding: 0px 5px;
}
table#scoretable td:first-child {
  border-right: 2pt solid black;
  text-align: left;
}
td.empty::before {
  content: '\2013';
}
td.value a, td.value a:link, td.value a:visited {
  text-decoration: underline;
  color: blue;
  white-space: nowrap;
}
td.value a:hover {
  text-decoration: underline;
  font-weight: bold;
  color: blue;
  white-space: nowrap;
}
.gold {
  text-align: center;
  background: #FFD700;
  font-size: 170%;
  font-weight: bold;
}
.silver {
  text-align: center;
  background: #C0C0C0;
  font-size: 150%;
  font-weight: bold;
}
.bronze {
  text-align: center;
  background: #8C7853;
  font-size: 130%;
  font-weight: bold;
}
span.gold {
  font-size: 130%;
}
span.silver {
  font-size: 115%;
}
span.bronze {
  font-size: 100%;
}
span.stats {
  font-size: 80%;
  font-weight: normal;
}
span.title {
  font-size: 200%;
}
span.rank a {
  color: black;
}
img.plot {
  width: 100%;
}
img.tinyplot {
  width: 150px;
}

