@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300&display=swap');

/* Gestion du thème */
.theme-violet {
    --primary: #747cdf;
    --primary-light-color: white;
    --background-color: #fef1df;
    --selection-color: #ffd79f;
    --error: red;
}
.theme-vert {
    --primary: green;
    --primary-light-color: white;
    --background-color: #f8fedf;
    --selection-color: #e5fb8a;
    --error: red;
}
.theme-orange {
    --primary: #eda644;
    --primary-light-color: white;
    --background-color: #ffe9c2;
    --selection-color: #ffe9c2;
    --error: red;
}
.theme-rose {
    --primary: #ff5151;
    --primary-light-color: white;
    --background-color: #ffebeb;
    --selection-color: #ffd7d7;
    --error: #ffa900;
}

body {
    margin: 0;
    padding: 0px;
    background-color: var(--background-color, #fef1df);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    letter-spacing: .5px;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    color: var(--primary, black);
}
form {
    background-color: white;
    padding: 30px;
    border-radius: 10px;
}
form h1 {
    font-size: 20px;
}
form .separation {
    width: 100%;
    height: 1px;
    background-color: var(--primary, #747cdf);
}
form .corps-formulaire {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
form .corps-formulaire .groupe {
    position: relative;
    margin-top: 20px;
    display: flex;
    flex-direction: column;
}
form .corps-formulaire .gauche .groupe input {
    margin-top: 5px;
    padding: 10px 5px 10px 30px;
    border: 1px solid #c9c9c9;
    outline-color: var(--primary, #747cdf);
    border-radius: 5px;
}
form .corps-formulaire .gauche .groupe i {
    position: absolute;
    left: 0;
    top: 25px;
    padding: 9px 8px;
    color: var(--primary, #747cdf);
}
form .corps-formulaire .droite {
    margin-left: 40px;
}
form .corps-formulaire .droite .groupe {
    height: 100%;
}
form .corps-formulaire .droite .groupe textarea {
    margin-top: 5px;
    padding: 10px;
    background-color: #f8f8f8;
    border: 2px solid var(--primary, #747cdf);
    outline: none;
    border-radius: 5px;
    resize: none;
    height: 72%;
}
form .pied-formulaire button {
    margin-top: 10px;
    background-color: var(--primary, #747cdf);
    color: var(--primary-light-color);
    font-size: 15px;
    border: none;
    padding: .8em 1.4em;
    border-radius: 5px;
    outline: none;
    cursor: pointer;
    transition: transform 0.5s ease-out;
}
form .pied-formulaire button:hover {
    transform: scale(1.05);
}
form input[type="button"] {
    color: var(--primary-light-color);
    font-family: 'Roboto', sans-serif;
    font-size: 15px;
    background-color: var(--primary, #747cdf);
    padding: 0.3em 0.5em;
    outline: none;
    cursor: pointer;
    border-style: none;
    border-radius: 3px;
}
form .top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 6px;
}
.color-transition {
    transition: color .5s, background-color .5s;
}
input, textarea {
    font-family: Arial, Helvetica, sans-serif;
}
input::placeholder, textarea::placeholder {
    font-style: italic;
    font-family: Arial, Helvetica, sans-serif;
}
input:disabled, textarea:disabled {
    opacity: 70%;
}
::selection {
    background-color: var(--selection-color);
}
.checked {
    color: var(--primary, green);
    border-color: var(--primary, green);
}
.not-checked {
    color: var(--error, red);
    outline-color: var(--error, red) !important;
}

@media screen and (max-width:973px) {
    form .corps-formulaire .gauche {
        width: -webkit-fill-available;
    }
    form .corps-formulaire .droite {
        margin-left: 0px;
        width: -webkit-fill-available;
    }
}
@media screen and (max-width:614px) {
    form .top {
        flex-direction: column-reverse;
    }
}