/* =====================================================
   医学往事 · 地图视图补充样式（浅色，复用主界面 CSS 变量）
   —— 主界面视觉由 css/style.css + style_new.css + mobile-adapt.css 提供，
      本文件只补医学特有的：详情弹窗（双徽标）、列表徽标、11 类图钉配色。
   —— 全部用 var(--bg-card / --text-primary / --border ...) 实现 data-theme 自适应。
   ===================================================== */

/* -----------------------------------------------------
   11 类分类按钮：激活色跟随数据里的分类颜色（--cat 由 JS 注入）
   ----------------------------------------------------- */
.filter-btn.active {
  background: var(--cat, var(--primary)) !important;
  border-color: var(--cat, var(--primary)) !important;
  color: #fff !important;
}

/* -----------------------------------------------------
   列表徽标：存疑（琥珀）/ 辨析（青蓝）
   ----------------------------------------------------- */
.event-item-flags {
  margin-top: 6px;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.med-flag {
  display: inline-block;
  padding: 1px 7px;
  border-radius: 4px;
  font-size: 11px;
  line-height: 1.5;
  background: rgba(245, 158, 11, 0.16);
  color: #b45309;
}
[data-theme="dark"] .med-flag { color: #fbbf24; }

.med-flag-note {
  background: rgba(14, 165, 233, 0.16);
  color: #0369a1;
}
[data-theme="dark"] .med-flag-note { color: #7dd3fc; }

/* -----------------------------------------------------
   空态提示
   ----------------------------------------------------- */
.med-empty {
  padding: 28px 16px;
  text-align: center;
  color: var(--text-muted);
  font-size: 0.85rem;
  line-height: 1.7;
}

/* -----------------------------------------------------
   Leaflet 降级图钉
   ----------------------------------------------------- */
.medmap-pin {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 2px solid #fff;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  line-height: 1;
}

/* -----------------------------------------------------
   详情弹窗（医学版，含双徽标）—— 视觉对齐主界面 .modal
   ----------------------------------------------------- */
.med-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
}
.med-modal[hidden] { display: none; }

.med-modal-mask {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
}

.med-modal-card {
  position: relative;
  background: var(--bg-card);
  color: var(--text-primary);
  border: 1px solid var(--border);
  border-radius: 16px;
  max-width: 600px;
  width: 92%;
  max-height: 85vh;
  overflow-y: auto;
  box-shadow: 0 25px 50px rgba(0, 0, 0, 0.35);
}

.med-modal-x {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: none;
  background: rgba(0, 0, 0, 0.3);
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  cursor: pointer;
  z-index: 1;
}
.med-modal-x:hover { background: rgba(0, 0, 0, 0.5); }

.med-modal-head {
  padding: 22px 24px 14px;
  border-bottom: 1px solid var(--border);
}

.med-modal-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 8px;
}

.med-modal-head h3 {
  font-size: 1.35rem;
  font-weight: 600;
  line-height: 1.35;
  margin-bottom: 6px;
}

.med-modal-year, .med-modal-era {
  color: var(--text-muted);
  font-size: 0.82rem;
}

.med-modal-place {
  color: var(--text-secondary);
  font-size: 0.85rem;
  margin-top: 6px;
}

.med-modal-body {
  padding: 16px 24px 24px;
}

.med-modal-desc {
  color: var(--text-secondary);
  font-size: 0.92rem;
  line-height: 1.7;
}

/* 分类标签（弹窗 / 列表共用） */
.med-item-cat {
  display: inline-block;
  padding: 2px 10px;
  border-radius: 20px;
  border: 1px solid;
  font-size: 0.75rem;
  font-weight: 500;
}

/* 存疑 / 辨析区块 */
.med-disputed, .med-note {
  margin: 14px 0;
  padding: 12px 14px;
  border-radius: 8px;
  border-left: 3px solid;
  color: var(--text-secondary);
  font-size: 0.88rem;
  line-height: 1.6;
}
.med-disputed { background: rgba(245, 158, 11, 0.10); border-left-color: #f59e0b; }
.med-note      { background: rgba(14, 165, 233, 0.10); border-left-color: #0ea5e9; }

.med-disputed-head, .med-note-head {
  font-weight: 600;
  margin-bottom: 6px;
  font-size: 0.88rem;
}
.med-disputed-head { color: #b45309; }
[data-theme="dark"] .med-disputed-head { color: #fbbf24; }
.med-note-head { color: #0369a1; }
[data-theme="dark"] .med-note-head { color: #7dd3fc; }

/* 要点 / 参考出处 */
.med-detail-sec { margin-top: 14px; }
.med-detail-sec h5 {
  font-size: 0.82rem;
  color: var(--text-muted);
  margin-bottom: 8px;
  font-weight: 600;
}

.med-detail-row {
  display: flex;
  gap: 10px;
  padding: 5px 0;
  font-size: 0.88rem;
  line-height: 1.6;
}
.med-detail-k {
  flex-shrink: 0;
  min-width: 44px;
  color: var(--text-muted);
}
.med-detail-v { color: var(--text-secondary); }

.med-refs {
  list-style: none;
  padding: 0;
  margin: 0;
}
.med-refs li {
  font-size: 0.8rem;
  color: var(--text-muted);
  padding: 3px 0;
}
.med-refs li::before { content: "· "; }

/* -----------------------------------------------------
   窄屏：11 类竖排筛选条不遮挡主视图
   ----------------------------------------------------- */
@media (max-width: 720px) {
  .category-filter { max-height: 55vh; overflow-y: auto; }
  .event-panel { width: 280px; }
}
