/****************************************
 global
****************************************/
body.progress, body.progress * {cursor:progress;}
.trace{border: 1px solid red;}
.clear	{clear:both;}
.center {text-align:center;}
.right {text-align:right;}
.left {text-align:left;}
.small {font-size:80%;}
.italic {font-style:italic;}
.italic strong {font-style:normal;}
.tipTrigger {color:#333366; border-bottom:1px dotted #333366;}
.tipContent {display:block; margin:.5em; padding:.5em; background:#FFFFFF; width:250px; border:1px dotted #666666; position:relative; left:0; z-index:1000;}
.instruction {}
.footnote {}
.pagination {margin-bottom:0; padding-bottom:0;}
.red {color:#990000;}
.highlight {background:#FFFFCC;}
.noborder {border:none;}
.hidden {display:none;}
.pad {padding-left:10px;}
.pushbottom {margin-bottom:1em;}
.multiline{margin-left:35%; padding-left:1em;}



p {margin:.5em 0;}
fieldset h2 {border:none;} /* clears template styling */

/* username displayed in upper right */
span#name {position:absolute; top:37px; right:11%; font-weight:bold;}
span#name a {font-weight:normal; margin-left:.5em;}

/* two column layout */
div.rightcol {float:right; clear:none; width:30%; margin:0; padding:5px 15px; clear:none; background:#FFFFFF; border:1px solid #CCCCCC;}
div.leftcol {float:left; clear:left; width:60%; margin:0; padding:0;}


/* errors */
div.error	{margin-bottom:1em;}
div.error p {margin:0; line-height:1.25;}
p.error span {color:#000000; font-weight:normal;}

/* "A", "P", and "C" indicators */
span.amended {background:#CCCCCC; font-weight:bold; padding:.05em .5em 0 .5em;}
span.pac {background:#CCCCCC; font-weight:bold; padding:.05em .5em 0 .5em;}
span.candidate {background:#CCCCCC; font-weight:bold; padding:.05em .5em 0 .5em;}

/* "!" indicators */
a.reporterror,
a.reporterror:visited {background:#990000; color:#FFFFFF; font-weight:bold; font-size:100%; padding:.05em .5em 0 .5em; text-decoration:none;}
a.reporterror:hover,
a.reporterror:visited:hover {background:#666699; color:#FFFFFF;}
a.reporterror.future,
a.reporterror.future:visited {background:#FF9900; color:#FFFFFF; font-weight:bold; font-size:100%; padding:.05em .5em 0 .5em; text-decoration:none;}
a.reporterror.future:hover,
a.reporterror.future:visited:hover {background:#FF9900; color:#FFFFFF;}

/* "Update" links */
a.edit,
a.edit:visited 	{background-color:#333366; color:#FFFFFF; text-align:center; font-size:80%; font-weight:normal; font-family:Arial, Helvetica, sans-serif; text-decoration:none; margin:0; padding:.05em .25em;}
a.edit:hover,
a.edit:visited:hover {background-color:#990000; color:#FFFFFF;}

/* A-Z link list */
ul.alpha {margin:1em 0; padding:0; clear:both;}
ul.alpha li {display:inline; float:left; margin-left:0; padding-left:0; margin-right:.5em;}

/* re-iterated search result criteria */
p.results {margin-top:0; font-style:italic;}
p.results strong {text-transform:uppercase;}

/* forms */
form h2 {margin-bottom:.25em; padding-bottom:0;}
form p, p.form {margin:0 0 .5em 0; clear:left;}
form p label, p.form label {float:left; clear:left; width:35%; text-align:right; margin-right:1em; padding-top:.25em;}
form p label.nofloat {float:none; clear:none; display:inline; width:auto; text-align:left; margin-right:0;}
form p.center.clear, form p.clear.center {margin-top:2em;}
span.formdata {font-weight:bold; display:block; padding-top:.25em;}
form p span.small {display:block; margin-left:37%;}
select.purpose, input.purpose {width:100%;}

body.list form {text-align:center;}
body.list form fieldset {text-align:left; width:75%;}
body.list form h2 {margin-top:1.5em; margin-bottom:.5em; padding-bottom:0; border-bottom:1px dotted #CCCCCC; color:#666666; clear:left;}
body.list form h3 {color:#333366; clear:both;}
body.list form div.label, body.list form p.label {margin-left:37%; clear:both; margin-bottom:.5em;}

body.list form.list fieldset {width:90%;}

/* tables */
table {text-align:left; font-size:100%;}
table.list {margin:.5em auto 0 auto; width:90%; text-align:center; border:0;}
table.list td  {padding:.25em .75em;}
table.list th {background:#666666; color:#FFFFFF; border-right: 2px solid white; padding:1px 6px;}
table.list th a,
table.list th a:visited {display:block; text-decoration:underline; margin:0; padding:.1em .75em; background:#666666; color:#FFFFFF;}
table.list th a:hover,
table.list th a:visited:hover {background:#999999; text-decoration:none;}
/*table.nosort {border-top:1px dotted #999999;}
table.nosort th.nosort {border-bottom:1px dotted #999999; background:#EFEFEF;}*/
table.list th.nobg {background:none; color:#000;}

body.list table.list, body.search table.list {width:100%; border-collapse:collapse; margin-bottom:1em;}
body.list table.list td, body.search table.list td {border-bottom:1px dotted #666666;}
body.list table.list.unitemized td, body.search table.list.unitemized td {border-bottom:none;}
body.list table.list tfoot th, body.search table.list tfoot th,
body.list table.list tfoot td, body.search table.list tfoot td {padding-left:.5em; border-top:3px double #333333; font-weight:bold; border-bottom: none; background-color:#fff;}
body.list table.list tr.endorser, body.search table.list tr.endorser {background:#EEEEEE; color:#333333;}
body.list table.list td.endorser, body.search table.list td.endorser {padding-left:2.5em;}

table.notes {margin:.5em auto 0 auto;  width:100%;}
table.notes td  {padding:.25em 0;}
table.notes td.left  {padding-right:1em; width:100%;}

body.fullreport span.pagebanner {margin: 0.25em 0.75em 0.25em 4%;}
span.endorser, span.endorser p.helpContent, span.endorser p {margin: 0 0 0 1em;}
span.payment, span.payment p.helpContent {margin-left: 2em;}

/*p.center input.button {vertical-align: middle;} */
.spinner {display:block; margin: 1em auto 2em auto;}


/****************************************
 page specfic: signup help
****************************************/
.demo ol {width:80%; margin:2em auto; padding:0; list-style-type:none;}
.demo .frame h2 {border-bottom:1px dotted #9999CC; margin-top:1.5em;}
.demo div.frame p.center {clear:both;}
.demo div.signup li {margin-bottom:1.5em; clear:both;}
.demo div.signup div.signImg {float:left; margin:0 1em 1em 0; padding-left:70px; width: 204px;}
.demo div.signup li img {border: 2px solid #555;}
.demo div.signup li div {padding-left: 286px; margin-right: 15%;}
.demo div.signup li h3 {margin: 0 0 .2em 0;}
.demo div.signup li.signHelp1 div.signImg {background: url(../images/num1.png) no-repeat left 50%;}
.demo div.signup li.signHelp2 div.signImg {background: url(../images/num2.png) no-repeat left 50%;}
.demo div.signup li.signHelp3 div.signImg {background: url(../images/num3.png) no-repeat left 50%;}
.demo div.signup li.signHelp4 div.signImg {background: url(../images/num4.png) no-repeat left 50%;}
.demo div.signup li.signHelp5 div.signImg {background: url(../images/num5.png) no-repeat left 50%;}

/*.demo ol {width:80%; margin:2em auto; padding:0; list-style-type:none;}
.demo .frame h2 {border-bottom:1px dotted #9999CC; margin-top:1.5em;}
.demo div.signup ol li {padding-left:70px; margin-bottom:1em; clear:both; height:155px;}
.demo div.signup ol li img {float:left; margin:0 1em 1em 0; padding:0; border: 2px solid #555;}
.demo div.signup ol li div {float:left; margin:0; padding:0; width:45%;}
.demo div.signup ol li h3 {margin: 0 0 .2em 0;}
.demo div.signup li.signHelp1 {background: url(../images/num1.png) no-repeat left 50%;}
.demo div.signup li.signHelp2 {background: url(../images/num2.png) no-repeat left 50%;}
.demo div.signup li.signHelp3 {background: url(../images/num3.png) no-repeat left 50%;}
.demo div.signup li.signHelp4 {background: url(../images/num4.png) no-repeat left 50%;}
.demo div.signup li.signHelp5 {background: url(../images/num5.png) no-repeat left 50%;}*/

/****************************************
 page specfic: index
****************************************/
body.index #content #features h2 {border-bottom:none;}
body.index #content #features a {font-weight:bold; font-size:120%;}
body.index #content #newusers p,
body.index #content #currentusers p {margin:1em auto;}


/****************************************
 page specfic: login
****************************************/
body.login legend {margin: 16px 0; padding: 5px 8px;}
body.login div.instr {text-align:left; width:70%; margin:auto;}
body.login div.instr h2 {border-bottom:1px dotted #9999CC; color:#333366; padding-bottom:0.3em;}

/****************************************
 page specfic: search
****************************************/
body.search h2 {width:90%; margin:0 auto; padding:0; border:1px solid #CCCCCC;}
body.search h2 a {display:block; margin:0; padding:.5em 1.5em; background-color:#333366; color:#FFFFFF; text-decoration:none;}
body.search h2 a:visited 	{background-color:#333366; color:#FFFFFF;}
body.search h2 a:hover,
body.search h2 a:visited:hover {background-color:#990000; color:#FFFFFF;}
body.search h3 {clear:both; float:none; margin:1.5em 0 .5em 0; padding:.25em; color:#333333; border-bottom:1px dotted #999999;}
body.search h4 {margin:0 0 .25em 0;}
body.search form {margin:0 auto; width:90%; padding:0; text-align:center;}
body.search fieldset {width:auto; border-color:#CCCCCC; margin:0 auto; text-align:left;}
body.search p.label {margin-left:37%; clear:both; margin-bottom:.5em;}
body.search label span.small {display:inline; margin:0; padding:0; color:#939393;}
body.search div.fields {float: left !important; width: 35%;}
body.search div.fields.both {float:left; width: 64%;}
body.search div.fields.right {text-align:left; float:left; width:35%;}

body.search.admin h2 {width:100%; border:none;}
body.search.admin fieldset {width:80%; border:none; margin-top:0;}

/****************************************
 page specfic: report
****************************************/
body.report h2 {color:#990000; font-size:140%;}
body.report h3 {margin:1.5em 0 .25em 0; padding:.25em; border-bottom:1px dotted #999999; color:#333333; text-transform:uppercase;}
body.report h4 {margin:0 0 -1em 0; padding:0; font-weight:normal; color:#333333;}
body.report h4 span.small {margin-left:1em; color:#666666;}
body.report div.summarysection {display:block; width:90%; margin:0 auto;}
body.report div.summarysection p {margin:0 0 .5em 0; text-align:right;}
body.report div.summarysection p span {margin-left:1.5em;}
body.report div.summarysection p.total {margin-bottom:2em; margin-right:6em; padding-top:.25em; font-weight:bold; text-transform:uppercase; text-align:left; color:#333333; border-top:1px solid #999999;}
body.report.public div.summarysection p.total {margin-right:0;}
body.report div.summarysection p.total span {float:right;}
body.report div.summarysection p.total span.small {float:none; color:#666666;} 
body.report div.summarysection p.total.section {border-top:3px double #333333; font-size:110%; margin-right:5.4em; }
body.report div.summarysection p.repSubmit, body.report div.summarysection p.total.section.repSubmit, body.report.public div.summarysection p.total.section {margin-right:0;}
body.report div.certify {width:75%; margin:3em auto 0 auto; text-align:center;}
body.report div.certify label {display:block; margin:1em auto; font-weight:bold; color:#990000;}
/* Public only*/
body.report h3 a {float:right; margin-top:-1.25em; margin-right:1.5em; text-transform:none;} 
/* Full Report only*/
body.fullreport h2 {margin:1.5em 0 0 0; padding:.25em; border-bottom:1px dotted #666666; color:#333333; text-transform:uppercase;}
body.fullreport h3 {margin:1em 4% 0 4%; padding:.25em; text-transform:uppercase; font-size:100%; color:#333333; border-bottom:3px double #CCCCCC;}
body.fullreport h4#repNote, body.report h4#repNote {border-top:double 12px #ccc; padding-top:10px; margin-top:2em; font-style:italic; font-weight:bold;}
body.fullreport table, body.fullreport.list table.list {margin:0 0 1.5em 0; width:92%; margin-left:4%; border-collapse:collapse; text-align:center;}
body.fullreport table th, body.fullreport table.list th {border-bottom:1px solid #CCCCCC; border-right: none; background:#EEEEEE; padding:.25em; font-weight:normal; color:#000;}
body.fullreport table.list th a,
body.fullreport table.list th a:visited {display:block; text-decoration:underline; margin:0; padding:.1em .75em; background:none; color:#336;}
body.fullreport table.list th a:hover,
body.fullreport table.list th a:visited:hover {background:none; text-decoration:none; color: #669;}
body.fullreport table td {padding:.25em; border-bottom:1px dotted #CCCCCC; vertical-align: top;}
body.fullreport table.unitemized td {border-bottom:none;}
.pushleft {margin-right: 30px;}

/****************************************
 page specfic: user/index
****************************************/
body.user.home #content {/*background:url(../tncamp/images/capital.jpg) left -25% no-repeat;*/}
body.user.home h2 {color:#990000; font-size:140%; clear:left;}
body.user.home h3 {margin:1.5em 0 .25em 0; padding-bottom:0; border-bottom:1px dotted #999; color:#333333;}
body.user.home p {margin-top:0; padding-top:0;}
body.user.home ul#pastdue {list-style:none; color:#990000; font-weight:bold;}
body.user.home .rightcol h2 {color:#333366;}
body.user.home .rightcol h2 a {font-style:normal; font-size:70%; font-weight:bold;}
body.user.home .rightcol h3 {margin-bottom:.25em; padding-bottom:0; border-bottom:1px dotted #CCCCCC; color:#666666;}
body.user.home .rightcol p.office {font-size:120%; font-weight:bold; line-height:1.25em; margin-top:1em; color:#666666;}
body.user.home .leftcol h3.new {margin-bottom:0; /*padding:3px 0 0 15px; background:url(../tncamp/images/icoNew.gif) left center no-repeat;*/}
body.user.home .leftcol p.pagination {margin-left:6%;}
body.user.home .leftcol p.pagination strong {color:#333333;}
body.user.home .leftcol table.list {width:100%; border-collapse:collapse;}
body.user.home .leftcol table.list .left {width:100%;}
/*body.user.home .leftcol div#formBg {margin-top:0; width:100%; height:14.5em; background-color:#FFFFFF; border-right:1px dotted #000000; border-left:1px dotted #000000; border-bottom:1px dotted #000000; opacity:.33;filter: alpha(opacity=33); -moz-opacity: 0.33;}*/
body.user.home .leftcol form#report {margin:0; padding:2em 0; border-right:1px dotted #999; border-left:1px dotted #999; border-bottom:1px dotted #999;}
body.user.home .leftcol form#report #year {display:none;} /*hide on init - js in page head shows according to report option chosen*/
body.user.home .leftcol form p.submit {margin-left:38%; margin-top:1.5em;}
	/*html>body.user.home .leftcol form p label {width:18%;}*/		/* FF-like browsers */
	/*html>body.user.home .leftcol form p.submit {margin-left:20%;}*/
body.user.home form#notes #txtNote {width:85%;}
body.user.home h3.red {color:#990000;}
.push1 {margin-left: 18%; padding-left: 1em;}
.push2 {padding-left: 10px;}

/****************************************
 page specfic: user/loans
****************************************/
div.label {float:none; text-align:left;}
p label, .label {float:left; width:45%; text-align:left; padding-right:10px;}
body.list form div.lending p.label {float:left; width:45%; text-align:left; padding-right:10px; margin-left: 37%;}
* html body.list form div.lending p.label {margin-left: 19%;}

/****************************************
 page specfic: user/endorsers
****************************************/
* html div#content p.label {margin-left: 19%;}
	
/****************************************
 page specfic: user/appt
****************************************/
body.user.appt form {text-align:center;}
body.user.appt form fieldset {width:75%; text-align:left;}
body.user.appt form h2 {margin-top:1.5em; margin-bottom:.5em; padding-bottom:0; border-bottom:1px dotted #CCCCCC; color:#666666;}
body.user.appt form p.clear.center {margin-top:2em;}
body.appt form div {margin-left:37%; clear:both; margin-bottom:.5em;}
/*table.pacofficer {border-top:1px dotted #999999;}
table.pacofficer th {border-bottom:1px dotted #999999; background:#EFEFEF;}*/
table.pacofficer td {padding-bottom:2em; vertical-align:top; width: 20%;}

/****************************************
 page specfic: user/apptlist
****************************************/
body.apptlist p.form {width:30%;}
body.apptlist table {width:100%; border-collapse:collapse;}
body.apptlist table td {border-bottom:1px dotted #666666;}
body.apptlist table .left {padding-left:1em;}

/****************************************
 page specfic: user/errors
****************************************/
body.errors p {margin-top:0; padding-top:0;}
body.errors h2 {color:#990000; font-size:140%;}
body.errors h2 a {float:right; margin-top:-1.25em; text-transform:none;}
body.errors h3 {margin-bottom:.25em; padding-bottom:0; border-bottom:1px dotted #CCCCCC; color:#666666;}
body.errors h4, 
body.errors ul {margin:0;}
body.errors div.rightcol ul {margin-left:1em; padding-left:0;}
body.errors form {text-align:left;}
body.errors form#notes #txtNote {width:70%;}

/****************************************
 page specfic: user/help*List
****************************************/
body.help.list.select {margin:0;}
body.help table.list.plaza {text-align:left; border-collapse:collapse;}
body.help table.list.plaza td {border-bottom:1px dotted #999;}

/****************************************
 page specfic: admin/index
****************************************/
body.admin.home div.tabs {position:absolute; z-index:100;}
html>body.admin.home div.tabs {position:absolute; z-index:100; top:9em;}
body.admin.home div.tabs h2 {float:left; width:auto; border-right:2px solid #FFFFFF; font-size:100%; clear: none;}
body.admin.home div.tabs h2.on {padding:.5em 1.5em; background:#666666; color:#FFFFFF;}
body.admin.home div.section {position:relative; padding:1.5em; margin-top:3.5em; border:1px solid #666666;}

/****************************************
 page specfic: admin/search
****************************************/
div.multiright {position:relative; top: -1.5em; margin: 0 0 -1em 35%; padding-left: 1em;}
div.multiright label {margin-left: 10px;}

/****************************************
 page specfic: admin/searchtoenterdates
****************************************/
body.appt form h2 {margin-top:1.5em; margin-bottom:.5em; padding-bottom:0; border-bottom:1px dotted #CCCCCC; color:#666666;}

/****************************************
 page specfic: admin/searchqfrpe.html
****************************************/
body.qfrpe #content label {float:none; width:auto; display:block; text-align:left;}
body.qfrpe #content div {float:left; margin-right:2em; }
body.qfrpe #content div.office {width:35%; text-align:right; clear:left;}

/****************************************
 page specfic: admin/resultstoenterwinners
****************************************/
/*table.winners {border-top:1px dotted #999999;}
table.winners th {border-bottom:1px dotted #999999; background:#EFEFEF;}*/
table.winners td {padding-bottom:2em; vertical-align:top; width: 25%;}
table.winners th {padding:.1em .75em;}

/****************************************
 page specfic: admin/qualifiedenter
****************************************/
/*table.qualified {border-top:1px dotted #999999;}
table.qualified th {border-bottom:1px dotted #999999; background-color:#EFEFEF;}*/

/****************************************
 page specfic: admin/resultstoenterdates.html
****************************************/
body.dates form {text-align:center; width:auto;}
body.dates fieldset {text-align:left; width:auto;}
body.dates table {width:100%; border-collapse:collapse;}
body.dates table thead {border-top:1px dotted #666; border-bottom:1px dotted #666; background:#CCC;}
body.dates table tbody {border-bottom:1px dotted #666;}
body.dates table tbody td {padding:.25em 0;}
body.dates table tbody#govsenhouse {background:#EEE;} 
body.dates table tbody#dapd {background:#EEE;} 
body.dates table select {margin:.25em 0; width:100px;}

/****************************************
 page specfic: admin/results.html
****************************************/
/* Cross Index */
body.list table.crossindex {width:100%; border-collapse:collapse; text-align:left;}
body.list table.crossindex th,
body.list table.crossindex td {padding:.25em;}
body.list table.crossindex th {background:#CCCCCC;}
body.list table.crossindex td {border-bottom:1px dotted #666666;}
body.list table.crossindex .right {padding-right:1em;}
body.list table.crossindex tr.lineitem {background:#EEEEEE; color:#333333;}
body.list table.crossindex tr.lineitem td {padding-left:2.5em;}

body.manageindiv {background-color: #fff; margin: 0;}
body.manageindiv fieldset#manindv {width:90%;}

/****************************************
 page specfic: user/candidates.jsp
****************************************/
.candList {width: 42%;}

/****************************************
 page specfic: admin/election.jsp
****************************************/
th.reglink a, th.reglink a:link, th.reglink a:visited, th.reglink a:active {background: none !important; color: #336 !important; text-decoration: underline;}
table.list th.reglink a:visited:hover,
table.list th.reglink a:hover,
table.list th.reglink a:active {background: none; color: #669; text-decoration: none;}

/****************************************
 page specfic: election_special_enter.jsp
****************************************/
body.dates table.list tbody td.specialElectionType{padding-left:10%;}
body.dates table.list tbody td.specialReportType{padding-left:45%;}

/****************************************
 page specfic: help/demo
****************************************/
.demo div.screenshot.center.wider {width:670px;}
.demo div.screenshot.float img {border:3px solid #555;}
body.help h4 {margin: 2em 0 .5em;}
body.help div.helpContent {padding: 1em; background-color: #f0f0f0;}
body.help p.top {text-align:center; margin-top: 2em;}
p.explain {margin: 0; float: right; position:relative; top:-10px; z-index: 2; width:125px;}
body#searchCandidate p.right {clear: right;}
form {clear: both;}
body.helpPop #header, body.helpPop #footer {display: none;}
body.helpPop {margin:0;}
body.helpPop #content {padding: 1em 0; background-color:#E6E3C4;}
body.helpPop img {display:block; margin:auto; border: 2px solid #333;}


/*div.balanceFix {background-color:#FFFac5; padding: 8px 15px 1px; border: 2px solid #FDF276;}
div.balanceFix h4 {margin-right: 7em;}
div.balanceFixFull {background-color: #FFFac5; padding: 0 1em; margin:.5em auto 0 auto; border: 2px solid #FDF276; display:block;}
div.balanceFixFull h4 {font-weight: normal; color: #333; margin: 1em 7em 1em 1em; z-index: 99;}
div.balanceFixFull p {float: right; margin-top: -2em;}*/

div.balanceFix h4 {display: none;}
.help div.balanceFix p {display: none;}
div.balanceFixFull h4 {display: none;}
.login .button {width: 8%;}
.login p.center {padding-top: 1em;}

table {border-collapse: collapse;}
table.summarysection {width:90%; margin:0 auto;}
table.summarysection td {padding: .4em;}
tr.total td {border-top: 1px solid #999; color: #333; font-weight: bold; padding-bottom: 2em; text-transform: uppercase;}
tr.section td {border-top: 3px double #333; font-size: 110%;}
table.summarysection span.small {margin-left:1em; color:#666666;}
tr td.links {width:6em; text-align: right; border-top: none;}


h2 {
	margin-top:40px !important;
}
