h3 { text-align:center; }
.package h4 { margin-top:.3em; }
h5 { font-size:1em; margin-bottom:.3em; }
h2 + #summary { text-align:center; }
#appdetails h2 { margin-top:.5em; margin-bottom:.2em; }
#appdetails, #keydata, .package {
  background-color:#ffffff;
  border-spacing:1em;
  border:1px solid gray;
  border-radius:0.5em;
  padding:0.5em;
  margin:1.5em;
  clear:right;
}
#appdetails { /* center & resize */
  width:900px;
  max-width:95%;
  margin-left:auto;
  margin-right:auto;
}
#desc { display:inline; }
#keydata {
  display:inline;
  background-color:#f0f0f0;
  float:right;
}
#content table.keydatatable { border:0; background-color:transparent; }
.keydatatable td, .libdetails { font-size:.8em; color: #555555; padding-left:.5em; padding-right:.5em; }
.toggle { text-decoration: underline dotted; cursor:pointer; }
.permissions li { font-family: monospace; font-size:.9em; }
.antifeatures { border:1px solid rgb(255,102,102);border-radius:.5em; background-color:rgba(255,204,0,.3); padding-right:.7em; clear:right; }
.antifeatures code { font-size:.9em; }
#content #footer { text-align:center; font-size:.8em; margin-top:-.7em; }
#footer a { background-color:#f0f0f0; padding:.2em .4em .4em; border-radius:.4em; border:1px solid lightgray; }

/* Module Listings */
.modules { width:100%; }
.liblist {
  border-spacing:1em;
  border:1px solid gray;
  border-radius:0.5em;
  padding:0.5em;
  /* max-width: 33%; */
  min-width:10%;
  display: table-cell;
  text-align: left !important;
}

/* Malware Checks */
.vt { margin-bottom: .3em; margin-top: 1.7em; }
.vt .h5 a { cursor:help; }
span.h5 { color:#009000; }
span.shield {
  background:url(/images/shield-empty.png) left no-repeat;
  padding-left:20px;
  margin-left:.5em;
  min-width:10em;
}
span.shield-fail { background:url(/images/shield-fail.png) left no-repeat; }
span.shield-warn { background:url(/images/shield-warn.png) left no-repeat; }
span.shield-note { background:url(/images/shield-note.png) left no-repeat; }
span.shield-ok   { background:url(/images/shield-ok.png) left no-repeat; }

.hidden { display:none; }

div.screenshots { text-align:center; margin:1.5em; white-space: nowrap; overflow:auto; border:1px solid gray; border-radius:.5em; }
div.screenshots img { max-height:267px; }
img.appicon { max-width: 48px; }

/* Mobile Adjustments */
@media (max-width: 600px) {
  #desc, #keydata, .liblist { display:block; }
  #desc { max-width:inherit; }
  #appdetails { width:auto; }
  #keydata {
    padding:0;
    margin:1em 0 1em 0;
    float:none;
  }
}
@media (max-width: 400px) {
  #keydata td { font-size:small; }
}