/*
 * Main interface components
 */
body {
  font-family: arial, sans-serif;
  color: #606060;
}

main[role="main"] {
  margin-top: 1em;
}

a.navbar-brand img {
  height: 27px;
}

footer {
  font-size: 0.9em;
}

footer div.compute-times {
  font-size: 0.6em;
}

/*
 * Login form
 */

body.signin {
  display: flex;
  align-items: center;
  padding-top: 40px;
  padding-bottom: 40px;
  background-color: #f5f5f5;
}

.form-signin {
  max-width: 330px;
  padding: 15px;
}

.form-signin .form-floating:focus-within {
  z-index: 2;
}

.form-signin input[name="username"] {
  margin-bottom: -1px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.form-signin input[name="password"] {
  margin-bottom: 10px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}


/*
 * Common helpers
 */
.center { text-align: center; }

p { text-align: justify; }

img { max-width: 100%; }

/*
 * Messages/errors & fatal errors
 */
.fatal_error_msg {
  font-size: 0.8em;
  color: #777;
  text-align: center;
  font-style: italic;
}

.alert p {
  text-align: center;
}

/*
 * Tables
 */
th a, th a:hover {
   color: #000;
   text-decoration: none;
}

/*
 * Forms
 */
.form-inline .form-control, .form-inline label, .form-inline input, .form-inline select, .form-inline button {
  margin-left: 1em!important;
}

label.required::after {
        content: " *";
}

.form-error {
  color: #dc3545;
}

.invalid-feedback {
  display: block;
}

span.form-control-plaintext {
  padding-top: calc(.375rem + 1px);
  padding-bottom: calc(.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}
