/* page layout & screen position */
html {
	overflow-y: scroll;	
}
	
body {
    text-align: center;
	font-size:62.5%;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	color:#000;
	background-color:#DDD;
	margin: 0 0 20px 0;
}

*html body {														/*  hack for IE6  */
	font-size:55%;
}

*, div, p  {
	margin: 0;
	padding: 0;
}

p,ul,ol,dl,th,td, .description {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 1.1em;
	line-height: 135%;
	color: #333;
}

dt,li,ol li ul,ul li ul {
	color: #333;
	font-size:100%;
}

li, dd, dt {
	padding:3px;
	margin:0;
	color: #333;
}

p {
	margin-bottom: 8px;	
}

th {
	padding-right: 10px;
	text-align: left;
	font-weight: bold;
	white-space: nowrap; 
}

img {
	border:none;
}
img.centered {
	display: block;
	margin-left: auto;
	margin-right: auto;	
}

h1 {
	font-family: Arial, Helvetica, sans-serif;
	font-weight:bold;
	color: #333;
	margin: 0;
	padding: 6px 0 0 0;
}

h2 {
	border: 1px solid #000;
	background-color :#FFF;
	padding: 4px 0 4px 8px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1.4em;
	font-weight: bold;
	color: #000;
	margin: 0 0 10px 0;
}

h3 {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1.4em;
	font-weight: bold;
	color: #333;
}

h4  {
	margin:20px 0 10px 0;
	border-bottom: 1px solid #000;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1.4em;
	font-weight: bold;
	color: #000;
}

h5 {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1.2em;
	font-weight: normal;
	color: #666;
}

h6 {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 1.1em;
	font-weight: bold;
	color: #333;
}

ul {
	margin-left: 15px;
}

strong {
	font-weight: bold;	
}

p.error {
	font-weight: bold;
	color: red;
}

button, div.button {
	border: 1px solid black;
	background-color: black;
	padding: 1px 4px;
	color: white;
	font-weight: bold;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
div.button {
	display: table;
	margin: 2px 0;
	padding: 4px 8px;	
}

button:hover, div.button:hover {
	background-color: #666;
	border-color: #666;
	color: white;
	cursor: pointer;
}

a {
	text-decoration:none;
}

a:hover {
	text-decoration:underline;
}

a.noUnderline:hover {
	text-decoration:none;	
}

label {
	padding-left: 5px;	
}

input.checkItem, label.checkItem {
	vertical-align: middle;
	line-height: 1.9em;
}

label.checkItem {
	padding-left: 0.5em;
}

th.top, td.top {
	vertical-align: top !important;	
}

.cleaner {
	clear: both;
	height: 0px;
	font-size: 0.1em;
	border: none;
	margin: 0;
	padding: 0;
	background: transparent;
}

.none {
	display:none;
}

.bold {
	font-weight: bold;
}
.normal {
	font-weight: normal;
	font-style: normal;
}

.indent {
	margin-left: 20px;	
}

.left {
	float: left;
}

.right {
	float: right;
	text-align: right;
}
.center {
	text-align: center;
}

.separator {
	border-top:1px dashed #999;
	color:#9c9c9c;
	margin:0 9px;
}

.smallGapAbove {
	margin-top: 5px !important;	
}
.mediumGapAbove {
	margin-top: 10px !important;	
}
.largeGapAbove {
	margin-top: 20px !important;	
}
.noGapBelow {
	margin-bottom: 0 !important;
}
.smallGapBelow {
	margin-bottom: 5px !important;	
}
.mediumGapBelow {
	margin-bottom: 10px !important;	
}
.largerText {
	font-size: larger !important;	
}
.boldText {
	font-weight: bold;	
}
.monospace {
	font-family: monospace !important;
	font-size-adjust: 0.5; 
}

.caption {
	text-align: left;
	padding-top: 1px;
	font-weight: bold;
}

.error {
	padding-left: 5px;
	color: #D81C1C;	
}


/* BUTTONS */
a.button, button.button, input.button, a.buttonSmall {
    display:block;
    float:left;
    margin:0 7px 0 0;
    background-color: black;
    border: 1px solid #000;
    border-top-color: #000;
    border-left-color: #000;

    font-family:Arial, Helvetica, sans-serif;
    line-height:130%;
    text-decoration:none;
    font-weight:bold;
    color:white;
    cursor:pointer;
    padding:2px 10px 3px 10px; /* Links */
    
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
*html a.button, *html button.button, *html input.button, *html a.buttonSmall {						/*  hack for IE6  */
	float:none;
}
button.button, button.button[type] {
    padding:5px 10px 5px 7px; /* Firefox */
    line-height:17px; /* Safari */
}
*:first-child+html button.button, *:first-child+html button.button[type] {
    padding:4px 10px 3px 7px; /* IE7 */
}
a.button img, button.button img {
    margin:0 8px -3px 0 !important;
    padding:0;
    border:none;
    width:16px;
    height:16px;
}
a.button.arrow, button.button.arrow {
	background: #FFF url("../images/background_button_arrowRight.gif") no-repeat right top;
	padding-right: 16px;
}
a.button:hover.arrow, button.button:hover.arrow {
	background-position: right bottom;
}
a.button:hover, button.button:hover, input.button:hover, a.buttonSmall:hover {
    background-color:#666;
    border:1px solid #666;
    color: white;
    text-decoration: none;
}
a.button:active, a.buttonSmall:active {
    background-color:#999;
    border:1px solid #333;
    color:#333;
}
a.buttonSmall {
	padding:0 3px;
	font-size:0.9em;
	font-weight:normal;
}

.clickable {
	cursor: pointer;	
}

.box {
	position: relative;
	width: auto;
	margin-bottom: 10px;
	border: 1px solid #000;
	background-color: #F5F5F5;
	padding: 0 5px;
}

.box h4 {
	margin: 0 -5px 5px;
	background-color: black;
	border-bottom: 1px solid #000;
	padding: 4px 0px 4px 5px;
	position: relative;
	font-size: 1.3em;
	text-align: left;
	color: white;
}
.box.noContent h4 {
	margin-bottom: 0;
}

.box .boxContent {
	/* margin-top: 5px;	*/
}

.box > p:last-of-type {
	margin-bottom: 5px;
}

.box p.emptyMessage {
	margin: 0 6px;	
}

.box button.button {
	padding: 1px 3px;
	font-size: 1em;	
}


/**********/
/* Tables */
/**********/
.basicTable {
	width: 100%;
	margin: 5px 0;
	border-collapse: collapse;
	border: 1px solid #000;
	background-color: #E5E5E5;
}
.basicTable tbody tr:nth-child(2n+1) td {
	background-color: #F5F5F5;
}
.basicTable tfoot th, .basicTable tfoot td {
	background-color: #CCC;
}
.basicTable tr.highlight th, .basicTable tr.highlight td {
	background-color: #BBB !important;
}
.basicTable th, .basicTable td {
	border: 1px solid #000;
	padding: 2px 5px;
	vertical-align: top;
}
.basicTable th {
	background-color: #666;
	color: #FFF;	
}
.basicTable .alignRight {
	text-align: right;
}
.basicTable .alignCenter {
	text-align: center;
}
.basicTable .noWrap {
	white-space: nowrap;
}

.formTable th, .formTable td {
	padding: 2px 5px;
	vertical-align: middle;	
}
.formTable th {
	text-align: right;
}
.formTable th.alignTop {
	padding-top: 6px;
	vertical-align: top;
}
.formTable .alignRight {
	text-align: right;
}
.formTable .alignCenter {
	text-align: center;
}
.formTable .noWrap {
	white-space: nowrap;
}
