
        :root {
            --primary-color: #3498db;
            --secondary-color: #2ecc71;
            --accent-color: #e74c3c;
            --dark-color: #2c3e50;
            --light-color: #ecf0f1;
        }
        
        body {
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
            margin: 0;
            padding: 0;
            min-height: 100vh;
            background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);
            background-size: 400% 400%;
            animation: gradient 15s ease infinite;
            display: flex;
            flex-direction: column;
        }
        
        @keyframes gradient {
            0% {
                background-position: 0% 50%;
            }
            50% {
                background-position: 100% 50%;
            }
            100% {
                background-position: 0% 50%;
            }
        }
        
        .mobile-container {
            max-width: 100%;
            margin: auto;
            padding: 20px;
            flex: 1;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }
        
        .button-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 20px;
            padding: 15px;
        }
        
        .mobile-button {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            background-color: rgba(255, 255, 255, 0.9);
            border-radius: 15px;
            padding: 15px 10px;
            text-decoration: none;
            color: var(--dark-color);
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
            transition: all 0.3s ease;
            border: none;
            position: relative; /* Ditambah untuk kedudukan badge */
        }
        
        .mobile-button:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
            background-color: white;
        }
        
        .mobile-button i {
            font-size: 2rem;
            margin-bottom: 10px;
            color: var(--primary-color);
        }
        
        .mobile-button .button-title {
            font-size: 0.9rem;
            font-weight: 600;
            text-align: center;
        }

        /* Gaya untuk Badge */
        .paid-badge {
            position: absolute;
            top: -5px; /* Laraskan kedudukan atas jika perlu */
            right: -5px; /* Laraskan kedudukan kanan jika perlu */
            background-color: var(--accent-color); /* Warna latar badge */
            color: white; /* Warna teks badge */
            padding: 3px 6px; /* Padding dalam badge */
            font-size: 0.7rem; /* Saiz fon badge */
            font-weight: bold;
            border-radius: 5px; /* Bulatkan sudut badge */
            box-shadow: 0 2px 4px rgba(0,0,0,0.2); /* Bayang untuk badge */
        }
        
        /* Specific button colors */
        .button-kolam-saya i { color: #3498db; }
        .button-tambah-kolam i { color: #2ecc71; }
        .button-tournament-baru i { color: #e74c3c; }
        .button-senarai-tournament i { color: #f39c12; }
        .button-leaderboard i { color: #9b59b6; }
        .button-senarai-booking i { color: #1abc9c; }
        .button-booking-saya i { color: #d35400; }

        /* Warna ikon untuk butang Paid User (jika perlu, boleh diselaraskan) */
        .button-kapal-saya i { color: #007bff; } /* Biru */
        .button-tambah-kapal i { color: #28a745; } /* Hijau */
        .button-tempahan i { color: #ffc107; } /* Kuning */
        .button-cari-kapal i { color: #17a2b8; } /* Cyan */
        .button-tempah-kapal i { color: #fd7e14; } /* Oren */
        .button-senarai-kapal i { color: #6c757d; } /* Kelabu */

        /* Responsive adjustments */
        @media (min-width: 481px) and (max-width: 767px) {
            .button-grid {
                grid-template-columns: repeat(3, 1fr);
            }
        }
        
        @media (min-width: 768px) {
            .mobile-container {
                display: none;
            }
            
            .desktop-message {
                display: flex;
                justify-content: center;
                align-items: center;
                height: 100vh;
                color: white;
                font-size: 1.5rem;
                text-align: center;
                padding: 20px;
            }
        }
        
        @media (max-width: 480px) {
            .button-grid {
                grid-template-columns: repeat(3, 1fr);
                gap: 15px;
            }
            
            .mobile-button {
                padding: 12px 8px;
            }
            
            .mobile-button i {
                font-size: 1.8rem;
            }
            
            .mobile-button .button-title {
                font-size: 0.8rem;
            }
            .paid-badge { /* Laraskan saiz & kedudukan badge untuk skrin kecil */
                top: -3px;
                right: -3px;
                font-size: 0.6rem;
                padding: 2px 4px;
            }
        }
        
        @media (max-width: 360px) {
            .button-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }
        
        .header {
            text-align: center;
            color: white;
            margin-bottom: 30px;
        }
        
        .header h1 {
            font-weight: 700;
            text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
        }