.project-card { display: flex; flex-direction: column; gap: var(--s-3); padding: 0; overflow: hidden; text-decoration: none !important; color: inherit; }
.project-card .cover { height: 120px; background: linear-gradient(120deg, color-mix(in srgb, var(--accent) 30%, var(--surface-2)), var(--surface-3)); position: relative; }
.project-card .cover img { width: 100%; height: 100%; object-fit: cover; }
.project-card .cover .st { position: absolute; top: 10px; right: 10px; }
.project-card .body { padding: 0 var(--s-5) var(--s-5); display: flex; flex-direction: column; gap: var(--s-2); flex: 1; }
.project-card h3 { margin: 0; font-size: var(--fs-lg); }
.project-card .desc { font-size: var(--fs-sm); color: var(--text-muted); margin: 0; }
.project-card .meta { display: flex; gap: var(--s-3); flex-wrap: wrap; font-size: var(--fs-xs); color: var(--text-dim); margin-top: auto; padding-top: var(--s-2); border-top: 1px solid var(--border); }
.project-card .owner { display: flex; align-items: center; gap: 6px; font-size: var(--fs-xs); color: var(--text-muted); }
.invite-card { display: flex; align-items: center; gap: var(--s-4); padding: var(--s-4); border-radius: var(--r); background: var(--accent-soft); border: 1px solid color-mix(in srgb, var(--accent) 40%, transparent); margin-bottom: var(--s-3); flex-wrap: wrap; }
.invite-card .t { font-weight: 600; }
.invite-card .s { font-size: var(--fs-sm); color: var(--text-muted); }
@media (max-width: 640px) {
  .project-card .body { padding: 0 var(--s-4) var(--s-4); }
  .project-hero .inner { padding: var(--s-4); }
}
