/**

 * 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) */

.sfp-term-trigger {

    display: inline;

    margin: 0;

    padding: 0;

    border: none;

    background: none;

    font: inherit;

    color: inherit;

    letter-spacing: inherit;

    text-align: inherit;

    cursor: help;

    text-decoration: underline dotted;

    text-underline-offset: 3px;

    text-decoration-thickness: 1px;

    vertical-align: baseline;

}



.sfp-term-trigger:hover,

.sfp-term-trigger:focus {

    text-decoration-style: solid;

}



.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 {

    text-decoration-thickness: 1px;

    text-underline-offset: 2px;

}



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

    }

}


