* {
  font-family: "Neue Helvetica W01",HelveticaNeue,"Helvetica Neue",Helvetica,Arial,sans-serif;
  color: #484848;
  box-sizing: border-box;
}

body {
  margin: 0 auto;
  max-width: 1600px;
  padding: 0.001em;
}

/* header {
   height: 100px;
   vertical-align: middle;
   }
   header > h1 {
   vertical-align: middle;
   display: relative;
   top: 0;
   bottom: 0;
   } */

a {
  color: #386d90;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

nav ul {
  padding: 0;
  list-style: none;
  width: 100%;
}

nav li a {
  display: block;
}

header {
  border-bottom: 1px solid #ebebe9;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: stretch;
}

header > h1 {
  padding: 10px;
}

img#header-logo {
  max-height: 100%;
  width: 250px;
  /* margin: 25px; */
  margin-left: 20px;
}

@media only screen and (max-width: 1000px) {
  header {
    flex-direction: column;
    align-items: center;
  }
  img#header-logo {
    margin-top: 5px;
  }
}


div#user-info-container {
  background-color: #2F6684;
}

div#user-info-container button {
  float: right;
  width: 70px;
  height: 40px;
  font-size: 80%;
}

div#user-info {
  height: 70px;
  width: 300px;
  display: flex;
  align-items: stretch;
  flex-flow: row nowrap;
  background-color: #2F6684;
}

@media only screen and (max-width: 1000px) {
  div#user-info-container {
    width: 100%;
  }
  div#user-info {
    width: 100%;
  }
}

div#user-info > * {
  width: 100px;
  margin: auto;
  flex: 1 0 auto;
}

#user-info-text {
  width: 200px;
  height: 100%;
  padding: 10px;
}
#user-info-text > *, .usage-info > * {
  color: #fff;
  text-shadow: 1px 1px 2px #000;
}

#user-info figure {
  width: 70px;
  height: 100%;
  flex: 0 0 auto;
}

img.profile-photo-thumb {
  /* max-height: 100%; */
  max-width: 70px;
  border-radius: 50%;
}

#user-signed-in {
  padding: 10px;
}

.account-key-section {
  width: 100%;
  display: flex;
  flex-flow: row;
  justify-content: flex-start;
  align-items: stretch;
  align-content: stretch;
  padding: 15px;
}

@media only screen and (max-width: 1000px) {
  .account-key-section {
    flex-flow: column;
    align-items: center;
  }
}

div.usage-info {
  width: 389px;
  /* border: 1px solid #000; */
  padding: 15px;
  background-color: #2F6684;
  flex-shrink: 0;
}

.usage-info a {
  color: #fff;
}

.usage-info a:hover {

}

@media only screen and (max-width: 1000px) {
  div.usage-info {
    width: 100%;
  }
}

div.account-key-tbl {
  flex-shrink: 1;
  flex-basis: auto;
  padding: 10px;
}

table.account-key-tbl {
  margin-left: auto;
  margin-right: auto;
  width: 95%;
}

table.account-key-tbl * td {
  white-space: nowrap;
}

td.api-keys-key, th.api-keys-key {
}

td.api-keys-date, th.api-keys-date, td.service-accounts-date, th.service-accounts-date {
  text-align: center;
}

@media only screen and (max-width:1000px) {
  table.account-key-tbl {
    table-layout: fixed;
  }
  td.api-keys-key, th.api-keys-key {
    width: 100%;
  }
  td.api-keys-date, th.api-keys-date, td.service-accounts-date, th.service-accounts-date {
    display: none;
  }
}

td.delete-btn, th.delete-btn {
  width: 40px;
}

button.delete-btn {
  width: 40px;
  padding: 0;
  margin: 0;
  text-align: center;
  background: unset;
  border: unset;
  font-size: 25px;
}

div.scrollable {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overflow: auto;
}



code, pre.codeblock {
  font-family: Monospace !important;
  background-color: rgb(200, 200, 200);
  padding: 4px;
}

table.codeblock {
  width: 98%;
  table-layout: fixed;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
}
table.codeblock td, table.codeblock tr {
  padding: 0;
  margin: 0;
}


pre.codeblock {
  /* width: 98%; */
  text-shadow: none;
  border: 1px solid #000;
  overflow-x: auto;
  padding: 10px;
  margin: 0;
}

pre.codeblock a {
  font-family: monospace;
}

table.info-tbl {
  width: 80%;
  margin: auto;
  table-layout: fixed;
}

table.info-tbl thead {
  background-color: #2F6684;
}
table.info-tbl th {
  color: #fff;
}
table.info-tbl th.col2 {
  width: 80%;
}

table.info-tbl th.col1 {
  width: 20%;
}

table.info-tbl td.col1 {
  text-align: center;
}

table.info-tbl th, table.info-tbl td {
  padding: 10px;
}

table.info-tbl tr:nth-child(even) {
  background-color: #f2f2f2;
}

/* Dialogs */
dialog a {
  font-size: 120%;
}

dialog table {
  width: 90%;
  border: 1px solid black;
  margin-left: auto;
  margin-right: auto;
  table-layout: fixed;
}

dialog button {
  margin-top: 15px;
  float: right;
}

dialog {
  border: 1px solid rgba(0, 0, 0, 0.3);
  border-radius: 6px;
  box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
  max-width: 700px;
}

dialog label {
  margin: 5px;
}

footer {
  clear: both;
  /* font-size: 50px; */
  padding: 10px;
  min-height: 200px;
  width: 100%;
  background-color: #404040;
  color: #fff;
  border-top: 1px solid #ebebe9;
}

footer a {
  color: #fff;
}

footer > * {
  float: right;
  margin: 0 5px 0 5px;
}

img.footer-logo {
  max-height: 100px;
}
