
/* -----------------------------------------
 - Main layout styles ----------------------
 ---------------------------------------- */

* { padding: 0; margin: 0; }

body {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  background: url(/images/stripeback.gif) repeat;
}

#site-wrapper-outer {
  margin: 1em;
}

#site-wrapper-inner {
  background-color: white;
  margin: 1em auto;
  padding: 0.5em 0.8em;
  max-width: 1050px;
  min-width: 900px;
  -moz-border-radius: 0.7em;
  border-radius: 0.7em;
}

#logo {
  float: left;
  padding: 1.2em 1.2em 0em 1.2em;
}

/*
#header-statistics {
  float: right;
  text-align: right;
  margin: 0.3em 0.3em;
}

#header-statistics .army-strength {
  color: #6a7;
  font-weight: bold;
}

#header-statistics .army-strength .army-count {
  color: #373737;
  font-size: 120%;
}

#header-statistics table {
  margin: 0.5em 0;
  font-size: 80%;
}

#header-statistics table thead {
  font-weight: bold;
}

#header-statistics table td {
  padding: 0.1em 0.3em;
}

#header-statistics table td.label {
  color: #6a7;
  font-weight: bold;
}
*/

#login-info {
  margin-top: 0.5em;
  margin-right: 0.5em;
  text-align:right;
  float: right;
  font-size: 95%;
  color: #777777;
}

#login-info > div {
  margin-bottom: 0.4em;
}

#login-info strong { color: #555555; }

/* navigation panel */

#nav-panel .buttons > div {
  float: left;
  margin: 0;
  padding: 8px 0 0 0;
  text-align: center;
  height: 23px;
  border-right: #165a28 1px solid; /* #42aa59 */
}
#nav-panel .buttons > div:last-of-type {
  border-right: none;
}

#nav-panel-row2 .buttons > div {
  border-right: #165a28 1px solid; /* #003110 */
  padding: 8px 0 0 0;
}

#nav-panel-row2 .buttons > div:last-of-type {
  border-right: none;
}

#nav-panel a {
  font: 14px 'Lucida Sans Unicode', 'Lucida Grande', sans-serif ;
  font-weight: normal;
  color: #fff;
  text-decoration: none;
  outline: none; /* hide dotted outline in Firefox */
}

#nav-panel a:hover {
  color: #ffdd79;
  text-decoration: none;
}

#nav-panel-row1 {
  /* Note we have the background-color provided, just so we don't have a white background while
     the background image loads. */
  background: #3F9A3D url(/images/nav-panel/background.jpg);
  overflow: hidden;
  height: 33px;
}

#nav-panel-row2 {
  /* Note background-color here, too, like above. */
  background: #2E822C url(/images/nav-panel/background.jpg);
  overflow: hidden;
  height: 33px;
}

#nav-panel .left-endcap {
  float: left;
  height: 33px;
  margin: 0;
  padding: 0;
}

#nav-panel .right-endcap {
  float: right; 
  height: 33px;
  margin: 0;
  padding: 0;
}

#nav-panel-row1 {
  width: 100%;
}

#nav-panel-row1 .left-endcap {
  background-image: url(/images/nav-panel/left-endcap.jpg);
  width: 4px;
}

#nav-panel-row1 .right-endcap {
  background-image: url(/images/nav-panel/right-endcap.jpg);
  width: 4px;
}

#nav-home {
  width: 5%;
  /*padding: 8px 0 0 0;*/
}
#nav-home a {
  background-image: url(/images/nav-panel/house.png);
  background-repeat: no-repeat;
  margin: 0 auto;
  width: 20px;
  padding: 0;
  display: block;
}
#nav-home a:hover {
  background-image: url(/images/nav-panel/house-hover.png);
}


#nav-foundation a {
  color: #f8ecc7;
}
#nav-foundation a:hover {
  color: #ffdd79;
  text-decoration: none;
}

#nav-about { width: 11%; }
#nav-newsletter { width: 15%; }
#nav-contribute { width: 12%; }
#nav-foundation { width: 27%; }
#nav-contact { width: 13%; }
#nav-login { width: 15%; }

#nav-panel-row2 {
  width: 600px;
  margin: -1px auto 0 auto;
}

#nav-panel-row2 .buttons #nav-agenda, #nav-panel-row2 .buttons #nav-tell-congress {
  width: 220px;
}
#nav-panel-row2 .buttons #nav-heresies {
  width: 130px;
  border-right: none; /* Required for stupid IE (versions 8 and below, at least) */
}

#nav-panel-row2 .left-endcap {
  background-image: url(/images/nav-panel/left-curvecap.jpg);
  width: 11px;
}

#nav-panel-row2 .right-endcap {
  background-image: url(/images/nav-panel/right-curvecap.jpg);
  width: 11px;
}

.single-column {
  margin-left: auto;
  margin-right: auto;
  max-width: 45em;
}

#dynamic-content {
  padding: 1.2em 1em 1em 1em;
  min-height: 20em;
  border-top: 0.1em solid #eee;
  margin-top: 1em;
}

#founders-sidebar {
  float: right;
  min-width: 10em;
  max-width: 20em;
  font-size: 85%;
  padding: 0.0em 0.8em 0.5em 0.8em;
  margin: 0.0em 0.2em 0.5em 0.5em;
  background-color: #eee;
  border: 0.2em solid #cec;
  -moz-border-radius: 0.2em;
  border-radius: 0.2em;
}

#footer { 
  font-family: verdana, Arial, sans-serif;
  font-size: 80%;
  clear: both;
  text-align: center;
  background-color: #c5e8cd;
  -moz-border-radius: 0.5em;
  border-radius: 0.5em;
  padding: 0.5em;
}

#footer > div {
  margin: 0.5em 0;
  color: #555;
}

/* -----------------------------------------
 -------------- Forms Styles ---------------
 ---------------------------------------- */

button::-moz-focus-inner {
  border: 0;
  padding: 0;
  margin: 0;
}

button::-webkit-focus-inner {
  border: 0;
  padding: 0;
  margin: 0;
}

.ddc_form_buttons button {
  outline: none; /* hide dotted outline in Firefox */
  cursor:pointer;

  font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif;
  font-size:12px;
  line-height: 14px;
  text-decoration:none;
  font-weight:bold;
  color: white;

  border: 0 none !important;
  margin: 0 !important;
  height: 26px;
}

.ddc_form_buttons button:hover {
  color: white;
}

.ddc_form_buttons button:active {
  color: white;
}

.ddc_form_buttons buttom div {
  clear:both;
  height: 26px;
  border: 0 !important;
  margin: 0 !important;
  position: relative;
  display:inline;
  white-space: nowrap;
}

.ddc_form_buttons button div:first-child {
  background: url("/images/ddc_form_button-3.gif") no-repeat scroll left top transparent;
  display:inline;
  padding: 6px 0 6px 6px;
}

.ddc_form_buttons button div:first-child+div {
  background: url("/images/ddc_form_button-3.gif") no-repeat scroll center top transparent;
  display:inline;
  padding: 6px 0 6px 0;
}

.ddc_form_buttons button div:first-child+div+div {
  background: url("/images/ddc_form_button-3.gif") no-repeat scroll right top transparent;
  display:inline;
  padding: 6px 6px 6px 0;
}

.ddc_form_buttons button:hover div:first-child {
  background-position: left -26px;
}

.ddc_form_buttons button:hover div:first-child+div {
  background-position: center -26px;
}

.ddc_form_buttons button:hover div:first-child+div+div {
  background-position: right -26px;
}

.ddc_form_buttons button:active div:first-child {
  background-position: left bottom;
}

.ddc_form_buttons button:active div:first-child+div {
  background-position: center bottom;
}

.ddc_form_buttons button:active div:first-child+div+div {
  background-position: right bottom;
}

*:first-child+html button {
  overflow: visible;
  margin: 0;
  padding: 6px 0px 6px 0; /* IE7 */
}

*:first-child+html button div {
  overflow: hidden;
  margin: 0;
}

.ddc_form_buttons button img, .ddc_form_buttons a img {
  margin:0 3px -3px 0 !important;
  padding:0;
  border:none;
  width:16px;
  height:16px;
}

form.ddc-postback table.no-padding td {
  padding: 0px;
}

/* -----------------------------------------
 ------------- Toolbox Styles --------------
 ---------------------------------------- */

.toolbox-side-panel {
  float: right;
  width: 30%;
}

.middlecolumn.toolbox {
  border: none;
  border-bottom: none;
  -moz-border-radius: 0;
  border-radius: 0;
  margin-left: 0px;
  margin-right: 0px;
}

.toolgroup { 
  font-family: verdana, Arial, sans-serif;
  /* font-size: 80%; */
  clear: both;
  text-align: left;
  font-weight: normal;
  padding: 0.5em;
  margin: 0.5em;
}

.toolgroup.border {
  -moz-border-radius: 0.5em;
  /* background-color: #eeffee; */ /* #c5e8cd; */
  border-radius: 0.5em;
}

.toolgroup h1 { text-shadow: none; }
.toolgroup h2 { text-shadow: none; }
.toolgroup h3 { text-shadow: none; }

.toolgroup a
{
  color: #05671A;
  background-color: transparent;
  border-color: black; 
  border-bottom-width: 0px;
  border-left-width: 0px;
  border-right-width: 0px;
  border-top-width: 0px;
  border-style: dotted;
  text-decoration: none;
}
.toolgroup a:hover   {text-decoration: none; border-bottom-width: 1px;}

.toolgroup.green a {text-decoration: none; color: #05671A;}
.toolgroup.green a:link    {color: #05671A;}
.toolgroup.green a:visited {color: #05671A;}
.toolgroup.green a:active  {color: #05671A;}
.toolgroup.green a:hover   {color: #05671A;}

.toolgroup .highlight {
  text-align: left;
  padding: 0.5em;
  background-color: #f0fbf0; /* #d2e9d3;  #efe; */
  border: 0.1em solid #3e8d4b; /* #bdb; */
  -moz-border-radius: 0.2em;
  border-radius: 0.2em;
  margin: 1em 0 1em;
}

.toolgroup .highlight .unhighlight {
  text-align: left;
  padding: 0.5em;
  background-color: #fff;
  -moz-border-radius: 0.2em;
  border-radius: 0.2em;
  margin: 1em 0 1em;
}

.toolgroup.green.border { 
  border: 0.1em solid #367a41; /* #bbddbb; */
}
.toolgroup.green form .submit {
  /* same as site default */
}
.toolgroup.green .highlight {
  /* same as default highlight */
}

.toolgroup.green.inactive {
  background-color: #d1f6d9; /* #c5e8cd; */
}

.toolgroup.blue.border { 
  border: 0.1em solid #97b7ff;
}

.toolgroup.blue form .submit {
  border: 0.1em solid #97b7ff;
  background-color: #e3ecff;
}
.toolgroup.blue .highlight {
  border: 0.1em solid #97b7ff;
  background-color: #e3ecff;
}

.toolgroup.blue.inactive {
  background-color: #bed0f8; /* #9cb8f8; */
}

.toolgroup.blue a {text-decoration: none; color: #123583;}

.toolgroup.blue a:link    {text-decoration: none; color: #123583;}
.toolgroup.blue a:visited {text-decoration: none; color: #123583;}
.toolgroup.blue a:active  {text-decoration: none; color: #123583;}
.toolgroup.blue a:hover   {text-decoration: none; color: #123583;}

.messages.sentItem {
  color: #777;
}

/* -----------------------------------------
 - Site-wide styles ------------------------
 ---------------------------------------- */

.clear-hack { clear: both; }

a:link    {text-decoration: underline; color: #05671A;}
a:visited {text-decoration: underline; color: #3E8478;}
a:active  {text-decoration: underline; color: #05671A;}
a:hover   {text-decoration: underline; color: #A90359;}

/* XXX: Ideally we wouldn't be using <hr/> tags... */
hr {
  border: none 0; 
  border-top: 0.1em dotted #7f9980;
  height: 0.1em; /* whatever the total width of the border-top and border-bottom equal */
}

p {
  margin-bottom: 1em;
  line-height: 160%;
}

h1 {
  font-size: 140%;
  font-weight: bold;
  text-shadow: #e4e4e4 -0.1em 0.15em 0;
  margin-bottom: 0.5em;
}

h2 {
  font-size: 130%;
  font-weight: bold;
  text-shadow: #eee -0.1em 0.15em 0;
  margin-bottom: 0.5em;
}

h3 {
  font-size: 100%;
  font-weight: bold;
  margin-bottom: 0.3em;
}

ul.nav-menu {
  background: url(/images/campaign-nav-menu-bg.jpg) left bottom repeat-x;
  height: 22px;
  border: 1px solid #ccc;
  border-bottom: 1px solid #aaa;
  border-right: 1px solid #aaa;
  margin: 0;
}

ul.nav-menu > li {
  float: left;
  list-style-type: none;
  font-family: Trebuchet, Verdana, Arial, sans-serif;
  color: #666666;
  text-align: center;
  font-weight: bold;
  letter-spacing: normal;
  text-decoration: none;
  border-right: 1px solid #ccc;
}

ul.nav-menu > li:last-of-type {
  border-right: none;
}

ul.nav-menu > li.selected {
  background-color: #fff;
  color: #4F7563;
  font-weight: bold;
}

ul.nav-menu > li a {
  color: #666666;
  text-align: center;
  font-weight: bold;
  text-decoration: none;
  padding: 0 0.4em;
}

ul.nav-menu > li a:hover {
  color: #45774d;
  text-align: center;
  font-weight: bold;
  text-decoration: underline;
}

ul.nav-menu > li > ul.dropdown { display: none; }
ul.nav-menu > li:hover > ul.dropdown { display: block; }

ul.nav-menu ul.dropdown {
  margin: 0;
  padding: 0;
  float: left;
  z-index: 500;
  position: absolute;
  border-bottom: 0.1em solid #dadada;
}

ul.nav-menu ul.dropdown li {
  float: none;
  background-color: #dadada;
  border: 0.1em solid #eee;
  border-top: 0.1em solid #dfdfdf;
  border-left: 0.1em solid #ccc;
  margin: 0;
  padding: 0.1em 0.5em;
  font-size: 75%;
  width: auto;
  min-width: 12em;
  list-style-type: none;
  list-style-position: outside;
  text-align: left;
}

/* -----------------------------------------
 ---------------- Front page ---------------
 ------------------------------------------- */

/* ---------------- Layout ----------------- */
#front-page {
  /*min-width: 1025px;*/
  margin-top: 5px;
}

.middlecolumn {
  padding: 0;
  border: 0.2em solid #C9E0C6;
  border-bottom: none;
  -moz-border-radius: 0.2em;
  border-radius: 0.2em;
  margin-left: 260px;
  margin-right: 260px;
}

.sidecolumn {
  width: 250px;
  min-width: 250px;
  max-width: 250px;
}

.sidecolumn > div {
  padding: 0.0em 0;
}

.sidecolumn.left {
  float: left;
}

.sidecolumn.left > div:not(:last-child) { border-bottom: 0.1em solid #eee; }
.sidecolumn.left > div:not(:last-child) { padding-top: 0; }

.sidecolumn.right {
  float: right;
}

.sidecolumn ul {
  list-style-position: inside;
  margin-left: 0.5em;
}

/* ------------Tooltip hovers ------------ */

.hover-anchor {
  position: relative;
}

.hover-group div:first {
  position:relative;
  padding:0px;
  border:1px dotted #999;
  background-color:#fff;
}

.hover-group a {
  display: inline;
  padding: 0px;
  text-decoration: none;
}

.hover-group a:hover {background:transparent}
.hover-group a span {display:none}
.hover-group a:hover span {
  display: inline;
  position: absolute;
  top: 0px;
  left: 0px;
  padding: 0px;
}

.tooltip {
  color: black;
  background-color: white;
  -moz-border-radius: 0.4em;
  border-radius: 0.4em;
  border: 1px solid gray;
  margin-left: 3em;
  padding: 5px;
  position: relative;
  z-index: 999;
  vertical-align: middle;
}

.hover-group ul {
  margin-bottom: 0.5em;
  padding: 0px;
}

/* ---------------- Misc ----------------- */

#front-page h3 {
  padding: 0.4em 0;
}

#front-page #our-key-proposals > div {
  padding-bottom: 1em;
}

/* obsolete */
#front-page #our-key-proposals > div img {
  float: left;
  vertical-align: middle;
}

#front-page #our-key-proposals .link {
  padding-left: 0.3em;
}

#front-page .stats {
  font-weight: bold;
  text-align: center;
  padding: 1em 0 0.3em;
}

#front-page .stats > div {
  margin: 0.75em 0;
}

#front-page .stats .label {
  color: #25873a;
  font-size: 105%;
}

#front-page .stats .value {
  color: #05671a;
  font-size: 140%;
  padding: 0.4em 0;
}

#front-page #social-networking {
  /*padding: 1.5em 0 0.5em;*/
  margin-top: 1em;
}

#front-page #social-networking h3 {
  margin-top: 1em;
}

#front-page #social-networking .networking-link {
  /*clear: both;*/
  padding: 0 0 2em 0;
}

/*#front-page #social-networking div.clear-hack {
  padding-bottom: 1em;
}*/

#rtba-coalition {
  clear: both;
  padding-top: 1em;
  /*border-top: 0.1em solid #eee;*/
}

#rtba-coalition a {
  font-size: 80%;
}

#rtba-coalition #newest-members {
  background-color: #e1ecee;
  margin-bottom: 8px;
  padding: 0.4em 0.7em 0.4em;
  -moz-border-radius: 0.3em;
  border-radius: 0.3em;
}

#rtba-coalition .member {
  padding: 0.2em;
  line-height: 175%;
}

#front-page #subscribe-form {
  background-color: #FFFCB1;
  border: 0.1em solid #EFECA1;
  padding: 0.7em;
  margin: 0;
}

#front-page #subscribe-form div {
  padding: 0;
}

#front-page #subscribe-form input {
  margin: 0.2em 0;
}

#front-page #subscribe-form input.email {
  width: 95%;
}

/*
#front-page #subscribe-form input[type='submit'] {
  width: 5em;
}
*/

#search-form {
  margin: 0.5em 0 1em 0;
}

#front-page #search-form {
  margin: 0.5em 0;
  text-align: center;
}

#search-form input[type='text'] {
  width: 18em;
  border: 1px solid #4b6851;
  height: 18px;
  padding: 2px 2px 0 2px;
  font-size: 14px;
}

ul.blog-menu > li {
  width: 33%;
  margin-bottom: 2em;
}

#blog-entries .entry {
  padding: 1em 0 0.7em;
  margin-bottom: 0.6em;
  border-bottom: 0.1em solid #e2eee2;
  min-height: 10em;
}

#blog-entries .date {
  font-size: 85%;
}

#blog-entries .org-icon {
  float: right;
}

#blog-entries .content {
  /*clear: both;*/
  margin-top: 0.5em;
  border-top: 0.1em dotted #eee;
}

#blog-entries .title {
  font-size: 115%;
  font-weight: bold;
  display: block;
  margin: 0.4em 0;
}

#blog-entries .read-on {
  margin: 1em 0;
}


/* -----------------------------------------
 - Campaign lists --------------------------
 ---------------------------------------- */
 
.campaign-list {
  width: 385px;
  float: left;
}

.campaign-list .campaign {
  min-height: 145px;
  border: 0.1em solid #C6E8CF;
  border-bottom: 0.2em solid #C6E8CF;
}

.campaign-list .selected {
  background-color: #faf7f0;
}

.campaign-list .not-selected {
  color: grey;
}

.campaign a {
  display: block;
}

.campaign a.title {
  color: inherit;
  text-decoration: none;
}

.campaign .icon {
  float: left;
  padding: 0.5em 1em 0.5em 0.5em;
}

.campaign .text {
  padding: 0.4em 0.8em;
  font-family: Verdana, Arial, Helvetica, sans-serif;
  line-height: 133%;
}

.campaign .text .title {
  font-weight: bold;
  margin-bottom: 0.5em;
}

#join-our-campaigns-header {
  background-color: #52905f;
  width: 366px;
  height: 30px;
  padding: 0;
  border-right: 19px solid #C6E8CF;
}

/* Hide the header on the main campaigns-list page, as the campaigns are now left-floated... */
#campaigns-list-page #join-our-campaigns-header {
  display: none;
}

#campaigns-list-page h1 {
  margin-bottom: 1em;
}

#campaigns-list-page .campaign-list {
  width: 100%;
}

#campaigns-list-page .campaign-list .campaign {
  float: left;
  width: 48%;
  border: 0.1em solid #ddd;
  border-bottom: 0.1em solid #ededed;
  border-right: 0.1em solid #ededed;
  margin: 0.2em;
}


/* -----------------------------------------
 - Our Heresies ----------------------------
 ---------------------------------------- */

.quotes {
  margin: 1.5em 0;
}

.quotes ul {
  margin: 0;
}

.quotes li {
  list-style-type: none;
  float: left;
  padding: 1em 1.5em;
  min-height: 6.5em;
  border-left: 0.1em solid #eee;
}
.quotes li:first-of-type {
  border-left: none;
}

.quote {
  color: #555;
}

.credited-to {
  color: #888;
  margin-left: 0.5em;
}


/* -----------------------------------------
 - Blog ------------------------------------
 ---------------------------------------- */

ul.blog-links {
  margin: 0;
}

ul.blog-links li {
  list-style-type: none;
  float: left;
  padding: 1em;
}


/* -----------------------------------------
 - Choose/view-rep screen ------------------
 ---------------------------------------- */

ul.representatives {
  margin: 0.2em 0;
}

ul.representatives li {
  list-style-type: none;
  float: left;
  padding: 0.5em;
  margin: 0 0.5em 1em;
  width: 15em;
}


/* -----------------------------------------
 - Newsletter-signup form ------------------
 ---------------------------------------- */

form#email-confirmation {
  margin-bottom: 2em;
}

form#newsletter-signup fieldset, form#email-confirmation fieldset {
  border-bottom: none;
  margin-bottom: 0;
}

form#newsletter-signup .submit, form#email-confirmation .submit {
  margin-top: 0;
  width: 80%;
}


/* -----------------------------------------
 - Candidates page -------------------------
 ---------------------------------------- */

/*table.candidates {
  font-family: Arial, Helvetica, “Helvetica Neue”, sans-serif;
}*/

table.candidates thead th, table.candidates tfoot th {
  font-size: 90%;
  font-weight: bold;
  border: 0.1em solid #C6C6BB;
  padding: 0.5em;
  background-color: #DBDBD2;
}

table.candidates tr td {
  font-size: 80%;
  font-weight: normal;
  border: 0.1em solid #C6C6BB;
  padding: 0.5em;
}

table.candidates tr td.odd {
  background-color: #F5F5F3;
}
