
        .nasha-map-wrapper .leaflet-popup-content {

            width: var(--nasha-image-width) !important;

            max-width:
                calc(100vw - 80px) !important;
        }


        .nasha-map-wrapper .leaflet-popup-content img {

            display: block;

            width: var(--nasha-image-width) !important;

            max-width: 100% !important;

            height: auto !important;

            border-radius: 6px;

            margin: 0 0 10px 0;
        }


        .nasha-map-wrapper .nasha-map-filters {

            display: flex;

            align-items: center;

            gap: 8px;

            flex-wrap: wrap;

            margin-bottom: 10px;
        }


        .nasha-map-wrapper .nasha-filter-label {

            display: inline-flex;

            align-items: center;

            gap: 5px;

            padding: 6px 10px;

            border: 1px solid #ccc;

            border-radius: 6px;

            background: #fff;

            cursor: pointer;

            font-size: 14px;

            line-height: 1.3;

            user-select: none;
        }


        .nasha-map-wrapper .nasha-filter-label:hover {

            background: #f5f5f5;
        }


        .nasha-map-wrapper .nasha-filter-label input {

            margin: 0;

            cursor: pointer;
        }


        .nasha-map-wrapper .nasha-custom-marker {

            background: transparent !important;

            border: 0 !important;
        }


        .nasha-map-wrapper .nasha-marker-dot {

            position: relative;

            width: 34px;

            height: 34px;

            border-radius: 50%;

            background: #3d7185;

            border: 3px solid #fff;

            box-shadow:
                0 2px 7px rgba(0,0,0,0.35);

            box-sizing: border-box;
        }


        .nasha-map-wrapper .nasha-marker-dot::after {

            content: "";

            position: absolute;

            left: 50%;

            bottom: -8px;

            width: 12px;

            height: 12px;

            background: inherit;

            transform:
                translateX(-50%) rotate(45deg);

            border-right:
                2px solid #fff;

            border-bottom:
                2px solid #fff;

            z-index: -1;
        }


        .nasha-map-wrapper .nasha-marker-icon {

            position: absolute;

            left: 50%;

            top: 50%;

            width: 17px;

            height: 17px;

            transform:
                translate(-50%, -50%);

            display: flex;

            align-items: center;

            justify-content: center;
        }


        .nasha-map-wrapper .nasha-marker-icon svg {

            width: 17px;

            height: 17px;

            display: block;

            fill: none;

            stroke: #fff;

            stroke-width: 2;

            stroke-linecap: round;

            stroke-linejoin: round;
        }


        .nasha-map-wrapper .marker-cluster-small,
        .nasha-map-wrapper .marker-cluster-medium,
        .nasha-map-wrapper .marker-cluster-large {

            background:
                rgba(61, 113, 133, 0.25);
        }


        .nasha-map-wrapper .marker-cluster-small div,
        .nasha-map-wrapper .marker-cluster-medium div,
        .nasha-map-wrapper .marker-cluster-large div {

            background: #3d7185;

            color: #fff;

            font-weight: 600;
        }

		/* =========================================================
   Nasha Map — компактный раскрывающийся фильтр
   ========================================================= */

.nasha-map-filter-wrap {
    position: relative;
    margin: 0 0 12px;
    z-index: 1000;
}

/* Верхняя строка фильтра */

.nasha-map-filter-toggle {
    width: 100%;
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: 8px;

    padding: 9px 13px;

    border: 1px solid #e1e5e8;
    border-radius: 8px;

    background: #fff;
    color: #333;

    font-size: 14px;
    line-height: 1.3;

    cursor: pointer;
    text-align: left;

    transition:
        background-color .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.nasha-map-filter-toggle:hover {
    border-color: #cbd3d8;
    background: #fafbfc;
}

.nasha-map-filter-toggle:focus {
    outline: none;
    border-color: #3D7185;
    box-shadow: 0 0 0 2px rgba(61, 113, 133, .12);
}

.nasha-map-filter-title {
    font-weight: 600;
    white-space: nowrap;
}

.nasha-map-filter-current {
    color: #6b7280;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.nasha-map-filter-arrow {
    margin-left: auto;
    flex: 0 0 auto;

    font-size: 19px;
    line-height: 1;

    color: #6b7280;

    transition: transform .2s ease;
}

/* Стрелка при открытии */

.nasha-map-filter-wrap.is-open .nasha-map-filter-arrow {
    transform: rotate(180deg);
}


/* =========================================================
   Сам список категорий
   ========================================================= */

/* =========================================================
   Раскрывающийся список фильтров
   ========================================================= */

.nasha-map-filter-wrap .nasha-map-filters {
    display: none !important;

    margin-top: 6px;
    padding: 10px;

    border: 1px solid #e1e5e8;
    border-radius: 8px;

    background: #fff;

    box-shadow: 0 5px 18px rgba(0, 0, 0, .08);

    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 6px;
}


/* Показываем только при открытом спойлере */

.nasha-map-filter-wrap.is-open .nasha-map-filters {
    display: grid !important;
}


/* =========================================================
   Кнопки категорий
   ========================================================= */

.nasha-map-filter-item {
    position: relative;

    display: flex;
    align-items: center;

    min-height: 38px;

    padding: 6px 9px;

    border-radius: 6px;

    cursor: pointer;

    transition:
        background-color .15s ease,
        opacity .15s ease;
}

.nasha-map-filter-item:hover {
    background: #f5f7f8;
}

.nasha-map-filter-item input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.nasha-map-filter-icon {
    width: 21px;
    height: 21px;

    margin-right: 7px;

    flex: 0 0 21px;
}

.nasha-map-filter-icon svg {
    width: 100%;
    height: 100%;
}

.nasha-map-filter-label {
    font-size: 13px;
    line-height: 1.25;
    color: #444;
}


/* Активный пункт */

.nasha-map-filter-item.is-active {
    background: #f1f5f6;
}

.nasha-map-filter-item.is-active .nasha-map-filter-label {
    font-weight: 600;
}


/* Мобильные устройства */

@media (max-width: 600px) {

    .nasha-map-filter-toggle {
        min-height: 42px;
        padding: 8px 11px;
        font-size: 13px;
    }

    .nasha-map-filter-title {
        font-size: 13px;
    }

    .nasha-map-filter-current {
        max-width: 42%;
    }

    .nasha-map-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 4px;

        padding: 7px;
    }

    .nasha-map-filter-item {
        min-height: 36px;
        padding: 5px 6px;
    }

    .nasha-map-filter-label {
        font-size: 12px;
    }

    .nasha-map-filter-icon {
        width: 19px;
        height: 19px;
        flex-basis: 19px;
        margin-right: 5px;
    }
}

		.nasha-marker-center {
    position: absolute;

    width: 8px;
    height: 8px;

    left: 50%;
    top: 50%;

    transform: translate(-50%, -50%);

    background: #fff;

    border-radius: 50%;
}