.world-map-grid { display: grid; grid-template-columns: 3fr 2fr; gap: 24px; align-items: start; }
.world-map .map-container { width: 100%; aspect-ratio: var(--world-aspect, 2.335); border: none; border-radius: 0; overflow: visible; background: none; }
.world-map .map-container object { width: 100%; height: 100%; display: block; pointer-events: none; }
.world-map .intro { color: var(--muted); margin: 8px 0 16px; }
.world-map .legend { border: none; border-radius: 0; background: none; padding: 0; }
.world-map .legend-title { font-weight: 600; margin-bottom: 10px; }
.world-map .country-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 10px 16px; }
.world-map .country-list li { display: flex; align-items: center; gap: 10px; }
.world-map .country-list li::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--primary); }
.world-map .map-warnings { display: none; margin-top: 8px; font-size: 0.9rem; color: var(--muted); }

@media (max-width: 900px) {
  .world-map-grid { grid-template-columns: 1fr; gap: 16px; }
}
@media (max-width: 600px) {
  .world-map .country-list { grid-template-columns: 1fr; }
}