* { box-sizing: border-box; }

.dashboards {
  padding: 0.5em;
}
.dashboards > a {
  padding: 0.5em;
  background: #eee;
  color: blue;
}

body {
  margin: 0;
  font-family: sans-serif;
  padding: 0; margin: 0;
  color: #222;
  display: inline-block;
  min-width: 100%;
}

.container {
  max-width: 900px;
  margin: 0 auto;
}

p, pre, ul, ol { margin: 20px; }

h1, h2, h3, h4 {
  margin: 20px 0;
  padding: 0;
  color: #375EAB;
  font-weight: bold;
}
 
h1 { font-size: 24px; }
h2 { font-size: 20px; }
h3 { font-size: 20px; }
h4 { font-size: 16px; }
 
h2 { background: #E0EBF5; padding: 2px 5px; }
h3, h4 { margin: 20px 5px; }
 
dl, dd { font-size: 14px; }
dl { margin: 20px; }
dd { margin: 2px 20px; }
 
.clear {
  clear: both;
}
 
.button {
  padding: 10px;
  
  color: #222;
  border: 1px solid #375EAB;
  background: #E0EBF5;
  
  border-radius: 5px;
  
  cursor: pointer;
  
  margin-left: 60px;
}
 
/* navigation bar */
 
#topbar {
  padding: 10px 10px;
  background: #E0EBF5;
}
 
#topbar h1 {
  display: inline;
  margin: 0;
  padding-top: 5px;
}
#topbar h1 a {
  color: #375EAB;
  text-decoration: none;
}
#topbar h1 a:hover {
  text-decoration: underline;
}
 
#topbar nav { 
  display: inline-block;
  margin-left: 20px;
}
#topbar nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
#topbar nav ul li {
  display: inline-block;
}
#topbar nav a {
  display: inline-block;
  padding: 10px;
  
  margin: 0;
  margin-right: 5px;
 
  color: white;
  background: #375EAB;
    
  text-decoration: none;
  font-size: 16px;
    
  border: 1px solid #375EAB;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}
 
.page {
  margin-top: 20px;
}
 
/* settings panels */
aside {
  margin-top: 5px;
}
 
.panel {
  border: 1px solid #aaa;
  border-radius: 5px;
  margin-bottom: 5px;
}
 
.panel h1 {
  font-size: 16px;
  margin: 0;
  padding: 2px 8px;
}
 
.panel select {
  padding: 5px;
  border: 0;
  width: 100%;
}
 
/* results table */
 
table {
  margin: 5px;
  border-collapse: collapse;
  font-size: 11px;
}
 
table td, table th, table td, table th {
  vertical-align: top;
  padding: 2px 6px;
}
 
table tr:nth-child(2n+1) {
  background: #F4F4F4;
}

table tr.commit:hover {
  background-color: #ffff99 !important;
}
 
table thead tr {
  background: #fff !important;
}
 
/* build results */
 
.build td, .build th, .packages td, .packages th {
  vertical-align: top;
  padding: 2px 4px;
  font-size: 10pt;
}
      
.build .hash {
  font-family: monospace;
  font-size: 9pt;
}
 
.build .result {
  text-align: center;
  width: 2em;
}
 
.build .col-desc, .build .col-result, .build .col-metric, .build .col-numresults {
  border-right: 1px solid #ccc;
}

.build .row-commit {
  border-top: 2px solid #ccc;
}

.build .arch {
  font-size: 83%;
  font-weight: normal;
}

.build .time {
  color: #666;
}

.build .ok {
  font-size: 83%;
}
.build a.ok {
  color: #000;
  text-decoration: none;
}

.build .desc, .build .time, .build .user {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
 
.build .desc {
  max-width: 150px;
}

.build .user {
  max-width: 50px;
}

tr.subheading2 th {
  max-width: 4em;
  overflow: hidden;
  word-wrap: none;
}
 
.good   { text-decoration: none; color: #000000; border: 2px solid #00E700}
.bad    { text-decoration: none; text-shadow: 1px 1px 0 #000000; color: #FFFFFF; background: #E70000;}
.noise  { text-decoration: none; color: #888; }
.fail   { color: #C00; }

/* pagination */
 
.paginate nav {
  padding: 0.5em;
  margin: 10px 0;
}
 
.paginate nav a {
  padding: 0.5em;
  background: #E0EBF5;
  color: blue;

  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}
 
.paginate nav a.inactive {
  color: #888;
  cursor: default;
  text-decoration: none;
}

/* diffs */
 
.diff-meta {
  font-family: monospace;
  margin-bottom: 10px;
}
 
.diff-container {
  padding: 10px;
}
 
.diff table .metric {
  font-weight: bold;
}
 
.diff {
  border: 1px solid #aaa;
  border-radius: 5px;
  margin-bottom: 5px;
  margin-right: 10px;
  float: left;
}
 
.diff h1 {
  font-size: 16px;
  margin: 0;
  padding: 2px 8px;
}

/* positioning elements */
 
.page {
  position: relative;
  width: 100%;
}
 
aside {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 200px;
}
 
.main-content {
  position: absolute;
  top: 0;
  left: 210px;
  right: 5px;
  min-height: 200px;
  overflow: hidden;
}
 
@media only screen and (max-width: 900px) {
  aside {
    position: relative;
    display: block;
    width: auto;
  }
 
  .main-content {
    position: static;
    padding: 0;
  }
  
  aside .panel {
    float: left;
    width: auto;
    margin-right: 5px;
  }
  aside .button {
    float: left;
    margin: 0;
  }
}
