/* roulang page: index */
:root {
            --primary: #1E40AF;
            --primary-hover: #1D4ED8;
            --secondary: #0284C7;
            --dark-navy: #0F172A;
            --accent: #EA580C;
            --accent-hover: #C2410C;
            --bg-main: #FFFFFF;
            --bg-surface: #F8FAFC;
            --text-main: #0F172A;
            --text-secondary: #334155;
            --text-muted: #64748B;
            --border-color: #E2E8F0;
            --radius-main: 1rem;
            --shadow-card: 0 4px 6px -1px rgba(15, 23, 42, 0.05), 0 2px 4px -2px rgba(15, 23, 42, 0.04);
            --shadow-hover: 0 20px 25px -5px rgba(30, 64, 175, 0.08), 0 8px 10px -6px rgba(30, 64, 175, 0.04);
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif;
            background-color: var(--bg-main);
            color: var(--text-main);
            line-height: 1.65;
            -webkit-font-smoothing: antialiased;
        }

        .custom-card-shadow {
            box-shadow: var(--shadow-card);
            border: 1px solid var(--border-color);
            transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
        }
        .custom-card-shadow:hover {
            transform: translateY(-4px);
            box-shadow: var(--shadow-hover);
            border-color: #BFDBFE;
        }

        /* 跑马灯滚动条 */
        @keyframes tickerScroll {
            0% { transform: translateX(0); }
            100% { transform: translateX(-50%); }
        }
        .ticker-wrapper {
            display: flex;
            width: max-content;
            animation: tickerScroll 32s linear infinite;
        }
        .ticker-wrapper:hover {
            animation-play-state: paused;
        }

        /* 呼吸小灯 */
        .pulse-light {
            box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7);
            animation: pulseWave 2s infinite;
        }
        @keyframes pulseWave {
            0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.7); }
            70% { transform: scale(1); box-shadow: 0 0 0 8px rgba(34, 197, 94, 0); }
            100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
        }

        /* 隐藏原生滚动条 */
        .no-scrollbar::-webkit-scrollbar {
            display: none;
        }
        .no-scrollbar {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }

        /* 移动端菜单切换与FAQ伸缩 */
        .faq-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease-out;
        }
        .faq-item.active .faq-content {
            max-height: 240px;
        }
        .faq-item.active .faq-icon {
            transform: rotate(180deg);
        }

/* roulang page: category1 */
:root {
      --primary: #1E40AF;
      --primary-hover: #1D4ED8;
      --secondary: #0284C7;
      --dark-navy: #0F172A;
      --accent: #EA580C;
      --accent-hover: #C2410C;
      --bg-main: #FFFFFF;
      --bg-surface: #F8FAFC;
      --text-main: #0F172A;
      --text-secondary: #334155;
      --text-muted: #64748B;
      --border-color: #E2E8F0;
      --radius-main: 1rem;
      --shadow-card: 0 4px 6px -1px rgba(15, 23, 42, 0.05), 0 2px 4px -2px rgba(15, 23, 42, 0.04);
      --shadow-hover: 0 20px 25px -5px rgba(30, 64, 175, 0.08), 0 8px 10px -6px rgba(30, 64, 175, 0.04);
    }
    body {
      font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif;
      background-color: var(--bg-main);
      color: var(--text-main);
      line-height: 1.65;
      -webkit-font-smoothing: antialiased;
    }
    .custom-card-shadow {
      box-shadow: var(--shadow-card);
      border: 1px solid var(--border-color);
      transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
    }
    .custom-card-shadow:hover {
      transform: translateY(-4px);
      box-shadow: var(--shadow-hover);
      border-color: #BFDBFE;
    }
    .filter-btn.active {
      background-color: #1E40AF;
      color: #FFFFFF;
      border-color: #1E40AF;
    }
    .table-container {
      scrollbar-width: thin;
      scrollbar-color: #CBD5E1 #F1F5F9;
    }
    .table-container::-webkit-scrollbar {
      height: 6px;
    }
    .table-container::-webkit-scrollbar-thumb {
      background: #CBD5E1;
      border-radius: 9999px;
    }
