/* === 全局基础样式 === */
body {
  margin: 0;
  padding: 0;
  font-family: Arial, sans-serif;
  background: #f5f7fa;
  color: #333;
}

.container {
  max-width: 1200px;
  margin: auto;
  padding: 0 15px;
}

    .hero { background: #fff; padding: 20px; display: flex; align-items: center; gap: 30px; box-shadow: 0 2px 10px rgba(0,0,0,0.08); border-radius: 10px; margin-top: 30px; }
    .hero img { width: 50%; height: 300px; object-fit: cover; border-radius: 10px; }
    .hero .text { max-width: 50%; }
    .hero .text h1 { margin: 0 0 15px; font-size: 26px; }
    .hero .text p { font-size: 17px; line-height: 1.6; color: #555; }
    
/* === 标题样式 === */
h1, h2, h3 {
  margin: 20px 0 15px;
}

.section-title {
  font-size: 24px;
  border-left: 4px solid #004080;
  padding-left: 10px;
  margin-top: 40px;
}

/* === 页头和导航栏 === */
header {
  background: #002B5C;
  color: #fff;
  padding: 20px 0;
  text-align: center;
}
nav {
  background: #003366;
}
nav ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  padding: 10px 0;
}
nav li {
  margin: 0 0px;
}
nav a {
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  padding: 10px 18px;
  display: inline-block;
}
nav a:hover {
  background: #004080;
  border-radius: 4px;
}

/* === Banner 区块 === */
.banner img {
  width: 100%;
  max-height: 300px;
  object-fit: cover;
  border-radius: 8px;
  margin: 20px 0;
}

/* === 卡片列表展示 === */
.card-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 30px;
}
.grid-2 .card {
  flex: 1 1 calc(50% - 20px);
}
.grid-3 .card {
  flex: 1 1 calc(33.333% - 20px);
}

.card {
  background: #fff;
  border-radius: 6px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.08);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: #333;
  transition: transform 0.2s ease;
}
.card:hover {
  transform: translateY(-4px);
}
.card img {
  width: 100%;
  height: 220px;
  object-fit: cover;
}
.card .text {
  padding: 15px;
}
.card h3 {
  font-size: 18px;
  margin-bottom: 8px;
}
.card p {
  font-size: 14px;
  color: #666;
  line-height: 1.5;
}

/* === 表格样式 === */
.compare-table table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  margin: 20px 0;
}
.compare-table th,
.compare-table td {
  padding: 12px;
  border: 1px solid #ccc;
  text-align: center;
}
.compare-table th {
  background: #e6f0ff;
}

/* === 最新文章列表 === */
.latest-articles ul {
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
}
.latest-articles li {
  flex: 1 1 calc(33.333% - 20px);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.latest-articles a {
  color: #004080;
  text-decoration: none;
}
.latest-articles a:hover {
  text-decoration: underline;
}

/* === 分页导航 === */
.pagination ul {
  list-style: none;
  padding: 0;
  margin: 20px auto;
  text-align: center;
}

.pagination ul li {
  display: inline-block;
  margin: 0 5px;
}

.pagination li {
  display: inline-block;
  margin: 0 5px;
}

.pagination ul li a,
.pagination ul li span,
.pagination ul li select {
  display: inline-block;
  padding: 5px 10px;
  text-decoration: none;
  color: #0056b3;
  border: 1px solid #ddd;
  border-radius: 4px;
  background-color: #fff;
  font-size: 14px;
}

.pagination ul li.thisclass {
  background-color: #0056b3;
  color: #fff;
  border: 1px solid #0056b3;
}


/* === 页面结构：列表页 + 文章页的两栏布局 === */
.page-wrapper, .article-wrapper {
  display: flex;
  gap: 30px;
  margin-top: 30px;
}
.main-content, .article-main {
  flex: 1;
}
.sidebar {
  width: 300px;
}
.sidebar-block {
  background: #fff;
  padding: 15px;
  margin-bottom: 20px;
  border-radius: 6px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}
.sidebar-block h3 {
  font-size: 18px;
  margin-bottom: 10px;
}
.sidebar-block ul {
  list-style: none;
  padding-left: 0;
}
.sidebar-block li {
  margin-bottom: 8px;
}
.sidebar-block a {
  color: #004080;
  text-decoration: none;
}
.sidebar-block a:hover {
  text-decoration: underline;
}

/* === 文章页样式 === */
.article-title {
  font-size: 26px;
  margin-bottom: 10px;
}
.article-meta {
  color: #888;
  font-size: 14px;
  margin-bottom: 20px;
}
.article-body {
  line-height: 1.8;
  font-size: 16px;
}
.article-tags {
  margin-top: 30px;
}
.article-tags a {
  display: inline-block;
  margin-right: 10px;
  color: #006699;
  text-decoration: none;
}
.article-nav {
  margin-top: 40px;
  border-top: 1px dashed #ccc;
  padding-top: 15px;
  font-size: 14px;
}

/* === 页脚样式 === */
footer {
  background: #002B5C;
  color: #fff;
  text-align: center;
  padding: 20px;
  margin-top: 40px;
  font-size: 14px;
}

/* === 响应式调整 === */
@media (max-width: 768px) {
  nav ul {
    flex-direction: column;
    align-items: center;
  }
  .card-grid,
  .latest-articles ul {
    flex-direction: column;
  }
  .grid-2 .card,
  .grid-3 .card,
  .latest-articles li {
    flex: 1 1 100%;
  }
  .page-wrapper,
  .article-wrapper {
    flex-direction: column;
  }
  .sidebar {
    width: 100%;
  }
}

/* === Header Reset === */
:root{
  --brand:#0d2b59;
  --ink:#0f172a;
  --muted:#64748b;
  --bg:#ffffff;
  --cta:#1d4ed8;
  --cta-ink:#fff;
  --shadow:0 6px 20px rgba(2,6,23,.08);
}
.site-header{position:sticky;top:0;z-index:1000;background:var(--bg);box-shadow:0 1px 0 rgba(2,6,23,.06)}
.site-header .wrap{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:16px;padding:10px 16px}
.brand{display:flex;align-items:center;gap:10px}
.brand img{height:34px;width:auto;display:block}
.logo-fallback{height:34px;width:34px;border-radius:8px;display:block}

.primary-nav{margin-left:20px}
.primary-nav ul{display:flex;gap:18px;list-style:none}
.primary-nav a{display:block;padding:10px 4px;color:var(--ink);text-decoration:none;font-weight:500}
.primary-nav a:hover{color:var(--brand)}

.actions{margin-left:auto;display:flex;align-items:center;gap:12px}
.cta{background:var(--cta);color:var(--cta-ink);padding:9px 12px;border-radius:10px;font-weight:600;text-decoration:none;box-shadow:var(--shadow)}
.cta:hover{filter:brightness(.96)}
.hamburger{display:none;position:relative;width:40px;height:40px;border:0;background:transparent;padding:6px;border-radius:10px}
.hamburger span{position:absolute;left:10px;right:10px;height:2px;background:var(--ink);transition:transform .25s,opacity .25s}
.hamburger span:nth-child(1){top:12px}
.hamburger span:nth-child(2){top:19px}
.hamburger span:nth-child(3){top:26px}
.hamburger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger.is-open span:nth-child(2){opacity:0}
.hamburger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.mobile-drawer{position:fixed;inset:0 0 0 40%; /* drawer宽度60% */
  background:rgba(2,6,23,.35);backdrop-filter:saturate(140%) blur(4px);
  opacity:0;pointer-events:none;transition:opacity .25s}
.mobile-drawer .drawer-inner{height:100%;background:#fff;
  padding:18px 16px 24px;box-shadow:var(--shadow);transform:translateX(100%);transition:transform .25s}
.mobile-drawer.open{opacity:1;pointer-events:auto}
.mobile-drawer.open .drawer-inner{transform:translateX(0)}
.mobile-drawer .search{display:flex;gap:8px;margin-bottom:12px}
.mobile-drawer .search input{flex:1;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px}
.mobile-drawer .search button{padding:10px 14px;border:0;border-radius:10px;background:var(--brand);color:#fff}
.mobile-drawer .mobile-links{list-style:none;margin:8px 0;display:flex;flex-direction:column;gap:6px}
.mobile-drawer .mobile-links a{display:block;padding:10px 8px;color:var(--ink);text-decoration:none;border-radius:8px}
.mobile-drawer .mobile-links a:hover{background:#f1f5f9}
.mobile-drawer .mobile-links .mt{margin-top:10px}
.mobile-drawer .tagline{margin-top:auto;color:var(--muted);font-size:12px;line-height:1.4}

/* Banner tweak */
.banner img{width:100%;display:block;max-height:420px;object-fit:cover}

/* === Responsive === */
@media (max-width:1024px){
  .primary-nav{display:none}
  .hamburger{display:inline-flex}
}
@media (max-width:640px){
  .site-header .wrap{padding:10px 12px}
  .cta{display:none} /* 移动端保留抽屉里的CTA，顶部更简洁 */
  .mobile-drawer{inset:0 0 0 20%} /* 小屏抽屉占80%宽度 */
}


