body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto;
}

#mapjun-map {
  width: 100%;
  height: 600px;
  overflow: visible !important;
}

.wp-block,
.wp-block-group,
.elementor-section {
  overflow: visible !important;
}

/* 弹窗 */
.ol-popup {
  position: absolute;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 18px;
  pointer-events: auto;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
  backdrop-filter: blur(15px);
  width: auto;
  white-space: nowrap;
  max-width: none;
  display: none;
}
.ol-popup table {
    width: auto;
    table-layout: auto;
}

.ol-popup td {
    white-space: nowrap;   /* 防止 td 自己换行 */
}
.popup-content {
  padding: 16px 20px;
  /* 设定最小宽度，但不能超过屏幕或容器宽度 */
   min-width: 280px;
  /*max-width: 300px; */
  /* 改为 max-width 更安全 */
  width: auto;
  /* 让宽度根据内容自适应 */
}

.popup-title {
  /* text-align: center; */
  font-size: 18px;
  font-weight: 600;
  color: #111;
  margin-bottom: 8px;
}

.popup-desc {
    padding: 10px;
    max-width: 800px;       /* 设定一个你觉得最宽的限制 */
    overflow-x: auto;       /* 如果超过500px，出现横向滚动条而不是换行 */
}

.popup-desc table {
  width: 100%;
  border-collapse: collapse;
  border: none;
  background: none
}

.popup-desc td {
  padding: 4px 6px;
  border: none;
  border-top: 0 !important;
}

.popup-desc td.status {
  text-align: right;
  font-weight: 600;
}

.popup-desc td.status.green {
  color: #28a745;
}

.popup-desc td.status.blue {
  color: #007aff;
}

/* 3. 三角形逻辑：通过类名动态控制方向 */
.ol-popup-bottom:after {
  /* 弹窗在点上方 */
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: rgba(255, 255, 255, 0.95) transparent transparent transparent;
}

.ol-popup-top:after {
  /* 弹窗在点下方 */
  content: "";
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  border-width: 0 10px 10px 10px;
  border-style: solid;
  border-color: transparent transparent rgba(255, 255, 255, 0.95) transparent;
}

div#mapjun-popup hr.divider,
#mapjun-popup .divider {
  display: block !important;
  border: none !important;
  border-top: 1px solid #dcdcdc !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 6px 0 !important;
  padding: 0 !important;
  /* 核心：缩放实现 0.5px 视觉感 */
  transform: scaleY(0.5) !important;
  transform-origin: center top !important;
  /* 兼容性 */
  -webkit-transform: scaleY(0.5) !important;
}

/* 搜索框 */
.search-select-container {
  width: 100%;
  padding: 15px;
  background: white;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  display: flex;
  justify-content: center;
}

.search-box {
  width: 100%;
  position: relative;
}

.search-input {
  width: 100%;
  padding: 10px 14px;
  border-radius: 5px;
  border: 1px solid #ccc;
  font-size: 15px;
  outline: none;
  transition: 0.25s;
}

.search-input:focus {
  border-color: #007aff;
  box-shadow: 0 0 0 2px rgba(0, 122, 255, 0.2);
}

.dropdown {
  position: absolute;
  top: 44px;
  width: 100%;
  background: white;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  display: none;
  max-height: 200px;
  overflow-y: auto;
  z-index: 1000;
}

.dropdown-item {
  padding: 10px 14px;
  cursor: pointer;
  font-size: 15px;
  transition: 0.2s;
  white-space: nowrap;
  /* 防止文字换行 */
  overflow: hidden;
  text-overflow: ellipsis;
  /* 长文字显示省略号 */
}

.dropdown-item:hover {
  background: #f0f4ff;
}

/* 搜索容器 */
.mapjun-search-container {
  width: 100%;
  max-width: 1000px;
  margin: 50px auto 30px auto;
  /* 这里的 30px 就是搜索框和地图之间的距离，你可以根据需要调大 */
  position: relative;
  z-index: 30;
  margin-bottom: 50px !important;
  /* 增加到 35px 左右视觉上会更舒展 */
}

/* 搜索输入框 */
#mapjun-search-input {
  width: 100%;
  /* 撑满父容器 */
  box-sizing: border-box;
  /* 确保 padding 不会撑大宽度 */
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
}

/* 下拉框样式 */
#mapjun-dropdown {
  position: absolute;
  top: 100%;
  /* 紧贴输入框底部 */
  left: 0;
  /* 左侧对齐 */
  right: 0;
  /* 右侧对齐，这会强制宽度与父级一致 */
  z-index: 1000;
  background: white;
  border: 1px solid #ccc;
  border-top: none;
  /* 去掉重复的边框 */
  max-height: 200px;
  overflow-y: auto;
  /* 解决宽度微差的关键 */
  box-sizing: border-box;
  margin-top: 2px;
  /* 稍微留点空隙 */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}



