/* 
  HTML Elements
*/
body, div, textarea
{
  margin: 0;
  padding: 0;
}

body
{
  color: #4B4D49;
  font: 24px/1em Arial, sans-serif;
}

h1
{
  color: #78F;
  font-size: 1.5em;
  font-weight: normal;
  margin: 20px 0;
}

p
{
  margin: 20px 0;
  text-align: justify;
}

ul
{
  list-style-type: none;
  margin: 0;
}

a
{
  outline: 0;
  text-decoration: none;
}

a:hover
{
  text-decoration: underline;
}

form
{
  background: #FF9 repeat;
  padding: 1px 21px 5px 21px;
}

label
{
  display: block;
  margin-bottom: 3px;
}

input
{
  border: 1px solid #00F;
  font-size: 24px;
  font-family: Arial, sans-serif;
  padding: 5px;
}

input[type=text], input[type=password]
{
  width: 250px;
}

input[type=hidden]
{
  display: none;
}

textarea
{
  outline: 0;
}

/*
  ActionView Errors
*/
div.fieldWithErrors, div.formError
{
  display: inline;
}

div.formError
{
  color: #F00;
  padding-left: 2px;
}

div.formError, .LV_invalid
{
  font-size: 20px;
}

/*
  Live Validation
*/
.LV_valid
{
  display: none;
}

.LV_invalid
{
  color: #F00;
  padding-left: 10px;
}

.LV_valid_field, input.LV_valid_field:hover, input.LV_valid_field:active,
textarea.LV_valid_field:hover, textarea.LV_valid_field:active
{
  border: 1px solid #21F500;
}

.LV_invalid_field, input.LV_invalid_field:hover, input.LV_invalid_field:active,
textarea.LV_invalid_field:hover, textarea.LV_invalid_field:active, div.fieldWithErrors input
{
  border: 1px solid #F00;
}

/*
  Header
*/
#header, #footer
{
  text-align: center;
}

#header
{
  margin: 20px;
  position: relative;
}

#logo:hover, #footer:hover
{
  cursor: move;
}

#header p
{
  text-align: center;
}

#header #user_bar
{
  display: inline;
  font-size: 14px;
  margin: 0;
  position: absolute;
  right: 0px;
  top: 0px;
}

#header img
{
  border: 0;
}

/*
  Content
*/
#content
{
  margin: 0 auto;
  width: 55%;
}

#notice_message
{
  color: #21F500;
  font-size: 1.3em;
}

#error_message
{
  border: 1px solid #F00;
  color: #F00;
  padding: 10px;
}

/*
  Footer
*/
#footer
{
  background: #FF9 repeat;
  clear: both;
  font-size: 20px;
  margin: 20px auto;
  padding: 10px;
  width: 500px;
}

/*
  Website Home
*/
#content.website_home
{
  line-height: 1.5em;
  width: 75%;
}

#content.website_home form
{
  background-color: #FFF;
  text-align: center;
}

#content.website_home form p
{
  display: inline;
}

#content.website_home .LV_validation_message
{
  display: none;
}

#sign_up_and_sign_in_links
{
  margin: 60px 0;
}

#sign_up_link, #sign_in_link
{
  background: #FF9 repeat;
  padding: 40px;
}

/*
  Sign in
*/
#remember_me
{
  margin: 0;
}

label[for=remember_me]
{
  display: inline;
}

/*
  User's Home
*/
#content.user_home
{
  width: 95%;
}

div.task
{
  background: #FF9 repeat;
  float: left;
  font-size: 18px;
  height: 130px;
  margin: 0 10px 20px 10px;
  overflow: hidden;
  padding: 10px;
  position: relative;
  width: 180px;
}

div.task:hover
{
  cursor: move;
}

div.task#new_task_post_it:hover
{
  cursor: auto;
}

textarea#task_description
{
  border: 0;
  background: #FF9 repeat;
  color: #78F;
  font-family: Arial, sans-serif;
  font-size: 18px;
  height: 130px;
  line-height: 1.3em;
  overflow: hidden;
  position: absolute;
  top: 10px;
  left: 10px;
  width: 180px;
}

form#new_task textarea.LV_invalid_field
{
  color: #F00;
  text-decoration: blink;
}

div.task p
{
  line-height: 1.3em;
  margin: 0;
  overflow: hidden;
  text-align: justify;
}

div.task input
{
  display: none;
}

div.task:hover input.mark_as_done
{
  bottom: 5px;
  display: inline;
  position: absolute;
  right: 5px;
}