/* 网站地图 */
.map-page { padding: 26px 28px 60px; }

.map-head { margin-bottom: 18px; }
.map-head h1 { font-size: 25px; font-weight: 700; letter-spacing: -.2px; }
.map-head p { margin-top: 8px; font-size: 14px; color: var(--text-secondary); }

.map-block {
    margin-bottom: 14px;
    padding: 20px 22px;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
}
.map-block h2 {
    display: flex;
    align-items: baseline;
    gap: 9px;
    margin-bottom: 13px;
    padding-bottom: 11px;
    border-bottom: 1px solid var(--border-light);
    font-size: 16px;
    font-weight: 700;
}
.map-block h2 a { color: var(--text-primary); }
.map-block h2 a:hover { color: var(--primary); }
.map-block h2 small { font-size: 12.5px; font-weight: 400; color: var(--text-muted); }

.map-links {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 9px 14px;
    list-style: none;
}
.map-links-wide { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
.map-links a {
    display: block;
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.map-links a:hover { color: var(--primary); }
.map-empty { font-size: 13px; color: var(--text-muted); }

@media (max-width: 760px) {
    .map-page { padding: 18px 16px 44px; }
    .map-block { padding: 16px 16px; border-radius: var(--radius-sm); }
    .map-head h1 { font-size: 21px; }
    .map-links { grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); }
    .map-links-wide { grid-template-columns: minmax(0, 1fr); }
}
