/* reset */
body {
    margin: 0px;
}

input,
textarea {
    padding: 0px;
    margin: 0px;
    box-sizing: border-box;
}

/* styling */

body {
    background: #f4f4f4;
    min-height: 100vh;
    display: grid;
    grid-template-rows: 6rem 1fr 6rem;
    row-gap: 1rem;
}

main  {
    max-width: 40rem;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 18rem 1fr;
    row-gap: 1rem;
    margin: 0 auto;
}


.header {
    border-top: 5px solid slateblue;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

.header h1,
.header p {
    margin: 0px;
    padding: 0px;
}

.presentation_form {
    width: 95%;
    height: 100%;
    margin: 0px auto;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr auto;
    column-gap: 1rem;
    row-gap: 0.5rem;
    border: 2px solid slateblue;
    border-radius: 5px;
    padding: 1rem .5rem;
    box-sizing: border-box;
}

.presentation_form_line,
.presentation_form_controls {
    display: grid;
    grid-template-columns: 6.5rem 3fr;
    border: 2px solid rgba(105, 90, 205, 0.645);
    padding: .125rem;
    border-radius: 5px;

}

.presentation_form_controls {
    display: flex;
    justify-content: center;
    box-sizing: border-box;
    height: 3rem;
    border: none;
}

.presentation_form_controls>button {
    width: 6rem;
    border-radius: 15px;
}

.presentation_form_controls>button:first-child {
    margin-right: 1rem;
}

.presentation_form_line>label {
    display: flex;
    align-items: center;
    box-sizing: border-box;
    padding-left: 5px;
}


.presentation_form_line>input,
.presentation_form_line>textarea,
.presentation_form_line>select {
    width: 100%;
    border: 0px;
    border-radius: 5px;
    box-sizing: border-box;
    padding: 0.5rem;
    resize: none;
}


.presentation_form_line>textarea {
    height: 5rem;
}

#message-box {
    border: 2px solid slateblue;
    width: 100%;
    height: 2rem;
    background-color: rgb(139, 133, 179);
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 5px;
    box-sizing: border-box;
}

.--hidden {
    display: none !important;
}

table {
    margin: 0 auto;
    width: 95%;
}

table tbody {
    border-collapse: collapse;
    
    margin: 0 auto;
    display: grid;
    grid-template-rows: repeat(auto-fill, 3.5rem);
}

th,
td {
    border: 1px solid #dddddd;
    text-align: left;

    padding: 5px;
    box-sizing: border-box;
    overflow: hidden;
}

tr {
    display: grid;
    grid-template-columns: 1fr 1fr 3fr 1.5fr;
    max-height: 3.5rem;
}

tr:nth-child(even) {
    background-color: #f2f2f2;
}

footer {
    background-color: #d7d7d7;
    border-bottom: 5px solid slateblue;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
}

.presentation_form,
.content {
    max-width: 40rem;
    margin: 0 auto;
    box-sizing: border-box;
}

.gsheet {
    position: fixed;
    bottom: 4rem;
    right: -1.5rem;
    text-decoration: none;
    background: slateblue;
    padding: 1rem 2rem 1rem 1rem;
    border-radius: 2rem;
    color: whitesmoke;
    font-weight: bold;
    box-shadow: -11px -10px 5px 0px rgba(46, 27, 130, 0.3) inset;
}