/* 일본판 지도 공용 스타일 — 역 페이지·/ja/map/ (jmap.js 와 짝).
   마커는 앱 users/webmap/src/styles/style.css 의 마커 규칙을 그대로 옮긴 것(100% 동일, 사장님 10/17). 앱 CSS 를 바꾸면 다시 옮긴다. */
/* ── 앱 마커(원본 그대로) ── */
/* 앱은 position:relative — maplibregl-marker 의 position:absolute 를 덮어 마커가 어긋나므로 이 한 줄만 뺐다 */
.bs-overlay-marker{display: inline-block; pointer-events:auto !important;}
.bs-overlay-marker *{pointer-events:auto !important;}
.price-marker{display:flex; align-items:center; justify-content:center; height: 30px; padding: 0 12px; border-radius: 999px; font-weight: 700; font-size: 12px; letter-spacing: -0.2px; user-select:none; -webkit-user-select:none;}
.price-marker.outline{background: #FFFFFF; border: 2px solid rgba(34,120,255,.95); color: rgba(34,120,255,.98);}
.price-marker.brand{background: #2278FF; border: 2px solid rgba(255,255,255,.42); color: #fff;}
.price-marker.selected{outline: 2px solid #ffffff; outline-offset: 2px; box-shadow: 0 0 0 4px rgba(34, 120, 255, .28), 0 8px 18px rgba(34, 120, 255, .35) !important;}
.price-marker.type-hourly{background: rgba(58,134,255,.95); border: 2px solid rgba(255,255,255,.50); color: #fff;}
.price-marker.type-daily{background: rgba(16,185,129,.95); border: 2px solid rgba(255,255,255,.50); color: #fff;}
.price-marker.type-free{background: rgba(107,114,128,.90); border: 2px solid rgba(255,255,255,.40); color: #fff;}
.price-marker.type-kakao{background: rgba(71,85,105,.92); border: 2px solid rgba(255,255,255,.45); color: #fff;}
.price-marker.type-monthly{background: rgba(139,92,246,.95); border: 2px solid rgba(255,255,255,.50); color: #fff;}
.price-marker.partnered.type-hourly,
.price-marker.partnered.type-daily,
.price-marker.partnered.type-free{background: #2563EB !important; border: 2px solid #FFFFFF !important;}
.price-marker.kakao-enriched{background: rgba(4,120,87,.96); border: 2px solid #ffffff; color: #fff; gap: 5px; padding: 0 10px 0 4px; box-shadow: 0 2px 6px rgba(15,23,42,.18);}
.price-marker .km-thumb{width: 22px; height: 22px; border-radius: 50%; background-size: cover; background-position: center; background-color: rgba(255,255,255,.18); flex: 0 0 auto; border: 1.5px solid rgba(255,255,255,.85);}
.price-marker .km-thumb-empty{display: flex; align-items: center; justify-content: center; font-size: 12px; line-height: 1;}
.price-marker .km-price{font-weight: 700; font-size: 12px; white-space: nowrap;}
.price-marker.with-media{flex-direction: row; align-items: center; gap: 5px; padding-left: 5px;}
.price-marker.with-media .pm-pricewrap{display: flex; flex-direction: column; align-items: flex-start; gap: 1px;}
.price-marker.multi-price.thumb-multi{flex-direction: column; align-items: stretch; padding: 5px 10px;}
.price-marker.thumb-multi .pm-head{display: flex; align-items: center; gap: 5px; padding-bottom: 3px; margin-bottom: 2px; border-bottom: 1px solid rgba(255,255,255,.30);}
.price-marker.thumb-multi .pm-headprice{font-weight: 700; font-size: 13px; white-space: nowrap;}
.price-marker.thumb-multi .pm-row{justify-content: center;}
.price-marker.multi-price{height: auto; min-height: 30px; padding: 5px 12px; border-radius: 12px; flex-direction: column; align-items: flex-start; gap: 1px;}
.pm-row{display: flex; align-items: center; gap: 3px; line-height: 1.25; white-space: nowrap;}
.pm-lbl{font-size: 9px; font-weight: 700; opacity: 0.72; min-width: 14px;}
.pm-row.pm-main{font-size: 14px; align-self: center; padding-bottom: 3px; margin-bottom: 1px; border-bottom: 1px solid rgba(255,255,255,0.30); width: 100%; justify-content: center;}
.price-marker.multi-price:has(.pm-row:nth-child(3)){font-size: 10px; padding: 4px 10px;}

/* 앱 지도와 같은 글꼴(본문 font-family 를 마커에만) */
.bs-overlay-marker{font-family:Pretendard Variable,Pretendard,system-ui,-apple-system,Segoe UI,Roboto,"Noto Sans JP","Noto Sans KR",Arial,sans-serif}
.jpop a.jgo{display:block;margin-top:6px;color:var(--sub,#64748b);font-weight:600}
.jhint{display:none;position:absolute;left:50%;top:12px;transform:translateX(-50%);z-index:3;background:rgba(15,23,42,.82);color:#fff;font-size:13px;font-weight:700;padding:7px 12px;border-radius:999px;white-space:nowrap;pointer-events:none}
.maplibregl-popup-content{background:var(--card,#fff) !important;color:var(--ink,#0f172a) !important;border:1px solid var(--line,#e9edf3);border-radius:12px !important;padding:12px 30px 12px 14px !important;box-shadow:0 6px 20px rgba(0,0,0,.18) !important}
.maplibregl-popup-close-button{color:var(--ink,#0f172a) !important;font-size:20px;padding:2px 8px}
.maplibregl-popup-anchor-bottom .maplibregl-popup-tip,.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip,.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{border-top-color:var(--card,#fff) !important}
.maplibregl-popup-anchor-top .maplibregl-popup-tip,.maplibregl-popup-anchor-top-left .maplibregl-popup-tip,.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{border-bottom-color:var(--card,#fff) !important}
.maplibregl-popup-anchor-left .maplibregl-popup-tip{border-right-color:var(--card,#fff) !important}.maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:var(--card,#fff) !important}
.jpop b{display:block;font-size:14px;line-height:1.45;margin-bottom:4px}.jpop div{font-size:13px;color:var(--muted,#64748b)}.jpop a{display:inline-block;margin-top:8px;font-size:13px;font-weight:700;color:var(--blue,#2278FF);text-decoration:none}
.jst{background:#0f172a;color:#fff;font:700 12px "Noto Sans JP",sans-serif;padding:3px 8px;border-radius:8px;border:2px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.33);white-space:nowrap}

/* 팝업은 마커(z-index 1~5) 위로 */
.maplibregl-popup{z-index:20}
