.btn-liens-rs, .btn-partage, .news-item .div-rs { display: flex; align-items: center; }
.btn-liens-rs {
    justify-content: flex-end;
    gap: 0.4rem;
    position: relative;
    text-align: right;
}
.btn-rs-center, .pied .btn-liens-rs {
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
}
.btn-partage { gap: 0.6rem; }
.news-item .div-rs { margin-block-end: 2.5rem; }
.news-item .btn-partage { gap: 0.5rem; margin-inline-start: 2rem; }

.btnrs, .btnp {
    display: flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1 / 1;
    transition: transform 0.4s ease, background-color 0.4s ease;
}
.btnrs svg, .icones { aspect-ratio: 1 / 1; transition: fill 0.4s ease, transform 0.4s ease; }
.btnrs { width: 1.7rem; }
.btnrs svg { width: 100%; fill: var(--typo-sur-fond-sombre); }
.btnp { width: 2.4rem; border-radius: 50%; }
.btnp .icones { width: 1rem; fill: var(--typo-sur-fond-sombre); }

.btn-rs-center .btnrs svg, .pied .btn-partage .icones { fill: var(--typo-corps); }
.pied .btnrs svg { width: 2rem; fill: var(--couleur-gris-dk); }
.news-item .btnp {
    width: 2.75rem;
    background-color: var(--fond-page);
    border: var(--border-card);
    border-radius: var(--radius-default);
    transition: background-color 0.2s ease;
    cursor: pointer;
}
.news-item .btnp .icones { fill: var(--couleur-puces); }

.btnrs:hover svg { fill: var(--fond-bouton); transform: rotate(360deg); }
.pied .btnrs:hover svg { fill: var(--couleur-principale); transform: translateY(-3px); }
:is(.btn-partage, .news-item) .btnp:hover { background-color: var(--fond-bouton); }
.news-item .btnp:hover .icones { fill: var(--typo-sur-fond-sombre); }