/**
 * Map Page CSS
 * 
 * 
 */

#headerfixed.fixed, header.fixed {
  z-index: 999999 !important;
}

html {
    --green: #00A1A6;
    --gray: #F6F6F6;
}

#map-canvas * {
    touch-action: auto
  }

.popover {
    position: absolute;
    z-index: 1010;
    padding: 1px;
    font-weight: 300;
    font-size: 13px;
    text-align: left;
    white-space: normal;
    background-color: #fff;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    -webkit-background-clip: padding-box;
    -moz-background-clip: padding;
    background-clip: padding-box;
}

.popover-title {
    padding: 8px 14px;
    margin: 0;
    font-size: 14px;
    font-weight: normal;
    line-height: 18px;
    background-color: #f7f7f7;
    border-bottom: 1px solid #ebebeb;
    -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
    border-radius: 5px 5px 0 0
}

.popover-title:empty {
    display: none
}

.popover-content {
    padding: 9px 14px
}

.popover .close {
    color: #3D3D3D;
    margin: 10px;
    position: absolute;
    top: -20px;
    right: -6px;
    font-size: 28px;
}

.popover .arrow,
.popover .arrow:after {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid
}

.popover .arrow {
    border-width: 11px
}

.popover .arrow:after {
    border-width: 10px;
    content: ""
}

.popover.top .arrow {
    bottom: -11px;
    left: 50%;
    margin-left: -11px;
    border-top-color: #999;
    border-top-color: rgba(0, 0, 0, 0.25);
    border-bottom-width: 0
}

.popover.top .arrow:after {
    bottom: 1px;
    margin-left: -10px;
    border-top-color: #fff;
    border-bottom-width: 0
}

.popover.right .arrow {
    top: 50%;
    left: -11px;
    margin-top: -11px;
    border-right-color: #999;
    border-right-color: rgba(0, 0, 0, 0.25);
    border-left-width: 0
}

.popover.right .arrow:after {
    bottom: -10px;
    left: 1px;
    border-right-color: #fff;
    border-left-width: 0
}

.popover.bottom .arrow {
    top: -11px;
    left: 50%;
    margin-left: -11px;
    border-bottom-color: #999;
    border-bottom-color: rgba(0, 0, 0, 0.25);
    border-top-width: 0
}

.popover.bottom .arrow:after {
    top: 1px;
    margin-left: -10px;
    border-bottom-color: #fff;
    border-top-width: 0
}

.popover.left .arrow {
    top: 50%;
    right: -11px;
    margin-top: -11px;
    border-left-color: #999;
    border-left-color: rgba(0, 0, 0, 0.25);
    border-right-width: 0
}

.popover.left .arrow:after {
    right: 1px;
    bottom: -10px;
    border-left-color: #fff;
    border-right-width: 0
}

.page-template-map .title-module-wrap.page-title-module-custom {
    display: none !important;
}

.page-template-map #content-wrap {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    height: 100vh !important;
    max-width: 1000000px !important;
}

.page-template-map #content-wrap section#page-content,
.page-template-map #content-wrap section#page-content>.clearfix {
    height: 100%;
}

.map-legends {
    display: flex;
    position: absolute;
    width: 280px;
    height: 68px;
    border-radius: 30px;
    bottom: 50px;
    left: 80px;
    cursor: pointer;
    background-color: rgba(255, 255, 255, 0.3);
    z-index: 55;
}

.map-legends.collapse {
    width: 0;
}

.map-legends.type-map {
    background-color: rgba(255, 255, 255, 1);
}

.map-legends-round {
    border-radius: 60%;
    width: 60px;
    height: 60px;
    background: var(--green);
    opacity: 1;
    margin: 4px;
    cursor: pointer;
    outline: none;
}

.icon-legend-menu {
    display: block;
    width: 28px;
    height: 28px;
    margin: 16px;
    cursor: pointer;
    background-image: url(./img/menu-legend.svg);
    outline: none;
}

.title-legend-menu {
    color: #fff;
    text-align: center;
    font-family: Raleway;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    padding: 10px;
    padding-top: 20px;
}

.map-legends.collapse>.title-legend-menu {
    display: none;
    transition: all .3s;
}

.title-legend-menu.type-map {
    color: #1F2A37;
}

.map-legend-filter {
    width: 320px;
    height: 597px;
    background: #FFF;
    position: absolute;
    top: 120px;
    left: 160px;
    display: block;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}

.map-legend-filter.collapsed {
    display: none;
}

.icon-close-legend-filter {
    position: absolute;
    display: block;
    right: 25px;
    top: 25px;
    cursor: pointer;
    width: 28px;
    height: 28px;
    background-image: url(./img/close-legend.svg);
    outline: none;
}

.map-legend-caption {
    display: flex;
    padding-left: 26px;
    padding-top: 25px;
    padding-bottom: 25px;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
    color: #1F2A37;
    text-align: center;
    font-family: Raleway;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

.map-legend-footer {
    display: flex;
    align-items: stretch;
    gap: 12px;
    position: absolute;
    width: 100%;
    bottom: 0;
    padding: 15px;
    background: #FFFFFF;
}

.button-legend-footer {
    width: 34px;
    height: 34px;
    border-radius: 17px;
    background-color: var(--gray);
    cursor: pointer;
}

.button-legend-footer .menu {
    background-image: url(./img/menu-legend-footer.svg);
    width: 16px;
    height: 16px;
    position: absolute;
    margin: 9px;
    outline: none;
}

.button-legend-footer .ya {
    background-image: url(./img/ya-legend-footer.svg);
    width: 16px;
    height: 16px;
    position: absolute;
    margin: 9px;
    outline: none;
}

.button-legend-footer .eye {
    background-image: url(./img/eye-legend-footer.svg);
    width: 18px;
    height: 18px;
    position: absolute;
    margin: 8px;
    outline: none;
}

.map-legend-wrapper {
    margin: 0 25px 25px;
    overflow-x: hidden;
    height: 440px;
    min-height: 280px;
    max-width: 320px;
    overflow-y: auto;
    scrollbar-width: thin !important;
    scrollbar-color: var(--green, ) var(--gray) !important;
    position: relative;
}

.map-legend-wrapper::-webkit-scrollbar {
    width: 4px;
}

.map-legend-wrapper::-webkit-scrollbar-track {
    background: var(--gray);
}

.map-legend-wrapper::-webkit-scrollbar-thumb {
    background-color: var(--green);
}

.checkbox-wrapper {
    padding: 0;
}

.checkbox-container {
    position: absolute;
}

.checkbox-container input {
    position: absolute;
    opacity: 0;
    height: 0;
    width: 0;
}

.checkbox-container .check {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    background: red;
    cursor: pointer;
}

.checkbox-container input:checked~.check {
    background: rgba(0, 161, 166, 0.10);
}

.checkbox-container .check::after {
    position: absolute;
    content: "";
    left: 2px;
    top: 2px;
    width: 12px;
    height: 12px;
    background-image: url(./img/checkbox-check.svg);
    opacity: 0;
    outline: none;
}

.checkbox-container input:checked~.check::after {
    opacity: 1;
}

*:focus {
    outline: none;
}

.checkbox-container input:checked~.check {
    background: rgba(0, 161, 166, 0.10);
    border: 1px solid #C8C8C8;
}

.checkbox-container .check {
    position: absolute;
    top: 0;
    left: 0;
    width: 18px;
    height: 18px;
    background: rgba(0, 161, 166, 0.10);
    border: 1px solid #C8C8C8;
    cursor: pointer;
}

.checkbox-caption {
    padding-left: 30px;
    color: #3D3D3D;
    font-family: Raleway;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    word-break: break-all;
    margin-right: 7px;
}

.item-filter {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    padding-bottom: 15px;
}

.tree-filter.root {
    padding-left: 0;
}

.tree-filter {
    padding-left: 32px;
}

.expander {
    width: 20px;
    height: 20px;
    background-image: url(./img/remove-circle.svg);
    outline: none;
}

.expander.opened {
    background-image: url(./img/remove-circle.svg);
    cursor: pointer;
    outline: none;
}

.expander.inactive {
    background-image: url(./img/add-circle-none.svg);
    cursor: pointer;
    outline: none;
}

.expander.closed {
    background-image: url(./img/add-circle.svg);
    cursor: pointer;
    outline: none;
}

.hr-line {
    border-top: 1px solid #E1E1E1;
    position: absolute;
    bottom: 63px;
    width: 270px;
    right: 27px;
}

.tree-filter.collapsed {
    display: none !important;
}

.map__page {
    height: 768px;
    position: relative;
}

#map-canvas a {
    color: #000;
    font-weight: 600;
    transition: all 0.3s;
}

#map-canvas a:hover {
    color: var(--theme-base-color);
}

.ymaps-2-1-79-balloon__layout {
    position: relative;
    display: block;
    overflow: hidden;
    background: #fff;
    border-radius: 5px;
    width: 240px !important;
    box-sizing: border-box !important;
    padding: 9px 20px 9px 14px;
}

.ymaps-2-1-79-balloon__close-button {
    width: 10px;
    height: 10px;
}

ymaps.ymaps-2-1-79-balloon__content {
    padding: 0 !important;
    margin-right: 0 !important;
}

ymaps.ymaps-2-1-79-balloon__content * {
    max-width: 100% !important;
    width: 100% !important;
    color: #000;
}

@media(max-width: 480px) {
    .map-legends {
        left: 15px;
    }

    .map-legend-filter {
        left: 15px;
    }
}

@media (min-width: 576px) {
    .map-legends {
        left: 80px;
    }

    .map-legend-filter {
        left: 160px;
    }
}

@media (min-width: 768px) {
    .map-legends {

        left: 80px;
    }

    .map-legend-filter {
        left: 160px;
    }
}

@media (min-width: 1200px) {
    .map-legends {
        left: 80px;
    }

    .map-legend-filter {
        left: 160px;
    }
}

@media (min-width: 1400px) {
    .map-legends {
        left: 80px;
    }

    .map-legend-filter {
        left: 160px;
    }
}