/**

 * Affiliate-/Anbieter-Verlinkung im Blog-Content.

 */



/* Geschwisterartikel-Verweis (Entwurf, noch ohne Ziel-URL). */

.sfp-sibling-ref strong {

    font-weight: 600;

}



/* Hochgestelltes Affiliate-Sternchen direkt hinter dem Link (kein Leerzeichen). */

.sfp-aff-star {

    font-size: 0.7em;

    line-height: 0;

    margin-left: 1px;

    color: inherit;

    text-decoration: none;

    font-weight: 400;

}



/* Dezente Hervorhebung von Anbieter-/Affiliate-Links im Fließtext. */

.entry-content a[rel~="sponsored"] {

    text-decoration-thickness: 1px;

    text-underline-offset: 2px;

}



/* Glossar-Wrapper */

.sfp-term-wrap {

    position: relative;

    display: inline;

}



/* Fachbegriff mit Erklärung (Popover-Trigger)
 * Theme-Button-Hover (Elementor etc.) darf Text nicht mit Akzentfarbe übermalen. */
.sfp-term-wrap .sfp-term-trigger,
.sfp-term-wrap button.sfp-term-trigger {
    display: inline;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 0;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    font: inherit;
    color: inherit !important;
    letter-spacing: inherit;
    text-align: inherit;
    line-height: inherit;
    cursor: help;
    text-decoration: underline dotted;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
    text-decoration-color: currentColor;
    vertical-align: baseline;
    appearance: none;
    -webkit-appearance: none;
}

.sfp-term-wrap .sfp-term-trigger:hover,
.sfp-term-wrap .sfp-term-trigger:focus,
.sfp-term-wrap .sfp-term-trigger:focus-visible,
.sfp-term-wrap .sfp-term-trigger:active,
.sfp-term-wrap .sfp-term-trigger[aria-expanded="true"],
.sfp-term-wrap button.sfp-term-trigger:hover,
.sfp-term-wrap button.sfp-term-trigger:focus,
.sfp-term-wrap button.sfp-term-trigger:focus-visible,
.sfp-term-wrap button.sfp-term-trigger:active,
.sfp-term-wrap button.sfp-term-trigger[aria-expanded="true"] {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    color: inherit !important;
    border: none !important;
    outline-color: currentColor;
    text-decoration: underline solid;
    text-decoration-color: currentColor;
}

.sfp-term-wrap .sfp-term-trigger:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

/* Erklärter Link (Link + Popover kombiniert) */
.sfp-term-wrap--link .sfp-term-link,
.sfp-term-wrap--link .sfp-term-link:hover,
.sfp-term-wrap--link .sfp-term-link:focus,
.sfp-term-wrap--link .sfp-term-link:active {
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
    background: transparent !important;
    background-color: transparent !important;
}


/* Glossar-Popover-Karte */

.sfp-term-popover {

    position: fixed;

    z-index: 10050;

    max-width: min(280px, 90vw);

    padding: 10px 12px;

    font-size: 0.875em;

    line-height: 1.45;

    font-weight: 400;

    color: #1e293b;

    background: #fff;

    border: 1px solid #e2e8f0;

    border-radius: 8px;

    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.12), 0 1px 3px rgba(15, 23, 42, 0.08);

    pointer-events: none;

    opacity: 0;

    visibility: hidden;

    transform: translateY(4px);

    transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s;

}



.sfp-term-popover.is-visible {

    opacity: 1;

    visibility: visible;

    transform: translateY(0);

}



.sfp-term-popover[aria-hidden="true"] {

    opacity: 0;

    visibility: hidden;

}



@media (prefers-reduced-motion: reduce) {

    .sfp-term-popover {

        transition: none;

    }

}


