/* Preserve the reference list spacing and publication-card hover treatment. */
.research-list {
  display: grid;
  row-gap: 24px;
}

.research-card {
  position: relative;
  min-height: 110px;
  margin-bottom: .5rem;
  padding: 8px 6px;
  border-radius: 10px;
  transition: background .22s ease, box-shadow .22s ease, transform .22s ease;
}

.research-card:focus-within {
  background: rgba(255, 255, 255, .85);
  box-shadow: 0 4px 18px rgba(var(--accent-rgb), .1);
}

.research-card .title a:focus-visible,
.research-card .links a.btn:focus-visible {
  color: var(--accent-hover);
  text-decoration-line: underline;
}

/* Keep pointer hover off touch screens, where hover can otherwise persist. */
@media (hover: hover) and (pointer: fine) {
  .research-card:hover {
    background: rgba(255, 255, 255, .85);
    box-shadow: 0 4px 18px rgba(var(--accent-rgb), .1);
    transform: translateY(-2px);
  }

  .research-card:focus-within {
    transform: translateY(-2px);
  }
}

/* The original template's fixed, three-pixel reading progress bar. */
#scroll-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  width: 0%;
  background: linear-gradient(90deg, var(--accent-hover), var(--accent));
  z-index: 9999;
  border-radius: 0 2px 2px 0;
  transition: width .08s linear;
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .research-card,
  .research-card:hover,
  .research-card:focus-within {
    transform: none;
    transition: none;
  }

  .research-card a,
  #scroll-progress { transition: none; }
}
