

.certificates-intro { color: var(--muted); font-size: 19px; line-height: 1.75; max-width: 65ch; margin-bottom: 24px; }
.certificates-summary { display: inline-flex; flex-wrap: wrap; gap: 12px 28px; margin: 0; padding: 8px 14px; border-left: 3px solid var(--blue); background: var(--surface); font-size: 15px; }
.credential-learning { margin: 12px 0 0; font-size: 15px; }
.credential-learning span { color: var(--muted); }
.credential-learning a { display: inline-flex; align-items: center; min-height: 44px; }
.certificates-surface { background: var(--surface); }
.certificates-catalog { padding-top: 32px; padding-bottom: 56px; }
.certificate-controls { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.certificate-controls .search-wrap { width: min(360px, 100%); }
.credential-row { scroll-margin-top: 24px; display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 32px; padding: 28px 0; border-top: 1px solid var(--line); align-items: start; }
.credential-row:last-child { border-bottom: 1px solid var(--line); }
.credential-badge { display: block; width: 88px; height: 88px; object-fit: contain; }
.credential-content h2 { font-size: 21px; line-height: 1.45; font-weight: 600; letter-spacing: -.025em; max-width: 48ch; overflow-wrap: anywhere; margin-bottom: 16px; }
.credential-dates { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 12px 24px; margin: 0 0 16px; }
.credential-dates dt { font-size: 14px; color: var(--muted); margin-bottom: 4px; font-weight: 400; }
.credential-dates dd { font-variant-numeric: tabular-nums; font-size: 16px; margin: 0; font-weight: 600; color: var(--ink); }
.credential-links { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 16px; }
.credential-links .text-link { display: inline-flex; align-items: center; min-height: 44px; padding: 4px 14px; background: var(--soft); border-radius: var(--radius-sm); text-decoration: none; font-weight: 500; font-size: 13px; color: var(--blue); transition: background .15s ease, color .15s ease; }
.credential-links .text-link:hover { background: var(--action); color: var(--on-action); }
.credential-about { display: inline-flex; align-items: center; min-height: 44px; color: var(--muted); font-size: 14px; padding: 6px 0; text-decoration: underline; text-underline-offset: 4px; text-decoration-color: var(--line); transition: color .15s ease, text-decoration-color .15s ease; }
.credential-about:hover { color: var(--blue); text-decoration-color: var(--blue); }
.credential-id { color: var(--muted); font-size: 13px; margin: 12px 0 0; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.certificate-source { margin-top: 30px; max-width: 80ch; }
.certificate-source p { color: var(--muted); font-size: 14px; line-height: 1.8; margin-bottom: 8px; }
.certificate-source .source-explanation { margin-top: 12px; }

@media (max-width: 700px) {
  .certificates-intro { font-size: 17px; }
  .certificates-intro br { display: none; }
  .certificates-summary { font-size: 14px; gap: 5px; flex-direction: column; }
  .certificates-catalog { padding-top: 24px; padding-bottom: 34px; }
  .certificate-controls { flex-direction: column; align-items: stretch; gap: 12px; }
  .certificate-controls .search-wrap { width: 100%; }
  .credential-row { grid-template-columns: 48px minmax(0, 1fr); gap: 12px 16px; padding-block: 28px; }
  .credential-badge { width: 48px; height: 48px; }
  .credential-content { display: contents; }
  .credential-content h2 { grid-column: 2; align-self: center; }
  .credential-content > :not(h2) { grid-column: 1 / -1; }
  .credential-content h2 { font-size: 19px; margin-bottom: 4px; }
  .credential-dates { margin-bottom: 0; }
  .credential-learning, .credential-id { margin-top: 0; }
  .credential-dates { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 10px 20px; }
  .credential-dates dd { font-size: 14px; }
  .credential-links { gap: 5px 20px; }
}
@media print {
  .certificates-hero { padding-top: 0; padding-bottom: 20px; }
  .certificates-hero h1 { font-size: 26pt; margin-top: 0; }
  .back-link, .certificate-controls, #certificate-results, #certificate-empty { display: none !important; }
  .certificates-catalog { padding-top: 0; padding-bottom: 0; }
  .certificates-intro { font-size: 10pt; }
  .credential-row { grid-template-columns: 58px minmax(0, 1fr); gap: 16px; padding-block: 16px; break-inside: avoid; }
  .credential-badge { width: 58px; height: 58px; grid-row: auto; }
  .credential-content { display: block; grid-column: 2; grid-row: auto; }
  .credential-content h2 { font-size: 12pt; }
  .credential-dates dd { font-size: 9pt; }
}
