/* =====================================================================
   JRS author pages: the author page, the directory, the author's form.
   Loaded by jrs-authors.php. Source of truth:
   Workflows/jrs-site/bricks/install/jrs-authors.css
   ===================================================================== */

/* ---------- the author page head: photo (when there is one) and text ---------- */
.jrs-authhead {
  display: flex;
  flex-flow: row wrap;
  gap: var(--space-l);
  align-items: flex-start;
}
.jrs-authhead__photo {
  flex: 0 0 200px;
  width: 200px;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: 0;
}
.jrs-authhead__text {
  flex: 999 1 30rem;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-xs);
}
.jrs-authhead__text h1 { margin: 0; }
.jrs-authhead__inst { font-size: var(--text-lead); line-height: var(--lh-lead); }
.jrs-authhead__bio p { margin: 0 0 var(--space-xs); }
.jrs-authhead__bio p:last-child { margin-bottom: 0; }

.jrs-orcid {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: var(--text-meta);
  align-self: flex-start;
}
.jrs-orcid__icon { flex: 0 0 auto; }

/* ---------- the author's articles ---------- */
.jrs-autharts__row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-block: var(--space-s);
  border-bottom: var(--rule-hairline);
}
.jrs-autharts__type {
  font-size: var(--text-micro);
  font-weight: var(--fw-label);
  letter-spacing: var(--label-tracking);
  text-transform: uppercase;
}
.jrs-autharts__title { margin: 0; font-size: var(--h4); line-height: var(--lh-h4); }
.jrs-autharts__title a { color: var(--brand-deep); }
.jrs-autharts__meta { font-size: var(--text-meta); color: var(--text-mute); }

/* ---------- the directory ---------- */
.jrs-authdir { display: flex; flex-direction: column; gap: var(--space-m); }
.jrs-authdir__field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: var(--text-meta);
  font-weight: var(--fw-head);
}
.jrs-authdir__field input {
  min-height: 44px;
  box-sizing: border-box;
  border: var(--box-quiet);
  border-radius: 0;
  padding: 8px 12px;
  font: inherit;
  font-weight: var(--fw-body);
  background: var(--white);
  width: 100%;
}
.jrs-authdir__letters {
  display: flex;
  flex-flow: row wrap;
  gap: 4px;
  font-size: var(--text-meta);
  font-weight: var(--fw-head);
}
.jrs-authdir__letters a,
.jrs-authdir__letters span {
  min-width: 32px;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.jrs-authdir__letters span { color: var(--text-mute); font-weight: var(--fw-body); }
.jrs-authdir__group { display: flex; flex-direction: column; gap: var(--space-s); scroll-margin-top: var(--jrs-header-h, 120px); }
.jrs-authdir__grid {
  display: grid;
  grid-template-columns: var(--grid-auto-m);
}
.jrs-authdir__card {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: var(--space-s) var(--space-s) var(--space-s) 0;
  border-bottom: var(--rule-hairline);
  color: var(--text);
  text-decoration: none;
}
.jrs-authdir__card:hover .jrs-authdir__name,
.jrs-authdir__card:focus-visible .jrs-authdir__name { text-decoration: underline; }
.jrs-authdir__name { font-size: var(--h4); font-weight: var(--fw-head); color: var(--brand-deep); }
.jrs-authdir__meta { font-size: var(--text-meta); color: var(--text-mute); }

/* ---------- the author's own form ---------- */
.jrs-authform { display: flex; flex-direction: column; gap: var(--space-s); }
.jrs-authform__view { margin: 0; font-size: var(--text-meta); font-weight: var(--fw-head); }
.jrs-authform__photo { display: flex; flex-flow: row wrap; gap: var(--space-s); align-items: center; }
.jrs-authform__photo img { width: 120px; height: 150px; object-fit: cover; }
