/* roulang page: index */
:root {
            --brand-green: #00E599;
            --brand-orange: #FF5C00;
            --bg-night: #0B0E14;
            --card-surface: #151922;
            --card-border: #222938;
            --text-main: #FFFFFF;
            --text-muted: #94A3B8;
        }
        body {
            background-color: var(--bg-night);
            color: var(--text-main);
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            overflow-x: hidden;
        }
        .glow-border {
            border: 1px solid rgba(255, 255, 255, 0.08);
            transition: all 0.3s ease;
        }
        .glow-border:hover {
            border-color: rgba(0, 229, 153, 0.4);
            box-shadow: 0 0 20px rgba(0, 229, 153, 0.12);
        }
        .hero-banner-bg {
            background: linear-gradient(180deg, rgba(11, 14, 20, 0.75) 0%, rgba(11, 14, 20, 0.98) 100%), url('/assets/images/7ad02aec66e9fd4c.webp') center/cover no-repeat;
        }
        .badge-live {
            position: relative;
            padding-left: 1.25rem;
        }
        .badge-live::before {
            content: '';
            position: absolute;
            left: 0.35rem;
            top: 50%;
            transform: translateY(-50%);
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background-color: var(--brand-green);
            box-shadow: 0 0 8px var(--brand-green);
            animation: pulse-dot 1.8s infinite;
        }
        @keyframes pulse-dot {
            0% { opacity: 0.4; transform: translateY(-50%) scale(0.9); }
            50% { opacity: 1; transform: translateY(-50%) scale(1.3); }
            100% { opacity: 0.4; transform: translateY(-50%) scale(0.9); }
        }
        details summary::-webkit-details-marker {
            display: none;
        }
