/* BASIC ELEMENTS */
html,body {
    font-family: 'Montserrat';
    margin:0;
    padding:0;
    background-color:#f5f6fa;
    font-size: 14px;
    /*overflow: hidden;*/
}
h1,h2,h3,h4,h5,h6 {
    text-align: center;
}
a {
    color:#333;
    text-decoration: none;
}
button {
    margin:8px auto;
    padding:8px 16px;
    border-radius:5px;
    box-shadow:none;
    border:none;
    cursor: pointer;
}
.tablesorter th, input, textarea {
    cursor: pointer;
}
input, textarea {
    transition: background-color 0.2s ease-in;
}

/* HEADER*/
header {
    padding:8px 0;
    background-color:#f5f6fa;
    box-shadow:0 0 5px 5px #ddd;
    position:fixed;
    width:100%;
    z-index:9
}
header h1 {
    margin:0;
}
header .logo {
    margin: auto;
    max-height: 38px;
    display: block;
}
header nav {
    position: absolute;
    top: 0;
    left: 0;
    padding: 12px 24px;
}
.stats-menu {
    float:left;
    position: sticky;
    left: 20px;
    top: 16px;
    font-size:24px;
}
.toggle-menu {
    font-size:24px;
}
header .username {
    position:absolute;
    right:24px;
    top:20px;
}
nav ul {
    position:absolute;
    left: -200px;
    transition:left 0.2s ease-in;
    background-color:#f5f6fa;
    padding:1px 0 0;
    list-style:none;
    margin-top: 12px;
}
nav ul.show {
    display:block;
    left:0;
    box-shadow: 8px 8px 8px -5px #ddd;
}
nav li a {
    padding:10px 25px;
    display: block;
    min-width: 130px;
    border-top:1px solid #ddd;
}
nav li:last-child a {
    border-bottom:1px solid #ddd;
}

/* FOOTER */
footer {
    padding:25px;
    min-height:40px;
    text-align:center;
    background-color:#f5f6fa;
}

/* CONTENT */
section {
    padding:90px 25px 60px;
    background-color:#f5f6fa;
    min-height:500px;
    position: relative;
    z-index: 1;
}
#log-filter,
#filter {
    text-align: center;
}
#filter a {
    display:inline-block;
    padding:8px 32px;
    border-radius:5px;
    border:1px solid #ddd;
    background:transparent;
}
#filter a:hover,
#filter a.active {
    background:#fff;
}
/*#month-select,*/
#user-filter,
#month-status {
    min-width:300px;
    width:360px;
    position:relative;
    min-height:20px;
    top:8px;
}
#user-filter {
    float:left;
}

/*#month-select {
    float:right;
    width:200px;
    top:0;
    text-align: left;
    margin-bottom: 40px;
    margin-right:12px;
}*/
[name="month-select-stat"],
#month-status [name="month-select"] {
    padding: 5px 8px;
    margin: 0 0 25px;
    max-width:200px;
}
select[name="tick-usr"],
select[name="company"] {
    padding: 5px 8px;
    max-width: 100%;
    margin-bottom:5px;
}
#month-status {
    text-align: right;
    float:right;
}
.status {
    display:inline-block;
    position:relative;
    min-width:200px;
    border:1px solid #ddd;
    border-radius:5px;
    padding-left:10px;
    overflow: hidden;
    vertical-align: top;
    max-height: 28px;
    top: -3px;
    box-sizing: border-box;
}
.status-bar {
    position: absolute;
    display:block;
    min-width:5px;
    max-width:100%;
    width:auto;
    background-color:#98BEE8;
    height: 100%;
    left: 0;
    z-index: 0;
}
.status-goal {
    opacity:0.2;
}
.status-goal.orange {
    opacity:0.4;
}
.status-goal.blue {
    display:none !important;
}
.status-text {
    position:relative;
    z-index:1;
    font-size: 12px !important;
    line-height: 28px;
    vertical-align: top;
}
/*
.status-bar.orange {
    background-color:#FFC32B;
}
*/
.status-bar.orange {
    background-color:#ffaa00;
    /*
    width:attr(data-diff);
    position: relative;
    left:attr(data-mdone);
    */
}
.status-bar.green {
    background-color:#3EEE96;
}
.status-bar.yellow {
    background-color:#D3DD7F;
}
.status-bar.red {
    background-color:#F58586;
}
.status-bar.red.flash {
    background-color:#F58586;
    animation: redalert 1.5s infinite;
}
.green-txt {
    color: #3EEE96;
}
.red-txt {
    color: #F58586;
}
@keyframes redalert {
    0% {background-color: #F58586;}
    /*20% {background-color: #F58586;}*/
    50% {background-color: #FFA5A6;}
    /*80% {background-color: #F58586;}*/
    100% {background-color: #F58586;}
}
@keyframes pulse {
    0% {
        transform: scale(1);
        /*box-shadow: 0 0 0 0 rgba(255, 121, 63, 0.7);*/
    }
    50% {
        transform: scale(1.5);
    }
    20%, 70% {
        transform: scale(0.8);
        /*box-shadow: 0 0 0 10px rgba(255, 121, 63, 0);*/
    }
    
    100% {
        transform: scale(1);
        /*box-shadow: 0 0 0 0 rgba(255, 121, 63, 0);*/
    }
}
.pulse:after {
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 1);
    /*transform: scale(1);*/
    animation: pulse 1500ms infinite;
}
#perf-toggle {
    float: right;
    width: 32px;
    height: 32px;
    font-size: 24px;
    padding: 12px;
    border: 2px solid #3EEE96;
    border-radius: 50%;
    color: #3EEE96;
    margin-left: 12px;
}
#edit-user,
#create-company,
#create-user,
#login {
    width:90%;
    max-width:500px;
    margin:90px auto;
}
select[name="log-task"],
[name="logo-list"],
.perf-sel input,
[name="select-period"],
[name="company-select"],
[name="month-select-stat"],
[name="month-select"],
[name="user-select"],
[name="select-user"],
#edit-user input,
#log-filter input,
#create-company input,
#create-company textarea,
#create-user input,
#create-user select,
#create-task input,
#create-task select,
#create-task textarea,
#create-subtask input,
#create-subtask select,
#create-subtask textarea,
.update-task input,
.update-task select,
.update-task textarea,
.update-subtask input,
.update-subtask select,
.update-subtask textarea,
#login input {
    width:100%;
    margin:10px auto;
    padding:12px;
    border:1px solid #aaa;
    border-radius:5px;
    box-sizing: border-box;
}
select[name="log-task"],
#log-filter input,
[name="company-select"],
[name="month-select-stat"],
[name="month-select"],
[name="user-select"] {
    max-width: 300px;
}
.perf-sel input,
.update-task input[type="number"],
.update-task input.date,
#create-task input[type="number"],
#create-task input.date {
    width:48%;
}
.perf-sel input:not(:last-child),
.update-task input[type="number"],
.update-task input.date,
#create-task input[type="number"]:not([name="task-time"]),
#create-task input.date {
    margin-right:3%;
}
.update-task input[type="number"] + input[type="number"],
.update-task input.date + input.date,
.update-task input.date[name="task-recurrence-start"],
#create-task input.date[name="task-recurrence-start"],
#create-task input[type="number"] + input[type="number"],
#create-task input.date + input.date {
    margin-right:0;
}
#close-ticket,
#performance:not(.embed),
div.create-log,
#create-task,
#create-subtask {
    display:none;
    position:fixed;
    left:50%;
    top:50%;
    width:90%;
    max-height: 80%;
    padding:10px;
    border-radius:5px;
    background-color:#f5f6fa;
    box-shadow:0 0 8px 8px #ddd; 
    max-width:500px;
    transform: translate(-50%, -50%);
    z-index: 9;
    overflow: auto;
}
#close-ticket {
    text-align: center;
}
#close-ticket button {
    display: inline-block;
    width: 30%;
    margin:12px 1%;
}
#close-ticket .go-log {
    background-color: #3EEE96;
}
#close-ticket .no-log {
    background-color: #F58586;
}
#close-ticket .create-log {
    position: static;
    transform: none;
    box-shadow: none;
}
#performance:not(.embed) {
    max-width:1200px;
    text-align: center;
    z-index:99;
/*
    width:90%;
    max-height: 80%;
    overflow: auto;
*/
}
.performance-table td:last-child {
    text-align: right;
    font-weight: 600;
}
.performance-table td:last-child:after {
    content:',-';
}
.performance-table h4 {
    text-align: left;
}
.create-btn {
    background-color:#3EEE96;
    color:#fff;
}
.delete-btn {
    background-color: #F58586;
    color: #fff;
}
.close-note,
.close {
    float: right;
    font-size: 32px;
    display: block;
    padding: 0 10px;
    font-weight: 700;
    color: red;
    position: sticky;
    right: 10px;
    top: 10px;
}
.close-note {
    position: absolute;
    z-index: 999;
    top: 10px;
}
.clear-value {
    font-size: 24px;
    line-height: 1;
    vertical-align: middle;
    display: inline-block;
    color: red;
    margin-left: -16px;
}
#notes a.close-note span.txt {
    font-size: 12px;
    display: inline;
    padding: 0;
    vertical-align: middle;
}
#notes .save-success i {
    color:#3EEE96;
    font-size:48px;
}
#notes .save-error i {
    color:red;
    font-size:48px;
}
#notes .save-success,
#notes .save-error {
    position:absolute;
    bottom:25px;
    right:25px;
    z-index:999;
}

#task-list {
    list-style:none;
    padding:0;
}
#task-list .subtask,
#task-list li.list-title {
    padding-left:0;
}
#task-list li.list-title {
    overflow:hidden;
}
input[name='cust-filter'],
input[name='task-filter'],
input[name='deal-filter'] {
    padding:5px 0;
    background-color: transparent;
    border:none;
    font-size: inherit;
    max-width: calc(100% - 8px);
}
input[name='cust-filter']::placeholder,
input[name='task-filter']::placeholder,
input[name='deal-filter']::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #000;
    opacity: 1; /* Firefox */
}
input[name='cust-filter']:-ms-input-placeholder,
input[name='task-filter']:-ms-input-placeholder,
input[name='deal-filter']:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #000;
}
input[name='cust-filter']::-ms-input-placeholder,
input[name='task-filter']::-ms-input-placeholder,
input[name='deal-filter']::-ms-input-placeholder { /* Microsoft Edge */
    color: #000;
}
span.stat-filter {
    margin-top:0 !important;
}
a.stat-filter:not([data-toggle="all"]) {
    font-weight:700;
}
a.stat-filter[data-toggle="behind"] {
    color:#F58586;
}
a.stat-filter[data-toggle="ahead"] {
    color:#3EEE96;
}
a.stat-filter[data-toggle="done"] {
    color:#98BEE8;
}
#tasks-list,
#deals-list {
    position: absolute;
    display:none;
    list-style:none;
    padding-left:0;
    z-index:9;
    background:#fff;
    padding:12px 0;
    border-radius:5px;
    box-shadow: 0 1px 6px 0px #ddd;
}
#task-list #tasks-list > li,
#task-list #deals-list > li {
    font-size: 12px;
}
input[name='task-filter']:focus ~ #tasks-list,
input[name='task-filter']:active ~ #tasks-list,
input[name='deal-filter']:focus ~ #deals-list,
input[name='deal-filter']:active ~ #deals-list,
#tasks-list:focus,
#tasks-list:active,
#deals-list:focus,
#deals-list:active {
    display: block;
}
.clear-input {
    font-size: 20px;
    line-height: 1;
    position: relative;
    top: 3px;
    color: red;
    margin-left: -16px;
    z-index: 99;
}
input[name='task-filter']:not(.active) ~ .clear-input,
input[name='deal-filter']:not(.active) ~ .clear-input {
    display:none;
}
input[name='task-filter'].active,
input[name='deal-filter'].active {
    border-radius: 10px;
    background-color: #3EEE96;
    padding-left: 8px;
    color: #fff;
    font-weight: 600;
}
#task-list li {
    margin-bottom:10px;
    padding:0px 12px;
    font-size: 0;
    border-radius: 5px;
    width:100%;
    box-sizing: border-box;
}
#task-list .task {
    position:relative;
    background-color:#fff;
    box-shadow: 0 1px 6px 0px #ddd;
    height:auto;/*40px;*/
    transition:height 0.2s ease-in;
    padding-left:0;/*28px;*/
}
#task-list .task.has-subs {
    cursor: pointer;
}
#task-list .task.has-subs:before {
    content:"\f0ca";
    font-family: 'FontAwesome';
    font-size: 15px;
    position:absolute;
    left: 8px;
    top: 11px;
}
#task-list .task .controls {
    position: absolute;
    top: 5px;
    right: 40px;
    padding: 2px 5px;
    background-color: #fff;
    display:none;
    z-index: 90;
    box-shadow: 0 0 5px 0px #ddd;
    border-radius: 5px;
}
#task-list .task .subtask .controls {
    top: 2px;
    right: 35px;
    padding: 1px 3px;
    border-radius: 3px;
}
#task-list .task .controls button {
    margin:2px;
    padding:8px 12px;
    background-color:#fff;
    /*border:1px solid #aaa;*/
    color:#ddd;
}
#task-list .task .controls .snooze button {
    color:red;
}
#task-list .task .controls .snooze button i {
    position: relative;
}
#task-list li.task[data-important="-1"] .snooze button i:after,
#task-list .task .controls .snooze button:hover i:after {
    color:#777;
    content:"\f05e";
    position: absolute;
    left:-4px;
    top:-5px;
    font-size:22px;
}
#task-list .task .controls [name='task-not-important'][value='-1'] ~ button,
#task-list .task .controls [name='task-important'][value='1'] ~ button {
    background-color:#3EEE96;
    color:#fff;
}
#task-list .task .controls [name='close-task'] ~ button {
    color: #333;
    font-size: 18px;
    padding: 1px 8px 0px;
}
#task-list:not(.show-closed) .task[data-closed="1"] {
    display:none !important;
}
#task-list .task .controls [name='close-task'] ~ button {
    display:none;
}
#task-list .task[data-closed="0"][data-deal="0"] .controls [name='close-task'] ~ button,
#task-list .task[data-closed="0"][data-deal="1"] .controls [name='close-task'] ~ button,
#task-list .task[data-closed="0"][data-deal="2"] .controls [name='close-task'] ~ button,
#task-list .task[data-closed="0"][data-deal="3"] .controls [name='close-task'] ~ button {
    display:inline-block;
}
#show-closed {
    float:right;
}
.task[data-closed="1"]:before {
    content:'';
    display:block;
    position:absolute;
    left: 0;
    top: 0;
    border-radius: 10px;
    z-index:9;
    width:100%;
    height:100%;
    background-color:rgba(255,255,255,0.8);
}
/*#task-list .task:hover .controls {*/
#task-list .task.show-menu > .controls,
#task-list .subtask.show-menu > .controls {
    display: block;
}
#task-list .task .controls > * {
    display:inline-block;
    vertical-align: middle;
}
#task-list .task .controls > a {
    font-size: 18px;
    min-width: 32px;
    text-align: center;
}
#task-list .subtask .controls > a {
    font-size: 16px;
    min-width: 24px;
}
#task-list .task.show {
    height:auto;
}
.log-wrapper li span,
#task-list li span {
    display: inline-block;
    font-size:13px;
    margin-right:0.7%;
    vertical-align: middle;
}
#task-list li.task > span:first-child {
    position: relative;
    padding-left: 28px;
    padding-top: 10px;
    padding-bottom: 10px;
}
#task-list li.task.new > span:last-of-type:after {
    /*font-family: 'FontAwesome';*/
    /*content:"\f005";*/
    content: "NY";
    color: #CCCC00;
    font-weight: 600;
    position: absolute;
    /* text-shadow: 1px 1px 0px #aaa; */
    margin-left: 8px;
    font-size: 12px;
}
.log-wrapper li span:first-child,
#task-list li span:first-child {
    width:16%;
}
#task-list li.task > span:first-child {
    box-sizing: border-box;
}
body.reduce-table #task-list > li > span:first-child {
    width:17.5%;
}
#task-list li span:nth-child(7) {
    min-width: auto;/*240px;*/
    width:15%;
    margin-top: 8px;
    margin-bottom: 2px;
}
body.reduce-table #task-list > li > span:nth-child(7) {
    width:17.5%;
}
#task-list li span:nth-child(3),
#task-list li span:nth-child(2) {
    width:12%;
}
body.reduce-table #task-list > li > span:nth-child(3),
body.reduce-table #task-list > li > span:nth-child(2) {
    width:13.5%;
}
#task-list li span:nth-child(4),
#task-list li span:nth-child(5),
#task-list li span:nth-child(8) {
    width:7%;
    /*max-width:80px;*/
}
#task-list li span:nth-child(9) {
    width:6%;
}
body.reduce-table #task-list > li > span:nth-child(4),
body.reduce-table #task-list > li > span:nth-child(5),
body.reduce-table #task-list > li > span:nth-child(8) {
    width:8.5%;
}
body.reduce-table #task-list > li > span:nth-child(9) {
    width:7.5%;
}
#task-list li span:nth-child(6),
#task-list li span:nth-child(10) {
    width:2.5%;
    /*max-width: 45px;*/
}
body.reduce-table #task-list > li > span:nth-child(6),
body.reduce-table #task-list > li > span:nth-child(10) {
    width:3.5%;
}
#task-list li span:nth-child(11) {
    width:4%;
    margin-right:0;
}
body.reduce-table #task-list li span:nth-child(11) {
    width:5%;
}
#task-list .task p,
#task-list .task ul,
#task-list .task .log {
    font-size:10.5px;
}
.log-wrapper .log,
#task-list .log {
    padding:0;
    list-style: none;
}
.log-wrapper .log span:first-child,
#task-list .log span:first-child {
    font-size:10.5px;
    width:120px;
    vertical-align: middle;
}
.log-wrapper .log li,
#task-list .log li {
    border-top:1px solid #ddd;
    border-radius: 0;
    margin-bottom:0;
}
.log-wrapper .log span:not(:first-child),
#task-list .log span:not(:first-child) {
    font-size:12px;
    width: calc(100% - 270px);
    vertical-align: middle;
}
body.reduce-table #task-list .log span:last-child,
#task-list .log span:last-child {
    width: calc(100% - 130px);
}
ul.log form.delete {
    display: inline-block;
    vertical-align: middle;
}
.create-log h4 {
    font-size:18px;
    margin:12px auto;
}
.create-log input {
    width: calc(100% - 180px);
    margin:0 10px;
    padding:5px;
    border:1px solid #aaa;
    border-radius:5px;
    box-sizing: border-box;
}
.create-log > input {
    margin: 10px 0;
    width:75%;
}
/*
.create-log input:first-child,
.create-log input:last-child {
    margin:0;
    width:75px;
}
*/
.log .delete-btn {
    float:right;
}
.msg {
    position:fixed;
    bottom:60px;
    text-align: center;
    left:50%;
    transform:translateX(-50%);
    width:500px;
    background-color:#3EEE96;
    color:#fff;
    text-shadow: 0px 0px 5px #333;
    font-size:16px;
    padding:16px;
    border-radius:5px;
    z-index:9;
}
table {
    width: 90%;
    max-width: 1200px;
    margin: 40px auto;
    border: 1px solid #aaa;
    text-align: left;
    border-collapse: collapse;
}
table button {
    margin:0;
}
table th,
table td {
    border: 1px solid #aaa;
    padding:5px 8px;
}
table.edit td {
    padding:1px;
}
table th.delete,
table th.edit,
table td.delete,
table td.edit {
    width:50px;
}
table tfoot {
    font-weight: 600;
}
table input,
table textarea {
    width:calc(100% - 8px);
    display:inline-block;
    border: none;
    margin-left:2px;
    padding:2px 3px;
    box-sizing: border-box;
    min-height:24px;
}
table.tasks th:nth-child(1),
table.tasks td:nth-child(1) {
    width:120px;
}
table.tasks th:nth-child(3),
table.tasks td:nth-child(3),
table.tasks th:nth-child(4),
table.tasks td:nth-child(4),
table.tasks th:nth-child(5),
table.tasks td:nth-child(5),
table.tasks th:nth-child(6),
table.tasks td:nth-child(6) {
    width:40px;
}
table.tasks th:nth-child(2),
table.tasks td:nth-child(2) {
    width:90px;
}
table.expenses th:first-child,
tr.expense td:first-child,
table.expenses form input[type="text"] {
    width:60%;
}
table.expenses th:nth-child(2),
tr.expense td:nth-child(2),
table.expenses form input[type="number"] {
    width:29%;
}
table.expenses form input[type="submit"] {
    width: 10%;
}
.col-3,
.col-6,
.col-9 {
    display:inline-block;
    width:49.5%;
    vertical-align: top;
}
.col-3 {
    width:33%;
}
.col-9 {
    width:66%;
}
.col-12 {
    width:100%;
}
form.edit input,
form.edit select {
    display:none !important;
}
#task-list li.task[data-important="0"]:not(.fake-important) .snooze,
textarea[readonly] ~ [name="change-ticket-user"],
progress,
.update-task input.date,
#create-task input.date,
.create-log,
.log-wrapper,
.edit-wrapper,
.notes-wrapper,
input.new {
    display:none;
}
.edit-wrapper,
.log-wrapper,
.notes-wrapper {
    position: fixed;
    background: #fff;
    width: 90%;
    max-width:800px;
    left: 50%;
    z-index: 99;
    box-shadow: 0 1px 6px 0px #ddd;
    padding: 12px;
    top: 50%;
    transform: translate(-50%,-50%);
    max-height: 80%;
    overflow: auto;
    font-size: 10.5px;
}

.add-log {
    display: inline-block;
    padding: 0px;
    background-color: #3EEE96;
    border-radius: 8px;
    padding: 5px 12px;
    /*margin-top: -4px;*/
    color: #fff;
}
.number-wrapper > * {
    display:inline-block;
    width:20% !important;
}
.number-wrapper a {
    background-color: #3EEE96;
    border-radius: 5px;
    font-size: 20px;
    text-align: center;
    vertical-align: top;
    margin-bottom: 10px;
    color: #fff;
}
#user-stats .user,
#user-filter .user {
    opacity:0.2;
    display: inline-block;
    margin: 0 2px 0 0;
    padding: 14px 0;
    width: 48px;
    border-radius: 50%;
    border: 1px solid #777777;
    text-align: center;
}
#user-stats .user,
#user-filter .user.active {
    opacity:1;
}
#user-stats {
    margin-top: 25px;
}
.perf-sel {
    display:inline-block;
}
.user-stat {
    display:inline-block;
    vertical-align:top;
    min-width:190px;
    margin-right:4%;
}
.user-stat.this-user {
    background-color:#ffffff;
    padding:8px;
    margin-left:-8px;
    position: relative;
    top:-8px;
    margin-right:calc(4% - 8px);
    border-radius: 8px;
}
.user-stat:last-child {
    margin-right:0;
}
.user-stat .user {
    float:left;
}
.user-stat span.stat,
.user-stat span.goal {
    display: block;
    text-align: right;
    line-height:1;
    font-size:21px;
}
.user-stat span.goal {
    /*color:#777;*/
    font-size: 75%;
    margin-top: 5px;
    font-weight:600;
}
.user-stat span.stat {
    color:#3EEE96;
    font-weight:700;
}
.user-stat span.stat.orange {
    color:#ffaa00;
}
.user-stat span.stat.yellow {
    color:#D3DD7F;
}
.user-stat span.stat.red {
    color:#F58586;
}

.contact-info {
    display:inline-block;
    max-width:90%;
    width:800px;
    margin:auto;
    padding: 25px 25px 15px;
    background-color:#fff;
    box-shadow:0 1px 6px 0px #ddd;
    border-radius:5px;
    vertical-align: middle;
}
.contact-info > * {
    vertical-align: top;
    margin:0;
    width:400px;
    max-width:90%;
    list-style: none;
    padding:0;
    display:inline-block;
}
.contact-info span {
    display: inline-block;
    margin-bottom:8px;
    min-width:140px;
    font-weight:600;
}
.clear {
    content:'';
    display:block;
    clear:both;
}
.company-tasks {
    list-style: none;
    padding:0;
    margin-top:40px;
}
.company-tasks li {
    margin-bottom:10px;
    padding:8px 12px;
    border-radius: 5px;
    width:100%;
    box-sizing: border-box;
    background-color:#fff;
    box-shadow:0 1px 6px 0px #ddd;
    border-radius:5px;
}
.company-tasks span {
    /*font-weight:600;*/
    margin-right:25px;
}
.company-tasks table {

}
.company-tasks th:first-child,
.company-tasks th:nth-child(2) {
    width:12%;
}
.company-tasks th:nth-child(3) {
    width:7%;
}
[name="select-period"],
[name="select-user"] {
    width:100%;
}
.perf-sel {
    max-width: 920px;
    width:45%;
    margin: auto;
    display: inline-block;
    vertical-align: top;
}
.toggle-create-ticket {
    position: fixed;
    right: 4px;
    bottom: 4px;
    z-index: 9;
    border-radius: 50%;
    background-color: #3EEE96;
    width: 48px;
    height: 48px;
    text-align: center;
    line-height: 55px;
}
#mini-dash,
#tickets,
#notes {
    bottom: 5px;
    z-index: 9;
    background-color: #3EEE96;
    text-align: center;
    position: fixed;
    /*
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    */
    border-radius:50%;
}
#mini-dash {
    left:64px;
}
#tickets {
    right:128px;
}
#notes {
    right:64px;
}
#mini-dash i,
#tickets i,
#notes i {
    font-size:18px;
    color:#fff;
}
#mini-dash > a,
#tickets > a,
#notes > a {
    position: relative;
    display: block;
    padding: 16px 0px;
    min-width: 52px;
    min-height: 20px;
    text-align: center;
    z-index: 9;
}
#mini-dash .list,
#tickets .list,
#notes .list {
    display:none;
    min-width: 300px;
    position: fixed;
    right: 10px;
    bottom: 60px;
    min-height: 40px;
    /*max-height:500px;*/
    background-color: #fff;
    padding: 12px;
    border-radius: 5px;
    box-shadow: 0 0 5px 0px #ddd;
    overflow: auto;
    width: 500px;
    max-width: 96%;
}
#mini-dash .list {
    right:auto;
    left:10px;
    z-index: 999;
    font-weight: 600;
    text-align: center;
}
#mini-dash td:not(:first-child) {
    text-align: center;
}
#tickets .list {
    width:300px;
    box-shadow: none;
    background-color: transparent;
    height: calc(100% - 100px);
    bottom: 36px;
}
#tickets ul {
    height: calc(100% - 120px);
}
#tickets form,
#tickets .ticket {
    background-color: #fff;
    padding: 8px 8px 0;
    border-radius: 5px;
    box-shadow: 0 0 5px 0px #ddd;
    margin-bottom:5px;
    position: relative;
    z-index: 99;
}
#tickets input:not([type="radio"]):not([type="checkbox"]),
#tickets select,
#tickets textarea,
#tickets button {
    width: 100%;
}
#tickets input[type="text"][name="ticket-filter"] {
    width:50% !important;
}
#tickets label [type="radio"] {
    display:none;
}
#tickets label span {
    display: inline-block;
    padding: 2px 5px;
    min-width: 25px;
    border-radius: 5px;
    background-color: #aaa;
    margin-right: 4px;
    color: #fff;
    position: relative;
    font-weight: 600;
    top: 1px;
    cursor: pointer;
}
#tickets label [type="radio"]:checked + span {
    background-color: #3EEE96;
}

#tickets form {
    position: absolute;
    bottom: 50px;
    left: 14px;
    width: 290px;
}
#tickets .ticket {
    font-size: 10px;
}
#tickets textarea {
    font-size: 10px;
    outline: none;
    max-width: 96%;
    font-family: 'Montserrat';
    line-height: 1;
}
#tickets textarea[readonly] {
    border-color:transparent;
    padding: 0;
    margin-top: 2px;
    overflow: hidden;
    position: relative;
    max-height:18px;
    pointer-events: none;
    resize: none;
}
#tickets textarea[readonly] + .text-fade {
    display:block;
    width:100%;
    height: 24px;
    margin-top: -24px;
    z-index: 999;
    position: relative;
}
#tickets textarea[readonly] + .text-fade:not(.full) {
    background-image: linear-gradient(to bottom, transparent 0%, transparent 50%, #fff 90%);
}
#tickets textarea[readonly] + .text-fade.full {
    position: absolute;
    left: 0;
    bottom: 0;
    height: calc(100% - 25px);
}
#tickets .ticket-admin {
    text-align: right;
    position: absolute;
    top: 1px;
    right: 0px;
    z-index: 999;
}
#tickets .ticket-admin i {
    color:#ccc;
    font-size:16px;
}
#tickets .ticket-admin a:hover i {
    color:#777;
}
#tickets .ticket-admin .menu {
    display:none;
    padding: 5px 8px;
    box-shadow: 0 0 5px 0px #aaa;
    border-radius: 5px;
    position: relative;
    top: -16px;
    right: 16px;
    background-color: #fff;
}
#tickets .ticket-admin .menu a {
    margin-left:2px;
    margin-right:2px;
    display: inline-block;
    background-color: transparent;
    padding: 4px;
    border-radius: 50%;
    width: 16px;
    text-align: center;
}
#tickets .ticket-admin .menu a:hover {
    background-color: #ddd;
    color:#3EEE96
}
#tickets .ticket-admin.show .menu {
    display: block;
}
#tickets .close-tickets {
    float: left;
    margin-top: 18px;
}
#tickets .close-tickets i {
    color:#333;
    font-size: 16px;
}
#tickets .ticket[data-imp="1"] {
    box-shadow: 0 0 5px 0px red;
}
#tickets .ticket[data-imp="1"] .ticket-admin .set-important i {
    color: red;
}
.ticket-admin > a {
    width: 16px;
    display: inline-block;
    text-align: center;
    background-color: transparent;
    margin-left: 1px;
    border-radius: 50%;
    padding: 2px;
}
.ticket-admin > a:hover {
    background-color: #ddd;
    /*color:#3EEE96;*/
}
.ticket-admin .external:hover:after {
    position:absolute;
    content: attr(data-tag);
    padding:8px ;
    border-radius:5px;
    color:#fff;
    background-color: #333;
}
.ticket .external {
    display: inline-block;
    width: 16px;
    text-align: center;
}
#tickets .ticket .external i {
    color:#ddd;
}
#tickets .ticket .external.yellow i {
    color:yellow;
    text-shadow: 0px 0px 1px black;
}
#tickets .list ul,
#notes .list ul {
    list-style: none;
    padding:0;
    text-align: left;
    line-height: 1;
}
#tickets .list ul {
    overflow: auto;
    padding:4px;
    width: 100%;
}
#tickets h3 {
    line-height: 1;
    margin-bottom: 16px;
    margin-top: 20px;
}
#tickets[data-ext]:after {
    content: attr(data-ext);
    position:absolute;
    top:-2px;
    right:-2px;
    color:#333;
    background: yellow;
    font-size:10px;
    width:16px;
    height:16px;
    text-align:center;
    border-radius: 8px;
    line-height: 16px;
    z-index:9;
    opacity:1;
    transition: all 0.5 ease-in;
}
#tickets[data-ext="0"]:not(.pulse):after {
    opacity: 0;
}
#task-list .notes-wrapper li,
#notes .list li {
    border-bottom:1px solid #aaa;
    padding: 5px 0;
}
#notes .list span {
    width:100%;
    padding: 2px 5px;
    display: inline-block;
    vertical-align: middle;
}
#notes .list span:first-child {
    font-size: 70%;
}
.notes-wrapper textarea,
.notes-wrapper input,
#notes textarea,
#notes input {
    display: block;
    width:100%;
    border: 1px solid #aaa;
    margin-top:5px;
    padding:5px;
    box-shadow: none;
    box-sizing: border-box;
}
#notes input[type="submit"] {
    background-color:#3EEE96;
    border: none;
    border-radius: 5px;
    color: #fff;
}
#notes .tox-tinymce {
    min-height:calc(100vh - 175px);
}
#task-list .list-title.sticky {
    position:fixed;
    padding:10px 37px;
    top:55px;
    left:0;
    background-color:#f5f6fa;
    z-index:9;
}
#task-list .list-title.sticky + li {
    margin-top:48px;
}
[name="note-text"] {
    min-height:500px;
}
ul.log input {
    width:50px;
    border:none;
    background-color:#efefef;
}
ul.log textarea {
    width:100%;
    border:none;
    background-color:#efefef;
}
body.reduce-table #content {
    max-width: calc(100% - 360px);
    padding-right: 10px;
}
body.reduce-table #task-list .list-title.sticky {
    max-width: calc(100% - 310px);
}
.tab:not(.show),
#create-ticket,
body.reduce-table #task-list > li.list-title > span:nth-child(2),
body.reduce-table #task-list > li.task > span:nth-child(2),
#performance .save-log,
ul.log .save-log {
    display:none;
}
.tab-select {
    border-bottom: 2px solid #3EEE96;
}
.tab-select > a {
    display:inline-block;
    background-color: #fff;
    border:2px solid #3EEE96;
    color: #3EEE96;
    font-weight: 300;
    padding:8px;
    min-width:120px;
    margin-right:4px;
    margin-bottom:-2px;
    text-align: center;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
.tab-select > a.active {
    background-color: #3EEE96;
    color:#fff;
    font-weight: 700;
}
input.saving {
    background-color: rgba(63,255,150, 0.5);
}
input.error {
    background-color: rgba(250,50,50, 0.5);
}
/*
ul.log li.changes .save-log {
    display:block;
    position:absolute;
    right:0;
    top:4px;
}
#performance tr.changes .save-log {
    display: inline-block;
    position:relative;
}
*/
#performance tr [name="spent"] {
    max-width:75px;
    margin-right:12px;
}
ul.log li.changes {
    position:relative;
}
#task-list .task[data-important="1"],
#task-list .task.fake-important:not([data-important="-1"]) {
    box-shadow: 0 1px 6px 0px #cc0000;
}
#task-list .task[data-important="-1"]:after,
#task-list .task[data-important="-1"]:before,
#task-list .task[data-important="1"]:before {
    content: "\f12a";
    font-family: 'FontAwesome';
    display: block;
    position: absolute;
    right: 28px;
    top: 9px;
    width: 16px;
    height: 16px;
    color: red;
    font-size: 20px;
    opacity: 0.5;
}
#task-list .task[data-important="-1"]:before {
    content:"\f026";
    color:blue;
    opacity: 0.2;
}
#task-list .task[data-important="-1"]:after {
    content:"\f05e";
    color:blue;
    opacity: 0.2;
    right: 33px;
    font-size: 24px;
    top: 7px;
}
/*
@media all and (max-height:920px) {
    #notes .tox-tinymce {
        min-height:600px;
    }    
}
@media all and (max-height:800px) {
    #notes .tox-tinymce {
        min-height:400px;
    }    
}
*/
.show-comp {
    position:absolute;
    display:none;
    color: #3EEE96;
    right: 0;
    top: 6px;
    font-size: 20px;
}
span:hover > .show-comp {
    display:block;
}
input.edit-locked {
    color:#aaa;
}
.edit-unlock {
    width: calc(48% - 12px);
    display:none;
    height: 32px;
    vertical-align: middle;
    line-height: 1;
    font-size: 24px;
    /* display:none; */
    margin-left: calc(-48% - 12px);
    text-align: right;
    padding-right: 24px;
    color: #555;
}
input.edit-locked + .edit-unlock {
    display: inline-block;
}
#close-reg-tasks {
    float:right;
    margin-top: 0;
}
.contact-info a {
    font-family: Arial;
    font-size: 13px;
    border-radius: 50%;
    background-color: #3EEE96;
    text-align: center;
    color: #fff;
    padding: 5px 6px;
    font-size: 14px;
}
.contact-info input,
.contact-info textarea {
    background-color: transparent;
    pointer-events: none;
    border: none;
    min-width: 200px;
}
.contact-info.editable input,
.contact-info.editable textarea {
    pointer-events: all;
    background-color: #efefef;
    border-radius: 4px;
    padding: 4px 8px;
}
.contact-info textarea {
    width:100%;
    min-height:80px;
    box-sizing: border-box;
}
.contact-info.editable button {
    padding:8px;
    width:100%;
    max-width: 100%;
    background-color: #3EEE96;
    color: #fff;
}
.contact-info.editable button[disabled] {
    background-color: #efefef;
}
.contact-info #link-txt {
    font-size: 13px;
    font-weight: 400;
}
.contact-info #link-url {
    position:absolute;
    opacity:0;
    z-index: -1;
    right: 0;
}
#comp-logo {
    display:inline-block;
    width: calc(100% - 850px);
    vertical-align: middle;
}
#logo-form input,
#comp-logo select {
    width:90%;
}
#comp-logo img {
    /*width:90%;*/
    width:auto;
    height:auto;
    max-width:350px;
    max-height:150px;
    margin: auto;
    display: block;
}
#logo-form input {
    margin-top:8px;
}
.company-tasks .em {
    font-weight: 600;
    margin-right:0;
}
.no-wrap,
.no-wrap span {
    overflow:visible;
    white-space:nowrap;
}
[name="change-ticket-user"] {
    margin-bottom:2px;
    position: relative;
    z-index: 9999;
}
.future {
    display: inline-block;
    font-size: 14px;
    position: absolute;
    color: #aaa;
    top: 10px;
    right: 30px;
}
#task-list .future .date-txt {
    display:none;
    position:absolute;
    padding:3px 5px;
    border-radius:3px;
    background:#333;
    color:#fff;
    right:0;
    top:100%;
    min-width: 65px;
    font-size: 12px;
}
#task-list .future:hover .date-txt {
    display: block;
}
#task-list .subtasks {
    display:none;
    padding-left:0;
    padding-bottom:4px;
}
#task-list .subtask {
    margin: 2px 0;
    width: calc(100% + 12px);
    position: relative;
}
#task-list .subtask .status {
    top:0px;
}
#task-list .subtask .add-log {
    padding-top:2px;
    padding-bottom:2px;
}
#task-list .task.show-sub .subtasks {
    display:block;
}
#task-list .subtask > span:first-child {
    padding-left:20px;
    width: 41.4%;
    box-sizing: border-box;
}
#task-list .subtask .status-text {
    line-height: 16px;
}
#task-list .subtask > span:nth-child(2),
#task-list .subtask > span:nth-child(3),
#task-list .subtask > span:nth-child(6){
    width:7%;
}
#task-list .subtask > span:nth-child(4) {
    width:2.5%;
}
#task-list .subtask > span:nth-child(5) {
    width:15%;
}
#task-list .subtask > span:nth-child(7) {
    width:6%;
    margin-top: 5px;
    margin-bottom: 5px;
}
#task-list .subtask > span:nth-child(8) {
    width:2.5%;
}
#task-list .subtask > span:nth-child(9) {
    width:4%;
    margin-right:0;
}
body.reduce-table #task-list .subtask > span:first-child {
    width:31.7%;
    padding-left:28px;
}
body.reduce-table #task-list .subtask > span:nth-child(2),
body.reduce-table #task-list .subtask > span:nth-child(3),
body.reduce-table #task-list .subtask > span:nth-child(6){
    width:8.5%;
}
body.reduce-table #task-list .subtask > span:nth-child(4),
body.reduce-table #task-list .subtask > span:nth-child(8) {
    width:3.5%;
}
body.reduce-table #task-list .subtask > span:nth-child(5){
    width: 17.5%;
    min-width: 17.5%;
}
body.reduce-table #task-list .subtask > span:nth-child(7){
    width:7.5%;
}
.task a.show-menu {
    display:block;/*none;*/
    position: absolute;
    right: 3px;
    font-size: 20px;
    top: 3px;
    padding: 4px 14px;
    border-radius: 50%;
    color:#d5d6da;/*#f5f6fa;*/
}
.task .subtask a.show-menu {
    font-size:14px;
    right: 8px;
    padding:2px 10px;
}
.task a.show-menu:hover {
    background-color: #eee;
    color:#333;
}
.task:hover a.show-menu {
    display:block;
}
.task.recoff {
    opacity: 0.3;
    /*box-shadow: 0 1px 6px 0px #ddd !important;*/
}
.task.recoff .status,
.task.recoff .diff {
    opacity: 0;
}
#statChart,
#salesChart {
    width:100%;
    height:auto;
    margin:40px auto;
    max-width:1200px;
    max-height:800px;
}
.subtask-title {
    margin:0 auto;
    text-align: left;
    max-width: 1420px;
}
.subtask-title .subtask-pre-title {
    margin-right:10px;
    min-width: 100px;
    display: inline-block;
}
.subtask-table {
    margin-top:12px;
}
.deal0-input {
    display:none;
}
#popup-msg-wrapper {
    position: fixed;
    left:0;
    top:0;
    width:100%;
    height:100%;
    z-index: 99;
    background-color: rgba(0, 0, 0, 0.5);
}
#popup-msg {
    position: absolute;
    left:50%;
    top:50%;
    transform: translate(-50%,-50%);
    background-color: #ffffff;
    z-index: 999;
    width:800px;
    max-width: 90%;
    max-height: 96%;
    overflow: auto;
}
#popup-msg .close {
    position: absolute;
}
#popup-msg > .list {
    width:100%;
}
#popup-msg > .chart {
    width:calc(100% - 80px);
    min-height: 360px;
    padding-left:40px;
    padding-right:40px;
}
ul#snooze-list {
    list-style: none;
    padding:0;
    margin:20px 40px;
}
ul#snooze-list li {
    padding:2px;
}
ul#snooze-list li:nth-child(2n+1) {
    background-color: #efefef;
}
ul#snooze-list span {
    display: inline-block;
    vertical-align: middle;
}
ul#snooze-list span:first-child,
ul#snooze-list span:nth-child(2) {
    width:20%;
    margin-right: 1%;
}
ul#snooze-list span:nth-child(3) {
    width:45%;
    margin-right: 1%;
}
ul#snooze-list span:nth-child(4) {
    width:12%;
    text-align: center;
}
ul#snooze-list button {
    background-color: #3EEE96;
    color:#fff;
    margin: 2px auto;
    padding: 4px 8px;
}
.task .task-desc {
    display:none;
    position: absolute;
    background-color: #fff;
    z-index: 9;
    width: calc(100% - 56px);
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    top: 35px;
    box-shadow: 0 4px 5px -2px #ddd;
    padding:0 28px;
}
.subtask .task-desc {
    top: 30px;
}
.task > span:first-child:hover ~ .task-desc,
.subtask > span:first-child:hover ~ .task-desc {
    display:block;
}
a.edit-log {
    float: right;
}
a.save-comp-log {
    display: none;
    color: #3EEE96;
}
a.save-comp-log ~ .spinner {
    margin:0 !important;
}
[contenteditable="true"] {
    background-color:#efefef;
}
#task-list .task .pause-active button {
    color:#cc0000;
}
[data-calc] {
    /*position: relative;*/
}
[data-calc]:hover:before {
    content:attr(data-calc);
    position: absolute;
    /*
    top: 60%;
    left:50%;
    */
    transform: translateY(66%);
    font-size: 12px;
    display: block;
    background-color: #555;
    color: #fff;
    text-align: center;
    padding: 5px;
    border-radius: 5px;
    /*min-width: 140px;*/
    z-index: 99;
}
@media all and (max-width:1199px) {
    #comp-logo img {
        max-width:90%;
    }
}
@media all and (max-width:767px) {
    header .username {
        max-width: 33vw;
        right: 8px;
        top: 16px;
        text-align: right;
        font-size: 80%;
    }
    section {
        padding: 75px 12px 40px;
    }
    #filter a {
        padding: 8px 24px;
    }
    #task-list {
        overflow:scroll;
    }
    #task-list li.list-title,
    #task-list li.task {
        min-width:1440px;
        margin-left: 10px;
        right: 5px;
    }
    #notes .list {
        max-width:90%;
        right:5px;
    }
    #user-filter {
        float: none;
        text-align: center;
        width: 100%;
        margin-bottom: 25px;
    }
    .user-stat {
        display: block;
        max-width: 200px;
        margin: 12px auto !important;
    }
    .perf-sel {
        width:290px;
    }
    #performance table {
        overflow: scroll;
        max-width: 100%;
        display: block;
    }
    ul.log li {
        min-width:320px;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    ul.log li span {
        min-width:150px;
    }
    .log-wrapper {
        z-index:999;
    }
    #comp-logo {
        width: 100%;
        margin-bottom: 25px;
    }
    .contact-info > * {
        max-width: 100%;
    }
    .contact-info {
        max-width: calc(100% - 50px);
    }
    .contact-info span {
        min-width: 90px;
    }
    .contact-info input {
        min-width:auto;
        width:auto;
    }
    .contact-info textarea {
        width:100%;
        border:1px solid #efefef;
    }
    .company-tasks > li > span {
        display:block;
    }
    .company-tasks table {
        overflow: scroll;
        max-width: 100%;
        width: 100%;
        display: block;
    }
    .company-tasks span {
        margin-right: 0;
    }
    .company-tasks .em {
        min-width: 90px;
        margin-bottom: 5px;
        display: inline-block;
    }
    .company-tasks .em + .desc {
        display: inline-block;
        width: calc(100% - 125px);
        vertical-align: top;
        margin-bottom: 5px;
    }
    .company-tasks .em + .status {
        width:100%;
    }
}
@media all and (max-height:750px) {
    [name="note-text"] {
        min-height:400px;
    }    
}
@media all and (max-height:640px) {
    [name="note-text"] {
        min-height:300px;
    }    
}
@media all and (max-height:500px) {
    [name="note-text"] {
        min-height:240px;
    }    
}