* {
	font-family: sans-serif;
	font-size: 15pt;
	box-sizing: border-box;
  }
  
  body, html {
	height: 100%;
	margin: 0;
	overflow: hidden;
  }
  
  #feedBack {
	position: fixed;
	width: 200px;
	border: 1px solid gray;
	left: calc(50% - 100px);
	top: calc(30%);
	background: #efefef;
	padding: 10px;
	display: none;
	text-align: center;
	z-index: 4;
  }
  
  a {
	text-decoration: none;
	color: black;
  }
  
  a:hover {
	text-decoration: underline;
  }
  
  body {
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	background: #f1f1f1;
  }
  
  h4 {
	margin: 3px 0 10px;
  }
  
  label {
	display: inline-block;
	width: 100px;
	vertical-align: top;
  }
  
  textarea {
	width: calc(100% - 110px);
	margin: 0;
	padding: 5px;
	box-sizing: border-box;
	overflow-y: auto;
	resize: none;
	border: 1px dotted currentcolor;
  }
  
  input[type='text'], input[type='date'], input[type='datetime'], select {
	width: calc(100% - 110px);
	margin: 0;
	padding: 5px;
	box-sizing: border-box;
	border: 0;
	border-bottom: 1px dotted;
  }
  
  .complete {
	text-decoration: line-through;
  }
  
  .complete a {
	color: #d2daff;
  }
  
  .details span {
	font-size: 10pt;
	font-style: italic;
	border: 1px solid gray;
	padding: 1px 5px 2px;
	border-radius: 15px;
	background: #ffff5678;
  }
  
  .details span a {
	font-size: 10pt;
  }
  
  .floatLeft {
	float: left;
  }
  
  .floatRight {
	float: right;
  }
  
  .hidden {
	display: none;
  }
  
  .loggedIn {
	position: fixed;
	top: 2px;
	right: 45px;
	font-size: .7em;
	float: right;
  }
  
  div#content {
	padding: 0 10px 30px;
	background: #fff;
	overflow: auto;
	min-height: calc(100vh - 43px);
	margin-top: 43px;
  }
  
  p.tabs {
	margin-bottom: 1px;
	white-space: nowrap;
	border-bottom: 2px solid #ff3a3a;
  }
  
  p.tabs a {
	text-decoration: none;
	color: black;
	border: 1px solid gray;
	padding: 3px 3px 0 3px;
	border-radius: 4px 4px 0 0;
	margin: 0 -10px 0 10px;
	background: white;
	z-index: 1;
	position: relative;
	letter-spacing: -1px;
	border-bottom: 2px solid #ff3a3a;
  }
  
  p.tabs a.selected {
	border-bottom: 1px solid #fff;
	z-index: 3;
	top: 0;
  }
  
  p.tabs a.selected::after {
	content: '';
	position: absolute;
	border: 1px solid white;
	border-bottom: 6px solid white;
	bottom: -8px;
	left: -1px;
	width: 100%;
	margin: 0;
  }
  
  input[type='button'] {
	border: 1px solid gray;
	margin: 5px 1px;
	color: gray;
	border-radius: 5px;
	padding: 2px 10px;
	font-size: .8em;
  }
  
  input[type='button'].new {
	width: 2.5em;
	height: 2.5em;
	border-radius: 50%;
	background: #2196f3;
	color: #fff;
	position: fixed;
	bottom: 1em;
	right: 1em;
  }
  
  input[type='button'].new:hover {
	background: gray;
  }
  
  input#refresh {
	position: fixed;
	z-index: 4;
	top: 2px;
	right: 2px;
	width: 34px;
	height: 34px;
	font-size: 1.5em;
	padding: 0;
	margin: 0;
	line-height: 1em;
	border: 0;
  }
  
  input#search {
	width: calc(100% - 34px);
	float: left;
  }
  
  li {
	list-style-type: none;
	list-style-position: inside;
	padding-bottom: 4px;
  }
  
  li label {
	vertical-align: initial;
  }
  
  .checkboxContainer {
	display: inline;
	position: relative;
	padding-left: 35px;
	margin-bottom: 12px;
	cursor: pointer;
	font-size: 22px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
  }
  
  .checkboxContainer input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
  }
  
  .checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #eee;
  }
  
  .checkboxContainer:hover input ~ .checkmark {
	background-color: #ccc;
  }
  
  .checkboxContainer input:checked ~ .checkmark {
	background-color: #2196F3;
  }
  
  .checkboxContainer input:active ~ .checkmark,
  .checkboxContainer input:focus ~ .checkmark {
	background-color: #aaa;
  }
  
  .checkmark:after {
	content: "";
	position: absolute;
	display: none;
  }
  
  .checkboxContainer input:checked ~ .checkmark:after,
  .checkboxContainer input:active ~ .checkmark:after,
  .checkboxContainer input:focus ~ .checkmark:after {
	display: block;
  }
  
  .checkboxContainer .checkmark:after {
	left: 9px;
	top: 5px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
  }
  
  div#controls {
	position: fixed;
	height: 43px;
	z-index: 4;
	background: #efefef;
	padding-left: 10px;
	top: 0;
	left: 0;
	width: 100%;
  }
  
  div#folderTree {
	float: left;
	width: 30%;
	border-right: 1px dotted;
	overflow: auto;
  }
  
  div#folderTree > ul {
	padding: 0;
  }
  
  .tabPane {
	display: none;
  }
  
  .tabPane.active {
	display: block;
  }
  
  #tabTreePad {
	height: calc(100vh - 43px);
	margin-top: 43px;
  }
  
  div#TreePadNote {
	float: left;
	width: 70%;
	overflow-y: auto;
  }
  
  #tabScheduled, #tabNoDueDate {
	height: calc(100vh - 43px);
	overflow-y: auto;
  }
  
  a.open::before {
	content: "\1F4C2\00A0";
  }
  
  a.closed, a.open {
	text-decoration: none;
  }
  
  a.closed ~ ul {
	display: none;
  }
  
  a.closed::before {
	content: "\1F4C1\00A0";
  }
  
  a.note::before {
	content: "\1F5D2\00A0";
  }
  
  #loginForm {
	width: 100%;
	height: 100%;
	background: white;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	padding: 20px;
  }
  
  #noteMenu {
	position: absolute;
	background: #fff;
	border: 1px solid;
	padding: 5px;
	right: 5px;
	top: 5px;
	text-align: right;
  }
  
  #noteMenu.closed {
	overflow: hidden;
	height: 3em;
	width: 3em;
	line-height: 18px;
	font-size: .5em;
  }
  
  @media all and (max-width: 750px) {
	div#folderTree {
	  float: unset;
	  width: 100%;
	}
	div#TreePadNote {
	  float: unset;
	  width: 100%;
	  position: absolute;
	  top: 0;
	  height: calc(100vh - 46px);
	  width: calc(100% - 20px);
	  left: 10px;
	  overflow-y: auto;
	  background: #fff;
	  z-index: 12;
	}
	textarea {
	  max-height: calc(100vh - 46px);
	  height: 100%;
	  width: calc(100% - 20px);
	  -webkit-overflow-scrolling: touch;
	  touch-action: manipulation;
	}
	div#controls {
	  height: 46px;
	}
	div#content {
	  margin-top: 46px;
	}
	span.loggedIn {
	  position: fixed;
	  top: 2px;
	  right: 45px;
	  display: none;
	}
	div#folderTree {
	  transition: max-height 0.8s ease-in-out;
	}
	div#folderTree.closed {
	  max-height: 100px;
	  overflow: hidden;
	}
	div#folderTree + hr {
	  color: blue;
	  height: 10px;
	  width: 100%;
	  position: relative;
	  top: -10px;
	  padding: 0;
	  overflow: visible;
	}
	div#folderTree + hr::before {
	  content: '\2195';
	  padding: 3px;
	  margin: calc(50% - 20px);
	  position: relative;
	  top: -6px;
	}
	input[type='text'], input[type='date'], input[type='datetime'], select {
	  width: calc(100% - 140px);
	}
	input[type='button'] {
	  font-size: 1em;
	}
  }