/* =============================================================================
   HTML5 Boilerplate CSS: h5bp.com/css
   ========================================================================== */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, button, input, select, textarea { font-family: sans-serif; color: #222; }
body { margin: 0; font-size: 1em; line-height: 1.4; }

::-moz-selection { background: rgb(26, 141, 246); color: #fff; text-shadow: none; }
::selection { background: rgb(26, 141, 246); color: #fff; text-shadow: none; }

a { color: #00e; }
a:visited { color: #551a8b; }
a:hover { color: #06e; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }

abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }

svg:not(:root) { overflow: hidden; }

figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }



/* ===== Primary Styles ========================================================
   Author:
   ========================================================================== */

.btn {
  display: inline-block;
  *display: inline;
  padding: 4px 10px 4px;
  margin-bottom: 0;
  *margin-left: .3em;
  font-size: 13px;
  line-height: 18px;
  *line-height: 20px;
  color: #333333;
  text-align: center;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
  vertical-align: middle;
  cursor: pointer;
  background-color: #f5f5f5;
  *background-color: #e6e6e6;
  background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
  background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
  background-repeat: repeat-x;
  border: 1px solid #cccccc;
  *border: 0;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  border-color: #e6e6e6 #e6e6e6 #bfbfbf;
  border-bottom-color: #b3b3b3;
  border-radius: 4px;
  *zoom: 1;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
}

.btn:hover,
.btn:active,
.btn.active,
.btn.disabled,
.btn[disabled] {
  background-color: #e6e6e6;
  *background-color: #d9d9d9;
}

.btn:active,
.btn.active {
  background-color: #cccccc \9;
}

.btn:first-child {
  *margin-left: 0;
}

.btn:hover {
  color: #333333;
  text-decoration: none;
  background-color: #e6e6e6;
  *background-color: #d9d9d9;
  /* Buttons in IE7 don't get borders, so darken on hover */

  background-position: 0 -15px;
  -webkit-transition: background-position 0.1s linear;
          transition: background-position 0.1s linear;
}

.btn:focus {
  outline: thin dotted #333;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}

.btn.active,
.btn:active {
  background-color: #e6e6e6;
  background-color: #d9d9d9 \9;
  background-image: none;
  outline: 0;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
}

.btn.disabled,
.btn[disabled] {
  cursor: default;
  background-color: #e6e6e6;
  background-image: none;
  opacity: 0.65;
  box-shadow: none;
}

.btn-large {
  padding: 9px 0;
  font-size: 15px;
  line-height: normal;
  border-radius: 5px;
}

.btn-large [class^="icon-"] {
  margin-top: 1px;
}

.btn-small {
  padding: 5px 9px;
  font-size: 11px;
  line-height: 16px;
}

.btn-small [class^="icon-"] {
  margin-top: -1px;
}

.btn-mini {
  padding: 2px 6px;
  font-size: 11px;
  line-height: 14px;
}

.btn-primary,
.btn-primary:hover,
.btn-warning,
.btn-warning:hover,
.btn-danger,
.btn-danger:hover,
.btn-success,
.btn-success:hover,
.btn-info,
.btn-info:hover,
.btn-inverse,
.btn-inverse:hover {
  color: #ffffff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.btn-primary.active,
.btn-warning.active,
.btn-danger.active,
.btn-success.active,
.btn-info.active,
.btn-inverse.active {
  color: rgba(255, 255, 255, 0.75);
}

.btn {
  border-color: #ccc;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.btn-primary {
  background-color: #0074cc;
  *background-color: #0055cc;
  background-image: -webkit-linear-gradient(top, #0088cc, #0055cc);
  background-image: linear-gradient(to bottom, #0088cc, #0055cc);
  background-repeat: repeat-x;
  border-color: #0055cc #0055cc #003580;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary.active,
.btn-primary.disabled,
.btn-primary[disabled] {
  background-color: #0055cc;
  *background-color: #004ab3;
}

.btn-primary:active,
.btn-primary.active {
  background-color: #004099 \9;
}

.btn-warning {
  background-color: #faa732;
  *background-color: #f89406;
  background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
  background-image: linear-gradient(to bottom, #fbb450, #f89406);
  background-repeat: repeat-x;
  border-color: #f89406 #f89406 #ad6704;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.btn-warning:hover,
.btn-warning:active,
.btn-warning.active,
.btn-warning.disabled,
.btn-warning[disabled] {
  background-color: #f89406;
  *background-color: #df8505;
}

.btn-warning:active,
.btn-warning.active {
  background-color: #c67605 \9;
}

.btn-danger {
  background-color: #da4f49;
  *background-color: #bd362f;
  background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
  background-image: linear-gradient(to bottom, #ee5f5b, #bd362f);
  background-repeat: repeat-x;
  border-color: #bd362f #bd362f #802420;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.btn-danger:hover,
.btn-danger:active,
.btn-danger.active,
.btn-danger.disabled,
.btn-danger[disabled] {
  background-color: #bd362f;
  *background-color: #a9302a;
}

.btn-danger:active,
.btn-danger.active {
  background-color: #942a25 \9;
}

.btn-success {
  background-color: #5bb75b;
  *background-color: #51a351;
  background-image: -webkit-linear-gradient(top, #62c462, #51a351);
  background-image: linear-gradient(to bottom, #62c462, #51a351);
  background-repeat: repeat-x;
  border-color: #51a351 #51a351 #387038;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.btn-success:hover,
.btn-success:active,
.btn-success.active,
.btn-success.disabled,
.btn-success[disabled] {
  background-color: #51a351;
  *background-color: #499249;
}

.btn-success:active,
.btn-success.active {
  background-color: #408140 \9;
}

.btn-info {
  background-color: #49afcd;
  *background-color: #2f96b4;
  background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4);
  background-image: linear-gradient(to bottom, #5bc0de, #2f96b4);
  background-repeat: repeat-x;
  border-color: #2f96b4 #2f96b4 #1f6377;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.btn-info:hover,
.btn-info:active,
.btn-info.active,
.btn-info.disabled,
.btn-info[disabled] {
  background-color: #2f96b4;
  *background-color: #2a85a0;
}

.btn-info:active,
.btn-info.active {
  background-color: #24748c \9;
}

.btn-inverse {
  background-color: #414141;
  *background-color: #222222;
  background-image: -webkit-linear-gradient(top, #555555, #222222);
  background-image: linear-gradient(to bottom, #555555, #222222);
  background-repeat: repeat-x;
  border-color: #222222 #222222 #000000;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
}

.btn-inverse:hover,
.btn-inverse:active,
.btn-inverse.active,
.btn-inverse.disabled,
.btn-inverse[disabled] {
  background-color: #222222;
  *background-color: #151515;
}

.btn-inverse:active,
.btn-inverse.active {
  background-color: #080808 \9;
}

button.btn,
input[type="submit"].btn {
  *padding-top: 2px;
  *padding-bottom: 2px;
}

button.btn::-moz-focus-inner,
input[type="submit"].btn::-moz-focus-inner {
  padding: 0;
  border: 0;
}

button.btn.btn-large,
input[type="submit"].btn.btn-large {
  *padding-top: 7px;
  *padding-bottom: 7px;
}

button.btn.btn-small,
input[type="submit"].btn.btn-small {
  *padding-top: 3px;
  *padding-bottom: 3px;
}

button.btn.btn-mini,
input[type="submit"].btn.btn-mini {
  *padding-top: 1px;
  *padding-bottom: 1px;
}

textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input {
  background-color: #ffffff;
  border: 1px solid #cccccc;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  margin-bottom: 5px;
  -moz-box-sizing: border-box;
       box-sizing: border-box;
  border-radius: 3px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
          transition: border linear 0.2s, box-shadow linear 0.2s;
}

textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus {
  border-color: rgba(82, 168, 236, 0.8);
  outline: 0;
  outline: thin dotted \9;
  /* IE6-9 */

  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
}

#login {
  width: 160px;
  margin: auto;
  margin-top: 20px;
  margin-top: -webkit-calc(50% - 50px);
  margin-top: calc(50% - 50px);
  padding: 10px;
  background-color: #eee;
  border-radius: 3px;
}

@media only screen and (orientation : landscape) {
  #login {
    margin-top: 20px;
  }
}

#login .error {
  color: #B94A48;
  font-weight: bold;
  margin-bottom: 5px;
}

#login input[type="text"], #login input[type="password"] {
  width: 160px;
  height: 32px;
  line-height: 32px;
  padding-left: 31px;
  background: #FFF url(../img/user.png) 4px center no-repeat;
}

#login input[type="password"] {
  background-image: url(../img/keys.png);
}

#login input::-webkit-input-placeholder {
  color: #999;
}
#login input:-moz-placeholder {
  color: #999;
}


#login input[type="submit"] {
  width: 160px;
}

#topfixed {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}

h1 {
  margin: 0;
  height: 45px;
  padding: 0;
  line-height: 45px;
  background-image: -webkit-linear-gradient(top, rgba(84, 84, 84, 1), rgba(30, 30, 30, 1));
  background-image: linear-gradient(to bottom, rgba(84, 84, 84, 1), rgba(30, 30, 30, 1));
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
  text-align: center;
  font-size: 1.2em;
  color: white;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}

h1 a, h1 a:hover, h1 a:visited {
  color: white;
  text-decoration: none;
}

#toolbar {
  height: 45px;
  line-height: 45px;
  text-align: center;
  background-image: -webkit-linear-gradient(top, rgba(225, 225, 225, 1), rgba(204, 204, 204, 1));
  background-image: linear-gradient(to bottom, rgba(225, 225, 225, 1), rgba(204, 204, 204, 1));
  border-bottom: 1px solid rgba(174, 174, 174, 1);
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}

.edit, .done, .plus {
  position: absolute;
  top: 5px;
  height: 31px;
  line-height: 31px;
  padding: 0 10px;
  border: 1px solid rgb(26, 26, 26);
  border-radius: 5px;
  color: rgb(200, 200, 200);
  text-shadow: 0 -1px 0 black;
  background-image: -webkit-linear-gradient(top, rgba(88, 88, 88, 1), rgba(29, 29, 29, 1));
  background-image: linear-gradient(to bottom, rgba(88, 88, 88, 1), rgba(29, 29, 29, 1));
  box-shadow: inset 0 1px 1px rgb(29, 29, 29), 0 1px rgb(88, 88, 88);
  cursor: pointer;
}

.edit, .done {
  left: 6px;
}

.plus {
  right: 6px;
  font-weight: bold;
}

.done {
  color: white;
  border: 1px solid rgb(13, 88, 207);
  background-image: -webkit-linear-gradient(top, rgb(26, 141, 246), rgb(19, 100, 220));
  background-image: linear-gradient(to bottom, rgb(26, 141, 246), rgb(19, 100, 220));
  text-shadow: 0 -1px 0 rgb(19, 100, 220);
  box-shadow: inset 0 1px 1px rgb(13, 88, 220), 0 1px rgb(100, 100, 100);
}

#previous, #next {
  margin-top: 14px;
  cursor: pointer;
}

#previous {
  float: left;
  margin-left: 10px;
}

#next {
  float: right;
  margin-right: 10px;
}

#content {
  margin-top: 90px;
}

#admin {
  margin: auto;
  margin-top: 90px;
  padding: 20px;
  width: 150px;
}

#admin select, #admin input[type=month] {
  display: block;
  width: 150px;
  margin-bottom: 10px;
}

#admin div input {
  width: 70px;
}

#admin div input:first-child {
  margin-right: 10px;
}

table {
  width: 100%;
}

th, td {
  border: 1px solid rgba(174, 174, 174, 1);
}

th, td:first-child {
  color: #555;
}

th:first-child, td:first-child {
  border-left: 0;
}

th:last-child, td:last-child {
  border-right: 0;
}

td {
  vertical-align: middle;
}

td:nth-child(4), td:nth-child(5), .total td:nth-child(3) {
  text-align: right;
  padding-right: 7px;
}

tr:not(.total)[editable="false"] {
  display: none;
}

tr[editable="true"] td {
  cursor: pointer;
}

tr.selected td {
  color: white;
  background-image: -webkit-linear-gradient(top, rgb(26, 141, 246), rgb(19, 100, 220));
  background-image: linear-gradient(to bottom, rgb(26, 141, 246), rgb(19, 100, 220));
}

tr:not(.total)[editable="false"] td, tr[editable="false"] input[type="time"]:disabled {
  color: #CCC;
  -webkit-text-fill-color: #CCC;
}

input[type="time"] {
  margin-right: 3px;
  max-width: 70px;
}

input[type="time"]:disabled {
  opacity: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
  box-shadow: none;
  border: 0;
  color: #000;
  -webkit-text-fill-color: #000;
  font-size: 16px;
  padding: 0 0 0 5px;
  background: transparent;
}

.selected input[type="time"]:disabled, .today input[type="time"]:disabled, .saving input[type="time"]:disabled {
  color: #FFF;
  -webkit-text-fill-color: #FFF;
}

.total, #totalkm, #total, #totalFormatted
{
  font-weight: bold;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.small {
  width: 50px;
  text-align: right;
}

.day {
  display: inline-block;
  width: 22px;
}

.dayname {
  display: inline-block;
  width: 43px;
  text-align: right;
}

.weekend {
  background-color: #F1F1F1;
}

.today td {
  color: white;
  background-image: -webkit-linear-gradient(top, rgb(91, 195, 255), rgb(26, 141, 246));
  background-image: linear-gradient(to bottom, rgb(91, 195, 255), rgb(26, 141, 246));
}

#last td {
  cursor: auto;
}

td:first-child {
  width: 75px;
}

td:nth-child(2), td:nth-child(3) {
  width: 92px;
}

td:nth-child(4) {
  width: 45px;
}

td:nth-child(5) {
  width: 30px;
}

td:first-child td {
  border: 0;
}

tr.saving td {
  color: white;
  background-image: none;
}

tr.saving {
  -webkit-animation-duration: 1s;
  -webkit-animation-name: save;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-direction: alternate;
  animation-duration: 1s;
  animation-name: save;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}

@keyframes save {
  from {
    background-color: rgb(26, 141, 246);
  }

  to {
    background-color: rgb(19, 100, 220);
  }
}

@-webkit-keyframes save {
  from {
    background-color: rgb(26, 141, 246);
  }

  to {
    background-color: rgb(19, 100, 220);
  }
}

@media only screen and (max-device-width: 1024px) {
  td:first-child {
    width: 10%;
  }

  .day {
    text-align: center;
    width: 100%;
  }

  .dayname {
    display: none;
  }
}

@media only screen and (orientation: portrait) and (max-device-width: 1024px) {
  .landscape-only {
    display: none;
  }

  th:nth-child(2), th:nth-child(3), td:nth-child(4), .comment {
    border-right: 0;
  }

  td:nth-child(4) {
    width: 20%;
  }

  td:nth-child(2), td:nth-child(3) {
    width: 30%;
  }
}

/* =============================================================================
   Non-Semantic Helper Classes
   ========================================================================== */

.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

/* =============================================================================
   Print Styles
   ========================================================================== */
 
@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}