.igr-scene {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 560 / 330;
  overflow: visible;
  font-family: inherit;
  pointer-events: none;
  isolation: isolate;
}

.igr-scene text {
  font-family: inherit;
  text-rendering: geometricPrecision;
  font-weight: 400;
  letter-spacing: -.2px;
}

.igr-pulse {
  stroke-dasharray: 5 95;
  stroke-dashoffset: 100;
  animation: igr-travel 6.5s linear infinite;
  animation-delay: var(--igr-delay, 0s);
}

.igr-type {
  stroke-dasharray: 100;
  stroke-dashoffset: 0;
  animation: igr-type 9s ease-in-out infinite;
}

.igr-progress {
  transform-box: fill-box;
  transform-origin: left center;
  animation: igr-progress 8s ease-in-out infinite;
  animation-delay: var(--igr-delay, 0s);
}

.igr-bar,
.igr-wave {
  transform-box: fill-box;
  transform-origin: center bottom;
  animation: igr-bar 9s ease-in-out infinite;
  animation-delay: var(--igr-delay, 0s);
}

.igr-wave {
  transform-origin: center center;
  animation-duration: 5s;
}

.igr-soft,
.igr-cursor {
  animation: igr-soft 6s ease-in-out infinite;
}

.igr-trend {
  stroke-dasharray: 100;
  stroke-dashoffset: 0;
  animation: igr-trend 10s ease-in-out infinite;
}

@keyframes igr-travel {
  to { stroke-dashoffset: 0; }
}

@keyframes igr-type {
  0%, 100% { stroke-dashoffset: 0; opacity: 1; }
  45% { stroke-dashoffset: 5; opacity: .8; }
  70% { stroke-dashoffset: 0; opacity: 1; }
}

@keyframes igr-progress {
  0%, 100% { transform: scaleX(1); }
  50% { transform: scaleX(.76); }
}

@keyframes igr-bar {
  0%, 100% { transform: scaleY(1); }
  50% { transform: scaleY(.88); }
}

@keyframes igr-soft {
  0%, 100% { opacity: 1; }
  50% { opacity: .65; }
}

@keyframes igr-trend {
  0%, 100% { stroke-dashoffset: 0; }
  50% { stroke-dashoffset: 8; }
}

body[data-motion='paused'] .igr-scene * {
  animation-play-state: paused !important;
}

@media (prefers-reduced-motion: reduce) {
  .igr-scene * {
    animation: none !important;
    transition: none !important;
  }

  .igr-pulse {
    display: none;
  }
}

@media print {
  .igr-scene * {
    animation: none !important;
  }

  .igr-pulse {
    display: none;
  }
}
