/**
 * CodeWeber Yandex Maps Styles
 *
 * @package Codeweber
 * @version 1.1.0
 */

.codeweber-yandex-map-wrapper {
    position: relative;
    min-height: 200px;
}

/* Sidebar — только позиционирование и видимость */
.codeweber-map-sidebar {
    position: absolute;
    top: 47px;
    width: calc(100% - 20px);
    max-width: 360px;
    max-height: calc(100% - 103px);
    z-index: 1000;
}

.codeweber-map-sidebar-left  { left: 10px; }
.codeweber-map-sidebar-right { right: 10px; }

/* Items — только интерактивность */
.codeweber-map-sidebar-item {
    cursor: pointer;
    transition: background 0.2s;
}

.codeweber-map-sidebar-item:hover  { background: var(--bs-gray-100); }
.codeweber-map-sidebar-item.active { background: var(--bs-primary-bg-subtle); }

.codeweber-map-sidebar-item .cwgb-office-status {
    margin-bottom: 3px !important;
    font-size: 12px;
    line-height: 1.3;
}

.cwgb-office-hours-line {
    display: block;
}

.cwgb-office-hours-line--day-off {
    color: var(--bs-danger, #dc3545);
}

.codeweber-map-sidebar-item .cwgb-office-hours {
    display: flex;
    align-items: flex-start;
}

.codeweber-map-sidebar-item .cwgb-office-hours > span {
    min-width: 0;
}

/* Compact sidebar design. */
.codeweber-map-sidebar-compact {
    max-width: 320px;
}

.codeweber-map-sidebar-compact .codeweber-map-sidebar-item {
    padding: 14px 18px !important;
}

.codeweber-map-sidebar-compact .codeweber-map-sidebar-item .h6 {
    margin-bottom: 4px !important;
    font-size: 15px;
    line-height: 1.3;
}

.codeweber-map-sidebar-compact .codeweber-map-sidebar-item .fs-sm {
    font-size: 13px !important;
    line-height: 1.35;
}

.codeweber-map-sidebar-compact .codeweber-map-filter {
    padding: 12px !important;
}

.codeweber-map-sidebar-compact .codeweber-map-filter label {
    margin-bottom: 4px;
    font-size: 12px;
}

.codeweber-map-sidebar-compact .codeweber-map-filter select {
    min-height: 34px;
    padding-top: 4px;
    padding-bottom: 4px;
    font-size: 13px;
}

/* Keep filters visible while the office list scrolls. */
.codeweber-map-filter {
    background: var(--bs-white, #fff);
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.08);
}

.codeweber-map-sidebar-title {
    z-index: 4;
}

/* Кнопка открытия (мобильные) */
.codeweber-map-sidebar-toggle {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 9999;
}

@media (max-width: 767px) {
    .codeweber-map-sidebar { max-width: none; }
}

/* Balloon */
.ymaps-2-1-79-balloon-content__header {
    font-weight: inherit !important;
}

/* Hide Yandex Maps v3 built-in "Открыть Яндекс Карты" control (bottom-left).
   Copyright (© Яндекс / Условия использования) is a separate element and stays. */
.codeweber-yandex-map .ymaps3--controls_bottom.ymaps3--controls_left {
    display: none !important;
}
