html, body{
    height: 100%;
}

body{
    margin: 0;

    font-family: 'Open Sans', sans-serif;

    display: flex;
    flex-direction: column;
}

header{
    flex: 0 1 70px;

    padding: 0 30px;

    background: #20002c;  /* fallback for old browsers */
    background: -webkit-linear-gradient(to left, #20002c, #89539e); /* Chrome 10-25, Safari 5.1-6 */
    background: linear-gradient(to left, #20002c, #89539e); 

    display: flex;

    min-height: 70px;
}

header a{
    color: white;

    font-weight: bold;
}

header a:hover{
    color: white;
}

a{
    color: #20002c;
    text-decoration: none;
}

a:hover{
    color: #89539e;
}

input{
    margin: 10px 0;
    padding: 0;
    border: 0;

    text-indent: 10px;

    height: 40px;
    width: 100%;
}

/*
* FORMS
*/

input[type=checkbox]{
    width: unset;
    vertical-align: middle;
}

input[type=submit]{
    font-size: 20px;
    color: white;

    padding: 2px;
    background: linear-gradient(to left, #20002c, #89539e);
}

input[type=text],input[type=password], input[type=email]{
    font-size: 15px;
    letter-spacing: 2px;

    display: inline-block;
    width: 49%;
    border: 1px solid #20002c;
    font-family: 'Open Sans', sans-serif;
}

input[type=file]{
    font-family: 'Open Sans', sans-serif;

    display: block;
    margin: 10px auto;
    width: auto;
    text-indent: 0;
}

label{
    display: inline-block;
    width: 35%;
    margin-right: 10%;
    text-align: right;
}

input[type=text]:focus,input[type=password]:focus, input[type=email]:focus{
    border: 0;
    border: 1px solid #20002c;

    background: white;
}

input[type=submit]{
    display: block;
    width: 25%;
    margin: 20px auto 0;
}

input[type=submit], a, button{
    transition: all .2s ease-in-out;
    transform: scale(1);

    cursor: pointer;
}

select{
    font-size: 15px;
    border: 1px solid #20002c;
    height: 40px;
    padding: 0 10px;
    margin: 10px 0;
    width: 49%;
    font-family: 'Open Sans', sans-serif;
}


input[type=submit]:hover, a:hover, button:hover{
    transition: all .2s ease-in-out;
    transform: scale(1.1);
}

textarea{
    width: 49%;
    resize: vertical;
    font-family: 'Open Sans', sans-serif;
    border: 1px solid #20002c;
}

h1{
    color: #4B0082;
}

form ul li{
    list-style-type: none;
    border-left: #20002c 2px solid;
    margin-bottom: 5px;
    padding-left: 5px;
    font-weight: bold;
}

/*
* TABLES
*/

table{
    width: 100%;
    border-collapse: collapse;

    margin-top: 50px;
}

th{
    padding-bottom: 20px;
    text-align: left;
}

td{
    border-bottom: #20002c 2px solid;
    border-collapse: collapse;

    padding: 10px 0;
}

/*
* COMMON
*/

.bold{
    font-weight: bold;
}

.t-center{
    text-align: center;
}

.hide{
    display: none;
}

.w75{
    width: 75%;
}

.v-top{
    vertical-align: top;
}

.red{
    color: red;
}

.limegreen{
    color: limegreen;
}

.text-info{
    color: #eb6709;
}

.ml-10{
    margin-left: 10px !important;
}

/*
* CSS Resets
*/

input:focus,
select:focus,
textarea:focus,
button:focus {
    outline: none;
}