.test_container {
  display: flex;
  min-height: 100vh;
}

.test_container .left-column {
  width: 200px;
  background-color: #f0f0f0;
  padding: 20px;
}

.test_container .right-column {
  flex: 1;
  padding: 0;
}


.test_container .right-column iframe {
  width: 100%;
  height: 100%;
  border: none;
}

.pin.pin_person {
  transition: none;
  transform-origin: center center;
  background: url("../images/map/map_person.png") no-repeat center center;
  width: 100px;
  height: 100px;
  border: none;
  box-shadow: none;
  background-size: contain;
  border-radius: unset;
  transition: transform 0.3s ease;
  display: block;
  z-index: 10;
  pointer-events: none
}

/*.pin.pin_person::after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-left: 18px solid transparent;
  border-right: 18px solid transparent;
  border-bottom: 37px solid rgba(255, 0, 0, 0.7);
  bottom: -28px;
  left: 50%;
  transform-origin: center bottom;
  transform: translateX(-50%);
  pointer-events: none;
}*/

.window_view_btn{
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.ui_filter.window_view_btn .view-button {
  width: auto;
  margin-bottom:20px;
}

/*
.pnlm-render-container canvas{
  filter: brightness(1.2) contrast(1.1);
}*/

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
  /* Пины основной панорамы: касания доходят до div-hotspot (обработчик в Pannellum на нём) */
  #panorama .pnlm-hotspot-base .btn.circle,
  #panorama .custom-hotspot .btn.circle {
    pointer-events: none;
  }
  #panorama .pnlm-hotspot-base,
  #panorama .custom-hotspot {
    pointer-events: auto !important;
    touch-action: manipulation;
    cursor: pointer;
    /* Минимальная зона нажатия 44px для удобства на touch-устройствах */
    min-width: 44px;
    min-height: 44px;
    z-index: 10;
  }

  /* Основное меню (страницы) — компактнее на мобильных */
  .ui_menu.pages {
    bottom: 12px;
    left: 12px;
    width: 200px;
    max-width: calc(100vw - 24px);
  }
  .ui_menu.pages .dropdown-toggle .btn,
  .ui_menu.pages .dropdown .btn {
    padding: 6px 8px;
    font-size: 13px;
    min-height: 36px;
    border-radius: 36px;
  }
  .ui_menu.pages .icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    min-height: 36px;
    margin: 0 6px 0 2px;
    border-radius: 8px;
  }
  .ui_menu.pages .icon i {
    width: 20px;
    height: 20px;
  }
  .ui_menu.pages .icon_arrow {
    width: 10px;
    height: 10px;
    margin-right: 6px;
  }
  .ui .ui_menu.pages .btn span {
    font-size: 13px;
  }
  /* Меню категорий (инфраструктура) — не вылезает за экран */
  .ui_menu.categories {
    left: 12px;
    bottom: 52px;
    width: 200px;
    max-width: calc(100vw - 24px);
  }
  .ui_menu.categories .dropdown-toggle .btn,
  .ui_menu.categories .dropdown .btn {
    padding: 6px 8px;
    font-size: 13px;
    min-height: 36px;
  }
  .ui_menu.categories .icon {
    width: 36px;
    height: 36px;
    margin: 0 6px 0 2px;
  }
  .ui_menu.categories .icon i {
    width: 20px;
    height: 20px;
  }
  /* Кнопка «Назад» в блоке вид из окна */
  .ui_apart_mini_info .btn_back {
    padding: 0 12px;
    height: 32px;
    font-size: 12px;
    margin-left: 10px;
  }
  /* Кнопка открытия миникарты */
  .btn.circle.ui_map__open {
    width: 40px;
    height: 40px;
    transform0: translate(-20px, -50%);
    right: 12px;
    top: 12px;
  }
  .btn.circle.ui_map__open::before {
    width: 40px;
    height: 40px;
  }
  .btn.circle.ui_map__open .icon,
  .btn.circle.ui_map__open .icon i {
    width: 22px;
    height: 22px;
  }

  .ui_map {
    position: fixed;
    right: 12px;
    top: 50%;
    width: calc(100% - 24px);
    height: auto;
    transform: translate(0px, -50%);
  }

  .ui_map__expand{
    display:none;
  }

  .pnlm-orientation-button{
    margin-top:12px;
    margin-left:12px;
  }

  /* Zoom-меню круговой панорамы */
  .house-viewer-zoom-controls {
    right: 8px;
    gap: 4px;
  }
  #house-viewer-zoom-out,
  #house-viewer-zoom-in,
  #house-viewer-zoom-reset {
    min-width: 40px;
    min-height: 40px;
    padding: 0 10px;
    font-size: 16px;
    border-radius: 40px;
  }
  #house-viewer-zoom-reset {
    font-size: 11px;
    padding: 0 8px;
  }

  /* Список «вид из окон» (ui_apart_mini_info) — компактная панель как основное меню */
  .ui_apart_mini_info,
  .ui.simple_window_view .ui_apart_mini_info{
    left: 12px;
    right: auto;
    bottom: 12px;
    padding: 8px 12px;
    font-size: 11px;
    flex-wrap: wrap;
    gap: 6px;
    border-radius: 8px;
    max-width: calc(100vw - 24px);
  }
  .ui_apart_mini_info window_view_label,
  .ui_apart_mini_info .window_view_label {
    margin-right: 6px;
    font-size: 11px;
  }
  .ui_apart_mini_info .windows_list {
    flex-wrap: wrap;
    gap: 4px;
  }
  .ui_apart_mini_info .window_item,
  .ui_windows_views .window_item {
    width: 30px;
    height: 30px;
    min-width: 30px;
    min-height: 30px;
    font-size: 11px;
    margin-left0: 0;
  }
  .ui_windows_views {
    left: 12px;
    width: auto;
    padding: 6px 10px;
    border-radius: 8px;
  }
  .ui_apart_mini_info .windows_list,
  .ui_windows_views .windows_list,
  .windows_list {
    flex-wrap: wrap;
    gap: 4px;
  }

  /* Пины на круговой панораме — компактнее на мобильных */
  /*.house-viewer-widgets .house-viewer-widget .btn.circle {
    width: 32px;
    height: 32px;
    min-width: 32px;
    min-height: 32px;
    transform: translate(-50%, -50%);
  }
  .house-viewer-widgets .house-viewer-widget .btn.circle .icon,
  .house-viewer-widgets .house-viewer-widget .btn.circle .icon i {
    width: 32px;
    height: 32px;
  }*/

  .panorama-pin .btn.circle::before {
    content: '';
    position: absolute;
    left: -2px;
    width: 32px;
    height: 32px;
  }

  /* Пин house (таблетка с хвостом) — компактнее на мобильных */
  .house-viewer-widgets .house-viewer-widget .btn.circle.house {
    width: 96px;
    height: 40px;
    min-width: 96px;
  }
  .house-viewer-widgets .btn.circle.house .pin-house-label__body {
    width: 96px;
    height: 29px;
    padding: 0 8px;
  }
  .house-viewer-widgets .btn.circle.house .pin-house-label__text {
    font-size: 11px;
  }
  .house-viewer-widgets .btn.circle.house .pin-house-label__tail {
    border-left-width: 10px;
    border-right-width: 10px;
    border-top-width: 8px;
  }

  /* Пины на основной панораме (hotspots) — компактнее на мобильных */
  .panorama-pin .btn.circle {
    width: 32px;
    height: 32px;
  }
  .panorama-pin .btn.circle::before {
    width: 32px;
    height: 32px;
  }
  .panorama-pin .btn.circle:hover {
    width: 32px;
    height: 32px;
  }
  .panorama-pin .btn.circle .icon,
  .panorama-pin .btn.circle .icon i {
    width: 32px;
    height: 32px;
  }
  .panorama-pin .btn.circle.house {
    width: 96px;
    height: 40px;
    min-width: 96px;
  }
  .panorama-pin .btn.circle.house .pin-house-label__body {
    width: 96px;
    height: 29px;
    padding: 0 8px;
  }
  .panorama-pin .btn.circle.house .pin-house-label__text {
    font-size: 11px;
  }
  .panorama-pin .btn.circle.house .pin-house-label__tail {
    border-left-width: 10px;
    border-right-width: 10px;
    border-top-width: 8px;
  }
}

/* Планшеты: пины и панель «вид из окон» чуть меньше десктопа */
@media (max-width: 1024px) and (min-width: 769px) {
  .ui_apart_mini_info {
    left: 16px;
    bottom: 16px;
    padding: 12px 16px;
    font-size: 12px;
    border-radius: 8px;
  }
  .ui_apart_mini_info .window_view_label {
    font-size: 12px;
    margin-right: 8px;
  }
  .ui_apart_mini_info .window_item,
  .ui_windows_views .window_item {
    width: 34px;
    height: 34px;
    font-size: 12px;
  }
  .ui_apart_mini_info .btn_back {
    height: 34px;
    padding: 0 14px;
    font-size: 12px;
    margin-left: 12px;
  }
  .ui_windows_views {
    left: 16px;
    padding: 10px 12px;
  }

  .house-viewer-widgets .house-viewer-widget .btn.circle {
    width: 38px;
    height: 38px;
    min-width: 38px;
    min-height: 38px;
    transform: translate(-50%, -50%);
  }
  .house-viewer-widgets .house-viewer-widget .btn.circle .icon,
  .house-viewer-widgets .house-viewer-widget .btn.circle .icon i {
    width: 38px;
    height: 38px;
  }
  .house-viewer-widgets .house-viewer-widget .btn.circle.house {
    width: 100px;
    height: 42px;
    min-width: 100px;
  }
  .house-viewer-widgets .btn.circle.house .pin-house-label__body {
    width: 100px;
    height: 30px;
    padding: 0 10px;
  }
  .house-viewer-widgets .btn.circle.house .pin-house-label__text {
    font-size: 12px;
  }
  .house-viewer-widgets .btn.circle.house .pin-house-label__tail {
    border-left-width: 11px;
    border-right-width: 11px;
    border-top-width: 9px;
  }
  .panorama-pin .btn.circle {
    width: 38px;
    height: 38px;
  }
  .panorama-pin .btn.circle::before,
  .panorama-pin .btn.circle:hover {
    width: 38px;
    height: 38px;
  }
  .panorama-pin .btn.circle .icon,
  .panorama-pin .btn.circle .icon i {
    width: 38px;
    height: 38px;
  }
  .panorama-pin .btn.circle.house {
    width: 100px;
    height: 42px;
    min-width: 100px;
  }
  .panorama-pin .btn.circle.house .pin-house-label__body {
    width: 100px;
    height: 30px;
    padding: 0 10px;
  }
  .panorama-pin .btn.circle.house .pin-house-label__text {
    font-size: 12px;
  }
  .panorama-pin .btn.circle.house .pin-house-label__tail {
    border-left-width: 11px;
    border-right-width: 11px;
    border-top-width: 9px;
  }
}
