/*
 * psn ToolKit - Bildnachweis-Overlay (Copyrights).
 * WICHTIG: Das <img> wird NICHT umschlossen/veraendert (sonst bricht das Theme-
 * Layout). Der Credit (© Pill + Box) wird als absolut positioniertes Geschwister
 * HINTER dem <img> eingefuegt; das Eltern-Element wird via :has() zum
 * Positionierungs-Anker. Beides ist aus dem Fluss -> kein zusaetzliches Flex/
 * Grid-Item, keine Layout-Aenderung am Bild. Besucher-unabhaengig (cachebar).
 */
/*
 * Positionierungs-Anker: das Eltern-Element eines Credits wird relativ gesetzt,
 * damit das absolute Overlay daran andockt. Bewusst in einem @layer -> unlayered
 * Theme-CSS gewinnt IMMER gegen layered Regeln (unabhaengig von Spezifitaet und
 * Quell-Reihenfolge). So ueberschreiben wir NIE eine vom Theme gesetzte Position:
 * Bootstrap `.carousel-item{position:absolute}` bleibt heil (Slides kippen nicht
 * mehr uebereinander) und dient trotzdem als positionierter Anker. Bei Eltern OHNE
 * Theme-Position greift unser `relative` weiterhin (schlaegt das initiale static).
 */
@layer psn-copyright {
    :where(*):has(> .psn-cr-toggle) {
        position: relative;
    }
}
.psn-cr-toggle {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 10;
    display: inline-block;
    font: 600 11px/1.2 system-ui, -apple-system, "Segoe UI", sans-serif;
    background: rgba(255, 255, 255, .85);
    color: #1f1f1f;
    padding: 2px 7px;
    border-radius: 4px;
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}
.psn-cr-toggle:hover {
    background: rgba(255, 255, 255, .95);
}
.psn-cr-toggle:focus-visible {
    outline: 2px solid #4394d1;
    outline-offset: 2px;
}
.psn-cr-toggle.is-open {
    background: #fff;
}
.psn-cr-box {
    display: none;
    position: absolute;
    top: 32px;
    left: 8px;
    z-index: 10;
    max-width: calc(100% - 16px);
    background: #fff;
    color: #333;
    padding: 6px 9px;
    border-radius: 4px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .22);
    font: 400 11px/1.4 system-ui, -apple-system, "Segoe UI", sans-serif;
    text-align: left;
}
.psn-cr-box.is-open {
    display: block;
}
.psn-cr-row {
    display: block;
}
.psn-cr-row b {
    color: #666;
    font-weight: 600;
}
