/*
    Add the css rules common to all themes here. In general, everything
    within div.moin-content should be defined here and everything within
    the web page header, footer, and sidebars should be defined within the
    "theme.css" files.

    Any theme may have a variables.css file that redefines the colors used within
    div.moin-content.
    Themes may also override any of the rules defined here by adding rules to the theme.css file.
*/

/* smileys -- <span class="moin-text-icon moin-smile">:-)</span> */
.moin-text-icon { font-size: 0; color: transparent; }
.moin-alert:before { content: url('../img/icons/alert.png'); }
.moin-angry:before { content: url('../img/icons/angry.png'); }
.moin-attention:before { content: url('../img/icons/attention.png'); }
.moin-biggrin:before { content: url('../img/icons/biggrin.png'); }
.moin-checkmark:before { content: url('../img/icons/checkmark.png'); }
.moin-devil:before { content: url('../img/icons/devil.png'); }
.moin-frown:before { content: url('../img/icons/frown.png'); }
.moin-icon-error:before { content: url('../img/icons/icon-error.png'); }
.moin-icon-info:before { content: url('../img/icons/icon-info.png'); }
.moin-idea:before { content: url('../img/icons/idea.png'); }
.moin-ohwell:before { content: url('../img/icons/ohwell.png'); }
.moin-prio1:before { content: url('../img/icons/prio1.png'); }
.moin-prio2:before { content: url('../img/icons/prio2.png'); }
.moin-prio3:before { content: url('../img/icons/prio3.png'); }
.moin-redface:before { content: url('../img/icons/redface.png'); }
.moin-sad:before { content: url('../img/icons/sad.png'); }
.moin-smile:before { content: url('../img/icons/smile.png'); }
.moin-smile2:before { content: url('../img/icons/smile2.png'); }
.moin-smile3:before { content: url('../img/icons/smile3.png'); }
.moin-smile4:before { content: url('../img/icons/smile4.png'); }
.moin-star_off:before { content: url('../img/icons/star_off.png'); }
.moin-star_on:before { content: url('../img/icons/star_on.png'); }
.moin-thumbs-up:before { content: url('../img/icons/thumbs-up.png'); }
.moin-tired:before { content: url('../img/icons/tired.png'); }
.moin-tongue:before { content: url('../img/icons/tongue.png'); }
/* end of smileys */

/* admonitions  - no moin- prefix added  here, these classes are used within wiki markup:
      Moin wiki: {{{#!wiki caution
      reST: .. caution:: some text
      Docbook: <caution><para>some text</para></caution>

      TODO: create icons for attention, danger, error, and hint.
*/
div.attention:before { content: url("../img/icons/admon-important.png"); float: left; padding-right: 1em; }
div.caution:before { content: url("../img/icons/admon-caution.png"); float: left; padding-right: 1em; }
div.danger:before { content: url("../img/icons/admon-warning.png"); float: left; padding-right: 1em; }
div.error:before { content: url("../img/icons/admon-warning.png"); float: left; padding-right: 1em; }
div.hint:before { content: url("../img/icons/admon-tip.png"); float: left; padding-right: 1em; }
div.important:before { content: url("../img/icons/admon-important.png"); float: left; padding-right: 1em; }
div.note:before { content: url("../img/icons/admon-note.png"); float: left; padding-right: 1em; }
div.tip:before { content: url("../img/icons/admon-tip.png"); float: left; padding-right: 1em; }
div.warning:before { content: url("../img/icons/admon-warning.png"); float: left; padding-right: 1em; }
div.attention,
div.caution,
div.danger,
div.error,
div.hint,
div.important,
div.note,
div.tip,
div.warning { color: var(--primary); border: var(--border-style);
    margin: 10px 30px; min-height: 64px; padding: 8px; clear: both; }
div.attention > ol,
div.attention > ul,
div.attention > p,
div.caution > ol,
div.caution > ul,
div.caution > p,
div.danger > ol,
div.danger > ul,
div.danger > p,
div.error > ol,
div.error > ul,
div.error > p,
div.hint > ol,
div.hint > ul,
div.hint > p,
div.important > ol,
div.important > ul,
div.important > p,
div.note > ol,
div.note > ul,
div.note > p,
div.tip > ol,
div.tip > ul,
div.tip > p,
div.warning > ol,
div.warning > ul,
div.warning > p { margin-top: 8px; padding-left: 4em; }
/* Admonition extension of Markdown parser */
/* TODO: unify with "p.moin-title" (used by rST for admonition title and more) */
.admonition-title {
    font-weight: bold;
    font-size: 1.1em;
}
/* end of admonitions */

/* mime type icons */
.moin-www:before,
.moin-http:before,
.moin-https:before { content: url("../img/icons/moin-www.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-file:before,
.moin-ftp:before { content: url("../img/icons/moin-ftp.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-nntp:before,
.moin-news:before { content: url("../img/icons/moin-news.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-telnet:before,
.moin-ssh:before,
.moin-irc:before,
.moin-ircs:before { content: url("../img/icons/moin-telnet.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-mailto:before { content: url("../img/icons/moin-email.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-attachment:before { content: url("../img/icons/moin-attach.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-interwiki:before { content: url("../img/icons/moin-inter.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-action:before { content: url("../img/icons/moin-action.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-mime-text:before { content: url("../img/icons/moin-text.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-mime-webp:before,
.moin-mime-image:before { content: url("../img/icons/moin-image.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-mime-audio:before { content: url("../img/icons/moin-audio.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-mime-video:before { content: url("../img/icons/moin-video.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-mime-application:before { content: url("../img/icons/moin-application.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-mime-pdf:before { content: url("../img/icons/moin-pdf.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-mime-package:before { content: url("../img/icons/moin-package.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
.moin-mime-drawing:before { content: url("../img/icons/moin-drawing.png"); margin: 0 .2em; vertical-align: middle; cursor: pointer; }
/* end of mime type icons */

/* start of userstyles - CSS classes that are defined for use in wiki markup: {{{#!wiki solid  */
.comment { color: var(--comment); background-color: var(--bg-comment); }
.red { background-color: var(--bg-user-red); }
.green { background-color: var(--bg-user-green); }
.blue { background-color: var(--bg-user-blue); }
.yellow { background-color: var(--bg-user-yellow); }
.lightyellow { background-color: lightyellow; }
.orange { background-color: var(--bg-user-orange); }
.gray { background-color: var(--bg-user-gray); }
.grey { background-color: var(--bg-user-gray); }
.lightgray { background-color: lightgray; }
/* .code -- see "preformatted blocks and inline code" below */
.code.wrap, pre.wrap, code.wrap { white-space: pre-wrap; overflow-wrap: break-word; word-break: break-all; }
.solid { border: 2px solid var(--border-code); padding: 2px; clear: both; }
.dashed { border: 2px dashed var(--border-code); padding: 2px; clear: both; }
.dotted {  border: 2px dotted var(--border-code); padding: 2px; clear: both; }
/* position tables and nowiki blocks */
.float-right { float: right; margin-left: 1em; margin-bottom: 1em; }
.float-left { float: left; margin-right: 1em; margin-bottom: 1em; }
.inline { display: inline-block; margin-right: 1em; margin-bottom: 1em; vertical-align: top; }
.middle { display: table; margin-left: auto; margin-right: auto; clear: both; }
.clear-right { clear: right; }
.clear-left { clear: left; }
.clear-both { clear: both; }
/* more css classes defined for use by wiki editors */
.left { text-align: left; }
.center { text-align: center; }
.right { text-align: right; }
.justify { text-align: justify; }
.monospaced { font-family: monospace; }
.resize { max-width: 100%; height: auto; }
span.cite { font-style: italic; } /* emulate <cite> */
/* end of userstyles */

/* links */
a { text-decoration:none; }
a:link { color: var(--link); }
a:visited { color: var(--link-visited); }
a:hover { color: var(--link-hover); }
a:active { color: var(--link-active); }
a.moin-nonexistent:visited,
a.moin-nonexistent { color: var(--disabled); }
/* the rules below may be artifacts that are no longer used */
a.moin-nonexistent:visited img,
a.moin-nonexistent img,
a.moin-nonexistent:visited object,
a.moin-nonexistent object {  background: var(--bg-disabled);  border: 3px dashed var(--border-disabled); }
/* end of links */

/* misc highlighting */
.moin-error:before { content: url("../img/icons/admon-warning.png"); float: left; height: 100%; padding: 0 .5em; }
.moin-error:not(input) {
    color: var(--error);
    background-color: var(--bg-error);
    border: 1px solid var(--border);
    border-radius: 4px;
    margin-top: .5em;
    min-height: 12px;
    padding: 8px; clear: both; display: inline-block; }
.moin-highlight { background-color: var(--bg-hilite); padding: 1px; }
.moin-showhide { margin-left: 10px; }
.moin-disabled { color: var(--disabled); }
.moin-summary { margin-top: .5em; font-style: italic; }
.moin-icon-macro { color: var(--error); }
/* end misc highlighting */

/* a <div> styled like a <p> */
.moin-p, .db-formalpara, .db-para { margin: 1em 0; } /* DocBook paragraphs may contain block elements */

/* create item view */
#moin-create-table {width: 95%; margin-left: auto; margin-right: auto; border:none; }
#moin-create-table tbody tr th { margin:2px; }
#moin-create-table tbody tr td { background: var(--bg-primary); }
#moin-create-table tbody tr > td { padding-left: 2em; background: var(--bg-primary); }
#moin-create-table tbody tr td a { color: var(--link); }
/* end create item view */

/* position transcluded image or object - the left, center, right rules in userstyles are compatible with the rules below */
.moin-item-wrapper.left { float: left; }
.moin-item-wrapper.center { width: 100%; text-align: center; }
.moin-item-wrapper.right { float: right; }
.moin-item-wrapper.middle { vertical-align: middle; }
.moin-item-wrapper.top { vertical-align: top; }
.moin-item-wrapper.bottom { vertical-align: bottom; }
/* docbook transclusions */
.db-inlinemediaobject.left { float: left; }
.db-inlinemediaobject.center { width: 100%; text-align: center; }
.db-inlinemediaobject.right { float: right; }
.db-inlinemediaobject.middle { vertical-align: middle; }
.db-inlinemediaobject.top { vertical-align: top; }
.db-inlinemediaobject.bottom { vertical-align: bottom; }
/* end of transclusion positioning */

/* transclusion wrapper overlays */
.moin-transclusion > * { max-width: 100%; }
.moin-item-wrapper { position: relative; display: inline-block; }
div.moin-item-wrapper { /* force bottom border of transcluded headings to extend across entire page */ width: 100%; }
div.moin-item-wrapper,
div.moin-item-wrapper > div,
div.moin-item-wrapper > div > p:first-child,
div.moin-item-wrapper > div > p:last-child { margin: 0; }
div.moin-item-wrapper > div > p:first-child ~ p:last-child { margin-top: 1em; }
a.moin-item-overlay-ul:link,
a.moin-item-overlay-ul:visited,
a.moin-item-overlay-ul:active,
a.moin-item-overlay-lr:link,
a.moin-item-overlay-lr:visited,
a.moin-item-overlay-lr:active { color: transparent; }
.moin-item-overlay-ul,
.moin-item-overlay-lr { display: none; position: absolute; color: transparent; background-color: transparent;
    font-size: 1.2em; font-weight: bold; margin: 0; opacity: .5; padding: 1px; border-color: var(--overlay);
    border-style: double; }
.moin-item-overlay-ul { top: -4px; left: -4px; border-width: 3px 0 0 3px; }
.moin-item-overlay-lr { bottom: -4px; right: -4px; border-width: 0 3px 3px 0; }
a.moin-item-overlay-ul:hover,
a.moin-item-overlay-ul:hover ~ a.moin-item-overlay-lr,
a.moin-item-overlay-lr:hover { opacity: .8; background-color: var(--bg-trans-hover); color: var(--overlay); text-decoration: none; }
/* end transclusion wrapper overlays */

/* diffs */
.moin-diff { width: 100%; table-layout: fixed; }
.moin-diff-header { vertical-align: top; font-size: 92%; }
.moin-diff-info { margin: .33em .25em; }
.moin-diff-info-value { white-space: normal; }
.moin-diff-info-caption { display: inline-block; min-width: 5em; }
.moin-diff-revision-caption { text-align: center; font-weight: bold; font-size: 1.25em; padding-bottom: 5px; }
.moin-diff-revision-caption i { padding: 0 6px; }
.moin-diff-line-number { background-color: var(--bg-diff); }
.moin-diff-added { background-color: var(--bg-diff-added); vertical-align: top; width: 50%;
    white-space: pre-wrap; word-wrap: break-word; font-family: monospace; }
.moin-diff-added span { background-color: var(--bg-diff-added-text); }
.moin-diff-removed { background-color: var(--bg-diff-removed-text); vertical-align: top; width: 50%;
    white-space: pre-wrap; word-wrap: break-word; font-family: monospace; }
.moin-diff-removed span { background-color: var(--bg-diff-removed); }
.moin-diff-highlight { background-color: var(--bg-diff-hilite); }
.moin-diff-revert { clear: both; float: right; margin: 1em 0; }
/* end diffs */

/* search  */
.moin-search-options-table { width: 100%; }
#moin-searchform { margin: 2px 12px 0 0; padding: 0; font-size: .82em; float: right; text-align: right; width: 15em; }
#moin-searchform div.moin-float-fix { display: inline; }
#moin-search-submit { text-indent: -9000%; margin-left: -26px; width: 20px; height: 16px;
    background: url("../img/icons/moin-search.png") center center no-repeat; background-size: 16px 16px; border: none;
    overflow: hidden; vertical-align: middle; cursor: pointer; padding: 0; box-shadow: none; }
.moin-search-query { padding-right: 20px; font-size: 100%; vertical-align: middle; color: var(--primary);
    background-color: var(--bg-primary); border: var(--border-style);
    border-radius: 5px; }
#moin-long-searchform { padding: 0; font-size: 1em; text-align: left; }
#moin-long-searchform div { margin: 0; }
#moin-long-searchform .moin-search-query { width: 90%; margin-left: 0; }
.moin-search-option-bar { font-size: 1.25em; font-weight: bold; cursor: pointer;  color: var(--link); }
.moin-search-hit-info { display: inline; }
.moin-search-hits { font-weight: bold; }
.moin-search-results { font-size: .92em; }
.moin-found-text { margin-top: 0; margin-bottom: 0; }
.moin-suggestions { font-weight: bold; }
.moin-suggestion-terms { font-size: .92em; font-weight: normal; color: var(--muted); }
.moin-search-name { font-weight: bold; font-size: 1.25em; padding-right: 1em; }
.moin-search-match { margin-top: 1.5em; margin-bottom: .2em; }
.moin-search-scope { margin-bottom: 1em; font-size: 0.95em; color: #555; }

/* misc moin css keywords */
.moin-wordbreak { word-break: break-all; word-wrap: break-word; }
.hidden { display: none; visibility: collapse; }
.moin-integer { text-align: right; padding-right: 1em; }
.moin-big { font-size: 1.17em; }
.moin-bigger { font-size: 1.5em; }
.moin-small { font-size: .83em; }
.moin-tiny { font-size: .5em; vertical-align: 0.3em; }
.moin-inline-label { display: inline; padding-left: 1em;}
.moin-link-list li { padding: 2px 0; }

/* item ACL report */
.moin-acl-report { width: 100%; border-collapse: collapse; display: table; }
.moin-acl-heading { display: table-row; }
.moin-acl-heading > div { display: table-cell; border: 1px solid var(--border); background-color: var(--bg-heading);
    text-align: left; color: var(--primary); padding: .3em .4em; vertical-align: middle; font-weight: bold; width: 50%; }
.moin-acl-form { display: table-row; border: 0; }
.moin-acl-name-cell { display: table-cell; border: 1px solid var(--border); vertical-align: top; position:relative;
    padding: .3em .4em; word-break: break-all; }
.moin-acl-name-cell > input { position:absolute; bottom: 0; right: 0; }
.moin-acl-rule-cell { display: table-cell; border: 1px solid var(--border); }
.moin-acl-rule-cell textarea { border: 0; min-height: 3em; }

.moin-acl-default .moin-acl-string { color: var(--muted); background-color: var(--bg-code);}
.moin-acl-rule-cell .moin-acl-edit-disable { color: var(--disabled); }
.moin-acl-string { padding: .3em .4em; width: 100%; word-wrap: break-word; }
.moin-acl-count { float: right; font-weight: bold; }

/* tablesorter  - adding a moin-sortable class to a table enables JS sorting of table columns */
.tablesorter-header { background-image: url('../img/bg.png'); background-repeat: no-repeat; background-position: left center; }
.tablesorter-header.tablesorter-headerAsc { background-image: url('../img/asc.png'); }
.tablesorter-header.tablesorter-headerDesc { background-image: url('../img/desc.png'); }
.tablesorter-header.sorter-false { background-image: None; }
.tablesorter-header-inner { padding-left: 10px; cursor: pointer; }
.sorter-false > .tablesorter-header-inner { padding-left: 0; }

/* tags tab */
ul.moin-tags { display: block; margin-left: 0; }
ul.moin-tags > li { padding: 5px 0; display: inline-block; text-align: center; width: 300px; }
ul.moin-tags li.weight0 { font-size: 100%; }
ul.moin-tags li.weight1 { font-size: 120%; }
ul.moin-tags li.weight2 { font-size: 140%; }
ul.moin-tags li.weight3 { font-size: 160%; }
ul.moin-tags li.weight4 { font-size: 180%; }
ul.moin-tags li.weight5 { font-size: 200%; }
ul.moin-tags li.weight6 { font-size: 220%; }
ul.moin-tags li.weight7 { font-size: 240%; }
ul.moin-tags li.weight8 { font-size: 260%; }
ul.moin-tags li.weight9 { font-size: 280%; }

/* footnotes */
.moin-footnotes { border-top: 1px solid var(--border-footnotes); margin: 2em 0 0 0; }
[role="doc-footnote"] { margin: 0.5em 1.5em }  /* also overrides the generic "aside" styling below */
[role="doc-footnote"] > :first-child { display: inline-block; min-width: 1.2em;
    text-align: right; margin: 0  0.3em 0 -1.5em; }  /* hanging indent */
[role="doc-footnote"] > :first-child + * { display: inline-block; margin: 0; vertical-align: top; }
[role="doc-noteref"] { margin-left: 0.25ex; }
[role="doc-noteref"] + [role="doc-noteref"] { margin-left: 0.5ex; }
/* moin default table styling */
table { margin: .5em 0; }
caption { border: 1px solid var(--border); border-bottom: 0;
    background-color: var(--bg-heading); font-size: 1.25em; font-weight: bold; }
tr > th,
tr > td { padding: .3em .4em; vertical-align: middle; text-align: left; }
thead > tr > td,
tr > th { border: 1px solid var(--border); background-color: var(--bg-heading);
    text-align: left; color: var(--primary); }
tr > td { border: 1px solid var(--border); }
td p { margin: 0; padding: 0; }
#moin-content table > thead { background-color: var(--bg-heading); }
#moin-content table > tfoot { background-color: var(--bg-heading); }
.moin-thead { background-color: var(--bg-heading); } /* creole table headings in left column */

/* alternate table and admonition styling with no borders */
div.no-borders,
.no-borders,
.no-borders caption,
.no-borders th,
.no-borders td { border-width: 0; }

/* zebra table styling */

.zebra td form input { box-shadow: none; }
.zebra tbody tr:nth-child(even),
.zebra > tr:nth-child(odd) { background-color: var(--bg-zebra); }

/* table width for users */
.width-50 { width: 50%; }
.width-90 { width: 90%; }
.width-99 { width: 99%; }

/* footers */
#moin-footer { clear: both; margin: 0; width: 100%; }
#moin-wiki-license,
#moin-version,
#moin-timings { margin: 10px 20px; text-align: left; font-size: .7em; color: var(--muted); float: left; clear: left; }
#moin-pageinfo, #moin-credits { margin: 0 20px; text-align: left; font-size: .7em; color: var(--muted); }
#moin-creditlogos { display: flex; align-items: end; column-gap: 6pt; }
#moin-creditlogos a { display: grid; }
#moin-credits-container { display: flex; width: 100%; justify-content: space-between;
    align-items: end; margin-bottom: 10pt; }
#moin-options-for-javascript {display: none; }

/* ordered lists */
ol,
ul { margin-top: .5em; margin-bottom: .5em; }
li p { margin: .25em 0; }
ol.moin-upperalpha-list { list-style-type: upper-alpha; }
ol.moin-loweralpha-list { list-style-type: lower-alpha; }
ol.moin-upperroman-list { list-style-type: upper-roman; }
ol.moin-lowerroman-list { list-style-type: lower-roman; }
ul.moin-nobullet-list { list-style-type: none; }
li ol,
li ul { margin-top: .25em; }

/* definition lists  and blockquotes */
dt { margin-top: .5em; font-weight: bold; }
dl > dd { font-size: .92em; margin-left: 3em; margin-top: 0; margin-bottom: 0; }
dd { margin: .25em 0; }
dd + dd { margin-top: .67em; }
blockquote { padding-left: 2em; font-size: .92em; }
blockquote blockquote { font-size: 1em; }
ul blockquote { padding-left: 0; font-size: 1em; }
li > p { margin-top: 0; margin-bottom: 0; }
.rst-attribution { font-style: italic; }
.rst-attribution:before { content: "—"; }

/* moinpage elements for rST line-blocks */
.moin-line-block > .moin-line-block { margin-left: 2em; }
.moin-line-block-line:empty { min-height: 1em; }

/* rST topic and rST/DocBook sidebar */
aside { margin-left: 2em; } /* content outside of the document's main text */
aside.sidebar {
    color: var(--primary); border: var(--border-style);
    margin: 10px 30px; padding: 8px; }

/* horizontal rules */
hr { height: 1px; background-color: var(--border); border: 0; margin: .9em 0; }
.moin-hr1 { height: 2px; }
.moin-hr2 { height: 3px; }
.moin-hr3 { height: 5px; }
.moin-hr4 { height: 7px; }
.moin-hr5 { height: 9px; }
.moin-hr6 { height: 12px; }

/* headings */
h1 { font-size: 2em; margin: .67em 0; border-bottom: 5px solid var(--border); padding-bottom: 5px; }
h2 { font-size: 1.5em; margin: .75em 0; padding-bottom: 4px; }
h3 { font-size: 1.17em; margin: .83em 0; padding-bottom: 3px; }
h4 { margin: 1.12em 0; padding-bottom: 2px; }
h5 { font-size: .83em; margin: 1.5em 0; padding-bottom: 2px; }
h6 { font-size: .75em; margin: 1.67em 0; padding-bottom: 2px; }
h2,
h3,
h4,
h5,
h6 { border-bottom: 3px solid var(--border); }
/* trickery for use in help pages, look-alike h1 and h2 that will not appear in TOC */
.h1 { font-size: 2em; margin: .67em 0; border-bottom: 5px solid var(--border); padding-bottom: 5px; }
.h2 { font-size: 1.5em; margin: .75em 0; padding-bottom: 4px; border-bottom: 3px solid var(--border); }
.moin-pagetitle { font-weight: bold; font-size: 2em; margin: .67em 0; border-bottom: 5px solid var(--border); padding-bottom: 5px; }

/* heading permalinks */
.moin-permalink { opacity: .2; padding-left: .3em; }
/* link = foc1; paragraph = f1dd; eject = fo52; */
.moin-permalink:after { content: "\f0c1"; font-family: FontAwesome; }

/* informal headings (rST rubric or title in admonition, sidebar, or topic) */
.moin-title, .db-title { font-weight: bold; }
/* run-in heading/title of a DocBook <formalpara> */
.db-formalpara > .db-title { float: left; margin-right: 1ex; }
/* subheadings */
:has(+p.moin-subheading) { border-bottom: none; padding-bottom: 0; margin-bottom: .2em; }
p.moin-subheading { font-weight: bold; font-size: .83em; margin-top: .2em; }
h1 + p.moin-subheading { font-size: 1.5em; border-bottom: 5px solid var(--border); padding-bottom: 0.3em; }
/* end of headings */

/* buttons */

a.moin-button:link,
a.moin-button:visited,
a.moin-button:hover,
a.moin-button:active { color: var(--primary); text-decoration: none; }
.moin-button { background: var(--bg-button); border: 1px solid var(--border-button);
    border-radius: 6px; cursor: pointer; font-size: 0.75em; font-weight: bold; padding: 4px 15px; margin: .3em; }
.moin-button.moin-button-disabled { background: var(--bg-disabled); }
.moin-button:hover,
.moin-button:focus { box-shadow: 2px 2px 1px var(--border-button-hover); outline: none; }
.moin-button:active {background: var(--bg-button-active); color: var(--inverse); }
/* was bg-color2 DDD */
.moin-button:disabled { color: var(--disabled); background: var(--bg-disabled); }
.moin-button:disabled:hover { box-shadow: none; }
.moin-button-less { border: 0; background: inherit; color: var(--link); }

/* preformatted blocks and inline code */
.code, pre, code { background-color: var(--bg-code);
    font-family: Menlo, Monaco, Consolas, "Courier New", monospace; }
div.code, pre { clear: both; padding: 7px 10px; margin: .75em 0;
    border: 1px solid var(--border-code); border-radius: 4px; }
span.code, code { white-space: pre-wrap; overflow-wrap: anywhere; }

/* table of contents (div.toc is for markdown parser) */
div.moin-table-of-contents,
div.toc { border: 1px solid var(--border); color: var(--primary);
    background: var(--bg-primary); font-size: 80%; margin: .5em 0 .75em 1em;
    padding: .5em .75em .5em .5em; text-indent: -1em; max-width: 35%; text-align: left; float: right;
    clear: both; box-shadow: 3px 3px 6px #9d9d9b; border-radius: 15px; }
div.moin-table-of-contents ol,
div.toc ul { margin: 0; padding: 0 0 0 .92em; }
div.moin-table-of-contents li,
div.toc li { margin: .12em 0 0; padding: 0; list-style: none; }
div.moin-table-of-contents-heading { font-weight: bold; padding: 0; margin: 0 0 .5em 1em; letter-spacing: .075em; }

/* DocBook captions for video and audio */
div.db-mediaobject > span,
div.db-mediaobject > span > span.moin-item-wrapper,
div.db-mediaobject > span > span.db.caption { display: block; text-align: center; }
span.db-inlinemediaobject span.db-caption { display: none; } /* inline captions are ugly */

/* Global Index */
.moin-index { width: 100%; }
.moin-index-icons { width: 4em; }
.moin-index tr th { text-align: center; }
.moin-clr { clear: both; }
.moin-index-menu { margin-bottom: 1em; }
.moin-index-menu  > p > i { margin-bottom: 1em; color: red; }
.moin-index-menu li { display: inline-block; }
.moin-select-allitem { display: inline-block; cursor: default; text-align: left; }
.moin-download-link { display: none; }

.moin-contenttype-selection { background: var(--bg-primary); border: 3px solid var(--border); border-radius: 7px; padding: 1em; }
.moin-contenttype-selection div { padding: 0 0 .5em 0; height: 1em; text-align: center; }
.moin-contenttype-selection form { z-index: 2; padding: .2em; }
.moin-contenttype-selection ul li { list-style-type: none; }
.moin-contenttype-selection ul li label { display: inline; vertical-align: middle; font-size: 1em; }
.moin-contenttype-selection ul li .helper-text { margin-left: 1em; font-size: .85em; color: var(--muted); }
.moin-contenttype-selection form input[type="submit"] { font-size: .9em; }
.moin-filter-toggle { margin: .5em 2em; }
.moin-index-path { margin-left: .5em; margin-top: 2em; font-size: 1.33em; }
.moin-path-separator { font-size: 120%; color: var(--primary); }
.moin-index-separator { clear: both; border-top: 3px solid var(--border);
    width: 99%; margin-left: .5%; margin-bottom: 1.5em; display: none; }

.moin-namespace-selection { background: var(--bg-primary); border: 3px solid var(--border); border-radius: 7px; padding: .2em 1em; }
.moin-namespace-selection ul li { list-style-type: none; font-size: 1.25em; }

.moin-newitem-selection { background: var(--bg-primary); border: 3px solid var(--border); border-radius: 7px; padding: 1em; }
.moin-newitem-toggle,
.moin-ns-toggle,
.moin-ct-toggle { color: var(--primary); }
#moin-newitem { width: 50%; }
.moin-new-item { margin-left: 1em; }
#moin-initials { width: 90%; margin: 1em auto; text-align: center; }
#moin-initials a { display: inline-block; margin: 2px 1px; padding: 4px 5px; }
#moin-initials a.selected { background: var(--bg-inverse); border-radius: 5px;
    color: var(--inverse); text-decoration: none; }
.moin-align-right { text-align: right; float: right; }
.moin-align-right ul { margin: 0; padding: 0; }
.moin-align-right ul li.action-bar { list-style-type: none; display: inline-block; }

p.moin-selected-groups { font-size: 1.25em; font-weight: bold; }
li.moin-selected-groups { font-size: 1em; font-weight: bold; }

#popup { padding: 0; width: 80%; position: absolute; top: 10em; left: 10%; z-index: 10;
    border: 3px solid var(--border-popup); }
.popup-header { background: var(--bg-popup-header); color: var(--inverse);
    font-size: 1.25em; padding: 10px; margin: 0; font-weight: bold; }
.popup-closer.popup-cancel { background-color: var(--bg-close); color: var(--inverse);
    font-size: 1em; padding: 1px 4px; margin: 0; float: right; cursor: pointer; border: none; border-radius: 0; }
.popup-body { clear: both; background: var(--bg-primary); color: var(--primary); padding: 10px; margin: 0; }
.popup-comment { margin-bottom: 1em; }
.popup-body input[type="text"] { width: 96%; }
.popup-container { margin: 0; }
.popup-names { font-weight: bold; }
#lightbox { background: var(--bg-primary); opacity: .7; position: absolute; left: 0; top: 0;
    width: 100%; height: 100%; z-index: 9; margin: 0; display: none; }

/* file upload on global index */

.jfu-file { background: linear-gradient(to right, var(--jfu-progress) 50%, transparent 50%); background-size: 200% 100%;
   background-position: right bottom; transition:all 1s ease; padding: 1em; }
.jfu-file.jfu-failed { background: linear-gradient(to right, var(--jfu-failed) 100%, transparent 100%); }
.jfu-bar { margin-top: 1em; font-weight: bold; background: var(--jfu-progress); width: 0%; }

/* Forms - User Settings, rename, delete, destroy, register, diff... */

.moin-tabs .moin-tab-titles a { color: var(--link); }
.moin-tab-titles { margin: 0; list-style: none; border-bottom: 3px solid var(--border); }
.moin-tab-titles li { display: inline-block; margin: 10px 0 -3px; padding: 0 5px;
    border-bottom: 3px solid var(--border); }
.moin-tab-titles a { display: inline-block; padding: 4px; background-color: var(--bg-tabs);
    border-width: 1px 1px 0; border-style: solid;
    border-color: var(--border); color: var(--link); border-top-left-radius: 7px;
    border-top-right-radius: 7px; }
.moin-tab-titles a:hover { background-color: var(--bg-selected); text-decoration: none; }
.moin-tab-titles a.moin-current-tab { background-color: var(--bg-selected);
    padding-top: 8px; margin-top: -4px; }
.moin-tab-titles .moin-change-indicator { font-weight: bold; color: var(--hilite); }
.moin-current-form h2 { display: none; }
.moin-settings-head a { color: var(--primary); text-decoration: none; }
.moin-subitem-list { font-size: 1.25em; color: var(--alert); }

.moin-form dd { float: left; width: 70%; margin: .3em 0; }
.moin-form dd input:not([type="checkbox"], [type="radio"]) { width: 75%; }
.moin-form dd select { width: 76%; }
.moin-form dt { clear: both; float: left; width: 25%; text-align: right; margin-top: .3em; padding-right: 1em; }
.moin-form dt label.required:after { content: '*'; color: var(--primary); }
.moin-form button,
.moin-form input[type="submit"] { clear: both; display: block; }
.moin-form dl  { margin-bottom: 2em; }
.moin-float-fix { clear: both; padding-top: .75em; }
.moin-form  input[type="submit"].moin-modify-submit,
.moin-form .moin-load-draft,
.moin-form .moin-cancel { margin-bottom: 1em; }
.moin-form .moin-load-draft { border: 1px solid var(--alert);
    background-color: var(--bg-message); }
.moin-watermark { background-image: url("../../../static/img/draft.png");
    border: 1px solid var(--border); }

.moin-form dd.moin-radio { line-height: 1.5em}
.moin-form .moin-radio input { width: 1em; }

.moin-form .submit-buttons{ display: flex; column-gap: 8pt; justify-content: end;
    margin: 8pt 0; }

.moin-form input.moin-error { color: var(--error) }

#options dd { width: 10%; }
#options dt { width: 60%; max-width: 40em; }
#subscriptions textarea,
#quicklinks textarea { height: 12em; width: 80%; max-width: 60em; margin-bottom: 1em; }
#subscriptions div.tip,
#quicklinks div.tip { width: 80%; max-width: 60em; margin: auto; }

.moin-delete-box dt,
.moin-delete-box dd { display: inline; }
.moin-delete-comment dd input { width: 90%; }
.moin-form-delete button { float: left; }
.moin-form-delete input[type="submit"] { clear: both; display: block; margin: auto; }

/* Global history */

#moin-global-history { font-size: 87%; width: 100%; margin: 0; }
.moin-history-day-banner { background-color: var(--bg-heading); color: var(--primary); }
.moin-history-day-banner a.moin-bookmark-link { margin-left: 20px; color: var(--link); font-weight: bold; }
.moin-history-date { font-size: 125%; font-weight: bold; }
.moin-history-time { text-align: right; width: 6em; }
.moin-history-action { width: .5em; cursor: default; }
.moin-history-action a:hover { text-decoration: none; }
.moin-history-links { width: 1em; text-align: center; }
.moin-history-end-of-day { border: 0; border-top: 2px solid var(--border); }
.moin-nameless-item,
.moin-history-name-old { font-style: italic; }
.moin-history-name-old:hover { cursor: pointer; }
.moin-history-rss { float: right; margin: 0 7px 0 14px; height: 0; position: relative; top: 9px; }

/* item history */

#moin-page-history > table { width: 100%; }
#moin-page-history > table > body { font-size: .87em; }
.moin-button-diff { text-align: center; }
.moin-hist-rev { text-align: center; vertical-align: middle; }
.moin-hist-rev > input,
.moin-hist-rev > span { cursor: pointer; }
.moin-offset-links { width: 100%; text-align:center; }
.moin-next-page { float: right; }
.moin-prior-page { float: left; }
.moin-page-num { display: inline-block; font-weight: bold; }
.moin-offset-links a { padding: 3px 7px; margin-bottom: 4px; font-size: 1.25em; background: var(--bg-primary);
    border: 1px solid var(--border); border-radius: 5px; }
.moin-offset-links a:hover { box-shadow: 2px 2px 1px var(--shadow-color); }

/* mychanges */

.moin-mychanges > table { width: 100%; }

/* +admin/user */

.moin-namespaces > li { color: var(--muted); }

/* show wikiconfig and wikiconfighelp */

.moin-show-wikiconfig td { vertical-align: top; }
.moin-wikiconfighelp i.fa { color: var(--link); }
.moin-wikiconfighelp i.fa:hover { cursor: pointer; }
.moin-wikiconfighelp table { width: 100%; }

/* figures */

figure { text-align: center; }
figcaption { font-weight: bold; }

/* moin-flash */
.moin-flash { background-color: var(--bg-message); border: 1px solid var(--alert);
    padding: 1em; margin-top: .5em; border-radius: 5px; position: relative; }
/* \f2d3 below is fontawesome fa-window-close */
.moin-flash:after { content: "\f2d3"; font-family: FontAwesome; color: var(--alert); position: absolute; top: -1px; right: 0; }
.moin-flash-hint:before { content: url("../img/icons/idea.png"); padding-right: 1em; }
.moin-flash-info:before { content: url("../img/icons/icon-info.png"); padding-right: 1em; }
.moin-flash-warning:before { content: url("../img/icons/alert.png"); padding-right: 1em; }
.moin-flash-error:before { content: url("../img/icons/icon-error.png"); padding-right: 1em; }

/* +modify template */
#moin-modify dd { width: 100%; float: none; }
#moin-modify dd input { width: 99%; }
#moin-modify dt { width: auto; text-align: left; }
#moin-modify textarea { width: 99.5%; }
#moin-modify input[type="submit"] { margin-left: 0; }
.moin-fixed-width { font-family: Inconsolata, Consolas, "DejaVu Sans Mono", "Courier New", courier; }
.moin-edit-no-help { float: right; border: 1px solid var(--border-button); border-radius: 6px; cursor: pointer;
    font-size: 0.75em; font-weight: bold; padding: 4px 15px; margin: .3em; }
.moin-edit-no-help:before { content: url("../img/icons/icon-info.png"); padding-right: 1em; }
.moin-autosize { min-height: 10em; }
.moin-edit-help { float: right; }
.moin-edit-help a { text-decoration: revert; color: var(--primary); }
/* prevent editor help text being overlapped by editor controls */
.ck.ck-editor, #f_content_form_data_text { clear: both; }

/* revision navigation on show, highlight, and meta views */
.moin-revert { text-align: center; }
.moin-rev-navigation-current { font-size: 1.25em; font-weight: bold; }
.moin-rev-navigation-older,
.moin-rev-navigation-newer {padding: 0 20px; }
ul#moin-rev-navigation li { display: inline; }
ul#moin-rev-navigation { text-align: center; background-color: var(--bg-zebra); }
@media (max-width: 1500px) {
    ul#moin-rev-navigation li { display: block; text-align: center; }
}

/* reST field lists and option lists*/

.rst-optionlist,
.rst-fieldlist { margin-left: 2em; }
.rst-optionlist td,
.rst-fieldlist td { border-width: 0; vertical-align: top; }
.rst-optionlist td:first-child,
.rst-fieldlist td:first-child { font-weight: bold; }

/* MonthCalendar macro */

.calendar a:link, .calendar a:visited { color: var(--cal-text); text-align: center; }
.calendar table,
.calendar th,
.calendar thead,
.calendar tr { padding: 0; border: 3px solid var(--border-cal); text-align: center; }
.calendar caption { padding: .5em 0 .3em; color: var(--cal-text); font-size: 1.1em; font-weight: bold; border: 3px solid var(--border-cal); }
.calendar td { width: 14%; padding: .5em .2em .3em; text-align: center; border: inherit; }

table.calendar { table-layout: fixed; }
.cal-header   { background-color: var(--bg-cal-header); }
/* general stuff: workdays, weekend, today */
.cal-emptyday { background-color: var(--bg-cal-emptyday); }
.cal-usedday  { background-color: var(--bg-cal-usedday); font-weight: bold; }
.cal-workday  { background-color: var(--bg-heading); font-weight: bold; }
.cal-weekend  { background-color: var(--bg-cal-weekend); font-weight: bold; }
.cal-today    { background-color: var(--bg-cal-today); font-weight: bold; }
/* invalid places on the monthly calendar sheet */
.cal-invalidday { background-color: var(--bg-cal-invalidday); }

/* Printing */

@media print {
    .moin-no-print { display: none; }
}
