/* =====================================================================
   News list page + single post page
   Layout mirrors the zztc reference (sjz-zztc.com/news/) — banner,
   horizontal news boxes and a two-column single view — using this theme's
   design tokens.
   ===================================================================== */

/* Banner (reused on news list + single) */
.page-banner {
    position: relative;
    background-size: cover;
    background-position: center;
    color: #fff;
    padding: 90px 0 70px;
}
.page-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,46,92,.82), rgba(0,62,128,.78));
}
.page-banner .container { position: relative; z-index: 1; }
.page-banner h1 {
    color: #fff;
    font-size: 34px;
    margin: 0 0 8px;
}
.page-banner p {
    margin: 0;
    color: rgba(255,255,255,.9);
    font-size: 15px;
}

/* News list */
.news-list {
    display: flex;
    flex-direction: column;
    gap: 26px;
    margin-top: 10px;
}
.news-item {
    display: flex;
    gap: 26px;
    align-items: flex-start;
    padding-bottom: 26px;
    border-bottom: 1px solid var(--ce-line);
}
.news-item:last-child { border-bottom: 0; }
.news-item__thumb {
    flex: 0 0 320px;
    max-width: 320px;
    display: block;
    border-radius: 8px;
    overflow: hidden;
    line-height: 0;
}
.news-item__thumb img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    transition: transform .3s ease;
}
.news-item__thumb:hover img { transform: scale(1.04); }
.news-item__body { flex: 1; min-width: 0; }
.news-item__title {
    font-size: 20px;
    margin: 0 0 6px;
    line-height: 1.35;
}
.news-item__title a { color: var(--ce-primary); }
.news-item__title a:hover { color: var(--ce-accent); }
.news-item__meta { margin-bottom: 8px; }
.news-item__date { color: var(--ce-muted); font-size: 13px; }
.news-item__excerpt { margin: 0 0 14px; color: #444; }
.news-item__more { display: inline-block; }

/* Single post — article only (no sidebar column) */
.entry-single {
    max-width: 900px;
    margin: 0 auto;
}

.entry-feature {
    margin-bottom: 20px;
    border-radius: 8px;
    overflow: hidden;
    line-height: 0;
}
.entry-feature img { width: 100%; height: auto; }
.entry-content { font-size: 16px; line-height: 1.8; }
.entry-content p { margin: 0 0 18px; }

/* Sidebar widgets */
.sidebar .widget {
    margin-bottom: 28px;
    background: var(--ce-bg-alt);
    border: 1px solid var(--ce-line);
    border-radius: 8px;
    padding: 18px 20px;
}
.widget-title {
    font-size: 17px;
    margin: 0 0 12px;
    color: var(--ce-primary);
}
.widget-list { list-style: none; margin: 0; padding: 0; }
.widget-list li {
    padding: 8px 0;
    border-bottom: 1px dashed var(--ce-line);
    font-size: 14px;
}
.widget-list li:last-child { border-bottom: 0; }
.widget-list a { color: var(--ce-text); }
.widget-list a:hover { color: var(--ce-accent); }
.widget-date {
    display: block;
    color: var(--ce-muted);
    font-size: 12px;
    margin-top: 2px;
}

/* Pagination (paginate_links, type=list) */
.pagination { margin-top: 34px; text-align: center; }
.pagination ul.page-numbers {
    list-style: none;
    margin: 0;
    padding: 0;
}
.pagination ul.page-numbers li { display: inline-block; margin: 0 3px; }
.pagination .page-numbers {
    display: inline-block;
    min-width: 38px;
    padding: 8px 12px;
    border: 1px solid var(--ce-line);
    border-radius: 6px;
    color: var(--ce-primary);
    text-align: center;
}
.pagination .page-numbers.current {
    background: var(--ce-primary);
    color: #fff;
    border-color: var(--ce-primary);
}
.pagination a.page-numbers:hover { border-color: var(--ce-primary); }

.empty-note { color: var(--ce-muted); padding: 30px 0; }

/* Responsive */
@media (max-width: 768px) {
    .news-item { flex-direction: column; gap: 14px; }
    .news-item__thumb {
        flex: 1 1 auto;
        max-width: 100%;
        width: 100%;
    }
    .page-banner { padding: 64px 0 48px; }
    .page-banner h1 { font-size: 26px; }
}
