/* The loader illustration is vector artwork; it remains sharp on small iPhone screens. */
.tpc-loader-juggle-stage.tpc-juggler-stage {
  width: min(23rem, 86vw);
  height: auto;
  aspect-ratio: 18 / 13;
  margin: -.7rem auto .15rem;
  max-width: 100%;
  position: relative;
  isolation: isolate;
  /* Keep animated SVG painting inside this small stage, not the full-screen overlay. */
  contain: layout paint style;
}
.tpc-juggler-svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
  contain: layout style;
  /* One modest compositing layer; individual limbs do not create GPU layers. */
  transform: translateZ(0);
  will-change: transform;
}
.tpc-juggler-field {
  fill: none;
  stroke: #153597;
  stroke-opacity: .14;
  stroke-width: 1.2;
}
.tpc-juggler-ground-shadow,
.tpc-juggler-ball-shadow { fill: #091d52; opacity: .14; }
[data-theme="dark"] .tpc-juggler-field,
html[data-tpc-theme="dark"] .tpc-juggler-field,
body.tpc-site-dark-mode .tpc-juggler-field,
.dark .tpc-juggler-field { stroke: #adc5ff; stroke-opacity: .23; }
[data-theme="dark"] .tpc-juggler-ground-shadow,
[data-theme="dark"] .tpc-juggler-ball-shadow,
html[data-tpc-theme="dark"] .tpc-juggler-ground-shadow,
html[data-tpc-theme="dark"] .tpc-juggler-ball-shadow,
body.tpc-site-dark-mode .tpc-juggler-ground-shadow,
body.tpc-site-dark-mode .tpc-juggler-ball-shadow,
.dark .tpc-juggler-ground-shadow,
.dark .tpc-juggler-ball-shadow { fill: #010818; }
@media (max-width: 480px) {
  .tpc-loader-juggle-stage.tpc-juggler-stage { width: min(20rem, 82vw); margin-top: -.5rem; }
}
@media (max-height: 600px) and (orientation: landscape) {
  .tpc-loader-juggle-stage.tpc-juggler-stage { width: 12rem; margin-top: -.7rem; margin-bottom: -.6rem; }
}
@media (prefers-reduced-motion: reduce) {
  .tpc-juggler-svg { transform: none; will-change: auto; }
}
