.panel { padding: 1.5rem; }
.panel + .panel { margin-top: 1rem; }

.list-card { padding: 1rem 1.2rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.list-card .meta { color: var(--muted); font-size: .9rem; }

.stat-grid { display: grid; gap: .95rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.stat { padding: 1rem; border-radius: 18px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); }
.stat strong { display: block; font-size: 1.25rem; margin-bottom: .35rem; }

.progress-list { display: grid; gap: .8rem; }
.progress-item { padding: .85rem 1rem; border-radius: 16px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); }

.tag-list { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .7rem; }
.tag { display: inline-flex; padding: .3rem .65rem; border-radius: 999px; background: rgba(255,255,255,.06); color: var(--muted); font-size: .8rem; }

.reveal { opacity: 0; transform: translateY(16px); transition: opacity .7s ease, transform .7s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }

.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }

@media (max-width: 720px) {
  .stat-grid { grid-template-columns: 1fr; }
}
