body {
	margin: 0;
	padding: 3%;
	min-width: 320px;
}

main#content, div#main {
	margin: 0 0;
	width: 100%;
	clear: both;
	padding-top: 0.5em;

}

body > header, body > footer {
	margin: 0 0;
	width: 100%;
}

.formheader_title:before {
	clear: both;
	content: ' ';
	display: block;
	height: 0;
	visibility: hidden;
}

.block > fieldset {
	display: contents;
	width: 100%;
}

.block fieldset .legend .block-header {
	padding: 0.5em;
}

.block_content {
   	padding: 0.5em;
}

.cell {
	margin-bottom: 0.75em;
}

.cell:after {
	 content: ".";
    display: block;;
    height: 0;
    visibility: hidden;
    clear: both;
}

.cell, .message {
	clear: both;		
}	

.cellinner {
	position: relative;		
}

.label, .field {
	width: 100%;	
}
.withInfo .field {
	float: left;
}

.info {
	float: left;
}

table.blockifyTable td .mobileTable.info {
	display: block;
	float: left;
}

.block_content .infoI {
}

.field input[type=text], 
.field input[type=password], 
.field input[type=date], 
.field input[type=tel], 
.field input[type=number],
.field input[type=email],
.field textarea, 
.field select, 
.field select + .select2,
.field .cke,
.field fieldset .group_content_row,
.field .field_file_cell {
	margin: 0;
	font-size: 1em;
	width: 100% !important; /* important needed to overwrite select2 style attribute */
}

.withInfo .field input[type=text], 
.withInfo .field input[type=password], 
.withInfo .field input[type=date], 
.withInfo .field input[type=tel], 
.withInfo .field input[type=number],
.withInfo .field input[type=email],
.withInfo .field textarea, 
.withInfo .field select, 
.withInfo .field select + .select2,
.withInfo .field fieldset .group_content_row,
.withInfo .field .field_file_cell {
	width: fit-content !important;
	/*width: calc(100% - 1.5em) !important;*/
}

.withInfo .field .cke {
	float: left;
	width: calc(100% - 1.7em) !important;
}

.withInfo .field input[type="text"].withDatepicker {
	width: calc(100% - 4.1em) !important;
}

.fieldinner {
	width: 100% !important;
}

.field_file_cell {
	float: left;
}

.labelAttach .field {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

.labelAttach .field .fieldinner {
	order: 2;
}

.attachedLabel {
	font-weight: bold;
	width: 100%;
	order: 1;
}

table select {
	margin: 0;
}

/*
table thead .fieldlabel {
	writing-mode: vertical-lr;
	transform: rotate(180deg);
}
*/

.field .tokenfield input[type=text] {
	width: 0;
}

.field .tokenfield li {
	margin: 0px 3px;
	padding: 0;
}

.fieldtype-checkbox .label {
	width: calc(100% - 4em);
	margin-left: 2.5em;
}

.fieldtype-checkbox .field {
	width: 2.5em;
	position: absolute;
	left: 0;
}

.fieldtype-checkbox .info {
	float: right;
}

.field_file_cell .attachFileUploadTriggerField {
	display: block;
}

.field_file_cell button, .block_table_cell.controltype_advancedFile button {
	margin-left: 0;
}


.label .info .infoI {
	left: 0;	
}

.field select:not([multiple]) {
	-webkit-appearance: none;
}

.colCount2 .group_cell, .colCount3 .group_cell, .colCount4 .group_cell, .colCount5 .group_cell, .colCount6 .group_cell {
	float: none;
	width: 100%;
}

.selectLabelForMobileBlockifyTable {
	display: none;
}

/*** Tables ***/

table.blockifyTable {
	border: none;
}

table.blockifyTable thead {
	display: none;
}

table.blockifyTable tr {
	display: block;
}

table.blockifyTable tr:not(:last-child):after, .withRepetitionCtrl table.blockifyTable:after, table.blockifyTable .blockifyTable_selectRow:before {
	content: "";
	display: block;
	height: 0.15em;
	background: #cccccc;
	clear: both;
}

table.blockifyTable tr:not(:last-child):after {
	margin: 1.5em 0.5em 0.5em 0.5em;
}

.withRepetitionCtrl table.blockifyTable:after  {
	position: relative;
	top: 0.5em;
}

table.blockifyTable .blockifyTable_selectRow label {
	display: block !important;
	padding: 0 0 0.5em 0;
	font-weight: normal;
}

table.blockifyTable .blockifyTable_selectRow:before {
	background-color: transparent;
	border-top: 1px dashed #cccccc;
	padding-top: 0;
}

table.blockifyTable td {
	display: block;
}

table.blockifyTable td:before {
	display: block;
	content: attr(data-label);
	font-weight: normal;
	padding: 0.5em 0;
}

table.blockifyTable td {
	border: none;
	clear: both;
}

table.blockifyTable td input {
	float: left;
}

table.blockifyTable td input[type="text"], table.blockifyTable td textarea, table.blockifyTable td input[type="password"] {
	font-size: 1em;
	padding-bottom: 0.4em;
	padding-left: 1em;
	padding-right: 1em;
	padding-top: 0.6em;
	border-radius: 0.25em;
	border: 1px solid #bbbbbb;
}

.ui-dialog.helpLink_overlay {
	width: 98% !important;
	margin-left: 1% !important;
}

.ui-dialog{
	max-width: 100%;
}

/* ****** hidden input fields for AUTT ******* */
input.hidden {
	display: none;
}
