/* roulang page: index */
:root {
      --color-bg: #090D12;
      --color-card: #121820;
      --color-neon: #00F59B;
      --color-amber: #F59E0B;
      --color-border: rgba(255, 255, 255, 0.08);
      --font-mono: 'JetBrains Mono', 'DIN Next', monospace;
    }

    body {
      background-color: var(--color-bg);
      color: #E2E8F0;
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
      overflow-x: hidden;
      -webkit-font-smoothing: antialiased;
    }

    /* 算法脉冲扫描网格纹理 */
    .bg-grid-pattern {
      background-image: radial-gradient(rgba(0, 245, 155, 0.07) 1px, transparent 1px), radial-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px);
      background-size: 32px 32px, 8px 8px;
      background-position: 0 0, 16px 16px;
    }

    /* 运动HUD科技感微发光 */
    .hud-glow {
      box-shadow: 0 0 25px -5px rgba(0, 245, 155, 0.25);
    }

    .amber-glow {
      box-shadow: 0 0 25px -5px rgba(245, 158, 11, 0.25);
    }

    .border-glow:hover {
      border-color: rgba(0, 245, 155, 0.45);
      box-shadow: 0 10px 30px -10px rgba(0, 245, 155, 0.15);
    }

    /* 数据看板微光扫描线动画 */
    @keyframes scanline {
      0% { transform: translateY(-100%); }
      100% { transform: translateY(1000%); }
    }
    .animate-scan {
      animation: scanline 8s linear infinite;
    }

    /* 触控交互优化 */
    .touch-target {
      min-height: 44px;
      min-width: 44px;
    }
