/* roulang page: index */
:root {
      --bg-dark: #090D14;
      --card-dark: #171F2E;
      --accent-green: #00F076;
      --accent-orange: #FF6B00;
    }
    * {
      box-sizing: border-box;
      -webkit-tap-highlight-color: transparent;
    }
    html {
      scroll-behavior: smooth;
    }
    body {
      background-color: var(--bg-dark);
      color: #94A3B8;
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
      overflow-x: hidden;
    }
    .neon-border {
      border: 1px solid rgba(0, 240, 118, 0.16);
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .neon-border:hover {
      border-color: rgba(0, 240, 118, 0.45);
      box-shadow: 0 10px 35px -8px rgba(0, 240, 118, 0.22);
    }
    .grid-lines {
      background-image: radial-gradient(rgba(0, 240, 118, 0.08) 1px, transparent 1px);
      background-size: 28px 28px;
    }
    .gradient-text-green {
      background: linear-gradient(135deg, #FFFFFF 30%, #00F076 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .pulse-dot {
      animation: pulseGlow 2s infinite ease-in-out;
    }
    @keyframes pulseGlow {
      0%, 100% { opacity: 1; transform: scale(1); }
      50% { opacity: 0.4; transform: scale(0.85); }
    }
    .accordion-content {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease-out, opacity 0.3s ease;
      opacity: 0;
    }
    .accordion-content.active {
      max-height: 380px;
      opacity: 1;
    }
    .faq-icon {
      transition: transform 0.3s ease;
    }
    .faq-icon.rotate-180 {
      transform: rotate(180deg);
    }
    /* 触控保底 */
    .touch-target {
      min-width: 44px;
      min-height: 44px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
    }
