.article-sharing-card {
    padding: 1.1rem;
    margin-bottom: 1rem;
    background: #fff;
    border: 1px solid #e7ecf2;
    border-radius: 1rem;
    box-shadow: 0 6px 24px rgb(24 51 81 / 5%);
}
.article-short-link-control { display: flex; gap: .5rem; align-items: stretch; }
.article-short-link-control input { min-width: 0; font-family: inherit; font-size: .82rem; }
.article-short-link-control button { display: flex; align-items: center; gap: .35rem; white-space: nowrap; }
.article-copy-status { display: block; min-height: 1.3em; margin-top: .5rem; }
.article-share-actions { display: flex; flex-wrap: wrap; gap: .65rem; }
.article-share-button { flex: 1 1 100px; display: inline-flex; align-items: center; justify-content: center; gap: .5rem; padding: .7rem .9rem; border-radius: .7rem; text-decoration: none; font-weight: 600; font-size: .9rem; border: 1px solid transparent; }
.article-share-button--telegram { color: #12618c; background: #eaf5fc; border-color: #d4eaf8; }
.article-share-button--whatsapp { color: #136639; background: #eaf8ef; border-color: #ceebd9; }
.article-share-button:hover { filter: brightness(.95); color: inherit; }
.article-share-button:focus-visible, .article-short-link-control button:focus-visible { outline: 3px solid #9acaf1; outline-offset: 3px; }
.article-videos { margin-top: 2rem; }
.article-youtube-support { padding: .9rem 1rem; margin: 0 0 1rem; background: #fff6f5; border: 1px solid #f2d9d6; border-radius: .8rem; line-height: 1.9; }
.article-youtube-support a { color: #a92222; font-weight: 700; text-decoration: underline; text-underline-offset: .2em; }
.article-youtube-support a:focus-visible { outline: 3px solid #e8aaa4; outline-offset: 3px; }
.article-video-card { margin: 0 0 1.25rem; overflow: hidden; border: 1px solid #e7ecf2; border-radius: 1rem; background: #f8fafc; }
.article-video-frame { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #101b2d; }
.article-video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.article-video-card figcaption { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem; padding: .8rem 1rem; font-size: .85rem; }
@media (max-width: 575.98px) {
    .article-sharing-card { padding: .9rem; }
    .article-short-link-control { flex-wrap: wrap; }
    .article-short-link-control input { flex: 1 1 150px; }
    .article-video-card figcaption { padding: .7rem; }
}
