/**
 *  THIS STYLE SHEET IS A BASE STYLE SHEET FOR ALL FORMS.
 *
 *  THIS FILE SHOULD NOT BE MODIFIED!!!
 *
 *  USE AN INDIVIDUAL FORM TEMPLATE'S STYLE SHEET TO 
 *  OVERRIDE THIS FILE OR PROVIDE OTHER FORM-SPECIFIC 
 *  CSS RULES.
 *  
 */
 
/* FORM CONTROL DEFAULTS */
 
/* this is the wrapper <div> around the actual form */ 
.cms-form-wrapper {
	border: solid 1px #dee2e6 !important; 
	border-radius: 10px; 
	margin-bottom: 50px;
	margin-top: 10px; 
	padding: 20px;     
 }

/* when a form is loaded via shortcode, we want the wrapper 
   to align with the rest of the page/post body as it appears
   more natural
 */
.cms-form-wrapper.flush  {
	border: none !important;
	padding: 0px;
}

/* the Step 1 of N */
.cms-form-progress-wrapper {
    display: block;
}
.cms-form-progress-heading { }
.cms-form-progress-background {
    background-color: #b1ecff;
    border-radius: 5em;
    color: #000;
    height: 25px;
    margin-bottom: 20px;
    width: 100%;
}
.cms-form-progress-bar {
    background-color: blue;
    border-radius: 0 5em 5em 0;
    color: #FFF;
    height: 100%;
    padding-left: 5px;
    text-align: center;
}

/* ie: fields marked with asterisk..... */
.cms-form-required {
    margin-bottom: 10px;
    margin-top: 10px;
}
.cms-form-wrapper sup {
	color: #F00;
	font-size: 11px;
	font-weight: 500;
}

/* the error label that is shown below form/fields in data validation */
label.cms-form-error {
	color: #F00;
	display: block;
	font-weight: 500;
}

/* the field styling when input controls fail data validation */
input.cms-form-error,
select.cms-form-error,
textarea.cms-form-error {
	background-color: #f8d7da;
	background-color: #fbf7f7;
}

/* the multi-step and single-step form navigation buttons are initially hidden */
.cms-button-backward,
.cms-button-forward,
.cms-button-submit {
    display: none;
}

/* the multi-step and single-step form navigation buttons when they are disabled */
.cms-button-backward:disabled,
.cms-button-forward:disabled,
.cms-button-submit:disabled {
	background-color: #808080 !important;
	color: #000 !important;
	pointer-events: all;
	opacity: 1.0 !important;
}

/* the multi-step and single-step form navigation buttons when they are disabled and mouse hovered over */
.cms-button-backward:hover:disabled,
.cms-button-forward:hover:disabled,
.cms-button-submit:hover:disabled {
	cursor: not-allowed !important;
}

/* the container for showing responses from server when forms are POSTed via Ajax */
.cms-ajax-response {
	display: none;
	margin-top: 10px;
	margin-bottom: 50px;
}

/* the container that shows the Blesta user login form */
.cms-login-wrapper {
	display: none;
}

/* fields on the form */
.cms-form-body .form-control {
	height: 34px;
}

/* checkbox and radio inputs that are readonly should not be selectable by user */
.cms-form-body input[type=checkbox][readonly],
.cms-form-body input[type=radio][readonly] {
    pointer-events: none;
}

/* select inputs that are readonly should not allow option selections by user */
.cms-form-body select[readonly] option, select[readonly] optgroup {
    display: none;
}

/* labels for readonly radios/checkboxes */
.cms-form-body .form-check-input:disabled ~ .form-check-label, 
.cms-form-body .form-check-input[disabled] ~ .form-check-label {
    cursor: default;
    opacity: 1.0;
}

/* numeric/currency inputs should only be so wide */
.cms-form-body .currency { width: 100px !important; }
.cms-form-body .numeric { width: 100px !important; }

/* text areas */
.cms-form-body textarea {
  min-height: 150px; /* Forces a minimum height */
  height: auto;      /* Allows it to grow if content expands */
}

/* form movement buttons */
.cms-form-buttons {
	clear: both;
	margin-top: 20px;
	margin-bottom: 20px;
}

/* required field footnote */
.cms-plus-required-field-footnote {
	clear: both;
    color: #808080;
    font-size: 8pt;
    font-style: italic;
	margin-top: 20px;
}
.cms-plus-required-field-footnote sup {
    color: #F00;
    font-weight: 700;
}

/* default styling for showing fields using Bootstrap
   grid model (ie: rows, cols, etc) */
.cms-form-body .field-group-header {
	background-color: #f0f090;
	color: #000;
	margin-top: 5px;
	margin-bottom: 5px;
	margin-left: 1px;
	margin-right: 1px;
}

.cms-form-body .field {
	margin-left: 1px;
	margin-right: 1px;
	margin-top: 10px;
	text-align: left !important;
}

.cms-form-body .field .text-muted {
	color: #00F !important;
	font-size: 80%;
	font-style: italic;
}

/* force hide all form navigation buttons on 
   initial page load */
.cms-button-backward,
.cms-button-change,
.cms-button-forward,
.cms-button-review,
.cms-button-submit {
	visible: false;
}

/* FORM FILL, REVIEW, VIEW TEMPLATE DEFAULTS */

table.review,
table.view,
table.email {
    border: none;
    border-spacing: 2px;
    padding: 2px;
    width: 100%;
}

table.email {
    font-size: 10pt;
}

table.review td,
table.view td,
table.email td {
    border-bottom: solid 1px #dee2e6; 
}

table.email .no-border {
    border: none; 
}

table.review td:nth-child(2),
table.view td:nth-child(2),
table.email td:nth-child(2) {
    color: #F00;
    text-align: right; 
    width: 33%;
}

table.review-total,
table.view-total,
table.email-total {
    border: none;
    border-spacing: 2px;
    margin-top: 20px;
    padding: 2px;
    width: 100%;
}

table.review-total td,
table.view-total td,
table.email-total td {
    text-align: right; 
}

table.review-total td:nth-child(1),
table.view-total td:nth-child(1),
table.email-total td:nth-child(1) {
    font-weight: 700;
    padding-right: 5px;
}

table.review-total td:nth-child(2),
table.view-total td:nth-child(2),
table.email-total td:nth-child(2) {
    border: solid 1px #dee2e6; 
    border-radius: 10px;
    color: #F00;
    font-weight: 700;
    width: 150px;    
}


p.review-invoice-notice {
    color: #F00;
    font-size: 8pt;
    font-style: italic;
}
