:root {
  --taso-hero-color: #003255;
  --taso-hero-gradient: linear-gradient(to right, #003255, #034472 70%, #0a446d);
  --taso-highlight-gradient: linear-gradient(to right, #004e86, #1a7ec5, #15719c);
}

html, body {
  min-height: 100vh;
}

.taso-authenticator-qrcode * {
  width: 128px;
  height: 128px;
}

.taso-header .nav-link.active {
  font-weight: bold;
}

.taso-main {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.taso-content {
  border-radius: var(--bs-border-radius-lg);
  box-shadow: var(--bs-box-shadow);
  background-color: white;
}

.taso-content .nav {
  --bs-nav-tabs-border-radius: var(--bs-border-radius-lg);
}

.taso-logo {
  fill: white;
  width: 80px;
  height: 32px;
}

.taso-bg-hero {
  background-color: var(--taso-hero-color);
  background-image: var(--taso-hero-gradient);
}

.cursor-pointer {
  cursor: pointer;
}

.taso-separator {
  display: flex;
  align-items: center;
  text-align: center;
}

.taso-separator::before,
.taso-separator::after {
  content: '';
  flex: 1;
  border-bottom: 1px solid var(--bs-border-color);
}

.taso-separator:not(:empty)::before {
  margin-right: .5em;
}

.taso-separator:not(:empty)::after {
  margin-left: .5em;
}

.taso-manage-nav .nav-link {
  --bs-nav-link-padding-x: 0px;
}

.taso-manage-nav .active {
  font-weight: bold;
}

/* start asp validation styling */

.validation-summary-errors {
  color: var(--bs-danger);
}

.validation-summary-errors ul {
  list-style-type: none;
  list-style-position: inside;
  padding-left: 0;
}

.field-validation-error, .field-validation-valid {
  font-size: 0.875em;
}

.field-validation-error {
  color: var(--bs-danger);
}

/* end asp validation styling */