/* roulang page: index */
:root {
      --primary-gradient: linear-gradient(135deg, #00D2B4 0%, #0066FF 100%);
      --accent-gradient: linear-gradient(135deg, #FF6B00 0%, #FF8A00 100%);
      --dark-mesh: radial-gradient(at 0% 0%, rgba(0, 210, 180, 0.15) 0px, transparent 50%),
                    radial-gradient(at 100% 100%, rgba(0, 102, 255, 0.2) 0px, transparent 50%);
    }
    body {
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
      color: #334155;
      background-color: #FFFFFF;
      overflow-x: hidden;
    }
    .text-gradient {
      background: var(--primary-gradient);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .bg-gradient-brand {
      background: var(--primary-gradient);
    }
    .badge-pulse::after {
      content: '';
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      border-radius: 9999px;
      background: inherit;
      animation: badgePulse 2s cubic-bezier(0, 0, 0.2, 1) infinite;
      z-index: -1;
    }
    @keyframes badgePulse {
      0% { transform: scale(1); opacity: 0.8; }
      100% { transform: scale(2.4); opacity: 0; }
    }
