/* Embedded content: audio, canvas, iframe, img, svg, video */

:where(audio, canvas, iframe, img, svg, video) {
  vertical-align: middle;
}

audio,
video {
  display: inline-block;
}

/* Media never overflows its container. Iframes keep their height attribute. */
:where(video, canvas, iframe) {
  max-inline-size: 100%;
}

:where(video, canvas) {
  block-size: auto;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

:where(iframe) {
  border-style: none;
}

img {
  max-width: 100%;
  height: auto;
  border-style: none;
}

:where(svg:not([fill])) {
  fill: currentColor;
}

/* The second selector covers svg inside a shadow root */
svg:not(:root),
svg:not(:host) {
  overflow: hidden;
}
