.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s4)}
.project-card{min-width:0;padding:var(--s4);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-sm);display:grid;gap:var(--s4);transition:.16s ease}
.project-card:hover{border-color:var(--line-strong);transform:translateY(-1px);box-shadow:0 10px 28px rgb(15 23 42/.07)}
.project-card-top{display:flex;align-items:flex-start;gap:var(--s3)}
.project-symbol{width:42px;height:42px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex:none}
.project-card-heading{min-width:0;flex:1}
.project-name{font-size:15px;font-weight:720;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.project-description{margin-top:3px;color:var(--text-soft);font-size:12px;line-height:1.45;min-height:35px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.status-pill{height:25px;padding:0 9px;border-radius:999px;display:inline-flex;align-items:center;font-size:11px;font-weight:700;white-space:nowrap}
.status-pill.success{background:#edf8f1;color:#277a43}
.status-pill.neutral{background:var(--surface-strong);color:var(--text-soft)}
.status-pill.warning{background:#fff5e6;color:#9a5b00}
.project-details{display:grid;gap:8px;padding:var(--s3);border-radius:var(--r-md);background:var(--surface-soft)}
.project-detail{min-width:0;display:grid;grid-template-columns:68px minmax(0,1fr);align-items:baseline;gap:var(--s2)}
.project-detail span{color:var(--text-soft);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.project-detail strong{font-size:12px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.project-actions{display:flex;align-items:center;gap:var(--s2)}
.project-actions>a{flex:1;text-decoration:none}
.project-actions .button:not(.primary){padding-inline:12px}
.project-metric{padding:var(--s3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);display:flex;align-items:center;gap:var(--s3)}
.project-metric>span{width:38px;height:38px;border-radius:11px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}
.project-metric strong,.project-metric small{display:block}
.project-metric strong{font-size:18px}
.project-metric small{color:var(--text-soft)}
@media(max-width:1100px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.project-grid{grid-template-columns:1fr}.project-actions{flex-wrap:wrap}.project-actions>a{min-width:180px}}
