html {
  height: 100%;
  box-sizing: border-box;
}

*, *:before, *:after {
  box-sizing: inherit;
}

header {
  margin-bottom: 2em;
  background: #444;
}

header .logo {
  background: url('piwheels-logo.opt.svg') no-repeat;
  width: 75px;
  height: 75px;
  display: inline-block;
  vertical-align: middle;
}

/* Oh the silly things you can do with CSS these days... */
header .logo:hover {
  animation: 1s ease 0s 1 normal spin;
}

@keyframes spin {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(-720deg);
  }
}

header h1 {
  color: white;
  display: inline;
}

header div.top-bar, header div.top-bar ul {
  background: #444;
}

header .menu-text a {
  padding: 0;
}

.menu .button {
  font-family: "Roboto Mono", monospace;
  margin-bottom: 3px;
}

body {
  position: relative;
  margin: 0;
  min-height: 100%;
  padding-bottom: 160px;
  font-family: "Roboto", Arial, sans-serif;
}

footer {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 140px;
  background: #99999b;
  border-top: 2px solid #77777a;
}

footer .row {
  padding-top: 1em;
  padding-right: 1em;
}

footer .row img {
  float: right;
}

footer p {
  font-size: 11pt;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Roboto Condensed", Arial, sans-serif;
}

h2 {
  color: #77777a;
  overflow-wrap: anywhere;
}

a {
  color: #222;
  text-decoration: underline;
}

pre, code {
  font-family: "Roboto Mono", monospace;
}

code {
  background-color: transparent;
  border: 0;
}

ul {
  list-style-type: square;
}

table.stats {
  border-collapse: separate;
  border-radius: 5px;
  background: #8addd5;
  border: 2px solid #15bcac;
  padding: 0.5em;
  font-family: "Roboto Condensed", Arial, sans-serif;
}

table.stats tbody, table.stats tbody tr {
  background: transparent;
}

table.stats tbody th, table.stats tbody td {
  padding: 0;
}

table th, table td {
  text-align: left;
  padding: 0.25em;
}

table.empty th {
  text-align: center;
}

table tr.hidden-version, table tr.hidden-file {
  display: none;
}

table tbody tr#show-hidden-versions {
  background-color: transparent;
  text-align: center;
}

.hidden {
  display: none;
}

pre {
  background: #ffdead;
  border: 2px solid #ffbd5c;
  border-radius: 5px;
  margin: 1em 2em;
  padding: 1em;
}

#faq h3 {
  font-size: 125%;
  color: #77777a;
}

#faq a.accordion-title {
  background-color: #e6e6e6;
  color: #14679e;
  font-size: 100%;
  text-decoration: none;
  font-family: "Roboto Condensed", Arial, sans-serif;
}

#faq a.accordion-title:hover {
  background-color: #d6d6d6;
}

#status {
  font-weight: bold;
}

p.small {
  text-align: right;
}

ul#latest-blog-posts li a {
  font-weight: bold;
}

table.package-issues {
  width: auto;
  max-width: 100%;
  border-collapse: separate;
}

table.package-issues a.button {
  width: 100px;
  margin: 0;
  text-decoration: none;
}

table.package-issues tbody tr:nth-child(2n) {
  background-color: #fff;
}

.prerelease, .yanked {
  border-radius: 3px;
  text-transform: uppercase;
  font-size: 10px;
  padding: 2px 6px;
  margin-left: 10px;
}

.prerelease {
  background: #ffdf76;
}

.yanked {
  background: #d52d40;
  color: white;
}

th.center, td.center {
  text-align: center;
}

.buildpassed, .buildfailed {
  text-align: center;
  line-height: 20px;
  font-size: 40px;
}

.buildpassed {
  background: url('success.png') center no-repeat;
}

.buildfailed {
  background: url('fail.png') center no-repeat;
}

.buildskipped {
  background: url('skip.png') center no-repeat;
}

.button.small {
  min-width: 20px;
  text-decoration: none;
  margin: 0;
  padding: 5px;
}

tr table#versions tbody tr:nth-child(2n),
tr table#versions tbody tr:nth-child(2n+1) {
  background: transparent;
}

tr table.files tbody tr:nth-child(2n),
tr table.files tbody tr:nth-child(2n+1) {
  background: transparent;
}

tr table#versions td.version {
  font-weight: bold;
}

tr table.files {
  margin-bottom: 0;
}

tr table.files tbody {
  border: 0;
}
