/* roulang page: index */
:root {
      --primary: #4f46e5;
      --primary-dark: #3730a3;
      --accent: #10b981;
      --bg-dark: #090d16;
      --bg-card-dark: #111827;
      --text-main: #0f172a;
      --text-muted: #64748b;
    }
    body {
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
      color: var(--text-main);
      background-color: #f8fafc;
      overflow-x: hidden;
    }
    .hero-glow {
      background: radial-gradient(circle at 50% 30%, rgba(79, 70, 229, 0.18) 0%, rgba(16, 185, 129, 0.08) 45%, transparent 70%);
    }
    .card-hover-fx {
      transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .card-hover-fx:hover {
      transform: translateY(-4px);
      box-shadow: 0 16px 32px -8px rgba(15, 23, 42, 0.12), 0 4px 12px -2px rgba(79, 70, 229, 0.08);
    }
    .progress-ring-circle {
      transition: stroke-dashoffset 0.6s ease-in-out;
      transform: rotate(-90deg);
      transform-origin: 50% 50%;
    }
