.news-side-card {
    padding: 22px 18px;
    margin-bottom: 18px;
    background: #fff;
    border: 1px solid #e2eaf8;
    border-radius: 12px;
}
.news-side-card:last-child { margin-bottom: 0; }
.news-side-topics { background: #fafbff; }
.news-side-card-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.news-side-card-head h3 { margin: 0; color: #17365a; font-size: 16px; font-weight: 600; }
.news-side-count, .news-side-more { color: #8b9bb5; font-size: 12px; white-space: nowrap; }
.news-side-more { text-decoration: none; }
.news-side-tip, .news-side-foot, .news-side-empty { color: #91a0b8; font-size: 12px; line-height: 1.8; }
.news-side-tip { margin: 0 0 16px; }
.news-side-search { box-sizing: border-box; width: 100%; height: 38px; padding: 0 10px; margin-bottom: 16px; border: 1px solid #dce5f4; border-radius: 5px; background: #fff; color: #335579; font: inherit; font-size: 12px; }
.news-side-search:focus { outline: 2px solid #b8d2ff; outline-offset: 1px; }
.news-side-tag-group { margin-top: 20px; }
.news-side-category { margin: 0 0 8px; color: #91a0b8; font-size: 12px; font-weight: 400; line-height: 1.8; overflow-wrap: anywhere; }
.news-side-tags { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.news-side-tag { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-width: 0; padding: 9px 10px; border: 1px solid #e1e9f8; border-radius: 6px; background: #fff; color: #6f88ac; text-decoration: none; font-size: 12px; line-height: 1.5; }
.news-side-tag span { overflow-wrap: anywhere; }
.news-side-tag em { flex-shrink: 0; color: #9caeca; font-size: 11px; font-style: normal; }
.news-side-tag.active { color: #2870ff; border-color: #d4e2ff; background: #ecf3ff; }
.news-side-tag:hover { color: #2870ff; border-color: #b8d2ff; background: #f1f6ff; }
.news-side-tag[hidden], .news-side-tag-group[hidden], .news-side-empty[hidden] { display: none; }
.news-side-list { padding: 0; margin: 0; list-style: none; }
.news-side-list li { padding: 0; border-bottom: 1px solid #e9eef7; }
.news-side-list li a { display: flex; align-items: flex-start; gap: 9px; padding: 16px 0; color: #6c89b0; font-size: 12px; line-height: 1.9; text-decoration: none; }
.news-side-list .q-icon { display: inline-flex; align-items: center; justify-content: center; width: 21px; height: 21px; flex-shrink: 0; margin-top: 1px; border-radius: 4px; color: #5081d3; background: #edf3ff; font-size: 12px; font-weight: 600; }
.news-side-list-title { flex: 1; min-width: 0; overflow-wrap: anywhere; }
.news-side-arrow { align-self: center; color: #8fa8cc; }
.news-side-list a:hover, .news-side-more:hover { color: #2870ff; }
.news-side-foot { margin: 16px 0 0; }
.news-side-empty { margin: 12px 0 0; }
.news-side-guides { display: grid; gap: 10px; }
.news-side-guide { display: flex; flex-direction: column; gap: 10px; min-width: 0; padding: 14px 12px; border: 1px solid #e1e9f8; border-radius: 6px; background: #f9fbff; color: #5e80af; text-decoration: none; }
.news-side-guide:hover { border-color: #b8d2ff; background: #f1f6ff; }
.news-side-guide-title { position: relative; display: block; min-width: 0; padding-left: 24px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 13px; line-height: 1.7; }
.news-side-guide-title svg { position: absolute; top: 3px; left: 0; color: #87a9de; }
.news-side-guide-desc { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; min-width: 0; overflow: hidden; overflow-wrap: anywhere; color: #8ca1bf; font-size: 12px; line-height: 1.8; }
.news-side-guide-more { display: flex; justify-content: space-between; margin-top: 12px; font-size: 11px; }

/* 列表页选项卡占满两栏，侧栏与列表正文对齐。 */
.new-main-container .news-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 24px 26px; padding: 0; }
.news-layout > .new-tab-row { grid-column: 1 / -1; margin-bottom: 0; padding-bottom: 0; border-bottom: 1px solid #dce5f4; }
.news-layout .new-tab-container { border: 0; }
.news-layout .new-tab-btn.active { color: #2870ff !important; border-bottom: 2px solid #4387ff !important; }
.news-layout .new-search-form { position: relative; width: 268px; max-width: 100%; margin-bottom: 10px; }
.news-layout .new-search-form input:not([type="hidden"]) { box-sizing: border-box; width: 100%; height: 36px; padding: 0 12px 0 34px; border: 1px solid #dce5f4; border-radius: 6px; background: #fff; color: #465b78; font-size: 12px; }
.news-layout .new-search-form input::placeholder { color: #7d8ea8; opacity: 1; }
.news-layout .new-search-form input:focus { border-color: #9bbcf6; outline: none; box-shadow: 0 0 0 2px rgba(67, 135, 255, .08); }
.news-layout .new-search-form .news-search-submit { position: absolute; top: 50%; left: 10px; display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; padding: 0; border: 0; border-radius: 3px; background: transparent; color: #91a7c6; transform: translateY(-50%); cursor: pointer; }
.news-layout .new-search-form .news-search-submit:hover { color: #5081ed; }
.news-layout .new-search-form .news-search-submit:focus-visible { outline: 2px solid #9bbcf6; outline-offset: 2px; }
.news-list-head { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; color: #8b9bb5; font-size: 12px; }
.news-list-head strong { color: #35577f; font-weight: 400; }
.news-article-list { padding: 0 22px; border: 1px solid #e2eaf8; border-radius: 12px; }
.news-article-list .new-announcement-content { min-width: 0; }
.news-article-list .new-announcement-item:last-child { border-bottom: 0 !important; }
.news-article-list > .news-side-empty { margin: 20px 0; }
.news-list-tags { display: inline-flex; flex-wrap: wrap; gap: 6px; margin-left: 14px; }
.news-list-tags span, .news-list-tags a, .faq-chip { padding: 2px 6px; border-radius: 3px; background: #f0f5fc; color: #7d99bf; font-size: 11px; }
.news-list-tags a { text-decoration: none; }
.news-list-tags a:hover { color: #2870ff; background: #e6efff; }
.news-layout .new-announcement-title a { color: inherit; text-decoration: none; }
.news-layout .new-announcement-title a:hover { color: #2870ff; }
.news-layout .new-cover-link { flex-shrink: 0; }
.news-layout .new-announcement-date { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.news-layout .news-list-tags { margin-left: 6px; }
.news-layout .new-read-more { margin-left: auto; color: #8b9bb5; font-size: 11px; text-decoration: none; }
.news-layout .new-read-more:hover { color: #2870ff; }
.content-topic-intro { padding: 20px 24px; margin-bottom: 16px; border: 1px solid #e2eaff; border-radius: 8px; background: #f6f9ff; color: #6f88ac; font-size: 12px; line-height: 1.8; }
.content-topic-intro h2 { margin: 0 0 6px; color: #17365a; font-size: 20px; }
.content-topic-intro p { margin: 6px 0; overflow-wrap: anywhere; }
.content-topic-intro a { color: #2870ff; text-decoration: none; }
.content-topic-intro a:hover { text-decoration: underline; }
.content-topic-intro .content-topic-open { display: inline-block; margin-left: 18px; }
.content-topic-links { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0; }
.content-topic-links a { color: #2870ff; text-decoration: none; }
.content-topic-links a:hover { text-decoration: underline; }
.content-topic-intro .content-topic-count { margin-bottom: 0; color: #8b9bb5; }
.news-layout .news-side { width: 300px; }
.news-layout .faq-item { scroll-margin-top: 100px; }
.faq-reference .faq-reference-link { color: #2870ff; text-decoration: none; overflow-wrap: anywhere; }
.faq-reference .faq-reference-link:hover { text-decoration: underline; }
@media (max-width: 1000px) {
    .new-main-container .news-layout { grid-template-columns: minmax(0, 1fr); padding: 20px; }
    .news-layout .news-side { width: 100%; }
}
@media (max-width: 600px) {
    .news-article-list { padding: 0 16px; }
    .content-topic-intro { padding: 16px; }
    .news-layout .new-tab-row { gap: 12px; }
    .news-layout .new-tab-btn { padding: 10px 12px !important; }
    .news-layout .new-search-form { width: 100%; }
    .news-layout .new-search-form input:not([type="hidden"]) { width: 100%; min-width: 0; }
    .news-layout .new-search-form button { flex-shrink: 0; }
}
