/*
Standard Settings and fixes for certain elements on all our wikis
IF our skin is activated which is done by adding Template:Header to a page
See detailed documentation in Dev/mediawiki
*/

/* ---------- */
/* 1. General */

*, *::before, *::after {
  box-sizing: border-box;
}

a {
  overflow-wrap: break-word;
}

pre, code, div.pre {
  font-family: 'Cousine', monospace, Courier !important;
  font-size: 13px;
  color: #444;
}

pre, div.pre {
  white-space: pre;
  background-color: rgb(221,221,221);
  margin-bottom: 1em;
  width: auto;
  padding: 1em;
  line-height: 1.3em;
  overflow: auto;
}

code, pre[data-code] {
  background-color: #f5f5f5;
  border-color: #e3e3e3;
  border-radius: 3px;
  color: #222;
  padding: 3px 7px;
  margin-left: -1px;
  word-break: break-word;
  display: inline;
  white-space: unset;
}

a > code {
  color: #00f;
}

div.pre p {
  font-size: 13px !important;
  margin: 0 !important;
}

/* 1.1. Scrollbar mobile */

::-webkit-scrollbar {
  -webkit-appearance: none;
}

::-webkit-scrollbar:vertical {
  width: 12px;
}

::-webkit-scrollbar:horizontal {
  height: 12px;
}

::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, .5);
  border-radius: 10px;
  border: 2px solid #ffffff;
}

::-webkit-scrollbar-track {
  border-radius: 10px;
  background-color: #ffffff;
}

/* 1.2. Container elements */

.mw-page-container {
  background: transparent;
  padding: 0;
  max-width: unset;
  min-width: unset !important;
}

#mw-page-base {
  background: transparent;
  height: 45px;
}

/* 1.3. Special Pages Logo */

#p-logo .mw-wiki-logo {
  background-size: 80%;
}

/* ----------------------- /*
/* 2. Hide Standard Header */

.mw-header {
  display: none;
}

/* --------------------- */
/* 3. Navigation related */

#contentSub {
  margin-left: 2px;
  margin-top: 12px;
  /* Deactivated as of 2025-05-20 */
  display: none;
}

#contentSub .subpages {
  font-size: 15px;
  padding: 6px 8px 7px 4px;
  border-bottom: 2px solid white;
  display: inline-block;
}

#contentSub .subpages, #contentSub .subpages a {
  color: #36b;
}

#mw-navigation, #catlinks {
  display: none;
}


/* ----------------- */
/* 4. Content styles */

#content {
  background: none;
  border: none;
  max-width: 960px;
  width: 100%;
  margin: 28px auto 0;
  padding: 0 12px;
}

.mw-content-container {
  max-width: unset;
  margin-left: unset !important;
}

#bodyContent {
  position: unset;
}

#mw-content-text {
  word-break: break-word;
  width: 100%;
}

/* 4.1. Headlines */

#mw-content-text h1,
#mw-content-text h2,
#mw-content-text h3,
#mw-content-text h4,
#mw-content-text h5,
#mw-content-text h6 {
  padding-bottom: .18em;
  color: #333;
  border-color: #777;
  background: transparent;
  margin: 0;
  font-weight: normal;
  font-family: 'Roboto';
  overflow: visible;
}

#mw-content-text h1:not(.toc *),
#mw-content-text h2:not(.toc *),
#mw-content-text h3:not(.toc *),
#mw-content-text h4:not(.toc *),
#mw-content-text h5:not(.toc *),
#mw-content-text h6:not(.toc *) {
  display: flow-root;
}

#mw-content-text h1 {
  font-size: 26px;
}

#mw-content-text h2 {
  font-size: 21px;
  padding-bottom: 3px;
}

#mw-content-text h3 {
  padding-bottom: 0;
  font-size: 19px;
}

#mw-content-text h4 {
  font-size: 17px;
  font-weight: bold;
}

#mw-content-text h5 {
  font-size: 17px;
}

#mw-content-text h6 {
  font-size: 15px;
  font-weight: bold;
}

#mw-content-text .mw-heading {
  background-color: transparent !important;
  display: flex;
  margin-bottom: .7em;
}

#mw-content-text .mw-heading1 {
  border-bottom: 2px solid #000;
}

#mw-content-text .mw-heading2 {
  border-bottom: 2px solid #333;
}

#mw-content-text .mw-heading3 {
  border-bottom: 1px solid #333;
}

@media (max-width: 600px) {
  #mw-content-text h1 { font-size: 23px; }
  #mw-content-text h2 { font-size: 20px; }
  #mw-content-text h3 { font-size: 18px; }
  #mw-content-text h4 { font-size: 17px; }
  #mw-content-text h5 { font-size: 16px; }
  #mw-content-text h5 { font-size: 15px; }
}

/* 4.1.1. mw edit section (headlines) */

#mw-content-text .mw-editsection {
  font-size: inherit;
  margin-left: .4em;
  line-height: inherit;
}

#mw-content-text .mw-editsection a {
  color: transparent;
  background-image: url('/w/images/thumb/b/b6/Edit-icon.png/60px-Edit-icon.png');
  background-repeat: no-repeat;
  background-position: 57%;
  background-size: contain;
  display: inline-block;
  height: .85em;
  filter: brightness(1.5);
  vertical-align: middle;

}

#mw-content-text .mw-editsection a:hover {
  transform: scale(1.3);
  filter: brightness(.5);
}

#mw-content-text .mw-editsection-bracket {
  display: none;
}

/* 4.2. Text structure elements */

#mw-content-text p {
  font-size: 15px;
}

/* a links - only real content links (in content area, very specific selector) */
#mw-content-text a:not(#toc a):not(.mininav a):not(.info-box a):not(.mw-editsection a):not(#custom-footer a):not(#custom-header a) {
  font-size: inherit;
  color: #1d67db;
}
#mw-content-text a:not(#toc a):not(.mininav a):not(.info-box a):not(.mw-editsection a):not(#custom-footer a):not(#custom-header a):visited {
  color: #844bcb;
}

#mw-content-text p {
  margin-top: .85em;
  margin-bottom: .85em;
  color: #444;
}

#mw-content-text ul, #mw-content-text ol {
  margin: .2em 0 .2em 1em;
}

#mw-content-text ul.gallery {
  margin-left: -5px;
}

#mw-content-text ul.gallery div.gallerytext p {
  margin: 0;
  color: #707070;
  text-align: center;
  font-style: italic;
}

#mw-content-text ul.gallery a:hover img {
  transform: scale(1.1);
}

#mw-content-text ol {
  margin-left: 1.25em;
}

#mw-content-text li {
  padding-left: .2em;
  font-size: 15px;
  color: #444;
}

#mw-content-text li:not(:last-child):not(.toclevel-1):not(.toclevel-2):not(.toclevel-3):not(.toclevel-4):not(.toclevel-5):not(.toclevel-6) {
  padding-bottom: 3px;
}

/* 4.3. Blockquote */

#mw-content-text blockquote {
  --normal: #ddd;
  --special: #44a9ff;

  display: flow-root;
  border: 1px solid var(--normal) !important;
  border-left-width: 6px !important;
  margin-left: 8px !important;
  position: relative;
  border-radius: 13px;
  margin-right: 0;
  padding: 10px 20px !important;
}

#mw-content-text blockquote.quotation {
  background: white;
  box-shadow: 2px 2px 4px 1px rgb( 0 0 0 / 7% );
  border: none !important;
  border-left: 6px solid var(--special) !important;
  padding: 18px 25px !important;
}

#mw-content-text blockquote::before {
  content: ' ';
  background-color: #f3f3f3;
  background-image: url("/w/images/thumb/5/55/Quotes-gray.png/50px-Quotes-gray.png");
  background-size: 55%;
  background-position: center;
  background-repeat: no-repeat;
  display: block;
  position: absolute;
  left: -18px;
  top: calc( 50% - 16px );
  height: 30px;
  width: 30px;
  border-radius: 50px;
  text-align: center;
  font-size: 48px;
  line-height: 52px;
  border: 1px solid var(--normal);
}

#mw-content-text blockquote.quotation:before {
  background-image: url("/w/images/thumb/d/dd/Quotes-blue.png/50px-Quotes-blue.png");
  border-color: var(--special);
  background-color: white;
}

#mw-content-text blockquote > * {
  color: #636363;
}

#mw-content-text blockquote > :first-child {
  margin-top: 0 !important;
}

#mw-content-text blockquote > :last-child,
#mw-content-text blockquote.quotation > :nth-last-child(2) {
  margin-bottom: 0 !important;
}

#mw-content-text blockquote .blockquote-context {
  position: relative;
  padding-left: 40px;
  display: block;
  margin-top: 20px;
  margin-bottom: 10px !important;
  color: black;
}

#mw-content-text blockquote .blockquote-context:before {
  content: ' ';
  border-top: 2px solid black;
  width: 30px;
  height: 0;
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
}

#mw-content-text blockquote .blockquote-context * {
  color: black;
}

#mw-content-text blockquote .blockquote-context a:not(.image) {
  text-decoration: underline;
}

#mw-content-text blockquote .blockquote-context a:not(.image):hover {
  color: #056ec7;
}

#mw-content-text blockquote .blockquote-context span.author-image img {
  height: 40px;
  width: auto;
  margin-right: 8px;
  display: block;
  float: left;
  position: relative;
  top: -9px;
}

/* 4.4. Expand/ Collapse Button */

#mw-content-text .mw-collapsible {
  border-radius: 8px;
  padding: 3px 18px;
  margin: 18px 0px;
  overflow: auto;
  border-color: #ccc;
}

#mw-content-text .mw-collapsible .mw-collapsible-toggle,
#mw-content-text .mw-collapsible:before,
.expand-or-collapse-all-button {
  height: 40px;
}

html.client-js #mw-content-text .mw-collapsible:before {
  opacity: 0;
  margin: 5px 0;
}

#mw-content-text .mw-collapsible .mw-collapsible-toggle,
.expand-or-collapse-all-button {
  padding: 4px 17px 5px 10px;
  border-radius: 5px;
  line-height: 30px;
  margin: 5px 0;
  border: none;
  background: #1C4FA0;
  margin-right: -9px;
  color: white;
  font-weight: bold;
}

#mw-content-text .mw-collapsible .mw-collapsible-toggle {
  margin-left: 5px;
}

#mw-content-text .mw-collapsible .mw-collapsible-toggle:hover,
.expand-or-collapse-all-button:hover {
  background-color: #2f6ebf;
}

#mw-content-text .mw-collapsible:not(.mwc-headline-normal-text-size) > p:nth-child(2) {
  margin: 9px 0;
  font-size: 18px;
}

#mw-content-text .mw-collapsible > h3 {
  border: none;
  padding: 0;
}

#mw-content-text .mw-collapsible > h3,
#mw-content-text .mw-collapsible > h4 {
  overflow: hidden;
}

#mw-content-text .mw-collapsible .mw-collapsible-toggle :is(a,span.mw-collapsible-text) {
  color: white;
  text-decoration: none;
}

#mw-content-text .mw-collapsible .mw-collapsible-toggle:before,
.expand-or-collapse-all-button.all-expanded:before {
  content: '\25B2'; /* BLACK UP-POINTING TRIANGLE */
  margin-right: 5px;
  font-size: 16px;
}

#mw-content-text .mw-collapsible.mw-collapsed .mw-collapsible-toggle:before,
.expand-or-collapse-all-button:not(.all-expanded):before {
  content: '\25BC'; /* BLACK DOWN-POINTING TRIANGLE */
}

#mw-content-text .mw-collapsible .mw-collapsible-toggle:after {
  content: '';
}

.expand-or-collapse-all-button {
  cursor: pointer;
}

.expand-or-collapse-all-button:not(.all-expanded) .collapse-text { display: none; }
.expand-or-collapse-all-button.all-expanded .expand-text { display: none; }

/* 4.5. Table */

.wikitable {
  background: transparent;
  border-collapse: separate;
  border: none;
  border-spacing: 3px;
  margin: 19px 0px 18px -4px !important;
  overflow: auto;
  display: block;
  position: relative;
}

.wikitable > caption {
  width: max-content;
  min-width: calc(100% - 6px);
  border: solid #dfdfdf;
  border-width: 0 0 3px 0;
  border-radius: 6px 6px 0 0;
  background: #ebebeb;
  color: #555;
  text-align: left;
  margin: 0 3px;
  padding: 5px 12px 5px 133px;
  font-weight: bold;
  font-size: 17px;
  font-style: italic;
  letter-spacing: .04em;
}

.wikitable > caption:before {
  font-weight: bold;
  content: "Table: ";
}

.wikitable > * > tr > th,
.wikitable > * > tr > td {
  border: none;
  border-radius: 4px;
  box-shadow: 0 0 3px rgba(255,255,255,.3);
  padding: 10px 15px;
  word-break: keep-all;
}

.wikitable > * > tr > th {
  background: #dfdfdf;
  vertical-align: top;
  word-break: normal;
}

.wikitable > * > tr > th a {
  color: #0C5BD4 !important;
}

.wikitable td {
  background: #ebebeb;
}

.wikitable,
.wikitable li,
.wikitable p {
  color: black !important;
}

.wikitable a {
  color: #0F53C1 !important;
}

/* 4.6. First Heading */

#firstHeading,
.first-heading {
  background: #fafafa;
  max-width: 100%;
  padding: 10px 17px 11px;
  margin: 25px 0 25px -2px;
  font-family: 'Roboto';
  color: #444;
  border: none;
  position: relative;
  font-size: 28px !important;
}

@media (max-width: 600px) {
  #firstHeading,
  .first-heading {
    font-size: 25px !important;
  }
}

/* 4.7. TOC - table of contents */

#toc {
  background: white;
  border-radius: 8px;
  box-shadow: 2px 2px 5px rgb(0, 0, 0, .09);
  border: 1px solid #e0e0e0;
  padding: 25px 30px 25px 20px;
  margin: 0 0 0 -2px;
  font-size: 100%;
  display: inline-block;
}

#toc .toctitle {
  text-align: left;
  margin-left: 17px;
}

#toc .toctitle h2 {
  color: #444;
  font-family: 'Roboto';
  font-size: 18px;
  font-weight: normal;
}

#toc .toctitle .toctogglespan {
  padding-left: 8px;
}

#toc .toctitle .toctogglespan:before, #toc .toctitle .toctogglespan:after {
  position: relative;
  top: -1px;
}

#toc .toctitle .toctogglelabel {
  font-size: 18px;
  padding: 0 6px 0 8px;
  outline: none;
}

#toc .toctitle .toctogglelabel:after {
  content: 'collapse \2191'; /* UPWARDS ARROW */
}

#toc #toctogglecheckbox:checked ~ .toctitle .toctogglelabel:after {
  content: 'expand \2193'; /* DOWNWARDS ARROW */
}

#toc .tocnumber {
  padding-right: .9em;
  color: #4F4F4F;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  word-break: normal;
}

#toc .toctext {
  word-break: break-word;
}

#toc > ul {
  margin-bottom: 0;
  display: table;
  table-layout: fixed;
}

#toc #toctogglecheckbox:checked ~ ul {
  display: none;
}

#toc ul ul {
  margin: 0 0 0 1.5em;
}

#toc a {
  line-height: 25px;
  display: table;
}

.toccolours {
  font-size: unset;
}

/* ------------------------------------------------------- */
/* 5. makes position:fixed work on old mobile web browsers */

.modal {
  -webkit-backface-visibility: hidden;
}

body.modal-open {
  overflow: visible;
}

.mw-workspace-container {
  max-width: unset;
}

/* --------------------- */
/* 6. Fixes for Searches */

/* Bootstrap Fix for Searches */

#searchform > .row {
  display: block !important;
}

/* Legacy Vector specific fixes */

#p-search {
  width: 100%;
}

#simpleSearch {
  max-width: unset;
  width: 100%;
}

#simpleSearch .vector-search-box-input {
  background: white;
  height: 60px;
  border: none !important;
  font-size: 20px;
  padding-left: 20px;
}

#searchButton {
  background-color: #77bafd;
  color: white;
  box-sizing: content-box;
  padding: 0 12px;
  opacity: 1;
}

#searchButton:hover {
  background-color: #469bf0;
}

/* -------------------------------------------------------- */
/* 7. Fix: overlapping of fixed header on page target jumps */

html, body {
  scroll-padding-top: 70px;
}

sup[id^=cite_ref-] {
  background-color: transparent !important;
}

/* ---------------------------------------------- */
/* 8. Widget:Free, :Freedom, :Non-freedom styling */

a.freelink,
a.nonfreedomlink {
  color: white !important;
  padding: 0.25em;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: bold;
}

a.freelink { background-color: green; }
a.freelink:hover { background-color: #0aad0a; }

a.nonfreedomlink { background-color: red; }
a.nonfreedomlink:hover { background-color: #ff6363; }

/* ---------------------- */
/* 9. Printing (physical) */

@media print {
  .image, .bg-image {
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  .mw-collapsible-content {
    display: block !important;
  }
}

/* -------------------------------- */
/* 10. Footer and after */

#footer {
  display: none;
}

#mw-data-after-content {
  margin-left: 0;
}

/* 10.1. Flagged Reviews */

#mw-fr-ratingselects {
  white-space: break-spaces;
  margin-right: 0;
}

#mw-fr-commentbox {
  max-width: 80vw;
}

/* -------------- */
/* 11. Sitenotice */

#content #siteNotice {
  display: block;
}

/* --------------------- */
/* 12. Dev pages Styling */

body:is(.rootpage-Dev,.rootpage-Design) {
  background-image: url(/w/images/5/59/Dev-background.svg);
}

body:is(.rootpage-Dev,.rootpage-Design) #custom-header {
  background-image: url(/w/images/5/59/Dev-background.svg);
  box-shadow: 2px 2px 4px rgba(0, 0, 0, .1);
  background-color: #f9f5e4;
  background-size: 110px 110px;
  border-bottom: 3px solid white;
}

body:is(.rootpage-Dev,.rootpage-Design) #custom-header > .style-wrapper:after {
  content: "Developer Zone";
  display: block;
  background: #f9f5e4;
  border: solid #fff;
  border-width: 0 2px 3px;
  border-radius: 0 0 8px 8px;
  padding: 0 8px 2px;
  position: absolute;
  right: 3px;
  top: 39px;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 1px;
  color: #555;
}

body:is(.rootpage-Dev,.rootpage-Design) #content {
  background: #f3f3f3;
}


/* ---------------------- */
/* 13. Button modification */
/* used on wiki/VirtualBox */

.mw-ui-button {
  border-radius: 20px;
}

.mw-ui-button:hover {
  transform: scale(1.1);
}

/* ------------------------------ */
/* 14. Cite Backlink improvements */

/* Arrow improvements */

.mw-cite-backlink {
  margin: 0 .2em 0 0;
}

.mw-cite-backlink,
.mw-cite-backlink > a {
  display: inline-block;
  height: 1em;
  line-height: 1em;
}

.mw-cite-backlink > a {
  min-width: 1em;
  text-align: center;
  transform: scale(1.6);
  line-height: .5em;
}

/* Visibility improvements */

@keyframes blinkOutline {
  0%, 100% {
    outline-color: #ff6e6e;
  }
  50% {
    outline-color: transparent;
  }
}

li[id^=cite_note-]:target,
sup[id^=cite_ref-]:target > a {
  animation: blinkOutline 1.5s 2;
  outline: 3px solid #ff6e6e;
  outline-offset: 1px;
  background-color: #fff9a5 !important;
}


/* ---------------------- */
/* 15. Image improvements */

#mw-content-text span[typeof="mw:File"] img,
#mw-content-text span[typeof="mw:File/Frameless"] img {
  max-width: 100%;
  height: auto;
}

/* ----------------------------- */
/* 16. Image border modification */

.mw-image-border > a:first-child > *:first-child:not(.mw-broken-media),
.mw-image-border > span:first-child > *:first-child:not(.mw-broken-media) {
  border: 1px solid #838383;
}

/* --------------------------- */
/* 17. Thumbnails Modification */

figure[typeof="mw:File/Thumb"] {
  margin-top: 0 !important;
  max-width: 100%;
  border-radius: 5px;
  padding: 0 !important;
  min-width: 100px;
  box-shadow: 3px 3px 5px 0px rgb(0 0 0/.1);
  display: block;
  width: min-content;
}

figure[typeof="mw:File/Thumb"] > :is(a,span) {
  width: max-content;
  display: block;
}

figure[typeof="mw:File/Thumb"] > :is(a,span) > img {
  max-width: 100%;
  height: auto;
  border: none !important;
  margin: 0 !important;
  background: none !important;
}

/* hide magnify-box if "link"-parameter is not used because then link has mw-file-description class and links to image */
figure[typeof~='mw:File/Thumb'] > .mw-file-description::after {
  display: none;
}

figure[typeof="mw:File/Thumb"] > a.mw-file-magnify {
  float: right;
  margin-top: 9px;
  margin-right: -4px;
}

figure[typeof="mw:File/Thumb"] > figcaption {
  padding: 5px;
  display: block;
  background: transparent;
  border: none;
}

figure[typeof="mw:File/Thumb"] > a.mw-file-magnify + figcaption {
  padding-right: 18px;
}

figure[typeof="mw:File/Thumb"] > figcaption:before {
  display: none;
}

@media (max-width: 540px) {
  :not(.thumb-gallery):not(.thumb-not-responsive) > figure[typeof="mw:File/Thumb"] {
    float: none !important;
    margin-left: 0;
    padding: 0 10px 0 0;
    max-width: 100%;
    display: block;
    margin: 15px auto !important;
  }
}

/* 17.1. classes thumb-hide-enlarge and hide-enlarge */

.thumb-hide-enlarge > figure[typeof="mw:File/Thumb"] > a.mw-file-description:after,
figure[typeof="mw:File/Thumb"].thumb-hide-enlarge > a.mw-file-description:after {
  display: none;
}

.thumb-hide-enlarge > figure[typeof="mw:File/Thumb"] > figcaption,
figure[typeof="mw:File/Thumb"].thumb-hide-enlarge > figcaption {
  display: none;
}

/* -------------- */
/* 18. EmbedVideo */

.embedvideo {
  max-width: 100%;
}

.embedvideo figcaption {
  font-size: unset;
}

.embedvideo .embedvideo-loader__fakeButton {
  color: transparent !important;
  background-color: rgb(137 137 137 / 49%);
  border: 3px solid white;
  height: 100px;
  width: 100px;
}

.embedvideo .embedvideo-loader__fakeButton:before {
  content: "\25B6"; /* BLACK RIGHT-POINTING TRIANGLE */
  color: #fff !important;
  font-weight: 700;
  position: absolute;
  left: calc(50% - 17px);
  font-size: 56px;
  top: -3px;
}

.embedvideo .embedvideo-loader__footer {
  display: none;
}

/* ------------------------------ */
/* 19. Mediawiki Popups Extension */

.mwe-popups {
  z-index: 1000;
}

/*
[[Category:MultiWiki]]
*/
