/* roulang page: index */
:root {
      --color-primary: #6366F1;
      --color-cyan: #06B6D4;
      --color-dark: #0F0C20;
      --color-gold: #F59E0B;
      --radius-box: 1rem;
      --transition-smooth: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    }
    body {
      background-color: #FFFFFF;
      color: #1E293B;
      overflow-x: hidden;
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
    }
    .gradient-hero-text {
      background: linear-gradient(135deg, #6366F1 0%, #06B6D4 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .card-modern-shadow {
      box-shadow: 0 4px 20px -2px rgba(15, 12, 32, 0.05), 0 2px 6px -1px rgba(15, 12, 32, 0.03);
      transition: var(--transition-smooth);
    }
    .card-modern-shadow:hover {
      box-shadow: 0 20px 25px -5px rgba(99, 102, 241, 0.12), 0 8px 10px -6px rgba(6, 182, 212, 0.08);
      transform: translateY(-3px);
    }
    .tech-code-border {
      border: 1px solid rgba(99, 102, 241, 0.25);
      background: rgba(15, 12, 32, 0.92);
      backdrop-filter: blur(12px);
    }
    .badge-chip {
      display: inline-flex;
      align-items: center;
      padding: 0.2rem 0.65rem;
      border-radius: 9999px;
      font-size: 0.75rem;
      font-weight: 600;
      background: #EEF2FF;
      color: #4F46E5;
      border: 1px solid #C7D2FE;
    }
