/* roulang page: index */
:root {
        --color-primary: #00D285;
        --color-primary-hover: #00B36E;
        --color-accent: #FF5722;
        --color-dark: #0F141C;
        --color-deep: #0B0F17;
        --color-border: #E2E8F0;
        --shadow-soft: 0 10px 30px -5px rgba(15, 20, 28, 0.05);
        --shadow-hover: 0 20px 35px -5px rgba(0, 210, 133, 0.12);
      }
      
      body {
        font-family: 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', system-ui, sans-serif;
        background-color: #F8FAFC;
        color: #1E293B;
        overflow-x: hidden;
      }

      .sports-grid-bg {
        background-image: radial-gradient(rgba(0, 210, 133, 0.08) 1px, transparent 1px);
        background-size: 24px 24px;
      }

      .card-transition {
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
      }

      .card-transition:hover {
        transform: translateY(-4px);
        box-shadow: var(--shadow-hover);
      }

      .badge-indicator {
        position: relative;
      }
      .badge-indicator::before {
        content: '';
        position: absolute;
        width: 8px;
        height: 8px;
        background: #00D285;
        border-radius: 50%;
        left: -14px;
        top: 50%;
        transform: translateY(-50%);
        box-shadow: 0 0 8px #00D285;
      }

      /* 手风琴平滑动效 */
      .faq-content {
        transition: max-height 0.35s ease-out, opacity 0.3s ease-out;
      }

      /* 首屏轮播过渡 */
      .slide-item {
        transition: opacity 0.8s ease-in-out;
      }

      /* 隐藏滚动条 */
      .no-scrollbar::-webkit-scrollbar {
        display: none;
      }
      .no-scrollbar {
        -ms-overflow-style: none;
        scrollbar-width: none;
      }
