@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Kaushan+Script&display=swap");

:root {
    --body-background: #c9f2c7;
    --heading-color: #243119;
    --form-shadow-color: #aceca1;
    --form-background-color: #96be8c;
    --box-color: #243119;
    --box-empty-color: #629460;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    min-height: 100vh;
    font-family: "Roboto", sans-serif;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: var(--body-background);
}

h1 {
    font-family: "Kaushan Script", cursive;
    font-size: 30px;
    color: var(--heading-color);
}

.color-themes {
    width: 150px;
    display: flex;
    justify-content: space-between;
}

.color-themes div {
    height: 30px;
    width: 30px;
    background-color: black;
    border-radius: 50%;
}

.color-themes .green {
    background-color: #96be8c;
}

.color-themes .orange {
    background-color: #f4ac32;
}

.color-themes .blue {
    background-color: #8fa7c3;
}

main {
    display: flex;
    justify-content: space-around;
    align-items: center;
    width: 90%;
}

.form {
    width: 30vw;
    height: 20vw;
    padding: 30px;
    font-size: 18px;
    background-color: var(--form-background-color);
    box-shadow: -19px -18px 8px 0px var(--form-shadow-color);
    animation: skew 1s ease forwards;
}

@keyframes skew {
    100% {
        transform: skewY(-5deg);
    }
}

form {
    display: flex;
    flex-direction: column;
}

form input {
    width: 20%;
    height: 30px;
    margin: 10px 0;
    padding: 5px;
    border-radius: 5px;
    border: 2px rgb(102, 102, 102) solid;
    transition-duration: 0.5s;
}

form input:focus {
    border-color: rgb(17, 169, 219);
    width: 30%;
    height: 50px;
}

.submit-btn {
    width: 30%;
    height: 40px;
    background-color: white;
    margin: 20px 0;
    padding: 5px;
    font-size: 15px;
    border: 1px rgb(95, 92, 92) solid;
    border-radius: 5px;
    transition-duration: 0.5s;
}

.container {
    margin: 50px;
    display: flex;
    flex-wrap: wrap;
}

.box {
    width: 40px;
    height: 40px;
    border: 1px white solid;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 25px;
    font-weight: bold;
    color: white;
    background-color: var(--box-color);
}

.box.top {
    transform: translateY(-100vh);
    animation: moveboxes 1s ease forwards;
}

.box.bottom {
    transform: translateY(100vh);
    animation: moveboxes 1.2s ease forwards;
}

.box.left {
    transform: translateX(-100vw);
    animation: moveboxes 1.4s ease forwards;
}

.box.right {
    transform: translateX(100vw);
    animation: moveboxes 1.6s ease forwards;
}


@keyframes moveboxes {
    100% {
        transform: translate(0);
    }
}

.box.empty {
    background-color: var(--box-empty-color);
}


@media (max-width: 700px){
    main{
        flex-direction: column;
    }

    .form {
        margin: 40px 0;
        width: 100%;
        height: 50vh;
    }
}