/* Material Symbols helper class (D-040).
 *
 * The font files themselves are pulled by <link> tags in each page head, with preconnect,
 * exactly as the ESS design docs do it. Not @import: an @import inside a stylesheet cannot
 * be discovered until that stylesheet has downloaded and parsed, which delays every font by
 * a full round trip.
 */

/* Material Symbols renders ligatures: the element's text content is the icon name, and the
 * font substitutes a glyph for it. If the font fails to load, that text shows through and
 * the interface fills with words like "space_dashboard".
 *
 * Two guards. `display=block` above gives the font a short blocking period rather than
 * showing fallback text immediately. And the width/overflow below clip anything that does
 * leak, so a font failure degrades to a blank square rather than to visible debris.
 */
.ms {
  font-family: "Material Symbols Rounded";
  font-weight: 400;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: "liga";
  -webkit-font-smoothing: antialiased;
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 20;

  /* The clip. A rendered glyph is square and fits; an unrendered ligature name is far
   * wider and gets cut off instead of breaking the layout. */
  width: 1em;
  overflow: hidden;
  user-select: none;
}

/* The sizes the ESS files use. */
.ms-16 {
  font-size: 16px;
}
.ms-17 {
  font-size: 17px;
}
.ms-18 {
  font-size: 18px;
}
.ms-19 {
  font-size: 19px;
}
.ms-21 {
  font-size: 21px;
}
