body.media-desktop {
  --vika-shell-border: #d7e2e8;
  --vika-shell-panel: #ddeaf2;
  --vika-shell-panel-strong: #d5e4ee;
  --vika-shell-text: #274a60;
  --vika-shell-text-soft: #42657a;
  --vika-shell-text-muted: #7e97a8;
  --vika-shell-line: #d9e4ea;
  --vika-shell-hover: #f2f7fa;
  --vika-shell-active: #dce8f1;
  --vika-shell-active-line: #264a60;
  --vika-shell-control-height: 48px;
}

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: var(--vika-shell-text);
}

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

body.media-desktop div.searchbar-extra {
  position: absolute;
  top: 1.22em;
  right: 1.52em;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-auto-rows: var(--vika-shell-control-height);
  align-items: stretch;
  gap: 0.56em;
  width: 430px;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  box-sizing: border-box;
  overflow: visible;
  z-index: 5;
}

body.media-desktop div.searchbar-extra input.wSearchField {
  display: block;
  grid-column: 1;
  width: 100%;
  min-width: 0;
  height: var(--vika-shell-control-height);
  margin: 0;
  padding: 0 1.08em;
  border: 1px solid var(--vika-shell-border);
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 10px 28px rgba(35, 72, 92, 0.12);
  font-size: 20px;
  box-sizing: border-box;
}

body.media-desktop div.searchbar-extra input.wSearchField::-ms-clear,
body.media-desktop div.searchbar-extra input.wSearchField::-ms-reveal {
  display: none;
}

body.media-desktop div.searchbar-extra a.wSearchLink {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: 0 !important;
}

body.media-desktop div.searchbar-extra > div:not(.vika-shell-search-results) {
  display: none !important;
}

body.media-desktop div.searchbar-extra a.vika-shell-print-button {
  grid-column: 2;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: var(--vika-shell-control-height) !important;
  height: var(--vika-shell-control-height) !important;
  min-width: var(--vika-shell-control-height) !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  border: 1px solid var(--vika-shell-border) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 10px 28px rgba(35, 72, 92, 0.12) !important;
  color: var(--vika-shell-text) !important;
  text-decoration: none !important;
  box-sizing: border-box;
  font-size: 16px !important;
}

body.media-desktop div.searchbar-extra a.vika-shell-print-button span.vika-shell-print-icon {
  display: block;
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23274a60' stroke-width='1.65' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6.2V3.8h8v2.4'/%3E%3Cpath d='M5.1 14.1H14.9V18H5.1z'/%3E%3Cpath d='M4.2 7.2h11.6a1.6 1.6 0 0 1 1.6 1.6v3.7h-2.5'/%3E%3Cpath d='M4.2 12.5H2.6V8.8A1.6 1.6 0 0 1 4.2 7.2z'/%3E%3Cpath d='M7.2 15.7h5.6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

body.media-desktop div.searchbar-extra a.vika-shell-print-button span.vika-shell-print-label {
  display: none !important;
}

body.media-desktop div.searchbar-extra a.vika-shell-print-button:hover {
  background: #f4f8fa !important;
}

body.media-desktop div.searchbar-extra div.vika-shell-search-results {
  position: absolute;
  display: none;
  margin: 0;
  padding: 0.34em 0;
  border: 1px solid var(--vika-shell-border);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 16px 34px rgba(35, 72, 92, 0.14);
  box-sizing: border-box;
  z-index: 8;
}

body.media-desktop div.searchbar-extra div.vika-shell-search-results.is-visible {
  display: block;
}

body.media-desktop div.searchbar-extra .vika-shell-search-state {
  padding: 0.8em 0.95em;
  color: var(--vika-shell-text-muted);
  font-size: 13px;
  line-height: 1.4;
}

body.media-desktop div.searchbar-extra button.vika-shell-search-result {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0.74em 0.95em;
  border: 0;
  background: transparent;
  text-align: left;
  cursor: pointer;
  box-sizing: border-box;
}

body.media-desktop div.searchbar-extra button.vika-shell-search-result:hover,
body.media-desktop div.searchbar-extra button.vika-shell-search-result.is-active {
  background: #f4f8fa;
}

body.media-desktop div.searchbar-extra .vika-shell-search-result-title {
  display: block;
  color: var(--vika-shell-text);
  font-size: 15px;
  font-weight: 600;
  line-height: 1.35;
}

body.media-desktop div.searchbar-extra .vika-shell-search-result-path {
  display: block;
  margin-top: 0.22em;
  color: var(--vika-shell-text-muted);
  font-size: 12px;
  line-height: 1.4;
}

body.media-desktop div.searchbar-extra div.search-list {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  max-height: 0 !important;
  overflow: hidden !important;
}

body.media-desktop div.searchbar-extra div.searchAND,
body.media-desktop div.searchbar-extra div.searchAND.layout-visible {
  display: none !important;
}

body.media-desktop.vika-shell-custom-search-active #search-results .wSearchAndLabelResults,
body.media-desktop.vika-shell-custom-search-active #search-results .wSearchAND,
body.media-desktop.vika-shell-custom-search-active #search-results .wSearchResultSettings,
body.media-desktop.vika-shell-custom-search-active #search-results .wSearchMessage,
body.media-desktop.vika-shell-custom-search-active #search-results .wSearchResultItemsBlock,
body.media-desktop.vika-shell-custom-search-active #search-results .wSearchResultFooter,
body.media-desktop.vika-shell-custom-search-active #search-results .wSearchResultsEnd,
body.media-desktop.vika-shell-custom-search-active #search-results .progressbar,
body.media-desktop.vika-shell-custom-search-active #search-results .loading {
  display: none !important;
}

body.media-desktop #search-results .vika-shell-search-page {
  display: none;
  padding: 1.15em 0 0;
}

body.media-desktop.vika-shell-custom-search-active #search-results .vika-shell-search-page {
  display: block;
}

body.media-desktop #search-results .vika-shell-search-page-status {
  margin: 0 0 0.9em;
  color: var(--vika-shell-text-soft);
  font-size: 15px;
  line-height: 1.5;
}

body.media-desktop #search-results .vika-shell-search-page-status.is-loading,
body.media-desktop #search-results .vika-shell-search-page-empty {
  color: var(--vika-shell-text-muted);
}

body.media-desktop #search-results .vika-shell-search-page-list {
  display: grid;
  gap: 0.72em;
}

body.media-desktop #search-results .vika-shell-search-page-item {
  display: block;
  padding: 0.92em 1em;
  border: 1px solid var(--vika-shell-border);
  border-radius: 14px;
  background: #ffffff;
  box-shadow: 0 8px 24px rgba(35, 72, 92, 0.08);
  text-decoration: none;
}

body.media-desktop #search-results .vika-shell-search-page-item:hover {
  background: #f6fafc;
}

body.media-desktop #search-results .vika-shell-search-page-item-title {
  display: block;
  color: var(--vika-shell-text);
  font-size: 17px;
  font-weight: 700;
  line-height: 1.35;
}

body.media-desktop #search-results .vika-shell-search-page-item-path,
body.media-desktop #search-results .vika-shell-search-page-item-summary {
  display: block;
  margin-top: 0.24em;
  color: var(--vika-shell-text-soft);
  font-size: 13px;
  line-height: 1.5;
}

body.media-desktop #search-results .vika-shell-search-page-item-path {
  color: var(--vika-shell-text-muted);
}

body.media-desktop #search-results .vika-shell-search-page-item-meta {
  display: inline-flex;
  width: fit-content;
  margin-top: 0.38em;
  padding: 0.22em 0.58em;
  border-radius: 999px;
  background: #eff5f8;
  color: var(--vika-shell-text-soft);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
}

body.media-desktop #search-results .vika-shell-search-section-title {
  margin: 0 0 0.75em;
  color: var(--vika-shell-text);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.25;
}

body.media-desktop #search-results .vika-shell-search-groups {
  margin: 0 0 1.15em;
}

body.media-desktop #search-results .vika-shell-search-group-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 0.8em;
}

body.media-desktop #search-results .vika-shell-search-group-card {
  display: block;
  padding: 1em 1.05em;
  border: 1px solid var(--vika-shell-border);
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbfc 100%);
  box-shadow: 0 8px 24px rgba(35, 72, 92, 0.08);
  text-decoration: none;
}

body.media-desktop #search-results .vika-shell-search-group-card:hover {
  background: #f6fafc;
}

body.media-desktop #search-results .vika-shell-search-group-title {
  display: block;
  color: var(--vika-shell-text);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

body.media-desktop #search-results .vika-shell-search-group-meta,
body.media-desktop #search-results .vika-shell-search-group-path {
  display: block;
  margin-top: 0.3em;
  color: var(--vika-shell-text-soft);
  font-size: 13px;
  line-height: 1.45;
}

body.media-desktop #search-results .vika-shell-search-group-path {
  color: var(--vika-shell-text-muted);
}

body.media-desktop #search-results .vika-shell-search-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.58em;
  margin: 0 0 1.05em;
}

body.media-desktop #search-results .vika-shell-search-filter {
  display: inline-flex;
  align-items: center;
  gap: 0.46em;
  padding: 0.48em 0.82em;
  border: 1px solid var(--vika-shell-border);
  border-radius: 999px;
  background: #ffffff;
  color: var(--vika-shell-text-soft);
  cursor: pointer;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
}

body.media-desktop #search-results .vika-shell-search-filter:hover {
  background: #f6fafc;
}

body.media-desktop #search-results .vika-shell-search-filter.is-active {
  border-color: #c5d9e5;
  background: #eff5f8;
  color: var(--vika-shell-text);
}

body.media-desktop #search-results .vika-shell-search-filter-count {
  color: var(--vika-shell-text-muted);
  font-size: 12px;
}

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

body.media-desktop div.functionbar,
body.media-desktop div.functionbar div.nav a.idx,
body.media-desktop div.functionbar div.nav a.glo,
body.media-desktop div.functionbar div.nav a.filter,
body.media-desktop div.functionbar div.nav a.fts,
body.media-desktop div.topic div.functionholder {
  display: none !important;
}

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

body.media-desktop div.topic div.functionholder {
  height: 0 !important;
  min-height: 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 {
  top: 7em !important;
  width: 278px !important;
  min-width: 278px !important;
  max-width: 278px !important;
}

body.media-desktop div.topic,
body.media-desktop div.searchresults.search-content {
  left: 278px !important;
}

body.media-desktop div.toc-holder {
  margin-top: 0 !important;
  padding: 0.74em 0.5em 1em 0.78em !important;
  background: #fbfdfe;
}

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

body.media-desktop div.toc-holder ul li,
body.media-desktop div.toc-holder ul li a {
  box-sizing: border-box !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,
body.media-desktop div.toc-holder ul li.expanded {
  padding-left: 0 !important;
  background-image: none !important;
  background-repeat: no-repeat !important;
}

body.media-desktop div.toc-holder ul li.book > a,
body.media-desktop div.toc-holder ul li.item > a,
body.media-desktop div.toc-holder ul li.url > a {
  display: block !important;
  max-width: none !important;
  background-image: none !important;
  text-decoration: none !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  hyphens: auto !important;
  line-height: 1.35 !important;
}

body.media-desktop div.toc-holder > ul > li[data-itemid='_0'] {
  display: none !important;
}

body.media-desktop div.toc-holder > ul > li.book[data-itemlevel='0'] {
  margin: 0.18em 0 !important;
}

body.media-desktop div.toc-holder > ul > li.book[data-itemlevel='0'] > a {
  position: relative;
  padding: 0.34em 0.1em 0.34em 1.32em !important;
  color: var(--vika-shell-text) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  border-radius: 10px;
}

body.media-desktop div.toc-holder > ul > li.book[data-itemlevel='0'] > a::before {
  content: "+";
  position: absolute;
  left: 0.16em;
  top: 50%;
  display: block;
  width: 0.8em;
  height: 1em;
  color: #93a8b7;
  font-size: 1.18em;
  font-weight: 500;
  font-family: "Segoe UI Symbol", "Segoe UI", sans-serif;
  line-height: 1;
  text-align: center;
  transform: translateY(-50%);
}

body.media-desktop div.toc-holder > ul > li.book[data-itemlevel='0'][aria-expanded='true'] > a::before {
  content: "\2212";
  color: #7f99aa;
}

body.media-desktop div.toc-holder > ul > li.book[data-itemlevel='0'] > a:hover {
  background: transparent;
}

body.media-desktop div.toc-holder > ul > li.child > ul.child {
  margin: 0.12em 0 0.42em 0.18em !important;
  padding: 0 0 0 0.92em !important;
  border-left: 1px solid var(--vika-shell-line) !important;
}

body.media-desktop div.toc-holder li.child.max-height-transition.show {
  max-height: none !important;
  overflow: visible !important;
}

body.media-desktop div.toc-holder ul.child li.book:not([data-itemlevel='0']),
body.media-desktop div.toc-holder ul.child li.item,
body.media-desktop div.toc-holder ul.child li.url {
  margin: 0.04em 0 !important;
}

body.media-desktop div.toc-holder ul.child li.book:not([data-itemlevel='0']) > a,
body.media-desktop div.toc-holder ul.child li.item > a,
body.media-desktop div.toc-holder ul.child li.url > a {
  position: relative;
  padding: 0.22em 0.16em 0.22em 1.34em !important;
  border-radius: 12px;
  color: var(--vika-shell-text-soft) !important;
  font-size: 15px !important;
}

body.media-desktop div.toc-holder ul.child li.book:not([data-itemlevel='0']) > a {
  font-weight: 600 !important;
  color: #31556a !important;
}

body.media-desktop div.toc-holder ul.child li.book:not([data-itemlevel='0']) > a::before {
  content: "+";
  position: absolute;
  left: 0.2em;
  top: 50%;
  display: block;
  width: 0.82em;
  height: 1em;
  color: #98adba;
  font-size: 1.12em;
  font-weight: 500;
  font-family: "Segoe UI Symbol", "Segoe UI", sans-serif;
  line-height: 1;
  text-align: center;
  transform: translateY(-50%);
}

body.media-desktop div.toc-holder ul.child li.book:not([data-itemlevel='0'])[aria-expanded='true'] > a::before {
  content: "\2212";
  color: #7f98a8;
}

body.media-desktop div.toc-holder ul.child li.item > a::before,
body.media-desktop div.toc-holder ul.child li.url > a::before {
  content: "";
  position: absolute;
  left: 0.42em;
  top: 0.9em;
  width: 0.28em;
  height: 0.28em;
  border-radius: 50%;
  background: #b0c4d1;
}

body.media-desktop div.toc-holder li.selected,
body.media-desktop div.toc-holder li.book.active {
  border-left: 0 !important;
}

body.media-desktop div.toc-holder li.selected::after,
body.media-desktop div.toc-holder li.book.active::after,
body.media-desktop div.toc-holder li.selected > a::after,
body.media-desktop div.toc-holder li.book.active > a::after {
  display: none !important;
}

body.media-desktop div.toc-holder ul.child li.book:not([data-itemlevel='0']) > a:hover,
body.media-desktop div.toc-holder ul.child li.item > a:hover,
body.media-desktop div.toc-holder ul.child li.url > a:hover {
  background: #f6fafc;
}

body.media-desktop div.toc-holder ul.child li.book:not([data-itemlevel='0'])[aria-expanded='true'] > a,
body.media-desktop div.toc-holder ul.child li.book.active > a,
body.media-desktop div.toc-holder ul.child li.item.selected > a,
body.media-desktop div.toc-holder ul.child li.url.selected > a {
  background: var(--vika-shell-active);
  box-shadow: none !important;
  color: var(--vika-shell-text) !important;
  font-weight: 700 !important;
}

body.media-desktop div.toc-holder ul.child ul.child {
  margin: 0.08em 0 0.22em 0.58em !important;
  padding: 0 0 0 0.8em !important;
  border-left: 1px solid var(--vika-shell-line);
}

body.media-desktop div.toc-holder ul.child ul.child li.book > a,
body.media-desktop div.toc-holder ul.child ul.child li.item > a,
body.media-desktop div.toc-holder ul.child ul.child li.url > a {
  font-size: 14px !important;
}

body.media-desktop div.toc-holder ul.child ul.child li.item > a::before,
body.media-desktop div.toc-holder ul.child ul.child li.url > a::before {
  top: 0.88em;
}

body.media-desktop div.toc-holder ul.child ul.child ul.child {
  margin-left: 0.46em !important;
  padding-left: 0.78em !important;
}

body.media-desktop.vika-topic-entry div.toc-holder > ul > li.book[data-itemlevel='0'][aria-expanded='true'] > a {
  background: transparent !important;
  box-shadow: none !important;
}

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

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

  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: 248px !important;
    min-width: 248px !important;
    max-width: 248px !important;
  }

  body.media-desktop div.topic,
  body.media-desktop div.searchresults.search-content {
    left: 248px !important;
  }
}

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