/* Traditional layout with labels to the left of the fields and grey box labels */
/* Version 13.01 (##004##) */

@import url('https://fonts.googleapis.com/css?family=Varela+Round');

.fcp_wrapper *, .fcp_wrapper *:after, .fcp_wrapper *:before {box-sizing:border-box !important;}
.fcp_wrapper div, .fcp_wrapper span, .fcp_wrapper input, .fcp_wrapper select, .fcp_wrapper textarea,
.fcp_wrapper fieldset, .fcp_wrapper legend, .fcp_wrapper label, .fcp_wrapper img
    {margin:0; padding:0; line-height:1; float:none; vertical-align:baseline; opacity:1;}
.fcp_wrapper input, .fcp_wrapper label, .fcp_wrapper select, .fcp_wrapper textarea, .fcp_wrapper span
    {display: inline;}
.fcp_wrapper div, .fcp_wrapper form, .fcp_wrapper fieldset
    {display: block;}

/* Colours */

.fcp_wrapper {color:#222222; background-color: #f4f6f7; border:1px solid lightgray;}

div.fcp_line input[type="text"], div.fcp_line input[type="email"], div.fcp_line input[type="number"],
    div.fcp_line input[type="password"], div.fcp_line input[type="file"], div.fcp_line textarea
        {border:1px solid #f1f1f1; box-shadow: inset 1px 1px 0px rgba(0,0,0,0.3); background-color: #fefefe; transition:border-color 0.3s ease 0s; }
input::placeholder        {font-size: small;}
div.fcp_line input:hover, div.fcp_line textarea:hover, div.fcp_line select:hover {outline:none; border-color:#0079C1;}
div.fcp_line input:focus, div.fcp_line textarea:focus, div.fcp_line select:focus {outline:none; border-color:#0079C1; box-shadow: inset 0 1px 2px rgba(0,0,0,0.3);}
div.fcp_line select {border:1px solid #f1f1f1; box-shadow: 1px 1px 0px rgba(0,0,0,0.3); background-color: #fefefe; transition:border-color 0.3s ease 0s;}

div.fcp_line label {background-color: #e5e5e5; color: #3e3e3e; box-shadow: 1px 2px 3px 2px rgba(0,0,0,0.3); text-shadow: 0 1px 0 #fff;}

div.fcp_line .fcp_error_field       {background-color: #fbdbdf !important; }
div.fcp_line .fcp_error_field:hover {border:1px solid #e9322d; }
div.fcp_line .fcp_error_field:focus {border:1px solid #e9322d; box-shadow: inset 0 1px 2px #f8b9b7; }

.fcp_border {border:1px solid #DADADA;}

.fcp_error_text {color:red; }

.tooltip-inner {color:#333 !important; background-color:#f6fcff !important; border:1px solid gray;border-radius: 3px;}
.tooltip.top .tooltip-arrow {border-top-color:black !important;}
    
/* Fonts */

div.fcp_wrapper           {font-family:Helmet, Freesans, Helvetica, Arial, sans-serif; font-size:14px; font-style:normal; font-weight:normal;}
div.fcp_line label        {font-family: 'Varela Round', sans-serif; font-size:15px; font-style:normal; font-weight:normal;}
div.fcp_line input, div.fcp_line select, div.fcp_line textarea {font-size:18px; font-style:normal; font-weight:normal;}
div.fcp_line input::placeholder {font-size: small;}
.fcp_fixed_heading        {font-family: 'Varela Round', sans-serif; font-size:40px; font-style:normal; font-weight:bold; }
.tooltip-inner            {font-family:Arial, sans-serif; font-size:14px; font-style:normal; font-weight:normal;}
.fcp_error_text           {font-size:13px; font-style:normal; font-weight:normal;}
.fcp_form input.button    {font-family: 'Varela Round', sans-serif; font-size:18px; font-style:normal; font-weight:bold;}
#fcp_spinner.fcp_error_msg .fcp_error_text {font-size:14px; font-style:normal; font-weight:normal;}

/* Text error messages */

span.fcp_error_text       {display:block; }
#fcp_spinner.fcp_error_msg .fcp_error_text  {margin-left:0;}

/* Icon error messages */

.fcp_error_icon
    {display:inline-block; position: absolute; top:8px; right:5px; cursor: pointer;
        background: url('css_images/error-yellow-20.png') left center no-repeat; height: 20px; width: 20px; }
.fcp_list .fcp_error_icon, .fcp_captcha .fcp_error_icon  {right:-20px;}
.fcp_checkbox  .fcp_error_icon     {top:-15px;}
.fcp_checkbox_m .fcp_error_icon    {right:-15px;}
.fcp_error_icon2 {background: url('css_images/error-red-20.png') left center no-repeat;}

/* Popover error messages */

.fcp_error_over  {position: absolute; top: 0; right: 0}
.popover-content {display:none !important;}
.popover-title   {color:#f90600 !important; background-color:white !important; padding:0 !important; border-radius:3px !important;
    line-height:1 !important; border-bottom:none !important; background-image:none !important;}

/* Mandatory fields */

.fcp_req>label:before {display: inline-block; content: ""; width: 8px; height: 8px; padding: 0 0 15px 4px; 
    background: transparent url(css_images/star-16-black.png) center top / 8px no-repeat; } 

/* Structure and size */

div.fcp_wrapper     {max-width:95%; min-height:100px; padding:10px; margin: 0 auto;}
.fcp_form           {margin:0;}
div.fcp_line        {clear:left; padding:.5em 0;}
div.fcp_inline      {display:inline-block; vertical-align:top; margin-right:1%; white-space: nowrap; overflow: hidden;}
div.fcp_error_outer {display:inline; vertical-align: top; position: relative;}

div.fcp_line label     {display: inline-block; vertical-align: top; text-align: right; line-height:20px; width: 25%;
                     margin: 0 0 .2em 0; padding:7px 1% 7px 0; border-radius: 4px; }
div.fcp_line.fcp_multilist label {vertical-align:top;}

div.fcp_line input, div.fcp_line select, div.fcp_line textarea { height:36px; padding:1px 3px; border-radius: 3px; margin:0;}
div.fcp_line select   {width:auto; border-radius:3px; }
div.fcp_line input    {width:73%; }
div.fcp_line textarea {width:73%; height:auto; min-height:28px; padding:8px 3px 8px 3px; }

div.fcp_date input    {max-width: 9em;}

div.fcp_inline label  {padding-left:1%; width:auto; min-width: 25%; max-width: 50%;}

div.fcp_line input[type="file"] {line-height: normal !important; height: auto !important; padding: 6px; font-size: initial;}

/* radio button and checkbox structures */

div.fcp_line input[type="checkbox"], div.fcp_line input[type="radio"]
    {width:auto; margin:0 5px 0 0; vertical-align:baseline; height: auto; border:none; box-shadow: none;}
div.fcp_radio input:hover, .fcp_checkbox input:hover
    {border:none;}

span.fcp_radio_h         {display: inline-block; margin: 0 10px 0 0; }
div.fcp_radio_h_inner    {display: inline-block; width: 73%; padding: 7px 0; }    
div.fcp_radio_h_inner .fcp_radio_h label  {display:inline-block; white-space:nowrap; box-shadow: none; background-color: transparent; padding:0;}

div.fcp_radio_v label    {width:auto; padding:0;}
span.fcp_radio_v         {display: block; line-height: 1.4;}

div.fcp_checkbox label   {display:inline-block;}
div.fcp_checkbox label   {box-shadow: none; background-color: transparent; line-height: inherit; vertical-align: middle;}
span.fcp_checkbox_m      {margin-left:10px; white-space: nowrap; line-height: 1;}
div.fcp_checkbox_inner   {display:inline-block; width:73%;}
div.fcp_checkbox_m label {vertical-align: top; }
span.fcp_checkbox_m label {vertical-align: middle; width:auto; }

div.fcp_checkbox_l input.fcp_lcb {margin-left:5px; }
div.fcp_checkbox_l label.fcp_lcb {width:auto; text-align:left; }

div.fcp_checkbox_r label {display:inline-block; width:auto; }

div.fcp_radio_v label    {box-shadow: none; background-color: transparent; line-height: inherit; vertical-align: middle;}

/* fixed texts */

.fcp_fixed_text       {border-bottom: 1px solid lightgray; margin-bottom:8px; width:100%;}
.fcp_fixed_heading    {text-align:left; padding-bottom:10px; background-color:transparent; color: #516b77; box-shadow:none; }

/* magic word */

div.fcp_captcha           {text-align:center;}
div.fcp_magic_inner       {display:inline-block; min-width: 30%; padding: 3px 10px 10px 10px; border:1px solid #d3d3d3; border-radius:3px;
                           background-color: #f9f9f9; }
div.fcp_magic_inner input {width:15em !important;}
div.fcp_magic_prompt      {text-align: left;}
div.fcp_magic_prompt span.fcp_info {float:right;}

/* secure-image captcha */

div.fcp_captcha input     {display:inline-block; vertical-align:middle; }
div.fcp_captcha_inner     {display:inline-block; padding: 3px 10px 10px 10px; background-color: #f9f9f9; border:1px solid #d3d3d3; border-radius:3px;}
img.fcp_captcha_img       {display:inline-block; vertical-align:middle; margin:0 5px; border:1px solid #d3d3d3; border-radius:3px;}
span.fcp_captcha_reload   {display:inline-block; vertical-align:middle; height:34px; width:34px; 
                           background:#25b7d3 url('css_images/reload-32.png') center center no-repeat; cursor:pointer;
                           border: 1px solid #fff; border-radius: 50%; box-shadow: 1px 2px 3px 2px rgba(0,0,0,0.3);}
div.fcp_captcha_prompt    {text-align: left;}
                         
/* image captcha */

div.fcp_image_inner       {display:inline-block; background-color:#f9f9f9; border:1px solid #d3d3d3; border-radius:5px; }
div.fcp_image_inner img   {display:inline; vertical-align: middle; cursor:pointer; transition:border 0.7s;}
img.fcp_inactive          {border:2px solid transparent;}
img.fcp_active            {border:2px solid #0079C1 !important; border-radius:3px;}
div.fcp_image_prompt      {text-align: left; padding-left: 5px;}

/* recaptcha */

div.fcp_nocaptcha .fcp_error_msg  {margin-left:0;}
div.g-recaptcha                   {display:inline-block;}
#recaptcha_widget_div	          {display:inline-block; }
#recaptcha_area, #recaptcha_table {line-height: 0!important;}

/* fieldsets */

fieldset.fcp_fieldset {display:inline-block; margin:5px; padding:5px; border:none; vertical-align:top;}
fieldset.fcp_fieldset legend {float:left; line-height:1em; background: transparent; color: #516b77;}
fieldset.fcp_wide {display:block;}
fieldset.fcp_fieldset.fcp_border {border: 2px solid white; border-radius: 4px; box-shadow: inset 2px 2px 2px rgba(0,0,0,0.3); padding:10px;}

/* Send Button */

.fcp_form input.button {display: inline-block; float:right; width: auto !important; height:auto !important; cursor:pointer;
    text-align: center; text-decoration: none; text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.33); color: white;
    padding: 8px 30px; margin:2px; border:none; border-radius: 3px;
    background-color: #2d80b7; background-image: none; transition: background-color .3s ease-out;
    box-shadow: 2px 3px 3px 2px rgba(0,0,0,0.3);}
.fcp_form input.button:hover,
.fcp_form input.button:focus {
    background: #3a95da; color: white; text-decoration: none; }
.fcp_form input.button:disabled 
	{opacity:0.5; cursor:default; }

#fcp_spinner {float:right; margin:8px 15px;}
.fcp_spinner {background:url('css_images/spinner.gif') no-repeat left center !important; height:16px; width:16px;}

/* info buttons */

.fcp_wrapper span.fcp_info {display:inline-block; margin:0 5px; vertical-align: bottom;
           background:#25b7d3 url('css_images/question-16.png') left center no-repeat; height:18px; width:18px;
           border: 1px solid #fff; border-radius: 50%; box-shadow: 1px 2px 3px 2px rgba(0,0,0,0.3);}

/* Tooltips */

.tooltip       {padding:4px; position:absolute; z-index:9999; max-width:400px; border-radius:3px !important;
                background:transparent !important; }
.tooltip-inner {padding: 4px !important;}
.tooltip.in    {opacity: 1 !important;}
.tooltip-arrow {position: absolute; width: 0; height: 0; border-color: transparent; border-style: solid;}		   
.tooltip.top .tooltip-arrow {bottom: -1px; left: 50%; margin-left: -5px; border-width: 6px 6px 0; border-top-color: gray !important;}

/* Responsive */

@media screen and (max-width: 800px) 
{
    div.fcp_inline
        {display:block; width:auto !important; margin-right:0;}
    div.fcp_checkbox_l input[type="checkbox"]
        {margin-left:0;}
    div.fcp_line input:not([type="radio"]):not([type="checkbox"]),
    div.fcp_line textarea
        {width:100% !important; }
    div.fcp_line label
        {display:block; width:100%; text-align:left; box-shadow: none; background-color: transparent; margin: 0; line-height: 16px;}
    div.fcp_radio_v_inner label,
    div.fcp_checkbox_inner label,
    div.fcp_checkbox_l label,
    div.fcp_checkbox_r label,
    div.fcp_checkbox_m label,
    div.fcp_radio_h_inner .fcp_radio_h label
        {display:inline; width:auto; white-space: normal;}
    div.fcp_radio_h_inner
        {width:100%;}
    span.fcp_radio_h
        {display:block; line-height: 1.4;}
    fieldset.fcp_fieldset
        {display:block; width:auto !important;}
    div.fcp_width_wrapper {max-width:100% !important;}
}


/* basic Bootstrap Popover support */

.popover {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1010;
	display: none;
	max-width: 276px;
	padding: 1px;
	text-align: left;
	background-color: #fff;
	background-clip: padding-box;
	border: 1px solid #ccc;
	border: 1px solid rgba(0,0,0,0.2);
	border-radius: 6px;
	box-shadow: 0 5px 10px rgba(0,0,0,0.2);
	white-space: normal;
}
.popover.top {
	margin-top: -10px;
}
.popover.right {
	margin-left: 10px;
}
.popover.bottom {
	margin-top: 10px;
}
.popover.left {
	margin-left: -10px;
}
.popover-title {
	margin: 0;
	padding: 8px 14px;
	font-size: 14px;
	font-weight: normal;
	line-height: 18px;
	background-color: #f7f7f7;
	border-bottom: 1px solid #ebebeb;
	border-radius: 5px 5px 0 0;
}
.popover-title:empty {
	display: none;
}
.popover-content {
	padding: 9px 14px;
}
.popover .arrow,
.popover .arrow:after {
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	border-color: transparent;
	border-style: solid;
}
.popover .arrow {
	border-width: 11px;
}
.popover .arrow:after {
	border-width: 10px;
	content: "";
}
.popover.top .arrow {
	left: 50%;
	margin-left: -11px;
	border-bottom-width: 0;
	border-top-color: #999;
	border-top-color: rgba(0,0,0,0.25);
	bottom: -11px;
}
.popover.top .arrow:after {
	bottom: 1px;
	margin-left: -10px;
	border-bottom-width: 0;
	border-top-color: #fff;
}
.popover.right .arrow {
	top: 50%;
	left: -11px;
	margin-top: -11px;
	border-left-width: 0;
	border-right-color: #999;
	border-right-color: rgba(0,0,0,0.25);
}
.popover.right .arrow:after {
	left: 1px;
	bottom: -10px;
	border-left-width: 0;
	border-right-color: #fff;
}
.popover.bottom .arrow {
	left: 50%;
	margin-left: -11px;
	border-top-width: 0;
	border-bottom-color: #999;
	border-bottom-color: rgba(0,0,0,0.25);
	top: -11px;
}
.popover.bottom .arrow:after {
	top: 1px;
	margin-left: -10px;
	border-top-width: 0;
	border-bottom-color: #fff;
}
.popover.left .arrow {
	top: 50%;
	right: -11px;
	margin-top: -11px;
	border-right-width: 0;
	border-left-color: #999;
	border-left-color: rgba(0,0,0,0.25);
}
.popover.left .arrow:after {
	right: 1px;
	border-right-width: 0;
	border-left-color: #fff;
	bottom: -10px;
}
