:root {
	--background-color: #000000;
	--main-text-color: #6d6d72;
	--secondary-text-color: #ffffff;
	--links-text-color: #464646;
	--button-border: none;
	--button-background-color: #aef161;
	--button-disabled-background-color: #999;
	--button-disabled-opacity: 1;
	--border-color: #c8c7cc;
	--text-input-background-color: #181818;
	--file-input-button-text-color: #000;
	--file-input-button-background-color: #c8c7cc;
	--text-input-error-outline-color: red;
	--notice-color: #6d6d72;
	--block-background-color: #181818;
	--block-border: #3b3b3b;
	--block-text-color: #000;
}

/**
	Color Scheme
	Fonts
*/
body {
	/*font-family: 'Helvetica Neue', Helvetica, Verdana, Geneva, Arial, sans-serif;*/
	font-family: 'Helvetica Neue', HelveticaNeue, Helvetica, Arial,
		'Lucida Grande', sans-serif;
	background: var(--background-color);
	color: var(--main-text-color);
	-webkit-font-smoothing: antialiased;
}

/* Links */
a {
	color: var(--links-text-color);
	text-decoration: none;
}

a:hover {
	color: var(--links-text-color);
	text-decoration: underline;
}

/* Text Styles */
h1 {
	display: block;
	font-size: 15px;
	font-weight: normal;
	text-transform: uppercase;
}

.bottom-fields .notice {
	font-size: 14px;
	color: var(--notice-color);
}

.footer span {
	font-size: 10px;
}

.mess-sent-box h1 {
	color: #4cd964;
	font-weight: bold;
}

/* Form Elements */
input,
textarea,
.pre-block .steps-fields li {
	font-family: 'Helvetica Neue', HelveticaNeue, Helvetica, Arial,
		'Lucida Grande', sans-serif;
}

.home-btn {
	display: inline-block;
	color: #fff;
	background: var(--button-background-color);
}

.home-btn:hover {
	text-decoration: none;
}

.text-field {
	font-size: 14px;
	color: var(--secondary-text-color);
	background-color: var(--text-input-background-color);
	border: 1px solid var(--block-border);
	caret-color: var(--secondary-text-color);
}

.pre-block .steps-fields li {
	font-size: 14px;
	color: var(--main-text-color);
}

::-webkit-input-placeholder {
	color: #8e8e93;
}

::-moz-placeholder {
	color: #8e8e93;
}

/* Firefox 19+ */
:-moz-placeholder {
	color: #8e8e93;
}

/* Firefox 18- */
:-ms-input-placeholder {
	color: #8e8e93;
}

.file-field {
	font-size: 14px;
	color: #8e8e93;
}

input[type='file']::-webkit-file-upload-button {
	color: var(--file-input-button-text-color);
	background: var(--file-input-button-background-color);
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
	-webkit-box-shadow: 0 0 0 30px var(--block-background-color) inset;
	-webkit-text-fill-color: var(--secondary-text-color);
	/* border: 1px solid var(--border-color) !important; */
	caret-color: var(--secondary-text-color) !important;
	-webkit-text-fill-color: var(--secondary-text-color) !important;
}

input[type='submit'],
input[type='button'] {
	font-size: 16px;
	color: var(--file-input-button-text-color);
	background: var(--button-background-color);
	font-weight: 600;
	border: 0;
	border-radius: 24px;
	transition: background-color 0.3s ease-in-out;
}

input[type='submit']:hover,
input[type='button']:hover {
	background: var(--secondary-text-color);
}

input[type='submit']:disabled,
input[type='button']:disabled {
	background: var(--button-disabled-background-color);
	opacity: var(--button-disabled-opacity);
}

.screens-fields li {
	background: var(--block-background-color);
	border-radius: 12px;
	border: 1px solid var(--block-border);
}

.screens-fields li > div {
}

.custom-file {
	background: var(--block-background-color);
}

.custom-file button {
	color: var(--file-input-button-text-color);
	background: var(--button-background-color);
	font-weight: 600 !important;
	border: none !important;
	font-size: 12px !important;
	white-space: nowrap !important;
	transition: background-color 0.3s ease-in-out;
}

.custom-file button:hover {
	background: var(--secondary-text-color);
}

.custom-file .image-preview {
	border: 1px solid var(--border-color);
}

.form-block .steps-fields {
	border: none;
}

.steps-fields li:after {
	content: '';
	display: block;
	height: 1px;
	height: 0.5px;
	margin-left: 20px;
	border-bottom: 1px solid var(--border-color);
	border-bottom: 0.5px solid var(--border-color);
}

.steps-fields li:last-child:after,
.screens-fields li:last-child:after {
	content: none;
}

.screens-fields.report:after {
	content: '';
	display: block;
	height: 0px;
	margin-left: 20px;
	margin-bottom: 1px;
	border-bottom: 1px solid var(--border-color);
	border-bottom: 0.5px solid var(--border-color);
	position: relative;
}

/* Etc. */
.error-field {
	box-shadow: inset 0 0 0 1px var(--text-input-error-outline-color);
}

.error-message {
	color: #ff3b30;
	font-size: 12px;
	margin-top: 4px;
	margin-left: 20px;
	line-height: 15px;
	height: 15px;
	animation: fadeIn 0.3s ease-in;
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(-5px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.progressBar {
	color: #fff;
}

.progressBar .container {
	background-color: #b7b6b7;
}

.progressBar .bar {
	background-color: var(--button-background-color);
}

.page-title {
	font-weight: bold;
}

/* iPhone */
@media screen and (max-device-width: 480px) {
	.text-field {
		border: 0;
		font-size: 15px;
	}
	.top-fields,
	.steps-fields,
	.screens-fields {
		background: var(--background-color);
		border: none;
	}

	.custom-file button {
		font-size: 11px !important;
		padding: 6px 12px !important;
		border-radius: 6px !important;
		color: var(--file-input-button-text-color) !important;
		background: var(--button-background-color) !important;
		border: none !important;
		font-weight: 600 !important;
		white-space: nowrap !important;
	}
	.top-fields li:first-child .text-field,
	.steps-fields li:first-child .text-field {
		border-top: none !important;
		border-bottom: none !important;
	}
	.top-fields li:last-child .text-field,
	.steps-fields li:last-child .text-field {
		border-top: none !important;
		border-bottom: none !important;
	}
	.top-fields li:after {
		background-color: var(--border-color);
	}

	.top-fields li:last-child:after,
	.steps-fields li:last-child:after,
	.screens-fields li:last-child:after {
		content: none;
	}
	.screens-fields.report {
		border-bottom: none;
	}
	.screens-fields.report li:after {
		content: none;
	}
	.screens-fields {
		border-bottom: none;
		border-top: none;
	}

	.screens-fields li {
		border: none;
	}
	.steps-fields.report {
		border-bottom: 1px solid var(--border-color);
		border-bottom: 0.5px solid var(--border-color);
	}
	h1 {
		font-size: 14px;
	}
	.middle-fields h1:after {
		display: none;
	}
	input[type='submit'],
	input[type='button'] {
		border: 0;
		font-size: 16px;
	}
	input:-webkit-autofill,
	input:-webkit-autofill:hover,
	input:-webkit-autofill:focus,
	input:-webkit-autofill:active {
		border: 0 !important;
		background-color: var(--text-input-background-color);
		box-shadow: none;
		-webkit-box-shadow: none;
	}

	.home-btn {
		border: 0;
		font-size: 16px;
		color: #fff;
		background: #007aff;
		opacity: 0.6;
	}
	.mess-sent-box h1 {
		font-weight: normal;
	}
	.mess-sent-box .results-container {
		background: var(--block-background-color);
		border-top: 1px solid var(--border-color);
		border-top: 0.5px solid var(--border-color);
		border-bottom: 1px solid var(--border-color);
		border-bottom: 0.5px solid var(--border-color);
	}
	.mess-sent-box .results-container span:first-child {
		font-weight: bolder;
	}
	.mess-sent-box .results-container li:after {
		margin-left: 20px;
		border-bottom: 1px solid var(--border-color);
		border-bottom: 0.5px solid var(--border-color);
	}
	.mess-sent-box .results-container li:last-child:after {
		border: 0;
	}

	.error-message {
		margin-left: 20px;
		font-size: 11px;
	}
}
