/* Кнопка «Сформировать схему» и печатная схема (вариант А: печать/сохранение в PDF) */

.scheme-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    flex-wrap: wrap;
}

.mapWrap {
    position: relative;
}

/* Оверлей схемы (рамка, заголовок, линейка) — виден только в режиме схемы */
.scheme-overlay {
    display: none;
}

body.scheme-mode .scheme-overlay {
    display: block;
}

.scheme-overlay {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 1200;
    font-family: Arial, "Segoe UI", sans-serif;
    color: #000;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

/* Рамка листа */
.scheme-overlay::before {
    content: "";
    position: absolute;
    inset: 8px;
    border: 2px solid #000;
}

/* Заголовок схемы — верхний левый угол, без «плашки» на всю ширину */
.scheme-head {
    position: absolute;
    top: 22px;
    left: 26px;
    max-width: 58%;
    padding: 8px 12px 9px;
    background: rgba(255, 255, 255, .93);
    border: 1px solid #000;
}

.scheme-head-kicker {
    font-size: 10px;
    letter-spacing: .14em;
    color: #555;
}

.scheme-head-title {
    margin: 2px 0 6px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

/* масштабная линейка живёт в заголовке, а не внизу листа */
.scheme-scale {
    margin-top: 2px;
    font-size: 11px;
}

.scheme-scale-bar {
    height: 9px;
    border: 1px solid #000;
    border-top: none;
}

.scheme-scale-bar i {
    display: block;
    height: 9px;
    background: #000;
}

.scheme-scale-label {
    margin-top: 3px;
    white-space: nowrap;
}

.scheme-meta {
    margin-top: 5px;
    font-size: 10px;
    line-height: 1.45;
    color: #333;
}

/* Стрелка «С» — верхний правый угол */
.scheme-north {
    position: absolute;
    top: 22px;
    right: 26px;
    width: 46px;
    padding: 4px 0 2px;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
    background: rgba(255, 255, 255, .93);
    border: 1px solid #000;
}

.scheme-north .arrow {
    display: block;
    font-size: 20px;
    line-height: 1;
}

/* Осветление подложки (спутник) — 20% белой вуали поверх карты, под оверлеем */
.scheme-veil {
    display: none;
    position: absolute;
    inset: 0;
    z-index: 1100;
    pointer-events: none;
    background: rgba(255, 255, 255, .2);
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

body.scheme-mode.scheme-veil-on .scheme-veil {
    display: block;
}

.scheme-toolbar-check {
    display: flex;
    align-items: center;
    gap: .35rem;
    margin: 0;
    font-size: 12px;
    color: #344054;
    white-space: nowrap;
    cursor: pointer;
}

/* Панель управления схемой — только на экране */
.scheme-toolbar {
    display: none;
    position: fixed;
    top: 12px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2000;
    align-items: center;
    gap: .5rem;
    padding: .5rem .75rem;
    background: #fff;
    border: 1px solid #c9d2dc;
    border-radius: 10px;
    box-shadow: 0 6px 24px rgba(16, 24, 40, .18);
}

body.scheme-mode .scheme-toolbar {
    display: flex;
}

.scheme-toolbar-hint {
    max-width: 46ch;
    font-size: 12px;
    line-height: 1.35;
    color: #475467;
}

/* Модальное окно с названием схемы */
.scheme-modal {
    position: fixed;
    inset: 0;
    z-index: 3000;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(16, 24, 40, .55);
}

.scheme-modal[hidden] {
    display: none;
}

.scheme-modal-box {
    width: min(520px, 92vw);
    padding: 20px 22px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(16, 24, 40, .35);
    color: #101828;
    font-family: Arial, "Segoe UI", sans-serif;
}

.scheme-modal-box h5 {
    margin: 0 0 6px;
    font-size: 18px;
    font-weight: 700;
}

.scheme-modal-box p {
    margin: 0 0 14px;
    font-size: 13px;
    color: #475467;
}

.scheme-modal-box input {
    width: 100%;
    padding: 10px 12px;
    font-size: 14px;
    border: 1px solid #cfd6df;
    border-radius: 8px;
    outline: none;
}

.scheme-modal-box input:focus {
    border-color: #0d6efd;
    box-shadow: 0 0 0 3px rgba(13, 110, 253, .15);
}

.scheme-modal-actions {
    display: flex;
    justify-content: flex-end;
    gap: .5rem;
    margin-top: 16px;
}

/* Режим схемы: карта в размер листа A4 альбомной ориентации (277 × 190 мм при 96 dpi) */
body.scheme-mode .mapWrap {
    width: 1047px;
    height: 718px;
    max-width: 100%;
    margin: 0 auto;
    background: #fff;
}

body.scheme-mode {
    background: #eef1f5;
}

/* В режиме схемы убираем шапку сайта и панель слоёв, чтобы не мешали */
body.scheme-mode .navbar,
body.scheme-mode .scheme-bar,
body.scheme-mode .scheme-hint,
body.scheme-mode .container-md.py-2 {
    display: none !important;
}

body.scheme-mode .mapWrap {
    margin: 24px auto;
}

/* ПЕЧАТЬ */
@media print {
    @page {
        size: A4 landscape;
        margin: 8mm;
    }

    html, body {
        height: auto !important;
        background: #fff !important;
        color: #000 !important;
    }

    .navbar,
    .scheme-bar,
    .scheme-hint,
    .scheme-toolbar,
    .scheme-modal,
    .container-md.py-2,
    .offcanvas,
    .offcanvas-lg,
    .offcanvas-body,
    .offcanvas-header {
        display: none !important;
    }

    body.scheme-mode .mapWrap {
        width: 277mm !important;
        height: 190mm !important;
        margin: 0 !important;
    }

    body.scheme-mode .scheme-overlay {
        display: block !important;
    }

    /* в печати не выводим служебную строку (масштаб, подложка, дата, подпись) */
    .scheme-meta {
        display: none !important;
    }

    /* заголовок становится компактнее: надзаголовок, название и линейка */
    .scheme-head {
        padding: 6px 10px 8px;
    }

    /* прячем элементы управления Яндекс.Карт, оставляем копирайт «© Яндекс» */
    [class*="controls__"],
    [class*="controls-pane"] {
        display: none !important;
    }

    [class*="copyrights"] {
        display: block !important;
    }
}
