/* === DOCUMENT SETUP === */
body {
  font: 80%/1.5 "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", "Bitstream Vera Sans", Verdana, "Verdana Ref", sans-serif;
  margin: 0;
  padding: 0;
  text-align: center; }

#wrapper {
  margin: 1.5em auto;
  text-align: left;
  width: 960px; }

/* === MAIN CONTENT === */
#manifesto {
  background: white url(/images/bg_manifesto.png) repeat-x;
  font: 100%/1.75 "Lucida Bright", Lucidabright, "Lucida Serif", Lucida, "Bitstream Vera Serif", Georgia, "Times New Roman", times, serif;
  float: left;
  padding: 40px;
  width: 510px; }

h1 {
  margin: 0 0 1em; }
  h1 a {
    background: url(/images/trhc_logo.png) no-repeat;
    display: block;
    height: 87px;
    overflow: hidden;
    margin: 0 auto;
    text-indent: -9999px;
    width: 261px; }

h3#manifesto {
  font-size: 1.5em;
  font-weight: normal;
  margin: 1.5em 0 1em; }

/* === SIDEBAR (Action Items) === */
#action_items {
  float: right;
  width: 355px; }

.item {
  margin: 0 0 1em;
  padding: 1.5em; }
  .item h4 {
    font-size: 1.25em;
    font-weight: normal;
    margin: 0;
    text-transform: uppercase; }
  .item p {
    margin: 0; }

#scoreboard {
  margin: 0 0 1em; }

p.contribute {
  margin: 1em 0 0; }
  p.contribute a {
    display: block;
    font-size: 1.1em;
    padding: 0.65em 0.75em;
    text-decoration: none;
    text-transform: uppercase; }
    p.contribute a:link, p.contribute a:visited {
      background: #aa0000 url(/images/bg_contribute.png) repeat-x;
      border: 2px solid #770000;
      color: white; }
    p.contribute a:hover, p.contribute a:active {
      background: #aa0000;
      color: #ffff99; }

/* === FOOTER === */
#disclaimer {
  clear: both; }
  #disclaimer p {
    font-size: 0.9em;
    margin: 0;
    padding: 1.5em 0; }
    #disclaimer p a:link, #disclaimer p a:visited {
      color: #ffff99; }
    #disclaimer p a:hover, #disclaimer p a:active {
      color: white; }

/* === HTML === */
img {
  border: 0; }

#manifesto a:link {
  color: #a80000; }
#manifesto a:visited {
  color: #770000; }
#manifesto a:hover, #manifesto a:active {
  color: #cc0000; }

table {
  border-collapse: collapse; }
  table th, table td {
    border: 1px solid #ddddee;
    line-height: 1.3;
    margin: 0;
    padding: 0.5em 0.75em;
    vertical-align: top; }

/* === FORM === */
form {
  margin: 0.5em 0; }

label {
  display: block;
  text-transform: uppercase; }

input {
  font-size: 1.1em;
  padding: 2px; }

.field {
  margin: 0.5em 0; }

.submit {
  margin: 0.5em 0; }
  .submit input {
    width: auto; }

#content-sub input {
  width: 95%; }

#social ul {
  list-style: none;
  margin: 1em 0;
  padding: 0;
  position: relative; }
  #social ul li {
    margin: 0;
    padding: 0; }
    #social ul li a {
      display: block;
      height: 34px;
      overflow: hidden;
      text-indent: -9999px; }

#twitter a {
  background: url(/images/twitter.png) no-repeat;
  width: 128px; }

#facebook {
  position: absolute;
  right: 25px;
  top: 0; }
  #facebook a {
    background: url(/images/facebook.png) no-repeat;
    width: 141px; }

#flickr a {
  background: url(/images/flickr.png) no-repeat;
  margin: 0.5em 0;
  width: 98px; }

/* === HOME PAGE ALERTS === */
#manifesto .alert {
  font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", "Bitstream Vera Sans", Verdana, "Verdana Ref", sans-serif;
  line-height: 1.3;
  margin: 1em 0 2em; }
  #manifesto .alert a {
    display: block;
    font-size: 1.1em;
    padding: 0.65em 0.75em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase; }
    #manifesto .alert a:link, #manifesto .alert a:visited {
      background: #aa0000 url(/images/bg_contribute.png) repeat-x;
      border: 2px solid #770000;
      color: white; }
    #manifesto .alert a:hover, #manifesto .alert a:active {
      background: #aa0000;
      color: #ffff99; }
  #manifesto .alert strong {
    color: #ffff99;
    font-size: 1.2em; }

/* === CANDIDATES === */
#candidates {
  border-bottom: 1px solid #dddddd;
  margin: 1em 0; }

.candidate {
  background: url(/images/checkbox.png) no-repeat;
  font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", "Bitstream Vera Sans", Verdana, "Verdana Ref", sans-serif;
  line-height: 1.35em;
  margin: 1em 0; }
  .candidate h4 {
    font-size: 1.2em;
    font-weight: bold;
    margin: 0; }
    .candidate h4 em {
      font-size: 0.8em;
      font-style: normal; }
  .candidate p {
    margin: 0; }

h3.district {
  font-size: 1.4em;
  margin: 1.5em 0 0; }

#location, #filed {
  margin: 0; }

#sites, #opponents {
  margin: 1em 0; }
  #sites h4, #opponents h4 {
    margin: 0; }
  #sites p, #opponents p {
    margin: 0; }

#view_options {
  margin: 1.5em 0; }
  #view_options h3 {
    font-size: 1.1em;
    margin: 0; }

body.candidates #manifesto .lost, body.candidates #manifesto .lost_runoff {
  background: none;
  color: #999999; }
  body.candidates #manifesto .lost a:link, body.candidates #manifesto .lost a:visited, body.candidates #manifesto .lost_runoff a:link, body.candidates #manifesto .lost_runoff a:visited {
    color: #999999; }
  body.candidates #manifesto .lost a:hover, body.candidates #manifesto .lost a:active, body.candidates #manifesto .lost_runoff a:hover, body.candidates #manifesto .lost_runoff a:active {
    color: #cc0000; }

body.candidates #manifesto .runoff_candidate {
  background: url(/images/runoff.png) no-repeat; }

/* === SITE ADMIN === */
#administration {
  background: #333333;
  border-bottom: 1px solid black;
  left: 0;
  position: absolute;
  text-align: center;
  top: 0;
  width: 100%;
  z-index: 1000; }
  #administration h4 {
    color: white;
    display: inline;
    margin: 0;
    padding: 0 2em; }
  #administration ul {
    display: inline;
    list-style: none;
    margin: 0;
    padding: 0; }
    #administration ul li {
      display: inline;
      margin: 0;
      padding: 0 1em; }
      #administration ul li a {
        color: #cccc99;
        font-size: 0.9em;
        line-height: 2em; }

table.admin {
  border-collapse: collapse;
  margin: 1em 0; }
  table.admin th, table.admin td {
    border: 1px solid #cccccc;
    margin: 0;
    padding: 5px;
    vertical-align: top; }
  table.admin label {
    color: #042144;
    font-family: Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT", "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, Geneva, "Helvetica Neue", Helvetica, Arial, sans-serif; }

/* === FLASH MESSAGES === */
#flash-notice, #flash-error {
  color: white;
  font-size: 1.2em;
  margin: 0 0 1em;
  padding: 0.5em 0.75em; }

#flash-notice {
  background: #007700; }

#flash-error {
  background: #aa0000; }

/* === Rails Form Validations === */
.fieldWithErrors input {
  border: 2px solid red; }

#errorExplanation {
  border: 2px solid red;
  padding: 7px;
  padding-bottom: 12px;
  margin-bottom: 20px;
  background-color: #f0f0f0; }

#errorExplanation h2 {
  text-align: left;
  font-weight: bold;
  padding: 5px 5px 5px 15px;
  font-size: 12px;
  margin: -7px;
  background-color: #cc0000;
  color: white; }

#errorExplanation p {
  color: #333333;
  margin: 1em 0;
  padding: 5px; }

#errorExplanation ul {
  margin: 1em; }

#errorExplanation ul li {
  font-size: 12px;
  list-style: square; }

body {
  background: #0e2e54 url(/images/bg_dark.png) repeat-x; }

#manifesto {
  border: 2px solid #345883; }

.item {
  background: #4d729d;
  border: 2px solid #345883; }
  .item h4 {
    color: #ffff99; }

label {
  color: #c5d4e5; }

#disclaimer p {
  color: white; }
