/* map layout */
.map-layout-section {
    padding: 0 0 24px;
    background: #fff;
}

.map-layout {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 0;
    align-items: stretch;
    border-bottom: 1px solid var(--line-strong);
}

.map-sidebar {
    padding: 0 0 24px;
    background: #fff;
    border-right: 1px solid var(--line);
}

.park-tabs {
    display: flex;
    gap: 0;
    border-bottom: 1px solid var(--line);
    margin-bottom: 16px;
}

.park-tab {
    flex: 1;
    min-height: 44px;
    padding: 0 12px;
    font-size: 13px;
    color: var(--text-dark);
    background: #fff;
}

.park-tab.is-active {
    background: var(--blue);
    color: #fff;
}

.sidebar-card {
    padding: 16px;
    border-bottom: 1px solid var(--line);
}

.sidebar-park h2 {
    margin: 0;
    font-size: 24px;
    line-height: 1.2;
    font-weight: 400;
    color: var(--text-dark);
}

.sidebar-title {
    margin-bottom: 14px;
    font-size: 14px;
    color: #566672;
}

.mini-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px 18px;
}

.mini-grid__item span {
    display: block;
    font-size: 12px;
    color: #566672;
    margin-bottom: 4px;
}

.mini-grid__item strong {
    display: block;
    font-size: 14px;
    color: var(--text-dark);
}

.switch-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
    font-size: 14px;
    color: var(--text-dark);
}

.switch-row:last-child {
    margin-bottom: 0;
}

.switch {
    width: 42px;
    height: 24px;
    border-radius: 999px;
    background: #dbe5f4;
    position: relative;
    flex: 0 0 auto;
}

.switch i {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    transition: .2s ease;
}

.switch.is-on {
    background: var(--blue);
}

.switch.is-on i {
    left: 21px;
}

.sidebar-btn {
    margin: 16px;
    width: calc(100% - 32px);
}

.map-label {
    position: absolute;
    color: var(--text-dark);
    font-size: 12px;
}

.map-label-center {
    left: 72%;
    top: 52%;
}

.map-label-vertical {
    right: 16px;
    top: 180px;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}

.map-road {
    position: absolute;
    padding: 4px 8px;
    border-radius: 4px;
    background: var(--blue);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    transform: rotate(-10deg);
}

.road-a112--1 {
    left: 130px;
    top: 690px;
}

.road-a112--2 {
    left: 560px;
    top: 626px;
}

.map-legend-pin {
    position: absolute;
    right: 170px;
    top: 470px;
    font-size: 12px;
    color: var(--text-dark);
}

.map-hint {
    position: absolute;
    z-index: 3;
    padding: 10px 12px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 10px;
    box-shadow: var(--shadow);
    color: #566672;
    font-size: 12px;
}

.map-hint-top {
    top: 18px;
    right: 24px;
    max-width: 240px;
}

.map-tip {
    position: absolute;
    z-index: 3;
    width: 200px;
    padding: 14px;
    background: #fff;
    border: 2px solid #ecf3f9;
    border-radius: 12px;
    box-shadow: var(--shadow);
}

.map-tip-left {
    left: 40px;
    top: 420px;
}

.map-tip-right {
    right: 80px;
    top: 270px;
}

.map-tip__status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 8px;
    font-size: 12px;
}

.map-tip__status.ok {
    color: var(--green);
}

.map-tip__status.busy {
    color: #d96146;
}

.dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--green);
}

.dot.red {
    background: #d96146;
}

.map-tip__title {
    margin-bottom: 8px;
    font-size: 14px;
    color: var(--text-dark);
}

.map-tip__action {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    border-radius: 8px;
    background: var(--blue);
    color: #fff;
    font-size: 13px;
}

.map-tip__action.muted {
    background: #f7e8e6;
    color: #d96146;
}

.map-controls {
    position: absolute;
    right: 18px;
    bottom: 18px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    z-index: 4;
}

.map-control{
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #fff;
    box-shadow: var(--shadow);
    color: var(--text-dark);
    font-size: 22px;
}

.map-plots {
    position: absolute;
    inset: 0;
}

.plot {
    position: absolute;
    display: block;
    border: 1.5px solid #008fd5;
    background: rgba(0, 143, 213, 0.1);
}

.plot.busy {
    border-color: #d96146;
    background: rgba(217, 97, 70, 0.1);
}

.plot.power {
    border-color: #afb42b;
    background: rgba(230, 217, 76, 0.4);
}

/* manually approximated blocks */
.p1 { left: 610px; top: 55px; width: 52px; height: 32px; }
.p2 { left: 666px; top: 40px; width: 54px; height: 34px; }
.p3 { left: 720px; top: 56px; width: 54px; height: 36px; }
.p4 { left: 760px; top: 90px; width: 18px; height: 48px; }
.p5 { left: 560px; top: 90px; width: 50px; height: 50px; }
.p6 { left: 520px; top: 135px; width: 110px; height: 260px; }
.p7 { left: 545px; top: 420px; width: 56px; height: 122px; }
.p8 { left: 540px; top: 545px; width: 70px; height: 42px; }
.p9 { left: 548px; top: 590px; width: 72px; height: 34px; }
.p10 { left: 620px; top: 610px; width: 42px; height: 238px; }
.p11 { left: 680px; top: 610px; width: 46px; height: 160px; }
.p12 { left: 706px; top: 774px; width: 30px; height: 82px; }
.p13 { left: 575px; top: 160px; width: 224px; height: 442px; }
.p14 { left: 546px; top: 220px; width: 72px; height: 190px; }
.p15 { left: 605px; top: 29px; width: 170px; height: 120px; }
.p16 { left: 514px; top: 647px; width: 47px; height: 53px; }
.p17 { left: 530px; top: 735px; width: 45px; height: 48px; }
.p18 { left: 560px; top: 816px; width: 52px; height: 54px; }
.p19 { left: 605px; top: 808px; width: 52px; height: 56px; }
.p20 { left: 686px; top: 680px; width: 74px; height: 54px; }

/* selections */
.selection-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.selection-card {
    min-height: 56px;
    padding: 0 18px;
    border-radius: 10px;
    background: #fff;
    box-shadow: var(--shadow);
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--text-dark);
    border: 1px solid transparent;
}

.selection-card:hover {
    background: var(--blue);
    color: #fff;
}

.sidebar-filters .sidebar-card__title {
    margin-bottom: 18px;
}

.filter-row {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
    font-size: 16px;
    line-height: 1.25;
    color: #2f3441;
}

.filter-row:last-child {
    margin-bottom: 0;
}

.sidebar-btn {
    margin-top: 2px;
    width: 246px;
    min-height: 50px;
    border-radius: 14px;
    font-size: 16px;
    padding: 0 22px;
}

.toggle {
    position: relative;
    width: 42px;
    height: 24px;
    border-radius: 999px;
    background: #c8d4e9;
    flex: 0 0 auto;
}

.toggle i {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #fff;
    transition: .2s ease;
}

.toggle.is-on {
    background: #3b62ec;
}

.toggle.is-on i {
    left: 21px;
}

.legend-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    display: inline-block;
    flex: 0 0 auto;
    background: #3261ec;
}
.tooltip-status .legend-dot{
    margin-top: 8px;
}

.legend-dot.red {
    background: #e0644a;
}

.legend-dot.yellow {
    background: #E6D94C;
}

/* =========================================
   ACCURATE MAP BLOCK — DESKTOP FIRST
   ========================================= */

.map-layout--accurate {
    display: grid;
    grid-template-columns: 404px 1fr;
    gap: 0;
    align-items: stretch;
}

.map-layout--accurate .map-sidebar {
    background: #fff;
    border-right: 1px solid #e9edf4;
    padding: 24px 24px 28px;
}

.map-layout--accurate .map-stage-wrap {
    min-width: 0;
}

.map-stage-wrap {
    min-width: 0;
}

.map-stage {
    position: relative;
    background: #ecf3f9;
    overflow: hidden;
}

.map-stage--accurate {
    position: relative;
    background: #ecf3f9;
    border-bottom: 1px solid #c6ccd7;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

/* Sidebar */
.park-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    background: #f2f4fb;
    border-radius: 16px;
    padding: 4px;
    margin-bottom: 22px;
}

.park-tab {
    min-height: 46px;
    border-radius: 12px;
    font-size: 18px;
    line-height: 1;
    color: #4e5a70;
    background: transparent;
}

.park-tab.is-active {
    background: #3261ec;
    color: #fff;
}

.sidebar-park {
    padding: 0;
    margin-bottom: 18px;
    border: 0;
    box-shadow: none;
}

.sidebar-park h2 {
    margin: 0;
    font-size: 24px;
    line-height: 1.2;
    color: #132561;
    font-weight: 400;
}

.sidebar-separator {
    width: 100%;
    height: 1px;
    background: #c6ccd7;
    margin: 18px 0 22px;
}

.sidebar-card {
    border: 0;
    box-shadow: none;
    padding: 0;
}

.sidebar-card__title {
    margin-bottom: 16px;
    font-size: 16px;
    line-height: 1.2;
    letter-spacing: 0.04em;
    font-weight: 600;
    color: #3261ec;
}

.sidebar-power {
    background: #eef4fb;
    border: 1px solid #dbe5f1;
    border-radius: 12px;
    padding: 22px;
}

.power-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px 24px;
}

.power-item span {
    display: block;
    margin-bottom: 8px;
    font-size: 16px;
    line-height: 1.2;
    color: #566672;
}

.power-item strong {
    display: block;
    font-size: 18px;
    line-height: 1.25;
    color: #132561;
    font-weight: 600;
}

/* Map roads */
.map-bg-road {
    position: absolute;
    background: #c6ccd7;
    z-index: 1;
}

.map-bg-road::after {
    content: "";
    position: absolute;
    inset: 3px 0 auto 0;
    height: 1px;
    background: rgba(255,255,255,.5);
}

.road-h-main {
    width: 1850px;
    height: 8px;
    left: -70px;
    top: 690px;
    transform: rotate(-10deg);
}

.road-v-main {
    width: 1168px;
    height: 8px;
    right: 205px;
    top: -120px;
    transform: rotate(90deg);
}

.road-v-second {
    width: 760px;
    height: 6px;
    right: 40px;
    bottom: 80px;
    transform: rotate(51deg);
    opacity: .8;
}

/* Road labels */
.map-road-pill {
    position: absolute;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    padding: 3px 10px;
    border-radius: 4px;
    background: #3261ec;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    transform: rotate(-10deg);
}

.map-road-label--a112 {
    left: 602px;
    top: 660px;
}

.map-road-label--a112b {
    left: 178px;
    top: 728px;
    transform: rotate(-11deg);
}

.map-road-node {
    position: absolute;
    z-index: 5;
    display: flex;
    align-items: center;
    gap: 10px;
}

.map-road-node--a112 {
    left: 372px;
    top: 704px;
}

.map-road-node--kashira {
    right: 333px;
    top: 456px;
}

.node-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #132561;
    border: 3px solid #f4f7fb;
    box-shadow: 0 0 0 2px rgba(255,255,255,.35);
}

.node-pill {
    background: #fff;
    color: #132561;
    border-radius: 14px;
    padding: 10px 16px;
    font-size: 18px;
    line-height: 1.1;
    box-shadow: 0 2px 12px rgba(19, 37, 97, 0.06);
}

.node-pill--wide {
    min-width: 138px;
}

.map-road-vertical-label,
.map-road-diagonal-label {
    position: absolute;
    z-index: 4;
    color: #132561;
    font-size: 18px;
    font-weight: 600;
    letter-spacing: 0.02em;
}

.map-road-vertical-label {
    right: 345px;
    top: 120px;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
}

.map-road-diagonal-label {
    right: 86px;
    bottom: 72px;
    transform: rotate(52deg);
}

/* Hover hint */
.map-hover-hint {
    position: absolute;
    z-index: 6;
    top: 22px;
    right: 34px;
    display: flex;
    gap: 12px;
    max-width: 402px;
    padding: 14px 16px;
    background: #fff;
    border: 1px solid #e9edf4;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(19, 37, 97, 0.04);
    font-size: 14px;
    line-height: 1.35;
    color: #98a3b3;
    align-items: center;
}

.hint-icon {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid #3261ec;
    color: #3261ec;
    display: inline-grid;
    place-items: center;
    font-size: 14px;
    line-height: 1;
    flex: 0 0 auto;
    cursor: pointer;
}

/* Expand + zoom */
.map-expand {
    position: absolute;
    z-index: 8;
    top: 118px;
    right: 34px;
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: #fff;
    color: #132561;
    font-size: 26px;
    box-shadow: 0 2px 12px rgba(19, 37, 97, 0.06);
}

.map-controls {
    position: absolute;
    z-index: 8;
    right: 34px;
    bottom: 48px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.map-control {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: #fff;
    color: #132561;
    font-size: 32px;
    line-height: 1;
    box-shadow: 0 2px 12px rgba(19, 37, 97, 0.06);
}

.map-tooltip--busy {
    left: 136px;
    top: 388px;
}

.map-tooltip--free {
    right: 272px;
    top: 216px;
    width: 222px;
}

.tooltip-status {
    display: inline-flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 16px;
    font-weight: 400;
    margin-top: 6px;
    margin-bottom: 6px;
    color: #566672;
}

.tooltip-status--free {
    color: #3261ec;
    margin-bottom: 12px;
    font-weight: 600;
}

.tooltip-status--busy {
    color: #e0644a;
    margin-bottom: 12px;
    font-weight: 600;
}

.tooltip-area {
    margin-bottom: 16px;
    font-size: 18px;
    color: #566672;
}

.tooltip-action {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 18px;
    border-radius: 10px;
    font-size: 15px;
}

.tooltip-action--busy {
    color: #e0644a;
    background: #fff3ef;
    border: 1px solid #f2c2b6;
}

.tooltip-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 0 18px;
    border-radius: 10px;
    background: #3261ec;
    color: #fff;
    font-size: 15px;
}

/* Footer note */
.map-footer-note {
    position: absolute;
    left: 18px;
    bottom: 14px;
    z-index: 8;
    font-size: 16px;
    color: #7f8ea3;
    font-weight: 600;
}

/* Lots / shapes */
.map-canvas {
    position: absolute;
    inset: 0;
    z-index: 3;
}

.plot {
    position: absolute;
    box-sizing: border-box;
}

.plot.free {
    background: rgba(0, 143, 213, 0.1);
    border: 2px solid #008fd5;
}

.plot.infra {
    background: rgba(230, 217, 76, 0.4);
    border: 2px solid #afb42b;
}

.plot.busy {
    background: rgba(217, 97, 70, 0.08);
    border: 2px solid #d96146;
}

/* Верхняя группа */
.f1  { left: 624px; top: 52px;  width: 56px; height: 34px; border-radius: 18px 4px 4px 18px; }
.f2  { left: 680px; top: 50px;  width: 80px; height: 36px; }
.f3  { left: 760px; top: 48px;  width: 90px; height: 38px; }
.f4  { left: 850px; top: 44px;  width: 98px; height: 44px; }
.f5  { left: 948px; top: 40px;  width: 72px; height: 58px; }
.f6  { left: 804px; top: 90px;  width: 58px; height: 78px; }
.f7  { left: 878px; top: 104px; width: 56px; height: 72px; }
.f8  { left: 936px; top: 94px;  width: 72px; height: 84px; }
.f9  { left: 1010px; top: 66px; width: 96px; height: 118px; border-radius: 0 18px 18px 0; }
.f10 { left: 754px; top: 178px; width: 64px; height: 58px; }
.f11 { left: 824px; top: 176px; width: 86px; height: 64px; }
.f12 { left: 922px; top: 180px; width: 68px; height: 84px; }
.f13 { left: 996px; top: 184px; width: 84px; height: 74px; }

/* Центрально-левая вертикаль */
.f14 { left: 582px; top: 188px; width: 96px; height: 238px; clip-path: polygon(10% 0, 90% 2%, 100% 28%, 91% 100%, 35% 100%, 0 84%, 6% 52%); }
.f15 { left: 702px; top: 232px; width: 62px; height: 254px; clip-path: polygon(15% 0, 100% 0, 100% 100%, 34% 100%, 0 86%, 10% 52%); }
.f16 { left: 668px; top: 436px; width: 60px; height: 90px; }
.f17 { left: 670px; top: 526px; width: 66px; height: 94px; }
.f18 { left: 662px; top: 620px; width: 74px; height: 52px; }
.f19 { left: 650px; top: 672px; width: 58px; height: 52px; }
.f20 { left: 640px; top: 726px; width: 58px; height: 54px; }
.f21 { left: 652px; top: 782px; width: 64px; height: 56px; }
.f22 { left: 712px; top: 770px; width: 42px; height: 110px; }
.f23 { left: 724px; top: 620px; width: 92px; height: 74px; }
.f24 { left: 742px; top: 690px; width: 66px; height: 76px; }

/* Нижняя группа */
.f25 { left: 744px; top: 688px; width: 94px; height: 56px; }
.f26 { left: 692px; top: 746px; width: 56px; height: 40px; }
.f27 { left: 700px; top: 786px; width: 40px; height: 78px; }
.f28 { left: 612px; top: 744px; width: 68px; height: 60px; }
.f29 { left: 582px; top: 804px; width: 74px; height: 68px; }
.f30 { left: 628px; top: 866px; width: 78px; height: 62px; }
.f31 { left: 564px; top: 870px; width: 64px; height: 58px; }
.f32 { left: 528px; top: 824px; width: 56px; height: 54px; }
.f33 { left: 516px; top: 778px; width: 56px; height: 54px; }
.f34 { left: 538px; top: 690px; width: 54px; height: 92px; }
.f35 { left: 504px; top: 732px; width: 52px; height: 56px; }

/* Infra */
.i1 { left: 738px; top: 52px;  width: 34px; height: 118px; transform: rotate(-10deg); }
.i2 { left: 856px; top: 92px;  width: 20px; height: 48px; }
.i3 { left: 930px; top: 106px; width: 14px; height: 78px; transform: rotate(-8deg); }
.i4 { left: 710px; top: 174px; width: 18px; height: 600px; transform: rotate(-12deg); }
.i5 { left: 644px; top: 204px; width: 38px; height: 250px; }
.i6 { left: 792px; top: 616px; width: 44px; height: 284px; transform: rotate(-12deg); }
.i7 { left: 746px; top: 658px; width: 92px; height: 132px; }
.i8 { left: 574px; top: 882px; width: 26px; height: 70px; }

/* Busy */
.b1 {
    left: 744px;
    top: 172px;
    width: 250px;
    height: 470px;
    clip-path: polygon(16% 0, 100% 0, 100% 94%, 67% 100%, 33% 100%, 23% 56%, 12% 16%);
}

.b2 {
    left: 676px;
    top: 736px;
    width: 92px;
    height: 88px;
}

/* responsive fallback for tablet */
@media (max-width: 1200px) {
    .map-layout--accurate {
        display: flex;
        flex-direction: column;
        grid-template-columns: 340px 1fr;
    }

    .map-stage--accurate {
        /*min-height: 760px;*/
    }

    .map-stage-wrap {
        order: 1;
    }

    .map-stage {
        min-height: 620px;
    }

    .map-hover-hint {
        max-width: 300px;
    }

    .map-tooltip--free {
        right: 160px;
    }

    /* В мобильном макете сначала карта, потом сайдбар */
    .map-stage-wrap {
        order: 1;
    }

    .map-sidebar {
        order: 1;
        background: transparent;
        border: 0;
        padding: 0;
    }

    .map-stage {
        min-height: 210px;
        border-radius: 10px;
        background: #ECF3F9;
        border: 1px solid #dfe7f2;
    }

    .map-stage::before {
        width: 390px;
        height: 4px;
        left: -30px;
        top: 146px;
    }

    .map-stage::after {
        width: 320px;
        height: 4px;
        right: -94px;
        top: 52px;
    }

    .map-expand {
        top: 160px;
    }
}

@media (max-width: 767px) {
    .map-stage {
        min-height: 280px;
        border-radius: 12px;
    }

    .map-stage::before {
        width: 520px;
        top: 198px;
        left: -40px;
        height: 5px;
    }

    .map-stage::after {
        width: 430px;
        right: -130px;
        top: 95px;
        height: 5px;
    }
}

@media (max-width: 666px) {
    .map-hover-hint {
        display: none;
    }

    .map-expand {
        top: 14px;
        width: 40px;
        height: 40px;
    }

    .map-expand svg {
        width: 18px;
        height: 18px;
    }

    .map-control {
        width: 40px;
        height: 40px;
        font-size: 26px;
    }
}

.map_wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    background: #ffffff;
    overflow: hidden;
    border: 1px solid #ced4da;
    aspect-ratio: 1540 / 900;
}

.svg-map {
    width: 100% !important;
    height: 100% !important;
    display: block;
}

#map-tooltip {
    position: absolute;
    z-index: 1000;
    display: none;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid #ced4da;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15);
    padding: 12px 16px;
    border-radius: 8px;
    max-width: 285px;
    font-size: 14px;
    line-height: 1.4;
    min-width: 230px;
}

.map_wrapper svg {
    background-color: #ecf3f9ff;
}

.lot-modal__close {
    position: relative;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    border: 0;
    border-radius: 43px;
    background: #ECF3F9;
    cursor: pointer;
}

.lot-modal__close span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    height: 1.5px;
    background: var(--blue-dark);
    transform-origin: center;
}

.lot-modal__close span:first-child {
    transform: translate(-50%, -50%) rotate(45deg);
}

.lot-modal__close span:last-child {
    transform: translate(-50%, -50%) rotate(-45deg);
}

/* Стили hover для кнопок */
.map-sidebar a, .map-stage-wrap a {
    overflow: hidden;
    position: relative;
    border: none;
}

.map-sidebar a:after, .map-stage-wrap a:after {
    background: #fff;
    content: "";
    height: 155px;
    left: -100%;
    opacity: .2;
    position: absolute;
    top: -50px;
    transform: rotate(35deg);
    transition: all 550ms cubic-bezier(0.19, 1, 0.22, 1);
    width: 50px;
    z-index: -10;
}

.map-stage-wrap a:hover {
    color: #ffffff;
}

.map-sidebar a:hover:after, .map-stage-wrap a:hover:after {
    left: 120%;
    transition: all 550ms cubic-bezier(0.19, 1, 0.22, 1);
    z-index: 10;
}
/* Стили hover для кнопок */

#map-tooltip .lot-modal__close {
    position: absolute;
    top: 12px;
    right: 16px;
}

@media (max-width: 430px) {
    #map-tooltip {
        min-width: 170px;
    }

    #map-tooltip .lot-modal__close {
        width: 28px;
        height: 28px;
    }

    .lot-modal__close span {
        width: 13px;
    }

    .tooltip-status, .tooltip-btn, .tooltip-area, .tooltip-action {
        font-size: 13px;
    }

    .tooltip-status {
        width: 85%;
    }
}

.fake-fullscreen {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100dvh;
    z-index: 999999;
    background: #000;
    overflow: auto;

    padding-top: env(safe-area-inset-top);
    padding-right: env(safe-area-inset-right);
    padding-bottom: env(safe-area-inset-bottom);
    padding-left: env(safe-area-inset-left);
}