/* roulang page: index */
:root {
            --primary-teal: #0F766E;
            --accent-emerald: #10B981;
            --fluoro-green: #00D285;
            --deep-bio: #06171B;
            --cell-slate: #0D2228;
            --clean-lab: #F8FAFC;
            --cell-pale: #F0FDF4;
            --text-dark: #0F172A;
            --text-muted: #475569;
            --border-soft: #E2E8F0;
        }

        *, *::before, *::after {
            box-sizing: border-box;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            background-color: var(--clean-lab);
            color: var(--text-dark);
            margin: 0;
            padding: 0;
            overflow-x: hidden;
            -webkit-font-smoothing: antialiased;
        }

        /* 顶部导航毛玻璃 */
        .header-glass {
            background-color: rgba(255, 255, 255, 0.94);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border-bottom: 1px solid rgba(226, 232, 240, 0.85);
        }

        /* 卡片精密实验室质感 */
        .lab-card {
            background: #FFFFFF;
            border: 1px solid rgba(226, 232, 240, 0.95);
            box-shadow: 0 4px 20px -4px rgba(15, 118, 110, 0.05);
            transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .lab-card:hover {
            transform: translateY(-3px);
            box-shadow: 0 12px 28px -6px rgba(15, 118, 110, 0.12);
            border-color: rgba(16, 185, 129, 0.4);
        }

        /* 深色算法卡片 */
        .dark-algo-card {
            background: rgba(13, 34, 40, 0.85);
            border: 1px solid rgba(16, 185, 129, 0.2);
            backdrop-filter: blur(8px);
            transition: all 0.3s ease;
        }
        .dark-algo-card:hover {
            border-color: rgba(0, 210, 133, 0.6);
            box-shadow: 0 0 24px rgba(0, 210, 133, 0.15);
            transform: translateY(-2px);
        }

        /* 翠绿按钮体系 */
        .btn-bio-primary {
            background: linear-gradient(135deg, #0F766E 0%, #10B981 100%);
            color: #FFFFFF;
            font-weight: 600;
            transition: all 0.25s ease;
            box-shadow: 0 4px 14px rgba(15, 118, 110, 0.25);
        }
        .btn-bio-primary:hover {
            box-shadow: 0 6px 20px rgba(16, 185, 129, 0.35);
            transform: translateY(-2px);
        }
        .btn-bio-outline {
            border: 1.5px solid #0F766E;
            color: #0F766E;
            background: transparent;
            font-weight: 600;
            transition: all 0.25s ease;
        }
        .btn-bio-outline:hover {
            background: #F0FDF4;
            border-color: #10B981;
            color: #115E59;
        }

        /* 手风琴平滑高度动画 */
        .accordion-content {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.35s ease-out, opacity 0.3s ease;
            opacity: 0;
        }
        .accordion-content.active {
            max-height: 280px;
            opacity: 1;
        }

        /* 移动端菜单抽屉 */
        #mobileDrawer {
            transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        #mobileDrawer.translate-x-full {
            transform: translateX(100%);
        }
        #mobileDrawer.translate-x-0 {
            transform: translateX(0);
        }
