        :root {
            --primary: #4f46e5;
            --primary-dark: #4338ca;
            --accent: #f472b6;
            --text-main: #1f2937;
            --text-light: #6b7280;
            --bg-light: #f9fafb;
            --white: #ffffff;
            --radius: 14px;
            --shadow-sm: 0 1px 3px rgba(0,0,0,0.06);
            --shadow: 0 10px 25px -5px rgba(0,0,0,0.08), 0 4px 10px -2px rgba(0,0,0,0.04);
            --shadow-lg: 0 20px 40px -8px rgba(0,0,0,0.12);
            --transition: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
        }
        * { margin:0; padding:0; box-sizing:border-box; }
        html { scroll-behavior:smooth; }
        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
            color: var(--text-main);
            background: var(--bg-light);
            line-height: 1.65;
            -webkit-font-smoothing: antialiased;
            display: flex;
            flex-direction: column;
            min-height: 100vh;
        }
        a { text-decoration:none; color:inherit; transition: color var(--transition); }
        ul { list-style:none; }
        .container { max-width:1180px; margin:0 auto; padding:0 24px; }
        .flex-between { display:flex; align-items:center; justify-content:space-between; }

        /* Header */
        header {
            background: rgba(255,255,255,0.92);
            backdrop-filter: blur(14px);
            -webkit-backdrop-filter: blur(14px);
            position: fixed;
            width:100%; top:0; z-index:1000;
            box-shadow: var(--shadow-sm);
            transition: box-shadow var(--transition);
        }
        header.scrolled { box-shadow: var(--shadow); }
        .nav-container { height:66px; }
        .logo {
            font-size:1.45rem; font-weight:800; color:var(--primary);
            letter-spacing:-0.4px; display:flex; align-items:center; gap:6px;
        }
        .logo .rocket-icon {
            display:inline-block; font-size:1.6rem;
            animation: float 2.5s ease-in-out infinite;
        }
        @keyframes float {
            0%,100%{ transform:translateY(0); }
            50%{ transform:translateY(-4px); }
        }
        .logo span { color:var(--text-main); font-weight:700; }
        nav ul { display:flex; gap:28px; align-items:center; }
        nav a {
            font-weight:500; color:var(--text-light); font-size:0.93rem;
            position:relative; padding:4px 0;
        }
        nav a::after {
            content:''; position:absolute; bottom:-2px; left:0; width:0; height:2px;
            background:var(--primary); border-radius:2px; transition:width var(--transition);
        }
        nav a:hover::after, nav a.active::after { width:100%; }
        nav a:hover, nav a.active { color:var(--primary); }
        .nav-cta {
            background:var(--primary); color:#fff !important; padding:8px 18px !important;
            border-radius:22px; font-weight:600 !important; font-size:0.88rem !important;
            transition: background var(--transition), transform var(--transition) !important;
        }
        .nav-cta:hover { background:var(--primary-dark); transform:translateY(-1px); }
        .nav-cta::after { display:none !important; }
        .mobile-menu-btn {
            display:none; background:none; border:none; cursor:pointer;
            padding:8px; flex-direction:column; gap:5px; z-index:1001;
        }
        .mobile-menu-btn span {
            display:block; width:24px; height:2.5px;
            background:var(--text-main); border-radius:3px; transition:var(--transition);
        }

        /* 主体 */
        main { flex:1; padding:100px 0 60px; }
        .page-header {
            text-align:center; margin-bottom:50px;
        }
        .page-tag {
            display:inline-block; padding:5px 14px; background:#eef2ff;
            color:var(--primary); border-radius:18px; font-size:0.82rem;
            font-weight:600; margin-bottom:14px; letter-spacing:0.3px;
        }
        .page-header h1 {
            font-size:2.5rem; font-weight:800; margin-bottom:14px;
            letter-spacing:-0.6px; color:var(--text-main);
        }
        .page-header h1 .gradient-text {
            background: linear-gradient(135deg, #4f46e5 0%, #7c3aed 40%, #ec4899 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
        }
        .page-subtitle {
            font-size:1.1rem; color:var(--text-light);
            max-width:680px; margin:0 auto;
        }

        /* 协议卡片网格 */
        .protocol-grid {
            display:grid;
            grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
            gap:24px;
            margin-bottom:60px;
        }
        .protocol-card {
            background:#fff; border-radius:var(--radius); padding:28px 24px;
            box-shadow:var(--shadow-sm); border:1px solid #f3f4f6;
            transition: all var(--transition); position:relative; overflow:hidden;
            display:flex; flex-direction:column;
        }
        .protocol-card::before {
            content:''; position:absolute; top:0; left:0; width:100%; height:3px;
            background: linear-gradient(90deg, var(--primary), var(--accent));
            opacity:0; transition:opacity var(--transition);
        }
        .protocol-card:hover {
            transform:translateY(-5px); box-shadow:var(--shadow-lg);
            border-color:#e0e7ff;
        }
        .protocol-card:hover::before { opacity:1; }
        .proto-icon {
            font-size:2.2rem; margin-bottom:14px; width:52px; height:52px;
            background:#eef2ff; color:var(--primary); border-radius:14px;
            display:flex; align-items:center; justify-content:center;
        }
        .protocol-card h3 { font-size:1.3rem; font-weight:700; margin-bottom:8px; }
        .protocol-card .proto-desc {
            color:var(--text-light); font-size:0.9rem; line-height:1.6;
            margin-bottom:16px; flex:1;
        }
        .proto-tags {
            display:flex; flex-wrap:wrap; gap:6px; margin-bottom:18px;
        }
        .proto-tags span {
            background:#f3f4f6; color:var(--text-light); padding:3px 10px;
            border-radius:15px; font-size:0.75rem; font-weight:500;
        }
        .btn-sm {
            display:inline-flex; align-items:center; gap:5px;
            padding:8px 16px; border-radius:18px; font-weight:600;
            font-size:0.85rem; background:var(--primary); color:#fff;
            transition: all var(--transition); border:none; cursor:pointer;
            text-decoration:none; justify-content:center;
        }
        .btn-sm:hover { background:var(--primary-dark); transform:translateY(-1px); }

        /* 协议对比表格 */
        .compare-section {
            background:#fff; border-radius:var(--radius); padding:40px 30px;
            box-shadow:var(--shadow); margin-bottom:60px;
            border:1px solid #f3f4f6;
        }
        .section-header {
            text-align:center; margin-bottom:35px;
        }
        .section-tag {
            display:inline-block; padding:5px 14px; background:#eef2ff;
            color:var(--primary); border-radius:18px; font-size:0.82rem;
            font-weight:600; margin-bottom:12px; letter-spacing:0.3px;
        }
        .section-header h2 {
            font-size:2rem; font-weight:750; margin-bottom:10px;
            letter-spacing:-0.3px;
        }
        .section-header p { color:var(--text-light); font-size:0.98rem; }
        .compare-table {
            width:100%; border-collapse: collapse; font-size:0.92rem;
            overflow-x:auto; display:block;
        }
        .compare-table table {
            width:100%; min-width:600px; border-collapse: collapse;
        }
        .compare-table th {
            text-align:left; padding:12px 16px; background:#f8fafc;
            font-weight:600; color:var(--text-main); border-bottom:2px solid #e5e7eb;
        }
        .compare-table td {
            padding:12px 16px; border-bottom:1px solid #f3f4f6;
            color:var(--text-light);
        }
        .compare-table tr:hover td { background:#fafbff; }
        .badge {
            display:inline-block; padding:2px 10px; border-radius:12px;
            font-size:0.75rem; font-weight:600;
        }
        .badge-green { background:#d1fae5; color:#065f46; }
        .badge-blue { background:#dbeafe; color:#1e40af; }
        .badge-purple { background:#ede9fe; color:#5b21b6; }
        .badge-orange { background:#ffedd5; color:#9a3412; }

        /* 节点推荐 */
        .node-recommend {
            display:grid;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
            gap:24px; margin-bottom:60px;
        }
        .node-card {
            background:#fff; border-radius:var(--radius); padding:22px 24px;
            box-shadow:var(--shadow-sm); border:1px solid #f3f4f6;
            transition: var(--transition); display:flex; align-items:center;
            gap:16px;
        }
        .node-card:hover { box-shadow:var(--shadow); border-color:#e0e7ff; }
        .node-flag { font-size:2rem; }
        .node-info { flex:1; }
        .node-name { font-weight:700; font-size:1rem; }
        .node-location { color:var(--text-light); font-size:0.8rem; }
        .node-ping { font-weight:700; color:#22c55e; font-size:0.9rem; }

        /* Footer */
        footer {
            background:#111827; color:#9ca3af;
            padding:55px 0 20px; margin-top:auto;
        }
        .footer-grid {
            display:grid; grid-template-columns:2fr 1fr 1fr 1fr;
            gap:36px; margin-bottom:36px;
            border-bottom:1px solid #374151; padding-bottom:36px;
        }
        .footer-brand h3 { color:#fff; font-size:1.4rem; margin-bottom:12px; font-weight:700; }
        .footer-brand p { line-height:1.7; font-size:0.9rem; max-width:280px; }
        .footer-col h4 { color:#fff; margin-bottom:16px; font-size:1rem; font-weight:600; }
        .footer-col ul li { margin-bottom:9px; }
        .footer-col a { font-size:0.9rem; }
        .footer-col a:hover { color:#fff; }
        .copyright { text-align:center; font-size:0.85rem; color:#6b7280; }

        @media (max-width:768px) {
            .mobile-menu-btn { display:flex; }
            nav ul {
                position:fixed; top:0; right:-100%; width:260px; height:100vh;
                background:#fff; flex-direction:column; padding:80px 30px 30px;
                gap:20px; box-shadow:var(--shadow-lg); transition:right var(--transition);
                z-index:999;
            }
            nav ul.open { right:0; }
            .footer-grid { grid-template-columns:1fr; gap:24px; }
            .compare-table { overflow-x:auto; }
        }