/* 红龙扑克免费下载 —— 0059 主题样式 */
html { scroll-behavior: smooth; }

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

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

/* 网格背景 */
.bg-grid {
  background-image:
    linear-gradient(rgba(16, 185, 129, 0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(16, 185, 129, 0.08) 1px, transparent 1px);
  background-size: 40px 40px;
}

/* 导航毛玻璃 */
.nav-blur {
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 6px 30px rgba(16, 185, 129, 0.10);
}

/* 卡片悬浮 */
.card-hover {
  transition: transform .4s cubic-bezier(.22, .61, .36, 1), box-shadow .4s ease, border-color .4s ease;
}
.card-hover:hover {
  transform: translateY(-10px);
  box-shadow: 0 26px 50px rgba(16, 185, 129, 0.16);
  border-color: rgba(16, 185, 129, 0.35);
}

/* 按钮光晕 */
.btn-glow {
  animation: glowPulse 2.4s infinite;
}
@keyframes glowPulse {
  0% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.55); }
  70% { box-shadow: 0 0 0 18px rgba(16, 185, 129, 0); }
  100% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0); }
}

/* 入场动画 */
.fade-in {
  animation: fadeIn .9s ease both;
}
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: none; }
}

/* FAQ 手风琴 */
.faq-item {
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  transition: box-shadow .3s ease;
}
.faq-item.open {
  box-shadow: 0 12px 30px rgba(16, 185, 129, 0.10);
  border-color: rgba(16, 185, 129, 0.30);
}
.faq-question { cursor: pointer; }
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height .4s ease, padding .4s ease;
  padding: 0 20px;
}
.faq-item.open .faq-answer { max-height: 320px; padding: 0 20px 18px; }
.faq-icon { transition: transform .4s ease; }
.faq-item.open .faq-icon { transform: rotate(180deg); }
