/* roulang page: index */
:root {
      --bg-dark: #0B0D13;
      --card-dark: #141721;
      --card-hover: #1E2333;
      --primary: #7C3AED;
      --secondary: #06B6D4;
      --text-main: #F8FAFC;
      --text-muted: #94A3B8;
      --text-dim: #64748B;
      --border-color: rgba(51, 65, 85, 0.45);
    }
    * {
      box-sizing: border-box;
      scroll-behavior: smooth;
    }
    body {
      background-color: var(--bg-dark);
      color: var(--text-main);
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
      line-height: 1.75;
      overflow-x: hidden;
    }
    h1, h2, h3, h4, h5, h6 {
      line-height: 1.25;
      letter-spacing: -0.02em;
    }
    .text-gradient {
      background: linear-gradient(135deg, #F8FAFC 20%, #A78BFA 60%, #06B6D4 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .badge-chip {
      display: inline-flex;
      align-items: center;
      padding: 0.25rem 0.75rem;
      font-size: 0.75rem;
      font-weight: 600;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      border-radius: 9999px;
      background: rgba(124, 58, 237, 0.15);
      border: 1px solid rgba(124, 58, 237, 0.35);
      color: #C4B5FD;
    }
    .card-modern {
      background-color: var(--card-dark);
      border: 1px solid var(--border-color);
      border-radius: 1rem;
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
      box-shadow: 0 10px 30px -10px rgba(0, 0, 0, 0.5);
    }
    .card-modern:hover {
      background-color: var(--card-hover);
      border-color: rgba(124, 58, 237, 0.5);
      transform: translateY(-4px);
    }
    .btn-gradient {
      background: linear-gradient(135deg, #7C3AED 0%, #06B6D4 100%);
      color: #FFFFFF;
      transition: all 0.25s ease;
      font-weight: 600;
    }
    .btn-gradient:hover {
      box-shadow: 0 0 25px rgba(124, 58, 237, 0.5);
      filter: brightness(1.1);
    }
    .hero-slide {
      transition: opacity 0.8s ease-in-out;
    }
    details summary::-webkit-details-marker {
      display: none;
    }
