body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

fieldset, img, a img {
  border: 0; }

address, caption, cite, code, dfn, em, th, var {
  font-style: normal;
  font-weight: normal; }

a img, h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {
  vertical-align: middle; }

/* ----------------------------------------------------------------------------- */
/* RESET */
/* ----------------------------------------------------------------------------- */
ul, ol, dir, menu {
  list-style-image: none;
  list-style-position: none;
  list-style-type: none; }

/* ----------------------------------------------------------------------------- */
/* CORE ELEMENT STYLES */
/* ----------------------------------------------------------------------------- */
body {
  font-family: "Trebuchet MS", "Lucida Grande", Tahoma, sans-serif;
  font-size: 12px; }

a {
  color: #1e346d; }

.microcopy {
  color: #4171a0;
  font-size: 10px; }

h1 {
  color: #993333;
  font-size: 1.5em;
  line-height: 1em;
  margin-top: 0;
  margin-bottom: 1em; }
  h1 span {
    font-size: 12px; }

h2 {
  color: #191916;
  font-size: 2.0em;
  line-height: 1.2em;
  margin-top: 0;
  margin-bottom: 1em;
  margin-top: 1em; }
  h2 span {
    color: #921412;
    font-weight: bold; }

h3 {
  color: #1a2d6f;
  font-size: 1.25em;
  line-height: 1.2em;
  margin-top: 0.8em;
  margin-bottom: 1em; }
  h3 span {
    font-weight: normal;
    font-size: 10px; }

p, form {
  line-height: 1.5em;
  font-size: 1em;
  margin-top: 1.5em;
  margin-bottom: 1.5em; }

td, th {
  padding: 4px 6px; }

th {
  font-weight: bold;
  background: #CDCDCD url("../images/th_bg.png") repeat-x scroll left top;
  color: #555555; }

tr.odd {
  background: transparent; }

tr.even {
  background: #6a6a6a; }

/* ----------------------------------------------------------------------------- */
/* FURNITURE */
/* ----------------------------------------------------------------------------- */
body {
  text-align: center;
  color: #191916;
  background-color: #d9c098;
  background-image: url("../images/beach_bg.jpg");
  background-position: top center;
  background-repeat: no-repeat; }

#Page {
  margin: 0 auto;
  text-align: left;
  width: 780px;
  padding: 18px 0; }

.PageContent {
  background: url("../images/fade.png");
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px;
  padding: 20px 200px 20px 75px; }

#InnerPage {
  position: relative; }

#Header {
  position: relative; }
  #Header h1, #Header h2, #Header h3, #Header h4, #Header h5, #Header h6 {
    margin: 0;
    padding: 0; }

a#Logo {
  display: block;
  text-indent: -9000px;
  background: url("../images/logo.png") no-repeat;
  width: 150px;
  height: 64px; }

#Slogan {
  text-indent: -9000px;
  height: 15px;
  background: url("../images/slogan.png") top right no-repeat;
  position: absolute;
  top: 0;
  right: 0;
  width: 320px; }

#Utilities {
  text-align: right;
  margin-bottom: 1em; }

.Sidebar {
  width: 220px; }
  .Sidebar form {
    margin: 12px; }

.RightSidebar {
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  float: right; }
  .RightSidebar a {
    color: #e9e9e8; }

body.people.new .RightSidebar {
  background: url("../images/bluefade.png") 0 150px repeat-y;
  padding-bottom: 0;
  margin-top: 35px; }

.LeftSidebar {
  float: left;
  background: #9cc8f7;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px; }

#Footer {
  clear: both;
  font-size: 11px;
  border-top: 1px solid #8b6426;
  position: relative;
  min-height: 250px;
  margin-top: 2em;
  color: #8b6426;
  padding: 1em; }
  #Footer .Copyright {
    position: absolute;
    top: 1em;
    right: 0;
    text-align: right; }
  #Footer a {
    color: #4a3410; }

/* ----------------------------------------------------------------------------- */
/* COMPONENTS */
/* ----------------------------------------------------------------------------- */
a.Login {
  font-weight: bold;
  font-size: 110%; }

.invisible {
  display: none; }

ul.Menu li {
  display: inline;
  list-style-image: none;
  list-style-position: outside;
  list-style-type: none;
  margin: 0 0.25em; }
ul.Menu li:first-child {
  margin-left: 0; }

table.Listing {
  width: 100%;
  margin-bottom: 1.5em; }
  table.Listing td, table.Listing th {
    border-bottom: 1px dotted #DDDDDD;
    border-right: 1px dotted #CCCCCC; }
  table.Listing td:last-child, table.Listing th:last-child {
    border-right: 0; }
  table.Listing tr:last-child td, table.Listing tr:last-child th {
    border-bottom: 0; }
  table.Listing thead th {
    border-right: 1px dotted #FFFFFF;
    color: #555555; }

.GoogleViz {
  width: 100%;
  padding: 0;
  margin: 0; }

table.annotatedtimelinetable {
  margin: 0 0; }
  table.annotatedtimelinetable td {
    padding: 0; }

.Module {
  background: url("../images/tint.png") repeat;
  color: #e9e9e8;
  -webkit-border-radius: 7px;
  -moz-border-radius: 7px;
  padding: 4px 0 10px 0; }
  .Module h2, .Module h3, .Module h4 {
    color: #ffffff;
    margin: 4px 0;
    padding: 0 4px; }

div.CurrentStatus {
  padding: 8px;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  color: #ffffff;
  text-align: center; }
  div.CurrentStatus.Over {
    background-color: #630606; }
  div.CurrentStatus.Under {
    background-color: #264409; }

span.CurrentWeight {
  display: block;
  font-family: "Trebuchet MS", Tahoma;
  font-weight: 900;
  font-size: 34px; }

span.CurrentDelta {
  display: block;
  color: #7bafe1;
  font-size: 15px;
  text-align: center; }

/* ----------------------------------------------------------------------------- */
/* USER MENU */
/* ----------------------------------------------------------------------------- */
ul.UserMenu {
  color: #224a85;
  margin: 1em 1em 2em 2em; }
  ul.UserMenu li {
    display: block !important;
    margin: 0 0 0!important; }
  ul.UserMenu a {
    display: block;
    color: #224a85;
    font-size: 13px;
    line-height: 17px;
    font-weight: bold;
    text-decoration: none; }
    ul.UserMenu a:hover {
      text-decoration: underline; }
    ul.UserMenu a.WeighIn {
      background: url("../images/scale.png") no-repeat;
      padding-left: 45px;
      line-height: 38px;
      height: 45px;
      font-size: 18px; }
    ul.UserMenu a.NewTarget {
      background: url("../images/target.png") 8px 0 no-repeat;
      padding-left: 40px;
      line-height: 25px; }
    ul.UserMenu a.AccountSettings {
      background: url("../images/id_card2.png") 8px 0 no-repeat;
      padding-left: 40px;
      line-height: 24px; }

/* ----------------------------------------------------------------------------- */
/* MESSAGING */
/* ----------------------------------------------------------------------------- */
.Messages {
  padding: 1.5em 1.5em 1.5em 50px;
  margin: 1em 0;
  border: 1px solid #DDDDDD; }

.Messages.error, .Messages.notice {
  background: #FFF6BF url("../images/forbidden.png") no-repeat 9px 9px;
  color: #514721;
  border-color: #FFD324; }

.Messages.message {
  background: #E6EFC2 url("../images/message.png") no-repeat 9px 9px;
  color: #264409;
  border-color: #C6D880; }

/* ----------------------------------------------------------------------------- */
/* FORMS */
/* ----------------------------------------------------------------------------- */
.RightSidebar form {
  background: none;
  padding: 0; }

form {
  background: url("../images/fade.png") repeat;
  padding: 10px;
  -moz-border-radius: 12px;
  -webkit-border-radius: 12px; }
  form label {
    display: block;
    font-weight: bold;
    padding-bottom: 1px; }
  form label.choice {
    display: block;
    font-weight: normal;
    /* :line-height 150% */ */
    text-align: left;
    margin: -18px 0 0 18px;
    width: 60%; }
  form li {
    list-style-image: none;
    list-style-position: outside;
    list-style-type: none;
    line-height: 20px;
    margin-bottom: 1em; }
    form li span {
      display: block;
      float: left;
      overflow: auto;
      width: 60%; }
    form li ul {
      clear: left;
      margin-left: 120px; }
    form li label {
      float: left;
      line-height: 20px;
      margin-right: 10px;
      text-align: right;
      width: 110px; }
    form li .microcopy {
      display: block;
      margin-left: 120px; }
    form li .microcopy.error {
      background: #630606;
      color: #ffffff;
      padding: 0 0 0 5px; }
  form li.buttons {
    clear: both;
    padding-top: 12px;
    margin-left: 120px; }

.Sidebar form label {
  float: none; }
.Sidebar form li label {
  float: none;
  text-align: left; }
.Sidebar form li .microcopy {
  margin-left: 0; }
.Sidebar form li.buttons {
  margin-left: 0; }

input.text,
input.password,
textarea {
  font-family: "Inconsolata", "Consolas", "Monaco", fixed-width;
  font-size: 16px;
  line-height: 16px;
  padding: 2px;
  border: 2px solid #a4c5e6; }

textarea {
  font-size: 13px !important; }

input.checkbox,
input.radio {
  display: block;
  height: 13px;
  margin: 1px 0;
  padding: 0;
  width: 13px; }

input.submit {
  font-weight: bold;
  line-height: 13px;
  font-size: 13px;
  padding: 4px; }

body.people.new input.submit {
  line-height: 16px;
  font-size: 16px; }

.fieldWithErrors {
  display: inline; }
  .fieldWithErrors input.text,
  .fieldWithErrors input.password,
  .fieldWithErrors textarea {
    border: 2px solid #630606;
    background-color: #FBe3E4; }

#errorExplanation {
  width: 400px;
  border: 2px solid #CF0000;
  padding: 0;
  padding-bottom: 12px;
  margin-bottom: 20px;
  background-color: #f0f0f0; }
  #errorExplanation h2 {
    text-align: left;
    padding: 5px 5px 5px 15px;
    margin: 0;
    font-weight: bold;
    font-size: 12px;
    background-color: #c00;
    color: #fff; }
  #errorExplanation p {
    color: #333;
    margin-bottom: 0;
    padding: 8px; }
  #errorExplanation ul {
    margin: 2px 24px; }
    #errorExplanation ul li {
      font-size: 12px;
      list-style: disc; }

body.weights #weight_actual {
  font-size: 20px;
  line-height: 20px; }

.DatePicker {
  font-size: 9px; }

ul.Avatars li {
  display: block;
  float: left;
  width: 60px;
  margin-right: 10px;
  margin-bottom: 10px; }

.RightSidebar #new_person h2 {
  text-indent: -9000px;
  margin-bottom: 0;
  background: url("../images/h2_get_started.png") no-repeat; }

table.HomePageModules {
  padding: 0;
  margin: 1em auto 0 auto;
  border-collapse: collapse; }
  table.HomePageModules h2 {
    margin: 0; }
  table.HomePageModules td {
    vertical-align: top;
    width: 210px; }
  table.HomePageModules td.inferior {
    padding-top: 3em; }
  table.HomePageModules td.BelowTheLine h2 {
    text-indent: -9000px;
    background: url("../images/h2_below_the_line.png") no-repeat;
    margin-bottom: 0; }
  table.HomePageModules td.BelowTheLine p {
    margin-top: 0; }
  table.HomePageModules td.HowItWorks {
    -moz-border-radius: 7px;
    width: 275px;
    background: url("../images/bluefade.png") repeat-y; }
    table.HomePageModules td.HowItWorks h2 {
      text-indent: -9000px;
      background: url("../images/h2_how_it_works.png") no-repeat;
      margin: 12px 12px 0 12px; }
    table.HomePageModules td.HowItWorks ol {
      margin: 0 1em;
      list-style-type: decimal; }
      table.HomePageModules td.HowItWorks ol li {
        margin-left: 25px;
        margin-bottom: 1em;
        padding-left: 5px;
        font-size: 20px;
        font-weight: bold;
        color: #ffffff; }
        table.HomePageModules td.HowItWorks ol li p {
          font-size: 13px;
          color: #191916; }
        table.HomePageModules td.HowItWorks ol li span.microcopy {
          font-size: 11px;
          color: #0764da; }
  table.HomePageModules td.SocialNetworks {
    padding-left: 20px; }
    table.HomePageModules td.SocialNetworks h2 {
      text-indent: -9000px;
      background: url("../images/h2_social_networks.png") no-repeat;
      margin-bottom: 0; }
    table.HomePageModules td.SocialNetworks p {
      margin-top: 0; }
