/* World-space fog covers terrain and distant hexes; units and actions stay readable. */
.map-fog {
  position: absolute; z-index: 0; left: -25%; top: -25%; width: 150%; height: 150%;
  pointer-events: none; mask-size: 100% 100%; mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%; -webkit-mask-repeat: no-repeat;
  overflow: hidden;
}
.map-fog-clouds {
  display: block; width: 100%; height: 100%;
  /* Overscan keeps the canvas edges outside the stationary visibility mask. */
  transform: scale(1.04);
}
@media (prefers-reduced-motion: no-preference) {
  .map-fog-clouds { animation: fog-drift 12s ease-in-out infinite alternate; }
}
@keyframes fog-drift {
  from { transform: translate(-1.2%, -.6%) scale(1.04); }
  to { transform: translate(1.2%, .6%) scale(1.04); }
}
