
body {
  /*font-family: "Lucida Grande", tahoma,verdana,arial,sans-serif;*/
    font-family: Arial;
  margin: 0;
  background-color: #eeeeee;
}

h1 {
  font-weight: bold;
  font-size: 24px;
  margin: 0px 0px 16px 0px;
  padding: 4px;
  border-bottom: 1px solid #cccccc;
}

a img {
    border: 0;
}

a:link, a:visited {
    color: blue;
}

#container {
    text-align: center;
}

#main-content {
  width: 750px;
  margin: 0px auto;
  text-align: left;
  background-color: white;
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
}

#header {
  background-color: #f92828;
  border: 1px solid #db0303;
  height: 75px;
}

#pickmylunch-logo {
  float: left;
  margin: 4px 0px 0px 4px;
}

#infome-logo {
  float: right;
  margin: 4px 4px 0px 0px;
}

#body {
  padding: 0px 8px 0px 8px;
}

#front-page-button {
    text-align: center;
    margin: 48px 0px 64px 0px;
}

#location-text {
  margin-top: 4px;
  font-size: 14px;
}

#large-alert {
  margin-top: 8px;
  margin-bottom: 8px;
}

.alert {
  background-color: #ffcccc;
  border: 1px solid #db0303;
  padding: 8px;
}

.alert-title {
  font-weight: bold;
}

.horizontal-offers {
    margin-top: 12px;
    margin-bottom: 12px;
}

.offer { width: 157px; }

.horizontal-offers .offer {
    float: left;
    margin-right: 16px;
}

.offer img { border: 1px solid black; }

.vertical-offers .offer {
    margin: 8px 0px 8px 20px;
}

.vertical-offers {
    text-align: center;
}

.search-right-bar .vertical-offers {
    width: 200px;
    background-color: #ffcccc;
    border: 1px solid #db0303;
    padding: 8px;
    margin-top: 8px;
}

#body-content {
  margin-top: 20px;
}

.lunch-listing {

  height: 310px;
  clear: both;
}

.lunch-listing .icon {
  width: 74px;
  text-align: center;
  float: left;
}

.lunch-listing .info {
  float:left;
  padding-left: 8px;
  width: 300px;
}

.lunch-listing .map {
    float: left;
    padding-left: 8px;
    width: 290px;
    text-align:center;
}

.lunch-listing .info .title {
  font-weight: bold;
  font-size: 24px;
}

.lunch-listing .info-pair {
  clear: both;
  margin-top: 8px;
}

.lunch-listing .info .price .info-title {
  margin-right: 4px;
  float: left;
}

.lunch-listing .info .voucher .info-data {
  margin-top: 4px;
}

.info-title {
  font-weight: bold;
}

.lunch-buttons {
  clear: both;
  margin-top: 12px;
}

.lunch-button {
  float: left;
}

.button {
  background-color: #db0303;
  border: 1px solid black;
  display: table;
  padding: 12px;
  font-weight: bold;
  margin: 8px;
}

.button a:link, .button a:visited {
  color: white;
}

.browse-panel {
    width: 330px;
    padding: 0px 10px 0px 10px;
    float: left;
}

.search {
    border-bottom: 1px solid #cccccc;
    padding-bottom: 10px;
}

.front-page .search {
    margin: 40px auto;
    width: 400px;
    border: 0;
}

.search-box, .preferences-box {
    float: left;
}

.preferences-box { margin-left: 8px; }

.search-box input {
    padding: 2px;
    font-size: 16px;
    width: 300px;
    margin-right: 10px;
}

.preferences-box input {
    padding: 2px;
    font-size: 16px;
    width: 600px;
    margin-right: 10px;
}

.preferences-box-text {
    font-size: 14px;
    margin-left: 10px;
    margin-top: 4px;
    font-style: italic;
}

.preferences-clear input { font-size: 16px; }
.preferences-search { text-align:center; }
.preferences-search input { font-size: 16px;    font-weight: bold;
    padding: 8px; }

.preferences-email { 
    padding-top: 10px;
    margin-bottom: 10px;
}

.preferences-email p {
    margin: 0px 0px 20px 8px;
    padding: 0;
    width: 500px;
}

.search-button input {
    font-size: 16px;
}

.input-pair {
    margin-bottom: 16px;
}

.input-pair .label, .input-pair .input-label {
    font-size: 14px;
}

.input-pair {
    clear:both;
}

.input-pair.single-line {
    height: 32px;
    width: 400px;
    padding: 4px;
}

.input-pair.single-line .label {
    width: 140px;
    float: left;
    padding-top: 6px;
}
.input-pair.single-line .value {
    float: right;
    width: 260px;
}

.input-pair .value.message {
    border: 1px dashed #cccccc;
    padding: 8px;
}

input.textbox {
    font-size: 16px;
    padding: 4px;
    width: 320px;
}

input.submit {
    font-size: 16px;
    font-weight: bold;
    padding: 8px;
}

.centered-offers-container {
  text-align: center;
}

.printable-offer {
  width: 300px;
  height: 300px;
  border: 1px solid black;
  margin: 0px auto;
  text-align: left;
  font-size: 16px;
}

.printable-offer-code {
  margin: 12px 0px 12px 0px;
  text-align:center;
  font-size: 18px;
}

.printable-offer-text {
  margin: 8px;
}

.printable-offer-business-name {
  margin-top: 8px;
  font-weight: bold;
}

.printable-offer-business-address {
  margin-bottom: 8px;
}

.printable-offer-smalllogo {
  width: 150px;
  float: left;
  margin-top: 8px;
}

.printable-offer-conditions {
  margin-top: 16px;
  font-size: 12px;
  text-align: right;
  width: 120px;
  float: left;
}

.search-right-bar {
    float: right;
}

.search-results-intro {
    font-size: 14px;
    padding:8px;
    margin-top: 4px;
    margin-bottom: 4px;
}

.search-result {
  width: 400px;
  padding: 8px;
}

.search-result-offer-icon {
    float: left;
    margin-right: 10px;
}

.search-result-price {
  float: right;
}

.search-result-title {
  font-size: 110%;
}

.search-result-business {
    color: #8D8D8D;
    font-size: 80%;
}

.search-result-address {
  color: red;
  font-size: 80%;
}

#footer {
  border-top: 1px solid #cccccc;
  margin-top: 24px;
  padding-top: 4px;
  padding-bottom: 16px;
  font-size: 12px;
  text-align: center;
}

.fieldWithErrors {
  padding: 2px;
  background-color: red;
  display: table;
}

.error-notice {
  width: 400px;
  border: 2px solid red;
  padding: 7px;
  padding-bottom: 12px;
  margin-bottom: 20px;
  background-color: #f0f0f0;
}

.business .map-container {
    margin-top: 20px;
    padding-top: 10px;
    border-top: 1px dashed #cccccc;
}

.page-section {
    margin-top: 20px;
    padding-top: 10px;
    border-top: 1px dashed #cccccc;
}

.business .map-container .address {
    padding: 10px 10px 20px 10px;
}
.business .map-container .address .address-label {
    color: #8D8D8D;
    font-weight: bold;
}

.business .map-container .map {
    margin-left: 30px;
}

.menu-items {
    margin-left: 10px;
    border: 1px solid #cccccc;
    width: 400px;
}

.menu-item {
    width: 380px;
    padding: 4px 0px 4px 8px;
    border-bottom: 1px dashed #cccccc;
}

.menu-item-price {
    float: right;
}

.steps li {
    border: 1px solid #db0303;
    background-color: #ffcccc;
    display: inline;
    padding: 6px;
}

.steps li.selected {
    background-color: white;
}

.check-form .search-box {
    margin-left: 40px;
}

.search-description {
    padding: 8px;
    font-size: 14px;
    margin-bottom: 8px;
}

.search-footer {
    padding: 8px;
    font-size: 14px;
    margin-top: 8px;
}

.search-result-right-button {
    float: right;
}

.match-listings .search-result {
    margin-left: 40px;
    border: 1px solid #cccccc;
}


.input-pair {
  padding: 4px 0px 4px 8px;
}

.input-label {
  font-size: 12px;
}

.input-input input, .input-input textarea {
  font-size: 16px;
  padding: 2px;
  width: 280px;
}

.input-input textarea {height: 60px;}

.input-input select {
  padding: 2px;
  font-size: 16px;
  width: 280px;
}

.date .input-input select { width: auto; }

.input-buttons {
  margin-top: 10px;
  width: 280px;
  text-align: right;
}

.input-input .input-button {
  width: 80px;
}

.selected-lunch {
    width: 160px;
    height: 50px;
    background-image: url(../images/lunchbox_tiny.gif);
    background-repeat: no-repeat;
    background-position: 4px 10px;
    float: left;
    font-size: 12px;
    border: 1px solid #db0303;
    padding: 4px 0px 0px 40px;
    margin: 10px;
}

.selected-lunch-user-name { float: left; margin-right: 3px; font-weight: bold; }
.selected-lunch-ate { float: left; }
.selected-lunch-name { clear: both; }

.comments, .ratings { padding-left: 8px; }
.comment-list, .ratings-inner {margin-left: 8px;}
.comment, .rating {border: 1px solid #db0303;width: 400px;margin-top: 10px;}
.comment .comment-header, .rating-header {background-color:#ffcccc;padding: 4px 4px 4px 4px}
.comment .comment-author {font-weight:bold;}
.comment .comment-date {font-size: 12px; float: right;margin-top: 3px;}
.comment .comment-body, .rating-body {padding: 8px;}

.top-ratings {
    border: 1px solid #db0303;
    width: 350px;
    float: left;
    margin-left: 10px;
    padding-bottom: 8px;
}

.healthiness-ratings {border: 1px solid #006E2E;}

.top-ratings-title {background-color:#ffcccc;padding: 4px 4px 4px 4px; margin-bottom:8px;}
.healthiness-ratings .top-ratings-title {
    background-color: #CDEB8B;
}

.top-rating-item {margin: 3px 6px 3px 6px;}

.right-form-info {
    border: 1px solid #db0303;
    background-color:#ffcccc;
    float: right;
    width: 300px;
    margin: 0px 50px 0px 0px;
    padding: 5px 10px;
}
    
.right-form-info p {
    width: 280px;
    margin: 8px 0px 8px 0px;
    padding: 0;
}

.left-form {
    float: left;
}

.input-text { width: 500px; }
.form-errors { color: red; }
.optional { color: #707070; }

.preference-options-panel {
    margin: 10px 0px 10px 0px;
}

a.preference-option {
    display: block;
    background-image: url('../images/preferencebg.gif');
    color: white;
    width: 102px;
    height: 26px;
    padding-top: 6px;
    text-align: center;
    margin: 8px 8px;
    float: left;
    font-weight: bold;
    text-decoration: none;
}

/* ratings */
