/* Map atmosphere — geographic zone lift (calibrated to Czech spatial logic) */

.world-lighting {
  position: absolute;
  inset: 0;
  width: var(--map-w);
  height: var(--map-h);
  pointer-events: none;
  z-index: 3;
  mix-blend-mode: soft-light;
  opacity: 0.38;
  background:
    radial-gradient(ellipse 38% 32% at 45% 33%, rgba(200, 210, 185, 0.16) 0%, transparent 62%),
    radial-gradient(ellipse 42% 28% at 51% 17%, rgba(168, 178, 188, 0.1) 0%, transparent 58%),
    radial-gradient(ellipse 36% 40% at 20% 50%, rgba(42, 74, 52, 0.12) 0%, transparent 55%),
    radial-gradient(ellipse 34% 26% at 40% 67%, rgba(58, 136, 152, 0.08) 0%, transparent 52%),
    radial-gradient(ellipse 40% 34% at 70% 46%, rgba(90, 72, 56, 0.09) 0%, transparent 54%);
}

.world-lighting--bloom {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 45;
  opacity: 0.35;
  background:
    radial-gradient(ellipse 36% 30% at 45% 33%, rgba(212, 175, 55, 0.07) 0%, transparent 70%),
    radial-gradient(ellipse 32% 24% at 51% 17%, rgba(200, 210, 220, 0.04) 0%, transparent 65%);
}

.world-haze {
  position: absolute;
  inset: 0;
  width: var(--map-w);
  height: var(--map-h);
  z-index: 2;
  pointer-events: none;
  opacity: 0.25;
  background:
    radial-gradient(ellipse 55% 40% at 48% 88%, rgba(8, 12, 10, 0.35) 0%, transparent 55%),
    radial-gradient(ellipse 30% 22% at 42% 66%, rgba(8, 12, 10, 0.12) 0%, transparent 50%);
}

.world-fog-fg {
  position: absolute;
  inset: 0;
  width: var(--map-w);
  height: var(--map-h);
  z-index: 12;
  pointer-events: none;
  opacity: 0.18;
  background: linear-gradient(0deg, rgba(8, 10, 8, 0.2) 0%, transparent 25%);
  transition: opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

body.hotspot-focused .world-fog-fg,
.world--focused .world-fog-fg {
  opacity: 0.1;
}

.shadow-band {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 44;
  opacity: 0.12;
}

@keyframes shadow-sweep {
  0%, 100% { background-position: 0% 0; }
  50% { background-position: 100% 0; }
}
