/* Shared reliable visual follower — used in React and standalone games.
   No fixed-position or reparenting: original SVG, WebGL canvas, and React nodes
   remain where gameplay expects them, with a scroll-synced visual transform. */
.flow-follow-container {
  overflow: visible !important;
}
.flow-follow-unclipped {
  overflow: visible !important;
}
.flow-follow-container > .flow-follow-reference,
.flow-follow-reference {
  position: relative !important;
  top: auto !important;
  bottom: auto !important;
  transform: translate3d(0, var(--flow-follow-offset, 0px), 0) !important;
  transition: none !important;
  will-change: transform;
  z-index: 25 !important;
}
@media (max-width: 850px) {
  /* Keep graphics legible, even when the answer textarea is focused. */
  .flow-follow-reference.map-col .map-frame {
    width: 100% !important;
    max-width: none !important;
    padding: 4px !important;
    margin: 0 auto !important;
  }
  .flow-follow-reference.map-col .map-frame svg {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 760 / 535 !important;
  }
  .flow-follow-reference.map-col .map-note,
  .flow-follow-reference.map-col .map-legend {
    display: none !important;
  }
  .flow-follow-reference.television-zone .television {
    width: min(84vw, 350px) !important;
    max-width: 100% !important;
    margin-inline: auto !important;
  }
  .flow-follow-reference.wheel-side .wheel-stage {
    width: min(78vw, 315px) !important;
    max-width: 100% !important;
  }
  .flow-follow-reference.vp-stage .vg-scene {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 3 / 2 !important;
  }
  .flow-follow-reference.ot-card .ot-image {
    height: clamp(200px, 32dvh, 290px) !important;
  }
  .flow-follow-reference.dice-pictures .dice-picture {
    min-width: 150px !important;
    max-width: 175px !important;
  }
  .flow-follow-reference.dice-pictures .dice-picture-face svg {
    width: 88px !important;
    height: 88px !important;
  }
  .flow-follow-reference.cards .choice-card .art {
    height: clamp(115px, 20dvh, 165px) !important;
  }
  .flow-follow-reference#landscape {
    height: clamp(215px, 30dvh, 285px) !important;
  }
}
