/* Shared campaign card — used by the "my campaigns" dashboard, the public /Campaigns listing,
   and the profile page's "کمپین‌ها" tab. Server-rendered via Views/Shared/_CampaignCard.cshtml
   and client-rendered via js/campaignCard.js — both must stay in sync with these class names. */
.ccc-card {
    background: var(--surface, #fff);
    border: 1px solid var(--border, #E2E8F0);
    border-radius: var(--r, 16px);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
}
.ccc-card:hover { text-decoration: none; color: inherit; }
.ccc-img { height: 130px; background-size: cover; background-position: center; position: relative }
.ccc-img.is-finished { filter: grayscale(.4) }
.ccc-body { padding: 14px }
.ccc-title {
    font-weight: 700; font-size: .95rem; color: var(--text, #1E293B); margin-bottom: 6px;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.ccc-badge-row { display: flex; align-items: center; justify-content: space-between; gap: 6px; margin-bottom: 8px }
.ccc-badge { display: inline-block; font-size: .7rem; font-weight: 700; padding: 2px 9px; border-radius: 20px }
.ccc-badge-draft { background: #f1f5f9; color: #475569 }
.ccc-badge-published { background: #dcfce7; color: #15803d }
.ccc-badge-archived { background: #fef3c7; color: #92400e }
.ccc-badge-finished { background: #e0e7ff; color: #3730a3 }
.ccc-contrib-count { font-size: .72rem; color: var(--text-3, #94a3b8); display: flex; align-items: center; gap: 4px }
.ccc-goal-ribbon {
    display: flex; align-items: center; gap: 6px;
    color: #fff; font-weight: 700; font-size: .72rem;
    border-radius: 8px; padding: 4px 9px; margin-bottom: 8px; width: fit-content;
}
.ccc-progress-wrap { background: var(--bg, #F2F5F9); border-radius: 20px; height: 8px; overflow: hidden; margin: 8px 0 6px }
.ccc-progress-bar { height: 100%; border-radius: 20px; transition: width .4s }
.ccc-amounts { display: flex; justify-content: space-between; font-size: .75rem; color: var(--text-2, #64748B); margin-bottom: 8px }
.ccc-amounts .ccc-collected { font-weight: 700 }
.ccc-tags { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 2px }
.ccc-tag { font-size: .68rem; color: var(--text-3, #94a3b8); background: var(--bg, #F2F5F9); border-radius: 20px; padding: 2px 8px }
.ccc-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px,1fr)); gap: 16px }
