/* ============================================================
   American Play Spot — 现代极简门户 (Swiss Editorial / Minimalist Portal)
   气质：大量留白，黑白灰为主 + 电光蓝强调，1px 纤细边框，
         不对称网格，hover 蓝色下划线动画，瑞士排版/国际主义网格
   参考：Medium / Stripe 的设计感
   class 前缀：ap-
   ============================================================ */

/* ── 设计 Token ─────────────────────────────────────────── */
:root {
  /* 配色：纯白 + 近黑 + 灰阶 + 电光蓝 */
  --ap-bg:           #ffffff;
  --ap-bg-alt:       #fafafa;
  --ap-text:         #0a0a0a;
  --ap-text-muted:   #6b6b6b;
  --ap-text-faint:   #9b9b9b;
  --ap-accent:       #0066ff;   /* 电光蓝 */
  --ap-accent-dark:  #0047b3;
  --ap-border:       #e5e5e5;
  --ap-border-dark:  #d0d0d0;

  /* 字体：Inter / Helvetica Neue 无衬线极简 */
  --ap-sans: 'Inter', 'Helvetica Neue', Helvetica, Arial, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  /* 尺寸 */
  --ap-wrap: 1200px;
  --ap-wrap-narrow: 760px;
  --ap-gap: 32px;
  --ap-radius: 0;          /* 极简风用直角 */
  --ap-transition: 0.18s ease;

  /* 兼容 alias（旧 class / 共享 token 引用） */
  --ed-serif: var(--ap-sans);
  --ed-sans: var(--ap-sans);
  --t-fast: var(--ap-transition);
  --t-base: 0.3s ease;
  --easing: cubic-bezier(0.4, 0, 0.2, 1);
  --tracking-display: -0.02em;
  --tracking-overline: 0.1em;
  --lh-heading: 1.2;
  --lh-display: 1.1;
  --fs-h1: clamp(32px, 4.4vw, 48px);
  --fs-h2: clamp(24px, 3vw, 32px);
  --fs-h3: clamp(18px, 2vw, 22px);
  --fs-hero: clamp(40px, 6vw, 72px);
  --fs-overline: 12px;

  /* 旧 ap- token 兼容（防止旧布局断样式） */
  --ap-bg2: var(--ap-bg-alt);
  --ap-card: #ffffff;
  --ap-heading: var(--ap-text);
  --ap-gold: var(--ap-accent);
  --ap-magenta: var(--ap-accent);
  --ap-cyan: var(--ap-accent);
  --ap-font: var(--ap-sans);
  --ap-radius: var(--ap-radius);
}

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

body {
  font-family: var(--ap-sans);
  background: var(--ap-bg);
  color: var(--ap-text);
  line-height: 1.8;
  font-size: 16px;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: -0.005em;
}

a {
  color: var(--ap-text);
  text-decoration: none;
  transition: color var(--ap-transition);
  background-image: linear-gradient(var(--ap-accent), var(--ap-accent));
  background-size: 0% 1px;
  background-position: 0 100%;
  background-repeat: no-repeat;
  transition: background-size var(--ap-transition), color var(--ap-transition);
}
a:hover { color: var(--ap-accent); background-size: 100% 1px; }

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

h1, h2, h3, h4, h5, h6 {
  font-family: var(--ap-sans);
  font-weight: 600;
  line-height: var(--lh-heading);
  letter-spacing: var(--tracking-display);
  color: var(--ap-text);
}

ul, ol { list-style: none; }

.ap-skiplink-pdac {
  position: absolute; left: -9999px; top: 0; z-index: 9999;
  background: var(--ap-text); color: var(--ap-bg); padding: 10px 18px;
  font-weight: 600; font-size: 13px;
}
.ap-skiplink-pdac:focus { left: 8px; top: 8px; }

.ap-cont-qc67 { max-width: var(--ap-wrap); margin: 0 auto; padding: 0 24px; }

/* ── 通用布局 ───────────────────────────────────────────── */
.ap-wrap { max-width: var(--ap-wrap); margin: 0 auto; padding: 0 24px; }
.ap-content-area { padding: 64px 24px; }
.ap-two-col { display: grid; grid-template-columns: 1fr 340px; gap: 72px; }
.ap-main-col { min-width: 0; }

/* ── Header 极简导航 ────────────────────────────────────── */
.ap-header {
  background: var(--ap-bg);
  border-bottom: 1px solid var(--ap-border);
  position: sticky; top: 0; z-index: 100;
}
.ap-header-inner {
  display: flex; align-items: center; justify-content: space-between;
  padding: 24px;
  max-width: var(--ap-wrap); margin: 0 auto;
}

.ap-logo {
  display: inline-flex; align-items: baseline; gap: 2px;
  color: var(--ap-text) !important;
  font-weight: 600; font-size: 18px;
  letter-spacing: -0.02em;
  background: none;
}
.ap-logo:hover { color: var(--ap-accent) !important; background: none; }
.ap-logo-mark {
  display: inline-block; width: 8px; height: 8px;
  background: var(--ap-accent); margin-right: 8px;
  vertical-align: middle;
}

.ap-nav { display: flex; align-items: center; gap: 0; flex-wrap: wrap; }
.ap-nav-link {
  color: var(--ap-text-muted) !important;
  font-size: 14px; font-weight: 400;
  padding: 8px 18px;
  letter-spacing: -0.005em;
  background: none;
}
.ap-nav-link:hover { color: var(--ap-text) !important; background: none; }
.ap-nav-link:first-child { padding-left: 0; }
.ap-nav-cta {
  color: var(--ap-accent) !important;
  font-weight: 600;
  border: 1px solid var(--ap-border);
  padding: 8px 18px;
  margin-left: 12px;
  background: none;
}
.ap-nav-cta:hover { border-color: var(--ap-accent); background: none; }

/* ── HERO 不对称 ────────────────────────────────────────── */
.ap-hero { padding: 80px 0 64px; border-bottom: 1px solid var(--ap-border); }
.ap-hero-grid { display: grid; grid-template-columns: 1.3fr 1fr; gap: 64px; align-items: center; }

.ap-hero-lead { display: flex; flex-direction: column; justify-content: center; }
.ap-hero-overline {
  display: inline-flex; align-items: center; gap: 10px;
  font-size: var(--fs-overline); font-weight: 600;
  text-transform: uppercase; letter-spacing: var(--tracking-overline);
  color: var(--ap-text-muted);
  margin-bottom: 28px;
}
.ap-hero-overline::before {
  content: ""; display: inline-block; width: 24px; height: 1px;
  background: var(--ap-text);
}
.ap-hero-title {
  font-size: var(--fs-hero);
  font-weight: 600;
  line-height: var(--lh-display);
  letter-spacing: -0.035em;
  color: var(--ap-text);
  margin-bottom: 24px;
}
.ap-hero-deck {
  font-size: 19px; line-height: 1.6; color: var(--ap-text-muted);
  max-width: 50ch; font-weight: 400;
}

/* HERO 右侧 top pick 卡片 */
.ap-hero-pick {
  border: 1px solid var(--ap-border);
  background: var(--ap-bg);
  transition: border-color var(--ap-transition);
}
.ap-hero-pick:hover { border-color: var(--ap-text); }
.ap-hero-pick-img { display: block; overflow: hidden; background: var(--ap-bg-alt); }
.ap-hero-pick-img img { width: 100%; aspect-ratio: 16/10; object-fit: cover; transition: transform 0.4s ease; }
.ap-hero-pick:hover .ap-hero-pick-img img { transform: scale(1.02); }
.ap-hero-pick-body { padding: 28px; }
.ap-hero-pick-tag {
  font-size: 11px; font-weight: 600; text-transform: uppercase;
  letter-spacing: var(--tracking-overline); color: var(--ap-accent);
  margin-bottom: 14px; display: block;
}
.ap-hero-pick-title {
  font-size: 22px; font-weight: 600; line-height: 1.25;
  letter-spacing: -0.02em; margin-bottom: 12px;
}
.ap-hero-pick-title a { color: var(--ap-text); }
.ap-hero-pick-title a:hover { color: var(--ap-accent); }
.ap-hero-pick-excerpt { font-size: 15px; color: var(--ap-text-muted); line-height: 1.6; }

/* ── Section 标题（左侧短竖线 + uppercase） ─────────────── */
.ap-section { margin-bottom: 80px; }
.ap-section-head {
  display: flex; align-items: baseline; justify-content: space-between;
  padding-bottom: 20px; margin-bottom: 36px;
  border-bottom: 1px solid var(--ap-border);
}
.ap-section-title {
  position: relative;
  font-size: 13px; font-weight: 600;
  text-transform: uppercase; letter-spacing: var(--tracking-overline);
  color: var(--ap-text);
  padding-left: 16px;
}
.ap-section-title::before {
  content: ""; position: absolute; left: 0; top: 50%;
  width: 3px; height: 14px; background: var(--ap-accent);
  transform: translateY(-50%);
}
.ap-section-more {
  font-size: 13px; font-weight: 500; color: var(--ap-text-muted);
  background: none;
}
.ap-section-more:hover { color: var(--ap-accent); background: none; }

/* ── 不对称卡片网格 ─────────────────────────────────────── */
.ap-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 32px; }
.ap-card {
  grid-column: span 2;
  display: flex; flex-direction: column;
  border: 1px solid var(--ap-border);
  background: var(--ap-bg);
  transition: border-color var(--ap-transition);
}
.ap-card.ap-card-wide { grid-column: span 3; }
.ap-card.ap-card-full { grid-column: span 6; }
.ap-card:hover { border-color: var(--ap-text); }

.ap-card-img { display: block; overflow: hidden; background: var(--ap-bg-alt); }
.ap-card-img img { width: 100%; aspect-ratio: 16/10; object-fit: cover; transition: transform 0.4s ease; }
.ap-card:hover .ap-card-img img { transform: scale(1.02); }
.ap-card-body { padding: 24px; display: flex; flex-direction: column; flex: 1; }
.ap-card-cat {
  font-size: 11px; font-weight: 600; text-transform: uppercase;
  letter-spacing: var(--tracking-overline); color: var(--ap-accent);
  margin-bottom: 12px;
}
.ap-card-title {
  font-size: 20px; font-weight: 600; line-height: 1.3;
  letter-spacing: -0.02em; margin-bottom: 10px;
}
.ap-card.ap-card-wide .ap-card-title { font-size: 26px; }
.ap-card-title a { color: var(--ap-text); display: inline; }
.ap-card-title a:hover { color: var(--ap-accent); }
.ap-card-excerpt { font-size: 14px; color: var(--ap-text-muted); line-height: 1.6; margin-bottom: 16px; flex: 1; }
.ap-card-meta { font-size: 12px; color: var(--ap-text-faint); }

/* ── 分类导航条（极简文字链接） ─────────────────────────── */
.ap-catnav {
  border-top: 1px solid var(--ap-border);
  border-bottom: 1px solid var(--ap-border);
  padding: 20px 0;
}
.ap-catnav .ap-wrap { display: flex; gap: 32px; flex-wrap: wrap; align-items: center; }
.ap-catnav-label {
  font-size: 11px; font-weight: 600; text-transform: uppercase;
  letter-spacing: var(--tracking-overline); color: var(--ap-text-faint);
}
.ap-catnav-link {
  font-size: 14px; color: var(--ap-text-muted) !important;
  background: none;
}
.ap-catnav-link:hover { color: var(--ap-accent) !important; background: none; }

/* ── 文章列表（极简） ───────────────────────────────────── */
.ap-list { border-top: 1px solid var(--ap-border); }
.ap-list-item {
  display: flex; gap: 32px; padding: 24px 0;
  border-bottom: 1px solid var(--ap-border);
  align-items: baseline;
}
.ap-list-date {
  flex-shrink: 0; font-size: 12px; color: var(--ap-text-faint);
  text-transform: uppercase; letter-spacing: 0.05em;
  min-width: 80px; font-variant-numeric: tabular-nums;
}
.ap-list-body { flex: 1; }
.ap-list-title {
  font-size: 17px; font-weight: 500; color: var(--ap-text);
  display: inline; line-height: 1.4;
}
.ap-list-title:hover { color: var(--ap-accent); }
.ap-list-meta { display: block; margin-top: 6px; font-size: 12px; color: var(--ap-text-faint); }

/* ── 侧边栏 / Widget ────────────────────────────────────── */
.ap-sidebar { display: flex; flex-direction: column; gap: 56px; }
.ap-widget { padding: 0; }
.ap-widget-title {
  font-size: 13px; font-weight: 600;
  text-transform: uppercase; letter-spacing: var(--tracking-overline);
  color: var(--ap-text);
  padding-bottom: 16px; margin-bottom: 20px;
  border-bottom: 1px solid var(--ap-border);
  position: relative; padding-left: 16px;
}
.ap-widget-title::before {
  content: ""; position: absolute; left: 0; top: 2px;
  width: 3px; height: 14px; background: var(--ap-accent);
}

.ap-rank-list { counter-reset: rank; }
.ap-rank-item {
  display: flex; gap: 16px; padding: 16px 0;
  border-bottom: 1px solid var(--ap-border); counter-increment: rank;
}
.ap-rank-item:last-child { border-bottom: none; }
.ap-rank-num {
  flex-shrink: 0; font-size: 13px; font-weight: 600;
  color: var(--ap-text-faint); font-variant-numeric: tabular-nums;
  min-width: 20px;
}
.ap-rank-num::before { content: counter(rank, decimal-leading-zero); }
.ap-rank-link {
  font-size: 14px; line-height: 1.5; color: var(--ap-text) !important;
  background: none;
}
.ap-rank-link:hover { color: var(--ap-accent) !important; background: none; }

/* ── CTA 盒（极简） ─────────────────────────────────────── */
.ap-cta-box {
  border: 1px solid var(--ap-text);
  padding: 40px 32px; text-align: center;
}
.ap-cta-title { font-size: 20px; font-weight: 600; margin-bottom: 12px; letter-spacing: -0.02em; }
.ap-cta-text { font-size: 15px; color: var(--ap-text-muted); margin-bottom: 24px; line-height: 1.6; }

/* ── 按钮（极简） ───────────────────────────────────────── */
.ap-btn {
  display: inline-block; padding: 14px 28px;
  font-weight: 500; font-size: 14px;
  transition: all var(--ap-transition);
  border: 1px solid var(--ap-text);
  background: none; color: var(--ap-text);
  letter-spacing: -0.005em;
  background-image: none;
}
.ap-btn:hover { background: var(--ap-text); color: var(--ap-bg); background-image: none; }
.ap-btn-primary { background: var(--ap-accent); color: var(--ap-bg); border-color: var(--ap-accent); background-image: none; }
.ap-btn-primary:hover { background: var(--ap-accent-dark); border-color: var(--ap-accent-dark); color: var(--ap-bg); background-image: none; }
.ap-btn-block { display: block; width: 100%; text-align: center; }

/* ── 责任博彩 + 广告位 ──────────────────────────────────── */
.ap-rgbann-x578 {
  border: 1px solid var(--ap-border);
  padding: 24px; font-size: 13px; line-height: 1.7;
  color: var(--ap-text-muted);
}
.ap-rgbann-x578 a { color: var(--ap-accent); }
.ap-rgbann-x578 strong { color: var(--ap-text); font-weight: 600; }
.ap-rgbann-x578 p { margin-bottom: 8px; }
.ap-rgbann-x578 p:last-child { margin-bottom: 0; }

.ap-sitebannad-n2e5 { margin-bottom: 40px; }
.ap-sitebannad-n2e5 img { max-width: 100%; }

/* ── Footer 极简 ────────────────────────────────────────── */
.ap-footer {
  border-top: 1px solid var(--ap-border);
  padding: 80px 0 40px; margin-top: 80px;
  background: var(--ap-bg);
}
.ap-footer-grid {
  display: grid; grid-template-columns: 2fr 1fr 1fr;
  gap: 48px; margin-bottom: 48px;
}
.ap-footer-col { display: flex; flex-direction: column; gap: 12px; }
.ap-footer-brand {
  font-size: 16px; font-weight: 600; letter-spacing: -0.02em;
  color: var(--ap-text); margin-bottom: 4px;
}
.ap-footer-desc { font-size: 14px; color: var(--ap-text-muted); line-height: 1.6; max-width: 40ch; }
.ap-footer-col h4 {
  font-size: 11px; font-weight: 600;
  text-transform: uppercase; letter-spacing: var(--tracking-overline);
  color: var(--ap-text-faint); margin-bottom: 8px;
}
.ap-footer-col a {
  color: var(--ap-text-muted) !important; font-size: 14px;
  background: none;
}
.ap-footer-col a:hover { color: var(--ap-accent) !important; background: none; }

.ap-disclosure {
  font-size: 12px; color: var(--ap-text-faint); text-align: center;
  padding: 24px 0; border-top: 1px solid var(--ap-border); line-height: 1.7;
}
.ap-copyright {
  font-size: 13px; color: var(--ap-text-faint); text-align: center;
  padding-top: 8px;
}

/* ── 文章详情页 ─────────────────────────────────────────── */
.ap-posthead-va86 { margin-bottom: 40px; }
.ap-posttitl-d519 {
  font-size: var(--fs-h1); font-weight: 600;
  line-height: var(--lh-heading); letter-spacing: -0.03em;
  color: var(--ap-text); margin-bottom: 20px;
}
.ap-postmeta-k210 {
  font-size: 13px; color: var(--ap-text-muted);
  display: flex; gap: 16px; flex-wrap: wrap; align-items: center;
  padding-bottom: 20px; border-bottom: 1px solid var(--ap-border);
}
.ap-postmeta-k210 a { color: var(--ap-text) !important; background: none; }
.ap-postmeta-k210 a:hover { color: var(--ap-accent) !important; background: none; }

.ap-postcont-v641 { font-size: 17px; line-height: 1.8; color: var(--ap-text); }
.ap-postcont-v641 h2 { font-size: var(--fs-h2); margin: 48px 0 16px; font-weight: 600; letter-spacing: -0.02em; }
.ap-postcont-v641 h3 { font-size: var(--fs-h3); margin: 32px 0 12px; font-weight: 600; }
.ap-postcont-v641 p { margin-bottom: 24px; }
.ap-postcont-v641 ul, .ap-postcont-v641 ol { margin: 0 0 24px 24px; }
.ap-postcont-v641 ul { list-style: disc; }
.ap-postcont-v641 ol { list-style: decimal; }
.ap-postcont-v641 li { margin-bottom: 10px; }
.ap-postcont-v641 img { margin: 32px 0; }
.ap-postcont-v641 blockquote {
  border-left: 2px solid var(--ap-text);
  padding: 8px 0 8px 24px; margin: 32px 0;
  font-style: italic; color: var(--ap-text-muted);
  font-size: 18px;
}
.ap-postcont-v641 a { color: var(--ap-accent); text-decoration: underline; background: none; background-size: 0; }
.ap-postcont-v641 a:hover { color: var(--ap-accent-dark); background-size: 0; }
.ap-postcont-v641 table { width: 100%; border-collapse: collapse; margin: 32px 0; font-size: 15px; }
.ap-postcont-v641 th, .ap-postcont-v641 td { border-bottom: 1px solid var(--ap-border); padding: 14px 16px; text-align: left; }
.ap-postcont-v641 th { font-weight: 600; color: var(--ap-text); border-bottom: 2px solid var(--ap-text); }

.ap-postfact-x8ca {
  width: 100%; border-collapse: collapse; margin: 32px 0;
  font-size: 15px; border: 1px solid var(--ap-border);
}
.ap-postfact-x8ca th, .ap-postfact-x8ca td {
  border-bottom: 1px solid var(--ap-border); padding: 14px 18px; text-align: left; vertical-align: top;
}
.ap-postfact-x8ca th { width: 35%; color: var(--ap-text-muted); font-weight: 500; font-size: 13px; text-transform: uppercase; letter-spacing: 0.05em; }
.ap-postfact-x8ca td { color: var(--ap-text); font-weight: 400; }
.ap-postfact-x8ca tr:last-child td, .ap-postfact-x8ca tr:last-child th { border-bottom: none; }

.ap-ctaregi-w7fb {
  border: 1px solid var(--ap-text);
  padding: 40px; text-align: center; margin: 48px 0;
}
.ap-ctaregibott-w382 h2 { font-size: 24px; margin-bottom: 20px; }
.ap-ctabtn-n50c {
  display: inline-block; padding: 14px 32px; font-weight: 500; font-size: 14px;
  margin: 6px; transition: all var(--ap-transition);
  background-image: none;
}
.ap-ctabtnprim-ke72 { background: var(--ap-accent); color: var(--ap-bg); border: 1px solid var(--ap-accent); }
.ap-ctabtnprim-ke72:hover { background: var(--ap-accent-dark); border-color: var(--ap-accent-dark); color: var(--ap-bg); }
.ap-ctabtnseco-s28e { background: none; color: var(--ap-text); border: 1px solid var(--ap-border); }
.ap-ctabtnseco-s28e:hover { border-color: var(--ap-text); color: var(--ap-text); }
.ap-ctadisc-wa2f { font-size: 12px; color: var(--ap-text-faint); margin-top: 16px; }

.ap-relapost-rf87 { margin-top: 64px; padding-top: 40px; border-top: 1px solid var(--ap-border); }
.ap-relapost-rf87 h2 {
  font-size: 13px; font-weight: 600; text-transform: uppercase;
  letter-spacing: var(--tracking-overline); margin-bottom: 24px;
  position: relative; padding-left: 16px;
}
.ap-relapost-rf87 h2::before { content: ""; position: absolute; left: 0; top: 2px; width: 3px; height: 14px; background: var(--ap-accent); }
.ap-relalist-xa00 {
  display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 24px;
}
.ap-relalist-xa00 li { padding: 0; border: none; }
.ap-relalist-xa00 a {
  color: var(--ap-text); font-weight: 500; font-size: 16px;
  line-height: 1.4; display: block; padding-bottom: 12px;
  border-bottom: 1px solid var(--ap-border); background: none;
}
.ap-relalist-xa00 a:hover { color: var(--ap-accent); background: none; }

.ap-linkarti-k8a2 { margin-top: 48px; }
.ap-linkarti-k8a2 h2 {
  font-size: 13px; font-weight: 600; text-transform: uppercase;
  letter-spacing: var(--tracking-overline); margin-bottom: 24px;
  position: relative; padding-left: 16px;
}
.ap-linkarti-k8a2 h2::before { content: ""; position: absolute; left: 0; top: 2px; width: 3px; height: 14px; background: var(--ap-accent); }
.ap-artigrid-teba { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 24px; }
.ap-artigriditem-ne23 { border: 1px solid var(--ap-border); padding: 20px; }
.ap-artigriditem-ne23 a { color: var(--ap-text); font-weight: 500; background: none; }
.ap-artigriditem-ne23 a:hover { color: var(--ap-accent); background: none; }
.ap-artigriditem-ne23 strong { display: block; font-size: 15px; margin-bottom: 8px; }
.ap-artigridexce-r9bf { font-size: 13px; color: var(--ap-text-muted); display: block; margin-bottom: 8px; font-weight: 400; }
.ap-artigriditem-ne23 time { font-size: 12px; color: var(--ap-text-faint); display: block; }

.ap-brea-tdfd { font-size: 13px; color: var(--ap-text-faint); margin-bottom: 32px; padding-bottom: 0; border: none; }
.ap-brea-tdfd a { color: var(--ap-text-muted); background: none; }
.ap-brea-tdfd a:hover { color: var(--ap-accent); background: none; }

/* ── Hub 分类列表页 ─────────────────────────────────────── */
.ap-hubintr-te66 { padding: 64px 0 48px; border-bottom: 1px solid var(--ap-border); margin-bottom: 48px; }
.ap-hubintr-te66 h1 {
  font-size: var(--fs-h1); font-weight: 600;
  letter-spacing: -0.03em; line-height: var(--lh-heading);
  margin-bottom: 16px;
}
.ap-hubintr-te66 p { font-size: 17px; color: var(--ap-text-muted); line-height: 1.7; max-width: 70ch; }

.ap-hubgrid-x9cd { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 32px; }
.ap-hubcard-r696 {
  border: 1px solid var(--ap-border); background: var(--ap-bg);
  display: flex; flex-direction: column;
  transition: border-color var(--ap-transition);
}
.ap-hubcard-r696:hover { border-color: var(--ap-text); }
.ap-hubcardimg-tf85 { display: block; overflow: hidden; background: var(--ap-bg-alt); }
.ap-hubcardimg-tf85 img { width: 100%; aspect-ratio: 16/9; object-fit: cover; transition: transform 0.4s ease; }
.ap-hubcard-r696:hover .ap-hubcardimg-tf85 img { transform: scale(1.02); }
.ap-hubcardbody-t006 { padding: 24px; display: flex; flex-direction: column; flex: 1; }
.ap-hubcardtitl-qf60 { font-size: 20px; font-weight: 600; line-height: 1.3; letter-spacing: -0.02em; margin-bottom: 12px; }
.ap-hubcardtitl-qf60 a { color: var(--ap-text); }
.ap-hubcardtitl-qf60 a:hover { color: var(--ap-accent); }
.ap-hubcardexce-wc61 { font-size: 14px; color: var(--ap-text-muted); line-height: 1.6; margin-bottom: 16px; flex: 1; }
.ap-hubcarddate-qf20 { font-size: 12px; color: var(--ap-text-faint); text-transform: uppercase; letter-spacing: 0.05em; }

.ap-pagi-sfc7 {
  display: flex; justify-content: center; align-items: center;
  gap: 16px; margin-top: 64px; padding-top: 40px;
  border-top: 1px solid var(--ap-border);
}
.ap-pagi-sfc7 a, .ap-pagi-sfc7 span {
  padding: 12px 20px; font-size: 13px; font-weight: 500;
  border: 1px solid var(--ap-border);
}
.ap-pagi-sfc7 a { color: var(--ap-text); background-image: none; }
.ap-pagi-sfc7 a:hover { border-color: var(--ap-text); color: var(--ap-text); background: none; background-image: none; }
.ap-pagi-sfc7 .ap-pageinfo-qaaf { border: none; color: var(--ap-text-muted); }

/* ── 作者页 ─────────────────────────────────────────────── */
.ap-authprof-q067 {
  display: flex; gap: 32px; align-items: flex-start;
  padding: 48px 0; border-bottom: 1px solid var(--ap-border);
  margin-bottom: 48px;
}
.ap-authprof-q067 img {
  width: 96px; height: 96px; border-radius: 50%;
  object-fit: cover; flex-shrink: 0;
  border: 1px solid var(--ap-border);
}
.ap-authbio-l67c { flex: 1; }
.ap-authbio-l67c h1 { font-size: var(--fs-h1); font-weight: 600; letter-spacing: -0.03em; margin-bottom: 12px; }
.ap-authbio-l67c p { font-size: 16px; color: var(--ap-text-muted); line-height: 1.7; }

.ap-authpost-ldda .ap-section-title { font-size: 13px; }
.ap-artilist-s306 { border-top: 1px solid var(--ap-border); }
.ap-artilist-s306 li {
  padding: 20px 0; border-bottom: 1px solid var(--ap-border);
}
.ap-artilist-s306 a { font-size: 16px; font-weight: 500; color: var(--ap-text); background: none; }
.ap-artilist-s306 a:hover { color: var(--ap-accent); background: none; }
.ap-artilist-s306 time { font-size: 12px; color: var(--ap-text-faint); display: block; margin-top: 4px; }

/* ============================================================
   旧 class 兼容（防断样式） — 极简风格覆盖
   ============================================================ */
.ap-sitehead-p612 { background: var(--ap-bg); border-bottom: 1px solid var(--ap-border); }
.ap-sitehead-p612 .ap-cont-qc67 { display: flex; align-items: center; justify-content: space-between; padding: 24px; max-width: var(--ap-wrap); margin: 0 auto; }
.ap-sitelogo-d741 { color: var(--ap-text); font-size: 18px; font-weight: 600; letter-spacing: -0.02em; }
.ap-sitenav-k587 a { color: var(--ap-text-muted); font-weight: 400; font-size: 14px; padding: 8px 18px; }
.ap-sitenav-k587 a:hover { color: var(--ap-text); }
.ap-sitemain-v04c { max-width: var(--ap-wrap); margin: 0 auto; padding: 64px 24px; }

.ap-hero-w20c { padding: 80px 0 64px; border-bottom: 1px solid var(--ap-border); background: none; border-left: none; border-right: none; border-top: none; border-image: none; }
.ap-hero-w20c::before, .ap-hero-w20c::after { display: none; }
.ap-herotitl-s88f { font-size: var(--fs-hero); font-weight: 600; letter-spacing: -0.035em; line-height: var(--lh-display); margin-bottom: 24px; color: var(--ap-text); background: none; -webkit-background-clip: initial; background-clip: initial; -webkit-text-fill-color: initial; filter: none; }
.ap-herotagl-w733 { font-size: 19px; color: var(--ap-text-muted); margin-bottom: 16px; }
.ap-herointr-r001 { font-size: 16px; color: var(--ap-text-muted); margin-bottom: 24px; }
.ap-heroacti-t8b3 { display: flex; gap: 16px; flex-wrap: wrap; }

.ap-btn-tb7e { display: inline-block; padding: 14px 28px; font-weight: 500; font-size: 14px; border-radius: var(--ap-radius); transition: all var(--ap-transition); background-image: none; }
.ap-btnprim-qa7c { background: var(--ap-accent); color: var(--ap-bg); border: 1px solid var(--ap-accent); box-shadow: none; }
.ap-btnprim-qa7c:hover { background: var(--ap-accent-dark); border-color: var(--ap-accent-dark); transform: none; box-shadow: none; }
.ap-btnghos-me80 { background: none; color: var(--ap-text); border: 1px solid var(--ap-border); box-shadow: none; }
.ap-btnghos-me80:hover { border-color: var(--ap-text); background: none; box-shadow: none; }

.ap-homesect-d776 { margin-bottom: 80px; }
.ap-homesecthead-xe85 { display: flex; align-items: baseline; justify-content: space-between; padding-bottom: 20px; margin-bottom: 36px; border-bottom: 1px solid var(--ap-border); }
.ap-homesecttitl-dd80 { position: relative; font-size: 13px; font-weight: 600; text-transform: uppercase; letter-spacing: var(--tracking-overline); color: var(--ap-text); padding-left: 16px; background: none; -webkit-background-clip: initial; background-clip: initial; -webkit-text-fill-color: initial; }
.ap-homesecttitl-dd80::before { content: ""; position: absolute; left: 0; top: 50%; width: 3px; height: 14px; background: var(--ap-accent); transform: translateY(-50%); }
.ap-homesecttitl-dd80::after { display: none; }
.ap-homesectmore-ke8c { font-size: 13px; font-weight: 500; color: var(--ap-text-muted); text-transform: none; letter-spacing: 0; }
.ap-homesectmore-ke8c:hover { color: var(--ap-accent); }

.ap-homegrid-n51d { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 32px; }
.ap-homecard-vf96 { border: 1px solid var(--ap-border); background: var(--ap-bg); display: flex; flex-direction: column; transition: border-color var(--ap-transition); overflow: hidden; }
.ap-homecard-vf96::before, .ap-homecard-vf96::after { display: none; }
.ap-homecard-vf96:hover { border-color: var(--ap-text); transform: none; box-shadow: none; }
.ap-homecardimg-l130 { display: block; overflow: hidden; background: var(--ap-bg-alt); }
.ap-homecardimg-l130::after { display: none; }
.ap-homecardimg-l130 img { width: 100%; aspect-ratio: 16/10; object-fit: cover; transition: transform 0.4s ease; }
.ap-homecard-vf96:hover .ap-homecardimg-l130 img { transform: scale(1.02); }
.ap-homecardtitl-k22d { font-size: 18px; font-weight: 600; padding: 20px 20px 8px; letter-spacing: -0.02em; line-height: 1.3; }
.ap-homecardtitl-k22d a { color: var(--ap-text); }
.ap-homecardtitl-k22d a:hover { color: var(--ap-accent); }
.ap-homecardexce-wa39 { font-size: 14px; color: var(--ap-text-muted); padding: 0 20px 20px; line-height: 1.6; }

.ap-homelist-qbe9 { list-style: none; border-top: 1px solid var(--ap-border); }
.ap-homelistitem-d9a7 { display: flex; justify-content: space-between; padding: 20px 0; border-bottom: 1px solid var(--ap-border); position: relative; gap: 24px; align-items: baseline; }
.ap-homelistitem-d9a7::before { display: none; }
.ap-homelistitem-d9a7 a { font-weight: 500; color: var(--ap-text); font-size: 16px; }
.ap-homelistitem-d9a7 a:hover { color: var(--ap-accent); }
.ap-homelistitem-d9a7 time { font-size: 12px; color: var(--ap-text-faint); }

.ap-footlink-ld29 { text-align: center; padding: 24px 0; background: var(--ap-bg); border-top: 1px solid var(--ap-border); }
.ap-footlink-ld29 a { color: var(--ap-text-muted); font-size: 13px; margin: 0 12px; background: none; }
.ap-footlink-ld29 a:hover { color: var(--ap-accent); }
.ap-affidisc-n0c1 { font-size: 12px; color: var(--ap-text-faint); text-align: center; padding: 20px 0; background: var(--ap-bg); }
.ap-copy-me95 { font-size: 13px; color: var(--ap-text-faint); text-align: center; padding: 8px 0 32px; background: var(--ap-bg); }

/* ── 响应式 ─────────────────────────────────────────────── */
@media (max-width: 960px) {
  .ap-hero-grid { grid-template-columns: 1fr; gap: 48px; }
  .ap-two-col { grid-template-columns: 1fr; gap: 64px; }
  .ap-grid { grid-template-columns: repeat(2, 1fr); }
  .ap-card, .ap-card-wide { grid-column: span 2; }
  .ap-card-full { grid-column: span 2; }
  .ap-footer-grid { grid-template-columns: 1fr 1fr; }
  .ap-content-area { padding: 48px 24px; }
  .ap-hero { padding: 56px 0 48px; }
}
@media (max-width: 640px) {
  .ap-header-inner { flex-direction: column; align-items: flex-start; gap: 16px; padding: 20px 24px; }
  .ap-nav { width: 100%; overflow-x: auto; }
  .ap-grid { grid-template-columns: 1fr; }
  .ap-card, .ap-card-wide, .ap-card-full { grid-column: span 1; }
  .ap-footer-grid { grid-template-columns: 1fr; gap: 32px; }
  .ap-hero-title { font-size: 36px; }
  .ap-posttitl-d519 { font-size: 28px; }
  .ap-ctaregi-w7fb { padding: 28px 20px; }
  .ap-authprof-q067 { flex-direction: column; align-items: flex-start; gap: 20px; }
  .ap-list-item { flex-direction: column; gap: 8px; }
  .ap-list-date { min-width: 0; }
  .ap-content-area { padding: 40px 20px; }
  .ap-section { margin-bottom: 56px; }
}

/* ============================================================
   博彩信号增强层 v3 — Casino Signal (保留瑞士极简黑白差异化)
   目的：极简直角骨架不变，克制注入扑克花色 + 金色强调，让站点
        读出是 casino/gaming 评测门户，而非通用 Medium/Stripe 风。
   注意：不覆盖已用作极简装饰的 ::before（横线/竖条），改用 ::after。
   ============================================================ */
:root {
  --ap-gold:      #b8912f;   /* 克制金强调 */
  --ap-gold-dark: #8f6f1f;
}

/* Logo mark：极简黑底 + 花色（品牌信号） */
.ap-logo-mark::after {
  content: "\2660"; margin-left: 4px; color: var(--ap-gold);
  font-size: 0.8em; vertical-align: super;
}

/* HERO overline 尾部补花色序列（极简一行 casino 信号） */
.ap-hero-overline::after {
  content: "\2660 \2665 \2666 \2663";
  letter-spacing: 4px; color: var(--ap-gold); font-weight: 600;
}

/* HERO pick tag / card cat：casino-style，加方块前缀 */
.ap-hero-pick-tag::before { content: "\2666 "; color: var(--ap-gold); }
.ap-card-cat::before { content: "\2666 "; color: var(--ap-gold); }

/* 主 CTA：电光蓝保留为主，但 CTA box 加金色顶边 + play 信号 */
.ap-cta-box { border-top: 3px solid var(--ap-gold); }
.ap-cta-title::before { content: "\1F3B2  "; }

/* nav-cta：极简描边 + 金色文字（克制强调，不做实心块） */
.ap-nav-cta { border: 1px solid var(--ap-gold) !important; color: var(--ap-gold-dark) !important; }
.ap-nav-cta:hover { background: var(--ap-gold) !important; color: var(--ap-bg) !important; border-color: var(--ap-gold) !important; }

/* section title 竖条：首个 section 用金色，节奏感（casino ranking） */
.ap-rank-num { color: var(--ap-gold-dark); }

/* 卡片 hover：极简黑边→金边（游戏卡片微交互） */
.ap-card:hover, .ap-hero-pick:hover { border-color: var(--ap-gold) !important; }

/* 页脚品牌：花色收尾 */
.ap-footer-brand::after { content: "  \2660\2665\2666\2663"; color: var(--ap-gold); font-size: 0.8em; letter-spacing: 3px; }
