/*---------------------------------------------------
    LESS Elements 0.9
  ---------------------------------------------------
    A set of useful LESS mixins
    More info at: http://lesselements.com
  ---------------------------------------------------*/
html,
body {
  line-height: 1.4;
  padding: 0;
  margin: 0;
}
img {
  border: 0;
}
*:focus {
  outline: none;
}
textarea {
  resize: none;
}
table {
  border-collapse: collapse;
}
td {
  empty-cells: show;
}
.clear {
  clear: both;
}
.login {
  position: absolute;
  right: 0px;
  top: 20px;
}
.modalwindow {
  position: absolute;
  z-index: 9001;
}
.floatright {
  float: right;
}
.floatleft {
  float: left;
}
.centermsg {
  padding-top: 6px;
  text-align: center;
  display: block;
}
#login {
  position: relative;
}
.template {
  display: none;
}
#sendpassword {
  display: none;
  z-index: 9002;
  max-width: 960px;
}
#messagebox {
  display: none;
  z-index: 9003;
}
.window .center {
  text-align: center;
  width: auto;
}
.closebutton {
  position: absolute;
  top: -4px;
  right: -5px;
}
#messagebox .warning {
  background: url("/img/dialog-warning.png") no-repeat scroll 0 0 transparent;
}
#messagebox .error {
  background: url("/img/dialog-error.png") no-repeat scroll 0 0 transparent;
}
#messagebox .information {
  background: url("/img/dialog-information.png") no-repeat scroll 0 0 transparent;
}
#messagebox .question {
  background: url("/img/dialog-question.png") no-repeat scroll 0 0 transparent;
}
#messagebox p {
  margin-left: 80px;
  min-height: 44px;
  padding-right: 7px;
}
#messagebox .icon {
  height: 64px;
  left: 9px;
  margin-top: 8px;
  position: absolute;
  width: 64px;
}
#mask {
  background-color: #000000;
  height: 100%;
  left: 0;
  position: absolute;
  text-align: center;
  top: 0;
  width: 100%;
  z-index: 9000;
  display: none;
  opacity: 0;
}
.window {
  background: #E8E8E8;
  /*  background: -moz-linear-gradient(top , #E8E8E8 0%, #F7F7F7 60px, #FFFFFF 100%) repeat scroll 0 0 transparent;
  background: -webkit-linear-gradient(top , #E8E8E8 0%, #F7F7F7 60px, #FFFFFF 100%) repeat scroll 0 0 transparent;
  background: linear-gradient(top , #E8E8E8 0%, #F7F7F7 60px, #FFFFFF 100%) repeat scroll 0 0 transparent;
  background: -ms-linear-gradient(top , #E8E8E8 0%, #F7F7F7 60px, #FFFFFF 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#E8E8E8', endColorstr='#FFFFFF',GradientType=0 );*/
  border: 1px solid #DDDDDD;
  border-radius: 4px 4px 4px 4px;
  box-shadow: 2px 2px 4px 1px #666666;
  padding: 4px;
  font-size: 13px;
}
.window > h1 {
  font-size: 130%;
  margin: 5px;
  text-align: center;
  /*text-shadow: 1px 1px #666666;*/
  /*background: url(/img/input.png) repeat-x #92a0BA;*/
  /*border: 1px solid #4E566B;
  border-radius: 4px 4px 4px 4px;*/
  /*color: #FFFFFF;*/
  padding: 4px;
}
.window > div,
.window > form {
  padding: 20px;
}
html {
  /*background:url(/img/linen.jpg);*/
  background-color: #fff;
  font-family: 'Lato', Helvetica, Arial, sans-serif;
}
div.body {
  background: #f9f9f9;
  border-radius: 10px;
  box-shadow: 0 0 10px 0px #e0e0e0 inset, 0 0 6px #888;
  border: 1px solid #f1f1f1;
  padding: 0px;
  /*max-width:960px;*/
  margin: 10px;
  position: relative;
}
header {
  border-bottom: 1px solid #cdcdcd;
  padding: 10px;
  position: relative;
}
header .menu {
  position: absolute;
  font-weight: bold;
  text-align: right;
  top: 0px;
  right: 10px;
  /*width:610px;*/
}
header .menu ul {
  margin: 20px 0 0;
  padding: 0;
  list-style-type: none;
}
header .menu ul li {
  display: inline-block;
  text-transform: uppercase;
  white-space: nowrap;
  border-bottom: solid 5px #d4d5d6;
  padding: 0 15px 7px;
  margin: 0 -5px 0 0;
  color: #565758;
}
header .menu ul li:hover {
  border-bottom: solid 5px #a7a7a7;
}
header .menu ul li.active {
  border-bottom: solid 5px #5377A3;
  color: #5377A3;
}
header .menu ul .user > div {
  display: none;
  opacity: 0;
  background-color: rgba(255, 255, 255, 0.7);
  position: absolute;
  top: 50px;
  right: 5px;
  padding: 5px 5px 5px 5px;
  border: 1px solid #aaaaaa;
  border-radius: 3px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
  z-index: 4;
  width: 150px;
}
header .menu ul .user .lastname {
  display: none;
}
header .menu ul a {
  color: inherit;
  text-decoration: none;
}
#submenu {
  position: absolute;
  top: 50px;
  right: 10px;
  font-size: 80%;
}
#submenu ul {
  margin: 15px 0 0;
  padding: 0;
  list-style-type: none;
}
#submenu ul li {
  display: inline-block;
  text-transform: uppercase;
  white-space: nowrap;
  border-bottom: solid 5px #d4d5d6;
  padding: 0 15px 7px;
  margin: 0 -5px 0 0;
}
#submenu ul li:hover {
  border-bottom: solid 5px #a7a7a7;
}
#submenu ul li.active {
  border-bottom: solid 5px #5377A3;
  color: #5377A3;
}
#submenu a {
  color: inherit;
  text-decoration: none;
}
h1 {
  font-size: 150%;
}
h2 {
  margin: 0;
  padding: 5px 10px;
  font-size: 100%;
  border-top: 1px solid #fdfdfd;
  border-bottom: 1px solid #fdfdfd;
  color: #363738;
  /*font-family: 'Playfair Display', serif;*/
  font-weight: bold;
}
h2.nottoday span {
  color: #CC5622;
}
h3 {
  padding: 5px 10px;
}
th {
  text-align: left;
  vertical-align: top;
}
.content,
.admin {
  border-top: 1px solid #cdcdcd;
  margin-bottom: 75px;
}
#login {
  margin-bottom: 50px;
}
footer {
  position: absolute;
  width: 100%;
  bottom: 0px;
  background-color: #F2F2F2;
  color: #707070;
  border-radius: 0 0 10px 10px;
  border-top: 1px solid #cdcdcd;
}
footer > div {
  padding: 10px;
  border-top: 1px solid #fdfdfd;
  text-align: right;
  font-size: 13px;
  font-family: 'Playfair Display', serif;
}
#sendpassword td {
  white-space: nowrap;
}
.button {
  border: 1px solid #bbb;
  color: #5B6069;
  border-radius: 5px 5px 5px 5px;
  box-shadow: 0px 0px 6px #aaaaaa;
  display: inline-block;
  font-size: 13px;
  /*font-family: 'Lato', sans-serif;*/
  padding: 5px 15px 3px 15px;
  text-decoration: none;
  background: #f5f5f5;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #e9e9e9), color-stop(1, #f9f9f9));
  background: -ms-linear-gradient(bottom, #e9e9e9, #f9f9f9);
  background: -moz-linear-gradient(center bottom, #e9e9e9 0%, #f9f9f9 100%);
  background: -o-linear-gradient(#f9f9f9, #e9e9e9);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#e9e9e9', GradientType=0);
  color: #000;
  margin: 0px 0px 5px 0px;
}
.button:hover {
  background: #e5e5e5;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #d0d0d0), color-stop(1, #f9f9f9));
  background: -ms-linear-gradient(bottom, #d0d0d0, #f9f9f9);
  background: -moz-linear-gradient(center bottom, #d0d0d0 0%, #f9f9f9 100%);
  background: -o-linear-gradient(#f9f9f9, #d0d0d0);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f9f9f9', endColorstr='#d0d0d0', GradientType=0);
  border: 1px solid #888;
}
.button:active {
  background: #F5F5F5;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #f9f9f9), color-stop(1, #e0e0e0));
  background: -ms-linear-gradient(bottom, #f9f9f9, #e0e0e0);
  background: -moz-linear-gradient(center bottom, #f9f9f9 0%, #e0e0e0 100%);
  background: -o-linear-gradient(#e0e0e0, #f9f9f9);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e0e0e0', endColorstr='#f9f9f9', GradientType=0);
  border: 1px solid #000;
}
.button.rect {
  border-radius: 1px;
}
.button.start {
  background: #51A732;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #308E13), color-stop(1, #72C152));
  background: -ms-linear-gradient(bottom, #308E13, #72C152);
  background: -moz-linear-gradient(center bottom, #308E13 0%, #72C152 100%);
  background: -o-linear-gradient(#72C152, #308E13);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#72C152', endColorstr='#308E13', GradientType=0);
  color: #FFF;
}
.button.start:hover {
  background: #51A732;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #106E03), color-stop(1, #72C152));
  background: -ms-linear-gradient(bottom, #106E03, #72C152);
  background: -moz-linear-gradient(center bottom, #106E03 0%, #72C152 100%);
  background: -o-linear-gradient(#72C152, #106E03);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#72C152', endColorstr='#106E03', GradientType=0);
}
.button.start:active {
  background: #51A732;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #72C152), color-stop(1, #308E13));
  background: -ms-linear-gradient(bottom, #72C152, #308E13);
  background: -moz-linear-gradient(center bottom, #72C152 0%, #308E13 100%);
  background: -o-linear-gradient(#308E13, #72C152);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#308E13', endColorstr='#72C152', GradientType=0);
}
.button.stop {
  color: #FFF;
  background: #C6123A;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #8E1212), color-stop(1, #FF1262));
  background: -ms-linear-gradient(bottom, #8E1212, #FF1262);
  background: -moz-linear-gradient(center bottom, #8E1212 0%, #FF1262 100%);
  background: -o-linear-gradient(#FF1262, #8E1212);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF1262', endColorstr='#8E1212', GradientType=0);
}
.button.stop:hover {
  background: -moz-linear-gradient(top, #FF1262 0%, #600000 100%) repeat scroll 0 0 transparent;
  background: -webkit-linear-gradient(top, #FF1262 0%, #6E0000 100%) repeat scroll 0 0 transparent;
  background: linear-gradient(top, #FF1262 0%, #6E0000 100%) repeat scroll 0 0 transparent;
  background: -ms-linear-gradient(top, #FF1262 0%, #6E0000 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF1262', endColorstr='#8E0000', GradientType=0);
  color: #FFF;
}
.button.stop:active {
  background: -moz-linear-gradient(top, #8E1212 0%, #FF1262 100%) repeat scroll 0 0 transparent;
  background: -webkit-linear-gradient(top, #8E1212 0%, #FF1262 100%) repeat scroll 0 0 transparent;
  background: linear-gradient(top, #8E1212 0%, #FF1262 100%) repeat scroll 0 0 transparent;
  background: -ms-linear-gradient(top, #8E1212 0%, #FF1262 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#8E1212', endColorstr='#FF1262', GradientType=0);
  color: #FFF;
}
.missing {
  border: 1px solid #f00 !important;
  text-shadow: 1px 1px 0 #FF9090;
}
.trackdatepicker {
  margin: 8px 10px;
}
.ui-datepicker.ui-widget {
  font-size: 75%;
}
#times {
  width: 100%;
  margin: 40px 0;
  background-color: #f9f9f9;
  border-top: 1px solid #cdcdcd;
  border-bottom: 1px solid #cdcdcd;
}
#times tr:nth-child(2n) {
  background-color: #EEE;
}
#times td,
#times th {
  text-align: left;
  border-bottom: 1px solid #CCC;
  vertical-align: middle;
  padding: 5px 10px 5px 10px;
}
#times td.task {
  vertical-align: top;
}
#times td.time,
#times td.startstop,
#times td.edit {
  width: 90px;
}
#times #total {
  background: transparent;
}
#times #total td {
  border-bottom: 0;
  border-top: 3px double #CCC;
}
#times .time {
  font-size: 20px;
  font-weight: bold;
  padding: 0 10px;
  font-family: monospace;
}
#times .time span {
  font-size: 50%;
}
#times .startstop a.stop,
#times .startstop a.start {
  width: 50px;
  text-align: center;
}
#times .total {
  font-weight: bold;
}
#times h3 {
  font-size: 100%;
  padding: 0;
  margin: 0;
}
#times .stop {
  position: relative;
}
#times .popup {
  display: none;
  position: absolute;
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid #fff;
  left: 50px;
  width: 110px;
  margin-top: 20px;
  border-radius: 3px;
  box-shadow: 0px 0px 6px #888888, 0 0 5px 0px #c0c0c0 inset;
  color: #5B6069;
  text-shadow: none;
}
#times .stop:hover .popup {
  display: block;
}
#edittimer {
  padding: 10px;
  border-top: 1px solid #cdcdcd;
}
#edittimer table {
  margin-bottom: 20px;
}
#edittimer textarea,
#edittimer select {
  width: 300px;
}
#edittimer input[name=time] {
  width: 50px;
}
.listreport {
  margin: 20px 0;
  font-size: 12px;
}
#reportform {
  margin-bottom: 75px;
}
#report table {
  border-collapse: separate;
  border-spacing: 0;
  border: solid #888 1px;
  border-radius: 5px;
}
#report a {
  color: inherit;
}
#report th,
#report td {
  border-left: 1px solid #888;
  border-top: 1px solid #888;
  padding: 5px;
  text-align: left;
}
#report th {
  background-color: #dedfe1;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
  border-top: none;
  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.5);
  text-align: center;
  font-weight: bold;
}
#report td:first-child,
#report th:first-child {
  border-left: none;
}
#report th:first-child {
  border-radius: 6px 0 0 0;
}
#report th:last-child {
  border-radius: 0 6px 0 0;
}
#report .ptotal td {
  border-top: 3px double #000;
  font-weight: bold;
}
#report td.day {
  width: 80px;
}
#report td.total {
  width: 50px;
}
#report td.billable {
  width: 30px;
}
.dateselect {
  border-top: 1px solid #cdcdcd;
  border-bottom: 1px solid #cdcdcd;
  padding: 5px 10px 5px 10px;
}
.listreport,
.export {
  margin: 5px 10px 5px 10px;
}
.export {
  float: right;
}
.drop-arrow {
  padding: 5px 8px 6px 0px;
  position: relative;
  border: 1px solid rgba(0, 0, 0, 0);
  border-bottom: 0;
  display: inline-block;
  cursor: pointer;
  background: transparent;
  text-decoration: none;
  color: #000;
}
.drop-arrow::after {
  content: " ▾";
}
.report_filter {
  float: left;
  width: 150px;
  padding-left: 10px;
}
.report_filter h1 {
  font-size: 120%;
  margin-bottom: 0;
}
.report_filter h2 {
  margin-bottom: 0;
  margin-top: 0;
  width: 100px;
  font-size: 12px;
}
.report_filter ul,
.report_filter li {
  list-style: none outside none;
  margin: 0;
  padding: 0;
  position: relative;
  font-size: 12px;
}
.report_filter ul.drop-arrow-content {
  display: none;
  border: 1px solid #999;
  width: 147px;
  font-size: 12px;
}
.report_filter ul.drop-arrow-content.active {
  display: block;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 0px 6px #999;
}
.report_filter ul.drop-arrow-content input[type=text] {
  width: 100%;
}
.report_filter ul.drop-arrow-content .resetfilter {
  position: absolute;
  right: 5px;
  top: 5px;
}
.report_filter .drop-arrow.active {
  border-color: #999999;
  padding-left: 5px;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 0px 6px #999;
}
.report_filter.closedfilter {
  display: none;
}
.report_data {
  margin: 0 0 0 170px;
  border-left: 1px solid #000;
  padding-left: 10px;
  min-height: 410px;
}
.report_data img.collapse {
  display: block;
  cursor: pointer;
}
.report_data img.expand {
  display: none;
  cursor: pointer;
}
.report_data.closedfilter {
  margin-left: 0;
  border: 0;
}
.report_data.closedfilter img.collapse {
  display: none;
}
.report_data.closedfilter img.expand {
  display: block;
}
.admin {
  padding: 0 10px;
}
.admin h2 {
  padding-left: 0;
  padding-right: 0;
}
.admin #projectlist td {
  padding: 5px 20px 5px 0;
  border-bottom: 1px solid #999;
}
.admin #projectlist h2 {
  margin: 0;
  padding: 0;
  font-size: 100%;
}
.admin #editproject {
  max-width: 960px;
}
.admin #editproject textarea {
  height: 100px;
}
.admin #manageusers .name {
  max-width: 340px;
}
.admin #manageusers td {
  border-top: 1px solid #000;
  padding: 10px 10px 10px 0;
}
.admin #manageusers a {
  text-decoration: none;
  display: block;
  color: #000;
  font-weight: bold;
}
.admin #license th {
  font-weight: normal;
}
.admin #license .licenseblock th {
  font-weight: bold;
}
#settings {
  margin-top: 20px;
  margin-bottom: 50px;
  padding: 0 10px;
}
.hidden {
  display: none;
}
