/* DO NOT EDIT THIS CSS, COPY IT ONLY TO YOUR OWN CSS FILE */
/*--Default Layout Styling ------------------*/
html, body { background:#fff; font-family: 'Montserrat', sans-serif; color:#000; height: 100%; }

body { display:flex; flex-direction:column; }

.wrapper { flex: 1 0 auto; }

footer { flex-shrink: 0; }

a { color:#000; text-decoration:underline; }

img { display:inline-block; max-width:100%; height:auto !important; }

ul { margin:0; padding-left:20px; list-style-type:disc; }

ul#fields, li#FormFields ul, 
#AdditionalFormFields ul, #Invoice_Form, .creditCardPayment ul, #registration-details ul, li.primary ul, li.additional ul,
#questions, .transactionalForm, .transactionalForm ul { list-style:none; padding:0; margin:0; }

.container { width:680px; margin:0 auto; }

#report .container { width:auto; max-width:900px; }

footer { font-size:14px; line-height:56px; text-align:center; }
footer a { text-decoration:none; }

header { padding:10px; }

.content { padding:30px 0; }

/*-- Heading styles -------------------------*/
h1, h2, h3, h4, h5, h6 { margin:0 0 15px; font-weight:500; }

h1 { font-size:32px; line-height:36px; }
h2 { font-size:25px; line-height:30px; }
h3 { font-size:20px; line-height:24px; }
h4 { font-size:16px; line-height:20px; }
h5 { font-size:14px; line-height:18px; }
h6 { font-size:12px; line-height:16px; }

p, ul, ol { margin:0 0 15px; font-size:16px; line-height:20px; }


/*-- Submit Buttons -------------------------*/
/* These will always be text (Except for the save button in survey) */
.btn-style, #options-dialog .button { float:right; line-height:40px; border-radius:100px; padding:0 30px; font-size:16px; font-weight:bold; color:#ffffff; text-decoration:none; cursor:pointer; background:#008375 ; }
.btn-style:hover, .btn-style.selected, #options-dialog .button:hover { box-shadow: 0 8px 6px -6px #ccc; }

.buttons .right, #event-form .remove { float:right; }

.add, .back, .refresh, #options-dialog #cancel { float:left; }

.engage-save-button, .options { cursor:pointer; float:right; margin-right:10px; }

.buttons.disabled { display:none; }


/*-- DEFAULT SECTION STYLING ----------------------*/
#IntroText, #FormFields { margin-bottom:20px; }


/*-- DEFAULT INPUT STYLING ------------------*/
.field::before, .field::after { content: ""; display: table; }
.field::after { clear: both; }
.field::before, .field::after { content: ""; display: table; }

.field-text span.required { color:red; }

.field-value, .survey-answer { position:relative; }
.field-value em.format { display:none; }

img.ui-datepicker-trigger { position:absolute; right:10px; top:7px; }

.qq-upload-button { position:relative !important; box-shadow:none !important; height:29px !important; }

input[type=text], textarea, select { font-family: 'Montserrat', sans-serif; width:100%; box-sizing:border-box; border:1px solid #000; box-shadow:none; font-size:14px; line-height:18px; padding:10px; color:#000; -webkit-appearance:none; -moz-appearance:none; border-radius:3px; }
input[type=text]:focus, textarea:focus, select:focus { outline:none; }

select { background:url(dropdown.png) center right no-repeat #fff; padding-right:20px; }

select::-ms-expand {
	display: none;
}

/* Fancy radio/checkbox CSS */

/* To allow for the positioned checkbox / radio */
.field td, .survey-answer td, .selectquestion.other, .field-value { position:relative; }


/* this is for survey quesitons */
label.empty { display:none; }

.rating label.empty, .netpromoterscore label.empty { display:block; }



.checkbox input,
.checkboxlist input,
.radiolist input,
.vertical input { float:left; margin-top:2px; }

label { font-size:16px; line-height:20px; }

.checkbox label,
.checkboxlist label,
.radiolist label,
.vertical label,
.booleanfield label { display:block; margin-left:30px; color: #000; }

.radiolist td,
.checkboxlist td,
.booleanfield td { padding:0 20px 10px 0; }

div.other { overflow:hidden; margin-bottom:10px; }
.other label { margin-bottom:5px; }


/*-- FORM STYLING ---------------------------*/
#form .validation { display:none; }

#form .field { margin-bottom:20px; }

#form .beside .field-text { float:left; width:35%; }
	#form .field .field-text p { margin-bottom:5px; }
	#form .beside .field-text p { margin-bottom:0; margin-top:5px; }
	
	#form .beside .field-value { margin-left:40%; }
	
	#form .error { font-size:13px; color:red; padding:5px 0; }
	#form .beside .error { margin-left:40%; }
	
	
/*-- EVENT STYLING -------------------------*/
#event .validation { display:none; }

#event .creditCardPayment .validation { display:block;  }
	#event .creditCardPayment .validation div.fail { border:1px solid red; padding:10px; margin-bottom:20px !important; color:red !important; } 
	#event .creditCardPayment .validation p { font-weight:600; font-size:12px; margin-bottom:5px; }
	#event .creditCardPayment .validation ol { margin:0; font-size:12px; padding-left:20px; }
	#event .creditCardPayment .validation li { margin-bottom:5px; }
	#event .creditCardPayment .validation li label { font-size:12px; }
	#event .creditCardPayment .validation li:last-child { margin:0; }

#event .field { margin-bottom:20px; }
	
#event .beside .field-text { float:left; width:150px; }
	#event .field .field-text p { margin-bottom:5px; }
	#event .beside .field-text p { margin-bottom:0; margin-top:5px; }
	
	#event .beside .field-value { margin-left:180px; }
	
	#event .error { font-size:13px; color:red; padding:5px 0; }
	#event .beside .error { margin-left:180px; }
	#event #Captcha .error { margin-left:0; }

.additional-contacts, #registration-details .additional { margin-bottom:30px; padding-top:30px; border-top:1px dotted #eee; }
	.additional-contacts .contact-heading { margin-bottom:20px; }

#Invoice { margin-bottom:30px; }
	#Invoice table td { border-bottom:1px solid #eee; padding:10px 0; }
		#Invoice table td.amount { text-align:right; }
		#Invoice table td.total { font-weight:600; }

#payment-selector { margin-bottom:15px; overflow:hidden; }		
.invoice-button,.creditcard-button { float:left; margin-right:10px; } 

#Card_Help { margin-bottom:30px; }

#Card_Expiry .select2-container { width:250px; }
#s2id_ExpiryMonth { margin-right:15px; }

#registration-details .field-text { width:200px; }
#registration-details .field-value { margin-left:230px !important; font-size:14px; line-height:18px; font-weight:600; border:1px solid #eee; padding:5px 10px; height:30px; box-sizing:border-box; }


/*-- SURVEY STYLING ---------------------*/
#survey .validation, #survey .validation li { display:none; }

#survey .validation { color:red; margin-bottom:20px;  }
#survey .validation p { font-weight:bold; margin: 0; }
#survey .validation li { margin-bottom:10px; }

.progressbar .background { border:1px solid #eee; height:7px; border-radius:5px; }
	.progressbar .background .bar { background:#eee; height:7px; }
.progressbar p { font-size:12px; line-height:16px; text-align:right; }

#survey #PageIntroText, #survey .field, #survey .htmlsection {  margin-bottom:25px; }

#survey span.required { color:red; }
	
#survey .beside .q-container { float:left; width:35%; }
	
	#survey .beside .survey-answer { margin-left:40%; }

#survey .field .error { font-size:16px; padding:5px 0; background:url("icon-error.png") no-repeat left center; background-size:20px; min-height:20px; padding-left:30px; }
#survey .beside .error { margin-left:40%; }
	
#survey .number { float:left; font-size:14px; line-height:18px; }
#survey .question.push-left { margin-left:30px; }	

table.rating { background:#FFF; }
.rating td, .rating th { padding:10px; border:1px solid #eee; }
.rating input, .rating label { display:block; margin:0 auto; text-align:center; }

.vertical input { float:left; margin-top:2px; }
.vertical label { font-weight:normal; margin:0 0 0 30px; text-align:left; }

/*selectgroup questions */
table.selectgroup, table.rankinggroup, table.netpromoterscore { background:#FFF; width:100%; }
.selectgroup td, .selectgroup th, .rankinggroup td, .rankinggroup th, .netpromoterscore td, .netpromoterscore th { padding:10px; border:1px solid #eee; }

.netpromoterscore thead tr:first-child th:first-child { border-right:none; }
.netpromoterscore thead tr:first-child th:last-child { border-left:none; }

.selectgroup thead th, .rankinggroup thead th, .netpromoterscore thead th { text-align:center; }
.selectgroup input, .selectgroup label, .rankinggroup input, .netpromoterscore input { display:block; margin:0 auto; text-align:center; }
.selectgroup input, .rankinggroup input, .netpromoterscore input { float:none; }

.textboxlist td { padding:5px; }
.textboxlist input { text-align:left; }

table th, table td { font-size:14px; line-height:18px; }

table thead th { font-weight:400; }
table tbody th { font-weight:bold; }

.uq-rating-draggable-container, .uq-rating-droppable-container { list-style:none; padding:0; margin:0 0 10px; clear:left; }
.uq-rating-draggable-container .uq-draggable-item { background-color:#000; border-radius: 3px; cursor: move; float: left; margin: 0 10px 10px 0; padding: 10px; color:#fff; z-index:100; }

.uq-rating-droppable-container li { margin-bottom:5px; border:1px solid #eee; }
.uq-rating-droppable-container table { width:100%; }
.uq-rating-droppable-container table td { border:none;  }
.uq-rating-droppable-container table td:first-child { width:20px; }
.uq-item-hover { background:#eee; }
.uq-droppable-desc { font-size:14px; line-height:18px; margin-bottom:10px; }

.uq-droppable-desc { text-align:left; }
.uq-rating-draggable-container .uq-item-number { display: none; }
.uq-rating-draggable-container .uq-draggable-item td{ border:none; padding:0 !important; width:auto; font-size:14px; line-height:18px; }
.uq-rating-droppable-container .uq-draggable-item td { width:auto; }

.slider select, .slider .select2-container { display:none; }

.selectedquestion-span-slider { display: block; margin: 0 auto 10px; text-align: center; }
.slider-container .left-span { float:left; margin-bottom:10px; }
.slider-container .right-span { float:right; margin-bottom:10px; }
.slider-container .slider-span { margin:0 20px; display:block; clear:both; }

.slider-ui.ui-slider.ui-slider-horizontal {
    background-color: #eee;
    border-radius: 5px;
    box-shadow: none;
    height: 10px;
    margin-top: 15px;
}

.slider-ui div.ui-slider-range {
    background: #332C4E;
    border-radius: 5px 0 0 5px;
    height: 10px;
}

.slider-ui .ui-slider-handle.ui-state-default {
    background: #000 none repeat scroll 0 0;
    border-radius: 15px;
    height: 20px;
    width: 20px;
    z-index: 1;
}

/*-- REPORT STYLING ---------------------*/
#asatHeader { margin-bottom:20px; }
.reportASAT { display:block; clear:both; font-size:14px; line-height:20px; margin-bottom:10px; }

#report .field { margin-bottom:30px; padding-bottom:30px; border-bottom:1px dotted #eee; }

#report .number { font-weight:bold; font-size:12px; margin-bottom:5px; }
#report .question, .map { margin-bottom:10px; }

#report .table-graph { width:100%; }
.table-graph td, .table-graph th { padding:10px; border:1px solid #eee; }

.table-graph th { font-weight:bold; }

#report .table-graph:first-child { margin-bottom:10px; }

#report .mobile-label { display:none; }

.dialog { position:fixed; min-width:420px; background-color:#FFFFFF; padding:30px; border-radius:20px; border:2px solid #ddd; }

.dialog h3 {  margin-top: 0; background: url(http://engage.ubiquity.co.nz/assets/images/icon-set/move_25.png) right 7px no-repeat; font-size: 30px; font-weight: bold; cursor: move; line-height:1.1em; }

.form-field { margin:0 0 15px; }


@media only screen and (max-width: 700px) {
	.container { width:auto; margin:0 20px; }
}

@media only screen and (max-width: 480px) {

/*-- Submit Buttons -------------------------*/
.engage-save-button { margin-right:5px;  }


/*-- DEFAULT INPUT STYLING ------------------*/
.radiolist td,
.checkboxlist td { display:block; padding:0 0 10px; }

.rating input[type=radio] + label.empty:before, .rating label.empty,
.netpromoterscore input[type=radio] + label.empty:before, .netpromoterscore label.empty{ float:left; margin:0; }


/*-- FORM STYLING ---------------------------*/
#form .beside .field-text { float:none; width:auto; margin-bottom:5px; }
	#form .field-text p { margin-top:0; }
	
	#form .field-value, #form .field .error { margin-left:0 !important; }
	
/*-- EVENT STYLING -------------------------*/
#event .beside .field-text { float:none; width:auto; margin-bottom:5px; }
	#event .field-text p { margin:0; }
	
	#event .beside .field-value, #event .beside .error { margin-left:0; }


	#Invoice table td { border-bottom:1px solid #eee; padding:10px 0; }
		#Invoice table td.amount { text-align:right; width:30%; }
		#Invoice table td.total { font-weight:600; }

#payment-selector { margin-bottom:15px; }		
.invoice-button,.creditcard-button { float:left; margin-right:10px; } 

#Card_Help { margin-bottom:30px; }

select#ExpiryMonth, select#ExpiryYear { width:100%; }
select#ExpiryMonth { margin-right:0; margin-bottom:10px; }

#registration-details .field-text { }
#registration-details .field-value { margin-left:0 !important; }


/*-- SURVEY STYLING ---------------------*/
#survey .beside .q-container { float:none; width:auto; }
	
#survey .beside .survey-answer, #survey .beside .error { margin-left:0; }


table.selectquestion, .drilldowngroup  { width:100%; }
	table.rating thead, table.selectgroup thead, table.rankinggroup thead, table.netpromoterscore thead  { display:none; }
	
	table.rating, table.selectgroup, table.rankinggroup, table.netpromoterscore { border-bottom:1px solid #eee; }
	
	.rating td, .rating th, .selectgroup td, .selectgroup th, .rankinggroup td, .rankinggroup th, .radiolist td, .checkboxlist td, .netpromoterscore td, .drilldowngroup td { display:block; width:auto !important; border-bottom:none; }
	
	.drilldowngroup td { margin-left:0 !important; }
	
	.radiolist td, .checkboxlist td { padding:0 0 10px; }
	.rating td, .rating th, .selectgroup td, .selectgroup th, .rankinggroup td, .rankinggroup th, .netpromoterscore td, .netpromoterscore th { padding:5px 10px; }
	
	.uq-rating-droppable-container td { display:inline-block; padding:10px; }
	
	.radiolist input, .selectquestion input { float:left; margin-top:2px; }
	label.mobile-label { display:block !important; margin-left:30px; text-align:left; }
	
	.vertical label.mobile-label { display:none !important; }
	
	.spreadsheet label.mobile-label { margin:0 0 5px; }
	
#registration-details .field-text { float:none; max-width:none; }
#registration-details .field-value { margin-left:0; }

.selectgroup input[type=radio] + label.empty:before,
.rankinggroup input[type=radio] + label.empty:before,
.selectgroup input[type="checkbox"] + label.empty::before { float:left; }
	
	/*-- REPORT STYLING ---------------------*/
	#report .mobile-table { border-bottom:1px solid #eee; }
	#report thead { display:none; }
	#report .mobile-table td { display:block; width:auto !important; border-bottom:none; }
	#report .mobile-label { display:block; font-weight:bold; margin-left:0; }
}

