.project-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.project-summary>div{padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--card);display:grid;gap:7px}
.project-summary span,.project-facts span{font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.project-summary strong{font-size:25px;letter-spacing:-.04em}
.project-list{display:grid;gap:12px}
.project-card{border:1px solid var(--line);border-radius:18px;background:var(--card);overflow:hidden}
.project-card.active{border-color:#9bb20d;box-shadow:inset 4px 0 0 var(--accent)}
.project-card-main{padding:19px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start}
.project-card h3{margin:6px 0 5px;font-size:21px;letter-spacing:-.035em}
.project-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}
.project-facts{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}
.project-facts span{padding:6px 8px;border:1px solid var(--line);border-radius:999px;background:#f4f3ee;color:var(--ink);letter-spacing:.03em;text-transform:none}
.project-card-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.project-candidates{border-top:1px solid var(--line);background:#f1f0ea;padding:8px 19px}
.project-candidate{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;gap:11px;align-items:center;padding:9px 0;border-bottom:1px solid #dfdfd7}
.project-candidate:last-child{border-bottom:0}
.project-rank{width:27px;height:27px;border-radius:8px;background:var(--deep);color:white;display:grid;place-items:center;font-size:10px;font-weight:900}
.project-candidate strong,.project-candidate small{display:block}.project-candidate strong{font-size:11px}.project-candidate small{margin-top:2px;color:var(--muted);font-size:9px}
.project-signal{font-size:11px;font-weight:900;text-align:right}.project-signal small{font-weight:650}
.project-boundary{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin-top:14px;padding:16px 18px;border:1px solid var(--line);border-radius:15px;background:#ecebe5;color:var(--muted);font-size:10px;line-height:1.5}
.project-boundary strong{color:var(--ink)}
.project-file-input{display:none}
@media(max-width:900px){.project-summary{grid-template-columns:repeat(2,1fr)}.project-card-main{grid-template-columns:1fr}.project-card-actions{justify-content:flex-start}}
@media(max-width:620px){.project-summary{grid-template-columns:1fr}.project-candidate{grid-template-columns:28px 1fr auto}.project-candidate .button{grid-column:2/-1}.project-boundary{grid-template-columns:1fr}}
