@charset "utf-8";
/*********************************************************
RESETS
**********************************************************/
:root {
    --darkBlue:#074880;
    --lightBlue:#1d7fac;
    --mediumGrey:#545b62;
    --lightGrey:#eaeaea;
}
::-webkit-scrollbar {
    width: 12px;
}
::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(7, 72, 128,0.3);
    -webkit-border-radius: 10px;
    border-radius: 10px;
}
::-webkit-scrollbar-thumb {
    -webkit-border-radius: 10px;
    border-radius: 10px;
    background: rgba(7, 72, 128,1);
    -webkit-box-shadow: inset 0 0 6px rgba(7, 72, 128,0.5);
}
::-webkit-scrollbar-thumb:window-inactive {
	background: rgba(7, 72, 128,0.1);
}
html, body{
	width:100%;
	height:100%;
	margin:0px;
	padding:0px;
	background-repeat: no-repeat;
	background-position: top center;
}
body {
	background-color:var(--lightGrey);
	color: #333;
	font-family: 'Roboto', sans-serif;
}
p, h1, h2, h3, h4 {
	margin:0;
	padding:0;
}
.row {
	margin-left: 0;
	margin-right: 0;
}
.container {
	padding: 0;
}
img {
	max-width:100%;
}
.no-padding {
	padding:0;
}
.no-padding-left {
	padding-left:0;
}
.no-padding-right {
	padding-right:0;
}

/*********************************************************
DEFAULTS
**********************************************************/
p {
}
a {
    color:var(--darkBlue);
}
a:hover {
    color:var(--lightBlue);
    text-decoration: none;
}
h1 {
    font-size: 2rem;
    padding: 1rem 2.5rem;
    margin: 1rem 0;
    -webkit-clip-path: polygon(5% 0%, 100% 0%, 95% 100%, 0% 100%);
    clip-path: polygon(5% 0%, 100% 0%, 95% 100%, 0% 100%);
    text-align: center;
    color: #fff;
    font-weight: 700;
    background: var(--darkBlue);
    transition: .3s;
    text-transform: uppercase;
}
h2 {
    font-size: 1.2rem;
    padding: 10px 30px 10px 50px;
    margin: 0 0 1rem 0;
    -webkit-clip-path: polygon(7% 0%, 100% 0%, 93% 100%, 0% 100%);
    clip-path: polygon(7% 0%, 100% 0%, 93% 100%, 0% 100%);
    width: 600px;
    max-width: 100%;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    background: var(--mediumGrey);
    transition: .3s;
    text-align: center;
}
h3 {
    font-size: 1rem;
    margin: 1rem 0;
    padding: 10px 30px 10px 50px;
    width: 400px;
    max-width: 100%;
    -webkit-clip-path: polygon(9% 0%, 100% 0%, 91% 100%, 0% 100%);
    clip-path:polygon(9% 0%, 100% 0%, 91% 100%, 0% 100%);
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    background: var(--darkBlue);
    transition: .3s;
    text-align: center;
}
h3.alt {
    background: var(--lightBlue);
}
h4 {
    font-size: 1.1rem;
    margin: 0 0 .5rem 0;
    padding:0;
    text-align: center;
    text-transform: uppercase;
    color: var(--darkBlue);
    font-weight: bold;
}
.main-container {
    padding: 2rem 2rem 10rem 2rem;
    background: #fff;
}
.dataTable {
    width:100% !important;
}
.panel {
    margin-top: 2.5rem;
    box-shadow: 0px 0px 10px 2px rgba(7, 72, 128, 0.09);
}

/*********************************************************
BUTTONS
**********************************************************/
.btn {
    position: relative;
    padding: .4rem 1rem;
    margin-right: .3rem;
    transition: .3s;
}
.btn .fas {
    margin-right: 5px;
}

.fas.fa-trash-alt{
    color: #fff !important;
}

.btn-primary {
    color: #fff;
    background:var(--darkBlue);
}
.btn-secondary {

}
.btn-slim {
    font-size: .9rem;
    padding: .3rem .5rem;
    margin-left: .5rem;
}
.btn-slim:hover {
    border-color:var(--lightBlue);
}
.btn-form {
	border: 3px solid var(--lightBlue);
	color: var(--lightBlue);
	background: none;
	cursor: pointer;
	padding: 25px 80px;
	display: inline-block;
	margin: 15px 30px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 700;
	outline: none;
	position: relative;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
    z-index: 1;
}
.btn-form:after {
	content: '';
	position: absolute;
	z-index: -1;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}
.btn-form-primary {
	overflow: hidden;
}
.btn-form-primary:after {
	width: 100%;
	height: 0;
	top: 50%;
	left: 50%;
	background: var(--lightBlue);
	opacity: 0;
	-webkit-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
	-moz-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
	-ms-transform: translateX(-50%) translateY(-50%) rotate(-45deg);
	transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}
.btn-form-primary:hover,
.btn-form-primary:active {
	color: #fff;
}
.btn-form-primary:hover:after {
	height: 260%;
	opacity: 1;
}
.btn-form-primary:active:after {
	height: 400%;
	opacity: 1;
}

/*********************************************************
NAV
**********************************************************/
nav.navbar {
    border-bottom:5px solid var(--lightBlue);
    margin-bottom:0;
    padding: 0;
}
.navbar-brand img {
    max-width: 200px;
}
.navbar-light .navbar-nav .nav-link {
    color: var(--darkBlue);
    padding: 1.5rem;
    transition: .3s;
    -webkit-clip-path: polygon(15% 0%, 100% 0%, 85% 100%, 0% 100%);
    clip-path: polygon(15% 0%, 100% 0%, 85% 100%, 0% 100%);
}
.navbar-light .navbar-nav .nav-link:hover, .nav-item.dropdown:hover > a, .dropdown-item:focus, .dropdown-item:hover {
    color: #fff;
    background: var(--darkBlue);
}
.dropdown-menu {
    margin: 0;
    border-radius: 0;
}
.dropdown:hover > .dropdown-menu {
    display: block;
}
.dropdown > .dropdown-toggle:active {
    pointer-events: none;
}


/*********************************************************
BREADCRUMB NAV
**********************************************************/
.breadcrumb-arrow {
    height: 36px;
    padding: 0;
    line-height: 36px;
    list-style: none;
    background-color:#f7f7f7;
    margin-bottom: 2rem;
}
.breadcrumb-arrow li:first-child a {
    border-radius: 4px 0 0 4px;
    -webkit-border-radius: 4px 0 0 4px;
    -moz-border-radius: 4px 0 0 4px;
}
.breadcrumb-arrow li, .breadcrumb-arrow li a, .breadcrumb-arrow li span {
    display: inline-block;
    vertical-align: top;
}
.breadcrumb-arrow li+li:before {
    padding: 0;
    content: "";
}
.breadcrumb-arrow li span {
    padding: 0 10px;
}
.breadcrumb-arrow li a, .breadcrumb-arrow li:not(:first-child) span {
    height: 36px;
    padding: 0 10px 0 25px;
    line-height: 36px;
}
.breadcrumb-arrow li:first-child a {
    padding: 0 10px;
}
.breadcrumb-arrow li a {
    position: relative;
    color: #fff;
    text-decoration: none;
    background-color: var(--lightBlue);
    border: 1px solid var(--lightBlue);
}
.breadcrumb-arrow li:first-child a {
    padding-left: 10px;
}
.breadcrumb-arrow li a:after, .breadcrumb-arrow li a:before {
    position: absolute;
    top: -1px;
    width: 0;
    height: 0;
    content: '';
    border-top: 18px solid transparent;
    border-bottom: 18px solid transparent;
}
.breadcrumb-arrow li a:before {
    right: -10px;
    z-index: 3;
    border-left-color: var(--lightBlue);
    border-left-style: solid;
    border-left-width: 11px;
}
.breadcrumb-arrow li a:after {
    right: -11px;
    z-index: 2;
    border-left: 11px solid var(--darkBlue);
}
.breadcrumb-arrow li a:focus, .breadcrumb-arrow li a:hover {
    background-color: var(--darkBlue);
    border: 1px solid var(--darkBlue);
}
.breadcrumb-arrow li a:focus:before, .breadcrumb-arrow li a:hover:before {
    border-left-color: var(--darkBlue);
}
.breadcrumb-arrow li a:active {
    background-color: var(--darkBlue);
    border: 1px solid var(--darkBlue);
}
.breadcrumb-arrow li a:active:after, .breadcrumb-arrow li a:active:before {
    border-left-color: var(--darkBlue);
}
.breadcrumb-arrow li span {
    color: var(--darkBlue);
}

/*********************************************************
FOOTER
**********************************************************/
footer {
    font-size: .8em;
    padding: 1em;
    margin: 0 0 0 0;
    text-align: center;
    background: var(--darkBlue);
    color: #fff;
}


/*********************************************************
DASHBOARDS
**********************************************************/
.columnsContainer {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
}
.columnsContainer .item {
    display: grid;
    margin: auto;
    position: relative;
    flex: 1;
    text-align: center;
    color: white;
    transition: .3s;
    max-width: 25%;
    height: 60vh;
    min-width: 10%;
    background-color: rgba(0, 0, 0, 0.8);
}
.columnsContainer .item:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center bottom;
    background-size: cover;
    z-index: -1;
}
.columnsContainer .item:nth-of-type(odd):before {
    background-image: url("/img/columnbg-1.jpg");
}
.columnsContainer .item:nth-of-type(even):before {
    background-image: url("/img/columnbg-2.jpg");
}
.columnsContainer .item:hover {
    transition: .5s;
    max-width: 40% !important;
    flex-grow: 2;
    cursor: pointer;
    color: #fff;
    background-color: rgba(0, 0, 255, 0.3);
}
.columnsContainer .item:hover p {
    -webkit-transform: none;
    transform: none;
    transition: .3s;
}
.columnsContainer .content {
    margin: auto;
    font-size: 2em;
}
.page-item.active .page-link {
    z-index: 1;
    color: #fff;
    background-color: var(--lightBlue);
    border-color:var(--lightBlue);
}
.page-link {
    color: var(--lightBlue);
}
.modal-title {
    margin: 0;
}
.notificationCounter {
    position: absolute;
    top: -5px;
    right: -5px;
    display: block;
    background: #e00000;
    border-radius: 100%;
    height: 20px;
    width: 20px;
    line-height: 1;
    padding-top: 2px;
}
/*********************************************************
FORMS
**********************************************************/

label {
    font-size: 1rem;
	margin: 0 .5rem 1rem .5rem;
    color: #696969;
    font-weight: bold;
}
/*********************************************************
CUSTOM CHECKS AND RADIOS
**********************************************************/
/* Radio and checkmark container */
.form-container {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 1rem;
    margin-right: 1rem;
    cursor: pointer;
    font-size: 1.2rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    float: left;
}
/* Hide the browser's default radio button */
.form-container input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}
/* Create a custom radio button */
.form-radio {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
    border-radius: 50%;
}
/* Create a custom checkbox */
.form-checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
}
/* On mouse-over, add a grey background color */
.form-container:hover input ~ .form-checkmark, .form-container:hover input ~ .form-radio {
    background-color: #ccc;
}
/* When the radio button is checked, add a blue background */
.form-container input:checked ~ .form-checkmark, .form-container input:checked ~ .form-radio {
    background-color: var(--lightBlue);
}
/* Create the indicator (the dot/circle - hidden when not checked) */
.form-checkmark:after, .form-radio:after {
    content: "";
    position: absolute;
    display: none;
}
/* Show the indicator (dot/circle) when checked */
.form-container input:checked ~ .form-checkmark:after, .form-container input:checked ~ .form-radio:after {
    display: block;
}
/* Style the indicator (dot/circle) */
.form-container .form-radio:after {
 	top: 9px;
	left: 9px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: white;
}
/* Style the checkmark/indicator */
.form-container .form-checkmark:after {
    left: 10px;
    top: 6px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/*********************************************************
CUSTOM SEARCH AND TEXT INPUTS
**********************************************************/
.input {
	position: relative;
	z-index: 1;
	display: inline-block;
	margin: 1rem .5rem;
	max-width: 100%;
	width: calc(100% - 2em);
	vertical-align: top;
    font-size: 1.5rem;
}
.input__field {
	position: relative;
	display: block;
	float: right;
	padding: 0.8em;
	width: 60%;
	border: none;
	border-radius: 0;
	background: #f0f0f0;
	color: #aaa;
	font-weight: 400;
	-webkit-appearance: none; /* for box shadows to show on iOS */
}
.input__field:focus {
	outline: none;
}
.input__label {
	display: inline-block;
	float: right;
    margin: 0;
	padding: 0 1em;
	width: 40%;
	color: #696969;
	font-weight: bold;
	font-size: 1rem;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.input__label-content {
	position: relative;
	display: block;
	padding: 1.6em 0;
	width: 100%;
}
.input__label-content span {
    font-weight: normal;
}
.graphic {
	position: absolute;
	top: 0;
	left: 0;
	fill: none;
}
.icon {
	color: #ddd;
	font-size: 150%;
}
/* Makiko */
.input--makiko {
	overflow: hidden;
	background:var(--lightBlue);
    border:1px solid var(--lightBlue);
}
.input__field--makiko {
	width: 100%;
	background: transparent;
	color:var(--darkBlue);
	z-index: 10;
	font-weight: 500;
}
.input__label--makiko {
	position: absolute;
	width: 100%;
	text-align: left;
	pointer-events: none;
	color: #fff;
}
.input__label--makiko::before {
	content: '';
	position: absolute;
	width: 30px;
	height: 30px;
	top: 45%;
	left: 20px;
	background: url('/img/search.svg') no-repeat center center;
	background-size: 100%;
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.7,0,0.3,1);
	transition: transform 0.4s cubic-bezier(0.7,0,0.3,1);
}
.input__label-content--makiko {
	display: block;
	padding: 1.5em 0 0 4rem;
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.7,0,0.3,1);
	transition: transform 0.4s cubic-bezier(0.7,0,0.3,1);
}
.input__field--makiko:focus + .input__label--makiko::before, .input--filled .input__label--makiko::before {
	-webkit-transform: scale3d(38, 38, 1);
	transform: scale3d(38, 38, 1);
}
.clearBtn {
    display: none;
}
.input--filled .clearBtn {
    display: block;
    color: #fff;
    position: absolute;
    font-size: 2rem;
    top: 0;
    right: 0;
    height: 100%;
    width: 60px;
    text-align: center;
    vertical-align: middle;
    line-height: 215%;
    cursor: pointer;
    z-index: 400;
}

/* Hoshi */
.input--hoshi {
	overflow: hidden;
}

.input__field--hoshi {
	margin-top: 1em;
	padding: 0.85em 0.15em;
	width: 100%;
	background: transparent;
	color: #595F6E;
}

.input__label--hoshi {
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 0 0.25em;
	width: 100%;
	height: calc(100% - 1em);
	text-align: left;
	pointer-events: none;
}

.input__label-content--hoshi {
	position: absolute;
}

.input__label--hoshi::before,
.input__label--hoshi::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 10px);
	border-bottom: 1px solid #B9C1CA;
}

.input__label--hoshi::after {
	margin-top: 2px;
	border-bottom: 4px solid red;
	-webkit-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.input__label--hoshi-color-1::after {
	border-color: var(--lightBlue);
}

.input__label--hoshi-color-2::after {
	border-color: hsl(160, 100%, 50%);
}

.input__label--hoshi-color-3::after {
	border-color: hsl(20, 100%, 50%);
}

.input__field--hoshi:focus + .input__label--hoshi::after,
.input--filled .input__label--hoshi::after {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.input__field--hoshi:focus + .input__label--hoshi .input__label-content--hoshi,
.input--filled .input__label-content--hoshi {
	-webkit-animation: anim-1 0.3s forwards;
	animation: anim-1 0.3s forwards;
}

@-webkit-keyframes anim-1 {
	50% {
		opacity: 0;
		-webkit-transform: translate3d(1em, 0, 0);
		transform: translate3d(1em, 0, 0);
	}
	51% {
		opacity: 0;
		-webkit-transform: translate3d(-1em, -40%, 0);
		transform: translate3d(-1em, -40%, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, -40%, 0);
		transform: translate3d(0, -40%, 0);
	}
}

@keyframes anim-1 {
	50% {
		opacity: 0;
		-webkit-transform: translate3d(1em, 0, 0);
		transform: translate3d(1em, 0, 0);
	}
	51% {
		opacity: 0;
		-webkit-transform: translate3d(-1em, -40%, 0);
		transform: translate3d(-1em, -40%, 0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translate3d(0, -40%, 0);
		transform: translate3d(0, -40%, 0);
	}
}



/*********************************************************
INTERNAL
**********************************************************/
.noteBox {
    max-height: 430px;
    overflow-y: scroll;
}
.note {
    margin: 0 0 1rem 0;
    padding: 1rem;
    background-color: #f2f2f2;
}
.noteName {
    font-weight: bold;
}
.noteName small {
    font-weight: normal;
}
.noteBox .note:nth-child(even) {
    background-color: #fff;
}
.modal-body .noteBox {
    font-size: .9rem;
}
.modal-body .card-body {
    padding: .9rem .5rem;
}


@media (min-width: 1450px) {
    .container {
        width: 1300px;
        max-width: 1300px;
    }
}
@media (max-width: 1900px) {
}
@media (max-width: 1600px) {
}
@media (max-width: 1450px) {
}
@media (max-width: 1200px) {
    .container {
        width: 100%;
        max-width: 100%;
    }
}
@media (max-width: 992px) {
}
@media (max-width: 768px) {
}

nav.navbar{
    background-color: #fff !important;
}

.navbar-brand img{
    height: 80px;
    max-width: 800px;
}