/* roulang page: index */
:root {
            --brand-primary: #0B3B46;
            --brand-primary-dark: #041E24;
            --brand-accent: #00C49F;
            --brand-electric: #18A0FB;
            --bg-clinical: #F7FAFC;
            --text-heading: #0F172A;
            --text-body: #334155;
            --text-muted: #64748B;
            --border-light: #E2E8F0;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
            background-color: var(--bg-clinical);
            color: var(--text-body);
            line-height: 1.65;
            -webkit-font-smoothing: antialiased;
        }

        .bg-clinical-dark {
            background-color: var(--brand-primary-dark);
        }

        .bg-clinical-navy {
            background-color: var(--brand-primary);
        }

        .text-accent-teal {
            color: var(--brand-accent);
        }

        .border-accent-teal {
            border-color: var(--brand-accent);
        }

        .gradient-overlay {
            background: linear-gradient(135deg, rgba(11, 59, 70, 0.94) 0%, rgba(4, 30, 36, 0.96) 100%);
        }

        .card-shadow-soft {
            box-shadow: 0 4px 20px -2px rgba(11, 59, 70, 0.05), 0 2px 6px -1px rgba(11, 59, 70, 0.03);
        }

        .card-shadow-hover:hover {
            box-shadow: 0 12px 28px -4px rgba(11, 59, 70, 0.12), 0 6px 12px -2px rgba(11, 59, 70, 0.06);
            transform: translateY(-3px);
        }

        .pulse-indicator {
            box-shadow: 0 0 0 0 rgba(0, 196, 159, 0.7);
            animation: pulse-ring 2s infinite cubic-bezier(0.66, 0, 0, 1);
        }

        @keyframes pulse-ring {
            0% { box-shadow: 0 0 0 0 rgba(0, 196, 159, 0.7); }
            70% { box-shadow: 0 0 0 8px rgba(0, 196, 159, 0); }
            100% { box-shadow: 0 0 0 0 rgba(0, 196, 159, 0); }
        }

        /* 统一平滑折叠 */
        details summary::-webkit-details-marker {
            display: none;
        }
        details[open] summary svg {
            transform: rotate(180deg);
        }
