
@font-face {
    font-family: 'PT Mono', monospace;
}

html, body {
  margin: 0;
  padding: 0;
  overflow: hidden;
  color: rgb(0, 102, 204);
  font-family: 'PT Mono';
  background: orange;
}

input {
  accent-color: hsl(39, 100%, 50%);
}

.draggable {
  cursor: pointer;
}

.fadeIn {
	animation: fadeIn 2s;
}

@keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

.fadeOut {
	animation: fadeIn 2s;
}

@keyframes fadeOut {
  0% { opacity: 1; }
  100% { opacity: 0; }
}

.shake {
  /* Start the shake animation and make the animation last for 0.5 seconds */
	animation: shake 0.3s; 
	animation-iteration-count: infinite;
	-moz-animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
	-o-animation-iteration-count: infinite;
}

@keyframes shake {
  0% { transform: translate(1px, 1px) rotate(0deg); }
  10% { transform: translate(-1px, -2px) rotate(-1deg); }
  20% { transform: translate(-3px, 0px) rotate(1deg); }
  30% { transform: translate(3px, 2px) rotate(0deg); }
  40% { transform: translate(1px, -1px) rotate(1deg); }
  50% { transform: translate(-1px, 2px) rotate(-1deg); }
  60% { transform: translate(-3px, 1px) rotate(0deg); }
  70% { transform: translate(3px, 1px) rotate(-1deg); }
  80% { transform: translate(-1px, -1px) rotate(1deg); }
  90% { transform: translate(1px, 2px) rotate(0deg); }
  100% { transform: translate(1px, -2px) rotate(-1deg); }
}

.center {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.title{
	color: black;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
  	font-style: italic;
  	font-weight: 100;
	font-size: 2em;
	text-align: center;
	background-color: white;
	padding-right: 10px;
	padding: 5px;
  }

.message {
    border-style: solid;
	border-width: 1px;
	border-color: rgb(242, 134, 19);
}

#blackScreen {
	background-color: orange;
	background-image:url(boot_background.svg);
	background-repeat:both;
	width:100vw;
	height:100vh;
	position: absolute;
	top: 0px;
	left:0px;
	display: none;
	opacity: 0%;
	z-index: 500000;
    transition: opacity .5s linear;
}

#container {
  	display: flex;
  	align-items: center;
	justify-content: center;
    position:absolute;
    top:0;
    left:0;
	width:101%;
	height:100%;
	background-image: url("California-Poppies.jpg");
	background-repeat: no-repeat;
  	background-position: center top;
}

.outerWindow{
	position: absolute;
    max-width: 100%;
    max-height: 95%;	
    background-color: white;
    border-style: double;
	border-width: 3px;
	border-color: rgb(242, 134, 19);
}

.innerWindow{
	overflow: auto;
	font-size: 12px;
	opacity: 1.0;
  	background-color: white;
	word-break: break-word; 
	max-height: 85vh;
	max-width: 90vw;
}

.dragHandle{
	border-style: double;
	border-width: 3px;
	border-left: none;
	border-top: none;
	border-right: none;
	border-color: rgb(242, 134, 19);
	padding: 0px;
    left: 0px; 
    top: 0px;
    margin: 0px;
    width: 100%;
    height: 15px;
    cursor: move;
    white-space: nowrap;
    overflow: hidden;
}

#menu{
		border: 1px solid;
	    padding: 10px;
	    display: none;
	    position: absolute;
	    bottom: 40px;
	    z-index: 1000000000000000000000000;
	    background: white;
}

.unclickedMail{
	text-decoration: bold;
	text-transform: bold;
	font-style: bold;
	color: red;
}

.topbarButtons{
    z-index: 20000;
    position: absolute;
	right: 0px; 
    top: 0px;
  	display: flex;
  	align-items: right;
	justify-content: right;
}

.topbarButtons button{
    border: solid;
	border-width: 1px;
	background: white;
	border-color: rgb(242, 134, 19);
}

.staticWindow{
	overflow: auto;
	font-size: 12px;
	opacity: 1.0;
  	background-color: white;
	word-break: break-word; 
	border-style: double;
	border-width: 3px;
	border-color: rgb(242, 134, 19);
}

.utilWindow{
	overflow: hidden;
	opacity: 1.0;
	object-fit: contain;

}

#minimizedWindow{

}

#toolbar{
  	align-items: center;
    position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 40px;
	margin: 0px;
	background-color: white;
	border-style: solid;
	border-width: 1px;
	border-color: rgb(51, 153, 255);
	z-index: 100000000000;
	display: none;
}

#toolbarStart{
    position: absolute;
	left: 10px;

}

#toolbarMiddle{
    position: absolute;
	left: 20%;
	display: flex;
  	align-items: center;
  	gap: 10px;
}

#toolbarEnd{
    position: absolute;
	right: 10px;
	display: flex;
  	align-items: center;
  	gap: 10px;
}

#settings{
	justify-self: start;
}

#clock{
	justify-self: end;
}

#OSStart {
	padding: 2%;
	border-style: solid;
	border-width: 1px;
	border-color: rgb(51, 153, 255);
}

#OSStart img {
	width: 70%;
}

#outerStartProgressBar {
	border-style: solid;
	border-width: 1px;
	border-color: rgb(51, 153, 255);
}

#innerStartProgressBar {
	background: orange;
	word-break: normal; 
}


#farmDiv{
  		display: grid;
  		grid-template-columns: auto auto;
  		border: 1px solid blue;
	}

	.gridContainer{
  		display: grid;
  		grid-template: repeat(4, minmax(0, 1fr)) / repeat(8, minmax(0, 1fr));
    	background-color: #d5611b;
  		padding: 5px;
  		grid-gap: 2px;
		min-height: 0; 
		min-width: 0;
	}

	.gridItem {
		background-color: white;
		border: 1px double blue;
		text-align: center;
		overflow: hidden;
		min-width: 20px;
		font-size: 16px;
	}

	.watered{
		box-shadow: inset 1px 1px 5px rgba(0, 0, 255, 0.5);
	}

	.fertilized{
		text-shadow: 2px 2px 3px rgba(255, 0, 0, 1);
	}

	#priceTracker{
		width: 400px;
		height: 300px;
		position: relative;
	}

	.pricePoint{
		position: absolute;
		font-size: 8px;
	}


@keyframes turn-on{
  0%{
    transform:scale(1,0.8) translate3d(0,0,0);
    -webkit-filter:brightness(30);
    filter:brightness(30);
    opacity:1;
  }
  3.5%{
    transform:scale(1,0.8) translate3d(0,100%,0);
  }
  
  3.6%{
    transform:scale(1,0.8) translate3d(0,-100%,0);
    opacity:1;
  } 
  
  9%{
    transform:scale(1.3,0.6) translate3d(0,100%,0);
    -webkit-filter:brightness(30);
    filter:brightness(30);
    opacity:0;
  }
  
  11%{
    transform:scale(1,1) translate3d(0,0,0);
    -webkit-filter:contrast(0) brightness(0) ;
    filter:contrast(0) brightness(0);
    opacity:0;
  }
  
  100%{
    transform:scale(1,1) translate3d(0,0,0);
    -webkit-filter:contrast(1) brightness(1) saturate(1);
    filter:contrast(1) brightness(1) saturate(1);
    opacity:1;
  }
}

@keyframes turn-off{
  0%{
    transform:scale(1,1.3) translate3d(0,0,0);
    -webkit-filter:brightness(1);
    filter:brightness(1);
    opacity:1;
  }
  60%{
    transform:scale(1.3,0.001) translate3d(0,0,0);
    -webkit-filter:brightness(10);
    filter:brightness(10);
  }
  100%{
    animation-timing-function:$ease-in-quint;
    transform:scale(0.000,0.0001) translate3d(0,0,0);
    -webkit-filter:brightness(50);
    filter:brightness(50);
  }
}

.turn-off{
  animation: turn-off 0.6s ease-out;
  animation-fill-mode:forwards;
}

.turn-on{
  animation: turn-on 4s linear;
  animation-fill-mode:forwards;
}
