.ct-wrap { max-width: var(--container-wide); margin: 0 auto; padding: 32px 20px 60px; }
.ct-header { margin-bottom: 12px; }
.ct-title {
  font-family: var(--font-display); font-size: clamp(30px, 5.5vw, 42px);
  font-weight: 800; letter-spacing: -.02em; margin-bottom: 6px;
}
.ct-sub { font-size: var(--text-base); color: var(--t2); max-width: 640px; }

.ct-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 14px; }
.ct-card {
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-lg);
  padding: 18px; display: flex; flex-direction: column; gap: 10px;
  transition: border-color var(--transition), transform var(--transition), box-shadow var(--transition);
}
.ct-card:hover { border-color: var(--accent-b); transform: translateY(-2px); box-shadow: 0 16px 32px -20px var(--shadow-strong); }
.ct-card-top { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.ct-card-name { font-size: var(--text-lg); font-weight: 800; }
.ct-card-date { font-family: var(--font-mono); font-size: var(--text-2xs); color: var(--t3); white-space: nowrap; flex-shrink: 0; }
.ct-card-mons { display: flex; gap: 6px; flex-wrap: wrap; }
.ct-card-names { font-size: var(--text-sm); color: var(--t2); line-height: 1.5; }
.ct-card-cta { font-family: var(--font-mono); font-size: var(--text-xs); font-weight: 700; color: var(--accent); margin-top: auto; }
