* {
	margin: 0;
	padding: 0;
	border:0;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	
	outline:none;
}

html {
	height: 100%;
}

* html body {
	height: 100%;
}

body {
	position: relative;
	margin: 0px;
	padding:0px;
	width: 100%;
	height: 100%;
	min-height: 100%;
	font: 14px/16px Roboto;
/*	font: 16px/22px Roboto;*/
/*	font: 15px/20px 'PTSansRegular', Arial, Helvetica, sans-serif;*/
/*	font-size: 15px;*/

/*	color: #565656;*/
	color:#444;

	background:#ffffff;
	overflow: auto;
}


/* ОБЩИЕ ТЭГИ */
h1 {
	font-size:32px;
	font-weight:normal;
	margin:0 0 25px 0;
}
h2 {
/*	font-size:32px;*/
	font-size:24px;
	font-weight:normal;
	margin:25px 0;
	text-align:center;
}
h2 span {
	display:block;
	margin:7px 0 0 0;
	font-size:16px;
	font-weight:normal;
	font-style:italic;
}

h3 {
	font-size:17px;
	font-weight:bold;
	margin:20px 0 10px 0;
}

input[type="text"], input[type="password"], input[type="radio"], select, textarea {
	padding:5px;
	font-family:Roboto;
	background-color:#eee;
	border-bottom:1px solid #808080;

/*
	border-radius:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
*/
}

input[type="text"], input[type="password"], select {
/*	height:22px;*/
}

p {
	margin:5px 0;
}

ul {
	margin:1em;
}
ul > li {
	margin:0 0 0 2em;
}

/* СТОИМОСТЬ */
.price {
	display:flex;
	justify-content: center;
    align-items: flex-start;
	padding:1em;
	width:90%;
	line-height:1.5;
	border-radius:20px;
}
.price .title {
	font-weight:800;
	text-transform:uppercase;
}
.info {
	padding:1em;
	width:90%;
	line-height:1.5;
	border-radius:20px;
}
.green {
	color:#fff;
	background:#4c795e;
}

:-ms-input-placeholder {
	font-size:14px;
	font-style:italic;
	font-weight:normal;
	color:#ccc;
}
::-ms-input-placeholder {
	font-size:14px;
	font-style:italic;
	font-weight:normal;
	color:#ccc;
}
::-webkit-input-placeholder {
	font-size:14px;
	font-style:italic;
	font-weight:normal;
	color:#ccc;
}
:-moz-placeholder {
	font-size:14px;
	font-style:italic;
	font-weight:normal;
	color:#ccc;
}
::-moz-placeholder {
	font-size:14px;
	font-style:italic;
	font-weight:normal;
	color:#ccc;
}


/* ТЭГИ СО СТИЛЯМИ */
.row {
	margin:0 0 20px 0;
}
.row.flex {
	display:flex;
	flex-direction:row;
}
.col {
	margin:0 3% 0 0;
	width:100%;
	box-sizing: border-box;
}
.col:last-child {
	margin-right:0;
}
label {
	display:block;
	margin:0 0 10px 0;
	padding:0;
	font-size:14px;
	line-height:16px;
}


.col:hover input, .col:hover select, .col:hover textarea {
	border-color:#0101cc;
}
input:hover[type="text"], select:hover, textarea:hover {
	border-color:#0101cc;
}

.block-left {
	float:left;
	width:20px;
}
.block-right {
	margin-left:20px;
	float:none;
	display:block;
}

.hide {
	display:none !important;
}
/* ******************************** */


.button-panel {
	margin:25px 0 0 0;
}

.required {
	color: #cc0101;
	font-size: 20px;
	line-height:0;
}
.required.clear {
	line-height:100%;
}

/*
a.button {
	display:inline-block;
	margin:20px 20px;
	padding:5px 10px;
	color:#fff;

	text-transform:uppercase;
	text-decoration:none;
	background:#ff0000;
	border:1px solid #aa0000;

	-webkit-box-shadow: 1px 1px 5px #AA0000;
	-moz-box-shadow: 1px 1px 5px #AA0000;
	box-shadow: 1px 1px 5px #AA0000;

	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
}

a.button:hover {
	background:#808080;
	border:1px solid #000;

	-webkit-box-shadow: 1px 1px 5px #AAA;
	-moz-box-shadow: 1px 1px 5px #AAA;
	box-shadow: 1px 1px 5px #AAA;
}

a.blue {
	background:#1f92d4;
	border:1px solid #0e4565;

	-webkit-box-shadow: 1px 1px 5px #1f92d4;
	-moz-box-shadow: 1px 1px 5px #1f92d4;
	box-shadow: 1px 1px 5px #1f92d4;
}
*/

a.build-in {
	margin:0 5px;
}

/***************************************************/

a.button {
	display: inline-block;
    padding: 4px 12px;
    margin-bottom: 0;
/*    font-size: 14px;*/
    line-height: 20px;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    color: #333;
	text-transform:normal;
	text-decoration:none;
    text-shadow: 0 1px 1px rgba(255,255,255,0.75);
    background-color: #f5f5f5;
	background-image: -webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));
	background-image: -webkit-linear-gradient(top,#fff,#e6e6e6);
	background-image: -o-linear-gradient(top,#fff,#e6e6e6);
	background-image: linear-gradient(to bottom,#fff,#e6e6e6);
    background-repeat: repeat-x;

    border: 1px solid #ccc;
    border-bottom-color: #b3b3b3;

	border-radius:4px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;

	box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
}

a.button:hover {
	background:#e6e6e6;
	text-decoration:none;
}

a.button.blue {
	color:#fff;
	background-color: #006dcc;
	background-image: -webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));
	background-image: -webkit-linear-gradient(top,#08c,#04c);
	background-image: -o-linear-gradient(top,#08c,#04c);
	background-image: linear-gradient(to bottom,#08c,#04c);
	border-color: rgba(0,0,0,0.1);
}

a.button.blue:hover {
	background:#04c;
	text-decoration:none;
}

/***************************************************/

a.build-in {
	margin:0 5px;
}

img.asterix {
	margin:0 0 0 3px;
}

ul.plain {
	list-style:none;
	margin:0;
	padding:0;
}

ul.plain li {
	float:left;
	margin:2px 10px 2px 0;
}

/* Для списков с чекбоксами */
ul.checklist {
	list-style:none;
	margin:10px;
	padding:0;
}

ul.checklist li {
	padding:2px;
}


/* ОБЩИЕ СТИЛИ */
.comment {
	font-style:italic;
	color:#808080;
}

.left {
	text-align:left;
}

.right {
	text-align:right;
}

.center {
	text-align:center;
}

.nano {
	width:9%;
}

.micro {
	width:14%;
}

.small, .small-2 {
	width:24%;
}

.average {
	width:34%;
}

.normal, .normal-2 {
	width:49%;
}

.big, .big-2{
	width:99%;
}

.free {
	float:left;
	margin:0 20px 0 0;
}






.light {
	background:#eee;
}

.upper {
	text-transform:uppercase;
}


textarea {
	height:100px;
}

input[type="checkbox"], input[type="radio"] {
	display:inline-block;
	margin:0px 5px 5px 0 !important;
	padding:0 !important;
	width:15px !important;
	height:15px !important;
	vertical-align:middle;
}

input, select, textarea {
	position:relative;
}

input[type="text"], select, textarea {
	padding: 4px 0;
	width:100%;
	max-width: 100%;
	line-height: normal;
	font-size:14px;
	color: #000;
	border:0;
    border-bottom: solid 1px #ccc;
	background:transparent;
	outline:none;

	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* Имитируем PLACEHOLDER для SELECT */
select:required:invalid {
	font-style:italic;
	color: #ccc;
}
option[value=""][disabled] {
	display: none;
}
option {
	font-style:normal;
	color: #444;
}


textarea {
	min-height:100px;
}

/* ОБЯЗАТЕЛЬНЫЕ ПОЛЯ */
.is-need {
	color:#0000ff !important;;
}

.is-need input, .is-need select, .is-need textarea {
	color:#000;
	background:#f0f0ff;
	border:1px solid #0000ff;
}

.is-need input[type="checkbox"] {
	color:#0000ff;
}

.is-bold {
	font-weight:bold; !important;
}

.is-italic {
	font-style:italic; !important;
}


/* Фотографии на форме */
.image {
	height:180px;
	line-height:180px;
	font-size:24px;
	text-align:center;
	color:#888;
	background:#ddd;
	border:1px dashed #000;
	opacity:0.75;

	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
}

.image-active {
	opacity:1;
}

/* Панелька для управления фотографиями */
.edit-panel {
	position:absolute;
	top:10px;
	right:10px;
	line-height:10px;
}

.edit-panel a {
	padding:2px 5px;
	font-size:10px;
	color:#000;
	text-decoration:none;
	background:#fff;	
}

.edit-panel a:hover {
	text-decoration:underline;
}




.ms-active {
	background-color:#65adff !important;
}

.field-error {
	background-color:#ffcccc !important;
	border:1px solid #ff0000 !important;
}

.spinner {
	position:fixed;
	z-index: 100000;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	background: #f0f0f0 url('/img/ajax-loader-rectangle.gif') no-repeat center center;
	opacity:0.75;
}

/* Зависимый справочник */
.depending {
	color:#0000ff;
	font-weight:bold;
}

.form-css-editor {
	width:950px;
	height:500px;
	overflow:auto;
}

#email-template-preview {
	padding:5px;
	border:1px solid #ddd;
	display:none;
}


/* Самые важные стили */
.param-active {
	border-color: #cc0101 !important;
}
.row.param-active {
	border:0;
	background:#ffebee;
}

@media all and (-webkit-min-device-pixel-ratio:0) {
	input[type=checkbox].param-active {
		outline-offset: -1px;
		outline: 2px solid #ff0000;
	}
}

.form-design-wrapper {
	width:100%;
	height:100%;
	padding:5px;
}


/* 450px */
@media screen and (max-width: 450px) {
	body {
		font-size:12px;
	}

	.label {
/*		margin:5px 0;*/
	}

	textarea {
		height:50px;
		min-height:50px;
	}
	
	h2 {
		margin:15px 0;
		font-size:18px;
		line-height:20px;
	}
	h2 span {
		margin:5px 0 0 0;
		font-size:10px;
		line-height:12px;
	}

	:-ms-input-placeholder {
		font-size:12px;
	}
	::-ms-input-placeholder {
		font-size:12px;
	}
	::-webkit-input-placeholder {
		font-size:12px;
	}
	:-moz-placeholder {
		font-size:12px;
	}
	::-moz-placeholder {
		font-size:12px;
	}
	
	.row {
		display:block;
	}
	.col {
		margin-top:20px;
	}

	.price {
		justify-content: left;
	}

	input[type="text"], select, textarea {
		margin:0 0 5px 0;
	}


	.button-panel {
		margin:10px 0 0 0;
	}
}