/* ============================================================
   PostCard.css — Carte de publication
   ============================================================ */

.post-card {
    background: var(--bg-card);
    border-radius: var(--radius);
    border: 1px solid var(--border);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    transition: box-shadow var(--transition), transform var(--transition);
    cursor: pointer;
    display: flex;
    flex-direction: column;
}
.post-card:hover { box-shadow: var(--shadow-md); transform: translateY(-1px); }

.post-banner       { height: 6px; flex-shrink: 0; }
.post-banner.blue  { background: linear-gradient(90deg, var(--blue),    var(--blue-light)); }
.post-banner.gold  { background: linear-gradient(90deg, var(--gold),    #f0d080); }
.post-banner.green { background: linear-gradient(90deg, var(--success), #58d68d); }
.post-banner.red   { background: linear-gradient(90deg, var(--danger),  #f1948a); }

.post-body    { padding: 14px 16px; flex: 1; }
.post-title   { font-size: 14px; font-weight: 600; color: var(--navy); margin-bottom: 6px; line-height: 1.45; }
.post-excerpt { font-size: 12.5px; color: var(--text-muted); line-height: 1.65; }

.post-tag {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .6px;
    padding: 2px 9px;
    border-radius: 20px;
    margin-bottom: 8px;
}
.post-tag.blue  { background: rgba(46,134,193,.1);  color: var(--blue);   }
.post-tag.gold  { background: rgba(232,184,75,.15); color: #9a6e00;       }
.post-tag.green { background: rgba(46,204,113,.1);  color: #1a7a42;       }
.post-tag.red   { background: rgba(231,76,60,.1);   color: var(--danger); }

.post-footer {
    padding: 10px 16px;
    border-top: 1px solid var(--border);
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
}
.post-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 11px;
    color: var(--text-muted);
    flex-wrap: wrap;
}
.post-meta i     { color: var(--blue-light); }
.post-actions    { display: flex; gap: 6px; }
.post-action {
    width: 28px; height: 28px;
    border-radius: var(--radius-sm);
    display: flex; align-items: center; justify-content: center;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 12px;
    transition: background var(--transition), color var(--transition);
}
.post-action:hover { background: var(--bg); color: var(--blue); }

.post-card.post-featured { grid-column: span 2; flex-direction: row; }
.post-card.post-featured .post-title   { font-size: 15px; }
.post-card.post-featured .post-excerpt { font-size: 13px; }

.post-featured-img {
    width: 160px;
    flex-shrink: 0;
    background: linear-gradient(135deg, var(--blue-dark), var(--blue));
    display: flex; align-items: center; justify-content: center;
    font-size: 42px;
    color: rgba(255,255,255,.35);
}

@media (max-width: 1200px) {
    .post-card.post-featured { grid-column: span 1; flex-direction: column; }
    .post-featured-img       { width: 100%; height: 100px; }
}
@media (max-width: 768px) {
    .post-card.post-featured { flex-direction: column; }
    .post-featured-img       { width: 100%; height: 80px; }
}
