/* ========== 统一排版字号规范 ========== */
/*
 * 11px: 徽章计数、极次要信息
 * 12px: 导航、标签页、面包屑、标签按钮、日期、元信息、小UI元素
 * 13px: 列表正文、侧栏链接、描述文字、次要正文
 * 14px: 标签云项、摘要文字、搜索输入框
 * 15px: 文章正文、结果标题、侧栏卡片标题
 * 16px: 侧栏区块标题、单页正文
 * 18px: 区块标题、列表页首条标题、空状态标题
 * 20px: 空状态主标题、正文h2
 * 22px: 页面主标题、首页首条标题
 * 24px: 文章详情标题
 * 26px: 搜索/标签页主标题
 * 32px: 标签统计数字
 */

body { background: #eee; }
.dropdown-menu { z-index: 99999; }
/* 顶部状态栏 */
.top-bar { border-bottom: 1px solid rgba(255,255,255,0.1); font-size: 12px; }
.top-bar-welcome { opacity: 0.85; }
.top-bar .input-group input { background: rgba(255,255,255,0.1); border: 1px solid rgba(255,255,255,0.2); color: #fff; font-size: 12px; }
.top-bar .input-group input::placeholder { color: rgba(255,255,255,0.5); }
.top-bar .input-group input:focus { background: rgba(255,255,255,0.15); border-color: rgba(255,255,255,0.4); color: #fff; box-shadow: none; }
.top-bar .btn-warning { background: #b58b31; border-color: #b58b31; color: #fff; }
.top-bar .btn-warning:hover { background: #9a7528; border-color: #9a7528; }
.top-bar .btn-outline-light { border-color: rgba(255,255,255,0.3); font-size: 12px; }
.top-bar .btn-outline-light:hover { background: rgba(255,255,255,0.1); border-color: rgba(255,255,255,0.5); }
.navbar.bg-primary { background: #fff !important; border-bottom: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.12) !important; }
.navbar .container, footer .container, .top-bar .container { max-width: 760px; }
.navbar-dark .navbar-brand, .navbar-dark .navbar-nav .nav-link { color: #24364b !important; }
.navbar-dark .navbar-nav .nav-link { font-size: 14px; padding-left: 12px; padding-right: 12px; white-space: nowrap; }
.navbar-brand { font-family: Georgia, serif; letter-spacing: .5px; }
.navbar-toggler { border-color: #ced4da; filter: invert(1); }
.navbar-nav { flex-wrap: wrap; }
.nav-item.dropdown { position: relative; }
.dropdown-menu { z-index: 99999; min-width: 160px; }
.dropdown-item { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 220px; }
footer.bg-dark { background: #fff !important; color: #223 !important; border-top: 1px solid #d8d8d8; margin-top: 28px !important; }
footer .text-white, footer h5, footer h6 { color: #0b2d4f !important; }
footer .text-secondary, footer a.text-secondary, footer p { color: #667085 !important; }
footer form, footer .social-icon { display: none !important; }
.main-content > .container { max-width: 760px; padding-top: 16px !important; }
.sf-home { font-family: "Noto Sans TC", "Noto Sans SC", Arial, sans-serif; color: #222; }
.sf-card { background: #fff; border: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.08); margin-bottom: 16px; }
.sf-card-body { padding: 14px; }
.sf-section-head { display: flex; align-items: center; justify-content: space-between; border-bottom: 2px solid #e7eef7; padding: 10px 12px 8px; }
.sf-section-title { margin: 0; color: #0b4b85; font-size: 18px; font-weight: 800; line-height: 1; border-left: 4px solid #0b4b85; padding-left: 8px; }
.sf-tabs { display: flex; gap: 6px; flex-wrap: wrap; }
.sf-tab { color: #b58b31; border: 1px solid #ead9ad; background: #fffaf0; font-size: 12px; line-height: 1; padding: 5px 8px; text-decoration: none; }
.sf-more { color: #caa047; font-size: 12px; text-decoration: none; }
.sf-img { width: 100%; object-fit: cover; background: #e6e6e6; display: block; }
.sf-title { color: #111; text-decoration: none; font-weight: 700; line-height: 1.35; }
.sf-title:hover { color: #0b4b85; }
.sf-desc { color: #777; font-size: 13px; line-height: 1.55; margin: 8px 0 0; }
.sf-date { color: #999; font-size: 12px; white-space: nowrap; }
.sf-top-grid { display: grid; grid-template-columns: minmax(0, 2fr) 300px; gap: 16px; }
.sf-lead-img { aspect-ratio: 16 / 9; }
.sf-lead-title { display: block; font-size: 22px; margin: 12px 0 4px; }
.sf-sub-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 14px; }
.sf-sub-img { aspect-ratio: 16 / 10; margin-bottom: 8px; }
.sf-side-list { list-style: none; padding: 0; margin: 0; }
.sf-side-list li { padding: 8px 0; border-bottom: 1px dotted #ddd; display: flex; gap: 8px; }
.sf-side-list li::before { content: ""; width: 5px; height: 5px; background: #d4a13a; border-radius: 50%; margin-top: 8px; flex: 0 0 5px; }
.sf-side-list a { color: #333; font-size: 13px; text-decoration: none; line-height: 1.45; }
.sf-side-list a:hover { color: #0b4b85; }
.sf-row-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.sf-row-img { aspect-ratio: 16 / 10; margin-bottom: 7px; }
.sf-row-title { font-size: 13px; display: block; }
.sf-two-col { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.sf-news-list { list-style: none; padding: 0; margin: 0; }
.sf-news-list li { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 10px; padding: 9px 0; border-bottom: 1px dotted #ddd; }
.sf-news-list li:last-child { border-bottom: 0; }
.sf-list-img { aspect-ratio: 3 / 2; }
.sf-list-title { display: block; font-size: 13px; }
.sf-mixed { display: grid; grid-template-columns: minmax(0, 2fr) 280px; gap: 16px; }
.sf-feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.sf-feature-img { aspect-ratio: 16 / 10; margin-bottom: 8px; }
.sf-logo-footer { text-align: center; color: #0b2d4f; font-family: Georgia, serif; font-size: 22px; font-weight: 700; letter-spacing: 1px; padding: 36px 0 8px; }
.sf-empty { color: #aaa; font-size: 13px; padding: 12px 0; }
@media (max-width: 991px) {
    .sf-top-grid, .sf-mixed, .sf-two-col { grid-template-columns: 1fr; }
    .sf-row-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
    .sf-row-grid, .sf-sub-grid, .sf-feature-grid { grid-template-columns: 1fr; }
    .sf-news-list li { grid-template-columns: 74px minmax(0, 1fr); }
}

.sl-page { color: #222; }
.sl-hero { background: #fff; border: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.08); margin-bottom: 0; padding: 14px; }
.sl-hero-inner { min-height: 92px; background: linear-gradient(135deg, #063b78 0%, #0b67ad 55%, #07345f 100%); display: flex; flex-direction: column; align-items: center; justify-content: center; color: #fff; text-align: center; }
.sl-hero h1 { font-size: 22px; font-weight: 800; margin: 0; letter-spacing: 1px; }
.sl-hero p { font-size: 12px; opacity: .82; margin: 8px auto 0; max-width: 620px; line-height: 1.5; }
.sl-tabs-card { background: #fff; border-left: 1px solid #ddd; border-right: 1px solid #ddd; border-bottom: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.06); margin-bottom: 16px; padding: 10px 14px; }
.sl-tabs { display: flex; justify-content: center; gap: 7px; flex-wrap: wrap; }
.sl-tab { color: #b58b31; border: 1px solid #ead9ad; background: #fffaf0; font-size: 12px; line-height: 1; padding: 5px 9px; text-decoration: none; }
.sl-tab:hover, .sl-tab.active { background: #0b4b85; border-color: #0b4b85; color: #fff; }
.sl-top-card, .sl-list-card { background: #fff; border: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.08); margin-bottom: 16px; padding: 14px; }
.sl-top-grid { display: grid; grid-template-columns: minmax(0, 2fr) 220px; gap: 14px; }
.sl-img { width: 100%; object-fit: cover; background: #e6e6e6; display: block; }
.sl-lead-img { aspect-ratio: 16 / 9; }
.sl-side-feature { display: grid; gap: 12px; }
.sl-side-img { aspect-ratio: 16 / 10; margin-bottom: 7px; }
.sl-title { color: #111; text-decoration: none; font-weight: 700; line-height: 1.35; }
.sl-title:hover { color: #0b4b85; }
.sl-lead-title { display: block; font-size: 18px; margin-top: 7px; }
.sl-side-title { display: block; font-size: 13px; }
.sl-desc { color: #777; font-size: 13px; line-height: 1.55; margin: 7px 0 0; }
.sl-meta { display: flex; align-items: center; gap: 8px; color: #999; font-size: 12px; margin: 6px 0 4px; line-height: 1.2; }
.sl-meta span { color: #b58b31; }
.sl-meta em { font-style: normal; }
.sl-section-head { display: flex; align-items: center; justify-content: space-between; border-bottom: 2px solid #e7eef7; margin: -2px 0 12px; padding-bottom: 8px; }
.sl-section-head h2 { margin: 0; color: #0b4b85; font-size: 18px; font-weight: 800; line-height: 1; border-left: 4px solid #0b4b85; padding-left: 8px; }
.sl-section-head span { color: #b58b31; font-size: 12px; }
.sl-news-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 12px; row-gap: 18px; }
.sl-news-item { min-width: 0; }
.sl-thumb-link { display: block; }
.sl-thumb { aspect-ratio: 16 / 10; margin-bottom: 6px; }
.sl-news-title { display: block; font-size: 13px; }
.sl-pagination { display: flex; justify-content: center; margin: 28px 0 10px; }
.sl-empty { text-align: center; color: #888; padding: 48px 0; }
.sl-empty i { font-size: 42px; color: #b8b8b8; }
.sl-empty h3 { font-size: 18px; margin: 12px 0 6px; }
.sl-empty p { margin: 0; font-size: 13px; }
@media (max-width: 991px) {
    .sl-top-grid { grid-template-columns: 1fr; }
    .sl-side-feature { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sl-news-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 575px) {
    .sl-news-grid, .sl-side-feature { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sl-top-card, .sl-list-card, .sl-hero { padding: 10px; }
}

.sd-page { color: #222; }
.sd-tabs-card { background: #fff; border: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.06); margin-bottom: 16px; padding: 10px 14px; }
.sd-tabs { display: flex; justify-content: center; gap: 7px; flex-wrap: wrap; }
.sd-tab { color: #b58b31; border: 1px solid #ead9ad; background: #fffaf0; font-size: 12px; line-height: 1; padding: 5px 9px; text-decoration: none; }
.sd-tab:hover, .sd-tab.active { background: #0b4b85; border-color: #0b4b85; color: #fff; }
.sd-layout { display: grid; grid-template-columns: minmax(0, 1fr) 250px; gap: 16px; align-items: start; }
.sd-article-card { background: #fff; border: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.08); padding: 18px 20px 22px; }
.sd-breadcrumb { color: #999; font-size: 12px; margin-bottom: 12px; }
.sd-breadcrumb a { color: #777; text-decoration: none; }
.sd-breadcrumb a:hover { color: #0b4b85; }
.sd-breadcrumb span { margin: 0 6px; color: #bbb; }
.sd-article-head { border-bottom: 1px solid #e5e5e5; padding-bottom: 10px; margin-bottom: 12px; }
.sd-category { color: #b58b31; font-size: 12px; text-decoration: none; font-weight: 700; }
.sd-article-head h1 { color: #1b2f4b; font-size: 24px; font-weight: 800; line-height: 1.35; margin: 7px 0 8px; }
.sd-meta { color: #999; display: flex; flex-wrap: wrap; gap: 12px; font-size: 12px; }
.sd-cover { margin: 0 0 16px; }
.sd-cover img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; background: #e6e6e6; }
.sd-cover figcaption { color: #777; font-size: 12px; line-height: 1.5; margin-top: 7px; }
.sd-summary { background: #f7f9fb; border-left: 4px solid #0b4b85; color: #555; font-size: 14px; line-height: 1.75; padding: 10px 12px; margin: 14px 0 18px; }
.sd-content { color: #222; font-size: 15px; line-height: 2; }
.sd-content p { margin: 0 0 18px; }
.sd-content h2, .sd-content h3, .sd-content h4 { color: #0b2d4f; font-weight: 800; margin: 28px 0 12px; line-height: 1.4; }
.sd-content h2 { font-size: 20px; }
.sd-content h3 { font-size: 18px; }
.sd-content img { max-width: 100%; height: auto; display: block; margin: 14px auto; }
.sd-content table { width: 100%; border-collapse: collapse; margin: 16px 0; font-size: 13px; }
.sd-content th, .sd-content td { border: 1px solid #d9d9d9; padding: 8px; }
.sd-content th { background: #f0f4f8; color: #0b2d4f; }
.sd-tags { border-top: 1px solid #e5e5e5; margin-top: 24px; padding-top: 14px; display: flex; flex-wrap: wrap; gap: 8px; }
.sd-tags a { color: #b58b31; border: 1px solid #ead9ad; background: #fffaf0; font-size: 12px; padding: 5px 9px; text-decoration: none; }
.sd-share { margin-top: 18px; display: flex; gap: 8px; }
.sd-share button { border: 1px solid #d9d9d9; background: #fff; color: #555; font-size: 12px; padding: 6px 12px; }
.sd-share button:hover { border-color: #0b4b85; color: #0b4b85; }
.sd-prev-next { border-top: 1px solid #e5e5e5; margin-top: 20px; padding-top: 12px; display: grid; gap: 8px; }
.sd-prev-next a { color: #333; text-decoration: none; font-size: 13px; line-height: 1.5; }
.sd-prev-next a:hover { color: #0b4b85; }
.sd-prev-next span { color: #b58b31; display: inline-block; min-width: 54px; margin-right: 8px; }
.sd-related { border-top: 1px solid #e5e5e5; margin-top: 20px; padding-top: 14px; }
.sd-related h2 { color: #0b4b85; font-size: 18px; font-weight: 800; border-left: 4px solid #0b4b85; padding-left: 8px; margin: 0 0 12px; }
.sd-related-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.sd-related-grid a { background: #f8f8f8; color: #333; text-decoration: none; padding: 10px; }
.sd-related-grid a:hover { color: #0b4b85; }
.sd-related-grid span { display: block; font-size: 13px; font-weight: 700; line-height: 1.45; }
.sd-related-grid em { color: #999; font-size: 12px; font-style: normal; }
.sd-sidebar { display: grid; gap: 16px; }
.sd-ad-box { background: #fff; border: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.08); height: 250px; display: flex; align-items: center; justify-content: center; color: #ccc; font-size: 12px; }
.sd-ad-box-tall { height: 300px; }
.sd-side-card { background: #fff; border: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.08); padding: 12px; }
.sd-side-card h3 { color: #0b4b85; font-size: 16px; font-weight: 800; border-left: 4px solid #0b4b85; padding-left: 8px; margin: 0 0 10px; }
.sd-side-card ul { list-style: none; padding: 0; margin: 0; }
.sd-side-card li { border-bottom: 1px dotted #ddd; padding: 8px 0; display: flex; gap: 8px; }
.sd-side-card li:last-child { border-bottom: 0; }
.sd-side-card li::before { content: ""; width: 5px; height: 5px; background: #d4a13a; border-radius: 50%; flex: 0 0 5px; margin-top: 8px; }
.sd-side-card a { color: #333; font-size: 13px; line-height: 1.45; text-decoration: none; }
.sd-side-card a:hover { color: #0b4b85; }
@media (max-width: 991px) {
    .sd-layout { grid-template-columns: 1fr; }
    .sd-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sd-ad-box { display: none; }
}
@media (max-width: 575px) {
    .sd-article-card { padding: 14px; }
    .sd-article-head h1 { font-size: 22px; }
    .sd-related-grid, .sd-sidebar { grid-template-columns: 1fr; }
}

.si-page { color: #222; }
.si-tabs-card { background: #fff; border: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.06); margin-bottom: 24px; padding: 10px 14px; }
.si-tabs { display: flex; justify-content: center; gap: 18px; flex-wrap: wrap; }
.si-tab { color: #24364b; font-size: 13px; text-decoration: none; padding: 6px 4px; }
.si-tab:hover, .si-tab.active { color: #b58b31; }
.si-card { background: #fff; border: 1px solid #ddd; border-radius: 4px; box-shadow: 0 1px 6px rgba(0,0,0,.08); max-width: 760px; margin: 0 auto 48px; padding: 32px 38px; }
.si-breadcrumb { color: #999; font-size: 12px; margin-bottom: 18px; }
.si-breadcrumb a { color: #777; text-decoration: none; }
.si-breadcrumb a:hover { color: #0b4b85; }
.si-breadcrumb span { margin: 0 5px; }
.si-head { margin-bottom: 20px; }
.si-head h1 { color: #1b2f4b; font-size: 22px; font-weight: 800; line-height: 1.35; margin: 0; }
.si-head p { color: #666; font-size: 14px; line-height: 1.7; margin: 10px 0 0; }
.si-content { color: #222; font-size: 15px; line-height: 2; }
.si-content p { margin: 0 0 22px; }
.si-content h2, .si-content h3, .si-content h4 { color: #0b2d4f; font-weight: 800; margin: 28px 0 12px; line-height: 1.4; }
.si-content h2 { font-size: 20px; }
.si-content h3 { font-size: 18px; }
.si-content a { color: #0b4b85; }
.si-content img { max-width: 100%; height: auto; display: block; margin: 16px auto; }
.si-content table { width: 100%; border-collapse: collapse; margin: 18px 0; font-size: 13px; }
.si-content th, .si-content td { border: 1px solid #d9d9d9; padding: 9px; }
.si-content th { background: #f0f4f8; color: #0b2d4f; }
.si-logo-footer { text-align: center; color: #0b2d4f; font-family: Georgia, serif; font-size: 22px; font-weight: 700; letter-spacing: 1px; padding: 24px 0 6px; }
@media (max-width: 575px) {
    .si-card { padding: 22px 18px; }
    .si-tabs { gap: 10px; }
    .si-head h1 { font-size: 20px; }
    .si-content { font-size: 14px; }
}

.su-page, .tl-page, .td-page { color: #222; }
.su-tabs-card, .tl-tabs-card, .td-tabs-card { background: #fff; border: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.06); margin-bottom: 16px; padding: 10px 14px; }
.su-tabs, .tl-tabs, .td-tabs { display: flex; justify-content: center; gap: 7px; flex-wrap: wrap; }
.su-tab, .tl-tab, .td-tab { color: #24364b; border: 1px solid transparent; font-size: 12px; line-height: 1; padding: 6px 9px; text-decoration: none; }
.su-tab:hover, .tl-tab:hover, .td-tab:hover { color: #b58b31; border-color: #ead9ad; background: #fffaf0; }
.su-search-card, .tl-hero-card, .td-hero-card { background: #fff; border: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.08); margin-bottom: 16px; padding: 24px; text-align: center; }
.su-search-card h1, .tl-hero-card h1, .td-hero-card h1 { color: #1b2f4b; font-size: 26px; font-weight: 800; margin: 0 0 12px; }
.tl-hero-card p, .td-hero-card p { color: #666; font-size: 14px; line-height: 1.7; margin: 0 auto 10px; max-width: 620px; }
.tl-hero-card span, .td-hero-card span { color: #b58b31; font-size: 13px; }
.su-form { display: flex; max-width: 620px; margin: 0 auto; border: 1px solid #d9d9d9; background: #fff; }
.su-form input { flex: 1; border: 0; padding: 12px 14px; font-size: 14px; outline: none; }
.su-form button { border: 0; background: #0b4b85; color: #fff; padding: 0 24px; font-weight: 700; }
.su-result-meta { color: #777; font-size: 13px; margin-top: 12px; }
.su-result-meta strong { color: #0b2d4f; }
.su-result-meta span { color: #bbb; margin: 0 8px; }
.su-layout, .td-layout { display: grid; grid-template-columns: minmax(0, 1fr) 250px; gap: 16px; align-items: start; }
.su-filter-card, .su-results-card, .su-empty-card, .su-hot-card, .su-side-card, .tl-cloud-card, .tl-links-card, .td-list-card, .td-side-card { background: #fff; border: 1px solid #ddd; box-shadow: 0 1px 4px rgba(0,0,0,.08); padding: 14px; margin-bottom: 16px; }
.su-filter-card { display: flex; flex-wrap: wrap; gap: 8px; }
.su-filter { color: #b58b31; border: 1px solid #ead9ad; background: #fffaf0; font-size: 12px; padding: 6px 10px; text-decoration: none; }
.su-filter.active, .su-filter:hover { background: #0b4b85; border-color: #0b4b85; color: #fff; }
.su-filter span { margin-left: 4px; }
.su-section-head, .tl-section-head, .td-section-head { display: flex; align-items: center; justify-content: space-between; border-bottom: 2px solid #e7eef7; margin-bottom: 12px; padding-bottom: 8px; }
.su-section-head h2, .tl-section-head h2, .td-section-head h2 { margin: 0; color: #0b4b85; font-size: 18px; font-weight: 800; line-height: 1; border-left: 4px solid #0b4b85; padding-left: 8px; }
.su-section-head span, .tl-section-head span, .td-section-head span { color: #b58b31; font-size: 12px; }
.su-results-list { display: grid; gap: 10px; }
.su-result-item { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 12px; border-bottom: 1px dotted #ddd; padding: 10px 0; }
.su-result-item:last-child { border-bottom: 0; }
.su-result-type { color: #b58b31; font-size: 12px; font-weight: 700; }
.su-result-title { color: #111; display: block; font-size: 15px; font-weight: 800; line-height: 1.45; text-decoration: none; }
.su-result-title:hover { color: #0b4b85; }
.su-result-body p { color: #666; font-size: 13px; line-height: 1.6; margin: 5px 0; }
.su-result-body em { color: #999; font-size: 12px; font-style: normal; }
.su-empty-card { text-align: center; padding: 42px 18px; }
.su-empty-card h2 { color: #1b2f4b; font-size: 20px; font-weight: 800; }
.su-empty-card p { color: #777; font-size: 14px; }
.su-keywords, .su-hot-grid p, .su-tag-cloud, .tl-cloud, .td-tag-cloud { display: flex; flex-wrap: wrap; gap: 8px; }
.su-keywords a, .su-hot-grid a, .su-tag-cloud a, .tl-cloud a, .td-tag-cloud a { color: #b58b31; border: 1px solid #ead9ad; background: #fffaf0; font-size: 12px; padding: 6px 10px; text-decoration: none; }
.su-keywords a:hover, .su-hot-grid a:hover, .su-tag-cloud a:hover, .tl-cloud a:hover, .td-tag-cloud a:hover, .td-tag-cloud a.active { background: #0b4b85; border-color: #0b4b85; color: #fff; }
.su-hot-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.su-hot-grid h3 { color: #0b2d4f; font-size: 15px; font-weight: 800; margin: 0 0 10px; }
.su-side-card h3, .td-side-card h3 { color: #0b4b85; font-size: 16px; font-weight: 800; border-left: 4px solid #0b4b85; padding-left: 8px; margin: 0 0 10px; }
.su-side-card ul { list-style: none; padding: 0; margin: 0; }
.su-side-card li { border-bottom: 1px dotted #ddd; padding: 8px 0; display: flex; gap: 8px; }
.su-side-card li:last-child { border-bottom: 0; }
.su-side-card li::before { content: ""; width: 5px; height: 5px; background: #d4a13a; border-radius: 50%; flex: 0 0 5px; margin-top: 8px; }
.su-side-card li a { color: #333; font-size: 13px; line-height: 1.45; text-decoration: none; }
.su-side-card li a:hover { color: #0b4b85; }
.su-pagination, .tl-pagination, .td-pagination { display: flex; justify-content: center; margin: 24px 0 12px; }
.tl-cloud a { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; padding: 8px 12px; }
.tl-cloud a em, .td-tag-cloud a em { background: #d4a13a; color: #fff; border-radius: 999px; font-size: 11px; font-style: normal; min-width: 20px; padding: 1px 6px; text-align: center; }
.tl-link-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.tl-link-grid a { background: #f8f8f8; border: 1px solid #eee; color: #333; padding: 14px; text-decoration: none; }
.tl-link-grid a:hover { border-color: #0b4b85; }
.tl-link-grid strong { color: #0b2d4f; display: block; font-size: 15px; margin-bottom: 6px; }
.tl-link-grid span { color: #777; font-size: 12px; line-height: 1.5; }
.td-news-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.td-news-item { min-width: 0; }
.td-thumb { width: 100%; height: 135px; object-fit: cover; background: #e6e6e6; display: block; margin-bottom: 8px; }
.td-meta { color: #999; display: flex; flex-wrap: wrap; gap: 8px; font-size: 11px; margin-bottom: 4px; }
.td-meta span { color: #b58b31; }
.td-meta em { font-style: normal; }
.td-title { color: #111; display: block; font-size: 14px; font-weight: 800; line-height: 1.45; text-decoration: none; }
.td-title:hover { color: #0b4b85; }
.td-news-item p { color: #666; font-size: 12px; line-height: 1.5; margin: 5px 0 0; }
.td-count { text-align: center; background: #f8f8f8; padding: 18px; }
.td-count strong { color: #0b4b85; display: block; font-size: 32px; line-height: 1; }
.td-count span { color: #777; font-size: 13px; }
.td-back { background: #0b4b85; color: #fff; display: block; font-size: 13px; padding: 10px; text-align: center; text-decoration: none; }
.td-back:hover { color: #fff; background: #07345f; }
.td-empty { color: #777; text-align: center; padding: 42px 0; }
.td-empty h3 { color: #1b2f4b; font-size: 18px; font-weight: 800; }

/* ========== 全局响应式优化 ========== */

/* 大屏幕优化 */
@media (min-width: 1200px) {
    .navbar .container, footer .container, .top-bar .container, .main-content > .container { max-width: 960px; }
}

@media (min-width: 1400px) {
    .navbar .container, footer .container, .top-bar .container, .main-content > .container { max-width: 1140px; }
}

/* 平板横屏优化 */
@media (max-width: 991px) {
    .navbar .container, footer .container, .top-bar .container, .main-content > .container { max-width: 100%; }
    .sf-top-grid, .sf-mixed, .sf-two-col { grid-template-columns: 1fr; }
    .sf-row-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sl-top-grid { grid-template-columns: 1fr; }
    .sl-side-feature { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sl-news-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .sd-layout { grid-template-columns: 1fr; }
    .sd-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sd-ad-box { display: none; }
    .su-layout, .td-layout { grid-template-columns: 1fr; }
    .su-sidebar, .td-sidebar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
    .tl-link-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* 平板竖屏优化 */
@media (max-width: 767px) {
    .navbar .container, footer .container, .top-bar .container, .main-content > .container { max-width: 100%; padding-left: 12px !important; padding-right: 12px !important; }
    .sf-row-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sl-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sl-side-feature { grid-template-columns: 1fr; }
    .sd-sidebar { grid-template-columns: 1fr; }
    .su-sidebar, .td-sidebar { grid-template-columns: 1fr; }
    .sd-article-card { padding: 16px; }
    .sd-article-head h1 { font-size: 22px; }
    .si-card { padding: 24px 20px; }
    .si-head h1 { font-size: 24px; }
    .su-search-card, .tl-hero-card, .td-hero-card { padding: 18px; }
    .su-search-card h1, .tl-hero-card h1, .td-hero-card h1 { font-size: 22px; }
    .tl-link-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    footer .container { padding-left: 12px !important; padding-right: 12px !important; }
}

/* 手机优化 */
@media (max-width: 575px) {
    /* 全局间距 */
    .navbar .container, footer .container, .top-bar .container, .main-content > .container { padding-left: 10px !important; padding-right: 10px !important; }
    .main-content > .container { padding-top: 12px !important; }
    .top-bar { display: none; }
    
    /* 导航栏 */
    .navbar .container { padding-top: 6px !important; padding-bottom: 6px !important; }
    .navbar-brand span { font-size: 14px; }
    .navbar-dark .navbar-nav .nav-link { font-size: 11px; padding-left: 6px; padding-right: 6px; }
    .dropdown-menu { min-width: 180px; }
    .dropdown-item { font-size: 12px; padding: 6px 12px; }
    
    /* 首页模块 */
    .sf-row-grid, .sf-sub-grid, .sf-feature-grid { grid-template-columns: 1fr; }
    .sf-news-list li { grid-template-columns: 74px minmax(0, 1fr); }
    .sf-section-title { font-size: 16px; }
    .sf-card-body { padding: 12px; }
    .sf-section-head { padding: 8px 10px 6px; }
    
    /* 文章列表页 */
    .sl-news-grid, .sl-side-feature { grid-template-columns: 1fr; }
    .sl-top-card, .sl-list-card, .sl-hero { padding: 10px; }
    .sl-hero h1 { font-size: 20px; }
    .sl-section-head h2 { font-size: 16px; }
    
    /* 文章详情页 */
    .sd-article-card { padding: 14px; }
    .sd-article-head h1 { font-size: 22px; }
    .sd-related-grid, .sd-sidebar { grid-template-columns: 1fr; }
    .sd-content { font-size: 14px; line-height: 1.8; }
    .sd-content h2 { font-size: 18px; }
    .sd-content h3 { font-size: 16px; }
    .sd-meta { gap: 8px; font-size: 11px; }
    .sd-tabs-card { padding: 8px 10px; }
    .sd-tab { font-size: 11px; padding: 4px 7px; }
    
    /* 单页 */
    .si-card { padding: 22px 18px; }
    .si-tabs { gap: 10px; }
    .si-head h1 { font-size: 20px; }
    .si-content { font-size: 14px; }
    
    /* 搜索/标签页 */
    .su-form { display: block; border: 0; }
    .su-form input { border: 1px solid #d9d9d9; width: 100%; margin-bottom: 8px; }
    .su-form button { margin-top: 8px; padding: 10px 20px; width: 100%; }
    .su-result-item { grid-template-columns: 1fr; }
    .su-hot-grid { grid-template-columns: 1fr; }
    .tl-link-grid { grid-template-columns: 1fr; }
    .td-news-grid { grid-template-columns: 1fr; }
    
    /* 页脚 */
    footer .container { padding-left: 10px !important; padding-right: 10px !important; }
    footer .row > [class*="col-"] { margin-bottom: 16px; }
}

/* 小屏手机优化 */
@media (max-width: 374px) {
    .sl-news-grid { grid-template-columns: 1fr; }
    .sf-row-grid { grid-template-columns: 1fr; }
    .navbar-brand span { font-size: 13px; }
}

/* 触摸设备优化 */
@media (hover: none) and (pointer: coarse) {
    .sf-tab, .sl-tab, .sd-tab, .su-tab, .tl-tab, .td-tab,
    .su-filter, .su-tag-cloud a, .tl-cloud a, .td-tag-cloud a {
        padding: 8px 12px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    .sf-news-list li, .su-result-item { padding: 12px 0; }
    .dropdown-item { padding: 10px 16px; }
}

/* 打印样式 */
@media print {
    .navbar, footer, .sd-sidebar, .sd-share, .sd-prev-next, .sd-related,
    .sl-tabs-card, .sd-tabs-card, .si-tabs-card { display: none !important; }
    .sd-content { font-size: 12pt; line-height: 1.5; }
    .sd-content a { color: #000; text-decoration: underline; }
}
