body {
    font-family: sans-serif;
    background-image: url("content/kawaii.jpg");
    background-position: center;
    background-repeat: no-repeat;
    min-height: 100vh;
    min-width: 100vw;
    background-size: contain;
    margin: auto;
    background-color: #dedae1;
}

.my-container {
    background-color: black;
    color: white;
    display: inline-block;
    padding: 5px;
    position: absolute;
    bottom: 5px;
    left: 5px;
    z-index: 1;
}

.typed-out {
    overflow: hidden;
    border-right: .15em solid orange;
    white-space: nowrap;
    animation: typing 1s steps(20, end) forwards, blinking .8s infinite;
    font-size: .9rem;
    width: 0;
    font-family: 'Courier New', Courier, monospace;
}

@keyframes typing {
    from {
        width: 0
    }

    to {
        width: 100%
    }
}

@keyframes blinking {
    from {
        border-color: transparent
    }

    to {
        border-color: orange;
    }
}

.askew {
    text-indent: 0;
    animation-name: unskew;
    animation-duration: .6s;
    animation-fill-mode: forwards;
    animation-iteration-count: 1;
    animation-timing-function: cubic-bezier(.75, -2, .75, 2);
    transform-origin: 86% 15%;
}

div:hover>.askew {
    animation-name: skew;
    animation-duration: 1.2s;
    animation-fill-mode: forwards;
    animation-iteration-count: 1;
    animation-timing-function: ease-in-out;
    transform-origin: 86% 15%;
}

@-webkit-keyframes skew {
    40% {
        -webkit-transform: rotate(-18deg);
        transform: rotate(-18deg);
    }

    60% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }

    to {
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg);
    }
}

@keyframes skew {
    40% {
        -webkit-transform: rotate(-18deg);
        transform: rotate(-18deg);
    }

    60% {
        -webkit-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }

    to {
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg);
    }
}

@-webkit-keyframes unskew {
    0% {
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg);
    }

    to {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

@keyframes unskew {
    0% {
        -webkit-transform: rotate(-15deg);
        transform: rotate(-15deg);
    }

    to {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

#playlist,
#timer,
#duration,
#progress,
#playlistBtn,
#volumeBtn,
#prevBtn,
#nextBtn {
    display: none;
}

.player-container {
    background-color: #000;
    color: #fff;
    display: flex;
    flex-direction: row-reverse;
    padding: 5px 9px;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 1;
}

#playBtn,
#pauseBtn {
    margin-right: 7px;
    padding: 2px 8px;
}

/* ----------------------------------------------
 * Generated by Animista on 2022-8-2 10:47:57
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation heartbeat
 * ----------------------------------------
 */
@-webkit-keyframes heartbeat {
    from {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    10% {
        -webkit-transform: scale(0.91);
        transform: scale(0.91);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    17% {
        -webkit-transform: scale(0.98);
        transform: scale(0.98);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    33% {
        -webkit-transform: scale(0.87);
        transform: scale(0.87);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    45% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
}

.heartbeat {
    -webkit-animation: heartbeat 1.5s ease-in-out infinite both;
    animation: heartbeat 1.5s ease-in-out infinite both;
}

@keyframes heartbeat {
    from {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-transform-origin: center center;
        transform-origin: center center;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    10% {
        -webkit-transform: scale(0.91);
        transform: scale(0.91);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    17% {
        -webkit-transform: scale(0.98);
        transform: scale(0.98);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }

    33% {
        -webkit-transform: scale(0.87);
        transform: scale(0.87);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }

    45% {
        -webkit-transform: scale(1);
        transform: scale(1);
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
}

.contact-info {
    position: absolute;
    bottom: 4px;
    text-align: center;
    width: 100%;
}

.contact-info a {
    color: #918383;
    font-style: italic;
    text-decoration: none;
}