﻿select,	input, textarea	{	appearance:	none; -webkit-appearance: none; -moz-appearance: none; }
*:focus 				{	outline: -webkit-focus-ring-color auto 0; outline: none; }
*:-moz-focusring 		{	outline: 0; }
::placeholder	 		{	opacity: 0.50; }
button	 				{	background-color: transparent; }

input[type=radio],
input[type=checkbox] 	{	display: none; }


input, textarea			{	width: calc(100.0% - 2.00em); height: 2.50em; padding: 0 1.00em; }
textarea				{	min-height: 7.50em; margin-bottom: 1.00em; padding: 0.50em 1.00em; resize: vertical; }
input[type=number] 	{	appearance: textfield; text-align: right; min-width: 2.50em; float: right; }

/* --- Calculator --- */

#calculator input		{	width: calc(100.0% - 2.00em); padding: 0.50em 1.00em; text-align: right; }

/* --- Label Für Formulare --- */

input#DSGVO-ok + label					{	position: relative; display: block; width: calc(100.0% - 2.00em); margin-top: 1.00em; padding-left: 2.00em }
input#DSGVO-ok + label:before			{	position: absolute; top: 0.25em; left: 0; content:''; display: inline-block; width: 1.50em; height: 1.50em; background-color: white;
											background-repeat: no-repeat; background-position: center; background-size: 80.00% auto; }
input#DSGVO-ok:checked + label:before	{	background-image: url('../img/picts/check_blue.svg');  }

/* --- Effekt --- */

.form-label-group				{	position: relative; margin: 2.00em 0 0 0; width: 100.0%; }
.form-label-group > *			{	transition: all 100ms ease-in-out; }
.form-label-group > input 		{	}
.form-label-group > textarea 	{	}

.form-label-group > label	{	position: absolute; top: 1px; left: 1px; width: calc(100.0% - 2.00em - 2px); height: calc(2.50em - 2px); padding: 0 1.00em; font-size: 14px; cursor: text;
								display: flex; flex-flow: row wrap; justify-content: flex-start; align-content: center; align-items: center; background: white; }

.form-label-group *:focus ~ label,
.form-label-group *:not(:placeholder-shown) ~ label 	{	z-index: 999; height: 1.00em; width: auto; margin-top: -1.50em; margin-left: 0; padding: 0; font-size: 12px; background: transparent; opacity: 0.50; }

/*	=================================
		END
	================================= */

