/* v6.3 위성 지도 */
.wv-map { background: #0a2744; flex: 1 1 0; min-height: 150px; }
#wv-terrain { image-rendering: auto; pointer-events: none; }
.wg { stroke: rgba(255, 255, 255, .13); stroke-width: 1; pointer-events: none; }
.wg-t { fill: rgba(255, 255, 255, .55); font-size: 13px; paint-order: stroke; stroke: rgba(0, 0, 0, .55); stroke-width: 3px; pointer-events: none; }
.wg-region { fill: rgba(255, 255, 255, .5); font-size: 30px; letter-spacing: .12em; text-anchor: middle; paint-order: stroke; stroke: rgba(0, 0, 0, .6); stroke-width: 6px; pointer-events: none; }
.wn-glow { pointer-events: none; animation: wv-twinkle 3.2s ease-in-out infinite; }
.wv-lights circle:nth-child(2n) { animation-delay: -1.1s; }
.wv-lights circle:nth-child(3n) { animation-delay: -2.2s; }
.wr line { stroke: rgba(255, 238, 190, .6); }
.wv-compass { position: absolute; left: 6px; top: 6px; pointer-events: none; }
.wv-scale { position: absolute; left: 8px; bottom: 8px; display: flex; flex-direction: column; gap: 2px; font: 11px/1 "Jua", sans-serif; color: #fff; text-shadow: 0 1px 3px #000; pointer-events: none; }
.wv-scale i { display: block; height: 5px; min-width: 20px; border: 2px solid #fff; border-top: 0; box-shadow: 0 1px 3px rgba(0, 0, 0, .7); }
.wv-map[data-terrain="winter"]::after { content: ""; position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 0 40px rgba(210, 235, 255, .35); }
@keyframes wv-twinkle { 0%, 100% { opacity: .55; } 50% { opacity: 1; } }
html[data-fx="low"] .wn-glow, .reduce-motion .wn-glow { animation: none; }
@media (prefers-reduced-motion: reduce) { .wn-glow { animation: none; } }
/* 이벤트 카드가 떠 있을 땐 동료 줄을 접고 패널을 키워 선택지가 잘리지 않게 */
.world-view.has-card .wv-chars { display: none; }
.world-view.has-card .wv-panel { max-height: 40vh; }
