* {
    box-sizing: border-box;
}

html, body {
    height: 100%;
    margin: 0;
}

body {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: hsl(0, 0%, 80%);
    font-family: Arial, Helvetica, sans-serif;
}

div.login-window {
    /* display: block; */
    background-color: #EEEEEE;
    color: #333333;
    height: 32rem;
    width: 24rem;

    border-radius: 20px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.50);
}

.login-form {
    height: 100%;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1.5em;
}

#logo-link {
    align-self: center;
}

.logo {
    height: 8rem;
    width: 8rem;
}

.login-form span {
    width: 85%;
    display: flex;
    flex-direction: column;
    justify-content: start;
    gap: 0.5rem;
}

.login-form label {
    font-size: 1rem;
    font-weight: bold;
}

.login-form input {
    /* height: 24px; */
    align-self: center;

    width: 100%;
    /* margin: 1rem; */
    font-size: 1rem;
    padding: 0.5rem 0.75rem;


    border: solid hsl(0, 0%, 70%);
    border-radius: 0.5rem;

    color: hsl(0, 0%, 40%);
}

.login-form input:focus {
    border-color: hsl(240, 100%, 90%);
}

.login-form h2, .login-form p {
    margin: 0;
    text-align: center;
}

.login-form p {
    color: hsl(0, 0%, 40%);
}

#submit {
    /* padding: 0.75rem; */

    background-color: hsl(219, 79%, 45%);
    color: white;

    cursor: pointer;
    border: solid hsl(219, 79%, 45%);
}

#account-question a {
    text-decoration: none;
    color: #333333;
    font-weight: bold;
}

span.platform-select {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 2rem;
}

.platform-select input {
    width: fit-content;
}

.checkbox-group {
    margin: 0;
    border-radius: 12px;
}

.checkbox-grid {
    display: grid;
    width: 8rem;
    grid-template-columns: repeat(2, auto);
    gap: 0.5rem 1rem; /* row gap, column gap */
    box-shadow: none;
    border-radius: 0;
}

input.checkbox {
    width: fit-content;
    margin: 0;
}