body {
    font-family: "Inter", serif;
    font-optical-sizing: auto;
    font-size: 16px;
    line-height: 24px;
    font-weight: normal;
    font-style: normal;
    background: #FFFEFC;
    color:#1A2540;
    letter-spacing:-0.02em;
}

h1 {
    font-size:40px;
    line-height:48px;
    font-weight:bold;
}

h2  {
    font-size:16px;
    line-height:24px;
    font-weight:bold;
}

a {
    color:#316BFF;
    text-decoration:none;
}

a:hover {
    text-decoration:underline;
}

a.tdr {
    text-decoration:underline;
}

a.tdr:hover {
    text-decoration:none;
}

a.gr {
    color:#9EA2AD;
}

.flex {
    display:flex;
}

.fullscreen > .flex {
    height:100%;
}

.fullscreen {
    width:100%;
    height: 100vh;
}

.wrapper {
    width:100%;
    position:relative;
    padding:60px;
}

.wrapper.fullscreen {
    padding:30px 40px;
}

.icon {
    display:inline-block;
    width:24px;
    height:24px;
    background:url('../img/iconset1.png');
    margin-right:8px;
    vertical-align:top;
}

.icon-2 {
    background:url('../img/iconset2.png');
}

.icon-3 {
    background:url('../img/iconset3.png');
}

.icon.icon-symb {background:#9EA2AD;color:#fff;font-size:16px;font-weight:bold;text-align:center;line-height:24px;border-radius:4px;}
.icon.icon-gear { background-position: -192px 50%; }
.icon.icon-plus { background-position: -432px 50%; }
.icon.icon-list { background-position: 0 50%; }
.icon.icon-search { background-position: -47px 50%; }
.icon.icon-search-2 { background-position: -1507px 50%; }
.icon.icon-password-show { background-position: -624px 50%; }
.icon.icon-password-hide { background-position: -576px 50%; }
.icon.icon-snow { background-position: -992px 50%; }
.icon.icon-trash { background-position: -944px 50%; }
.icon.icon-close { background-position: -1280px 50%; }

.alert {
    display:inline-block;
    margin-top:24px;
    padding:6px 8px;
    border-radius:4px;
}

.alert.error {
     border:1px solid #E06259;
}

.alert.info {
     border:1px solid #316BFF;
}

.error {    
    color:#E06259;
    font-size:14px;
}

.info {
    color:#316BFF;
    font-size:14px;
}

form {
    display:block;
    width:100%;
    margin-top:24px;
}

form .row {
    margin-top:24px;
}

form .row:first-child {
    margin-top:0;
}

form .row.error {
    border:1px solid #E06259;    
    padding:6px 8px;
    border-radius:4px;
}

form .row .error {
    margin-top:4px;
}

form .row .help {
    margin-top:4px;
    font-size:12px;
    color:#9EA2AD;
}

form label {
    display:block;
    color:#9EA2AD;
    font-size:16px;
    line-height:24px;
    margin-bottom:4px;
}

.styled_input,
form input[type=text],
form input[type=password],
form input[type=email],
form input[type=tel],
form input[type=number],
form textarea {
    display:block;
    width:100%;
    height:36px;
    font-family: "Inter", serif;
    color:#1A2540;
    font-size:16px;
    line-height:24px;
    border-radius:4px;
    outline:none;
    border:1px solid rgba(158, 162, 173, 0.3);
    padding:0 8px;
}

.styled_input,
form input::placeholder {
    color:#9EA2AD;
}

form input[type=text].big {
    border:none;
    padding:0;
    font-size:40px;
    font-weight:bold;
    margin-bottom:38px;
}

form input[type=text].big::placeholder {
    color:rgba(158, 162, 173, 0.3);
}

form textarea {
    height:100px;
}

.styled_input.error,
form input[type=text].error,
form input[type=password].error,
form input[type=email].error,
form input[type=tel].error,
form input[type=number].error,
form textarea.error {
    border:1px solid #E06259;
}

.styled_select,
form select.custom {
    display: block;
	font-size: 16px;
	color: #1A2540;
    border: 1px solid rgba(158, 162, 173, 0.3);
    border-radius: 4px;
    height:36px;
    outline:none;
    -moz-appearance: none;
	-webkit-appearance: none;
    appearance: none;
    padding:6px 8px;
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDEyIDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xMC41OSAwLjU4OTk5Nkw2IDUuMTdMMS40MSAwLjU4OTk5NkwwIDJMNiA4TDEyIDJMMTAuNTkgMC41ODk5OTZaIiBmaWxsPSIjNDM0RTZBIi8+Cjwvc3ZnPgo=");
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: right 14px top 50%;
    cursor:pointer;
    padding-right:32px;
}

.styled_select::-ms-expand,
form select.custom::-ms-expand {
    display: none;
}

form .toggle-password-wrapper {
    position:relative;
}

form input.toggle-password {    
    padding-right:38px;
}

form .toggle-password-wrapper .icon {
    position:absolute;
    right:0;
    top:7px;
    cursor:pointer;
    z-index:2;
}

form .checkbox {
    position:relative;
}

form .checkbox input[type="checkbox"] {
    width:1px;
    height:1px;
    opacity:0;
    position:absolute;
    left:0;
    top:0;
}

form .checkbox input[type="checkbox"] + label {
    cursor: pointer;
    display:flex;
    align-items: center;
    margin:0;
    user-select: none;
}

form .checkbox input[type="checkbox"] + label::before {
    content: "";
    display:block;
    width:18px;
    height:18px;
    margin-right:8px;
    background:url('../img/iconset3.png');
    background-position:-1043px 50%;
}
    
form .checkbox input[type="checkbox"]:checked + label::before {
    background-position:-1091px 50%;
}

form .checkbox-bg {
    background:rgba(158, 162, 173, 0.3);
    padding:4px 8px;
    border-radius:4px;
    display:inline-block;
    margin-left:20px;
}

form .checkbox-bg:first-child {
    margin-left:0;
}

form .checkbox-bg input[type="checkbox"] + label {
    font-size:14px;
    color:#fff;
    font-weight:600;
    white-space:nowrap;
}

form .checkbox-signed {
    position:relative;
}

form .checkbox-signed input[type="checkbox"] {
    width:1px;
    height:1px;
    opacity:0;
    position:absolute;
    right:0;
    top:0;
}

form .checkbox-signed input[type="checkbox"] + label {
    cursor: pointer;
    display:flex;
    justify-content: space-between;
    align-items: center;
    user-select: none;
}

form .checkbox-signed input[type="checkbox"] + label::after {
    content: "";
    display:block;
    width:38px;
    height:20px;
    background:url('../img/iconset1.png');
    background-position:-683px 50%;
    transform: rotate(180deg);
}
    
form .checkbox-signed input[type="checkbox"]:checked + label::after {
    transform: rotate(0deg);
}

form .favicon {
    width:365px;
}

form .favicon img {
    float:left;
    margin-right:15px;
}

form .favicon .button {
    float:left;
    margin-bottom:8px;
}

form .favicon .button:last-child {
    margin-bottom:0;
}

form .favicon::after {
    content:'';
    display:block;
    clear:both;
}

form.slim .row {
    margin-top:15px;
}

form.filter .col {
    margin-left:24px;
}

form.filter .col:first-child {
    margin-left:0;
}

form.filter .date-range .datepicker {
    width:120px;
    display:inline-block;
}

form.filter .date-range span {
    white-space:nowrap;
    margin-left:16px;
}

form.filter .date-range span:first-child {
    margin-left:0;
}

form.filter select.custom {
    width:220px;
}

.button {
    display:inline-block;
    min-width:222px;
    height:36px;
    line-height:36px;
    padding:0 8px;
    text-align:center;
    outline:none;
    border:none;
    text-decoration:none;
    border-radius:5px;
    font-family: "Inter", serif;
    font-size:16px;
    cursor:pointer;
}

.button:hover {
    text-decoration:none;
}

.button-1 {
    background:#EAEFFC;
    color:#316BFF;
}

.button-1:hover {
    background:rgba(49, 107, 255, 0.4);
}

.button-2 {
    background:#fff;
    color:#9EA2AD;
    border:1px solid #9EA2AD;
}

.button-2:hover {
    opacity:0.7;
}

table {
    border-collapse:collapse;
    border:1px solid #EAEFFC;
    font-size:14px;
}

table td, table th {
    border:1px solid #EAEFFC;
    text-align:left;
    padding:8px;
    background:#fff;
}

.table-scroll {
    overflow-x:auto;
    position:relative;
}

.table-scroll table tr td:first-child, 
.table-scroll table tr th:first-child  {
    position: sticky;
    left:0;
    z-index:2;
}

.table-scroll table tr td:first-child::before, 
.table-scroll table tr th:first-child::before,
.table-scroll table tr td:first-child::after, 
.table-scroll table tr th:first-child::after {
    content:'';
    position:absolute;
    top: 0;
    height:100%;
}

.table-scroll table tr td:first-child::before, 
.table-scroll table tr th:first-child::before  {
    left: -1px;
    border-left: 1px solid #EAEFFC;
}

.table-scroll table tr td:first-child::after, 
.table-scroll table tr th:first-child::after  {
    right: -1px;
    border-right: 1px solid #EAEFFC;
}

.table-scroll-container {
    overflow:hidden;
}

.table-scroll-container .scroll-buttons {
    margin-bottom:4px;
    display:flex;
}

.table-scroll-container .scroll-buttons a {
    display:block;
    width:32px;
    height:32px;
    border:1px solid rgba(158, 162, 173, 0.3);
    border-radius:4px;
    margin-right:4px;
}

.table-scroll-container .scroll-buttons a::after {
    cursor:pointer;
    content:'';
    display:block;
    width:100%;
    height:100%;
    background:#fff url('../img/iconset1.png');
}

.table-scroll-container .scroll-buttons a.disabled::after {
    cursor:default;
    opacity:0.3;
}

.table-scroll-container .scroll-buttons a.scroll-prev::after {
    background-position:-333px 50%;
}

.table-scroll-container .scroll-buttons a.scroll-next::after {
    background-position:-380px 50%;
}

.ui-datepicker {
    padding:16px;
    border:none !important;
    box-shadow:0px 4px 32px 0 rgba(0,0,0,0.16);
    border-radius:4px;
    color:#1A2540;
    width:340px;
}

.ui-datepicker .ui-datepicker-header {
    display:flex;
    background:none;
    border:none;
    padding:0;
}

.ui-datepicker .ui-datepicker-next,
.ui-datepicker .ui-datepicker-prev {
    position:static;
    width:24px;
    height:24px;
    background:url('../img/iconset1.png');
    border:none;
    cursor:pointer;
    
}

.ui-datepicker .ui-datepicker-next {
    background-position:-383px 50%;
    order:3;
}

.ui-datepicker .ui-datepicker-prev {
    background-position:-336px 50%;
    order:2;
    margin:0 8px;
}

.ui-datepicker .ui-datepicker-next span,
.ui-datepicker .ui-datepicker-prev span {
    display:none;
}

.ui-datepicker .ui-datepicker-title {
    text-align:left;
    font-weight:bold;
    font-size:16px;
    margin:0;
    margin-right: auto;
    order:1;
    color:#1A2540;
}

.ui-datepicker table {
    font-size:12px;
    margin:16px 0 0;
    border:none;
}

.ui-datepicker table thead th {
    font-weight:normal;
    padding:0;
    vertical-align:middle;
    width:40px;
    height:40px;
}

.ui-datepicker table tbody td {
    padding:0;
    width:40px;
    height:40px;
}

.ui-datepicker table tbody td .ui-state-default {
    display:block;
    border:none;
    text-align:center;
    background:#fff;    
    padding:0;
    width:40px;
    height:40px;
    line-height:40px;
}

.ui-datepicker table tbody td .ui-state-highlight {
    background:rgba(158, 162, 173, 0.1);
    border-radius:10px;
    color:#1A2540;
}

.ui-datepicker table tbody td .ui-state-active {
    background:rgba(49, 107, 255, 0.1);
    border-radius:10px;
    color:#1A2540;
}

.ui-datepicker .ui-datepicker-buttonpane {
    border:none;
    margin-top:16px;
    padding:0;
}

.ui-datepicker .ui-datepicker-buttonpane button {
    display:inline-block;
    min-width:100px;
    height:36px;
    line-height:34px;
    padding:0 8px;
    text-align:center;
    outline:none;
    border:none;
    text-decoration:none;
    border-radius:5px;
    font-family: "Inter", serif;
    font-size:16px;
    cursor:pointer;
    background:#fff;
    color:#9EA2AD;
    border:1px solid #9EA2AD;
    margin:0;
    opacity:1;
    font-weight:normal;
}

.ui-datepicker .ui-datepicker-buttonpane button:hover {
    opacity:0.7;
}

.dt-container {
    position:relative;
}

.loading::after,
.dt-processing {
    content:'';
    display:block;
    position:fixed;
    left:0;
    right:0;
    top:0;
    bottom:0;
    background:rgba(255, 255, 255, 0.5) url('../img/loader.gif') 50% 50% no-repeat;
    z-index:5;
    font-size:0;
    z-index:9999;
}

.dt-layout-row {
    margin-bottom:24px;
}

.dt-layout-row::after {
    content:'';
    display:block;
    clear:both;
}

.dt-length {
    float:right;
    color:#9EA2AD;
}

.dt-length select {
    display:block;
    margin: 4px 0 0 auto;
}

.dt-search {
    float:left;
    width:277px;
}

.dt-search label {
    margin-bottom:4px;
    color:rgba(158, 162, 173, 1);
    font-size:16px;
    display:block;
}

.dt-search input {
    color:rgba(158, 162, 173, 1);
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
}

.dt-search input::placeholder {
    color:rgba(158, 162, 173, 1);
}

div.dt-container .dt-paging .dt-paging-button {   
    display: inline-block;   
    margin-left: 4px;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    border: 1px solid transparent;
    border-radius:4px;
    background: transparent;
    padding:6px 8px;
    min-width:29px;
    color: #1A2540;
}

div.dt-container .dt-paging .dt-paging-button.current, 
div.dt-container .dt-paging .dt-paging-button.current:hover {
    background: rgba(49, 107, 255, 0.1);
}

div.dt-container .dt-paging .dt-paging-button.disabled, 
div.dt-container .dt-paging .dt-paging-button.disabled:hover, 
div.dt-container .dt-paging .dt-paging-button.disabled:active {
  cursor: default;
  color: rgba(0, 0, 0, 0.5) !important;
  border: 1px solid transparent;
  background: transparent;
  box-shadow: none;
}

div.dt-container .dt-paging .dt-paging-button:hover {
  border:1px solid rgba(158, 162, 173, 0.3);
}

div.dt-container .dt-paging .ellipsis {
  padding: 0 4px;
}

div.dt-paging {
    text-align:center;
}

div.dt-paging .first {
    float:left;
}

div.dt-paging .last {
    float:right;
}

div.dt-paging::after {
    content:'';
    display:block;
    clear:both;
}

.text > * {
    margin-bottom:25px;
}

.text .gray {
    color:#9EA2AD;
}

.graph {
    width:100%;
    height:240px;
}

.graph .tickLabels {
    color:#1A2540 !important;
    font-size:12px !important;
}

.tooltip {
    position: absolute;
    display: none;
    font-size: 14px;
    z-index: 999;
    background:#fff;
    box-shadow:0px 4px 32px 0 rgba(0,0,0,0.16);
    padding:16px;
    border-radius:4px;
}

.tooltip .title {
    font-size:16px;
    font-weight:bold;
    margin-bottom:16px;
}

.tooltip .active {
    color:#316BFF;
    font-weight:600;
}

.page-title {
    margin-bottom:24px;
}

#left {
    position:fixed;
    top:0;
    bottom:0;
    left:0;
    width:247px;
    background:#F5F6F6;
    overflow-y:auto;
}

#left .group {
    margin-top:20px;
}

#left .group .caption {
    color:#9EA2AD;
    text-transform:uppercase;
    font-weight:600;
    font-size:12px;
    line-height:16px;
    padding:0 20px 0 40px;
    margin-bottom:8px;
}


#left .group ul li {
    margin-top:4px;
}

#left .group ul li:first-child {
    margin-top:0;
}

#left .group ul li a {
    display:block;
    padding:5px 20px 5px 40px;
    color:#434E6A;
    text-decoration:none;
    font-size:14px;
}

#left .group ul li a:hover,
#left .group ul li a.active {
    background:rgba(158, 162, 73, 0.1);
}

#left .group ul li.projects {
    padding:0 20px 0 40px;
}

#left .group ul li.projects form {
    margin-top:0;
}

#left .group ul li.projects select {
    width:100%;
    font-size:14px;
}

#content {
    position:fixed;
    top:0;
    bottom:0;
    right:0;
    left:247px;
    overflow-y:auto;
}

.logo {
    position:absolute;
}

#login {
    width:437px;
    margin:auto;
}

@media (min-width: 1180px) {
    
    #login {
        width:1126px;
        padding-left:689px;
        position:relative;
    }
    
    #login::before {
        content:'';
        display:block;
        width:644px;
        height:411px;
        position:absolute;
        background:url('../img/login.png');
        left:0;
        top:calc(50% - 205.5px);
        /* bottom:0; */
    }
}

#login .hello h1 {
    font-size:28px;
    line-height:48px;
}

#login .hello p {
    color:#9EA2AD;
    margin-top:8px;
}

#profile-form {
    width:437px;
}

#notices-form {
    width:660px;
    margin-top:40px;
}

#new-project .help {
    width:743px;
}

#new-project-form {
    width:628px;
}






