header, article, section, figure, aside, footer {
  display: block;
}

a {
  text-decoration: none;
}

#rss, #editable {
  background: black -1px 1px no-repeat;
  border-radius: 6px;
  color: transparent;
  display: block;
  font-size:0;
  height: 32px;
  outline: 0;
  padding: 0;
  width: 32px;
}

#rss {
  background-image: url(rss.png);
}

#editable {
  background-image: url(editable.png);
}

#ribbon {
  background: linear-gradient(#000, #111);
  box-shadow: 0 0 1em #888;
  overflow: hidden;
  position: fixed;
  right: -3em;
  top: 2em;
  transform: rotate(45deg);
}

#ribbon a {
  border: 1px solid #ccc;
  color: #fff;
  display: block;
  font: bold .65em sans-serif;
  margin: 0.05em 0 0.075em 0;
  padding: 0.5em 3.5em;
  text-align: center;
  text-decoration: none;
  text-shadow: 0 0 0.5em #444;
}

h2 small {
  float: right;
  opacity: 0.8;
  font-size: 0.8em;
  line-height: 1.5em;
}

article footer {
  font-size: 0.8em;
  opacity: 0.7;
  padding-left: 20px;
}

article footer div {
  padding: 0.2em;
}

article footer div > a:first-child {
  margin-right: 0.5em;
}

article footer div > * {
  display: inline;
}

.ref {
  font-size: x-small;
  vertical-align: top;
}

@media print {
  body > nav > *, body > footer {
    display: none;
  }
  html, body, body {
    background: none !important;
  }
  pre {
    page-break-inside: avoid;
    font-size: 90%;
  }
}
