
/* default styles for extension "tx_frontend" */
    .ce-align-left { text-align: left; }
    .ce-align-center { text-align: center; }
    .ce-align-right { text-align: right; }

    .ce-table td, .ce-table th { vertical-align: top; }

    .ce-textpic, .ce-image, .ce-nowrap .ce-bodytext, .ce-gallery, .ce-row, .ce-uploads li, .ce-uploads div { overflow: hidden; }

    .ce-left .ce-gallery, .ce-column { float: left; }
    .ce-center .ce-outer { position: relative; float: right; right: 50%; }
    #.ce-center .ce-outer { float: right; right: 50%; }
    .ce-center .ce-inner { position: relative; float: right; right: -50%; }
    #.ce-center .ce-inner { float: right; right: -50%; }
    .ce-right .ce-gallery { float: right; }

    .ce-gallery figure { display: table; margin: 0; }
    .ce-gallery figcaption { display: table-caption; caption-side: bottom; margin-top:5px; text-align:center; }
    .ce-gallery img { display: block; }
    .ce-gallery iframe { border-width: 0; }
    .ce-border img,
    .ce-border iframe {
        border: 2px solid #000000;
        padding: 0px;
    }

    .ce-intext.ce-right .ce-gallery, .ce-intext.ce-left .ce-gallery, .ce-above .ce-gallery {
        margin-bottom: 10px;
    }
    .ce-intext.ce-right .ce-gallery { margin-left: 10px; }
    .ce-intext.ce-left .ce-gallery { margin-right: 10px; }
    .ce-below .ce-gallery { margin-top: 10px; }

    .ce-column { margin-right: 10px; }
    .ce-column:last-child { margin-right: 0; }

    .ce-row { margin-bottom: 10px; }
    .ce-row:last-child { margin-bottom: 0; }

    .ce-above .ce-bodytext { clear: both; }

    #.ce-intext.ce-left ol, .ce-intext.ce-left ul { padding-left: 40px; overflow: auto; }

    /* Headline */
    .ce-headline-left { text-align: left; }
    .ce-headline-center { text-align: center; }
    .ce-headline-right { text-align: right; }

    /* Uploads */
    .ce-uploads { margin: 0; padding: 0; }
    .ce-uploads li { list-style: none outside none; margin: 1em 0; }
    .ce-uploads img { float: left; padding-right: 1em; vertical-align: top; }
    .ce-uploads span { display: block; }

    /* Table */
    .ce-table { width: 100%; max-width: 100%; }
    .ce-table th, .ce-table td { padding: 0.5em 0.75em; vertical-align: top; }
    .ce-table thead th { border-bottom: 2px solid #dadada; }
    .ce-table th, .ce-table td { border-top: 1px solid #dadada; }
    .ce-table-striped tbody tr:nth-of-type(odd) { background-color: rgba(0,0,0,.05); }
    .ce-table-bordered th, .ce-table-bordered td { border: 1px solid #dadada; }

    /* Space */
    .frame-space-before-extra-small { margin-top: 1em; }
    .frame-space-before-small { margin-top: 2em; }
    .frame-space-before-medium { margin-top: 3em; }
    .frame-space-before-large { margin-top: 4em; }
    .frame-space-before-extra-large { margin-top: 5em; }
    .frame-space-after-extra-small { margin-bottom: 1em; }
    .frame-space-after-small { margin-bottom: 2em; }
    .frame-space-after-medium { margin-bottom: 3em; }
    .frame-space-after-large { margin-bottom: 4em; }
    .frame-space-after-extra-large { margin-bottom: 5em; }

    /* Frame */
    .frame-ruler-before:before { content: ''; display: block; border-top: 1px solid rgba(0,0,0,0.25); margin-bottom: 2em; }
    .frame-ruler-after:after { content: ''; display: block; border-bottom: 1px solid rgba(0,0,0,0.25); margin-top: 2em; }
    .frame-indent { margin-left: 15%; margin-right: 15%; }
    .frame-indent-left { margin-left: 33%; }
    .frame-indent-right { margin-right: 33%; }

.dpnglossary.pagination ul{list-style:none;margin:0;padding:0}.dpnglossary.pagination ul li{float:left;margin-left:5px;margin-right:5px}.dpnglossary.pagination ul li a{text-decoration:none}.dpnglossary.pagination ul li.first{margin-left:0}.dpnglossary.pagination ul li.last{margin-right:0}.dpnglossary.pagination ul li.empty{color:red}.dpnglossary.details .mediafile{display:inline-block;margin-bottom:10px}.dpnglossary.details .mediafile:last-child{margin-bottom:0}.dpnglossary.link{display:inline;position:relative}.dpnglossary.link:hover:after{background:rgba(0,0,0,.8);border-radius:5px;bottom:26px;color:#fff;content:attr(title);left:20%;padding:5px 15px;position:absolute;width:220px;z-index:98}.dpnglossary.link:hover:before{border:solid;border-color:#333 rgba(0,0,0,0);border-width:6px 6px 0;bottom:20px;content:"";left:50%;position:absolute;z-index:99}

/**
 * Image Alignment Styles for TYPO3 CKEditor Image Plugin
 *
 * These classes are applied by the CKEditor image style command
 * to control image positioning and display behavior.
 */

/* Image aligned to the left with text wrapping */
.image-left,
img.image-left,
figure.image-left {
    float: left;
    margin: 0 1rem 1rem 0;
    clear: left;
}

/* Image aligned to the right with text wrapping */
.image-right,
img.image-right,
figure.image-right {
    float: right;
    margin: 0 0 1rem 1rem;
    clear: right;
}

/* Image centered as block element */
.image-center,
img.image-center,
figure.image-center {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1rem;
}

/* Image displayed inline with text */
.image-inline,
img.image-inline,
figure.image-inline {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0.25rem;
}

/* Image displayed as block element (full width) */
.image-block,
img.image-block,
figure.image-block {
    display: block;
    width: 100%;
    margin: 1rem 0;
}

/* Clear floats after floated images */
.image-left:after,
.image-right:after {
    content: "";
    display: table;
    clear: both;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .image-left,
    .image-right {
        float: none;
        display: block;
        margin: 1rem auto;
    }
}

/* Image Caption Styles */
figure.image figcaption,
figure figcaption {
    display: block;
    margin-top: 0.5rem;
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    line-height: 1.5;
    color: #666;
    font-style: italic;
    text-align: center;
    background-color: transparent;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Caption for left/right aligned images */
figure.image-left figcaption,
figure.image-right figcaption {
    text-align: left;
}

/* Caption for centered images */
figure.image-center figcaption {
    text-align: center;
}

/* Dark mode caption support */
@media (prefers-color-scheme: dark) {
    figure.image figcaption,
    figure figcaption {
        color: #aaa;
    }
}

.tx-kesearch-pi1,
.tx-kesearch-pi1 input,
.tx-kesearch-pi1 select,
.tx-kesearch-pi1 button { font: inherit; }
.tx-kesearch-pi1 .clearer { display: block; height: 1px; line-height: 1px; clear: both; }
.tx-kesearch-pi1 form { margin-bottom: 1em; }
.tx-kesearch-pi1 form fieldset { margin: 0; padding: 0; }
.tx-kesearch-pi1 .kesearch_searchbox { border: none; }
.tx-kesearch-pi1 input[type="search"],
.tx-kesearch-pi1 select { background: #fff; border: 1px solid #bbb; border-radius: 2px; color: #2b2b2b; }

/* Buttons */
a.kesGreyButt,
span.resetbutt a,
span.submitbutt input {
    padding: 0.5em 3em;
    margin: 0 0.5em 0.5em 0;
    display: block;
    cursor: pointer;
    user-select: none;
    background: #f5f5f5;
    border: 1px solid rgba(0,0,0,.1);
    border-radius: 2px;
    color: #444;
    text-align: center;
    text-decoration: none;
}
span.resetbutt { float: left; }
span.resetbutt a:hover,
span.submitbutt input:hover,
a.kesGreyButt:hover { background: #f8f8f8; }

/* Filters */
#kesearch_filters select { margin: 0 0 10px; padding: 0.5em; }
#kesearch_filters .list { border: 1px solid #cfcfcf; margin: 0 0 0.5em; padding: 0.5em; width: 20em; }
#kesearch_filters .list .head { display: block; border-bottom: 1px solid #cfcfcf; padding: 0.5em 0 0.5em 0; }
#kesearch_filters .list ul { padding: 0; margin: 0.5em 0 0.5em 0; list-style: none; }
#kesearch_filters .list li { display: block; list-style: none; margin: 0 0 0.5em; line-height: .75em; color: #444; }
#kesearch_filters .list li a { color: #444; }
#kesearch_filters .list li.selected { font-weight: bold; }
#kesearch_filters .list li.optionCheckBox { float: left; width: 20em; margin-bottom: 0.25em; }
#kesearch_filters .list li.optionCheckBox input[type="checkbox"] { float: left; margin: 0 0.25em 0 0; }
#kesearch_filters .list li.clearer { font-size: 0; line-height: 0; float: none; margin: 0 !important; }
#kesearch_filters label { display: block; font-weight: bold; margin: 0 0 0.25em; }

/* Search box */
div.kesearchbox { margin-bottom: .5em; }
#ke_search_sword { padding: 0.5em; }
.tx-kesearch-pi1 .general-message { padding: 0.25em; }
.tx-kesearch-pi1 .general-message .image { float: left; vertical-align: middle; margin-right: 0.5em; }

/* Results */
#kesearch_results .result-list-item { clear: both; margin: 1em 0 1.5em; padding: 0; }
#kesearch_results .result-list-item .result-number,
#kesearch_results .result-list-item .result-title { font-size: 1.25em; }
#kesearch_results .result-list-item .result-teaser { color: #707070; margin-top: 0.5em;}
.tx-kesearch-pi1 #kesearch_results .teaser_icon img { float: left; margin-right: 0.5em; }
.tx-kesearch-pi1 #kesearch_results .result-list-item .hit { color: red; font-weight: bold; }
.tx-kesearch-pi1 #kesearch_query_time { text-align: center; font-size: .8em; }

/* Pagebrowser */
.kesearch_pagebrowser ul { display: inline; margin: 0; padding: 0; }
.kesearch_pagebrowser ul li { list-style: none; display: inline-block; margin: 0; }
#kesearch_pagebrowser_top, #kesearch_pagebrowser_bottom { text-align: center; word-wrap: break-word; }
#kesearch_pagebrowser_top .pages_total,
#kesearch_pagebrowser_bottom .pages_total { padding: 0.5em 0; margin-bottom: 1em; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; }
.kesearch_pagebrowser .active .page-link,
.kesearch_pagebrowser .pagination a { padding: 0.5em; }

/* Ordering */
.tx-kesearch-pi1 #kesearch_ordering span.down,
.tx-kesearch-pi1 #kesearch_ordering span.up { display: inline-block; width: 0; height: 0; }
.tx-kesearch-pi1 #kesearch_ordering span.down { border-color: #f00 transparent; border-style: solid solid none; border-width: 0.25em 0.25em 0; }
.tx-kesearch-pi1 #kesearch_ordering span.up { border-color: transparent transparent #f00; border-style: none solid solid; border-width: 0 0.25em 0.25em; }
.tx-kesearch-pi1 #kesearch_ordering .ordering { float: right; }
.tx-kesearch-pi1 #kesearch_ordering ul { display: inline-block; list-style: none; }
.tx-kesearch-pi1 #kesearch_ordering ul li { float: left; margin-right: 0.5em; }
.tx-kesearch-pi1 #kesearch_ordering .clearer { clear: left; }
