/* ============================================
   宁财同心 统一战线 - 主样式表
   ============================================ */

/* ---------- 基础重置 ---------- */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior: smooth; }
body { font-family:"Microsoft YaHei","PingFang SC",sans-serif; color:#333; background:#f5f5f5; line-height:1.6; font-size:14px; }
a { text-decoration:none; color:inherit; transition:color .25s; }
a:hover { color:#b71c1c; }
ul, ol { list-style:none; }
img { max-width:100%; display:block; }

.container { width:100%; max-width:1200px; margin:0 auto; padding:0 16px; }
.flex-between { display:flex; align-items:center; justify-content:space-between; }

/* ---------- 头部（包含快捷入口 + LOGO + 背景图） ---------- */
.header { background:#fff; position:relative; overflow:hidden; }
.header-bg-decor { position:absolute; top:5; right:0; width:45%; height:100%; background:url('../images/top_bj1.png') right 250px  top 20px no-repeat; pointer-events:none; z-index:0; }

/* 顶部快捷入口（在背景图上方） */
.top-bar { position:relative; z-index:1; font-size:12px; color:#666; padding:5px 0; margin-top:20px }
.top-bar-inner { display:flex; justify-content:flex-end; align-items:center; }
.top-links a { color:#666; margin:0 6px; text-decoration:none; }
.top-links a:hover { color:#cc0000; }
.top-links .sep { color:#ccc; margin:0 2px; }

/* LOGO 区域 */
.header-inner { position:relative; z-index:1; display:flex; align-items:center; padding:2px 0 14px; }
.logo-area img { height:120px; width:auto; display:block; object-fit:contain; }

/* ---------- 导航栏 ---------- */
.main-nav { background:#1c4a8a; position:relative; z-index:100; }
.main-nav .container { display:flex; align-items:center; }
.nav-list { display:flex; align-items:center; width:100%; }
.nav-item { flex:1; text-align:center; }
.nav-item a { display:block; color:#fff; padding:13px 10px; font-size:18px; font-weight:500; white-space:nowrap; transition:background .2s; }
.nav-item a:hover { background:rgba(255,255,255,.12); }
.nav-item.active a { background:#e8380d; }
.menu-toggle { display:none; background:none; border:none; color:#fff; font-size:20px; cursor:pointer; padding:10px; }

/* ---------- 通用区块 ---------- */
.section { padding:36px 0; }
.section-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:24px; }
.section-title { font-size:22px; font-weight:700; color:#222; display:flex; align-items:center; gap:8px; }
.title-dot { display:inline-block; width:7px; height:7px; border-radius:50%; background:#b71c1c; position:relative; }
.title-dot::after { content:''; position:absolute; top:-3px; left:-3px; width:13px; height:13px; border-radius:50%; border:2px solid rgba(183,28,28,.25); }
.more-link { display:flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:50%; border:1px solid #ccc; color:#999; font-size:14px; transition:all .25s; }
.more-link:hover { border-color:#b71c1c; color:#b71c1c; transform:rotate(180deg); }

/* ========== 校园要闻 ========== */
.news-section { background:#f8f8f8; }
.news-grid { display:grid; grid-template-columns:6fr 4fr; gap:24px; align-items:start; }
.news-featured { position:relative; border-radius:6px; overflow:hidden; box-shadow:0 2px 16px rgba(0,0,0,.08); height:420px; }
.featured-slider { width:100%; height:100%; position:relative; }
.featured-slide { position:absolute; top:0; left:0; width:100%; height:100%; opacity:0; transition:opacity .6s ease; background:#eee; }
.featured-slide.active { opacity:1; z-index:2; }
.featured-slide img { width:100%; height:100%; object-fit:cover; }
.featured-caption { position:absolute; bottom:0; left:0; right:0; background:linear-gradient(to top,rgba(183,28,28,.92),transparent); padding:30px 16px 14px; }
.featured-tag { color:#fff; font-size:16px; line-height:1.55; text-shadow:0 1px 3px rgba(0,0,0,.35); }
.featured-nav-dots { display:flex; gap:6px; margin-top:10px; }
.f-dot { width:8px; height:8px; border-radius:50%; background:rgba(255,255,255,.4); cursor:pointer; transition:all .25s; }
.f-dot.active, .f-dot:hover { background:#ffeb3b; transform:scale(1.2); }
.feat-btn { position:absolute; top:50%; transform:translateY(-50%); z-index:5; width:30px; height:30px; border-radius:50%; background:rgba(0,0,0,.4); color:#fff; border:none; cursor:pointer; font-size:11px; display:flex; align-items:center; justify-content:center; transition:background .25s; }
.feat-btn:hover { background:rgba(0,0,0,.65); }
.feat-prev { left:8px; }
.feat-next { right:8px; }

/* 右侧新闻列表 */
.news-list-side { display:flex; flex-direction:column; gap:0; }
.side-news-list { display:flex; flex-direction:column; gap:16px; flex:1; }
.side-news-item { display:flex; gap:14px; align-items:flex-start; padding-bottom:16px; border-bottom:1px dashed #e0e0e0; transition:transform .2s; }
.side-news-item:last-child { border-bottom:none; }
.side-news-item:hover { transform:translateX(4px); }
.side-news-date { flex-shrink:0; width:48px; height:52px; border-radius:4px; background:#fff; border:1px solid #e8e8e8; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.date-num { font-size:20px; font-weight:700; color:#b71c1c; line-height:1; }
.date-month { font-size:11px; color:#999; margin-top:2px; }
.side-news-info { flex:1; min-width:0; }
.side-news-title { font-size:18px; color:#333; line-height:1.5; display:block; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.side-news-title:hover { color:#b71c1c; }
.side-news-desc { font-size:12px; color:#999; margin-top:5px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; line-height:1.5; }

/* ========== 通知公告 ========== */
.notice-section { background:#fff; }
.notice-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.notice-card { display:flex; align-items:flex-start; gap:14px; padding:16px; border-radius:6px; background:#fafafa; border:1px solid #f0f0f0; transition:all .25s; }
.notice-card:hover { border-color:#b71c1c; box-shadow:0 4px 14px rgba(183,28,28,.1); transform:translateY(-2px); }
.notice-date-circle { flex-shrink:0; width:54px; height:54px; border-radius:50%; background:linear-gradient(135deg,#b71c1c,#d32f2f); display:flex; flex-direction:column; align-items:center; justify-content:center; color:#fff; text-align:center; }
.nc-day { font-size:20px; font-weight:700; line-height:1; }
.nc-ym { font-size:10px; margin-top:2px; opacity:.85; }
.notice-info { flex:1; min-width:0; }
.notice-title { font-size:13.5px; color:#444; line-height:1.55; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.notice-title:hover { color:#b71c1c; }

/* ========== 专题专栏 ========== */
.topic-section { background:#f8f8f8; padding-bottom:46px; }
.topic-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.topic-card { display:block; border-radius:6px; overflow:hidden; transition:all .3s; box-shadow:0 3px 10px rgba(0,0,0,.12); }
.topic-card:hover { transform:translateY(-4px); box-shadow:0 8px 24px rgba(0,0,0,.18); }
.topic-img { background:none; height:auto; }
.topic-img img { width:100%; display:block; object-fit:cover; }

/* ========== 页脚 ========== */
.footer { color:#fff; }
.footer-top { background:linear-gradient(135deg,#b71c1c,#a31515); padding:36px 0 26px; }
.footer-grid { display:flex; justify-content:space-between; align-items:center; gap:30px; }
.footer-col h4 { font-size:16px; font-weight:600; margin-bottom:14px; color:#fff; }
.footer-col p { font-size:13px; color:rgba(255,255,255,.78); margin-bottom:8px; line-height:1.7; }
.footer-col p i { width:16px; margin-right:6px; }
.footer-logo-col { display:flex; align-items:center; gap:14px; flex-shrink:0; }
.footer-logo-icon { flex-shrink:0; }
.footer-logo-icon img { height:80px; width:auto; object-fit:contain; }
.footer-logo-text h3 { font-size:20px; font-weight:700; letter-spacing:2px; margin-bottom:2px; }
.footer-logo-text p { font-size:12px; color:rgba(255,255,255,.6); margin:0; }
.footer-contact-col { text-align:right; }
.footer-bottom { background:#8e0000; padding:12px 0; font-size:12px; color:rgba(255,255,255,.6); }
.footer-bottom .container { gap:16px; flex-wrap:wrap; justify-content:center; }

/* ========== 列表页 ========== */
.list-section { background:#fff; }
.breadcrumb { font-size:14px; color:#666; padding:16px 0; border-bottom:1px solid #eee; margin-bottom:20px; }
.breadcrumb a { color:#1c4a8a; }
.breadcrumb a:hover { color:#b71c1c; }

.sub-nav { display:flex; gap:0; margin-bottom:24px; border-bottom:2px solid #1c4a8a; }
.sub-nav-item { padding:10px 20px; font-size:15px; color:#333; background:#fff; border:1px solid #ddd; border-bottom:none; margin-bottom:-2px; transition:all .25s; }
.sub-nav-item a { color:#333; }
.sub-nav-item.active { background:#1c4a8a; border-color:#1c4a8a; }
.sub-nav-item.active a { color:#fff; }
.sub-nav-item:hover { background:#e8f0fe; }

.list-content { display:flex; flex-direction:column; gap:0; }
.list-item { display:flex; align-items:center; gap:14px; padding:14px 0; border-bottom:1px dashed #e0e0e0; transition:transform .2s; }
.list-item:last-child { border-bottom:none; }
.list-item:hover { transform:translateX(4px); }
.list-item-date { flex-shrink:0; width:54px; height:54px; border-radius:50%; background:linear-gradient(135deg,#b71c1c,#d32f2f); display:flex; flex-direction:column; align-items:center; justify-content:center; color:#fff; }
.list-item-info { flex:1; min-width:0; }
.list-item-title { font-size:16px; color:#333; line-height:1.6; display:block; }
.list-item-title:hover { color:#b71c1c; }

.pagination { text-align:center; padding:20px 0; font-size:14px; color:#666; }
.pagination strong { color:#b71c1c; }
.pagination a { color:#1c4a8a; margin:0 6px; }
.pagination a:hover { color:#b71c1c; }

/* ========== 详情页 ========== */
.show-section { background:#fff; }
.show-article { padding:20px 0; }
.show-title { font-size:24px; font-weight:700; color:#222; line-height:1.4; margin-bottom:16px; text-align:center; }
.show-meta { text-align:center; font-size:13px; color:#999; padding-bottom:20px; border-bottom:1px solid #eee; margin-bottom:24px; }
.show-meta span { margin:0 16px; }
.show-meta i { margin-right:4px; }
.show-body { font-size:16px; line-height:1.8; color:#333; }
.show-body p { margin-bottom:16px; }
.show-body img { max-width:100%; height:auto; margin:16px auto; border-radius:4px; }

/* ============================================
   响应式适配
   ============================================ */
@media (max-width:1024px) {
    .nav-item a { padding:12px 8px; font-size:13px; }
    .notice-grid { grid-template-columns:repeat(2,1fr); }
    .topic-cards { grid-template-columns:repeat(2,1fr); }
    .footer-grid { flex-wrap:wrap; }
    .footer-contact-col { text-align:left; }
}

@media (max-width:768px) {
    .top-bar { display:none; }
    .header-inner { flex-wrap:wrap; gap:12px; }
    .logo-text h1 { font-size:18px; }
    .header-bg-decor { display:none; }
    .menu-toggle { display:block; }
    .main-nav .container { flex-wrap:wrap; }
    .nav-list { display:none; flex-direction:column; width:100%; background:#1c4a8a; }
    .nav-list.show { display:flex; }
    .nav-item { flex:none; width:100%; text-align:left; }
    .nav-item a { color:#fff; padding:12px 20px; border-bottom:1px solid rgba(255,255,255,.1); }
    .news-grid { grid-template-columns:1fr; gap:20px; }
    .section-title { font-size:18px; }
    .notice-grid { grid-template-columns:1fr; }
    .topic-cards { grid-template-columns:1fr 1fr; gap:12px; }
    .topic-card { height:64px; font-size:15px; }
    .footer-grid { flex-direction:column; }
    .footer-contact-col { text-align:center; }
    .footer-logo-col { justify-content:center; }
    .footer-bottom .container { flex-direction:column; text-align:center; gap:6px; }
}
