
/* ====== Latest News ====== */
.card{
    position:relative; background:var(--fc-surface); border:1px solid var(--fc-border);
    border-radius:12px; box-shadow:0 6px 18px var(--fc-shadow); overflow:hidden;
}
.card::after{
    content:""; position:absolute; left:0; right:0; bottom:0; height:3px; width:0;
    background:var(--fc-red); transition:width .18s ease; border-bottom-left-radius:12px; border-bottom-right-radius:12px;
}
.card:hover::after, .card:focus-within::after{ width:100%; }
.ratio{ border-bottom:1px solid var(--fc-border); }
.ratio img{ width:100%; height:100%; object-fit:cover; display:block; border-top-left-radius:12px; border-top-right-radius:12px; }
h3{ margin:0; line-height:1.25; }
h3.text-truncate{
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; white-space:normal;
    min-height:calc(1em * 1.25 * 2);
}
h3 a{ color:var(--fc-text)!important; text-decoration:none!important; }
.text-muted{ color:var(--fc-muted)!important; }
time{ white-space:nowrap; }
.badge{
    background:var(--fc-soft)!important; color:var(--fc-text)!important; border:1px solid var(--fc-border)!important;
    border-radius:999px; font-weight:700; line-height:1; padding:.28rem .55rem; white-space:nowrap;
}
.mb-2.d-flex{ flex-wrap:wrap; row-gap:.35rem; }
@media (max-width:576px){
    > .d-flex{ flex-wrap:wrap; }
    > .d-flex .text-decoration-none{ flex-basis:100%; }
    .mb-2.d-flex .ms-auto{ flex-basis:100%; order:2; justify-content:flex-start!important; }
}
p.text-secondary{
    color:#374151!important; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; margin-bottom:.75rem!important;
}
.btn-outline-primary{
    --bs-btn-color:var(--fc-red); --bs-btn-border-color:var(--fc-red);
    --bs-btn-hover-bg:var(--fc-red); --bs-btn-hover-border-color:var(--fc-red); --bs-btn-hover-color:#fff;
    --bs-btn-active-bg:#c0161c; --bs-btn-active-border-color:#c0161c;
    border-radius:8px; font-weight:700; padding:.35rem .7rem;
}
[data-theme="dark"] .card{ box-shadow:0 10px 26px rgba(0,0,0,.32); }
[data-theme="dark"] .ratio{ border-bottom-color:var(--fc-border); }
[data-theme="dark"] .badge{ background:#1d1d1d !important; border-color:#2a2a2a !important; color:#f0f0f0 !important; }
[data-theme="dark"] p.text-secondary{ color:#d1d1d1 !important; }
a.stretched-link:focus-visible{ outline:3px solid rgba(227,27,35,.45); outline-offset:3px; border-radius:8px; }

/* Бейдж «Video» у заголовка */
.fc-badge-video{
    display:inline-flex; align-items:center; gap:.25rem;
    padding:.15rem .45rem; border-radius:999px; line-height:1;
    font-size:.78rem; font-weight:800; white-space:nowrap;
    background:rgba(227,27,35,.12); border:1px solid rgba(227,27,35,.35);
    color:var(--fc-red);
}
.fc-badge-video .bi{ font-size:1rem; line-height:1; }
[data-theme="dark"] .fc-badge-video{
    background:rgba(227,27,35,.18); border-color:rgba(227,27,35,.45); color:#fff;
}

/* === Spacing: LATEST NEWS (главная) === */
.card-body{
    padding: 14px 14px 12px;               /* чуть плотнее внутр. отступы */
}
.card-body > h3{
    margin: 0 0 .40rem;                    /* заголовок → мета */
}
.card-body > .d-flex.small{
    margin: 0 0 .60rem !important;         /* мета (вью/лайки/комменты) → текст */
}
.card-body > p.text-secondary{
    margin: 0 0 .75rem !important;         /* текст → кнопка */
}

/* Бейдж "Video" красиво садится по базовой линии заголовка */
.card-body > h3 .fc-badge-video{
    transform: translateY(-1px);
}

