@keyframes pulse {
        0%, 100% {
            transform: scale(1);
            opacity: 1;
        }
        50% {
            transform: scale(1.2);
            opacity: 0.8;
        }
    }

    .pq-map-container {
        background: #0a0a0a;
        border: 1px solid #00f8c8;
        border-radius: 8px;
        overflow: hidden;
    }

    .pq-map-tiles {
        filter: brightness(0.6) invert(1) contrast(3) hue-rotate(200deg) saturate(0.3) brightness(0.7);
    }

    .marker-dot {
        width: 12px;
        height: 12px;
        background: #00f8c8;
        border: 2px solid #00d4aa;
        border-radius: 50%;
        box-shadow: 0 0 10px #00f8c8;
        animation: pulse 2s infinite;
    }

    .custom-marker {
        background: transparent !important;
        border: none !important;
    }

    .map-popup-content {
        color: #fff;
        background: #1a1a1a;
        padding: 8px;
        border-radius: 4px;
    }

    .leaflet-popup-content-wrapper {
        background: #1a1a1a !important;
        color: #fff !important;
        border: 1px solid #00f8c8 !important;
    }

    .leaflet-popup-tip {
        background: #1a1a1a !important;
        border: 1px solid #00f8c8 !important;
    }

/* Map popup/tooltip styles (extracted from JS for CSP compliance) */
.pqm-1 { font-weight: bold; margin-bottom: 8px; font-size: 14px; color: #00f8c8; }
.pqm-2 { margin-bottom: 6px; }
.pqm-3 { color: #00d4aa; }
.pqm-4 { margin-top: 8px; padding-top: 8px; border-top: 1px solid #333; }
.pqm-5 { color: #00d4aa; margin-bottom: 4px; font-weight: bold; }
.pqm-6 { font-size: 11px; margin-left: 8px; margin-bottom: 2px; color: #b0b0b0; }
.pqm-7 { text-align: center; }
.pqm-8 { font-weight: bold; color: #00f8c8; }
.pqm-9 { font-size: 11px; margin-top: 4px; }
.pqm-10 { min-width: 220px; }
.pqm-11 { font-weight: bold; margin-bottom: 8px; font-size: 14px; color: #00f8c8; border-bottom: 1px solid #333; padding-bottom: 6px; }
