/* roulang page: index */
:root {
            --bg-base: #0B0F19;
            --bg-slate: #0F172A;
            --bg-card: #111827;
            --text-main: #F3F4F6;
            --text-muted: #9CA3AF;
            --accent-emerald: #10B981;
            --accent-gradient: linear-gradient(135deg, #6366F1 0%, #8B5CF6 100%);
            --card-border: 1px solid rgba(255, 255, 255, 0.08);
            --card-radius: 1.25rem;
        }

        body {
            background-color: var(--bg-base);
            color: var(--text-main);
            letter-spacing: 0.025em;
            line-height: 1.75;
            overflow-x: hidden;
        }

        .hero-pattern {
            background-image: radial-gradient(rgba(99, 102, 241, 0.15) 1px, transparent 1px);
            background-size: 32px 32px;
        }

        .glass-card {
            background-color: rgba(17, 24, 39, 0.75);
            backdrop-filter: blur(16px);
            border: var(--card-border);
            border-radius: var(--card-radius);
        }

        .glass-card-hover {
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .glass-card-hover:hover {
            border-color: rgba(139, 92, 246, 0.4);
            transform: translateY(-4px);
            box-shadow: 0 20px 35px -10px rgba(99, 102, 241, 0.2);
        }

        .accent-gradient-btn {
            background: var(--accent-gradient);
            transition: transform 0.2s ease, opacity 0.2s ease, box-shadow 0.2s ease;
        }
        .accent-gradient-btn:hover {
            opacity: 0.95;
            box-shadow: 0 0 25px rgba(99, 102, 241, 0.45);
        }
        .accent-gradient-btn:active {
            transform: scale(0.96);
        }
        .accent-gradient-btn:focus-visible {
            outline: 2px solid var(--accent-emerald);
            outline-offset: 2px;
        }

        /* 隐藏原生滚动条 */
        .no-scrollbar::-webkit-scrollbar {
            display: none;
        }
        .no-scrollbar {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }
