/* FootPrint 足迹地图：国家高亮 + 城市点位 + 下方图例 */
.fp-map.fp-map-live { position: relative; margin: 0 !important; }

/* 地图容器尺寸微调（与下方列表的间距） */
#post_content .fp-map { margin: 0 !important; }

/* 城市点 / 国家面 提示气泡 */
#post_content .fp-live-map .fp-tip,
#post_content .fp-live-map .fp-ctip {
    background: #16202b; border: 0; border-radius: 7px; color: #fff;
    font: 400 11.5px/1.45 "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
    padding: 5px 9px; box-shadow: 0 8px 20px rgba(22,32,43,.26); white-space: nowrap;
}
#post_content .fp-live-map .fp-tip:before { border-top-color: #16202b; }
#post_content .fp-live-map .fp-ctip:before { border-top-color: #16202b; }
#post_content .fp-live-map .fp-tt-n { display: block; font-weight: 700; font-size: 12.5px; letter-spacing: .02em; }
#post_content .fp-live-map .fp-tt-y { display: block; color: #ffcf9a; font-size: 11px; margin-top: 1px; }
#post_content .fp-live-map .fp-tt-c { display: block; color: #8fa1b2; font-size: 10.5px; margin-top: 1px; }
#post_content .fp-live-map .fp-ctip { font-weight: 700; letter-spacing: .02em; }

/* 图例（地图下方横排） */
#post_content .fp-legend {
    display: flex !important; flex-wrap: wrap; align-items: center; justify-content: center;
    gap: 6px 7px !important; margin: 0 auto 18px !important; padding: 0 !important;
    max-width: 760px; text-align: center; line-height: 1 !important;
}
#post_content .fp-legend .fp-lg-desc {
    display: inline-flex; align-items: center; gap: 6px;
    font: 400 11.5px/1.2 "Microsoft YaHei", "PingFang SC", Arial, sans-serif;
    color: #5a6b7d; letter-spacing: .02em; margin: 0 6px 0 0; padding: 0; background: none;
}
#post_content .fp-legend .fp-lg-a {
    display: inline-block; width: 15px; height: 11px; border-radius: 2px;
    background: rgba(61,127,143,.16); border: 1px solid #3d7f8f; box-sizing: border-box;
}
#post_content .fp-legend .fp-lg-d {
    display: inline-block; width: 10px; height: 10px; border-radius: 50%;
    background: #c0392b; border: 1.5px solid #fff; box-sizing: border-box;
    box-shadow: 0 0 0 1px rgba(192,57,43,.28); margin-left: 4px;
}
#post_content .fp-legend .fp-lg-chip {
    display: inline-flex !important; align-items: center; gap: 5px;
    padding: 4px 9px !important; margin: 0 !important;
    border: 1px solid #e4eaf0 !important; border-radius: 999px !important;
    background: #fff !important; color: #43525f !important;
    font: 400 11.5px/1 "Microsoft YaHei", "PingFang SC", Arial, sans-serif !important;
    letter-spacing: .01em; cursor: pointer; transition: border-color .18s ease, color .18s ease, background .18s ease;
    white-space: nowrap;
}
#post_content .fp-legend .fp-lg-chip em {
    font-style: normal; color: #9dabb8; font-size: 10.5px; line-height: 1;
}
#post_content .fp-legend .fp-lg-chip:hover { border-color: #3d7f8f !important; color: #16202b !important; background: #f4f9fa !important; }
#post_content .fp-legend .fp-lg-chip.on { background: #16202b !important; border-color: #16202b !important; color: #fff !important; }
#post_content .fp-legend .fp-lg-chip.on em { color: #a9bccb; }

@media screen and (max-width: 760px) {
    #post_content .fp-legend { gap: 5px 6px !important; margin-bottom: 14px !important; }
    #post_content .fp-legend .fp-lg-chip { padding: 3px 7px !important; font-size: 11px !important; }
    #post_content .fp-legend .fp-lg-desc { flex-basis: 100%; justify-content: center; margin: 0 0 2px; }
}

/* 移动端图例：横向滚动单行，避免拥挤 */
@media screen and (max-width: 760px) {
    #fp-legend {
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding: 0 2px 6px !important;
        gap: 6px !important;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    #fp-legend::-webkit-scrollbar { display: none; }
    #fp-legend .fp-lg-desc { flex: 0 0 auto !important; }
    #fp-legend .fp-lg-chip { flex: 0 0 auto !important; padding: 3px 7px !important; font-size: 10.5px !important; }
    #fp-legend .fp-lg-chip em { font-size: 10px !important; }
}
