/* Forms CSS for Smiggle */

/* form layout & styles
***************************************/


form {
	margin: 0;
	display: inline;
}

form .mandatory {
	text-align: right;
	margin: 0 1em -2.5em 0;
	position: relative; /* fix IE peekaboo */
}

form .mandatory em {
	font-weight: bold;
	font-style: normal;
	color: #f00;
}

legend {
	font-size: 120%;
	padding: 0.5em;
	*padding-bottom: 1em;
	font-weight: bold;
	color: #016ab2;
}
/*\*//*/ form legend { display: inline-block; } /* IE Mac legend fix */

fieldset {
	margin: 1em 0 0 0;
	*margin-top: 0;
	padding: 15px 20px;
	border: solid 1px #0078ca;
	_background: white; /* fix IE6 peekaboo */
	border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px;  /* curves in IE here just dissapear, don't bother */
	color: #016ab2;
	position: relative; /* fix IE peekaboo */
}

fieldset ul {
	margin: 0;
	padding: 0;
}
	
fieldset li {
	list-style: none;
	padding: 0.3em 0.35em;
	margin: 0;
}

form label em {
	font-weight: bold;
	font-style: normal;
	color: #f00;
}

form small {
	font-size: 85%;
	color: #71a7cd;
	margin: 0.3em 0.5em 0 198px;
	display: block;
}

form .info {
	color: #878686;
	display: block;
	margin: 0.1em 0 0 14.9em;
	font-size: 90%;
}

form label {
	width: 15em;
	display: inline-block;
	vertical-align: top;
	padding-bottom: 0.2em;
	cursor: text;
}

form label.after,
form label.outside {
	width: auto;
	margin-right: 0.2em;
	cursor: pointer;
}





/* Inputs
****************************************/
form input.box,
form textarea,
form select {
	border: solid 1px #7ad7ee;
	background: #f3fcfe;
	color: #016ab2;
}

form input.focus,
form textarea:focus,
form select:focus {
	background: #c4f2fd;
	border: solid 1px #7ad7ee;
}

form input.box { height:1.4em; }
form textarea { height:7em;  width:95%; }

form input.address1 { border-bottom:none; }
form input.address2 { border-bottom:none; border-top:dashed 1px #4dc5e2; margin: -2px 0 0 15.3em; }
form input.address3 { border-top:dashed 1px #4dc5e2; margin: -2px 0 0 15.3em; }
@media screen and (-webkit-min-device-pixel-ratio:0) {  /* Webkit only hack (Safari & Chrome) */
	form input.address2, form input.address3 { margin-left:15.35em; }
}



/* Buttons
****************************************/

.button {
	height: 48px;
	*width: 130px;
	margin: 0 0 0 1em;
	display: inline-block;
	position: relative;
	*float: left;
	z-index: 0;
}

.button .background {
	background: #333;
	width: 100%;
	height: 26px;
	position: absolute;
	z-index: 0;
	top: 10px;
	border: solid 1px black;
	/* behavior: url(/css/ie-css3.htc); */ /* IE curved buttons slide when screen is resized */
	border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px;
	z-index: 1;
}

.button input, .button a {
	margin: 0;
	padding: 1px 30px 5px 52px;
	*padding-top: 5px;
	min-height: 48px;
	height: 48px;
	display: block;
	text-align: left;
	color: white !important;
	text-decoration: underline !important;
	font-weight: bold;
	background: 4px 0 no-repeat;
	cursor: pointer;
	position: relative;
	*position: absolute;
	border: none;
	z-index: 2;
	outline: none;
}
.button a { padding-top:15px; }

.button input:hover, .button input:focus, .button input:active,
.button a:hover, .button a:focus, .button a:active {
	text-decoration: none !important;
}
.button:hover .background {
	background: #474747;
}

/* Special Buttons */
.button.submit, .button.add { margin-left:17.3em; _margin-left:9em; }
.button .submit { background-image: url(/images/misc/icon_tick.png); }
.button .cancel { background-image: url(/images/misc/icon_cross.png); }
.button .next { background-image: url(/images/misc/icon_next.png); }
.button .prev { background-image: url(/images/misc/icon_prev.png); }
.button .add { background-image: url(/images/misc/icon_plus.png); }

/* an imput button that wants to look like an <a> tag */
.not-a-button {
	margin: 0;
	padding: 0;
	height: auto;
	width: auto;
	display: inline;
	position: relative;
	float: none;
	border: none;
	background: none;
	color: #0078ca;
	text-decoration: underline !important;
	font-weight: bold;
	cursor: pointer;
}
.not-a-button:hover, .not-a-button:focus, .not-a-button:active { text-decoration: none !important; }
/* firefox doesn't do underlines on inputs for some reason, hack */
@-moz-document url-prefix() {
	.not-a-button { border-bottom: solid 1px #0078ca; }
	.not-a-button:hover { border-bottom: solid 1px white; }
}

/* Disabled buttons */
.button input:disabled, .button input.disabled,
.button a:disabled, .button a.disabled {
	cursor: default;
	cursor: not-allowed;
	color: #666 !important;
	text-decoration: line-through !important;
}
.button input:disabled:hover, .button input.disabled:hover,
.button a:disabled:hover, .button a.disabled:hover {
	text-decoration: line-through !important;
	color: #666 !important;
}
.button input:disabled + .background, .button a:disabled + .background
.button .background.disabled  {
	border: 1px dashed #CCC !important;
	background: #EEE !important;
}
.button input:disabled + .background:hover, .button a:disabled + .background:hover,
.button .background.disabled:hover {
	border: 1px dashed #CCC !important;
	background: #EEE !important;
}






/* Error styles
******************************************/

.interworld_error {
	color: red;
	/*margin: 0 1em 0 1em;*/
	position: relative;  /* fix IE peekaboo */
}

p.interworld_error {
	text-align: left;
	font-size: 100%;
}

.interworld_error li {
	color: red;
	margin-left: 3em;
}



form fieldset input.error,
form fieldset textarea.error,
form fieldset select.error {
	border: 1px solid #ff9a9a;
	background: #fcf1f1;
}

form label.error {
	margin-left: 0;
	color: red;
	display: block; 
	clear: both;
	width: auto;
	margin-top: -0.2em;
	line-height: 1.3em;
	border: none;
}

form dd label.error {
	clear: none;
	display: inline;
	padding-left: 1em;
}

form fieldset label.error {
	margin-left: 15.3em;
	margin-top: 0.3em;
}




/* Label over styles (ie. date)
********************************************/

span.over {
	position: relative;
	float: left;
	width: 4em;
}

span.over span {
	position: absolute;
	top: 0;
}

label.pre {
	margin-left: 1em;
	_width: 2em;
}

label.over {
	color: #71a7cd;
	position: absolute;
	top: 3px;
	left: 0.7em;
	margin-left: 0;
}

input.under {
	margin: 0 0.8em 0 0.4em;
	_margin: 0 0.6em;
}




/* Fun form styles 
*************************************/
body.fun fieldset { border-color:#999; color:#666; _background: #d7d7d7; }
body.fun legend { color: #333; }
body.fun small { color:#666; }
body.fun form input.box,
body.fun form textarea,
body.fun form select { border-color:#AAA; background-color:white; color:#222; }
body.fun form input.focus,
body.fun form textarea:focus,
body.fun form select:focus { background: #c4f2fd; }



