
.rn-neptun-marker {
    position:relative;
    width:44px;
    height:44px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;

    transition:
        transform .12s ease,
        filter .12s ease;
}


/*
 * Delikatna tarcza pod ikoną — nie pełne koło,
 * tylko nowoczesny „backplate”, który poprawia kontrast.
 */
.rn-neptun-marker::before {
    content:"";
    position:absolute;
    inset:7px;

    border-radius:14px;

    background:
        radial-gradient(
            ellipse at center,
            rgba(17,24,39,.78) 0%,
            rgba(17,24,39,.62) 55%,
            rgba(17,24,39,.18) 82%,
            rgba(17,24,39,0) 100%
        );

    box-shadow:
        0 0 0 1px rgba(255,255,255,.22),
        0 4px 10px rgba(0,0,0,.35);

    pointer-events:none;
}


.rn-neptun-icon {
    position:relative;
    z-index:2;

    width:34px;
    height:34px;

    display:flex;
    align-items:center;
    justify-content:center;

    transform-origin:50% 50%;

    filter:
        drop-shadow(0 0 2px rgba(255,255,255,1))
        drop-shadow(0 0 4px rgba(255,255,255,.92))
        drop-shadow(0 2px 3px rgba(0,0,0,.85))
        drop-shadow(0 0 6px rgba(0,0,0,.35));
}


.rn-neptun-icon svg {
    width:34px !important;
    height:34px !important;

    fill:var(--rn-threat-color) !important;
    stroke:rgba(255,255,255,1) !important;
    stroke-width:1.05px;

    vector-effect:non-scaling-stroke;
    overflow:visible;
}


.rn-neptun-icon img {
    width:34px !important;
    height:34px !important;
    object-fit:contain;

    filter:
        drop-shadow(0 0 2px rgba(255,255,255,1))
        drop-shadow(0 2px 3px rgba(0,0,0,.85)) !important;
}


.rn-neptun-glyph {
    color:var(--rn-threat-color) !important;
    font-size:30px !important;
    font-weight:800;

    text-shadow:
        -1px -1px 0 rgba(255,255,255,1),
         1px -1px 0 rgba(255,255,255,1),
        -1px  1px 0 rgba(255,255,255,1),
         1px  1px 0 rgba(255,255,255,1),
         0 2px 4px rgba(0,0,0,.8);
}


.rn-neptun-count {
    position:absolute;
    z-index:3;

    right:-4px;
    top:-2px;

    min-width:18px;
    height:16px;
    padding:0 5px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:8px;

    background:rgba(8,15,23,.96);
    border:1px solid rgba(255,255,255,.85);

    color:#fff;
    font-size:9px;
    font-weight:800;
    line-height:1;

    box-shadow:
        0 2px 6px rgba(0,0,0,.45);
}


.leaflet-marker-icon:hover .rn-neptun-marker {
    transform:scale(1.14);
}


.rn-neptun-advisory {
    opacity:.88;
}


/* LEWY PANEL */

.rn-list-threat-symbol {
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;

    width:36px !important;
    height:36px !important;

    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:none !important;
}


.rn-list-threat-icon {
    width:28px !important;
    height:28px !important;

    display:flex;
    align-items:center;
    justify-content:center;

    transform-origin:center;

    filter:
        drop-shadow(0 0 2px rgba(255,255,255,.95))
        drop-shadow(0 2px 3px rgba(0,0,0,.78));
}


.rn-list-threat-icon svg {
    width:28px !important;
    height:28px !important;

    fill:var(--rn-threat-color) !important;
    stroke:rgba(255,255,255,.95) !important;
    stroke-width:.9px;
}


.rn-list-threat-icon img {
    width:28px !important;
    height:28px !important;
    object-fit:contain;

    filter:
        drop-shadow(0 0 2px rgba(255,255,255,.95))
        drop-shadow(0 2px 3px rgba(0,0,0,.75)) !important;
}

