/* ========== 新闻容器（页面区块与 CMS 面板） ========== */

/* 新闻区块（白色背景与页面边界） */
.main-page__news {
    /* 新闻区域令牌（复用全局主题色并保留新闻专用对比色） */
    --news-background: var(--website-surface);
    --news-primary: var(--website-primary);
    --news-heading: var(--website-heading);
    --news-muted: var(--website-text-muted);
    --news-border: var(--website-border-strong);
    --news-surface: var(--website-surface);
    --news-on-primary: #fff;
    /* 新闻卡片静置阴影（无全局等价，本地专属） */
    --news-card-shadow: 0 4px 12px rgb(0 0 0 / 8%);
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    overflow: visible;
    background: var(--news-background);
}

/* 新闻面板与内容容器（全宽承接 CMS 窗口） */
.main-page__news-panel,
.main-page__news-container {
    width: 100%;
}

/* 新闻内容容器（居中、左右留白五档一致，底部间距按断点） */
.main-page__news-container {
    display: grid;
    box-sizing: border-box;
    max-width: 100%;
    margin: 0 auto;
    padding-right: 20px;
    padding-left: 20px;
}

/* ========== 新闻标题（后台配置内容） ========== */

/* 新闻标题区域（水平垂直居中，上下留白按断点） */
.main-page__news-heading {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 新闻标题内容（文字与装饰线间距按断点） */
.main-page__news-heading .main-page__news-heading-content {
    display: flex;
    align-items: center;
    margin: 0;
    color: var(--news-primary);
    font-family: inherit;
    font-weight: 500;
    line-height: 1.3;
}

/* 新闻标题装饰线（标题两侧蓝色短线，长度按断点） */
.main-page__news-heading .main-page__news-heading-content::before,
.main-page__news-heading .main-page__news-heading-content::after {
    display: block;
    height: 1px;
    background: currentcolor;
    content: "";
}

/* ========== 新闻列表与文章卡片（CMS 循环输出） ========== */

/* 新闻列表（默认单列网格，间距按断点） */
.main-page__news-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
    margin: 0;
    padding: 0;
}

/* 新闻卡片（网格子项边界与静置阴影） */
.main-page__news-item {
    min-width: 0;
    overflow: hidden;
    box-shadow: var(--news-card-shadow);
}

/* ========== 新闻占位状态 ========== */

/* 隐藏的新闻项（无效真实项与已废弃的占位项由脚本标记 hidden） */
.main-page__news-list > .main-page__news-item[hidden] {
    display: none;
}

/* ========== 空状态 ========== */

/* 空状态块（居中占位文案，边框圆角与上下留白按断点） */
.main-page__news-empty {
    display: flex;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    padding-block: 24px;
    border: 1px solid var(--website-border-strong);
    border-radius: var(--website-radius);
    text-align: center;
}

/* 空状态块（hidden 属性生效，避免作者 display 覆盖） */
.main-page__news-empty[hidden] {
    display: none;
}

/* 空状态文案（弱化文字色；双类名提级防全局 p 规则覆盖） */
.main-page__news-empty .main-page__news-empty-text {
    margin: 0;
    color: var(--website-text-muted);
    font-size: 16px;
    line-height: 1.75;
}

/* 空状态（隐藏列表与更多入口，仅保留空态文案） */
.main-page__news--empty .main-page__news-list,
.main-page__news--empty .main-page__news-toolbar {
    display: none;
}

/* 新闻卡片图片区域（默认手机比例，其余比例按断点） */
.main-page__news-item-image {
    height: auto;
    aspect-ratio: 386 / 249;
    border-radius: 6px 6px 0 0;
    overflow: hidden;
}

/* 新闻图片链接（铺满图片区域） */
.main-page__news-item-image a {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    font-size: 0;
    line-height: 0;
}

/* 新闻图片元素（填充图片链接） */
.main-page__news-item-image img {
    display: block;
    width: 100%;
    height: 100%;
    vertical-align: top;
    object-fit: cover;
    transition: transform .4s ease;
}

/* 新闻图片链接（悬停放大） */
.main-page__news-item-image a:hover img {
    transform: scale(1.05);
}

/* 新闻卡片内容区域（独立边框与下圆角，高度与内边距按断点） */
.main-page__news-item-content {
    border: 1px solid var(--news-border);
    border-top: 0;
    border-radius: 0 0 6px 6px;
    box-sizing: border-box;
    background: var(--website-hover-bg);
}

/* 新闻发布日期（蓝色时间文本） */
.main-page__news-item .main-page__news-item-content time {
    color: var(--news-primary);
    font-size: 16px;
    line-height: 1.75;
}

/* 新闻标题（单行截断，字号按断点；基础字号承手机/平板档） */
.main-page__news-item .main-page__news-item-content h3 {
    margin: 8px 0 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
}

/* 新闻标题链接（深色无下划线） */
.main-page__news-item .main-page__news-item-content h3 a {
    color: var(--news-heading);
    font-weight: 500;
    text-decoration: none;
}

/* 新闻标题链接（悬停激活态） */
.main-page__news-item .main-page__news-item-content h3 a:hover {
    color: var(--news-primary);
}

/* 新闻标题链接（键盘焦点描边） */
.main-page__news-item .main-page__news-item-content h3 a:focus-visible {
    outline: 2px solid var(--news-primary);
    outline-offset: 2px;
}

/* 新闻摘要（最多三行且不可交互，字号按断点） */
.main-page__news-item .main-page__news-item-content p {
    display: -webkit-box;
    margin: 8px 0 0;
    overflow: hidden;
    color: var(--news-muted);
    line-height: 1.75;
    pointer-events: none;
    cursor: default;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

/* 新闻摘要子元素（继承摘要展示规则） */
.main-page__news-item .main-page__news-item-content p * {
    pointer-events: none;
    cursor: default;
    color: inherit;
    text-decoration: none;
}

/* ========== 新闻更多入口 ========== */

/* 新闻操作栏（更多入口居中，上外边距按断点） */
.main-page__news-toolbar {
    display: flex;
    order: 3;
    justify-content: center;
}

/* 新闻更多链接（描边按钮默认状态） */
.main-page__news-more {
    display: flex;
    align-items: center;
    justify-content: center;
    width: max-content;
    min-height: 42px;
    margin: 0 auto;
    padding: 0 15px;
    border: 1px solid var(--news-primary);
    border-radius: 6px;
    color: var(--news-primary);
    background: var(--news-surface);
    font-size: 14px;
    line-height: 1.5;
    text-decoration: none;
    transition: background-color .3s, color .3s;
}

/* 新闻更多链接（悬停与键盘焦点反馈） */
.main-page__news-more:hover,
.main-page__news-more:focus-visible {
    color: var(--news-on-primary);
    background: var(--news-primary);
}

/* ========== 断点布局 ========== */

/* ---- 桌面基准布局（>=992px，含宽屏档） ---- */

/* 桌面基准：三列网格、宽屏容器高度与标题字号 */
@media (min-width: 992px) {
    /* 新闻列表（三列网格） */
    .main-page__news-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 20px;
    }

    /* 新闻内容容器（宽屏宽度阶梯与底部留白） */
    .main-page__news-container {
        max-width: 1400px;
        padding-bottom: 40px;
    }

    /* 新闻标题区域（宽屏上下留白） */
    .main-page__news-heading {
        padding: 40px 0;
    }

    /* 空状态块（宽屏上下留白） */
    .main-page__news-empty {
        padding-block: 40px;
    }

    /* 新闻标题内容（宽屏字号与装饰线间距） */
    .main-page__news-heading .main-page__news-heading-content {
        gap: 15px;
        font-size: 36px;
    }

    /* 新闻标题装饰线（宽屏长度） */
    .main-page__news-heading .main-page__news-heading-content::before,
    .main-page__news-heading .main-page__news-heading-content::after {
        width: 40px;
    }

    /* 新闻图片区域（宽屏固定高度） */
    .main-page__news-item-image {
        height: 249px;
        aspect-ratio: auto;
    }

    /* 新闻内容区域（宽屏固定高度与内边距） */
    .main-page__news-item-content {
        height: 220px;
        padding: 20px;
    }

    /* 新闻标题（宽屏字号） */
    .main-page__news-item .main-page__news-item-content h3 {
        font-size: 22px;
    }

    /* 新闻摘要（宽屏字号） */
    .main-page__news-item .main-page__news-item-content p {
        font-size: 18px;
    }

    /* 新闻标题与摘要（桌面统一间距） */
    .main-page__news-item .main-page__news-item-content h3,
    .main-page__news-item .main-page__news-item-content p {
        margin-top: 10px;
    }

    /* 新闻操作栏（宽屏上外边距） */
    .main-page__news-toolbar {
        margin: 40px 0 0;
    }
}

/* ---- 标准桌面布局（1201px-1599px） ---- */

/* 标准桌面：宽度阶梯与字号收窄 */
@media (min-width: 1201px) and (max-width: 1599px) {
    /* 新闻内容容器（标准桌面宽度阶梯与底部留白） */
    .main-page__news-container {
        max-width: 1170px;
        padding-bottom: 36px;
    }

    /* 新闻标题区域（标准桌面上下留白） */
    .main-page__news-heading {
        padding: 36px 0;
    }

    /* 空状态块（标准桌面上下留白） */
    .main-page__news-empty {
        padding-block: 36px;
    }

    /* 新闻标题内容（标准桌面字号） */
    .main-page__news-heading .main-page__news-heading-content {
        font-size: 32px;
    }

    /* 新闻内容区域（标准桌面固定高度） */
    .main-page__news-item-content {
        height: 208px;
    }

    /* 新闻标题（标准桌面字号） */
    .main-page__news-item .main-page__news-item-content h3 {
        font-size: 20px;
    }

    /* 新闻摘要（标准桌面字号） */
    .main-page__news-item .main-page__news-item-content p {
        font-size: 16px;
    }

    /* 新闻操作栏（标准桌面上外边距） */
    .main-page__news-toolbar {
        margin: 36px 0 0;
    }
}

/* ---- 紧凑桌面布局（992px-1200px） ---- */

/* 紧凑桌面：宽度阶梯、三列比例与字号收窄 */
@media (min-width: 992px) and (max-width: 1200px) {
    /* 新闻内容容器（紧凑桌面宽度阶梯与底部留白） */
    .main-page__news-container {
        max-width: 970px;
        padding-bottom: 32px;
    }

    /* 新闻标题区域（紧凑桌面上下留白） */
    .main-page__news-heading {
        padding: 32px 0;
    }

    /* 空状态块（紧凑桌面上下留白） */
    .main-page__news-empty {
        padding-block: 32px;
    }

    /* 新闻标题内容（紧凑桌面字号） */
    .main-page__news-heading .main-page__news-heading-content {
        font-size: 28px;
    }

    /* 新闻图片区域（紧凑桌面三列比例） */
    .main-page__news-item-image {
        height: auto;
        aspect-ratio: 4 / 3;
    }

    /* 新闻内容区域（紧凑桌面固定高度与内边距） */
    .main-page__news-item-content {
        height: 204px;
        min-height: 0;
        padding: 20px;
    }

    /* 新闻标题（紧凑桌面字号） */
    .main-page__news-item .main-page__news-item-content h3 {
        font-size: 18px;
    }

    /* 新闻摘要（紧凑桌面字号） */
    .main-page__news-item .main-page__news-item-content p {
        font-size: 16px;
    }

    /* 新闻操作栏（紧凑桌面上外边距） */
    .main-page__news-toolbar {
        margin: 32px 0 0;
    }
}

/* ---- 平板移动端（768px-991px） ---- */

/* 平板：单列布局、横向图片比例与紧凑字号 */
@media (min-width: 768px) and (max-width: 991px) {
    /* 新闻内容容器（平板占满宽与底部留白） */
    .main-page__news-container {
        padding-bottom: 30px;
    }

    /* 新闻标题区域（平板上下留白） */
    .main-page__news-heading {
        padding: 30px 0;
    }

    /* 空状态块（平板上下留白） */
    .main-page__news-empty {
        padding-block: 30px;
    }

    /* 新闻标题内容（平板字号与装饰线间距） */
    .main-page__news-heading .main-page__news-heading-content {
        gap: 15px;
        font-size: 26px;
    }

    /* 新闻标题装饰线（平板长度） */
    .main-page__news-heading .main-page__news-heading-content::before,
    .main-page__news-heading .main-page__news-heading-content::after {
        width: 40px;
    }

    /* 新闻列表（平板两列等宽） */
    .main-page__news-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    /* 新闻图片区域（平板两列卡片比例） */
    .main-page__news-item-image {
        aspect-ratio: 4 / 3;
    }

    /* 新闻内容区域（平板自适应高度与紧凑内边距） */
    .main-page__news-item-content {
        height: auto;
        min-height: 0;
        padding: 16px;
    }

    /* 新闻标题（平板紧凑字号） */
    .main-page__news-item .main-page__news-item-content h3 {
        font-size: 18px;
    }

    /* 新闻摘要（平板字号） */
    .main-page__news-item .main-page__news-item-content p {
        font-size: 16px;
    }

    /* 新闻操作栏（平板上外边距） */
    .main-page__news-toolbar {
        margin: 30px 0 0;
    }
}

/* ---- 手机移动端（<=767px） ---- */

/* 手机：单列布局、竖幅图片比例与紧凑字号 */
@media (max-width: 767px) {
    /* 新闻内容容器（手机占满宽与底部留白） */
    .main-page__news-container {
        padding-bottom: 24px;
    }

    /* 新闻标题区域（手机紧凑上下留白） */
    .main-page__news-heading {
        padding: 24px 0;
    }

    /* 新闻标题内容（手机字号与装饰线间距） */
    .main-page__news-heading .main-page__news-heading-content {
        gap: 12px;
        font-size: 24px;
    }

    /* 新闻标题装饰线（手机缩短长度） */
    .main-page__news-heading .main-page__news-heading-content::before,
    .main-page__news-heading .main-page__news-heading-content::after {
        width: 24px;
    }

    /* 新闻内容区域（手机自适应高度与内边距） */
    .main-page__news-item-content {
        height: auto;
        min-height: 190px;
        padding: 16px;
    }

    /* 新闻标题（手机紧凑字号） */
    .main-page__news-item .main-page__news-item-content h3 {
        font-size: 18px;
    }

    /* 新闻摘要（手机字号） */
    .main-page__news-item .main-page__news-item-content p {
        font-size: 16px;
    }

    /* 新闻操作栏（手机上外边距） */
    .main-page__news-toolbar {
        margin: 24px 0 0;
    }
}

/* ========== 动效降级 ========== */

/* 新闻交互动效（用户偏好减少动效时关闭过渡） */
@media (prefers-reduced-motion: reduce) {
    .main-page__news-more {
        transition: none;
    }

    .main-page__news-item-image img {
        transition: none;
        transform: none;
    }
}