/* =========================================================
   base.css —— 全站基础样式
   全局重置 / 页面主体 / 通用容器 / 加载占位 / 移动端全局排版适配。
   ========================================================= */
/* ===== 全局重置 ===== */
* {
    scroll-behavior: smooth;
    box-sizing: border-box;
}
html,
body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
    background: #ffffff;
    color: #333333;
}


/* ===== 页面主体：为固定导航预留顶部空间 ===== */
main.page-body {
    padding-top: 80px;
}

/* ===== 通用容器 ===== */
.section-container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 40px;
}
@media (max-width: 640px) {
    .section-container {
        padding: 0 20px;
    }
}


/* 加载/错误占位 */
.data-loading,
.data-error {
    text-align: center;
    color: #94a3b8;
    padding: 48px 0;
    font-size: 15px;
    grid-column: 1 / -1;
}
.data-error {
    color: #ef4444;
}

/* =========================================================
   移动端全局文字间距 / 图片适配（<=1024px）
   统一改善各页正文的行距、段距与标题字号，
   并让所有内容图片默认自适应容器、不溢出。
   ========================================================= */
@media (max-width: 1024px) {
    body {
        line-height: 1.7;
        letter-spacing: 0.2px;
    }
    /* 段落更松弛，避免手机上文字拥挤 */
    p {
        line-height: 1.75;
    }
    /* 标题在小屏收敛字号、放宽行距，避免撑爆一行 */
    h1 { line-height: 1.3; }
    h2 { line-height: 1.35; }
    h3, h4 { line-height: 1.4; }
    /* 图片默认自适应：不超出容器、保持比例 */
    img {
        max-width: 100%;
        height: auto;
    }
    /* object-fit 类图片（卡片封面等）保持其裁剪行为，仅限制最大宽度 */
    img.object-cover,
    img.object-contain {
        height: 100%;
    }
}

@media (max-width: 640px) {
    body {
        line-height: 1.75;
    }
    p {
        line-height: 1.8;
        margin-bottom: 14px;
    }
    /* 富文本 / 正文区块的段距进一步放宽，阅读更舒适 */
    .article-content p,
    .news-content p,
    .modal-body p {
        margin-bottom: 16px;
    }
}

/* ===== 页面主体（移动端）：顶部预留空间与导航栏高度一致 ===== */
@media (max-width: 640px) {
    main.page-body {
        padding-top: 56px;
    }
}