/* roulang page: index */
:root {
      --primary: #0F172A;
      --secondary: #1E293B;
      --accent: #10B981;
      --accent-hover: #059669;
      --text-main: #0F172A;
      --text-muted: #64748B;
      --bg-light: #F8FAFC;
      --border-color: #E2E8F0;
    }
    html {
      scroll-behavior: smooth;
    }
    body {
      background-color: #FFFFFF;
      color: #334155;
      font-family: 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;
      -webkit-font-smoothing: antialiased;
    }
    .custom-container {
      max-width: 1280px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 1.5rem;
      padding-right: 1.5rem;
    }
    .hero-bg {
      background: linear-gradient(135deg, rgba(11, 17, 32, 0.94) 0%, rgba(15, 23, 42, 0.96) 100%),
                  url('/assets/images/51758258f392aa05.png') center/cover no-repeat;
    }
    .dark-section-bg {
      background: linear-gradient(180deg, #0B1120 0%, #0F172A 100%),
                  url('/assets/images/3097ea5165e182c1.png') center/cover fixed no-repeat;
    }
    .glow-card {
      background: #FFFFFF;
      border: 1px solid #E2E8F0;
      transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    }
    .glow-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 20px 25px -5px rgba(15, 23, 42, 0.08), 0 8px 10px -6px rgba(15, 23, 42, 0.04);
      border-color: #CBD5E1;
    }
    .dark-glow-card {
      background: #1E293B;
      border: 1px solid rgba(255, 255, 255, 0.08);
      transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    }
    .dark-glow-card:hover {
      transform: translateY(-4px);
      border-color: rgba(16, 185, 129, 0.4);
      box-shadow: 0 20px 30px -10px rgba(0, 0, 0, 0.5);
    }
    .badge-live {
      position: relative;
    }
    .badge-live::before {
      content: '';
      display: inline-block;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background-color: #10B981;
      margin-right: 6px;
      box-shadow: 0 0 8px #10B981;
      animation: pulse-dot 1.8s infinite;
    }
    @keyframes pulse-dot {
      0% { opacity: 1; transform: scale(1); }
      50% { opacity: 0.4; transform: scale(1.2); }
      100% { opacity: 1; transform: scale(1); }
    }
    details summary::-webkit-details-marker {
      display: none;
    }
