.icon::before {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
}
::selection{
    background-color: #2a2a2a;
    color:#fff;
}

.edit-icon::before{
    font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f044";
}
.home-icon::before{
    font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f015";
}
.upload-icon::before{
    font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f574";
}
.icon{
    text-decoration: none;
}
.big-icon i{
    font-size: 6em!important;
}
.btn-icon{
    padding: 0;
    margin: 0;
    border: none;
    background: none;
    cursor: pointer;
}

/** Animated Button **/
.bttn {
    text-decoration: none;
    -webkit-transition: 0.3s all ease;
    transition: 0.3s ease all;
}
.bttn:hover {
    color: #FFF;
}
.bttn:focus {
    color: #FFF;
}
.thumbnail{
    width: 40px;
    height: 40px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    display: inline-block;
    vertical-align: middle;
    margin-right: 16px;
}



.bttn {
    font-size: 16px;
    letter-spacing: 2px;
    text-transform: uppercase;
    display: inline-block;
    text-align: center;
    width: 100%;
    background: none;
    border: 3px solid;
    font-weight: bold;
    padding: 7px 0px;
    position: relative;
    cursor: pointer;
}
.bttn:before {
    -webkit-transition: 0.5s all ease;
    transition: 0.5s all ease;
    position: absolute;
    top: 0;
    left: 50%;
    right: 50%;
    bottom: 0;
    opacity: 0;
    content: '';
    z-index: -2;
}
.bttn:hover:before {
    -webkit-transition: 0.5s all ease;
    transition: 0.5s all ease;
    left: 0;
    right: 0;
    opacity: 1;
}
.bttn:focus:before {
    transition: 0.5s all ease;
    left: 0;
    right: 0;
    opacity: 1;
}

.bttn-green {
    color: #4CAF50;
    text-decoration: none;
    -webkit-transition: 0.3s all ease;
    transition: 0.3s ease all;
    border-color: #4CAF50!important;
}
.bttn-green:hover:before {
    background-color: #4CAF50;
}
.bttn-green:focus:before {
    background-color: #4CAF50;
}

.bttn-blue {
    color: #0f4c81;
    text-decoration: none;
    -webkit-transition: 0.3s all ease;
    transition: 0.3s ease all;
    border-color: #0f4c81!important;
}
.bttn-blue:hover:before {
    background-color: #0f4c81;
}
.bttn-blue:focus:before {
    background-color: #0f4c81;
}

/** Animated Button End **/

/** Loading Spinner for Buttons **/
.submit.w3-disabled > .btn-load {
    display: inline-block !important;
}

.submit > .btn-load {
    display: none;
}

/** Input Styling **/
.inputGroup {
    background-color: #fff;
    display: block;
    margin: 10px 0;
    position: relative;
}
.inputGroup label {
    padding: 12px 30px;
    width: 100%;
    display: block;
    text-align: left;
    color: #3C454C;
    cursor: pointer;
    position: relative;
    z-index: 2;
    transition: color 200ms ease-in;
    overflow: hidden;
}
.inputGroup label:before {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    content: '';
    background-color: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%) scale3d(1, 1, 1);
    transform: translate(-50%, -50%) scale3d(1, 1, 1);
    transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 0;
    z-index: -1;
}
.inputGroup label:after {
    width: 32px;
    height: 32px;
    content: '';
    border: 2px solid #D1D7DC;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.414 11L4 12.414l5.414 5.414L20.828 6.414 19.414 5l-10 10z' fill='%23fff' fill-rule='nonzero'/%3E%3C/svg%3E ");
    background-repeat: no-repeat;
    background-position: 2px 3px;
    border-radius: 50%;
    z-index: 2;
    position: absolute;
    right: 30px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    cursor: pointer;
    transition: all 200ms ease-in;
}
.inputGroup input:checked ~ label {
    color: #3C454C;
}
.inputGroup input:checked ~ label:before {
    -webkit-transform: translate(-50%, -50%) scale3d(56, 56, 1);
    transform: translate(-50%, -50%) scale3d(56, 56, 1);
    opacity: 1;
}
.inputGroup input:checked ~ label:after {
    background-color: #54E0C7;
    border-color: #54E0C7;
}
.inputGroup input {
    width: 32px;
    height: 32px;
    order: 1;
    z-index: 2;
    position: absolute;
    right: 30px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    cursor: pointer;
    visibility: hidden;
}

.input-error {
    border-color: #e74c3c !important;
}
.file-upload-wrapper.input-error::after {
    border-color: #e74c3c;
    color: #e74c3c;
}
.input-error + label, .input-error::placeholder{
    color: #e74c3c;

}
.q-form input, .q-form select, .q-form textarea {
    background: #f5f7f8;
    color: #000;
    border-bottom-color: #555;
    border-bottom-width: 2px;
    transition: border-color .5s ease;
    border-radius: 0px;
}
.q-form input:focus, .q-form select:focus, .q-form textarea:focus {
    outline: none;
    border-bottom-color: #27ae60;
}
.w3-input-inline {
    padding: 8px;
    display: inline;
    border: none;
    border-bottom: 1px solid #ccc;
    width: inherit;
}

.q-form-outer {
    position: relative;
}
.select-wrapper {
    position: relative;
    width: 100%;
    line-height: 40px;
}

.select-wrapper::before {
    pointer-events: none;
    position: absolute;
    right: 15px;

}

select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    color: #444;
    border-radius: 0;
    cursor: pointer;
    height: 40px;
    outline: none;
    padding-left: 10px;
    width: 100%;
    border-top: none;
    border-left: none;
    border-right: none;
    line-height: 40px;
    font-weight: normal;
    border-bottom-width:2px ;
    border-bottom-color: #555;
    font-family: 'Open Sans', Verdana;
}


select::-ms-expand {
    display: none;
}

select:focus::-ms-value {
    background-color: transparent;
}
.open-section{

    background: #283240!important;
    color: #fff;

}
.w3-bottombar.open-section {

    background: inherit;
    background-color: inherit;
    color: inherit;
    border-color: #54E0C7 !important;

}

.inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}
.inputfile + label {

    display: inline-block;
}

.inputfile:focus + label,
.inputfile + label:hover {

}
.inputfile + label {
    cursor: pointer; /* "hand" cursor */
}
.inputfile:focus + label {
    outline: 1px dotted #000;
    outline: -webkit-focus-ring-color auto 5px;
}
.inputfile + label * {
    pointer-events: none;
}

.options{
    position: absolute;
    left: 30px;
    bottom: 0;
}
.option{
    cursor: pointer;
}

.links-list .w3-bar-item:nth-child(odd){
    background-color: #dadada;
}

.scroller {
    scrollbar-color: #283240 #405067; /* thumb and track color */
    scrollbar-width: thin;
}
/* width */
.scroller::-webkit-scrollbar {
    width: 7px;
}

/* Track */
.scroller::-webkit-scrollbar-track {
    background: #405067;
}

/* Handle */
.scroller::-webkit-scrollbar-thumb {
    background: #283240;
}

/* Handle on hover */
.scroller::-webkit-scrollbar-thumb:hover {
    background: #283240;
}



/** Progress bar **/
.progress-up-container, .progress-down-container{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    color: #fff;
}
.progress-up-background, .progress-down-background{
    background: rgba(25,25,25,0.8);
    width: 100%;
    height: 100%;
}
.progress-up-inner, .progress-down-inner{
    width: 90%;
    height: 200px;
    top: 50%;
    position: absolute;
    right: 5%;
    margin-top: -100px;
}
.progress-up-bar-inner, .progress-down-bar-inner{
    background: #5856d6;
    height: 100%;
    width: 0;
}
.progress-up-bar-outer, .progress-down-bar-outer{
    height: 60px;
    width: 100%;
    background: gray;
    top: 50%;
    position: absolute;
    margin-top: -30px;
}

/** LOADING SPINNER **/

#loading-spinner{
    position: relative;
    z-index: 9;
}
.spinner-background{
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(25,25,25,0.0);
    top: 44px;
    margin-left: 230px;
}
.spinner-outer{
    position: fixed;
    top: 44px;
    left: 0;
    right: 0;
    bottom: 0;
    margin-left: 230px;
}
.spinner-inner{
    top: 50%;
    position: relative;
    left: 50%;
    margin-top: -50px;
    margin-left: -50px;
}

svg {
    animation: 2s linear infinite svg-animation;
    max-width: 100px;
}


@keyframes svg-animation {
    0% {
        transform: rotateZ(0deg);
    }
    100% {
        transform: rotateZ(360deg)
    }
}


   circle {
       animation: 1.4s ease-in-out infinite both circle-animation;
       display: block;
       fill: transparent;
       stroke: #2f3d4c;
       stroke-linecap: round;
       stroke-dasharray: 283;
       stroke-dashoffset: 280;
       stroke-width: 3px;
       transform-origin: 50% 50%;
   }


@keyframes circle-animation {
    0%,
    25% {
        stroke-dashoffset: 280;
        transform: rotate(0);
    }

    50%,
    75% {
        stroke-dashoffset: 75;
        transform: rotate(45deg);
    }

    100% {
        stroke-dashoffset: 280;
        transform: rotate(360deg);
    }
}


@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-resolution:144dpi),only screen and (min-resolution:1.5dppx) {

}




