/* roulang page: index */
:root {
      --primary: #00D084;
      --primary-dark: #0A8F68;
      --accent: #FF6B35;
      --bg-deep: #0B0E14;
      --bg-dark: #0F141C;
      --bg-card: #1A2230;
      --text-main: #FFFFFF;
      --text-muted: #94A3B8;
      --border-line: #2A364F;
    }
    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
      scroll-behavior: smooth;
    }
    body {
      background-color: var(--bg-dark);
      color: #E2E8F0;
      font-family: 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', system-ui, sans-serif;
      line-height: 1.75;
      overflow-x: hidden;
    }
    .tech-grid-bg {
      background-image: radial-gradient(rgba(0, 208, 132, 0.08) 1px, transparent 1px);
      background-size: 24px 24px;
    }
    .hero-glow {
      background: radial-gradient(circle at 50% 20%, rgba(0, 208, 132, 0.15) 0%, rgba(15, 20, 28, 0) 70%);
    }
    .card-border-glow {
      border: 1px solid var(--border-line);
      transition: all 0.3s ease;
    }
    .card-border-glow:hover {
      border-color: rgba(0, 208, 132, 0.5);
      transform: translateY(-3px);
      box-shadow: 0 12px 24px -10px rgba(0, 208, 132, 0.15);
    }
    .btn-gradient {
      background: linear-gradient(135deg, #00D084 0%, #0A8F68 100%);
      transition: all 0.25s ease;
    }
    .btn-gradient:hover {
      opacity: 0.92;
      box-shadow: 0 4px 16px rgba(0, 208, 132, 0.35);
    }
