body {
	background-color: #f1f4f6;;
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	min-height: 100%;
	display: flex;
	flex-direction: column;
	/* disable selection */
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	/**/
	-webkit-touch-callout: none !important;
}

/* cof only */
.pthumb {
    max-width: 100px;
    max-height: 100px;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

/* custom modal */
.custom_modal {
    position: fixed; inset: 0px; background: rgba(51, 123, 185, 0.51); z-index: 999; justify-content: center; align-items: center; display: none;
}
.cm_close {
    position: absolute;
    right: 5px;
    background: none;
    border: 0;
}
.cm_card {
    height: auto; width: 500px; max-width: 90vw; overflow-y: auto; overflow-x: hidden;
}
.cm_head {
    padding: 5px 10px; background-image: radial-gradient(circle 248px at center, #666 0%, #4f4f4f 47%, #424242 100%); text-align: center;
}
.cm_head span {
    font-size: 18px; color: #fff;
}

/* -- */
p {
    color: #000;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
    height: 30px;
}

.homeCardBtn {
    background-color: rgb(33, 102, 92);
}

/* - - */
.card {
	border-radius: 4px;
	box-shadow: 0 0.46875rem 2.1875rem rgba(4,9,20,0.03),0 0.9375rem 1.40625rem rgba(4,9,20,0.03),0 0.25rem 0.53125rem rgba(4,9,20,0.05),0 0.125rem 0.1875rem rgba(4,9,20,0.03);
}

.card-content img {
	max-width: 100%;
	height: auto;
}

/* modal */
.custom-modal .datepicker-modal, .custom-modal .timepicker-modal {
    width: 100%;
    max-width: 600px;
}

/* --- colors --- */
.datepicker-table tr td:last-child, .datepicker-table tr td:nth-child(6) {
    color: red;
}

/* --- glowing box shadow --- */
.glow-red {
	box-shadow: 0 0.46875rem 2.1875rem rgba(217,37,80,0.03),0 0.9375rem 1.40625rem rgba(217,37,80,0.03),0 0.25rem 0.53125rem rgba(217,37,80,0.05),0 0.125rem 0.1875rem rgba(217,37,80,0.03);
}
.glow-green {
	box-shadow: 0 0.46875rem 2.1875rem rgba(58,196,125,0.03),0 0.9375rem 1.40625rem rgba(58,196,125,0.03),0 0.25rem 0.53125rem rgba(58,196,125,0.05),0 0.125rem 0.1875rem rgba(58,196,125,0.03);
}
.glow-yellow {
	box-shadow: 0 0.46875rem 2.1875rem rgba(247,185,36,0.03),0 0.9375rem 1.40625rem rgba(247,185,36,0.03),0 0.25rem 0.53125rem rgba(247,185,36,0.05),0 0.125rem 0.1875rem rgba(247,185,36,0.03);
}
.glow-blue {
	box-shadow: 0 0.46875rem 2.1875rem rgba(22,170,255,0.03),0 0.9375rem 1.40625rem rgba(22,170,255,0.03),0 0.25rem 0.53125rem rgba(22,170,255,0.05),0 0.125rem 0.1875rem rgba(22,170,255,0.03);
}
.glow-violet {
    box-shadow: 0 0.46875rem 2.1875rem rgba(63,106,216,0.03),0 0.9375rem 1.40625rem rgba(63,106,216,0.03),0 0.25rem 0.53125rem rgba(63,106,216,0.05),0 0.125rem 0.1875rem rgba(63,106,216,0.03);
}

/* sidenav & navbar */
.sidenav {
	z-index: 998;
}
.sidenav {
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}
.sidenav .non-collapsible, .sidenav li > a.non-collapsible > i {
    height: 64px;
    line-height: 64px;
}
.sidenav li > a.collapsible-header > i, .sidenav li > a.non-collapsible > i {
    margin-right: 16px;
    height: 64px;
    line-height: 64px;
}
.sidenav .collapsible .collapsible-header {
    text-transform: none;
}
.sidenav .collapsible-header, .sidenav.fixed .collapsible-header, .sidenav .non-collapsible {
    padding: 0 30px;
}
.sidenav .collapsible .collapsible-header .chevron {
    color: #b7b7b7;
}
.sidenav .collapsible, .sidenav .collapsible > li {
    border-bottom: 1px solid rgba(196, 196, 196, 0.2);
}
.sidenav li > a {
    font-weight: 400;
}
.sidenav .collapsible .collapsible-body li > a.active, .sidenav li > a.active {
    background-color: rgba(0, 0, 0, 0.07);
}
.sidenav .collapsible-header, .sidenav.sidenav-fixed .collapsible-header {
    padding: 0 30px;
}
ul.sidenav.sidenav-fixed ul.collapsible-accordion .collapsible-body li a {
    padding: 0 37.5px 0 45px;
}
.sidenav li.active {
    background-color: rgba(0, 0, 0, 0.02);
}

.sidenav .collapsible>.active .collapsible-header .chevron {
    transform: rotate(-90deg)
}

.sidenav .collapsible>li {
    transition: background-color .2s
}

.sidenav .collapsible>li:hover {
    background-color: rgba(0, 0, 0, 0.05)
}

.sidenav .collapsible>li.waves-effect {
    display: block
}

.sidenav .collapsible>li:last-child {
    border-bottom: 0
}

.sidenav .collapsible .collapsible-header {
    height: 64px;
    line-height: 64px
}

.sidenav .collapsible .collapsible-header:hover {
    background-color: transparent
}

.sidenav .collapsible .collapsible-header .chevron {
    float: right;
    height: 24px;
    width: 24px;
    line-height: 24px;
    margin: 20px 0 0 0;
    transition: transform .2s
}

.sidenav .collapsible .collapsible-body {
    padding-bottom: 16px;
    background-color: transparent
}

.sidenav .collapsible .collapsible-body li>a {
    padding: 0 16px;
    transition: background-color .2s ease-out
}

.sidenav .collapsible .collapsible-body li>a:hover,
.sidenav .collapsible .collapsible-body li>a.active {
    background-color: rgba(0, 0, 0, 0.07)
}

.sidenav .collapsible .collapsible-body li>a>i.material-icons {
    margin-right: 16px
}

@media only screen and (min-width: 993px) {
    body.has-fixed-sidenav {
        padding-left: 250px
    }
    .sidenav {
        width: 250px;
    }
    .has-fixed-sidenav .navbar-fixed nav.navbar {
        width: calc(100% - 250px);
        left: 250px;
    }
    .sidenav .collapsible-header, .sidenav.sidenav-fixed .collapsible-header {
        padding: 0 20px;
    }
    .sidenav .non-collapsible {
        padding: 0 20px;
    }
    ul.sidenav.sidenav-fixed ul.collapsible-accordion .collapsible-body li a {
        padding: 0 27.5px 0 35px;
    }
}

@media only screen and (min-width: 1600px) {
    body.has-fixed-sidenav {
        padding-left: 300px
    }
    .sidenav {
        width: 300px;
    }
    .has-fixed-sidenav .navbar-fixed nav.navbar {
        width: calc(100% - 300px);
        left: 300px;
    }
    .sidenav .collapsible-header, .sidenav.sidenav-fixed .collapsible-header {
        padding: 0 30px;
    }
    .sidenav .non-collapsible {
        padding: 0 30px;
    }
    ul.sidenav.sidenav-fixed ul.collapsible-accordion .collapsible-body li a {
        padding: 0 37.5px 0 45px;
    }
}

/*- - - -*/

.inside-main {
	padding: 10px;
}

@media only screen and (max-width: 600px) {
  .inside-main {
	  padding: 10px 0px;
  }
}

.success, .error {
	padding: 5px 10px;
	font-size: 16px;
	color: #fff;
	margin-bottom: 10px;
	border-radius: 4px;
}
.success {
	background-color: #4CAF50;
}
.error {
	background-color: red;
}

input[type="color"], input[type="date"], input[type="datetime-local"], input[type="datetime"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="search"], input[type="tel"], input[type="text"], input[type="time"], input[type="url"], input[type="week"], textarea {
    box-shadow: 0 0 0 transparent;
    border-radius: 4px;
    border: 1px solid #8c8f94;
    background-color: #fff;
    color: #2c3338;
	padding: 0 8px;
	line-height: 2;
	min-height: 30px;
}
select.material-select {
    height: 42px;
    margin-top: 5px;
    border-bottom: 1px solid #9e9e9e;
    border-top: 0;
    border-left: 0;
    border-radius: 0;
    border-right: 0;
    outline: none;
    font-size: 16px;
    padding-left: 0;
}

textarea:focus, input:focus{
    outline: none;
}

.pp-container {
	width: 200px;
	height: 200px;
	border: 5px solid #eee;
	border-radius: 50%;
	overflow: hidden;
	margin: auto;
}

td, th {
	padding: 10px;
}

.draggable {
	cursor: all-scroll;
}

.clickable {
	cursor: pointer;
}
.center-content {
	justify-content: center;
    align-items: center;
    display: flex;
}

/* -- tabs -- */
.tabs .tab a.active {
    background-color: #448AFF17;
    border-bottom: 2px solid #448AFF;
}

/* ------------ */
.login-main{
	margin-top: 150px;
    z-index: 1;
}
.heading-image{
	top: 0%;
    left: 50%;
    opacity: 0.9;
    height: 120px;
    width: 120px;
    border-radius: 100%;
    background: #2B5377;
    position: absolute;
    transform: translate(-50%, -50%);
}
.heading-image i{
	font-size: 60px;
	margin-top: 30px;
}
.input-group-prepend span{
	font-size: 20px;
	color: #9B9FAB;
}
.options{
	font-size: 15px;
}
.copyright-main{
	font-size: 13px;
}

/* Bubble Boxes Animation CSS */

.bubble-boxes{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 40%;
}
.bubble-boxes li{
    position: absolute;
    list-style: none;
    display: flex;
    width: 20px;
    height: 20px;
    background: rgba(255,255,255,.2);
    animation: animate 25s linear infinite;
    bottom: -800px;
}
.bubble-boxes li:nth-child(1){
    left: 25%;
    width: 80px;
    height: 80px;
    animation-delay: 0;
}
.bubble-boxes li:nth-child(2){
    left: 10%;
    width: 20px;
    height: 20px;
    animation-delay: 2s;
    animation-duration: 12s;
}
.bubble-boxes li:nth-child(3){
    left: 70%;
    width: 20px;
    height: 20px;
    animation-delay: 4s;
}
.bubble-boxes li:nth-child(4){
    left: 40%;
    width: 60px;
    height: 60px;
    animation-delay: 0s;
    animation-duration: 18s;
}
.bubble-boxes li:nth-child(5){
    left: 65%;
    width: 20px;
    height: 20px;
    animation-delay: 0s;
}
.bubble-boxes li:nth-child(6){
    left: 75%;
    width: 110px;
    height: 110px;
    animation-delay: 3s;
}
.bubble-boxes li:nth-child(7){
    left: 35%;
    width: 150px;
    height: 150px;
    animation-delay: 7s;
}
.bubble-boxes li:nth-child(8){
    left: 50%;
    width: 25px;
    height: 25px;
    animation-delay: 15s;
    animation-duration: 45s;
}
.bubble-boxes li:nth-child(9){
    left: 20%;
    width: 15px;
    height: 15px;
    animation-delay: 2s;
    animation-duration: 35s;
}
.bubble-boxes li:nth-child(10){
    left: 85%;
    width: 150px;
    height: 150px;
    animation-delay: 0s;
    animation-duration: 12s;
}
@keyframes animate{
    0%{
        transform: translateY(0) rotate(0deg);
        opacity: 1;
        border-radius: 0;
    }
    100%{
        transform: translateY(-1000px) rotate(720deg);
        opacity: 1;
        border-radius: 50%;
    }
}

/* --- corner ribbon --- */
.ribbon-wrapper-right {
  width: 135px;
  height: 138px;
  overflow: hidden;
  position: absolute;
  top: -3px;
  right: -3px;
}
.ribbon-wrapper-left {
  width: 85px;
  height: 88px;
  overflow: hidden;
  position: absolute;
  top: -3px;
  left: -3px;
}
.ribbon-red {
    font: bold 15px Sans-Serif;
    color: #fff;
    text-align: center;
    text-shadow: rgba(255,255,255,0.5) 0px 1px 0px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    position: relative;
    padding: 7px 0;
    left: -5px;
    top: 35px;
    width: 178px;
    background-color: #ea181e;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#ea181e), to(#b90005));
    background-image: -webkit-linear-gradient(top, #ea181e, #b90005);
    background-image: -moz-linear-gradient(top, #ea181e, #b90005);
    background-image: -ms-linear-gradient(top, #ea181e, #b90005);
    background-image: -o-linear-gradient(top, #ea181e, #b90005);
    color: #fff;
    -webkit-box-shadow: 0px 0px 3px rgba(0,0,0,0.3);
    -moz-box-shadow: 0px 0px 3px rgba(0,0,0,0.3);
    box-shadow: 0px 0px 3px rgba(0,0,0,0.3);
}

.ribbon-green {
    font: bold 15px Sans-Serif;
    color: #fff;
    text-align: center;
    text-shadow: rgba(255,255,255,0.5) 0px 1px 0px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    position: relative;
    padding: 7px 0;
    left: -29px;
    top: 15px;
    width: 120px;
    background-color: #8dc735;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#8dc735), to(#649a12));
    background-image: -webkit-linear-gradient(top, #8dc735, #649a12);
    background-image: -moz-linear-gradient(top, #BFDC7A, #8EBF45);
    background-image: -ms-linear-gradient(top, #BFDC7A, #8EBF45);
    background-image: -o-linear-gradient(top, #BFDC7A, #8EBF45);
    color: #fff;
    -webkit-box-shadow: 0px 0px 3px rgba(0,0,0,0.3);
    -moz-box-shadow: 0px 0px 3px rgba(0,0,0,0.3);
    box-shadow: 0px 0px 3px rgba(0,0,0,0.3);
}

.ribbon-red:before,
.ribbon-red:after{
  content: "";
  border-top: 3px solid #b90005;   
  border-left: 3px solid transparent;
  border-right: 3px solid transparent;
  position:absolute;
  bottom: -3px;
}

.ribbon-green:after,
.ribbon-green:after{
  content: "";
  border-top: 3px solid #6e8900;   
  border-left: 3px solid transparent;
  border-right: 3px solid transparent;
  position:absolute;
  bottom: -3px;
}

.ribbon-red:before{
  left: 0;
}
.ribbon-green:before{
  right: 0;
}

.ribbon-red:after{
  right: 0;
}
.ribbon-green:after{
  left: 0;
}