/* App-wide styles */

/* Reset */

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

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

fieldset,img {
  border: 0;
}

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

ol,ul {
  list-style: none;
}

caption,th {
  text-align: left;
}

h1,h2,h3,h4,h5,h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before,q:after {
  content: '';
}

abbr,acronym {
  border: 0;
}

a:link {
  color: #669900;
}

a:visited {
  color: #669900;
}

.field_with_errors {
  background-color: #fdd;
}

.clear {
  clear: both;
}

p.copy {
  margin-bottom: 1em;
  line-height: 1.4em;
}

input.text, textarea {
  border: 1px solid #929C90;
  padding: .1em;
  font: 11pt Verdana, sans;
  overflow: auto;
}

input.button {
  border: 1px solid #929C90;
  background: #fff;
}

.error {
  background: #ff8;
}

/* standard */

html {
  background: url(/images/bg_motif.jpg);
  height: 100%;
}

body {
  font: 10pt Verdana, sans;
  height: 100%;
  background: url(/images/dropshadow.png) repeat-y 50% 0;
  color: #5a3735;
}

#page_container {
  width: 830px;
  min-height: 100%;
  margin: 0 auto;
  background: white;
}

#page_bumper {
  height: 50px;
}

#header {
  position: relative;
  z-index: 99;
  background: #e9eae0;
  width: 100%;
  height: 139px;
}

#logo_stack {
  margin: 0 auto;
}

#logo {
  display: block;
  padding: 4px 0px 0 0;
  margin: 0 auto;
}

#banner {
  display: block;
  margin: 0 auto;
}

#brand_stack {
  position: absolute;
  right: -1px;
  top: 0px;
  width: 220px;
}

#brand_logo {
  display: block;
  float: right;
}

#left_header {
  position: absolute;
  width: 250px;
  height: 140px;
  left: 20px;
}

#login_badge {
  position: absolute;
  bottom: 10px;
  font-size: 8.5pt;
  color: #583635;
}

#page_notice {
  margin: 20px 0 0 -4px;
  padding: 4px;
}

#page_content {
  position: relative;
  clear: both;
}

#page_buttons {
  width: 100%;
  height: 100px;
  margin: 8px 0;
}

#page_buttons a, #page_buttons input {
  float: right;
  margin-right: 40px;
}

#footer {
  position: absolute;
  z-index: 9;
  width: 100%;
  bottom: 0;
  left: 0;
  height: 56px;
  background: url(/images/grass.png) bottom left repeat-x;
}

#jfm_exp_logo {
  position: absolute;
  bottom: 0;
}

#legal_lantern {
  position: absolute;
  bottom: 0;
  right: 0;
}

/* welcome */

#flower_scroller {
  width: 830px;
  overflow: hidden;
}

#flower_list {
  width: 20000px;
  height: 290px;
  cursor: pointer;
}

#flower_list img {
  border: 0;
}

#seasonal_message {
  position: relative;
  margin: -43px 0px 0px -22px;
}

#cross_link {
  position: absolute;
  display: block;
  left: 274px;
  top: 48px;
  height: 24px;
  width: 391px;
  background: url(/images/blank.gif);
}

#cross_link:hover {
  background: url(/images/tb_banner_hvr.png);
}

#daily_info {
  position: absolute;
  left: 20px;
  top: 344px;
}

#daily_info p {
  width: 300px;
  margin-top: 4px;
  font-size: 10px;
}

#daily_info img {
  display: block;
}

#daily_widget_reveal {
  margin: 8px 0px 0px 14px;
}

#daily_widget_code {
  font: 10px Consolas, Monaco, "Courier New", monospace;
  width: 350px;
  height: 24px;
  overflow: hidden;
  margin-top: 9px;
}

/* send */

#chooser {
  position: relative;
  height: 430px;
  width: 100%;
  background: url(/images/clouds.jpg) no-repeat top left;
}

.chooser_button {
  display: none;
}

.chooser_arrangement {
  float: left;
  position: relative;
  height: 250px;
  background: transparent;
  cursor: pointer;
}

.chooser_arrangement_image {
  position: absolute;
  bottom: 0;
  display: block;
  margin: 0 auto;
}

.chooser_ribbon {
  position: absolute;
  left: 35px;
  bottom: 10px;
}

#send_next_button {
  position: absolute;
  top: 380px;
  left: 620px;
}

/* send/pick */

#bouquet_confirm {
  position: relative;
  height: 360px;
}

#picked_bouquet {
  margin-left: -32px;
  width: 375px;
  height: 375px;
  z-index: 2;
}

#picked_bouquet .image_loader {
  position: absolute;
  left: 140px;
  top: 170px;
  z-index: 3;
}

#bouquet_description {
  position: absolute;
  right: 30px;
  top: 25px;
  width: 455px;
  height: 272px;
  z-index: 1;
  background: url(/images/generator_card.png);
}

#bouquet_description input {
  display: block;
  margin: 190px auto 0 auto;
}

#send_link {
  position: absolute;
  bottom: 0;
  right: 33px;
}

/* send/card */

#send_content {
  position: relative;
  height: 414px;
}

#send_card_inner {
  position: relative;
  margin: 29px 72px 0px 54px;
}

#send_card_form {
  position: absolute;
  right: 30px;
  top: 25px;
  width: 460px;
  height: 336px;
  background: url(/images/email_card.png) no-repeat top;
  color: #5a3735;
}

#send_card_form p {
  margin: 8px 0;
  text-align: right;
}

#send_card_form label {
  display: block;
  float: left;
  width: 90px;
  margin-top: 2px;
  font-size: 11px;
}

#send_card_form input.text, #send_card_form textarea {
  width: 230px;
  font-size: 11px;
}

#send_card_form #captcha img {
  margin-left: 101px;
}

#send_card_notice {
  position: absolute;
  left: -156px;
  top: 325px;
  width: 400px;
  color: #c6261a;
}

/* send/done */

#sent_message {
  width: 100%;
  margin-bottom: 20px;
}

#sent_message img {
  display: block;
  margin: 50px auto 0 auto;
}

#sent_message p {
  margin: 0px 0 30px 226px;
  width: 460px;
}

/* receive */

#receive_content {
  position: relative;
  height: 450px;
}

#receive_card {
  position: absolute;
  right: 30px;
  top: 25px;
  width: 456px;
  height: 321px;
  z-index: 1;
  background: url(/images/receipt_card.png);
}

#receive_card_inner {
  position: relative;
  height: 154px;
  margin: 103px 57px 0px 57px;
  overflow: auto;
}

#receive_card_inner .from {
  float: left;
  width: 0;
}

#receive_card_inner .name {
  height: 1em;
  margin: 0 0 0.5em 60px;
}

#receive_card_inner .message {
  font-size: 90%;
  line-height: 1.3em;
  margin-top: 1em;
}

#care_instructions {
  position: absolute;
  left: 40px;
  bottom: 0;
}

#garden_add_link {
  position: absolute;
  bottom: 8px;
  right: 30px;
}

/* garden/show */

#garden_content {
  position: relative;
  height: 550px;
  background: url(/images/GH_ceiling.jpg) no-repeat;
}

#garden_bench {
  position: relative;
  height: 404px;
  width: 100%;
  overflow: hidden;
}

#garden_bench_wood {
  position: absolute;
  top: 278px;
}

#garden_selection_patch {
  background: transparent;
  position: absolute;
  left: 830px;
  width: 30px;
  height: 420px;
  z-index: 9;
}

#garden_plaque {
  position: absolute;
  left: 260px;
  top: 10px;
  width: 287px;
  height: 53px;
}

#garden_sign {
  position: absolute;
}

#garden_owner {
  position: absolute;
  top: 18px;
  width: 287px;
  text-align: center;
  font: 14px Georgia, serif;
  text-transform: uppercase;
}

#reminder_leaf {
  display: none;
  position: absolute;
  top: 430px;
  right: -52px;
}

#garden_scroller {
  /* width calculated in HTML */
  height: 100%;
}

.garden_bouquet {
  position: relative;
  float: left;
  height: 300px;
  width: 256px;
  margin: 74px -76px 0 0;
}

.garden_bouquet .image_loader {
  position: absolute;
  left: 110px;
  top: 100px;
  z-index: 2;
}

#garden_content .arrow_left {
  position: absolute;
  left: 10px;
  top: 57px;
  z-index: 2;
}

#garden_content .arrow_right {
  position: absolute;
  right: 10px;
  top: 57px;
  z-index: 2;
}

.mulch_btn {
  position: absolute;
  left: 99px;
  top: 6px;
  width: 59px;
  height: 23px;
  cursor: pointer;
}

.bouquet_card {
  position: absolute;
  bottom: 30px;
  left: 70px;
  width: 85px;
  height: 50px;
  background: url(/images/lil_card.png) no-repeat;
}

.bouquet_card p {
  margin: 22px 0 0 6px;
  font-size: 9px;
  width: 60px;
  height: 1.2em;
  overflow: hidden;
  text-align: center;
  text-overflow: ellipsis;
}

#big_card {
  position: absolute;
  left: 100px;
  top: 226px;
  width: 253px;
  height: 181px;
  background: url(/images/big_card.png) no-repeat;
  z-index: 1;
  color: #5a3735;
}

#big_card_inner {
  position: relative;
  width: 205px;
  height: 80px;
  margin: 60px 20px 20px 30px;
  overflow: auto;
}

#big_card p {
  font-size: 10pt;
  margin: 0 8px 1em 8px;
}

#big_card .label {
  color: #c6261a;
}

#watering {
  position: absolute;
  left: 340px;
  top: 346px;
}

#watering_can {
  margin: 5px 16px 0pt -3px;
  cursor: pointer;
}

#water_text {
  cursor: pointer;
  margin-bottom: 5px;
}

#widget_link {
  display: block;
  cursor: pointer;
}

#widget_info {
  position: absolute;
  left: 20px;
  top: 424px;
}

#widget_info p {
  width: 300px;
  margin-top: 4px;
  font-size: 10px;
}

#widget_info img {
  display: block;
}

#widget_code {
  font: 10px Consolas, Monaco, "Courier New", monospace;
  width: 300px;
  height: 24px;
  overflow: hidden;
  margin-top: 9px;
}

#garden_send_link {
  position: absolute;
  right: 30px;
  top: 396px;
}

#garden_revive_link {
  position: absolute;
  left: 324px;
  top: 450px;
}

/* bouquet/show */

#receive_gh_link {
  position: absolute;
  bottom: 30px;
  right: 30px;
}

/* account/index (profile) */

#profile_content {
  position: relative;
  height: 430px;
  margin: 60px auto 40px auto;
}

#profile_form {
  position: relative;
  margin: 50px auto 0 auto;
  width: 456px;
  height: 403px;
  background: url(/images/login_card.png) no-repeat;
}

#profile_form form {
  position: absolute;
  width: 400px;
  top: 110px;
  left: 30px;
}

#profile_form .error {
  margin-bottom: 1em;
  padding: 1em;
  text-align: center;
}

#profile_form .field {
  clear: both;
  margin: 8px 0;
}

#profile_form p {
  margin: 8px 0;
  text-align: right;
}

#profile_form .left_label {
  display: block;
  float: left;
  width: 130px;
}

#profile_form input.text, #profile_form textarea {
  width: 260px;
}

#profile_form input.submit {
  display: block;
  float: right;
}

#profile_page_notice {
  position: relative;
  width: 400px;
  margin: 20px auto 0 auto;
  color: #c6261a;
}

/* account/login */

#login_content {
  position: relative;
  height: 430px;
}

#login_form {
  position: relative;
  width: 456px;
  height: 403px;
  margin: 50px auto 0 auto;
  background: url(/images/login_card.png) no-repeat;
}

#login_tab {
  position: absolute;
  right: 74px;
  top: 40px;
}

#register_tab {
  position: absolute;
  left: 110px;
  top: 40px;
}

#login_pages {
  position: absolute;
  top: 102px;
  left: 56px;
  width: 350px;
}

#login_form .field {
  margin: 8px 0;
}

#login_form label {
  font-size: 11px;
  color: #5a3735;
}

#login_form label.left_label {
  display: block;
  float: left;
  width: 100px;
  margin-top: 2px;
  text-align: right;
}

#login_form input.text {
  display: block;
  margin: auto 0 auto auto;
  width: 238px;
  font-size: 11px;
}

#register_box input.submit {
  display: block;
  margin: 12px auto 0 auto;
}

#login_box {
  margin-top: 20px;
}

#login_box input.submit {
  display: block;
  margin: 18px auto 0 auto;
}

#register_box #captcha_pair {
  margin: 0 -16px 0 90px;
}

#register_box #captcha img {
  margin-left: 18px;
}

#register_box .optin {
  margin-left: 18px;
}

.login_links {
  margin: auto 0 auto auto;
  width: 230px;
  font-size: 8pt;
}

#login_page_notice {
  position: relative;
  width: 400px;
  margin: 20px auto 0 auto;
  color: #c6261a;
}

/* account/signup */

#signup_content {
  position: relative;
  height: 430px;
}

#signup_form {
  position: absolute;
  left: 350px;
  top: 50px;
  width: 400px;
  border: 1px solid #999;
  background: #e9eae0;
  padding: 20px;
}

#signup_message {
  position: absolute;
  left: 20px;
  top: 50px;
  width: 300px;
}

#signup_form .error {
  margin-bottom: 1em;
  padding: 1em;
  text-align: center;
}

#signup_form p {
  margin: 8px 0;
  text-align: right;
}

#signup_form label {
  display: block;
  float: left;
  width: 28%;
  margin-top: 4px;
  font-size: 8pt;
}

#signup_form input.text, #signup_form textarea {
  width: 68%;
  font-size: 8pt;
}

#signup_form input.submit {
  float: right;
}

/* account/activate */

#activate_content {
  position: relative;
  height: 430px;
}

#activate_form {
  margin: 0 auto 16px auto;
  border: 1px solid #999;
  background: #e9eae0;
  padding: 20px;
}

#activate_message {
  margin: 100px auto 0 auto;
  width: 400px;
}

#activate_form .error {
  margin-bottom: 1em;
  padding: 1em;
  text-align: center;
}

#activate_form p {
  margin: 8px 0;
  text-align: right;
}

#activate_form input.text, #activate_form textarea {
  width: 230px;
}

/* account/change_password */

#change_password_content {
  position: relative;
  height: 430px;
}

#change_password_form {
  width: 400px;
  margin: 0 auto 16px auto;
  border: 1px solid #999;
  background: #e9eae0;
  padding: 10px;
}

#change_password_message {
  margin: 60px auto 40px auto;
  width: 400px;
}

#change_password_form .error {
  margin-bottom: 1em;
  padding: 1em;
  text-align: center;
}

#change_password_form p {
  margin: 8px 0;
  text-align: right;
}

#change_password_form label {
  display: block;
  float: left;
  width: 130px;
}

#change_password_form input.text, #change_password_form textarea {
  width: 260px;
}

#change_password_form input.submit {
  clear: both;
}

/* account/reset_password */

#reset_password_content {
  width: 420px;
  margin: 0 auto 16px auto;
}

#reset_password_form {
  width: 400px;
  border: 1px solid #999;
  background: #e9eae0;
  padding: 10px;
}

#reset_password_message {
  margin: 60px auto 40px auto;
  width: 400px;
}

#reset_password_form .error {
  margin-bottom: 1em;
  padding: 1em;
  text-align: center;
}

#reset_password_form p {
  margin: 8px 0;
  text-align: right;
}

#reset_password_form label {
  display: block;
  float: left;
  width: 110px;
}

#reset_password_form input.text, #reset_password_form textarea {
  width: 280px;
}

#reset_password_form input.submit {
  clear: both;
}

#reset_password_content a {
  display: block;
  margin: 16px 0;
  text-align: right;
}

/* account/change_email*/

#change_email_content {
  position: relative;
  height: 430px;
}

#change_email_form {
  width: 400px;
  margin: 0 auto 16px auto;
  border: 1px solid #999;
  background: #e9eae0;
  padding: 10px;
}

#change_email_message {
  margin: 60px auto 40px auto;
  width: 400px;
}

#change_email_form .error {
  margin-bottom: 1em;
  padding: 1em;
  text-align: center;
}

#change_email_form p {
  margin: 8px 0;
  text-align: right;
}

#change_email_form label {
  display: block;
  float: left;
  width: 130px;
}

#change_email_form input.text, #change_email_form textarea {
  width: 260px;
}

#change_email_form input.submit {
  clear: both;
}

#change_email_page_notice {
  position: relative;
  width: 400px;
  margin: 20px auto 0 auto;
  color: #c6261a;
}

/* captcha -- must be last to override input.text */

#captcha {
  width: 100%;
}

#captcha img {
  display: inline;
  vertical-align: bottom;
}

#captcha p {
  font-size: 8pt;
  color: #583635;
  text-align: left;
  margin-bottom: 4px;
}

#captcha input.text {
  display: inline;
  width: 96px;
  height: 26px;
  margin: 0 0 0 8px;
  padding: 5px;
  font-size: 19px;
}

/* about */

#about_content {
  position: relative;
  height: 430px;
  font-size: 90%;
  padding: 50px 125px 50px 125px;
}

#about_content p {
  margin-bottom: 10px;
}

/* legal */

#legal_content {
  font: 90% Verdana, sans;
  padding: 50px 125px 50px 125px;
}

#legal_content p {
  margin-bottom: 10px;
}

#legal_content strong {
  font-weight: bold;
}
