/* nps-card.css — job-file surfaces. Variants: interactive, compact, flush, header/footer. */

.nps-card {
  background: var(--nps-surface);
  border: 1px solid var(--nps-border);
  border-radius: var(--nps-radius-lg);
  box-shadow: var(--nps-shadow-sm);
  color: var(--nps-ink);
  min-width: 0;
}

.nps-card--interactive {
  transition: transform var(--nps-duration-fast) var(--nps-ease-standard),
    box-shadow var(--nps-duration-fast) var(--nps-ease-standard);
  cursor: pointer;
}
.nps-card--interactive:hover {
  transform: translateY(-2px);
  box-shadow: var(--nps-shadow-md);
  border-color: var(--nps-border-strong);
}

.nps-card--compact .nps-card__body { padding: var(--nps-space-3); }
.nps-card--flush { border-radius: 0; box-shadow: none; }

.nps-card__header,
.nps-card__body,
.nps-card__footer {
  padding: var(--nps-space-4);
}

.nps-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--nps-space-3);
  border-bottom: 1px solid var(--nps-divider);
}

.nps-card__title {
  font-family: var(--nps-font-display);
  font-size: var(--nps-fs-title);
  margin: 0;
}

.nps-card__subtitle {
  margin: var(--nps-space-1) 0 0;
  color: var(--nps-ink-muted);
  font-size: var(--nps-fs-caption);
}

.nps-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--nps-space-3);
  border-top: 1px solid var(--nps-divider);
  font-size: var(--nps-fs-caption);
  color: var(--nps-ink-muted);
}

a.nps-card {
  text-decoration: none;
  color: inherit;
  display: block;
}
