body {
  font-family: 'PT Sans', 'Liberation Sans', 'Calibri', Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
}
a {
  color: #43853d;
  display: inline-block;
  padding: 1px 3px;
  margin: -1px -3px;
  border-radius: 2px;
  text-decoration: none;
}
a:hover, a:focus {
  background: #43853d;
  color: #fff;
  outline: 0px none;
}
p {
  margin: 0 0 10px 0;
}
h1 {
  margin: 10px 0;
}
h2 {
  margin: 15px 0;
}

@keyframes rotation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(359deg);
  }
}

.info {
  columns: 3;
  width: calc(100vw - 35px);
}

#core-author::before, #core-patched::before, #core-vulnerable::before,
#core-score::before, #core-cvss::before, #core-cves::before,
#eco-module::before, #eco-publish::before, #eco-vulnerable::before,
#eco-patched::before, #eco-downloads::before, #eco-cvss::before,
#eco-score::before, #eco-cves::before, #eco-author::before {
  display: inline-block;
  color: #026e00;
  padding-right: 5px;
  font-weight: bold;
}

#eco-vulnerable::before, #core-vulnerable::before { content: 'Vulnerable versions:'; }
#eco-patched::before, #core-patched::before { content: 'Patched versions:'; }
#eco-cvss::before, #core-cvss::before { content: 'CVSS Vector:'; }
#eco-score::before, #core-score::before { content: 'CVSS Score:'; }
#eco-cves::before, #core-cves::before { content: 'CVEs:'; }
#eco-author::before, #core-author::before { content: 'Author:'; }
#eco-module::before { content: 'Module:'; }
#eco-publish::before { content: 'Publish date:'; }
#eco-downloads::before { content: 'Downloads/month:'; }

#core-author:empty, #core-cves:empty {
  visibility: hidden;
}
#core-cvss:empty, #core-score:empty {
  display: none;
}

#loading {
  position: fixed;
  left: 0; right: 0; top: 0; bottom: 0;
  background: #026e00;
  color: #fff;
}
#loading::before {
  display: block;
  content: '⭮';
  font-size: 40px;
  width: 40px;
  height: 40px;
  line-height: 1;
  margin-left: calc(50vw - 20px);
  margin-top: calc(50vh - 20px);
  text-align: center;
  animation: rotation 1s infinite linear;
}

#header {
  color: #fff;
  text-align: center;
  height: 80px;
  width: 100%;
  line-height: 80px;
  background: #026e00;
  position: relative;
  font-size: 40px;
}

#previous, #next {
  position: absolute;
  height: 80px;
  padding: 0px 20px;
  font-size: 50px;
  cursor: pointer;
  user-select: none;
}

#previous:hover, #next:hover {
  background: #026000;
}

#previous {
  left: 0; top: 0;
}

#next {
  right: 0; top: 0;
}

#main {
  padding: 10px;
  overflow-y: auto;
  height: calc(100vh - 100px);
}

#introduction {
  text-align: center;
  font-size: 30px;
  margin-top: calc(50vh - 100px);
}

@media (max-width: 1500px) {
  .info {
    columns: 2;
  }
}

@media (max-width: 1000px) {
  .info {
    columns: 1;
  }
}
