﻿h2
{
	color: var(--title-color);
}

button
{
	cursor: pointer;
}

form
{
	max-width: 400px;
	margin-right: auto;
	margin-left: auto;
}

div.input-separator
{
	font-weight: bold;
	position: relative;
	top: 15px;
}

div.inputs
{
	border-radius: 10px;
	background: var(--inputs-container-back-color);
	border-style: solid;
	border-width: 2px;
	border-color: var(--border-color);
	margin-bottom: 25px;
	margin-top: 25px;
}

	div.inputs p
	{
		margin-right: 10px;
		margin-left: 10px;
	}

div.foot
{
	margin-top: 25px;
}

button.btn,
a.btn
{
	width: 100%;
	border-radius: 10px;
	border-style: solid;
	border-width: 0;
	height: 36px;
	background-color: var(--button-back-color);
	border-color: var(--button-border-color);
	color: var(--button-color);
}

a.btn
{
	text-decoration: none;
	display: table-cell;
	vertical-align: middle;
	box-sizing: border-box;
	cursor: pointer;
}

button.btn-primary
{
	margin-bottom: 15px;
}

.anchors-as-buttons-rapper
{
	width: calc(100% - 300px);
	display: table;
	margin-right: 150px;
	margin-left: 150px;
}

div.reason
{
	color: var(--error-message-color);
}

div.reason-header
{
	font-weight: bold;
}

/*************************************************************************************************
	Stolen from https://stackoverflow.com/questions/38301774/how-to-do-floating-of-labels-in-css
*************************************************************************************************/
.input-group
{
	position: relative;
	margin: 30px 10px 20px 10px;
}

input
{
	font-size: 14px;
	padding: 10px 10px 10px 5px;
	display: block;
	width: calc(100% - 20px);
	border: none;
	border-bottom: 1px solid var(--input-border-color);
	background-color: var(--inputs-back-color);
	color: var(--input-text-color);
}

	input:focus
	{
		outline: none;
	}

label
{
	color: var(--input-label-color);
	font-size: 14px;
	font-weight: normal;
	position: absolute;
	pointer-events: none;
	left: 5px;
	top: 10px;
	transition: 0.2s ease all;
	-moz-transition: 0.2s ease all;
	-webkit-transition: 0.2s ease all;
}

input:focus ~ label,
input:not(:placeholder-shown) ~ label,
input:autofill ~ label
{
	top: -20px;
	font-size: 12px;
	color: var(--input-active-label-color);
}

.bar
{
	position: relative;
	display: block;
	width: calc(100% - 5px);
}

	.bar:before,
	.bar:after
	{
		content: '';
		height: 2px;
		width: 0;
		bottom: 1px;
		position: absolute;
		background: var(--input-active-border-color);
		transition: 0.2s ease all;
		-moz-transition: 0.2s ease all;
		-webkit-transition: 0.2s ease all;
	}

	.bar:before
	{
		left: 50%;
	}

	.bar:after
	{
		right: 50%;
	}

input:focus ~ .bar:before,
input:focus ~ .bar:after
{
	width: 50%;
}

.highlight
{
	position: absolute;
	height: 60%;
	width: 100px;
	top: 25%;
	left: 0;
	pointer-events: none;
	opacity: 0.5;
}

input:focus ~ .highlight
{
	-webkit-animation: inputHighlighter 0.3s ease;
	-moz-animation: inputHighlighter 0.3s ease;
	animation: inputHighlighter 0.3s ease;
}

/* animations */
@-webkit-keyframes inputHighlighter
{
	from
	{
		background: var(--input-active-border-color);
	}

	to
	{
		width: 0;
		background: transparent;
	}
}

@-moz-keyframes inputHighlighter
{
	from
	{
		background: var(--input-active-border-color);
	}

	to
	{
		width: 0;
		background: transparent;
	}
}

@keyframes inputHighlighter
{
	from
	{
		background: var(--input-active-border-color);
	}

	to
	{
		width: 0;
		background: transparent;
	}
}
