/* ============================================================
   通玄 · 出生地 typeahead 下拉（geo-picker.js 配套）
   作用域全部 .tx-geo-*，body 直挂浮层，不影响既有表单布局。
   ============================================================ */

.tx-geo-dropdown {
  position: fixed;
  z-index: 2000;
  max-height: 320px;
  overflow-y: auto;
  margin: 0;
  padding: 4px;
  background: var(--paper-50, #faf7ef);
  border: 1px solid rgba(184, 145, 75, 0.45);
  border-radius: var(--radius-sm, 8px);
  box-shadow: 0 10px 34px rgba(10, 15, 30, 0.28), 0 2px 8px rgba(10, 15, 30, 0.14);
  -webkit-overflow-scrolling: touch;
}

.tx-geo-item {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 12px;
  border-radius: 6px;
  cursor: pointer;
  line-height: 1.3;
  transition: background 0.14s ease;
}
.tx-geo-item.active,
.tx-geo-item:hover {
  background: rgba(184, 145, 75, 0.16);
}

.tx-geo-name {
  font-family: var(--font-serif, serif);
  font-size: 15.5px;
  letter-spacing: 0.04em;
  color: var(--paper-ink, #2c2a24);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tx-geo-region {
  flex-shrink: 0;
  font-family: var(--font-sans, sans-serif);
  font-size: 12.5px;
  letter-spacing: 0.02em;
  color: var(--paper-ink-soft, #6b6455);
}

.tx-geo-note {
  padding: 8px 12px;
  font-family: var(--font-sans, sans-serif);
  font-size: 12px;
  line-height: 1.4;
  color: var(--cinnabar, #b8493e);
  border-top: 1px dashed rgba(184, 145, 75, 0.4);
  margin-top: 2px;
}

/* 已锚定坐标的出生地框：底线转金，示意「已定位」 */
.input-line.tx-geo-set {
  border-bottom-color: var(--gold-600, #b8914b);
}

/* 深色皮肤（观星）下的浮层配色微调 */
:root[data-theme="xiu"] .tx-geo-dropdown,
html:not([data-theme]) .tx-geo-dropdown {
  /* 观星默认深底，但表单卡片为纸底，浮层沿用纸底以对齐卡片视觉 */
  background: var(--paper-50, #faf7ef);
}

@media (max-width: 560px) {
  .tx-geo-dropdown { max-height: 46vh; }
  .tx-geo-name { font-size: 16px; }
}

/* 「已定位」反馈行（attach 自动注入） */
.tx-geo-picked {
  display: block;
  margin-top: 8px;
  font-size: 12.5px;
  letter-spacing: 0.06em;
  color: #3d7a52;
}
.tx-geo-picked[hidden] { display: none; }
