/* Preserve the original circular portrait and icon links within the shared site theme.
   Font Awesome: Fonticons, Inc., CSS MIT / fonts SIL OFL 1.1.
   Academicons 1.8.0: James Walsh, CSS MIT / fonts SIL OFL 1.1. */
@font-face { font-family: 'Font Awesome 5 Free'; font-style: normal; font-weight: 900; src: url('../fonts/fa-solid-900.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'Font Awesome 5 Brands'; font-style: normal; font-weight: 400; src: url('../fonts/fa-brands-400.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: Academicons; font-style: normal; font-weight: 400; src: url('../fonts/academicons.woff') format('woff'); font-display: swap; }
.fas, .fab, .ai { display: inline-block; font-style: normal; font-variant: normal; text-rendering: auto; line-height: 1; -webkit-font-smoothing: antialiased; }
.fas { font-family: 'Font Awesome 5 Free'; font-weight: 900; }
.fab { font-family: 'Font Awesome 5 Brands'; font-weight: 400; }
.ai { font-family: Academicons; font-weight: 400; }
.fa-fw, .ai-fw { width: 1.3em; text-align: center; }
.fa-map-marker:before { content: '\f041'; }
.fa-envelope:before { content: '\f0e0'; }
.fa-linkedin:before { content: '\f08c'; }
.fa-graduation-cap:before { content: '\f19d'; }
.fa-github:before { content: '\f09b'; }
.ai-orcid-square:before { content: '\e841'; }
.home-shell { display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 52px; align-items: start; }
.sidebar { position: sticky; top: 32px; min-width: 0; }
.author__avatar img { display: block; width: 175px; height: 175px; padding: 5px; border: 1px solid var(--sky); border-radius: 50%; }
.author__name { margin: 14px 0 8px; font-size: 22px; font-weight: 500; line-height: 1.35; }
.author__bio { margin: 0 0 20px; font-size: 17px; line-height: 1.6; color: var(--muted); }
.author__urls { margin: 0; padding: 0; list-style: none; font-size: 17px; line-height: 1.6; }
.author__urls li { margin-bottom: 9px; }
.author__urls a { color: var(--accent); text-decoration: none; }
.author__urls a:hover { color: var(--accent); text-decoration: underline; }
.author__urls i { margin-right: 4px; color: var(--accent); }
.author__urls-wrapper button { display: none; font: inherit; color: var(--accent); background: none; border: 1px solid var(--line); border-radius: 3px; padding: 5px 12px; cursor: pointer; }
.home-content { min-width: 0; }
/* News are plain Markdown bullets: bold date, then text and optional links. */
.home-bio > blockquote { margin: 28px 0 0; font-size: var(--small); color: var(--ink); }
.home-bio :is(#news-title + ul, #news-title + ul + details > ul) { list-style: none; margin: 0; padding: 0; }
.home-bio :is(#news-title + ul, #news-title + ul + details > ul) > li > p { margin: 0; }
.home-bio :is(#news-title + ul, #news-title + ul + details > ul) > li { position: relative; margin: 0; padding: 11px 0 11px 126px; font-size: var(--small); line-height: 1.7; }
.home-bio :is(#news-title + ul, #news-title + ul + details > ul) > li > strong:first-child, .home-bio :is(#news-title + ul, #news-title + ul + details > ul) > li > p:first-child > strong:first-child { position: absolute; left: 0; width: 108px; color: var(--nav); font-size: 17px; font-weight: 400; line-height: 1.8; white-space: nowrap; }
.home-bio #news-title + ul + details { margin-top: 12px; border-top: 1px solid var(--line); }
.home-bio #news-title + ul + details > summary { padding: 14px 0; font-size: var(--small); color: var(--accent); cursor: pointer; }
.home-bio #news-title + ul + details > summary:hover { text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 900px) {
  .home-shell { grid-template-columns: 190px minmax(0, 1fr); gap: 32px; }
  .home-bio :is(#news-title + ul, #news-title + ul + details > ul) > li { padding-left: 0; }
  .home-bio :is(#news-title + ul, #news-title + ul + details > ul) > li > strong:first-child, .home-bio :is(#news-title + ul, #news-title + ul + details > ul) > li > p:first-child > strong:first-child { display: block; position: static; width: auto; margin-bottom: 2px; }
}
@media (max-width: 700px) {
  .home-shell { grid-template-columns: 1fr; gap: 32px; }
  .sidebar { position: static; }
  .sidebar > div { display: grid; grid-template-columns: 90px minmax(0, 1fr); column-gap: 20px; }
  .author__avatar { grid-row: 1 / 3; }
  .author__avatar img { width: 90px; height: 90px; padding: 3px; }
  .author__name { margin-top: 0; }
  .author__bio { margin-bottom: 12px; }
  .author__urls-wrapper { grid-column: 2; }
  .author__urls-wrapper button { display: inline-block; font-size: 17px; }
  .author__urls { display: none; margin-top: 16px; font-size: 17px; }
  .author__urls-wrapper.is-open .author__urls { display: block; }
}
