/* sticky footer */
html {
  height: 100%;
}
body {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
}
/* end sticky footer */

/* navbar */
@media (min-width: 576px) and (max-width: 767.98px) {
  .navbar-expand-md > .container {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.navbar {
  background-color: #aac46c;
  padding-top: 0;
  padding-bottom: 0;
}
.navbar-brand {
  padding-top: 0.8125rem;
  padding-bottom: 0.8125rem;
  margin-left: -1rem;
  margin-right: 0;
  padding-left: 1rem;
  padding-right: 1rem;
}

@media (max-width: 767px) {
  .navbar-collapse {
    border-top: 1px solid rgba(255, 255, 255, 0.85);
  }
}
.navbar-dark .navbar-nav .nav-link {
  padding: 1rem;
  color: #2d2d2d; /* best conrast ratio */
  height: 100%;
  text-decoration: none;
}
@media (min-width: 768px) and (max-width: 991px) {
  .navbar-dark .navbar-nav .nav-link {
    padding-left: 0.75rem; /* french text is longest */
    padding-right: 0.75rem;
  }
}
.navbar-dark .navbar-nav .active > .nav-link {
  background-color: olivedrab;
  color: #1b1b1b; /* not supported in ie11: rgb(16 16 16 / 90%); */
  /*color: rgba(255,255,255,.9);*/
}

.navbar-dark .navbar-nav .nav-link:focus,
.navbar-brand:focus {
  color: #a30000; /* best contrast ratio */
  background-color: #eee;
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-brand:hover {
  color: #2e2e2e;
  background-color: #eee;
}

.navbar-dark .navbar-nav .nav-link:active {
  color: #d90000; /* second best contrast ratio */
  background-color: #eee;
}

#toggle-nav:hover {
  background-color: #eee;
  border-bottom: 1px solid rgba(255, 255, 255, 0.85);
  margin-bottom: -1px;
}

#help {
  margin-left: 0.25rem;
  vertical-align: top;
  margin-top: 4px;
}
@media (min-width: 768px) and (max-width: 991px) {
  #help {
    display: none;
  }
}

#toggle-nav {
  border: 0;
  padding: 0.8125rem 1rem;
  border-radius: 0;
  margin-right: -1rem;

  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
}
/*@media (min-width: 576px) {
  #toggle-nav {
    margin-right: -2rem;
  }
}*/
@media (min-width: 768px) {
  #toggle-nav {
    display: none;
  }
}

/*
svg element used instead
#toggle-nav .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2874, 74, 74, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M1 7h29M1 15h29M1 23h29'/%3e%3c/svg%3e");
}*/
#toggle-nav:hover .navbar-toggler-icon {
  filter: invert(0.44);
}

@media (max-width: 767px) {
  .navbar-collapse.show {
    margin-left: -1rem;
    margin-right: -1rem;
  }
}
/* end navbar */

h1 small,
.h1 small,
h2 small {
  /* agb, über#preise, artikel, psychologische testverfahren, ... */
  font-weight: 400;
  line-height: 1;
  color: #767676;
  /* color: #777; */
  font-size: 65%;
}

a {
  /* color: #0071eb;   bootstrap contrast 1 (too bright) */
  color: #0056b2; /* bootstrap contrast 2 */
  text-decoration: underline;
}

.bg-dark a {
  color: #a3cfff;
}

a:visited {
  color: #551a8b; /* browser default */
}

.bg-dark a:visited {
  color: #e0beff; /* contrast ratio 2 */
}

a:focus,
.bg-dark a:focus {
  color: #b50000; /* browser default contrast 2 */
}
a:hover,
.bg-dark a:hover {
  color: #0000ee; /* browser default */
}
a:active,
.bg-dark a:active {
  color: #ec0000; /* browser default contrast 1 */
}

.text-muted a {
  color: #6c757d;
}
.text-muted a:visited {
  color: #6c757d;
}
.text-muted a:focus {
  color: #b50000 !important; /* browser default contrast 2 */
}
.text-muted a:hover {
  color: #0000ee !important; /* browser default */
}
.text-muted a:active {
  color: #ec0000 !important; /* browser default contrast 1 */
}

.bg-dark .text-muted a:visited {
  color: #6c757d !important;
}
.bg-dark .text-muted a:focus {
  color: #b50000 !important; /* browser default contrast 2 */
}
.bg-dark .text-muted a:hover {
  color: #0000ee !important; /* browser default */
}
.bg-dark .text-muted a:active {
  color: #ec0000 !important; /* browser default contrast 1 */
}

.alert-success {
  color: #155624; /* minimal improvement, max contrast */
}

.alert-success a {
  color: #004996;
}
.alert-success a:visited {
  color: #551a8b; /* browser default */
}
.alert-success a:focus {
  color: #9b0000;
}
.alert-success a:hover {
  color: #0000ee; /* browser default */
}
.alert-success a:active {
  color: #d00000; /* bootstrap contrast 2 */
}

.alert-info {
  color: #0c525e; /* minimal improvement, max contrast */
}
.alert-info a {
  color: #004997; /* bootstrap contrast 2 */
}
.alert-info a:visited {
  color: #551a8b; /* browser default */
}
.alert-info a:focus {
  color: #9b0000; /* bootstrap contrast 2 */
}
.alert-info a:hover {
  color: #0000ee; /* browser default */
}
.alert-info a:active {
  color: #d00000; /* bootstrap contrast 2 */
}

a.btn {
  text-decoration: none;
}

.btn-success:visited {
  /* needs to be before :hover etc. */
  color: #2d2d2d;
}

.btn-success {
  color: #2d2d2d; /* best contrast ratio */
  background-color: #aac46c;
  border-color: #aac46c;
}
.btn-success:focus {
  color: #fff;
  background-color: olivedrab !important;
}
.btn-success:hover {
  color: #fff;
  background-color: olivedrab;
}
.btn-success:active {
  color: #3e0000 !important; /* best contrast ratio */
  border-color: #d90000 !important; /* second best contrast ratio */
  background-color: olivedrab !important;
}

.btn-success.active {
  /* for therapeutenbereich > + Neuer Test > Alle */
  color: #1a1a1a !important;
  background-color: olivedrab !important;
  cursor: not-allowed !important;
}

.btn-dark:active {
  color: #ff3c3c !important;
  border-color: #d90000 !important;
}

.btn-light:focus {
  color: #990000 !important;
}
.btn-light:active {
  border-color: #d90000 !important;
}

.btn-secondary:active {
  color: #ffc5c5 !important;
  border-color: #d90000 !important;
}

.text-danger {
  color: #a52834 !important; /* best contrast */
}

.initialism {
  /* prevent line break in abbreviations */
  white-space: nowrap;
}

abbr[title] .initialism {
  vertical-align: middle; /* same underline, not sure if side effects */
}

strong {
  /* index, psychologische testverfahren */
  font-weight: bold;
}

blockquote {
  /* index, psychologische testverfahren */
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 1.25rem;
  border-left: 5px solid #eee;
}
blockquote footer,
blockquote small {
  display: block;
  font-size: 80%;
  line-height: 1.42857143;
  /*color: #777;*/
  color: #595959;
}
blockquote footer:before {
  content: "\2014 \00A0";
}

label {
  cursor: pointer;
}

code.code {
  /* preserving code in compression */
  font-size: 87.5%;
  word-wrap: break-word;
  font-family:
    SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New",
    monospace;
}
code,
code.code {
  color: #9e2a5f; /* better contrast */
}

.bg-dark code,
.bg-dark code.code {
  color: #ffb6d8; /* better contrast */
}

/* BEGIN OF: dropdown menu to change language */
.w66 {
  width: 66px;
}
#lnLink::after {
  vertical-align: 0.11em;
}
.navbar-nav #lnMenu.dropdown-menu {
  position: absolute;
  min-width: auto;
  padding: 0;
}
#lnMenu {
  text-align: center;
}
#lnMenu .dropdown-item {
  padding: 0.25rem 0;
}
.dropdown-item {
  text-decoration: none;
}
.dropdown-item,
.dropdown-item:visited {
  color: #212529;
}
.dropdown-item:focus {
  color: #a00000;
  background-color: #eee;
}
.dropdown-item:hover {
  color: #212529;
  background-color: #eee;
}
.dropdown-item:active {
  color: #ec0000;
  background-color: #eee;
}
.dropdown-item.disabled {
  color: #adb5bd;
  cursor: not-allowed;
  pointer-events: auto;
}
/* END OF: dropdown menu to change language */

.nav-pills .nav-link {
  color: #2d2d2d;
  border: 1px solid #aac46c;
  background-color: #aac46c;
  text-decoration: none;
}

.nav-pills .nav-link:focus {
  color: #b50000;
}
.nav-pills .nav-link:hover {
  color: #fff;
  border: 1px solid olivedrab;
  background-color: olivedrab;
}
.nav-pills .nav-link:active {
  color: #3e0000; /* best contrast ratio */
  background-color: olivedrab;
  border-color: #d90000 !important;
}
.nav-pills .nav-link.active,
.nav-pills .nav-link.active:active {
  color: #1a1a1a;
  background-color: olivedrab;
  border-color: olivedrab !important;
  cursor: not-allowed;
}

.linkTestDescriptionPage {
  text-decoration: underline dotted;
  cursor: help;
  color: #212529;
}
a:hover.linkTestDescriptionPage {
  text-decoration: underline dotted;
}

.text-success {
  /* better contrast for admin and therapists */
  color: #18662a !important;
}

.list-group-item-action {
  color: #0056b2;
}
.list-group-item-action:focus {
  color: #b50000;
}
.list-group-item-action:hover {
  color: #0000ee;
}
.list-group-item-action:active {
  color: #ec0000;
}
.list-group-item-action:focus,
.list-group-item-action:hover {
  background-color: #eee;
  text-decoration: underline;
}

/* BEGIN OF: question box */
#questionBox {
  position: fixed;
  right: 15px;
  bottom: 72px;
}
#tooltipQuestionForm {
  width: 276px;
}
#tooltipQuestion {
  width: 175px;
  left: -190px;
}
#noQuestion {
  color: #6c757d;
  text-decoration: none;
}
#noQuestion:focus {
  color: #b50000;
}
#noQuestion:hover {
  color: #ec0000;
}
#noQuestion:active {
  color: red;
}
#questionMark {
  color: #212529;
}
#questionMark:focus {
  color: #b50000;
}
#questionMark:hover {
  color: #0056b3;
}
#questionMark:active {
  color: #ec0000;
}
/* END OF: question box */

.btn-success:disabled {
  cursor: not-allowed;
  font-style: italic;
  color: #1b1b1b;
  background-color: olivedrab;
}

h1 a,
h1 a:hover,
h1 a:visited,
h2 a,
h2 a:hover,
h2 a:visited,
h3 a,
h3 a:hover,
h3 a:visited,
h4 a,
h4 a:hover,
h4 a:visited,
p strong a,
p strong a:hover,
p strong a:visited {
  position: relative;
  color: #212529;
  text-decoration: none;
}

h1:target a,
h2:target a,
h3:target a,
h4:target a,
p:target strong a {
  background-color: yellow;
  border-radius: 1px;
  padding: 0.25rem;
}

.bg-dark h2 a,
.bg-dark h2 a:hover,
.bg-dark h2 a:visited,
.bg-dark h3 a,
.bg-dark h3 a:hover,
.bg-dark h3 a:visited,
.bg-dark h4 a,
.bg-dark h4 a:hover,
.bg-dark h4 a:visited,
.bg-dark p strong a,
.bg-dark p strong a:hover,
.bg-dark p strong a:visited {
  position: relative;
  color: #f8f9fa;
  text-decoration: none;
}

.bg-dark h1:target a,
.bg-dark h2:target a,
.bg-dark h3:target a,
.bg-dark h4:target a,
.bg-dark p:target strong a {
  color: #545454 /* was:  #707071*/;
}

h1 > a:not(.badge):hover::before,
h2 a:hover::before,
h3 a:hover::before,
h4 a:hover::before,
p strong a:hover::before {
  content: "#";
  position: absolute;
  color: #6c757d;
}
h1 a:hover::before {
  left: -25px;
}
h2 a:hover::before {
  left: -25px;
}
h3 a:hover::before {
  left: -20px;
}
h4 a:hover::before {
  left: -20px;
}
p strong a:hover::before {
  left: -14px;
}

h1 small a,
h1 small a:hover {
  text-decoration: underline;
}

.modal-header .close:focus {
  color: #e50000;
}
.modal-header .close:active {
  color: red;
}
