html {
  /* if a target is used (e.g. #ReachSafety, do not put it on top of page, but at 25% from the top. */
  /* this is necessary to avoid targets from being hidden by table headers, and 25% makes the row
  pop right into the user's eye. */
  scroll-padding-top: 25%;
}
body {
  font-family: sans-serif;
}
table#scoretable {
  font-size: 70%;
  margin-top: 25px;
  position: relative;
  overflow: auto; /* necessary for position: sticky to work in Chrome */
  border-spacing: 0;
}
table#scoretable td:first-child, table#scoretable th:first-child {
  position: sticky;
  left: 0;
  background-color: white;
  z-index: 2; /* less than z-index of thead tr to put that on top during overlap */
}
table#scoretable thead tr th, table#scoretable thead tr td {
  position: sticky;
  top: 0;
  z-index: 3;
}
/* Put first cell of first row ('Participants') even higher so that participants disappear behind it on horizontal scroll */
table#scoretable thead tr th:first-child, table#scoretable thead tr td:first-child {
  z-index: 4;
}

.highlighted, table#scoretable thead th.highlighted, table#scoretable thead td.highlighted {
  background-color: aliceblue;
}

table#scoretable tbody tr:target, table#scoretable tbody tr:target td {
  background-color: #ffd;
}

table#scoretable tbody tr:hover, table#scoretable tbody tr:hover td, table#scoretable tbody tr:hover th {
  background-color: aliceblue;
}


table#ranktable {
  font-size: 70%;
  width: 100%;
}
table#ranktable td.rank {
  width: 33%;
}
tr {
  text-align: center;
}
tr.score td {
  border-top: 1pt solid black;
}
tr.cputime {
  font-size: 80%;
}
thead th, thead td, tr.head td, tr.head th {
  background: white;
  border-top: 3pt solid black;
  border-bottom: 3pt solid black;
  font-weight: bold;
}
tr.head, thead tr {
  font-size: 150%;
}
tr.main {
  font-weight: bold;
}
tr.main.score td {
  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, th {
  padding: 0px 5px;
}
/* we don't add this right border for <th>, so that the participant-header has no border next to 'Participants'.
  This visual distinction from the remaining first column makes it clearer that 'Participants'
  is only the description for the first row, not for the first column.
  */
table#scoretable td:first-child {
  border-right: 2pt solid black;
  text-align: left;
}
table#scoretable thead td:first-child {
  border-right: none;
}
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 !important;
  font-size: 170%;
  font-weight: bold;
}
.silver {
  text-align: center;
  background: #C0C0C0 !important;
  font-size: 150%;
  font-weight: bold;
}
.bronze {
  text-align: center;
  background: #8C7853 !important;
  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;
}

.tooltip .smacktooltiptext {
  visibility: hidden;
  width: 20em;
  font-size: 70%;
  font-weight: normal;
  background-color: black;
  text-align: center;
  color: #fff;
  padding: 1em 0;
  border-radius: 6px;
  position: absolute;
  z-index: 1;
}
.tooltip:hover .smacktooltiptext {
  visibility: visible;
}
.tooltip .smacktooltiptext:before { content: 'The verifier SMACK has been disqualified from several categories because the verifier uses file names of verification tasks to set parameters of the verification engine in an internal wrapper script, more precisely: (a) loop bound of bounded model checking is set depending on file names, (b) returned result is set without performing actual verification work, (c) context-switch bound and mode is set depending on file names, (d) internal time limit is set depending on file names, and (e) missing support for strcpy is detected based on file names for some verification tasks.';
}
.tooltip .deagletooltiptext {
  visibility: hidden;
  width: 20em;
  font-size: 70%;
  font-weight: normal;
  background-color: black;
  text-align: center;
  color: #fff;
  padding: 1em 0;
  border-radius: 6px;
  position: absolute;
  z-index: 1;
}
.tooltip:hover .deagletooltiptext {
  visibility: visible;
}
.tooltip .deagletooltiptext:before { content: 'The verifier Deagle has been disqualified from several categories because the verifier uses identifiers contained in the verification task to identify groups of tasks to set parameters of the verification engine. More precisely: (a) Deagle identifies the presence of variables named â€œthreads_totalâ€. (b) In such cases, it uses a special unwinding limit. (c) In such cases, it does not generate unwinding assumptions.';
}
#hide-base-categories-label {
  font-weight: bold;
}
