/* ===== 0066 微扑克 官方认证 · 全局样式 ===== */
:root {
  --brand: #2563eb;
  --accent: #4f46e5;
  --ink: #0f172a;
}

html { scroll-behavior: smooth; }

body {
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Segoe UI", sans-serif;
  color: var(--ink);
}

/* 渐变文字 */
.gradient-text {
  background-image: linear-gradient(90deg, #2563eb, #4f46e5);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* 网格背景 */
.bg-grid {
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 46px 46px;
}

/* 导航毛玻璃 */
.nav-blur {
  background: rgba(255,255,255,.88);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 6px 26px rgba(37,99,235,.10);
}

/* 卡片 hover */
.card-hover {
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.card-hover:hover {
  transform: translateY(-8px);
  box-shadow: 0 22px 48px rgba(37,99,235,.13);
  border-color: #bfdbfe;
}

/* 按钮辉光 */
.btn-glow {
  box-shadow: 0 10px 26px rgba(79,70,229,.36);
  transition: transform .3s ease, box-shadow .3s ease;
}
.btn-glow:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 36px rgba(79,70,229,.5);
}

/* 入场动画 */
.fade-in { animation: fadeUp .85s ease both; }
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(26px); }
  to   { opacity: 1; transform: translateY(0); }
}
.delay-1 { animation-delay: .12s; }
.delay-2 { animation-delay: .24s; }

/* FAQ 手风琴 */
.faq-item {
  border: 1px solid #dbeafe;
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  transition: box-shadow .3s ease, border-color .3s ease;
}
.faq-item.active { border-color: #4f46e5; box-shadow: 0 12px 30px rgba(37,99,235,.12); }
.faq-question {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 24px;
  font-weight: 600;
  color: #0f172a;
}
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height .45s ease, padding .45s ease;
  color: #475569;
  line-height: 1.8;
}
.faq-answer-inner { padding: 0 24px 22px; }
.faq-item.active .faq-answer { max-height: 440px; }
.faq-icon {
  flex: none;
  width: 28px; height: 28px;
  display: grid; place-items: center;
  border-radius: 50%;
  background: #eff6ff;
  color: #2563eb;
  transition: transform .35s ease, background .35s ease, color .35s ease;
}
.faq-item.active .faq-icon {
  transform: rotate(180deg);
  background: #2563eb;
  color: #fff;
}

/* 子页面横幅 */
.page-banner {
  position: relative;
  padding: 140px 0 72px;
  overflow: hidden;
  background: linear-gradient(135deg, #eff6ff 0%, #eef2ff 55%, #e0e7ff 100%);
}

/* 认证徽章 */
.cert-badge {
  animation: floatY 4.5s ease-in-out infinite;
}
@keyframes floatY {
  0%,100% { transform: translateY(0); }
  50%     { transform: translateY(-9px); }
}

/* 步骤连接线 */
.step-line::after {
  content: "";
  position: absolute;
  top: 28px;
  left: calc(50% + 40px);
  width: calc(100% - 80px);
  height: 2px;
  background: repeating-linear-gradient(90deg, #93c5fd 0 8px, transparent 8px 16px);
}
.step-line:last-child::after { display: none; }

/* 版本卡片顶部徽章 */
.version-tag {
  position: absolute;
  top: 16px;
  right: 16px;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  background: rgba(255,255,255,.9);
  color: #2563eb;
  box-shadow: 0 4px 12px rgba(37,99,235,.18);
}
