/* контактная формы */

div.formblock {
width:100%;
/*max-width: 700px;
margin: 0 auto;*/
}

input[type=text], input[type=tel], input[type=password], input[type=email], input[type=date], input[type=checkbox] {
    padding:10px; 
    border:1px solid #ccc; 
    -webkit-border-radius: 3px;
    border-radius: 3px;
	margin: 5px 0;
	font-size:1em;
	width:calc(50% - 25px);
/*	max-width: 700px; */
}

/*input[type=checkbox] {
	height:1.2em;
	width:1.2em;
}*/

select {
    padding:10px; 
    border:1px solid #ccc; 
    -webkit-border-radius: 3px;
    border-radius: 3px;
	margin: 5px 0;
	font-size:1em;
	width:calc(50% - 25px);
/*	max-width: 700px; */
}



input[type=text]:focus {
   /* border-color:#333; */
}

textarea {
	padding:10px; 
    border:1px solid #ccc; 
    -webkit-border-radius: 3px;
    border-radius: 3px;
	margin: 5px 0;
	font-size:1em;
	width:calc(100% - 24px);
/*	max-width: 700px; */
	height: 4em;
}

input[type=submit] {
    padding:10px; 
    background-color: var(--background-body-color); 
    margin: 5px 0;
	
    border:0 none;
    cursor:pointer;
    -webkit-border-radius: 3px;
    border-radius: 3px;
	font-size:1em;
	}
	
.switch-field {
	display: flex;
	margin-bottom: 36px;
	overflow: hidden;
}

.switch-field input {
	position: absolute !important;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	width: 1px;
	border: 0;
	overflow: hidden;
}

.switch-field label {
	background-color: #e4e4e4;
	background-color: #949494;
	color: rgba(0, 0, 0, 0.6);
	color:white;
	font-size: 14px;
	line-height: 1;
	text-align: center;
	padding: 8px 16px;
	margin-right: -1px;
	border: 1px solid rgba(0, 0, 0, 0.2);
	box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
	transition: all 0.3s ease-in-out;
}

.switch-field label:hover {
	cursor: pointer;
}

.switch-field input:checked + label {
	background-color: #a5dc86;
	box-shadow: none;
	color:black;
}

.input-wrapper {
	position: relative;
	display: inline-block;
	
	width: calc(50% - 3px);
	margin: 10px 0 10px 0;
}

.input-wrapper.right4px {
	margin-right: 4px;
}

.input-wrapper.x2 {
	width: calc(100% - 2px);
}

.input-wrapper.x_3 {
	width: calc(33.33% - 2.67px);
}

.input-wrapper label {
	position: absolute;
	top:-21px;
	left:7px;
	padding:5px;
	font-size: 12px;
}

.input-wrapper input[type=date] {
	min-width: 150px;
}

.input-wrapper input {
	width:calc(100% - 20px);
}

.input-wrapper input[type=submit] {
	width:fit-content;
	background-color: #949494;
	color:white;
}



.checkbox, .flexcheckbox {
	display: flex;
	align-items: center;
	align-content: center;
}

.checkbox span {
	font-size: 12px;
	margin-left: 7px;
}

input[type=checkbox] {
	height:1.2em;
	width:1.2em;
	margin-left: 13px;
	
	-webkit-appearance:none;
  appearance:none;
  box-sizing:content-box; /* default after appearance:none is border-box */
  position:relative;
  display:inline-block;
  vertical-align:middle;
  width:1em;
  height:0em;
  background:#949494;
  border:0.1875em solid var(--link-underline-color);
  border-radius:0.6875em;
  transition:background 0.3s;
}

input[type=checkbox]:before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:1em;
  height:1em;
  background:white;
  border-radius:calc(1em / 2);
  transition:background 0.3s, left 0.3s;
  box-shadow: 0px 0px 3px #333;
}

input[type=checkbox]:checked {
  background: #DBF9B8;
}
input[type=checkbox]:checked:before {
  left:1em;
  background:white;
}

.input-wrapper select {
	width: calc(100% + 2px);
	-webkit-appearance: initial;
	position: relative;
	
	--g:transparent 50%, gray 50% calc(50% + 1px), transparent calc(50% + 1px);
  background-image: 
    linear-gradient(45deg,  var(--g)), 
    linear-gradient(-45deg, var(--g));
  background-position: 
    right 20px  top calc(1em + 2px), 
    right 15px  top calc(1em + 2px);
  background-size: 5px 5px;
  background-repeat: no-repeat;
  /* reset */
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
}


.disabled {
	font-weight: bold;
	color:red;
}

form.register {
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
}

button {
	background-color: #949494;
    padding: 12px;
	margin: 5px 0;
    border: 0 none;
    cursor: pointer;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    font-size: 1em;
	color:white;
}