.footprint-record { width: 100%; text-align: left; font-family: inherit; color: inherit; }
.footprint-record > div { flex-wrap: wrap; }
.footprint-record > div > p { white-space: normal; overflow-wrap: anywhere; }
.footprint-record p.footprint-record__detail { margin: 10px 0 0; font-size: 13px; line-height: 1.6; white-space: pre-wrap; overflow-wrap: anywhere; }
.footprint-record__location-note { margin-top: 8px; color: #777; font-size: 12px; }
.footprint-status { padding: 24px 8px; color: #666; font-size: 14px; line-height: 1.6; }
.footprint-count { color: #777; font-size: 13px; }
.footprint-retry, .footprint-popup__close { padding: 9px 14px; background: #fff; border: 1px solid #ddd; border-radius: 4px; color: #333; font: inherit; font-size: 14px; cursor: pointer; }
.home-footprint__more, .investment-footprint__more { cursor: pointer; }
.home-footprint__more:hover, .investment-footprint__more:hover { text-decoration: underline; text-underline-offset: 4px; }
.home-footprint__more:focus-visible, .investment-footprint__more:focus-visible,
.footprint-record:focus-visible, .footprint-retry:focus-visible, .footprint-popup__close:focus-visible {
  outline: 2px solid #090a3c; outline-offset: 3px;
}
.footprint-pin { width: 34px; height: 46px; padding: 0; border: 0; background: transparent; cursor: pointer; filter: drop-shadow(0 3px 5px #0003); }
.footprint-pin svg { display: block; width: 34px; height: 46px; }
.footprint-pin.is-selected { transform: scale(1.12); transform-origin: center bottom; }
.footprint-pin:focus-visible { outline: 2px solid #090a3c; outline-offset: 3px; }
.footprint-pin-info { max-width: 270px; padding: 14px 18px; color: #222; font-family: Pretendard, sans-serif; line-height: 1.6; }
.footprint-pin-info strong { display: block; font-size: 15px; }
.footprint-pin-info p { margin: 4px 0 0; font-size: 12px; }

body.footprint-popup { margin: 0; background: #fff; overflow: auto; }
.footprint-popup__header { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 24px 32px; border-bottom: 1px solid #e5e5e5; }
.footprint-popup__company { color: #816c5b; font-size: 13px; }
.page-investment .footprint-popup__company { color: #555; }
.footprint-popup__header h1 { margin: 6px 0 0; font-family: Sogo, Georgia, serif; font-size: 30px; font-weight: 400; }
.footprint-popup [data-footprint-root] { padding: 24px 32px; margin: 0; }
.footprint-popup .home-footprint__inner, .footprint-popup .investment-footprint__inner { width: 100%; max-width: none; margin: 0; padding: 0; }
.footprint-popup .home-footprint__head, .footprint-popup .investment-footprint__head { display: none; }
.footprint-popup .home-footprint__content, .footprint-popup .investment-footprint__content {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 380px); gap: 24px; margin: 0;
}
.footprint-popup .home-footprint__map, .footprint-popup .investment-footprint__map { width: 100%; height: calc(100dvh - 158px); min-height: 420px; aspect-ratio: auto; margin: 0; }
.footprint-popup .home-footprint__side, .footprint-popup .investment-footprint__side { display: flex; flex-direction: column; min-height: 0; height: calc(100dvh - 158px); min-width: 0; }
.footprint-popup .home-footprint__side-head, .footprint-popup .investment-footprint__side-head { flex: none; margin-bottom: 16px; }
.footprint-popup [data-footprint-list] { overflow-y: auto; min-height: 0; padding: 4px; }
.footprint-popup .footprint-record { flex-shrink: 0; }
@media (max-width: 800px) {
  .footprint-popup__header { padding: 18px 20px; }
  .footprint-popup__header h1 { font-size: 24px; }
  .footprint-popup [data-footprint-root] { padding: 16px; }
  .footprint-popup .home-footprint__content, .footprint-popup .investment-footprint__content { grid-template-columns: 1fr; gap: 24px; }
  .footprint-popup .home-footprint__map, .footprint-popup .investment-footprint__map { height: 45dvh; min-height: 280px; max-width: none; }
  .footprint-popup .home-footprint__map-wrap, .footprint-popup .investment-footprint__map-wrap { order: 0; }
  .footprint-popup .home-footprint__side, .footprint-popup .investment-footprint__side { height: auto; }
  .footprint-popup [data-footprint-list] { max-height: none; overflow: visible; }
}
