body {

    margin: 0;
    padding: 0;
    font-size: 16px;

}

h1, h2, h3 {

    color: #203962;

}

button {

    background-color: blue;
    color: white;
    border: 1px solid darkblue;

    padding: 5px 0;
    width: 20%;

}

p {

    font-size: 1.1em;

}

a {

    text-decoration: none;

}

table, th, td {

    border: 1px solid #203962;
    border-collapse: collapse;
    overflow-wrap: break-word;

}

fieldset {

    display: grid;
    margin: 0 auto;
    width: 100%;

}

/* # HEADER # */

header {

    height: 10vh;
    margin-bottom: 50px;

}

header img {

    height: 80%;
    width: auto;
    margin-left: 1%;
    margin-top: 1vh;
    float: left;

}

header h1 {

    float: right;
    margin: 0 4% 0 0;
    line-height: 10vh;
    font-size: 3em;

}

/* # MAIN # */

main {

    width: 75%;
    margin: 0 auto;

}

#user-details-form fieldset {

    grid-template-columns: max-content 1fr;
    grid-gap: 5px;

}

#user-details-form fieldset label {

    text-align: right;

}

#target-details-form fieldset {

    grid-template-columns: minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr);
    column-gap: 1%;

}

#target-details-buttons {

    margin: 15px 0;
    grid-column: 1/-1;
    text-align: center;

}

#clear-list-button {

    margin: 15px 0;

}

#send-button {

    margin: 0 auto;

    font-size: 1.1em;
    line-height: 1.2em;

    padding: 10px;

}

/* # FOOTER # */

footer {

    height: 5vh;
    background-color: #203962;

}

#legal {

    text-align: center;
    padding-top: 1vh;
    color: white;

}

#legal a {

    color: lightblue;

}