
/* 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;
    }
}
