/* ============================================================
   AmericanGamingHub — 星条旗爱国门户 (Patriotic News Portal)
   气质：深蓝 #0e2a47 + 红色 #c8102e + 金色 #d4af37，Georgia 衬线权威，
         宽屏 mega menu，新闻头条式首屏，NewsTicker 横向滚动，CNN/USA Today 门户感
   class 前缀：ag-
   ============================================================ */

/* ── 设计 Token ─────────────────────────────────────────── */
:root {
  /* 配色：星条旗深蓝 + 红 + 金 */
  --ag-navy:        #0e2a47;
  --ag-navy-dark:   #081a2f;
  --ag-navy-light:  #1a3d63;
  --ag-red:         #c8102e;
  --ag-red-dark:    #9a0c23;
  --ag-red-light:   #e63950;
  --ag-gold:        #d4af37;
  --ag-gold-dark:   #a88a2e;
  --ag-gold-light:  #e8c865;
  --ag-white:       #ffffff;
  --ag-bg:          #ffffff;
  --ag-bg-soft:     #f5f7fa;
  --ag-bg-tint:     #eef3f9;
  --ag-card:        #ffffff;
  --ag-text:        #1a1a2e;
  --ag-text-muted:  #5a6b7d;
  --ag-text-light:  #ffffff;
  --ag-border:      #d8e0ea;
  --ag-border-gold: rgba(212,175,55,0.4);
  --ag-border-navy: rgba(14,42,71,0.15);
  --ag-shadow:      0 2px 12px rgba(14,42,71,0.12);
  --ag-shadow-card: 0 4px 20px rgba(14,42,71,0.08);

  /* 字体：标题 Georgia 衬线（爱国权威），正文 system-ui */
  --ag-serif: Georgia, 'Times New Roman', 'Playfair Display', serif;
  --ag-sans:  -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, 'Source Sans 3', Roboto, Arial, sans-serif;

  /* 尺寸 */
  --ag-wrap: 1280px;
  --ag-radius: 4px;
  --ag-radius-lg: 6px;
  --ag-gap: 24px;
  --ag-transition: 0.2s ease;

  --ed-serif: var(--ag-serif);
  --ed-sans:  var(--ag-sans);
  --t-fast: var(--ag-transition);

  /* 旧变量兼容（如 base.css 引用） */
  --fs-h1: clamp(28px, 4vw, 40px);
  --fs-h2: clamp(22px, 3vw, 28px);
  --fs-h3: clamp(18px, 2.2vw, 22px);
  --fs-hero: clamp(28px, 4vw, 38px);
  --fs-overline: 12px;
  --lh-heading: 1.25;
  --lh-display: 1.2;
  --tracking-display: 0.3px;
  --tracking-overline: 0.08em;
  --t-base: 0.3s ease;
  --easing: ease;
}

/* ── Reset / 基础 ───────────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: var(--ag-sans);
  background: var(--ag-bg);
  color: var(--ag-text);
  line-height: 1.65;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
}

a { color: var(--ag-red); text-decoration: none; transition: color var(--ag-transition); }
a:hover { color: var(--ag-navy); }

img { max-width: 100%; height: auto; display: block; }

h1, h2, h3, h4 { font-family: var(--ag-serif); font-weight: 700; line-height: 1.25; color: var(--ag-navy); }

.ag-skiplink-s9c6 {
  position: absolute; left: -9999px; top: 0; z-index: 9999;
  background: var(--ag-gold); color: var(--ag-navy-dark); padding: 8px 16px;
  font-weight: 600; border-radius: var(--ag-radius);
}
.ag-skiplink-s9c6:focus { left: 8px; top: 8px; }

.ag-cont-x79f { max-width: var(--ag-wrap); margin: 0 auto; padding: 0 16px; }

/* ── 通用布局 ───────────────────────────────────────────── */
.ag-wrap { max-width: var(--ag-wrap); margin: 0 auto; padding: 0 16px; }

/* ── 红白蓝三色装饰条 ───────────────────────────────────── */
.ag-flag-stripes {
  display: flex; height: 5px; width: 100%;
  background: var(--ag-white);
}
.ag-stripe-red   { flex: 1; background: var(--ag-red); }
.ag-stripe-white { flex: 1; background: var(--ag-white); border-top: 1px solid var(--ag-border); border-bottom: 1px solid var(--ag-border); }
.ag-stripe-blue  { flex: 1; background: var(--ag-navy); }

/* ── 顶部公告条 ─────────────────────────────────────────── */
.ag-topbar {
  background: var(--ag-navy-dark);
  color: var(--ag-gold-light);
  font-size: 13px;
  letter-spacing: 0.05em;
  padding: 6px 0;
  border-bottom: 1px solid var(--ag-border-gold);
}
.ag-topbar .ag-wrap { display: flex; align-items: center; gap: 12px; }
.ag-topbar-badge {
  background: var(--ag-red); color: var(--ag-white);
  font-weight: 700; font-size: 11px; padding: 2px 8px; border-radius: 2px;
  letter-spacing: 0.06em;
}
.ag-topbar-text { opacity: 0.9; font-family: var(--ag-sans); }

/* ── 头部 + mega menu 导航 ──────────────────────────────── */
.ag-header {
  background: var(--ag-navy);
  border-bottom: 3px solid var(--ag-red);
  position: sticky; top: 0; z-index: 100;
  box-shadow: 0 2px 10px rgba(0,0,0,0.18);
}
.ag-header::after {
  content: ""; display: block; height: 2px; background: var(--ag-gold);
}
.ag-header-inner { display: flex; align-items: center; justify-content: space-between; padding: 16px 16px; }

.ag-logo { display: flex; align-items: center; gap: 8px; color: var(--ag-white) !important; font-family: var(--ag-serif); font-size: 24px; font-weight: 800; letter-spacing: 0.3px; text-transform: uppercase; }
.ag-logo:hover { color: var(--ag-gold-light) !important; }
.ag-logo-icon { color: var(--ag-gold); font-size: 22px; }

.ag-nav { display: flex; align-items: center; gap: 2px; flex-wrap: wrap; }
.ag-mega-menu { position: relative; }
.ag-nav-link {
  color: var(--ag-white) !important; font-weight: 600; font-size: 13px;
  font-family: var(--ag-sans); text-transform: uppercase; letter-spacing: 0.5px;
  padding: 8px 14px; transition: all var(--ag-transition); position: relative;
}
.ag-nav-link:hover { background: var(--ag-navy-light); color: var(--ag-gold-light) !important; }
.ag-nav-link::after {
  content: ""; position: absolute; left: 14px; right: 14px; bottom: 4px; height: 2px;
  background: var(--ag-red); transform: scaleX(0); transform-origin: left; transition: transform var(--ag-transition);
}
.ag-nav-link:hover::after { transform: scaleX(1); }
.ag-nav-cta {
  background: var(--ag-red); color: var(--ag-white) !important;
  font-weight: 700; padding: 9px 20px; margin-left: 12px; border-radius: var(--ag-radius);
}
.ag-nav-cta:hover { background: var(--ag-red-dark); }
.ag-nav-cta::after { display: none; }

/* ── HERO 新闻头条式（一大三小） ────────────────────────── */
.ag-hero {
  background: var(--ag-navy-dark);
  padding: 40px 0;
  background-image:
    linear-gradient(135deg, rgba(26,61,99,0.5) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, rgba(212,175,55,0.08) 0%, transparent 40%);
}
.ag-hero-grid { display: grid; grid-template-columns: 1.6fr 1fr; gap: 32px; }
.ag-hero-main { background: var(--ag-card); border-radius: var(--ag-radius-lg); overflow: hidden; box-shadow: var(--ag-shadow-card); border-top: 4px solid var(--ag-red); }
.ag-hero-main-img img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.ag-hero-main-body { padding: 28px; }
.ag-tag {
  display: inline-block; background: var(--ag-red); color: var(--ag-white);
  font-size: 11px; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase;
  padding: 4px 10px; margin-bottom: 14px; font-family: var(--ag-sans);
}
.ag-hero-title { font-size: clamp(24px, 3vw, 36px); margin-bottom: 12px; color: var(--ag-navy); line-height: 1.2; }
.ag-hero-deck { color: var(--ag-text-muted); font-size: 16px; margin-bottom: 20px; line-height: 1.6; font-family: var(--ag-sans); }

.ag-hero-side { display: flex; flex-direction: column; gap: 12px; }
.ag-hero-side-item {
  display: flex; gap: 14px; background: rgba(255,255,255,0.05);
  padding: 12px; border-radius: var(--ag-radius); border-left: 3px solid var(--ag-red);
  transition: background var(--ag-transition);
}
.ag-hero-side-item:hover { background: rgba(255,255,255,0.1); }
.ag-hero-side-img { flex-shrink: 0; }
.ag-hero-side-img img { width: 80px; height: 56px; object-fit: cover; border-radius: 3px; }
.ag-hero-side-title { font-size: 15px; line-height: 1.35; margin-bottom: 4px; font-family: var(--ag-serif); font-weight: 700; }
.ag-hero-side-title a { color: var(--ag-white) !important; }
.ag-hero-side-title a:hover { color: var(--ag-gold-light) !important; }
.ag-date { font-size: 12px; color: var(--ag-gold-light); opacity: 0.85; font-family: var(--ag-sans); text-transform: uppercase; letter-spacing: 0.04em; }

/* ── NewsTicker 横向滚动 ───────────────────────────────── */
.ag-news-ticker {
  background: var(--ag-navy);
  border-top: 1px solid var(--ag-border-gold);
  border-bottom: 1px solid var(--ag-border-gold);
  display: flex; align-items: center; overflow: hidden;
}
.ag-news-ticker-label {
  background: var(--ag-red); color: var(--ag-white);
  font-family: var(--ag-sans); font-weight: 800; font-size: 12px;
  letter-spacing: 0.1em; text-transform: uppercase;
  padding: 10px 16px; flex-shrink: 0; z-index: 2;
}
.ag-news-ticker-track {
  display: flex; gap: 32px; padding: 10px 20px; overflow-x: auto;
  white-space: nowrap; scrollbar-width: thin;
}
.ag-news-ticker-item {
  color: var(--ag-white) !important; font-size: 13px; font-family: var(--ag-sans);
  font-weight: 500; display: inline-flex; align-items: center; gap: 8px;
}
.ag-news-ticker-item:hover { color: var(--ag-gold-light) !important; }
.ag-news-ticker-dot { color: var(--ag-red); font-size: 8px; }

/* ── 分类导航条 ─────────────────────────────────────────── */
.ag-catnav {
  background: var(--ag-white);
  border-top: 1px solid var(--ag-border);
  border-bottom: 2px solid var(--ag-navy);
  box-shadow: 0 2px 6px rgba(14,42,71,0.04);
}
.ag-catnav .ag-wrap { display: flex; gap: 0; overflow-x: auto; }
.ag-catnav-item {
  flex: 1; text-align: center; padding: 14px 8px;
  color: var(--ag-navy) !important; font-weight: 700; font-size: 13px;
  font-family: var(--ag-sans); text-transform: uppercase; letter-spacing: 0.5px;
  border-right: 1px solid var(--ag-border); transition: all var(--ag-transition);
  white-space: nowrap;
}
.ag-catnav-item:last-child { border-right: none; }
.ag-catnav-item:hover { background: var(--ag-navy); color: var(--ag-white) !important; }
.ag-catnav-name { display: block; }

/* ── 内容主区 ───────────────────────────────────────────── */
.ag-content-area { padding: 36px 16px; }
.ag-two-col { display: grid; grid-template-columns: 1fr 320px; gap: 36px; }
.ag-main-col { min-width: 0; }

/* ── Section 区块 ───────────────────────────────────────── */
.ag-section { margin-bottom: 40px; }
.ag-section-head {
  display: flex; align-items: baseline; justify-content: space-between;
  border-bottom: 2px solid var(--ag-navy); padding-bottom: 10px; margin-bottom: 20px;
}
.ag-section-title { font-size: 24px; color: var(--ag-navy); position: relative; }
.ag-section-more { font-size: 12px; font-weight: 700; color: var(--ag-red) !important; text-transform: uppercase; letter-spacing: 0.06em; }
.ag-section-more:hover { color: var(--ag-navy) !important; }

/* ── 3 列卡片网格 ───────────────────────────────────────── */
.ag-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--ag-gap); }

.ag-card {
  background: var(--ag-card); border-radius: var(--ag-radius); overflow: hidden;
  box-shadow: var(--ag-shadow-card); border: 1px solid var(--ag-border);
  border-top: 3px solid var(--ag-gold);
  transition: transform var(--ag-transition), box-shadow var(--ag-transition);
  display: flex; flex-direction: column;
}
.ag-card:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(14,42,71,0.14); border-top-color: var(--ag-red); }
.ag-card-img img { width: 100%; aspect-ratio: 5/3; object-fit: cover; }
.ag-card-body { padding: 16px 18px; flex: 1; display: flex; flex-direction: column; }
.ag-card-title { font-size: 17px; line-height: 1.3; margin-bottom: 8px; font-family: var(--ag-serif); }
.ag-card-title a { color: var(--ag-navy); }
.ag-card-title a:hover { color: var(--ag-red); }
.ag-card-excerpt { font-size: 14px; color: var(--ag-text-muted); line-height: 1.5; flex: 1; font-family: var(--ag-sans); }

/* ── 文章列表 ───────────────────────────────────────────── */
.ag-list { list-style: none; }
.ag-list-item {
  display: flex; gap: 16px; padding: 16px 0;
  border-bottom: 1px solid var(--ag-border);
}
.ag-list-item:last-child { border-bottom: none; }
.ag-list-rank {
  flex-shrink: 0; font-family: var(--ag-serif); font-weight: 700;
  color: var(--ag-red); font-size: 14px; min-width: 48px;
  text-transform: uppercase; letter-spacing: 0.04em;
}
.ag-list-body { flex: 1; }
.ag-list-title { font-size: 16px; font-weight: 600; color: var(--ag-navy); display: block; margin-bottom: 3px; }
.ag-list-title:hover { color: var(--ag-red); }
.ag-readtime { font-size: 12px; color: var(--ag-text-muted); }

/* ── 侧边栏 ─────────────────────────────────────────────── */
.ag-sidebar { display: flex; flex-direction: column; gap: 28px; }
.ag-widget { background: var(--ag-card); border: 1px solid var(--ag-border); border-radius: var(--ag-radius); padding: 20px; }
.ag-widget-title {
  font-size: 14px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em;
  color: var(--ag-red); padding-bottom: 12px; margin-bottom: 14px;
  border-bottom: 2px solid var(--ag-navy); font-family: var(--ag-sans);
}
.ag-rank-list { list-style: none; counter-reset: rank; }
.ag-rank-item {
  display: flex; gap: 12px; padding: 10px 0;
  border-bottom: 1px solid var(--ag-border); counter-increment: rank;
}
.ag-rank-item:last-child { border-bottom: none; }
.ag-rank-num {
  flex-shrink: 0; width: 28px; height: 28px; border-radius: 50%;
  background: var(--ag-navy); color: var(--ag-gold-light);
  font-family: var(--ag-serif); font-weight: 700; font-size: 14px;
  display: flex; align-items: center; justify-content: center;
}
.ag-rank-link { font-size: 14px; line-height: 1.4; color: var(--ag-navy) !important; }
.ag-rank-link:hover { color: var(--ag-red) !important; }

/* ── CTA 盒 ─────────────────────────────────────────────── */
.ag-cta-box {
  background: var(--ag-navy); color: var(--ag-white);
  padding: 24px; border-radius: var(--ag-radius);
  border: 1px solid var(--ag-border-gold); text-align: center;
}
.ag-cta-title { font-family: var(--ag-serif); font-size: 20px; color: var(--ag-gold-light); margin-bottom: 10px; }
.ag-cta-text { font-size: 14px; opacity: 0.9; margin-bottom: 18px; line-height: 1.5; font-family: var(--ag-sans); }

/* ── 按钮 ───────────────────────────────────────────────── */
.ag-btn {
  display: inline-block; padding: 11px 24px; font-weight: 700; font-size: 14px;
  font-family: var(--ag-sans); text-transform: uppercase; letter-spacing: 0.05em;
  border-radius: var(--ag-radius); transition: all var(--ag-transition); cursor: pointer;
  border: none; text-decoration: none;
}
.ag-btn-red { background: var(--ag-red); color: var(--ag-white) !important; }
.ag-btn-red:hover { background: var(--ag-red-dark); transform: translateY(-1px); }
.ag-btn-gold { background: var(--ag-gold); color: var(--ag-navy-dark) !important; }
.ag-btn-gold:hover { background: var(--ag-gold-light); transform: translateY(-1px); }
.ag-btn-block { display: block; width: 100%; text-align: center; }

/* ── 责任博彩 ───────────────────────────────────────────── */
.ag-rgbann-pe5a {
  background: #fff8e7; color: #5a4a1c;
  padding: 18px 22px; border-radius: var(--ag-radius); font-size: 13px; line-height: 1.6;
  border: 2px solid var(--ag-gold); font-family: var(--ag-sans);
}
.ag-rgbann-pe5a a { color: var(--ag-red) !important; text-decoration: underline; font-weight: 600; }
.ag-rgbann-pe5a strong { color: var(--ag-red); }
.ag-rgbann-pe5a p { margin-bottom: 6px; }
.ag-rgbann-pe5a p:last-child { margin-bottom: 0; }

.ag-sitebannad-sf0d { margin-bottom: 28px; text-align: center; }
.ag-sitebannad-sf0d img { max-width: 100%; border-radius: var(--ag-radius); }

/* ── Footer ─────────────────────────────────────────────── */
.ag-footer {
  background: var(--ag-navy-dark); color: var(--ag-white);
  padding: 48px 0 24px; margin-top: 20px;
  border-top: 3px solid var(--ag-red);
}
.ag-footer::after { content: ""; display: block; height: 2px; background: var(--ag-gold); margin-top: -3px; position: relative; top: 3px; }
.ag-footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 32px; margin-bottom: 32px; }
.ag-footer-col { display: flex; flex-direction: column; gap: 8px; }
.ag-footer-col h4 { color: var(--ag-gold-light); font-size: 13px; text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: 8px; font-family: var(--ag-sans); }
.ag-footer-col a { color: var(--ag-white) !important; font-size: 14px; opacity: 0.85; }
.ag-footer-col a:hover { opacity: 1; color: var(--ag-gold-light) !important; }
.ag-footer-logo { font-family: var(--ag-serif); font-size: 20px; font-weight: 700; color: var(--ag-gold-light); margin-bottom: 8px; text-transform: uppercase; letter-spacing: 0.3px; }
.ag-footer-desc { font-size: 14px; opacity: 0.8; line-height: 1.5; font-family: var(--ag-sans); }
.ag-disclosure {
  font-size: 12px; opacity: 0.65; text-align: center;
  padding: 16px 0; border-top: 1px solid rgba(212,175,55,0.2); line-height: 1.6; font-family: var(--ag-sans);
}
.ag-copyright { font-size: 13px; opacity: 0.7; text-align: center; padding-top: 8px; font-family: var(--ag-sans); }

/* ── 文章详情页 ─────────────────────────────────────────── */
.ag-posthead-se1a { margin-bottom: 24px; }
.ag-posttitl-w1ec { font-family: var(--ag-serif); font-size: clamp(28px,4vw,40px); color: var(--ag-navy); margin-bottom: 12px; line-height: 1.2; border-left: 6px solid var(--ag-red); padding-left: 18px; }
.ag-postmeta-dec8 { font-size: 14px; color: var(--ag-text-muted); margin-bottom: 16px; font-family: var(--ag-sans); display: flex; gap: 16px; flex-wrap: wrap; padding-bottom: 14px; border-bottom: 2px solid var(--ag-border); }
.ag-postmeta-dec8 a { color: var(--ag-red) !important; font-weight: 600; }
.ag-postmeta-dec8 a:hover { color: var(--ag-navy) !important; }
.ag-postcont-lf6a { font-size: 17px; line-height: 1.75; color: var(--ag-text); font-family: var(--ag-sans); }
.ag-postcont-lf6a h2 { font-family: var(--ag-serif); font-size: 26px; margin: 32px 0 14px; color: var(--ag-navy); border-bottom: 2px solid var(--ag-border); padding-bottom: 6px; }
.ag-postcont-lf6a h3 { font-size: 21px; margin: 24px 0 10px; color: var(--ag-navy); font-family: var(--ag-serif); }
.ag-postcont-lf6a p { margin-bottom: 18px; }
.ag-postcont-lf6a ul, .ag-postcont-lf6a ol { margin: 0 0 18px 24px; }
.ag-postcont-lf6a li { margin-bottom: 8px; }
.ag-postcont-lf6a img { border-radius: var(--ag-radius); margin: 18px 0; }
.ag-postcont-lf6a blockquote {
  border-left: 4px solid var(--ag-red); background: var(--ag-bg-tint);
  padding: 16px 20px; margin: 20px 0; font-style: italic; color: var(--ag-text-muted);
  border-radius: 0 var(--ag-radius) var(--ag-radius) 0; font-family: var(--ag-serif);
}
.ag-postcont-lf6a table { width: 100%; border-collapse: collapse; margin: 20px 0; }
.ag-postcont-lf6a th, .ag-postcont-lf6a td { border: 1px solid var(--ag-border); padding: 10px 14px; text-align: left; }
.ag-postcont-lf6a th { background: var(--ag-navy); color: var(--ag-white); font-family: var(--ag-serif); }
.ag-postfact-ka70 {
  width: 100%; border-collapse: collapse; margin: 24px 0; font-size: 15px; overflow: hidden;
  font-family: var(--ag-sans); box-shadow: 0 2px 12px rgba(14,42,71,0.08); border: 1px solid var(--ag-border);
  border-top: 3px solid var(--ag-red);
}
.ag-postfact-ka70 th, .ag-postfact-ka70 td { border-bottom: 1px solid var(--ag-border); padding: 12px 16px; text-align: left; }
.ag-postfact-ka70 th { background: var(--ag-navy); color: var(--ag-white); width: 32%; font-weight: 600; letter-spacing: 0.5px; text-transform: uppercase; font-size: 12px; }
.ag-postfact-ka70 tr:nth-child(even) td { background: var(--ag-bg-soft); }
.ag-postfact-ka70 tr:last-child td, .ag-postfact-ka70 tr:last-child th { border-bottom: none; }

.ag-ctaregi-s867 {
  background: var(--ag-navy); color: var(--ag-white);
  padding: 28px; border-radius: var(--ag-radius-lg); text-align: center; margin: 32px 0;
  border: 1px solid var(--ag-border-gold);
}
.ag-ctaregi-s867 h2 { color: var(--ag-gold-light); font-family: var(--ag-serif); }
.ag-ctabtn-w714 { display: inline-block; padding: 14px 32px; font-weight: 700; font-family: var(--ag-sans); text-transform: uppercase; letter-spacing: 0.06em; border-radius: var(--ag-radius); margin: 6px; }
.ag-ctabtnprim-r4f2 { background: var(--ag-red); color: var(--ag-white); }
.ag-ctabtnprim-r4f2:hover { background: var(--ag-red-dark); }
.ag-ctabtnseco-v753 { background: transparent; color: var(--ag-gold-light); border: 2px solid var(--ag-gold); }
.ag-ctabtnseco-v753:hover { background: var(--ag-gold); color: var(--ag-navy-dark); }
.ag-ctadisc-mc49 { font-size: 12px; opacity: 0.7; margin-top: 12px; font-family: var(--ag-sans); }

.ag-relapost-n4f7 { margin-top: 40px; padding-top: 24px; border-top: 3px solid var(--ag-border); }
.ag-relapost-n4f7 h2 { font-family: var(--ag-serif); font-size: 24px; color: var(--ag-navy); margin-bottom: 18px; border-bottom: 2px solid var(--ag-navy); padding-bottom: 8px; }
.ag-relalist-pabd { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; list-style: none; }
.ag-relalist-pabd li { background: var(--ag-card); border: 1px solid var(--ag-border); border-left: 3px solid var(--ag-gold); padding: 14px 16px; border-radius: 0 var(--ag-radius) var(--ag-radius) 0; }
.ag-relalist-pabd a { color: var(--ag-navy); font-weight: 600; font-size: 15px; line-height: 1.3; font-family: var(--ag-sans); }
.ag-relalist-pabd a:hover { color: var(--ag-red); }

.ag-linkarti-re6c { margin-top: 36px; }
.ag-linkarti-re6c h2 { font-family: var(--ag-serif); font-size: 22px; color: var(--ag-navy); margin-bottom: 16px; }
.ag-artigrid-d1d1 { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; list-style: none; }
.ag-artigriditem-w2c5 { background: var(--ag-card); border: 1px solid var(--ag-border); border-radius: var(--ag-radius); padding: 16px; }
.ag-artigriditem-w2c5 a { color: var(--ag-navy); font-weight: 600; font-family: var(--ag-sans); }
.ag-artigriditem-w2c5 a:hover { color: var(--ag-red); }
.ag-artigridexce-dd2a { font-size: 13px; color: var(--ag-text-muted); margin-top: 6px; }

.ag-brea-kd01 { font-size: 13px; color: var(--ag-text-muted); margin-bottom: 20px; font-family: var(--ag-sans); }
.ag-brea-kd01 a { color: var(--ag-red) !important; font-weight: 600; }
.ag-brea-kd01 a:hover { color: var(--ag-navy) !important; }

/* ── Hub 分类列表页 ─────────────────────────────────────── */
.ag-hubintr-kc3b { background: var(--ag-navy); color: var(--ag-white); padding: 32px; border-radius: var(--ag-radius-lg); margin-bottom: 32px; border-top: 4px solid var(--ag-red); }
.ag-hubintr-kc3b h1 { color: var(--ag-gold-light); font-size: 30px; margin-bottom: 12px; font-family: var(--ag-serif); border: none; padding: 0; }
.ag-hubintr-kc3b p { font-size: 16px; opacity: 0.9; line-height: 1.6; font-family: var(--ag-sans); }
.ag-hubgrid-mbfd { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: var(--ag-gap); }
.ag-hubcard-n521 {
  background: var(--ag-card); border: 1px solid var(--ag-border); border-radius: var(--ag-radius);
  overflow: hidden; box-shadow: var(--ag-shadow-card); border-top: 3px solid var(--ag-gold);
  transition: transform var(--ag-transition), box-shadow var(--ag-transition);
  display: flex; flex-direction: column;
}
.ag-hubcard-n521:hover { transform: translateY(-3px); box-shadow: 0 8px 24px rgba(14,42,71,0.14); border-top-color: var(--ag-red); }
.ag-hubcardimg-kf37 img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.ag-hubcardbody-d073 { padding: 18px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.ag-hubcardtitl-m60d { font-family: var(--ag-serif); font-size: 18px; margin-bottom: 4px; }
.ag-hubcardtitl-m60d a { color: var(--ag-navy); }
.ag-hubcardtitl-m60d a:hover { color: var(--ag-red); }
.ag-hubcardexce-d72a { font-size: 14px; color: var(--ag-text-muted); line-height: 1.5; margin-bottom: 6px; font-family: var(--ag-sans); }
.ag-hubcarddate-s178 { font-size: 12px; color: var(--ag-red); font-weight: 600; font-family: var(--ag-sans); text-transform: uppercase; letter-spacing: 0.04em; margin-top: auto; }

.ag-pagi-r48b { display: flex; justify-content: center; gap: 8px; margin-top: 40px; }
.ag-pagi-r48b a, .ag-pagi-r48b span {
  padding: 8px 14px; border: 1px solid var(--ag-border); border-radius: var(--ag-radius);
  font-size: 13px; font-weight: 700; font-family: var(--ag-sans); text-transform: uppercase; letter-spacing: 0.04em;
}
.ag-pagi-r48b a { color: var(--ag-navy); background: var(--ag-card); }
.ag-pagi-r48b a:hover { background: var(--ag-navy); color: var(--ag-white); border-color: var(--ag-navy); text-decoration: none; }
.ag-pagi-r48b .ag-prev-q0cd, .ag-pagi-r48b .ag-next-wca5 { background: var(--ag-navy); color: var(--ag-white); border-color: var(--ag-navy); }
.ag-pagi-r48b .ag-prev-q0cd:hover, .ag-pagi-r48b .ag-next-wca5:hover { background: var(--ag-red); border-color: var(--ag-red); }
.ag-pageinfo-x806 { color: var(--ag-text-muted); background: transparent; border: none; }

/* ── 作者页 ─────────────────────────────────────────────── */
.ag-authprof-sb49 {
  display: flex; gap: 24px; align-items: center;
  background: var(--ag-card); color: var(--ag-text);
  padding: 32px; border-radius: var(--ag-radius-lg); margin-bottom: 32px;
  border: 1px solid var(--ag-border); border-left: 6px solid var(--ag-red);
  box-shadow: var(--ag-shadow-card);
}
.ag-authprof-sb49 img { width: 96px; height: 96px; border-radius: 50%; border: 3px solid var(--ag-gold); object-fit: cover; }
.ag-authbio-k0ba h1 { color: var(--ag-navy); font-size: 28px; margin-bottom: 8px; font-family: var(--ag-serif); border: none; padding: 0; }
.ag-authbio-k0ba p { font-size: 15px; color: var(--ag-text-muted); line-height: 1.6; font-family: var(--ag-sans); }
.ag-authpost-keb5 .ag-section-head { margin-bottom: 20px; }
.ag-authpost-keb5 .ag-artilist-p2b0 { list-style: none; }
.ag-authpost-keb5 .ag-artilist-p2b0 li { padding: 14px 0; border-bottom: 1px solid var(--ag-border); font-family: var(--ag-sans); }
.ag-authpost-keb5 .ag-artilist-p2b0 a { font-size: 16px; font-weight: 600; color: var(--ag-navy); }
.ag-authpost-keb5 .ag-artilist-p2b0 a:hover { color: var(--ag-red); }

/* ── 旧 class 兼容（防断样式，覆盖成 ag 配色） ──────────── */
.ag-sitehead-p474 { background: var(--ag-navy); border-bottom: 3px solid var(--ag-red); }
.ag-sitehead-p474::after { content: ""; display: block; height: 2px; background: var(--ag-gold); }
.ag-sitehead-p474 .ag-cont-x79f { display: flex; align-items: center; justify-content: space-between; padding: 16px 16px; max-width: var(--ag-wrap); margin: 0 auto; }
.ag-sitelogo-le4d { color: var(--ag-white); font-family: var(--ag-serif); font-size: 24px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.3px; }
.ag-sitelogo-le4d::before { content: "★ "; color: var(--ag-gold); }
.ag-sitenav-l787 a { color: var(--ag-white); font-weight: 600; font-size: 13px; font-family: var(--ag-sans); text-transform: uppercase; letter-spacing: 0.5px; padding: 8px 14px; }
.ag-sitenav-l787 a:hover { color: var(--ag-gold-light); }
.ag-sitemain-v339 { max-width: var(--ag-wrap); margin: 0 auto; padding: 36px 16px; }
.ag-hero-xc33 { background: var(--ag-navy); color: var(--ag-white); padding: 48px 32px; border-radius: var(--ag-radius-lg); margin-bottom: 32px; border-top: 4px solid var(--ag-red); border-bottom: 4px solid var(--ag-gold); }
.ag-herotitl-t830 { color: var(--ag-white); font-family: var(--ag-serif); font-size: clamp(28px,4vw,38px); margin-bottom: 12px; }
.ag-herotagl-r0af { font-size: 18px; color: var(--ag-gold-light); margin-bottom: 8px; font-family: var(--ag-serif); font-style: normal; }
.ag-herointr-d3f2 { font-size: 15px; color: var(--ag-text-light); opacity: 0.8; margin-bottom: 20px; font-family: var(--ag-sans); }
.ag-heroacti-md9b { display: flex; gap: 12px; }
.ag-btn-s87f { display: inline-block; padding: 11px 24px; font-weight: 700; font-size: 14px; font-family: var(--ag-sans); text-transform: uppercase; letter-spacing: 0.05em; border-radius: var(--ag-radius); }
.ag-btnprim-d696 { background: var(--ag-red); color: var(--ag-white); }
.ag-btnprim-d696:hover { background: var(--ag-red-dark); }
.ag-btnghos-q381 { background: transparent; color: var(--ag-gold-light); border: 2px solid var(--ag-gold); }
.ag-btnghos-q381:hover { background: var(--ag-gold); color: var(--ag-navy-dark); }
.ag-homesect-r2aa { margin-bottom: 40px; }
.ag-homesecthead-n0bd { display: flex; align-items: baseline; justify-content: space-between; border-bottom: 2px solid var(--ag-navy); padding-bottom: 10px; margin-bottom: 20px; }
.ag-homesecttitl-qe32 { font-size: 24px; color: var(--ag-navy); font-family: var(--ag-serif); }
.ag-homesecttitl-qe32::before { content: "★ "; color: var(--ag-gold); }
.ag-homesectmore-rdb3 { font-size: 12px; font-weight: 700; color: var(--ag-red); text-transform: uppercase; letter-spacing: 0.06em; }
.ag-homegrid-d979 { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: var(--ag-gap); }
.ag-homecard-xd04 { background: var(--ag-card); border: 1px solid var(--ag-border); border-top: 3px solid var(--ag-gold); border-radius: var(--ag-radius); overflow: hidden; box-shadow: var(--ag-shadow-card); }
.ag-homecardimg-v493 img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.ag-homecardtitl-rba4 { font-family: var(--ag-serif); font-size: 17px; padding: 14px 16px 4px; color: var(--ag-navy); }
.ag-homecardtitl-rba4 a { color: var(--ag-navy); }
.ag-homecardtitl-rba4 a:hover { color: var(--ag-red); }
.ag-homecardexce-df3c { font-size: 14px; color: var(--ag-text-muted); padding: 0 16px 16px; font-family: var(--ag-sans); }
.ag-homelist-s27d { list-style: none; }
.ag-homelistitem-wc71 { display: flex; justify-content: space-between; padding: 12px 0; border-bottom: 1px solid var(--ag-border); font-family: var(--ag-sans); }
.ag-homelistitem-wc71 a { font-weight: 600; color: var(--ag-navy); }
.ag-homelistitem-wc71 a:hover { color: var(--ag-red); }
.ag-homelistitem-wc71 time { font-size: 13px; color: var(--ag-text-muted); }

.ag-footlink-vaaf { text-align: center; padding: 20px 16px; background: var(--ag-navy-dark); }
.ag-footlink-vaaf a { color: var(--ag-white); font-size: 13px; margin: 0 8px; opacity: 0.8; font-family: var(--ag-sans); }
.ag-footlink-vaaf a:hover { color: var(--ag-gold-light); opacity: 1; }
.ag-affidisc-n385 { font-size: 12px; color: var(--ag-white); opacity: 0.65; text-align: center; padding: 12px 16px; background: var(--ag-navy-dark); font-family: var(--ag-sans); line-height: 1.6; }
.ag-copy-wc31 { font-size: 13px; color: var(--ag-white); opacity: 0.7; text-align: center; padding: 8px 16px 20px; background: var(--ag-navy-dark); font-family: var(--ag-sans); }

/* ── 响应式 ─────────────────────────────────────────────── */
@media (max-width: 900px) {
  .ag-hero-grid { grid-template-columns: 1fr; }
  .ag-two-col { grid-template-columns: 1fr; }
  .ag-grid-3 { grid-template-columns: repeat(2, 1fr); }
  .ag-footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  .ag-header-inner { flex-direction: column; gap: 12px; }
  .ag-nav { justify-content: center; }
  .ag-grid-3 { grid-template-columns: 1fr; }
  .ag-footer-grid { grid-template-columns: 1fr; }
  .ag-hero-main-body { padding: 20px; }
  .ag-authprof-sb49 { flex-direction: column; text-align: center; }
  .ag-catnav-item { font-size: 12px; padding: 12px 6px; }
}
