﻿body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background-color: #f8f9fa;
}

.content-wrap {
    flex: 1 0 auto;
    padding-bottom: 20px;
}

.footer {
    flex-shrink: 0;
    background-color: #343a40;
    color: rgba(255,255,255,0.75);
}

.table-container {
    background-color: #fff;
    border-radius: 5px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    overflow: hidden;
}

.table-header {
    background-color: #f8f9fa;
    padding: 15px 20px;
    border-bottom: 1px solid #dee2e6;
}

.clickable-row {
    cursor: pointer;
}

    .clickable-row:hover {
        background-color: #f5f5f5;
    }

.section-title {
    border-left: 4px solid #0d6efd;
    padding-left: 12px;
    margin-bottom: 20px;
}

.collapse.multi-collapse {
    transition: height 0.35s ease;
}

.position-relative {
    cursor: pointer;
}

.title-link {
    color: inherit; /* Наследует цвет родителя */
    text-decoration: none !important; /* Убирает подчёркивание */
    cursor: pointer; /* Показывает курсор-руку при наведении */
    transition: none; /* Отключает анимации */
}

    .title-link:hover,
    .title-link:focus,
    .title-link:active {
        color: inherit !important; /* Сохраняет цвет при взаимодействии */
        text-decoration: none !important;
        outline: none; /* Убирает контур при фокусе */
    }

    /* Для активной ссылки (если нужно сохранить стиль) */
    .title-link.active {
        font-weight: inherit; /* Сохраняет жирность */
        background-color: transparent; /* Убирает фон */
    }

img.map-image {
    min-height: 300px;
    object-fit: cover;
}

.map-fallback {
    min-height: 300px;
}