/* 页脚以品牌说明、相关链接、下载入口三块对齐排列。 */
footer.site-footer-shared {
    box-sizing: border-box;
    width: min(1160px, calc(100% - 64px));
    max-width: none;
    margin: 48px auto 0;
    padding: 32px 0 24px;
    border-top: 1px solid #ffffff12;
    color: #9ab0c9;
    font: 12px/1.7 "Segoe UI", "Microsoft YaHei", Arial, sans-serif;
    flex: 0 0 auto;
}
footer.site-footer-full { width: 100%; padding-inline: 32px; }
footer.site-footer-account { width: min(1360px, calc(100% - 64px)); }
.site-footer-shared .site-footer-top { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(240px, 1fr) auto; align-items: start; gap: 40px; }
.site-footer-shared .site-footer-intro { min-width: 0; }
.site-footer-shared a { color: #9ab0c9; text-decoration: none; font-weight: 400; }
.site-footer-shared a:hover { color: #80d5c5; }
.site-footer-shared a:focus-visible { outline: 2px solid #80d5c5; outline-offset: 4px; }
.site-footer-shared .site-footer-brand { display: inline-block; color: #f3f7fc; font-size: 20px; line-height: 1.4; font-weight: 700; white-space: nowrap; }
.site-footer-shared .site-footer-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 12px 24px; margin: 3px 0 0; }
.site-footer-shared .site-footer-links a { width: fit-content; line-height: 1.6; }
.site-footer-shared .site-footer-disclaimer { max-width: 410px; margin: 14px 0 0; color: #8199af; font-size: 11px; line-height: 1.85; }
.site-footer-shared .site-footer-downloads { padding-top: 1px; }
.site-footer-shared .site-footer-downloads .site-store-links { flex-wrap: nowrap; }
.site-footer-shared .site-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 28px; padding-top: 18px; border-top: 1px solid #ffffff0c; font-size: 11px; color: #8199af; }
.login-secondary-links { width: min(1120px, calc(100% - 64px)); margin: 12px auto; text-align: end; font-size: 12px; }
.login-secondary-links a { color: #9ab0c9; }
/* 海图页使用同一结构的紧凑排版，保留地图高度。 */
.site-chart footer.site-footer-shared { margin-top: 0; padding-block: 10px; }
.site-chart .site-footer-top { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; }
.site-chart .site-footer-disclaimer { display: none; }
.site-chart .site-footer-links { display: flex; flex-wrap: wrap; flex: 1; gap: 4px 14px; margin: 0; }
.site-chart .site-footer-downloads { padding: 0; }
.site-chart .site-footer-bottom { margin-top: 8px; padding-top: 6px; }
.site-chart .site-footer-brand { font-size: 15px; }
@media (max-width: 1100px) {
    footer.site-footer-full { padding-inline: 22px; }
    .site-footer-shared .site-footer-top { grid-template-columns: minmax(0, 1fr) minmax(260px, 1fr); gap: 28px 36px; }
    .site-footer-shared .site-footer-intro { grid-row: span 2; }
    .site-footer-shared .site-footer-downloads { grid-column: 2; }
}
@media (max-width: 700px) {
    footer.site-footer-shared, footer.site-footer-account { width: calc(100% - 36px); margin-top: 32px; padding-block: 24px; }
    footer.site-footer-full { width: 100%; padding-inline: 14px; }
    .site-footer-shared .site-footer-top { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    .site-footer-shared .site-footer-intro { grid-row: auto; }
    .site-footer-shared .site-footer-links { gap: 12px 24px; }
    .site-footer-shared .site-footer-downloads { grid-column: auto; }
    .site-footer-shared .site-footer-downloads .site-store-links { flex-wrap: wrap; }
    .site-footer-shared .site-footer-bottom { align-items: flex-start; gap: 16px; margin-top: 24px; }
    .site-footer-shared .site-footer-bottom a { white-space: nowrap; }
    .site-chart footer.site-footer-shared { margin-top: 0; padding-block: 8px; }
    .site-chart .site-footer-links { font-size: 10px; flex-basis: 100%; }
    .site-chart .site-footer-downloads { margin-inline-start: auto; }
    .site-chart .site-footer-bottom { margin-top: 8px; }
    .login-secondary-links { width: calc(100% - 36px); }
}
/* 手机分享落地页的统一页脚位于卡片下方。 */
body.site-shared-map { display: flex; flex-direction: column; align-items: stretch; padding: 0; }
.site-shared-map main.card, .site-shared-map main.location-card { width: min(520px, calc(100% - 36px)); margin: 64px auto 32px; }
.site-shared-map footer.site-footer-shared { margin-top: auto; }
