/* roulang page: index */
:root {
            --brand-blue: #0F4C81;
            --brand-cyan: #00A8B5;
            --brand-dark: #0B1E36;
            --bg-surface: #F8FAFC;
            --text-heading: #1E293B;
            --text-body: #475569;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            color: var(--text-body);
            background-color: var(--bg-surface);
            -webkit-font-smoothing: antialiased;
        }

        .hero-mesh {
            background-color: #071526;
            background-image: radial-gradient(at 10% 20%, rgba(0, 168, 181, 0.18) 0px, transparent 50%),
                              radial-gradient(at 90% 80%, rgba(15, 76, 129, 0.3) 0px, transparent 50%);
        }

        .glass-panel {
            background: rgba(255, 255, 255, 0.06);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.12);
        }

        .clean-card {
            background: #FFFFFF;
            border: 1px solid #E2E8F0;
            border-radius: 14px;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .clean-card:hover {
            transform: translateY(-4px);
            border-color: #CBD5E1;
            box-shadow: 0 14px 34px -4px rgba(15, 76, 129, 0.12);
        }

        details summary::-webkit-details-marker {
            display: none;
        }

        .badge-cyan {
            background: rgba(0, 168, 181, 0.12);
            color: #008791;
            border: 1px solid rgba(0, 168, 181, 0.24);
        }

        .btn-glow:hover {
            box-shadow: 0 0 20px rgba(0, 168, 181, 0.4);
        }
