/* 让背景色变化更细腻、更具科技感 (升级版渐变色) */
        body {
            margin: 0;
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            /* 增加了深浅蓝、灰紫的过渡，模拟不同时区的感觉 */
            background: linear-gradient(-45deg, #f0f4ff, #e0e7ff, #f1f5f9, #dbeafe);
            background-size: 400% 400%;
            animation: gradientBG 20s ease infinite;
            font-family: "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
            padding: 18px;
            overflow-x: hidden;
            /* 防止图标漂浮出界 */
            position: relative;
            transition: background 0.35s ease;
        }

        @keyframes gradientBG {
            0% {
                background-position: 0% 50%;
            }

            50% {
                background-position: 100% 50%;
            }

            100% {
                background-position: 0% 50%;
            }
        }

        /* 核心：图标漂浮层 */
        .bg-icons-layer {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
            /* 确保在 glass-card 之下 */
            pointer-events: none;
            /* 防止遮挡鼠标点击 */
            opacity: 0.15;
            /* 整体极其隐约 */
        }

        /* 随机漂浮动画原理 */
        .floating-icon {
            position: absolute;
            color: #3b82f6;
            /* 图标主色调 (blue-500) */
            filter: blur(0.5px);
            /* 微模糊，增加距离感 */
            animation: floatRandom 30s linear infinite;
            will-change: transform, opacity;
            /* GPU 加速 */
        }

        /* 通用漂浮路径：结合位移和缩放，模拟空气中漫不经心的漂浮 */
        @keyframes floatRandom {
            0% {
                transform: translate(0, 0) scale(1) rotate(0deg);
                opacity: 0;
            }

            10% {
                opacity: 1;
            }

            /* 优雅淡入 */
            90% {
                opacity: 1;
            }

            100% {
                transform: translate(var(--x-end), var(--y-end)) scale(1.1) rotate(var(--r-end));
                opacity: 0;
                /* 优雅淡出 */
            }
        }

        /* 细节设计优化，不需改变 */
        .glass-card {
            background: rgba(255, 255, 255, 0.78);
            backdrop-filter: blur(25px);
            /* 增加了模糊度，提升高级感 */
            -webkit-backdrop-filter: blur(25px);
            border: 1px solid rgba(255, 255, 255, 0.5);
            border-radius: 32px;
            box-shadow: 0 30px 60px -12px rgba(0, 0, 0, 0.04);
            position: relative;
            z-index: 10;
        }

        .link-btn {
            background: white;
            transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            border: 1px solid #f1f5f9;
        }

        .link-btn:hover {
            transform: translateX(6px);
            box-shadow: 0 8px 15px rgba(0, 0, 0, 0.04);
            border-color: #3b82f6;
        }

        details summary::-webkit-details-marker {
            display: none;
        }

        @keyframes spin-slow {
            from {
                transform: rotate(0deg);
            }

            to {
                transform: rotate(360deg);
            }
        }

        .animate-spin-slow {
            animation: spin-slow 8s linear infinite;
        }

        .glass-card {
            background: rgba(255, 255, 255, 0.78);
            backdrop-filter: blur(20px);
            -webkit-backdrop-filter: blur(20px);
            border: 1px solid rgba(255, 255, 255, 0.5);
            border-radius: 32px;
            box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.05);
        }

        .link-btn {
            background: white;
            transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            border: 1px solid #f1f5f9;
        }

        .link-btn:hover {
            transform: translateX(6px);
            box-shadow: 0 8px 15px rgba(0, 0, 0, 0.04);
            border-color: #3b82f6;
        }

        details summary::-webkit-details-marker {
            display: none;
        }

        @keyframes spin-slow {
            from {
                transform: rotate(0deg);
            }

            to {
                transform: rotate(360deg);
            }
        }

        .animate-spin-slow {
            animation: spin-slow 8s linear infinite;
        }

        /* 弹窗挂 body，避免 glass-card 的 backdrop-filter 导致 fixed 被裁切 */
        .wechat-modal {
            position: fixed;
            inset: 0;
            z-index: 9999;
            display: none;
            pointer-events: none;
        }

        .wechat-modal.is-mobile-mode {
            display: flex;
            align-items: center;
            justify-content: center;
            padding: max(1rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(1rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));
            opacity: 0;
            visibility: hidden;
            transition: opacity 0.25s ease, visibility 0.25s ease;
        }

        .wechat-modal.is-mobile-mode.is-open {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
        }

        .wechat-modal.is-desktop-mode.is-open {
            display: block;
            pointer-events: none;
        }

        .wechat-modal-backdrop {
            position: absolute;
            inset: 0;
            background: rgba(15, 23, 42, 0.55);
        }

        .wechat-modal.is-desktop-mode .wechat-modal-backdrop {
            display: none;
        }

        .wechat-modal-dialog {
            position: relative;
            z-index: 1;
            max-height: calc(100dvh - 2rem);
            overflow: auto;
            background: #fff;
            padding: 0.75rem;
            border-radius: 1.25rem;
            border: 1px solid #f1f5f9;
            box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
        }

        .wechat-modal.is-mobile-mode .wechat-modal-dialog {
            width: min(22rem, calc(100vw - 1.25rem));
        }

        .wechat-modal.is-desktop-mode .wechat-modal-dialog {
            display: none;
            width: min(20rem, calc(100vw - 2rem));
            padding: 0.5rem;
            border-radius: 1rem;
        }

        .wechat-modal.is-desktop-mode.is-open .wechat-modal-dialog {
            display: block;
            position: fixed;
            margin: 0;
            pointer-events: auto;
            transform: translate(-50%, calc(-100% - 0.75rem));
        }

        body.wechat-modal-open {
            overflow: hidden;
        }

        .featured-entry {
            position: relative;
            transition: background 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
        }

        .featured-entry:hover {
            transform: translateY(-2px);
        }

        .featured-entry--invest {
            border: 2px solid rgba(222, 78, 64, 0.45);
            background: rgba(222, 78, 64, 0.1);
            animation: entry-breathe-invest 2.5s ease-in-out infinite;
        }

        .featured-entry--invest:hover {
            background: rgba(222, 78, 64, 0.16);
            border-color: #de4e40;
        }

        .featured-entry--card {
            border: 2px solid rgba(81, 163, 82, 0.45);
            background: rgba(81, 163, 82, 0.1);
            animation: entry-breathe-card 2.5s ease-in-out infinite;
            animation-delay: 1.25s;
        }

        .featured-entry--card:hover {
            background: rgba(81, 163, 82, 0.18);
            border-color: #51a352;
        }

        @keyframes entry-breathe-invest {

            0%,
            100% {
                box-shadow: 0 2px 10px rgba(222, 78, 64, 0.2), 0 0 0 0 rgba(222, 78, 64, 0.42);
            }

            50% {
                box-shadow: 0 4px 20px rgba(222, 78, 64, 0.35), 0 0 0 14px rgba(222, 78, 64, 0);
            }
        }

        @keyframes entry-breathe-card {

            0%,
            100% {
                box-shadow: 0 2px 10px rgba(81, 163, 82, 0.2), 0 0 0 0 rgba(81, 163, 82, 0.42);
            }

            50% {
                box-shadow: 0 4px 20px rgba(81, 163, 82, 0.35), 0 0 0 14px rgba(81, 163, 82, 0);
            }
        }

        /* ── 暗黑模式：data-theme="dark"（脚本按系统或用户选择设置） ── */
        html[data-theme="dark"] {
            color-scheme: dark;
        }

        html[data-theme="dark"] body {
            background: linear-gradient(-45deg, #0f172a, #1e1b4b, #0c1222, #172554);
        }

        html[data-theme="dark"] .bg-icons-layer {
            opacity: 0.22;
        }

        html[data-theme="dark"] .floating-icon {
            color: #60a5fa;
        }

        html[data-theme="dark"] .glass-card {
            background: rgba(15, 23, 42, 0.82);
            border-color: rgba(148, 163, 184, 0.14);
            box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.45);
            transition: background 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease;
        }

        html[data-theme="dark"] .link-btn {
            background: rgba(30, 41, 59, 0.88);
            border-color: rgba(71, 85, 105, 0.55);
        }

        html[data-theme="dark"] .link-btn:hover {
            border-color: #60a5fa;
            box-shadow: 0 8px 15px rgba(0, 0, 0, 0.35);
        }

        html[data-theme="dark"] .wechat-modal-dialog {
            background: #1e293b;
            border-color: rgba(71, 85, 105, 0.6);
            box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.55);
        }

        html[data-theme="dark"] .featured-entry--invest {
            background: rgba(222, 78, 64, 0.14);
            border-color: rgba(222, 78, 64, 0.55);
        }

        html[data-theme="dark"] .featured-entry--invest:hover {
            background: rgba(222, 78, 64, 0.22);
        }

        html[data-theme="dark"] .featured-entry--card {
            background: rgba(81, 163, 82, 0.14);
            border-color: rgba(81, 163, 82, 0.55);
        }

        html[data-theme="dark"] .featured-entry--card:hover {
            background: rgba(81, 163, 82, 0.22);
        }

        html[data-theme="dark"] .error-code {
            background: linear-gradient(135deg, #60a5fa 0%, #818cf8 45%, #38bdf8 100%);
            -webkit-background-clip: text;
            background-clip: text;
        }

        html[data-theme="dark"] .error-block-card {
            box-shadow: 0 30px 70px -20px rgba(37, 99, 235, 0.28);
        }

        html[data-theme="dark"] .error-path {
            background: rgba(30, 41, 59, 0.85) !important;
            border-color: rgba(71, 85, 105, 0.55) !important;
            color: #cbd5e1 !important;
        }

        html[data-theme="dark"] .text-slate-900 { color: #f8fafc !important; }
        html[data-theme="dark"] .text-slate-800 { color: #f1f5f9 !important; }
        html[data-theme="dark"] .text-slate-700 { color: #e2e8f0 !important; }
        html[data-theme="dark"] .text-slate-600 { color: #cbd5e1 !important; }
        html[data-theme="dark"] .text-slate-500 { color: #94a3b8 !important; }
        html[data-theme="dark"] .text-slate-400 { color: #64748b !important; }
        html[data-theme="dark"] .text-slate-300 { color: #475569 !important; }

        html[data-theme="dark"] .text-blue-600 { color: #60a5fa !important; }
        html[data-theme="dark"] .text-blue-700 { color: #93c5fd !important; }
        html[data-theme="dark"] .text-red-600 { color: #f87171 !important; }
        html[data-theme="dark"] .text-red-700 { color: #fca5a5 !important; }
        html[data-theme="dark"] .text-green-600 { color: #4ade80 !important; }
        html[data-theme="dark"] .text-green-700 { color: #86efac !important; }
        html[data-theme="dark"] .text-sky-600 { color: #38bdf8 !important; }
        html[data-theme="dark"] .text-sky-700 { color: #7dd3fc !important; }
        html[data-theme="dark"] .text-emerald-600 { color: #34d399 !important; }
        html[data-theme="dark"] .text-emerald-700 { color: #6ee7b7 !important; }
        html[data-theme="dark"] .text-indigo-600 { color: #818cf8 !important; }

        html[data-theme="dark"] .bg-white\/60 { background-color: rgba(30, 41, 59, 0.72) !important; }
        html[data-theme="dark"] .bg-white\/70 { background-color: rgba(30, 41, 59, 0.78) !important; }
        html[data-theme="dark"] .bg-white\/30 { background-color: rgba(30, 41, 59, 0.42) !important; }
        html[data-theme="dark"] .bg-white\/80 { background-color: rgba(30, 41, 59, 0.82) !important; }

        html[data-theme="dark"] .border-white { border-color: rgba(71, 85, 105, 0.55) !important; }
        html[data-theme="dark"] .border-white\/80,
        html[data-theme="dark"] .border-white\/90,
        html[data-theme="dark"] .border-white\/50 { border-color: rgba(71, 85, 105, 0.45) !important; }

        html[data-theme="dark"] .border-slate-200\/40,
        html[data-theme="dark"] .border-slate-200\/60,
        html[data-theme="dark"] .border-slate-200\/80,
        html[data-theme="dark"] .border-slate-200\/90 { border-color: rgba(71, 85, 105, 0.45) !important; }

        html[data-theme="dark"] .border-slate-100\/80 { border-color: rgba(71, 85, 105, 0.35) !important; }
        html[data-theme="dark"] .border-blue-50 { border-color: rgba(59, 130, 246, 0.25) !important; }
        html[data-theme="dark"] .border-blue-100\/50 { border-color: rgba(96, 165, 250, 0.25) !important; }

        html[data-theme="dark"] .bg-slate-100 { background-color: rgba(51, 65, 85, 0.65) !important; }
        html[data-theme="dark"] .bg-slate-200\/80,
        html[data-theme="dark"] .bg-slate-200\/90 { background-color: rgba(71, 85, 105, 0.55) !important; }

        html[data-theme="dark"] .bg-blue-50 { background-color: rgba(59, 130, 246, 0.15) !important; }
        html[data-theme="dark"] .bg-red-50 { background-color: rgba(239, 68, 68, 0.15) !important; }
        html[data-theme="dark"] .bg-green-50 { background-color: rgba(34, 197, 94, 0.15) !important; }
        html[data-theme="dark"] .bg-sky-50 { background-color: rgba(14, 165, 233, 0.15) !important; }
        html[data-theme="dark"] .bg-emerald-50 { background-color: rgba(16, 185, 129, 0.15) !important; }

        html[data-theme="dark"] details.group:hover {
            background-color: rgba(51, 65, 85, 0.55) !important;
        }

        html[data-theme="dark"] details.group[open] {
            background-color: rgba(51, 65, 85, 0.62) !important;
        }

        /* 主题切换按钮 */
        .theme-toggle {
            position: fixed;
            right: max(1.1rem, env(safe-area-inset-right));
            bottom: max(1.1rem, env(safe-area-inset-bottom));
            z-index: 9998;
            width: 2.75rem;
            height: 2.75rem;
            display: flex;
            align-items: center;
            justify-content: center;
            border: 1px solid rgba(255, 255, 255, 0.65);
            border-radius: 9999px;
            background: rgba(255, 255, 255, 0.82);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
            color: #334155;
            cursor: pointer;
            transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease;
        }

        .theme-toggle:hover {
            transform: translateY(-1px);
            box-shadow: 0 12px 28px rgba(15, 23, 42, 0.16);
        }

        .theme-toggle:active {
            transform: translateY(0);
        }

        .theme-toggle-icon {
            position: absolute;
            font-size: 1rem;
            line-height: 1;
            transition: opacity 0.25s ease, transform 0.25s ease;
        }

        html[data-theme="light"] .theme-toggle-icon--light,
        html:not([data-theme="dark"]) .theme-toggle-icon--light {
            opacity: 0;
            transform: rotate(-30deg) scale(0.7);
        }

        html[data-theme="dark"] .theme-toggle-icon--light {
            opacity: 1;
            transform: rotate(0deg) scale(1);
        }

        html[data-theme="dark"] .theme-toggle-icon--dark {
            opacity: 0;
            transform: rotate(30deg) scale(0.7);
        }

        html[data-theme="light"] .theme-toggle-icon--dark,
        html:not([data-theme="dark"]) .theme-toggle-icon--dark {
            opacity: 1;
            transform: rotate(0deg) scale(1);
        }

        html[data-theme="dark"] .theme-toggle {
            background: rgba(30, 41, 59, 0.88);
            border-color: rgba(71, 85, 105, 0.55);
            color: #fbbf24;
            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
        }