body {
	color: black;
	font-size: medium;
}

/* all divs form a centered column */
div.block, div.bar, div.textbar,div.text, div.graph {
width: 46em;
}
div.wideblock {
width: 60em;
}
div.report {
width: 75%;
}
/* common properties of all divs */
div.block, div.bar, div.textbar,div.text, div.graph, div.report, div.wideblock {
margin-left: auto;
margin-right: auto;
margin-top: 20px;
margin-bottom: 20px;
text-align: left;
color: black;
 font-family: "MS Arial", "Helvetica", sans-serif;
        font-style: normal;
        font-variant: normal;
        font-weight: normal;
        font-size: medium;
        text-decoration: none;
        padding-left: 8px;
        padding-right: 8px;
        padding-top: 8px;
        padding-bottom: 8px;
        white-space: normal;
	}
div.options{
  font-size: smaller;
  font-weight: bold;
  white-space: nowrap;
}
/* The basic centered Grey block
 * This can hold headers paragraphs and forms.
 */
div.block, div.wideblock{
background-color: #cccccc;
}

/* Simple single line bar contains a single h3 heading and 
 * a submit button only form. We swap the text direction to get the button on the right
 */
div.bar{
text-align: right;
background-color: #e7e7e7;
}

/* simple single bar containing only text */
div.textbar{
background-color: #e7e7e7;
}
/* Button like links so we can open new page using right mouse */
table.navbar tr td a {
    background-color: #e7e7e7;
    border-width: 1px;
    border: solid black;
    display: block;
    text-align:center;
}
/* text only column */
div.text{
color: blue;
}

/* large table based report */
div.report {
color: blue;
text-align: center;
}
div.report h2{
color: blue;
text-align: center;
}
/* block containing an image */
div.graph{
	width: 100%;
	text-align: center;
}
div.graph h2{
	text-align: center;
}


/* we use three levels of header as standard 
 * h2 is the top level header in a block
 * h3 is a secondary header or a header in a div.bar
 * h4 is a smaller header for dubdivisions.
*/

h2, h3, h4, h5, h6 {
	font-size: 110%;
	color: black;
    text-align: left;
    line-height: normal;
    margin: 0;
    padding: 4px;
}

 /*
  * secondary header in a block
  */
div h3{
background-color: #ffffcc;
}

div h4{
background-color: #ffeebb;
}

div h5{
background-color: #eeeeee;
}

div h6{
background-color: #ffffff;
}

label{
text-align: left;
}



/* A form within a block element. This can contain a nested 
 * table for fine grain layout but submit buttons at the end of the form
 * can be left floating.
 */
div.block form, div.wideblock form{
background-color: #cccccc;
margin: 2px 0px;
padding: 0;
text-align: right;
}

form.button{
	display: inline;
	text-align: right;
}

/* table for fine tuning the layout within a form
 * these have an explicit border 
 */
table.form{
	border: solid #e7e7e7;
	border-width: 3px;
    background-color: #cccccc;
    margin: 5px 0px;
  
}


table.form tr {
        width: 100%;
}
table.form td {
        padding: 2px;
        background-color: #cccccc;
     
}

/* auto generated table from Table class */
table.auto {
	width: 100%;
}
div.report  th {
color: blue;
background-color: #ffffff;
}
div.report td {
	background-color: #eeeeee;
}
table.auto td.first, table.auto th.first{
text-align: left;
}
table.auto td.key, table.auto th.first{
text-align: left;
}
table.auto td.main, table.auto th.main{
text-align: right;
}
table.auto td, table.auto th {
  margin: 1px;	
}
div.ifms_summary td.key {
background-color: #e7e7e7;	
text-align: left;
}
/* paragraph within a block
 */
div.block p, div.block ul, div.block table, div.block pre{
text-align: left;
margin: 4px 0px;
}
div.block p, div.block ul, div.block pre{
background-color: #e7e7e7;
color: black;
padding: 8px;
}

div.block ul{
list-style: inside;
}
div.block table, div.wideblock table {
    width: 100%;
    border: solid #e7e7e7;
   
}
/* supress the cell seperators for nested tables */
div.block table table {
	    border-collapse: collapse;
		border-spacing: 0;
		border-width: 0;
	}
/* need to ensure cells are seperated if this is an auto-table not a form table
 * as data may be packed in there.
*
div.block table table.auto td, div.block table table.auto th{
		border-width: 1px;
		border: solid black; 
}
*/
div.report table {
	width: 100%;
	border: solid grey;
}

table.compact {
	    border: none;
		border-spacing: 0;
		margin: 3px 0px;
		
	}



div.bar form{
 display: block;
 margin: 2px;
 text-align: right;
 padding: 0;
}


/* heading within a bar
 */
div.bar h2, div.bar h3{
font-weight: normal;
display: block;
float: left;
line-height: normal;
margin: 2px;
background-color: #e7e7e7;
}




/* fixes to try and get nested tables to pick up the correct
 * highlighting make the notice rule more explicit so it
 * wins over ther highlight rule prefix everything with div to
 * avoid matching legacy header footer table formatting.
 */

div tr.notice td, div tr td.notice{
	color: black;
	background-color: #ffcccc;
	}

div  *.highlight td{
	color: black;
	 background-color: #ffffcc;
	}

div td {
		color: black;
        background-color: #ffffff;
}
td.numeric , td.notice_numeric{
text-align: right;
white-space: nowrap;
}
div td.notice_numeric{
background-color: #ffcccc;
}
/* a table cell intended to hold a form buton */
div td.button {
	text-align: center;
	background-color: #e7e7e7;
}
div th {
        color: black;
        background-color: #e7e7e7;
}
/* a warning paragraph */
div p.warn{
	color: #ff0000;
		}
.center{
text-align: center;
	}
.plain {
	background-color: #ffffff;
	}
.warn {
	color: #ff0000;
}
.notice {
	background-color: #ffcccc;
	}
.highlight,div.block  p.highlight {
  background-color: #ffffcc;
}
.grey {
 background-color: #cccccc;
}
.lightgrey{
	background-color: #e7e7e7;
}
.optional{
	color: #555555;
}
/* rules for the survey code */
div.question_noanswer, div.question_answered{
 text-align: center;
 border-width: thin;
 border-style: solid;
 padding: 2px;
 margin-top: 5px;
}
div.question_noanswer {
  border-color: red;	
}
div.question_answered {
  border-color: green;	
}
div.noquestion {
  border-color: green;	
}
div.block p.question {
	background-color: #f0f0f0;
}

div.block div.compact {
	display: block;
	text-align: right;
	background-color: #f0f0f0;
}
div.block div.compact p.question {
	text-align: left;
	padding-top: 0px;
	padding-bottom: 0px;
	margin: 0px;
	float: left;
	display: block;
}
div.block div.compact div.options {
	padding-right: 4px;
	display: inline;
}
textarea.comment {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 95%;
}
/* survey formatting for results */
/* These numbers come from a linear interpolation between reg and green
 * but using the square of the fractional value to componsate for high %ages being
 * harder to reach if there are multiple choices.
*/
li.frac_0 {
  	background-color: #ff9999;
}
li.frac_1 {
  	background-color: #ebac99;
}
li.frac_2 {
	background-color: #dabd99;
}
li.frac_3{
	background-color: #cacd99;
}
li.frac_4{
	background-color: #bdda99;
}
li.frac_5{
	background-color: #b2e599;
}
li.frac_6{
	background-color: #a9ee99;
}
li.frac_7{
	background-color: #a2f599;
}
li.frac_8{
	background-color: #9dfa99;
}
li.frac_9{
	background-color: #9afd99;
}
li.frac_10{
	background-color: #99ff99;
}
div.block p.comment {
	background-color: #ffeebb;
}
