body {
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    font-family: 'Segoe UI', sans-serif;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}

#score-board {
    position: absolute;
    top: 20px;
    font-size: 2rem;
    pointer-events: none;
    text-shadow: 0 0 10px rgba(255,255,255,0.5);
    z-index: 10;
}

.bubble {
    position: absolute;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(5px);
    border: 2px solid rgba(255, 255, 255, 0.3);
    box-shadow: inset 0 0 20px rgba(255, 255, 255, 0.2);
    cursor: pointer;
    animation: floatUp linear forwards;
}

@keyframes floatUp {
    from { transform: translateY(110vh) rotate(0deg); }
    to { transform: translateY(-20vh) rotate(360deg); }
}

.pop {
    animation: explode 0.3s ease-out forwards;
}

@keyframes explode {
    0% { transform: scale(1); opacity: 1; }
    100% { transform: scale(2.5); opacity: 0; }
}