.activity-summary {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-bottom: 18px;
}
.activity-summary article, .activity-summary button {
  text-align: left;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 15px;
  padding: 17px 19px;
  color: var(--ink);
}
.activity-summary button { cursor: pointer; }
.activity-summary .selected { border-color: #3159ef; box-shadow: 0 0 0 2px rgba(49,89,239,.12); }
.activity-summary .attention { border-color: #f2c94c; background: #fffaf0; }
.activity-summary .danger { border-color: #ef8d8d; background: #fff5f5; }
.activity-summary strong, .activity-summary span { display: block; }
.activity-summary strong { font-size: 26px; }
.activity-summary span { color: var(--muted); margin-top: 4px; }
.activity-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.activity-card {
  position: relative;
  background: #fff;
  border: 1px solid var(--line);
  border-left: 5px solid #9badc6;
  border-radius: 14px;
  padding: 17px;
  box-shadow: 0 5px 16px rgba(20,43,88,.05);
}
.activity-card.priority-high { border-left-color: #f2b441; }
.activity-card.priority-urgent, .activity-card.overdue { border-left-color: #df5656; }
.activity-card > div:first-child, .activity-card footer, .activity-actions { display: flex; justify-content: space-between; gap: 10px; align-items: center; }
.activity-type, .activity-card .priority { padding: 4px 9px; border-radius: 999px; background: #edf2ff; color: #2949bc; font-size: 12px; font-weight: 800; }
.activity-card .priority { background: #f3f5f9; color: #596a84; }
.activity-card h3 { margin: 14px 0 7px; font-size: 19px; }
.activity-card p { margin: 4px 0; color: var(--muted); }
.activity-card footer { margin-top: 17px; padding-top: 13px; border-top: 1px solid var(--line); color: var(--muted); font-size: 12px; }
.activity-actions { margin-top: 13px; justify-content: flex-end; }
.activity-actions button { min-width: 120px; }
@media (max-width: 900px) { .activity-summary { grid-template-columns: repeat(2,1fr); } .activity-list { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .activity-summary { grid-template-columns: 1fr 1fr; } .activity-card footer { align-items: flex-start; flex-direction: column; } }
