body {
  margin: 0;
  font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size:1rem;
  line-height: 1.5;
}



.nowrap {
  text-wrap:nowrap;
}



div.nav {
  position:static;
  float:right;
  width:100%;
  text-align:right;
}


div.filter {
  position: sticky;
  top: 0;
  background: white;
  line-height:2em;
  border-bottom: solid 1px #ccc;
}

input[type=text], select, textarea {
  padding:.25em;
  box-sizing:border-box;
  width:100%;
  min-width:5em;
  border:0;
  background:#ddf;
  font-family: inherit;
}

table.todo {
  margin-bottom:2em;
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0 .5em;
  /*
  border-radius: 8px;
  border: solid 2px #f00000;
  box-shadow: 4px 4px 8px #333;
  */
}
table.todo > tbody > tr {
  vertical-align: top;
}
table.todo > tbody > tr.tmpl {
  display:none;
}
table.todo > tbody > tr > td,
table.todo > tbody > tr > th {
  padding:.25em .5em;
}
table.todo > tbody > tr > td img {
  height: 1.5em;
}
table.todo > tbody > tr > td:nth-child(1) {
  text-align:right;
}
table.todo > tbody > tr > td:nth-child(3),
table.todo > tbody > tr > td:nth-child(4),
table.todo > tbody > tr > td:nth-child(5) {
  text-align:center;
}
table.todo > tbody > tr.sticky {
  position: sticky;
  top: 2em;
  background: white;
}
table.todo > tbody > tr.sticky:nth-child(2) {
  top: 4em;
}
table.todo > tbody > tr:nth-child(1) > th {
  border-top:solid 1px #333;
}
table.todo > tbody > tr:nth-child(2) > td {
  border-bottom:solid 2px #333;
}
table.todo > tbody > tr.status_0 {
  font-weight:bold;
}
table.todo > tbody > tr.status_101 {
  color:#bbb;
}
table.todo > tbody > tr.prio_1 {
  color:#999;
}
table.todo > tbody > tr.prio_3 {
  background-color:#ff8080;
}
table.todo > tbody > tr > td.tools ul {
  /*display: inline-block;*/
  display:flex;
  margin: 0;
  padding: 0;
  /*height: 2em;*/
}
table.todo > tbody > tr > td.tools ul li {
  padding: 0.1em;
  height:100%;
  display: inline-block;
  /*border: solid 1px #555;*/
  border-radius: 0.25em;
  /*box-shadow: 3px 3px 3px #555;*/
}
table.todo > tbody > tr > td.tools ul li button {
  margin:1px -1px -1px 1px;
  padding: 0.1em;
  height:100%;
  border-radius: 0.25em;
  box-shadow: 2px 2px 5px #555;
}
table.todo > tbody > tr > td.tools ul li button:hover {
  margin:0;
  padding: 0.1em;
  height:100%;
  border-radius: 0.25em;
  box-shadow: 4px 4px 5px #555;
}
table.todo > tbody > tr > td.tools ul li._checkconfirm button {
  background-color:rgb(40,201,55);
}
table.todo > tbody > tr > td.tools ul li img {
  max-height:100%;
  vertical-align: baseline;
}
table.todo > tbody > tr td.tools ul li._begin,
table.todo > tbody > tr td.tools ul li._checkconfirm {
  display:none;
}
table.todo > tbody > tr.status_0 td.tools ul li._begin {
  display:initial;
}
table.todo > tbody > tr.status_100 td.tools ul li._up10,
table.todo > tbody > tr.status_100 td.tools ul li._check
 {
  display:none;
}
table.todo > tbody > tr.status_100 td.tools ul li._checkconfirm
 {
  display:initial;
}
table.todo > tbody > tr.status_101 td.tools ul li._begin,
table.todo > tbody > tr.status_101 td.tools ul li._check,
table.todo > tbody > tr.status_101 td.tools ul li._checkconfirm
 {
  display:none;
}
@keyframes gradient {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: 0% 0;
  }
}
table.todo > tbody > tr.clockactive {
  background: linear-gradient(90deg, #ccd, #ccd, #ccd, #88d, #ccd, #ccd, #ccd, #88d, #ccd);
  background-size: 200% 100%;
  animation: gradient 2s linear infinite;
}
table.todo > tbody > tr.clockactive_others {
  background: linear-gradient(90deg, #eee, #eee, #eee, #cec, #eee, #eee, #eee, #cec, #eee);
  background-size: 200% 100%;
  animation: gradient 2s linear infinite;
}
div.todo_hist {
  position:absolute;
  display:none;
  text-align:left;
  background-color: #eee;
  border: solid 2px black;
}
div.todo_hist > table > tbody > tr > th,
div.todo_hist > table > tbody > tr > td {
  padding:.25em .5em;
}

table.prj {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0 .5em;
  /*
  border-radius: 8px;
  border: solid 2px #f00000;
  box-shadow: 4px 4px 8px #333;
  */
}
table.prj tr {
  vertical-align: top;
  cursor:pointer;
}
table.prj tr:hover td {
  background-color:#cfcfcf;
}
table.prj td,
table.prj th {
  padding:.25em .5em;
  text-align:left;
}
table.prj tr > *:nth-child(1) {
  width:8em;
}
table.prj th:nth-child(1),
table.prj td:nth-child(1) {
  text-align:right;
}
table.prj tr.sticky {
  position: sticky;
  top: 2em;
  background: white;
}
table.prj tr.sticky:nth-child(2) {
  top: 4em;
}
table.prj tr:nth-child(1) > th {
  border-top:solid 1px #333;
  border-bottom:solid 2px #333;
}

