* { margin: 0; padding: 0; box-sizing: border-box; }
body {
    font-family: 'Poppins', sans-serif;
    background: linear-gradient(135deg, #0A0E27, #1A1A3E);
    min-height: 100vh;
    color: #fff;
    padding: 12px 16px 80px;
}
.glass {
    background: rgba(0,0,0,0.4);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(100,150,255,0.1);
    border-radius: 16px;
    padding: 20px;
}
.header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.logo { font-family: 'Orbitron', sans-serif; font-weight: 700; font-size: 18px; }
.logo span { color: #FFD700; }
.wallet-btn { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); border-radius: 12px; padding: 8px 16px; color: #fff; cursor: pointer; font-size: 13px; }
.balance { text-align: center; padding: 24px; margin-bottom: 16px; }
.balance .label { font-size: 13px; color: #A0A0C0; }
.balance .amount { font-family: 'Orbitron', sans-serif; font-size: 32px; font-weight: 700; color: #FFD700; margin: 8px 0 12px; }
.actions { display: flex; gap: 10px; }
.actions button { flex: 1; padding: 12px; border: none; border-radius: 12px; font-weight: 600; font-size: 14px; cursor: pointer; }
.btn-deposit { background: #FFD700; color: #0A0E27; }
.btn-withdraw { background: rgba(255,255,255,0.05); color: #fff; border: 1px solid rgba(255,255,255,0.1); }
.quick-actions { display: flex; gap: 10px; margin-bottom: 16px; }
.quick-action { flex: 1; text-align: center; padding: 12px; cursor: pointer; transition: all 0.3s ease; }
.quick-action:hover { border-color: #FFD700; }
.quick-action div { font-size: 24px; }
.quick-action span { font-size: 12px; color: #A0A0C0; display: block; margin-top: 4px; }
.games-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin: 16px 0; }
.game-card { background: rgba(0,0,0,0.3); border: 1px solid rgba(255,255,255,0.05); border-radius: 14px; padding: 16px 8px; text-align: center; cursor: pointer; }
.game-card .icon { font-size: 28px; display: block; }
.game-card .name { font-size: 12px; margin-top: 6px; }
.game-card .badge { display: inline-block; background: #FFD700; color: #0A0E27; font-size: 9px; font-weight: 700; padding: 2px 10px; border-radius: 12px; margin-top: 4px; }
.social-icons { display: flex; justify-content: center; gap: 16px; margin: 10px 0; font-size: 20px; }
.social-icons a { color: #A0A0C0; transition: 0.3s; }
.social-icons a:hover { color: #FFD700; }
.footer { text-align: center; font-size: 12px; color: #A0A0C0; margin-top: 20px; padding-top: 16px; border-top: 1px solid rgba(255,255,255,0.05); }
.footer .age { color: #FFD700; font-weight: 600; }
.bottom-nav { position: fixed; bottom: 0; left: 0; right: 0; display: flex; justify-content: space-around; padding: 8px 0 6px; background: rgba(10,14,39,0.95); backdrop-filter: blur(20px); border-top: 1px solid rgba(255,255,255,0.05); z-index: 200; }
.nav-item { display: flex; flex-direction: column; align-items: center; gap: 2px; cursor: pointer; color: #A0A0C0; padding: 4px 10px; border-radius: 10px; }
.nav-item.active { color: #FFD700; }
.nav-item i { font-size: 20px; }
.nav-item span { font-size: 9px; }
/* ============================================
   Animation Effects
   ============================================ */

/* Golden pulse animation */
@keyframes goldenPulse {
    0%, 100% { box-shadow: 0 0 20px rgba(255,215,0,0.3); }
    50% { box-shadow: 0 0 60px rgba(255,215,0,0.8); }
}

.golden-pulse {
    animation: goldenPulse 1s ease-in-out 3;
}

/* Win celebration */
@keyframes winCelebration {
    0% { transform: scale(1); }
    25% { transform: scale(1.1) rotate(-2deg); }
    50% { transform: scale(1.05) rotate(2deg); }
    75% { transform: scale(1.08) rotate(-1deg); }
    100% { transform: scale(1) rotate(0deg); }
}

.win-celebration {
    animation: winCelebration 0.6s ease-in-out;
}

/* Lose shake */
@keyframes loseShake {
    0%, 100% { transform: translateX(0); }
    20% { transform: translateX(-10px) rotate(-2deg); }
    40% { transform: translateX(10px) rotate(2deg); }
    60% { transform: translateX(-5px); }
    80% { transform: translateX(5px); }
}

.lose-shake {
    animation: loseShake 0.5s ease-in-out;
}

/* Card flip 3D */
.card-3d {
    perspective: 800px;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    transform-style: preserve-3d;
}

.card-3d.flipped {
    transform: rotateY(180deg);
}

/* Particle effect */
.particle {
    position: fixed;
    border-radius: 50%;
    pointer-events: none;
    z-index: 9999;
    animation: particleFly 1s ease-out forwards;
}

@keyframes particleFly {
    0% {
        opacity: 1;
        transform: translate(0, 0) scale(1);
    }
    100% {
        opacity: 0;
        transform: translate(var(--tx), var(--ty)) scale(0);
    }
}

/* Glow effect */
.glow-gold {
    animation: glowGold 1.5s ease-in-out infinite alternate;
}

@keyframes glowGold {
    from { text-shadow: 0 0 10px rgba(255,215,0,0.2); }
    to { text-shadow: 0 0 30px rgba(255,215,0,0.8), 0 0 60px rgba(255,215,0,0.4); }
}

/* Shake for dice */
@keyframes diceShake {
    0%, 100% { transform: rotate(0deg); }
    25% { transform: rotate(-15deg) scale(1.05); }
    75% { transform: rotate(15deg) scale(1.05); }
}

.dice-shake {
    animation: diceShake 0.4s ease-in-out;
}