body.media-desktop {
  --vika-shell-border: #d7e2e8;
  --vika-shell-desktop-sidebar-width: 24em;
}

body.media-desktop div.header {
  background: linear-gradient(180deg, #eef4f6 0%, #edf3f5 100%);
  border-bottom: 1px solid var(--vika-shell-border);
}

body.media-desktop div.header div.logo {
  padding-left: 24px;
  margin-right: 2.2em;
}

body.media-desktop div.header h1.title {
  margin: 0;
  padding: 16px 20px 18px;
  font-size: 4.1em;
  font-weight: 600;
  letter-spacing: -0.03em;
  color: #23485c;
}

body.media-desktop div.header h1.title a {
  color: inherit;
  text-decoration: none;
}

body.media-desktop div.searchbar-extra {
  position: absolute;
  top: 1.6em;
  right: 2.2em;
  display: flex;
  align-items: center;
  gap: 0.25em;
  width: 33em;
  padding: 0.45em 0.55em;
  border: 1px solid var(--vika-shell-border);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 10px 28px rgba(35, 72, 92, 0.12);
  box-sizing: border-box;
}

body.media-desktop div.searchbar-extra input.wSearchField {
  display: block;
  flex: 1 1 auto;
  width: auto;
  min-width: 0;
  height: 2.3em;
  margin: 0;
  padding: 0 0.9em;
  border-radius: 12px;
  font-size: 1.35em;
  vertical-align: middle;
  box-sizing: border-box;
}

body.media-desktop div.searchbar-extra a.wSearchLink {
  display: block;
  flex: 0 0 2.3em;
  width: 2.3em;
  height: 2.3em;
  margin: 0;
  padding: 0;
  opacity: 0.8;
  background-position: center center;
  background-size: 22px 22px;
  vertical-align: middle;
}

body.media-desktop div.searchbar-extra a.vika-shell-print-button {
  display: block;
  flex: 0 0 2.3em;
  width: 2.3em;
  height: 2.3em;
  margin: 0;
  padding: 0;
  border: 1px solid var(--vika-shell-border);
  border-radius: 12px;
  opacity: 0.86;
  background-color: #ffffff;
  background-image: url(print_desktop.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 19px 19px;
  box-sizing: border-box;
}

body.media-desktop div.searchbar-extra a.vika-shell-print-button:hover {
  opacity: 1;
}

body.media-desktop div.searchbar-extra div.search-list {
  left: 0.55em;
  right: 0.55em;
  top: calc(100% - 0.2em);
}

body.media-desktop div.sidebarsizer {
  display: none !important;
}

body.media-desktop div.functionbar {
  display: none !important;
  height: 0 !important;
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
}

body.media-desktop div.toc-holder,
body.media-desktop div.idx-holder,
body.media-desktop div.glo-holder,
body.media-desktop div.filter-holder,
body.media-desktop div.searchbar.left-pane {
  position: fixed !important;
  top: 7em !important;
  left: 0 !important;
  width: var(--vika-shell-desktop-sidebar-width) !important;
  min-width: var(--vika-shell-desktop-sidebar-width) !important;
  max-width: var(--vika-shell-desktop-sidebar-width) !important;
  bottom: 0 !important;
}

body.media-desktop div.topic,
body.media-desktop div.searchresults.search-content {
  left: var(--vika-shell-desktop-sidebar-width) !important;
}

body.media-desktop div.topic div.functionholder {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.media-desktop div.toc-holder {
  margin-top: 0 !important;
  padding-top: 0.9em !important;
}

body.media-desktop div.toc-holder > ul,
body.media-desktop div.toc-holder > ul > li,
body.media-desktop div.toc-holder > ul > li.child,
body.media-desktop div.toc-holder ul.child,
body.media-desktop div.toc-holder ul.child > li,
body.media-desktop div.toc-holder ul.child > li.child,
body.media-desktop div.toc-holder ul.child > li > a {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

body.media-desktop div.toc-holder ul,
body.media-desktop div.toc-holder li,
body.media-desktop div.toc-holder a {
  white-space: normal !important;
}

body.media-desktop div.toc-holder a {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}

body.media-desktop div.toc-holder > ul li {
  padding-left: 1.7em !important;
}

body.media-desktop div.toc-holder ul li.book,
body.media-desktop div.toc-holder ul li.item,
body.media-desktop div.toc-holder ul li.url {
  font-size: 1.22em !important;
  min-height: 1.1em !important;
  padding-top: 0.12em !important;
  padding-bottom: 0.12em !important;
  margin-top: 0.06em !important;
  margin-bottom: 0.06em !important;
}

body.media-desktop div.toc-holder ul li.book,
body.media-desktop div.toc-holder ul li.expanded,
body.media-desktop div.toc-holder ul li.item,
body.media-desktop div.toc-holder ul li.url {
  padding-left: 1.95em !important;
}

@media (max-width: 1500px) {
  body.media-desktop div.searchbar-extra {
    width: 30em;
  }
}

@media (max-width: 1280px) {
  body.media-desktop div.searchbar-extra {
    width: 27em;
  }

  body.media-desktop {
    --vika-shell-desktop-sidebar-width: 21.75em;
  }

  body.media-desktop div.functionbar,
  body.media-desktop div.toc-holder,
  body.media-desktop div.idx-holder,
  body.media-desktop div.glo-holder,
  body.media-desktop div.filter-holder,
  body.media-desktop div.searchbar.left-pane {
    width: var(--vika-shell-desktop-sidebar-width) !important;
  }

  body.media-desktop div.topic,
  body.media-desktop div.searchresults.search-content {
    left: var(--vika-shell-desktop-sidebar-width) !important;
  }
}

@media (max-width: 1180px) {
  body.media-desktop div.header h1.title {
    font-size: 3.4em;
  }
}

body.media-mobile div.searchbar-extra,
body.media-landscape div.searchbar-extra {
  display: none !important;
}
