.software-intro{color:var(--pm-muted);font-size:15px;line-height:1.8;margin:0 0 24px}
.software-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.software-grid .pm-card-body{padding:24px}
.software-grid .pm-card h3{font-size:18px;margin:0 0 10px;line-height:1.6}
.software-grid .software-description{font-size:14px;line-height:1.85;margin:0 0 22px}
.software-card-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-top:auto}
.software-grid .software-credit{color:var(--pm-muted);font-size:11px;line-height:1.75;flex:1 1 210px;margin:0}
.software-grid .software-open{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 16px;border-radius:5px;background:var(--pm-accent);color:var(--pm-bg);font-size:13px;font-weight:600;white-space:nowrap;text-decoration:none}
.software-grid .software-open:hover{filter:brightness(.94);text-decoration:none}
@media(max-width:650px){.software-grid{grid-template-columns:1fr}.software-grid .pm-card-body{padding:20px}}

.software-intro-actions{margin:-8px 0 26px}.software-assignment-entry{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:600;color:var(--pm-accent);text-decoration:none}.software-assignment-entry:hover{text-decoration:underline}
