/* Additions on top of the vendored Minimal Light CSS.
   Kept in a separate file so theme.css / publications.css stay pristine and
   can be re-pulled from upstream without losing local changes. */

/* The sprite holder is referenced by <use> but never drawn. The `hidden` attribute
   alone is not enough: the UA stylesheet's [hidden] rule is scoped to the HTML
   namespace, so it does not match an <svg>. Without this it lays out as a 300x150
   box and pushes the whole page down. */
svg[hidden] {
  display: none;
}

/* Sprite icons, sized by the surrounding font-size and coloured by its text */
.icon {
  width: 1em;
  height: 1em;
  fill: currentColor;
  vertical-align: -0.125em;
}

/* Upstream spaces these with an inline style on every <a>; do it once here.
   1rem margins would overflow the 232px sidebar at five icons. */
.social-icons a {
  margin-right: 5px;
}

.image.avatar img {
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
  /* upstream is 45% of the 232px sidebar (~104px); this is the "a bit bigger" size */
  width: 75%;
}

/* Entries with no teaser image: drop the reserved thumbnail height */
.publications ol.bibliography li .pub-row.no-teaser {
  display: block;
}

.publications ol.bibliography li:has(.no-teaser) {
  min-height: 0;
}

/* venue_short badge on the teaser. Same selector as publications.css so this wins
   on load order; #e74d3c is the accent red the theme already uses for `notes`. */
.publications ol.bibliography li .abbr abbr {
  background-color: #e74d3c;
}

/* Video teasers keep their native 4:3 frame instead of the 270x123 image crop */
.publications ol.bibliography li video.teaser {
  height: auto;
  aspect-ratio: 4 / 3;
}

.publications ol.bibliography li .abbr:has(video) {
  height: auto;
}

.pub-description {
  margin-top: 0.15rem;
  margin-bottom: 0.35rem;
}

/* Project technology tags */
.tags {
  margin: 0.35rem 0;
}

.tag {
  display: inline-block;
  font-size: 12px;
  line-height: 1.6;
  padding: 0 0.5rem;
  margin: 0 0.3rem 0.3rem 0;
  border-radius: 0.75rem;
  color: #595959;
  background: #f0f0f2;
}

@media (prefers-color-scheme: dark) {
  .tag {
    color: #dadbdf;
    background: #2c2d38;
  }
}

