@font-face {
	font-family: microstyle;
	src: url(microstyle)
}

@font-face {
	font-family: sourcesanspro;
	src: url(sourcesanspro)
}

*{
	font-family: sourcesanspro;
}

@media screen and (max-width:600px){
	.logo{
		position: fixed;
		margin-left: auto;
		margin-right: auto;
		left:0;
		right:0;
		text-align:center;
		z-index: 5;
		width: 12rem;
	}

	form {
		width: 480px;
	}

	#profile{
		display: none;
		float:right;
		position: fixed;
		right: 0;
		z-index: 5;
		width: 300px;
		margin-right: 1vw;
		margin-top: 5rem;
	}

	#profilebutton{
		display:block;
		width: 48px;
		position: fixed;
		right: 0;
		margin-right: 0.5rem;
	}

	#profileicon{
		width: 3rem;
	}

	#known-uris{
		width: 100vw;
		margin-top: 0;
		margin-bottom: 0;
	}

	#known-uris-list{
		grid-template-columns: 1fr;
		margin-bottom: 0;
		padding-bottom: 1rem;
		margin-top: 0vh;
		padding-top: 0vh;
	}

	#login-window{
		margin-top: 18vh;
		max-width: 80vw;
	}

	#main-message-area{
		margin-left:4.3rem;
		margin-right:4.3rem;
	}

	#header{
		display:grid;
		grid-template-columns: 1fr;
		position: fixed;
		height: 3rem;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 2;
		background: white;
		box-shadow: 0px 1px 7px var(--light-shadow);
		padding-top: 1rem;
		padding-bottom: 1rem;
	}

	.RememberMe{
		font-size:0.8rem;
	}

	#header > label{display: none;}

	.urielement{
		display:grid;
		grid-template-columns: 1fr 2fr;
	}

	.urititle{
		position: static;
		height: 100%;
		display: flex;
		align-items: center;
		text-align: left;
		padding: 0;
		padding-left: 1rem;
	}

	.generated{
		padding-top: 10%;
		padding-bottom: 10%;
		margin-bottom:0;
	}

	.generated >h1{
		margin:0;
		font-size: 4rem;
	}

	.category >h1{
		text-align: center;
	}

	.category{
		padding-top: 5rem;
		margin-left: auto;
		margin-right: auto;
		font-size: 1.5rem;
	}


}


@media screen and (min-width: 600px) and (max-width:800px){
	.logo{
		position: fixed;
		margin-left: auto;
		margin-right: auto;
		left:0;
		right:0;
		text-align:center;
		z-index: 5;
		width: 12rem;
	}

	form {
		width: 480px;
	}

	#profile{
		display: none;
		float:right;
		position: fixed;
		right: 0;
		z-index: 5;
		width: 300px;
		margin-right: 1rem;
		margin-top: 5rem;
	}

	#profilebutton{
		display:block;
		width: 48px;
		position: fixed;
		right: 0;
		margin-right: 1rem;
	}

	#profileicon{
		width: 3rem;
	}

	#known-uris{
		width: 100vw;
		margin-top: 0;
		margin-bottom: 0;
	}

	#known-uris-list{
		grid-template-columns: 1fr 1fr;
		margin-bottom: 0;
		padding-bottom: 1rem;
		margin-top: 0vh;
		padding-top: 0vh;
	}


	#gatekeeper{
		margin-top: 30vh;
	}

	#login-window{
		margin-top: 18vh;
		max-width: 80vw;
	}

	#main-message-area{
		margin-left:4.3rem;
		margin-right:4.3rem;
	}

	#header{
		display:grid;
		grid-template-columns: 1fr;
		position: fixed;
		height: 3rem;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 2;
		background: white;
		box-shadow: 0px 1px 7px var(--light-shadow);
		padding-top: 1rem;
		padding-bottom: 1rem;
	}

	.RememberMe{
		font-size:0.8rem;
	}

	#header > label{display: none;}

	.urielement{
		display:grid;
		grid-template-columns: 1fr 3fr;
	}

	.urititle{
		position: static;
		height: 100%;
		display: flex;
		align-items: center;
		text-align: left;
		padding: 0;
		padding-left: 1rem;

	}

	.generated{
		padding-top: 10%;
		padding-bottom: 10%;
		margin-bottom:0;
	}

	.generated >h1{
		margin:0;
		font-size: 4rem;
	}

	.category >h1{
		text-align: center;
	}

	.category{
		padding-top: 5rem;
		margin-left: auto;
		margin-right: auto;
		font-size: 1.5rem;
	}
}


@media screen and (max-width:300px){
	.logo{
		position: fixed;
		margin-left: auto;
		margin-right: auto;
		margin-top: 0.6rem;
		left:0;
		right:0;
		text-align:center;
		z-index: 5;
		width: 8rem;
	}
}

@media screen and (min-width:800px) and (max-width:1300px){

	.logo{
		position: fixed;
		margin-left: auto;
		margin-right: auto;
		margin-top: 0.5rem;
		left:0;
		right:0;
		text-align:center;
		z-index: 5;
		width: 16em;
	}

	form {
		width: 480px;
	}

	#profile{
		display: none;
		float:right;
		position: fixed;
		right: 0;
		z-index: 5;
		width: 300px;
		margin-right: 3rem;
		margin-top: 6rem;
	}

	#profilebutton{
		display:block;
		width: 4rem;
		margin-right: 3rem;
	}

	#profileicon{
		width: 4rem;
	}


	#known-uris{
		width: 100vw;
		margin-top: 0;
		margin-bottom: 0;
	}

	#known-uris-list{
		grid-template-columns: 1fr 1fr 1fr;
		margin-bottom: 0;
		padding-bottom: 1rem;
		margin-top: 0vh;
		padding-top: 0vh;
	}

	#gatekeeper{
		margin-top: 30vh;
	}

	#login-window{
		margin-top: 18vh;
	}

	#main-message-area{
		margin-left:4.3rem;
		margin-right:4.3rem;
	}

	#header{
		display:grid;
		grid-template-columns: 1fr;
		position: fixed;
		height: 5rem;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 2;
		background: white;
		box-shadow: 0px 1px 7px var(--light-shadow);
		padding-top: 1rem;
		padding-bottom: 1rem;
	}

	#header > label{
		margin-left:3rem;
		text-align: left;
		margin-bottom: 5vh;
		margin-top: 5vh;
	}

	.category >h1{
		text-align: center;
		margin-top: 5vh;
		margin-left: auto;
		margin-right: auto;
	}

	.urititle{
		position:absolute;
		text-align:center;
		padding-top: 1rem;
		padding-bottom: 1rem;
	}

	.generated{
		padding-top: 20%;
		padding-bottom: 25%;
		margin-bottom: 5%;
	}

	.generated >h1{
		margin:0;
		font-size: 5rem;
	}

	.category{
		padding-top: 6rem;
		margin-left: auto;
		margin-right: auto;
		font-size: 1.5rem;
	}

}

@media screen and (min-width:1300px){

	.logo{
		position: fixed;
		margin-left: auto;
		margin-right: auto;
		margin-top: 0.5rem;
		left:0;
		right:0;
		text-align:center;
		z-index: 5;
		width: 16em;
	}

	#profileicon{
		width: 4rem;
	}


	form {
		width: 480px;
	}

	#profilebutton{
		display:block;
		width: 4rem;
		margin-right: 3rem;
	}

	#known-uris{
		width: 100vw;
		margin-top: 0;
		margin-bottom: 0;
	}

	#known-uris-list{
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
		margin-bottom: 0;
		padding-bottom: 1rem;
		margin-left: 10vw;
		margin-right: 10vw;
		grid-gap: 5vh 0;
		inset: 4px;
	}

	#header{
		display:grid;
		grid-template-columns: 1fr;
		position: fixed;
		height: 5rem;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 2;
		box-shadow: 0px 1px 7px var(--light-shadow);
		padding-top: 1rem;
		padding-bottom: 1rem;
	}

	#header > label{
		margin-left:3rem;
		text-align: left;
		margin-bottom: 5vh;
		margin-top: 5vh;
	}

	#gatekeeper{
		margin-top: 30vh;
	}

	#login-window{
		margin-top: 30vh;
	}

	#profile{
		display: none;
		float:right;
		position: fixed;
		right: 0;
		z-index: 5;
		width: 300px;
		margin-right: 3rem;
		margin-top: 6rem;
	}

	.category{
		margin-left: 11.5vw;
		margin-right: auto;
		font-size: 1.5rem;
	}

	.urititle{
		position:absolute;
		text-align:center;
		padding-top: 1rem;
		padding-bottom: 1rem;
	}

	.generated{
		padding-top: 10%;
		padding-bottom: 15%;
		margin-bottom: 5%;
	}

	.category{
		padding-top: 7rem;
	}

	.generated > h1{
		margin-top: 20%;
		margin-bottom: 25%;
		font-size: 5rem;
	}

}

@media screen and (min-width:2000px){
	#known-uris-list{
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
	}

	.urititle{
		position:absolute;
		padding-top: 1rem;
		padding-bottom: 1rem;
	}

	.generated{
		padding-top: 10%;
		padding-bottom: 15%;
		margin-bottom: 5%;
	}
}

.actions {
	margin-top: 30vh;
}

.warning {
	padding: 0 3%;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	color: var(--warning);
}

:root{
	--primary:#41b8ea;
	--secondary: #da6631;
	--btn-font: #f2f2f2;
	--dark-1: #121212;
	--dark-2: #242424;
	--dark-3: #363636;
	--dark-4: #484848;
	--dark-shadow: black;
	--dark-font: #f2f2f2;
	--light-1: #fafafa;
	--light-2: #fff;
	--light-3: #363636;
	--light-4: #484848;
	--light-shadow: #8c8c8c;
	--light-font: rgb(51,51,51);
	--warning: #ff3e29;
}

/*Main*/
body{
	margin:0;
}

form {
	margin-top: 1em;
	margin-bottom: 1em;
	margin-left: auto;
	margin-right: auto;
	border-radius: 3px;
	background-color: var(--light-2);
	padding-top: 1rem;
	padding-bottom: 1rem;
	box-shadow: 1px 1px 7px var(--light-shadow);
}

button, a {
	background: var(--primary);
	transition: background-color 0.3s ease-out;
	border: none;
	color: var(--btn-font);
	text-align: center
}

button:hover, a:hover{
	background-color: var(--secondary)
}

form a {
	text-decoration: none;
	text-align: center;
}

form button, form a, input:not([type="checkbox"]) {
	margin-left: auto;
	margin-right: auto;
	padding: 3%;
	width: 80%;
	display: block;
	font-weight:500;
	font-size: 1rem;
}


form input[type="checkbox"] {
	margin-right: .5em;
}

form input[type="text"] {
	border: solid 2px var(--primary);
	color: var(--light-font);
}

form input[type="password"] {
	border: solid 2px var(--primary);
	color: var(--light-font);
}

form label {
	display: block;
	text-align: center;
	font-size: 1rem;
	color: var(--light-font);
}

.button-group > button, .button-group > a {
	margin-top: 8px;
	margin-bottom: 8px;
}

.container {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-size: cover;
	background-position: center center;
	background-color: var(--light-1);
	z-index: -2;
	overflow-x: hidden;
	overflow-y: auto;
}

.title {
	text-align: center;
	font-size: 1.25em;
	color: var(--light-font);
	margin-top: 2rem;
	margin-bottom: 2rem;
}

.message {
	margin-left: 3rem;
	margin-right: 3rem;
	text-align: center;
	color: var(--light-font);
	font-size: 1rem;
	padding: 8px;
	border-style: solid;
	border-color: var(--primary);
	border-radius: 3px;
}

/*Login*/
.RememberMe{
	display: flex;
	align-items: center;
	margin-left: 2rem;
}

.align-horizontally{
	display: grid;
	grid-template-columns: 1fr 1fr
}

#gatekeeper-window{
	box-shadow: 1px 1px 7px var(--light-shadow);
	max-width: 80vw;
}

#login-window{
	box-shadow: 1px 1px 7px var(--light-shadow);
}

#change-window{
	box-shadow: 1px 1px 7px var(--light-shadow);
	margin-top:30vh;
}

#password-new > input{
	margin-top: 1rem;
	margin-bottom: 1rem;
}

/*Application Selector*/
#profilebutton{
	z-index: 0;
	padding: 0;
	background: none;
	outline: none;
}

#profileicon{
	cursor: pointer;
}

.cls-1{
	fill:#fff;
	transition: all 0.3s ease-out;
}

.cls-1,.cls-2{
	fill: #ffffff;
	stroke: #ffffff;
	stroke-miterlimit:10;
	stroke-width:5px;
	transition: all 0.3s ease-out;
}

#svgcolor{
	fill: #ffffff;
	stroke: #ffffff;
}

#strokecolor{
	fill: #374996;
	stroke: #ffffff;
}

#clickhandler{
	position: fixed;
	width: 100vw;
	background: #00000000;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	z-index: 3;
	display:none;
	transition: all 0.3s ease-out;
	cursor: pointer;
}

#known-uris{
	padding: 0;
}

#known-uris-list{
	display: grid;
}

.urielement{
	position: relative;
	border-radius: 5px;
	padding: 0;
	overflow: hidden;
	box-shadow: 1px 1px 7px var(--light-shadow);
	cursor: pointer;
	transition: all 0.3s ease-out;
    color: var(--btn-font);
    border: none;
}

.urititle{
	right:0;
	left:0;
	bottom:0;
	background: white;
	color:var(--light-font);
	font-weight: 500;
	width: 100%;
}

.generated{
	transition: all 0.1s ease-in;
	background-repeat: no-repeat;
    background-position: center;
	background-size: cover;
}

.urielement:hover{
	margin-top: 1px;
	margin-bottom: 15px;
}

h1{
	font-family: microstyle!important;
}

#header > label{
	display:block;
	position:relative;
	font-size:2rem;
	text-align: center;
	margin: 1rem;

}

#openid-list > label{
	margin-bottom: 1rem;
	font-size: 1.5rem
}

#Username > label{
	margin-bottom: 1rem;
	font-size: 1.5rem;
	text-align: left;
	margin-left: auto;
	margin-right: auto;
	width: 86%;
	padding: 0;
}

#Password > label{
	margin-bottom: 1rem;
	font-size: 1.5rem
}

#password-old > label{
	margin-bottom: 1rem;
	font-size: 1.5rem
}

#password-new > label{
	margin-bottom: 1rem;
	font-size: 1.5rem
}

#header{
	background: #374996;
}

/* Scroll Bar */
::-webkit-scrollbar {
	width: 8px;
}

::-webkit-scrollbar-track {
	background: var(--light-1);
}

::-webkit-scrollbar-thumb {
	background: var(--light-3);
}

::-webkit-scrollbar-thumb:hover {
	background: var(--light-4);
}
