/* Shared Pretext / Knuth-Plass justified prose renderer. */

[data-pretext-prose] {
  box-sizing: border-box;
  width: 100%;
  max-width: var(--pretext-prose-max-width, 66ch);
  min-width: 0;
}

[data-pretext-prose].is-pretext-rendered {
  display: grid;
  gap: 0;
  width: 100%;
  min-width: 0;
  color: var(--pretext-prose-color, #25262b);
  font-family: var(--pretext-prose-font-family, var(--font-primary));
  font-size: var(--pretext-prose-font-size, var(--type-size-body));
  line-height: var(--pretext-prose-line-height, var(--type-line-reading));
  text-wrap: auto;
}

.pretext-prose-line {
  display: flex;
  align-items: baseline;
  max-width: 100%;
  height: auto;
  white-space: nowrap;
}

.pretext-prose-word,
.pretext-prose-math {
  flex: 0 0 auto;
}

.pretext-prose-space {
  flex: 0 0 auto;
  height: 1em;
}

.pretext-prose-measure {
  position: fixed;
  left: -10000px;
  top: 0;
  visibility: hidden;
  pointer-events: none;
  white-space: nowrap;
}

@media (max-width: 450px) {
  [data-pretext-prose].is-pretext-rendered {
    display: block;
    font-family: var(--pretext-prose-font-family, var(--font-primary));
    font-size: var(--pretext-prose-font-size, var(--type-size-body));
    line-height: var(--pretext-prose-mobile-line-height, 1.7);
  }

  [data-pretext-prose].is-pretext-rendered .pretext-prose-line,
  [data-pretext-prose].is-pretext-rendered .pretext-prose-word,
  [data-pretext-prose].is-pretext-rendered .pretext-prose-math,
  [data-pretext-prose].is-pretext-rendered .pretext-prose-space {
    display: inline;
    height: auto;
    white-space: normal;
  }
}
