
@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%);
}

a {
	text-decoration-line: underline;
	cursor: pointer;
}

.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);
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.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;
  white-space: nowrap;
  overflow: hidden;
  cursor: move;
}


#menu{
	border: 1px solid;
  padding: 10px;
  display: none;
  position: absolute;
  bottom: 40px;
  z-index: 1000000000000000000000000;
	background-color: rgb(233, 233, 233);
}

.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);
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.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: rgb(233, 233, 233);
	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;
  		text-align: center;

	}

	.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;
}

.crt::after {
  content: " ";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  opacity: 0;
  z-index: 2;
  pointer-events: none;
}

.crt::before {
  content: " ";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: linear-gradient(rgba(30, 30, 30, 0) 50%, rgba(0, 0, 0, 0.15) 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, 4px 100%;
  opacity: 50%;
  pointer-events: none;
}

.shadow::before {
  box-shadow: 0 0 20vw rgba(0,0,0,1) inset;
  box-shadow: 0 0 10vw rgba(0,0,0,1) inset;
  pointer-events: none;

}

