.vk-blockly-header-tools {
  display: flex;
  align-items: center;
  margin-left: auto;
  gap: 0.5rem;
  flex: 0 0 auto;
}

.vk-blockly-header-tools .form-inline {
  margin-top: 0;
  margin-bottom: 0;
}

#block-vk-blockly-main-menu .navbar {
  position: relative;
}

.vk-blockly-contrast-toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: #111111;
  cursor: pointer;
  transition:
    color 0.2s ease,
    border-color 0.2s ease,
    background-color 0.2s ease,
    box-shadow 0.2s ease;
}

.vk-blockly-contrast-toggle i {
  position: relative;
  z-index: 2;
  font-size: 1.2rem;
  line-height: 1;
}

.vk-blockly-contrast-toggle:hover {
  color: #5b2281;
}

.vk-blockly-contrast-toggle:focus {
  outline: none;
}

.vk-blockly-contrast-toggle:focus-visible::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.75rem;
  height: 2.75rem;
  content: "";
  transform: translate(-50%, -50%);
  border: solid 2px #5b2281;
  border-radius: 0.65rem;
}

.vk-blockly-contrast-toggle.is-active {
  color: #5b2281;
}

.vk-blockly-contrast-toggle.is-active::before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.2rem;
  height: 2.2rem;
  content: "";
  transform: translate(-50%, -50%);
  border: solid 2px #5b2281;
  border-radius: 0.6rem;
  background: #ffffff;
}

.vk-blockly-contrast-toggle--mobile {
  position: absolute;
  top: 50%;
  right: 1rem;
  left: auto;
  transform: translateY(-50%);
  z-index: 10;
}

.vk-blockly-contrast-toggle--mobile.vk-blockly-contrast-toggle--has-search {
  right: 4.5rem;
}

#navbarSupportedContent .vk-blockly-contrast-toggle--desktop {
  flex: 0 0 auto;
}

html[data-contrast-mode="violet"] .layout-container #vk_blockly_header {
  background: #ffffff !important;
  background-image: none !important;
}

html[data-contrast-mode="violet"] .layout-container .site-slogan,
html[data-contrast-mode="violet"] .layout-container h1,
html[data-contrast-mode="violet"] .layout-container h2,
html[data-contrast-mode="violet"] .layout-container h3,
html[data-contrast-mode="violet"] .layout-container h4,
html[data-contrast-mode="violet"] .layout-container h5,
html[data-contrast-mode="violet"] .layout-container h6 {
  color: #000000 !important;
}

html[data-contrast-mode="violet"] .layout-container .site-name a,
html[data-contrast-mode="violet"] .layout-container .site-name a:visited,
html[data-contrast-mode="violet"] .layout-container .site-name a:hover,
html[data-contrast-mode="violet"] .layout-container main a,
html[data-contrast-mode="violet"] .layout-container main a:hover,
html[data-contrast-mode="violet"] .layout-container main a:visited,
html[data-contrast-mode="violet"] .layout-container main a.page-link,
html[data-contrast-mode="violet"] .layout-container #block-vk-blockly-main-menu .form-submit,
html[data-contrast-mode="violet"] .layout-container #block-vk-blockly-main-menu .navbar-toggler,
html[data-contrast-mode="violet"] .layout-container .vk-blockly-contrast-toggle {
  color: #5b2281 !important;
}

html[data-contrast-mode="violet"] .layout-container #vk_blockly_footer a,
html[data-contrast-mode="violet"] .layout-container #vk_blockly_footer a:hover,
html[data-contrast-mode="violet"] .layout-container #vk_blockly_footer a:focus,
html[data-contrast-mode="violet"] .layout-container #vk_blockly_footer a:visited,
html[data-contrast-mode="violet"] .layout-container #vk_blockly_footer a.is-active,
html[data-contrast-mode="violet"] .layout-container #vk_blockly_footer ul.menu a.is-active {
  color: #ffffff !important;
}

html[data-contrast-mode="violet"] .layout-container .tabs a.btn-outline-primary,
html[data-contrast-mode="violet"] .layout-container .tabs a.btn-outline-primary:visited,
html[data-contrast-mode="violet"] .layout-container .block-local-tasks-block a.btn-outline-primary,
html[data-contrast-mode="violet"] .layout-container .block-local-tasks-block a.btn-outline-primary:visited {
  color: #0275d8 !important;
  border-color: #0275d8 !important;
  background-color: transparent !important;
}

html[data-contrast-mode="violet"] .layout-container .tabs a.btn-outline-primary.is-active,
html[data-contrast-mode="violet"] .layout-container .block-local-tasks-block a.btn-outline-primary.is-active {
  color: #000000 !important;
}

html[data-contrast-mode="violet"] .layout-container .tabs a.btn-outline-success,
html[data-contrast-mode="violet"] .layout-container .tabs a.btn-outline-success:visited,
html[data-contrast-mode="violet"] .layout-container .block-local-tasks-block a.btn-outline-success,
html[data-contrast-mode="violet"] .layout-container .block-local-tasks-block a.btn-outline-success:visited {
  color: #000000 !important;
  border-color: #5cb85c !important;
  background-color: transparent !important;
}

html[data-contrast-mode="violet"] .layout-container .tabs a.btn-outline-danger,
html[data-contrast-mode="violet"] .layout-container .tabs a.btn-outline-danger:visited,
html[data-contrast-mode="violet"] .layout-container .block-local-tasks-block a.btn-outline-danger,
html[data-contrast-mode="violet"] .layout-container .block-local-tasks-block a.btn-outline-danger:visited {
  color: #d9534f !important;
  border-color: #d9534f !important;
  background-color: transparent !important;
}

html[data-contrast-mode="violet"] .layout-container #block-vk-blockly-main-menu .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(91, 34, 129, 0.9)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

html[data-contrast-mode="violet"] .layout-container .paragraph-farbbalken-breit-layout--grid .vk_blockly_farbbalken,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_farbbalken {
  background-color: #5b2281 !important;
  opacity: 1 !important;
}

html[data-contrast-mode="violet"] .layout-container .paragraph-farbbalken-breit-layout--grid .vk_blockly_farbbalken .zwischentext,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_farbbalken .zwischentext {
  color: #ffffff !important;
}

html[data-contrast-mode="violet"] .layout-container .vk-blockly-contrast-toggle,
html[data-contrast-mode="violet"] .layout-container .vk-blockly-contrast-toggle.is-active {
  background: transparent;
}

html[data-contrast-mode="violet"] .layout-container .carousel-caption,
html[data-contrast-mode="violet"] .layout-container .carousel-caption a,
html[data-contrast-mode="violet"] .layout-container .carousel-caption a:hover,
html[data-contrast-mode="violet"] .layout-container .carousel-caption a:visited,
html[data-contrast-mode="violet"] .layout-container .carousel-caption h1,
html[data-contrast-mode="violet"] .layout-container .carousel-caption h2,
html[data-contrast-mode="violet"] .layout-container .carousel-caption h3,
html[data-contrast-mode="violet"] .layout-container .carousel-caption h4,
html[data-contrast-mode="violet"] .layout-container .carousel-caption h5,
html[data-contrast-mode="violet"] .layout-container .carousel-caption h6,
html[data-contrast-mode="violet"] .layout-container .carousel-caption p,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_text_im_Bild,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_text_im_Bild a,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_text_im_Bild a:hover,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_text_im_Bild a:visited,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_text_im_Bild h1,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_text_im_Bild h2,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_text_im_Bild h3,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_text_im_Bild h4,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_text_im_Bild h5,
html[data-contrast-mode="violet"] .layout-container .vk_blockly_text_im_Bild h6 {
  color: #ffffff !important;
}

@media (max-width: 991px) {
  .vk-blockly-contrast-toggle--mobile.vk-blockly-contrast-toggle--has-search {
    right: 4.25rem;
  }
}

@media (max-width: 767px) {
  #block-vk-blockly-main-menu .navbar-brand {
    min-height: 2.5rem;
  }
}
