:root {
    --blue: #4385f5;
    --yellow: #fcbc05;
    --green: #33a752;
    --red: #ea4235;

    --top-offset: 100px;
    --blade-width: 60px;
    --blade-height: 30px;

    --rotation-speed: 10s;
    --appear-duration: 600ms;

    --border-radius: 5px;
    --card-border: 1px solid black;
}

html,
body {
    height: 100%;
    overflow-y: hidden;
}

body {
    font-family: Arial, Helvetica, sans-serif;
    background-color: #333;
    perspective: 25rem;
}

.container {
    height: 250px;
    width: 150px;
    margin: 0 auto;
    cursor: pointer;
}

.card {
    width: 100%;
    height: 100%;
    background-color: white;
    margin: 50% auto;
    transform-style: preserve-3d;
    position: relative;
    animation: rotate 1s linear infinite;
    transition: transform 300ms ease-in-out;
    border-radius: var(--border-radius);
}

.container:hover > .card,
.container:focus > .card {
    transform: rotateY(180deg);
}

.back,
.front {
    box-sizing: border-box;
    background-color: lavender;
    height: 100%;
    width: 100%;
    position: absolute;
    border-radius: var(--border-radius);
    border: var(--card-border);
    display: flex;
    justify-content: center;
    align-items: center;
}

.back {
    border: 10px solid white;
}

.center {
    height: 70%;
    width: 70%;
    background-color: #aaa;
    border-radius: 100%;
}

.front {
    background-color: white;
    transform: translateZ(-1px) scaleX(-1);
    flex-direction: column;
}

.front {
    font-size: 4rem;
}

.front > span {
    text-transform: lowercase;
    font-weight: bold;
    font-size: 0.6rem;
    margin-top: 0.6rem;
}
