.mobile-logo {
  display: none;
}

@media (hover: hover) and (pointer: fine) {
  .win-btn:hover,
  .filters button:hover,
  .map-win-links a:hover,
  .mobile-place-row:hover {
    background: var(--color-ui-2);
  }
}

@media (max-width: 900px) {
  .layout {
    display: block;
    height: 100vh;
    height: var(--app-visible-height, 100dvh);
  }

  .map-wrap {
    --map-footer-height: 82px;
    height: 100vh;
    height: var(--app-visible-height, 100dvh);
  }

  .mobile-logo {
    display: none;
  }

  .mobile-logo-img {
    display: block;
    width: 112px;
    height: auto;
  }

  .map-footer {
    left: 0;
    min-height: var(--map-footer-height);
    padding: 8px 12px calc(8px + env(safe-area-inset-bottom, 0px));
    gap: 12px;
  }

  .map-footer-logo-slot {
    min-height: 62px;
  }

  .mobile-place-row.is-active,
  .mobile-place-row[data-active="true"] {
    background: var(--color-ui-2);
  }

  .mobile-place-row-name {
    font-family: var(--font-ui);
    font-weight: 400;
    line-height: 1;
  }

  .mobile-place-row-arrow {
    font-size: 20px;
    line-height: 1;
    color: var(--color-accent);
  }

  .gm-style .gm-style-iw-c {
    max-width: calc(100vw - 34px) !important;
  }

  .gm-style .gm-style-iw-d {
    max-height: none !important;
    overflow: visible !important;
  }

  .map-place-popup {
    z-index: calc(var(--z-mobile-ui) - 1);
  }

  .map-win-window {
    width: min(340px, calc(100vw - 28px));
    max-width: calc(100vw - 28px);
    max-height: min(82dvh, calc(100dvh - 56px));
  }

  .map-win-content {
    flex: 1 1 auto;
    min-height: 0;
  }

  .map-win-scroll {
    flex: 0 1 auto;
    min-height: 96px;
    max-height: min(220px, 30dvh);
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }

  .map-win-image-wrap {
    aspect-ratio: 16 / 9;
  }

  .map-win-image {
    height: 100%;
    object-fit: cover;
  }

  .route-hud {
    left: 12px;
    right: 62px;
    bottom: calc(var(--map-footer-height) + 18px + env(safe-area-inset-bottom, 0px));
    width: auto;
    max-width: none;
  }

  .route-hud-shell {
    padding: 10px 10px 9px;
    gap: 10px;
  }

  .route-hud-log {
    min-height: 48px;
  }

  .route-hud-line {
    font-size: 14px;
  }

  .route-locate-btn {
    right: 12px;
    bottom: calc(var(--map-footer-height) + 18px + env(safe-area-inset-bottom, 0px));
    width: 42px;
    height: 42px;
    box-shadow: var(--shadow-2);
  }

  .route-locate-btn-ring {
    width: 19px;
    height: 19px;
  }

  .route-locate-btn-dot {
    width: 7px;
    height: 7px;
  }

  .map-cloud-overlay--bottom .map-cloud {
    top: calc(var(--cloud-top, 0%) - 16%);
  }

  .mobile-place-row-main {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
  }

  .mobile-place-row-icon {
    width: 26px;
    height: 26px;
    display: block;
    flex: 0 0 auto;
    object-fit: contain;
  }

}
