
/* formbox.css -- formbox styles */
/*-----------------------------------------------------------------------------*/
/* Extra small devices (phones, less than 768px)                               */
/* No media query since this is the default                                    */
/*-----------------------------------------------------------------------------*/
/* default | bootstrap4 | compact | flat | mobile */

/* see quirks.css */
form { margin:0; }

div.formbox_wrapper {
	display: inline-block;
	width: 100%;
	padding: 0;
	margin: 0;        
	margin-top: 24px;
	margin-bottom: 12px;
}
	
/* formbox outer container */

/* all themes */
div.formbox {
	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
	/*font-family: Helvetica, Arial, sans-serif;*/ /* leaving this up to bootstrap? */
	font-size:100%;
	font-weight:normal;
/* Montserrat */
/* Lato */
/* Patua+One */
/* Lora */
/* Roboto+Slab */
/* Josefin+Slab */
	font-size: 1rem;
	font-stretch: 100%;
	font-style: normal;
	font-variant-caps: normal;
	font-variant-east-asian: normal;
	font-variant-ligatures: normal;
	font-variant-numeric: normal;
	font-weight: 400;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}

/* theme=default */
div.formbox.default {
	display: inline-block;
	color: #333;
	background: #fff;
	background: #FFFFFF;	/* bootstrap4 */
	text-align: left;
	vertical-align: top;
	padding:0;
	margin: 0 auto;
	border: 1px solid #666;
	border: 1px solid #999;	/* bootstrap4 */
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	box-shadow:			4px 4px 4px 0 #808080;
	-moz-box-shadow:	4px 4px 4px 0 #808080;
	-webkit-box-shadow: 4px 4px 4px 0 #808080;
	/* Set inline-block in ie 6/7 */
	*zoom:1;
	*display:inline;
}

div.formbox.compact {
	box-shadow:			2px 2px 2px 0 #808080;
	-moz-box-shadow:	2px 2px 2px 0 #808080;
	-webkit-box-shadow: 2px 2px 2px 0 #808080;
}

div.formbox.flat {
	border: 1px dotted #f0f0f0;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	padding: 10px 20px 0 20px;
}

div.formbox.mobile {
	border: 1px dotted #eee;
	border-radius: 0;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	xpadding: 10px 20px 0 20px;
}

/* set text and background colors */
.formbox.cyan	{ background-color:#CEFEFF; }
.formbox.yellow	{ background-color:#FFE88C; }
.formbox.orange	{ background-color:#FEE08C; }
.formbox.white	{ background-color:#FFFFFF; } /* default */

.formbox.center { margin-left:auto; margin-right:auto; }

.formbox_body {
	padding: 8px;
	margin: 8px;
}

.formbox p {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	color: #333;
	padding: 0;
	margin: 0;
}

/* form-title */
.formbox .formbox_title,
.formbox.default .formbox_title {
	font-size: 120%;
	font-weight: normal;
	line-height: 1.9em;
	/*min-height: 1.9em;*/
	text-align: center;
	vertical-align: middle;
	color: #fff;
	background-color: white;
	background-color: #2166D3;	/* original title bar color */
	background-color: #66B2FF;	/* old darker blue */
	xbackground-color: #5EBBEB;	/* new lighter blue */
	margin: 0;
	padding: 4px 5%;
	text-shadow: 1px 1px 1px #003399;
	border: none;
	border-radius: 8px 8px 0 0;
	-moz-border-radius: 8px 8px 0 0;
	-webkit-border-radius: 8px 8px 0 0;
}

/* differences from default */
.formbox.bootstrap4 .formbox_title {
	font-size: 1.5em;
	line-height: 1.5em;
	padding: 3px;
	text-shadow: 1px 1px 1px #006699;
}

.formbox.flat .formbox_title {
	font-size:115%;
	font-weight:bold;
	line-height: 24px;
	min-height: 24px;
	text-align: center;
	vertical-align:middle;
	color: black;
	xbackground-color: #2166D3;	/* original title bar color */
	xbackground-color: #66B2FF;	/* old darker blue */
	xbackground-color: #5EBBEB;	/* new lighter blue */
	margin:0;
	padding: 4px 5%;
	xtext-shadow: 1px 1px 1px #003399;
	border: none;
	xborder-radius: 8px 8px 0 0;
	x-moz-border-radius: 8px 8px 0 0;
	x-webkit-border-radius: 8px 8px 0 0;
}

/*
 * formbox_section
 */

div.formbox_section {
	font-size:110%;
	font-weight:bold;
	line-height:110%;
	color:white;
	background: #3498db;
	background-image: -webkit-linear-gradient(top, #3498db, #8AC4EB);
	background-image: -moz-linear-gradient(top, #3498db, #8AC4EB);
	background-image: -ms-linear-gradient(top, #3498db, #8AC4EB);
	background-image: -o-linear-gradient(top, #3498db, #8AC4EB);
	background-image: linear-gradient(to bottom, #3498db, #8AC4EB);
	filter: none;
	text-align:left;
	vertical-align:middle;
	padding: 4px;
	padding: 8px;	/* bootstrap4 */
	margin:4px 4px 0 4px;
	border-radius: 8px 8px 0 0;
	-moz-border-radius: 8px 8px 0 0;
    -webkit-border-radius: 8px 8px 0 0;
}

div.formbox_section img {
	border: none;
	vertical-align: middle;
}

div.formbox_section.compact {
	font-size:110%;
	font-weight:bold;
	line-height:120%;
	color:white;
	background: #3498db;
	background-image: -webkit-linear-gradient(top, #3498db, #8AC4EB);
	background-image: -moz-linear-gradient(top, #3498db, #8AC4EB);
	background-image: -ms-linear-gradient(top, #3498db, #8AC4EB);
	background-image: -o-linear-gradient(top, #3498db, #8AC4EB);
	background-image: linear-gradient(to bottom, #3498db, #8AC4EB);
	filter: none;
	text-align:left;
	vertical-align:middle;
	padding: 6px 4px 4px 8px;
	margin: 6px 3px 0 3px;
	border-radius: 8px 8px 0 0;
	-moz-border-radius: 8px 8px 0 0;
    -webkit-border-radius: 8px 8px 0 0;
}

div.formbox_section.flat {
	font-size:140%;
	font-weight: bold;
	line-height:140%;
	color: #333;
	background: white;
	filter: none;
	text-align:left;
	vertical-align:middle;
	padding: 12px 8px 4px 8px;
	margin: 12px 12px 18px 12px;
	border-bottom: 1px solid #ccc;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
}
	
div.formbox_section.mobile {
	font-size:140%;
	font-weight: normal;
	line-height:140%;
	color: #333;
	background: white;
	filter: none;
	text-align:left;
	vertical-align:middle;
	padding: 12px 8px 4px 8px;
	margin: 12px 12px 18px 12px;
	border-bottom: 1px solid #ccc;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
}
	
div.formbox_section.expanded:hover,
div.formbox_section.collapsed:hover {
/*
	background: #3cb0fd;
	background-image: -webkit-linear-gradient(top, #3cb0fd, #3498db);
	background-image: -moz-linear-gradient(top, #3cb0fd, #3498db);
	background-image: -ms-linear-gradient(top, #3cb0fd, #3498db);
	background-image: -o-linear-gradient(top, #3cb0fd, #3498db);
	background-image: linear-gradient(to bottom, #3cb0fd, #3498db);
*/	
	background: #8AC4EB;
	background-image: -webkit-linear-gradient(top, #8AC4EB, #3498db);
	background-image: -moz-linear-gradient(top, #8AC4EB, #3498db);
	background-image: -ms-linear-gradient(top, #8AC4EB, #3498db);
	background-image: -o-linear-gradient(top, #8AC4EB, #3498db);
	background-image: linear-gradient(to bottom, #8AC4EB, #3498db);

	text-decoration: none;
}

div.formbox_section.collapsed {
	border:1px solid #3498db;
	border-radius: 8px 8px 8px 8px;
	-moz-border-radius: 8px 8px 8px 8px;
    -webkit-border-radius: 8px 8px 8px 8px;
	margin-bottom:8px;
}

div.formbox_section.expanded {
	border: 1px solid #3498db;
	border-radius: 8px 8px 0 0;
	-moz-border-radius: 8px 8px 0 0;
    -webkit-border-radius: 8px 8px 0 0;
	margin-bottom: 0;
}

.formbox_section_body {
	display:block;
	padding: 0;
	padding: 8px;	/* bootstrap4 */
	margin: 0 4px 4px 4px;
	border: 1px solid #8AC4EB;
	border-radius: 0 0 8px 8px;
	-moz-border-radius: 0 0 8px 8px;
    -webkit-border-radius: 0 0 8px 8px;
}

.formbox_section_body.compact {
	display:block;
	padding:0;
	margin: 0 3px 3px 3px;
	border: 1px solid #8AC4EB;
	border-radius: 0 0 8px 8px;
	-moz-border-radius: 0 0 8px 8px;
    -webkit-border-radius: 0 0 8px 8px;
}
	
.formbox_section_body.flat {
	display:block;
	padding: 0;
	margin: 0 12px 12px 12px;
	border: 1px solid #D6D6D6;
	border: none;
	border-top: none;
	border-radius: 0 0 8px 8px;
	-moz-border-radius: 0 0 8px 8px;
    -webkit-border-radius: 0 0 8px 8px;
	box-shadow:			2px 2px 4px 0 #ccc;
	-moz-box-shadow:	2px 2px 4px 0 #ccc;
	-webkit-box-shadow: 2px 2px 4px 0 #ccc;
	
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
}
	
.formbox_section_body.mobile {
	display:block;
	padding: 0;
	margin: 0 12px 12px 12px;
	border: 1px solid #D6D6D6;
	border: none;
	border-top: none;
	border-radius: 0 0 8px 8px;
	-moz-border-radius: 0 0 8px 8px;
    -webkit-border-radius: 0 0 8px 8px;
	box-shadow:			2px 2px 4px 0 #ccc;
	-moz-box-shadow:	2px 2px 4px 0 #ccc;
	-webkit-box-shadow: 2px 2px 4px 0 #ccc;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
}
	
	
/* formbox_row */

/* default theme */
.formbox .formbox_row {
	display:block;
	filter: none;
	vertical-align: middle;
	padding: 8px 4px;
	margin:4px;
	border: 1px solid #d8d8d8;
	border-radius: 5px;
	-moz-border-radius: 5px;
    -webkit-border-radius: 5px;
	overflow: hidden;
}

/* compact theme - square corners and no margins */
.formbox.compact .formbox_row { 
	margin: 8px 0;
	padding: 2px;
	border: none;
	border-radius: 0;
}

/* flat theme - square corners and no margins */
.formbox.flat .formbox_row { 
	padding: 4px;
	margin: 0 0 8px 0;
	border: none;
	border-radius: 0;
}

.formbox.mobile .formbox_row {
	xposition: relative;
	padding: 4px;
	margin: 0 0 8px 0;
	border: none;
	border-radius: 0;
}
	
div.formbox_row.hidden { display:none; }

.formbox .formbox_row.title {
	font-size:115%;
	font-weight:bold;
	line-height: 24px;
	min-height: 24px;
	text-align:center;
	vertical-align:middle;
	color:white;
	background-color: #2166D3;	/* original title bar color */
	background-color: #66B2FF;	/* old darker blue */
	xbackground-color: #5EBBEB;	/* new lighter blue */
	
	margin:0;
	padding: 4px 5%;
	text-shadow: 1px 1px 1px #003399;
	border: none;
}

.formbox.compact .formbox_row.title {
	padding: 8px 5%;
}
	
.formbox.flat .formbox_row.title {
	font-size: 2em;
	color: #333;
	background-color: transparent;
	text-shadow: none;
	text-align: center;
	padding-left: 4px;
	margin-top: 4px;
	margin-bottom: 20px;
	border-bottom: 2px solid #999;
	padding-bottom:10px;
}

.formbox.mobile .formbox_row.title {
	font-size: 2em;
	color: #333;
	background-color: transparent;
	text-shadow: none;
	text-align: center;
	padding: 10px 4px;
	margin: 4px 0 12px 0;
}


/* button row */
/* sbx */
.formbox .formbox_row.buttons {
	text-align: center;
	background-color:#B3CDF3;
	min-height:24px;
	padding:4px;
	margin:0;
}

.formbox.compact .formbox_row.buttons {
	padding: 8px;
}

.formbox.flat .formbox_row.buttons {
	background-color: transparent;
	border: none;
	text-align: left;
	margin-top: 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
	
.formbox.mobile .formbox_row.buttons {
	background-color: transparent;
	border: none;
	text-align: center;
	margin-top: 10px;
	margin-bottom: 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	border: none;
}

/* first row in form */
.formbox > .formbox_row:first-child {
	border-radius: 8px 8px 0 0;
	-moz-border-radius: 8px 8px 0 0;
	-webkit-border-radius: 8px 8px 0 0;
}

/* last row in form, last row in a section */
.formbox .formbox_row:last-child {
	border-radius: 0 0 8px 8px;
	-moz-border-radius: 0 0 8px 8px;
	-webkit-border-radius: 0 0 8px 8px;
}
.formbox.flat .formbox_row:last-child {
	border-radius: 0 0 0 0;
	-moz-border-radius: 0 0 0 0;
	-webkit-border-radius: 0 0 0 0;
}

/* first row in a section */
.formbox.compact .formbox_section_body > .formbox_row:first-child {
	/*border: 3px solid red;*/
}

/* last row in a section */
.formbox.compact .formbox_section_body .formbox_row:not([style*="display: none;"]):last-child {
	/*border: 3px solid green;*/
}


div.formbox_row a,
div.formbox_row a:link,
div.formbox_row a:active,
div.formbox_row a:visited	{ text-decoration:underline; color:black; }
div.formbox_row a:hover	{ text-decoration:underline; color:red; }

/* label */

.formbox label, .formbox.default label {
	font-weight: normal;
	padding-right: 4px;
	margin-bottom: 4px;
}

.formbox.bootstrap4 label {
	/*font-size: 1em;*/
	font-weight: bold;
	color: #333;
}

.formbox.flat .formbox-label {
	float: left;
	width: auto;
	min-width: initial;
	font-size: 105%;
	font-weight:bold;
	text-align:left;
	margin:0;
	margin-bottom: 4px;
}

.formbox.flat .formbox-label:after {
	content: "";
}

.formbox.flat label {
	float: left;
	width: auto;
	min-width: initial;
	font-size: 105%;
	font-weight:bold;
	text-align:left;
	margin:0;
	margin-bottom: 4px;
}

.formbox.flat label:after {
	content: "";
}

.formbox.mobile .formbox-label {
	display:none;
	float: left;
	width: auto;
	min-width: initial;
	font-size: 105%;
	font-weight:bold;
	text-align:left;
	margin:0;
	margin-bottom: 4px;
}

.formbox.mobile .formbox-label:after {
	content: "";
}

.formbox.mobile label {
	display:none;
	float: left;
	width: auto;
	min-width: initial;
	font-size: 105%;
	font-weight:bold;
	text-align:left;
	margin:0;
	margin-bottom: 4px;
}

.formbox.mobile label:after {
	content: "";
}

/* */
@media screen and (max-width: 470px) {
/*label {
	width: auto;
	text-align: left;
	margin-left: 0;
	xmargin-bottom: 4px;
	}*/
}






.formbox .helpicon {
	display: inline-block;
	margin-left: 4px;
	float: right;
}

.required {
	display: inline-block;
	margin-left: 4px;
	float: right;
}
	
@media screen and (max-width: 470px) {
/*.formbox-label {
	width: auto;
	text-align: left;
	margin-left: 0;
	xmargin-bottom: 4px;
}*/
}
	
.formbox_icons {
	float: right;
	font-size:100%;
	font-weight:bold;
	color: #333;
	min-height:24px;
	min-width: 40px;	/* 20 per icon */
	text-align:right;
	vertical-align: top;
	padding:0;
	margin:0;
	line-height: 24px;
	xborder: 1px solid blue;
}

.formbox.mobile .formbox_icons {
	float: right;
	font-size:100%;
	font-weight:bold;
	color: #333;
	min-height: 26px;
	min-width: 40px;	/* 20 per icon */
	text-align:right;
	vertical-align: top;
	padding:0;
	margin:0;
	line-height: 28px;
	xborder: 1px solid blue;
}
	
div.formbox_icons img {
	padding:0;
	margin-top: 0;
	margin-left:4px;
	vertical-align: text-top;
	height: 16px;
	width: 16px;
	xborder:1px solid red;
}
	
.formbox .formbox_input {
	display: inline-block;
	clear: none;
	font-size:100%;
	font-weight:normal;
	vertical-align: middle;
	padding:0;
	margin:0 auto;
	xline-height: 24px;	/* turn off for bootstrap */
	/* Set inline-block in ie 6/7 */
	*zoom:1;
	*display:inline;
	xborder: 1px solid green;
}

/* input below label */
.formbox.flat .formbox_input {
	display: block;
	clear: left;
}

/* input below label */
.formbox.mobile .formbox_input {
	display: block;
	clear: left;
	padding: 3px;
	xborder: 1px solid #ccc;
}

/* should work for all inputs in formbox_input div */
.formbox .formbox_input.hidden { display:none; }

/*
have to add this in addition to .indent because
specific definition above overrides general class
*/
div.formbox_input .checkbox.indent { margin-left: 28px; }
div.formbox_input .checkbox.hidden { display:none; }

.formbox_input .formbox_error {
	color: red;
	font-weight: bold;
}
	
/* groups of input fields in one row */

.formbox_combo {
	display:block;
	color:#333;
	line-height: 24px;
	min-height:24px;
	vertical-align: middle;
xpadding:2px;
xmargin-right:8px;
}

.formbox_combo.horizontal {	
	display:inline-block;
	/* Set inline-block in ie 6/7 */
	*zoom:1;
	*display:inline;
}
	
div.formbox_combo.vertical {
	display:block;
}

.formbox_combo LABEL {
	display:inline-block;
	xmargin-bottom:4px;
	/* Set inline-block in ie 6/7 */
	*zoom:1;
	*display:inline;
	xborder:1px solid purple;
}

/*------------------------------*/
/* formbox input fields			*/
/*------------------------------*/
/*
button		Defines a clickable button (mostly used with a JavaScript to activate a script)
checkbox 	Defines a checkbox
color		Defines a color picker
date		Defines a date control (year, month and day (no time))
datetime 	Defines a date and time control (year, month, day, hour, minute, second, and fraction of a second, based on UTC time zone)
datetime-local 	Defines a date and time control (year, month, day, hour, minute, second, and fraction of a second (no time zone)
email		Defines a field for an email address
file		Defines a file-select field and a "Browse..." button (for file uploads)
hidden		Defines a hidden input field
image		Defines an image as the submit button
month		Defines a month and year control (no time zone)
number 		Defines a field for entering a number
password 	Defines a password field (characters are masked)
radio		Defines a radio button
range		Defines a control for entering a number whose exact value is not important (like a slider control)
reset		Defines a reset button (resets all form values to default values)
search		Defines a text field for entering a search string
submit		Defines a submit button
tel			Defines a field for entering a telephone number
text		Default. Defines a single-line text field (default width is 20 characters)
time		Defines a control for entering a time (no time zone)
url			Defines a field for entering a URL
week		Defines a week and year control (no time zone)
*/

/*
general for all text types
------------------------------
date		Defines a date control (year, month and day (no time))
datetime 	Defines a date and time control (year, month, day, hour, minute, second, and fraction of a second, based on UTC time zone)
datetime-local 	Defines a date and time control (year, month, day, hour, minute, second, and fraction of a second (no time zone)
email		Defines a field for an email address
file		Defines a file-select field and a "Browse..." button (for file uploads)
month		Defines a month and year control (no time zone)
number 		Defines a field for entering a number
password 	Defines a password field (characters are masked)
search		Defines a text field for entering a search string
tel			Defines a field for entering a telephone number
text		Default. Defines a single-line text field (default width is 20 characters)
time		Defines a control for entering a time (no time zone)
url			Defines a field for entering a URL
week		Defines a week and year control (no time zone)
*/

.formbox INPUT[type="date"],
.formbox INPUT[type="datetime"],
.formbox INPUT[type="datetime-local"],
.formbox INPUT[type="email"],
.formbox INPUT[type="file"],
.formbox INPUT[type="month"],
.formbox INPUT[type="number"],
.formbox INPUT[type="password"],
.formbox INPUT[type="search"],
.formbox INPUT[type="tel"],
.formbox INPUT[type="text"],
.formbox INPUT[type="time"],
.formbox INPUT[type="url"],
.formbox INPUT[type="week"],
.formbox SELECT,
.formbox TEXTAREA {
	font-family: inherit;
	font-size: 100%;
	line-height: 24px;
	xcolor: inherit;
	background: transparent;
	border: 1px solid #ccc;
	border-radius: 0;
	padding: 4px 8px;
	margin: 0 auto;
	margin-right: 3px;
	text-align: left;
	vertical-align: middle;
/*
	filter: none;
	width: 98%;
	max-width: 80%;
	box-sizing: border-box;
*/
}

/*
general for all non-text types
------------------------------
button		Defines a clickable button (mostly used with a JavaScript to activate a script)
checkbox 	Defines a checkbox
color		Defines a color picker
hidden		Defines a hidden input field
image		Defines an image as the submit button
radio		Defines a radio button
range		Defines a control for entering a number whose exact value is not important (like a slider control)
reset		Defines a reset button (resets all form values to default values)
submit		Defines a submit button
*/

.formbox INPUT[type="button"] {}

.formbox INPUT[type="checkbox"] {
	float: left;
	width: 13px;
    height: 13px;
    padding: 0;
    xmargin: 6px 4px;
	line-height: 24px;
    vertical-align: middle;
    /* *overflow: hidden; */
}

.formbox_input .checkbox-label {
	line-height: 24px;
	padding: 0;
	margin: 0;
}

.formbox.flat .formbox_input .checkbox-label {	
	xbackground-color:red;
}

.formbox.mobile .formbox_input .checkbox-label {	
	xbackground-color:red;
}

.formbox INPUT[type="color"] {}
.formbox INPUT[type="hidden"] {}
.formbox INPUT[type="image"] {}
.formbox INPUT[type="radio"] {}
.formbox INPUT[type="range"] {}
.formbox INPUT[type="reset"] {}
.formbox INPUT[type="submit"] {}

.formbox SELECT {
	overflow: hidden !important;
}

/* this is supposed to make formbox mobile selection placeholders work */
.formbox select:invalid { color: gray; }

.formbox TEXTAREA {
	height:auto;
}

/*
 * input rules for default theme
 */

.formbox.default INPUT[type="color"],
.formbox.default INPUT[type="date"],
.formbox.default INPUT[type="datetime"],
.formbox.default INPUT[type="datetime-local"],
.formbox.default INPUT[type="email"],
.formbox.default INPUT[type="file"],
.formbox.default INPUT[type="month"],
.formbox.default INPUT[type="number"],
.formbox.default INPUT[type="password"],
.formbox.default INPUT[type="range"],
.formbox.default INPUT[type="search"],
.formbox.default INPUT[type="tel"],
.formbox.default INPUT[type="text"],
.formbox.default INPUT[type="time"],
.formbox.default INPUT[type="url"],
.formbox.default INPUT[type="week"],
.formbox.default SELECT,
.formbox.default TEXTAREA {
	/*width: 100%;*/
	box-sizing: border-box;
	border: 1px solid #999;
	border-radius: 6px;
}

.formbox.default INPUT.squarend,
.formbox.default SELECT.squarend,
.formbox.default TEXTAREA.squarend {
	border: 1px solid #ced4da;
	border-radius: 6px 0 0 6px;
	margin-right: 0; /* remove gap */
}

/*
 * input rules for flat theme
 */

/* the ones that get stretched to full width */
.formbox.flat INPUT[type="color"],
.formbox.flat INPUT[type="date"],
.formbox.flat INPUT[type="datetime"],
.formbox.flat INPUT[type="datetime-local"],
.formbox.flat INPUT[type="email"],
.formbox.flat INPUT[type="file"],
.formbox.flat INPUT[type="month"],
.formbox.flat INPUT[type="number"],
.formbox.flat INPUT[type="password"],
.formbox.flat INPUT[type="range"],
.formbox.flat INPUT[type="search"],
.formbox.flat INPUT[type="tel"],
.formbox.flat INPUT[type="text"],
.formbox.flat INPUT[type="time"],
.formbox.flat INPUT[type="url"],
.formbox.flat INPUT[type="week"],
.formbox.flat SELECT,
.formbox.flat TEXTAREA {
	xwidth: 100%;
	box-sizing: border-box;
}
	
.formbox.flat INPUT[type="password"],
.formbox.flat INPUT[type="text"].randpass {
	width: 15em;
}
	

/* the ones that don't fill the width */
.formbox.flat INPUT[type="button"],
.formbox.flat INPUT[type="checkbox"],
.formbox.flat INPUT[type="hidden"],
.formbox.flat INPUT[type="image"],
.formbox.flat INPUT[type="radio"],
.formbox.flat INPUT[type="reset"],
.formbox.flat INPUT[type="submit"] {
}
	
/*
.formbox INPUT[type="date"]:hover,
.formbox INPUT[type="datetime"]:hover,
.formbox INPUT[type="datetime-local"]:hover,
.formbox INPUT[type="email"]:hover,
.formbox INPUT[type="file"]:hover,
.formbox INPUT[type="password"]:hover,
.formbox INPUT[type="tel"]:hover,
.formbox INPUT[type="text"]:hover,
.formbox SELECT:hover,
.formbox TEXTAREA:hover {
	border: 1px solid blue;
}

.formbox.flat INPUT[type="date"]:hover,
.formbox.flat INPUT[type="datetime"]:hover,
.formbox.flat INPUT[type="datetime-local"]:hover,
.formbox.flat INPUT[type="email"]:hover,
.formbox.flat INPUT[type="file"]:hover,
.formbox.flat INPUT[type="password"]:hover,
.formbox.flat INPUT[type="tel"]:hover,
.formbox.flat INPUT[type="text"]:hover,
.formbox.flat SELECT:hover,
.formbox.flat TEXTAREA:hover {
	border: inherit;
}
*/

/* focus */
/*
.formbox INPUT[type="datetime-local"]:focus,
.formbox INPUT[type="email"]:focus,
.formbox INPUT[type="file"]:focus,
.formbox INPUT[type="password"]:focus,
.formbox INPUT[type="tel"]:focus,
.formbox INPUT[type="text"]:focus,
.formbox SELECT:focus,
.formbox TEXTAREA:focus {
	border-color: #000064;
}
*/

/*============================================================================*/

/*
 * input rules for mobile theme
 */

/* the ones that get stretched to full width */
.formbox.mobile INPUT[type="color"],
.formbox.mobile INPUT[type="date"],
.formbox.mobile INPUT[type="datetime"],
.formbox.mobile INPUT[type="datetime-local"],
.formbox.mobile INPUT[type="email"],
.formbox.mobile INPUT[type="file"],
.formbox.mobile INPUT[type="month"],
.formbox.mobile INPUT[type="number"],
.formbox.mobile INPUT[type="password"],
.formbox.mobile INPUT[type="range"],
.formbox.mobile INPUT[type="search"],
.formbox.mobile INPUT[type="tel"],
.formbox.mobile INPUT[type="text"],
.formbox.mobile INPUT[type="time"],
.formbox.mobile INPUT[type="url"],
.formbox.mobile INPUT[type="week"],
.formbox.mobile SELECT,
.formbox.mobile TEXTAREA {
	width: calc(100% - 42px);
	box-sizing: border-box;
	padding-right: 48px;
}

/* the ones that don't fill the width */
.formbox.mobile INPUT[type="button"],
.formbox.mobile INPUT[type="checkbox"],
.formbox.mobile INPUT[type="hidden"],
.formbox.mobile INPUT[type="image"],
.formbox.mobile INPUT[type="radio"],
.formbox.mobile INPUT[type="reset"],
.formbox.mobile INPUT[type="submit"] {
}
	
/*
.formbox INPUT[type="date"]:hover,
.formbox INPUT[type="datetime"]:hover,
.formbox INPUT[type="datetime-local"]:hover,
.formbox INPUT[type="email"]:hover,
.formbox INPUT[type="file"]:hover,
.formbox INPUT[type="password"]:hover,
.formbox INPUT[type="tel"]:hover,
.formbox INPUT[type="text"]:hover,
.formbox SELECT:hover,
.formbox TEXTAREA:hover {
	border: 1px solid blue;
}

.formbox.mobile INPUT[type="date"]:hover,
.formbox.mobile INPUT[type="datetime"]:hover,
.formbox.mobile INPUT[type="datetime-local"]:hover,
.formbox.mobile INPUT[type="email"]:hover,
.formbox.mobile INPUT[type="file"]:hover,
.formbox.mobile INPUT[type="password"]:hover,
.formbox.mobile INPUT[type="tel"]:hover,
.formbox.mobile INPUT[type="text"]:hover,
.formbox.mobile SELECT:hover,
.formbox.mobile TEXTAREA:hover {
	border: inherit;
}
*/

/* focus */
/*
.formbox INPUT[type="datetime-local"]:focus,
.formbox INPUT[type="email"]:focus,
.formbox INPUT[type="file"]:focus,
.formbox INPUT[type="password"]:focus,
.formbox INPUT[type="tel"]:focus,
.formbox INPUT[type="text"]:focus,
.formbox SELECT:focus,
.formbox TEXTAREA:focus {
	border-color: #000064;
}
*/

/*============================================================================*/


/* input fields in combos */

.formbox_combo INPUT[type="datetime-local"],
.formbox_combo INPUT[type="email"],
.formbox_combo INPUT[type="file"],
.formbox_combo INPUT[type="password"],
.formbox_combo INPUT[type="tel"],
.formbox_combo INPUT[type="text"],
.formbox_combo SELECT,
.formbox_combo TEXTAREA {
	width: auto;
	min-width: 20px;
}

/* special setups */

.formbox INPUT.indent,
.formbox SELECT.indent,
.formbox TEXTAREA.indent {
	margin-left:28px;
}

/* .formbox INPUT[type="button"]
 * .formbox INPUT[type="submit"]
 * .formbox INPUT[type="submit"]
 */

/* blue shadow 
these are too general
button:focus:enabled, button:active:enabled,
input:focus:enabled, input:active:enabled, 
select:focus:enabled, select:active:enabled, 
textarea:focus, textarea:active {
	box-shadow: 0 0 7px #0066FF;
	z-index: 1;
}
*/


/*------------------------------*/
/* formbox buttons				*/
/*------------------------------*/
	
/* This imageless css button was generated by CSSButtonGenerator.com */

/* zred*/

.formbox_button {
	display: inline-block;
	font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-size: 13px;
	font-weight: bold;
	font-style: normal;
	text-decoration: none;
	text-indent: 0;
	text-align: center;
	border-radius:6px;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	padding: 2px 12px 4px 12px;
	margin: 1px;
	cursor: pointer;
	vertical-align: top;
	/* Set inline-block in ie 6/7 */
	*zoom:1;
	*display:inline;
}

/* red */

.formbox_button.red {
	color: #ffffff;
	text-shadow: 1px 1px 1px #660000;
	border: 1px solid #d83526;
	xborder: 1px solid #ce0100;	/* from small version */
	box-shadow:inset 0 1px 0 0 #f29c93;
	-moz-box-shadow:inset 0 1px 0 0 #f29c93;
	-webkit-box-shadow:inset 0 1px 0 0 #f29c93;
	background-color:#ff0000;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #ff0000), color-stop(1, #ce0100) );
	background:-moz-linear-gradient( center top, #ff0000 5%, #ce0100 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0000', endColorstr='#ce0100');
}

.formbox_button.red:hover:enabled {
	background-color:#ce0100;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #ce0100), color-stop(1, #ff0000) );
	background:-moz-linear-gradient( center top, #ce0100 5%, #ff0000 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ce0100', endColorstr='#ff0000');
}

/* green */

.formbox_button.green {
	color: #ffffff;
	text-shadow: 1px 1px 1px #006600;
	border: 1px solid #009900;
	xborder: 1px solid #00AA00;	/* from small version */
	box-shadow:inset 0 1px 0 0 #9BFF9B;
	-moz-box-shadow:inset 0 1px 0 0 #9BFF9B;
	-webkit-box-shadow:inset 0 1px 0 0 #9BFF9B;
	background-color:#A7FF33;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #A7FF33), color-stop(1, #00AA00) );
	background:-moz-linear-gradient( center top, #A7FF33 5%, #00AA00 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#A7FF33', endColorstr='#00AA00');
}

.formbox_button.green:hover:enabled {
	background-color:#00AA00;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #00AA00), color-stop(1, #A7FF33) );
	background:-moz-linear-gradient( center top, #00AA00 5%, #A7FF33 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00AA00', endColorstr='#A7FF33');
}

/* blue */
.formbox_button.blue {
	color: #ffffff;
	text-shadow: 1px 1px 1px #000066;
	border: 1px solid #337fed;
	box-shadow:inset 0 1px 0 0 #97c4fe;
	-moz-box-shadow:inset 0 1px 0 0 #97c4fe;
	-webkit-box-shadow:inset 0 1px 0 0 #97c4fe;
	background-color:#3d94f6;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #3d94f6), color-stop(1, #1e62d0) );
	background:-moz-linear-gradient( center top, #3d94f6 5%, #1e62d0 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#3d94f6', endColorstr='#1e62d0');
}

.formbox_button.blue:hover:enabled {
	background-color:#1e62d0;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #1e62d0), color-stop(1, #3d94f6) );
	background:-moz-linear-gradient( center top, #1e62d0 5%, #3d94f6 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#1e62d0', endColorstr='#3d94f6');
}

.newbluebutton {
	background-color: #ccccff;
	border-top: #E5E5FF 1px solid;
	border-left: #E5E5FF 1px solid;
	border-bottom: #6666FF 1px solid;
	border-right: #6666FF 1px solid;
}



/* yellow */

.formbox_button.yellow {
	text-shadow: 1px 1px 1px #cd8a15;
	border: 1px solid #eda933;
	box-shadow:inset 0 1px 0 0 #fed897;
	-moz-box-shadow:inset 0 1px 0 0 #fed897;
	-webkit-box-shadow:inset 0 1px 0 0 #fed897;
	background-color:#f6b33d;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #f6b33d), color-stop(1, #d29105) );
	background:-moz-linear-gradient( center top, #f6b33d 5%, #d29105 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6b33d', endColorstr='#d29105');
}

.formbox_button.yellow:hover:enabled {
	background-color:#d29105;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #d29105), color-stop(1, #f6b33d) );
	background:-moz-linear-gradient( center top, #d29105 5%, #f6b33d 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#d29105', endColorstr='#f6b33d');
}

/* small */
.formbox_button.small {
	font-size: 11px;
}

/* medium */
.formbox_button.medium {
	font-size: 13px;
	padding: 1px 8px 3px 8px;
}
	
/* large */
.formbox_button.large {
	font-size: 17px;
}
	
/* xlarge */
.formbox_button.xlarge {
	font-size: 22px;
	padding: 3px 20px 4px;
}
	
.formbox_button:active:enabled {
	position: relative;
	top:1px;
}

/* disabled buttons */
.formbox_button:disabled {
	color:#666666;
	text-shadow:none;
	border:1px solid #999999;
	background-color:#f0f0f0;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.5, #f0f0f0), color-stop(1, #cccccc) );
	background:-moz-linear-gradient( center top, #f0f0f0 5%, #cccccc 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f0f0f0', endColorstr='#cccccc');
}

.formbox_button.hidden { display:none; }
	
/* space between buttons in a group */
.formbox_button:not(:last-child) { margin-right:12px; }

/* formbox_button widths */
.w40 { width:40px; }
.w60 { width:60px; }
.w80 { width:80px; }
.w100 { width:100px; }
.w120 { width:120px; }
.w130 { width:130px; }
.w140 { width:140px; }
.w160 { width:160px; }
.w180 { width:180px; }
.w200 { width:200px; }
.w220 { width:220px; }
.w230 { width:230px; }
.w240 { width:240px; }
.w260 { width:260px; }
.w280 { width:280px; }
.w300 { width:300px; }
.wfit { width:100%; }

.formbox_button.nowrap { white-space: nowrap; }

.left { text-align:left; }
.right { text-align:right; }
.center { text-align:center; }

/* --------------------- */

.greenButton {
	width:90%;
	font-size:175%;
	color:black;
	background: -moz-linear-gradient(center top , #A7FF33 5%, #00AA00 100%) repeat scroll 0 0 rgba(0, 0, 0, 0);
	text-transform:uppercase;
	padding:4px;
    border-color: rgba(0, 0, 0, 0);
    border-radius: 3px;
	box-sizing:content-box;
	-ms-box-sizing:content-box;
	-moz-box-sizing:content-box;
	-webkit-box-sizing:content-box;
}


.square {
	border-radius:1px;
	/*-moz-border-radius:1px;*/
	-webkit-border-radius:1px;
	width:100%;
	margin-bottom:0;
}

.formbox_tabrow {
	background-color:#B1B1E4;
	font-size:11px;
	font-weight:bold;
}

.formbox_tabrow li {
	display: inline-block;
	background-color:#DCC26D;
	color:#333399;
	border:1px solid #333;
	margin: 2px 1px 2px 0;
	padding:4px 8px 4px 8px;
    text-align: center;
    text-decoration: none;
    /*-moz-border-radius: 6px 6px 0 0;*/
    -webkit-border-radius: 6px 6px 0 0;
    border-radius: 6px 6px 0 0;
	/* Set inline-block in ie 6/7 */
	*zoom:1;
	*display:inline;
}

.formbox_tabrow li:hover {
	display:inline-block;
	background-color:#DCC26D;
	color:#333399;
	border:1px solid #333;
	margin: 2px 1px 2px 1px;
	padding:4px 8px 4px 8px;
    text-align: center;
    text-decoration: underline;
    /*-moz-border-radius: 6px 6px 0 0;*/
    -webkit-border-radius: 6px 6px 0 0;
    border-radius: 6px 6px 0 0;
	/* Set inline-block in ie 6/7 */
	*zoom:1;
	*display:inline;
}

/*
 * https://proto.io/freebies/onoff/
 */

.onoffswitch {
    position: relative; width: 80px;
    -webkit-user-select:none; -moz-user-select:none; -ms-user-select: none;
}
.onoffswitch-checkbox {
    display: none;
}
.onoffswitch-label {
    display: block; overflow: hidden; cursor: pointer;
    border: 1px solid #999999;
	border-radius: 12px;
}
.onoffswitch-inner {
    display: block; width: 200%; margin-left: -100%;
    transition: margin 0.3s ease-in 0s;
}
.onoffswitch-inner:before, .onoffswitch-inner:after {
    display: block; float: left; width: 50%; height: 24px; padding: 0; line-height: 24px;
    font-size: 14px; color: white; font-family: Trebuchet, Arial, sans-serif; font-weight: bold;
    box-sizing: border-box;
}
.onoffswitch-inner:before {
    content: "ON";
    padding-left: 10px;
    background-color: #81B5E6;
	background-color: #007bff;
	color: #FFFFFF;
}
.onoffswitch-inner:after {
    content: "OFF";
    padding-right: 10px;
    background-color: #EEEEEE;
	color: #999999;
    text-align: right;
}
.onoffswitch-switch {
    display: block; width: 18px; margin: 3px;
    background: #FFFFFF;
    position: absolute; top: 0; bottom: 0;
    right: 52px;
    border: 1px solid #999999;
	border-radius: 12px;
    transition: all 0.3s ease-in 0s; 
}
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-inner {
    margin-left: 0;
}
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-switch {
    right: 0px; 
}

