/* Canon status badges: <span class="canon locked">Locked</span> */
.canon {
  display: inline-block;
  padding: 0 .5em;
  border-radius: .25em;
  font-size: .75em;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
  vertical-align: middle;
  border: 1px solid currentColor;
}
.canon.locked   { color: #2e7d32; }
.canon.draft    { color: #b26a00; }
.canon.open     { color: #1565c0; }
.canon.conflict { color: #c62828; }
[data-md-color-scheme="slate"] .canon.locked   { color: #81c784; }
[data-md-color-scheme="slate"] .canon.draft    { color: #ffb74d; }
[data-md-color-scheme="slate"] .canon.open     { color: #64b5f6; }
[data-md-color-scheme="slate"] .canon.conflict { color: #ef9a9a; }

/* Info boxes on entry pages */
.infobox {
  float: right;
  width: 17rem;
  margin: 0 0 1rem 1.5rem;
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: .3rem;
  background: var(--md-code-bg-color);
  font-size: .68rem;
}
.infobox .infobox-title {
  margin: 0;
  padding: .5rem .75rem;
  font-weight: 700;
  text-align: center;
  background: var(--md-primary-fg-color);
  color: var(--md-primary-bg-color);
  border-radius: .3rem .3rem 0 0;
}
.infobox .md-typeset__table { margin: 0; }
.infobox table:not([class]) { margin: 0; border: none; font-size: .68rem; display: table; width: 100%; }
.infobox table:not([class]) thead { display: none; }
.infobox table:not([class]) td { padding: .35rem .6rem; vertical-align: top; }
@media screen and (max-width: 59.9375em) {
  .infobox { float: none; width: 100%; margin: 0 0 1rem; }
}

/* Lead image at the top of an infobox, full box width */
.infobox p:has(> img) { margin: 0; }
.infobox img { display: block; width: 100%; height: auto; }
.infobox .md-typeset__scrollwrap, .infobox .md-typeset__table { display: block; width: 100%; margin: 0; padding: 0; }

/* Images floated beside a page's opening text */
.md-typeset img[align=right] { margin: 0 0 1rem 1.5rem; border-radius: .3rem; }
@media screen and (max-width: 59.9375em) {
  .md-typeset img[align=right] { float: none; display: block; margin: 0 auto 1rem; }
}

/* "Through the years" galleries of past looks (images/prompts.yaml `gallery`) */
.era-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr)); gap: 1rem; align-items: start; }
.era-gallery figure { margin: 0; }
.era-gallery img { width: 100%; height: auto; border-radius: .3rem; }
.era-gallery figcaption { font-size: .75rem; }
