/* roulang page: index */
:root {
      --primary-gradient: linear-gradient(135deg, #00B4D8 0%, #0077B6 100%);
      --accent-gradient: linear-gradient(135deg, #06D6A0 0%, #00B4D8 100%);
      --dark-gradient: linear-gradient(180deg, #0B132B 0%, #1C2541 100%);
    }
    body {
      color: #1C2541;
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", sans-serif;
      overflow-x: hidden;
    }
    .badge-pulse::before {
      content: '';
      position: absolute;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background-color: #06D6A0;
      animation: pulse-ring 2s cubic-bezier(0.215, 0.61, 0.355, 1) infinite;
    }
    @keyframes pulse-ring {
      0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(6, 214, 160, 0.7); }
      70% { transform: scale(1); box-shadow: 0 0 0 8px rgba(6, 214, 160, 0); }
      100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(6, 214, 160, 0); }
    }
    .text-gradient {
      background: var(--primary-gradient);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
