form {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 40px 20px;
    border-top: 2px solid white;
    padding: 20px 0px;
    transition: 200ms;
    transform: translateY(-100px);
}

form label {
    width: 25%;
    min-width: 80px;
}

form button {
    border: 2px white solid;
    background-color: black;
    color: white;
    padding: 10px;
    border-radius: 20px;
    width: 300px;
    margin: 20px;
    cursor: pointer;
    transition: 200ms;
}

canvas {
    cursor: grab;
}



.field {
    width: 300px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 10px;
}

.field input {
    outline: none;
    color: white;
    background-color: black;
    border: 2px white solid;
    padding: 10px;
    border-radius: 20px;
}

.color input{
  width: 150px;
  padding: 2px;
  border-radius: 0;

}

.color label{
  min-width: 150px;
}

.characters {
    display: flex;
    width: 100%;
    justify-content: center;
}

.characters img {
    object-fit: contain;
    width: 100%;
}

#div-canvas-luke, #div-canvas-vador {
    height: 400px;
    width: 100%;
}

.character {
    display: flex;
    align-items: center;
    flex-direction: column;
    width: 50%;
}

.character button {
    padding: 10px;
    width: 200px;
    background-color: black;
    color: white;
    border: 2px red solid;
    border-radius: 15px;
    cursor: pointer;
    transition: 250ms;
}

.luke button{
   border-color: greenyellow;
}

.vador {
    position: relative;
    animation: moveFromLeft 500ms forwards;
    animation-timing-function: cubic-bezier(.85,0,.25,.99);
    left: -100%;
}
.luke{
    position: relative;
    animation: moveFromRight 500ms forwards;
    animation-timing-function: cubic-bezier(.85,0,.25,.99);
    right: -100%;
}

@media (max-width: 560px) {
   .characters{
    flex-direction: column;
   }
   .character {
    width: 100%;
   }
   .luke{
    margin: 30px 0px;
   }
   form button {
    width: 250px;
   }
}

@keyframes moveFromLeft {
    0% {
        left: -100%;
    }
    100% {
        left: 0px;
    }
}

@keyframes moveFromRight {
    0%{
        right: -100%;
    }
    100%{
        right: 0px;
    }
}
:root {
    --margin-top-section : 20px;
    --height-header: 70px;
    --height-footer: 50px;
}


body{
    margin: 0;
    font-family: 'Roboto', sans-serif; 
    background-color: black;
    color: white;
    overflow-x: hidden;
}

header {
    position: absolute;
    top: 0;
    height: var(--height-header);
    width: 100%;
    border-bottom: 2px red solid;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1;
}

h1 {
    font-weight: normal;
    text-align: center;
    margin: 0;
}

section {
    margin-top: calc(var(--margin-top-section) + var(--height-header));
    width: 50%;
    margin-left: 25%;
    position: relative;
    min-height: calc(95vh - var(--margin-top-section) - var(--height-header));
    display: flex;
    flex-direction: column;
    align-items: center;
}


footer {
    background-color: black;
    border-top: 2px greenyellow solid;
    width: 100%;
    height: var(--height-footer);
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 1;
}

footer p {
    margin: 0;
}

@keyframes turn-loader{
    0%{
        transform: rotateZ(0deg);
    }
    100%{
        transform: rotateZ(360deg);
    }
}

.loader{
    position: absolute;
    top: calc(50% - 15px);
    left: calc(50% - 15px);
    height: 30px;
    width: 30px;
    border-radius: 100%;
    border-top: 3px solid greenyellow;
    border-bottom: 3px solid greenyellow;
    border-left: 3px solid red;
    border-right: 3px solid red;
    animation : turn-loader 1000ms infinite linear;
}

.red-illumination:hover {
    box-shadow: 0px 0px 7px 2px red;
}

.green-illumination:hover {
    box-shadow: 0px 0px 7px 2px greenyellow;
}

.disabled {
    display: none !important;
}

.disabled-but-visible {
    opacity: 0.5;
    pointer-events: none;
}

.translate-null {
    transform: translateY(0);
}

@media (max-width: 1200px) {
    section{
        width: 70%;
        margin-left: 15%;
    }
}

@media (max-width: 800px) {
    section{
        width: 90%;
        margin-left: 5%;
    }
}

@media (max-width: 560px) {
    section{
        height: auto;
    }
}

