:root {
    --darkest-green: #0e2f22;
    --dark-green: #174f39;
    --green: #206f50;
    --light-green: #257e5b;
    --lightest-green: #3dbe8b;
    --white: #fff;
    --black: #000;
    --light-grey: #eee;
    --grey: #bbb;
    --dark-grey: #aaa;
    --darker-grey: #444;
    --invalid: #ffdddd;
    --bright-blue: #5569F7;
    --darkest-red: #dc3545;
  }

header {
    z-index: 3;
    background: white;
}

html, body {
    margin: 0;
    padding: 0;
    font-family: sans-serif;
    color: #777788;
    /* width: 100vw; /*
    /* height: 100vh; */
}

.clearfix {
    clear: both;
}

.nav-link {
    color: var(--lightest-green);
    font-weight: 700;
    margin: 0px 15px;
}

.nav-link:hover {
    transform: scale(1.04);
    border-bottom: 1px solid #000;
}

.navbar {
    width: 100%;
    display: flex;
    background-color: var(--white);
}

.navbar-toggler {
    background-color: white;
    box-shadow: none;
    border: none;
}

header {
    padding: 50px 20px;
    text-align: center;
}

header > .title {
    display: inline-block;
    color: #3771A1;
    font-size: 40px;
    font-weight: bold;
    text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
    vertical-align: middle;
}

header img {
    vertical-align: middle;
    margin-right: 24px;
}

main {
    margin: 0;
    /* padding: 15px; */
}

footer {
    padding: 15px 0;
    background-color: var(--lightest-green);
    min-height: 50px;
    box-sizing: border-box;
    color: #fff;
    text-align: center;
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
}

footer a {
    display: inline-block;
    color: #777788;
    margin: 15px 10% 0 0;
}

button {
    background-color: var(--bright-blue);
    color: var(--white);
    border: none;
    border-radius: 3px;
    padding: 10px 20px;
    font-size: 17px;
    cursor: pointer;
    font-family: 'Raleway', sans-serif;
}

button:hover {
  background-color: var(--bright-blue);
  opacity: 0.9;
  box-shadow: 2px 2px 15px var(--light-grey);
}

.nav-img {
    height: 30%;
    width: 30%;
}

.fontawesome-spin {
    -animation: spin 1.7s infinite linear;
    -ms-animation: spin 1.7s infinite linear;
    -webkit-animation: spinw 1.7s infinite linear;
    -moz-animation: spinm 1.7s infinite linear;
}

@keyframes spin {
    from { transform: scale(1) rotate(0deg);}
    to { transform: scale(1) rotate(360deg);}
}

@-webkit-keyframes spinw {
    from { -webkit-transform: rotate(0deg);}
    to { -webkit-transform: rotate(360deg);}
}

@-moz-keyframes spinm {
    from { -moz-transform: rotate(0deg);}
    to { -moz-transform: rotate(360deg);}
}

.btn-primary {
    background-color: var(--bright-blue);
    border: solid white 2px;
    border-radius: 5px;
}

.btn-primary:hover {
    background-color: var(--white);
    border: solid 2px var(--bright-blue);
    color: var(--bright-blue);
}

.btn-secondary{
    background-color: var(--darker-grey);
    border: solid white 2px;
    border-radius: 5px;
}

.btn-secondary:hover {
    background-color: var(--white);
    border: solid 2px var(--darker-grey);
    color: var(--darker-grey);
}

.btn-danger{
    background-color: var(--darkest-red);
    border: solid white 2px;
    border-radius: 5px;
}

.btn-danger:hover {
    background-color: var(--white);
    border: solid 2px var(--darkest-red);
    color: var(--darkest-red);
}

/**********************************************************************************************************************
 * rules for django.contrib.messages MESSAGES & ERRORS */
ul.messages {
    padding: 0 0 5px 0;
    margin: 0;
}

ul.messages li {
    font-size: 12px;
    display: block;
    padding: 4px 5px 4px 25px;
    margin: 0 0 3px 0;
    border-bottom: 1px solid #ddd;
    color: #666;
    background: #ffc url(/static/admin/img/admin/icon_success.gif) 5px .3em no-repeat;
}

ul.messages li.warning{
    background-image: url(/static/admin/img/admin/icon_alert.gif);
}

ul.messages li.error{
    background-image: url(/static/admin/img/admin/icon_error.gif);
}
