:root {
    --baseColor: #d3d3d3;
}

/* Click Container CSS */
.click-container {
    height: 100vh;
    display: flex;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    background-color: #000000ea;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);

    p {
        font: bold 1.2em 'Source Code Pro', sans-serif;
        text-shadow: 2px 2px 8px white;;
    }
}

/* Main Container CSS */
.main-container {
    height: 100vh;
    display: none;
    margin: 10px auto;
    max-width: 800px;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    opacity: 0;
    transform: translateY(75px);
    transition: opacity 0.5s ease, transform 0.5s ease;

    /* Card CSS */
    .card-container {
        width: 100%;
        display: flex;
        margin: 0 20px;
        padding: 20px;
        border-radius: 30px;
        align-items: center;
        flex-direction: column;
        justify-content: center;
        background-color: #00000075;
        backdrop-filter: blur(5px);
        -webkit-backdrop-filter: blur(5px);

        /* TOP CONTENT CSS */
        .top-content {
            gap: 15px;
            display: flex;
            align-items: center;
            flex-direction: column;
            justify-content: center;

            .img-wrapper {
                display: inline-block;
                border-radius: 50%;
                border: 4px solid var(--baseColor);
                padding: 0;
                overflow: hidden;
                width: 108px; 
                height: 108px;
                box-sizing: border-box;
                transition: border-color 0.3s;
                box-shadow: 2px 2px 8px white;

                img { 
                    display: block;
                    border-radius: 50%;
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                    transition: transform 0.3s;
                    cursor: pointer;
                    transform: scale(1);
                }
                img:hover {
                    transform: scale(1.1);
                }
            }

            h2 {
                cursor: pointer;
                text-align: center;
                text-shadow: 2px 2px 8px white;
            }
        }

        /* TITLE CONTENT CSS */
        .title-content {
            margin: 20px 0;
            text-align: center;

            p {
                font: italic 1em 'Raleway', sans-serif;

                span {
                    color: var(--baseColor);
                }
            }
        }

        /* SOCIAL CONTENT CSS */
        .social-content {
            gap: 25px;
            display: flex;
            margin: 10px 0;
            align-items: center;
            flex-direction: row;
            justify-content: center;

            .social-button {
                text-shadow: 1px 1px 3px white;
                font-size: 1.5em;
                transition: all 100ms ease-in-out, transform 150ms ease-in-out;
            }
        }
    }

    /* Audio Container CSS */
    .audio-container {
        width: 100%;
        margin: 20px 40px;
        background-color: #00000075;
        backdrop-filter: blur(5px);
        -webkit-backdrop-filter: blur(5px);
        border-radius: 15px;
        padding: 10px 15px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        color: white;
    }
    
    .audio-controls {
        display: flex;
        width: 100%;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
    }

    .song-info {
        display: none;
    }
    
    .audio-left {
        display: flex;
        align-items: center;
        gap: 10px;
    }
    
    .audio-left img {
        display: none;
        width: 40px;
        height: 40px;
        border-radius: 5px;
        object-fit: cover;
    }
    
    .song-info span {
        font: bold 1em 'Source Code Pro', sans-serif;
    }
    
    .audio-right {
        flex-grow: 1;
        display: flex;
        align-items: center;
        gap: 8px;
    }
    
    .audio-right input[type="range"] {
        flex-grow: 1;
        appearance: none;
        height: 4px;
        border-radius: 2px;
        background: var(--baseColor);
    }
    
    .audio-right input[type="range"]::-webkit-slider-thumb {
        appearance: none;
        width: 10px;
        height: 10px;
        background: white;
        border-radius: 50%;
        border: 1px solid var(--baseColor);
    }
    
    .audio-right span {
        font: 0.9em 'Source Code Pro', sans-serif;
    }
    
    .audio-right button {
        background: none;
        border: none;
        color: white;
        font-size: 1.2em;
        cursor: pointer;
    }
}



/* Responsive CSS */
@media screen and (min-width: 884px) {
    /* Click Container */
    .click-container {
        p {
            font-size: 1.8em!important;
        }
    }
    /* Card Container */
    .card-container {
        width: 800px!important;

        .top-content {
            h2 {
                font: bold 1.8em Helvetica, sans-serif;
            }
        }
        
        .title-content {
            p {
                font: italic 1.15em 'Raleway', sans-serif!important;
            }
        }   

        .social-content {
            gap: 30px!important;
            .social-button {
                font-size: 2.2em!important;
            }
            
            .instagram:hover {
                text-shadow: 2px 2px 5px purple;
                color: #9f009f;
                transform: scale(1.2);
            }

            .discord:hover {
                text-shadow: 2px 2px 5px blue;
                color: #3f3fe6;
                transform: scale(1.2);
            }

            .mail:hover {
                text-shadow: 2px 2px 5px orange;
                color: #dba94d;
                transform: scale(1.2);
            }
        }
    }

    .audio-container {
        .song-info {
            display: initial;
        }

        img {
            display: flex!important;
        }
    }
}