.idle__placeholder {
  position: relative;
  grid-row: 1;
  grid-column: 1; }
  .idle__placeholder > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--intrinsic-height, 100%);
    object-fit: cover; }

.idle__placeholder--done {
  opacity: 0;
  transition: opacity .5s .25s; }

.idle__template,
.idle__done {
  grid-row: 1;
  grid-column: 1;
  position: relative; }
  .idle__template img,
  .idle__done img {
    width: 100%; }
    .idle--height-intrinsic .idle__template img, .idle--height-intrinsic
    .idle__done img {
      width: auto; }

.idle {
  display: grid;
  height: var(--intrinsic-height, auto); }

.idle__fallback {
  vertical-align: bottom;
  height: var(--intrinsic-height, auto); }

.idle--fit .idle__done img {
  object-fit: cover; }

.idle--height-full {
  height: 100%; }
