html
{
	min-height: 100vh;
	min-width: 10vw;
	font-family: Helvetica;
}

body
{
	margin: 0;
}

a, button
{
	-ms-touch-action: manipulation;	/* IE10  */
	touch-action: manipulation;		/* IE11+ */
}

.navbar
{
    position: absolute;
    width: 100vw;
    height: 46px;
    background-color: #fc52ff;
    
}

.navbar a 
{
	float: left;
	font-size: 16px;
	color: white;
	text-align: center;
	padding: 14px 14px;
	text-decoration: none;
}

.dropdown 
{
	float: left;
	overflow: hidden;
}

.dropdown .dropbtn 
{
	font-size: 16px;
	border: none;
	outline: none;
	color: white;
	padding: 14px 16px;
	background-color: inherit;
	font-family: inherit; /* Important for vertical align on mobile phones */
	margin: 0; /* Important for vertical align on mobile phones */
}

.navbar a:hover, .dropdown:hover .dropbtn , dropbtn:focus
{
	color: red;
	cursor: pointer;
}

.dropdown-content 
{
	display: none;
	position: absolute;
	background-color: #f9f9f9;
	min-width: 160px;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	z-index: 1;
}

.dropdown-content a 
{
	float: none;
	color: black;
	padding: 12px 16px;
	text-decoration: none;
	display: block;
	text-align: left;
}

.dropdown-content a:hover 
{
	background-color: #ddd;
}

.show-dropdown
{
	display: block;
}

#visualizebtn
{
	padding: 6px 10px;
	cursor: pointer;
	position: absolute;
	position: absolute;
  	top: 50%;
  	left: 50%;
  	transform: translate(-50%, -50%);
	min-width: 100px;
	height: 80%;
	font-size: 16px;
	background-color: #00afc9;
	border: none;
	color: #fff;
	border-radius: 10px;
	outline: none;
}

#visualizebtn:hover
{
	background-color: #0ddbd4;
}

.WallWeightSelector
{
	position: absolute;
	color: white;
	left: 62%;
	font-size: 14px;
}

.navbarsquare
{
	width: 25px;
	height: 25px;
	display: inline-block;
	position: relative;
	top: 10px;
	cursor: pointer;
}

#navbarWall
{
	background-color: black;
	border: 2px solid white;
}

#navbarWeight
{
	background-image: url("./Resources/weight.png");
}

#compareAlgobtn
{
	padding: 6px 10px;
	cursor: pointer;
	text-align: center;
	min-width: 80px;
	top: 20%;
	height: 60%;
	font-size: 14px;
	background-color: #f542bc;
	border: none;
	color: #fff;
	border-radius: 5px;
	outline: none;
	position: absolute;;
	left: 78%;
}

.modal
{
    display: none;
    position: fixed;
    z-index: 1;
    left: 0; top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.4);
}

.modal-content
{
    background-color: #fefefe;
    margin: 2% auto 2% auto;
    border: 1px solid #888;
    width: 40%;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 30px;
    border-radius: 5px;
}

.animateModal
{
    animation: zoom 0.5s;
}

.imgcontainer
{
    text-align: center;
    margin: 20px 0 10px 0;
    position: relative;
}

.close 
{
    position: absolute;
    right: 5px;
    top: 0;
    color: #000;
    font-size: 25px;
    font-weight: bold;
}

.close:hover, .close:focus 
{
    color: red;
    cursor: pointer;
}

#algoCompareTable
{
	border: none;
	width: 100%;
	font-size: 14px;
}

td
{
	padding-top: 5px;
	padding-bottom: 5px;
}

.correct
{
	color: green;
}

.incorrect
{
	color: red;
}

.tableBtn
{
	padding: 6px 10px;
	cursor: pointer;
	text-align: center;
	min-width: 80px;
	top: 20%;
	height: 60%;
	font-size: 14px;
	background-color: #f542bc;
	border: none;
	color: #fff;
	border-radius: 5px;
	outline: none;
}

hr
{
	 transition: all .5s linear;
}

.tutorialDivContent
{
	text-align: left; 
	border-radius: 6px; 
	border: 1px solid #d6d6d6; 
	display: block;
	padding-top: -5px;
	padding-bottom: 20px;
	padding-left: 20px;
	padding-right: 20px;
	background-color: #f7f7f7;
	font-size: 15px;
	margin-top: 10px;
	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
	line-height: 20px;
}

.brandIcon 
{
	color: black;
}

.brandIcon:hover
{
	cursor: pointer;
	color: #ff5252;
}

.brandIconLink:visited 
{
	color: black;
}

#algoPropertyDiv
{
	position: absolute;
	display: inline-block;
	margin-left: auto;
	margin-right: auto;
	left: 0;
	right: 0;
	top: 60px;
	font-family: Arial;
	font-size: 15px;
}

.legendsquare
{
	width: 25px;
	height: 25px;
	display: inline-block;
	position: relative;
	top: 10px;
	border: 1px solid rgba(175, 216, 248);
}

.legend
{
	margin-left: 2vw;
	cursor: default;
}

#resetGrid
{
	padding: 6px 10px;
	cursor: pointer;
	text-align: center;
	min-width: 80px;
	top: 20%;
	height: 60%;
	font-size: 16px;
	background-color: inherit;
	border: none;
	color: #fff;
	border-radius: 5px;
	outline: none;
	position: absolute; 
	right: 3%;
}

#resetGrid:hover
{
	color: red;
	cursor: pointer;
}

#gridContainer
{
	outline: 1px solid rgb(175, 216, 248);
	font-size: 0;
	position: absolute;
	bottom: 1vh;

}
.gridsquare
{
	width: 25px;
	height: 25px;
	box-shadow: 0 1px 0 rgb(175, 216, 248) inset, 1px 0px 0px rgb(175, 216, 248) inset;
	display: inline-block;
}

.animateVisited
{
	box-shadow: 0 1px 0 rgb(237, 12, 0) inset, 1px 0px 0px rgb(237, 12, 0) inset;
	background-color: yellow;
	animation-name: animateVisited;
	animation-duration: 1.5s; 
	animation-timing-function: ease-out; 
}

.animatePath
{
	background-color: cyan;

	box-shadow: 0 1px 0 rgb(0,255,255) inset, 1px 0px 0px rgb(0,255,255) inset;
	animation-name: animatePath;
	animation-duration: .5s; 
	animation-timing-function: ease-out; 
}

.pathRight
{
	background-image: url("./Resources/start.png");	
}

.pathDown
{
	background-image: url("./Resources/start.png");
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

.pathLeft
{
	background-image: url("./Resources/start.png");
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
}

.pathUp
{
	background-image: url("./Resources/start.png");
	-ms-transform: rotate(270deg);
	transform: rotate(270deg);
}

.wall
{
	box-shadow: 0 1px 0 rgb(0, 0, 0) inset, 1px 0px 0px rgb(0, 0, 0) inset;
	background-color: black;
	animation-name: animateWall;
	animation-duration: 0.3s;
	animation-timing-function: ease-out;
	
}

.weight
{
	background-image: url("./Resources/weight.png");
	margin: auto;
	animation-name: animateWeight;
	animation-duration: .3s; 
	animation-timing-function: ease-out; 
}
.start
{
	background-color: transparent;
	background-image: url("./Resources/start.png");
	background-repeat: no-repeat;
	box-shadow: 0 1px 0 rgb(175, 216, 248) inset, 1px 0px 0px rgb(175, 216, 248) inset;
	animation-name: animateStartStop;
	animation-duration: 0.5s;
	animation-timing-function: ease-out;
}

.stop
{
	background-color: transparent;
	background-image: url("./Resources/stop.png");
	background-repeat: no-repeat;
	box-shadow: 0 1px 0 rgb(175, 216, 248) inset, 1px 0px 0px rgb(175, 216, 248) inset;
	animation-name: animateStartStop;
	animation-duration: 0.5s;
	animation-timing-function: ease-out;
}

@keyframes animateVisited 
{
	0% 
	{
		transform: scale(.0);
		background-color: red;
		border-radius: 100%;
	}
	50% 
	{
		background-color: orange;
	}
	80% 
	{
		transform: scale(1.2);
	}
	100%
	{
		transform: scale(1)
		background-color: pink;
	}
}

@keyframes animateWeight
{
	40%
	{
		transform: scale(.6);
	}
	70%
	{
		transform: scale(1.2);
	}
	100%
	{
		transform: scale(1);
	}
}

@keyframes zoom
{
    from {transform: scale(0)}
    to {transform: scale(1)}
}

@keyframes animatePath
{
	0% 
	{
		transform: scale(.6);
		background-color: purple;
		border-radius: 100%;
	}
	80% 
	{
		transform: scale(1.1);
	}
	100%
	{
		transform: scale(1)
		background-color: magenta;			
	}
}
@keyframes animateWall
{
	40%
	{
		transform: scale(0.8);
	}
	70%
	{
		transform: scale(1.1);
	}
	100%
	{
		transform: scale(1);
	}
}
@keyframes animateStartStop
{
	0% 
	{
		transform: scale(.3);
		border-radius: 100%;
	}
	80% 
	{
		transform: scale(1.2);
	}
	100%
	{
		transform: scale(1)
	}
}
