@import url('https://fonts.googleapis.com/css2?family=Aboreto&family=Alex+Brush&display=swap');

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

html {
    font-size: 25px;
    font-family: Arial, Helvetica, sans-serif;
}

body { /* dark space behind the form. The form should be centered and the same height as the viewport*/
    display: flex;
    flex-direction: row;
    justify-content: center;
    background-color: rgb(46, 45, 44);
    height: 100vh;
}

article {
    background-color: rgb(255, 249, 243);
    width: 65%;
    height: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
}

#transparent-side {
    background-image: url("../Images/meeting.jpg");
    background-position: center;
    background-size: cover;
    flex: 4;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

#logo {
    margin-top: 30%;
    font-size: 1.75rem;
    font-family: 'Aboreto', 'Courier New', Courier, monospace;
    background-color: rgba(255, 228, 196, 0.5);
    width: 100%;
    padding: 0.5rem;
    text-align: center;
    color: white;
}

#logo h1 {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-around;
}

.glasses {
    fill: white;
}

footer, footer a {
    color: white;
    font-size: 3.5vmin;
    text-align: center;
}

#form-side {
    flex: 7;
    background-color: rgb(243, 237, 231);
}

form {
    display: flex;
    flex-direction: column;
    height: 100%;
}

form div {
    flex: 1;
}

#jargon, #dataset, #login {
    padding: 0.5rem 1.5rem;
}

#jargon {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

#jargon p {
    margin-bottom: 1rem;
    font-size: 0.8rem;
    font-weight: bold;
}

#jargon p:last-child em {
    font-weight: lighter;
}

#dataset {
    background-color: white;
    box-shadow: 0px 2px 5px rgb(161, 141, 113);
    display: flex;
    flex-direction: column;
    gap: 2vmin;
}

#dataset h1 {
    font-size: 1rem;
}

fieldset { 
    flex: 1;
    border: none;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 3vmin;
    width: 100%;
}

fieldset div {

    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 3vmin;
    /*border: 2px solid red;*/
}

fieldset div p {
    display: flex;
    flex-direction: column;
    flex: 1;
    /*border: 2px dashed blue;*/
}

label {
    font-size: 0.5rem;
}

input {
    font-size: 0.75rem;
    padding: 0.25rem;
    border: 1px solid rgb(212, 212, 212);
    border-radius: 5px;
    width: 100%;
}

input:focus {
    box-shadow: 2px 2px 5px rgb(197, 179, 155);
    background-color: blanchedalmond;
    border-color: blue;
    outline: none;
}

.error {
    border-color: red;
}

#error-msg {
    font-size: 0.5rem;
    color: transparent;
}

#login {
    font-size: 0.7rem;
}

#login button {
    font-size: 1rem;
    padding: 0.25rem;
    background-color: burlywood;
    border-color: transparent;
    color: white;
    border-radius: 10px;
    box-shadow: 2px 2px 10px rgb(161, 141, 113);
    margin: 1rem 0;
}

#login p a {
    color:rgb(192, 156, 119);
    text-decoration: none;
}

@media(max-width: 700px) {
    body {
        justify-content: center;
    }
    article {
        width: 100%;
        flex-direction: column;
    }
    #transparent-side {
        flex: 1;
        height: 100%;
    }
    #form-side {
        flex: 1;
        height: 50%;
    }
    fieldset {
        flex-direction: column;
    }
    fieldset div {
        flex-direction: column;
    }
    .undertone {
        background-color: rgb(243, 237, 231);
    }
}