html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent}
body{line-height:1}
h1 {font-size: 1.5em;margin-bottom: 10px;}
p{font-size: 1em;line-height: 1.3em;margin-bottom: 10px;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
nav ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:none}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}
ins{background-color:#ff9;color:#000;text-decoration:none}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}
del{text-decoration:line-through}
abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}
table{border-collapse:collapse;border-spacing:0}
hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}
input,select{vertical-align:middle}

.load div#preloader {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 999;
    width: 100%;
    height: 100%;
    overflow: visible;
    background: #32595e;
  }
  #centerLoaderText {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    color: #e2dfca;
    top: 50%;
    font-family: 'Press Start 2P';
  }


#desktop {
    font-family: Arial, Helvetica, sans-serif;
    font-family: 'Press Start 2P';
    position: fixed;
    height: 100%;
    width: 100%;
    background: #CCC;

	overflow: hidden;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.window {
    position: absolute;
    border: 2px solid #000;
    background: #EEE;
	border-radius: 3px;
	z-index: 1000;
}
.window.closed {
	display: none;
}
.window.minimizedWindow {
	display: none;
}
.window.fullSizeWindow {
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;
    border-radius: 0;
    bottom: 32px !important;
}
.fullSizeWindow .ui-resizable-handle {
	display: none;
}
.windowHeader {
    background-color: #2e2c2c;
    text-align: right;
    border-bottom: 2px solid #000;
    padding: 2px;
    cursor: move;
    height: 28px;

    color: #cccccc;
}
.activeWindow .windowHeader {
    background-color: #4f4f4f;
}
.windowHeader > span {
    display: inline-block;
    cursor: pointer;
    border: 2px solid #000;
    margin-left: 4px;
    font-size: 19px;
    padding: 2px 10px;
    font-family: "Arial Black", Gadget, sans-serif;
    font-family: 'Press Start 2P';
    border-radius: 5px;
    line-height: 20px;
    width: 12px;
    height: 20px;
    position: relative;
    overflow: hidden;
}
.windowHeader > span:hover {
	background: rgba(255,255,255,0.3);
}
.windowHeader > span.winclose:hover {
	background: #f15454;
}
.windowHeader > span > span {
    display: inline-block;
    height: 8px;
    width: 10px;
    position: absolute;
    top: 6px;
    left: 10px;
}
.winminimize > span {
	border-bottom: 3px solid #000;
}
.winmaximize > span {
	border: 2px solid #000;
	border-top: 3px solid #000;
}
.winmaximize > span:nth-child(2) {
	display: none;
}
.fullSizeWindow .winmaximize > span:nth-child(1) {
	margin: 2px 0 0 -4px;
}
.fullSizeWindow .winmaximize > span:nth-child(2) {
    display: inline-block;
    top: 3px;
    left: 12px;
}
.wincontent {
    padding: 10px;
    min-width: 200px;
    min-height: 140px;
    border: 2px solid #000;
    margin: 2px;
    border-radius: 0 0 5px 5px;
    overflow: hidden;
    width: auto;
}
.windowHeader > strong {
    float: left;
    margin: 0px 3px 0 10px;
    line-height: 29px;
    font-size: 17px;
}
.taskbarPanel {
    display: inline-block;
    border: 2px solid #000;
    border-radius: 5px;
    line-height: 24px;
    margin: 2px 0 0 10px;
    font-size: 17px;
    padding: 0 10px;
    background: #CCC;
    font-weight: bold;
	cursor: pointer;
}
.taskbarPanel.activeTab {
	background: #FFF;
}
.taskbarPanel.minimizedTab {
	background: #AAA;	
}
.taskbarPanel.minimizedTab:hover {
	background: #DDD;
}
.taskbarPanel.closed {
	display: none;
}
#taskbar {
	position: absolute;
	height: 32px;
	border-top: 2px solid #000;
	bottom: 0;
	left: 0;
	right: 0;
	background: #EEE;
}
#icons {
	position: absolute;
	z-index: 10;
	top: 20px;
    left: 20px;
    
    /* c64 fixes */
    top: 50px;
    top: 62px;
    left: 6px;
}
#icons a {
    display: block;
    cursor: pointer;
    padding: 2px 10px;
}
#icons a:hover {
	background: #000;
	color: #FFF;
}
#templateLink {
    /*
    position: absolute;
    display: inline-block;
    bottom: 10px;
    right: 20px;
    */
    font-weight: bold;
    font-size: 2px;
    color: #30478c;
}



/*Demo styles BEGIN*/
#window0 {	top: 20px;	left: 240px;}
#window1 {	top: 200px; left: 120px;}
#window2 {	top: 150px; left: 110px;}
#window3 {	top: 125px; left: 420px;}

#window0 .wincontent {	width: 500px; height: 400px;	}
#window1 .wincontent {	width: 500px; height: 300px;	}
#window2 .wincontent {	width: 500px; height: 350px;	}
#window3 .wincontent {	width: 500px; height: 350px;	}
#window4 .wincontent {	width: 240px; height: 350px;	}

@media screen and (max-width:960px){
	#window0 {	left: 10px;	}
	#window3 {	left: 50px;	}	
}
@media screen and (max-width:770px){
	#window0 .wincontent {	width: 460px; width: auto; 	}
	#window2 {	left: 100px;	}
	#window1 {	top: 190px;	left: -5px;	}
}
@media screen and (max-width:540px){
#window0 .wincontent {	width: 230px; width: auto;  height: 200px;	}
#window3 .wincontent {
    width: 275px;
    width: auto; 
    height: auto;
}
#window4 .wincontent {
    width: 240px;
    width: auto; 
    height: auto;
}
#window3 {    top: 9px;    left: 10px;	}
#window2 {    left: 2px;	}
#window1 .wincontent {    width: 400px; width: auto;    height: 300px;	}

#window0, #window1, #window2, #window3, #window4 {
    max-width: 100vw;   
}

}

.wincontent {
    width: auto;
}




#todoList {
    background: #EEE;
    width: 100%;
    height: 100%; 
    box-sizing: border-box;
    border: none;
    font-family: 'Press Start 2P';
}

#todoIsDone {
    font-weight: 900;
}

/* BASIC COLORS */

.red {
    color:#ca573f; /* retro computer colors */
}

.green {
  color:#89ca3f; 
}

.orange {
  color:#ca893f; 
}


.small-font {
  font-size: 0.5em;
}
/* THEME OVERRIDES */



body {
    background:  #7c70da;  /* retro computer colors */
}
#desktop {
    background: #32595e; /* retro computer colors */
    color: #e2dfca;  /* retro computer colors */


    /* new bg base64 encoded */
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAABZJREFUeNpi2r9//38gYGAEESAAEGAAasgJOgzOKCoAAAAASUVORK5CYII=);
    
}
#main-title {
    padding: 15px;
    background: white;
    color: red;
}
.window {
    background: #32595e; /* retro computer colors */
}
.windowHeader {
    background-color: #32595e; /* retro computer colors */
    color: #cccccc;
}
.activeWindow .windowHeader {
    background-color: #347279; /* retro computer colors */
}
.windowHeader > span {
    border: 2px solid #7c70da;  /* retro computer colors */
    color: #7c70da;  /* retro computer colors */
}
.winminimize > span {
	border-bottom: 3px solid #7c70da;  /* retro computer colors */
}
.winmaximize > span {
	border: 2px solid #7c70da;  /* retro computer colors */
	border-top: 3px solid #7c70da;  /* retro computer colors */
}
.taskbarPanel {
    background: #CCC;
    color: #718c6b;
}
.taskbarPanel.activeTab {
    background: #FFF;
    color: #b1daa8;
}
.taskbarPanel.minimizedTab {
	background: #AAA;	
}
.taskbarPanel.minimizedTab:hover {
	background: #DDD;
}

#taskbar {
    background: #fff;
}
a {
    color: #b0c38c;
}

.todo {
  margin-top: 15px;
  margin-bottom: 10px;
  padding-left: 15px;
  padding-right: 15px;
}
.todo svg {
  position: absolute;
  left: 0;
  margin-top: -3px;
  width: 20px;
  height: 20px;
}

#addTodoDiv {
  width: 90%;
  height: auto;
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -117px;
  
}
#addTodoDiv button {
  width: 234px;
  height: auto;
  margin: 0 auto;
  padding: 5px;
  text-align: center;
  font-family: 'Press Start 2P';
  border-radius: 0;
  border: 2px solid #347279;
  background: #ca573f;
  color: #e2dfca;
}

#newTDList div.todo > button {
width: 32px;

height: 29px;

position: absolute;

right: 0;

margin-top: -10px;

border: 2px solid #347279;

background: #ca573f;

color: #e2dfca;

text-align: left;

font-family: 'Press Start 2P';

font-size: 14px;
}

/* CRT-effect */
/* Adapted from source: http://aleclownes.com/2017/02/01/crt-display.html */
@keyframes flicker {
    0% {
      opacity: 0.27861;
    }
    5% {
      opacity: 0.34769;
    }
    10% {
      opacity: 0.23604;
    }
    15% {
      opacity: 0.90626;
    }
    20% {
      opacity: 0.18128;
    }
    25% {
      opacity: 0.83891;
    }
    30% {
      opacity: 0.65583;
    }
    35% {
      opacity: 0.67807;
    }
    40% {
      opacity: 0.26559;
    }
    45% {
      opacity: 0.84693;
    }
    50% {
      opacity: 0.96019;
    }
    55% {
      opacity: 0.08594;
    }
    60% {
      opacity: 0.20313;
    }
    65% {
      opacity: 0.71988;
    }
    70% {
      opacity: 0.53455;
    }
    75% {
      opacity: 0.37288;
    }
    80% {
      opacity: 0.71428;
    }
    85% {
      opacity: 0.70419;
    }
    90% {
      opacity: 0.7003;
    }
    95% {
      opacity: 0.36108;
    }
    100% {
      opacity: 0.24387;
    }
  }
  @keyframes textShadow {
    0% {
      text-shadow: 0.4389924193300864px 0 1px rgba(0,30,255,0.5), -0.4389924193300864px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    5% {
      text-shadow: 2.7928974010788217px 0 1px rgba(0,30,255,0.5), -2.7928974010788217px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    10% {
      text-shadow: 0.02956275843481219px 0 1px rgba(0,30,255,0.5), -0.02956275843481219px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    15% {
      text-shadow: 0.40218538552878136px 0 1px rgba(0,30,255,0.5), -0.40218538552878136px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    20% {
      text-shadow: 3.4794037899852017px 0 1px rgba(0,30,255,0.5), -3.4794037899852017px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    25% {
      text-shadow: 1.6125630401149584px 0 1px rgba(0,30,255,0.5), -1.6125630401149584px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    30% {
      text-shadow: 0.7015590085143956px 0 1px rgba(0,30,255,0.5), -0.7015590085143956px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    35% {
      text-shadow: 3.896914047650351px 0 1px rgba(0,30,255,0.5), -3.896914047650351px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    40% {
      text-shadow: 3.870905614848819px 0 1px rgba(0,30,255,0.5), -3.870905614848819px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    45% {
      text-shadow: 2.231056963361899px 0 1px rgba(0,30,255,0.5), -2.231056963361899px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    50% {
      text-shadow: 0.08084290417898504px 0 1px rgba(0,30,255,0.5), -0.08084290417898504px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    55% {
      text-shadow: 2.3758461067427543px 0 1px rgba(0,30,255,0.5), -2.3758461067427543px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    60% {
      text-shadow: 2.202193051050636px 0 1px rgba(0,30,255,0.5), -2.202193051050636px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    65% {
      text-shadow: 2.8638780614874975px 0 1px rgba(0,30,255,0.5), -2.8638780614874975px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    70% {
      text-shadow: 0.48874025155497314px 0 1px rgba(0,30,255,0.5), -0.48874025155497314px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    75% {
      text-shadow: 1.8948491305757957px 0 1px rgba(0,30,255,0.5), -1.8948491305757957px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    80% {
      text-shadow: 0.0833037308038857px 0 1px rgba(0,30,255,0.5), -0.0833037308038857px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    85% {
      text-shadow: 0.09769827255241735px 0 1px rgba(0,30,255,0.5), -0.09769827255241735px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    90% {
      text-shadow: 3.443339761481782px 0 1px rgba(0,30,255,0.5), -3.443339761481782px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    95% {
      text-shadow: 2.1841838852799786px 0 1px rgba(0,30,255,0.5), -2.1841838852799786px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
    100% {
      text-shadow: 2.6208764473832513px 0 1px rgba(0,30,255,0.5), -2.6208764473832513px 0 1px rgba(255,0,80,0.3), 0 0 3px;
    }
  }
  .crt::after {
    content: " ";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(18, 16, 16, 0.1);
    opacity: 0;
    z-index: 2;
    pointer-events: none;
    animation: flicker 0.15s infinite;
  }
  .crt::before {
    content: " ";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.06), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.06));
    z-index: 2;
    background-size: 100% 2px, 3px 100%;
    pointer-events: none;
  }
  .crt {
    animation: textShadow 1.6s infinite;
  }


  #crt-onoff-div {
      position: fixed;
      bottom: -18px;
      right: 20px;

      width: 50px;
      height: 50px;

      z-index: 2000;
  }

  #onOffBtn.btn {
      background: #347279;
      color: #e2dfca;

      border: 1px solid #2c5f64;

      width: 50px;
      height: 30px;
  }

  #onOffBtn.btn.off {
    background: #ca573f;
    color: #e2dfca;

    border: 1px solid #2c5f64;
  }

/* END OF THEME OVERRIDES */