/* roulang page: index */
:root {
      --primary-cyan: #00F5D4;
      --primary-purple: #7928CA;
      --accent-blue: #4361EE;
      --bg-titanium: #0B0F19;
      --card-titanium: #131B2E;
      --card-hover: #1C2640;
      --text-main: #F8FAFC;
      --text-muted: #94A3B8;
      --border-glow: rgba(0, 245, 212, 0.18);
      --gold-rank: #D4AF37;
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    body {
      background-color: var(--bg-titanium);
      color: var(--text-main);
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;
      line-height: 1.65;
      overflow-x: hidden;
      scroll-behavior: smooth;
    }

    .glass-nav {
      background: rgba(11, 15, 25, 0.85);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    }

    .glow-border {
      border: 1px solid rgba(255, 255, 255, 0.08);
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .glow-border:hover {
      border-color: rgba(0, 245, 212, 0.4);
      box-shadow: 0 10px 30px -10px rgba(0, 245, 212, 0.2);
      transform: translateY(-2px);
    }

    .badge-cyan {
      background: rgba(0, 245, 212, 0.1);
      border: 1px solid rgba(0, 245, 212, 0.3);
      color: #00F5D4;
    }

    .badge-gold {
      background: rgba(212, 175, 55, 0.12);
      border: 1px solid rgba(212, 175, 55, 0.4);
      color: #FACC15;
    }

    .gradient-text {
      background: linear-gradient(135deg, #00F5D4 0%, #4361EE 50%, #7928CA 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    .btn-gradient {
      background: linear-gradient(135deg, #00F5D4 0%, #4361EE 100%);
      color: #04101E;
      font-weight: 700;
      transition: all 0.3s ease;
    }

    .btn-gradient:hover {
      box-shadow: 0 0 25px rgba(0, 245, 212, 0.5);
      transform: scale(1.02);
    }

    .btn-secondary {
      background: rgba(255, 255, 255, 0.05);
      border: 1px solid rgba(255, 255, 255, 0.15);
      color: #F8FAFC;
      transition: all 0.3s ease;
    }

    .btn-secondary:hover {
      background: rgba(255, 255, 255, 0.1);
      border-color: #00F5D4;
      color: #00F5D4;
    }

    .pulse-dot {
      animation: pulseAnimation 2s infinite cubic-bezier(0.4, 0, 0.6, 1);
    }

    @keyframes pulseAnimation {
      0%, 100% { opacity: 1; transform: scale(1); }
      50% { opacity: 0.4; transform: scale(1.2); }
    }

    /* Accordion Custom Details */
    details summary::-webkit-details-marker {
      display: none;
    }
