/* ========================
   主体布局区域
   ======================== */

/* 主体布局：最新文章列表区域
   - 作用位置：导航栏下方的大列表区域
*/
.main {
    display: flex;
    padding: 0;
    gap: 12px;
    /* 减小左右间距 */
    align-items: flex-start;
    /* 顶部对齐，确保广告区与内容区顶部对齐 */
    width: 100%;
    /* 确保占满容器宽度 */
    box-sizing: border-box;
    margin: 0;
    /* 确保没有额外的外边距 */
}

/* 左侧文稿区（4 份宽度，默认用于普通列表页） */
.content-main {
    flex: 4;
    padding: 24px 0 40px;
    /* 内容区的上下内边距 */
    min-width: 0;
    /* 允许flex项目收缩 */
    margin: 0;
    /* 确保没有额外的外边距 */
}

/* 右侧广告区（1 份宽度） */
.sidebar-ads {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 0 0 40px;
    /* 移除顶部内边距，通过第一个广告项的margin-top来控制对齐 */
    align-items: stretch;
    min-width: 0;
    /* 允许flex项目收缩 */
    margin: 0;
    /* 确保没有额外的外边距 */
}

/* 广告区域第一个广告项：与第一篇文章图片顶部对齐 */
.main:not(.main-home) .sidebar-ads>*:first-child {
    margin-top: 30px;
    /* content-main的padding-top(24px) + content-header高度(约28px，content-title的font-size: 20px + 默认行高约8px) + margin-bottom(16px) - 调整20px = 48px，让第一个广告与第一篇文章图片顶部对齐 */
}

/* ========================
   移动端响应式适配（手机等小屏幕）
   - 断点：768px 及以下
   ======================== */
@media (max-width: 768px) {

    /* 主体布局：横向排列的两组变为纵向排列 */
    .main {
        flex-direction: column;
        padding: 16px 0 24px;
        gap: 12px;
        /* 减小上下间距 */
    }

    /* 内容区在小屏幕时占满宽度 */
    .content-main {
        flex: 1;
        width: 100%;
    }

    /* 广告区在小屏幕时移到内容下方，取消顶部间距 */
    .sidebar-ads {
        flex: 1;
        width: 100%;
        margin-top: 0;
        order: 2;
        /* 确保广告区在内容区下方 */
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        align-items: stretch;
    }

    /* 非首页：移动端不要让第一个广告额外下沉 */
    .main:not(.main-home) .sidebar-ads>*:first-child {
        margin-top: 0;
    }

    /* 移动端广告卡片：去掉固定最大宽度，按两列自适应铺满 */
    .sidebar-ads .ad-banner-link,
    .sidebar-ads .ad-banner-placeholder {
        margin: 0;
        width: 100%;
        max-width: none;
    }

    /* 移动端广告图片：自适应卡片宽度 */
    .sidebar-ads .ad-banner-image {
        width: 100%;
        max-width: 100%;
        height: auto;
    }
}