body { 
    margin: 0; 
    padding: 0; 
    overflow: hidden; 
    background-color: #ffffff; 
    font-family: Arial, sans-serif; 
}

canvas { 
    display: block; 
    width: 100vw; 
    height: 100vh; 
    position: fixed;
    z-index: 2;
}

#loading {
    position: fixed; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%;
    background-color: rgb(0, 0, 0);
    display: flex; 
    flex-direction: column; 
    justify-content: center; 
    align-items: center;
    color: black; 
    font-size: 24px; 
    z-index: 10;
}

#progress {
    width: 50%; 
    background-color: rgba(255, 255, 255, 0.3);
    height: 20px; 
    margin-top: 20px; 
    border-radius: 10px; 
    overflow: hidden;
}

#progress-bar {
    height: 100%; 
    background-color: white; 
    width: 0%; 
    transition: width 0.3s;
}

#water-overlay {
    position: fixed; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%;
    background-color: rgba(134, 239, 174, 0.08);
    pointer-events: none; 
    z-index:3;
}

/* New screen overlay that covers the entire screen */
#screen-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background-color: rgba(187, 187, 187, 0.04);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 10;
    }

@keyframes shimmer {
    0% { background-position: 0 0; }
    100% { background-position: 500px 0; }
}

#error-message {
    color: red; 
    font-weight: bold; 
    margin-top: 20px;
    background: rgba(0,0,0,0.7); 
    padding: 10px;
    border-radius: 5px; 
    text-align: center; 
    max-width: 80%;
}
        /* Style for the audio control button and title */
        #audioControlButton {
            position: fixed;
            bottom: 20px;
            right: 20px;
            width: 40px;
            height: 40px;
            cursor: pointer;
            z-index: 20;
            opacity: 0.9;
            transition: opacity 0.3s;
            background-color: white;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 2px 5px rgba(0,0,0,0.2);
        }
        
        #audioControlButton:hover {
            opacity: 1;
        }
        
        #audioIcon {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }