
:root {
            --bg-color: #f0f0f0;
            --text-color: #333;
            --card-text-color: white;
            --card-shadow: rgba(0, 0, 0, 0.1);
            --card-shadow-hover: rgba(0, 0, 0, 0.25);
            --footer-bg: #333;
            --footer-text: white;
            /* Define card gradients for light mode (can be same as existing) */
            --windows-gradient: linear-gradient(to right, #0c74cc, #004e92);
            --android-gradient: linear-gradient(to right, #388e3c, #1b5e20);
            --apple-gradient: linear-gradient(to right, #000000, #242323);
            --mac-gradient: linear-gradient(to right, #757575, #424242);
            --linux-gradient: linear-gradient(to right, #d32f2f, #9a0007);
        }

        /* Dark mode styles applied via .dark-mode class on body */
        body.dark-mode {
            --bg-color: #121212;
            --text-color: #e0e0e0;
            --card-text-color: #e0e0e0; /* Adjust if needed for dark cards */
            --card-shadow: rgba(255, 255, 255, 0.1);
            --card-shadow-hover: rgba(255, 255, 255, 0.25);
            --footer-bg: #1e1e1e;
            --footer-text: #ccc;
            /* Define card gradients for dark mode (adjust as needed) */
            --windows-gradient: linear-gradient(to right, #004e92, #0c74cc); /* Example: reversed or darker */
            --android-gradient: linear-gradient(to right, #1b5e20, #388e3c);
            --apple-gradient: linear-gradient(to right, #000000, #424242); /* Lighter dark */
            --mac-gradient: linear-gradient(to right, #424242, #616161);
            --linux-gradient: linear-gradient(to right, #9a0007, #c62828);
            --web-gradient: linear-gradient(to right, #64aad8, #0165a8bb);
        
            .card .icon {
                opacity: 0.4; /* Slightly more visible icon in dark mode */
            }
            .card:hover .icon {
                opacity: 0.6;
            }

        }

        body {
            font-family: Arial, sans-serif;
            margin: 0;
            padding: 0;
            background-color: var(--bg-color);
            color: var(--text-color); /* Apply text color */
            transition: background-color 0.3s ease, color 0.3s ease; /* Smooth transition */
        }

        .download-container {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            padding: 2px;
            gap: 20px;
            max-width: 1200px;
            margin: 0 auto;
        }
        


        .card {
            width: calc(33.33% - 20px);
            min-width: 250px;
            max-width: 350px;
            height: 220px;
            margin: 0;
            border-radius: 10px;
            color: var(--card-text-color);
            text-align: center;
            padding-top: 20px;
            font-size: 20px; 
            font-weight: bold;
            position: relative;
            box-shadow: 0 4px 8px var(--card-shadow);
            overflow: hidden;
            transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), background 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
            animation: fadeIn 0.6s ease-out forwards;
            opacity: 0;
        }

        @media (max-width: 1024px) {
            .card {
                width: calc(33.33% - 20px);
                max-width: 300px;
            }
        }

        @media (max-width: 768px) {
            .card {
                width: calc(50% - 20px);
                min-width: 220px;
                max-width: 280px;
            }
        }

        @media (max-width: 480px) {
            .card {
                width: calc(50% - 10px);
                min-width: 180px;
            }
            .download-container {
                gap: 10px;
                padding: 10px;
            }
        }

        @media (max-width: 420px) {
            .download-container {
                display: flex;
                flex-direction: column;
                align-items: center;
                gap: 10px;
                padding: 10px;
            }
            .card {
                width: 90%;
                min-width: auto;
            }
        }

        @keyframes fadeIn {
            from { opacity: 0; transform: translateY(20px); }
            to { opacity: 1; transform: translateY(0); }
        }

        /* Stagger the animation for each card */
        .card:nth-child(1) { animation-delay: 0.1s; }
        .card:nth-child(2) { animation-delay: 0.2s; }
        .card:nth-child(3) { animation-delay: 0.3s; }
        .card:nth-child(4) { animation-delay: 0.4s; }
        .card:nth-child(5) { animation-delay: 0.5s; }

        .card .icon {
            width: 120px;
            height: 120px;
            position: absolute;
            top: 10px;
            right: 10px;
            opacity: 0.3; /* 透明图标 */
            pointer-events: none; /* 禁止图标干扰其他交互 */
            transition: opacity 0.3s ease, transform 0.3s ease; /* Add transition for hover */
        }

        .card .content {
            position: relative;
            z-index: 1; /* 确保文字内容位于图标之上 */
            padding-top: 50px;
        }

        .card p {
            font-size: 14px;
            margin-top: 5px;
        }

        .windowsBox {
            background: var(--windows-gradient);
        }

        .androidBox {
            background: var(--android-gradient);
        }

        .appleBox {
            background: var(--apple-gradient);
        }

        .macBox {
            background: var(--mac-gradient);
        }

        .linuxBox {
            background: var(--linux-gradient);
        }

        .webBox {
            background: var(--web-gradient);
        }

        .card:hover {
            transform: translateY(-12px) scale(1.03); /* Slightly larger scale on hover */
            box-shadow: 0 12px 24px var(--card-shadow-hover);
        }

        .card:hover .icon {
            opacity: 0.5; /* Make icon slightly more visible on hover */
            transform: scale(1.1); /* Scale icon slightly on hover */
        }

        .card .icon {
            /* Add transition for the icon hover effect */
            transition: opacity 0.3s ease, transform 0.3s ease;
        }

        .download-button {
            display: block;
            margin: 15px auto;
            padding: 10px 20px;
            width: 120px;
            border: none;
            border-radius: 25px;
            color: white;
            font-weight: bold;
            text-align: center;
            text-decoration: none;
            cursor: pointer;
            transition: all 0.3s ease;
            box-shadow: 0 2px 5px rgba(0,0,0,0.2);
            position: relative;
            overflow: hidden;
        }

        .windowsBox .download-button {
            background: linear-gradient(to right, #1a8cff, #0066cc);
        }

        .androidBox .download-button {
            background: linear-gradient(to right, #4caf50, #2e7d32);
        }

        .appleBox .download-button {
            background: linear-gradient(to right, #333, #000);
        }

        .macBox .download-button {
            background: linear-gradient(to right, #9e9e9e, #616161);
        }

        .linuxBox .download-button {
            background: linear-gradient(to right, #f44336, #c62828);
        }

        .download-button:hover {
            transform: translateY(-2px);
            box-shadow: 0 5px 15px rgba(0,0,0,0.3);
        }

        .download-button:active {
            transform: translateY(0);
            box-shadow: 0 2px 5px rgba(0,0,0,0.2);
        }

        footer {
            text-align: center;
            padding: 10px;
            background-color: var(--footer-bg);
            color: var(--footer-text);
            transition: background-color 0.3s ease, color 0.3s ease; /* Smooth transition */
        }
