form.zforms {
	/*position: relative;
	z-index: 1;
	width: 35em;
	margin: -1.1em 0 1em;
	line-height: 1.2;*/
}

.with-js form.zforms {
	visibility: hidden;
}

.with-js form.widget-inited,
.with-js-error form.zforms {
	visibility: visible;
}

form.zforms * {
	/*font-family: Times New Roman, Times, serif;*/
}

.zforms fieldset {
	/*border: 0;
	border-top: 1px solid #BBB;
	position: relative;
	margin-top: 2em;
	padding: 0 0 1em;*/
}

.zforms legend span {
	/*position: absolute;
	left: 0;
	top: -0.67em;
	margin: 0;
	padding: 0 0.3em 0 0;
	background: #FFF;
	color: #000;
	display: block;
	font-weight: bold;
	white-space: nowrap;*/
}

.zforms dl {
	/*position: relative;
	width: 100%;
	margin: 1.37em 0 0;
	padding: 0;*/
}

.zforms dl:after,
.zforms fieldset.range:after,
.zforms .buttons:after,
.zforms fieldset div.repeat-buttons:after {
	content: ".";
	display: block;
	height: 0;
	line-height: 0;
	clear: both;
	visibility: hidden;
}

.zforms dt {
	/*float: left;
	width: 8em;
	margin: 0;
	padding: 0;*/
}

.zforms dd {
	float: left;
	margin: 0 0 0 0.5em;
	padding: 0;
	display: inline;
	position: relative;
	top: -3px;
}

.zforms dl.no-label dd {
	margin-left: 8.5em;
}

.zforms dd.error {
	color: red;
	width: 13.4em;
	top: 0;
	visibility: hidden;
}

.zforms .placeholder {
	color: #AAA;
}

.zforms dl.required label ins,
.zforms fieldset.required legend span ins {
	color: #FF0000;
	text-decoration: none;
}

.zforms dl.required label:after,
.zforms fieldset.required legend span:after {
	content: '*';
	color: #FF0000;
}

.zforms .option label ins,
.zforms .option label:after,
.zforms .required-ok label ins,
.zforms .required-ok legend span ins,
.zforms .required-ok label:after,
.zforms .required-ok legend:after {
	visibility: hidden;
}

.zforms .invalid label,
.zforms .invalid input,
.zforms .invalid select {
	color: #FF0000;
}

.submitted .required .error,
.submitted .invalid .error {
	visibility: visible;
}

.zforms .disabled dt,
.zforms .disabled dd,
.zforms .disabled label,
.zforms .disabled label ins,
.zforms .disabled legend span ins,
.zforms .disabled label:after,
.zforms .disabled legend:after {
	color: #CCC !important;
}

.zforms .disabled input,
.zforms input.disabled {
	cursor: default !important;
}

.zforms .invisible {
	display: none;
}

.zforms .hidden {
	visibility: hidden;
}

.zforms .scrollable {
	top: -3px;
	padding: 0 0.3em 0 0.5em;
	height: 10em;
	overflow: auto;
	border: 1px solid #7F9DB9;
}


/* date */

.zforms .type-date input,
.zforms .type-date select {
	float: left;
	margin-right: 0.2em;
}

.zforms .type-date .input-hour {
	margin-left: 0.6em;
}

.zforms .picker-active {
	z-index: 1000;
}

.zforms .type-date .picker {
	position: relative;
	z-index: 2;
	left: 0.4em;
	float: left;
}

.zforms .picker .opener {
	width: 40px;
	background: #F3F3F3 url(date.gif) center center no-repeat;
}

.zforms .picker .calendar {
	position: absolute;
	left: 0;
	top: 100%;
	margin: 0;
	background: #FFF;
	border: 1px solid #CCC;
	border-collapse: collapse;
	border-spacing: 0;
}

.zforms .picker .calendar thead {
	background-color: #EFEFEF;
}

.zforms .picker .calendar th,
.zforms .picker .calendar td {
	padding: 0.3em 0.4em;
	font-size: 1em;
	text-align: center;
}

.zforms .picker .calendar th {
	font-weight: normal;
}

.zforms .picker .calendar td {
	cursor: pointer;
}

.zforms .picker .calendar td.add {
	color: #DADADA;
}

.zforms .picker .calendar .weekend {
	color: #FF0000;
}

.zforms .picker .calendar .now {
	background-color: #F5F5F5;
}

.zforms .picker .calendar td:hover,
.zforms .picker .calendar td.hovered {
	background-color: #CCC;
}

.zforms .picker .calendar .arrow-prev,
.zforms .picker .calendar .arrow-next {
	display: block;
	width: 2.5em;
	margin: 0;
}

.zforms .picker .calendar .arrow-prev {
	float: left;
}

.zforms .picker .calendar .arrow-next {
	float: right;
}

.zforms .picker .calendar .title {
	display: block;
	padding-top: 0.2em;
}


/* combobox */

.zforms .type-combobox {
	position: relative;
	z-index: 998;
}

.zforms .combo-field-active {
	z-index: 999;
}

.zforms .combo-list {
	position: absolute;
	left: 0;
	display: none;
}

.zforms .combo-field-active .combo-list {
	display: block;
}

.zforms .type-combobox .button {
	width: 20px;
	background: #F3F3F3 url(combo.gif) center center no-repeat;
}


/* checkboxes, radiobuttons */

.zforms .option {
	/*position: relative;
	margin-bottom: 0.3em;
	padding-top: 2px;*/
}

.zforms .option input {
	/*position: absolute;
	left: 0;
	top: 0.66em;
	margin: -4px 0 0;*/
}

.zforms .option label {
	/*display: block;
	margin-left: 18px;*/
}


/* sheets */

.zforms fieldset.sheet-container {
	position: static;
	margin: 0;
	padding: 0;
}

.with-js .zforms fieldset.sheet {
	display: none;
	padding-bottom: 0;
}

.with-js .zforms fieldset.selected {
	display: block;
}


/* range */

.zforms fieldset.range dl {
	float: left;
	width: auto;
	margin-left: 0.5em;
}

.zforms fieldset.range dt {
	width: 2em;
}

.zforms fieldset.range dd {
	margin: 0 1em 0 0;
}


/* buttons */

.zforms .button {
	cursor: pointer;
}

.zforms .buttons {
	/*margin: 1.5em -0.4em 0;
	padding: 0.4em 0;
	background: #b3b3b3;*/
}

.zforms .buttons input {
	display: none;
	background:#f2f2f2;
	border:none;
}

.zforms .buttons input.submit {
	float: left;
}

.zforms .buttons input.prev {
	float: left;
}

.zforms .buttons input.next {
	float: right;
}

.zforms .buttons input.submit,
.with-js .zforms .buttons input {
	display: block;
}

.zforms fieldset dd.repeat-buttons {
	margin-left: 0.5em;
}

.zforms fieldset div.repeat-buttons {
	margin-top: 0.5em;
	text-align: right;
}

.zforms dd.repeat-buttons input {
	width: 2.2em;
}

.zforms fieldset div.repeat-buttons span.disabled {
	visibility: hidden;
}

.zforms fieldset div.repeat-buttons span.add {
	float: left;
}

.zforms fieldset div.repeat-buttons span.remove {
	float: right;
}


/* slider */

.zforms .slider {
	position: relative;
	margin-top: 1.5em;
}

.zforms .slider .slider-scale {
	position: relative;
}

.zforms .slider-horizontal,
.zforms .slider-horizontal .slider-scale {
	width: 400px;
}

.zforms .slider-horizontal .slider-scale {
	top: 10px;
	height: 20px;
	border-top: 1px solid #999;
}

.zforms .slider-vertical,
.zforms .slider-vertical .slider-scale {
	height: 200px;
}

.zforms .slider-vertical .slider-scale {
	left: 10px;
	width: 20px;
	border-left: 1px solid #999;
}

.zforms .slider div div {
	position: absolute;
}

.zforms .slider-control {
	left: 0;
	cursor: pointer;
	overflow: hidden;
	background: url(slider.gif) 0 0 no-repeat;
	z-index: 2;
}

.zforms .slider-control-selected {
	z-index: 3;
}

.zforms .slider-horizontal .slider-control {
	top: 0;
	width: 11px;
	height: 14px;
	margin-left: -5px;
}

.zforms .slider-vertical {
	margin-left: 2em;
	width: 20px;
}

.zforms .slider-vertical .slider-control {
	width: 14px;
	height: 11px;
	margin-bottom: -5px;
	background-position: -22px 0;
}

.zforms .slider-value {
	font-size: 0.8em;
}

.zforms .slider-horizontal .slider-value {
	bottom: 25px;
}

.zforms .slider-vertical .slider-value {
	right: 30px;
	margin-bottom: -0.7em;
}

.zforms .slider-value-selected {
	color: green;
}

.zforms .slider .slider-mark {
	color: #BBB;
	background: url(slider.gif) -50px 0 no-repeat;
}

.zforms .slider-horizontal .slider-mark {
	top: -4px;
	width: 1px;
	height: 7px;
}

.zforms .slider-vertical .slider-mark {
	left: -4px;
	margin-bottom: -1px;
	width: 7px;
	height: 1px;
	background-position: 0 -14px;
}

.zforms .slider .slider-mark span {
	position: absolute;
	font-size: 0.7em;
}

.zforms .slider-horizontal .slider-mark span {
	top: 8px;
}

.zforms .slider-vertical .slider-mark span {
	left: 15px;
	top: -0.7em;
}

.zforms .slider .slider-range {
	position: absolute;
	z-index: 2;
	overflow: hidden;
}

.zforms .slider-horizontal .slider-range {
	top: 7px;
	height: 3px;
}

.zforms .slider-vertical .slider-range {
	left: 7px;
	width: 3px;
}

.zforms .slider .slider-range-0 {
	background: red;
}

.zforms .slider .slider-range-1 {
	background: blue;
}

.zforms .slider .slider-range-2 {
	background: green;
}

.zforms .slider .slider-range-3 {
	background: yellow;
}

.zforms .disabled .slider .slider-control,
.zforms .slider .slider-control-disabled {
	cursor: default;
	z-index: 1;
}

.zforms .disabled .slider-horizontal .slider-control,
.zforms .slider-horizontal .slider-control-disabled {
	background-position: -11px 0;
}

.zforms .disabled .slider-vertical .slider-control,
.zforms .slider-vertical .slider-control-disabled {
	background-position: -36px 0;
}

.zforms .disabled .slider .slider-mark,
.zforms .disabled .slider .slider-value,
.zforms .slider-value-disabled {
	color: #CCC;
}

.zforms .range .slider-range-0,
.zforms .range .slider-range-2 {
	display: none;
}


/* opera hacks */

html:first-child .zforms .option {
	padding-top: 3px;
}

html:first-child .zforms .option input {
	margin: -6px 0 0 -2px;
}

@media all and (width) {

	.zforms .scrollable .option label {
		padding-right: 18px;
	}

}

@media all and(width) {

	.zforms .option {
		padding-top: 3px;
	}

	.zforms .option input {
		margin: -5px 0 0 -2px;
	}

	.zforms .scrollable .option label {
		padding-right: 0;
	}

}

